#:use-module (gnu packages xorg)
#:use-module (gnu packages groff)
#:use-module (gnu packages selinux)
+ #:use-module (gnu packages swig)
#:use-module (guix build-system cmake)
#:use-module (guix build-system gnu)
#:use-module (guix build-system python)
((string-prefix? "arm" arch) "arm")
((string-prefix? "aarch64" arch) "arm64")
((string-prefix? "alpha" arch) "alpha")
+ ((string-prefix? "powerpc" arch) "powerpc") ;including "powerpc64le"
(else arch))))
(define-public (system->defconfig system)
defconfig. Return the appropiate make target if applicable, otherwise return
\"defconfig\"."
(cond ((string-prefix? "powerpc-" system) "pmac32_defconfig")
+ ((string-prefix? "powerpc64le-" system) "ppc64_defconfig")
(else "defconfig")))
(define (linux-libre-urls version)
(define %intel-compatible-systems '("x86_64-linux" "i686-linux"))
-(define %linux-libre-version "4.12.4")
-(define %linux-libre-hash "13c6ka4fhzi41bjlssbkz84hkag7knqpvfyp2jjhm3wm25r4lhw8")
+(define %linux-libre-version "4.12.9")
+(define %linux-libre-hash "1wpsqhaab91l1wdbsxq8pdwrdx3a603zr5zjxbzdsx99pr6iypra")
(define-public linux-libre
(make-linux-libre %linux-libre-version
#:configuration-file kernel-config))
(define-public linux-libre-4.9
- (make-linux-libre "4.9.40"
- "1qaqi2dcydyxw79yj9pa7yxf13ss4rng7bgg0i1dl63c3g7qjgcz"
+ (make-linux-libre "4.9.45"
+ "0qdwn2m3iynbjyszkq4hlx891s1b83p9nr1v7vdb20fs4n2cbl9s"
%intel-compatible-systems
#:configuration-file kernel-config))
(define-public linux-libre-4.4
- (make-linux-libre "4.4.79"
- "03x1nc2fxmh29sf2fbsqzmw8qrdzv5gakr9xrg1shxh31c6xr3xr"
+ (make-linux-libre "4.4.84"
+ "00lp3471mvwpq5062cynaakjn7bjpylmg1d1wwmhh6fdknd2h1kz"
%intel-compatible-systems
#:configuration-file kernel-config))
(define-public linux-libre-4.1
- (make-linux-libre "4.1.42"
- "1g5jhn7cm6ixn7w8ciqm6qgxv7k1jg50v6k05hsvzvrqfpaxqlbz"
+ (make-linux-libre "4.1.43"
+ "0ycqmvczj7lm7czilnwpyp14n2lzilyx7m43rsq1qdm2m5rp4q2w"
%intel-compatible-systems
#:configuration-file kernel-config))
(define-public util-linux
(package
(name "util-linux")
- (version "2.29.2")
+ (version "2.30")
(source (origin
(method url-fetch)
(uri (string-append "mirror://kernel.org/linux/utils/"
name "-" version ".tar.xz"))
(sha256
(base32
- "1qz81w8vzrmy8xn9yx7ls4amkbgwx6vr62pl6kv9g7r0g3ba9kmc"))
+ "13d0ax8bcapga8phj2nclx86w57ddqxbr98ajibpzjq6d7zs8262"))
(patches (search-patches "util-linux-tests.patch"))
(modules '((guix build utils)))
(snippet
(build-system gnu-build-system)
(inputs
`(("libusb" ,libusb)
- ("eudev" ,eudev-with-hwdb)))
+ ("eudev" ,eudev)))
(native-inputs
`(("pkg-config" ,pkg-config)))
(home-page "http://www.linux-usb.org/")
(define-public e2fsprogs
(package
(name "e2fsprogs")
- (version "1.43.4")
+ (version "1.43.5")
(source (origin
(method url-fetch)
(uri (string-append
"mirror://kernel.org/linux/kernel/people/tytso/"
name "/v" version "/"
name "-" version ".tar.xz"))
+ (patches (search-patches "e2fsprogs-32bit-quota-warnings.patch"))
(sha256
(base32
- "092absr4vrlqrkdf9nwh4ykj40ab6hhwrkdr6sjsccd54c8z5csl"))))
+ "05ssjpmy0fpv2ik6ibm1f47wr6794nf0q50r581vygrqvsd3s7r6"))))
(build-system gnu-build-system)
(inputs `(("util-linux" ,util-linux)))
(native-inputs `(("pkg-config" ,pkg-config)
(define-public zerofree
(package
(name "zerofree")
- (version "1.0.3")
- (home-page "http://intgat.tigress.co.uk/rmy/uml/")
+ (version "1.1.0")
+ (home-page "https://frippery.org/uml/")
(source (origin
(method url-fetch)
(uri (string-append home-page name "-" version
".tgz"))
(sha256
(base32
- "1xncw3dn2cp922ly42m96p6fh7jv8ysg6bwqbk5xvw701f3dmkrs"))))
+ "059g29x5r1xj6wcj4xj85l8w6qrxyl86yqbybjqqz6nxz4falxzf"))))
(build-system gnu-build-system)
(arguments
- '(#:phases (alist-replace
- 'install
- (lambda* (#:key outputs #:allow-other-keys)
- (let* ((out (assoc-ref outputs "out"))
- (bin (string-append out "/bin")))
- (mkdir-p bin)
- (copy-file "zerofree"
- (string-append bin "/zerofree"))
- (chmod (string-append bin "/zerofree")
- #o555)
- #t))
- (alist-delete 'configure %standard-phases))
- #:tests? #f)) ;no tests
+ '(#:phases
+ (modify-phases %standard-phases
+ (delete 'configure) ; no configure script
+ (replace 'install
+ ;; The Makefile lacks an ‘install’ target.
+ (lambda* (#:key outputs #:allow-other-keys)
+ (let* ((out (assoc-ref outputs "out"))
+ (bin (string-append out "/bin")))
+ (chmod "zerofree" #o555)
+ (install-file "zerofree" bin)
+ #t))))
+ #:tests? #f)) ; no tests
(inputs `(("libext2fs" ,e2fsprogs)))
(synopsis "Zero non-allocated regions in ext2/ext3/ext4 file systems")
(description
- "The zerofree command scans the free blocks in an ext2 file system and
-fills any non-zero blocks with zeroes. This is a useful way to make disk
-images more compressible.")
+ "Zerofree finds the unallocated blocks with non-zero value content in an
+ext2, ext3, or ext4 file system and fills them with zeroes (or another value).
+This is a simple way to make disk images more compressible.
+Zerofree requires the file system to be unmounted or mounted read-only.")
(license license:gpl2)))
(define-public strace
(define-public alsa-lib
(package
(name "alsa-lib")
- (version "1.1.3")
+ (version "1.1.4.1")
(source (origin
(method url-fetch)
(uri (string-append
version ".tar.bz2"))
(sha256
(base32
- "174n2psp0328xcy2f1ayls67598bxli6q9cf00d2qnac3012aa3i"))))
+ "0xjvi381105gldhv0z872a0x58sghznyx19j45lw5iyi2h68gfwi"))))
(build-system gnu-build-system)
(home-page "https://www.alsa-project.org/")
(synopsis "The Advanced Linux Sound Architecture libraries")
(base32
"1r3lw3hjvqxi5zqyq2w1qadm3gisd9nlf71dkl4yplacmssnhm3h"))))
(build-system gnu-build-system)
- (native-inputs `(("flex" ,flex) ("bison" ,bison)))
+ (native-inputs
+ `(("bison" ,bison)
+ ("flex" ,flex)
+ ("pkg-config" ,pkg-config)
+ ("swig" ,swig)
+ ("libnl3-doc"
+ ,(origin
+ (method url-fetch)
+ (uri (string-append
+ "https://github.com/thom311/libnl/releases/download/libnl"
+ (string-join (string-split version #\.) "_")
+ "/libnl-doc-" version ".tar.gz"))
+ (sha256
+ (base32 "0srab805yj8wb13l64qjyp3mdbqapxg5vk46v3zlhhzpmxqw8j7r"))))))
+ (inputs
+ `(("python-2" ,python-2)
+ ("python-3" ,python-3)))
+ (outputs '("out" "doc" "python2" "python3"))
+ (arguments
+ `(#:modules ((guix build gnu-build-system)
+ (guix build utils)
+ (srfi srfi-1))
+ #:phases
+ (modify-phases %standard-phases
+ (add-after 'install 'install-python
+ (lambda* (#:key outputs #:allow-other-keys)
+ (define (python-inst python)
+ (let ((ldflags (format #f "LDFLAGS=-Wl,-rpath=~a/lib"
+ (assoc-ref %outputs "out")))
+ (pyout (assoc-ref %outputs python)))
+ (and
+ (zero? (system (format #f "~a ~a setup.py build"
+ ldflags python pyout)))
+ (zero?
+ (system (format #f "~a ~a setup.py install --prefix=~a"
+ ldflags python pyout)))
+ (zero? (system* python "setup.py" "clean")))))
+ (with-directory-excursion "./python"
+ (every python-inst '("python2" "python3")))))
+ (add-after 'install 'install-doc
+ (lambda* (#:key inputs outputs #:allow-other-keys)
+ (let ((dest (string-append (assoc-ref outputs "doc")
+ "/share/doc/libnl")))
+ (mkdir-p dest)
+ (zero? (system* "tar" "xf" (assoc-ref inputs "libnl3-doc")
+ "--strip-components=1" "-C" dest))))))))
(home-page "http://www.infradead.org/~tgr/libnl/")
(synopsis "NetLink protocol library suite")
(description
(define-public sshfs-fuse
(package
(name "sshfs-fuse")
- (version "2.9")
+ (version "2.10")
(source (origin
(method url-fetch)
(uri (string-append "https://github.com/libfuse/sshfs/releases/"
".tar.gz"))
(sha256
(base32
- "1pp5wsl1jx11apkv2fpp559miifqhi8ka400npy5awp9ghlf3la6"))))
+ "00fir2iykdx11g8nv5gijg0zjrp2g3ldypnv0yi6lq3h5pg5v13h"))))
(build-system gnu-build-system)
(inputs
`(("fuse" ,fuse)
;; The post-systemd fork, maintained by Gentoo.
(package
(name "eudev")
- (version "3.2.1")
+ (version "3.2.2")
(source (origin
(method url-fetch)
(uri (string-append
version ".tar.gz"))
(sha256
(base32
- "06gyyl90n85x8i7lfhns514y1kg1ians13l467admyzy3kjxkqsp"))
- (patches (search-patches "eudev-rules-directory.patch"
- "eudev-conflicting-declaration.patch"))))
+ "0qqgbgpm5wdllk0s04pf80nwc8pr93xazwri1bylm1f15zn5ck1y"))
+ (patches (search-patches "eudev-rules-directory.patch"))))
(build-system gnu-build-system)
+ (arguments
+ '(#:phases (modify-phases %standard-phases
+ (add-after 'install 'build-hwdb
+ (lambda* (#:key outputs #:allow-other-keys)
+ ;; Build OUT/etc/udev/hwdb.bin. This allows 'lsusb' and
+ ;; similar tools to display product names.
+ (let ((out (assoc-ref outputs "out")))
+ (zero? (system* (string-append out "/bin/udevadm")
+ "hwdb" "--update"))))))))
(native-inputs
`(("pkg-config" ,pkg-config)
("perl" ,perl)
(license license:gpl2+)))
(define-public eudev-with-hwdb
- ;; TODO: Merge with 'eudev'.
- (package
- (inherit eudev)
- (name "eudev-with-hwdb")
- (arguments
- '(#:phases (modify-phases %standard-phases
- (add-after 'install 'build-hwdb
- (lambda* (#:key outputs #:allow-other-keys)
- ;; Build OUT/etc/udev/hwdb.bin. This allows 'lsusb' and
- ;; similar tools to display product names.
- (let ((out (assoc-ref outputs "out")))
- (zero? (system* (string-append out "/bin/udevadm")
- "hwdb" "--update"))))))))))
+ (deprecated-package "eudev-with-hwdb" eudev))
(define-public lvm2
(package
"1sb4aflgyrl7apricjipa8wx95qm69yja0lmn2f19g560c3v1b2c"))))
(build-system gnu-build-system)
(arguments
- '(#:configure-flags
+ `(#:configure-flags
(let ((out (assoc-ref %outputs "out")))
(list "--sysconfdir=/etc"
"--localstatedir=/var"
(string-append out "/lib/udev/hid2hci --method"))
(("/sbin/udevadm")
(string-append (assoc-ref inputs "eudev") "/bin/udevadm")))
- #t))))))
+ #t))))
+
+ ;; FIXME: Skip one test that segfaults on ARM.
+ ,@(if (string=? (%current-system) "armhf-linux")
+ '(#:make-flags '("XFAIL_TESTS=unit/test-gatt"))
+ '())))
(native-inputs
`(("pkg-config" ,pkg-config)
("gettext" ,gettext-minimal)))
from the btrfs-progs package. It is meant to be used in initrds.")
(license (package-license btrfs-progs))))
+(define-public f2fs-tools
+ (package
+ (name "f2fs-tools")
+ (version "1.8.0")
+ (source (origin
+ (method url-fetch)
+ (uri (string-append
+ "https://git.kernel.org/cgit/linux/kernel/git/jaegeuk"
+ "/f2fs-tools.git/snapshot/" name "-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1bir9ladb58ijlcvrjrq1fb1xv5ys50zdjaq0yzliib0apsyrnyl"))))
+ (build-system gnu-build-system)
+ (arguments
+ `(#:phases
+ (modify-phases %standard-phases
+ (add-after 'unpack 'bootstrap
+ (lambda _
+ (zero? (system* "autoreconf" "-vif")))))))
+ (native-inputs
+ `(("autoconf" ,autoconf)
+ ("automake" ,automake)
+ ("libtool" ,libtool)
+ ("pkg-config" ,pkg-config)))
+ (inputs
+ `(("libuuid" ,util-linux)))
+ (home-page "https://f2fs.wiki.kernel.org/")
+ (synopsis "Userland tools for f2fs")
+ (description
+ "F2FS, the Flash-Friendly File System, is a modern file system
+designed to be fast and durable on flash devices such as solid-state
+disks and SD cards. This package provides the userland utilities.")
+ ;; The formatting utility, libf2fs and include/f2fs_fs.h is dual
+ ;; GPL2/LGPL2.1, everything else is GPL2 only. See 'COPYING'.
+ (license (list license:gpl2 license:lgpl2.1))))
+
(define-public freefall
(package
(name "freefall")
(define-public ntfs-3g
(package
(name "ntfs-3g")
- (version "2016.2.22")
+ (version "2017.3.23")
(source (origin
(method url-fetch)
(uri (string-append "https://tuxera.com/opensource/"
"ntfs-3g_ntfsprogs-" version ".tgz"))
(sha256
(base32
- "180y5y09h30ryf2vim8j30a2npwz1iv9ly5yjmh3wjdkwh2jrdyp"))
+ "1mb228p80hv97pgk3myyvgp975r9mxq56c6bdn1n24kngcfh4niy"))
(modules '((guix build utils)))
- (patches (search-patches "ntfs-3g-CVE-2017-0358.patch"))
(snippet
;; Install under $prefix.
'(substitute* '("src/Makefile.in" "ntfsprogs/Makefile.in")
"--enable-mount-helper"
"--enable-posix-acls"
"--enable-xattr-mappings")))
- (home-page "http://www.tuxera.com/community/open-source-ntfs-3g/")
+ (home-page "https://www.tuxera.com/community/open-source-ntfs-3g/")
(synopsis "Read-write access to NTFS file systems")
(description
"NTFS-3G provides read-write access to NTFS file systems, which are
comparing system environments.")
(home-page "http://github.com/jamesodhunt/procenv/")
(license license:gpl3+)))
+
+(define-public libfabric
+ (package
+ (name "libfabric")
+ (version "1.4.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri
+ (string-append "https://github.com/ofiwg/libfabric/releases/download/v"
+ version "/libfabric-" version ".tar.bz2"))
+ (sha256
+ (base32 "19l2m1frna1l765z4j7wl8hp4rb9wrh0hy5496685hd183hmy5pv"))))
+ (build-system gnu-build-system)
+ (inputs `(("rdma-core" ,rdma-core)
+ ;; TODO: add psm, psm(2).
+ ("libnl" ,libnl)))
+ (home-page "https://ofiwg.github.io/libfabric/")
+ (synopsis "Open Fabric Interfaces")
+ (description
+ "OpenFabrics Interfaces (OFI) is a framework focused on exporting fabric
+communication services to applications. OFI is best described as a collection
+of libraries and applications used to export fabric services. The key
+components of OFI are: application interfaces, provider libraries, kernel
+services, daemons, and test applications.
+
+Libfabric is a core component of OFI. It is the library that defines and
+exports the user-space API of OFI, and is typically the only software that
+applications deal with directly. It works in conjunction with provider
+libraries, which are often integrated directly into libfabric.")
+ (license (list license:bsd-2 license:gpl2)))) ;dual