summary refs log tree commit diff
path: root/distro
diff options
context:
space:
mode:
Diffstat (limited to 'distro')
-rw-r--r--distro/packages/linux.scm45
1 files changed, 43 insertions, 2 deletions
diff --git a/distro/packages/linux.scm b/distro/packages/linux.scm
index 3048181ecd..d6669312dc 100644
--- a/distro/packages/linux.scm
+++ b/distro/packages/linux.scm
@@ -1,5 +1,6 @@
 ;;; Guix --- Nix package management from Guile.         -*- coding: utf-8 -*-
 ;;; Copyright (C) 2012 Ludovic Courtès <ludo@gnu.org>
+;;; Copyright (C) 2012 Nikita Karetnikov <nikita@karetnikov.org>
 ;;;
 ;;; This file is part of Guix.
 ;;;
@@ -17,11 +18,13 @@
 ;;; along with Guix.  If not, see <http://www.gnu.org/licenses/>.
 
 (define-module (distro packages linux)
-  #:use-module (guix packages)
-  #:use-module (guix download)
+  #:use-module (distro packages compression)
   #:use-module (distro packages flex)
+  #:use-module (distro packages ncurses)
   #:use-module (distro packages perl)
   #:use-module (distro packages ncurses)
+  #:use-module (guix packages)
+  #:use-module (guix download)
   #:use-module (guix build-system gnu))
 
 (define-public linux-libre-headers
@@ -128,3 +131,41 @@ at login.  Local and dynamic reconfiguration are its key features")
 use the proc filesystem. We're not about changing the world, but
 providing the system administrator with some help in common tasks.")
     (license "GPLv2+")))
+
+(define-public util-linux
+  (package
+    (name "util-linux")
+    (version "2.21")
+    (source
+     (origin
+      (method url-fetch)
+      (uri (string-append "mirror://kernel.org/linux/utils/"
+                          name "/v" version "/"
+                          name "-" version ".2" ".tar.xz"))
+      (sha256
+       (base32
+        "1rpgghf7n0zx0cdy8hibr41wvkm2qp1yvd8ab1rxr193l1jmgcir"))))
+    (build-system gnu-build-system)
+    (arguments
+     `(#:configure-flags '("--disable-use-tty-group")
+       #:phases (alist-cons-after
+                 'install 'patch-chkdupexe
+                 (lambda* (#:key outputs #:allow-other-keys)
+                   (let ((out (assoc-ref outputs "out")))
+                     (substitute* (string-append out "/bin/chkdupexe")
+                       ;; Allow 'patch-shebang' to do its work.
+                       (("@PERL@") "/bin/perl"))))
+                 %standard-phases)))
+    (inputs `(("zlib" ,zlib)
+              ("ncurses" ,ncurses)
+              ("perl" ,perl)))
+    (home-page "https://www.kernel.org/pub/linux/utils/util-linux/")
+    (synopsis
+     "util-linux is a random collection of utilities for the Linux kernel")
+    (description
+     "util-linux is a random collection of utilities for the Linux kernel.")
+    ;; 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 '("GPLv3+" "GPLv2+" "GPLv2" "LGPLv2+"
+               "BSD-original" "Public Domain"))))