Merge branch 'master' into staging

master
Marius Bakke 2019-04-23 19:43:59 +02:00
commit 37da4fbe15
No known key found for this signature in database
GPG Key ID: A2A06DF2A33A54FA
94 changed files with 24499 additions and 18505 deletions

View File

@ -684,6 +684,9 @@ GUIX_SYSTEM_IMAGE_BASE = guix-system-install-$(PACKAGE_VERSION)
# Prefix of the Guix VM image file name.
GUIX_SYSTEM_VM_IMAGE_BASE = guix-system-vm-image-$(PACKAGE_VERSION)
# Return the sequence of '-s' flags for the given systems.
system_flags = $(foreach system,$(1),-s $(system))
# The release process works in several phases:
#
# 0. We assume the developer created a 'vX.Y' tag.
@ -701,6 +704,7 @@ GUIX_SYSTEM_VM_IMAGE_BASE = guix-system-vm-image-$(PACKAGE_VERSION)
# issue described at <https://savannah.gnu.org/bugs/index.php?51027>.
release: dist
cd po; git checkout .
cd doc; git checkout .
@if ! git diff-index --quiet HEAD; then \
echo "There are uncommitted changes; stopping." >&2 ; \
exit 1 ; \
@ -713,6 +717,9 @@ release: dist
"`git rev-parse HEAD`" "$(PACKAGE_VERSION)"
git add $(top_srcdir)/gnu/packages/package-management.scm
git commit -m "gnu: guix: Update to $(PACKAGE_VERSION)."
$(top_builddir)/pre-inst-env guix build guix \
$(call system_flags,$(SUPPORTED_SYSTEMS)) \
-v1 --no-grafts -K
rm -f $(BINARY_TARBALLS)
$(MAKE) $(BINARY_TARBALLS)
for system in $(SUPPORTED_SYSTEMS) ; do \
@ -724,6 +731,9 @@ release: dist
"`git rev-parse HEAD`"
git add $(top_srcdir)/gnu/packages/package-management.scm
git commit -m "gnu: guix: Update to `git rev-parse HEAD | cut -c1-7`."
$(top_builddir)/pre-inst-env guix build guix \
$(call system_flags,$(GUIX_SYSTEM_SUPPORTED_SYSTEMS)) \
-v1 --no-grafts -K
for system in $(GUIX_SYSTEM_SUPPORTED_SYSTEMS) ; do \
image=`$(top_builddir)/pre-inst-env \
guix system disk-image \

View File

@ -54,10 +54,6 @@
;;; available at this point.
;;;
(define %dependency-variables
;; (guix config) variables corresponding to dependencies.
'(%libgcrypt %libz %xz %gzip %bzip2))
(define %persona-variables
;; (guix config) variables that define Guix's persona.
'(%guix-package-name
@ -403,6 +399,9 @@ files."
(mlet %store-monad ((build (build-program source version guile-version
#:pull-version pull-version))
(system (if system (return system) (current-system)))
;; Note: Use the deprecated names here because the
;; caller might be Guix <= 0.16.0.
(port ((store-lift nix-server-socket)))
(major ((store-lift nix-server-major-version)))
(minor ((store-lift nix-server-minor-version))))

View File

@ -1,6 +1,6 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2016 Taylan Ulrich Bayırlı/Kammer <taylanbayirli@gmail.com>
;;; Copyright © 2016, 2017 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2016, 2017, 2019 Ludovic Courtès <ludo@gnu.org>
;;;
;;; This file is part of GNU Guix.
;;;
@ -17,7 +17,8 @@
;;; You should have received a copy of the GNU General Public License
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
(use-modules (ice-9 match)
(use-modules (ice-9 format)
(ice-9 match)
(ice-9 threads)
(srfi srfi-1)
(guix build compile)
@ -78,6 +79,10 @@ to 'make'."
(current-processor-count))))
(loop tail)))))))))
(define (% completed total)
"Return the completion percentage of COMPLETED over TOTAL as an integer."
(inexact->exact (round (* 100. (/ completed total)))))
;; Install a SIGINT handler to give unwind handlers in 'compile-file' an
;; opportunity to run upon SIGINT and to remove temporary output files.
(sigaction SIGINT
@ -92,10 +97,14 @@ to 'make'."
#:host host
#:report-load (lambda (file total completed)
(when file
(format #t " LOAD ~a~%" file)
(format #t "[~3d%] LOAD ~a~%"
(% (+ 1 completed) (* 2 total))
file)
(force-output)))
#:report-compilation (lambda (file total completed)
(when file
(format #t " GUILEC ~a~%"
(format #t "[~3d%] GUILEC ~a~%"
(% (+ total completed 1)
(* 2 total))
(scm->go file))
(force-output))))))

View File

@ -202,7 +202,6 @@ else
AC_MSG_RESULT([not found])
fi
LIBGCRYPT="libgcrypt"
LIBGCRYPT_LIBDIR="no"
LIBGCRYPT_PREFIX="no"
@ -212,7 +211,6 @@ AC_ARG_WITH([libgcrypt-prefix],
yes|no)
;;
*)
LIBGCRYPT="$withval/lib/libgcrypt"
LIBGCRYPT_PREFIX="$withval"
LIBGCRYPT_LIBDIR="$withval/lib"
;;
@ -223,11 +221,9 @@ AC_ARG_WITH([libgcrypt-libdir],
[search for GNU libgcrypt's shared library in DIR])],
[case "$withval" in
yes|no)
LIBGCRYPT="libgcrypt"
LIBGCRYPT_LIBDIR="no"
;;
*)
LIBGCRYPT="$withval/libgcrypt"
LIBGCRYPT_LIBDIR="$withval"
;;
esac])
@ -240,10 +236,6 @@ case "x$LIBGCRYPT_PREFIX$LIBGCRYPT_LIBDIR" in
;;
esac
dnl Library name suitable for `dynamic-link'.
AC_MSG_CHECKING([for libgcrypt shared library name])
AC_MSG_RESULT([$LIBGCRYPT])
AC_SUBST([LIBGCRYPT])
AC_SUBST([LIBGCRYPT_PREFIX])
AC_SUBST([LIBGCRYPT_LIBDIR])

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -3646,8 +3646,9 @@ but it supports the following options:
@item --url=@var{url}
@itemx --commit=@var{commit}
@itemx --branch=@var{branch}
Download code from the specified @var{url}, at the given @var{commit} (a valid
Git commit ID represented as a hexadecimal string), or @var{branch}.
Download code for the @code{guix} channel from the specified @var{url}, at the
given @var{commit} (a valid Git commit ID represented as a hexadecimal
string), or @var{branch}.
@cindex @file{channels.scm}, configuration file
@cindex configuration file for channels
@ -3662,6 +3663,14 @@ Read the list of channels from @var{file} instead of
evaluates to a list of channel objects. @xref{Channels}, for more
information.
@item --news
@itemx -N
Display the list of packages added or upgraded since the previous generation.
This is the same information as displayed upon @command{guix pull} completion,
but without ellipses; it is also similar to the output of @command{guix pull
-l} for the last generation (see below).
@item --list-generations[=@var{pattern}]
@itemx -l [@var{pattern}]
List all the generations of @file{~/.config/guix/current} or, if @var{pattern}
@ -8029,7 +8038,9 @@ The following derivations will be built:
@item --system=@var{system}
@itemx -s @var{system}
Attempt to build for @var{system}---e.g., @code{i686-linux}---instead of
the system type of the build host.
the system type of the build host. The @command{guix build} command allows
you to repeat this option several times, in which case it builds for all the
specified systems; other commands ignore extraneous @option{-s} options.
@quotation Note
The @code{--system} flag is for @emph{native} compilation and must not
@ -10450,7 +10461,7 @@ The package object of the operating system kernel to use@footnote{Currently
only the Linux-libre kernel is supported. In the future, it will be
possible to use the GNU@tie{}Hurd.}.
@item @code{kernel-arguments} (default: @code{'()})
@item @code{kernel-arguments} (default: @code{'("quiet")})
List of strings or gexps representing additional arguments to pass on
the command-line of the kernel---e.g., @code{("console=ttyS0")}.
@ -25113,6 +25124,12 @@ shepherd, The GNU Shepherd Manual}). @xref{Slots of services, the
@item @code{requirements} (default: @code{'()})
List of symbols denoting the Shepherd services this one depends on.
@cindex one-shot services, for the Shepherd
@item @code{one-shot?} (default: @code{#f})
Whether this service is @dfn{one-shot}. One-shot services stop immediately
after their @code{start} action has completed. @xref{Slots of services,,,
shepherd, The GNU Shepherd Manual}, for more info.
@item @code{respawn?} (default: @code{#t})
Whether to restart the service when it stops, for instance when the
underlying process dies.

View File

@ -37,6 +37,7 @@
#:use-module (ice-9 popen)
#:use-module (srfi srfi-1)
#:use-module (srfi srfi-9)
#:use-module (srfi srfi-19)
#:use-module (srfi srfi-26)
#:export (qemu-command
load-in-linux-vm
@ -458,6 +459,25 @@ GRUB configuration and OS-DRV as the stuff in it."
closures)
(register-bootcfg-root "/tmp/root" config-file))
;; 'grub-mkrescue' calls out to mtools programs to create 'efi.img', a FAT
;; file system image, and mtools honors SOURCE_DATE_EPOCH for the mtime of
;; those files. The epoch for FAT is Jan. 1st 1980, not 1970, so choose
;; that.
(setenv "SOURCE_DATE_EPOCH"
(number->string
(time-second
(date->time-utc (make-date 0 0 0 0 1 1 1980 0)))))
;; Our patched 'grub-mkrescue' honors this environment variable and passes
;; it to 'mformat', which makes it the serial number of 'efi.img'. This
;; allows for deterministic builds.
(setenv "GRUB_FAT_SERIAL_NUMBER"
(number->string (if volume-uuid
(string-hash (iso9660-uuid->string volume-uuid)
(expt 2 32))
#x77777777)
16))
(let ((pipe
(apply open-pipe* OPEN_WRITE
grub-mkrescue "-o" target
@ -471,6 +491,10 @@ GRUB configuration and OS-DRV as the stuff in it."
"mnt=/tmp/root/mnt"
"-path-list" "-"
"--"
;; Set all timestamps to 1.
"-volume_date" "all_file_dates" "=1"
"-volid" (string-upcase volume-id)
(if volume-uuid
`("-volume_date" "uuid"

View File

@ -343,6 +343,20 @@ selected keymap."
;; Add some binaries used by the installers to PATH.
#$set-installer-path
;; Arrange for language and territory name translations to be
;; available. We need them at run time, not just compile time,
;; because some territories have several corresponding languages
;; (e.g., "French" is always displayed as "français", but
;; "Belgium" could be translated to Dutch, French, or German.)
(bindtextdomain "iso_639-3" ;languages
#+(file-append iso-codes "/share/locale"))
(bindtextdomain "iso_3166-1" ;territories
#+(file-append iso-codes "/share/locale"))
;; Likewise for XKB keyboard layout names.
(bindtextdomain "xkeyboard-config"
#+(file-append xkeyboard-config "/share/locale"))
(let* ((current-installer newt-installer)
(steps (#$steps current-installer)))
((installer-init current-installer))

View File

@ -24,13 +24,15 @@
#:use-module (guix build utils)
#:export (install-system))
(define (install-system)
(define (install-system locale)
"Start COW-STORE service on target directory and launch guix install command
in a subshell."
in a subshell. LOCALE must be the locale name under which that command will
run, or #f."
(let ((install-command
(format #f "guix system init ~a ~a"
(%installer-configuration-file)
(%installer-target-dir))))
(mkdir-p (%installer-target-dir))
(start-service 'cow-store (list (%installer-target-dir)))
(false-if-exception (run-shell-command install-command))))
(false-if-exception (run-shell-command install-command
#:locale locale))))

View File

@ -36,6 +36,7 @@
make-x11-keymap-layout
x11-keymap-layout?
x11-keymap-layout-name
x11-keymap-layout-synopsis
x11-keymap-layout-description
x11-keymap-layout-variants
@ -60,7 +61,8 @@
x11-keymap-layout make-x11-keymap-layout
x11-keymap-layout?
(name x11-keymap-layout-name) ;string
(description x11-keymap-layout-description) ;string
(synopsis x11-keymap-layout-synopsis) ;string (e.g., "en")
(description x11-keymap-layout-description) ;string (a whole phrase)
(variants x11-keymap-layout-variants)) ;list of <x11-keymap-variant>
(define-record-type* <x11-keymap-variant>
@ -117,6 +119,8 @@ Configuration Database, describing possible XKB configurations."
(variantList ,[variant -> v] ...))
(x11-keymap-layout
(name name)
(synopsis (car
(assoc-ref rest-layout 'shortDescription)))
(description (car
(assoc-ref rest-layout 'description)))
(variants (list v ...)))]
@ -126,6 +130,8 @@ Configuration Database, describing possible XKB configurations."
. ,rest-layout))
(x11-keymap-layout
(name name)
(synopsis (car
(assoc-ref rest-layout 'shortDescription)))
(description (car
(assoc-ref rest-layout 'description)))
(variants '()))]))

View File

@ -65,22 +65,23 @@ press the button to reboot.")))
(G_ "The final system installation step failed. You can retry the \
last step, or restart the installer.")))
(define (run-install-shell)
(define (run-install-shell locale)
(clear-screen)
(newt-suspend)
(let ((install-ok? (install-system)))
(let ((install-ok? (install-system locale)))
(newt-resume)
install-ok?))
(define (run-final-page result prev-steps)
(let* ((configuration (format-configuration prev-steps result))
(let* ((configuration (format-configuration prev-steps result))
(user-partitions (result-step result 'partition))
(locale (result-step result 'locale))
(install-ok?
(with-mounted-partitions
user-partitions
(configuration->file configuration)
(run-config-display-page)
(run-install-shell))))
(run-install-shell locale))))
(if install-ok?
(run-install-success-page)
(run-install-failed-page))))

View File

@ -28,6 +28,7 @@
#:use-module (srfi srfi-26)
#:use-module (srfi srfi-34)
#:use-module (srfi srfi-35)
#:use-module (ice-9 i18n)
#:use-module (ice-9 match)
#:export (run-keymap-page
keyboard-layout->configuration))
@ -64,14 +65,29 @@
(define (sort-layouts layouts)
"Sort LAYOUTS list by putting the US layout ahead and return it."
(define (layout<? layout1 layout2)
(let ((text1 (x11-keymap-layout-description layout1))
(text2 (x11-keymap-layout-description layout2)))
;; XXX: We're calling 'gettext' more than once per item.
(string-locale<? (gettext text1 "xkeyboard-config")
(gettext text2 "xkeyboard-config"))))
(define preferred
;; Two-letter language tag for the preferred keyboard layout.
(or (getenv "LANGUAGE") "us"))
(call-with-values
(lambda ()
(partition
(lambda (layout)
(let ((name (x11-keymap-layout-name layout)))
(string=? name "us")))
;; The 'synopsis' field is usually a language code (e.g., "en")
;; while the 'name' field is a country code (e.g., "us").
(or (string=? (x11-keymap-layout-name layout) preferred)
(string=? (x11-keymap-layout-synopsis layout) preferred)))
layouts))
(cut append <> <>)))
(lambda (main others)
(append (sort main layout<?)
(sort others layout<?)))))
(define (sort-variants variants)
"Sort VARIANTS list by putting the international variant ahead and return it."
@ -97,7 +113,8 @@ names of the selected keyboard layout and variant."
(run-layout-page
(sort-layouts layouts)
(lambda (layout)
(x11-keymap-layout-description layout))))))
(gettext (x11-keymap-layout-description layout)
"xkeyboard-config"))))))
;; Propose the user to select a variant among those supported by the
;; previously selected layout.
(installer-step
@ -111,15 +128,16 @@ names of the selected keyboard layout and variant."
(run-variant-page
(sort-variants variants)
(lambda (variant)
(x11-keymap-variant-description
variant))))))))))
(gettext (x11-keymap-variant-description variant)
"xkeyboard-config"))))))))))
(define (format-result result)
(let ((layout (x11-keymap-layout-name
(result-step result 'layout)))
(variant (and=> (result-step result 'variant)
(lambda (variant)
(x11-keymap-variant-name variant)))))
(gettext (x11-keymap-variant-name variant)
"xkeyboard-config")))))
(list layout (or variant ""))))
(format-result
(run-installer-steps #:steps keymap-steps)))

View File

@ -1,5 +1,6 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2018 Mathieu Othacehe <m.othacehe@gmail.com>
;;; Copyright © 2019 Ludovic Courtès <ludo@gnu.org>
;;;
;;; This file is part of GNU Guix.
;;;
@ -30,9 +31,9 @@
#:export (run-locale-page))
(define (run-language-page languages language->text)
(let ((title (G_ "Locale language")))
(define result
(run-listbox-selection-page
#:title title
#:title (G_ "Locale language")
#:info-text (G_ "Choose the language to use for the \
installation process and for the installed system.")
#:info-textbox-width 70
@ -44,7 +45,13 @@ installation process and for the installed system.")
(lambda _
(raise
(condition
(&installer-step-abort)))))))
(&installer-step-abort))))))
;; Immediately install the chosen language so that the territory page that
;; comes after (optionally) is displayed in the chosen language.
(setenv "LANGUAGE" result)
result)
(define (run-territory-page territories territory->text)
(let ((title (G_ "Locale location")))
@ -155,7 +162,13 @@ glibc locale string and return it."
(run-language-page
(sort-languages
(delete-duplicates (map locale-language supported-locales)))
(cut language-code->language-name iso639-languages <>)))))
(lambda (language)
(let ((english (language-code->language-name iso639-languages
language)))
(setenv "LANGUAGE" language)
(let ((native (gettext english "iso_639-3")))
(unsetenv "LANGUAGE")
native)))))))
(installer-step
(id 'territory)
(compute
@ -169,10 +182,11 @@ glibc locale string and return it."
;; supported by the previously selected language.
(run-territory-page
(delete-duplicates (map locale-territory locales))
(lambda (territory-code)
(if territory-code
(territory-code->territory-name iso3166-territories
territory-code)
(lambda (territory)
(if territory
(let ((english (territory-code->territory-name
iso3166-territories territory)))
(gettext english "iso_3166-1"))
(G_ "No location"))))))))
(installer-step
(id 'codeset)

View File

@ -21,6 +21,7 @@
#:use-module (gnu installer utils)
#:use-module (gnu installer newt utils)
#:use-module (guix i18n)
#:use-module (ice-9 i18n)
#:use-module (ice-9 match)
#:use-module (ice-9 receive)
#:use-module (srfi srfi-1)
@ -223,7 +224,7 @@ be selected (using the <SPACE> key). It that case, a list containing the
selected items will be returned.
If SORT-LISTBOX-ITEMS? is set to #t, the listbox items are sorted using
'string<=' procedure (after being converted to text).
'string-locale<?' procedure (after being converted to text).
If ALLOW-DELETE? is #t, the form will return if the <DELETE> key is pressed,
otherwise nothing will happen.
@ -249,7 +250,7 @@ ITEM was inserted into LISTBOX."
items))
(define (sort-listbox-items listbox-items)
"Return LISTBOX-ITEMS sorted using the 'string<=' procedure on the text
"Return LISTBOX-ITEMS sorted using the 'string-locale<?' procedure on the text
corresponding to each item in the list."
(let* ((items (map (lambda (item)
(cons item (listbox-item->text item)))
@ -258,7 +259,7 @@ corresponding to each item in the list."
(sort items (lambda (a b)
(let ((text-a (cdr a))
(text-b (cdr b)))
(string<= text-a text-b))))))
(string-locale<? text-a text-b))))))
(map car sorted-items)))
;; Store the last selected listbox item's key.

View File

@ -50,12 +50,15 @@ returned."
(define (run-page timezone-tree)
(define (loop path)
;; XXX: Translation of time zones isn't perfect here because the
;; "iso_3166-1" domain contains translation for "territories" (like
;; "Antarctic") but not for continents (like "Africa").
(let ((timezones (locate-children timezone-tree path)))
(run-listbox-selection-page
#:title (G_ "Timezone")
#:info-text (G_ "Please select a timezone.")
#:listbox-items timezones
#:listbox-item->text identity
#:listbox-item->text (cut gettext <> "iso_3166-1")
#:button-text (if (null? path)
(G_ "Exit")
(G_ "Back"))

View File

@ -20,7 +20,6 @@
(define-module (gnu installer services)
#:use-module (guix records)
#:use-module (srfi srfi-1)
#:use-module (ice-9 match)
#:export (system-service?
system-service-name
system-service-type
@ -37,7 +36,10 @@
system-service?
(name system-service-name) ;string
(type system-service-type) ;'desktop | 'networking
(snippet system-service-snippet)) ;sexp
(snippet system-service-snippet ;list of sexps
(default '()))
(packages system-service-packages ;list of sexps
(default '())))
;; This is the list of desktop environments supported as services.
(define %system-services
@ -51,26 +53,38 @@
(list
(desktop-environment
(name "GNOME")
(snippet '(service gnome-desktop-service-type)))
(snippet '((service gnome-desktop-service-type))))
(desktop-environment
(name "Xfce")
(snippet '(service xfce-desktop-service-type)))
(snippet '((service xfce-desktop-service-type))))
(desktop-environment
(name "MATE")
(snippet '(service mate-desktop-service-type)))
(snippet '((service mate-desktop-service-type))))
(desktop-environment
(name "Enlightenment")
(snippet '(service enlightenment-desktop-service-type)))
(snippet '((service enlightenment-desktop-service-type))))
(desktop-environment
(name "Openbox")
(packages '((specification->package "openbox"))))
(desktop-environment
(name "awesome")
(packages '((specification->package "awesome"))))
(desktop-environment
(name "i3")
(packages '((specification->package "i3-wm"))))
(desktop-environment
(name "ratpoison")
(packages '((specification->package "ratpoison"))))
;; Networking.
(system-service
(name (G_ "OpenSSH secure shell daemon (sshd)"))
(type 'networking)
(snippet '(service openssh-service-type)))
(snippet '((service openssh-service-type))))
(system-service
(name (G_ "Tor anonymous network router"))
(type 'networking)
(snippet '(service tor-service-type)))
(snippet '((service tor-service-type))))
;; Network connectivity management.
(system-service
@ -86,7 +100,7 @@
(system-service
(name (G_ "DHCP client (dynamic IP address assignment)"))
(type 'network-management)
(snippet '(service dhcp-client-service-type))))))
(snippet '((service dhcp-client-service-type)))))))
(define (desktop-system-service? service)
"Return true if SERVICE is a desktop environment service."
@ -98,20 +112,21 @@
(define (system-services->configuration services)
"Return the configuration field for SERVICES."
(let* ((snippets (append-map (lambda (service)
(match (system-service-snippet service)
((and lst (('service _ ...) ...))
lst)
(sexp
(list sexp))))
services))
(let* ((snippets (append-map system-service-snippet services))
(packages (append-map system-service-packages services))
(desktop? (find desktop-system-service? services))
(base (if desktop?
'%desktop-services
'%base-services)))
(if (null? snippets)
`((services ,base))
`((services (append (list ,@snippets
`(,@(if (null? packages)
'()
`((packages (list ,@packages))))
(services ,base))
`(,@(if (null? packages)
'()
`((packages (list ,@packages))))
(services (append (list ,@snippets
,@(if desktop?
;; XXX: Assume 'keyboard-layout' is in

View File

@ -1,5 +1,5 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2018 Mathieu Othacehe <m.othacehe@gmail.com>
;;; Copyright © 2018, 2019 Mathieu Othacehe <m.othacehe@gmail.com>
;;;
;;; This file is part of GNU Guix.
;;;
@ -113,16 +113,24 @@ return the accumalated result so far."
(define* (skip-to-step step result
#:key todo-steps done-steps)
(match (list todo-steps done-steps)
(((todo . rest-todo) (prev-done ... last-done))
(if (eq? (installer-step-id todo)
(installer-step-id step))
(match todo-steps
((todo . rest-todo)
(let ((found? (eq? (installer-step-id todo)
(installer-step-id step))))
(cond
(found?
(run result
#:todo-steps todo-steps
#:done-steps done-steps)
(skip-to-step step (pop-result result)
#:todo-steps (cons last-done todo-steps)
#:done-steps prev-done)))))
#:done-steps done-steps))
((and (not found?)
(null? done-steps))
(error (format #f "Step ~a not found" (installer-step-id step))))
(else
(match done-steps
((prev-done ... last-done)
(skip-to-step step (pop-result result)
#:todo-steps (cons last-done todo-steps)
#:done-steps prev-done)))))))))
(define* (run result #:key todo-steps done-steps)
(match todo-steps

View File

@ -54,9 +54,21 @@ number. If no percentage is found, return #f"
(and result
(string->number (match:substring result 1)))))
(define (run-shell-command command)
(define* (run-shell-command command #:key locale)
"Run COMMAND, a string, with Bash, and in the given LOCALE."
(call-with-temporary-output-file
(lambda (file port)
(when locale
(let ((supported? (false-if-exception
(setlocale LC_ALL locale))))
;; If LOCALE is not supported, then set LANGUAGE, which might at
;; least give us translated messages.
(if supported?
(format port "export LC_ALL=\"~a\"~%" locale)
(format port "export LANGUAGE=\"~a\"~%"
(string-take locale
(string-index locale #\_))))))
(format port "~a~%" command)
;; (format port "exit~%")
(close port)

View File

@ -871,6 +871,7 @@ dist_patch_DATA = \
%D%/packages/patches/groovy-add-exceptionutilsgenerator.patch \
%D%/packages/patches/grub-binutils-compat.patch \
%D%/packages/patches/grub-check-error-efibootmgr.patch \
%D%/packages/patches/grub-efi-fat-serial-number.patch \
%D%/packages/patches/gsl-test-i686.patch \
%D%/packages/patches/gspell-dash-test.patch \
%D%/packages/patches/gst-plugins-good-libvpx-compat.patch \
@ -1028,7 +1029,7 @@ dist_patch_DATA = \
%D%/packages/patches/lierolibre-newer-libconfig.patch \
%D%/packages/patches/lierolibre-remove-arch-warning.patch \
%D%/packages/patches/lierolibre-try-building-other-arch.patch \
%D%/packages/patches/linkchecker-mark-more-tests-that-require-the-network.patch \
%D%/packages/patches/linkchecker-tests-require-network.patch \
%D%/packages/patches/linux-pam-no-setfsuid.patch \
%D%/packages/patches/lirc-localstatedir.patch \
%D%/packages/patches/lirc-reproducible-build.patch \
@ -1075,6 +1076,7 @@ dist_patch_DATA = \
%D%/packages/patches/mozjs38-version-detection.patch \
%D%/packages/patches/mrrescue-support-love-11.patch \
%D%/packages/patches/mrustc-0.8.0-fix-variable-length-integer-receiving.patch \
%D%/packages/patches/mtools-mformat-uninitialized.patch \
%D%/packages/patches/mumble-1.2.19-abs.patch \
%D%/packages/patches/mumps-build-parallelism.patch \
%D%/packages/patches/mupen64plus-ui-console-notice.patch \
@ -1104,7 +1106,7 @@ dist_patch_DATA = \
%D%/packages/patches/ocaml-CVE-2015-8869.patch \
%D%/packages/patches/ocaml-Add-a-.file-directive.patch \
%D%/packages/patches/ocaml-enable-ocamldoc-reproducibility.patch \
%D%/packages/patches/ocaml-dose3-Add-unix-as-dependency-to-dose3.common-in-META.in.patch \
%D%/packages/patches/ocaml-dose3-add-unix-dependency.patch \
%D%/packages/patches/ocaml-dose3-Fix-for-ocaml-4.06.patch \
%D%/packages/patches/ocaml-dose3-dont-make-printconf.patch \
%D%/packages/patches/ocaml-dose3-Install-mli-cmx-etc.patch \
@ -1117,7 +1119,6 @@ dist_patch_DATA = \
%D%/packages/patches/openjdk-10-idlj-reproducibility.patch \
%D%/packages/patches/openocd-nrf52.patch \
%D%/packages/patches/opensmtpd-fix-crash.patch \
%D%/packages/patches/openssh-CVE-2018-20685.patch \
%D%/packages/patches/openssl-runpath.patch \
%D%/packages/patches/openssl-1.1-c-rehash-in.patch \
%D%/packages/patches/openssl-c-rehash-in.patch \

View File

@ -181,14 +181,14 @@ and provides a \"top-like\" mode (monitoring).")
(define-public shepherd
(package
(name "shepherd")
(version "0.5.0")
(version "0.6.0")
(source (origin
(method url-fetch)
(uri (string-append "https://alpha.gnu.org/gnu/shepherd/shepherd-"
(uri (string-append "mirror://gnu/shepherd/shepherd-"
version ".tar.gz"))
(sha256
(base32
"1wmciqml9yplnx1s4ynn00giqyk06rbrcsgvpjj2df47sawk2jp8"))))
"1ys2w83vm62spr8bx38sccfdpy9fqmj7wfywm5k8ihsy2k61da2i"))))
(build-system gnu-build-system)
(arguments
'(#:configure-flags '("--localstatedir=/var")))
@ -211,8 +211,7 @@ the execution of system services, replacing similar functionality found in
typical init systems. It provides dependency-handling through a convenient
interface and is based on GNU Guile.")
(license license:gpl3+)
(home-page "https://www.gnu.org/software/shepherd/")
(properties '((ftp-server . "alpha.gnu.org")))))
(home-page "https://www.gnu.org/software/shepherd/")))
(define-public daemontools
(package
@ -2925,7 +2924,7 @@ Logitech Unifying Receiver.")
(package
(name "lynis")
;; Also update the lynis-sdk input to the commit matching this release.
(version "2.7.3")
(version "2.7.4")
(source
(origin
(method git-fetch)
@ -2934,7 +2933,7 @@ Logitech Unifying Receiver.")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "0md1w86i3fy9l78i98ijr5136nbhdiik2dxyw9qnzmvdlvkqmw70"))
(base32 "1jjk5hcxmp4f4ppsljiq95l2ln6b03azydap3b35lsvxkjybv88k"))
(modules '((guix build utils)))
(snippet
'(begin
@ -2951,10 +2950,10 @@ Logitech Unifying Receiver.")
(method git-fetch)
(uri (git-reference
(url "https://github.com/CISOfy/lynis-sdk")
(commit "c166b6a67a53b24f5c1fecd4eb5033f54279a5b3")))
(commit "90f301e21c204792cf372f1cf05890a562f2e31b")))
(file-name (git-file-name "lynis-sdk" version))
(sha256
(base32 "0wa2azcmx6pj9axvq1jmwmz7826rj1c214asmmn1hq7pxmfw62zr"))))))
(base32 "1d0smr1fxrvbc3hl8lzy33im9ahzr0hgs3kk09r8g8xccjkcm52l"))))))
(arguments
`(#:phases
(modify-phases %standard-phases

View File

@ -1,7 +1,7 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2016 John Darrington <jmd@gnu.org>
;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2018 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2018, 2019 Efraim Flashner <efraim@flashner.co.il>
;;;
;;; This file is part of GNU Guix.
;;;
@ -23,6 +23,7 @@
#:use-module ((guix licenses) #:prefix license:)
#:use-module (guix download)
#:use-module (guix utils)
#:use-module (gnu packages autotools)
#:use-module (gnu packages image)
#:use-module (gnu packages compression)
#:use-module (gnu packages gettext)
@ -103,7 +104,7 @@ header.")
(define-public gnuastro
(package
(name "gnuastro")
(version "0.8")
(version "0.9")
(source
(origin
(method url-fetch)
@ -111,7 +112,7 @@ header.")
version ".tar.lz"))
(sha256
(base32
"0gx6iar3z07k9sdvpa6kchsz6fpk94xn5vcvbcigssl2dwqmlnkb"))))
"1c1894ixz3l8p1nmzkysgl9lz8vpqbfw1dd404kh6lvrpml7jzig"))))
(inputs
`(("cfitsio" ,cfitsio)
("gsl" ,gsl)
@ -120,7 +121,8 @@ header.")
("wcslib" ,wcslib)
("zlib" ,zlib)))
(native-inputs
`(("lzip" ,lzip)))
`(("libtool" ,libtool)
("lzip" ,lzip)))
(build-system gnu-build-system)
(home-page "https://www.gnu.org/software/gnuastro/")
(synopsis "Astronomy utilities")

View File

@ -547,14 +547,14 @@ plugins are provided.")
(define-public calf
(package
(name "calf")
(version "0.90.1")
(version "0.90.2")
(source (origin
(method url-fetch)
(uri (string-append "https://calf-studio-gear.org/files/calf-"
version ".tar.gz"))
(sha256
(base32
"0znwx5gidr5n503gya9n8gagr8cfym6cwlbiv2r6iksji7jc4fpb"))))
"0bn4j1klw2yfxz8clbmasaydifq25rdfsv0n6iisxrzcj1lx7sgh"))))
(build-system gnu-build-system)
(inputs
`(("fluidsynth" ,fluidsynth)
@ -713,7 +713,7 @@ emulation (valve, tape), bit fiddling (decimator, pointer-cast), etc.")
(define-public csound
(package
(name "csound")
(version "6.12.0")
(version "6.12.2")
(source (origin
(method git-fetch)
(uri (git-reference
@ -722,7 +722,7 @@ emulation (valve, tape), bit fiddling (decimator, pointer-cast), etc.")
(file-name (git-file-name name version))
(sha256
(base32
"0pv4s54cayvavdp6y30n3r1l5x83x9whyyd2v24y0dh224v3hbxi"))))
"01krxcf0alw9k7p5sv0s707600an4sl7lhw3bymbwgqrj0v2p9z2"))))
(build-system cmake-build-system)
(inputs
`(("alsa-lib" ,alsa-lib)
@ -1104,7 +1104,7 @@ follower.")
(define-public fluidsynth
(package
(name "fluidsynth")
(version "2.0.4")
(version "2.0.5")
(source (origin
(method git-fetch)
(uri (git-reference
@ -1113,7 +1113,7 @@ follower.")
(file-name (string-append name "-" version "-checkout"))
(sha256
(base32
"1v2vji02fbrjgypwb4fw2r90hnfwfbfh3d24j8vjwlbqxhxp16s0"))))
"0rv0apxbj0cgm8f8sqf5xr6kdi4q58ph92ip6cg716ha0ca5lr8y"))))
(build-system cmake-build-system)
(arguments
'(#:tests? #f ; no check target
@ -2120,14 +2120,14 @@ different audio devices such as ALSA or PulseAudio.")
(define-public qjackctl
(package
(name "qjackctl")
(version "0.5.6")
(version "0.5.7")
(source (origin
(method url-fetch)
(uri (string-append "mirror://sourceforge/qjackctl/qjackctl/"
version "/qjackctl-" version ".tar.gz"))
(sha256
(base32
"0wlmbb9m7cf3wr7c2h2hji18592x2b119m7mx85wksjs6rjaq2mj"))))
"1g6a5j74p45yisl28bw4fcc9nr6b710ikk459p4mp6djh9gs8v95"))))
(build-system gnu-build-system)
(arguments
'(#:tests? #f)) ; no check target
@ -2316,7 +2316,7 @@ aimed at audio/musical applications.")
(define-public rubberband
(package
(name "rubberband")
(version "1.8.1")
(version "1.8.2")
(source (origin
(method url-fetch)
(uri
@ -2326,9 +2326,19 @@ aimed at audio/musical applications.")
(file-name (string-append name "-" version ".tar.bz2"))
(sha256
(base32
"05amrbrxx0da3w7m237q51799r8xgs4ffqabi2qv06hq8dpcj386"))))
"0462fmjnfqpv2qi0s6ny42drqarkr0xy9lw8frjmfgzyzl5n9294"))))
(build-system gnu-build-system)
(arguments `(#:tests? #f)) ; no check target
(arguments
`(#:tests? #f ; no check target
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'skip-jni-installation
;; make install unconditionally installs librubberband-jni.so,
;; which is never built by make all. Skip it.
(lambda _
(substitute* "Makefile.in"
((".*cp -f \\$\\(JNI_TARGET\\).*") ""))
#t)))))
(inputs
`(("ladspa" ,ladspa)
("libsamplerate" ,libsamplerate)
@ -2861,14 +2871,14 @@ interface.")
(define-public qsynth
(package
(name "qsynth")
(version "0.5.5")
(version "0.5.6")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://sourceforge/qsynth/qsynth/" version
"/qsynth-" version ".tar.gz"))
(sha256
(base32 "08x7znvbwi9miavcarymi7dsv8njmxzwzma20dbmz8j2aswm53w5"))))
(base32 "0h4hhja8qbyzd6v24flw9wr4mwl03nplryx1gyrppn7sg13l1sx6"))))
(build-system gnu-build-system)
(arguments
`(#:tests? #f ; no "check" phase
@ -3375,14 +3385,14 @@ on the ALSA software PCM plugin.")
(define-public snd
(package
(name "snd")
(version "19.2")
(version "19.3")
(source (origin
(method url-fetch)
(uri (string-append "ftp://ccrma-ftp.stanford.edu/pub/Lisp/"
"snd-" version ".tar.gz"))
(sha256
(base32
"1a6ls2hyvggss12idca22hq5vsq4jw2xkwrx22dx29i9926gdr6h"))))
"16j3fqyw361wdsr1076f0p3va2y7wdzq1lvr4ijz1ajmbxdlc723"))))
(build-system glib-or-gtk-build-system)
(arguments
`(#:tests? #f ; no tests

View File

@ -9438,40 +9438,33 @@ and irregular enzymatic cleavages, mass measurement accuracy, etc.")
(define-public r-seurat
(package
(name "r-seurat")
(version "2.3.4")
(version "3.0.0")
(source (origin
(method url-fetch)
(uri (cran-uri "Seurat" version))
(sha256
(base32
"0l8bv4i9nzz26mirnva10mq6pimibj24vk7vpvfypgn7xk4942hd"))))
"183lm2wk0i3g114jbdf7pb4ssizr48qzqv3cknbsiackr8kvpsvc"))))
(properties `((upstream-name . "Seurat")))
(build-system r-build-system)
(propagated-inputs
`(("r-ape" ,r-ape)
("r-cluster" ,r-cluster)
("r-cowplot" ,r-cowplot)
("r-dosnow" ,r-dosnow)
("r-dplyr" ,r-dplyr)
("r-dtw" ,r-dtw)
("r-fitdistrplus" ,r-fitdistrplus)
("r-foreach" ,r-foreach)
("r-fpc" ,r-fpc)
("r-future" ,r-future)
("r-future-apply" ,r-future-apply)
("r-ggplot2" ,r-ggplot2)
("r-ggrepel" ,r-ggrepel)
("r-ggridges" ,r-ggridges)
("r-gplots" ,r-gplots)
("r-hdf5r" ,r-hdf5r)
("r-hmisc" ,r-hmisc)
("r-httr" ,r-httr)
("r-ica" ,r-ica)
("r-igraph" ,r-igraph)
("r-irlba" ,r-irlba)
("r-lars" ,r-lars)
("r-kernsmooth" ,r-kernsmooth)
("r-lmtest" ,r-lmtest)
("r-mass" ,r-mass)
("r-matrix" ,r-matrix)
("r-metap" ,r-metap)
("r-mixtools" ,r-mixtools)
("r-pbapply" ,r-pbapply)
("r-plotly" ,r-plotly)
("r-png" ,r-png)
@ -9480,12 +9473,14 @@ and irregular enzymatic cleavages, mass measurement accuracy, etc.")
("r-rcpp" ,r-rcpp)
("r-rcppeigen" ,r-rcppeigen)
("r-rcppprogress" ,r-rcppprogress)
("r-reshape2" ,r-reshape2)
("r-reticulate" ,r-reticulate)
("r-rlang" ,r-rlang)
("r-rocr" ,r-rocr)
("r-rsvd" ,r-rsvd)
("r-rtsne" ,r-rtsne)
("r-scales" ,r-scales)
("r-sctransform" ,r-sctransform)
("r-sdmtools" ,r-sdmtools)
("r-tidyr" ,r-tidyr)
("r-tsne" ,r-tsne)))
(home-page "http://www.satijalab.org/seurat")
(synopsis "Seurat is an R toolkit for single cell genomics")

View File

@ -90,7 +90,8 @@
(base32
"03vvdfhdmf16121v7xs8is2krwnv15wpkhkf16a4yf8nsfc3f2w1"))
(patches (search-patches "grub-check-error-efibootmgr.patch"
"grub-binutils-compat.patch"))))
"grub-binutils-compat.patch"
"grub-efi-fat-serial-number.patch"))))
(build-system gnu-build-system)
(arguments
`(#:phases (modify-phases %standard-phases

View File

@ -72,16 +72,14 @@ operating system functions.")
(define-public rct
(let* ((commit "b3e6f41d9844ef64420e628e0c65ed98278a843a")
(revision "2")
(version (git-version "0.0.0" revision commit)))
(revision "2"))
(package
(name "rct")
(version version)
(home-page "https://github.com/Andersbakken/rct")
(version (git-version "0.0.0" revision commit))
(source (origin
(method git-fetch)
(uri (git-reference
(url home-page)
(url "https://github.com/Andersbakken/rct")
(commit commit)))
(sha256
(base32
@ -99,6 +97,7 @@ operating system functions.")
(inputs
`(("openssl" ,openssl)
("zlib" ,zlib)))
(home-page "https://github.com/Andersbakken/rct")
(synopsis "C++ library providing Qt-like APIs on top of the STL")
(description "Rct is a set of C++ tools that provide nicer (more Qt-like)
APIs on top of Standard Template Library (@dfn{STL}) classes.")

View File

@ -78,14 +78,14 @@
(define-public r-clipr
(package
(name "r-clipr")
(version "0.5.0")
(version "0.6.0")
(source
(origin
(method url-fetch)
(uri (cran-uri "clipr" version))
(sha256
(base32
"1grx0lyww1cxmdvsr44wmbhz9i6zmiwxbchb97gxrfi9gy5kyc7x"))))
"0k9kimkmmj9k7290sxiqn4kd1vvm4w7q9a44wp0w30b7yjpavx2m"))))
(build-system r-build-system)
(home-page "https://github.com/mdlincoln/clipr")
(synopsis "Read and write from the system clipboard")
@ -3050,14 +3050,14 @@ programming} (SQP) based solver).")
(define-public r-hardyweinberg
(package
(name "r-hardyweinberg")
(version "1.6.1")
(version "1.6.2")
(source
(origin
(method url-fetch)
(uri (cran-uri "HardyWeinberg" version))
(sha256
(base32
"16n8qanxx0p5ny5zqxafn8hwb1xv94y1wig1iql8as5a5qh8lwcz"))))
"15i7b444hikkfgqmx2ki827998xwra38k9v7a7kavwz6zmq5mmv9"))))
(properties `((upstream-name . "HardyWeinberg")))
(build-system r-build-system)
(propagated-inputs
@ -3317,14 +3317,14 @@ normalizations, minimum variance matching, and so on.")
(define-public r-sdmtools
(package
(name "r-sdmtools")
(version "1.1-221")
(version "1.1-221.1")
(source
(origin
(method url-fetch)
(uri (cran-uri "SDMTools" version))
(sha256
(base32
"1kacrpamshv7wz83yn45sfbw4m9c44xrrngzcklnwx8gcxx2knm6"))))
"1fsgnlc7glawimzijp11j53g5bnfp1mdq9wb0754idmxcdi8a99q"))))
(properties `((upstream-name . "SDMTools")))
(build-system r-build-system)
(propagated-inputs `(("r-r-utils" ,r-r-utils)))
@ -5489,14 +5489,14 @@ results to the user.")
(define-public r-hdf5r
(package
(name "r-hdf5r")
(version "1.1.1")
(version "1.2.0")
(source
(origin
(method url-fetch)
(uri (cran-uri "hdf5r" version))
(sha256
(base32
"1cq4rdfd0rqvy29ml3x1iid142ljnscs8f4d2y1na13hlvkl3k05"))))
"10gynjwaaxks8y9c2fl8k040j0nbwn372nil70009yfk9wrkx0aq"))))
(build-system r-build-system)
(inputs
`(("hdf5" ,hdf5)
@ -5605,14 +5605,14 @@ hierarchical models using Markov Chain Monte Carlo (MCMC) simulation.")
(define-public r-rdpack
(package
(name "r-rdpack")
(version "0.10-1")
(version "0.11-0")
(source
(origin
(method url-fetch)
(uri (cran-uri "Rdpack" version))
(sha256
(base32
"0bbjnw88h54v40hzim00i8yd3p4rk9i84zfdmgcbnylscwvsf0av"))))
"11cd27s6zp5cxnwxcvz6rjf00y0r7aq8ywhzwpf1r4xy1z44kd4g"))))
(properties `((upstream-name . "Rdpack")))
(build-system r-build-system)
(propagated-inputs
@ -13253,14 +13253,14 @@ self-intersections from polygon data.")
(define-public r-urltools
(package
(name "r-urltools")
(version "1.7.2")
(version "1.7.3")
(source
(origin
(method url-fetch)
(uri (cran-uri "urltools" version))
(sha256
(base32
"18lp66f2l504b8q3j4xy8j9pyzzlljw9f112sn6qii1cg83072wm"))))
"04x3my655dd287cbsszbnf75q0swmjlxxrblcsay7a8n3df3a830"))))
(build-system r-build-system)
(propagated-inputs
`(("r-rcpp" ,r-rcpp)
@ -13888,3 +13888,65 @@ regular expressions. Regular expressions are a very powerful feature, however
they are often difficult to interpret. Rex allows you to build complex
regular expressions from human readable expressions")
(license license:expat)))
(define-public r-sctransform
(package
(name "r-sctransform")
(version "0.2.0")
(source
(origin
(method url-fetch)
(uri (cran-uri "sctransform" version))
(sha256
(base32
"1r5kiqqs318q59h2i8m7c6nhghp9w6q26ss2y5a390lkhsawgx6p"))))
(build-system r-build-system)
(propagated-inputs
`(("r-future" ,r-future)
("r-future-apply" ,r-future-apply)
("r-ggplot2" ,r-ggplot2)
("r-gridextra" ,r-gridextra)
("r-mass" ,r-mass)
("r-matrix" ,r-matrix)
("r-rcpp" ,r-rcpp)
("r-rcppeigen" ,r-rcppeigen)
("r-reshape2" ,r-reshape2)))
(home-page "https://github.com/ChristophH/sctransform")
(synopsis "Variance stabilizing transformations for Single Cell UMI Data")
(description
"This package provides a normalization method for single-cell UMI count
data using a variance stabilizing transformation. The transformation is based
on a negative binomial regression model with regularized parameters. As part
of the same regression framework, this package also provides functions for
batch correction, and data correction.")
(license license:gpl3)))
(define-public r-styler
(package
(name "r-styler")
(version "1.1.0")
(source
(origin
(method url-fetch)
(uri (cran-uri "styler" version))
(sha256
(base32
"1z24mi88snbz1avjw9phq0lzmigddvycc56s83nxzr9w9z85mh05"))))
(build-system r-build-system)
(propagated-inputs
`(("r-backports" ,r-backports)
("r-cli" ,r-cli)
("r-magrittr" ,r-magrittr)
("r-purrr" ,r-purrr)
("r-rematch2" ,r-rematch2)
("r-rlang" ,r-rlang)
("r-rprojroot" ,r-rprojroot)
("r-tibble" ,r-tibble)
("r-withr" ,r-withr)
("r-xfun" ,r-xfun)))
(home-page "https://github.com/r-lib/styler")
(synopsis "Non-invasive pretty printing of R code")
(description
"This is a package for pretty-printing R code without changing the user's
formatting intent.")
(license license:gpl3)))

View File

@ -639,14 +639,14 @@ printer/driver specific, but spooler-independent PPD file.")
(define-public foo2zjs
(package
(name "foo2zjs")
(version "20180910")
(version "20190413")
(source (origin
(method url-fetch)
;; XXX: This is an unversioned URL!
(uri "http://foo2zjs.rkkda.com/foo2zjs.tar.gz")
(sha256
(base32
"1clddqy4y4vvws0lllv1v90dfiihihdc23bn93c544yb3fvmwmr6"))))
"00k22vmghxls7rk2hrbz9v17wi5z8vdk3fmsp2lrfghfcad8nhpx"))))
(build-system gnu-build-system)
(arguments
'(#:phases (modify-phases %standard-phases

View File

@ -265,14 +265,14 @@ mapping from string keys to string values.")
(define-public memcached
(package
(name "memcached")
(version "1.5.12")
(version "1.5.13")
(source
(origin
(method url-fetch)
(uri (string-append
"https://memcached.org/files/memcached-" version ".tar.gz"))
(sha256
(base32 "0aav15f0lh8k4i62aza2bdv4s8vv65j38pz2zc4v45snd3arfby0"))))
(base32 "0qsdkjrns4f02lmabq8c7mzl5n4382q2p6a0dvmsjdcpjisagqb1"))))
(build-system gnu-build-system)
(inputs
`(("libevent" ,libevent)
@ -1942,13 +1942,13 @@ for ODBC.")
(define-public python-pyodbc
(package
(name "python-pyodbc")
(version "4.0.25")
(version "4.0.26")
(source
(origin
(method url-fetch)
(uri (pypi-uri "pyodbc" version))
(sha256
(base32 "1bbwrb812w5i0x56jfn0l86mxc2ck904hl8y87mziay96znwia0f"))
(base32 "1qrxnf7ji5hml7z4y669k4wmk3iz2pcsr05bnn1n912asash09z5"))
(file-name (string-append name "-" version ".tar.gz"))))
(build-system python-build-system)
(inputs
@ -2189,13 +2189,13 @@ Database API 2.0T.")
(define-public python-sqlalchemy
(package
(name "python-sqlalchemy")
(version "1.3.1")
(version "1.3.3")
(source
(origin
(method url-fetch)
(uri (pypi-uri "SQLAlchemy" version))
(sha256
(base32 "12sr36646sipf9ac3n2xh8z0w5pz4d3dvw5qjv2kzvcls6wvf7vq"))))
(base32 "06c3lcv7nijsgqsjaaa4djrwlzgh9f910zlqxkmgq22h6jl4rici"))))
(build-system python-build-system)
(native-inputs
`(("python-cython" ,python-cython) ; for C extensions
@ -2571,15 +2571,15 @@ reasonable substitute.")
(define-public python-redis
(package
(name "python-redis")
(version "3.2.0")
(version "3.2.1")
(source
(origin
(method url-fetch)
(uri (pypi-uri "redis" version))
(sha256
(base32 "0m1b88wg1w6xdwg0siky5k86x8sh6smhbr42ixz41ra81lv34jbj"))))
(base32 "0wwj8il4c3aff15xwwcjfci367zxsakq05ps1a2il6yavp91i94c"))))
(build-system python-build-system)
;; Tests require a running Redis server
;; Tests require a running Redis server.
(arguments '(#:tests? #f))
;; As long as we are not running test, we do not need this input :-)
;;(native-inputs

View File

@ -3,7 +3,7 @@
;;; Copyright © 2016, 2017, 2018 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2016 Sou Bunnbu <iyzsong@gmail.com>
;;; Copyright © 2017, 2018 Nicolas Goaziou <mail@nicolasgoaziou.fr>
;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2018 Pierre-Antoine Rouby <contact@parouby.fr>
;;; Copyright © 2018 Arun Isaac <arunisaac@systemreboot.net>
;;;
@ -218,15 +218,15 @@ It comes with a German-English dictionary with approximately 270,000 entries.")
(define-public grammalecte
(package
(name "grammalecte")
(version "0.6.5")
(version "1.0.1")
(source
(origin
(method url-fetch/zipbomb)
(uri (string-append "https://www.dicollecte.org/grammalecte/zip/"
(uri (string-append "https://grammalecte.net/grammalecte/zip/"
"Grammalecte-fr-v" version ".zip"))
(sha256
(base32
"11byjs3ggdhia5f4vyfqfvbbczsfqimll98h98g7hlsrm7vrifb0"))))
"0p005mqgmckkbif3syv3d90rr1zsm5n5vvac5b29nn8g4v8jjpfs"))))
(build-system python-build-system)
(home-page "https://grammalecte.net")
(synopsis "French spelling and grammar checker")
@ -245,7 +245,7 @@ and a Python library.")
(define-public translate-shell
(package
(name "translate-shell")
(version "0.9.6.9")
(version "0.9.6.10")
(source
(origin
(method git-fetch)
@ -254,13 +254,12 @@ and a Python library.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
"1xyf0vdxmbgqcgsr1gvgwh1q4fh080h68radkim6pfcwzffliszm"))))
(base32 "1dmh3flldfhnqfay3a6c5hanqcjwrmbly1bq8mlk022qfi1fv33y"))))
(build-system gnu-build-system)
(arguments
`(#:phases
(modify-phases %standard-phases
(delete 'configure) ; no configure phase
(delete 'configure) ; no configure script
(add-after 'unpack 'remove-unnecessary-file
;; This file gets generated during the build phase.
(lambda _

View File

@ -294,14 +294,14 @@ asynchronous fashion.")
(define-public nsd
(package
(name "nsd")
(version "4.1.26")
(version "4.1.27")
(source
(origin
(method url-fetch)
(uri (string-append "https://www.nlnetlabs.nl/downloads/nsd/nsd-"
version ".tar.gz"))
(sha256
(base32 "1x0mvj4872dzj1rr9adnchdm4dhn41xmc459p5j4s0r13m1l32lz"))))
(base32 "1sjfbwr4vq25304hr9vmd9j821g2vzv8lpy95hpsravc80q5zaqv"))))
(build-system gnu-build-system)
(arguments
`(#:configure-flags

View File

@ -96,14 +96,14 @@ Executable and Linkable Format (@dfn{ELF}). This includes @command{ld},
(package
(name "libabigail")
(home-page "https://sourceware.org/libabigail/")
(version "1.5")
(version "1.6")
(source (origin
(method url-fetch)
(uri (string-append "https://sourceware.org/pub/" name
"/" name "-" version ".tar.gz"))
(uri (string-append "https://sourceware.org/pub/libabigail/"
"libabigail-" version ".tar.gz"))
(sha256
(base32
"0srfnkbm386sl2n85686nl28da6ksbs7jgnfks9k0n61c772aas4"))))
"04j07lhvwbp6qp8pdwbf7iqnr7kgpabmqylsw4invpmzwnyp6g6g"))))
(build-system gnu-build-system)
(arguments
`(#:configure-flags '("--disable-static"

View File

@ -2924,7 +2924,7 @@ These are distributed in separate files and can be used individually.")
(description "Irony-mode provides Clang-assisted syntax checking and
completion for C, C++, and ObjC in GNU Emacs. Using @code{libclang} it can
provide syntax checking and autocompletion on compiler level which is very
resistent against false positives. It also integrates well with other
resistant against false positives. It also integrates well with other
packages like @code{eldoc-mode} and especially @code{company-mode} as
described on the homepage.")
(license license:gpl3+)))
@ -14018,7 +14018,7 @@ opposed to character-based).")
(define-public emacs-disk-usage
(package
(name "emacs-disk-usage")
(version "1.3.0")
(version "1.3.3")
(home-page "https://gitlab.com/Ambrevar/emacs-disk-usage")
(source
(origin
@ -14029,7 +14029,7 @@ opposed to character-based).")
".el"))
(sha256
(base32
"0ky6c34z7c6hd4yvcrcsidkfk2kvffkg63v02vch2i6hg1n6n028"))))
"0h1jwznd41gi0vg830ilfgm01q05zknikzahwasm9cizwm2wyizj"))))
(build-system emacs-build-system)
(synopsis "Sort and browse disk usage listings with Emacs")
(description "Disk Usage is a file system analyzer: it offers a tabulated

View File

@ -301,14 +301,14 @@ Includes the actual FTDI connector.")
(define-public gtkwave
(package
(name "gtkwave")
(version "3.3.99")
(version "3.3.100")
(source (origin
(method url-fetch)
(uri (string-append "http://gtkwave.sourceforge.net/"
name "-" version ".tar.gz"))
"gtkwave-" version ".tar.gz"))
(sha256
(base32
"0lc4y2vizrbxldjk5yw2i4y7pyprjdjqx3iafzjfnin694zp2630"))))
"1z60i5nh8dz8j9ii63fwaw7k0p3x0scp91478cxmdv4xhp4njlxa"))))
(build-system gnu-build-system)
(native-inputs
`(("gperf" ,gperf)

View File

@ -1400,9 +1400,9 @@ Fenix.")
("openssl" ,openssl)
("sdl-mixer" ,sdl-mixer)
("bennu-game-development" ,bennu-game-development)))
(synopsis "Modules for the Bennu Game Developement programming language")
(synopsis "Modules for the Bennu Game Development programming language")
(description "This package contains a collection of modules for the Bennu
Game Developement programming language, from CD handling through SDL to
Game Development programming language, from CD handling through SDL to
joystick support.")))
(define-public plib

View File

@ -7,7 +7,7 @@
;;; Copyright © 2014 Sylvain Beucler <beuc@beuc.net>
;;; Copyright © 2014, 2015, 2018, 2019 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2014, 2015, 2016 Sou Bunnbu <iyzsong@gmail.com>
;;; Copyright © 2014, 2015 Mark H Weaver <mhw@netris.org>
;;; Copyright © 2014, 2015, 2019 Mark H Weaver <mhw@netris.org>
;;; Copyright © 2015, 2016 Andreas Enge <andreas@enge.fr>
;;; Copyright © 2015 David Hashe <david.hashe@dhashe.com>
;;; Copyright © 2015, 2017, 2018 Christopher Lemmer Webber <cwebber@dustycloud.org>
@ -38,6 +38,7 @@
;;; Copyright © 2018 Alex Vong <alexvong1995@gmail.com>
;;; Copyright © 2019 Pierre Neidhardt <mail@ambrevar.xyz>
;;; Copyright © 2019 Oleg Pykhalov <go.wigust@gmail.com>
;;; Copyright © 2019 Pierre Langlois <pierre.langlois@gmx.com>
;;;
;;; This file is part of GNU Guix.
;;;
@ -237,6 +238,56 @@ enemy, ally, weapon and mission types. Features include simulated 4D texturing,
mouse and joystick control, and original music.")
(license license:gpl2)))
(define-public alex4
(package
(name "alex4")
(version "1.2-alpha")
(source
(origin
(method url-fetch)
(uri (string-append "https://github.com/carstene1ns/alex4/archive/"
version ".tar.gz"))
(sha256
(base32 "0jj1g3v1a6lyfwp5g2ly0n9z65ryqck8jxvzr01kaqjj3lsfkrhg"))))
(build-system gnu-build-system)
(arguments
`(#:tests? #f ; no check target
#:make-flags
(list "-Csrc"
"CC=gcc"
"CFLAGS=-D_FILE_OFFSET_BITS=64"
(string-append "DATADIR=" (assoc-ref %outputs "out")
"/share/" ,name)
(string-append "PREFIX=" (assoc-ref %outputs "out")))
#:phases
(modify-phases %standard-phases
(replace 'configure
(lambda _
(substitute* '("src/main.c"
"src/shooter.c")
(("fcos") "fixcos")
(("fmul") "fixmul")
(("fsin") "fixsin"))
#t))
(add-after 'install 'install-data
(lambda* (#:key outputs #:allow-other-keys)
(let ((share (string-append (assoc-ref outputs "out")
"/share/" ,name)))
(install-file "alex4.ini" share)
#t))))))
(inputs
`(("allegro" ,allegro-4)
("dumb" ,dumb-allegro4)))
(home-page "http://allegator.sourceforge.net/")
(synopsis "Retro platform game")
(description
"Guide Alex the Allegator through the jungle in order to save his
girlfriend Lola from evil humans who want to make a pair of shoes out of her.
Plenty of classic platforming in four nice colors guaranteed!
The game includes a built-in editor so you can design and share your own maps.")
(license license:gpl2+)))
(define-public armagetron-advanced
(package
(name "armagetron-advanced")
@ -1795,7 +1846,7 @@ match, cannon keep, and grave-itation pit.")
(define minetest-data
(package
(name "minetest-data")
(version "5.0.0")
(version "5.0.1")
(source (origin
(method git-fetch)
(uri (git-reference
@ -1804,7 +1855,7 @@ match, cannon keep, and grave-itation pit.")
(file-name (git-file-name name version))
(sha256
(base32
"186i1pna2f3fwa2001y8mw5131h0sndhfdxzfqq2gnr1m83sjm0w"))))
"1hw3n7qqpasq6bivxhq01kr0d58w0gp46s0baxixp1fakd79p8a7"))))
(build-system trivial-build-system)
(native-inputs
`(("source" ,source)))
@ -1822,14 +1873,14 @@ match, cannon keep, and grave-itation pit.")
#t))))
(synopsis "Main game data for the Minetest game engine")
(description
"Game data for the Minetest infinite-world block sandox game.")
"Game data for the Minetest infinite-world block sandbox game.")
(home-page "http://minetest.net")
(license license:lgpl2.1+)))
(define-public minetest
(package
(name "minetest")
(version "5.0.0")
(version "5.0.1")
(source (origin
(method git-fetch)
(uri (git-reference
@ -1838,7 +1889,7 @@ match, cannon keep, and grave-itation pit.")
(file-name (git-file-name name version))
(sha256
(base32
"1b8n8nzlvmld1hl3zgs1xg4jbc1nsf1m2bn7fi794vdr06s6n911"))
"11i8fqjpdggqfdlx440k5758zy0nbf9phxan9r63mavc7mph88ay"))
(modules '((guix build utils)))
(snippet
'(begin
@ -1865,7 +1916,7 @@ match, cannon keep, and grave-itation pit.")
`(("pkg-config" ,pkg-config)))
(inputs
`(("curl" ,curl)
("freetype" ,(@ (gnu packages fontutils) freetype))
("freetype" ,freetype)
("gettext" ,gettext-minimal)
("gmp" ,gmp)
("irrlicht" ,irrlicht)
@ -2066,7 +2117,7 @@ This game is based on the GPL version of the famous game TuxRacer.")
(define-public supertuxkart
(package
(name "supertuxkart")
(version "0.9.3")
(version "1.0")
(source
(origin
(method url-fetch)
@ -2074,55 +2125,36 @@ This game is based on the GPL version of the famous game TuxRacer.")
version "/supertuxkart-" version "-src.tar.xz"))
(sha256
(base32
"1c4w47ibj87lgwiqygq8qi7jiz6gklj4dwf5bs5zk15s0rqlw0fq"))
"106rlp99hq18b4q1kdri3pl06cc4v7iqfp1hp9k2f8751lzz923d"))
(modules '((guix build utils)))
(snippet
;; Delete bundled library sources
'(begin
;; FIXME: try to unbundle enet, and angelscript
;; Supertuxkart uses modified versions of the Irrlicht engine
;; and the bullet library. The developers gave an explanation
;; here: http://forum.freegamedev.net/viewtopic.php?f=17&t=3906
;; FIXME: try to unbundle angelscript
(for-each delete-file-recursively
'("lib/zlib"
"lib/libpng"
"lib/jpeglib"
"lib/glew"
"lib/wiiuse"))
(substitute* "CMakeLists.txt"
;; Supertuxkart uses modified versions of the Irrlicht engine
;; and the bullet library. The developers gave an explanation here:
;; http://forum.freegamedev.net/viewtopic.php?f=17&t=3906
(("add_subdirectory\\(.*/(glew|zlib)\"\\)") ""))
"lib/wiiuse"
"lib/enet"))
#t))))
(build-system cmake-build-system)
(arguments
`(#:tests? #f ; no check target
#:configure-flags
(list "-DUSE_WIIUSE=0"
;; Do not use the bundled zlib
;; Do not use the bundled zlib, glew and enet.
"-DNO_IRR_COMPILE_WITH_ZLIB_=TRUE"
"-DUSE_SYSTEM_GLEW=TRUE"
"-DUSE_SYSTEM_ENET=TRUE"
;; FIXME: needs libopenglrecorder
"-DBUILD_RECORDER=0"
;; Irrlicht returns an integer instead of a boolean
"-DCMAKE_C_FLAGS=-fpermissive")
#:phases
(modify-phases %standard-phases
;; see https://github.com/supertuxkart/stk-code/issues/3557
(add-after 'unpack 'patch-for-mesa-18.3
(lambda _
(substitute* "src/graphics/gl_headers.hpp"
(("#if !defined\\(USE_GLES2\\)")
"#if !defined(USE_GLES2)\n# define __gl_glext_h_"))
#t))
(add-after 'unpack 'unbundle
(lambda* (#:key inputs #:allow-other-keys)
(substitute* "CMakeLists.txt"
(("glew")
(string-append (assoc-ref inputs "glew")
"/lib/libGLEW.a"))
(("include_directories\\(\"\\$\\{PROJECT_SOURCE_DIR\\}/lib/glew/include\"\\)")
(string-append "include_directories(\""
(assoc-ref inputs "glew")
"/include\")")))
#t)))))
"-DCMAKE_C_FLAGS=-fpermissive")))
(inputs
`(("glew" ,glew)
("zlib" ,zlib)
@ -2136,7 +2168,9 @@ This game is based on the GPL version of the famous game TuxRacer.")
("curl" ,curl)
;; The following input is needed to build the bundled and modified
;; version of irrlicht.
("libjpeg" ,libjpeg)))
("libjpeg" ,libjpeg)
("openssl" ,openssl)
("enet" ,enet)))
(native-inputs
`(("pkg-config" ,pkg-config)))
(home-page "https://supertuxkart.net/")
@ -4476,7 +4510,7 @@ fish. The whole game is accompanied by quiet, comforting music.")
(define-public dungeon-crawl-stone-soup
(package
(name "dungeon-crawl-stone-soup")
(version "0.23.1")
(version "0.23.2")
(source
(origin
(method url-fetch)
@ -4489,8 +4523,7 @@ fish. The whole game is accompanied by quiet, comforting music.")
(string-append "http://crawl.develz.org/release/stone_soup-"
version "-nodeps.tar.xz")))
(sha256
(base32
"0c3mx49kpz6i2xvv2dwsaj9s7mm4mif1h2qdkfyi80lv2j1ay51h"))
(base32 "1hw10hqhh688mrqs9vxrl17y1dzfjzsmxz6izg1a9dzmjlhrc01a"))
(patches (search-patches "crawl-upgrade-saves.patch"))))
(build-system gnu-build-system)
(inputs
@ -4512,7 +4545,7 @@ fish. The whole game is accompanied by quiet, comforting music.")
(list (string-append "SQLITE_INCLUDE_DIR=" sqlite "/include")
(string-append "prefix=" out)
"SAVEDIR=~/.crawl"
;; Don't compile with SSE on systems which don't use it
;; Don't compile with SSE on systems which don't have it.
,@(match (%current-system)
((or "i686-linux" "x86_64-linux")
'())
@ -6486,7 +6519,7 @@ the desired spell.")
(define-public the-legend-of-edgar
(package
(name "the-legend-of-edgar")
(version "1.30")
(version "1.31")
(source
(origin
(method url-fetch)
@ -6494,10 +6527,9 @@ the desired spell.")
(string-append "https://github.com/riksweeney/edgar/releases/download/"
version "/edgar-" version "-1.tar.gz"))
(sha256
(base32
"0bhbs33dg0nb8wqlh6px1jj41j05f89ngdqwdkffabmjk7wq5isx"))))
(base32 "0i4851ci8a86ql4bhdq3xdfmf4b9z5zrd4xpc6vhi06697zgm13i"))))
(build-system gnu-build-system)
(arguments '(#:tests? #f ; there are no tests
(arguments '(#:tests? #f ; there are no tests
#:make-flags
(list "CC=gcc"
(string-append "PREFIX=" (assoc-ref %outputs "out"))
@ -6507,14 +6539,13 @@ the desired spell.")
(delete 'configure)
(add-before 'build 'fix-env
(lambda* (#:key inputs #:allow-other-keys)
(setenv "CPATH" (string-append (assoc-ref inputs "sdl")
"/include/SDL/"))
(setenv "CPATH"
(string-append (assoc-ref inputs "sdl2-union")
"/include/SDL2"))
#t)))))
(inputs `(("sdl" ,sdl)
("sdl-img" ,sdl-image)
("sdl-mixer" ,sdl-mixer)
("sdl-ttf" ,sdl-ttf)
("zlib" ,zlib)))
(inputs
`(("sdl2-union" ,(sdl-union (list sdl2 sdl2-image sdl2-mixer sdl2-ttf)))
("zlib" ,zlib)))
(native-inputs
`(("pkg-config" ,pkg-config)
("autoconf" ,autoconf)

View File

@ -369,7 +369,7 @@ libskba (working with X.509 certificates and CMS data).")
(define-public gpgme
(package
(name "gpgme")
(version "1.12.0")
(version "1.13.0")
(source
(origin
(method url-fetch)
@ -377,16 +377,7 @@ libskba (working with X.509 certificates and CMS data).")
".tar.bz2"))
(sha256
(base32
"1n4c1q2ls7sqx1vpr3p5n8vbjkw6kqp8jxqa28p0x9j36wf9bp5l"))
;; One test fails because the conflict keys have expired. See
;; https://dev.gnupg.org/T3815
(patches (list (origin
(method url-fetch)
(uri "https://dev.gnupg.org/rM66376f3e206a1aa791d712fb8577bb3490268f60?diff=1")
(file-name "gpgme-fix-conflict-test-keys.patch")
(sha256
(base32
"0j718iy5a9fhkrfs4gzrnm4ggi163prqf1i8lfmqczswvz88zfly")))))))
"0c6676g0yhfsmy32i1dgwh5cx0ja8vhcqf4k08zad177m53kxcnl"))))
(build-system gnu-build-system)
(native-inputs
`(("gnupg" ,gnupg)))

View File

@ -948,40 +948,37 @@ Guile.")
`(("guile" ,guile-2.2)
("guile-email" ,guile-email))))))
;; There has not been any release yet.
(define-public guile-newt
(let ((commit "80c1e9e71945f833386d1632b52573e59325804f")
(revision "4"))
(package
(name "guile-newt")
(version (string-append "0-" revision "." (string-take commit 9)))
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://gitlab.com/mothacehe/guile-newt")
(commit commit)))
(file-name (string-append name "-" version "-checkout"))
(sha256
(base32
"1w7qy4dw1f4bx622l6hw8mv49sf1ha8kch8j4nganyk8fj0wn695"))))
(build-system gnu-build-system)
(arguments
'(#:make-flags
'("GUILE_AUTO_COMPILE=0"))) ;to prevent guild warnings
(inputs
`(("guile" ,guile-2.2)
("newt" ,newt)))
(native-inputs
`(("autoconf" ,autoconf)
("automake" ,automake)
("pkg-config" ,pkg-config)))
(synopsis "Guile bindings to Newt")
(description
"This package provides bindings for Newt, a programming library for
(package
(name "guile-newt")
(version "0.0.1")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://gitlab.com/mothacehe/guile-newt")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32
"1w7qy4dw1f4bx622l6hw8mv49sf1ha8kch8j4nganyk8fj0wn695"))))
(build-system gnu-build-system)
(arguments
'(#:make-flags
'("GUILE_AUTO_COMPILE=0"))) ;to prevent guild warnings
(inputs
`(("guile" ,guile-2.2)
("newt" ,newt)))
(native-inputs
`(("autoconf" ,autoconf)
("automake" ,automake)
("pkg-config" ,pkg-config)))
(synopsis "Guile bindings to Newt")
(description
"This package provides bindings for Newt, a programming library for
color text mode, widget based user interfaces. The bindings are written in pure
Scheme by using Guiles foreign function interface.")
(home-page "https://gitlab.com/mothacehe/guile-newt")
(license license:gpl3+))))
(home-page "https://gitlab.com/mothacehe/guile-newt")
(license license:gpl3+)))
(define-public guile-mastodon
(package
@ -1012,42 +1009,39 @@ Scheme by using Guiles foreign function interface.")
microblogging service.")
(license license:gpl3+)))
;; There has not been any release yet.
(define-public guile-parted
(let ((commit "ea3f1a1f6844775fc59d3078d2a09c62ffb341b8")
(revision "0"))
(package
(name "guile-parted")
(version (string-append "0-" revision "." (string-take commit 9)))
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://gitlab.com/mothacehe/guile-parted")
(commit commit)))
(file-name (string-append name "-" version "-checkout"))
(sha256
(base32
"1q7425gpjlwi2wvhzq7kw046yyx7v6j6jyzkd1cr861iz34mjwiq"))))
(build-system gnu-build-system)
(arguments
'(#:make-flags
'("GUILE_AUTO_COMPILE=0"))) ;to prevent guild warnings
(inputs
`(("guile" ,guile-2.2)
("parted" ,parted)))
(propagated-inputs
`(("guile-bytestructures" ,guile-bytestructures)))
(native-inputs
`(("autoconf" ,autoconf)
("automake" ,automake)
("pkg-config" ,pkg-config)))
(synopsis "Guile bindings to GNU Parted")
(description
"This package provides bindings for GNU Parted library, a C library
allowing disk partition tables creation and manipulation. The bindings are
(package
(name "guile-parted")
(version "0.0.1")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://gitlab.com/mothacehe/guile-parted")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32
"1q7425gpjlwi2wvhzq7kw046yyx7v6j6jyzkd1cr861iz34mjwiq"))))
(build-system gnu-build-system)
(arguments
'(#:make-flags
'("GUILE_AUTO_COMPILE=0"))) ;to prevent guild warnings
(inputs
`(("guile" ,guile-2.2)
("parted" ,parted)))
(propagated-inputs
`(("guile-bytestructures" ,guile-bytestructures)))
(native-inputs
`(("autoconf" ,autoconf)
("automake" ,automake)
("pkg-config" ,pkg-config)))
(synopsis "Guile bindings to GNU Parted")
(description
"This package provides bindings for GNU Parted library, a C library
allowing disk partition tables creation and manipulation. The bindings are
written in pure Scheme by using Guile's foreign function interface.")
(home-page "https://gitlab.com/mothacehe/guile-parted")
(license license:gpl3+))))
(home-page "https://gitlab.com/mothacehe/guile-parted")
(license license:gpl3+)))
(define-public guile-xosd
(package

View File

@ -12,7 +12,7 @@
;;; Copyright © 2017 Peter Mikkelsen <petermikkelsen10@gmail.com>
;;; Copyright © 2017, 2018 Alex Vong <alexvong1995@gmail.com>
;;; Copyright © 2017 rsiddharth <s@ricketyspace.net>
;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2017, 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2018 Tonton <tonton@riseup.net>
;;; Copyright © 2018, 2019 Timothy Sample <samplet@ngyro.com>
;;; Copyright © 2018 Arun Isaac <arunisaac@systemreboot.net>
@ -1335,7 +1335,7 @@ Happy works in a similar way to the yacc tool for C.")
(define-public ghc-haskell-lexer
(package
(name "ghc-haskell-lexer")
(version "1.0.1")
(version "1.0.2")
(source
(origin
(method url-fetch)
@ -1343,8 +1343,7 @@ Happy works in a similar way to the yacc tool for C.")
"https://hackage.haskell.org/package/haskell-lexer/haskell-lexer-"
version ".tar.gz"))
(sha256
(base32
"0rj3r1pk88hh3sk3mj61whp8czz5kpxhbc78xlr04bxwqjrjmm6p"))))
(base32 "1wyxd8x33x4v5vxyzkhm610pl86gbkc8y439092fr1735q9g7kfq"))))
(build-system haskell-build-system)
(home-page "http://hackage.haskell.org/package/haskell-lexer")
(synopsis "Fully compliant Haskell 98 lexer")

View File

@ -57,7 +57,7 @@
(define-public ibus
(package
(name "ibus")
(version "1.5.19")
(version "1.5.20")
(source (origin
(method url-fetch)
(uri (string-append "https://github.com/ibus/ibus/"
@ -65,23 +65,15 @@
version "/ibus-" version ".tar.gz"))
(sha256
(base32
"0a94bnpm24581317hdnihwr4cniriml10p4ffgxg14xhvaccfrjb"))))
"0d6hcbw6ai91jl87lqnyn8bxi5y5kba5i9nz7knknyh69g5fbwac"))))
(build-system glib-or-gtk-build-system)
(arguments
`(#:tests? #f ; tests fail because there's no connection to dbus
#:configure-flags `("--disable-emoji-dict" ; cannot find emoji.json path
"--disable-python2"
"--enable-python-library"
,(string-append "--with-ucd-dir="
(getcwd) "/ucd")
"--enable-wayland")
#:make-flags
(list "CC=gcc"
(string-append "pyoverridesdir="
(assoc-ref %outputs "out")
"/lib/python"
,(version-major+minor (package-version python))
"/site-packages/gi/overrides/"))
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'prepare-ucd-dir
@ -90,6 +82,18 @@
(symlink (assoc-ref inputs "unicode-blocks") "../ucd/Blocks.txt")
(symlink (assoc-ref inputs "unicode-nameslist") "../ucd/NamesList.txt")
#t))
(add-after 'unpack 'patch-python-target-directories
(lambda* (#:key outputs #:allow-other-keys)
(let ((root (string-append (assoc-ref outputs "out")
"/lib/python"
,(version-major+minor (package-version python))
"/site-packages")))
(substitute* "configure"
(("(py2?overridesdir)=.*" _ var)
(string-append var "=" root "/gi/overrides/"))
(("(pkgpython2dir=).*" _ var)
(string-append var root "/ibus"))))
#t))
(add-before 'configure 'disable-dconf-update
(lambda _
(substitute* "data/dconf/Makefile.in"
@ -131,7 +135,7 @@
("gconf" ,gconf)
("gtk2" ,gtk+-2)
("gtk+" ,gtk+)
("intltool" ,intltool)
("gettext" ,gnu-gettext)
("json-glib" ,json-glib)
("libnotify" ,libnotify)
("libx11" ,libx11)
@ -175,7 +179,7 @@ may also simplify input method development.")
(define-public ibus-libpinyin
(package
(name "ibus-libpinyin")
(version "1.10.0")
(version "1.11.0")
(source (origin
(method url-fetch)
(uri (string-append "https://github.com/libpinyin/ibus-libpinyin/"
@ -183,7 +187,7 @@ may also simplify input method development.")
"/ibus-libpinyin-" version ".tar.gz"))
(sha256
(base32
"0yq8aw4lddiviag8cnik6fp52vvk8lxv6bym13a3xya84c6zii3c"))))
"1sypbr5n96sf7mgqhxrwbawdmszgb6yi28iqkmfmb8xr93pwq7fq"))))
(build-system glib-or-gtk-build-system)
(arguments
`(#:phases
@ -209,6 +213,7 @@ may also simplify input method development.")
("sqlite" ,sqlite)
("python" ,python)
("pyxdg" ,python-pyxdg)
("pygobject2" ,python-pygobject)
("gtk+" ,gtk+)))
(native-inputs
`(("pkg-config" ,pkg-config)
@ -224,15 +229,15 @@ ZhuYin (Bopomofo) input method based on libpinyin for IBus.")
(define-public libpinyin
(package
(name "libpinyin")
(version "2.2.0")
(version "2.3.0")
(source (origin
(method url-fetch)
(uri (string-append "https://github.com/libpinyin/libpinyin/"
"releases/download/" version
"/libpinyin-2.2.0.tar.gz"))
"/libpinyin-" version ".tar.gz"))
(sha256
(base32
"1c4wxvcvjxvk23mcwqvsfsv4nhimx4kpjhabxa28gx1ih10l88gj"))))
"14969v6w8n1aiqphl2386dws7dmsdwbzyqnlz4kr8ppm39m9rp5k"))))
(build-system gnu-build-system)
(inputs
`(("glib" ,glib)

View File

@ -87,6 +87,7 @@
(package
(name "libpng")
(version "1.6.34")
(replacement libpng-1.6.37)
(source (origin
(method url-fetch)
(uri (list (string-append "mirror://sourceforge/libpng/libpng16/"
@ -112,6 +113,25 @@ library. It supports almost all PNG features and is extensible.")
(license license:zlib)
(home-page "http://www.libpng.org/pub/png/libpng.html")))
;; This graft exists to fix CVE-2018-14048, CVE-2018-14550, and CVE-2019-7317.
(define-public libpng-1.6.37
(package
(inherit libpng)
(version "1.6.37")
(source (origin
(method url-fetch)
(uri (list (string-append "mirror://sourceforge/libpng/libpng16/"
version "/libpng-" version ".tar.xz")
(string-append
"ftp://ftp.simplesystems.org/pub/libpng/png/src"
"/libpng16/libpng-" version ".tar.xz")
(string-append
"ftp://ftp.simplesystems.org/pub/libpng/png/src/history"
"/libpng16/libpng-" version ".tar.xz")))
(sha256
(base32
"1jl8in381z0128vgxnvn33nln6hzckl7l7j9nqvkaf1m9n1p0pjh"))))))
;; libpng-apng should be updated when the APNG patch is released:
;; <https://bugs.gnu.org/27556>
(define-public libpng-apng
@ -1153,13 +1173,13 @@ the programmer.")
(version "1.3")
(source
(origin
(method url-fetch)
(uri (string-append "https://github.com/myint/perceptualdiff/archive/v"
version ".tar.gz"))
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32
"0zl6xmp971fffg7fzcz2fbgxg5x2w7l8qa65c008i4kbkc9016ps"))))
(method git-fetch)
(uri (git-reference
(url "https://github.com/myint/perceptualdiff.git")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0yys55f9i9g3wjjg0j2m0p0k21zwnid8520a8lrr30khm4k5gibp"))))
(build-system cmake-build-system)
(inputs `(("freeimage" ,freeimage)))
(arguments
@ -1505,15 +1525,14 @@ in-memory raw vectors.")
(define-public gifsicle
(package
(name "gifsicle")
(version "1.91")
(version "1.92")
(source
(origin
(method url-fetch)
(uri (string-append "http://www.lcdf.org/gifsicle/gifsicle-"
(uri (string-append "https://www.lcdf.org/gifsicle/gifsicle-"
version ".tar.gz"))
(sha256
(base32
"00586z1yz86qcblgmf16yly39n4lkjrscl52hvfxqk14m81fckha"))))
(base32 "0rffpzxcak19k6cngpxn73khvm3z1gswrqs90ycdzzb53p05ddas"))))
(build-system gnu-build-system)
(arguments
'(#:phases
@ -1528,9 +1547,9 @@ in-memory raw vectors.")
(("/bin/rm")
(which "rm")))
#t)))))
(native-inputs `(("perl" ,perl))) ; Only for tests.
(native-inputs `(("perl" ,perl))) ; only for tests
(inputs `(("libx11" ,libx11)))
(home-page "http://www.lcdf.org/gifsicle/")
(home-page "https://www.lcdf.org/gifsicle/")
(synopsis "Edit GIF images and animations")
(description "Gifsicle is a command-line GIF image manipulation tool that:

View File

@ -1,7 +1,7 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2015 Federico Beffa <beffa@fbengineering.ch>
;;; Copyright © 2015 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2019 Gábor Boskovits <boskovits@gmail.com>
;;;
;;; This file is part of GNU Guix.
@ -29,15 +29,14 @@
(define-public libedit
(package
(name "libedit")
(version "20181209-3.1")
(version "20190324-3.1")
(source
(origin
(method url-fetch)
(uri (string-append "http://thrysoee.dk/editline"
"/" name "-" version ".tar.gz"))
"/libedit-" version ".tar.gz"))
(sha256
(base32
"0r0hc4lg71xnn0vrrk2g7is42i0k0dra7cbw3fljq3q01c6df498"))))
(base32 "1bhvp8xkkgrg89k4ci1k8vjl3nhb6szd4ghy9lp4jrfgq58hz3xc"))))
(build-system gnu-build-system)
(inputs
`(("ncurses" ,ncurses)))

View File

@ -554,8 +554,8 @@ Java.")
(source
(origin
(method url-fetch)
(uri (string-append "https://dev-www.libreoffice.org/src/" name "/"
name "-" version ".tar.xz"))
(uri (string-append "https://dev-www.libreoffice.org/src/libpagemaker/"
"libpagemaker-" version ".tar.xz"))
(sha256 (base32
"17ai8ajffr0ixxmmcv3k5vgjlcsix38ldb4fw2arild70pbsrbb6"))))
(build-system gnu-build-system)
@ -581,8 +581,8 @@ created by PageMaker version 6.x and 7.")
(source
(origin
(method url-fetch)
(uri (string-append "http://dev-www.libreoffice.org/src/" name "/"
name "-" version ".tar.xz"))
(uri (string-append "http://dev-www.libreoffice.org/src/libvisio/"
"libvisio-" version ".tar.xz"))
(sha256 (base32
"1yahpfl13qk6178irv8jn5ppxdn7isafqisyqsdw0lqxcz9h447y"))))
(build-system gnu-build-system)
@ -611,8 +611,8 @@ Microsoft Visio documents of all versions.")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://sourceforge/libwpd/" name "/"
name "-" version "/" name "-" version ".tar.xz"))
(uri (string-append "mirror://sourceforge/libwpd/libodfgen/"
"libodfgen-" version "/libodfgen-" version ".tar.xz"))
(sha256 (base32
"0cdq48wlpp8m0qmndybv64r0m4vh0qsqx69cn6ms533cjlgljgij"))))
(build-system gnu-build-system)
@ -638,14 +638,14 @@ text documents, vector drawings, presentations and spreadsheets.")
(define-public libmwaw
(package
(name "libmwaw")
(version "0.3.14")
(version "0.3.15")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://sourceforge/" name "/" name "/" name "-"
version "/" name "-" version ".tar.xz"))
(uri (string-append "mirror://sourceforge/libmwaw/libmwaw/libmwaw-"
version "/libmwaw-" version ".tar.xz"))
(sha256 (base32
"1s9wyf8pyh3fbazq2d2b6fgi7s7bid60viw2xbdkmn2ywlfbza5c"))))
"1cdhm9yhanyv3w4vr73zhgyynmkhhkp3dyld7m11jd2yy04vnh04"))))
(build-system gnu-build-system)
(native-inputs
`(("doxygen" ,doxygen)

View File

@ -423,8 +423,8 @@ for ARCH and optionally VARIANT, or #f if there is no such configuration."
It has been modified to remove all non-free binary blobs.")
(license license:gpl2)))
(define %linux-libre-version "5.0.7")
(define %linux-libre-hash "0c8g20crv03xxxpirj0jylcxxy33dn9f9x7viv451rzh9frc5mal")
(define %linux-libre-version "5.0.9")
(define %linux-libre-hash "0j2xnpvc13370kprnnq79a08bq6dak0iab94d9hsc6m8v1rxaw2i")
(define %linux-libre-5.0-patches
(list %boot-logo-patch
@ -459,8 +459,8 @@ It has been modified to remove all non-free binary blobs.")
between the CDemu userspace daemon and linux kernel.")
(license license:gpl2+)))
(define %linux-libre-4.19-version "4.19.34")
(define %linux-libre-4.19-hash "0rmpyj2qb651p2k2srpjndjxry87hr5vq0jkk4rvxjhm5y3sb65l")
(define %linux-libre-4.19-version "4.19.36")
(define %linux-libre-4.19-hash "0dvwza26spa742iznz7rfgsyl4f07x8i6jh2cv5hma9l9fpqc9pi")
(define %linux-libre-4.19-patches
(list %boot-logo-patch
@ -473,8 +473,8 @@ between the CDemu userspace daemon and linux kernel.")
#:patches %linux-libre-4.19-patches
#:configuration-file kernel-config))
(define %linux-libre-4.14-version "4.14.111")
(define %linux-libre-4.14-hash "1b34f96yigdxxh5wg798933nrv7rak1w0v0q1jfviyrllrg3hkmq")
(define %linux-libre-4.14-version "4.14.113")
(define %linux-libre-4.14-hash "0z547pdi1vhybyhnfr5krsfyxmdwnv5p5fps9jjyx6rvkxasddvh")
(define-public linux-libre-4.14
(make-linux-libre %linux-libre-4.14-version
@ -483,8 +483,8 @@ between the CDemu userspace daemon and linux kernel.")
#:configuration-file kernel-config))
(define-public linux-libre-4.9
(make-linux-libre "4.9.168"
"1nli5di7i7x4jyad7nappm1awz207rg18n08wb82b1w8rwqyqgy3"
(make-linux-libre "4.9.170"
"15fz2qxvic4sfxm8vi0rghqqi5rv038xyrq9dl6fz6i1c7497g8s"
'("x86_64-linux" "i686-linux")
#:configuration-file kernel-config))
@ -4148,7 +4148,7 @@ of flash storage.")
(define-public libseccomp
(package
(name "libseccomp")
(version "2.4.0")
(version "2.4.1")
(source (origin
(method url-fetch)
(uri (string-append "https://github.com/seccomp/libseccomp/"
@ -4156,7 +4156,7 @@ of flash storage.")
"/libseccomp-" version ".tar.gz"))
(sha256
(base32
"0paj1szszpf8plykrd66jqg1x3kmqs395rbjskahld2bnplcfx1f"))))
"1s06h2cgk0xxwmhwj72z33bllafc1xqnxzk2yyra2rmg959778qw"))))
(build-system gnu-build-system)
(native-inputs
`(("which" ,which)))

View File

@ -919,51 +919,43 @@ ing, and tagging large collections of email messages.")
(license gpl3+)))
(define-public notmuch-addrlookup-c
;; This commit includes a compatibility fix for notmuch-0.25, and is not
;; currently part of any release. Please update this package when
;; notmuch-addrlookup-c-9 is released.
(let ((commit "88f156d04990a71c6ad6fc2757b537b44e3c4d00")
(revision "1")) ;Guix package revision
(package
(name "notmuch-addrlookup-c")
(version (string-append "8-" revision "."
(string-take commit 7)))
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/aperezdc/notmuch-addrlookup-c.git")
(commit commit)))
(file-name (string-append name "-" version "-checkout"))
(sha256
(base32
"0v0wzs7qzy4n1hbql8s10qrwgalcxdzbxf8pj6cii1pv2jwmkxbm"))))
(build-system gnu-build-system)
(arguments
'(#:tests? #f ; no tests
#:make-flags (list "CC=gcc"
(string-append "PREFIX="
(assoc-ref %outputs "out")))
#:phases (modify-phases %standard-phases
(delete 'configure)
;; Remove vim code completion config, it's not needed to
;; build (or be patched).
(add-before 'patch-source-shebangs 'delete-ycm-file
(lambda _ (delete-file ".ycm_extra_conf.py")))
(replace 'install
(lambda* (#:key outputs #:allow-other-keys)
(let ((bin (string-append
(assoc-ref outputs "out") "/bin")))
(install-file "notmuch-addrlookup" bin)))))))
(native-inputs
`(("pkg-config" ,pkg-config)))
(inputs
`(("glib" ,glib)
("notmuch" ,notmuch)))
(home-page "https://github.com/aperezdc/notmuch-addrlookup-c")
(synopsis "Address lookup tool for Notmuch")
(description "This is an address lookup tool using a Notmuch database,
(package
(name "notmuch-addrlookup-c")
(version (string-append "9"))
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/aperezdc/notmuch-addrlookup-c.git")
(commit (string-append "v" version))))
(file-name (string-append name "-" version "-checkout"))
(sha256
(base32
"1j3zdx161i1x4w0nic14ix5i8hd501rb31daf8api0k8855sx4rc"))))
(build-system gnu-build-system)
(arguments
'(#:tests? #f ; no tests
#:make-flags (list "CC=gcc")
#:phases (modify-phases %standard-phases
(delete 'configure)
;; Remove vim code completion config, it's not needed to
;; build (or be patched).
(add-before 'patch-source-shebangs 'delete-ycm-file
(lambda _ (delete-file ".ycm_extra_conf.py")))
(replace 'install
(lambda* (#:key outputs #:allow-other-keys)
(let ((bin (string-append
(assoc-ref outputs "out") "/bin")))
(install-file "notmuch-addrlookup" bin)))))))
(native-inputs
`(("pkg-config" ,pkg-config)))
(inputs
`(("glib" ,glib)
("notmuch" ,notmuch)))
(home-page "https://github.com/aperezdc/notmuch-addrlookup-c")
(synopsis "Address lookup tool for Notmuch")
(description "This is an address lookup tool using a Notmuch database,
useful for email address completion.")
(license license:expat))))
(license license:expat)))
(define-public python-notmuch
(package

View File

@ -7,7 +7,7 @@
;;; Copyright © 2014 Mathieu Lirzin <mathieu.lirzin@openmailbox.org>
;;; Copyright © 2015, 2016, 2017, 2018, 2019 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2015 Sou Bunnbu <iyzsong@gmail.com>
;;; Copyright © 2015 Mark H Weaver <mhw@netris.org>
;;; Copyright © 2015, 2018 Mark H Weaver <mhw@netris.org>
;;; Copyright © 2015, 2016, 2017, 2018, 2019 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2015 Fabian Harfert <fhmgufs@web.de>
;;; Copyright © 2016 Roel Janssen <roel@gnu.org>
@ -2796,12 +2796,12 @@ to BMP, JPEG or PNG image formats.")
;; of Debian's Maxima package.
;; If Maxima can successfully run this, the binary to be installed
;; should be fine.
(zero?
(system
(string-append "./maxima-local "
"--lisp=gcl "
"--batch-string=\"run_testsuite();\" "
"| grep -q \"No unexpected errors found\"")))))
(invoke "sh" "-c"
(string-append
"./maxima-local "
"--lisp=gcl "
"--batch-string=\"run_testsuite();\" "
"| grep -q \"No unexpected errors found\""))))
;; Make sure the doc and emacs files are found in the
;; standard location. Also configure maxima to find gnuplot
;; without having it on the PATH.

