aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorLudovic Courtès <ludo@gnu.org>2015-08-20 20:50:13 +0200
committerLudovic Courtès <ludo@gnu.org>2015-08-20 20:59:49 +0200
commit8f43d1ba99668cf0dac0b89bfb05470f099d3c38 (patch)
tree9e9614e9c4967486054735e6b560af0cdaeefe3d
parent4a9999871cc75f2d73d5dc83fbcad88bcaa5b921 (diff)
downloadguix-8f43d1ba99668cf0dac0b89bfb05470f099d3c38.tar
guix-8f43d1ba99668cf0dac0b89bfb05470f099d3c38.tar.gz
gnu: Add exfat-utils.
* gnu/packages/mtools.scm (exfat-utils): New variable.
-rw-r--r--gnu/packages/mtools.scm57
1 files changed, 56 insertions, 1 deletions
diff --git a/gnu/packages/mtools.scm b/gnu/packages/mtools.scm
index 0e418dcfb9..ca8af84fc3 100644
--- a/gnu/packages/mtools.scm
+++ b/gnu/packages/mtools.scm
@@ -1,5 +1,6 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2013 John Darrington <jmd@gnu.org>
+;;; Copyright © 2015 Ludovic Courtès <ludo@gnu.org>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -20,7 +21,8 @@
#:use-module (guix licenses)
#:use-module (guix packages)
#:use-module (guix download)
- #:use-module (guix build-system gnu))
+ #:use-module (guix build-system gnu)
+ #:use-module (gnu packages python))
(define-public mtools
(package
@@ -43,3 +45,56 @@ or Unix system. It supports long file names and multiple disk formats. It
also supports some FAT-specific features such as volume labels and
FAT-specific file attributes.")
(license gpl3+)))
+
+(define-public exfat-utils
+ (package
+ (name "exfat-utils")
+ (version "1.1.1")
+ (source (origin
+ (method url-fetch)
+ (uri "https://docs.google.com/uc?export=download&\
+id=0B7CLI-REKbE3UzNtSkRvdHBpdjQ")
+ (sha256
+ (base32
+ "0ck2snhlhp965bb9a4y1g2lpl979sw1yznm79wbavyv174458i66"))
+ (file-name (string-append name "-" version ".tar.gz"))))
+ (build-system gnu-build-system)
+ (native-inputs `(("scons" ,scons)))
+ (arguments
+ '(#:tests? #f ;no test suite
+ #:phases (modify-phases %standard-phases
+ (delete 'configure)
+ (add-after 'unpack 'scons-propagate-environment
+ (lambda _
+ ;; Modify the SConstruct file to arrange for
+ ;; environment variables to be propagated.
+ (substitute* "SConstruct"
+ (("^env = Environment\\(")
+ "env = Environment(ENV=os.environ, "))))
+ (replace 'build
+ (lambda _
+ (zero? (system* "scons"))))
+ (replace 'install
+ (lambda* (#:key outputs #:allow-other-keys)
+ (let* ((out (assoc-ref outputs "out"))
+ (bin (string-append out "/bin"))
+ (man8 (string-append out
+ "/share/man/man8")))
+ (mkdir-p bin)
+ (mkdir-p man8)
+ (for-each (lambda (file)
+ (copy-file
+ file
+ (string-append man8 "/"
+ (basename file))))
+ (find-files "." "\\.8$"))
+ (zero? (system* "scons" "install"
+ (string-append "DESTDIR="
+ bin)))))))))
+ (home-page "https://code.google.com/p/exfat")
+ (synopsis "Utilities to manipulate exFAT file systems")
+ (description
+ "This package provides an implementation of the exFAT file system,
+including command-line tools to validate exFAT file systems and to create new
+ones.")
+ (license gpl2+)))