all messages for Guix-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
* [PATCH 1/4] gnu: Separate util-linux into three packages.
@ 2016-11-10 21:14 John Darrington
  2016-11-10 21:14 ` [PATCH 2/4] gnu: nfs-utils: Change input from util-linux to util-linux/mount John Darrington
                   ` (4 more replies)
  0 siblings, 5 replies; 32+ messages in thread
From: John Darrington @ 2016-11-10 21:14 UTC (permalink / raw)
  To: guix-devel; +Cc: John Darrington

* gnu/packages/linux.scm (util-linux/base): New variable,
(util-linux/mount): New variable,  (util-linux) Refine
inheriting from util-linux/base.
---
 gnu/packages/linux.scm | 69 ++++++++++++++++++++++++++++++++++++++++----------
 1 file changed, 55 insertions(+), 14 deletions(-)

diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm
index 73c177a..0a1eff5 100644
--- a/gnu/packages/linux.scm
+++ b/gnu/packages/linux.scm
@@ -430,15 +430,15 @@ use the proc file system.  We're not about changing the world, but
 providing the system administrator with some help in common tasks.")
     (license license:gpl2+)))
 
-(define-public util-linux
+(define-public util-linux/base
   (package
-    (name "util-linux")
+    (name "util-linux-base")
     (version "2.27")
     (source (origin
               (method url-fetch)
               (uri (string-append "mirror://kernel.org/linux/utils/"
-                                  name "/v" (version-major+minor version) "/"
-                                  name "-" version ".tar.xz"))
+                                  "util-linux" "/v" (version-major+minor version) "/"
+                                  "util-linux" "-" version ".tar.xz"))
               (sha256
                (base32
                 "1ivdx1bhjbakf77agm9dn3wyxia1wgz9lzxgd61zqxw3xzih9gzw"))
@@ -453,8 +453,40 @@ providing the system administrator with some help in common tasks.")
                     (("build_kill=yes") "build_kill=no"))
                   #t))))
     (build-system gnu-build-system)
+    (arguments
+     `(#:phases (modify-phases %standard-phases
+                  (add-after
+                      'install 'move-static-libraries
+                    (lambda* (#:key outputs #:allow-other-keys)
+                      (let ((out    (assoc-ref outputs "out"))
+                            (static (assoc-ref outputs "static")))
+                        (mkdir-p (string-append static "/lib"))
+                        (with-directory-excursion out
+                          (for-each (lambda (file)
+                                      (rename-file file
+                                                   (string-append static "/"
+                                                                  file)))
+                                    (find-files "lib" "\\.a$")))
+                        #t))))))
     (outputs '("out"
                "static"))      ; >2 MiB of static .a libraries
+    (home-page "https://www.kernel.org/pub/linux/utils/util-linux/")
+    (synopsis "Collection of utilities for the Linux kernel")
+    (description "Util-linux is a diverse collection of Linux kernel
+utilities.  It provides dmesg and includes tools for working with file systems,
+block devices, UUIDs, TTYs, and many other tools.")
+
+    ;; 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))))
+
+(define-public util-linux
+  (package
+    (inherit util-linux/base)
+    (name "util-linux")
+    (source (origin (inherit (package-source util-linux/base))))
     (arguments
      `(#:configure-flags (list "--disable-use-tty-group"
 
@@ -500,18 +532,27 @@ providing the system administrator with some help in common tasks.")
               ("ncurses" ,ncurses)))
     (native-inputs
      `(("perl" ,perl)
-       ("net-base" ,net-base)))                   ;for tests
-    (home-page "https://www.kernel.org/pub/linux/utils/util-linux/")
-    (synopsis "Collection of utilities for the Linux kernel")
+       ("net-base" ,net-base)))))                   ;for tests
+
+(define-public util-linux/mount
+  (package
+    (inherit util-linux/base)
+    (name "util-linux-mount")
+    (source (origin (inherit (package-source util-linux/base))))
+    (arguments
+     `(#:configure-flags (list "--disable-all-programs"
+                               "--disable-bash-completion"
+                               "--disable-nls"
+                               "--enable-libmount"
+                               "--enable-libblkid"
+                               "--enable-libuuid"
+                               "--enable-mount")
+       ,@(package-arguments util-linux/base)))
+    (synopsis "Mount/Umount utilities for the Linux kernel")
     (description "Util-linux is a diverse collection of Linux kernel
-utilities.  It provides dmesg and includes tools for working with file systems,
-block devices, UUIDs, TTYs, and many other tools.")
+utilities.  However, this is a minimally configured package providing just
+the @code{mount} and @code{umount} utilities.")))
 
-    ;; 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))))
 
 (define-public procps
   (package
-- 
2.1.4

^ permalink raw reply related	[flat|nested] 32+ messages in thread

end of thread, other threads:[~2016-11-29 21:51 UTC | newest]

Thread overview: 32+ messages (download: mbox.gz follow: Atom feed
-- links below jump to the message on this page --
2016-11-10 21:14 [PATCH 1/4] gnu: Separate util-linux into three packages John Darrington
2016-11-10 21:14 ` [PATCH 2/4] gnu: nfs-utils: Change input from util-linux to util-linux/mount John Darrington
2016-11-10 21:14 ` [PATCH 3/4] gnu: Move util-linux/mount to new file and deal with the effects John Darrington
2016-11-10 21:14 ` [PATCH 4/4] Add fs-search paths to util-linux John Darrington
2016-11-11 14:43 ` [PATCH 1/4] gnu: Separate util-linux into three packages Hartmut Goebel
2016-11-11 16:03   ` John Darrington
2016-11-11 16:40     ` Hartmut Goebel
2016-11-11 19:36       ` John Darrington
2016-11-12 14:53 ` Ludovic Courtès
2016-11-12 15:28   ` John Darrington
2016-11-12 17:09     ` John Darrington
2016-11-12 22:55       ` Ludovic Courtès
2016-11-13  8:21         ` John Darrington
2016-11-13 11:59           ` Ludovic Courtès
2016-11-13 14:06             ` John Darrington
2016-11-14  9:48               ` Ludovic Courtès
2016-11-14 17:46                 ` John Darrington
2016-11-15 10:46                   ` Ludovic Courtès
2016-11-16 21:06                     ` mount syscall John Darrington
2016-11-17  9:47                       ` Ludovic Courtès
2016-11-22 19:15                         ` [PATCH] gnu: Allow nfs filesystems to be automatically mounted John Darrington
2016-11-23 22:07                           ` Ludovic Courtès
2016-11-23 23:32                             ` John Darrington
2016-11-24 16:08                               ` Ludovic Courtès
2016-11-26  9:36                                 ` [PATCH] gnu: Allow nfs file systems " John Darrington
2016-11-26 18:37                                   ` Ludovic Courtès
2016-11-26 19:33                                     ` John Darrington
2016-11-28 13:59                                       ` Ludovic Courtès
2016-11-28 14:07                                         ` John Darrington
2016-11-28 21:05                                           ` Ludovic Courtès
2016-11-29  6:27                                             ` John Darrington
2016-11-29 21:51                                               ` Ludovic Courtès

Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/guix.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.