Merge branch 'master' into staging
This commit is contained in:
commit
9f1d112d12
|
@ -194,6 +194,7 @@ MODULES += \
|
||||||
guix/import/crate.scm \
|
guix/import/crate.scm \
|
||||||
guix/import/gem.scm \
|
guix/import/gem.scm \
|
||||||
guix/import/github.scm \
|
guix/import/github.scm \
|
||||||
|
guix/import/gnome.scm \
|
||||||
guix/import/json.scm \
|
guix/import/json.scm \
|
||||||
guix/import/pypi.scm \
|
guix/import/pypi.scm \
|
||||||
guix/import/stackage.scm \
|
guix/import/stackage.scm \
|
||||||
|
|
38
README
38
README
|
@ -1,42 +1,42 @@
|
||||||
-*- mode: org -*-
|
-*- mode: org -*-
|
||||||
|
|
||||||
[[http://www.gnu.org/software/guix/][GNU Guix]] (IPA: /ɡiːks/) is a purely functional package manager, and
|
[[https://www.gnu.org/software/guix/][GNU Guix]] (IPA: /ɡiːks/) is a purely functional package manager, and
|
||||||
associated free software distribution, for the [[http://www.gnu.org/gnu/gnu.html][GNU system]]. In addition
|
associated free software distribution, for the [[https://www.gnu.org/gnu/gnu.html][GNU system]]. In addition
|
||||||
to standard package management features, Guix supports transactional
|
to standard package management features, Guix supports transactional
|
||||||
upgrades and roll-backs, unprivileged package management, per-user
|
upgrades and roll-backs, unprivileged package management, per-user
|
||||||
profiles, and garbage collection.
|
profiles, and garbage collection.
|
||||||
|
|
||||||
It provides [[http://www.gnu.org/software/guile/][Guile]] Scheme APIs, including a high-level embedded
|
It provides [[https://www.gnu.org/software/guile/][Guile]] Scheme APIs, including a high-level embedded
|
||||||
domain-specific languages (EDSLs) to describe how packages are to be
|
domain-specific languages (EDSLs) to describe how packages are to be
|
||||||
built and composed.
|
built and composed.
|
||||||
|
|
||||||
A user-land free software distribution for GNU/Linux comes as part of
|
A user-land free software distribution for GNU/Linux comes as part of
|
||||||
Guix.
|
Guix.
|
||||||
|
|
||||||
Guix is based on the [[http://nixos.org/nix/][Nix]] package manager.
|
Guix is based on the [[https://nixos.org/nix/][Nix]] package manager.
|
||||||
|
|
||||||
|
|
||||||
* Requirements
|
* Requirements
|
||||||
|
|
||||||
GNU Guix currently depends on the following packages:
|
GNU Guix currently depends on the following packages:
|
||||||
|
|
||||||
- [[http://gnu.org/software/guile/][GNU Guile 2.2.x or 2.0.x]], version 2.0.9 or later
|
- [[https://gnu.org/software/guile/][GNU Guile 2.2.x or 2.0.x]], version 2.0.9 or later
|
||||||
- [[http://gnupg.org/][GNU libgcrypt]]
|
- [[https://gnupg.org/][GNU libgcrypt]]
|
||||||
- [[http://www.gnu.org/software/make/][GNU Make]]
|
- [[https://www.gnu.org/software/make/][GNU Make]]
|
||||||
- optionally [[http://savannah.nongnu.org/projects/guile-json/][Guile-JSON]], for the 'guix import pypi' command
|
- optionally [[https://savannah.nongnu.org/projects/guile-json/][Guile-JSON]], for the 'guix import pypi' command
|
||||||
- optionally [[http://www.gnutls.org][GnuTLS]] compiled with guile support enabled, for HTTPS support
|
- optionally [[https://www.gnutls.org][GnuTLS]] compiled with guile support enabled, for HTTPS support
|
||||||
in the 'guix download' command. Note that 'guix import pypi' requires
|
in the 'guix download' command. Note that 'guix import pypi' requires
|
||||||
this functionality.
|
this functionality.
|
||||||
|
|
||||||
Unless `--disable-daemon' was passed, the following packages are needed:
|
Unless `--disable-daemon' was passed, the following packages are needed:
|
||||||
|
|
||||||
- [[http://sqlite.org/][SQLite 3]]
|
- [[https://sqlite.org/][SQLite 3]]
|
||||||
- [[http://www.bzip.org][libbz2]]
|
- [[http://www.bzip.org][libbz2]]
|
||||||
- [[http://gcc.gnu.org][GCC's g++]]
|
- [[https://gcc.gnu.org][GCC's g++]]
|
||||||
|
|
||||||
When `--disable-daemon' was passed, you instead need the following:
|
When `--disable-daemon' was passed, you instead need the following:
|
||||||
|
|
||||||
- [[http://nixos.org/nix/][Nix]]
|
- [[https://nixos.org/nix/][Nix]]
|
||||||
|
|
||||||
* Installation
|
* Installation
|
||||||
|
|
||||||
|
@ -44,7 +44,7 @@ See the manual for the installation instructions, either by running
|
||||||
|
|
||||||
info -f doc/guix.info "Installation"
|
info -f doc/guix.info "Installation"
|
||||||
|
|
||||||
or by checking the [[http://www.gnu.org/software/guix/manual/guix.html#Installation][web copy of the manual]].
|
or by checking the [[https://www.gnu.org/software/guix/manual/guix.html#Installation][web copy of the manual]].
|
||||||
|
|
||||||
For information on installation from a Git checkout, please see the section
|
For information on installation from a Git checkout, please see the section
|
||||||
"Building from Git" in the manual.
|
"Building from Git" in the manual.
|
||||||
|
@ -109,7 +109,7 @@ Join #guix on irc.freenode.net.
|
||||||
|
|
||||||
* Guix & Nix
|
* Guix & Nix
|
||||||
|
|
||||||
GNU Guix is based on [[http://nixos.org/nix/][the Nix package manager]]. It implements the same
|
GNU Guix is based on [[https://nixos.org/nix/][the Nix package manager]]. It implements the same
|
||||||
package deployment paradigm, and in fact it reuses some of its code.
|
package deployment paradigm, and in fact it reuses some of its code.
|
||||||
Yet, different engineering decisions were made for Guix, as described
|
Yet, different engineering decisions were made for Guix, as described
|
||||||
below.
|
below.
|
||||||
|
@ -132,7 +132,7 @@ the store. Guix produces such derivations, which are then interpreted
|
||||||
by the daemon to perform the build. Thus, Guix derivations can use
|
by the daemon to perform the build. Thus, Guix derivations can use
|
||||||
derivations produced by Nix (and vice versa).
|
derivations produced by Nix (and vice versa).
|
||||||
|
|
||||||
With Nix and the [[http://nixos.org/nixpkgs][Nixpkgs]] distribution, package composition happens at
|
With Nix and the [[https://nixos.org/nixpkgs][Nixpkgs]] distribution, package composition happens at
|
||||||
the Nix language level, but builders are usually written in Bash.
|
the Nix language level, but builders are usually written in Bash.
|
||||||
Conversely, Guix encourages the use of Scheme for both package
|
Conversely, Guix encourages the use of Scheme for both package
|
||||||
composition and builders. Likewise, the core functionality of Nix is
|
composition and builders. Likewise, the core functionality of Nix is
|
||||||
|
@ -141,13 +141,13 @@ but exposes all the API as Scheme.
|
||||||
|
|
||||||
* Related software
|
* Related software
|
||||||
|
|
||||||
- [[http://nixos.org][Nix, Nixpkgs, and NixOS]], functional package manager and associated
|
- [[https://nixos.org][Nix, Nixpkgs, and NixOS]], functional package manager and associated
|
||||||
software distribution, are the inspiration of Guix
|
software distribution, are the inspiration of Guix
|
||||||
- [[http://www.gnu.org/software/stow/][GNU Stow]] builds around the idea of one directory per prefix, and a
|
- [[https://www.gnu.org/software/stow/][GNU Stow]] builds around the idea of one directory per prefix, and a
|
||||||
symlink tree to create user environments
|
symlink tree to create user environments
|
||||||
- [[http://www.pvv.ntnu.no/~arnej/store/storedoc_6.html][STORE]] shares the same idea
|
- [[https://www.pvv.ntnu.no/~arnej/store/storedoc_6.html][STORE]] shares the same idea
|
||||||
- [[https://live.gnome.org/OSTree/][GNOME's OSTree]] allows bootable system images to be built from a
|
- [[https://live.gnome.org/OSTree/][GNOME's OSTree]] allows bootable system images to be built from a
|
||||||
specified set of packages
|
specified set of packages
|
||||||
- The [[http://www.gnu.org/s/gsrc/][GNU Source Release Collection]] (GSRC) is a user-land software
|
- The [[https://www.gnu.org/s/gsrc/][GNU Source Release Collection]] (GSRC) is a user-land software
|
||||||
distribution; unlike Guix, it relies on core tools available on the
|
distribution; unlike Guix, it relies on core tools available on the
|
||||||
host system
|
host system
|
||||||
|
|
|
@ -15414,6 +15414,10 @@ added specifications.
|
||||||
@item @code{port} (default: @code{8081})
|
@item @code{port} (default: @code{8081})
|
||||||
Port number used by the HTTP server.
|
Port number used by the HTTP server.
|
||||||
|
|
||||||
|
@item --listen=@var{host}
|
||||||
|
Listen on the network interface for @var{host}. The default is to
|
||||||
|
accept connections from localhost.
|
||||||
|
|
||||||
@item @code{specifications} (default: @code{#~'()})
|
@item @code{specifications} (default: @code{#~'()})
|
||||||
A gexp (@pxref{G-Expressions}) that evaluates to a list of specifications,
|
A gexp (@pxref{G-Expressions}) that evaluates to a list of specifications,
|
||||||
where a specification is an association list
|
where a specification is an association list
|
||||||
|
|
|
@ -552,7 +552,6 @@ dist_patch_DATA = \
|
||||||
%D%/packages/patches/ceph-disable-unittest-throttle.patch \
|
%D%/packages/patches/ceph-disable-unittest-throttle.patch \
|
||||||
%D%/packages/patches/ceph-skip-collect-sys-info-test.patch \
|
%D%/packages/patches/ceph-skip-collect-sys-info-test.patch \
|
||||||
%D%/packages/patches/ceph-skip-unittest_blockdev.patch \
|
%D%/packages/patches/ceph-skip-unittest_blockdev.patch \
|
||||||
%D%/packages/patches/python-acme-dont-use-openssl-rand.patch \
|
|
||||||
%D%/packages/patches/chicken-CVE-2017-6949.patch \
|
%D%/packages/patches/chicken-CVE-2017-6949.patch \
|
||||||
%D%/packages/patches/chicken-CVE-2017-11343.patch \
|
%D%/packages/patches/chicken-CVE-2017-11343.patch \
|
||||||
%D%/packages/patches/chmlib-inttypes.patch \
|
%D%/packages/patches/chmlib-inttypes.patch \
|
||||||
|
@ -587,7 +586,6 @@ dist_patch_DATA = \
|
||||||
%D%/packages/patches/doc++-segfault-fix.patch \
|
%D%/packages/patches/doc++-segfault-fix.patch \
|
||||||
%D%/packages/patches/doxygen-test.patch \
|
%D%/packages/patches/doxygen-test.patch \
|
||||||
%D%/packages/patches/dvd+rw-tools-add-include.patch \
|
%D%/packages/patches/dvd+rw-tools-add-include.patch \
|
||||||
%D%/packages/patches/e2fsprogs-32bit-quota-warnings.patch \
|
|
||||||
%D%/packages/patches/elfutils-tests-ptrace.patch \
|
%D%/packages/patches/elfutils-tests-ptrace.patch \
|
||||||
%D%/packages/patches/elixir-disable-failing-tests.patch \
|
%D%/packages/patches/elixir-disable-failing-tests.patch \
|
||||||
%D%/packages/patches/einstein-build.patch \
|
%D%/packages/patches/einstein-build.patch \
|
||||||
|
@ -615,7 +613,6 @@ dist_patch_DATA = \
|
||||||
%D%/packages/patches/flint-ldconfig.patch \
|
%D%/packages/patches/flint-ldconfig.patch \
|
||||||
%D%/packages/patches/fltk-shared-lib-defines.patch \
|
%D%/packages/patches/fltk-shared-lib-defines.patch \
|
||||||
%D%/packages/patches/fltk-xfont-on-demand.patch \
|
%D%/packages/patches/fltk-xfont-on-demand.patch \
|
||||||
%D%/packages/patches/fontforge-svg-modtime.patch \
|
|
||||||
%D%/packages/patches/foomatic-filters-CVE-2015-8327.patch \
|
%D%/packages/patches/foomatic-filters-CVE-2015-8327.patch \
|
||||||
%D%/packages/patches/foomatic-filters-CVE-2015-8560.patch \
|
%D%/packages/patches/foomatic-filters-CVE-2015-8560.patch \
|
||||||
%D%/packages/patches/freeimage-CVE-2015-0852.patch \
|
%D%/packages/patches/freeimage-CVE-2015-0852.patch \
|
||||||
|
@ -808,7 +805,6 @@ dist_patch_DATA = \
|
||||||
%D%/packages/patches/libtirpc-CVE-2017-8779.patch \
|
%D%/packages/patches/libtirpc-CVE-2017-8779.patch \
|
||||||
%D%/packages/patches/libtorrent-rasterbar-boost-compat.patch \
|
%D%/packages/patches/libtorrent-rasterbar-boost-compat.patch \
|
||||||
%D%/packages/patches/libtool-skip-tests2.patch \
|
%D%/packages/patches/libtool-skip-tests2.patch \
|
||||||
%D%/packages/patches/libunwind-CVE-2015-3239.patch \
|
|
||||||
%D%/packages/patches/libunistring-gnulib-multi-core.patch \
|
%D%/packages/patches/libunistring-gnulib-multi-core.patch \
|
||||||
%D%/packages/patches/libusb-0.1-disable-tests.patch \
|
%D%/packages/patches/libusb-0.1-disable-tests.patch \
|
||||||
%D%/packages/patches/libvpx-CVE-2016-2818.patch \
|
%D%/packages/patches/libvpx-CVE-2016-2818.patch \
|
||||||
|
|
|
@ -187,8 +187,8 @@ their dependencies.")
|
||||||
(license l:gpl3+))))
|
(license l:gpl3+))))
|
||||||
|
|
||||||
(define-public cuirass
|
(define-public cuirass
|
||||||
(let ((commit "87ad259dba7de38b6e3ab954cd7b2f655358d877")
|
(let ((commit "2a4d493e28100b8eca7d23300dd872c9f99e1f16")
|
||||||
(revision "8"))
|
(revision "9"))
|
||||||
(package
|
(package
|
||||||
(name "cuirass")
|
(name "cuirass")
|
||||||
(version (string-append "0.0.1-" revision "." (string-take commit 7)))
|
(version (string-append "0.0.1-" revision "." (string-take commit 7)))
|
||||||
|
@ -200,7 +200,7 @@ their dependencies.")
|
||||||
(file-name (string-append name "-" version))
|
(file-name (string-append name "-" version))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"127pvbxbh6b6ar43cdgia9qpzzpldq4wm3igsxb1ycxfsdqnjrnz"))))
|
"0hi7x25ya8wydrfj9jd9zb351mw8pgxxxwgxxdn5kds7qvhxr26v"))))
|
||||||
(build-system gnu-build-system)
|
(build-system gnu-build-system)
|
||||||
(arguments
|
(arguments
|
||||||
'(#:modules ((guix build utils)
|
'(#:modules ((guix build utils)
|
||||||
|
|
|
@ -242,9 +242,10 @@ format support.")
|
||||||
`(("boost" ,boost)
|
`(("boost" ,boost)
|
||||||
("glib" ,glib)
|
("glib" ,glib)
|
||||||
("glibmm" ,glibmm)
|
("glibmm" ,glibmm)
|
||||||
("qt" ,qt)
|
|
||||||
("libsigrok" ,libsigrok)
|
("libsigrok" ,libsigrok)
|
||||||
("libsigrokdecode" ,libsigrokdecode)))
|
("libsigrokdecode" ,libsigrokdecode)
|
||||||
|
("qtbase" ,qtbase)
|
||||||
|
("qtsvg" ,qtsvg)))
|
||||||
(build-system cmake-build-system)
|
(build-system cmake-build-system)
|
||||||
(home-page "http://www.sigrok.org/wiki/PulseView")
|
(home-page "http://www.sigrok.org/wiki/PulseView")
|
||||||
(synopsis "Qt based logic analyzer, oscilloscope and MSO GUI for sigrok")
|
(synopsis "Qt based logic analyzer, oscilloscope and MSO GUI for sigrok")
|
||||||
|
|
|
@ -396,7 +396,7 @@ and returns a sequence of positioned glyphids from the font.")
|
||||||
(define-public potrace
|
(define-public potrace
|
||||||
(package
|
(package
|
||||||
(name "potrace")
|
(name "potrace")
|
||||||
(version "1.14")
|
(version "1.15")
|
||||||
(source
|
(source
|
||||||
(origin
|
(origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
|
@ -404,7 +404,7 @@ and returns a sequence of positioned glyphids from the font.")
|
||||||
"/potrace-" version ".tar.gz"))
|
"/potrace-" version ".tar.gz"))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"0znr9i0ljb818qiwm22zw63g11a4v08gc5xkh0wbdp6g259vcwnv"))))
|
"17ajildjp14shsy339xarh1lw1p0k60la08ahl638a73mh23kcx9"))))
|
||||||
(build-system gnu-build-system)
|
(build-system gnu-build-system)
|
||||||
(native-inputs `(("ghostscript" ,ghostscript))) ;for tests
|
(native-inputs `(("ghostscript" ,ghostscript))) ;for tests
|
||||||
(inputs `(("zlib" ,zlib)))
|
(inputs `(("zlib" ,zlib)))
|
||||||
|
@ -498,26 +498,14 @@ definitions.")
|
||||||
(define-public fontforge
|
(define-public fontforge
|
||||||
(package
|
(package
|
||||||
(name "fontforge")
|
(name "fontforge")
|
||||||
(version "20160404")
|
(version "20170731")
|
||||||
(source (origin
|
(source (origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
(uri (string-append
|
(uri (string-append
|
||||||
"https://github.com/fontforge/fontforge/releases/download/"
|
"https://github.com/fontforge/fontforge/releases/download/"
|
||||||
version "/fontforge-dist-" version ".tar.gz"))
|
version "/fontforge-dist-" version ".tar.xz"))
|
||||||
(sha256 (base32
|
(sha256 (base32
|
||||||
"1kavnhbkzc1hk6f39fynq9s0haama81ddrbld4b5x60d0dbaawvc"))
|
"08l8h3yvk4v7652jvmd3ls7nf5miybkx2fmkf1mpwwfixpxxw2l4"))))
|
||||||
(modules '((guix build utils)))
|
|
||||||
(snippet
|
|
||||||
'(begin
|
|
||||||
;; Make builds bit-reproducible by using fixed date strings.
|
|
||||||
(substitute* "configure"
|
|
||||||
(("^FONTFORGE_MODTIME=.*$")
|
|
||||||
"FONTFORGE_MODTIME=\"1459819518L\"\n")
|
|
||||||
(("^FONTFORGE_MODTIME_STR=.*$")
|
|
||||||
"FONTFORGE_MODTIME_STR=\"20:25 CDT 4-Apr-2016\"\n")
|
|
||||||
(("^FONTFORGE_VERSIONDATE=.*$")
|
|
||||||
"FONTFORGE_VERSIONDATE=\"20160404\"\n"))))
|
|
||||||
(patches (list (search-patch "fontforge-svg-modtime.patch")))))
|
|
||||||
(build-system gnu-build-system)
|
(build-system gnu-build-system)
|
||||||
(native-inputs
|
(native-inputs
|
||||||
`(("pkg-config" ,pkg-config)))
|
`(("pkg-config" ,pkg-config)))
|
||||||
|
@ -541,20 +529,11 @@ definitions.")
|
||||||
("libxml2" ,libxml2)
|
("libxml2" ,libxml2)
|
||||||
("pango" ,pango)
|
("pango" ,pango)
|
||||||
("potrace" ,potrace)
|
("potrace" ,potrace)
|
||||||
("python" ,python)
|
("python" ,python-wrapper)
|
||||||
("zlib" ,zlib)))
|
("zlib" ,zlib)))
|
||||||
(arguments
|
(arguments
|
||||||
'(#:tests? #f
|
'(#:phases
|
||||||
#:phases
|
|
||||||
(modify-phases %standard-phases
|
(modify-phases %standard-phases
|
||||||
(add-after 'build 'build-contrib
|
|
||||||
(lambda* (#:key outputs #:allow-other-keys)
|
|
||||||
(let* ((out (assoc-ref outputs "out"))
|
|
||||||
(bin (string-append out "/bin")))
|
|
||||||
(and (zero? (system* "make" "-Ccontrib/fonttools"
|
|
||||||
"CC=gcc" "showttf"))
|
|
||||||
(begin (install-file "contrib/fonttools/showttf" bin)
|
|
||||||
#t)))))
|
|
||||||
(add-after 'install 'set-library-path
|
(add-after 'install 'set-library-path
|
||||||
(lambda* (#:key inputs outputs #:allow-other-keys)
|
(lambda* (#:key inputs outputs #:allow-other-keys)
|
||||||
(let ((out (assoc-ref outputs "out"))
|
(let ((out (assoc-ref outputs "out"))
|
||||||
|
@ -576,4 +555,4 @@ definitions.")
|
||||||
opentype fonts. You can save fonts in many different outline formats, and
|
opentype fonts. You can save fonts in many different outline formats, and
|
||||||
generate bitmaps.")
|
generate bitmaps.")
|
||||||
(license license:gpl3+)
|
(license license:gpl3+)
|
||||||
(home-page "http://fontforge.org/")))
|
(home-page "https://fontforge.github.io/en-US/")))
|
||||||
|
|
|
@ -46,7 +46,7 @@
|
||||||
(define-public lftp
|
(define-public lftp
|
||||||
(package
|
(package
|
||||||
(name "lftp")
|
(name "lftp")
|
||||||
(version "4.8.1")
|
(version "4.8.2")
|
||||||
(source (origin
|
(source (origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
;; See https://lftp.tech/get.html for mirrors.
|
;; See https://lftp.tech/get.html for mirrors.
|
||||||
|
@ -58,7 +58,7 @@
|
||||||
"ftp/lftp/lftp-" version ".tar.xz")))
|
"ftp/lftp/lftp-" version ".tar.xz")))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"09vvwn5w3n8ahx57b7n6qvg1abnw9w7mm4d8p381pliab6jxlw77"))))
|
"176d90amkm1klwjpfpzdsvmjnyri8f74bv4fpip8app0fs25p1sw"))))
|
||||||
(build-system gnu-build-system)
|
(build-system gnu-build-system)
|
||||||
(native-inputs
|
(native-inputs
|
||||||
`(("pkg-config" ,pkg-config)))
|
`(("pkg-config" ,pkg-config)))
|
||||||
|
|
|
@ -5302,7 +5302,7 @@ providing graphical log-ins and managing local and remote displays.")
|
||||||
(define-public libgtop
|
(define-public libgtop
|
||||||
(package
|
(package
|
||||||
(name "libgtop")
|
(name "libgtop")
|
||||||
(version "2.36.0")
|
(version "2.38.0")
|
||||||
(source (origin
|
(source (origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
(uri (string-append "mirror://gnome/sources/" name "/"
|
(uri (string-append "mirror://gnome/sources/" name "/"
|
||||||
|
@ -5310,7 +5310,7 @@ providing graphical log-ins and managing local and remote displays.")
|
||||||
name "-" version ".tar.xz"))
|
name "-" version ".tar.xz"))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"0ax17c7nplghxgsf8zl92nmhkbnggj62wwzl7nq00aqb2m6f7gqk"))))
|
"04mnxgzyb26wqk6qij4iw8cxwl82r8pcsna5dg8vz2j3pdi0wv2g"))))
|
||||||
(build-system gnu-build-system)
|
(build-system gnu-build-system)
|
||||||
(native-inputs
|
(native-inputs
|
||||||
`(("gobject-introspection" ,gobject-introspection)
|
`(("gobject-introspection" ,gobject-introspection)
|
||||||
|
|
|
@ -7,7 +7,7 @@
|
||||||
;;; Copyright © 2015, 2016, 2017 Efraim Flashner <efraim@flashner.co.il>
|
;;; Copyright © 2015, 2016, 2017 Efraim Flashner <efraim@flashner.co.il>
|
||||||
;;; Copyright © 2015, 2016 Ricardo Wurmus <rekado@elephly.net>
|
;;; Copyright © 2015, 2016 Ricardo Wurmus <rekado@elephly.net>
|
||||||
;;; Copyright © 2016 Christopher Allan Webber <cwebber@dustycloud.org>
|
;;; Copyright © 2016 Christopher Allan Webber <cwebber@dustycloud.org>
|
||||||
;;; Copyright © 2016 ng0 <ng0@we.make.ritual.n0.is>
|
;;; Copyright © 2016, 2017 ng0 <ng0@infotropique.org>
|
||||||
;;; Copyright © 2016 Christopher Baines <mail@cbaines.net>
|
;;; Copyright © 2016 Christopher Baines <mail@cbaines.net>
|
||||||
;;; Copyright © 2016 Mike Gerwitz <mtg@gnu.org>
|
;;; Copyright © 2016 Mike Gerwitz <mtg@gnu.org>
|
||||||
;;; Copyright © 2016 Troy Sankey <sankeytms@gmail.com>
|
;;; Copyright © 2016 Troy Sankey <sankeytms@gmail.com>
|
||||||
|
@ -822,3 +822,31 @@ qualities. To reconstruct a secret key, you re-enter those
|
||||||
bytes (whether by hand, OCR, QR code, or the like) and paperkey can use
|
bytes (whether by hand, OCR, QR code, or the like) and paperkey can use
|
||||||
them to transform your existing public key into a secret key.")
|
them to transform your existing public key into a secret key.")
|
||||||
(license license:gpl2+)))
|
(license license:gpl2+)))
|
||||||
|
|
||||||
|
(define-public gpa
|
||||||
|
(package
|
||||||
|
(name "gpa")
|
||||||
|
(version "0.9.10")
|
||||||
|
(source (origin
|
||||||
|
(method url-fetch)
|
||||||
|
(uri (string-append "mirror://gnupg/gpa/"
|
||||||
|
name "-" version ".tar.bz2"))
|
||||||
|
(sha256
|
||||||
|
(base32
|
||||||
|
"09xphbi2456qynwqq5n0yh0zdmdi2ggrj3wk4hsyh5lrzlvcrff3"))))
|
||||||
|
(build-system gnu-build-system)
|
||||||
|
(native-inputs
|
||||||
|
`(("pkg-config" ,pkg-config)))
|
||||||
|
(inputs
|
||||||
|
`(("gnupg" ,gnupg)
|
||||||
|
("gpgme" ,gpgme)
|
||||||
|
("libassuan" ,libassuan)
|
||||||
|
("libgpg-error" ,libgpg-error)
|
||||||
|
("gtk+-2" ,gtk+-2)))
|
||||||
|
(home-page "https://gnupg.org/software/gpa/")
|
||||||
|
(synopsis "Graphical user interface for GnuPG")
|
||||||
|
(description
|
||||||
|
"GPA, the GNU Privacy Assistant, is a graphical user interface for
|
||||||
|
@uref{https://gnupg.org, GnuPG}. It can be used to encrypt, decrypt, and sign
|
||||||
|
files, to verify signatures, and to manage the private and public keys.")
|
||||||
|
(license license:gpl3+)))
|
||||||
|
|
|
@ -27,18 +27,18 @@
|
||||||
(define-public libunwind
|
(define-public libunwind
|
||||||
(package
|
(package
|
||||||
(name "libunwind")
|
(name "libunwind")
|
||||||
(version "1.1")
|
(version "1.2.1")
|
||||||
(source (origin
|
(source (origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
(uri (string-append "mirror://savannah/libunwind/libunwind-"
|
(uri (string-append "mirror://savannah/libunwind/libunwind-"
|
||||||
version ".tar.gz"))
|
version ".tar.gz"))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"16nhx2pahh9d62mvszc88q226q5lwjankij276fxwrm8wb50zzlx"))
|
"1jsslwkilwrsj959dc8b479qildawz67r8m4lzxm7glcwa8cngiz"))))
|
||||||
(patches (search-patches "libunwind-CVE-2015-3239.patch"))))
|
|
||||||
(build-system gnu-build-system)
|
(build-system gnu-build-system)
|
||||||
(arguments
|
(arguments
|
||||||
;; FIXME: As of glibc 2.17, we get 3 out of 34 test failures.
|
;; FIXME: As of glibc 2.25, we get 1 out of 34 test failures (2 are
|
||||||
|
;; expected to fail).
|
||||||
;; Report them upstream.
|
;; Report them upstream.
|
||||||
'(#:tests? #f))
|
'(#:tests? #f))
|
||||||
(home-page "http://www.nongnu.org/libunwind")
|
(home-page "http://www.nongnu.org/libunwind")
|
||||||
|
|
|
@ -693,17 +693,16 @@ slabtop, and skill.")
|
||||||
(define-public e2fsprogs
|
(define-public e2fsprogs
|
||||||
(package
|
(package
|
||||||
(name "e2fsprogs")
|
(name "e2fsprogs")
|
||||||
(version "1.43.5")
|
(version "1.43.6")
|
||||||
(source (origin
|
(source (origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
(uri (string-append
|
(uri (string-append
|
||||||
"mirror://kernel.org/linux/kernel/people/tytso/"
|
"mirror://kernel.org/linux/kernel/people/tytso/"
|
||||||
name "/v" version "/"
|
name "/v" version "/"
|
||||||
name "-" version ".tar.xz"))
|
name "-" version ".tar.xz"))
|
||||||
(patches (search-patches "e2fsprogs-32bit-quota-warnings.patch"))
|
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"05ssjpmy0fpv2ik6ibm1f47wr6794nf0q50r581vygrqvsd3s7r6"))))
|
"00ilv65dzcgiap435j89xk86shf7rrav3wsik7cahy789qijdcn9"))))
|
||||||
(build-system gnu-build-system)
|
(build-system gnu-build-system)
|
||||||
(inputs `(("util-linux" ,util-linux)))
|
(inputs `(("util-linux" ,util-linux)))
|
||||||
(native-inputs `(("pkg-config" ,pkg-config)
|
(native-inputs `(("pkg-config" ,pkg-config)
|
||||||
|
@ -1566,16 +1565,16 @@ devices. It replaces @code{iwconfig}, which is deprecated.")
|
||||||
(define-public powertop
|
(define-public powertop
|
||||||
(package
|
(package
|
||||||
(name "powertop")
|
(name "powertop")
|
||||||
(version "2.8")
|
(version "2.9")
|
||||||
(source
|
(source
|
||||||
(origin
|
(origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
(uri (string-append
|
(uri (string-append
|
||||||
"https://01.org/sites/default/files/downloads/powertop/powertop-"
|
"https://01.org/sites/default/files/downloads/powertop/powertop-v"
|
||||||
version ".tar.gz"))
|
version ".tar.gz"))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"0nlwazxbnn0k6q5f5b09wdhw0f194lpzkp3l7vxansqhfczmcyx8"))))
|
"0l4jjlf05li2mc6g8nrss3h435wjhmnqd8m7v3kha3x0x7cbfzxa"))))
|
||||||
(build-system gnu-build-system)
|
(build-system gnu-build-system)
|
||||||
(arguments
|
(arguments
|
||||||
'(#:phases
|
'(#:phases
|
||||||
|
@ -2369,11 +2368,16 @@ country-specific regulations for the wireless spectrum.")
|
||||||
("flex" ,flex)
|
("flex" ,flex)
|
||||||
("bison" ,bison)
|
("bison" ,bison)
|
||||||
("which" ,which)))
|
("which" ,which)))
|
||||||
|
(outputs '("lib" ;avoid perl in closure
|
||||||
|
"out"))
|
||||||
(arguments
|
(arguments
|
||||||
`(#:tests? #f ; no 'check' target
|
`(#:tests? #f ; no 'check' target
|
||||||
#:make-flags (list (string-append "PREFIX=" %output)
|
#:make-flags (list (string-append "PREFIX=" %output)
|
||||||
(string-append "ETCDIR=" %output "/etc")
|
(string-append "ETCDIR=" (assoc-ref %outputs "lib") "/etc")
|
||||||
(string-append "MANDIR=" %output "/share/man"))
|
(string-append "INCLUDEDIR="
|
||||||
|
(assoc-ref %outputs "lib") "/include")
|
||||||
|
(string-append "MANDIR=" %output "/share/man")
|
||||||
|
(string-append "LIBDIR=" (assoc-ref %outputs "lib") "/lib"))
|
||||||
#:phases
|
#:phases
|
||||||
(modify-phases %standard-phases
|
(modify-phases %standard-phases
|
||||||
(delete 'configure)
|
(delete 'configure)
|
||||||
|
@ -2462,7 +2466,7 @@ SMBus access.")
|
||||||
(base32
|
(base32
|
||||||
"1siplsfgvcxamyqf44h71jx6jdfmvhfm7mh0y1q8ps4zs6pj2zwh"))))
|
"1siplsfgvcxamyqf44h71jx6jdfmvhfm7mh0y1q8ps4zs6pj2zwh"))))
|
||||||
(build-system gnu-build-system)
|
(build-system gnu-build-system)
|
||||||
(inputs `(("lm-sensors" ,lm-sensors)
|
(inputs `(("lm-sensors" ,lm-sensors "lib")
|
||||||
("gtk" ,gtk+-2)))
|
("gtk" ,gtk+-2)))
|
||||||
(native-inputs `(("pkg-config" ,pkg-config)))
|
(native-inputs `(("pkg-config" ,pkg-config)))
|
||||||
(arguments
|
(arguments
|
||||||
|
@ -3159,7 +3163,7 @@ and copy/paste text in the console and in xterm.")
|
||||||
(define-public btrfs-progs
|
(define-public btrfs-progs
|
||||||
(package
|
(package
|
||||||
(name "btrfs-progs")
|
(name "btrfs-progs")
|
||||||
(version "4.13")
|
(version "4.13.1")
|
||||||
(source (origin
|
(source (origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
(uri (string-append "mirror://kernel.org/linux/kernel/"
|
(uri (string-append "mirror://kernel.org/linux/kernel/"
|
||||||
|
@ -3167,7 +3171,7 @@ and copy/paste text in the console and in xterm.")
|
||||||
"btrfs-progs-v" version ".tar.xz"))
|
"btrfs-progs-v" version ".tar.xz"))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"17m67jm29phfvkmd72lxb1z9nymn9a9pqnja8zfb1mvflsqwbz3m"))))
|
"1clavvrlkswgicqsm2yfsxqw04lsn8dra0db84jqm6j2apz80kz0"))))
|
||||||
(build-system gnu-build-system)
|
(build-system gnu-build-system)
|
||||||
(outputs '("out"
|
(outputs '("out"
|
||||||
"static")) ; static versions of the binaries in "out"
|
"static")) ; static versions of the binaries in "out"
|
||||||
|
@ -3195,8 +3199,9 @@ and copy/paste text in the console and in xterm.")
|
||||||
("libblkid:static" ,util-linux "static")
|
("libblkid:static" ,util-linux "static")
|
||||||
("libuuid" ,util-linux)
|
("libuuid" ,util-linux)
|
||||||
("libuuid:static" ,util-linux "static")
|
("libuuid:static" ,util-linux "static")
|
||||||
|
("lzo" ,lzo)
|
||||||
("zlib" ,zlib)
|
("zlib" ,zlib)
|
||||||
("lzo" ,lzo)))
|
("zstd" ,zstd)))
|
||||||
(native-inputs `(("pkg-config" ,pkg-config)
|
(native-inputs `(("pkg-config" ,pkg-config)
|
||||||
("asciidoc" ,asciidoc)
|
("asciidoc" ,asciidoc)
|
||||||
("xmlto" ,xmlto)
|
("xmlto" ,xmlto)
|
||||||
|
|
|
@ -3,6 +3,7 @@
|
||||||
;;; Copyright © 2015 Sou Bunnbu <iyzsong@gmail.com>
|
;;; Copyright © 2015 Sou Bunnbu <iyzsong@gmail.com>
|
||||||
;;; Copyright © 2016 Mark H Weaver <mhw@netris.org>
|
;;; Copyright © 2016 Mark H Weaver <mhw@netris.org>
|
||||||
;;; Copyright © 2016 Efraim Flashner <efraim@flashner.co.il>
|
;;; Copyright © 2016 Efraim Flashner <efraim@flashner.co.il>
|
||||||
|
;;; Copyright © 2017 ng0 <ng0@infotropique.org>
|
||||||
;;;
|
;;;
|
||||||
;;; This file is part of GNU Guix.
|
;;; This file is part of GNU Guix.
|
||||||
;;;
|
;;;
|
||||||
|
@ -26,6 +27,7 @@
|
||||||
#:use-module (guix utils)
|
#:use-module (guix utils)
|
||||||
#:use-module (guix build-system cmake)
|
#:use-module (guix build-system cmake)
|
||||||
#:use-module (gnu packages)
|
#:use-module (gnu packages)
|
||||||
|
#:use-module (gnu packages glib)
|
||||||
#:use-module (gnu packages kde-frameworks)
|
#:use-module (gnu packages kde-frameworks)
|
||||||
#:use-module (gnu packages pkg-config)
|
#:use-module (gnu packages pkg-config)
|
||||||
#:use-module (gnu packages qt))
|
#:use-module (gnu packages qt))
|
||||||
|
@ -188,3 +190,31 @@ desktop environment.")
|
||||||
(description "lxqt-session provides the standard session manager
|
(description "lxqt-session provides the standard session manager
|
||||||
for the LXQt desktop environment.")
|
for the LXQt desktop environment.")
|
||||||
(license lgpl2.1+)))
|
(license lgpl2.1+)))
|
||||||
|
|
||||||
|
(define-public lxqt-build-tools
|
||||||
|
(package
|
||||||
|
(name "lxqt-build-tools")
|
||||||
|
(version "0.4.0")
|
||||||
|
(source
|
||||||
|
(origin
|
||||||
|
(method url-fetch)
|
||||||
|
(uri (string-append "https://github.com/lxde/lxqt-build-tools/releases/"
|
||||||
|
"download/" version "/" name "-" version ".tar.xz"))
|
||||||
|
(file-name (string-append name "-" version ".tar.xz"))
|
||||||
|
(sha256
|
||||||
|
(base32
|
||||||
|
"1llbrjbgabxlq933a8cpg03b3mdmvd8983csnd4f7vrcj51nv0xh"))))
|
||||||
|
(build-system cmake-build-system)
|
||||||
|
(arguments
|
||||||
|
`(#:tests? #f)) ;No tests
|
||||||
|
(native-inputs
|
||||||
|
`(("pkg-config" ,pkg-config)
|
||||||
|
("glib" ,glib)))
|
||||||
|
(inputs
|
||||||
|
`(("qtbase" ,qtbase)))
|
||||||
|
(synopsis "LXQt Build tools")
|
||||||
|
(description
|
||||||
|
"Lxqt-build-tools is providing several tools needed to build LXQt
|
||||||
|
itself as well as other components maintained by the LXQt project.")
|
||||||
|
(home-page "http://lxqt.org")
|
||||||
|
(license lgpl2.1+)))
|
||||||
|
|
|
@ -677,7 +677,9 @@ Sega Master System/Mark III, Sega Genesis/Mega Drive, BBC Micro
|
||||||
(("SHELL=/bin/sh") "SHELL=sh")
|
(("SHELL=/bin/sh") "SHELL=sh")
|
||||||
;; When checking the fontforge version do not consider the
|
;; When checking the fontforge version do not consider the
|
||||||
;; version string that's part of the directory.
|
;; version string that's part of the directory.
|
||||||
(("head -n") "tail -n"))
|
(("head -n") "tail -n")
|
||||||
|
;; Also allow for SOURCE_DATE_EPOCH = 0 in fontforge.
|
||||||
|
(("20110222") "19700101"))
|
||||||
(setenv "out" "www")
|
(setenv "out" "www")
|
||||||
(setenv "conf" "www")
|
(setenv "conf" "www")
|
||||||
#t))
|
#t))
|
||||||
|
|
|
@ -3,7 +3,7 @@
|
||||||
;;; Copyright © 2014, 2015 Mark H Weaver <mhw@netris.org>
|
;;; Copyright © 2014, 2015 Mark H Weaver <mhw@netris.org>
|
||||||
;;; Copyright © 2015 Taylan Ulrich Bayırlı/Kammer <taylanbayirli@gmail.com>
|
;;; Copyright © 2015 Taylan Ulrich Bayırlı/Kammer <taylanbayirli@gmail.com>
|
||||||
;;; Copyright © 2015 Ludovic Courtès <ludo@gnu.org>
|
;;; Copyright © 2015 Ludovic Courtès <ludo@gnu.org>
|
||||||
;;; Copyright © 2016 Efraim Flashner <efraim@flashner.co.il>
|
;;; Copyright © 2016, 2017 Efraim Flashner <efraim@flashner.co.il>
|
||||||
;;;
|
;;;
|
||||||
;;; This file is part of GNU Guix.
|
;;; This file is part of GNU Guix.
|
||||||
;;;
|
;;;
|
||||||
|
@ -98,14 +98,14 @@ computers over a network.")
|
||||||
(define-public openntpd
|
(define-public openntpd
|
||||||
(package
|
(package
|
||||||
(name "openntpd")
|
(name "openntpd")
|
||||||
(version "6.1p1")
|
(version "6.2p2")
|
||||||
(source (origin
|
(source (origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
(uri (string-append
|
(uri (string-append
|
||||||
"mirror://openbsd/OpenNTPD/" name "-" version ".tar.gz"))
|
"mirror://openbsd/OpenNTPD/" name "-" version ".tar.gz"))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"1ykx9ga76k5m54h7k5x4ds2clxsyfniss5vmf88pxnrip5bx6if8"))))
|
"1chghbh1bnwhxdgkqki51w94nwvlyj1a9q8716r4v2h0gc9s822q"))))
|
||||||
(build-system gnu-build-system)
|
(build-system gnu-build-system)
|
||||||
(home-page "http://www.openntpd.org/")
|
(home-page "http://www.openntpd.org/")
|
||||||
(synopsis "NTP client and server by the OpenBSD Project")
|
(synopsis "NTP client and server by the OpenBSD Project")
|
||||||
|
|
|
@ -1,46 +0,0 @@
|
||||||
Fix a test failure on 32-bit platforms.
|
|
||||||
|
|
||||||
Patch copied from upstream source repository:
|
|
||||||
|
|
||||||
https://git.kernel.org/pub/scm/fs/ext2/e2fsprogs.git/commit/?id=9e31a5696c4b699bf000a07b86601c1fb91c0493
|
|
||||||
|
|
||||||
diff --git a/lib/support/mkquota.c b/lib/support/mkquota.c
|
|
||||||
index 00f3a40..931a839 100644
|
|
||||||
--- a/lib/support/mkquota.c
|
|
||||||
+++ b/lib/support/mkquota.c
|
|
||||||
@@ -50,11 +50,13 @@ static void print_dquot(const char *desc, struct dquot *dq)
|
|
||||||
{
|
|
||||||
if (desc)
|
|
||||||
fprintf(stderr, "%s: ", desc);
|
|
||||||
- fprintf(stderr, "%u %ld:%ld:%ld %ld:%ld:%ld\n",
|
|
||||||
- dq->dq_id, dq->dq_dqb.dqb_curspace,
|
|
||||||
- dq->dq_dqb.dqb_bsoftlimit, dq->dq_dqb.dqb_bhardlimit,
|
|
||||||
- dq->dq_dqb.dqb_curinodes,
|
|
||||||
- dq->dq_dqb.dqb_isoftlimit, dq->dq_dqb.dqb_ihardlimit);
|
|
||||||
+ fprintf(stderr, "%u %lld:%lld:%lld %lld:%lld:%lld\n",
|
|
||||||
+ dq->dq_id, (long long) dq->dq_dqb.dqb_curspace,
|
|
||||||
+ (long long) dq->dq_dqb.dqb_bsoftlimit,
|
|
||||||
+ (long long) dq->dq_dqb.dqb_bhardlimit,
|
|
||||||
+ (long long) dq->dq_dqb.dqb_curinodes,
|
|
||||||
+ (long long) dq->dq_dqb.dqb_isoftlimit,
|
|
||||||
+ (long long) dq->dq_dqb.dqb_ihardlimit);
|
|
||||||
}
|
|
||||||
#else
|
|
||||||
static void print_dquot(const char *desc EXT2FS_ATTR((unused)),
|
|
||||||
@@ -524,11 +526,11 @@ static int scan_dquots_callback(struct dquot *dquot, void *cb_data)
|
|
||||||
dq->dq_dqb.dqb_curinodes != dquot->dq_dqb.dqb_curinodes) {
|
|
||||||
scan_data->usage_is_inconsistent = 1;
|
|
||||||
fprintf(stderr, "[QUOTA WARNING] Usage inconsistent for ID %u:"
|
|
||||||
- "actual (%ld, %ld) != expected (%ld, %ld)\n",
|
|
||||||
- dq->dq_id, dq->dq_dqb.dqb_curspace,
|
|
||||||
- dq->dq_dqb.dqb_curinodes,
|
|
||||||
- dquot->dq_dqb.dqb_curspace,
|
|
||||||
- dquot->dq_dqb.dqb_curinodes);
|
|
||||||
+ "actual (%lld, %lld) != expected (%lld, %lld)\n",
|
|
||||||
+ dq->dq_id, (long long) dq->dq_dqb.dqb_curspace,
|
|
||||||
+ (long long) dq->dq_dqb.dqb_curinodes,
|
|
||||||
+ (long long) dquot->dq_dqb.dqb_curspace,
|
|
||||||
+ (long long) dquot->dq_dqb.dqb_curinodes);
|
|
||||||
}
|
|
||||||
|
|
||||||
if (scan_data->update_limits) {
|
|
|
@ -1,35 +0,0 @@
|
||||||
Propagate source font modification time to svg during conversion. Similar to
|
|
||||||
what upstream commit 95a470e941d9a20fbdaca51334e8b6b9d93cfae4 did for TTF
|
|
||||||
files.
|
|
||||||
|
|
||||||
Submitted upstream at http://github.com/fontforge/fontforge/pull/2696
|
|
||||||
|
|
||||||
--- a/fontforge/svg.c
|
|
||||||
+++ b/fontforge/svg.c
|
|
||||||
@@ -27,7 +27,6 @@
|
|
||||||
#include "fontforgevw.h"
|
|
||||||
#include <unistd.h>
|
|
||||||
#include <math.h>
|
|
||||||
-#include <time.h>
|
|
||||||
#include <locale.h>
|
|
||||||
#include <utype.h>
|
|
||||||
#include <chardata.h>
|
|
||||||
@@ -62,7 +61,6 @@ static int svg_outfontheader(FILE *file, SplineFont *sf,int layer) {
|
|
||||||
BlueData bd;
|
|
||||||
char *hash, *hasv, ch;
|
|
||||||
int minu, maxu, i;
|
|
||||||
- time_t now;
|
|
||||||
const char *author = GetAuthor();
|
|
||||||
|
|
||||||
memset(&info,0,sizeof(info));
|
|
||||||
@@ -78,9 +76,8 @@ static int svg_outfontheader(FILE *file, SplineFont *sf,int layer) {
|
|
||||||
fprintf( file, "\n-->\n" );
|
|
||||||
}
|
|
||||||
fprintf( file, "<svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" version=\"1.1\">\n" );
|
|
||||||
- time(&now);
|
|
||||||
fprintf( file, "<metadata>\nCreated by FontForge %d at %s",
|
|
||||||
- FONTFORGE_VERSIONDATE_RAW, ctime(&now) );
|
|
||||||
+ FONTFORGE_VERSIONDATE_RAW, ctime((time_t*)&sf->modificationtime) );
|
|
||||||
if ( author!=NULL )
|
|
||||||
fprintf(file," By %s\n", author);
|
|
||||||
else
|
|
|
@ -1,17 +0,0 @@
|
||||||
Copied from Fedora.
|
|
||||||
|
|
||||||
https://bugzilla.redhat.com/show_bug.cgi?id=1232265
|
|
||||||
http://pkgs.fedoraproject.org/cgit/libunwind.git/tree/libunwind-1.1-fix-CVE-2015-3239.patch
|
|
||||||
|
|
||||||
diff -up libunwind-1.1/include/dwarf_i.h.CVE20153239 libunwind-1.1/include/dwarf_i.h
|
|
||||||
--- libunwind-1.1/include/dwarf_i.h.CVE20153239 2015-07-10 13:38:36.404996748 -0400
|
|
||||||
+++ libunwind-1.1/include/dwarf_i.h 2015-07-10 13:39:25.050707613 -0400
|
|
||||||
@@ -20,7 +20,7 @@
|
|
||||||
extern const uint8_t dwarf_to_unw_regnum_map[DWARF_REGNUM_MAP_LENGTH];
|
|
||||||
/* REG is evaluated multiple times; it better be side-effects free! */
|
|
||||||
# define dwarf_to_unw_regnum(reg) \
|
|
||||||
- (((reg) <= DWARF_REGNUM_MAP_LENGTH) ? dwarf_to_unw_regnum_map[reg] : 0)
|
|
||||||
+ (((reg) < DWARF_REGNUM_MAP_LENGTH) ? dwarf_to_unw_regnum_map[reg] : 0)
|
|
||||||
#endif
|
|
||||||
|
|
||||||
#ifdef UNW_LOCAL_ONLY
|
|
|
@ -1,28 +0,0 @@
|
||||||
Fix build with PyOpenSSL > 17.2.0.
|
|
||||||
|
|
||||||
See <https://github.com/certbot/certbot/issues/5111>.
|
|
||||||
|
|
||||||
Patch copied from upstream source repository:
|
|
||||||
https://github.com/certbot/certbot/commit/f6be07da74c664b57ac8c053585f919c79f9af44
|
|
||||||
|
|
||||||
diff --git a/acme/crypto_util.py b/acme/crypto_util.py
|
|
||||||
index de15284c03..b8fba03488 100644
|
|
||||||
--- a/acme/crypto_util.py
|
|
||||||
+++ b/acme/crypto_util.py
|
|
||||||
@@ -2,6 +2,7 @@
|
|
||||||
import binascii
|
|
||||||
import contextlib
|
|
||||||
import logging
|
|
||||||
+import os
|
|
||||||
import re
|
|
||||||
import socket
|
|
||||||
import sys
|
|
||||||
@@ -243,7 +244,7 @@ def gen_ss_cert(key, domains, not_before=None,
|
|
||||||
"""
|
|
||||||
assert domains, "Must provide one or more hostnames for the cert."
|
|
||||||
cert = OpenSSL.crypto.X509()
|
|
||||||
- cert.set_serial_number(int(binascii.hexlify(OpenSSL.rand.bytes(16)), 16))
|
|
||||||
+ cert.set_serial_number(int(binascii.hexlify(os.urandom(16)), 16))
|
|
||||||
cert.set_version(2)
|
|
||||||
|
|
||||||
extensions = [
|
|
|
@ -34,6 +34,7 @@
|
||||||
#:use-module (gnu packages crypto)
|
#:use-module (gnu packages crypto)
|
||||||
#:use-module (gnu packages cups)
|
#:use-module (gnu packages cups)
|
||||||
#:use-module (gnu packages databases)
|
#:use-module (gnu packages databases)
|
||||||
|
#:use-module (gnu packages docbook)
|
||||||
#:use-module (gnu packages tls)
|
#:use-module (gnu packages tls)
|
||||||
#:use-module (gnu packages popt)
|
#:use-module (gnu packages popt)
|
||||||
#:use-module (gnu packages pkg-config)
|
#:use-module (gnu packages pkg-config)
|
||||||
|
@ -42,7 +43,8 @@
|
||||||
#:use-module (gnu packages kerberos)
|
#:use-module (gnu packages kerberos)
|
||||||
#:use-module (gnu packages linux)
|
#:use-module (gnu packages linux)
|
||||||
#:use-module (gnu packages perl)
|
#:use-module (gnu packages perl)
|
||||||
#:use-module (gnu packages python))
|
#:use-module (gnu packages python)
|
||||||
|
#:use-module (gnu packages xml))
|
||||||
|
|
||||||
(define-public cifs-utils
|
(define-public cifs-utils
|
||||||
(package
|
(package
|
||||||
|
@ -159,8 +161,19 @@ anywhere.")
|
||||||
"0pap686cl0j5c9v1v09krpqdk416x3851fbcap5ysp1zajrfw7aq"))))
|
"0pap686cl0j5c9v1v09krpqdk416x3851fbcap5ysp1zajrfw7aq"))))
|
||||||
(build-system gnu-build-system)
|
(build-system gnu-build-system)
|
||||||
(arguments
|
(arguments
|
||||||
'(#:phases
|
`(#:phases
|
||||||
(modify-phases %standard-phases
|
(modify-phases %standard-phases
|
||||||
|
(add-before 'configure 'locate-docbook-stylesheets
|
||||||
|
(lambda* (#:key inputs #:allow-other-keys)
|
||||||
|
;; XXX for some reason XML_CATALOG_FILES is not respected.
|
||||||
|
(substitute* '("buildtools/wafsamba/samba_conftests.py"
|
||||||
|
"buildtools/wafsamba/wafsamba.py"
|
||||||
|
"docs-xml/xslt/man.xsl")
|
||||||
|
(("http://docbook.sourceforge.net/release/xsl/current/")
|
||||||
|
(string-append (assoc-ref inputs "docbook-xsl")
|
||||||
|
"/xml/xsl/docbook-xsl-"
|
||||||
|
,(package-version docbook-xsl) "/")))
|
||||||
|
#t))
|
||||||
(replace 'configure
|
(replace 'configure
|
||||||
;; samba uses a custom configuration script that runs waf.
|
;; samba uses a custom configuration script that runs waf.
|
||||||
(lambda* (#:key outputs #:allow-other-keys)
|
(lambda* (#:key outputs #:allow-other-keys)
|
||||||
|
@ -203,7 +216,9 @@ anywhere.")
|
||||||
("tevent" ,tevent)
|
("tevent" ,tevent)
|
||||||
("tdb" ,tdb)))
|
("tdb" ,tdb)))
|
||||||
(native-inputs
|
(native-inputs
|
||||||
`(("perl" ,perl)
|
`(("docbook-xsl" ,docbook-xsl) ;for generating manpages
|
||||||
|
("xsltproc" ,libxslt) ;ditto
|
||||||
|
("perl" ,perl)
|
||||||
("pkg-config" ,pkg-config)
|
("pkg-config" ,pkg-config)
|
||||||
("python" ,python-2))) ; incompatible with Python 3
|
("python" ,python-2))) ; incompatible with Python 3
|
||||||
(home-page "https://www.samba.org/")
|
(home-page "https://www.samba.org/")
|
||||||
|
|
|
@ -248,6 +248,51 @@ interfaces (GUIs) in the Tcl language.")
|
||||||
utility functions and modules all written in high-level Tcl.")
|
utility functions and modules all written in high-level Tcl.")
|
||||||
(license (package-license tcl))))
|
(license (package-license tcl))))
|
||||||
|
|
||||||
|
(define-public tklib
|
||||||
|
(package
|
||||||
|
(name "tklib")
|
||||||
|
(version "0.6")
|
||||||
|
(source (origin
|
||||||
|
(method url-fetch)
|
||||||
|
(uri (string-append "https://core.tcl.tk/tklib/tarball/tklib-"
|
||||||
|
version ".tar.gz?uuid=tklib-0-6"))
|
||||||
|
(sha256
|
||||||
|
(base32
|
||||||
|
"03y0bzgwbh7nnyqkh8n00bbkq2fyblq39s3bdb6mawna0bbn0wwg"))))
|
||||||
|
(build-system gnu-build-system)
|
||||||
|
(native-inputs
|
||||||
|
`(("tcl" ,tcl)))
|
||||||
|
(propagated-inputs
|
||||||
|
`(("tcllib" ,tcllib)
|
||||||
|
("tk" ,tk))) ; for "wish"
|
||||||
|
(native-search-paths
|
||||||
|
(list (search-path-specification
|
||||||
|
(variable "TCLLIBPATH")
|
||||||
|
(separator " ")
|
||||||
|
(files (list (string-append "lib/tklib" version))))))
|
||||||
|
(home-page "https://www.tcl.tk/software/tklib/")
|
||||||
|
(synopsis "Tk utility modules for Tcl")
|
||||||
|
(description "Tklib is a collection of common utility functions and
|
||||||
|
modules for Tk, all written in high-level Tcl. Examples of provided widgets:
|
||||||
|
@enumerate
|
||||||
|
@item @code{chatwidget}
|
||||||
|
@item @code{datefield}
|
||||||
|
@item @code{tooltip}
|
||||||
|
@item @code{cursor}
|
||||||
|
@item @code{ipentry}
|
||||||
|
@item @code{tablelist}
|
||||||
|
@item @code{history}
|
||||||
|
@item @code{tkpiechart}
|
||||||
|
@item @code{ico}
|
||||||
|
@item @code{crosshair}
|
||||||
|
@item @code{ntext}
|
||||||
|
@item @code{plotchart}
|
||||||
|
@item @code{ctext}
|
||||||
|
@item @code{autosscroll}
|
||||||
|
@item @code{canvas}
|
||||||
|
@end enumerate")
|
||||||
|
(license (package-license tcl))))
|
||||||
|
|
||||||
(define-public tclxml
|
(define-public tclxml
|
||||||
(package
|
(package
|
||||||
(name "tclxml")
|
(name "tclxml")
|
||||||
|
|
|
@ -486,14 +486,13 @@ netcat implementation that supports TLS.")
|
||||||
(package
|
(package
|
||||||
(name "python-acme")
|
(name "python-acme")
|
||||||
;; Remember to update the hash of certbot when updating python-acme.
|
;; Remember to update the hash of certbot when updating python-acme.
|
||||||
(version "0.18.1")
|
(version "0.18.2")
|
||||||
(source (origin
|
(source (origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
(uri (pypi-uri "acme" version))
|
(uri (pypi-uri "acme" version))
|
||||||
(patches (search-patches "python-acme-dont-use-openssl-rand.patch"))
|
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"0ry6vhfkhds28sg232hngwfnkqihsxv9r8w92c6nz45r7w56qk0y"))))
|
"1xiy8m7501g5l9kpdmyvyz72nfnl72l19qkrf76fyvby7adzm3ki"))))
|
||||||
(build-system python-build-system)
|
(build-system python-build-system)
|
||||||
(arguments
|
(arguments
|
||||||
`(#:phases
|
`(#:phases
|
||||||
|
@ -541,7 +540,7 @@ netcat implementation that supports TLS.")
|
||||||
(uri (pypi-uri name version))
|
(uri (pypi-uri name version))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"0k3bqfkjxyg0qivs4a6iz6gyqx8li4hgn8m268r72lxgq46ay2mf"))))
|
"16lw4n7kwnkvh9sz2f97c7ad1wwp33mg5fc332lpy5n17zpfc8h1"))))
|
||||||
(build-system python-build-system)
|
(build-system python-build-system)
|
||||||
(arguments
|
(arguments
|
||||||
`(,@(substitute-keyword-arguments (package-arguments python-acme)
|
`(,@(substitute-keyword-arguments (package-arguments python-acme)
|
||||||
|
|
|
@ -124,14 +124,14 @@ as well as the classic centralized workflow.")
|
||||||
(name "git")
|
(name "git")
|
||||||
;; XXX When updating Git, check if the special 'git:src' input to cgit needs
|
;; XXX When updating Git, check if the special 'git:src' input to cgit needs
|
||||||
;; to be updated as well.
|
;; to be updated as well.
|
||||||
(version "2.14.1")
|
(version "2.14.2")
|
||||||
(source (origin
|
(source (origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
(uri (string-append "mirror://kernel.org/software/scm/git/git-"
|
(uri (string-append "mirror://kernel.org/software/scm/git/git-"
|
||||||
version ".tar.xz"))
|
version ".tar.xz"))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"1iic3wiihxp3l3k6d4z886v3869c3dzgddjxnd5124wy1rnlqwkg"))))
|
"18f70gfzwqd210806hmf94blcd7yv5h9ka6xqkpd2jhijqwp5sah"))))
|
||||||
(build-system gnu-build-system)
|
(build-system gnu-build-system)
|
||||||
(native-inputs
|
(native-inputs
|
||||||
`(("native-perl" ,perl)
|
`(("native-perl" ,perl)
|
||||||
|
@ -145,7 +145,7 @@ as well as the classic centralized workflow.")
|
||||||
(sha256
|
(sha256
|
||||||
|
|
||||||
(base32
|
(base32
|
||||||
"1whlsiicayalym4hkf01zdiqpw37gdf7c52gw9ki7bv2x3hf3g3y"))))))
|
"1z05a7hxxndyby3dbj3gaw91sjwmky5d1yph96jmj0fhx78m1lvd"))))))
|
||||||
(inputs
|
(inputs
|
||||||
`(("curl" ,curl)
|
`(("curl" ,curl)
|
||||||
("expat" ,expat)
|
("expat" ,expat)
|
||||||
|
|
|
@ -168,14 +168,14 @@ commands would.")
|
||||||
(define-public i3-wm
|
(define-public i3-wm
|
||||||
(package
|
(package
|
||||||
(name "i3-wm")
|
(name "i3-wm")
|
||||||
(version "4.14")
|
(version "4.14.1")
|
||||||
(source (origin
|
(source (origin
|
||||||
(method url-fetch)
|
(method url-fetch)
|
||||||
(uri (string-append "https://i3wm.org/downloads/i3-"
|
(uri (string-append "https://i3wm.org/downloads/i3-"
|
||||||
version ".tar.bz2"))
|
version ".tar.bz2"))
|
||||||
(sha256
|
(sha256
|
||||||
(base32
|
(base32
|
||||||
"1mm5jazwv4dz3k8vl1lfrcw86agpws5k9lmav1ly51qvmzivsfmf"))))
|
"1cazmfbbx6n8c81h6x6pdayq3mxs2ml3adz165z8vapkc72kl1nh"))))
|
||||||
(build-system gnu-build-system)
|
(build-system gnu-build-system)
|
||||||
(arguments
|
(arguments
|
||||||
`(#:make-flags
|
`(#:make-flags
|
||||||
|
|
|
@ -13,6 +13,7 @@
|
||||||
;;; Copyright © 2016, 2017 John Darrington <jmd@gnu.org>
|
;;; Copyright © 2016, 2017 John Darrington <jmd@gnu.org>
|
||||||
;;; Copyright © 2017 Marius Bakke <mbakke@fastmail.com>
|
;;; Copyright © 2017 Marius Bakke <mbakke@fastmail.com>
|
||||||
;;; Copyright © 2017 Rutger Helling <rhelling@mykolab.com>
|
;;; Copyright © 2017 Rutger Helling <rhelling@mykolab.com>
|
||||||
|
;;; Copyright © 2017 Arun Isaac <arunisaac@systemreboot.net>
|
||||||
;;;
|
;;;
|
||||||
;;; This file is part of GNU Guix.
|
;;; This file is part of GNU Guix.
|
||||||
;;;
|
;;;
|
||||||
|
@ -39,10 +40,12 @@
|
||||||
#:use-module (guix build-system python)
|
#:use-module (guix build-system python)
|
||||||
#:use-module (guix utils)
|
#:use-module (guix utils)
|
||||||
#:use-module (gnu packages)
|
#:use-module (gnu packages)
|
||||||
|
#:use-module (gnu packages anthy)
|
||||||
#:use-module (gnu packages autotools)
|
#:use-module (gnu packages autotools)
|
||||||
#:use-module (gnu packages bison)
|
#:use-module (gnu packages bison)
|
||||||
#:use-module (gnu packages check)
|
#:use-module (gnu packages check)
|
||||||
#:use-module (gnu packages compression)
|
#:use-module (gnu packages compression)
|
||||||
|
#:use-module (gnu packages emacs)
|
||||||
#:use-module (gnu packages flex)
|
#:use-module (gnu packages flex)
|
||||||
#:use-module (gnu packages fontutils)
|
#:use-module (gnu packages fontutils)
|
||||||
#:use-module (gnu packages freedesktop)
|
#:use-module (gnu packages freedesktop)
|
||||||
|
@ -54,6 +57,7 @@
|
||||||
#:use-module (gnu packages gtk)
|
#:use-module (gnu packages gtk)
|
||||||
#:use-module (gnu packages image)
|
#:use-module (gnu packages image)
|
||||||
#:use-module (gnu packages libbsd)
|
#:use-module (gnu packages libbsd)
|
||||||
|
#:use-module (gnu packages libedit)
|
||||||
#:use-module (gnu packages linux)
|
#:use-module (gnu packages linux)
|
||||||
#:use-module (gnu packages llvm)
|
#:use-module (gnu packages llvm)
|
||||||
#:use-module (gnu packages m4)
|
#:use-module (gnu packages m4)
|
||||||
|
@ -62,6 +66,7 @@
|
||||||
#:use-module (gnu packages perl)
|
#:use-module (gnu packages perl)
|
||||||
#:use-module (gnu packages pkg-config)
|
#:use-module (gnu packages pkg-config)
|
||||||
#:use-module (gnu packages python)
|
#:use-module (gnu packages python)
|
||||||
|
#:use-module (gnu packages qt)
|
||||||
#:use-module (gnu packages spice)
|
#:use-module (gnu packages spice)
|
||||||
#:use-module (gnu packages video)
|
#:use-module (gnu packages video)
|
||||||
#:use-module (gnu packages xiph)
|
#:use-module (gnu packages xiph)
|
||||||
|
@ -5982,3 +5987,96 @@ disconnect from these programs and reconnect from the same or another machine,
|
||||||
without losing any state. It can also be used to forward full desktops from
|
without losing any state. It can also be used to forward full desktops from
|
||||||
X11 servers, Windows, or macOS.")
|
X11 servers, Windows, or macOS.")
|
||||||
(license license:gpl2+)))
|
(license license:gpl2+)))
|
||||||
|
|
||||||
|
(define-public uim
|
||||||
|
(package
|
||||||
|
(name "uim")
|
||||||
|
(version "1.8.6")
|
||||||
|
(source
|
||||||
|
(origin
|
||||||
|
(method url-fetch)
|
||||||
|
(uri (string-append "https://github.com/uim/uim/releases/download/uim-"
|
||||||
|
version "/uim-" version ".tar.bz2"))
|
||||||
|
(sha256
|
||||||
|
(base32
|
||||||
|
"0pr3rfqpxha8p6cxzdjsxbbmmr76riklzw36f68phd1zqw1sh7kv"))))
|
||||||
|
(build-system gnu-build-system)
|
||||||
|
(inputs
|
||||||
|
`(("anthy" ,anthy)
|
||||||
|
("libedit" ,libedit)
|
||||||
|
("libxft" ,libxft)
|
||||||
|
("m17n-lib" ,m17n-lib)))
|
||||||
|
(native-inputs
|
||||||
|
`(("emacs" ,emacs-minimal)
|
||||||
|
("intltool" ,intltool)
|
||||||
|
("pkg-config" ,pkg-config)))
|
||||||
|
(arguments
|
||||||
|
`(#:modules ((guix build gnu-build-system)
|
||||||
|
(guix build utils)
|
||||||
|
(guix build emacs-utils))
|
||||||
|
#:imported-modules (,@%gnu-build-system-modules
|
||||||
|
(guix build emacs-utils))
|
||||||
|
#:configure-flags
|
||||||
|
(list "--with-anthy-utf8"
|
||||||
|
(string-append "--with-lispdir=" %output
|
||||||
|
"/share/emacs/site-lisp/guix.d")
|
||||||
|
;; Set proper runpath
|
||||||
|
(string-append "LDFLAGS=-Wl,-rpath=" %output "/lib"))
|
||||||
|
#:phases
|
||||||
|
(modify-phases %standard-phases
|
||||||
|
;; Set path of uim-el-agent and uim-el-helper-agent executables
|
||||||
|
(add-after 'configure 'configure-uim-el
|
||||||
|
(lambda* (#:key outputs #:allow-other-keys)
|
||||||
|
(substitute* "emacs/uim-var.el"
|
||||||
|
(("\"(uim-el-agent|uim-el-helper-agent)\"" _ executable)
|
||||||
|
(string-append "\"" (assoc-ref outputs "out")
|
||||||
|
"/bin/" executable "\"")))
|
||||||
|
#t))
|
||||||
|
;; Generate emacs autoloads for uim.el
|
||||||
|
(add-after 'install 'make-autoloads
|
||||||
|
(lambda* (#:key outputs #:allow-other-keys)
|
||||||
|
(emacs-generate-autoloads
|
||||||
|
,name (string-append (assoc-ref outputs "out")
|
||||||
|
"/share/emacs/site-lisp"))
|
||||||
|
#t)))))
|
||||||
|
(home-page "https://github.com/uim/uim")
|
||||||
|
(synopsis "Multilingual input method framework")
|
||||||
|
(description "Uim is a multilingual input method library and environment.
|
||||||
|
It provides a simple, easily extensible and high code-quality input method
|
||||||
|
development platform, and useful input method environment for users of desktop
|
||||||
|
and embedded platforms.")
|
||||||
|
(license (list license:lgpl2.1+ ; scm/py.scm, pixmaps/*.{svg,png} (see pixmaps/README)
|
||||||
|
license:gpl2+ ; scm/pinyin-big5.scm
|
||||||
|
license:gpl3+ ; scm/elatin-rules.cm
|
||||||
|
license:public-domain ; scm/input-parse.scm, scm/match.scm
|
||||||
|
;; gtk2/toolbar/eggtrayicon.{ch},
|
||||||
|
;; qt3/chardict/kseparator.{cpp,h},
|
||||||
|
;; qt3/pref/kseparator.{cpp,h}
|
||||||
|
license:lgpl2.0+
|
||||||
|
;; pixmaps/*.{svg,png} (see pixmaps/README),
|
||||||
|
;; all other files
|
||||||
|
license:bsd-3))))
|
||||||
|
|
||||||
|
(define-public uim-gtk
|
||||||
|
(package
|
||||||
|
(inherit uim)
|
||||||
|
(name "uim-gtk")
|
||||||
|
(inputs
|
||||||
|
`(("gtk" ,gtk+)
|
||||||
|
("gtk" ,gtk+-2)
|
||||||
|
,@(package-inputs uim)))
|
||||||
|
(synopsis "Multilingual input method framework (GTK+ support)")))
|
||||||
|
|
||||||
|
(define-public uim-qt
|
||||||
|
(package
|
||||||
|
(inherit uim)
|
||||||
|
(name "uim-qt")
|
||||||
|
(inputs
|
||||||
|
`(("qt" ,qt-4)
|
||||||
|
,@(package-inputs uim)))
|
||||||
|
(arguments
|
||||||
|
(substitute-keyword-arguments (package-arguments uim)
|
||||||
|
((#:configure-flags configure-flags)
|
||||||
|
(append configure-flags (list "--with-qt4-immodule"
|
||||||
|
"--with-qt4")))))
|
||||||
|
(synopsis "Multilingual input method framework (Qt support)")))
|
||||||
|
|
|
@ -2,6 +2,7 @@
|
||||||
;;; Copyright © 2016 Mathieu Lirzin <mthl@gnu.org>
|
;;; Copyright © 2016 Mathieu Lirzin <mthl@gnu.org>
|
||||||
;;; Copyright © 2016, 2017 Ludovic Courtès <ludo@gnu.org>
|
;;; Copyright © 2016, 2017 Ludovic Courtès <ludo@gnu.org>
|
||||||
;;; Copyright © 2017 Mathieu Othacehe <m.othacehe@gmail.com>
|
;;; Copyright © 2017 Mathieu Othacehe <m.othacehe@gmail.com>
|
||||||
|
;;; Copyright © 2017 Jan Nieuwenhuizen <janneke@gnu.org>
|
||||||
;;;
|
;;;
|
||||||
;;; This file is part of GNU Guix.
|
;;; This file is part of GNU Guix.
|
||||||
;;;
|
;;;
|
||||||
|
@ -61,6 +62,8 @@
|
||||||
(default "/var/run/cuirass/cuirass.db"))
|
(default "/var/run/cuirass/cuirass.db"))
|
||||||
(port cuirass-configuration-port ;integer (port)
|
(port cuirass-configuration-port ;integer (port)
|
||||||
(default 8081))
|
(default 8081))
|
||||||
|
(host cuirass-configuration-host ;string
|
||||||
|
(default "localhost"))
|
||||||
(specifications cuirass-configuration-specifications)
|
(specifications cuirass-configuration-specifications)
|
||||||
;gexp that evaluates to specification-alist
|
;gexp that evaluates to specification-alist
|
||||||
(use-substitutes? cuirass-configuration-use-substitutes? ;boolean
|
(use-substitutes? cuirass-configuration-use-substitutes? ;boolean
|
||||||
|
@ -84,6 +87,7 @@
|
||||||
(interval (cuirass-configuration-interval config))
|
(interval (cuirass-configuration-interval config))
|
||||||
(database (cuirass-configuration-database config))
|
(database (cuirass-configuration-database config))
|
||||||
(port (cuirass-configuration-port config))
|
(port (cuirass-configuration-port config))
|
||||||
|
(host (cuirass-configuration-host config))
|
||||||
(specs (cuirass-configuration-specifications config))
|
(specs (cuirass-configuration-specifications config))
|
||||||
(use-substitutes? (cuirass-configuration-use-substitutes? config))
|
(use-substitutes? (cuirass-configuration-use-substitutes? config))
|
||||||
(one-shot? (cuirass-configuration-one-shot? config))
|
(one-shot? (cuirass-configuration-one-shot? config))
|
||||||
|
@ -100,6 +104,7 @@
|
||||||
#$(scheme-file "cuirass-specs.scm" specs)
|
#$(scheme-file "cuirass-specs.scm" specs)
|
||||||
"--database" #$database
|
"--database" #$database
|
||||||
"--port" #$(number->string port)
|
"--port" #$(number->string port)
|
||||||
|
"--listen" #$host
|
||||||
"--interval" #$(number->string interval)
|
"--interval" #$(number->string interval)
|
||||||
#$@(if use-substitutes? '("--use-substitutes") '())
|
#$@(if use-substitutes? '("--use-substitutes") '())
|
||||||
#$@(if one-shot? '("--one-shot") '())
|
#$@(if one-shot? '("--one-shot") '())
|
||||||
|
|
|
@ -544,11 +544,11 @@ in a loop. See <http://bugs.gnu.org/26931>.")
|
||||||
(>= gid 100))))
|
(>= gid 100))))
|
||||||
|
|
||||||
;; Last, the job that uses a command; allows us to test whether
|
;; Last, the job that uses a command; allows us to test whether
|
||||||
;; $PATH is sane. (Note that 'marionette-eval' stringifies objects
|
;; $PATH is sane.
|
||||||
;; that don't have a read syntax, hence the string.)
|
|
||||||
(test-equal "root's job with command"
|
(test-equal "root's job with command"
|
||||||
"#<eof>"
|
""
|
||||||
(wait-for-file "/root/witness-touch" marionette))
|
(wait-for-file "/root/witness-touch" marionette
|
||||||
|
#:read '(@ (ice-9 rdelim) read-string)))
|
||||||
|
|
||||||
(test-end)
|
(test-end)
|
||||||
(exit (= (test-runner-fail-count (test-runner-current)) 0)))))
|
(exit (= (test-runner-fail-count (test-runner-current)) 0)))))
|
||||||
|
|
|
@ -127,7 +127,11 @@
|
||||||
"Return a variant of OS where ROOTS are registered as GC roots."
|
"Return a variant of OS where ROOTS are registered as GC roots."
|
||||||
(operating-system
|
(operating-system
|
||||||
(inherit os)
|
(inherit os)
|
||||||
(services (cons (service gc-root-service-type roots)
|
|
||||||
|
;; We use this procedure for the installation OS, which already defines GC
|
||||||
|
;; roots. Add ROOTS to those.
|
||||||
|
(services (cons (simple-service 'extra-root
|
||||||
|
gc-root-service-type roots)
|
||||||
(operating-system-user-services os)))))
|
(operating-system-user-services os)))))
|
||||||
|
|
||||||
|
|
||||||
|
|
|
@ -67,7 +67,7 @@
|
||||||
#:key source inputs native-inputs outputs system target
|
#:key source inputs native-inputs outputs system target
|
||||||
(meson (default-meson))
|
(meson (default-meson))
|
||||||
(ninja (default-ninja))
|
(ninja (default-ninja))
|
||||||
(glib-or-gtk #f)
|
(glib-or-gtk? #f)
|
||||||
#:allow-other-keys
|
#:allow-other-keys
|
||||||
#:rest arguments)
|
#:rest arguments)
|
||||||
"Return a bag for NAME."
|
"Return a bag for NAME."
|
||||||
|
|
|
@ -61,7 +61,6 @@
|
||||||
|
|
||||||
%gnu-updater
|
%gnu-updater
|
||||||
%gnu-ftp-updater
|
%gnu-ftp-updater
|
||||||
%gnome-updater
|
|
||||||
%kde-updater
|
%kde-updater
|
||||||
%xorg-updater
|
%xorg-updater
|
||||||
%kernel.org-updater))
|
%kernel.org-updater))
|
||||||
|
@ -512,6 +511,9 @@ list available from %GNU-FILE-LIST-URI over HTTP(S)."
|
||||||
(values name+version #f)
|
(values name+version #f)
|
||||||
(values (match:substring match 1) (match:substring match 2)))))
|
(values (match:substring match 1) (match:substring match 2)))))
|
||||||
|
|
||||||
|
(define gnome-package?
|
||||||
|
(url-prefix-predicate "mirror://gnome/"))
|
||||||
|
|
||||||
(define (pure-gnu-package? package)
|
(define (pure-gnu-package? package)
|
||||||
"Return true if PACKAGE is a non-Emacs and non-GNOME GNU package. This
|
"Return true if PACKAGE is a non-Emacs and non-GNOME GNU package. This
|
||||||
excludes AucTeX, for instance, whose releases are now uploaded to
|
excludes AucTeX, for instance, whose releases are now uploaded to
|
||||||
|
@ -522,70 +524,9 @@ releases are on gnu.org."
|
||||||
(not (gnome-package? package))
|
(not (gnome-package? package))
|
||||||
(gnu-package? package)))
|
(gnu-package? package)))
|
||||||
|
|
||||||
(define (url-prefix-predicate prefix)
|
|
||||||
"Return a predicate that returns true when passed a package where one of its
|
|
||||||
source URLs starts with PREFIX."
|
|
||||||
(lambda (package)
|
|
||||||
(define matching-uri?
|
|
||||||
(match-lambda
|
|
||||||
((? string? uri)
|
|
||||||
(string-prefix? prefix uri))
|
|
||||||
(_
|
|
||||||
#f)))
|
|
||||||
|
|
||||||
(match (package-source package)
|
|
||||||
((? origin? origin)
|
|
||||||
(match (origin-uri origin)
|
|
||||||
((? matching-uri?) #t)
|
|
||||||
(_ #f)))
|
|
||||||
(_ #f))))
|
|
||||||
|
|
||||||
(define gnu-hosted?
|
(define gnu-hosted?
|
||||||
(url-prefix-predicate "mirror://gnu/"))
|
(url-prefix-predicate "mirror://gnu/"))
|
||||||
|
|
||||||
(define gnome-package?
|
|
||||||
(url-prefix-predicate "mirror://gnome/"))
|
|
||||||
|
|
||||||
(define (latest-gnome-release package)
|
|
||||||
"Return the latest release of PACKAGE, the name of a GNOME package."
|
|
||||||
(define %not-dot
|
|
||||||
(char-set-complement (char-set #\.)))
|
|
||||||
|
|
||||||
(define (even-minor-version? version)
|
|
||||||
(match (string-tokenize version %not-dot)
|
|
||||||
(((= string->number major) (= string->number minor) . rest)
|
|
||||||
(and minor (even? minor)))
|
|
||||||
(_
|
|
||||||
#t))) ;cross fingers
|
|
||||||
|
|
||||||
(define (even-numbered? file)
|
|
||||||
;; Return true if FILE somehow denotes an even-numbered file name. The
|
|
||||||
;; trick here is that we want this to match both directories such as
|
|
||||||
;; "3.18.6" and actual file names such as "gtk+-3.18.6.tar.bz2".
|
|
||||||
(let-values (((name version) (package-name->name+version file)))
|
|
||||||
(even-minor-version? (or version name))))
|
|
||||||
|
|
||||||
(define upstream-name
|
|
||||||
;; Some packages like "NetworkManager" have camel-case names.
|
|
||||||
(package-upstream-name package))
|
|
||||||
|
|
||||||
(false-if-ftp-error
|
|
||||||
(latest-ftp-release upstream-name
|
|
||||||
#:server "ftp.gnome.org"
|
|
||||||
#:directory (string-append "/pub/gnome/sources/"
|
|
||||||
upstream-name)
|
|
||||||
|
|
||||||
|
|
||||||
;; <https://www.gnome.org/gnome-3/source/> explains
|
|
||||||
;; that odd minor version numbers represent development
|
|
||||||
;; releases, which we are usually not interested in.
|
|
||||||
#:keep-file? even-numbered?
|
|
||||||
|
|
||||||
;; ftp.gnome.org provides no signatures, only
|
|
||||||
;; checksums.
|
|
||||||
#:file->signature (const #f))))
|
|
||||||
|
|
||||||
|
|
||||||
(define (latest-kde-release package)
|
(define (latest-kde-release package)
|
||||||
"Return the latest release of PACKAGE, the name of an KDE.org package."
|
"Return the latest release of PACKAGE, the name of an KDE.org package."
|
||||||
(let ((uri (string->uri (origin-uri (package-source package)))))
|
(let ((uri (string->uri (origin-uri (package-source package)))))
|
||||||
|
@ -642,13 +583,6 @@ source URLs starts with PREFIX."
|
||||||
(pure-gnu-package? package))))
|
(pure-gnu-package? package))))
|
||||||
(latest latest-release*)))
|
(latest latest-release*)))
|
||||||
|
|
||||||
(define %gnome-updater
|
|
||||||
(upstream-updater
|
|
||||||
(name 'gnome)
|
|
||||||
(description "Updater for GNOME packages")
|
|
||||||
(pred gnome-package?)
|
|
||||||
(latest latest-gnome-release)))
|
|
||||||
|
|
||||||
(define %kde-updater
|
(define %kde-updater
|
||||||
(upstream-updater
|
(upstream-updater
|
||||||
(name 'kde)
|
(name 'kde)
|
||||||
|
|
|
@ -321,7 +321,9 @@ Raise an '&http-get-error' condition if downloading fails."
|
||||||
;; Update the cache and return an input port.
|
;; Update the cache and return an input port.
|
||||||
(guard (c ((http-get-error? c)
|
(guard (c ((http-get-error? c)
|
||||||
(if (= 304 (http-get-error-code c)) ;"Not Modified"
|
(if (= 304 (http-get-error-code c)) ;"Not Modified"
|
||||||
cache-port
|
(begin
|
||||||
|
(utime file) ;update FILE's mtime
|
||||||
|
cache-port)
|
||||||
(raise c))))
|
(raise c))))
|
||||||
(let ((port (http-fetch uri #:text? text?
|
(let ((port (http-fetch uri #:text? text?
|
||||||
#:headers headers)))
|
#:headers headers)))
|
||||||
|
|
|
@ -0,0 +1,112 @@
|
||||||
|
;;; GNU Guix --- Functional package management for GNU
|
||||||
|
;;; Copyright © 2017 Ludovic Courtès <ludo@gnu.org>
|
||||||
|
;;;
|
||||||
|
;;; This file is part of GNU Guix.
|
||||||
|
;;;
|
||||||
|
;;; GNU Guix is free software; you can redistribute it and/or modify it
|
||||||
|
;;; under the terms of the GNU General Public License as published by
|
||||||
|
;;; the Free Software Foundation; either version 3 of the License, or (at
|
||||||
|
;;; your option) any later version.
|
||||||
|
;;;
|
||||||
|
;;; GNU Guix is distributed in the hope that it will be useful, but
|
||||||
|
;;; WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||||
|
;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||||
|
;;; GNU General Public License for more details.
|
||||||
|
;;;
|
||||||
|
;;; You should have received a copy of the GNU General Public License
|
||||||
|
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
|
||||||
|
|
||||||
|
(define-module (guix import gnome)
|
||||||
|
#:use-module (guix upstream)
|
||||||
|
#:use-module (guix utils)
|
||||||
|
#:use-module (guix packages)
|
||||||
|
#:use-module (guix http-client)
|
||||||
|
#:use-module (json)
|
||||||
|
#:use-module (srfi srfi-1)
|
||||||
|
#:use-module (srfi srfi-11)
|
||||||
|
#:use-module (srfi srfi-34)
|
||||||
|
#:use-module (web uri)
|
||||||
|
#:use-module (ice-9 match)
|
||||||
|
#:export (%gnome-updater))
|
||||||
|
|
||||||
|
;;; Commentary:
|
||||||
|
;;;
|
||||||
|
;;; This package provides not an actual importer but simply an updater for
|
||||||
|
;;; GNOME packages. It grabs package meta-data from 'cache.json' files
|
||||||
|
;;; available on ftp.gnome.org.
|
||||||
|
;;;
|
||||||
|
;;; Code:
|
||||||
|
|
||||||
|
(define (jsonish->upstream-source name jsonish)
|
||||||
|
"Return an <upstream-source> object for package NAME, using JSONISH as the
|
||||||
|
source for metadata."
|
||||||
|
(match jsonish
|
||||||
|
((version . dictionary)
|
||||||
|
(upstream-source
|
||||||
|
(package name)
|
||||||
|
(version version)
|
||||||
|
(urls (filter-map (lambda (extension)
|
||||||
|
(match (hash-ref dictionary extension)
|
||||||
|
(#f
|
||||||
|
#f)
|
||||||
|
((? string? relative-url)
|
||||||
|
(string-append "mirror://gnome/sources/"
|
||||||
|
name "/" relative-url))))
|
||||||
|
'("tar.lz" "tar.xz" "tar.bz2" "tar.gz")))))))
|
||||||
|
|
||||||
|
(define (latest-gnome-release package)
|
||||||
|
"Return the latest release of PACKAGE, a GNOME package, or #f if it could
|
||||||
|
not be determined."
|
||||||
|
(define %not-dot
|
||||||
|
(char-set-complement (char-set #\.)))
|
||||||
|
|
||||||
|
(define (even-minor-version? version)
|
||||||
|
(match (string-tokenize version %not-dot)
|
||||||
|
(((= string->number major) (= string->number minor) . rest)
|
||||||
|
(and minor (even? minor)))
|
||||||
|
(_
|
||||||
|
#t))) ;cross fingers
|
||||||
|
|
||||||
|
(define upstream-name
|
||||||
|
;; Some packages like "NetworkManager" have camel-case names.
|
||||||
|
(package-upstream-name package))
|
||||||
|
|
||||||
|
(guard (c ((http-get-error? c)
|
||||||
|
(if (= 404 (http-get-error-code c))
|
||||||
|
#f
|
||||||
|
(raise c))))
|
||||||
|
(let* ((port (http-fetch/cached
|
||||||
|
(string->uri (string-append
|
||||||
|
"https://ftp.gnome.org/pub/gnome/sources/"
|
||||||
|
upstream-name "/cache.json"))
|
||||||
|
|
||||||
|
;; ftp.gnome.org supports 'if-Modified-Since', so the local
|
||||||
|
;; cache can expire early.
|
||||||
|
#:ttl (* 60 10)))
|
||||||
|
(json (json->scm port)))
|
||||||
|
(close-port port)
|
||||||
|
(match json
|
||||||
|
((4 (? hash-table? releases) _ ...)
|
||||||
|
(let* ((releases (hash-ref releases upstream-name))
|
||||||
|
(latest (hash-fold (lambda (key value result)
|
||||||
|
(cond ((even-minor-version? key)
|
||||||
|
(match result
|
||||||
|
(#f
|
||||||
|
(cons key value))
|
||||||
|
((newest . _)
|
||||||
|
(if (version>? key newest)
|
||||||
|
(cons key value)
|
||||||
|
result))))
|
||||||
|
(else
|
||||||
|
result)))
|
||||||
|
#f
|
||||||
|
releases)))
|
||||||
|
(and latest
|
||||||
|
(jsonish->upstream-source upstream-name latest))))))))
|
||||||
|
|
||||||
|
(define %gnome-updater
|
||||||
|
(upstream-updater
|
||||||
|
(name 'gnome)
|
||||||
|
(description "Updater for GNOME packages")
|
||||||
|
(pred (url-prefix-predicate "mirror://gnome/"))
|
||||||
|
(latest latest-gnome-release)))
|
|
@ -45,6 +45,7 @@
|
||||||
upstream-source-signature-urls
|
upstream-source-signature-urls
|
||||||
upstream-source-archive-types
|
upstream-source-archive-types
|
||||||
|
|
||||||
|
url-prefix-predicate
|
||||||
coalesce-sources
|
coalesce-sources
|
||||||
|
|
||||||
upstream-updater
|
upstream-updater
|
||||||
|
@ -81,6 +82,24 @@
|
||||||
(signature-urls upstream-source-signature-urls ;#f | list of strings
|
(signature-urls upstream-source-signature-urls ;#f | list of strings
|
||||||
(default #f)))
|
(default #f)))
|
||||||
|
|
||||||
|
(define (url-prefix-predicate prefix)
|
||||||
|
"Return a predicate that returns true when passed a package where one of its
|
||||||
|
source URLs starts with PREFIX."
|
||||||
|
(lambda (package)
|
||||||
|
(define matching-uri?
|
||||||
|
(match-lambda
|
||||||
|
((? string? uri)
|
||||||
|
(string-prefix? prefix uri))
|
||||||
|
(_
|
||||||
|
#f)))
|
||||||
|
|
||||||
|
(match (package-source package)
|
||||||
|
((? origin? origin)
|
||||||
|
(match (origin-uri origin)
|
||||||
|
((? matching-uri?) #t)
|
||||||
|
(_ #f)))
|
||||||
|
(_ #f))))
|
||||||
|
|
||||||
(define (upstream-source-archive-types release)
|
(define (upstream-source-archive-types release)
|
||||||
"Return the available types of archives for RELEASE---a list of strings such
|
"Return the available types of archives for RELEASE---a list of strings such
|
||||||
as \"gz\" or \"xz\"."
|
as \"gz\" or \"xz\"."
|
||||||
|
|
Loading…
Reference in New Issue