mbakke pushed a commit to branch master
in repository guix.
commit 71e0f1e9adbce4a6476a70bddabf13f6d7af2d40
Author: Marius Bakke <[email protected]>
AuthorDate: Wed Jan 8 19:56:54 2020 +0100
gnu: util-linux: Add variant with udev support.
* gnu/packages/linux.scm (util-linux)[properties]: New field.
(util-linux+udev): New public variable.
---
gnu/packages/linux.scm | 16 +++++++++++++++-
1 file changed, 15 insertions(+), 1 deletion(-)
diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm
index 501a010..3c720f3 100644
--- a/gnu/packages/linux.scm
+++ b/gnu/packages/linux.scm
@@ -15,7 +15,7 @@
;;; Copyright © 2016, 2018, 2019 Ricardo Wurmus <[email protected]>
;;; Copyright © 2016 David Craven <[email protected]>
;;; Copyright © 2016 John Darrington <[email protected]>
-;;; Copyright © 2016, 2017, 2018, 2019 Marius Bakke <[email protected]>
+;;; Copyright © 2016, 2017, 2018, 2019, 2020 Marius Bakke <[email protected]>
;;; Copyright © 2016, 2018 Rene Saavedra <[email protected]>
;;; Copyright © 2016 Carlos Sánchez de La Lama <[email protected]>
;;; Copyright © 2016, 2017 ng0 <[email protected]>
@@ -1182,12 +1182,26 @@ providing the system administrator with some help in
common tasks.")
utilities. It provides dmesg and includes tools for working with file systems,
block devices, UUIDs, TTYs, and many other tools.")
+ ;; Hide the package so that end users get the udev-enabled variant below.
+ (properties '((hidden? . #t)))
+
;; Note that util-linux doesn't use the same license for all the
;; code. GPLv2+ is the default license for a code without an
;; explicitly defined license.
(license (list license:gpl3+ license:gpl2+ license:gpl2 license:lgpl2.0+
license:bsd-4 license:public-domain))))
+;; util-linux optionally supports udev, which allows lsblk to read file system
+;; metadata without special privileges. Add it as a separate package to avoid
+;; a circular dependency, and to keep the size small.
+(define-public util-linux+udev
+ (package/inherit
+ util-linux
+ (inputs
+ `(("udev" ,eudev)
+ ,@(package-inputs util-linux)))
+ (properties (alist-delete 'hidden? (package-properties util-linux)))))
+
(define-public ddate
(package
(name "ddate")