From 51ad11ad6243cbde4c50c127cff2eec0abaf9ded Mon Sep 17 00:00:00 2001 From: Marius Bakke Date: Thu, 3 Nov 2016 09:43:30 +0000 Subject: gnu: Add fatfsck-static. * gnu/packages/disk.scm (dosfstools/static): New private variable. (fatfsck/static): New variable. --- gnu/packages/disk.scm | 36 ++++++++++++++++++++++++++++++++++++ 1 file changed, 36 insertions(+) (limited to 'gnu/packages/disk.scm') diff --git a/gnu/packages/disk.scm b/gnu/packages/disk.scm index 4afd2c2df3..a4bb0be134 100644 --- a/gnu/packages/disk.scm +++ b/gnu/packages/disk.scm @@ -6,6 +6,7 @@ ;;; Copyright © 2016 Efraim Flashner ;;; Copyright © 2016 Jan Nieuwenhuizen ;;; Copyright © 2016 Roel Janssen +;;; Copyright © 2016 Marius Bakke ;;; ;;; This file is part of GNU Guix. ;;; @@ -27,6 +28,7 @@ #:use-module (guix packages) #:use-module (guix download) #:use-module (guix build-system gnu) + #:use-module (guix build-system trivial) #:use-module (gnu packages) #:use-module (gnu packages base) #:use-module (gnu packages docbook) @@ -197,6 +199,40 @@ to recover data more efficiently by only reading the necessary blocks.") which respectively make and check MS-DOS FAT file systems.") (license license:gpl3+))) +(define dosfstools/static + (static-package + (package (inherit dosfstools)))) + +(define-public fatfsck/static + (package + (name "fatfsck-static") + (version (package-version dosfstools)) + (build-system trivial-build-system) + (source #f) + (arguments + `(#:modules ((guix build utils)) + #:builder + (begin + (use-modules (guix build utils)) + (let ((src (string-append (assoc-ref %build-inputs "dosfstools") + "/sbin")) + (exe "fsck.fat") + (bin (string-append (assoc-ref %outputs "out") "/sbin"))) + (mkdir-p bin) + (with-directory-excursion bin + (copy-file (string-append src "/" exe) exe) + (remove-store-references exe) + (chmod exe #o555) + ;; Add fsck.vfat symlink to match the Linux driver name. + (symlink exe "fsck.vfat") + #t))))) + (inputs `(("dosfstools" ,dosfstools/static))) + (home-page (package-home-page dosfstools)) + (synopsis "Statically linked fsck.fat from dosfstools") + (description "This package provides a statically-linked @command{fsck.fat} +and a @command{fsck.vfat} compatibility symlink for use in an initrd.") + (license (package-license dosfstools)))) + (define-public sdparm (package (name "sdparm") -- cgit v1.2.3