View File

@ -1,6 +1,6 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2013 John Darrington <jmd@gnu.org>
;;; Copyright © 2015 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2015, 2019 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2018 Efraim Flashner <efraim@flashner.co.il>
;;;
@ -23,20 +23,22 @@
#: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))
(define-public mtools
(package
(name "mtools")
(version "4.0.23")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://gnu/mtools/mtools-"
version ".tar.bz2"))
(sha256
(base32
"1qwfxzr964fasxlzhllahk8mzh7c82s808wvly95dsqsflkdp27i"))))
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnu/mtools/mtools-"
version ".tar.bz2"))
(sha256
(base32
"1qwfxzr964fasxlzhllahk8mzh7c82s808wvly95dsqsflkdp27i"))
(patches
(search-patches "mtools-mformat-uninitialized.patch"))))
(build-system gnu-build-system)
(home-page "https://www.gnu.org/software/mtools/")
(synopsis "Access MS-DOS disks without mounting")

View File

@ -5,7 +5,7 @@
;;; Copyright © 2016 Al McElrath <hello@yrns.org>
;;; Copyright © 2016, 2017 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2016, 2018 Leo Famulari <leo@famulari.name>
;;; Copyright © 2016, 2017 Kei Kebreau <kkebreau@posteo.net>
;;; Copyright © 2016, 2017, 2019 Kei Kebreau <kkebreau@posteo.net>
;;; Copyright © 2016 John J. Foerch <jjfoerch@earthlink.net>
;;; Copyright © 2016 Alex Griffin <a@ajgrf.com>
;;; Copyright © 2017 ng0 <ng0@n0.is>
@ -81,6 +81,7 @@
#:use-module (gnu packages fonts)
#:use-module (gnu packages fontutils)
#:use-module (gnu packages freedesktop)
#:use-module (gnu packages game-development)
#:use-module (gnu packages gcc)
#:use-module (gnu packages gnupg)
#:use-module (gnu packages gettext)
@ -446,6 +447,51 @@ background while you work.")
(home-page "http://www.denemo.org")
(license license:gpl3+)))
(define-public dumb
(package
(name "dumb")
(version "2.0.3")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/kode54/dumb.git")
(commit version)))
(sha256
(base32 "1cnq6rb14d4yllr0yi32p9jmcig8avs3f43bvdjrx4r1mpawspi6"))
(file-name (git-file-name name version))))
(build-system cmake-build-system)
(arguments
'(#:tests? #f ; no check target
#:configure-flags
(list "-DBUILD_SHARED_LIBS=ON"
"-DBUILD_EXAMPLES=OFF")))
(home-page "https://github.com/kode54/dumb")
(synopsis "Module audio renderer library")
(description
"DUMB is a tracker library with support for IT, XM, S3M and MOD files. It
targets maximum accuracy to the original formats, with low-pass resonant filters
for the IT files, accurate timing and pitching, and three resampling quality
settings (aliasing, linear interpolation and cubic interpolation).")
;; The DUMB license is a bit peculiar.
;; Clause 8 states that clauses 4, 5 and 6 are null and void, leaving only
;; the first three clauses for genuine consideration.
;; Clauses 1, 2 and 3 are analogous to clauses 1, 2 and 3 of the zlib
;; license, a known free software license.
;; Therefore, the DUMB license may be considered a free software license.
(license (license:fsf-free "file://LICENSE"))))
(define-public dumb-allegro4
(package
(inherit dumb)
(name "dumb-allegro4")
(arguments
(substitute-keyword-arguments (package-arguments dumb)
((#:configure-flags flags)
`(cons "-DBUILD_ALLEGRO4=ON" ,flags))))
(inputs
`(("allegro" ,allegro-4)))))
(define-public hydrogen
(package
(name "hydrogen")
@ -721,7 +767,16 @@ audio and video).")
(arguments
`(#:scons-flags (list (string-append "PREFIX=" %output))
#:scons ,scons-python2
#:tests? #f)) ;no "check" target
#:tests? #f ; no "check" target
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'replace-removed-scons-syntax
(lambda _
(substitute* "SConstruct"
(("BoolOption") "BoolVariable")
(("PathOption") "PathVariable")
(("Options") "Variables"))
#t)))))
(inputs
`(("boost" ,boost)
("jack" ,jack-1)

View File

@ -1,6 +1,6 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2012 Nikita Karetnikov <nikita@karetnikov.org>
;;; Copyright © 2015, 2016, 2017, 2018 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2015, 2016, 2017, 2018, 2019 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2016 Rene Saavedra <rennes@openmailbox.org>
;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
;;;
@ -30,7 +30,7 @@
(define-public nano
(package
(name "nano")
(version "4.0")
(version "4.1")
(source
(origin
(method url-fetch)
@ -38,7 +38,7 @@
version ".tar.xz"))
(sha256
(base32
"1hxsx6qi7897d8bwkbnijlwvnn1dfy5pd1b7v2kj8ikq6pmcybqy"))))
"1l11sa957g8njfz9v8q1f2m3w2xz1rf7i7dl37kgvmiql2bfbgc6"))))
(build-system gnu-build-system)
(inputs
`(("gettext" ,gettext-minimal)

View File

@ -405,7 +405,7 @@ underlying solvers like Cplex, Gurobi, Lpsolver, Glpk, CbC, SCIP or WBO.")
"00yvyfm4j423zqndvgc1ycnmiffaa2l9ab40cyg23pf51qmzk2jm"))
(patches
(search-patches
"ocaml-dose3-Add-unix-as-dependency-to-dose3.common-in-META.in.patch"
"ocaml-dose3-add-unix-dependency.patch"
"ocaml-dose3-Fix-for-ocaml-4.06.patch"
"ocaml-dose3-dont-make-printconf.patch"
"ocaml-dose3-Install-mli-cmx-etc.patch"))))
@ -5653,7 +5653,7 @@ storage of large amounts of data.")
(properties `((upstream-name . "ppx_hash")))
(home-page "https://github.com/janestreet/ppx_hash")
(synopsis "Generation of hash functions from type expressions and definitions")
(description "This package is a collecton of ppx rewriters that generate
(description "This package is a collection of ppx rewriters that generate
hash functions from type exrpessions and definitions.")
(license license:asl2.0)))

View File

@ -110,8 +110,8 @@
;; Note: the 'update-guix-package.scm' script expects this definition to
;; start precisely like this.
(let ((version "0.16.0")
(commit "d78bfd27bdc449cf93fe4c5497d242c2da1aeac8")
(revision 12))
(commit "b8b1e4d9a2a976c4cd9933bb6a7451340f17e9ec")
(revision 13))
(package
(name "guix")
@ -127,7 +127,7 @@
(commit commit)))
(sha256
(base32
"1i24snn7dq7r8c3mf4waz13k11lglhgvx0zb6xqiqiplmb6f7q6n"))
"1rljn9db8lxajbdcl94a6i7skk4a3rgjs25mxf35hnh0lpipqa03"))
(file-name (string-append "guix-" version "-checkout"))))
(build-system gnu-build-system)
(arguments
@ -137,9 +137,6 @@
(string-append "--with-bash-completion-dir="
(assoc-ref %outputs "out")
"/etc/bash_completion.d")
(string-append "--with-libgcrypt-prefix="
(assoc-ref %build-inputs
"libgcrypt"))
;; Set 'DOT_USER_PROGRAM' to the empty string so
;; we don't keep a reference to Graphviz, whose

View File

@ -48,14 +48,14 @@
(define-public parallel
(package
(name "parallel")
(version "20190322")
(version "20190422")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://gnu/parallel/parallel-"
version ".tar.bz2"))
(sha256
(base32 "12q0ys0dp019wykx7jcqbrilz8798hgb66k97aj2s2m7xdpw41ym"))))
(base32 "0xdl5fnh1vpjp3zpmqsrbbgjixazlhl4d9awk42nz4snzynysjxl"))))
(build-system gnu-build-system)
(arguments
`(#:phases

View File

@ -6,7 +6,7 @@
;;; Copyright © 2016 Jessica Tallon <tsyesika@tsyesika.se>
;;; Copyright © 2016 Andreas Enge <andreas@enge.fr>
;;; Copyright © 2016 Lukas Gradl <lgradl@openmailbox.org>
;;; Copyright © 2016 Alex Griffin <a@ajgrf.com>
;;; Copyright © 2016, 2019 Alex Griffin <a@ajgrf.com>
;;; Copyright © 2017 Leo Famulari <leo@famulari.name>
;;; Copyright © 2017, 2018 Clément Lassieur <clement@lassieur.org>
;;; Copyright © 2017, 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr>
@ -48,6 +48,7 @@
#:use-module (gnu packages)
#:use-module (gnu packages admin)
#:use-module (gnu packages aidc)
#:use-module (gnu packages authentication)
#:use-module (gnu packages base)
#:use-module (gnu packages check)
#:use-module (gnu packages compression)
@ -74,6 +75,7 @@
#:use-module (gnu packages python-web)
#:use-module (gnu packages python-xyz)
#:use-module (gnu packages suckless)
#:use-module (gnu packages tcl)
#:use-module (gnu packages tls)
#:use-module (gnu packages qt)
#:use-module (gnu packages version-control)
@ -423,6 +425,19 @@ any X11 window.")
(modify-phases %standard-phases
(delete 'configure)
(delete 'build)
(add-before 'install 'patch-system-extension-dir
(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(extension-dir (string-append out "/lib/password-store/extensions")))
(substitute* "src/password-store.sh"
(("^SYSTEM_EXTENSION_DIR=.*$")
;; lead with whitespace to prevent 'make install' from
;; overwriting it again
(string-append " SYSTEM_EXTENSION_DIR=\""
"${PASSWORD_STORE_SYSTEM_EXTENSION_DIR:-"
extension-dir
"}\"\n"))))
#t))
(add-before 'install 'patch-passmenu-path
(lambda* (#:key inputs #:allow-other-keys)
(substitute* "contrib/dmenu/passmenu"
@ -461,6 +476,10 @@ any X11 window.")
;; timeout in some circumstances.
#:parallel-tests? #f
#:test-target "test"))
(native-search-paths
(list (search-path-specification
(variable "PASSWORD_STORE_SYSTEM_EXTENSION_DIR")
(files '("lib/password-store/extensions")))))
(inputs
`(("dmenu" ,dmenu)
("getopt" ,util-linux)
@ -482,6 +501,55 @@ changes to your password database to a git repository that can be managed
through the pass command.")
(license license:gpl2+)))
(define-public pass-otp
(package
(name "pass-otp")
(version "1.2.0")
(source
(origin
(method url-fetch)
(uri
(string-append "https://github.com/tadfisher/pass-otp/releases/"
"download/v" version "/pass-otp-" version ".tar.gz"))
(sha256
(base32
"0rrs3iazq80dn0wbl20xkh270428jd8l99m5gd7hl93s4r4sc82p"))))
(build-system gnu-build-system)
(arguments
'(#:make-flags
(let* ((out (assoc-ref %outputs "out"))
(bashcomp (string-append out "/etc/bash_completion.d")))
(list (string-append "PREFIX=" %output)
(string-append "BASHCOMPDIR=" bashcomp)))
#:phases
(modify-phases %standard-phases
(delete 'configure)
(add-after 'build 'patch-oath-path
(lambda* (#:key inputs #:allow-other-keys)
(substitute* "otp.bash"
(("^OATH=.*$")
(string-append
"OATH="
(assoc-ref inputs "oath-toolkit")
"/bin/oathtool\n")))
#t)))
#:test-target "test"))
(inputs
`(("oath-toolkit" ,oath-toolkit)))
(native-inputs
`(("password-store" ,password-store)
("expect" ,expect)
("git" ,git)
("gnupg" ,gnupg)
("which" ,which)))
(home-page "https://github.com/tadfisher/pass-otp")
(synopsis "Pass extension for managing one-time-password (OTP) tokens")
(description
"Pass OTP is an extension for password-store that allows adding
one-time-password (OTP) secrets, generating OTP codes, and displaying secret
key URIs using the standard otpauth:// scheme.")
(license license:gpl3+)))
(define-public argon2
(package
(name "argon2")

View File

@ -0,0 +1,27 @@
Change 'grub-mkrescue' to honor the 'GRUB_FAT_SERIAL_NUMBER'
environment variable. That way, the caller can specify a fixed
serial number (instead of the randomly chosen one) to create EFI
images (the 'efi.img' file) that are reproducible bit-for-bit.
Patch by Ludovic Courtès <ludo@gnu.org>.
--- grub-2.02/util/grub-mkrescue.c 2019-04-20 19:15:26.180242812 +0200
+++ grub-2.02/util/grub-mkrescue.c 2019-04-20 21:56:34.672370849 +0200
@@ -788,8 +788,15 @@ main (int argc, char *argv[])
efiimgfat = grub_util_path_concat (2, iso9660_dir, "efi.img");
int rv;
- rv = grub_util_exec ((const char * []) { "mformat", "-C", "-f", "2880", "-L", "16", "-i",
- efiimgfat, "::", NULL });
+
+ const char *fat_serial_number = getenv ("GRUB_FAT_SERIAL_NUMBER");
+ const char *mformat_args[] =
+ { "mformat", "-C", "-f", "2880", "-L", "16",
+ fat_serial_number != NULL ? "-N" : "-C",
+ fat_serial_number != NULL ? fat_serial_number : "-C",
+ "-i", efiimgfat, "::", NULL };
+
+ rv = grub_util_exec (mformat_args);
if (rv != 0)
grub_util_error ("`%s` invocation failed\n", "mformat");
rv = grub_util_exec ((const char * []) { "mcopy", "-s", "-i", efiimgfat, efidir_efi, "::/", NULL });

View File

@ -0,0 +1,20 @@
Fix a bug whereby 'mformat' could end up passing uninitialized bytes
to write(2). This could be reproduced with:
mformat -C -f 1440 -L 16 -N 77777777 -i /tmp/x ::
where the output of /tmp/x would be non-deterministic.
Patch by Ludovic Courtès <ludo@gnu.org>.
--- mtools-4.0.23/mformat.c 2019-04-21 00:12:01.496116195 +0200
+++ mtools-4.0.23/mformat.c 2019-04-21 00:12:36.675967157 +0200
@@ -927,6 +927,7 @@ void mformat(int argc, char **argv, int
char *endptr;
+ memset(&boot.bytes, '\0', sizeof boot);
hs = hs_set = 0;
argtracks = 0;
argheads = 0;

View File

@ -1,44 +0,0 @@
Fix CVE-2018-20685:
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2018-20685
Patch copied from upstream source repository:
https://github.com/openssh/openssh-portable/commit/6010c0303a422a9c5fa8860c061bf7105eb7f8b2
From 6010c0303a422a9c5fa8860c061bf7105eb7f8b2 Mon Sep 17 00:00:00 2001
From: "djm@openbsd.org" <djm@openbsd.org>
Date: Fri, 16 Nov 2018 03:03:10 +0000
Subject: [PATCH] upstream: disallow empty incoming filename or ones that refer
to the
current directory; based on report/patch from Harry Sintonen
OpenBSD-Commit-ID: f27651b30eaee2df49540ab68d030865c04f6de9
---
scp.c | 5 +++--
1 file changed, 3 insertions(+), 2 deletions(-)
diff --git a/scp.c b/scp.c
index 60682c68..4f3fdcd3 100644
--- a/scp.c
+++ b/scp.c
#@@ -1,4 +1,4 @@
#-/* $OpenBSD: scp.c,v 1.197 2018/06/01 04:31:48 dtucker Exp $ */
#+/* $OpenBSD: scp.c,v 1.198 2018/11/16 03:03:10 djm Exp $ */
# /*
# * scp - secure remote copy. This is basically patched BSD rcp which
# * uses ssh to do the data transfer (instead of using rcmd).
@@ -1106,7 +1106,8 @@ sink(int argc, char **argv)
SCREWUP("size out of range");
size = (off_t)ull;
- if ((strchr(cp, '/') != NULL) || (strcmp(cp, "..") == 0)) {
+ if (*cp == '\0' || strchr(cp, '/') != NULL ||
+ strcmp(cp, ".") == 0 || strcmp(cp, "..") == 0) {
run_err("error: unexpected filename: %s", cp);
exit(1);
}
--
2.20.1

View File

@ -2541,9 +2541,22 @@ the DateTime.pm class.")
(base32
"0kz5kz47awf2bhb85xx5rbajkr093ipm2d2vkhqs8lqq0f305r3a"))))
(build-system perl-build-system)
(arguments
'(#:phases
(modify-phases %standard-phases
(add-after 'unpack 'patch-tzdata
(lambda* (#:key inputs #:allow-other-keys)
(substitute* "lib/DateTime/TimeZone/Local/Unix.pm"
(("our \\$ZoneinfoDir = '\\/usr\\/share\\/zoneinfo';")
(string-append "our $ZoneinfoDir = '"
(assoc-ref inputs "tzdata") "/share/zoneinfo"
"';")))
#t)))))
(native-inputs
`(("perl-test-fatal" ,perl-test-fatal)
("perl-test-requires" ,perl-test-requires)))
(inputs
`(("tzdata" ,tzdata)))
(propagated-inputs
`(("perl-class-singleton" ,perl-class-singleton)
("perl-list-allutils" ,perl-list-allutils)
@ -8421,7 +8434,7 @@ text sequences from strings.")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://cpan/authors/id/M/MA/MAKAMAKA/"
(uri (string-append "mirror://cpan/authors/id/I/IS/ISHIGAKI/"
"Text-CSV-" version ".tar.gz"))
(sha256
(base32 "1llccsl6sr11g9affh43m6q5r85qgnpi9n7idcs1vi9cn4ww0kp7"))))

View File

@ -970,14 +970,14 @@ derivation function.")
(define-public python-service-identity
(package
(name "python-service-identity")
(version "17.0.0")
(version "18.1.0")
(source
(origin
(method url-fetch)
(uri (pypi-uri "service_identity" version))
(sha256
(base32
"1aq24cn3nnsjr9g797dayhx4g653h6bd41ksqhidzq0rvarzn0a0"))))
"0b9f5qiqjy8ralzgwjgkhx82h6h8sa7532psmb8mkd65md5aan08"))))
(build-system python-build-system)
(propagated-inputs
`(("python-attrs" ,python-attrs)

View File

@ -897,14 +897,14 @@ dispatching systems can be built.")
(define-public python-zope-interface
(package
(name "python-zope-interface")
(version "4.1.3")
(version "4.6.0")
(source
(origin
(method url-fetch)
(uri (pypi-uri "zope.interface" version))
(sha256
(base32
"0ks8h73b2g4bkad821qbv0wzjppdrwys33i7ka45ik3wxjg1l8if"))))
"1rgh2x3rcl9r0v0499kf78xy86rnmanajf4ywmqb943wpk50sg8v"))))
(build-system python-build-system)
(native-inputs
`(("python-zope-event" ,python-zope-event)))
@ -2959,14 +2959,14 @@ ecosystem.")
(define-public python-hyperlink
(package
(name "python-hyperlink")
(version "18.0.0")
(version "19.0.0")
(source
(origin
(method url-fetch)
(uri (pypi-uri "hyperlink" version))
(sha256
(base32
"01m3y19arfqljksngy8grc966zdb4larysralb8cajzi8kvly6zh"))))
"0m2nhi0j8wmgfscf974wd5v1xfq8mah286hil6npy1ys0m3y7222"))))
(build-system python-build-system)
(propagated-inputs
`(("python-idna" ,python-idna)))

View File

@ -26,7 +26,7 @@
;;; Copyright © 2016, 2017 ng0 <ng0@n0.is>
;;; Copyright © 2016 Dylan Jeffers <sapientech@sapientech@openmailbox.org>
;;; Copyright © 2016 David Craven <david@craven.ch>
;;; Copyright © 2016, 2017, 2018 Marius Bakke <mbakke@fastmail.com>
;;; Copyright © 2016, 2017, 2018, 2019 Marius Bakke <mbakke@fastmail.com>
;;; Copyright © 2016, 2017 Stefan Reichör <stefan@xsteve.at>
;;; Copyright © 2016 Dylan Jeffers <sapientech@sapientech@openmailbox.org>
;;; Copyright © 2016, 2017 Alex Vong <alexvong1995@gmail.com>
@ -615,24 +615,27 @@ version identifier.")
(define-public python-serpent
(package
(name "python-serpent")
(version "1.27")
(version "1.28")
(source
(origin
(method url-fetch)
(uri (pypi-uri "serpent" version))
(sha256
(base32
"04p9dsrm5pv8vhk3flvih55kgvlzpi38hlaykdiakddmgwqw93bg"))))
(base32 "1arnckykpkvv2qrp49l1k7q5mr5pisswl0rvdx98x8wsl1n361pk"))))
(build-system python-build-system)
(native-inputs
`(("python-attrs" ,python-attrs)
("python-pytz" ,python-pytz)))
(home-page "https://github.com/irmen/Serpent")
(synopsis "Serializer for literal Python expressions")
(description
"Serpent provides ast.literal_eval() compatible object tree
serialization. It serializes an object tree into bytes (utf-8 encoded string)
that can be decoded and then passed as-is to ast.literal_eval() to rebuild it
as the original object tree. As such it is safe to send serpent data to other
machines over the network for instance (because only safe literals are
encoded).")
"Serpent provides @code{ast.literal_eval()}-compatible object tree
serialization. It serializes an object tree into bytes (an utf-8 encoded
string) that can be decoded and then passed as-is to @code{ast.literal_eval()}
to rebuild the original object tree.
Because only safe literals are encoded, it is safe to send serpent data to
other machines, such as over the network.")
(license license:expat)))
(define-public python-setuptools
@ -889,7 +892,7 @@ of @code{xmlfile}.")
(define-public python-openpyxl
(package
(name "python-openpyxl")
(version "2.6.0")
(version "2.6.2")
(source
(origin
;; We use the upstream repository, as the tests are not included in the
@ -900,8 +903,7 @@ of @code{xmlfile}.")
(changeset version)))
(file-name (string-append name "-" version "-checkout"))
(sha256
(base32
"1x47ngn7ybaqdbvg90c8h2x0j6yfdfj25gjfinp2w5rf62gsany7"))))
(base32 "1qhij6kcvdxqjy4g6193nsv4q7fy8n4fwyd3c2z047idlm6s3j4w"))))
(build-system python-build-system)
(arguments
`(#:phases (modify-phases %standard-phases
@ -1722,6 +1724,37 @@ from git information.
(define-public python2-pbr
(package-with-python2 python-pbr))
(define-public python-pyrsistent
(package
(name "python-pyrsistent")
(version "0.14.11")
(home-page "https://github.com/tobgu/pyrsistent")
(source (origin
(method url-fetch)
(uri (pypi-uri "pyrsistent" version))
(sha256
(base32
"1qkh74bm296mp5g3r11lgsksr6bh4w1bf8pji4nmxdlfj542ga1w"))))
(build-system python-build-system)
(native-inputs
`(("python-hypothesis" ,python-hypothesis)
("python-pytest" ,python-pytest)
("python-pytest-runner" ,python-pytest-runner)))
(propagated-inputs
`(("python-six" ,python-six)))
(synopsis "Persistent data structures for Python")
(description
"Pyrsistent is a number of persistent collections (by some referred to as
functional data structures). Persistent in the sense that they are immutable.
All methods on a data structure that would normally mutate it instead return a
new copy of the structure containing the requested updates. The original
structure is left untouched.")
(license license:expat)))
(define-public python2-pyrsistent
(package-with-python2 python-pyrsistent))
(define-public python-exif-read
(package
(name "python-exif-read")
@ -1892,21 +1925,28 @@ between Julian dates and Gregorian dates.")
(define-public python-jsonschema
(package
(name "python-jsonschema")
(version "2.6.0")
(version "3.0.1")
(source (origin
(method url-fetch)
(uri (pypi-uri "jsonschema" version))
(sha256
(base32
"00kf3zmpp9ya4sydffpifn0j0mzm342a2vzh82p6r0vh10cg7xbg"))))
"03g20i1xfg4qdlk4475pl4pp7y0h37g1fbgs5qhy678q9xb822hc"))))
(build-system python-build-system)
(arguments
'(#:phases
(modify-phases %standard-phases
(replace 'check (lambda _ (invoke "nosetests"))))))
(replace 'check
(lambda _
(setenv "PYTHONPATH" (string-append ".:" (getenv "PYTHONPATH")))
(invoke "trial" "jsonschema"))))))
(native-inputs
`(("python-nose" ,python-nose)
("python-vcversioner" ,python-vcversioner)))
`(("python-setuptools_scm" ,python-setuptools-scm)
("python-twisted" ,python-twisted)))
(propagated-inputs
`(("python-attrs" ,python-attrs)
("python-pyrsistent" ,python-pyrsistent)
("python-six" ,python-six)))
(home-page "https://github.com/Julian/jsonschema")
(synopsis "Implementation of JSON Schema for Python")
(description
@ -1918,11 +1958,9 @@ between Julian dates and Gregorian dates.")
(let ((jsonschema (package-with-python2
(strip-python2-variant python-jsonschema))))
(package (inherit jsonschema)
(native-inputs
`(("python2-mock" ,python2-mock)
,@(package-native-inputs jsonschema)))
(propagated-inputs
`(("python2-functools32" ,python2-functools32))))))
`(("python2-functools32" ,python2-functools32)
,@(package-propagated-inputs jsonschema))))))
(define-public python-schema
(package
@ -6928,14 +6966,14 @@ versions of Python.")
(define-public python-idna
(package
(name "python-idna")
(version "2.7")
(version "2.8")
(source
(origin
(method url-fetch)
(uri (pypi-uri "idna" version))
(sha256
(base32
"05jam7d31767dr12x0rbvvs8lxnpb1mhdb2zdlfxgh83z6k3hjk8"))))
"01rlkigdxg17sf9yar1jl8n18ls59367wqh59hnawlyg53vb6my3"))))
(build-system python-build-system)
(home-page "https://github.com/kjd/idna")
(synopsis "Internationalized domain names in applications")
@ -9664,23 +9702,19 @@ format.")
(define-public python-twisted
(package
(name "python-twisted")
(version "17.5.0")
(version "19.2.0")
(source (origin
(method url-fetch)
(uri (pypi-uri "Twisted" version ".tar.bz2"))
(sha256
(base32
"1sh2h23nnizcdyrl2rn7zxijglikxwz7z7grqpvq496zy2aa967i"))))
"1gmb8d57s13d8znvqnxi47vqzqz141z443dbxg9wjkp8ia9f220p"))))
(build-system python-build-system)
(arguments
'(#:tests? #f)) ; FIXME: Some tests are failing.
;; #:phases
;; (modify-phases %standard-phases
;; (replace 'check
;; (lambda _
;; (zero? (system* "./bin/trial" "twisted")))))
(propagated-inputs
`(("python-zope-interface" ,python-zope-interface)
("python-pyhamcrest" ,python-pyhamcrest)
("python-incremental" ,python-incremental)
("python-hyperlink" ,python-hyperlink)
("python-constantly" ,python-constantly)
@ -11577,13 +11611,13 @@ instead of servers and network commands.")
(define-public python-automat
(package
(name "python-automat")
(version "0.6.0")
(version "0.7.0")
(source (origin
(method url-fetch)
(uri (pypi-uri "Automat" version))
(sha256
(base32
"1a7nsrljysfmdqmpn2apfa1gg6rfah4y9sizvns8gb08rx7d07rw"))))
"03ivg70n3b1cbcd2zvjhk8y4kmqxcvhmili39lmgx09dza1qpmyb"))))
(build-system python-build-system)
;; We disable the tests because they require python-twisted, while
;; python-twisted depends on python-automat. Twisted is optional, but the
@ -11610,13 +11644,13 @@ transducers).")
(define-public python-m2r
(package
(name "python-m2r")
(version "0.1.12")
(version "0.2.1")
(source (origin
(method url-fetch)
(uri (pypi-uri "m2r" version))
(sha256
(base32
"1axrwnf425sz4qz3c0qc7yhhki4myzb8rki7pczcsgzznzmqdyxd"))))
"16gdm8i06jjmlpvckpfmlkr4693dh0vs192vgsqn84fsdkbbm45z"))))
(build-system python-build-system)
(propagated-inputs
`(("python-docutils" ,python-docutils)
@ -13832,11 +13866,12 @@ and works only with Python 2 and NumPy < 1.9.")
(synopsis "Send files to the user's @file{~/Trash} directory")
(description "This package provides a Python library to send files to the
user's @file{~/Trash} directory.")
(properties `((python2-variant . ,(delay python2-send2trash))))
(license license:bsd-3)))
(define-public python2-send2trash
(package
(inherit (package-with-python2 python-send2trash))
(inherit (package-with-python2 (strip-python2-variant python-send2trash)))
(arguments
(substitute-keyword-arguments (package-arguments python-send2trash)
((#:phases phases)
@ -13845,8 +13880,7 @@ user's @file{~/Trash} directory.")
(lambda _
(setenv "PYTHONPATH"
(string-append (getcwd) ":" (getenv "PYTHONPATH")))
#t))))))
(properties `((python2-variant . ,(delay python-send2trash))))))
#t))))))))
(define-public python-yapf
(package
@ -14899,16 +14933,15 @@ object-oriented library such as @code{scikit-learn}.")
(define-public python-dill
(package
(name "python-dill")
(version "0.2.8.2")
(version "0.2.9")
(source
(origin
(method url-fetch)
(uri (pypi-uri "dill" version))
(sha256
(base32
"1cymzn9fxwdy33h21zkk4gqgzvd25110hh3zdqnvnwa3p52c4kb2"))))
(base32 "0vwqyi6hyz2r29zydc78dqymkbc5y7gia16xcdh215cikxph9mpn"))))
(build-system python-build-system)
;; FIXME: The check phase fails with "don't know how to make test".
;; FIXME: The check phase fails with "don't know how to make test from: …".
(arguments '(#:tests? #f))
(home-page "https://pypi.org/project/dill")
(synopsis "Serialize all of Python")

View File

@ -95,7 +95,7 @@ readers and is needed to communicate with such devices through the
(define-public eid-mw
(package
(name "eid-mw")
(version "4.4.13")
(version "4.4.16")
(source
(origin
(method git-fetch)
@ -103,7 +103,7 @@ readers and is needed to communicate with such devices through the
(url "https://github.com/Fedict/eid-mw")
(commit (string-append "v" version))))
(sha256
(base32 "14bgn2k0xbd6241qdghg787pgxy7k9rvcspaf74zwwyibaqknzyx"))))
(base32 "1q82fw63xzrnrgh1wyh457hal6vfdl6swqfq7l6kviywiwlzx7kd"))))
(build-system glib-or-gtk-build-system)
(native-inputs
`(("autoconf" ,autoconf)

View File

@ -128,13 +128,14 @@ are already there.")
(delete 'configure)
;; Help the build scripts find the Go language dependencies.
(add-before 'unpack 'setup-go-environment
(assoc-ref go:%standard-phases 'setup-go-environment)))))
(inputs
(assoc-ref go:%standard-phases 'setup-go-environment))
(add-after 'install 'remove-go-references
(assoc-ref go:%standard-phases 'remove-go-references)))))
(native-inputs
`(("go" ,go)
("go-github-com-burntsushi-toml" ,go-github-com-burntsushi-toml)
("go-github-com-direnv-go-dotenv" ,go-github-com-direnv-go-dotenv)))
(native-inputs
`(("which" ,which)))
("go-github-com-direnv-go-dotenv" ,go-github-com-direnv-go-dotenv)
("which" ,which)))
(home-page "https://direnv.net/")
(synopsis "Environment switcher for the shell")
(description

View File

@ -164,15 +164,14 @@ a server that supports the SSH-2 protocol.")
(define-public openssh
(package
(name "openssh")
(version "7.9p1")
(version "8.0p1")
(source (origin
(method url-fetch)
(uri (string-append "mirror://openbsd/OpenSSH/portable/"
name "-" version ".tar.gz"))
(patches (search-patches "openssh-CVE-2018-20685.patch"))
(sha256
(base32
"1b8sy6v0b8v4ggmknwcqx3y1rjcpsll0f1f8f4vyv11x4ni3njvb"))))
"0s7xh4s0qcipnjh9ls5blxcpvhyd116z9dxn3q1yi64lwrwki55x"))))
(build-system gnu-build-system)
(native-inputs `(("groff" ,groff)
("pkg-config" ,pkg-config)))

View File

@ -5284,14 +5284,14 @@ to Applied regression, Second Edition, Sage, 2011.")
(define-public r-caret
(package
(name "r-caret")
(version "6.0-82")
(version "6.0-83")
(source
(origin
(method url-fetch)
(uri (cran-uri "caret" version))
(sha256
(base32
"0zgkmiiarl7ll2ffyciikah61jyps41fin5pjb5l8ja2b26lgrdg"))))
"1vyw43z73wa4nrbbyq6km18yh1352g03j93cw2zr1dphl56mxplv"))))
(build-system r-build-system)
(propagated-inputs
`(("r-foreach" ,r-foreach)

View File

@ -252,7 +252,7 @@ over the Internet in an HTTP and CDN friendly way;
(define-public rclone
(package
(name "rclone")
(version "1.46")
(version "1.47.0")
(source (origin
(method git-fetch)
(uri (git-reference
@ -261,7 +261,7 @@ over the Internet in an HTTP and CDN friendly way;
(file-name (git-file-name name version))
(sha256
(base32
"1fl52dl41n76r678nzkxa2kgk9khn1fxraxgk8jd3ayc787qs9ia"))))
"1nxwjr9jly6wh1ixr6a7zhlg4b3298v940040fsm0n3lcljd37zx"))))
;; FIXME: Rclone bundles some libraries Guix already provides. Need to
;; un-bundle them.
(build-system go-build-system)

View File

@ -519,7 +519,7 @@ in a portable way.")
(origin
(method url-fetch)
(uri (string-append "http://www.lbreyer.com/gpl/"
name "-" version ".tar.gz"))
"dbacl-" version ".tar.gz"))
(sha256
(base32
"0224g6x71hyvy7jikfxmgcwww1r5lvk0jx36cva319cb9nmrbrq7"))))

View File

@ -79,3 +79,18 @@ tools. There are Valgrind tools that can automatically detect many memory
management and threading bugs, and profile your programs in detail. You can
also use Valgrind to build new tools.")
(license gpl2+)))
(define-public valgrind-3.15
(package
(inherit valgrind)
(version "3.15.0")
(source (origin
(method url-fetch)
(uri (list (string-append "http://www.valgrind.org/downloads"
"/valgrind-" version ".tar.bz2")
(string-append "ftp://sourceware.org/pub/valgrind"
"/valgrind-" version ".tar.bz2")))
(sha256
(base32
"1ccawxrni8brcvwhygy12iprkvz409hbr9xkk1bd03gnm2fplz21"))
(patches (search-patches "valgrind-enable-arm.patch"))))))

View File

@ -23,6 +23,7 @@
;;; Copyright © 2018 Timothy Sample <samplet@ngyro.com>
;;; Copyright © 2018 Arun Isaac <arunisaac@systemreboot.net>
;;; Copyright © 2019 Jovany Leandro G.C <bit4bit@riseup.net>
;;; Copyright © 2019 Kei Kebreau <kkebreau@posteo.net>
;;;
;;; This file is part of GNU Guix.
;;;
@ -47,6 +48,7 @@
#:use-module (guix git-download)
#:use-module (guix build-system cmake)
#:use-module (guix build-system gnu)
#:use-module (guix build-system go)
#:use-module (guix build-system python)
#:use-module (guix build-system trivial)
#:use-module (gnu packages apr)
@ -2144,3 +2146,27 @@ design goals are to reduce the pain of resolving merge conflicts by finding
the smallest possible conflicts and to allow a merge to be saved, tested,
interrupted, published, and collaborated on while in progress.")
(license license:gpl2+)))
(define-public git-lfs
(package
(name "git-lfs")
(version "2.7.1")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/git-lfs/git-lfs")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
"10v38w8qfz0x8750kv31n8gg2dimvq4wz40m374pd1xaypfs9670"))))
(build-system go-build-system)
(arguments
'(#:import-path "github.com/git-lfs/git-lfs"))
(home-page "https://git-lfs.github.com/")
(synopsis "Git extension for versioning large files")
(description
"Git Large File Storage (LFS) replaces large files such as audio samples,
videos, datasets, and graphics with text pointers inside Git, while storing the
file contents on a remote server.")
(license license:expat)))

View File

@ -1446,7 +1446,7 @@ access to mpv's powerful playback capabilities.")
(define-public youtube-dl
(package
(name "youtube-dl")
(version "2019.04.07")
(version "2019.04.17")
(source (origin
(method url-fetch)
(uri (string-append "https://github.com/rg3/youtube-dl/releases/"
@ -1454,7 +1454,7 @@ access to mpv's powerful playback capabilities.")
version ".tar.gz"))
(sha256
(base32
"1krx4y8nzpaqpq9qs8dnv2y988jpdccyfl9sdx9wrb0baycl119k"))))
"0dznw06qbb75glzirhnsbsd5xqix08jxdngbd21wndxcj1yq5y8a"))))
(build-system python-build-system)
(arguments
;; The problem here is that the directory for the man page and completion
@ -3425,11 +3425,11 @@ transitions, and effects and then export your film to many common formats.")
(define-public dav1d
(package
(name "dav1d")
(version "0.2.1")
(version "0.2.2")
(source
(origin
(method url-fetch)
(uri (list ;; The canonical download site
(uri (list ;; The canonical download site.
(string-append "https://downloads.videolan.org/pub/videolan/"
"dav1d/" version "/dav1d-" version ".tar.xz")
@ -3437,7 +3437,7 @@ transitions, and effects and then export your film to many common formats.")
(string-append "https://code.videolan.org/videolan/dav1d/-/"
"archive/" version "/dav1d-" version ".tar.bz2")))
(sha256
(base32 "0cp7harg2gf61v35hyki2ddk9yr0xli9bkk3smxblabmq9rv5cs3"))))
(base32 "1llf4v486avj83d31670vdd5nshbq10qrx9vwrm1j078dh4ax4q0"))))
(build-system meson-build-system)
(native-inputs `(("nasm" ,nasm)))
(home-page "https://code.videolan.org/videolan/dav1d")

View File

@ -41,37 +41,33 @@
#:use-module (gnu packages xorg))
(define-public spirv-headers
;; Keep updated in accordance with
;; https://github.com/google/shaderc/blob/known-good/known_good.json
(let ((commit "8bea0a266ac9b718aa0818d9e3a47c0b77c2cb23")
(revision "4"))
(package
(name "spirv-headers")
(version (string-append "0.0-" revision "." (string-take commit 9)))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/KhronosGroup/SPIRV-Headers")
(commit commit)))
(sha256
(base32
"01qyjghjz42hmyw9111zz20a1paf37ps39p4xbj8abjba65d8lqx"))
(file-name (string-append name "-" version "-checkout"))))
(build-system cmake-build-system)
(arguments
`(#:tests? #f ;; No tests
#:phases (modify-phases %standard-phases
(replace 'install
(lambda* (#:key outputs #:allow-other-keys)
(invoke "cmake" "-E" "copy_directory"
"../source/include/spirv"
(string-append (assoc-ref outputs "out")
"/include/spirv")))))))
(home-page "https://github.com/KhronosGroup/SPIRV-Headers")
(synopsis "Machine-readable files from the SPIR-V Registry")
(description
"SPIRV-Headers is a repository containing machine-readable files from
(package
(name "spirv-headers")
(version "1.3.7")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/KhronosGroup/SPIRV-Headers")
(commit version)))
(sha256
(base32
"0m56smanfcczjfif4yfcqhjj4d4sc088kwg6dgia8fwdsjavdm4d"))
(file-name (string-append name "-" version "-checkout"))))
(build-system cmake-build-system)
(arguments
`(#:tests? #f ;; No tests
#:phases (modify-phases %standard-phases
(replace 'install
(lambda* (#:key outputs #:allow-other-keys)
(invoke "cmake" "-E" "copy_directory"
"../source/include/spirv"
(string-append (assoc-ref outputs "out")
"/include/spirv")))))))
(home-page "https://github.com/KhronosGroup/SPIRV-Headers")
(synopsis "Machine-readable files from the SPIR-V Registry")
(description
"SPIRV-Headers is a repository containing machine-readable files from
the SPIR-V Registry. This includes:
@itemize
@item Header files for various languages.
@ -79,9 +75,9 @@ the SPIR-V Registry. This includes:
and for the GLSL.std.450 extended instruction set.
@item The XML registry file.
@end itemize\n")
(license (license:x11-style
(string-append "https://github.com/KhronosGroup/SPIRV-Headers/blob/"
commit "/LICENSE"))))))
(license (license:x11-style
(string-append "https://github.com/KhronosGroup/SPIRV-Headers/blob/"
version "/LICENSE")))))
(define-public spirv-tools
(package
@ -124,7 +120,7 @@ parser,disassembler, validator, and optimizer for SPIR-V.")
(define-public glslang
(package
(name "glslang")
(version "7.11.3113")
(version "7.11.3188")
(source
(origin
(method git-fetch)
@ -133,7 +129,7 @@ parser,disassembler, validator, and optimizer for SPIR-V.")
(commit version)))
(sha256
(base32
"1kzv2b4q1fddxd7c0hc754nd6rw6y9vijb9fsi13xzzq9dficgb6"))
"04y4dd1cqdkd4qffmhgmg3agf9j07ii2w38vpp4jw53ir818bqdq"))
(file-name (string-append name "-" version "-checkout"))))
(build-system cmake-build-system)
(arguments

View File

@ -5435,8 +5435,7 @@ Instagram and YouTube.")
(url "https://github.com/linkchecker/linkchecker")
(commit (string-append "v" version))))
(patches
(search-patches
"linkchecker-mark-more-tests-that-require-the-network.patch"))
(search-patches "linkchecker-tests-require-network.patch"))
(file-name (git-file-name name version))
(sha256
(base32

View File

@ -8,7 +8,7 @@
;;; Copyright © 2016, 2019 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2016 Al McElrath <hello@yrns.org>
;;; Copyright © 2016 Carlo Zancanaro <carlo@zancanaro.id.au>
;;; Copyright © 2016, 2017, 2018 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2016, 2017, 2018, 2019 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2016, 2017, 2018 ng0 <ng0@n0.is>
;;; Copyright © 2016 doncatnip <gnopap@gmail.com>
;;; Copyright © 2016 Ivan Vilata i Balaguer <ivan@selidor.net>
@ -811,7 +811,7 @@ experience.")
"Awesome has been designed as a framework window manager. It is fast, small,
dynamic and extensible using the Lua programming language.")
(license license:gpl2+)
(home-page "https://awesome.naquadah.org/")))
(home-page "https://awesomewm.org/")))
(define-public menumaker
(package

View File

@ -574,7 +574,7 @@ selection's dimensions to stdout.")
(define-public maim
(package
(name "maim")
(version "5.5.2")
(version "5.5.3")
(source (origin
(method git-fetch)
(uri (git-reference
@ -583,7 +583,7 @@ selection's dimensions to stdout.")
(file-name (git-file-name name version))
(sha256
(base32
"14mfxdm39kc5jk8wysrzx05ag2g4sk9l24i8m5pzqn8j611150v3"))))
"1kbxsz8whfxl5blwsvpva2q95zwy72argwhi1cfqh5lrhzq5zrpp"))))
(build-system cmake-build-system)
(arguments
'(#:tests? #f)) ; no "check" target

View File

@ -929,14 +929,14 @@ XSL-T processor. It also performs any necessary post-processing.")
(define-public xmlsec
(package
(name "xmlsec")
(version "1.2.27")
(version "1.2.28")
(source (origin
(method url-fetch)
(uri (string-append "https://www.aleksey.com/xmlsec/download/"
"xmlsec1-" version ".tar.gz"))
(sha256
(base32
"1dlf263mvxj9n4lnhhjawc2hv45agrwjf8kxk7k8h9g9v2x5dmwp"))))
"1m12caglhyx08g8lh2sl3nkldlpryzdx2d572q73y3m33s0w9vhk"))))
(build-system gnu-build-system)
(propagated-inputs ; according to xmlsec1.pc
`(("libxml2" ,libxml2)

View File

@ -2915,8 +2915,8 @@ X server.")
(define-public xf86-video-intel
(let ((commit "33ee0c3b21ea279e08d0863fcb2e874f0974b00e")
(revision "12"))
(let ((commit "6afed33b2d673d88674f0c76efe500ae414e8e1b")
(revision "13"))
(package
(name "xf86-video-intel")
(version (git-version "2.99.917" revision commit))
@ -2929,7 +2929,7 @@ X server.")
(commit commit)))
(sha256
(base32
"1ryjaj52nd2fbrjf1id5fr5vndzvv287rggbj3lzhbwzxv52r0gj"))
"1s3fqlqzmql7s15m7qy21vai93n6q9f0ccpv0p353rwfx16mmf35"))
(file-name (git-file-name name version))))
(build-system gnu-build-system)
(inputs `(("mesa" ,mesa)
@ -6001,7 +6001,7 @@ basic eye-candy effects.")
(define-public xpra
(package
(name "xpra")
(version "2.5")
(version "2.5.1")
(source
(origin
(method url-fetch)
@ -6009,7 +6009,7 @@ basic eye-candy effects.")
version ".tar.xz"))
(sha256
(base32
"0q6c7ijgpp2wk6jlh0pzqki1w60i36wyl2zfwkg0gpdh40ypab3x"))))
"14l3bs7mlkd2lphjhnbw5dr95pg7x1k61s9wk35dra4li2xjy1lm"))))
(build-system python-build-system)
(inputs `(("ffmpeg" ,ffmpeg)
("flac" ,flac)
@ -6347,7 +6347,7 @@ output.")
(define-public console-setup
(package
(name "console-setup")
(version "1.190")
(version "1.191")
(source
(origin
(method git-fetch)
@ -6355,7 +6355,7 @@ output.")
(url "https://salsa.debian.org/installer-team/console-setup.git")
(commit version)))
(sha256
(base32 "0qklm9ww1wap2bs7hp31xkfjyhdrirg2mk4hiv7h6fiqckzmdwvd"))
(base32 "0wplhjadk530fqxhfnizil32rcvkcl5m2r18yskspcib53r4pmim"))
(file-name (git-file-name name version))))
(build-system gnu-build-system)
(arguments

View File

@ -42,17 +42,19 @@
nslcd-configuration?
nslcd-service-type))
(define-record-type* <fprintd-configuration>
fprintd-configuration make-fprintd-configuration
fprintd-configuration?
(ntp fprintd-configuration-fprintd
(default fprintd)))
(define-configuration fprintd-configuration
(fprintd (package fprintd)
"The fprintd package"))
(define (fprintd-dbus-service config)
(list (fprintd-configuration-fprintd config)))
(define fprintd-service-type
(service-type (name 'fprintd)
(extensions
(list (service-extension dbus-root-service-type
list)))
fprintd-dbus-service)))
(default-value (fprintd-configuration))
(description
"Run fprintd, a fingerprint management daemon.")))

View File

@ -1,5 +1,5 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2013, 2014, 2015, 2016, 2018 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2013, 2014, 2015, 2016, 2018, 2019 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2017 Clément Lassieur <clement@lassieur.org>
;;; Copyright © 2018 Carlo Zancanaro <carlo@zancanaro.id.au>
;;;
@ -44,6 +44,7 @@
shepherd-service-provision
shepherd-service-canonical-name
shepherd-service-requirement
shepherd-service-one-shot?
shepherd-service-respawn?
shepherd-service-start
shepherd-service-stop
@ -59,7 +60,6 @@
%default-modules
shepherd-service-file
%containerized-shepherd-service
shepherd-service-lookup-procedure
shepherd-service-back-edges
@ -149,6 +149,8 @@ DEFAULT is given, use it as the service's default value."
(provision shepherd-service-provision) ;list of symbols
(requirement shepherd-service-requirement ;list of symbols
(default '()))
(one-shot? shepherd-service-one-shot? ;Boolean
(default #f))
(respawn? shepherd-service-respawn? ;Boolean
(default #t))
(start shepherd-service-start) ;g-expression (procedure)
@ -238,6 +240,11 @@ stored."
#:docstring '#$(shepherd-service-documentation service)
#:provides '#$(shepherd-service-provision service)
#:requires '#$(shepherd-service-requirement service)
;; The 'one-shot?' slot is new in Shepherd 0.6.0.
;; Older versions ignore it.
#:one-shot? '#$(shepherd-service-one-shot? service)
#:respawn? '#$(shepherd-service-respawn? service)
#:start #$(shepherd-service-start service)
#:stop #$(shepherd-service-stop service)
@ -338,21 +345,6 @@ symbols provided/required by a service."
(lambda (service)
(vhash-foldq* cons '() service edges)))
(define %containerized-shepherd-service
;; XXX: This service works around a bug in the Shepherd 0.5.0: shepherd
;; calls reboot(2) (via 'disable-reboot-on-ctrl-alt-del') when it starts,
;; but in a container that fails with EINVAL. This was fixed in Shepherd
;; commit 92e806bac1abaeeaf5d60f0ab50d1ae85ba6a62f.
(simple-service 'containerized-shepherd
shepherd-root-service-type
(list (shepherd-service
(provision '(containerized-shepherd))
(start #~(lambda ()
(set! (@@ (shepherd)
disable-reboot-on-ctrl-alt-del)
(const #t))
#t))))))
(define (shepherd-service-upgrade live target)
"Return two values: the subset of LIVE (a list of <live-service>) that needs
to be unloaded, and the subset of TARGET (a list of <shepherd-service>) that

View File

@ -160,7 +160,7 @@
(kernel operating-system-kernel ; package
(default linux-libre))
(kernel-arguments operating-system-user-kernel-arguments
(default '())) ; list of gexps/strings
(default '("quiet"))) ; list of gexps/strings
(bootloader operating-system-bootloader) ; <bootloader-configuration>
(label operating-system-label ; string
(thunked)

View File

@ -427,6 +427,12 @@ Access documentation at any time by pressing Alt-F2.\x1b[0m
(label (string-append "GNU Guix installation "
(package-version guix)))
;; XXX: The AMD Radeon driver is reportedly broken, which makes kmscon
;; non-functional:
;; <https://lists.gnu.org/archive/html/guix-devel/2019-03/msg00441.html>.
;; Thus, blacklist it.
(kernel-arguments '("quiet" "modprobe.blacklist=radeon"))
(file-systems
;; Note: the disk image build code overrides this root file system with
;; the appropriate one.

View File

@ -29,7 +29,6 @@
#:use-module (gnu build linux-container)
#:use-module (gnu services)
#:use-module (gnu services base)
#:use-module (gnu services shepherd)
#:use-module (gnu system)
#:use-module (gnu system file-systems)
#:export (system-container
@ -52,7 +51,7 @@ from OS that are needed on the bare metal and not in a container."
(let ((locale (operating-system-locale-directory os)))
(with-monad %store-monad
(return `(("locale" ,locale))))))
(append base (list %containerized-shepherd-service))))
base))
(define (containerized-operating-system os mappings)
"Return an operating system based on OS for use in a Linux container

View File

@ -323,6 +323,7 @@ accounts among ACCOUNTS+GROUPS."
(list (shepherd-service
(requirement '(file-systems))
(provision '(user-homes))
(one-shot? #t)
(modules '((gnu build activation)
(gnu system accounts)))
(start (with-imported-modules (source-module-closure
@ -332,9 +333,7 @@ accounts among ACCOUNTS+GROUPS."
(activate-user-home
(map sexp->user-account
(list #$@(map user-account->gexp accounts))))
#f))) ;stop
(stop #~(const #f))
(respawn? #f)
#t))) ;success
(documentation "Create user home directories."))))
(define (shells-file shells)

View File

@ -65,6 +65,62 @@ Return #false if it cannot be determined."
(setenv "GUIX_LOCPATH" (string-append locales "/lib/locale"))
#t)))
(define* (invoke-each commands
#:key (max-processes (current-processor-count))
report-progress)
"Run each command in COMMANDS in a separate process, using up to
MAX-PROCESSES processes in parallel. Call REPORT-PROGRESS at each step.
Raise an error if one of the processes exit with non-zero."
(define total
(length commands))
(define (wait-for-one-process)
(match (waitpid WAIT_ANY)
((_ . status)
(unless (zero? (status:exit-val status))
(error "process failed" status)))))
(define (fork-and-run-command command)
(match (primitive-fork)
(0
(dynamic-wind
(const #t)
(lambda ()
(apply execlp command))
(lambda ()
(primitive-exit 127))))
(pid
#t)))
(let loop ((commands commands)
(running 0)
(completed 0))
(match commands
(()
(or (zero? running)
(let ((running (- running 1))
(completed (+ completed 1)))
(wait-for-one-process)
(report-progress total completed)
(loop commands running completed))))
((command . rest)
(if (< running max-processes)
(let ((running (+ 1 running)))
(fork-and-run-command command)
(loop rest running completed))
(let ((running (- running 1))
(completed (+ completed 1)))
(wait-for-one-process)
(report-progress total completed)
(loop commands running completed)))))))
(define* (report-build-progress total completed
#:optional (log-port (current-error-port)))
"Report that COMPLETED out of TOTAL files have been completed."
(format log-port "compiling...\t~5,1f% of ~d files~%" ;FIXME: i18n
(* 100. (/ completed total)) total)
(force-output log-port))
(define* (build #:key outputs inputs native-inputs
(source-directory ".")
(compile-flags '())
@ -101,24 +157,30 @@ Return #false if it cannot be determined."
(match (getenv "GUILE_LOAD_COMPILED_PATH")
(#f "")
(path (string-append ":" path)))))
(for-each (lambda (file)
(let* ((go (string-append go-dir
(file-sans-extension file)
".go")))
;; Install source module.
(install-file (string-append source-directory "/" file)
(string-append module-dir
"/" (dirname file)))
;; Install and compile module.
(apply invoke guild "compile" "-L" source-directory
"-o" go
(string-append source-directory "/" file)
flags)))
(let ((source-files
(with-directory-excursion source-directory
(find-files "." scheme-file-regexp))))
(invoke-each
(map (lambda (file)
(cons* guild
"guild" "compile"
"-L" source-directory
"-o" (string-append go-dir
(file-sans-extension file)
".go")
(string-append source-directory "/" file)
flags))
source-files)
#:max-processes (parallel-job-count)
#:report-progress report-build-progress)
;; Arrange to strip SOURCE-DIRECTORY from file names.
(with-directory-excursion source-directory
(find-files "." scheme-file-regexp)))
(for-each
(lambda (file)
(install-file (string-append source-directory "/" file)
(string-append module-dir
"/" (dirname file))))
source-files))
#t))
(define* (install-documentation #:key outputs

View File

@ -52,6 +52,7 @@
channel-location
%default-channels
guix-channel?
channel-instance?
channel-instance-channel

View File

@ -33,7 +33,6 @@
%config-directory
%system
%libgcrypt
%libz
%gzip
%bzip2
@ -88,9 +87,6 @@
(define %system
"@guix_system@")
(define %libgcrypt
"@LIBGCRYPT@")
(define %libz
"@LIBZ@")

View File

@ -635,8 +635,7 @@ options handled by 'set-build-options-from-command-line', and listed in
(define %default-options
;; Alist of default option values.
`((system . ,(%current-system))
(build-mode . ,(build-mode normal))
`((build-mode . ,(build-mode normal))
(graft? . #t)
(substitutes? . #t)
(build-hook? . #t)
@ -729,8 +728,7 @@ must be one of 'package', 'all', or 'transitive'~%")
rest)))
(option '(#\s "system") #t #f
(lambda (opt name arg result)
(alist-cons 'system arg
(alist-delete 'system result eq?))))
(alist-cons 'system arg result)))
(option '("target") #t #f
(lambda (opt name arg result)
(alist-cons 'target arg
@ -811,56 +809,71 @@ build."
(cut package-cross-derivation <> <> triplet <>))))
(define src (assoc-ref opts 'source))
(define system (assoc-ref opts 'system))
(define graft? (assoc-ref opts 'graft?))
(define systems
(match (filter-map (match-lambda
(('system . system) system)
(_ #f))
opts)
(() (list (%current-system)))
(systems systems)))
(define things-to-build
(map (cut transform store <>)
(options->things-to-build opts)))
(define (compute-derivation obj system)
;; Compute the derivation of OBJ for SYSTEM.
(match obj
((? package? p)
(let ((p (or (and graft? (package-replacement p)) p)))
(match src
(#f
(list (package->derivation store p system)))
(#t
(match (package-source p)
(#f
(format (current-error-port)
(G_ "~a: warning: \
package '~a' has no source~%")
(location->string (package-location p))
(package-name p))
'())
(s
(list (package-source-derivation store s)))))
(proc
(map (cut package-source-derivation store <>)
(proc p))))))
((? derivation? drv)
(list drv))
((? procedure? proc)
(list (run-with-store store
(mbegin %store-monad
(set-guile-for-build (default-guile))
(proc))
#:system system)))
((? file-like? obj)
(list (run-with-store store
(lower-object obj system
#:target (assoc-ref opts 'target))
#:system system)))
((? gexp? gexp)
(list (run-with-store store
(mbegin %store-monad
(set-guile-for-build (default-guile))
(gexp->derivation "gexp" gexp
#:system system))
#:system system)))))
;; We may get 'unbound-variable' errors while evaluating the 'inputs' fields
;; of user packages. Since 'guix build' is the primary tool for people
;; testing new packages, report such errors gracefully.
(with-unbound-variable-handling
(parameterize ((%graft? graft?))
(append-map (match-lambda
((? package? p)
(let ((p (or (and graft? (package-replacement p)) p)))
(match src
(#f
(list (package->derivation store p system)))
(#t
(match (package-source p)
(#f
(format (current-error-port)
(G_ "~a: warning: \
package '~a' has no source~%")
(location->string (package-location p))
(package-name p))
'())
(s
(list (package-source-derivation store s)))))
(proc
(map (cut package-source-derivation store <>)
(proc p))))))
((? derivation? drv)
(list drv))
((? procedure? proc)
(list (run-with-store store
(mbegin %store-monad
(set-guile-for-build (default-guile))
(proc))
#:system system)))
((? file-like? obj)
(list (run-with-store store
(lower-object obj system
#:target (assoc-ref opts 'target))
#:system system)))
((? gexp? gexp)
(list (run-with-store store
(mbegin %store-monad
(set-guile-for-build (default-guile))
(gexp->derivation "gexp" gexp
#:system system))
#:system system))))
(map (cut transform store <>)
(options->things-to-build opts))))))
(append-map (lambda (system)
(append-map (cut compute-derivation <> system)
things-to-build))
systems))))
(define (show-build-log store file urls)
"Show the build log for FILE, falling back to remote logs from URLS if

View File

@ -45,7 +45,6 @@
#:use-module (guix cve)
#:use-module (gnu packages)
#:use-module (ice-9 match)
#:use-module (ice-9 receive)
#:use-module (ice-9 regex)
#:use-module (ice-9 format)
#:use-module (web client)
@ -796,10 +795,13 @@ descriptions maintained upstream."
(let ((uris (origin-uris origin)))
(for-each check-mirror-uri uris)))))
(define (check-github-url package)
(define* (check-github-url package #:key (timeout 3))
"Check whether PACKAGE uses source URLs that redirect to GitHub."
(define (follow-redirect uri)
(receive (response body) (http-head uri)
(define (follow-redirect url)
(let* ((uri (string->uri url))
(port (guix:open-connection-for-uri uri #:timeout timeout))
(response (http-head uri #:port port)))
(close-port port)
(case (response-code response)
((301 302)
(uri->string (assoc-ref (response-headers response) 'location)))

View File

@ -86,6 +86,8 @@ Download and deploy the latest version of Guix.\n"))
(display (G_ "
--branch=BRANCH download the tip of the specified BRANCH"))
(display (G_ "
-N, --news display news compared to the previous generation"))
(display (G_ "
-l, --list-generations[=PATTERN]
list generations matching PATTERN"))
(display (G_ "
@ -117,6 +119,9 @@ Download and deploy the latest version of Guix.\n"))
(lambda (opt name arg result)
(cons `(query list-generations ,(or arg ""))
result)))
(option '(#\N "news") #f #f
(lambda (opt name arg result)
(cons '(query display-news) result)))
(option '("url") #t #f
(lambda (opt name arg result)
(alist-cons 'repository-url arg
@ -162,25 +167,33 @@ Download and deploy the latest version of Guix.\n"))
(define indirect-root-added
(store-lift add-indirect-root))
(define (display-profile-news profile)
"Display what's up in PROFILE--new packages, and all that."
(define* (display-profile-news profile #:key concise?
current-is-newer?)
"Display what's up in PROFILE--new packages, and all that. If
CURRENT-IS-NEWER? is true, assume that the current process represents the
newest generation of PROFILE.x"
(match (memv (generation-number profile)
(reverse (profile-generations profile)))
((current previous _ ...)
(newline)
(let ((old (fold-available-packages
(lambda* (name version result
#:key supported? deprecated?
#:allow-other-keys)
(if (and supported? (not deprecated?))
(alist-cons name version result)
result))
'()))
(new (profile-package-alist
(generation-file-name profile current))))
(display-new/upgraded-packages old new
#:concise? #t
#:heading (G_ "New in this revision:\n"))))
(let ((these (fold-available-packages
(lambda* (name version result
#:key supported? deprecated?
#:allow-other-keys)
(if (and supported? (not deprecated?))
(alist-cons name version result)
result))
'()))
(those (profile-package-alist
(generation-file-name profile
(if current-is-newer?
previous
current)))))
(let ((old (if current-is-newer? those these))
(new (if current-is-newer? these those)))
(display-new/upgraded-packages old new
#:concise? concise?
#:heading
(G_ "New in this revision:\n")))))
(_ #t)))
(define* (build-and-install instances profile
@ -196,7 +209,8 @@ true, display what would be built without actually building it."
#:hooks %channel-profile-hooks
#:dry-run? dry-run?)
(munless dry-run?
(return (display-profile-news profile))
(return (newline))
(return (display-profile-news profile #:concise? #t))
(match (which "guix")
(#f (return #f))
(str
@ -394,9 +408,13 @@ display long package lists that would fill the user's screen."
column)
4))
(define concise/max-item-count
;; Maximum number of items to display when CONCISE? is true.
12)
(define list->enumeration
(if concise?
(lambda* (lst #:optional (max 12))
(lambda* (lst #:optional (max concise/max-item-count))
(if (> (length lst) max)
(string-append (string-join (take lst max) ", ")
", " (ellipsis))
@ -404,10 +422,13 @@ display long package lists that would fill the user's screen."
(cut string-join <> ", ")))
(let-values (((new upgraded) (new/upgraded-packages alist1 alist2)))
(define new-count (length new))
(define upgraded-count (length upgraded))
(unless (and (null? new) (null? upgraded))
(display heading))
(match (length new)
(match new-count
(0 #t)
(count
(format #t (N_ " ~h new package: ~a~%"
@ -415,14 +436,20 @@ display long package lists that would fill the user's screen."
count
(pretty (list->enumeration (sort (map first new) string<?))
30))))
(match (length upgraded)
(match upgraded-count
(0 #t)
(count
(format #t (N_ " ~h package upgraded: ~a~%"
" ~h packages upgraded: ~a~%" count)
count
(pretty (list->enumeration (sort upgraded string<?))
35))))))
35))))
(when (and concise?
(or (> new-count concise/max-item-count)
(> upgraded-count concise/max-item-count)))
(display-hint (G_ "Run @command{guix pull --news} to view the complete
list of package changes.")))))
(define (display-profile-content-diff profile gen1 gen2)
"Display the changes in PROFILE GEN2 compared to generation GEN1."
@ -462,7 +489,12 @@ display long package lists that would fill the user's screen."
(()
(exit 1))
((numbers ...)
(list-generations profile numbers)))))))))
(list-generations profile numbers)))))))
(('display-news)
;; Display profile news, with the understanding that this process
;; represents the newest generation.
(display-profile-news profile
#:current-is-newer? #t))))
(define (channel-list opts)
"Return the list of channels to use. If OPTS specify a channel file,
@ -502,24 +534,22 @@ Use '~/.config/guix/channels.scm' instead."))
(url (or (assoc-ref opts 'repository-url)
(environment-variable))))
(if (or ref url)
(match channels
((one)
;; When there's only one channel, apply '--url', '--commit', and
;; '--branch' to this specific channel.
(let ((url (or url (channel-url one))))
(list (match ref
(match (find guix-channel? channels)
((? channel? guix)
;; Apply '--url', '--commit', and '--branch' to the 'guix' channel.
(let ((url (or url (channel-url guix))))
(cons (match ref
(('commit . commit)
(channel (inherit one)
(channel (inherit guix)
(url url) (commit commit) (branch #f)))
(('branch . branch)
(channel (inherit one)
(channel (inherit guix)
(url url) (commit #f) (branch branch)))
(#f
(channel (inherit one) (url url)))))))
(_
;; Otherwise bail out.
(leave
(G_ "'--url', '--commit', and '--branch' are not applicable~%"))))
(channel (inherit guix) (url url))))
(remove guix-channel? channels))))
(#f ;no 'guix' channel, failure will ensue
channels))
channels)))
@ -531,11 +561,11 @@ Use '~/.config/guix/channels.scm' instead."))
(cache (string-append (cache-directory) "/pull"))
(channels (channel-list opts))
(profile (or (assoc-ref opts 'profile) %current-profile)))
(ensure-default-profile)
(cond ((assoc-ref opts 'query)
(process-query opts profile))
(else
(with-store store
(ensure-default-profile)
(with-status-verbosity (assoc-ref opts 'verbosity)
(parameterize ((%current-system (assoc-ref opts 'system))
(%graft? (assoc-ref opts 'graft?))

View File

@ -753,10 +753,6 @@ Info manual."
;;; Generating (guix config).
;;;
(define %dependency-variables
;; (guix config) variables corresponding to dependencies.
'(%libz %xz %gzip %bzip2))
(define %persona-variables
;; (guix config) variables that define Guix's persona.
'(%guix-package-name

File diff suppressed because it is too large Load Diff

View File

@ -15,12 +15,14 @@ gnu/installer/keymap.scm
gnu/installer/locale.scm
gnu/installer/newt.scm
gnu/installer/newt/ethernet.scm
gnu/installer/newt/final.scm
gnu/installer/newt/hostname.scm
gnu/installer/newt/keymap.scm
gnu/installer/newt/locale.scm
gnu/installer/newt/menu.scm
gnu/installer/newt/network.scm
gnu/installer/newt/page.scm
gnu/installer/newt/partition.scm
gnu/installer/newt/services.scm
gnu/installer/newt/timezone.scm
gnu/installer/newt/user.scm

File diff suppressed because it is too large Load Diff

View File

@ -44,6 +44,13 @@ guix build -e '(@@ (gnu packages bootstrap) %bootstrap-guile)'
guix build -e '(@@ (gnu packages bootstrap) %bootstrap-guile)'; \
then exit 1; fi )
# Passing one '-s' flag.
test `guix build sed -s x86_64-linux -d | wc -l` = 1
# Passing multiple '-s' flags.
all_systems="-s x86_64-linux -s i686-linux -s armhf-linux -s aarch64-linux"
test `guix build sed $all_systems -d | sort -u | wc -l` = 4
# Check --sources option with its arguments
module_dir="t-guix-build-$$"
mkdir "$module_dir"