guix-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

02/02: gnu: eudev: Add variant that depends on libblkid.


From: Ludovic Courtès
Subject: 02/02: gnu: eudev: Add variant that depends on libblkid.
Date: Tue, 02 Feb 2016 20:44:33 +0000

civodul pushed a commit to branch master
in repository guix.

commit 400ed6acdd275f1135aad520baa7379eb6b8cff6
Author: Ludovic Courtès <address@hidden>
Date:   Tue Feb 2 18:17:30 2016 +0100

    gnu: eudev: Add variant that depends on libblkid.
    
    This fixes a bug whereby /dev/disk/by-{label,id} would be missing on
    GuixSD (/dev/disk/by-id would still contain device-mapped partitions
    though.)
    
    Reported by Mark H Weaver <address@hidden>.
    
    * gnu/packages/linux.scm (eudev-with-blkid): New variable.
    * gnu/services/base.scm (udev-service): #:udev defaults to
    EUDEV-WITH-BLKID.
    * gnu/system.scm (%base-packages): Replace EUDEV with EUDEV-WITH-BLKID.
---
 gnu/packages/linux.scm |   15 ++++++++++++++-
 gnu/services/base.scm  |    4 ++--
 gnu/system.scm         |    2 +-
 3 files changed, 17 insertions(+), 4 deletions(-)

diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm
index 6e75bac..9d359e3 100644
--- a/gnu/packages/linux.scm
+++ b/gnu/packages/linux.scm
@@ -1,5 +1,5 @@
 ;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2012, 2013, 2014, 2015 Ludovic Courtès <address@hidden>
+;;; Copyright © 2012, 2013, 2014, 2015, 2016 Ludovic Courtès <address@hidden>
 ;;; Copyright © 2013, 2014, 2015 Andreas Enge <address@hidden>
 ;;; Copyright © 2012 Nikita Karetnikov <address@hidden>
 ;;; Copyright © 2014, 2015, 2016 Mark H Weaver <address@hidden>
@@ -1570,6 +1570,7 @@ from the module-init-tools project.")
 
 (define-public eudev
   ;; The post-systemd fork, maintained by Gentoo.
+  ;; TODO: Merge with 'eudev-with-blkid' below at an opportune time.
   (package
     (name "eudev")
     (version "3.1.5")
@@ -1596,6 +1597,18 @@ device nodes from /dev/, handles hotplug events and 
loads drivers at boot
 time.")
     (license license:gpl2+)))
 
+(define-public eudev-with-blkid
+  ;; TODO: Merge with 'eudev' above at an opportune time.
+  (package
+    (inherit eudev)
+    (name "eudev-with-blkid")
+    (inputs
+     ;; When linked against libblkid, eudev can populate /dev/disk/by-label
+     ;; and similar; it also installs the '60-persistent-storage.rules' file,
+     ;; which contains the rules to do that.
+     `(("util-linux" ,util-linux)                 ;for blkid
+       ,@(package-inputs eudev)))))
+
 (define-public lvm2
   (package
     (name "lvm2")
diff --git a/gnu/services/base.scm b/gnu/services/base.scm
index dcd9956..28ccfe0 100644
--- a/gnu/services/base.scm
+++ b/gnu/services/base.scm
@@ -29,7 +29,7 @@
   #:use-module (gnu system file-systems)          ; 'file-system', etc.
   #:use-module (gnu packages admin)
   #:use-module ((gnu packages linux)
-                #:select (eudev kbd e2fsprogs lvm2 fuse alsa-utils crda gpm))
+                #:select (eudev-with-blkid kbd e2fsprogs lvm2 fuse alsa-utils 
crda gpm))
   #:use-module ((gnu packages base)
                 #:select (canonical-package glibc))
   #:use-module (gnu packages package-management)
@@ -1165,7 +1165,7 @@ item of @var{packages}."
                               (udev udev)
                               (rules (append initial-rules rules)))))))))
 
-(define* (udev-service #:key (udev eudev) (rules '()))
+(define* (udev-service #:key (udev eudev-with-blkid) (rules '()))
   "Run @var{udev}, which populates the @file{/dev} directory dynamically.  Get
 extra rules from the packages listed in @var{rules}."
   (service udev-service-type
diff --git a/gnu/system.scm b/gnu/system.scm
index 76a9f1f..dea7d88 100644
--- a/gnu/system.scm
+++ b/gnu/system.scm
@@ -371,7 +371,7 @@ explicitly appear in OS."
 
          ;; Get 'insmod' & co. from kmod, not module-init-tools, since udev
          ;; already depends on it anyway.
-         kmod eudev
+         kmod eudev-with-blkid
 
          e2fsprogs kbd
 



reply via email to

[Prev in Thread] Current Thread [Next in Thread]