summary refs log tree commit diff
path: root/gnu/packages/linux.scm
diff options
context:
space:
mode:
authorLudovic Courtès <ludo@gnu.org>2015-08-20 21:00:09 +0200
committerLudovic Courtès <ludo@gnu.org>2015-08-20 21:00:09 +0200
commit3d890318041e5c9a92fcc85f3d27aea00f4a3666 (patch)
tree789e103a4e0fa7703d976526e4cedb4955c7380a /gnu/packages/linux.scm
parent8f43d1ba99668cf0dac0b89bfb05470f099d3c38 (diff)
downloadguix-3d890318041e5c9a92fcc85f3d27aea00f4a3666.tar.gz
gnu: Add fuse-exfat.
* gnu/packages/linux.scm (fuse-exfat): New variable.
Diffstat (limited to 'gnu/packages/linux.scm')
-rw-r--r--gnu/packages/linux.scm58
1 files changed, 58 insertions, 0 deletions
diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm
index e9c74e82c4..adb6c5317e 100644
--- a/gnu/packages/linux.scm
+++ b/gnu/packages/linux.scm
@@ -2392,3 +2392,61 @@ applications.")
      "BlueZ provides support for the core Bluetooth layers and protocols.  It
 is flexible, efficient and uses a modular implementation.")
     (license gpl2+)))
+
+(define-public fuse-exfat
+  (package
+    (name "fuse-exfat")
+    (version "1.1.0")
+    (source (origin
+              (method url-fetch)
+              (uri "https://docs.google.com/uc?export=download&\
+id=0B7CLI-REKbE3VTdaa0EzTkhYdU0")
+              (sha256
+               (base32
+                "0glmgwrf0nv09am54i6s35ksbvrywrwc51w6q32mv5by8475530r"))
+              (file-name (string-append name "-" version ".tar.gz"))))
+    (build-system gnu-build-system)
+    (native-inputs
+     `(("scons" ,scons)
+       ("pkg-config" ,pkg-config)))
+    (inputs
+     `(("fuse" ,fuse)))
+    (arguments
+     '(#:tests? #f                                ;no test suite
+
+       ;; XXX: Factorize with 'exfat-utils'.
+       #: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 "http://code.google.com/p/exfat/")
+    (synopsis "Mount exFAT file systems")
+    (description
+     "This package provides a FUSE-based file system that provides read and
+write access to exFAT devices.")
+    (license gpl2+)))