me
/
guix
Archived
1
0
Fork 0

Merge branch 'master' into staging

master
Marius Bakke 2019-04-08 00:54:01 +02:00
commit ba00235a96
No known key found for this signature in database
GPG Key ID: A2A06DF2A33A54FA
103 changed files with 10964 additions and 2716 deletions

View File

@ -292,6 +292,7 @@ AUX_FILES = \
gnu/packages/aux-files/linux-libre/5.0-i686.conf \ gnu/packages/aux-files/linux-libre/5.0-i686.conf \
gnu/packages/aux-files/linux-libre/5.0-x86_64.conf \ gnu/packages/aux-files/linux-libre/5.0-x86_64.conf \
gnu/packages/aux-files/linux-libre/4.19-arm.conf \ gnu/packages/aux-files/linux-libre/4.19-arm.conf \
gnu/packages/aux-files/linux-libre/5.0-arm-veyron.conf \
gnu/packages/aux-files/linux-libre/4.19-arm64.conf \ gnu/packages/aux-files/linux-libre/4.19-arm64.conf \
gnu/packages/aux-files/linux-libre/4.19-i686.conf \ gnu/packages/aux-files/linux-libre/4.19-i686.conf \
gnu/packages/aux-files/linux-libre/4.19-x86_64.conf \ gnu/packages/aux-files/linux-libre/4.19-x86_64.conf \
@ -306,6 +307,7 @@ AUX_FILES = \
# Templates, examples. # Templates, examples.
EXAMPLES = \ EXAMPLES = \
gnu/system/examples/asus-c201.tmpl \
gnu/system/examples/bare-bones.tmpl \ gnu/system/examples/bare-bones.tmpl \
gnu/system/examples/beaglebone-black.tmpl \ gnu/system/examples/beaglebone-black.tmpl \
gnu/system/examples/desktop.tmpl \ gnu/system/examples/desktop.tmpl \

View File

@ -4557,9 +4557,11 @@ Run @var{command} within an isolated container. The current working
directory outside the container is mapped inside the container. directory outside the container is mapped inside the container.
Additionally, unless overridden with @code{--user}, a dummy home Additionally, unless overridden with @code{--user}, a dummy home
directory is created that matches the current user's home directory, and directory is created that matches the current user's home directory, and
@file{/etc/passwd} is configured accordingly. The spawned process runs @file{/etc/passwd} is configured accordingly.
as the current user outside the container, but has root privileges in
the context of the container. The spawned process runs as the current user outside the container. Inside
the container, it has the same UID and GID as the current user, unless
@option{--user} is passed (see below.)
@item --network @item --network
@itemx -N @itemx -N
@ -4587,8 +4589,9 @@ the environment.
@itemx -u @var{user} @itemx -u @var{user}
For containers, use the username @var{user} in place of the current For containers, use the username @var{user} in place of the current
user. The generated @file{/etc/passwd} entry within the container will user. The generated @file{/etc/passwd} entry within the container will
contain the name @var{user}; the home directory will be contain the name @var{user}, the home directory will be
@file{/home/USER}; and no user GECOS data will be copied. @var{user} @file{/home/@var{user}}, and no user GECOS data will be copied. Furthermore,
the UID and GID inside the container are 1000. @var{user}
need not exist on the system. need not exist on the system.
Additionally, any shared or exposed path (see @code{--share} and Additionally, any shared or exposed path (see @code{--share} and
@ -10999,6 +11002,8 @@ special-case and is automatically added whether or not it is specified.
@node Keyboard Layout @node Keyboard Layout
@section Keyboard Layout @section Keyboard Layout
@cindex keyboard layout
@cindex keymap
To specify what each key of your keyboard does, you need to tell the operating To specify what each key of your keyboard does, you need to tell the operating
system what @dfn{keyboard layout} you want to use. The default, when nothing system what @dfn{keyboard layout} you want to use. The default, when nothing
is specified, is the US English QWERTY layout for 105-key PC keyboards. is specified, is the US English QWERTY layout for 105-key PC keyboards.
@ -11074,6 +11079,7 @@ Let's say you want your system to use the Turkish keyboard layout throughout
your system---bootloader, console, and Xorg. Here's what your system your system---bootloader, console, and Xorg. Here's what your system
configuration would look like: configuration would look like:
@findex set-xorg-configuration
@lisp @lisp
;; Using the Turkish layout for the bootloader, the console, ;; Using the Turkish layout for the bootloader, the console,
;; and for Xorg. ;; and for Xorg.
@ -11085,18 +11091,45 @@ configuration would look like:
(bootloader grub-efi-bootloader) (bootloader grub-efi-bootloader)
(target "/boot/efi") (target "/boot/efi")
(keyboard-layout keyboard-layout))) ;for GRUB (keyboard-layout keyboard-layout))) ;for GRUB
(services (modify-services %desktop-services (services (cons (set-xorg-configuration
(gdm-service-type config =>
(gdm-configuration
(inherit config)
(xorg-configuration
(xorg-configuration ;for Xorg (xorg-configuration ;for Xorg
(keyboard-layout keyboard-layout)))))))) (keyboard-layout keyboard-layout)))
%desktop-services)))
@end lisp @end lisp
In the example above, for GRUB and for Xorg, we just refer to the In the example above, for GRUB and for Xorg, we just refer to the
@code{keyboard-layout} field defined above, but we could just as well refer to @code{keyboard-layout} field defined above, but we could just as well refer to
a different layout. a different layout. The @code{set-xorg-configuration} procedure communicates
the desired Xorg configuration to the graphical log-in manager, by default
GDM.
We've discussed how to specify the @emph{default} keyboard layout of your
system when it starts, but you can also adjust it at run time:
@itemize
@item
If you're using GNOME, its settings panel has a ``Region & Language'' entry
where you can select one or more keyboard layouts.
@item
Under Xorg, the @command{setxkbmap} command (from the same-named package)
allows you to change the current layout. For example, this is how you would
change the layout to US Dvorak:
@example
setxkbmap us dvorak
@end example
@item
The @code{loadkeys} command changes the keyboard layout in effect in the Linux
console. However, note that @code{loadkeys} does @emph{not} use the XKB
keyboard layout categorization described above. The command below loads the
French bépo layout:
@example
loadkeys fr-bepo
@end example
@end itemize
@node Locales @node Locales
@section Locales @section Locales
@ -11990,29 +12023,6 @@ This is the name of the file where some random bytes are saved by
It defaults to @file{/var/lib/random-seed}. It defaults to @file{/var/lib/random-seed}.
@end defvr @end defvr
@cindex keymap
@cindex keyboard
@deffn {Scheme Procedure} console-keymap-service @var{files} ...
@cindex keyboard layout
Return a service to load console keymaps from @var{files} using
@command{loadkeys} command. Most likely, you want to load some default
keymap, which can be done like this:
@example
(console-keymap-service "dvorak")
@end example
Or, for example, for a Swedish keyboard, you may need to combine
the following keymaps:
@example
(console-keymap-service "se-lat6" "se-fi-lat6")
@end example
Also you can specify a full file name (or file names) of your keymap(s).
See @code{man loadkeys} for details.
@end deffn
@cindex mouse @cindex mouse
@cindex gpm @cindex gpm
@defvr {Scheme Variable} gpm-service-type @defvr {Scheme Variable} gpm-service-type
@ -13563,6 +13573,16 @@ default is @code{-nolisten tcp}.
@end table @end table
@end deftp @end deftp
@deffn {Scheme Procedure} set-xorg-configuration @var{config} @
[@var{login-manager-service-type}]
Tell the log-in manager (of type @var{login-manager-service-type}) to use
@var{config}, an <xorg-configuration> record.
Since the Xorg configuration is embedded in the log-in manager's
configuration---e.g., @code{gdm-configuration}---this procedure provides a
shorthand to set the Xorg configuration.
@end deffn
@deffn {Scheme Procedure} xorg-start-command [@var{config}] @deffn {Scheme Procedure} xorg-start-command [@var{config}]
Return a @code{startx} script in which the modules, fonts, etc. specified Return a @code{startx} script in which the modules, fonts, etc. specified
in @var{config}, are available. The result should be used in place of in @var{config}, are available. The result should be used in place of
@ -16539,6 +16559,36 @@ the @code{operating-system}'s @code{user-accounts} in order to deliver
the @code{postmaster} mail to @code{bob} (which subsequently would the @code{postmaster} mail to @code{bob} (which subsequently would
deliver mail to @code{bob@@example.com} and @code{bob@@example2.com}). deliver mail to @code{bob@@example.com} and @code{bob@@example2.com}).
@subsubheading GNU Mailutils IMAP4 Daemon
@cindex GNU Mailutils IMAP4 Daemon
@deffn {Scheme Variable} imap4d-service-type
This is the type of the GNU Mailutils IMAP4 Daemon (@pxref{imap4d,,,
mailutils, GNU Mailutils Manual}), whose value should be an
@code{imap4d-configuration} object as in this example:
@example
(service imap4d-service-type
(imap4d-configuration
(config-file (local-file "imap4d.conf"))))
@end example
@end deffn
@deftp {Data Type} imap4d-configuration
Data type representing the configuration of @command{imap4d}.
@table @asis
@item @code{package} (default: @code{mailutils})
The package that provides @command{imap4d}.
@item @code{config-file} (default: @code{%default-imap4d-config-file})
File-like object of the configuration file to use, by default it will listen
on TCP port 143 of @code{localhost}. @xref{Conf-imap4d,,, mailutils, GNU
Mailutils Manual}, for details.
@end table
@end deftp
@node Messaging Services @node Messaging Services
@subsection Messaging Services @subsection Messaging Services

View File

@ -0,0 +1,107 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2019 Timothy Sample <samplet@ngyro.com>
;;;
;;; This file is part of GNU Guix.
;;;
;;; GNU Guix is free software; you can redistribute it and/or modify it
;;; under the terms of the GNU General Public License as published by
;;; the Free Software Foundation; either version 3 of the License, or (at
;;; your option) any later version.
;;;
;;; GNU Guix is distributed in the hope that it will be useful, but
;;; WITHOUT ANY WARRANTY; without even the implied warranty of
;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
;;; GNU General Public License for more details.
;;;
;;; You should have received a copy of the GNU General Public License
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
(define-module (gnu bootloader depthcharge)
#:use-module (gnu bootloader extlinux)
#:use-module (gnu bootloader)
#:use-module (gnu packages bootloaders)
#:use-module (guix gexp)
#:use-module (guix utils)
#:use-module (ice-9 match)
#:export (depthcharge-bootloader))
(define (signed-kernel kernel kernel-arguments initrd)
(define builder
(with-imported-modules '((guix build utils))
#~(begin
(use-modules (guix build utils)
(ice-9 binary-ports)
(rnrs bytevectors))
(set-path-environment-variable "PATH" '("bin") (list #$dtc))
;; TODO: These files have to be writable, so we copy them.
;; This can probably be fixed by using a ".its" file, just
;; be careful not to break initrd loading.
(copy-file #$kernel "zImage")
(chmod "zImage" #o755)
(copy-file (string-append (dirname #$kernel) "/lib/dtbs/"
"rk3288-veyron-speedy.dtb")
"rk3288-veyron-speedy.dtb")
(chmod "rk3288-veyron-speedy.dtb" #o644)
(copy-file #$initrd "initrd")
(chmod "initrd" #o644)
(invoke (string-append #$u-boot-tools "/bin/mkimage")
"-D" "-I dts -O dtb -p 2048"
"-f" "auto"
"-A" "arm"
"-O" "linux"
"-T" "kernel"
"-C" "None"
"-d" "zImage"
"-a" "0"
"-b" "rk3288-veyron-speedy.dtb"
"-i" "initrd"
"image.itb")
(call-with-output-file "bootloader.bin"
(lambda (port)
(put-bytevector port (make-bytevector 512 0))))
(with-output-to-file "kernel-arguments"
(lambda ()
(display (string-join (list #$@kernel-arguments)))))
(invoke (string-append #$vboot-utils "/bin/vbutil_kernel")
"--pack" #$output
"--version" "1"
"--vmlinuz" "image.itb"
"--arch" "arm"
"--keyblock" (string-append #$vboot-utils
"/share/vboot-utils/devkeys/"
"kernel.keyblock")
"--signprivate" (string-append #$vboot-utils
"/share/vboot-utils/devkeys/"
"kernel_data_key.vbprivk")
"--config" "kernel-arguments"
"--bootloader" "bootloader.bin"))))
(computed-file "vmlinux.kpart" builder))
(define* (depthcharge-configuration-file config entries
#:key
(system (%current-system))
(old-entries '()))
(match entries
((entry)
(let ((kernel (menu-entry-linux entry))
(kernel-arguments (menu-entry-linux-arguments entry))
(initrd (menu-entry-initrd entry)))
;; XXX: Make this a symlink.
(signed-kernel kernel kernel-arguments initrd)))
(_ (error "Too many bootloader menu entries!"))))
(define install-depthcharge
#~(lambda (bootloader device mount-point)
(let ((kpart (string-append mount-point
"/boot/depthcharge/vmlinux.kpart")))
(write-file-on-device kpart (stat:size (stat kpart)) device 0))))
(define depthcharge-bootloader
(bootloader
(name 'depthcharge)
(package #f)
(installer install-depthcharge)
(configuration-file "/boot/depthcharge/vmlinux.kpart")
(configuration-file-generator depthcharge-configuration-file)))

View File

@ -1,6 +1,6 @@
;;; GNU Guix --- Functional package management for GNU ;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2015 David Thompson <davet@gnu.org> ;;; Copyright © 2015 David Thompson <davet@gnu.org>
;;; Copyright © 2017, 2018 Ludovic Courtès <ludo@gnu.org> ;;; Copyright © 2017, 2018, 2019 Ludovic Courtès <ludo@gnu.org>
;;; ;;;
;;; This file is part of GNU Guix. ;;; This file is part of GNU Guix.
;;; ;;;
@ -168,9 +168,12 @@ for the process."
(umount "real-root" MNT_DETACH) (umount "real-root" MNT_DETACH)
(rmdir "real-root"))) (rmdir "real-root")))
(define (initialize-user-namespace pid host-uids) (define* (initialize-user-namespace pid host-uids
#:key (guest-uid 0) (guest-gid 0))
"Configure the user namespace for PID. HOST-UIDS specifies the number of "Configure the user namespace for PID. HOST-UIDS specifies the number of
host user identifiers to map into the user namespace." host user identifiers to map into the user namespace. GUEST-UID and GUEST-GID
specify the first UID (respectively GID) that host UIDs (respectively GIDs)
map to in the namespace."
(define proc-dir (define proc-dir
(string-append "/proc/" (number->string pid))) (string-append "/proc/" (number->string pid)))
@ -191,10 +194,10 @@ host user identifiers to map into the user namespace."
;; within the container. ;; within the container.
(call-with-output-file (scope "/uid_map") (call-with-output-file (scope "/uid_map")
(lambda (port) (lambda (port)
(format port "0 ~d ~d" uid host-uids))) (format port "~d ~d ~d" guest-uid uid host-uids)))
(call-with-output-file (scope "/gid_map") (call-with-output-file (scope "/gid_map")
(lambda (port) (lambda (port)
(format port "0 ~d ~d" gid host-uids))))) (format port "~d ~d ~d" guest-gid gid host-uids)))))
(define (namespaces->bit-mask namespaces) (define (namespaces->bit-mask namespaces)
"Return the number suitable for the 'flags' argument of 'clone' that "Return the number suitable for the 'flags' argument of 'clone' that
@ -210,13 +213,17 @@ corresponds to the symbols in NAMESPACES."
('net CLONE_NEWNET)) ('net CLONE_NEWNET))
namespaces))) namespaces)))
(define (run-container root mounts namespaces host-uids thunk) (define* (run-container root mounts namespaces host-uids thunk
#:key (guest-uid 0) (guest-gid 0))
"Run THUNK in a new container process and return its PID. ROOT specifies "Run THUNK in a new container process and return its PID. ROOT specifies
the root directory for the container. MOUNTS is a list of <file-system> the root directory for the container. MOUNTS is a list of <file-system>
objects that specify file systems to mount inside the container. NAMESPACES objects that specify file systems to mount inside the container. NAMESPACES
is a list of symbols that correspond to the possible Linux namespaces: mnt, is a list of symbols that correspond to the possible Linux namespaces: mnt,
ipc, uts, user, and net. HOST-UIDS specifies the number of ipc, uts, user, and net.
host user identifiers to map into the user namespace."
HOST-UIDS specifies the number of host user identifiers to map into the user
namespace. GUEST-UID and GUEST-GID specify the first UID (respectively GID)
that host UIDs (respectively GIDs) map to in the namespace."
;; The parent process must initialize the user namespace for the child ;; The parent process must initialize the user namespace for the child
;; before it can boot. To negotiate this, a pipe is used such that the ;; before it can boot. To negotiate this, a pipe is used such that the
;; child process blocks until the parent writes to it. ;; child process blocks until the parent writes to it.
@ -254,7 +261,9 @@ host user identifiers to map into the user namespace."
(pid (pid
(close-port child) (close-port child)
(when (memq 'user namespaces) (when (memq 'user namespaces)
(initialize-user-namespace pid host-uids)) (initialize-user-namespace pid host-uids
#:guest-uid guest-uid
#:guest-gid guest-gid))
;; TODO: Initialize cgroups. ;; TODO: Initialize cgroups.
(write 'ready parent) (write 'ready parent)
(newline parent) (newline parent)
@ -271,23 +280,30 @@ host user identifiers to map into the user namespace."
#f))))))))) #f)))))))))
(define* (call-with-container mounts thunk #:key (namespaces %namespaces) (define* (call-with-container mounts thunk #:key (namespaces %namespaces)
(host-uids 1)) (host-uids 1) (guest-uid 0) (guest-gid 0))
"Run THUNK in a new container process and return its exit status. "Run THUNK in a new container process and return its exit status.
MOUNTS is a list of <file-system> objects that specify file systems to mount MOUNTS is a list of <file-system> objects that specify file systems to mount
inside the container. NAMESPACES is a list of symbols corresponding to inside the container. NAMESPACES is a list of symbols corresponding to
the identifiers for Linux namespaces: mnt, ipc, uts, pid, user, and net. By the identifiers for Linux namespaces: mnt, ipc, uts, pid, user, and net. By
default, all namespaces are used. HOST-UIDS is the number of host user default, all namespaces are used.
identifiers to map into the container's user namespace, if there is one. By
default, only a single uid/gid, that of the current user, is mapped into the HOST-UIDS is the number of host user identifiers to map into the container's
container. The host user that creates the container is the root user (uid/gid user namespace, if there is one. By default, only a single uid/gid, that of
0) within the container. Only root can map more than a single uid/gid. the current user, is mapped into the container. The host user that creates
the container is the root user (uid/gid 0) within the container. Only root
can map more than a single uid/gid.
GUEST-UID and GUEST-GID specify the first UID (respectively GID) that host
UIDs (respectively GIDs) map to in the namespace.
Note that if THUNK needs to load any additional Guile modules, the relevant Note that if THUNK needs to load any additional Guile modules, the relevant
module files must be present in one of the mappings in MOUNTS and the Guile module files must be present in one of the mappings in MOUNTS and the Guile
load path must be adjusted as needed." load path must be adjusted as needed."
(call-with-temporary-directory (call-with-temporary-directory
(lambda (root) (lambda (root)
(let ((pid (run-container root mounts namespaces host-uids thunk))) (let ((pid (run-container root mounts namespaces host-uids thunk
#:guest-uid guest-uid
#:guest-gid guest-gid)))
;; Catch SIGINT and kill the container process. ;; Catch SIGINT and kill the container process.
(sigaction SIGINT (sigaction SIGINT
(lambda (signum) (lambda (signum)

View File

@ -174,14 +174,6 @@ selected keymap."
"/share/zoneinfo/zone.tab"))) "/share/zoneinfo/zone.tab")))
#~(lambda (current-installer) #~(lambda (current-installer)
(list (list
;; Welcome the user and ask him to choose between manual
;; installation and graphical install.
(installer-step
(id 'welcome)
(compute (lambda _
((installer-welcome-page current-installer)
#$(local-file "installer/aux-files/logo.txt")))))
;; Ask the user to choose a locale among those supported by ;; Ask the user to choose a locale among those supported by
;; the glibc. Install the selected locale right away, so that ;; the glibc. Install the selected locale right away, so that
;; the user may benefit from any available translation for the ;; the user may benefit from any available translation for the
@ -193,6 +185,14 @@ selected keymap."
(#$locale-step current-installer))) (#$locale-step current-installer)))
(configuration-formatter locale->configuration)) (configuration-formatter locale->configuration))
;; Welcome the user and ask them to choose between manual
;; installation and graphical install.
(installer-step
(id 'welcome)
(compute (lambda _
((installer-welcome-page current-installer)
#$(local-file "installer/aux-files/logo.txt")))))
;; Ask the user to select a timezone under glibc format. ;; Ask the user to select a timezone under glibc format.
(installer-step (installer-step
(id 'timezone) (id 'timezone)
@ -256,8 +256,7 @@ selected keymap."
(description (G_ "Services")) (description (G_ "Services"))
(compute (lambda _ (compute (lambda _
((installer-services-page current-installer)))) ((installer-services-page current-installer))))
(configuration-formatter (configuration-formatter system-services->configuration))
desktop-environments->configuration))
(installer-step (installer-step
(id 'final) (id 'final)

View File

@ -1,5 +1,6 @@
;;; GNU Guix --- Functional package management for GNU ;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2018 Mathieu Othacehe <m.othacehe@gmail.com> ;;; Copyright © 2018 Mathieu Othacehe <m.othacehe@gmail.com>
;;; Copyright © 2019 Ludovic Courtès <ludo@gnu.org>
;;; ;;;
;;; This file is part of GNU Guix. ;;; This file is part of GNU Guix.
;;; ;;;
@ -69,6 +70,24 @@
(codeset . ,(match:substring matches 5)) (codeset . ,(match:substring matches 5))
(modifier . ,(match:substring matches 7))))) (modifier . ,(match:substring matches 7)))))
(define (normalize-codeset codeset)
"Compute the \"normalized\" variant of CODESET."
;; info "(libc) Using gettextized software", for the algorithm used to
;; compute the normalized codeset.
(letrec-syntax ((-> (syntax-rules ()
((_ proc value)
(proc value))
((_ proc rest ...)
(proc (-> rest ...))))))
(-> (lambda (str)
(if (string-every char-set:digit str)
(string-append "iso" str)
str))
string-downcase
(lambda (str)
(string-filter char-set:letter+digit str))
codeset)))
(define (locale->locale-string locale) (define (locale->locale-string locale)
"Reverse operation of locale-string->locale." "Reverse operation of locale-string->locale."
(let ((language (locale-language locale)) (let ((language (locale-language locale))
@ -81,7 +100,7 @@
`("_" ,territory) `("_" ,territory)
'()) '())
,@(if codeset ,@(if codeset
`("." ,codeset) `("." ,(normalize-codeset codeset))
'()) '())
,@(if modifier ,@(if modifier
`("@" ,modifier) `("@" ,modifier)

View File

@ -33,14 +33,8 @@
(let ((title (G_ "Locale language"))) (let ((title (G_ "Locale language")))
(run-listbox-selection-page (run-listbox-selection-page
#:title title #:title title
#:info-text (G_ "Choose the locale's language to be used for the \ #:info-text (G_ "Choose the language to use for the \
installation process. A locale is a regional variant of your language \ installation process and for the installed system.")
encompassing number, date and currency format, among other details.
Based on the language you choose, you will possibly be asked to \
select a locale's territory, codeset and modifier in the next \
steps. The locale will also be used as the default one for the \
installed system.")
#:info-textbox-width 70 #:info-textbox-width 70
#:listbox-items languages #:listbox-items languages
#:listbox-item->text language->text #:listbox-item->text language->text
@ -56,8 +50,7 @@ installed system.")
(let ((title (G_ "Locale location"))) (let ((title (G_ "Locale location")))
(run-listbox-selection-page (run-listbox-selection-page
#:title title #:title title
#:info-text (G_ "Choose your locale's location. This is a shortlist of \ #:info-text (G_ "Choose a territory for this language.")
locations based on the language you selected.")
#:listbox-items territories #:listbox-items territories
#:listbox-item->text territory->text #:listbox-item->text territory->text
#:button-text (G_ "Back") #:button-text (G_ "Back")
@ -71,8 +64,7 @@ locations based on the language you selected.")
(let ((title (G_ "Locale codeset"))) (let ((title (G_ "Locale codeset")))
(run-listbox-selection-page (run-listbox-selection-page
#:title title #:title title
#:info-text (G_ "Choose your locale's codeset. If UTF-8 is available, \ #:info-text (G_ "Choose the locale encoding.")
it should be preferred.")
#:listbox-items codesets #:listbox-items codesets
#:listbox-item->text identity #:listbox-item->text identity
#:listbox-default-item "UTF-8" #:listbox-default-item "UTF-8"
@ -191,9 +183,11 @@ glibc locale string and return it."
;; narrow down the search of a locale. ;; narrow down the search of a locale.
(break-on-locale-found locales) (break-on-locale-found locales)
;; Otherwise, ask for a codeset. ;; Otherwise, choose a codeset.
(run-codeset-page (let ((codesets (delete-duplicates (map locale-codeset locales))))
(delete-duplicates (map locale-codeset locales))))))) (if (member "UTF-8" codesets)
"UTF-8" ;don't even ask
(run-codeset-page codesets)))))))
(installer-step (installer-step
(id 'modifier) (id 'modifier)
(compute (compute

View File

@ -59,7 +59,7 @@ Internet and return the selected technology. For now, only technologies with
(G_ "Internet access") (G_ "Internet access")
(G_ "Continue") (G_ "Continue")
(G_ "Exit") (G_ "Exit")
(G_ "The install process requires an internet access, but no \ (G_ "The install process requires Internet access but no \
network device were found. Do you want to continue anyway?")) network device were found. Do you want to continue anyway?"))
((1) (raise ((1) (raise
(condition (condition
@ -68,7 +68,7 @@ network device were found. Do you want to continue anyway?"))
(condition (condition
(&installer-step-abort))))) (&installer-step-abort)))))
(run-listbox-selection-page (run-listbox-selection-page
#:info-text (G_ "The install process requires an internet access.\ #:info-text (G_ "The install process requires Internet access.\
Please select a network device.") Please select a network device.")
#:title (G_ "Internet access") #:title (G_ "Internet access")
#:listbox-items items #:listbox-items items

View File

@ -1,5 +1,6 @@
;;; GNU Guix --- Functional package management for GNU ;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2018 Mathieu Othacehe <m.othacehe@gmail.com> ;;; Copyright © 2018 Mathieu Othacehe <m.othacehe@gmail.com>
;;; Copyright © 2019 Ludovic Courtès <ludo@gnu.org>
;;; ;;;
;;; This file is part of GNU Guix. ;;; This file is part of GNU Guix.
;;; ;;;
@ -32,11 +33,33 @@
environments." environments."
(run-checkbox-tree-page (run-checkbox-tree-page
#:info-text (G_ "Please select the desktop(s) environment(s) you wish to \ #:info-text (G_ "Please select the desktop(s) environment(s) you wish to \
install. If you select multiple desktops environments, we will be able to \ install. If you select multiple desktops environments, you will be able to \
choose the one to use on the log-in screen with F1.") choose the one to use on the log-in screen.")
#:title (G_ "Desktop environment") #:title (G_ "Desktop environment")
#:items %desktop-environments #:items (filter desktop-system-service? %system-services)
#:item->text desktop-environment-name #:item->text system-service-name ;no i18n for DE names
#:checkbox-tree-height 5
#:exit-button-callback-procedure
(lambda ()
(raise
(condition
(&installer-step-abort))))))
(define (run-networking-cbt-page network-management?)
"Run a page allowing the user to select networking services. When
NETWORK-MANAGEMENT? is true, include network management services like
NetworkManager."
(run-checkbox-tree-page
#:info-text (G_ "You can now select networking services to run on your \
system.")
#:title (G_ "Network service")
#:items (filter (let ((types (if network-management?
'(network-management networking)
'(networking))))
(lambda (service)
(memq (system-service-type service) types)))
%system-services)
#:item->text (compose G_ system-service-name)
#:checkbox-tree-height 5 #:checkbox-tree-height 5
#:exit-button-callback-procedure #:exit-button-callback-procedure
(lambda () (lambda ()
@ -45,4 +68,8 @@ choose the one to use on the log-in screen with F1.")
(&installer-step-abort)))))) (&installer-step-abort))))))
(define (run-services-page) (define (run-services-page)
(run-desktop-environments-cbt-page)) (let ((desktop (run-desktop-environments-cbt-page)))
;; When the user did not select any desktop services, and thus didn't get
;; '%desktop-services', offer network management services.
(append desktop
(run-networking-cbt-page (null? desktop)))))

View File

@ -95,9 +95,11 @@ installation and reboot."
(G_ "GNU Guix install") (G_ "GNU Guix install")
(G_ "Welcome to GNU Guix system installer! (G_ "Welcome to GNU Guix system installer!
Please note that the present graphical installer is still under heavy \ You will be guided through a graphical installation program.
development, so you might want to prefer using the shell based process. \
The documentation is accessible at any time by pressing CTRL-ALT-F2.") If you are familiar with GNU/Linux and you want tight control over \
the installation process, you can instead choose manual installation. \
Documentation is accessible at any time by pressing Ctrl-Alt-F2.")
logo logo
#:listbox-items #:listbox-items
`((,(G_ "Graphical install using a terminal based interface") `((,(G_ "Graphical install using a terminal based interface")

View File

@ -1,5 +1,6 @@
;;; GNU Guix --- Functional package management for GNU ;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2018 Mathieu Othacehe <m.othacehe@gmail.com> ;;; Copyright © 2018 Mathieu Othacehe <m.othacehe@gmail.com>
;;; Copyright © 2019 Ludovic Courtès <ludo@gnu.org>
;;; ;;;
;;; This file is part of GNU Guix. ;;; This file is part of GNU Guix.
;;; ;;;
@ -18,44 +19,89 @@
(define-module (gnu installer services) (define-module (gnu installer services)
#:use-module (guix records) #:use-module (guix records)
#:export (<desktop-environment> #:use-module (srfi srfi-1)
desktop-environment #:export (system-service?
make-desktop-environment system-service-name
desktop-environment-name system-service-type
desktop-environment-snippet system-service-snippet
%desktop-environments desktop-system-service?
desktop-environments->configuration)) networking-system-service?
(define-record-type* <desktop-environment> %system-services
desktop-environment make-desktop-environment system-services->configuration))
desktop-environment?
(name desktop-environment-name) ;string (define-record-type* <system-service>
(snippet desktop-environment-snippet)) ;symbol system-service make-system-service
system-service?
(name system-service-name) ;string
(type system-service-type) ;'desktop | 'networking
(snippet system-service-snippet)) ;sexp
;; This is the list of desktop environments supported as services. ;; This is the list of desktop environments supported as services.
(define %desktop-environments (define %system-services
(list (let-syntax ((desktop-environment (syntax-rules ()
(desktop-environment ((_ fields ...)
(name "GNOME") (system-service
(snippet '(service gnome-desktop-service-type))) (type 'desktop)
(desktop-environment fields ...))))
(name "Xfce") (G_ (syntax-rules () ;for xgettext
;; TODO: Use 'xfce-desktop-service-type' when the 'guix' package provides ((_ str) str))))
;; it with a default value. (list
(snippet '(xfce-desktop-service))) (desktop-environment
(desktop-environment (name "GNOME")
(name "MATE") (snippet '(service gnome-desktop-service-type)))
(snippet '(service mate-desktop-service-type))) (desktop-environment
(desktop-environment (name "Xfce")
(name "Enlightenment") ;; TODO: Use 'xfce-desktop-service-type' when the 'guix' package provides
(snippet '(service enlightenment-desktop-service-type))))) ;; it with a default value.
(snippet '(xfce-desktop-service)))
(desktop-environment
(name "MATE")
(snippet '(service mate-desktop-service-type)))
(desktop-environment
(name "Enlightenment")
(snippet '(service enlightenment-desktop-service-type)))
(define (desktop-environments->configuration desktop-environments) ;; Networking.
"Return the configuration field for DESKTOP-ENVIRONMENTS." (system-service
(let ((snippets (name (G_ "OpenSSH secure shell daemon (sshd)"))
(map desktop-environment-snippet desktop-environments))) (type 'networking)
`(,@(if (null? snippets) (snippet '(service openssh-service-type)))
'() (system-service
`((services (cons* ,@snippets (name (G_ "Tor anonymous network router"))
%desktop-services))))))) (type 'networking)
(snippet '(service tor-service-type)))
;; Network connectivity management.
(system-service
(name (G_ "NetworkManager network connection manager"))
(type 'network-management)
(snippet '(service network-manager-service-type)))
(system-service
(name (G_ "Connman network connection manager"))
(type 'network-management)
(snippet '(service connman-service-type)))
(system-service
(name (G_ "DHCP client (dynamic IP address assignment)"))
(type 'network-management)
(snippet '(service dhcp-client-service))))))
(define (desktop-system-service? service)
"Return true if SERVICE is a desktop environment service."
(eq? 'desktop (system-service-type service)))
(define (networking-system-service? service)
"Return true if SERVICE is a desktop environment service."
(eq? 'networking (system-service-type service)))
(define (system-services->configuration services)
"Return the configuration field for SERVICES."
(let* ((snippets (map system-service-snippet services))
(desktop? (find desktop-system-service? services))
(base (if desktop?
'%desktop-services
'%base-services)))
(if (null? snippets)
`((services ,base))
`((services (cons* ,@snippets ,base))))))

View File

@ -215,7 +215,7 @@ found in RESULTS."
'()))) '())))
steps)) steps))
(modules '((use-modules (gnu)) (modules '((use-modules (gnu))
(use-service-modules desktop)))) (use-service-modules desktop networking ssh))))
`(,@modules `(,@modules
() ()
(operating-system ,@configuration)))) (operating-system ,@configuration))))

View File

@ -46,6 +46,7 @@ GNU_SYSTEM_MODULES = \
%D%/bootloader/grub.scm \ %D%/bootloader/grub.scm \
%D%/bootloader/extlinux.scm \ %D%/bootloader/extlinux.scm \
%D%/bootloader/u-boot.scm \ %D%/bootloader/u-boot.scm \
%D%/bootloader/depthcharge.scm \
%D%/ci.scm \ %D%/ci.scm \
%D%/packages.scm \ %D%/packages.scm \
%D%/packages/abduco.scm \ %D%/packages/abduco.scm \
@ -230,6 +231,7 @@ GNU_SYSTEM_MODULES = \
%D%/packages/gxmessage.scm \ %D%/packages/gxmessage.scm \
%D%/packages/hardware.scm \ %D%/packages/hardware.scm \
%D%/packages/haskell.scm \ %D%/packages/haskell.scm \
%D%/packages/haskell-apps.scm \
%D%/packages/haskell-check.scm \ %D%/packages/haskell-check.scm \
%D%/packages/haskell-crypto.scm \ %D%/packages/haskell-crypto.scm \
%D%/packages/haskell-web.scm \ %D%/packages/haskell-web.scm \
@ -341,6 +343,7 @@ GNU_SYSTEM_MODULES = \
%D%/packages/ninja.scm \ %D%/packages/ninja.scm \
%D%/packages/node.scm \ %D%/packages/node.scm \
%D%/packages/noweb.scm \ %D%/packages/noweb.scm \
%D%/packages/nss.scm \
%D%/packages/ntp.scm \ %D%/packages/ntp.scm \
%D%/packages/nutrition.scm \ %D%/packages/nutrition.scm \
%D%/packages/nvi.scm \ %D%/packages/nvi.scm \
@ -583,9 +586,7 @@ GNU_SYSTEM_MODULES = \
%D%/tests/virtualization.scm \ %D%/tests/virtualization.scm \
%D%/tests/web.scm %D%/tests/web.scm
if ENABLE_INSTALLER INSTALLER_MODULES = \
GNU_SYSTEM_MODULES += \
%D%/installer.scm \ %D%/installer.scm \
%D%/installer/connman.scm \ %D%/installer/connman.scm \
%D%/installer/final.scm \ %D%/installer/final.scm \
@ -617,13 +618,19 @@ GNU_SYSTEM_MODULES += \
%D%/installer/newt/welcome.scm \ %D%/installer/newt/welcome.scm \
%D%/installer/newt/wifi.scm %D%/installer/newt/wifi.scm
# Always ship the installer modules but compile them only when
# ENABLE_INSTALLER is true.
if ENABLE_INSTALLER
GNU_SYSTEM_MODULES += $(INSTALLER_MODULES)
elif !ENABLE_INSTALLER
MODULES_NOT_COMPILED += $(INSTALLER_MODULES)
endif
installerdir = $(guilemoduledir)/%D%/installer installerdir = $(guilemoduledir)/%D%/installer
dist_installer_DATA = \ dist_installer_DATA = \
%D%/installer/aux-files/logo.txt \ %D%/installer/aux-files/logo.txt \
%D%/installer/aux-files/SUPPORTED %D%/installer/aux-files/SUPPORTED
endif ENABLE_INSTALLER
# Modules that do not need to be compiled. # Modules that do not need to be compiled.
MODULES_NOT_COMPILED += \ MODULES_NOT_COMPILED += \
%D%/build/shepherd.scm \ %D%/build/shepherd.scm \
@ -745,6 +752,7 @@ dist_patch_DATA = \
%D%/packages/patches/emacs-scheme-complete-scheme-r5rs-info.patch \ %D%/packages/patches/emacs-scheme-complete-scheme-r5rs-info.patch \
%D%/packages/patches/emacs-source-date-epoch.patch \ %D%/packages/patches/emacs-source-date-epoch.patch \
%D%/packages/patches/emacs-realgud-fix-configure-ac.patch \ %D%/packages/patches/emacs-realgud-fix-configure-ac.patch \
%D%/packages/patches/emacs-undohist-ignored.patch \
%D%/packages/patches/emacs-wordnut-require-adaptive-wrap.patch \ %D%/packages/patches/emacs-wordnut-require-adaptive-wrap.patch \
%D%/packages/patches/emacs-zones-called-interactively.patch \ %D%/packages/patches/emacs-zones-called-interactively.patch \
%D%/packages/patches/enlightenment-fix-setuid-path.patch \ %D%/packages/patches/enlightenment-fix-setuid-path.patch \
@ -927,6 +935,7 @@ dist_patch_DATA = \
%D%/packages/patches/kdbusaddons-kinit-file-name.patch \ %D%/packages/patches/kdbusaddons-kinit-file-name.patch \
%D%/packages/patches/khmer-use-libraries.patch \ %D%/packages/patches/khmer-use-libraries.patch \
%D%/packages/patches/libziparchive-add-includes.patch \ %D%/packages/patches/libziparchive-add-includes.patch \
%D%/packages/patches/localed-xorg-keyboard.patch \
%D%/packages/patches/kiki-level-selection-crash.patch \ %D%/packages/patches/kiki-level-selection-crash.patch \
%D%/packages/patches/kiki-makefile.patch \ %D%/packages/patches/kiki-makefile.patch \
%D%/packages/patches/kiki-missing-includes.patch \ %D%/packages/patches/kiki-missing-includes.patch \
@ -946,9 +955,9 @@ dist_patch_DATA = \
%D%/packages/patches/kobodeluxe-graphics-window-signed-char.patch \ %D%/packages/patches/kobodeluxe-graphics-window-signed-char.patch \
%D%/packages/patches/kodi-skip-test-449.patch \ %D%/packages/patches/kodi-skip-test-449.patch \
%D%/packages/patches/laby-make-install.patch \ %D%/packages/patches/laby-make-install.patch \
%D%/packages/patches/lcms-CVE-2018-16435.patch \
%D%/packages/patches/ldc-bootstrap-disable-tests.patch \ %D%/packages/patches/ldc-bootstrap-disable-tests.patch \
%D%/packages/patches/ldc-disable-phobos-tests.patch \ %D%/packages/patches/ldc-disable-phobos-tests.patch \
%D%/packages/patches/ledger-fix-uninitialized.patch \
%D%/packages/patches/liba52-enable-pic.patch \ %D%/packages/patches/liba52-enable-pic.patch \
%D%/packages/patches/liba52-link-with-libm.patch \ %D%/packages/patches/liba52-link-with-libm.patch \
%D%/packages/patches/liba52-set-soname.patch \ %D%/packages/patches/liba52-set-soname.patch \
@ -1084,6 +1093,7 @@ dist_patch_DATA = \
%D%/packages/patches/ngircd-handle-zombies.patch \ %D%/packages/patches/ngircd-handle-zombies.patch \
%D%/packages/patches/nss-increase-test-timeout.patch \ %D%/packages/patches/nss-increase-test-timeout.patch \
%D%/packages/patches/nss-pkgconfig.patch \ %D%/packages/patches/nss-pkgconfig.patch \
%D%/packages/patches/ntfs-3g-CVE-2019-9755.patch \
%D%/packages/patches/nvi-assume-preserve-path.patch \ %D%/packages/patches/nvi-assume-preserve-path.patch \
%D%/packages/patches/nvi-dbpagesize-binpower.patch \ %D%/packages/patches/nvi-dbpagesize-binpower.patch \
%D%/packages/patches/nvi-db4.patch \ %D%/packages/patches/nvi-db4.patch \

View File

@ -248,7 +248,7 @@ precision.")
(define-public giac-xcas (define-public giac-xcas
(package (package
(name "giac-xcas") (name "giac-xcas")
(version "1.5.0-43") (version "1.5.0-49")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
;; "~parisse/giac" is not used because the maintainer regularly ;; "~parisse/giac" is not used because the maintainer regularly
@ -260,7 +260,7 @@ precision.")
"source/giac_" version ".tar.gz")) "source/giac_" version ".tar.gz"))
(sha256 (sha256
(base32 (base32
"1j58cvpiddzxswfdh4ixyj1xsva7qwk8xjls29nqvryyykdfm4dp")))) "0f4pkand9vmqfayw18jm5qxbhcwi1405qfd7ibzh9lwzz6amkm3l"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(outputs '("out" "doc")) ;77MiB of documentation (outputs '("out" "doc")) ;77MiB of documentation
(arguments (arguments

View File

@ -1307,7 +1307,7 @@ patches that can be used with softsynths such as Timidity and WildMidi.")
(define-public guitarix (define-public guitarix
(package (package
(name "guitarix") (name "guitarix")
(version "0.37.3") (version "0.38.0")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append (uri (string-append
@ -1315,7 +1315,7 @@ patches that can be used with softsynths such as Timidity and WildMidi.")
version ".tar.xz")) version ".tar.xz"))
(sha256 (sha256
(base32 (base32
"1wfm8wrwrnqpb4ihy75n7l9i6vml536jlq9pdx2pblbc4ba3paac")))) "0nv5vm2q86lzsz42kl78jxm6w20al8r7qcnr5f057ria7f8fq2f7"))))
(build-system waf-build-system) (build-system waf-build-system)
(arguments (arguments
`(#:tests? #f ; no "check" target `(#:tests? #f ; no "check" target
@ -3693,7 +3693,7 @@ library.")
(define-public faudio (define-public faudio
(package (package
(name "faudio") (name "faudio")
(version "19.03") (version "19.04")
(source (source
(origin (origin
(method git-fetch) (method git-fetch)
@ -3702,7 +3702,7 @@ library.")
(commit version))) (commit version)))
(file-name (string-append name "-" version "-checkout")) (file-name (string-append name "-" version "-checkout"))
(sha256 (sha256
(base32 "0v5l67ixr5kd9jz5sza8xgzxamqnlgn3gs1q8gg6ir60g0jvzbd4")))) (base32 "00lqf8bjcwm4k8yky9jmqghkxijcm2lxspb9zyl1270yqmj05kiw"))))
(arguments (arguments
'(#:tests? #f ; No tests. '(#:tests? #f ; No tests.
#:configure-flags '("-DFFMPEG=ON"))) #:configure-flags '("-DFFMPEG=ON")))

File diff suppressed because it is too large Load Diff

View File

@ -32,6 +32,8 @@
#:use-module (gnu packages haskell) #:use-module (gnu packages haskell)
#:use-module (gnu packages image) #:use-module (gnu packages image)
#:use-module (gnu packages maths) #:use-module (gnu packages maths)
#:use-module (gnu packages netpbm)
#:use-module (gnu packages perl)
#:use-module (gnu packages pkg-config) #:use-module (gnu packages pkg-config)
#:use-module (gnu packages statistics) #:use-module (gnu packages statistics)
#:use-module (gnu packages web)) #:use-module (gnu packages web))
@ -776,6 +778,30 @@ datasets which are derived from the Allen Brain Atlas:
All datasets are restricted to protein coding genes.") All datasets are restricted to protein coding genes.")
(license license:gpl2+))) (license license:gpl2+)))
(define-public r-arrmdata
(package
(name "r-arrmdata")
(version "1.18.0")
(source (origin
(method url-fetch)
;; We cannot use bioconductor-uri here because this tarball is
;; located under "data/experiment/" instead of "bioc/".
(uri (string-append "https://www.bioconductor.org/packages/"
"release/data/experiment/src/contrib/"
"ARRmData_" version ".tar.gz"))
(sha256
(base32
"0r1y3zn7ly4k3ngx55vfavn9s6aidbddlv2fbmj7hj3hvpslmyly"))))
(properties
`((upstream-name . "ARRmData")))
(build-system r-build-system)
(home-page "https://www.bioconductor.org/packages/ARRmData/")
(synopsis "Example dataset for normalization of Illumina 450k methylation data")
(description
"This package provides raw beta values from 36 samples across 3 groups
from Illumina 450k methylation arrays.")
(license license:artistic2.0)))
(define-public r-hsmmsinglecell (define-public r-hsmmsinglecell
(package (package
(name "r-hsmmsinglecell") (name "r-hsmmsinglecell")
@ -1595,14 +1621,14 @@ genes or proteins in these datasets.")
(define-public r-inspect (define-public r-inspect
(package (package
(name "r-inspect") (name "r-inspect")
(version "1.12.1") (version "1.12.2")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (bioconductor-uri "INSPEcT" version)) (uri (bioconductor-uri "INSPEcT" version))
(sha256 (sha256
(base32 (base32
"07q5msw9rnamx957mbiawnv3p9kr5ahwawzvv9xzla7d3lkk62xp")))) "1ykkr15b4bc2carwppf9yxzpl2n6lqpc6z6i2qy37vc6xffzgdx4"))))
(properties `((upstream-name . "INSPEcT"))) (properties `((upstream-name . "INSPEcT")))
(build-system r-build-system) (build-system r-build-system)
(propagated-inputs (propagated-inputs
@ -2925,14 +2951,14 @@ profiles (GO and KEGG) of gene and gene clusters.")
(define-public r-mlinterfaces (define-public r-mlinterfaces
(package (package
(name "r-mlinterfaces") (name "r-mlinterfaces")
(version "1.62.0") (version "1.62.1")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (bioconductor-uri "MLInterfaces" version)) (uri (bioconductor-uri "MLInterfaces" version))
(sha256 (sha256
(base32 (base32
"12bgplyzfh0hkwmdp5w4cs5zw3ygdhzmiqzm8vhjyni6m9nrxwy8")))) "1h0x1p2h8x1h276wxx6kcnb4c4s5sglnmd58iigl81a224x8gxwp"))))
(properties `((upstream-name . "MLInterfaces"))) (properties `((upstream-name . "MLInterfaces")))
(build-system r-build-system) (build-system r-build-system)
(propagated-inputs (propagated-inputs
@ -4040,3 +4066,208 @@ chromatographically separated and single-spectra mass spectral data. It
imports from AIA/ANDI NetCDF, mzXML, mzData and mzML files. It preprocesses imports from AIA/ANDI NetCDF, mzXML, mzData and mzML files. It preprocesses
data for high-throughput, untargeted analyte profiling.") data for high-throughput, untargeted analyte profiling.")
(license license:gpl2+))) (license license:gpl2+)))
(define-public r-wrench
(package
(name "r-wrench")
(version "1.0.0")
(source
(origin
(method url-fetch)
(uri (bioconductor-uri "Wrench" version))
(sha256
(base32
"12gfdj2p52pah67bimz14xcwmcb4c2snjwswj0fns7v3v1h9rlqg"))))
(properties `((upstream-name . "Wrench")))
(build-system r-build-system)
(propagated-inputs
`(("r-limma" ,r-limma)
("r-locfit" ,r-locfit)
("r-matrixstats" ,r-matrixstats)))
(home-page "https://github.com/HCBravoLab/Wrench")
(synopsis "Wrench normalization for sparse count data")
(description
"Wrench is a package for normalization sparse genomic count data, like
that arising from 16s metagenomic surveys.")
(license license:artistic2.0)))
(define-public r-wiggleplotr
(package
(name "r-wiggleplotr")
(version "1.6.1")
(source
(origin
(method url-fetch)
(uri (bioconductor-uri "wiggleplotr" version))
(sha256
(base32
"12fhbskkjwv4d9bdy3gab8n9pcf7qpwiwgx0248as445vfw8dil3"))))
(build-system r-build-system)
(propagated-inputs
`(("r-assertthat" ,r-assertthat)
("r-cowplot" ,r-cowplot)
("r-dplyr" ,r-dplyr)
("r-genomeinfodb" ,r-genomeinfodb)
("r-genomicranges" ,r-genomicranges)
("r-ggplot2" ,r-ggplot2)
("r-iranges" ,r-iranges)
("r-purrr" ,r-purrr)
("r-rtracklayer" ,r-rtracklayer)
("r-s4vectors" ,r-s4vectors)))
(home-page "https://bioconductor.org/packages/wiggleplotr/")
(synopsis "Make read coverage plots from BigWig files")
(description
"This package provides tools to visualize read coverage from sequencing
experiments together with genomic annotations (genes, transcripts, peaks).
Introns of long transcripts can be rescaled to a fixed length for better
visualization of exonic read coverage.")
(license license:asl2.0)))
(define-public r-widgettools
(package
(name "r-widgettools")
(version "1.60.0")
(source
(origin
(method url-fetch)
(uri (bioconductor-uri "widgetTools" version))
(sha256
(base32
"0mz69pdr6q69avsvs6r5ncdkdmgwfislpil4v18dsflw4j454gwf"))))
(properties `((upstream-name . "widgetTools")))
(build-system r-build-system)
(home-page "https://bioconductor.org/packages/widgetTools/")
(synopsis "Tools for creating interactive tcltk widgets")
(description
"This packages contains tools to support the construction of tcltk
widgets in R.")
;; Any version of the LGPL.
(license license:lgpl3+)))
(define-public r-webbioc
(package
(name "r-webbioc")
(version "1.54.0")
(source
(origin
(method url-fetch)
(uri (bioconductor-uri "webbioc" version))
(sha256
(base32
"16n6wc9q51wfpmh9y77p53sqdqdd8pn50c67vf6h4n7gv5wgnpwi"))))
(build-system r-build-system)
(inputs
`(("netpbm" ,netpbm)
("perl" ,perl)))
(propagated-inputs
`(("r-affy" ,r-affy)
("r-annaffy" ,r-annaffy)
("r-biobase" ,r-biobase)
("r-biocmanager" ,r-biocmanager)
("r-gcrma" ,r-gcrma)
("r-multtest" ,r-multtest)
("r-qvalue" ,r-qvalue)
("r-vsn" ,r-vsn)))
(home-page "https://www.bioconductor.org/")
(synopsis "Bioconductor web interface")
(description
"This package provides an integrated web interface for doing microarray
analysis using several of the Bioconductor packages. It is intended to be
deployed as a centralized bioinformatics resource for use by many users.
Currently only Affymetrix oligonucleotide analysis is supported.")
(license license:gpl2+)))
(define-public r-zfpkm
(package
(name "r-zfpkm")
(version "1.4.1")
(source
(origin
(method url-fetch)
(uri (bioconductor-uri "zFPKM" version))
(sha256
(base32
"0rvfrjxxvfng9fxxn316gm96v4rahx62vlk3axr2bzjbi1r4s8v5"))))
(properties `((upstream-name . "zFPKM")))
(build-system r-build-system)
(propagated-inputs
`(("r-checkmate" ,r-checkmate)
("r-dplyr" ,r-dplyr)
("r-ggplot2" ,r-ggplot2)
("r-summarizedexperiment" ,r-summarizedexperiment)
("r-tidyr" ,r-tidyr)))
(home-page "https://github.com/ronammar/zFPKM/")
(synopsis "Functions to facilitate zFPKM transformations")
(description
"This is a package to perform the zFPKM transform on RNA-seq FPKM data.
This algorithm is based on the publication by Hart et al., 2013 (Pubmed ID
24215113).")
(license license:gpl3)))
(define-public r-rbowtie2
(package
(name "r-rbowtie2")
(version "1.4.0")
(source
(origin
(method url-fetch)
(uri (bioconductor-uri "Rbowtie2" version))
(sha256
(base32
"045cmfwqzcj4zn6r16hkpmr5sd5y0mxvrs5yynf460fdz2p418cr"))))
(properties `((upstream-name . "Rbowtie2")))
(build-system r-build-system)
(inputs
`(("zlib" ,zlib)))
(home-page "https://bioconductor.org/packages/Rbowtie2/")
(synopsis "R wrapper for Bowtie2 and AdapterRemoval")
(description
"This package provides an R wrapper of the popular @code{bowtie2}
sequencing reads aligner and @code{AdapterRemoval}, a convenient tool for
rapid adapter trimming, identification, and read merging.")
(license license:gpl3+)))
(define-public r-progeny
(package
(name "r-progeny")
(version "1.4.1")
(source
(origin
(method url-fetch)
(uri (bioconductor-uri "progeny" version))
(sha256
(base32
"02z09rbzi305jrwzai8zayxi82563lxcaldp4r9pw564qkbl7pk7"))))
(build-system r-build-system)
(propagated-inputs `(("r-biobase" ,r-biobase)))
(home-page "https://github.com/saezlab/progeny")
(synopsis "Pathway responsive gene activity inference")
(description
"This package provides a function to infer pathway activity from gene
expression. It contains the linear model inferred in the publication
\"Perturbation-response genes reveal signaling footprints in cancer gene
expression\".")
(license license:asl2.0)))
(define-public r-arrmnormalization
(package
(name "r-arrmnormalization")
(version "1.22.0")
(source
(origin
(method url-fetch)
(uri (bioconductor-uri "ARRmNormalization" version))
(sha256
(base32
"09wfd4vqfvmkpqn9dwqly1dz4h1ckh621jbwj1dab6q4z0dfmzmd"))))
(properties
`((upstream-name . "ARRmNormalization")))
(build-system r-build-system)
(propagated-inputs `(("r-arrmdata" ,r-arrmdata)))
(home-page "https://bioconductor.org/packages/ARRmNormalization/")
(synopsis "Adaptive robust regression normalization for methylation data")
(description
"This is a package to perform the @dfn{Adaptive Robust Regression
method} (ARRm) for the normalization of methylation data from the Illumina
Infinium HumanMethylation 450k assay.")
(license license:artistic2.0)))

View File

@ -8344,6 +8344,7 @@ paired-end data.")
(sha256 (sha256
(base32 (base32
"0ss5hcg2m7gjji6dd23zxa5bd5a7knwcnada4qs5q2l4clgk39ad")))) "0ss5hcg2m7gjji6dd23zxa5bd5a7knwcnada4qs5q2l4clgk39ad"))))
(properties `((upstream-name . "RCAS")))
(build-system r-build-system) (build-system r-build-system)
(propagated-inputs (propagated-inputs
`(("r-annotationdbi" ,r-annotationdbi) `(("r-annotationdbi" ,r-annotationdbi)
@ -9831,14 +9832,14 @@ originally made available by Holmes, Harris, and Quince, 2012, PLoS ONE 7(2):
(define-public r-ensembldb (define-public r-ensembldb
(package (package
(name "r-ensembldb") (name "r-ensembldb")
(version "2.6.7") (version "2.6.8")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (bioconductor-uri "ensembldb" version)) (uri (bioconductor-uri "ensembldb" version))
(sha256 (sha256
(base32 (base32
"1wqq0m1fgvgkzq5zr2s9cj2s7qkg9lx3dwwsqixzs5fn52p4dn7f")))) "0gijx2l2y00h6gfj3gfr7rd4vva6qf2vkfdfy5gdmvqlxy84ka38"))))
(build-system r-build-system) (build-system r-build-system)
(propagated-inputs (propagated-inputs
`(("r-annotationdbi" ,r-annotationdbi) `(("r-annotationdbi" ,r-annotationdbi)
@ -10157,14 +10158,14 @@ by Ernst and Kellis.")
(define-public r-ldblock (define-public r-ldblock
(package (package
(name "r-ldblock") (name "r-ldblock")
(version "1.12.0") (version "1.12.1")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (bioconductor-uri "ldblock" version)) (uri (bioconductor-uri "ldblock" version))
(sha256 (sha256
(base32 (base32
"0xbf4pmhrk5fnd1iz5wzjvdr75v114bwpznhcig4wiqmxc27sips")))) "01lf74pby7si2g3kgc10qzr6lkcbigqcgqs2j3anc38vzxv0zhwv"))))
(build-system r-build-system) (build-system r-build-system)
(propagated-inputs (propagated-inputs
`(("r-biocgenerics" ,r-biocgenerics) `(("r-biocgenerics" ,r-biocgenerics)
@ -12038,6 +12039,23 @@ graphs. This library makes it easy to work with @file{.loom} files for
single-cell RNA-seq data.") single-cell RNA-seq data.")
(license license:bsd-3))) (license license:bsd-3)))
;; pigx-scrnaseq does not work with the latest version of loompy.
(define-public python-loompy-for-pigx-scrnaseq
(package (inherit python-loompy)
(name "python-loompy")
(version "2.0.3")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/linnarsson-lab/loompy.git")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
"0pjyl532pl8sbv71yci6h0agchn0naw2qjcwj50n6afrsahbsag3"))))
;; There are none.
(arguments '(#:tests? #f))))
;; We cannot use the latest commit because it requires Java 9. ;; We cannot use the latest commit because it requires Java 9.
(define-public java-forester (define-public java-forester
(let ((commit "86b07efe302d5094b42deed9260f719a4c4ac2e6") (let ((commit "86b07efe302d5094b42deed9260f719a4c4ac2e6")
@ -12651,7 +12669,7 @@ expression report comparing samples in an easily configurable manner.")
(define-public pigx-chipseq (define-public pigx-chipseq
(package (package
(name "pigx-chipseq") (name "pigx-chipseq")
(version "0.0.31") (version "0.0.40")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append "https://github.com/BIMSBbioinfo/pigx_chipseq/" (uri (string-append "https://github.com/BIMSBbioinfo/pigx_chipseq/"
@ -12659,7 +12677,7 @@ expression report comparing samples in an easily configurable manner.")
"/pigx_chipseq-" version ".tar.gz")) "/pigx_chipseq-" version ".tar.gz"))
(sha256 (sha256
(base32 (base32
"0l3vd9xwqzap3mmyj8xwqp84kj7scbq308diqnwg2albphl75xqs")))) "0y9x62cfwzhsp82imnawyamxp58bcb00yjxdy44spylqnjdlsaj8"))))
(build-system gnu-build-system) (build-system gnu-build-system)
;; parts of the tests rely on access to the network ;; parts of the tests rely on access to the network
(arguments '(#:tests? #f)) (arguments '(#:tests? #f))
@ -12808,7 +12826,7 @@ methylation and segmentation.")
("python-pandas" ,python-pandas) ("python-pandas" ,python-pandas)
("python-magic" ,python-magic) ("python-magic" ,python-magic)
("python-numpy" ,python-numpy) ("python-numpy" ,python-numpy)
("python-loompy" ,python-loompy) ("python-loompy" ,python-loompy-for-pigx-scrnaseq)
("ghc-pandoc" ,ghc-pandoc) ("ghc-pandoc" ,ghc-pandoc)
("ghc-pandoc-citeproc" ,ghc-pandoc-citeproc) ("ghc-pandoc-citeproc" ,ghc-pandoc-citeproc)
("samtools" ,samtools) ("samtools" ,samtools)
@ -13301,9 +13319,6 @@ in RNA-seq data.")
(delete-file-recursively "scanpy/tests/notebooks") (delete-file-recursively "scanpy/tests/notebooks")
(delete-file "scanpy/tests/test_clustering.py") (delete-file "scanpy/tests/test_clustering.py")
;; TODO: No module named 'louvain'
(delete-file "scanpy/tests/test_rank_genes_groups_logreg.py")
;; TODO: I can't get the plotting tests to work, even with Xvfb. ;; TODO: I can't get the plotting tests to work, even with Xvfb.
(delete-file "scanpy/tests/test_plotting.py") (delete-file "scanpy/tests/test_plotting.py")
(delete-file "scanpy/tests/test_preprocessing.py") (delete-file "scanpy/tests/test_preprocessing.py")
@ -13316,18 +13331,19 @@ in RNA-seq data.")
#t))))) #t)))))
(propagated-inputs (propagated-inputs
`(("python-anndata" ,python-anndata) `(("python-anndata" ,python-anndata)
("python-h5py" ,python-h5py)
("python-igraph" ,python-igraph) ("python-igraph" ,python-igraph)
("python-numba" ,python-numba)
("python-joblib" ,python-joblib) ("python-joblib" ,python-joblib)
("python-louvain" ,python-louvain)
("python-matplotlib" ,python-matplotlib)
("python-natsort" ,python-natsort) ("python-natsort" ,python-natsort)
("python-networkx" ,python-networkx) ("python-networkx" ,python-networkx)
("python-statsmodels" ,python-statsmodels) ("python-numba" ,python-numba)
("python-scikit-learn" ,python-scikit-learn)
("python-matplotlib" ,python-matplotlib)
("python-pandas" ,python-pandas) ("python-pandas" ,python-pandas)
("python-scikit-learn" ,python-scikit-learn)
("python-scipy" ,python-scipy) ("python-scipy" ,python-scipy)
("python-seaborn" ,python-seaborn) ("python-seaborn" ,python-seaborn)
("python-h5py" ,python-h5py) ("python-statsmodels" ,python-statsmodels)
("python-tables" ,python-tables))) ("python-tables" ,python-tables)))
(native-inputs (native-inputs
`(("python-pytest" ,python-pytest))) `(("python-pytest" ,python-pytest)))

View File

@ -40,7 +40,6 @@
#:use-module (gnu packages gl) #:use-module (gnu packages gl)
#:use-module (gnu packages glib) #:use-module (gnu packages glib)
#:use-module (gnu packages gnome) #:use-module (gnu packages gnome)
#:use-module (gnu packages gnuzilla)
#:use-module (gnu packages gperf) #:use-module (gnu packages gperf)
#:use-module (gnu packages gtk) #:use-module (gnu packages gtk)
#:use-module (gnu packages icu4c) #:use-module (gnu packages icu4c)
@ -51,6 +50,7 @@
#:use-module (gnu packages kerberos) #:use-module (gnu packages kerberos)
#:use-module (gnu packages ninja) #:use-module (gnu packages ninja)
#:use-module (gnu packages node) #:use-module (gnu packages node)
#:use-module (gnu packages nss)
#:use-module (gnu packages pciutils) #:use-module (gnu packages pciutils)
#:use-module (gnu packages pkg-config) #:use-module (gnu packages pkg-config)
#:use-module (gnu packages pulseaudio) #:use-module (gnu packages pulseaudio)
@ -223,7 +223,7 @@ from forcing GEXP-PROMISE."
#:system system #:system system
#:guile-for-build guile))) #:guile-for-build guile)))
(define %chromium-version "73.0.3683.86") (define %chromium-version "73.0.3683.103")
(define %ungoogled-revision "4c7fb6d1a86602999f30b58ef8b331b2115c5ad8") (define %ungoogled-revision "4c7fb6d1a86602999f30b58ef8b331b2115c5ad8")
(define %debian-revision "debian/73.0.3683.75-1") (define %debian-revision "debian/73.0.3683.75-1")
(define package-revision "0") (define package-revision "0")
@ -246,7 +246,7 @@ from forcing GEXP-PROMISE."
%chromium-version ".tar.xz")) %chromium-version ".tar.xz"))
(sha256 (sha256
(base32 (base32
"18xzddqi8rgng5vksx23jaiv103prxc38pshwp702nfjfqap7fwy")))) "1bskjr7yiwvdab1b5mp36y6964xqpgks6dqazm4qifwqvqcw80pb"))))
(ungoogled-source (ungoogled-source
(origin (origin
(method git-fetch) (method git-fetch)

View File

@ -400,13 +400,13 @@ into a pipeline of data manipulation and visualisation.")
(define-public r-httpuv (define-public r-httpuv
(package (package
(name "r-httpuv") (name "r-httpuv")
(version "1.5.0") (version "1.5.1")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (cran-uri "httpuv" version)) (uri (cran-uri "httpuv" version))
(sha256 (sha256
(base32 (base32
"19m9514yj5sg0rz1zvi8w1z98srnrql4iirgr794fkaap6bs7i2f")))) "042piypg4c8sqrlcdl3dwajkafkbglsky3x7d0jpjv8s5wxnpfxm"))))
(build-system r-build-system) (build-system r-build-system)
(propagated-inputs (propagated-inputs
`(("r-bh" ,r-bh) `(("r-bh" ,r-bh)
@ -1485,14 +1485,14 @@ validation and filtering on the values, making options invisible or private.")
(define-public r-circlize (define-public r-circlize
(package (package
(name "r-circlize") (name "r-circlize")
(version "0.4.5") (version "0.4.6")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (cran-uri "circlize" version)) (uri (cran-uri "circlize" version))
(sha256 (sha256
(base32 (base32
"0qhn9jzw7gd0jp9rmqrlbmy5ql6hjsa68pkp0acfz1h215dl8ah9")))) "1yjnb88pnzk5c1p0vjxykc7cr3394ln5axviqcf12ajibvy8rj6f"))))
(build-system r-build-system) (build-system r-build-system)
(propagated-inputs (propagated-inputs
`(("r-colorspace" ,r-colorspace) `(("r-colorspace" ,r-colorspace)
@ -1905,14 +1905,14 @@ quantile mixture from L-moments and trimmed L-moments.")
(define-public r-distillery (define-public r-distillery
(package (package
(name "r-distillery") (name "r-distillery")
(version "1.0-4") (version "1.0-6")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (cran-uri "distillery" version)) (uri (cran-uri "distillery" version))
(sha256 (sha256
(base32 (base32
"1m0pgmlvk7bsb6q3kxagnq422babk61sf73naavac68v8x2q8fix")))) "1mi3ig9jq0kd7yrwc5m37lmrw04p1b4lirnbsxi10z3n5yay4429"))))
(build-system r-build-system) (build-system r-build-system)
(home-page "http://www.ral.ucar.edu/staff/ericg") (home-page "http://www.ral.ucar.edu/staff/ericg")
(synopsis "Functions for confidence intervals and object information") (synopsis "Functions for confidence intervals and object information")
@ -1926,19 +1926,18 @@ SpatialVx.")
(define-public r-extremes (define-public r-extremes
(package (package
(name "r-extremes") (name "r-extremes")
(version "2.0-9") (version "2.0-10")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (cran-uri "extRemes" version)) (uri (cran-uri "extRemes" version))
(sha256 (sha256
(base32 (base32
"0cpvcajk9xyy7662nqkyx333vrxpwsc5nmv0bfnhsbgijz5y0hvm")))) "08fj72gpq2d6695hbm3cgwgal64z009ykrirby7g6r0akfcsx5ic"))))
(properties `((upstream-name . "extRemes"))) (properties `((upstream-name . "extRemes")))
(build-system r-build-system) (build-system r-build-system)
(propagated-inputs (propagated-inputs
`(("r-car" ,r-car) `(("r-distillery" ,r-distillery)
("r-distillery" ,r-distillery)
("r-lmoments" ,r-lmoments))) ("r-lmoments" ,r-lmoments)))
(home-page "http://www.assessment.ucar.edu/toolkit/") (home-page "http://www.assessment.ucar.edu/toolkit/")
(synopsis "Extreme value analysis") (synopsis "Extreme value analysis")
@ -3618,14 +3617,14 @@ iVAT).")
(define-public r-xfun (define-public r-xfun
(package (package
(name "r-xfun") (name "r-xfun")
(version "0.5") (version "0.6")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (cran-uri "xfun" version)) (uri (cran-uri "xfun" version))
(sha256 (sha256
(base32 (base32
"1wkrapc490r9l9z6mz623zn9ijq64mckc17xg2s7n3s9yaxj98lb")))) "123wmnykmlq9prqx1g9ij9vyqx25pib2jnqjrwy39rfmzbsypbx3"))))
(build-system r-build-system) (build-system r-build-system)
(home-page "https://github.com/yihui/xfun") (home-page "https://github.com/yihui/xfun")
(synopsis "Miscellaneous functions") (synopsis "Miscellaneous functions")
@ -3751,14 +3750,14 @@ published results; and a routine for graphical display.")
(define-public r-network (define-public r-network
(package (package
(name "r-network") (name "r-network")
(version "1.14-377") (version "1.15")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (cran-uri "network" version)) (uri (cran-uri "network" version))
(sha256 (sha256
(base32 (base32
"0iiy5n17kysrdfs20zr7qald4lwkvws0axi1qkr8f7vzv7w04g01")))) "1cscw5978fyixhkicf06c4b2g1yf6gyi8vx86cz3dy75d41mrgjw"))))
(build-system r-build-system) (build-system r-build-system)
(propagated-inputs (propagated-inputs
`(("r-magrittr" ,r-magrittr) `(("r-magrittr" ,r-magrittr)
@ -5821,14 +5820,14 @@ other add-on packages.")
(define-public r-insight (define-public r-insight
(package (package
(name "r-insight") (name "r-insight")
(version "0.1.2") (version "0.2.0")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (cran-uri "insight" version)) (uri (cran-uri "insight" version))
(sha256 (sha256
(base32 (base32
"0cy00j4m9r690hrjdmv8wzwn8mbnkjd3g527nvsmid64h9jgks5f")))) "0fn9cd5qxqlpjv3d05mk66k5z5ll60x5la51mby5h7k4l6bqmsiz"))))
(build-system r-build-system) (build-system r-build-system)
(home-page "https://easystats.github.io/insight/") (home-page "https://easystats.github.io/insight/")
(synopsis "Easy access to model information for various model objects") (synopsis "Easy access to model information for various model objects")
@ -5953,21 +5952,21 @@ functions.")
(define-public r-flextable (define-public r-flextable
(package (package
(name "r-flextable") (name "r-flextable")
(version "0.5.1") (version "0.5.2")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (cran-uri "flextable" version)) (uri (cran-uri "flextable" version))
(sha256 (sha256
(base32 (base32
"0arxgal67ahsq8v0zbvc767qadn7lg3f7mmqa9gjjz6sri0y6gsx")))) "0sabdvkdlx5i1nr7nz68cappwsibzsjxpmiz3yp948ckbfmkdb27"))))
(build-system r-build-system) (build-system r-build-system)
(propagated-inputs (propagated-inputs
`(("r-data-table" ,r-data-table) `(("r-base64enc" ,r-base64enc)
("r-data-table" ,r-data-table)
("r-gdtools" ,r-gdtools) ("r-gdtools" ,r-gdtools)
("r-htmltools" ,r-htmltools) ("r-htmltools" ,r-htmltools)
("r-knitr" ,r-knitr) ("r-knitr" ,r-knitr)
("r-magick" ,r-magick)
("r-officer" ,r-officer) ("r-officer" ,r-officer)
("r-rlang" ,r-rlang) ("r-rlang" ,r-rlang)
("r-rmarkdown" ,r-rmarkdown) ("r-rmarkdown" ,r-rmarkdown)
@ -7512,14 +7511,14 @@ observation.")
(define-public r-sandwich (define-public r-sandwich
(package (package
(name "r-sandwich") (name "r-sandwich")
(version "2.5-0") (version "2.5-1")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (cran-uri "sandwich" version)) (uri (cran-uri "sandwich" version))
(sha256 (sha256
(base32 (base32
"168kq5kk34xbhfsxsanard9zriyp6cw0s09ralzb57kk42pl9hbc")))) "1mk685b9wq7k566pbml52rj96i5h6b3vf215k9picgmq296nzvyv"))))
(build-system r-build-system) (build-system r-build-system)
(propagated-inputs (propagated-inputs
`(("r-zoo" ,r-zoo))) `(("r-zoo" ,r-zoo)))
@ -9212,14 +9211,14 @@ definiteness of a matrix.")
(define-public r-rspectra (define-public r-rspectra
(package (package
(name "r-rspectra") (name "r-rspectra")
(version "0.13-1") (version "0.14-0")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (cran-uri "RSpectra" version)) (uri (cran-uri "RSpectra" version))
(sha256 (sha256
(base32 (base32
"1sw80chwyyjzf5px278l6xmp94yhwrlj5xh8d3wlw3dnvdkycca7")))) "12w5vnz39gyciza0fl7fw4f9i9kjw763h3mvk1sxd97c5dsn26jg"))))
(properties `((upstream-name . "RSpectra"))) (properties `((upstream-name . "RSpectra")))
(build-system r-build-system) (build-system r-build-system)
(propagated-inputs (propagated-inputs
@ -11883,14 +11882,14 @@ whole genome approach to detecting significant QTL in linkage maps.")
(define-public r-bedr (define-public r-bedr
(package (package
(name "r-bedr") (name "r-bedr")
(version "1.0.6") (version "1.0.7")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (cran-uri "bedr" version)) (uri (cran-uri "bedr" version))
(sha256 (sha256
(base32 (base32
"0q790695h8bls0qw284n1zn7lxzym1dnnj095fsbjga2p116z4yv")))) "0zpqvyjgwyqawxm8qrhcv8zq2b3yxgcqkkc87br29yrl7sjb8h6j"))))
(build-system r-build-system) (build-system r-build-system)
(propagated-inputs (propagated-inputs
`(("r-data-table" ,r-data-table) `(("r-data-table" ,r-data-table)
@ -12238,14 +12237,14 @@ datum transformations.")
(define-public r-spdep (define-public r-spdep
(package (package
(name "r-spdep") (name "r-spdep")
(version "1.0-2") (version "1.1-2")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (cran-uri "spdep" version)) (uri (cran-uri "spdep" version))
(sha256 (sha256
(base32 (base32
"1ciqn5xslm4ryad10nm6fqy1qhq3qhd4hx9bj94kphfm8x1zm7kg")))) "06mk81kc1ml2wjc8wwwgr0wasjcr4mwrxpfa8vfc373bmnha635s"))))
(build-system r-build-system) (build-system r-build-system)
(propagated-inputs (propagated-inputs
`(("r-boot" ,r-boot) `(("r-boot" ,r-boot)
@ -12700,14 +12699,14 @@ authoring books and technical documents with R Markdown.")
(define-public r-optparse (define-public r-optparse
(package (package
(name "r-optparse") (name "r-optparse")
(version "1.6.1") (version "1.6.2")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (cran-uri "optparse" version)) (uri (cran-uri "optparse" version))
(sha256 (sha256
(base32 (base32
"04vyb6dhcga30mvghsg1p052jmf69xqxkvh3hzqz7dscyppy76w1")))) "0zrp6jakjhawrwfri270ym83vj5a7nvjk0w6b41z41ahw2da99dm"))))
(build-system r-build-system) (build-system r-build-system)
(propagated-inputs (propagated-inputs
`(("r-getopt" ,r-getopt))) `(("r-getopt" ,r-getopt)))
@ -12878,14 +12877,14 @@ the corresponding outputs (tables and graphs).")
(define-public r-rjava (define-public r-rjava
(package (package
(name "r-rjava") (name "r-rjava")
(version "0.9-10") (version "0.9-11")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (cran-uri "rJava" version)) (uri (cran-uri "rJava" version))
(sha256 (sha256
(base32 (base32
"0y7yg70i3zwbwl4g36js4dqpl51cmwss5ymrsk24d1z07bflp4y9")))) "0s9cjy1wh7snmbqwznh8f1r4ipylr7mgda4a979z963a8lqy32n2"))))
(properties `((upstream-name . "rJava"))) (properties `((upstream-name . "rJava")))
(build-system r-build-system) (build-system r-build-system)
(arguments (arguments

View File

@ -48,24 +48,6 @@
#:use-module (gnu packages tls) #:use-module (gnu packages tls)
#:use-module (gnu packages web)) #:use-module (gnu packages web))
;; XXX A hidden special obsolete libssh2 for temporary use in the curl package.
;; <https://bugs.gnu.org/34927>
(define-public libssh2-1.8.0
(hidden-package
(package
(inherit libssh2)
(version "1.8.0")
(source (origin
(method url-fetch)
(uri (string-append
"https://www.libssh2.org/download/libssh2-"
version ".tar.gz"))
(sha256
(base32
"1m3n8spv79qhjq4yi0wgly5s5rc8783jb1pyra9bkx1md0plxwrr"))
(patches
(search-patches "libssh2-fix-build-failure-with-gcrypt.patch")))))))
(define-public curl (define-public curl
(package (package
(name "curl") (name "curl")

View File

@ -46,11 +46,11 @@
#:use-module (gnu packages glib) #:use-module (gnu packages glib)
#:use-module (gnu packages gnome) #:use-module (gnu packages gnome)
#:use-module (gnu packages gnupg) #:use-module (gnu packages gnupg)
#:use-module (gnu packages gnuzilla)
#:use-module (gnu packages gtk) #:use-module (gnu packages gtk)
#:use-module (gnu packages guile) #:use-module (gnu packages guile)
#:use-module (gnu packages linux) #:use-module (gnu packages linux)
#:use-module (gnu packages ncurses) #:use-module (gnu packages ncurses)
#:use-module (gnu packages nss)
#:use-module (gnu packages perl) #:use-module (gnu packages perl)
#:use-module (gnu packages pkg-config) #:use-module (gnu packages pkg-config)
#:use-module (gnu packages popt) #:use-module (gnu packages popt)

View File

@ -750,7 +750,7 @@ in certain cases. It also enables recursion for anonymous functions.")
(define-public emacs-xr (define-public emacs-xr
(package (package
(name "emacs-xr") (name "emacs-xr")
(version "1.9") (version "1.10")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
@ -758,7 +758,7 @@ in certain cases. It also enables recursion for anonymous functions.")
"https://elpa.gnu.org/packages/xr-" version ".tar")) "https://elpa.gnu.org/packages/xr-" version ".tar"))
(sha256 (sha256
(base32 (base32
"1mcild3034f4c1x8x05w9q0ps70i1nihvih22cmh3wj4cgllg5w0")))) "16p68rj5h609pnbp7y0jiiq1zkbksh4qqi1q8yby3ldj5x9sfpwc"))))
(build-system emacs-build-system) (build-system emacs-build-system)
(home-page "http://elpa.gnu.org/packages/xr.html") (home-page "http://elpa.gnu.org/packages/xr.html")
(synopsis "Convert string regexp to rx notation") (synopsis "Convert string regexp to rx notation")
@ -780,7 +780,7 @@ skip set strings, which are arguments to @code{skip-chars-forward} and
(define-public emacs-relint (define-public emacs-relint
(package (package
(name "emacs-relint") (name "emacs-relint")
(version "1.5") (version "1.6")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
@ -788,7 +788,7 @@ skip set strings, which are arguments to @code{skip-chars-forward} and
"https://elpa.gnu.org/packages/relint-" version ".el")) "https://elpa.gnu.org/packages/relint-" version ".el"))
(sha256 (sha256
(base32 (base32
"0y7lki2vndpkmzg4k0yh2722hp01qr77vm337xnm8wp3bmwn8s1f")))) "17nyy3zqpqgs22lrrpdm0k56xnhj5l3y2y3lnmhcqw63xksgbsyk"))))
(build-system emacs-build-system) (build-system emacs-build-system)
(propagated-inputs `(("emacs-xr" ,emacs-xr))) (propagated-inputs `(("emacs-xr" ,emacs-xr)))
(home-page "https://github.com/mattiase/relint") (home-page "https://github.com/mattiase/relint")
@ -4535,6 +4535,31 @@ Emacs default configuration in uncontroversial ways that nearly everyone can
agree upon.") agree upon.")
(license license:gpl3+))) (license license:gpl3+)))
(define-public emacs-undohist-el
(let ((commit "d2239a5f736724ceb9e3b6bcaa86f4064805cda0")
(revision "1"))
(package
(name "emacs-undohist-el")
(version (git-version "0" revision commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/m2ym/undohist-el")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32
"1c0daw246ky7b1x5b8h55x79pl1pjqk1k348l487bdd8zdj4w9wx"))
(patches
(search-patches "emacs-undohist-ignored.patch"))))
(build-system emacs-build-system)
(home-page "https://github.com/m2ym/undohist-el")
(synopsis "Save undo history between sessions")
(description "This package allows persistent use of undo history for
individual file buffers.")
(license license:gpl3+))))
(define-public emacs-eprime (define-public emacs-eprime
(let ((commit "17a481af26496be91c07139a9bfc05cfe722506f")) (let ((commit "17a481af26496be91c07139a9bfc05cfe722506f"))
(package (package
@ -4611,7 +4636,7 @@ to all the other commands, too.")
(define-public emacs-js2-mode (define-public emacs-js2-mode
(package (package
(name "emacs-js2-mode") (name "emacs-js2-mode")
(version "20180301") (version "20190219")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append "https://github.com/mooz/js2-mode/archive/" (uri (string-append "https://github.com/mooz/js2-mode/archive/"
@ -4619,7 +4644,7 @@ to all the other commands, too.")
(file-name (string-append name "-" version ".tar.gz")) (file-name (string-append name "-" version ".tar.gz"))
(sha256 (sha256
(base32 (base32
"13aghgwaqrmbf3pbifcry52kya454wnh1gbdh5805n1n6xgjm5w3")))) "1gv1vinp2avnnn6an8ffcx79vmsdjhhikz7s6cmphligb26qp2vi"))))
(build-system emacs-build-system) (build-system emacs-build-system)
(home-page "https://github.com/mooz/js2-mode/") (home-page "https://github.com/mooz/js2-mode/")
(synopsis "Improved JavaScript editing mode for Emacs") (synopsis "Improved JavaScript editing mode for Emacs")
@ -5243,28 +5268,26 @@ Dust.js, React/JSX, Angularjs, ejs, etc.")
(license license:gpl3+))) (license license:gpl3+)))
(define-public emacs-wgrep (define-public emacs-wgrep
(let ((commit "414be70bd313e482cd9f0b70fd2daad4ee23497c")) (package
;; Late commit fixes compatibility issue with Emacs 26+. (name "emacs-wgrep")
(package (version "2.3.0")
(name "emacs-wgrep") (source (origin
(version (git-version "2.1.10" "1" commit)) (method url-fetch)
(source (origin (uri (string-append
(method git-fetch) "https://github.com/mhayashi1120/Emacs-wgrep/archive/"
(uri (git-reference version ".tar.gz"))
(url "https://github.com/mhayashi1120/Emacs-wgrep") (file-name (string-append name "-" version ".tar.gz"))
(commit commit))) (sha256
(file-name (git-file-name name version)) (base32
(sha256 "1cssqbg03fjb6xwf7idv1l3jjsh9r5r232ryi11czqlxfiv658bj"))))
(base32 (build-system emacs-build-system)
"1sdhd587q3pg92lhiayph87azhalmf1gzrnsprkmqvnphv7mvks9")))) (home-page "https://github.com/mhayashi1120/Emacs-wgrep")
(build-system emacs-build-system) (synopsis "Edit a grep buffer and apply those changes to the files")
(home-page "https://github.com/mhayashi1120/Emacs-wgrep") (description
(synopsis "Edit a grep buffer and apply those changes to the files") "Emacs wgrep allows you to edit a grep buffer and apply those changes
(description
"Emacs wgrep allows you to edit a grep buffer and apply those changes
to the file buffer. Several backends are supported beside the classic grep: to the file buffer. Several backends are supported beside the classic grep:
ack, ag, helm and pt.") ack, ag, helm and pt.")
(license license:gpl3+)))) (license license:gpl3+)))
(define-public emacs-helm (define-public emacs-helm
(package (package
@ -5374,7 +5397,7 @@ target will call @code{compile} on it.")
(define-public emacs-cider (define-public emacs-cider
(package (package
(name "emacs-cider") (name "emacs-cider")
(version "0.20.0") (version "0.21.0")
(source (source
(origin (origin
(method git-fetch) (method git-fetch)
@ -5384,7 +5407,7 @@ target will call @code{compile} on it.")
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 (base32
"0lfhzg9c931jbx27hpshk3l76gwbp6ggf668sqa77xrvymwdlsnw")))) "0lbrwj67fnvynkdkzvnzp3p8vqlz0ldrcs317vg60bqfhx7hvqkj"))))
(build-system emacs-build-system) (build-system emacs-build-system)
(arguments (arguments
'(#:exclude ; Don't exclude 'cider-test.el'. '(#:exclude ; Don't exclude 'cider-test.el'.
@ -5667,14 +5690,14 @@ passive voice.")
(name "emacs-org") (name "emacs-org")
;; emacs-org-contrib inherits from this package. Please update its sha256 ;; emacs-org-contrib inherits from this package. Please update its sha256
;; checksum as well. ;; checksum as well.
(version "9.2.2") (version "9.2.3")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append "http://elpa.gnu.org/packages/org-" (uri (string-append "http://elpa.gnu.org/packages/org-"
version ".tar")) version ".tar"))
(sha256 (sha256
(base32 (base32
"02fq3x4haady2vagg9b363ynsrxzpijfp420qhciy7x8y7m89abw")))) "0hqy4lns9q5p0l1ylgmlckqprn9sbasszhznanmv0rsh0gzhsbyw"))))
(build-system emacs-build-system) (build-system emacs-build-system)
(home-page "https://orgmode.org/") (home-page "https://orgmode.org/")
(synopsis "Outline-based notes management and organizer") (synopsis "Outline-based notes management and organizer")
@ -5688,14 +5711,14 @@ programming and reproducible research.")
(package (package
(inherit emacs-org) (inherit emacs-org)
(name "emacs-org-contrib") (name "emacs-org-contrib")
(version "20190311") (version "20190402")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append "https://orgmode.org/elpa/org-plus-contrib-" (uri (string-append "https://orgmode.org/elpa/org-plus-contrib-"
version ".tar")) version ".tar"))
(sha256 (sha256
(base32 (base32
"189p0f70j7z3hh72ay8cxa9n8xkcj06dlw765fwnqd2mm72vx0nb")))) "0hbrhhq6sa0gz4ylzr54raxandqs4y953894b0hlr553b8sfl1wk"))))
(arguments (arguments
`(#:modules ((guix build emacs-build-system) `(#:modules ((guix build emacs-build-system)
(guix build utils) (guix build utils)
@ -6980,7 +7003,7 @@ It should enable you to implement low-level X11 applications.")
Name=~a~@ Name=~a~@
Comment=~a~@ Comment=~a~@
Exec=~a~@ Exec=~a~@
TryExec=~@*~a~@ TryExec=~:*~a~@
Type=Application~%" ,name ,synopsis exwm-executable))) Type=Application~%" ,name ,synopsis exwm-executable)))
;; Add a shell wrapper to bin ;; Add a shell wrapper to bin
(with-output-to-file exwm-executable (with-output-to-file exwm-executable
@ -8306,7 +8329,7 @@ Feautures:
(define-public emacs-evil-matchit (define-public emacs-evil-matchit
(package (package
(name "emacs-evil-matchit") (name "emacs-evil-matchit")
(version "2.2.6") (version "2.2.9")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
@ -8316,7 +8339,7 @@ Feautures:
(file-name (string-append name "-" version ".tar.gz")) (file-name (string-append name "-" version ".tar.gz"))
(sha256 (sha256
(base32 (base32
"1yp9sl6542317mn1060ri90zyf6bs6qylagndhqy02p368q31rhi")))) "1i5a7szl0m3xnqyjq6zhg5j68x9fgf9ffxghj918c4brj4436sjb"))))
(build-system emacs-build-system) (build-system emacs-build-system)
(propagated-inputs (propagated-inputs
`(("emacs-evil" ,emacs-evil))) `(("emacs-evil" ,emacs-evil)))
@ -13131,7 +13154,7 @@ Emacs.")
(let ((commit "a0623667b07a4bf60980c97b078e9faed97ace79")) (let ((commit "a0623667b07a4bf60980c97b078e9faed97ace79"))
(package (package
(name "emacs-matrix-client") (name "emacs-matrix-client")
(version (git-version "0.0.0" "3" commit)) (version (git-version "0.0.0" "4" commit))
(source (origin (source (origin
(method git-fetch) (method git-fetch)
(uri (git-reference (uri (git-reference
@ -13142,6 +13165,18 @@ Emacs.")
(base32 (base32
"1zya8id3y9wzjaj7nplq7br6nhm3lsskv0fkn1xr1y77fzcfgcdb")))) "1zya8id3y9wzjaj7nplq7br6nhm3lsskv0fkn1xr1y77fzcfgcdb"))))
(build-system emacs-build-system) (build-system emacs-build-system)
(arguments
`(#:phases
(modify-phases %standard-phases
(add-after 'unpack 'add-missing-require
;; Fix a filter error at runtime due to a missing require.
;; Reported upstream:
;; <https://github.com/alphapapa/matrix-client.el/issues/76>
(lambda _
(substitute* "matrix-client-room.el"
(("\\(require 'dash-functional\\)" all)
(string-append all "\n" "(require 'anaphora)")))
#t)))))
(propagated-inputs (propagated-inputs
`(("a" ,emacs-a) `(("a" ,emacs-a)
("anaphora" ,emacs-anaphora) ("anaphora" ,emacs-anaphora)
@ -14177,3 +14212,29 @@ and article extracts for Wikipedia.")
files. The various elements of the HTML input are parsed with customizable files. The various elements of the HTML input are parsed with customizable
functions (e.g. @code{webfeeder-title-function}).") functions (e.g. @code{webfeeder-title-function}).")
(license license:gpl3+))) (license license:gpl3+)))
(define-public emacs-evil-numbers
(let ((commit "6ea1c8c3a9b37bed63d48f1128e9a4910e68187e"))
(package
(name "emacs-evil-numbers")
(version (git-version "0.4" "1" commit))
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/dieggsy/evil-numbers")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32
"1aq95hj8x13py0pwsnc6wvd8cc5yv5qin8ym9js42y5966vwj4np"))))
(build-system emacs-build-system)
(home-page "https://github.com/dieggsy/evil-numbers")
(synopsis "Increment and decrement numbers in Emacs")
(description "This package increments and decrements binary, octal,
decimal and hex literals. It works like C-a/C-x in Vim, i.e. searches for
number up to EOL and then increments or decrements and keeps zero padding up
(unlike in Vim). When a region is active, as in Evil's visual mode, all the
numbers within that region will be incremented/decremented (unlike in Vim).
It is a fork of https://github.com/cofi/evil-numbers, which is unmaintained.")
(license license:gpl3+))))

View File

@ -1191,7 +1191,7 @@ play them on systems for which they were never designed!")
(define-public mame (define-public mame
(package (package
(name "mame") (name "mame")
(version "0.206") (version "0.208")
(source (source
(origin (origin
(method git-fetch) (method git-fetch)
@ -1201,7 +1201,7 @@ play them on systems for which they were never designed!")
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 (base32
"0i01h5ars1yd96ndmzhk47931hf261m8frqz1ha7s2gy52f0q86y")) "14j7n4haggqsph0nw69d79z3y9lrdc7rzs2sl1kzggfnd37nh81s"))
(modules '((guix build utils))) (modules '((guix build utils)))
(snippet (snippet
;; Remove bundled libraries. ;; Remove bundled libraries.
@ -1339,7 +1339,8 @@ play them on systems for which they were never designed!")
#t)))))) #t))))))
(native-inputs (native-inputs
`(("pkg-config" ,pkg-config) `(("pkg-config" ,pkg-config)
("python-sphinx" ,python-sphinx) ("sphinx" ,python-sphinx)
("sphinxcontrib-svg2pdfconverter" ,python-sphinxcontrib-svg2pdfconverter)
("texinfo" ,texinfo))) ("texinfo" ,texinfo)))
(inputs (inputs
`(("alsa-lib" ,alsa-lib) `(("alsa-lib" ,alsa-lib)

View File

@ -185,7 +185,7 @@ removable devices or support for multimedia.")
(define-public terminology (define-public terminology
(package (package
(name "terminology") (name "terminology")
(version "1.3.2") (version "1.4.0")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (uri
@ -193,7 +193,7 @@ removable devices or support for multimedia.")
"terminology/terminology-" version ".tar.xz")) "terminology/terminology-" version ".tar.xz"))
(sha256 (sha256
(base32 (base32
"1kclxzadmk272s9spa7n704pcb1c611ixxrq88w5zk22va0i25xm")) "0q1y7fadj42n23aspx9y8hm4w4xlc316wc3415wnf75ibsx08ngd"))
(modules '((guix build utils))) (modules '((guix build utils)))
;; Remove the bundled fonts. ;; Remove the bundled fonts.
(snippet (snippet
@ -204,11 +204,24 @@ removable devices or support for multimedia.")
#t)))) #t))))
(build-system meson-build-system) (build-system meson-build-system)
(arguments (arguments
'(#:phases `(#:configure-flags '("-Dtests=true")
#:phases
(modify-phases %standard-phases (modify-phases %standard-phases
(add-after 'unpack 'set-home-directory (add-after 'unpack 'set-home-directory
;; FATAL: Cannot create run dir '/homeless-shelter/.run' - errno=2 ;; FATAL: Cannot create run dir '/homeless-shelter/.run' - errno=2
(lambda _ (setenv "HOME" "/tmp") #t))))) (lambda _ (setenv "HOME" "/tmp") #t))
(replace 'check
(lambda _
(with-directory-excursion
(string-append "../" ,name "-" ,version "/tests")
(invoke "sh" "run_tests.sh" "--verbose"
"-t" "../../build/src/bin/tytest"))))
(add-after 'install 'remove-test-binary
(lambda* (#:key outputs #:allow-other-keys)
;; This file is not meant to be installed.
(delete-file (string-append (assoc-ref outputs "out")
"/bin/tytest"))
#t)))))
(native-inputs (native-inputs
`(("gettext" ,gettext-minimal) `(("gettext" ,gettext-minimal)
("perl" ,perl) ("perl" ,perl)

View File

@ -2,6 +2,7 @@
;;; Copyright © 2016 Matthew Jordan <matthewjordandevops@yandex.com> ;;; Copyright © 2016 Matthew Jordan <matthewjordandevops@yandex.com>
;;; Copyright © 2016 Ludovic Courtès <ludo@gnu.org> ;;; Copyright © 2016 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2019 Ricardo Wurmus <rekado@elephly.net> ;;; Copyright © 2019 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2019 Tobias Geerinckx-Rice <me@tobias.gr>
;;; ;;;
;;; This file is part of GNU Guix. ;;; This file is part of GNU Guix.
;;; ;;;
@ -27,14 +28,14 @@
(define-public entr (define-public entr
(package (package
(name "entr") (name "entr")
(version "4.1") (version "4.2")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append "http://entrproject.org/code/entr-" (uri (string-append "http://entrproject.org/code/entr-"
version ".tar.gz")) version ".tar.gz"))
(sha256 (sha256
(base32 (base32
"0y7gvyf0iykpf3gfw09m21hy51m6qn4cpkbrm4nnn7pwrwycj0y5")))) "0w2xkf77jikcjh15fp9g7661ss30pz3jbnh261vqpaqavwah4c17"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
`(#:test-target "test" `(#:test-target "test"

View File

@ -23,6 +23,7 @@
(define-module (gnu packages erlang) (define-module (gnu packages erlang)
#:use-module ((guix licenses) #:prefix license:) #:use-module ((guix licenses) #:prefix license:)
#:use-module (guix build-system gnu) #:use-module (guix build-system gnu)
#:use-module (guix build-system emacs)
#:use-module (guix download) #:use-module (guix download)
#:use-module (guix git-download) #:use-module (guix git-download)
#:use-module (guix packages) #:use-module (guix packages)
@ -212,3 +213,21 @@ built-in support for concurrency, distribution and fault tolerance.")
;; have other licenses. See 'system/COPYRIGHT' in the source distribution. ;; have other licenses. See 'system/COPYRIGHT' in the source distribution.
(license (list license:asl2.0 license:bsd-2 license:bsd-3 license:expat (license (list license:asl2.0 license:bsd-2 license:bsd-3 license:expat
license:lgpl2.0+ license:tcl/tk license:zlib)))) license:lgpl2.0+ license:tcl/tk license:zlib))))
(define-public emacs-erlang
(package
(name "emacs-erlang")
(version (package-version erlang))
(source (package-source erlang))
(build-system emacs-build-system)
(arguments
`(#:phases
(modify-phases %standard-phases
(add-before 'set-emacs-load-path 'change-working-directory
(lambda _ (chdir "lib/tools/emacs") #t)))))
(home-page "https://www.erlang.org/")
(synopsis "Erlang major mode for Emacs")
(description
"This package provides an Emacs major mode for editing Erlang source
files.")
(license license:asl2.0)))

View File

@ -6,7 +6,7 @@
;;; Copyright © 2017 Carlo Zancanaro <carlo@zancanaro.id.au> ;;; Copyright © 2017 Carlo Zancanaro <carlo@zancanaro.id.au>
;;; Copyright © 2017 Theodoros Foradis <theodoros@foradis.org> ;;; Copyright © 2017 Theodoros Foradis <theodoros@foradis.org>
;;; Copyright © 2017 Vasile Dumitrascu <va511e@yahoo.com> ;;; Copyright © 2017 Vasile Dumitrascu <va511e@yahoo.com>
;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr> ;;; Copyright © 2017, 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2018 Eric Bavier <bavier@member.fsf.org> ;;; Copyright © 2018 Eric Bavier <bavier@member.fsf.org>
;;; Copyright © 2018 Adriano Peluso <catonano@gmail.com> ;;; Copyright © 2018 Adriano Peluso <catonano@gmail.com>
;;; Copyright © 2018, 2019 Nicolas Goaziou <mail@nicolasgoaziou.fr> ;;; Copyright © 2018, 2019 Nicolas Goaziou <mail@nicolasgoaziou.fr>
@ -139,7 +139,7 @@ line client and a client based on Qt.")
(define-public ledger (define-public ledger
(package (package
(name "ledger") (name "ledger")
(version "3.1.2") (version "3.1.3")
(source (source
(origin (origin
(method git-fetch) (method git-fetch)
@ -148,8 +148,7 @@ line client and a client based on Qt.")
(commit (string-append "v" version)))) (commit (string-append "v" version))))
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 "0hwnipj2m9p95hhyv6kyq54m27g14r58gnsy2my883kxhpcyb2vc")) (base32 "0bfnrqrd6wqgsngfpqi30xh6yy86pwl25iwzrqy44q31r0zl4mm3"))))
(patches (search-patches "ledger-fix-uninitialized.patch"))))
(build-system cmake-build-system) (build-system cmake-build-system)
(arguments (arguments
`(#:configure-flags `(#:configure-flags
@ -926,7 +925,7 @@ Luhn and family of ISO/IEC 7064 check digit algorithms. ")
(define-public python-duniterpy (define-public python-duniterpy
(package (package
(name "python-duniterpy") (name "python-duniterpy")
(version "0.52.0") (version "0.53.0")
(source (source
(origin (origin
(method git-fetch) (method git-fetch)
@ -937,7 +936,7 @@ Luhn and family of ISO/IEC 7064 check digit algorithms. ")
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 (base32
"07liba2d21hb8m3n6yccfamq9yq0ryywh18vs9g2sgywfsnv82lh")))) "1km585xlv6dm693s5x6apcnx3ixvz08g8yjfclszhy4jakhpv0ya"))))
(build-system python-build-system) (build-system python-build-system)
(arguments (arguments
;; Tests fail with "AttributeError: module 'attr' has no attribute 's'". ;; Tests fail with "AttributeError: module 'attr' has no attribute 's'".

View File

@ -48,16 +48,15 @@
(define-public flashrom (define-public flashrom
(package (package
(name "flashrom") (name "flashrom")
;; XXX: The CFLAGS=... line below can probably be removed when updating. (version "1.0.1")
(version "1.0")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append (uri (string-append
"https://download.flashrom.org/releases/flashrom-" "https://download.flashrom.org/releases/flashrom-v"
version ".tar.bz2")) version ".tar.bz2"))
(sha256 (sha256
(base32 (base32
"0r7fkpfc8w51n8ffbhclj4wa3kwrk0ijv1acwpw5myx5bchzl0ip")))) "0i6yrrl69hrqmwd7azj7x3j46m0qpvzmk3b5basym7mnlpfzhyfm"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(inputs `(("dmidecode" ,dmidecode) (inputs `(("dmidecode" ,dmidecode)
("pciutils" ,pciutils) ("pciutils" ,pciutils)
@ -67,9 +66,6 @@
(arguments (arguments
'(#:make-flags '(#:make-flags
(list "CC=gcc" (list "CC=gcc"
;; The default includes -Wall -Werror, causing the build to fail
;; with deprecation warnings against libusb versions >= 1.0.22.
"CFLAGS=-Os -Wshadow"
(string-append "PREFIX=" %output) (string-append "PREFIX=" %output)
"CONFIG_ENABLE_LIBUSB0_PROGRAMMERS=no") "CONFIG_ENABLE_LIBUSB0_PROGRAMMERS=no")
#:tests? #f ; no 'check' target #:tests? #f ; no 'check' target

View File

@ -2,7 +2,7 @@
;;; Copyright © 2015 Andreas Enge <andreas@enge.fr> ;;; Copyright © 2015 Andreas Enge <andreas@enge.fr>
;;; Copyright © 2015 Sou Bunnbu <iyzsong@gmail.com> ;;; Copyright © 2015 Sou Bunnbu <iyzsong@gmail.com>
;;; Copyright © 2015, 2017 Andy Wingo <wingo@pobox.com> ;;; Copyright © 2015, 2017 Andy Wingo <wingo@pobox.com>
;;; Copyright © 2015, 2016, 2017 Ludovic Courtès <ludo@gnu.org> ;;; Copyright © 2015, 2016, 2017, 2019 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2015, 2017, 2018, 2019 Ricardo Wurmus <rekado@elephly.net> ;;; Copyright © 2015, 2017, 2018, 2019 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2015 David Hashe <david.hashe@dhashe.com> ;;; Copyright © 2015 David Hashe <david.hashe@dhashe.com>
;;; Copyright © 2016, 2017 Efraim Flashner <efraim@flashner.co.il> ;;; Copyright © 2016, 2017 Efraim Flashner <efraim@flashner.co.il>
@ -57,7 +57,6 @@
#:use-module (gnu packages gl) #:use-module (gnu packages gl)
#:use-module (gnu packages glib) ;intltool #:use-module (gnu packages glib) ;intltool
#:use-module (gnu packages gnome) #:use-module (gnu packages gnome)
#:use-module (gnu packages gnuzilla)
#:use-module (gnu packages gperf) #:use-module (gnu packages gperf)
#:use-module (gnu packages graphviz) #:use-module (gnu packages graphviz)
#:use-module (gnu packages gtk) #:use-module (gnu packages gtk)
@ -66,6 +65,7 @@
#:use-module (gnu packages libusb) #:use-module (gnu packages libusb)
#:use-module (gnu packages linux) #:use-module (gnu packages linux)
#:use-module (gnu packages m4) #:use-module (gnu packages m4)
#:use-module (gnu packages nss)
#:use-module (gnu packages perl) #:use-module (gnu packages perl)
#:use-module (gnu packages perl-check) #:use-module (gnu packages perl-check)
#:use-module (gnu packages pkg-config) #:use-module (gnu packages pkg-config)
@ -304,6 +304,152 @@ the org.freedesktop.login1 interface over the system bus, allowing other parts
of a the system to know what users are logged in, and where.") of a the system to know what users are logged in, and where.")
(license license:lgpl2.1+))) (license license:lgpl2.1+)))
(define-public localed
;; XXX: This package is extracted from systemd but we retain so little of it
;; that it would make more sense to maintain a fork of the bits we need.
(package
(name "localed")
(version "241")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/systemd/systemd")
(commit (string-append "v" version))))
(sha256
(base32
"0sy91flzbhpq58k7v0294pa2gxpr0bk27rcnxlbhk2fi6nc51d28"))
(file-name (git-file-name name version))
(modules '((guix build utils)))
(snippet
'(begin
;; Connect to the right location for our D-Bus daemon.
(substitute* '("src/basic/def.h"
"src/libsystemd/sd-bus/sd-bus.c"
"src/stdio-bridge/stdio-bridge.c")
(("/run/dbus/system_bus_socket")
"/var/run/dbus/system_bus_socket"))
;; Don't insist on having systemd as PID 1 (otherwise
;; 'localectl' would exit without doing anything.)
(substitute* "src/shared/bus-util.c"
(("sd_booted\\(\\)")
"(1)"))
#t))
(patches (search-patches "localed-xorg-keyboard.patch"))))
(build-system meson-build-system)
(arguments
;; Try to build as little as possible (list of components taken from the
;; top-level 'meson.build' file.)
(let ((components '("utmp"
"hibernate"
"environment-d"
"binfmt"
"coredump"
"resolve"
"logind"
"hostnamed"
"localed"
"machined"
"portabled"
"networkd"
"timedated"
"timesyncd"
"firstboot"
"randomseed"
"backlight"
"vconsole"
"quotacheck"
"sysusers"
"tmpfiles"
"hwdb"
"rfkill"
"ldconfig"
"efi"
"tpm"
"ima"
"smack"
"gshadow"
"idn"
"nss-myhostname"
"nss-systemd")))
`(#:configure-flags ',(map (lambda (component)
(string-append "-D" component "=false"))
(delete "localed" components))
;; It doesn't make sense to test all of systemd.
#:tests? #f
#:phases (modify-phases %standard-phases
(add-after 'unpack 'set-xkeyboard-config-file-name
(lambda* (#:key inputs #:allow-other-keys)
;; Set the file name to xkeyboard-config and kbd.
;; This is used by 'localectl list-x11-keymap-layouts'
;; and similar functions.
(let ((xkb (assoc-ref inputs "xkeyboard-config"))
(kbd (assoc-ref inputs "kbd")))
(substitute* "src/locale/localectl.c"
(("/usr/share/X11/xkb/rules")
(string-append xkb "/share/X11/xkb/rules")))
(substitute* "src/basic/def.h"
(("/usr/share/keymaps")
(string-append kbd "/share/keymaps")))
#t)))
(replace 'install
(lambda* (#:key outputs #:allow-other-keys)
;; Install 'localed', the D-Bus and polkit files, and
;; 'localectl'.
(let* ((out (assoc-ref outputs "out"))
(libexec (string-append out "/libexec/localed"))
(bin (string-append out "/bin"))
(lib (string-append out "/lib"))
(dbus (string-append out
"/share/dbus-1/system-services"))
(conf (string-append out
"/etc/dbus-1/system.d/"))
(polkit (string-append out
"/share/polkit-1/actions"))
(data (string-append out "/share/systemd")))
(define (source-file regexp)
(car (find-files ".." regexp)))
(mkdir-p libexec)
(copy-file "systemd-localed"
(string-append libexec "/localed"))
(install-file "localectl" bin)
(let ((service-file (source-file
"\\.locale1\\.service$")))
(substitute* service-file
(("^Exec=.*$")
(string-append "Exec=" libexec "/localed\n")))
(install-file service-file dbus))
(install-file (source-file "\\.locale1\\.policy$")
polkit)
(install-file (source-file "\\.locale1\\.conf$")
conf)
(for-each (lambda (file)
(install-file file lib))
(find-files "src/shared"
"libsystemd-shared.*\\.so"))
(for-each (lambda (map)
(install-file map data))
(find-files ".." "^(kbd-model-map|language-fallback-map)$"))
#t)))))))
(native-inputs (package-native-inputs elogind))
(inputs `(("libmount" ,util-linux)
("xkeyboard-config" ,xkeyboard-config)
("kbd" ,kbd)
,@(package-inputs elogind)))
(home-page "https://www.freedesktop.org/wiki/Software/systemd/localed/")
(synopsis "Control the system locale and keyboard layout")
(description
"Localed is a tiny daemon that can be used to control the system locale
and keyboard mapping from user programs. It is used among other things by the
GNOME Shell. The @command{localectl} command-line tool allows you to interact
with localed. This package is extracted from the broader systemd package.")
(license license:lgpl2.1+)))
(define-public packagekit (define-public packagekit
(package (package
(name "packagekit") (name "packagekit")

View File

@ -12,7 +12,7 @@
;;; Copyright © 2017 Manolis Fragkiskos Ragkousis <manolis837@gmail.com> ;;; Copyright © 2017 Manolis Fragkiskos Ragkousis <manolis837@gmail.com>
;;; Copyright © 2017 Peter Mikkelsen <petermikkelsen10@gmail.com> ;;; Copyright © 2017 Peter Mikkelsen <petermikkelsen10@gmail.com>
;;; Copyright © 2017 Arun Isaac <arunisaac@systemreboot.net> ;;; Copyright © 2017 Arun Isaac <arunisaac@systemreboot.net>
;;; Copyright © 2017 Rutger Helling <rhelling@mykolab.com> ;;; Copyright © 2017, 2019 Rutger Helling <rhelling@mykolab.com>
;;; Copyright © 2018 Marius Bakke <mbakke@fastmail.com> ;;; Copyright © 2018 Marius Bakke <mbakke@fastmail.com>
;;; Copyright © 2019 Pierre Neidhardt <mail@ambrevar.xyz> ;;; Copyright © 2019 Pierre Neidhardt <mail@ambrevar.xyz>
;;; ;;;
@ -1074,7 +1074,7 @@ of use.")
(define-public openmw (define-public openmw
(package (package
(name "openmw") (name "openmw")
(version "0.44.0") (version "0.45.0")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
@ -1083,7 +1083,7 @@ of use.")
"openmw-" version ".tar.gz")) "openmw-" version ".tar.gz"))
(sha256 (sha256
(base32 (base32
"03fgm2f2r7y0aqlgp038pdlnllgvm3jimrp968p4nhz1sffvjzcy")))) "0r0wgvv1faan8z8lbply8lks4hcnppifjrcz04l5zvq6yiqzjg5n"))))
(build-system cmake-build-system) (build-system cmake-build-system)
(arguments (arguments
`(#:tests? #f ; No test target `(#:tests? #f ; No test target

View File

@ -113,7 +113,6 @@
#:use-module (gnu packages libunwind) #:use-module (gnu packages libunwind)
#:use-module (gnu packages linux) #:use-module (gnu packages linux)
#:use-module (gnu packages lua) #:use-module (gnu packages lua)
#:use-module (gnu packages haskell)
#:use-module (gnu packages man) #:use-module (gnu packages man)
#:use-module (gnu packages maths) #:use-module (gnu packages maths)
#:use-module (gnu packages mp3) #:use-module (gnu packages mp3)
@ -156,7 +155,6 @@
#:use-module (guix build-system glib-or-gtk) #:use-module (guix build-system glib-or-gtk)
#:use-module (guix build-system gnu) #:use-module (guix build-system gnu)
#:use-module (guix build-system go) #:use-module (guix build-system go)
#:use-module (guix build-system haskell)
#:use-module (guix build-system meson) #:use-module (guix build-system meson)
#:use-module (guix build-system scons) #:use-module (guix build-system scons)
#:use-module (guix build-system python) #:use-module (guix build-system python)
@ -2291,48 +2289,6 @@ on the screen and keyboard to display letters.")
;; Most files under gpl2+ or gpl3+, but eat.wav under gpl3 ;; Most files under gpl2+ or gpl3+, but eat.wav under gpl3
(license license:gpl3))) (license license:gpl3)))
(define-public raincat
(package
(name "raincat")
(version "1.2.1")
(source
(origin
(method url-fetch)
(uri (string-append "http://hackage.haskell.org/package/Raincat/"
"Raincat-" version ".tar.gz"))
(sha256
(base32
"10y9zi22m6hf13c9h8zd9vg7mljpwbw0r3djb6r80bna701fdf6c"))))
(build-system haskell-build-system)
(arguments
`(#:phases
(modify-phases %standard-phases
(add-after 'install 'wrap-executable
(lambda* (#:key inputs outputs #:allow-other-keys)
(let ((out (assoc-ref outputs "out")))
(wrap-program (string-append out "/bin/raincat")
`("LD_LIBRARY_PATH" ":" =
(,(string-append (assoc-ref inputs "freeglut")
"/lib"))))
#t))))))
(inputs
`(("ghc-extensible-exceptions" ,ghc-extensible-exceptions)
("ghc-random" ,ghc-random)
("ghc-glut" ,ghc-glut)
("freeglut" ,freeglut)
("ghc-opengl" ,ghc-opengl)
("ghc-sdl2" ,ghc-sdl2)
("ghc-sdl2-image" ,ghc-sdl2-image)
("ghc-sdl2-mixer" ,ghc-sdl2-mixer)))
(home-page "http://www.bysusanlin.com/raincat/")
(synopsis "Puzzle game with a cat in lead role")
(description "Project Raincat is a game developed by Carnegie Mellon
students through GCS during the Fall 2008 semester. Raincat features game
play inspired from classics Lemmings and The Incredible Machine. The project
proved to be an excellent learning experience for the programmers. Everything
is programmed in Haskell.")
(license license:bsd-3)))
(define-public manaplus (define-public manaplus
(package (package
(name "manaplus") (name "manaplus")
@ -6749,3 +6705,63 @@ exec ~a --data-path=~a/share/flare --mods=empyrean_campaign~%"
(description "Flare is a single-player 2D action RPG with (description "Flare is a single-player 2D action RPG with
fast-paced action and a dark fantasy style.") fast-paced action and a dark fantasy style.")
(license license:cc-by-sa3.0))) (license license:cc-by-sa3.0)))
(define-public meritous
(package
(name "meritous")
(version "1.5")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://gitlab.com/meritous/meritous.git")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
"0n5jm4g0arjllgqmd2crv8h02i6hs3hlh1zyc7ng7yfpg1mbd8p8"))))
(build-system gnu-build-system)
(arguments
`(#:tests? #f ;no test
#:make-flags
(list "CC=gcc"
(string-append "prefix=" (assoc-ref %outputs "out")))
#:phases
(modify-phases %standard-phases
(delete 'configure)
(add-after 'unpack 'fix-sdl-path
;; XXX: For some reason, `sdl-config' reports stand-alone SDL
;; directory, not SDL-union provided as an input to the package.
;; We force the latter with "--prefix=" option.
(lambda* (#:key inputs #:allow-other-keys)
(substitute* "Makefile"
(("sdl-config" command)
(string-append command " --prefix=" (assoc-ref inputs "sdl"))))
#t))
(add-after 'unpack 'fix-crash
;; XXX: Songs are not present in the repository, due to licensing
;; issues. Yet, the game tries to load them, and, since it cannot
;; find them, crashes. Users cannot add them back, the store being
;; read-only, so we turn off background music altogether.
(lambda _
(substitute* "src/audio.c"
(("PlayBackgroundMusic\\(new_track\\);" all)
(string-append "// " all)))
#t)))))
(native-inputs
`(("intltool" ,intltool)))
(inputs
`(("sdl" ,(sdl-union (list sdl sdl-image sdl-mixer)))
("zlib" ,zlib)))
(home-page "https://gitlab.com/meritous/meritous")
(synopsis "Action-adventure dungeon crawl game")
(description "Far below the surface of the planet is a place of limitless
power. Those that seek to control such a utopia will soon bring an end to
themselves. Seeking an end to the troubles that plague him, PSI user Merit
journeys into the hallowed Orcus Dome in search of answers.
Meritous is a action-adventure game with simple controls but a challenge to
find a balance of power versus recovery time during real-time battles. Set in
a procedurally generated world, the player can explore thousands of rooms in
search of powerful artifacts, tools to help them, and to eventually free the
Orcus Dome from evil.")
(license license:gpl3+)))

View File

@ -4,7 +4,7 @@
;;; Copyright © 2015 Ricardo Wurmus <rekado@elephly.net> ;;; Copyright © 2015 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2013, 2015, 2016, 2017 Ludovic Courtès <ludo@gnu.org> ;;; Copyright © 2013, 2015, 2016, 2017 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2017 Alex Vong <alexvong1995@gmail.com> ;;; Copyright © 2017 Alex Vong <alexvong1995@gmail.com>
;;; Copyright © 2017, 2018 Efraim Flashner <efraim@flashner.co.il> ;;; Copyright © 2017, 2018, 2019 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2017 Leo Famulari <leo@famulari.name> ;;; Copyright © 2017 Leo Famulari <leo@famulari.name>
;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr> ;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2018 Marius Bakke <mbakke@fastmail.com> ;;; Copyright © 2018 Marius Bakke <mbakke@fastmail.com>
@ -47,6 +47,7 @@
(define-public lcms (define-public lcms
(package (package
(name "lcms") (name "lcms")
(replacement lcms/fixed)
(version "2.9") (version "2.9")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
@ -67,6 +68,14 @@ Consortium standard (ICC), approved as ISO 15076-1.")
(home-page "http://www.littlecms.com/") (home-page "http://www.littlecms.com/")
(properties '((cpe-name . "little_cms_color_engine"))))) (properties '((cpe-name . "little_cms_color_engine")))))
(define lcms/fixed
(package
(inherit lcms)
(source
(origin
(inherit (package-source lcms))
(patches (search-patches "lcms-CVE-2018-16435.patch"))))))
(define-public libpaper (define-public libpaper
(package (package
(name "libpaper") (name "libpaper")

View File

@ -112,6 +112,7 @@
#:use-module (gnu packages nettle) #:use-module (gnu packages nettle)
#:use-module (gnu packages networking) #:use-module (gnu packages networking)
#:use-module (gnu packages ninja) #:use-module (gnu packages ninja)
#:use-module (gnu packages nss)
#:use-module (gnu packages openldap) #:use-module (gnu packages openldap)
#:use-module (gnu packages password-utils) #:use-module (gnu packages password-utils)
#:use-module (gnu packages pcre) #:use-module (gnu packages pcre)
@ -5901,6 +5902,17 @@ properties, screen resolution, and other GNOME parameters.")
;; Convert the logo from SVG to PNG. ;; Convert the logo from SVG to PNG.
(invoke "inkscape" "--export-png=data/theme/guix-logo.png" (invoke "inkscape" "--export-png=data/theme/guix-logo.png"
"data/theme/guix-logo.svg"))) "data/theme/guix-logo.svg")))
(add-before 'configure 'record-absolute-file-names
(lambda* (#:key inputs #:allow-other-keys)
(substitute* "js/misc/ibusManager.js"
(("'ibus-daemon'")
(string-append "'" (assoc-ref inputs "ibus")
"/bin/ibus-daemon'")))
(substitute* "js/ui/status/keyboard.js"
(("'gkbd-keyboard-display'")
(string-append "'" (assoc-ref inputs "libgnomekbd")
"/bin/gkbd-keyboard-display'")))
#t))
(add-before 'check 'pre-check (add-before 'check 'pre-check
(lambda* (#:key inputs #:allow-other-keys) (lambda* (#:key inputs #:allow-other-keys)
;; Tests require a running X server. ;; Tests require a running X server.
@ -5965,6 +5977,7 @@ properties, screen resolution, and other GNOME parameters.")
("ibus" ,ibus) ("ibus" ,ibus)
("libcanberra" ,libcanberra) ("libcanberra" ,libcanberra)
("libcroco" ,libcroco) ("libcroco" ,libcroco)
("libgnomekbd" ,libgnomekbd) ;for gkbd-keyboard-display
("libgweather" ,libgweather) ("libgweather" ,libgweather)
("libsoup" ,libsoup) ("libsoup" ,libsoup)
("mesa-headers" ,mesa-headers) ("mesa-headers" ,mesa-headers)

View File

@ -1,7 +1,7 @@
;;; GNU Guix --- Functional package management for GNU ;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2013, 2014, 2015 Andreas Enge <andreas@enge.fr> ;;; Copyright © 2013, 2014, 2015 Andreas Enge <andreas@enge.fr>
;;; Copyright © 2014 Sree Harsha Totakura <sreeharsha@totakura.in> ;;; Copyright © 2014 Sree Harsha Totakura <sreeharsha@totakura.in>
;;; Copyright © 2015, 2017, 2018 Ludovic Courtès <ludo@gnu.org> ;;; Copyright © 2015, 2017, 2018, 2019 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2015, 2017, 2019 Efraim Flashner <efraim@flashner.co.il> ;;; Copyright © 2015, 2017, 2019 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2016 Ricardo Wurmus <rekado@elephly.net> ;;; Copyright © 2016 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2016 Mark H Weaver <mhw@netris.org> ;;; Copyright © 2016 Mark H Weaver <mhw@netris.org>
@ -35,7 +35,6 @@
#:use-module (gnu packages glib) #:use-module (gnu packages glib)
#:use-module (gnu packages gnome) #:use-module (gnu packages gnome)
#:use-module (gnu packages gnupg) #:use-module (gnu packages gnupg)
#:use-module (gnu packages gnuzilla)
#:use-module (gnu packages groff) #:use-module (gnu packages groff)
#:use-module (gnu packages gtk) #:use-module (gnu packages gtk)
#:use-module (gnu packages guile) #:use-module (gnu packages guile)
@ -48,6 +47,7 @@
#:use-module (gnu packages multiprecision) #:use-module (gnu packages multiprecision)
#:use-module (gnu packages music) #:use-module (gnu packages music)
#:use-module (gnu packages ncurses) #:use-module (gnu packages ncurses)
#:use-module (gnu packages nss)
#:use-module (gnu packages package-management) #:use-module (gnu packages package-management)
#:use-module (gnu packages pkg-config) #:use-module (gnu packages pkg-config)
#:use-module (gnu packages perl) #:use-module (gnu packages perl)

View File

@ -1,6 +1,6 @@
;;; GNU Guix --- Functional package management for GNU ;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2013, 2015 Andreas Enge <andreas@enge.fr> ;;; Copyright © 2013, 2015 Andreas Enge <andreas@enge.fr>
;;; Copyright © 2013, 2014, 2015, 2016, 2017, 2018 Ludovic Courtès <ludo@gnu.org> ;;; Copyright © 2013, 2014, 2015, 2016, 2017, 2018, 2019 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2014, 2015, 2016, 2017, 2018, 2019 Mark H Weaver <mhw@netris.org> ;;; Copyright © 2014, 2015, 2016, 2017, 2018, 2019 Mark H Weaver <mhw@netris.org>
;;; Copyright © 2015 Sou Bunnbu <iyzsong@gmail.com> ;;; Copyright © 2015 Sou Bunnbu <iyzsong@gmail.com>
;;; Copyright © 2016, 2017, 2018 Efraim Flashner <efraim@flashner.co.il> ;;; Copyright © 2016, 2017, 2018 Efraim Flashner <efraim@flashner.co.il>
@ -45,7 +45,6 @@
#:use-module (gnu packages autotools) #:use-module (gnu packages autotools)
#:use-module (gnu packages base) #:use-module (gnu packages base)
#:use-module (gnu packages bash) #:use-module (gnu packages bash)
#:use-module (gnu packages check)
#:use-module (gnu packages databases) #:use-module (gnu packages databases)
#:use-module (gnu packages glib) #:use-module (gnu packages glib)
#:use-module (gnu packages gtk) #:use-module (gnu packages gtk)
@ -70,6 +69,7 @@
#:use-module (gnu packages assembly) #:use-module (gnu packages assembly)
#:use-module (gnu packages rust) #:use-module (gnu packages rust)
#:use-module (gnu packages llvm) #:use-module (gnu packages llvm)
#:use-module (gnu packages nss)
#:use-module (gnu packages icu4c) #:use-module (gnu packages icu4c)
#:use-module (gnu packages video) #:use-module (gnu packages video)
#:use-module (gnu packages xiph) #:use-module (gnu packages xiph)
@ -404,158 +404,6 @@ in C/C++.")
("pkg-config" ,pkg-config) ("pkg-config" ,pkg-config)
("python" ,python-2))))) ("python" ,python-2)))))
(define-public nspr
(package
(name "nspr")
(version "4.21")
(source (origin
(method url-fetch)
(uri (string-append
"https://ftp.mozilla.org/pub/mozilla.org/nspr/releases/v"
version "/src/nspr-" version ".tar.gz"))
(sha256
(base32
"0nkbgk0x31nfm4xl8la0a3vrnpa8gzkh7g4k65p7n880n73k5shm"))))
(build-system gnu-build-system)
(native-inputs
`(("perl" ,perl)))
(arguments
`(#:tests? #f ; no check target
#:configure-flags (list "--enable-64bit"
(string-append "LDFLAGS=-Wl,-rpath="
(assoc-ref %outputs "out")
"/lib"))
;; Use fixed timestamps for reproducibility.
#:make-flags '("SH_DATE='1970-01-01 00:00:01'"
;; This is epoch 1 in microseconds.
"SH_NOW=100000")
#:phases (modify-phases %standard-phases
(add-before 'configure 'chdir
(lambda _ (chdir "nspr") #t)))))
(home-page
"https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSPR")
(synopsis "Netscape API for system level and libc-like functions")
(description "Netscape Portable Runtime (@dfn{NSPR}) provides a
platform-neutral API for system level and libc-like functions. It is used
in the Mozilla clients.")
(license license:mpl2.0)))
(define-public nss
(package
(name "nss")
(version "3.43")
(source (origin
(method url-fetch)
(uri (let ((version-with-underscores
(string-join (string-split version #\.) "_")))
(string-append
"https://ftp.mozilla.org/pub/mozilla.org/security/nss/"
"releases/NSS_" version-with-underscores "_RTM/src/"
"nss-" version ".tar.gz")))
(sha256
(base32
"1jp27w4w9nj5pkzrbc1zqj6pa09h2yy7vhzyx5fvg1q86fvw22zk"))
;; Create nss.pc and nss-config.
(patches (search-patches "nss-pkgconfig.patch"
"nss-increase-test-timeout.patch"))))
(build-system gnu-build-system)
(outputs '("out" "bin"))
(arguments
`(#:parallel-build? #f ; not supported
#:make-flags
(let* ((out (assoc-ref %outputs "out"))
(nspr (string-append (assoc-ref %build-inputs "nspr")))
(rpath (string-append "-Wl,-rpath=" out "/lib/nss")))
(list "-C" "nss" (string-append "PREFIX=" out)
"NSDISTMODE=copy"
"NSS_USE_SYSTEM_SQLITE=1"
(string-append "NSPR_INCLUDE_DIR=" nspr "/include/nspr")
;; Add $out/lib/nss to RPATH.
(string-append "RPATH=" rpath)
(string-append "LDFLAGS=" rpath)))
#:modules ((guix build gnu-build-system)
(guix build utils)
(ice-9 ftw)
(ice-9 match)
(srfi srfi-26))
#:phases
(modify-phases %standard-phases
(replace 'configure
(lambda _
(setenv "CC" "gcc")
;; Tells NSS to build for the 64-bit ABI if we are 64-bit system.
,@(match (%current-system)
((or "x86_64-linux" "aarch64-linux")
`((setenv "USE_64" "1")))
(_
'()))
#t))
(replace 'check
(lambda _
;; Use 127.0.0.1 instead of $HOST.$DOMSUF as HOSTADDR for testing.
;; The later requires a working DNS or /etc/hosts.
(setenv "DOMSUF" "localdomain")
(setenv "USE_IP" "TRUE")
(setenv "IP_ADDRESS" "127.0.0.1")
;; The "PayPalEE.cert" certificate expires every six months,
;; leading to test failures:
;; <https://bugzilla.mozilla.org/show_bug.cgi?id=609734>. To
;; work around that, set the time to roughly the release date.
(invoke "faketime" "2019-02-01" "./nss/tests/all.sh")))
(replace 'install
(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(bin (string-append (assoc-ref outputs "bin") "/bin"))
(inc (string-append out "/include/nss"))
(lib (string-append out "/lib/nss"))
(obj (match (scandir "dist" (cut string-suffix? "OBJ" <>))
((obj) (string-append "dist/" obj)))))
;; Install nss-config to $out/bin.
(install-file (string-append obj "/bin/nss-config")
(string-append out "/bin"))
(delete-file (string-append obj "/bin/nss-config"))
;; Install nss.pc to $out/lib/pkgconfig.
(install-file (string-append obj "/lib/pkgconfig/nss.pc")
(string-append out "/lib/pkgconfig"))
(delete-file (string-append obj "/lib/pkgconfig/nss.pc"))
(rmdir (string-append obj "/lib/pkgconfig"))
;; Install other files.
(copy-recursively "dist/public/nss" inc)
(copy-recursively (string-append obj "/bin") bin)
(copy-recursively (string-append obj "/lib") lib)
;; FIXME: libgtest1.so is installed in the above step, and it's
;; (unnecessarily) linked with several NSS libraries, but
;; without the needed rpaths, causing the 'validate-runpath'
;; phase to fail. Here we simply delete libgtest1.so, since it
;; seems to be used only during the tests.
(delete-file (string-append lib "/libgtest1.so"))
(delete-file (string-append lib "/libgtestutil.so"))
#t))))))
(inputs
`(("sqlite" ,sqlite)
("zlib" ,zlib)))
(propagated-inputs `(("nspr" ,nspr))) ; required by nss.pc.
(native-inputs `(("perl" ,perl)
("libfaketime" ,libfaketime))) ;for tests
;; The NSS test suite takes around 48 hours on Loongson 3A (MIPS) when
;; another build is happening concurrently on the same machine.
(properties '((timeout . 216000))) ; 60 hours
(home-page
"https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS")
(synopsis "Network Security Services")
(description
"Network Security Services (@dfn{NSS}) is a set of libraries designed to
support cross-platform development of security-enabled client and server
applications. Applications built with NSS can support SSL v2 and v3, TLS,
PKCS #5, PKCS #7, PKCS #11, PKCS #12, S/MIME, X.509 v3 certificates, and other
security standards.")
(license license:mpl2.0)))
(define (mozilla-patch file-name changeset hash) (define (mozilla-patch file-name changeset hash)
"Return an origin for CHANGESET from the mozilla-esr60 repository." "Return an origin for CHANGESET from the mozilla-esr60 repository."
(origin (origin

View File

@ -4,7 +4,7 @@
;;; Copyright © 2016 Andy Wingo <wingo@igalia.com> ;;; Copyright © 2016 Andy Wingo <wingo@igalia.com>
;;; Copyright © 2016 Ludovic Courtès <ludo@gnu.org> ;;; Copyright © 2016 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2016, 2017 Petter <petter@mykolab.ch> ;;; Copyright © 2016, 2017 Petter <petter@mykolab.ch>
;;; Copyright © 2016, 2017 Leo Famulari <leo@famulari.name> ;;; Copyright © 2016, 2017, 2019 Leo Famulari <leo@famulari.name>
;;; Copyright © 2017 Sergei Trofimovich <slyfox@inbox.ru> ;;; Copyright © 2017 Sergei Trofimovich <slyfox@inbox.ru>
;;; Copyright © 2017 Alex Vong <alexvong1995@gmail.com> ;;; Copyright © 2017 Alex Vong <alexvong1995@gmail.com>
;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr> ;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
@ -775,8 +775,8 @@ expressing configuration which is easy for both humans and machines to read.")
(license license:mpl2.0)))) (license license:mpl2.0))))
(define-public go-golang-org-x-crypto-bcrypt (define-public go-golang-org-x-crypto-bcrypt
(let ((commit "0fcca4842a8d74bfddc2c96a073bd2a4d2a7a2e8") (let ((commit "b7391e95e576cacdcdd422573063bc057239113d")
(revision "2")) (revision "3"))
(package (package
(name "go-golang-org-x-crypto-bcrypt") (name "go-golang-org-x-crypto-bcrypt")
(version (git-version "0.0.0" revision commit)) (version (git-version "0.0.0" revision commit))
@ -789,7 +789,7 @@ expressing configuration which is easy for both humans and machines to read.")
version "-checkout")) version "-checkout"))
(sha256 (sha256
(base32 (base32
"033ghifvrxmqr54nm8gmgxz7qxlqgw9z7z976kp88yf1rmxm2kjr")))) "1jqfh81mhgwcc6b9l0bs6rb0707s01qpvn7896i5bsmig46lc7zm"))))
(build-system go-build-system) (build-system go-build-system)
(arguments (arguments
`(#:import-path "golang.org/x/crypto/bcrypt" `(#:import-path "golang.org/x/crypto/bcrypt"
@ -801,186 +801,81 @@ password hashing function.")
(license license:bsd-3)))) (license license:bsd-3))))
(define-public go-golang-org-x-crypto-blowfish (define-public go-golang-org-x-crypto-blowfish
(let ((commit "0fcca4842a8d74bfddc2c96a073bd2a4d2a7a2e8") (package
(revision "2")) (inherit go-golang-org-x-crypto-bcrypt)
(package (name "go-golang-org-x-crypto-blowfish")
(name "go-golang-org-x-crypto-blowfish") (arguments
(version (git-version "0.0.0" revision commit)) `(#:import-path "golang.org/x/crypto/blowfish"
(source (origin #:unpack-path "golang.org/x/crypto"))
(method git-fetch) (synopsis "Blowfish in Go")
(uri (git-reference (description "This package provides a Go implementation of the Blowfish
(url "https://go.googlesource.com/crypto") symmetric-key block cipher.")))
(commit commit)))
(file-name (string-append "go.googlesource.com-crypto-"
version "-checkout"))
(sha256
(base32
"033ghifvrxmqr54nm8gmgxz7qxlqgw9z7z976kp88yf1rmxm2kjr"))))
(build-system go-build-system)
(arguments
`(#:import-path "golang.org/x/crypto/blowfish"
#:unpack-path "golang.org/x/crypto"))
(synopsis "Blowfish in Go")
(description "This package provides a Go implementation of the Blowfish
symmetric-key block cipher.")
(home-page "https://go.googlesource.com/crypto/")
(license license:bsd-3))))
(define-public go-golang-org-x-crypto-pbkdf2 (define-public go-golang-org-x-crypto-pbkdf2
(let ((commit "0fcca4842a8d74bfddc2c96a073bd2a4d2a7a2e8") (package
(revision "2")) (inherit go-golang-org-x-crypto-bcrypt)
(package (name "go-golang-org-x-crypto-pbkdf2")
(name "go-golang-org-x-crypto-pbkdf2") (arguments
(version (git-version "0.0.0" revision commit)) `(#:import-path "golang.org/x/crypto/pbkdf2"
(source (origin #:unpack-path "golang.org/x/crypto"))
(method git-fetch) (synopsis "PBKDF2 in Go")
(uri (git-reference (description "This package provides a Go implementation of the PBKDF2 key
(url "https://go.googlesource.com/crypto") derivation function.")))
(commit commit)))
(file-name (string-append "go.googlesource.com-crypto-"
version "-checkout"))
(sha256
(base32
"033ghifvrxmqr54nm8gmgxz7qxlqgw9z7z976kp88yf1rmxm2kjr"))))
(build-system go-build-system)
(arguments
`(#:import-path "golang.org/x/crypto/pbkdf2"
#:unpack-path "golang.org/x/crypto"))
(synopsis "PBKDF2 in Go")
(description "This package provides a Go implementation of the PBKDF2 key
derivation function.")
(home-page "https://go.googlesource.com/crypto/")
(license license:bsd-3))))
(define-public go-golang-org-x-crypto-tea (define-public go-golang-org-x-crypto-tea
(let ((commit "0fcca4842a8d74bfddc2c96a073bd2a4d2a7a2e8") (package
(revision "2")) (inherit go-golang-org-x-crypto-bcrypt)
(package (name "go-golang-org-x-crypto-tea")
(name "go-golang-org-x-crypto-tea") (arguments
(version (git-version "0.0.0" revision commit)) `(#:import-path "golang.org/x/crypto/tea"
(source (origin #:unpack-path "golang.org/x/crypto"))
(method git-fetch) (synopsis "Tiny Encryption Algorithm (TEA) in Go")
(uri (git-reference (description "This packages a Go implementation of the Tiny Encryption
(url "https://go.googlesource.com/crypto") Algorithm (TEA) block cipher.")))
(commit commit)))
(file-name (string-append "go.googlesource.com-crypto-"
version "-checkout"))
(sha256
(base32
"033ghifvrxmqr54nm8gmgxz7qxlqgw9z7z976kp88yf1rmxm2kjr"))))
(build-system go-build-system)
(arguments
`(#:import-path "golang.org/x/crypto/tea"
#:unpack-path "golang.org/x/crypto"))
(synopsis "Tiny Encryption Algorithm (TEA) in Go")
(description "This packages a Go implementation of the Tiny Encryption
Algorithm (TEA) block cipher.")
(home-page "https://go.googlesource.com/crypto/")
(license license:bsd-3))))
(define-public go-golang-org-x-crypto-salsa20 (define-public go-golang-org-x-crypto-salsa20
(let ((commit "0fcca4842a8d74bfddc2c96a073bd2a4d2a7a2e8") (package
(revision "2")) (inherit go-golang-org-x-crypto-bcrypt)
(package (name "go-golang-org-x-crypto-salsa20")
(name "go-golang-org-x-crypto-salsa20") (arguments
(version (git-version "0.0.0" revision commit)) `(#:import-path "golang.org/x/crypto/salsa20"
(source (origin #:unpack-path "golang.org/x/crypto"))
(method git-fetch) (synopsis "Salsa20 in Go")
(uri (git-reference (description "This packages provides a Go implementation of the Salsa20
(url "https://go.googlesource.com/crypto") stream cipher.")))
(commit commit)))
(file-name (string-append "go.googlesource.com-crypto-"
version "-checkout"))
(sha256
(base32
"033ghifvrxmqr54nm8gmgxz7qxlqgw9z7z976kp88yf1rmxm2kjr"))))
(build-system go-build-system)
(arguments
`(#:import-path "golang.org/x/crypto/salsa20"
#:unpack-path "golang.org/x/crypto"))
(synopsis "Salsa20 in Go")
(description "This packages provides a Go implementation of the Salsa20
stream cipher.")
(home-page "https://go.googlesource.com/crypto/")
(license license:bsd-3))))
(define-public go-golang-org-x-crypto-cast5 (define-public go-golang-org-x-crypto-cast5
(let ((commit "0fcca4842a8d74bfddc2c96a073bd2a4d2a7a2e8") (package
(revision "2")) (inherit go-golang-org-x-crypto-bcrypt)
(package (name "go-golang-org-x-crypto-cast5")
(name "go-golang-org-x-crypto-cast5") (arguments
(version (git-version "0.0.0" revision commit)) `(#:import-path "golang.org/x/crypto/cast5"
(source (origin #:unpack-path "golang.org/x/crypto"))
(method git-fetch) (synopsis "Cast5 in Go")
(uri (git-reference (description "This packages provides a Go implementation of the Cast5
(url "https://go.googlesource.com/crypto") symmetric-key block cipher.")))
(commit commit)))
(file-name (string-append "go.googlesource.com-crypto-"
version "-checkout"))
(sha256
(base32
"033ghifvrxmqr54nm8gmgxz7qxlqgw9z7z976kp88yf1rmxm2kjr"))))
(build-system go-build-system)
(arguments
`(#:import-path "golang.org/x/crypto/cast5"
#:unpack-path "golang.org/x/crypto"))
(synopsis "Cast5 in Go")
(description "This packages provides a Go implementation of the Cast5
symmetric-key block cipher.")
(home-page "https://go.googlesource.com/crypto/")
(license license:bsd-3))))
(define-public go-golang-org-x-crypto-twofish (define-public go-golang-org-x-crypto-twofish
(let ((commit "0fcca4842a8d74bfddc2c96a073bd2a4d2a7a2e8") (package
(revision "2")) (inherit go-golang-org-x-crypto-bcrypt)
(package (name "go-golang-org-x-crypto-twofish")
(name "go-golang-org-x-crypto-twofish") (arguments
(version (git-version "0.0.0" revision commit)) `(#:import-path "golang.org/x/crypto/twofish"
(source (origin #:unpack-path "golang.org/x/crypto"))
(method git-fetch) (synopsis "Twofish in Go")
(uri (git-reference (description "This packages provides a Go implementation of the Twofish
(url "https://go.googlesource.com/crypto") symmetric-key block cipher.")))
(commit commit)))
(file-name (string-append "go.googlesource.com-crypto-"
version "-checkout"))
(sha256
(base32
"033ghifvrxmqr54nm8gmgxz7qxlqgw9z7z976kp88yf1rmxm2kjr"))))
(build-system go-build-system)
(arguments
`(#:import-path "golang.org/x/crypto/twofish"
#:unpack-path "golang.org/x/crypto"))
(synopsis "Twofish in Go")
(description "This packages provides a Go implementation of the Twofish
symmetric-key block cipher.")
(home-page "https://go.googlesource.com/crypto/")
(license license:bsd-3))))
(define-public go-golang-org-x-crypto-xtea (define-public go-golang-org-x-crypto-xtea
(let ((commit "0fcca4842a8d74bfddc2c96a073bd2a4d2a7a2e8") (package
(revision "2")) (inherit go-golang-org-x-crypto-bcrypt)
(package (name "go-golang-org-x-crypto-xtea")
(name "go-golang-org-x-crypto-xtea") (arguments
(version (git-version "0.0.0" revision commit)) `(#:import-path "golang.org/x/crypto/xtea"
(source (origin #:unpack-path "golang.org/x/crypto"))
(method git-fetch) (synopsis "eXtended Tiny Encryption Algorithm (XTEA) in Go")
(uri (git-reference (description "This package provides a Go implementation of the eXtended
(url "https://go.googlesource.com/crypto") Tiny Encryption Algorithm (XTEA) block cipher.")))
(commit commit)))
(file-name (string-append "go.googlesource.com-crypto-"
version "-checkout"))
(sha256
(base32
"033ghifvrxmqr54nm8gmgxz7qxlqgw9z7z976kp88yf1rmxm2kjr"))))
(build-system go-build-system)
(arguments
`(#:import-path "golang.org/x/crypto/xtea"
#:unpack-path "golang.org/x/crypto"))
(synopsis "eXtended Tiny Encryption Algorithm (XTEA) in Go")
(description "This package provides a Go implementation of the eXtended
Tiny Encryption Algorithm (XTEA) block cipher.")
(home-page "https://go.googlesource.com/crypto/")
(license license:bsd-3))))
(define-public go-golang-org-x-crypto-ed25519 (define-public go-golang-org-x-crypto-ed25519
(package (package
@ -1024,6 +919,8 @@ hash algorithm.")))
(substitute-keyword-arguments (package-arguments go-golang-org-x-crypto-bcrypt) (substitute-keyword-arguments (package-arguments go-golang-org-x-crypto-bcrypt)
((#:import-path _) ((#:import-path _)
"golang.org/x/crypto/blake2s"))) "golang.org/x/crypto/blake2s")))
(propagated-inputs
`(("go-golang-org-x-sys-cpu" ,go-golang-org-x-sys-cpu)))
(synopsis "BLAKE2s in Go") (synopsis "BLAKE2s in Go")
(description "This package provides a Go implementation of the BLAKE2s (description "This package provides a Go implementation of the BLAKE2s
hash algorithm."))) hash algorithm.")))
@ -1272,6 +1169,17 @@ for low-level interaction with the operating system.")
(home-page "https://go.googlesource.com/sys") (home-page "https://go.googlesource.com/sys")
(license license:bsd-3)))) (license license:bsd-3))))
(define-public go-golang-org-x-sys-cpu
(package
(inherit go-golang-org-x-sys-unix)
(name "go-golang-org-x-sys-cpu")
(arguments
'(#:import-path "golang.org/x/sys/cpu"
#:unpack-path "golang.org/x/sys"))
(synopsis "CPU feature detection")
(description "Thi spackage provides @code{cpu}, which offers tools for CPU
feature detection in Go.")))
(define-public go-golang-org-x-text-transform (define-public go-golang-org-x-text-transform
(let ((commit "e19ae1496984b1c655b8044a65c0300a3c878dd3") (let ((commit "e19ae1496984b1c655b8044a65c0300a3c878dd3")
(revision "1")) (revision "1"))
@ -1354,60 +1262,40 @@ limiting in Go.")
(license license:bsd-3)))) (license license:bsd-3))))
(define-public go-golang-org-x-crypto-ssh-terminal (define-public go-golang-org-x-crypto-ssh-terminal
(let ((commit "95a4943f35d008beabde8c11e5075a1b714e6419") (package
(revision "1")) (inherit go-golang-org-x-crypto-bcrypt)
(package (name "go-golang-org-x-crypto-ssh-terminal")
(name "go-golang-org-x-crypto-ssh-terminal") (inputs
(version (git-version "0.0.0" revision commit)) `(("go-golang-org-x-sys-unix" ,go-golang-org-x-sys-unix)))
(source (origin (arguments
(method git-fetch) `(#:import-path "golang.org/x/crypto/ssh/terminal"
(uri (git-reference #:unpack-path "golang.org/x/crypto"))
(url "https://go.googlesource.com/crypto") (synopsis "Terminal functions for Go")
(commit commit))) (description "This package provides @{terminal}, which implements support
(file-name (string-append "go.googlesource.com-crypto-" functions for dealing with terminals, as commonly found on UNIX systems.")))
version "-checkout"))
(sha256
(base32
"0bkm0jx9mxmi1liabb9c04kf765n7d0062zdp3zmvzyamsq00lcx"))))
(build-system go-build-system)
(inputs
`(("go-golang-org-x-sys-unix" ,go-golang-org-x-sys-unix)))
(arguments
`(#:import-path "golang.org/x/crypto/ssh/terminal"
#:unpack-path "golang.org/x/crypto"))
(synopsis "Terminal functions for Go")
(description "This package provides @{terminal}, which implements
support functions for dealing with terminals, as commonly found on UNIX
systems.")
(home-page "https://go.googlesource.com/crypto/")
(license license:bsd-3))))
(define-public go-github-com-burntsushi-toml (define-public go-github-com-burntsushi-toml
(let ((commit (package
"a368813c5e648fee92e5f6c30e3944ff9d5e8895") (name "go-github-com-burntsushi-toml")
(revision "0")) (version "0.3.1")
(package (source
(name "go-github-com-burntsushi-toml") (origin
(version (git-version "0.0.0" revision commit)) (method git-fetch)
(source (uri (git-reference
(origin (url "https://github.com/BurntSushi/toml.git")
(method git-fetch) (commit (string-append "v" version))))
(uri (git-reference (file-name (git-file-name name version))
(url "https://github.com/BurntSushi/toml.git") (sha256
(commit commit))) (base32
(file-name (git-file-name name version)) "1fjdwwfzyzllgiwydknf1pwjvy49qxfsczqx5gz3y0izs7as99j6"))))
(sha256 (build-system go-build-system)
(base32 (arguments
"1sjxs2lwc8jpln80s4rlzp7nprbcljhy5mz4rf9995gq93wqnym5")))) '(#:import-path "github.com/BurntSushi/toml"))
(build-system go-build-system) (home-page "https://github.com/BurntSushi/toml")
(arguments (synopsis "Toml parser and encoder for Go")
'(#:import-path "github.com/BurntSushi/toml")) (description "This package is toml parser and encoder for Go. The interface
(home-page "https://github.com/BurntSushi/toml") is similar to Go's standard library @code{json} and @code{xml} package.")
(synopsis "Toml parser and encoder for Go") (license license:expat)))
(description "This package is toml parser and encoder for Go. The
interface is similar to Go's standard library @code{json} and @code{xml}
package.")
(license license:expat))))
(define-public go-github-com-getsentry-raven-go (define-public go-github-com-getsentry-raven-go
(let ((commit (let ((commit

View File

@ -245,6 +245,40 @@ subplots, multiple-axes, polar charts, and bubble charts. ")
(define-public python2-plotly (define-public python2-plotly
(package-with-python2 python-plotly)) (package-with-python2 python-plotly))
(define-public python-louvain
(package
(name "python-louvain")
(version "0.6.1")
;; The tarball on Pypi does not include the tests.
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/vtraag/louvain-igraph.git")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32
"0w31537sifkf65sck1iaip5i6d8g64pa3wdwad83d6p9jwkck57k"))))
(build-system python-build-system)
(propagated-inputs
`(("python-ddt" ,python-ddt)
("python-igraph" ,python-igraph)))
(inputs
`(("igraph" ,igraph)))
(native-inputs
`(("pkg-config" ,pkg-config)
("python-pytest" ,python-pytest)))
(home-page "https://github.com/vtraag/louvain-igraph")
(synopsis "Algorithm for methods of community detection in large networks")
(description
"This package provides an implementation of the Louvain algorithm for use
with igraph. Louvain is a general algorithm for methods of community
detection in large networks.
This package has been superseded by the @code{leidenalg} package and should
not be used for new projects.")
(license license:gpl3+)))
(define-public faiss (define-public faiss
(package (package
(name "faiss") (name "faiss")

View File

@ -0,0 +1,400 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2015, 2017, 2018 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2016, 2017, 2018 ng0 <ng0@n0.is>
;;; Copyright © 2017, 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2018 Timothy Sample <samplet@ngyro.com>
;;; Copyright © 2018 Arun Isaac <arunisaac@systemreboot.net>
;;; Copyright © 2016, 2017 Leo Famulari <leo@famulari.name>
;;; Copyright © 2015 Paul van der Walt <paul@denknerd.org>
;;;
;;; This file is part of GNU Guix.
;;;
;;; GNU Guix is free software; you can redistribute it and/or modify it
;;; under the terms of the GNU General Public License as published by
;;; the Free Software Foundation; either version 3 of the License, or (at
;;; your option) any later version.
;;;
;;; GNU Guix is distributed in the hope that it will be useful, but
;;; WITHOUT ANY WARRANTY; without even the implied warranty of
;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
;;; GNU General Public License for more details.
;;;
;;; You should have received a copy of the GNU General Public License
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
(define-module (gnu packages haskell-apps)
#:use-module (guix download)
#:use-module (guix packages)
#:use-module ((guix licenses) #:prefix license:)
#:use-module (guix build-system haskell)
#:use-module (gnu packages base)
#:use-module (gnu packages curl)
#:use-module (gnu packages gl)
#:use-module (gnu packages haskell)
#:use-module (gnu packages haskell-check)
#:use-module (gnu packages haskell-crypto)
#:use-module (gnu packages haskell-web)
#:use-module (gnu packages ncurses)
#:use-module (gnu packages perl)
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages rsync)
#:use-module (gnu packages sdl)
#:use-module (gnu packages version-control))
;; Darcs has no https support: http://irclog.perlgeek.de/darcs/2016-09-17
;; http://darcs.net/manual/Configuring_darcs.html#SECTION00440070000000000000
;; and results of search engines will show that if the protocol is http, https
;; is never mentioned.
(define-public darcs
(package
(name "darcs")
(version "2.14.2")
(source
(origin
(method url-fetch)
(uri (string-append "https://hackage.haskell.org/package/darcs/"
"darcs-" version ".tar.gz"))
(sha256
(base32
"0zm2486gyhiga1amclbg92cd09bvki6vgh0ll75hv5kl72j61lb5"))
(modules '((guix build utils)))
;; Remove time-dependent code for reproducibility.
(snippet
'(begin
(substitute* "darcs/darcs.hs"
(("__DATE__") "\"1970-01-01\"")
(("__TIME__") "\"00:00:00\""))
#t))))
(build-system haskell-build-system)
(arguments
`(#:configure-flags '("-fpkgconfig" "-fcurl" "-flibiconv" "-fthreaded"
"-fnetwork-uri" "-fhttp" "--flag=executable"
"--flag=library")
#:phases
(modify-phases %standard-phases
(add-after 'patch-source-shebangs 'patch-sh
(lambda _
(substitute* "tests/issue538.sh"
(("/bin/sh") (which "sh")))
#t)))))
(inputs
`(("ghc-cmdargs" ,ghc-cmdargs)
("ghc-split" ,ghc-split)
("ghc-test-framework-quickcheck2" ,ghc-test-framework-quickcheck2)
("ghc-test-framework-hunit" ,ghc-test-framework-hunit)
("ghc-test-framework" ,ghc-test-framework)
("ghc-quickcheck" ,ghc-quickcheck)
("ghc-findbin" ,ghc-findbin)
("ghc-hunit" ,ghc-hunit)
("ghc-async" ,ghc-async)
("ghc-attoparsec" ,ghc-attoparsec)
("ghc-base16-bytestring" ,ghc-base16-bytestring)
("ghc-bytestring-builder" ,ghc-bytestring-builder)
("ghc-cryptohash" ,ghc-cryptohash)
("ghc-data-ordlist" ,ghc-data-ordlist)
("ghc-fgl" ,ghc-fgl)
("ghc-system-filepath" ,ghc-system-filepath)
("ghc-graphviz" ,ghc-graphviz)
("ghc-hashable" ,ghc-hashable)
("ghc-html" ,ghc-html)
("ghc-mmap" ,ghc-mmap)
("ghc-old-time" ,ghc-old-time)
("ghc-parsec" ,ghc-parsec)
("ghc-random" ,ghc-random)
("ghc-regex-applicative" ,ghc-regex-applicative)
("ghc-regex-compat-tdfa" ,ghc-regex-compat-tdfa)
("ghc-sandi" ,ghc-sandi)
("ghc-shelly" ,ghc-shelly)
("ghc-tar" ,ghc-tar)
("ghc-transformers-compat" ,ghc-transformers-compat)
("ghc-unix-compat" ,ghc-unix-compat)
("ghc-utf8-string" ,ghc-utf8-string)
("ghc-vector" ,ghc-vector)
("ghc-zip-archive" ,ghc-zip-archive)
("ghc-zlib" ,ghc-zlib)
("ghc-http" ,ghc-http)
("curl" ,curl)
("ghc" ,ghc)
("ncurses" ,ncurses)
("perl" ,perl)
("libiconv" ,libiconv)
("ghc-network" ,ghc-network)
("ghc-network-uri" ,ghc-network-uri)))
(native-inputs
`(("pkg-config" ,pkg-config)))
(home-page "http://darcs.net")
(synopsis "Distributed Revision Control System")
(description
"Darcs is a revision control system. It is:
@enumerate
@item Distributed: Every user has access to the full command set, removing boundaries
between server and client or committer and non-committers.
@item Interactive: Darcs is easy to learn and efficient to use because it asks you
questions in response to simple commands, giving you choices in your work flow.
You can choose to record one change in a file, while ignoring another. As you update
from upstream, you can review each patch name, even the full diff for interesting
patches.
@item Smart: Originally developed by physicist David Roundy, darcs is based on a
unique algebra of patches called @url{http://darcs.net/Theory,Patchtheory}.
@end enumerate")
(license license:gpl2)))
(define-public git-annex
(package
(name "git-annex")
(version "6.20180926")
(source
(origin
(method url-fetch)
(uri (string-append "https://hackage.haskell.org/package/"
"git-annex/git-annex-" version ".tar.gz"))
(sha256
(base32
"1251rj8h63y30sfqk0zh670yhz14p256y59n3590pg015pf3575d"))))
(build-system haskell-build-system)
(arguments
`(#:configure-flags
'("--flags=-Android -Assistant -Pairing -S3 -Webapp -WebDAV")
#:phases
(modify-phases %standard-phases
(add-before 'configure 'patch-shell
(lambda _
(substitute* "Utility/Shell.hs"
(("/bin/sh") (which "sh")))
#t))
(add-before 'configure 'factor-setup
(lambda _
;; Factor out necessary build logic from the provided
;; `Setup.hs' script. The script as-is does not work because
;; it cannot find its dependencies, and there is no obvious way
;; to tell it where to look. Note that we do not preserve the
;; code that installs man pages here.
(call-with-output-file "PreConf.hs"
(lambda (out)
(format out "import qualified Build.Configure as Configure~%")
(format out "main = Configure.run Configure.tests~%")))
(call-with-output-file "Setup.hs"
(lambda (out)
(format out "import Distribution.Simple~%")
(format out "main = defaultMain~%")))
#t))
(add-before 'configure 'pre-configure
(lambda _
(invoke "runhaskell" "PreConf.hs")
#t))
(replace 'check
(lambda _
;; We need to set the path so that Git recognizes
;; `git annex' as a custom command.
(setenv "PATH" (string-append (getenv "PATH") ":"
(getcwd) "/dist/build/git-annex"))
(with-directory-excursion "dist/build/git-annex"
(symlink "git-annex" "git-annex-shell"))
(invoke "git-annex" "test")
#t))
(add-after 'install 'install-symlinks
(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(bin (string-append out "/bin")))
(symlink (string-append bin "/git-annex")
(string-append bin "/git-annex-shell"))
(symlink (string-append bin "/git-annex")
(string-append bin "/git-remote-tor-annex"))
#t))))))
(inputs
`(("curl" ,curl)
("ghc-aeson" ,ghc-aeson)
("ghc-async" ,ghc-async)
("ghc-bloomfilter" ,ghc-bloomfilter)
("ghc-byteable" ,ghc-byteable)
("ghc-case-insensitive" ,ghc-case-insensitive)
("ghc-crypto-api" ,ghc-crypto-api)
("ghc-cryptonite" ,ghc-cryptonite)
("ghc-data-default" ,ghc-data-default)
("ghc-disk-free-space" ,ghc-disk-free-space)
("ghc-dlist" ,ghc-dlist)
("ghc-edit-distance" ,ghc-edit-distance)
("ghc-esqueleto" ,ghc-esqueleto)
("ghc-exceptions" ,ghc-exceptions)
("ghc-feed" ,ghc-feed)
("ghc-free" ,ghc-free)
("ghc-hslogger" ,ghc-hslogger)
("ghc-http-client" ,ghc-http-client)
("ghc-http-conduit" ,ghc-http-conduit)
("ghc-http-types" ,ghc-http-types)
("ghc-ifelse" ,ghc-ifelse)
("ghc-memory" ,ghc-memory)
("ghc-monad-control" ,ghc-monad-control)
("ghc-monad-logger" ,ghc-monad-logger)
("ghc-network" ,ghc-network)
("ghc-old-locale" ,ghc-old-locale)
("ghc-optparse-applicative" ,ghc-optparse-applicative)
("ghc-persistent" ,ghc-persistent)
("ghc-persistent-sqlite" ,ghc-persistent-sqlite)
("ghc-persistent-template" ,ghc-persistent-template)
("ghc-quickcheck" ,ghc-quickcheck)
("ghc-random" ,ghc-random)
("ghc-regex-tdfa" ,ghc-regex-tdfa)
("ghc-resourcet" ,ghc-resourcet)
("ghc-safesemaphore" ,ghc-safesemaphore)
("ghc-sandi" ,ghc-sandi)
("ghc-securemem" ,ghc-securemem)
("ghc-socks" ,ghc-socks)
("ghc-split" ,ghc-split)
("ghc-stm" ,ghc-stm)
("ghc-stm-chans" ,ghc-stm-chans)
("ghc-tagsoup" ,ghc-tagsoup)
("ghc-text" ,ghc-text)
("ghc-unix-compat" ,ghc-unix-compat)
("ghc-unordered-containers" ,ghc-unordered-containers)
("ghc-utf8-string" ,ghc-utf8-string)
("ghc-uuid" ,ghc-uuid)
("git" ,git)
("rsync" ,rsync)))
(native-inputs
`(("ghc-tasty" ,ghc-tasty)
("ghc-tasty-hunit" ,ghc-tasty-hunit)
("ghc-tasty-quickcheck" ,ghc-tasty-quickcheck)
("ghc-tasty-rerun" ,ghc-tasty-rerun)))
(home-page "https://git-annex.branchable.com/")
(synopsis "Manage files with Git, without checking in their contents")
(description "This package allows managing files with Git, without
checking the file contents into Git. It can store files in many places,
such as local hard drives and cloud storage services. It can also be
used to keep a folder in sync between computers.")
;; The web app is released under the AGPLv3+.
(license (list license:gpl3+
license:agpl3+))))
(define-public ghc-sdl2
(package
(name "ghc-sdl2")
(version "2.4.1.0")
(source
(origin
(method url-fetch)
(uri (string-append "https://hackage.haskell.org/package/"
"sdl2/sdl2-" version ".tar.gz"))
(sha256
(base32
"0p4b12fmxps0sbnkqdfy0qw19s355yrkw7fgw6xz53wzq706k991"))))
(build-system haskell-build-system)
(arguments '(#:tests? #f)) ; tests require graphical environment
(inputs
`(("ghc-exceptions" ,ghc-exceptions)
("ghc-linear" ,ghc-linear)
("ghc-statevar" ,ghc-statevar)
("ghc-text" ,ghc-text)
("ghc-vector" ,ghc-vector)
("sdl2" ,sdl2)))
(native-inputs
`(("ghc-weigh" ,ghc-weigh)
("pkg-config" ,pkg-config)))
(home-page "http://hackage.haskell.org/package/sdl2")
(synopsis "High- and low-level bindings to the SDL library")
(description
"This package contains bindings to the SDL 2 library, in both high- and
low-level forms. The @code{SDL} namespace contains high-level bindings, where
enumerations are split into sum types, and we perform automatic
error-checking. The @code{SDL.Raw} namespace contains an almost 1-1
translation of the C API into Haskell FFI calls. As such, this does not
contain sum types nor error checking. Thus this namespace is suitable for
building your own abstraction over SDL, but is not recommended for day-to-day
programming.")
(license license:bsd-3)))
(define-public ghc-sdl2-mixer
(package
(name "ghc-sdl2-mixer")
(version "1.1.0")
(source
(origin
(method url-fetch)
(uri (string-append "https://hackage.haskell.org/package/sdl2-mixer/"
"sdl2-mixer-" version ".tar.gz"))
(sha256
(base32
"1k8avyccq5l9z7bwxigim312yaancxl1sr3q6a96bcm7pnhiak0g"))))
(build-system haskell-build-system)
(inputs
`(("ghc-data-default-class" ,ghc-data-default-class)
("ghc-lifted-base" ,ghc-lifted-base)
("ghc-monad-control" ,ghc-monad-control)
("ghc-sdl2" ,ghc-sdl2)
("ghc-vector" ,ghc-vector)
("sdl2-mixer" ,sdl2-mixer)))
(native-inputs
`(("pkg-config" ,pkg-config)))
(home-page "http://hackage.haskell.org/package/sdl2-mixer")
(synopsis "Bindings to SDL2 mixer")
(description "This package provides Haskell bindings to
@code{SDL2_mixer}.")
(license license:bsd-3)))
(define-public ghc-sdl2-image
(package
(name "ghc-sdl2-image")
(version "2.0.0")
(source
(origin
(method url-fetch)
(uri (string-append "https://hackage.haskell.org/package/sdl2-image/"
"sdl2-image-" version ".tar.gz"))
(sha256
(base32
"1pr6dkg73cy9z0w54lrkj9c5bhxj56nl92lxikjy8kz6nyr455rr"))))
(build-system haskell-build-system)
(inputs
`(("ghc-sdl2" ,ghc-sdl2)
("ghc-text" ,ghc-text)
("sdl2-image" ,sdl2-image)))
(native-inputs
`(("pkg-config" ,pkg-config)))
(home-page "http://hackage.haskell.org/package/sdl2-image")
(synopsis "Bindings to SDL2_image")
(description "This package provides Haskell bindings to
@code{SDL2_image}.")
(license license:expat)))
(define-public raincat
(package
(name "raincat")
(version "1.2.1")
(source
(origin
(method url-fetch)
(uri (string-append "http://hackage.haskell.org/package/Raincat/"
"Raincat-" version ".tar.gz"))
(sha256
(base32
"10y9zi22m6hf13c9h8zd9vg7mljpwbw0r3djb6r80bna701fdf6c"))))
(build-system haskell-build-system)
(arguments
`(#:phases
(modify-phases %standard-phases
(add-after 'install 'wrap-executable
(lambda* (#:key inputs outputs #:allow-other-keys)
(let ((out (assoc-ref outputs "out")))
(wrap-program (string-append out "/bin/raincat")
`("LD_LIBRARY_PATH" ":" =
(,(string-append (assoc-ref inputs "freeglut")
"/lib"))))
#t))))))
(inputs
`(("ghc-extensible-exceptions" ,ghc-extensible-exceptions)
("ghc-random" ,ghc-random)
("ghc-glut" ,ghc-glut)
("freeglut" ,freeglut)
("ghc-opengl" ,ghc-opengl)
("ghc-sdl2" ,ghc-sdl2)
("ghc-sdl2-image" ,ghc-sdl2-image)
("ghc-sdl2-mixer" ,ghc-sdl2-mixer)))
(home-page "http://www.bysusanlin.com/raincat/")
(synopsis "Puzzle game with a cat in lead role")
(description "Project Raincat is a game developed by Carnegie Mellon
students through GCS during the Fall 2008 semester. Raincat features game
play inspired from classics Lemmings and The Incredible Machine. The project
proved to be an excellent learning experience for the programmers. Everything
is programmed in Haskell.")
(license license:bsd-3)))

View File

@ -733,3 +733,46 @@ It also includes support for detached signatures, and thorough
documentation on the design and implementation, including usage documentation on the design and implementation, including usage
guidelines.") guidelines.")
(license license:expat))) (license license:expat)))
(define-public ghc-tls
(package
(name "ghc-tls")
(version "1.4.1")
(source (origin
(method url-fetch)
(uri (string-append "https://hackage.haskell.org/package/"
"tls/tls-" version ".tar.gz"))
(sha256
(base32
"1y083724mym28n6xfaz7pcc7zqxdhjpaxpbvzxfbs25qq2px3smv"))))
(build-system haskell-build-system)
(inputs
`(("ghc-cereal" ,ghc-cereal)
("ghc-data-default-class" ,ghc-data-default-class)
("ghc-memory" ,ghc-memory)
("ghc-cryptonite" ,ghc-cryptonite)
("ghc-asn1-types" ,ghc-asn1-types)
("ghc-asn1-encoding" ,ghc-asn1-encoding)
("ghc-x509" ,ghc-x509)
("ghc-x509-store" ,ghc-x509-store)
("ghc-x509-validation" ,ghc-x509-validation)
("ghc-async" ,ghc-async)
("ghc-network" ,ghc-network)
("ghc-hourglass" ,ghc-hourglass)))
(native-inputs
`(("ghc-tasty" ,ghc-tasty)
("ghc-tasty-quickcheck" ,ghc-tasty-quickcheck)
("ghc-quickcheck" ,ghc-quickcheck)))
(home-page "https://github.com/vincenthz/hs-tls")
(synopsis
"TLS/SSL protocol native implementation (Server and Client)")
(description
"Native Haskell TLS and SSL protocol implementation for server and client.
This provides a high-level implementation of a sensitive security protocol,
eliminating a common set of security issues through the use of the advanced
type system, high level constructions and common Haskell features. Currently
implement the SSL3.0, TLS1.0, TLS1.1 and TLS1.2 protocol, and support RSA and
Ephemeral (Elliptic curve and regular) Diffie Hellman key exchanges, and many
extensions.")
(license license:bsd-3)))

View File

@ -1,6 +1,6 @@
;;; GNU Guix --- Functional package management for GNU ;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2015 Paul van der Walt <paul@denknerd.org> ;;; Copyright © 2015 Paul van der Walt <paul@denknerd.org>
;;; Copyright © 2015, 2016, 2018 Ricardo Wurmus <rekado@elephly.net> ;;; Copyright © 2015, 2016, 2017, 2018 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2015 Federico Beffa <beffa@fbengineering.ch> ;;; Copyright © 2015 Federico Beffa <beffa@fbengineering.ch>
;;; Copyright © 2016 Ludovic Courtès <ludo@gnu.org> ;;; Copyright © 2016 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2017 rsiddharth <s@ricketyspace.net> ;;; Copyright © 2017 rsiddharth <s@ricketyspace.net>
@ -27,7 +27,6 @@
#:use-module (gnu packages haskell) #:use-module (gnu packages haskell)
#:use-module (gnu packages haskell-check) #:use-module (gnu packages haskell-check)
#:use-module (gnu packages haskell-crypto) #:use-module (gnu packages haskell-crypto)
#:use-module (gnu packages tls)
#:use-module (guix build-system haskell) #:use-module (guix build-system haskell)
#:use-module (guix download) #:use-module (guix download)
#:use-module ((guix licenses) #:prefix license:) #:use-module ((guix licenses) #:prefix license:)
@ -1244,3 +1243,108 @@ providing richtext field using Nic editor. ")
Yesod related packages into one cohesive whole. This is the version of Yesod, Yesod related packages into one cohesive whole. This is the version of Yesod,
whereas most of the core code lives in @code{ghc-yesod-core}.") whereas most of the core code lives in @code{ghc-yesod-core}.")
(license license:expat))) (license license:expat)))
(define-public ghc-hxt-charproperties
(package
(name "ghc-hxt-charproperties")
(version "9.2.0.1")
(source
(origin
(method url-fetch)
(uri (string-append "https://hackage.haskell.org/package/"
"hxt-charproperties/hxt-charproperties-"
version ".tar.gz"))
(sha256
(base32
"1mml8wglvagqq891rchgli6r8rnkwrqhgsxfl6kb5403pzb18rp4"))))
(build-system haskell-build-system)
(home-page "https://github.com/UweSchmidt/hxt")
(synopsis "Character properties and classes for XML and Unicode")
(description
"The modules provided by this package contain predicates for Unicode
blocks and char properties and character predicates defined by XML. The
supported Unicode version is 7.0.0")
(license license:expat)))
(define-public ghc-hxt-unicode
(package
(name "ghc-hxt-unicode")
(version "9.0.2.4")
(source
(origin
(method url-fetch)
(uri (string-append
"https://hackage.haskell.org/package/hxt-unicode/hxt-unicode-"
version
".tar.gz"))
(sha256
(base32
"0rj48cy8z4fl3zpg5bpa458kqr83adav6jnqv4i71dclpprj6n3v"))))
(build-system haskell-build-system)
(inputs
`(("ghc-hxt-charproperties" ,ghc-hxt-charproperties)))
(home-page
"http://www.fh-wedel.de/~si/HXmlToolbox/index.html https://github.com/UweSchmidt/hxt")
(synopsis
"Unicode en-/decoding functions for utf8, iso-latin-* and other encodings")
(description
"This package provides Unicode encoding and decoding functions for
encodings used in the Haskell XML Toolbox. ISO Latin 1-16, utf8, utf16, ASCII
are supported. Decoding is done with lazy functions, errors may be detected or
ignored.")
(license license:expat)))
(define-public ghc-hxt-regex-xmlschema
(package
(name "ghc-hxt-regex-xmlschema")
(version "9.2.0.3")
(source
(origin
(method url-fetch)
(uri (string-append "https://hackage.haskell.org/package/"
"hxt-regex-xmlschema/hxt-regex-xmlschema-"
version ".tar.gz"))
(sha256
(base32
"1c4jr0439f5yc05h7iz53fa47g6l2wrvqp6gvwf01mlqajk3nx7l"))))
(build-system haskell-build-system)
(inputs
`(("ghc-hxt-charproperties" ,ghc-hxt-charproperties)
("ghc-parsec" ,ghc-parsec)
("ghc-text" ,ghc-text)
("ghc-hunit" ,ghc-hunit)))
(home-page "http://www.haskell.org/haskellwiki/Regular_expressions_for_XML_Schema")
(synopsis "Regular expression library for W3C XML Schema regular expressions")
(description
"This library supports full W3C XML Schema regular expressions inclusive
all Unicode character sets and blocks. It is implemented by the technique of
derivations of regular expressions.")
(license license:expat)))
(define-public ghc-hxt
(package
(name "ghc-hxt")
(version "9.3.1.16")
(source
(origin
(method url-fetch)
(uri (string-append
"https://hackage.haskell.org/package/hxt/hxt-"
version
".tar.gz"))
(sha256
(base32
"1qq3ykgn355rx242xjcbqqksgvwr6k2fdj5phw4iv28qqxff6m8d"))))
(build-system haskell-build-system)
(inputs
`(("ghc-parsec" ,ghc-parsec)
("ghc-hxt-charproperties" ,ghc-hxt-charproperties)
("ghc-hxt-unicode" ,ghc-hxt-unicode)
("ghc-hxt-regex-xmlschema" ,ghc-hxt-regex-xmlschema)
("ghc-network-uri" ,ghc-network-uri)))
(home-page "https://github.com/UweSchmidt/hxt")
(synopsis "Collection of tools for processing XML with Haskell")
(description
"The Haskell XML Toolbox bases on the ideas of HaXml and HXML, but
introduces a more general approach for processing XML with Haskell.")
(license license:expat)))

View File

@ -561,6 +561,7 @@ work.")
(package (package
(name "openjpeg") (name "openjpeg")
(version "2.3.0") (version "2.3.0")
(replacement openjpeg-2.3.1)
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
@ -594,6 +595,20 @@ error-resilience, a Java-viewer for j2k-images, ...")
(home-page "https://github.com/uclouvain/openjpeg") (home-page "https://github.com/uclouvain/openjpeg")
(license license:bsd-2))) (license license:bsd-2)))
(define-public openjpeg-2.3.1
(package
(inherit openjpeg)
(version "2.3.1")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/uclouvain/openjpeg")
(commit (string-append "v" version))))
(file-name (git-file-name "openjpeg" version))
(sha256
(base32
"1dn98d2dfa1lqyxxmab6rrcv52dyhjr4g7i4xf2w54fqsx14ynrb"))))))
(define-public openjpeg-1 (define-public openjpeg-1
(package (inherit openjpeg) (package (inherit openjpeg)
(name "openjpeg") (name "openjpeg")

View File

@ -52,7 +52,6 @@
#:use-module (gnu packages gettext) #:use-module (gnu packages gettext)
#:use-module (gnu packages gcc) #:use-module (gnu packages gcc)
#:use-module (gnu packages gl) #:use-module (gnu packages gl)
#:use-module (gnu packages gnuzilla) ;nss
#:use-module (gnu packages ghostscript) ;lcms #:use-module (gnu packages ghostscript) ;lcms
#:use-module (gnu packages gnome) #:use-module (gnu packages gnome)
#:use-module (gnu packages groovy) #:use-module (gnu packages groovy)
@ -64,6 +63,7 @@
#:use-module (gnu packages libffi) #:use-module (gnu packages libffi)
#:use-module (gnu packages linux) ;alsa #:use-module (gnu packages linux) ;alsa
#:use-module (gnu packages maths) #:use-module (gnu packages maths)
#:use-module (gnu packages nss)
#:use-module (gnu packages onc-rpc) #:use-module (gnu packages onc-rpc)
#:use-module (gnu packages web) #:use-module (gnu packages web)
#:use-module (gnu packages wget) #:use-module (gnu packages wget)
@ -10970,3 +10970,78 @@ class/interface/method definitions from source files complete with JavaDoc
@code{@@tags}. It is designed to be used by active code generators or @code{@@tags}. It is designed to be used by active code generators or
documentation tools.") documentation tools.")
(license license:asl2.0))) (license license:asl2.0)))
(define-public java-jgit
(package
(name "java-jgit")
(version "4.7.0.201704051617-r")
(source (origin
(method url-fetch)
(uri (string-append "https://repo1.maven.org/maven2/"
"org/eclipse/jgit/org.eclipse.jgit/"
version "/org.eclipse.jgit-"
version "-sources.jar"))
(sha256
(base32
"13ii4jn02ynzq6i7gsyi21k2i94jpc85wf6bcm31q4cyvzv0mk4k"))))
(build-system ant-build-system)
(arguments
`(#:tests? #f ; There are no tests to run.
#:jar-name "jgit.jar"
;; JGit must be built with a JDK supporting Java 8.
#:jdk ,icedtea-8
;; Target our older default JDK.
#:make-flags (list "-Dtarget=1.7")
#:phases
(modify-phases %standard-phases
;; The jar file generated by the default build.xml does not include
;; the text properties files, so we need to add them.
(add-after 'build 'add-properties
(lambda* (#:key jar-name #:allow-other-keys)
(with-directory-excursion "src"
(apply invoke "jar" "-uf"
(string-append "../build/jar/" jar-name)
(find-files "." "\\.properties$")))
#t)))))
(inputs
`(("java-classpathx-servletapi" ,java-classpathx-servletapi)
("java-javaewah" ,java-javaewah)
("java-jsch" ,java-jsch)
("java-slf4j-api" ,java-slf4j-api)))
(home-page "https://eclipse.org/jgit/")
(synopsis "Java library implementing the Git version control system")
(description "JGit is a lightweight, pure Java library implementing the
Git version control system, providing repository access routines, support for
network protocols, and core version control algorithms.")
(license license:edl1.0)))
;; For axoloti. This package can still be built with icedtea-7, which is
;; currently used as the default JDK.
(define-public java-jgit-4.2
(package (inherit java-jgit)
(version "4.2.0.201601211800-r")
(source (origin
(method url-fetch)
(uri (string-append "https://repo1.maven.org/maven2/"
"org/eclipse/jgit/org.eclipse.jgit/"
version "/org.eclipse.jgit-"
version "-sources.jar"))
(sha256
(base32
"15gm537iivhnzlkjym4x3wn5jqdjdragsw9pdpzqqg21nrc817mm"))))
(build-system ant-build-system)
(arguments
(substitute-keyword-arguments (package-arguments java-jgit)
;; Build for default JDK.
((#:jdk _) icedtea-7)
((#:phases phases)
`(modify-phases ,phases
(add-after 'unpack 'use-latest-javaewah-API
(lambda _
(substitute* "src/org/eclipse/jgit/internal/storage/file/BitmapIndexImpl.java"
(("wordinbits") "WORD_IN_BITS"))
#t))))))
(inputs
`(("java-javaewah" ,java-javaewah)
("java-jsch" ,java-jsch)
("java-slf4j-api" ,java-slf4j-api)))))

View File

@ -1,5 +1,5 @@
;;; GNU Guix --- Functional package management for GNU ;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2016, 2017 Efraim Flashner <efraim@flashner.co.il> ;;; Copyright © 2016, 2017, 2019 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2016, 2017 Thomas Danckaert <post@thomasdanckaert.be> ;;; Copyright © 2016, 2017 Thomas Danckaert <post@thomasdanckaert.be>
;;; Copyright © 2017, 2018 Mark Meyer <mark@ofosos.org> ;;; Copyright © 2017, 2018 Mark Meyer <mark@ofosos.org>
;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr> ;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr>
@ -47,10 +47,12 @@
#:use-module (gnu packages perl) #:use-module (gnu packages perl)
#:use-module (gnu packages photo) #:use-module (gnu packages photo)
#:use-module (gnu packages pkg-config) #:use-module (gnu packages pkg-config)
#:use-module (gnu packages python)
#:use-module (gnu packages tls) #:use-module (gnu packages tls)
#:use-module (gnu packages qt) #:use-module (gnu packages qt)
#:use-module (gnu packages version-control) #:use-module (gnu packages version-control)
#:use-module (gnu packages video) #:use-module (gnu packages video)
#:use-module (gnu packages xdisorg)
#:use-module (gnu packages xorg)) #:use-module (gnu packages xorg))
(define-public kdenlive (define-public kdenlive
@ -531,3 +533,79 @@ cards.")
Using a plugin system it is possible to create notifications with many Using a plugin system it is possible to create notifications with many
different notification systems.") different notification systems.")
(license license:lgpl3))) (license license:lgpl3)))
(define-public kdeconnect
(package
(name "kdeconnect")
(version "1.3.3")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://kde/stable/kdeconnect/"
version "/src/kdeconnect-kde-"
version ".tar.xz"))
(sha256
(base32
"1vac0mw1myrswr61adv7lgif0c4wzw5wnsj0sqxj6msp4l4pfgsg"))))
(build-system cmake-build-system)
(arguments
`(#:configure-flags '("-DBUILD_TESTING=ON")
#:tests? #f ; tests fail hard in our build environment
#:modules ((guix build cmake-build-system)
(guix build qt-utils)
(guix build utils))
#:imported-modules (,@%cmake-build-system-modules
(guix build qt-utils))
#:phases
(modify-phases %standard-phases
(add-before 'check 'check-setup
(lambda _
(setenv "QT_QPA_PLATFORM" "offscreen")
#t))
(add-after 'install 'wrap-executable
(lambda* (#:key outputs #:allow-other-keys)
(let ((out (assoc-ref outputs "out")))
(setenv "QT_PLUGIN_PATH"
(string-append out "/lib/qt5/plugins"
":" (getenv "QT_PLUGIN_PATH")))
(wrap-qt-program out "../lib/libexec/kdeconnectd")
(wrap-qt-program out "kdeconnect-cli")
(wrap-qt-program out "kdeconnect-handler")
(wrap-qt-program out "kdeconnect-indicator"))
#t)))))
(native-inputs
`(("extra-cmake-modules" ,extra-cmake-modules)
("kdoctools" ,kdoctools)
("libxtst" ,libxtst)
("pkg-config" ,pkg-config)
("python" ,python-wrapper)))
(inputs
`(("kcmutils" ,kcmutils)
("kconfigwidgets" ,kconfigwidgets)
("kdbusaddons" ,kdbusaddons)
("ki18n" ,ki18n)
("kiconthemes" ,kiconthemes)
("kio" ,kio)
("knotifications" ,knotifications)
("kwayland" ,kwayland)
("libfakekey" ,libfakekey)
("qca" ,qca)
("qtbase" ,qtbase)
("qtdeclarative" ,qtdeclarative)
("qtx11extras" ,qtx11extras)))
(home-page "https://community.kde.org/KDEConnect")
(synopsis "Enable your devices to communicate with each other")
(description "KDE Connect is a project that enables all your devices to
communicate with each other. Here's a few things KDE Connect can do:
@enumerate
@item Receive your phone notifications on your desktop computer and reply to messages
@item Control music playing on your desktop from your phone
@item Use your phone as a remote control for your desktop
@item Run predefined commands on your PC from connected devices
@item Check your phones battery level from the desktop
@item Ring your phone to help finding it
@item Share files and links between devices
@item Browse your phone from the desktop
@item Control the desktop's volume from the phone
@end enumerate")
(license (list license:gpl2 license:gpl3)))) ; dual licensed

View File

@ -6,7 +6,7 @@
;;; Copyright © 2017 Thomas Danckaert <post@thomasdanckaert.be> ;;; Copyright © 2017 Thomas Danckaert <post@thomasdanckaert.be>
;;; Copyright © 2017, 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr> ;;; Copyright © 2017, 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2017 Andy Wingo <wingo@igalia.com> ;;; Copyright © 2017 Andy Wingo <wingo@igalia.com>
;;; Copyright © 2017, 2018 Ludovic Courtès <ludo@gnu.org> ;;; Copyright © 2017, 2018, 2019 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2017, 2018, 2019 Marius Bakke <mbakke@fastmail.com> ;;; Copyright © 2017, 2018, 2019 Marius Bakke <mbakke@fastmail.com>
;;; Copyright © 2017 Rutger Helling <rhelling@mykolab.com> ;;; Copyright © 2017 Rutger Helling <rhelling@mykolab.com>
;;; Copyright © 2018, 2019 Ricardo Wurmus <rekado@elephly.net> ;;; Copyright © 2018, 2019 Ricardo Wurmus <rekado@elephly.net>
@ -59,7 +59,6 @@
#:use-module (gnu packages gnome) #:use-module (gnu packages gnome)
#:use-module (gnu packages gperf) #:use-module (gnu packages gperf)
#:use-module (gnu packages gnupg) #:use-module (gnu packages gnupg)
#:use-module (gnu packages gnuzilla)
#:use-module (gnu packages gstreamer) #:use-module (gnu packages gstreamer)
#:use-module (gnu packages gtk) #:use-module (gnu packages gtk)
#:use-module (gnu packages icu4c) #:use-module (gnu packages icu4c)
@ -67,6 +66,7 @@
#:use-module (gnu packages java) #:use-module (gnu packages java)
#:use-module (gnu packages linux) #:use-module (gnu packages linux)
#:use-module (gnu packages maths) #:use-module (gnu packages maths)
#:use-module (gnu packages nss)
#:use-module (gnu packages openldap) #:use-module (gnu packages openldap)
#:use-module (gnu packages pdf) #:use-module (gnu packages pdf)
#:use-module (gnu packages perl) #:use-module (gnu packages perl)

View File

@ -77,7 +77,6 @@
#:use-module (gnu packages gcc) #:use-module (gnu packages gcc)
#:use-module (gnu packages gettext) #:use-module (gnu packages gettext)
#:use-module (gnu packages glib) #:use-module (gnu packages glib)
#:use-module (gnu packages gnuzilla)
#:use-module (gnu packages gperf) #:use-module (gnu packages gperf)
#:use-module (gnu packages gtk) #:use-module (gnu packages gtk)
#:use-module (gnu packages libunwind) #:use-module (gnu packages libunwind)
@ -90,6 +89,7 @@
#:use-module (gnu packages nettle) #:use-module (gnu packages nettle)
#:use-module (gnu packages networking) #:use-module (gnu packages networking)
#:use-module (gnu packages ninja) #:use-module (gnu packages ninja)
#:use-module (gnu packages nss)
#:use-module (gnu packages perl) #:use-module (gnu packages perl)
#:use-module (gnu packages pciutils) #:use-module (gnu packages pciutils)
#:use-module (gnu packages pkg-config) #:use-module (gnu packages pkg-config)
@ -254,6 +254,15 @@ for ARCH and optionally VARIANT, or #f if there is no such configuration."
(file (string-append "linux-libre/" name))) (file (string-append "linux-libre/" name)))
(search-auxiliary-file file))) (search-auxiliary-file file)))
;; FIXME: merge into kernel-config
(define* (kernel-config-veyron arch #:key variant)
"Return the absolute file name of the Linux-Libre build configuration file
for ARCH and optionally VARIANT, or #f if there is no such configuration."
(let* ((name (string-append (if variant (string-append variant "-") "")
(if (string=? "i386" arch) "i686" arch) "-veyron.conf"))
(file (string-append "linux-libre/" name)))
(search-auxiliary-file file)))
(define %default-extra-linux-options (define %default-extra-linux-options
`(;; https://lists.gnu.org/archive/html/guix-devel/2014-04/msg00039.html `(;; https://lists.gnu.org/archive/html/guix-devel/2014-04/msg00039.html
("CONFIG_DEVPTS_MULTIPLE_INSTANCES" . #t) ("CONFIG_DEVPTS_MULTIPLE_INSTANCES" . #t)
@ -415,8 +424,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.") It has been modified to remove all non-free binary blobs.")
(license license:gpl2))) (license license:gpl2)))
(define %linux-libre-version "5.0.5") (define %linux-libre-version "5.0.6")
(define %linux-libre-hash "1yivxqprxfzhzid4qv9hpnb5i38kijrj2g2pyzz7niliya1c58li") (define %linux-libre-hash "0zznxchsdljw4swnr4i0qlvdww7cxskmil1691baj53xjv3wsh3n")
(define %linux-libre-5.0-patches (define %linux-libre-5.0-patches
(list %boot-logo-patch (list %boot-logo-patch
@ -429,8 +438,8 @@ It has been modified to remove all non-free binary blobs.")
#:patches %linux-libre-5.0-patches #:patches %linux-libre-5.0-patches
#:configuration-file kernel-config)) #:configuration-file kernel-config))
(define %linux-libre-4.19-version "4.19.32") (define %linux-libre-4.19-version "4.19.33")
(define %linux-libre-4.19-hash "19bryl8nmnnnrfh91pc8q9yiayh5ca2nb6b32qyx6riahc5dy0i9") (define %linux-libre-4.19-hash "147ksl3ksxdv2ifr18cbzq4647n9d7yr7kbxg02sljia7z3b70cm")
(define %linux-libre-4.19-patches (define %linux-libre-4.19-patches
(list %boot-logo-patch (list %boot-logo-patch
@ -443,8 +452,8 @@ It has been modified to remove all non-free binary blobs.")
#:patches %linux-libre-4.19-patches #:patches %linux-libre-4.19-patches
#:configuration-file kernel-config)) #:configuration-file kernel-config))
(define %linux-libre-4.14-version "4.14.109") (define %linux-libre-4.14-version "4.14.110")
(define %linux-libre-4.14-hash "05xnnyfiypg4sdcnh42wvg7h72ar8xx98dik12sgwysnfldi0gk9") (define %linux-libre-4.14-hash "05cfb1wb4ml5a1vfakq5v6192f584j3701d2mf03mv5fzxb7l2dx")
(define-public linux-libre-4.14 (define-public linux-libre-4.14
(make-linux-libre %linux-libre-4.14-version (make-linux-libre %linux-libre-4.14-version
@ -453,14 +462,14 @@ It has been modified to remove all non-free binary blobs.")
#:configuration-file kernel-config)) #:configuration-file kernel-config))
(define-public linux-libre-4.9 (define-public linux-libre-4.9
(make-linux-libre "4.9.166" (make-linux-libre "4.9.167"
"1gijzvhky3x0nl0dm9ksg113z7jc1mc1n30qbr6r1dd78lfd050p" "16428a6mxxi6k4ag7pj6jl01d3a3yshynn3b9jf3vjip6kcrhw03"
'("x86_64-linux" "i686-linux") '("x86_64-linux" "i686-linux")
#:configuration-file kernel-config)) #:configuration-file kernel-config))
(define-public linux-libre-4.4 (define-public linux-libre-4.4
(make-linux-libre "4.4.177" (make-linux-libre "4.4.178"
"0vvppw7j6jwn3cd5hhzgj5xfqkmz682zy36iyr6ynd0rbh1j7bhm" "1lgsd760md6b32qb5ng3anfq1n754a9d0c4xnf2mjxkimncb1jpp"
'("x86_64-linux" "i686-linux") '("x86_64-linux" "i686-linux")
#:configuration-file kernel-config)) #:configuration-file kernel-config))
@ -472,6 +481,14 @@ It has been modified to remove all non-free binary blobs.")
#:defconfig "multi_v7_defconfig" #:defconfig "multi_v7_defconfig"
#:extra-version "arm-generic")) #:extra-version "arm-generic"))
(define-public linux-libre-arm-veyron
(make-linux-libre %linux-libre-version
%linux-libre-hash
'("armhf-linux")
#:patches %linux-libre-5.0-patches
#:configuration-file kernel-config-veyron
#:extra-version "arm-veyron"))
(define-public linux-libre-arm-generic-4.19 (define-public linux-libre-arm-generic-4.19
(make-linux-libre %linux-libre-4.19-version (make-linux-libre %linux-libre-4.19-version
%linux-libre-4.19-hash %linux-libre-4.19-hash
@ -3631,6 +3648,7 @@ from userspace.")
(method url-fetch) (method url-fetch)
(uri (string-append "https://tuxera.com/opensource/" (uri (string-append "https://tuxera.com/opensource/"
"ntfs-3g_ntfsprogs-" version ".tgz")) "ntfs-3g_ntfsprogs-" version ".tgz"))
(patches (search-patches "ntfs-3g-CVE-2019-9755.patch"))
(sha256 (sha256
(base32 (base32
"1mb228p80hv97pgk3myyvgp975r9mxq56c6bdn1n24kngcfh4niy")) "1mb228p80hv97pgk3myyvgp975r9mxq56c6bdn1n24kngcfh4niy"))

File diff suppressed because it is too large Load Diff

View File

@ -3,6 +3,7 @@
;;; Copyright © 2016, 2017 Efraim Flashner <efraim@flashner.co.il> ;;; Copyright © 2016, 2017 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2017 ng0 <ng0@n0.is> ;;; Copyright © 2017 ng0 <ng0@n0.is>
;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr> ;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2019 Ludovic Courtès <ludo@gnu.org>
;;; ;;;
;;; This file is part of GNU Guix. ;;; This file is part of GNU Guix.
;;; ;;;
@ -46,7 +47,6 @@
#:use-module (gnu packages glib) #:use-module (gnu packages glib)
#:use-module (gnu packages gnome) #:use-module (gnu packages gnome)
#:use-module (gnu packages gnupg) #:use-module (gnu packages gnupg)
#:use-module (gnu packages gnuzilla)
#:use-module (gnu packages gtk) #:use-module (gnu packages gtk)
#:use-module (gnu packages image) #:use-module (gnu packages image)
#:use-module (gnu packages imagemagick) #:use-module (gnu packages imagemagick)
@ -56,6 +56,7 @@
#:use-module (gnu packages linux) #:use-module (gnu packages linux)
#:use-module (gnu packages messaging) #:use-module (gnu packages messaging)
#:use-module (gnu packages nettle) #:use-module (gnu packages nettle)
#:use-module (gnu packages nss)
#:use-module (gnu packages pkg-config) #:use-module (gnu packages pkg-config)
#:use-module (gnu packages pdf) #:use-module (gnu packages pdf)
#:use-module (gnu packages photo) #:use-module (gnu packages photo)
@ -73,7 +74,7 @@
(define-public mate-common (define-public mate-common
(package (package
(name "mate-common") (name "mate-common")
(version "1.18.0") (version "1.22.0")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
@ -82,7 +83,7 @@
name "-" version ".tar.xz")) name "-" version ".tar.xz"))
(sha256 (sha256
(base32 (base32
"1005laf3z1h8qczm7pmwr40r842665cv6ykhjg7r93vldra48z6p")))) "11lwckndizawbq993ws8lqp59vsc873zri0m8s1i5zyc4qx9f69z"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(home-page "https://mate-desktop.org/") (home-page "https://mate-desktop.org/")
(synopsis "Common files for development of MATE packages") (synopsis "Common files for development of MATE packages")
@ -94,7 +95,7 @@ MATE applications.")
(define-public mate-icon-theme (define-public mate-icon-theme
(package (package
(name "mate-icon-theme") (name "mate-icon-theme")
(version "1.18.2") (version "1.22.0")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append "https://pub.mate-desktop.org/releases/" (uri (string-append "https://pub.mate-desktop.org/releases/"
@ -102,7 +103,7 @@ MATE applications.")
name "-" version ".tar.xz")) name "-" version ".tar.xz"))
(sha256 (sha256
(base32 (base32
"0si3li3kza7s45zhasjvqn5f85zpkn0x8i4kq1dlnqvjjqzkg4ch")))) "090vfxpn1b1wwvkilv1j3cx4swdm4z0s7xyvhvqhdzj58zsf2000"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(native-inputs (native-inputs
`(("pkg-config" ,pkg-config) `(("pkg-config" ,pkg-config)
@ -117,7 +118,7 @@ MATE applications.")
(define-public mate-icon-theme-faenza (define-public mate-icon-theme-faenza
(package (package
(name "mate-icon-theme-faenza") (name "mate-icon-theme-faenza")
(version "1.18.1") (version "1.20.0")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append "https://pub.mate-desktop.org/releases/" (uri (string-append "https://pub.mate-desktop.org/releases/"
@ -125,7 +126,7 @@ MATE applications.")
name "-" version ".tar.xz")) name "-" version ".tar.xz"))
(sha256 (sha256
(base32 (base32
"0vc3wg9l5yrxm0xmligz4lw2g3nqj1dz8fwv90xvym8pbjds2849")))) "000vr9cnbl2qlysf2gyg1lsjirqdzmwrnh6d3hyrsfc0r2vh4wna"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
`(#:phases `(#:phases
@ -155,7 +156,7 @@ from Mint-X-F and Faenza-Fresh icon packs.")
(define-public mate-themes (define-public mate-themes
(package (package
(name "mate-themes") (name "mate-themes")
(version "3.22.16") (version "3.22.19")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append "https://pub.mate-desktop.org/releases/themes/" (uri (string-append "https://pub.mate-desktop.org/releases/themes/"
@ -163,7 +164,7 @@ from Mint-X-F and Faenza-Fresh icon packs.")
version ".tar.xz")) version ".tar.xz"))
(sha256 (sha256
(base32 (base32
"1k8qp2arjv4vj8kyjhjgyj5h46jy0darlfh48l5h25623z1firdj")))) "1ycb8b8r0s8d1h1477135mynr53s5781gdb2ap8xlvj2g58492wq"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(native-inputs (native-inputs
`(("pkg-config" ,pkg-config) `(("pkg-config" ,pkg-config)
@ -183,7 +184,7 @@ themes for both gtk+-2 and gtk+-3.")
(define-public mate-desktop (define-public mate-desktop
(package (package
(name "mate-desktop") (name "mate-desktop")
(version "1.18.0") (version "1.22.0")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append "https://pub.mate-desktop.org/releases/" (uri (string-append "https://pub.mate-desktop.org/releases/"
@ -191,7 +192,7 @@ themes for both gtk+-2 and gtk+-3.")
name "-" version ".tar.xz")) name "-" version ".tar.xz"))
(sha256 (sha256
(base32 (base32
"12iv2y4dan962fs7vkkxbjkp77pbvjnwfa43ggr0zkdsc3ydjbbg")))) "09gn840p6qds21kxab4pidjd53g76s76i7178fdibrz462mda217"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(native-inputs (native-inputs
`(("pkg-config" ,pkg-config) `(("pkg-config" ,pkg-config)
@ -203,6 +204,7 @@ themes for both gtk+-2 and gtk+-3.")
(inputs (inputs
`(("gtk+" ,gtk+) `(("gtk+" ,gtk+)
("libxrandr" ,libxrandr) ("libxrandr" ,libxrandr)
("iso-codes" ,iso-codes)
("startup-notification" ,startup-notification))) ("startup-notification" ,startup-notification)))
(propagated-inputs (propagated-inputs
`(("dconf" ,dconf))) ; mate-desktop-2.0.pc `(("dconf" ,dconf))) ; mate-desktop-2.0.pc
@ -216,7 +218,7 @@ desktop and the mate-about program.")
(define-public libmateweather (define-public libmateweather
(package (package
(name "libmateweather") (name "libmateweather")
(version "1.18.1") (version "1.22.0")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append "https://pub.mate-desktop.org/releases/" (uri (string-append "https://pub.mate-desktop.org/releases/"
@ -224,7 +226,7 @@ desktop and the mate-about program.")
name "-" version ".tar.xz")) name "-" version ".tar.xz"))
(sha256 (sha256
(base32 (base32
"0z6vfh42fv9rqjrraqfpf6h9nd9h662bxy3l3r48j19xvxrwmx3a")))) "1ribgcwl4ncfbcf9bkcbxrgc7yzajdnxg12837psngymkqswlp6a"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
'(#:configure-flags '(#:configure-flags
@ -262,7 +264,7 @@ the MATE desktop environment.")
(define-public mate-terminal (define-public mate-terminal
(package (package
(name "mate-terminal") (name "mate-terminal")
(version "1.18.1") (version "1.22.0")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
@ -271,7 +273,7 @@ the MATE desktop environment.")
name "-" version ".tar.xz")) name "-" version ".tar.xz"))
(sha256 (sha256
(base32 (base32
"1zihm609d2d9cw53ry385whshjl1dnkifpk41g1ddm9f58hv4da1")))) "16r492s34la2fs2cj1xr0r93wkjglwy77jyrc66i2ahs9gnivj4g"))))
(build-system glib-or-gtk-build-system) (build-system glib-or-gtk-build-system)
(native-inputs (native-inputs
`(("pkg-config" ,pkg-config) `(("pkg-config" ,pkg-config)
@ -303,7 +305,7 @@ configurations (profiles).")
(define-public mate-session-manager (define-public mate-session-manager
(package (package
(name "mate-session-manager") (name "mate-session-manager")
(version "1.18.1") (version "1.22.0")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
@ -312,7 +314,7 @@ configurations (profiles).")
name "-" version ".tar.xz")) name "-" version ".tar.xz"))
(sha256 (sha256
(base32 (base32
"0i0xq6041x2qmb26x9bawx0qpfkgjn6x9w3phnm9s7rc4s0z20ll")))) "1kpfmgay01gm74paaxccs3lim4jfb4hsm7i85jfdypr51985pwyj"))))
(build-system glib-or-gtk-build-system) (build-system glib-or-gtk-build-system)
(arguments (arguments
`(#:configure-flags (list "--enable-elogind" `(#:configure-flags (list "--enable-elogind"
@ -336,7 +338,20 @@ configurations (profiles).")
(("#ifdef HAVE_SYSTEMD") "#if 0")) (("#ifdef HAVE_SYSTEMD") "#if 0"))
(substitute* "mate-session/gsm-autostart-app.c" (substitute* "mate-session/gsm-autostart-app.c"
(("#ifdef HAVE_SYSTEMD") "#if 0")) (("#ifdef HAVE_SYSTEMD") "#if 0"))
#t))))) #t))
(add-after 'install 'update-xsession-dot-desktop
(lambda* (#:key outputs #:allow-other-keys)
;; Record the absolute file name of 'mate-session' in the
;; '.desktop' file.
(let* ((out (assoc-ref outputs "out"))
(xsession (string-append
out "/share/xsessions/mate.desktop")))
(substitute* xsession
(("^Exec=.*$")
(string-append "Exec=" out "/bin/mate-session\n"))
(("^TryExec=.*$")
(string-append "Exec=" out "/bin/mate-session\n")))
#t))))))
(native-inputs (native-inputs
`(("pkg-config" ,pkg-config) `(("pkg-config" ,pkg-config)
("intltool" ,intltool) ("intltool" ,intltool)
@ -358,7 +373,7 @@ configuration program to choose applications starting on login.")
(define-public mate-settings-daemon (define-public mate-settings-daemon
(package (package
(name "mate-settings-daemon") (name "mate-settings-daemon")
(version "1.18.1") (version "1.22.0")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
@ -367,7 +382,7 @@ configuration program to choose applications starting on login.")
name "-" version ".tar.xz")) name "-" version ".tar.xz"))
(sha256 (sha256
(base32 (base32
"07b2jkxqv07njdrgkdck93d872p6lch1lrvi7ydnpicspg3rfid6")))) "0yr5v6b9hdk20j29smbw1k4fkyg82i5vlflmgly0vi5whgc74gym"))))
(build-system glib-or-gtk-build-system) (build-system glib-or-gtk-build-system)
(native-inputs (native-inputs
`(("pkg-config" ,pkg-config) `(("pkg-config" ,pkg-config)
@ -401,7 +416,7 @@ configuration program to choose applications starting on login.")
(define-public libmatemixer (define-public libmatemixer
(package (package
(name "libmatemixer") (name "libmatemixer")
(version "1.18.0") (version "1.22.0")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
@ -410,7 +425,7 @@ configuration program to choose applications starting on login.")
name "-" version ".tar.xz")) name "-" version ".tar.xz"))
(sha256 (sha256
(base32 (base32
"09vyxnlnalws318gsafdfi5c6jwpp92pbafn1ddlqqds23ihk4mr")))) "1v0gpr55gj4mj8hzxbhgzrmhaxvs2inxhsmirvjw39sc7iplvrh9"))))
(build-system glib-or-gtk-build-system) (build-system glib-or-gtk-build-system)
(native-inputs (native-inputs
`(("pkg-config" ,pkg-config) `(("pkg-config" ,pkg-config)
@ -431,7 +446,7 @@ sound systems.")
(define-public libmatekbd (define-public libmatekbd
(package (package
(name "libmatekbd") (name "libmatekbd")
(version "1.18.2") (version "1.22.0")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
@ -440,7 +455,7 @@ sound systems.")
name "-" version ".tar.xz")) name "-" version ".tar.xz"))
(sha256 (sha256
(base32 (base32
"030bl18qbjm7l92bp1bhs7v82bp8j3mv7c1j1a4gd89iz4611pq3")))) "1dsr7618c92mhwabwhgxqsfp7gnf9zrz2z790jc5g085dxhg13y8"))))
(build-system glib-or-gtk-build-system) (build-system glib-or-gtk-build-system)
(native-inputs (native-inputs
`(("pkg-config" ,pkg-config) `(("pkg-config" ,pkg-config)
@ -463,7 +478,7 @@ MATE desktop environment.")
(define-public mate-menus (define-public mate-menus
(package (package
(name "mate-menus") (name "mate-menus")
(version "1.18.0") (version "1.22.0")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append "https://pub.mate-desktop.org/releases/" (uri (string-append "https://pub.mate-desktop.org/releases/"
@ -471,7 +486,7 @@ MATE desktop environment.")
name "-" version ".tar.xz")) name "-" version ".tar.xz"))
(sha256 (sha256
(base32 (base32
"05kyr37xqv6hm1rlvnqd5ng0x1n883brqynkirkk5drl56axnz7h")))) "1lkakbf2f1815c146z4xp5f0h4lim6jzr02681wbvzalc6k97v5c"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
`(#:phases `(#:phases
@ -504,7 +519,7 @@ assorted menu related utility programs.")
(define-public mate-applets (define-public mate-applets
(package (package
(name "mate-applets") (name "mate-applets")
(version "1.18.1") (version "1.22.0")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
@ -513,7 +528,7 @@ assorted menu related utility programs.")
name "-" version ".tar.xz")) name "-" version ".tar.xz"))
(sha256 (sha256
(base32 (base32
"1nplr8i1mxbxd7pqhcy8j69v25nsp5dk9fq7ffrmjmp39lrf3fh5")))) "0f5ym6z7awi0kw6i1sdkj2qly88sl692j5r1zhklihyz1z9a6j0h"))))
(build-system glib-or-gtk-build-system) (build-system glib-or-gtk-build-system)
(native-inputs (native-inputs
`(("pkg-config" ,pkg-config) `(("pkg-config" ,pkg-config)
@ -578,7 +593,7 @@ Interactive Weather Information Network (IWIN).
(define-public mate-media (define-public mate-media
(package (package
(name "mate-media") (name "mate-media")
(version "1.18.1") (version "1.22.0")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
@ -587,7 +602,7 @@ Interactive Weather Information Network (IWIN).
name "-" version ".tar.xz")) name "-" version ".tar.xz"))
(sha256 (sha256
(base32 (base32
"1l0j71d07898wb6ily09sj1xczwrmcw13wyhxwns7sxw592nwi04")))) "0jrxbz00vjas0yp3ixvyzfsdby2ac3p3bds9yd7q1437mmhf71mj"))))
(build-system glib-or-gtk-build-system) (build-system glib-or-gtk-build-system)
(native-inputs (native-inputs
`(("pkg-config" ,pkg-config) `(("pkg-config" ,pkg-config)
@ -615,7 +630,7 @@ mate-volume-control, a MATE volume control application and applet.")
(define-public mate-panel (define-public mate-panel
(package (package
(name "mate-panel") (name "mate-panel")
(version "1.18.4") (version "1.22.0")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
@ -624,7 +639,7 @@ mate-volume-control, a MATE volume control application and applet.")
name "-" version ".tar.xz")) name "-" version ".tar.xz"))
(sha256 (sha256
(base32 (base32
"1n565ff1n7jrfx223i3cl3m69wjda506nvbn8gra7m1jwdfzpbw1")))) "17l4ryy71bkszr6shm9dm31zcsd7m0digi1mmvdlib5hqzvc7li7"))))
(build-system glib-or-gtk-build-system) (build-system glib-or-gtk-build-system)
(arguments (arguments
`(#:configure-flags `(#:configure-flags
@ -689,7 +704,7 @@ infamous 'Wanda the Fish'.")
(define-public atril (define-public atril
(package (package
(name "atril") (name "atril")
(version "1.18.1") (version "1.22.0")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
@ -698,13 +713,12 @@ infamous 'Wanda the Fish'.")
name "-" version ".tar.xz")) name "-" version ".tar.xz"))
(sha256 (sha256
(base32 (base32
"1wl332v80c0nzz7nw36d1pfmbiibvl3l0i4d25ihg6mg9wbc0145")))) "1xd49j4qwrlg2nh2zvspf91yk033dp8a58dy9azqg2yz4bcvywxb"))))
(build-system glib-or-gtk-build-system) (build-system glib-or-gtk-build-system)
(arguments (arguments
`(#:configure-flags (list (string-append "--with-openjpeg=" `(#:configure-flags (list (string-append "--with-openjpeg="
(assoc-ref %build-inputs "openjpeg")) (assoc-ref %build-inputs "openjpeg"))
"--enable-introspection" "--enable-introspection"
"--with-gtk=3.0"
"--disable-schemas-compile" "--disable-schemas-compile"
;; FIXME: Enable build of Caja extensions. ;; FIXME: Enable build of Caja extensions.
"--disable-caja") "--disable-caja")
@ -794,7 +808,7 @@ infamous 'Wanda the Fish'.")
(define-public caja (define-public caja
(package (package
(name "caja") (name "caja")
(version "1.18.3") (version "1.22.0")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
@ -803,7 +817,7 @@ infamous 'Wanda the Fish'.")
name "-" version ".tar.xz")) name "-" version ".tar.xz"))
(sha256 (sha256
(base32 (base32
"0mljqcx7k8p27854zm7qzzn8ca6hs7hva9p43hp4p507z52caqmm")))) "14x9n9q7vip5zp4mdgccj1p1dm4xn429g0bjw2v8iz7zmjb7vcgl"))))
(build-system glib-or-gtk-build-system) (build-system glib-or-gtk-build-system)
(arguments (arguments
`(#:configure-flags '("--disable-update-mimedb") `(#:configure-flags '("--disable-update-mimedb")
@ -853,7 +867,7 @@ icons on the MATE desktop. It works on local and remote file systems.")
(define-public caja-extensions (define-public caja-extensions
(package (package
(name "caja-extensions") (name "caja-extensions")
(version "1.18.1") (version "1.22.0")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
@ -862,7 +876,7 @@ icons on the MATE desktop. It works on local and remote file systems.")
name "-" version ".tar.xz")) name "-" version ".tar.xz"))
(sha256 (sha256
(base32 (base32
"0hgala7zkfsa60jflq3s4n9yd11dhfdcla40l83cmgc3r1az7cmw")))) "1h866jmdd3qpjzi7wjj11krwiaadnlf21844g1zqfb4jgrzj773p"))))
(build-system glib-or-gtk-build-system) (build-system glib-or-gtk-build-system)
(arguments (arguments
`(#:configure-flags (list "--enable-sendto" `(#:configure-flags (list "--enable-sendto"
@ -908,7 +922,7 @@ icons on the MATE desktop. It works on local and remote file systems.")
(define-public mate-control-center (define-public mate-control-center
(package (package
(name "mate-control-center") (name "mate-control-center")
(version "1.18.2") (version "1.22.0")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
@ -917,7 +931,7 @@ icons on the MATE desktop. It works on local and remote file systems.")
name "-" version ".tar.xz")) name "-" version ".tar.xz"))
(sha256 (sha256
(base32 (base32
"0flnn0h8f5aqyccwrlv7qxchvr3kqmlfdga6wq28d55zkpv5m7dl")))) "06wpfsxsiv7w3dl7p395r5vcxqbjlllydqbnvbr6yn0lrac15i71"))))
(build-system glib-or-gtk-build-system) (build-system glib-or-gtk-build-system)
(native-inputs (native-inputs
`(("pkg-config" ,pkg-config) `(("pkg-config" ,pkg-config)
@ -968,7 +982,7 @@ of various aspects of your desktop.")
(define-public marco (define-public marco
(package (package
(name "marco") (name "marco")
(version "1.18.1") (version "1.22.0")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
@ -977,7 +991,7 @@ of various aspects of your desktop.")
name "-" version ".tar.xz")) name "-" version ".tar.xz"))
(sha256 (sha256
(base32 (base32
"0lwbp9wyd66hl5d7g272l8g3k1pb9s4s2p9fb04750a58w87d8k5")))) "1i1pi1z9mrb6564mxcwb93jqpdppfv58c2viwmicsixis62hv5wx"))))
(build-system glib-or-gtk-build-system) (build-system glib-or-gtk-build-system)
(native-inputs (native-inputs
`(("pkg-config" ,pkg-config) `(("pkg-config" ,pkg-config)
@ -1019,7 +1033,7 @@ for use with MATE or as a standalone window manager.")
(define-public mate-user-guide (define-public mate-user-guide
(package (package
(name "mate-user-guide") (name "mate-user-guide")
(version "1.18.0") (version "1.22.0")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
@ -1028,7 +1042,7 @@ for use with MATE or as a standalone window manager.")
name "-" version ".tar.xz")) name "-" version ".tar.xz"))
(sha256 (sha256
(base32 (base32
"0f3b46r9a3cywm7rpj08xlkfnlfr9db58xfcpix8i33qp50fxqmb")))) "0ckn7h7l0qdgdx440dwx1h8i601s22sxlf5a7179hfirk9016j0z"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
`(#:phases `(#:phases
@ -1059,7 +1073,7 @@ sessions, panels, menus, file management, and preferences.")
(define-public mate-calc (define-public mate-calc
(package (package
(name "mate-calc") (name "mate-calc")
(version "1.18.0") (version "1.22.0")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
@ -1068,7 +1082,7 @@ sessions, panels, menus, file management, and preferences.")
name "-" version ".tar.xz")) name "-" version ".tar.xz"))
(sha256 (sha256
(base32 (base32
"0qfs6kx2nymbn6j3mnzgvk8p54ghc78jslsf4wjqsdq021qyl0ly")))) "1njk6v7z3969ikvcrabr1lw5f5572vb14w064zm3mydj8cc5inlr"))))
(build-system glib-or-gtk-build-system) (build-system glib-or-gtk-build-system)
(native-inputs (native-inputs
`(("gettext" ,gettext-minimal) `(("gettext" ,gettext-minimal)
@ -1091,7 +1105,7 @@ sessions, panels, menus, file management, and preferences.")
(define-public mate-backgrounds (define-public mate-backgrounds
(package (package
(name "mate-backgrounds") (name "mate-backgrounds")
(version "1.18.0") (version "1.22.0")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
@ -1100,7 +1114,7 @@ sessions, panels, menus, file management, and preferences.")
name "-" version ".tar.xz")) name "-" version ".tar.xz"))
(sha256 (sha256
(base32 (base32
"06q8ksjisijps2wn959arywsimhzd3j35mqkr048c26ck24d60zi")))) "1j9ch04qi2q4mdcvb92w667ra9hpfdf2bfpi1dpw0nbph7r6qvj9"))))
(build-system glib-or-gtk-build-system) (build-system glib-or-gtk-build-system)
(native-inputs (native-inputs
`(("intltool" ,intltool))) `(("intltool" ,intltool)))
@ -1114,7 +1128,7 @@ can be used as backgrounds in the MATE Desktop environment.")
(define-public mate-netbook (define-public mate-netbook
(package (package
(name "mate-netbook") (name "mate-netbook")
(version "1.18.1") (version "1.22.0")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
@ -1123,7 +1137,7 @@ can be used as backgrounds in the MATE Desktop environment.")
name "-" version ".tar.xz")) name "-" version ".tar.xz"))
(sha256 (sha256
(base32 (base32
"0zj4x9qis8dw0irxzb4va1189k8bqbvymxq3h7phnjwvr1m983gf")))) "17p1wv9bcr3kvlahnxmxj786vka86nysi90x5xci6ilwyjlaxh0l"))))
(build-system glib-or-gtk-build-system) (build-system glib-or-gtk-build-system)
(native-inputs (native-inputs
`(("gettext" ,gettext-minimal) `(("gettext" ,gettext-minimal)
@ -1156,7 +1170,7 @@ Re-decorates windows on un-maximise.
(define-public mate-screensaver (define-public mate-screensaver
(package (package
(name "mate-screensaver") (name "mate-screensaver")
(version "1.18.1") (version "1.22.0")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
@ -1165,7 +1179,7 @@ Re-decorates windows on un-maximise.
name "-" version ".tar.xz")) name "-" version ".tar.xz"))
(sha256 (sha256
(base32 (base32
"0dfi10faf1fnvrm7c7wnfqg35ygq09ws1vjyv8394jlf0nn39g9j")))) "17fxyccsc410wbyxmds1sm7gjqbj6z46x5cjk1791hfzf0sh82sy"))))
(build-system glib-or-gtk-build-system) (build-system glib-or-gtk-build-system)
(arguments (arguments
`(#:configure-flags `(#:configure-flags
@ -1228,7 +1242,7 @@ can be used as backgrounds in the MATE Desktop environment.")
(define-public mate-utils (define-public mate-utils
(package (package
(name "mate-utils") (name "mate-utils")
(version "1.18.2") (version "1.22.0")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
@ -1237,7 +1251,7 @@ can be used as backgrounds in the MATE Desktop environment.")
name "-" version ".tar.xz")) name "-" version ".tar.xz"))
(sha256 (sha256
(base32 (base32
"0wr395dqfigj19ps0d76ycgwfljl9xxgs1a1g5wx6kcz5mvhzn5v")))) "0kz95hicjksgkwaj83fdp2rnaygfgjbj0jsnwy4n0lj5q90j7r28"))))
(build-system glib-or-gtk-build-system) (build-system glib-or-gtk-build-system)
(native-inputs (native-inputs
`(("gettext" ,gettext-minimal) `(("gettext" ,gettext-minimal)
@ -1281,7 +1295,7 @@ can be used as backgrounds in the MATE Desktop environment.")
(define-public eom (define-public eom
(package (package
(name "eom") (name "eom")
(version "1.18.2") (version "1.22.0")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
@ -1290,7 +1304,7 @@ can be used as backgrounds in the MATE Desktop environment.")
name "-" version ".tar.xz")) name "-" version ".tar.xz"))
(sha256 (sha256
(base32 (base32
"00ns7g7qykakc89lijrw2vwy9x9ijqiyvmnd4sw0j6py90zs8m87")))) "093vbip848bp9y603yasbrg1bcp68m64hma7zhi5m37x2r103r6l"))))
(build-system glib-or-gtk-build-system) (build-system glib-or-gtk-build-system)
(native-inputs (native-inputs
`(("gettext" ,gettext-minimal) `(("gettext" ,gettext-minimal)
@ -1332,7 +1346,7 @@ can be used as backgrounds in the MATE Desktop environment.")
(define-public engrampa (define-public engrampa
(package (package
(name "engrampa") (name "engrampa")
(version "1.18.2") (version "1.22.0")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
@ -1341,7 +1355,7 @@ can be used as backgrounds in the MATE Desktop environment.")
name "-" version ".tar.xz")) name "-" version ".tar.xz"))
(sha256 (sha256
(base32 (base32
"0d98zhqqc7qdnxcf0195kd04xmhijc0w2qrn6q61zd0daiswnv98")))) "16yjplfl2sqa7n6404hjn0vwkh0xkdch73q7n5czynihmh3azc7p"))))
(build-system glib-or-gtk-build-system) (build-system glib-or-gtk-build-system)
(arguments (arguments
`(#:configure-flags (list "--disable-schemas-compile" `(#:configure-flags (list "--disable-schemas-compile"
@ -1386,7 +1400,7 @@ can be used as backgrounds in the MATE Desktop environment.")
(define-public pluma (define-public pluma
(package (package
(name "pluma") (name "pluma")
(version "1.18.2") (version "1.22.0")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
@ -1395,7 +1409,7 @@ can be used as backgrounds in the MATE Desktop environment.")
name "-" version ".tar.xz")) name "-" version ".tar.xz"))
(sha256 (sha256
(base32 (base32
"1z0938yiygxipj2a77n9dv8v4253snrc5gbbnarcnim9xba2j3zz")))) "07rr5asdjr9slmaijp4m8v9vxscihvm36mfrwlp3lv12kry42a05"))))
(build-system glib-or-gtk-build-system) (build-system glib-or-gtk-build-system)
(arguments (arguments
`(; Tests can not succeed. `(; Tests can not succeed.
@ -1437,7 +1451,7 @@ can be used as backgrounds in the MATE Desktop environment.")
(define-public mate-system-monitor (define-public mate-system-monitor
(package (package
(name "mate-system-monitor") (name "mate-system-monitor")
(version "1.18.0") (version "1.22.0")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
@ -1446,7 +1460,7 @@ can be used as backgrounds in the MATE Desktop environment.")
name "-" version ".tar.xz")) name "-" version ".tar.xz"))
(sha256 (sha256
(base32 (base32
"1wcvrl4lfnjkhywb311p29prf1qiab6iynb6q1fgfsl6za8hsz48")))) "0rs0n5ivmvi355fp3ymcp1jj2sz9viw31475aw7zh7s1l7dn969x"))))
(build-system glib-or-gtk-build-system) (build-system glib-or-gtk-build-system)
(native-inputs (native-inputs
`(("autoconf" ,autoconf) `(("autoconf" ,autoconf)
@ -1478,7 +1492,7 @@ MATE Desktop to monitor your system resources and usage.")
(define-public mate-polkit (define-public mate-polkit
(package (package
(name "mate-polkit") (name "mate-polkit")
(version "1.18.1") (version "1.22.0")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
@ -1487,7 +1501,7 @@ MATE Desktop to monitor your system resources and usage.")
name "-" version ".tar.xz")) name "-" version ".tar.xz"))
(sha256 (sha256
(base32 (base32
"15vf2hnyjg8zsw3iiwjwi497yygkmvpnn6w1hik7dfw4a621w0gc")))) "02r8n71xflhvw2hsf6g4svdahzyg3r4n6xamasyzqfhyn0mqmjy0"))))
(build-system glib-or-gtk-build-system) (build-system glib-or-gtk-build-system)
(native-inputs (native-inputs
`(("gettext" ,gettext-minimal) `(("gettext" ,gettext-minimal)

View File

@ -1353,6 +1353,38 @@ large-scale nonlinear optimization. It provides C++, C, and Fortran
interfaces.") interfaces.")
(license license:epl1.0))) (license license:epl1.0)))
(define-public clp
(package
(name "clp")
(version "1.17.1")
(source (origin
(method url-fetch)
(uri (string-append "https://www.coin-or.org/download/source/"
"Clp/Clp-" version ".tgz"))
(sha256
(base32
"1wdg820g3iikf9344ijwsc8sy6c0m6im42bzzizm6rlmkvnmxhk9"))
(modules '((guix build utils)))
(snippet
;; Make sure we don't use the bundled software.
'(begin
(delete-file-recursively "ThirdParty")
#t))))
(build-system gnu-build-system)
(native-inputs
`(("gfortran" ,gfortran)
("pkg-config" ,pkg-config)))
(inputs
`(("openblas" ,openblas)))
(home-page "https://www.coin-or.org")
(synopsis "Linear programming solver")
(description
"CLP is a high quality linear programming solver. Its main strengths are
its dual and primal Simplex algorithms. It also has a barrier algorithm for
linear and quadratic objectives. There are limited facilities for nonlinear
and quadratic objectives using the Simplex algorithm.")
(license license:epl1.0)))
(define-public ceres (define-public ceres
(package (package
(name "ceres-solver") (name "ceres-solver")
@ -2818,7 +2850,7 @@ point numbers.")
(define-public wxmaxima (define-public wxmaxima
(package (package
(name "wxmaxima") (name "wxmaxima")
(version "19.01.3") (version "19.03.1")
(source (source
(origin (origin
(method git-fetch) (method git-fetch)
@ -2828,7 +2860,7 @@ point numbers.")
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 (base32
"1vwahx3zxkn3qlv4z0fm7v8wh0wspvs026alrh7ff7s0c2dcy95x")))) "1qkf4jg86xnn3wk3782ffmfz12axb92dkjagcz3ffzw2wi1rclml"))))
(build-system cmake-build-system) (build-system cmake-build-system)
(native-inputs (native-inputs
`(("gettext" ,gettext-minimal))) `(("gettext" ,gettext-minimal)))
@ -3366,7 +3398,7 @@ Failure to do so will result in a library with poor performance.")
(define-public glm (define-public glm
(package (package
(name "glm") (name "glm")
(version "0.9.9.4") (version "0.9.9.5")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
@ -3374,7 +3406,7 @@ Failure to do so will result in a library with poor performance.")
version "/glm-" version ".zip")) version "/glm-" version ".zip"))
(sha256 (sha256
(base32 (base32
"17vxbqzy4pxciq5i39bgpxz54f7ifqqmcqwwq7m6xfgikwqqqawp")))) "1vmg7hb4xvsa77zpbwiw6lqc7pyaj56dihx6xriny5b9rrh4iqsg"))))
(build-system cmake-build-system) (build-system cmake-build-system)
(native-inputs (native-inputs
`(("unzip" ,unzip))) `(("unzip" ,unzip)))
@ -4829,3 +4861,54 @@ implemented as callable objects, and bases of finite element spaces.")
built on top of DUNE, the Distributed and Unified Numerics Environment.") built on top of DUNE, the Distributed and Unified Numerics Environment.")
;; Either GPL version 2 with "runtime exception" or LGPLv3+. ;; Either GPL version 2 with "runtime exception" or LGPLv3+.
(license (list license:lgpl3+ license:gpl2)))) (license (list license:lgpl3+ license:gpl2))))
(define-public mlucas
(package
(name "mlucas")
(version "18")
(source
(origin
(method url-fetch)
(uri (string-append
"https://mersenneforum.org/mayer/src/C/mlucas_v" version ".txz"))
(sha256
(base32
"1ax12qj9lyvnx4vs3gx7l8r3wx5gjbsdswp5f00ik9z0wz7xf297"))))
(build-system gnu-build-system)
(inputs
`(("python2" ,python-2)))
(arguments
`(#:tests? #f ; no tests
#:phases
(modify-phases %standard-phases
(replace 'configure
(lambda _
(chdir "src")
(call-with-output-file "Makefile"
(lambda (port)
(format port "CC = gcc
CFLAGS = -O3 ~a -DUSE_THREADS
LDLIBS = -lm -lpthread -lrt
Mlucas: $(addsuffix .o,$(basename $(wildcard *.c)))
"
,(let ((system (or (%current-target-system)
(%current-system))))
(cond
((string-prefix? "x86_64" system) "-DUSE_SSE2")
(else ""))))))
#t))
(replace 'install
(lambda* (#:key outputs #:allow-other-keys)
(let ((bin (string-append (assoc-ref outputs "out") "/bin")))
(install-file "Mlucas" bin)
(install-file "primenet.py" bin))
#t)))))
(home-page "https://www.mersenne.org")
(synopsis "Great Internet Mersenne Prime Search (GIMPS) distributed computing client")
(description "Mlucas performs Lucas-Lehmer primality testing of Mersenne
numbers in search of a world-record prime. You may use it to test any
suitable number as you wish, but it is preferable that you do so in a
coordinated fashion, as part of the Great Internet Mersenne Prime
Search (GIMPS). Mlucas also includes a simple Python script for assignment
management via the GIMPS project's Primenet server.")
(license license:gpl2+)))

View File

@ -91,7 +91,7 @@ interfacing MPD in the C, C++ & Objective C languages.")
(define-public mpd (define-public mpd
(package (package
(name "mpd") (name "mpd")
(version "0.21.6") (version "0.21.7")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (uri
@ -100,7 +100,7 @@ interfacing MPD in the C, C++ & Objective C languages.")
"/mpd-" version ".tar.xz")) "/mpd-" version ".tar.xz"))
(sha256 (sha256
(base32 (base32
"17z580gqwsr4xp3x124aapw96pl8hk91c43ld2x75606rim12kcd")))) "0b217f5m3vdmjsh51674f6q5pj5g43kwd8psrka09vlvaay6482i"))))
(build-system meson-build-system) (build-system meson-build-system)
(arguments (arguments
`(#:configure-flags '("-Ddocumentation=true") ; The default is 'false'... `(#:configure-flags '("-Ddocumentation=true") ; The default is 'false'...

View File

@ -0,0 +1,184 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2013, 2014, 2015, 2016, 2017, 2018, 2019 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2014, 2015, 2016, 2017, 2018, 2019 Mark H Weaver <mhw@netris.org>
;;; Copyright © 2016, 2017, 2018 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr>
;;;
;;; This file is part of GNU Guix.
;;;
;;; GNU Guix is free software; you can redistribute it and/or modify it
;;; under the terms of the GNU General Public License as published by
;;; the Free Software Foundation; either version 3 of the License, or (at
;;; your option) any later version.
;;;
;;; GNU Guix is distributed in the hope that it will be useful, but
;;; WITHOUT ANY WARRANTY; without even the implied warranty of
;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
;;; GNU General Public License for more details.
;;;
;;; You should have received a copy of the GNU General Public License
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
(define-module (gnu packages nss)
#:use-module (guix packages)
#:use-module (guix download)
#:use-module (guix build-system gnu)
#:use-module ((guix licenses) #:prefix license:)
#:use-module (gnu packages)
#:use-module (gnu packages check)
#:use-module (gnu packages compression)
#:use-module (gnu packages perl)
#:use-module (gnu packages sqlite)
#:use-module (ice-9 match))
(define-public nspr
(package
(name "nspr")
(version "4.21")
(source (origin
(method url-fetch)
(uri (string-append
"https://ftp.mozilla.org/pub/mozilla.org/nspr/releases/v"
version "/src/nspr-" version ".tar.gz"))
(sha256
(base32
"0nkbgk0x31nfm4xl8la0a3vrnpa8gzkh7g4k65p7n880n73k5shm"))))
(build-system gnu-build-system)
(native-inputs
`(("perl" ,perl)))
(arguments
`(#:tests? #f ; no check target
#:configure-flags (list "--enable-64bit"
(string-append "LDFLAGS=-Wl,-rpath="
(assoc-ref %outputs "out")
"/lib"))
;; Use fixed timestamps for reproducibility.
#:make-flags '("SH_DATE='1970-01-01 00:00:01'"
;; This is epoch 1 in microseconds.
"SH_NOW=100000")
#:phases (modify-phases %standard-phases
(add-before 'configure 'chdir
(lambda _ (chdir "nspr") #t)))))
(home-page
"https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSPR")
(synopsis "Netscape API for system level and libc-like functions")
(description "Netscape Portable Runtime (@dfn{NSPR}) provides a
platform-neutral API for system level and libc-like functions. It is used
in the Mozilla clients.")
(license license:mpl2.0)))
(define-public nss
(package
(name "nss")
(version "3.43")
(source (origin
(method url-fetch)
(uri (let ((version-with-underscores
(string-join (string-split version #\.) "_")))
(string-append
"https://ftp.mozilla.org/pub/mozilla.org/security/nss/"
"releases/NSS_" version-with-underscores "_RTM/src/"
"nss-" version ".tar.gz")))
(sha256
(base32
"1jp27w4w9nj5pkzrbc1zqj6pa09h2yy7vhzyx5fvg1q86fvw22zk"))
;; Create nss.pc and nss-config.
(patches (search-patches "nss-pkgconfig.patch"
"nss-increase-test-timeout.patch"))))
(build-system gnu-build-system)
(outputs '("out" "bin"))
(arguments
`(#:parallel-build? #f ; not supported
#:make-flags
(let* ((out (assoc-ref %outputs "out"))
(nspr (string-append (assoc-ref %build-inputs "nspr")))
(rpath (string-append "-Wl,-rpath=" out "/lib/nss")))
(list "-C" "nss" (string-append "PREFIX=" out)
"NSDISTMODE=copy"
"NSS_USE_SYSTEM_SQLITE=1"
(string-append "NSPR_INCLUDE_DIR=" nspr "/include/nspr")
;; Add $out/lib/nss to RPATH.
(string-append "RPATH=" rpath)
(string-append "LDFLAGS=" rpath)))
#:modules ((guix build gnu-build-system)
(guix build utils)
(ice-9 ftw)
(ice-9 match)
(srfi srfi-26))
#:phases
(modify-phases %standard-phases
(replace 'configure
(lambda _
(setenv "CC" "gcc")
;; Tells NSS to build for the 64-bit ABI if we are 64-bit system.
,@(match (%current-system)
((or "x86_64-linux" "aarch64-linux")
`((setenv "USE_64" "1")))
(_
'()))
#t))
(replace 'check
(lambda _
;; Use 127.0.0.1 instead of $HOST.$DOMSUF as HOSTADDR for testing.
;; The later requires a working DNS or /etc/hosts.
(setenv "DOMSUF" "localdomain")
(setenv "USE_IP" "TRUE")
(setenv "IP_ADDRESS" "127.0.0.1")
;; The "PayPalEE.cert" certificate expires every six months,
;; leading to test failures:
;; <https://bugzilla.mozilla.org/show_bug.cgi?id=609734>. To
;; work around that, set the time to roughly the release date.
(invoke "faketime" "2019-02-01" "./nss/tests/all.sh")))
(replace 'install
(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(bin (string-append (assoc-ref outputs "bin") "/bin"))
(inc (string-append out "/include/nss"))
(lib (string-append out "/lib/nss"))
(obj (match (scandir "dist" (cut string-suffix? "OBJ" <>))
((obj) (string-append "dist/" obj)))))
;; Install nss-config to $out/bin.
(install-file (string-append obj "/bin/nss-config")
(string-append out "/bin"))
(delete-file (string-append obj "/bin/nss-config"))
;; Install nss.pc to $out/lib/pkgconfig.
(install-file (string-append obj "/lib/pkgconfig/nss.pc")
(string-append out "/lib/pkgconfig"))
(delete-file (string-append obj "/lib/pkgconfig/nss.pc"))
(rmdir (string-append obj "/lib/pkgconfig"))
;; Install other files.
(copy-recursively "dist/public/nss" inc)
(copy-recursively (string-append obj "/bin") bin)
(copy-recursively (string-append obj "/lib") lib)
;; FIXME: libgtest1.so is installed in the above step, and it's
;; (unnecessarily) linked with several NSS libraries, but
;; without the needed rpaths, causing the 'validate-runpath'
;; phase to fail. Here we simply delete libgtest1.so, since it
;; seems to be used only during the tests.
(delete-file (string-append lib "/libgtest1.so"))
(delete-file (string-append lib "/libgtestutil.so"))
#t))))))
(inputs
`(("sqlite" ,sqlite)
("zlib" ,zlib)))
(propagated-inputs `(("nspr" ,nspr))) ; required by nss.pc.
(native-inputs `(("perl" ,perl)
("libfaketime" ,libfaketime))) ;for tests
;; The NSS test suite takes around 48 hours on Loongson 3A (MIPS) when
;; another build is happening concurrently on the same machine.
(properties '((timeout . 216000))) ; 60 hours
(home-page
"https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSS")
(synopsis "Network Security Services")
(description
"Network Security Services (@dfn{NSS}) is a set of libraries designed to
support cross-platform development of security-enabled client and server
applications. Applications built with NSS can support SSL v2 and v3, TLS,
PKCS #5, PKCS #7, PKCS #11, PKCS #12, S/MIME, X.509 v3 certificates, and other
security standards.")
(license license:mpl2.0)))

View File

@ -1,5 +1,5 @@
;;; GNU Guix --- Functional package management for GNU ;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2013, 2014, 2015 Ludovic Courtès <ludo@gnu.org> ;;; Copyright © 2013, 2014, 2015, 2019 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2013 Andreas Enge <andreas@enge.fr> ;;; Copyright © 2013 Andreas Enge <andreas@enge.fr>
;;; Copyright © 2016 Leo Famulari <leo@famulari.name> ;;; Copyright © 2016 Leo Famulari <leo@famulari.name>
;;; Copyright © 2017, 2018, 2019 Ricardo Wurmus <rekado@elephly.net> ;;; Copyright © 2017, 2018, 2019 Ricardo Wurmus <rekado@elephly.net>
@ -29,13 +29,13 @@
#:use-module (gnu packages documentation) #:use-module (gnu packages documentation)
#:use-module (gnu packages gettext) #:use-module (gnu packages gettext)
#:use-module (gnu packages gnupg) #:use-module (gnu packages gnupg)
#:use-module (gnu packages gnuzilla)
#:use-module (gnu packages groff) #:use-module (gnu packages groff)
#:use-module (gnu packages icu4c) #:use-module (gnu packages icu4c)
#:use-module (gnu packages kerberos) #:use-module (gnu packages kerberos)
#:use-module (gnu packages libevent) #:use-module (gnu packages libevent)
#:use-module (gnu packages linux) #:use-module (gnu packages linux)
#:use-module (gnu packages networking) #:use-module (gnu packages networking)
#:use-module (gnu packages nss)
#:use-module (gnu packages password-utils) #:use-module (gnu packages password-utils)
#:use-module (gnu packages pcre) #:use-module (gnu packages pcre)
#:use-module (gnu packages perl) #:use-module (gnu packages perl)

View File

@ -50,7 +50,6 @@
#:use-module (gnu packages glib) #:use-module (gnu packages glib)
#:use-module (gnu packages gnome) #:use-module (gnu packages gnome)
#:use-module (gnu packages gnupg) #:use-module (gnu packages gnupg)
#:use-module (gnu packages gnuzilla)
#:use-module (gnu packages graphviz) #:use-module (gnu packages graphviz)
#:use-module (gnu packages gtk) #:use-module (gnu packages gtk)
#:use-module (gnu packages guile) #:use-module (gnu packages guile)
@ -59,6 +58,7 @@
#:use-module (gnu packages lisp) #:use-module (gnu packages lisp)
#:use-module (gnu packages man) #:use-module (gnu packages man)
#:use-module (gnu packages nettle) #:use-module (gnu packages nettle)
#:use-module (gnu packages nss)
#:use-module (gnu packages patchutils) #:use-module (gnu packages patchutils)
#:use-module (gnu packages perl) #:use-module (gnu packages perl)
#:use-module (gnu packages perl-check) #:use-module (gnu packages perl-check)
@ -1010,7 +1010,7 @@ the bootloader configuration.")
(define-public flatpak (define-public flatpak
(package (package
(name "flatpak") (name "flatpak")
(version "1.2.3") (version "1.2.4")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
@ -1018,7 +1018,7 @@ the bootloader configuration.")
version "/flatpak-" version ".tar.xz")) version "/flatpak-" version ".tar.xz"))
(sha256 (sha256
(base32 (base32
"0i0dn3w3545lvmjlzqj3j70lk8yrq64r9frp1rk6a161gwq20ixv")))) "1qf3ys84fzv11z6f6li59rxjdjbyrv7cyi9539k73r9i9pckjr8v"))))
;; Wrap 'flatpak' so that GIO_EXTRA_MODULES is set, thereby allowing GIO to ;; Wrap 'flatpak' so that GIO_EXTRA_MODULES is set, thereby allowing GIO to
;; find the TLS backend in glib-networking. ;; find the TLS backend in glib-networking.

View File

@ -58,7 +58,6 @@
#:use-module (gnu packages gettext) #:use-module (gnu packages gettext)
#:use-module (gnu packages glib) #:use-module (gnu packages glib)
#:use-module (gnu packages gnupg) #:use-module (gnu packages gnupg)
#:use-module (gnu packages gnuzilla)
#:use-module (gnu packages gtk) #:use-module (gnu packages gtk)
#:use-module (gnu packages guile) #:use-module (gnu packages guile)
#:use-module (gnu packages kerberos) #:use-module (gnu packages kerberos)
@ -67,6 +66,7 @@
#:use-module (gnu packages man) #:use-module (gnu packages man)
#:use-module (gnu packages multiprecision) #:use-module (gnu packages multiprecision)
#:use-module (gnu packages ncurses) #:use-module (gnu packages ncurses)
#:use-module (gnu packages nss)
#:use-module (gnu packages opencl) #:use-module (gnu packages opencl)
#:use-module (gnu packages perl) #:use-module (gnu packages perl)
#:use-module (gnu packages pkg-config) #:use-module (gnu packages pkg-config)

View File

@ -0,0 +1,27 @@
From 52bfd419bf9022726048f818d955b8ea10a16d5c Mon Sep 17 00:00:00 2001
From: Patrick Mosby <info@schreiblogade.de>
Date: Mon, 7 Sep 2015 09:05:56 +0200
Subject: [PATCH] Don't save undo file for ignored files.
This fixes #4.
---
undohist.el | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/undohist.el b/undohist.el
index b184a26..de60356 100644
--- a/undohist.el
+++ b/undohist.el
@@ -164,7 +164,8 @@ To use undohist, you just call this function."
undohist-ignored-files)))
(defun undohist-save-1 ()
- (when (consp buffer-undo-list)
+ (when (and (consp buffer-undo-list)
+ (undohist-recover-file-p (buffer-file-name (current-buffer))))
(let ((file (make-undohist-file-name (buffer-file-name)))
(contents `((digest . ,(md5 (current-buffer)))
(undo-list . ,(undohist-encode buffer-undo-list)))))
--
2.21.0

View File

@ -0,0 +1,171 @@
https://github.com/mm2/Little-CMS/commit/768f70ca405cd3159d990e962d54456773bb8cf8.patch
From 768f70ca405cd3159d990e962d54456773bb8cf8 Mon Sep 17 00:00:00 2001
From: Marti Maria <info@littlecms.com>
Date: Wed, 15 Aug 2018 20:07:56 +0200
Subject: [PATCH] Upgrade Visual studio 2017 15.8
- Upgrade to 15.8
- Add check on CGATS memory allocation (thanks to Quang Nguyen for
pointing out this)
---
Projects/VC2017/jpegicc/jpegicc.vcxproj | 1 +
Projects/VC2017/lcms2_DLL/lcms2_DLL.vcxproj | 2 +-
Projects/VC2017/lcms2_static/lcms2_static.vcxproj | 2 +-
Projects/VC2017/linkicc/linkicc.vcxproj | 2 +-
Projects/VC2017/psicc/psicc.vcxproj | 2 +-
Projects/VC2017/testbed/testbed.vcxproj | 2 +-
Projects/VC2017/tiffdiff/tiffdiff.vcxproj | 2 +-
Projects/VC2017/tifficc/tifficc.vcxproj | 2 +-
Projects/VC2017/transicc/transicc.vcxproj | 1 +
src/cmscgats.c | 14 ++++++++++----
10 files changed, 19 insertions(+), 11 deletions(-)
diff --git a/Projects/VC2017/jpegicc/jpegicc.vcxproj b/Projects/VC2017/jpegicc/jpegicc.vcxproj
index ab26a53..39cfd00 100644
--- a/Projects/VC2017/jpegicc/jpegicc.vcxproj
+++ b/Projects/VC2017/jpegicc/jpegicc.vcxproj
@@ -22,6 +22,7 @@
<ProjectGuid>{62812507-F926-4968-96A9-17678460AD90}</ProjectGuid>
<RootNamespace>jpegicc</RootNamespace>
<Keyword>Win32Proj</Keyword>
+ <WindowsTargetPlatformVersion>10.0.17134.0</WindowsTargetPlatformVersion>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
diff --git a/Projects/VC2017/lcms2_DLL/lcms2_DLL.vcxproj b/Projects/VC2017/lcms2_DLL/lcms2_DLL.vcxproj
index 4c8aa3f..d1bf3eb 100644
--- a/Projects/VC2017/lcms2_DLL/lcms2_DLL.vcxproj
+++ b/Projects/VC2017/lcms2_DLL/lcms2_DLL.vcxproj
@@ -22,7 +22,7 @@
<ProjectGuid>{8C51BE48-ADB8-4089-A9EC-F6BF993A0548}</ProjectGuid>
<RootNamespace>lcms2_DLL</RootNamespace>
<Keyword>Win32Proj</Keyword>
- <WindowsTargetPlatformVersion>8.1</WindowsTargetPlatformVersion>
+ <WindowsTargetPlatformVersion>10.0.17134.0</WindowsTargetPlatformVersion>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
diff --git a/Projects/VC2017/lcms2_static/lcms2_static.vcxproj b/Projects/VC2017/lcms2_static/lcms2_static.vcxproj
index 2a9988a..9fc05ce 100644
--- a/Projects/VC2017/lcms2_static/lcms2_static.vcxproj
+++ b/Projects/VC2017/lcms2_static/lcms2_static.vcxproj
@@ -22,7 +22,7 @@
<ProjectGuid>{71DEDE59-3F1E-486B-A899-4283000F76B5}</ProjectGuid>
<RootNamespace>lcms2_static</RootNamespace>
<Keyword>Win32Proj</Keyword>
- <WindowsTargetPlatformVersion>8.1</WindowsTargetPlatformVersion>
+ <WindowsTargetPlatformVersion>10.0.17134.0</WindowsTargetPlatformVersion>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
diff --git a/Projects/VC2017/linkicc/linkicc.vcxproj b/Projects/VC2017/linkicc/linkicc.vcxproj
index 30c2b4e..51586dd 100644
--- a/Projects/VC2017/linkicc/linkicc.vcxproj
+++ b/Projects/VC2017/linkicc/linkicc.vcxproj
@@ -22,7 +22,7 @@
<ProjectGuid>{FBFBE1DC-DB84-4BA1-9552-B4780F457849}</ProjectGuid>
<RootNamespace>linkicc</RootNamespace>
<Keyword>Win32Proj</Keyword>
- <WindowsTargetPlatformVersion>8.1</WindowsTargetPlatformVersion>
+ <WindowsTargetPlatformVersion>10.0.17134.0</WindowsTargetPlatformVersion>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
diff --git a/Projects/VC2017/psicc/psicc.vcxproj b/Projects/VC2017/psicc/psicc.vcxproj
index 9dcf89a..8f26e12 100644
--- a/Projects/VC2017/psicc/psicc.vcxproj
+++ b/Projects/VC2017/psicc/psicc.vcxproj
@@ -22,7 +22,7 @@
<ProjectGuid>{EF6A8851-65FE-46F5-B9EF-14F0B671F693}</ProjectGuid>
<RootNamespace>psicc</RootNamespace>
<Keyword>Win32Proj</Keyword>
- <WindowsTargetPlatformVersion>8.1</WindowsTargetPlatformVersion>
+ <WindowsTargetPlatformVersion>10.0.17134.0</WindowsTargetPlatformVersion>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
diff --git a/Projects/VC2017/testbed/testbed.vcxproj b/Projects/VC2017/testbed/testbed.vcxproj
index 0af3762..3f6aea3 100644
--- a/Projects/VC2017/testbed/testbed.vcxproj
+++ b/Projects/VC2017/testbed/testbed.vcxproj
@@ -22,7 +22,7 @@
<ProjectGuid>{928A3A2B-46EF-4279-959C-513B3652FF0E}</ProjectGuid>
<RootNamespace>testbed</RootNamespace>
<Keyword>Win32Proj</Keyword>
- <WindowsTargetPlatformVersion>8.1</WindowsTargetPlatformVersion>
+ <WindowsTargetPlatformVersion>10.0.17134.0</WindowsTargetPlatformVersion>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
diff --git a/Projects/VC2017/tiffdiff/tiffdiff.vcxproj b/Projects/VC2017/tiffdiff/tiffdiff.vcxproj
index 7edfe28..3a6d837 100644
--- a/Projects/VC2017/tiffdiff/tiffdiff.vcxproj
+++ b/Projects/VC2017/tiffdiff/tiffdiff.vcxproj
@@ -22,7 +22,7 @@
<ProjectGuid>{75B91835-CCD7-48BE-A606-A9C997D5DBEE}</ProjectGuid>
<RootNamespace>tiffdiff</RootNamespace>
<Keyword>Win32Proj</Keyword>
- <WindowsTargetPlatformVersion>8.1</WindowsTargetPlatformVersion>
+ <WindowsTargetPlatformVersion>10.0.17134.0</WindowsTargetPlatformVersion>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
diff --git a/Projects/VC2017/tifficc/tifficc.vcxproj b/Projects/VC2017/tifficc/tifficc.vcxproj
index cd9f04c..5ef954f 100644
--- a/Projects/VC2017/tifficc/tifficc.vcxproj
+++ b/Projects/VC2017/tifficc/tifficc.vcxproj
@@ -22,7 +22,7 @@
<ProjectGuid>{2256DE16-ED92-4A6F-9C54-F65BB61E64A2}</ProjectGuid>
<RootNamespace>tifficc</RootNamespace>
<Keyword>Win32Proj</Keyword>
- <WindowsTargetPlatformVersion>8.1</WindowsTargetPlatformVersion>
+ <WindowsTargetPlatformVersion>10.0.17134.0</WindowsTargetPlatformVersion>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
diff --git a/Projects/VC2017/transicc/transicc.vcxproj b/Projects/VC2017/transicc/transicc.vcxproj
index d9b77c6..b3173d8 100644
--- a/Projects/VC2017/transicc/transicc.vcxproj
+++ b/Projects/VC2017/transicc/transicc.vcxproj
@@ -22,6 +22,7 @@
<ProjectGuid>{9EE22D66-C849-474C-9ED5-C3E141DAB160}</ProjectGuid>
<RootNamespace>transicc</RootNamespace>
<Keyword>Win32Proj</Keyword>
+ <WindowsTargetPlatformVersion>10.0.17134.0</WindowsTargetPlatformVersion>
</PropertyGroup>
<Import Project="$(VCTargetsPath)\Microsoft.Cpp.Default.props" />
<PropertyGroup Condition="'$(Configuration)|$(Platform)'=='Release|Win32'" Label="Configuration">
diff --git a/src/cmscgats.c b/src/cmscgats.c
index 1a87613..8c3e96d 100644
--- a/src/cmscgats.c
+++ b/src/cmscgats.c
@@ -1,7 +1,7 @@
//---------------------------------------------------------------------------------
//
// Little Color Management System
-// Copyright (c) 1998-2017 Marti Maria Saguer
+// Copyright (c) 1998-2018 Marti Maria Saguer
//
// Permission is hereby granted, free of charge, to any person obtaining
// a copy of this software and associated documentation files (the "Software"),
@@ -1506,10 +1506,16 @@ void AllocateDataSet(cmsIT8* it8)
t-> nSamples = atoi(cmsIT8GetProperty(it8, "NUMBER_OF_FIELDS"));
t-> nPatches = atoi(cmsIT8GetProperty(it8, "NUMBER_OF_SETS"));
- t-> Data = (char**)AllocChunk (it8, ((cmsUInt32Number) t->nSamples + 1) * ((cmsUInt32Number) t->nPatches + 1) *sizeof (char*));
- if (t->Data == NULL) {
+ if (t -> nSamples < 0 || t->nSamples > 0x7ffe || t->nPatches < 0 || t->nPatches > 0x7ffe)
+ {
+ SynError(it8, "AllocateDataSet: too much data");
+ }
+ else {
+ t->Data = (char**)AllocChunk(it8, ((cmsUInt32Number)t->nSamples + 1) * ((cmsUInt32Number)t->nPatches + 1) * sizeof(char*));
+ if (t->Data == NULL) {
- SynError(it8, "AllocateDataSet: Unable to allocate data array");
+ SynError(it8, "AllocateDataSet: Unable to allocate data array");
+ }
}
}

View File

@ -1,27 +0,0 @@
This fixes failures of tests "BaseLine_opt-datetime-format" and
"BaseLine_opt-time-report", which were printing an unexpected trailing '*' on
the last line of output, e.g.:
@@ -5,4 +5,4 @@
04/05/13 12:00 PM 04/05/13 01:30 PM 1.50h Lunch
04/05/13 11:30 AM 04/05/13 12:00 PM 30.0m Walk
--------------------------------------------------
-
+ *
Reported upstream at
https://groups.google.com/d/msg/ledger-cli/EeJUrUk8YDc/pIR-LOTVEAAJ
diff --git a/src/account.h b/src/account.h
index 1b97463d..f2555593 100644
--- a/src/account.h
+++ b/src/account.h
@@ -187,7 +187,7 @@ public:
datetime_t earliest_checkin;
datetime_t latest_checkout;
- bool latest_checkout_cleared;
+ bool latest_checkout_cleared = false;
std::set<path> filenames;
std::set<string> accounts_referenced;

View File

@ -0,0 +1,322 @@
Normally localed would do an approximate parsing of the Xorg config file
to determine the XKB keyboard layout. This doesn't make sense on Guix
where there's no such file in /etc, and where the keyboard layout is
known statically at configuration time.
This patch removes the XOrg configuration parsing and expects to read the
configuration from environment variables instead. It also removes the
stateful bits that would write configuration to /etc/vconsole.conf
and /etc/X11, which are unused in Guix anyway.
Patch by Ludovic Courtès <ludo@gnu.org>.
diff --git a/src/locale/keymap-util.c b/src/locale/keymap-util.c
index 6b6b32a591..46aab472b0 100644
--- a/src/locale/keymap-util.c
+++ b/src/locale/keymap-util.c
@@ -174,32 +174,16 @@ int vconsole_read_data(Context *c, sd_bus_message *m) {
c->vc_cache = sd_bus_message_ref(m);
}
- if (stat("/etc/vconsole.conf", &st) < 0) {
- if (errno != ENOENT)
- return -errno;
-
- c->vc_mtime = USEC_INFINITY;
- context_free_vconsole(c);
- return 0;
- }
-
- /* If mtime is not changed, then we do not need to re-read */
- t = timespec_load(&st.st_mtim);
- if (c->vc_mtime != USEC_INFINITY && t == c->vc_mtime)
- return 0;
-
- c->vc_mtime = t;
+ c->vc_mtime = USEC_INFINITY;
context_free_vconsole(c);
-
- r = parse_env_file(NULL, "/etc/vconsole.conf",
- "KEYMAP", &c->vc_keymap,
- "KEYMAP_TOGGLE", &c->vc_keymap_toggle);
- if (r < 0)
- return r;
-
return 0;
}
+static char *getenv_strdup(const char *variable) {
+ const char *value = getenv(variable);
+ return value == NULL ? NULL : strdup(value);
+}
+
int x11_read_data(Context *c, sd_bus_message *m) {
_cleanup_fclose_ FILE *f = NULL;
bool in_section = false;
@@ -216,258 +200,27 @@ int x11_read_data(Context *c, sd_bus_message *m) {
c->x11_cache = sd_bus_message_ref(m);
}
- if (stat("/etc/X11/xorg.conf.d/00-keyboard.conf", &st) < 0) {
- if (errno != ENOENT)
- return -errno;
-
- c->x11_mtime = USEC_INFINITY;
- context_free_x11(c);
- return 0;
- }
-
- /* If mtime is not changed, then we do not need to re-read */
- t = timespec_load(&st.st_mtim);
- if (c->x11_mtime != USEC_INFINITY && t == c->x11_mtime)
- return 0;
-
- c->x11_mtime = t;
+ c->x11_mtime = 0;
context_free_x11(c);
- f = fopen("/etc/X11/xorg.conf.d/00-keyboard.conf", "re");
- if (!f)
- return -errno;
-
- for (;;) {
- _cleanup_free_ char *line = NULL;
- char *l;
-
- r = read_line(f, LONG_LINE_MAX, &line);
- if (r < 0)
- return r;
- if (r == 0)
- break;
-
- l = strstrip(line);
- if (IN_SET(l[0], 0, '#'))
- continue;
-
- if (in_section && first_word(l, "Option")) {
- _cleanup_strv_free_ char **a = NULL;
-
- r = strv_split_extract(&a, l, WHITESPACE, EXTRACT_QUOTES);
- if (r < 0)
- return r;
-
- if (strv_length(a) == 3) {
- char **p = NULL;
-
- if (streq(a[1], "XkbLayout"))
- p = &c->x11_layout;
- else if (streq(a[1], "XkbModel"))
- p = &c->x11_model;
- else if (streq(a[1], "XkbVariant"))
- p = &c->x11_variant;
- else if (streq(a[1], "XkbOptions"))
- p = &c->x11_options;
-
- if (p) {
- free_and_replace(*p, a[2]);
- }
- }
-
- } else if (!in_section && first_word(l, "Section")) {
- _cleanup_strv_free_ char **a = NULL;
-
- r = strv_split_extract(&a, l, WHITESPACE, EXTRACT_QUOTES);
- if (r < 0)
- return -ENOMEM;
-
- if (strv_length(a) == 2 && streq(a[1], "InputClass"))
- in_section = true;
-
- } else if (in_section && first_word(l, "EndSection"))
- in_section = false;
- }
+ c->x11_layout = getenv_strdup("GUIX_XKB_LAYOUT");
+ c->x11_model = getenv_strdup("GUIX_XKB_MODEL");
+ c->x11_variant = getenv_strdup("GUIX_XKB_VARIANT");
+ c->x11_options = getenv_strdup("GUIX_XKB_OPTIONS");
return 0;
}
int locale_write_data(Context *c, char ***settings) {
- _cleanup_strv_free_ char **l = NULL;
- struct stat st;
- int r, p;
-
- /* Set values will be returned as strv in *settings on success. */
-
- for (p = 0; p < _VARIABLE_LC_MAX; p++) {
- _cleanup_free_ char *t = NULL;
- char **u;
- const char *name;
-
- name = locale_variable_to_string(p);
- assert(name);
-
- if (isempty(c->locale[p]))
- continue;
-
- if (asprintf(&t, "%s=%s", name, c->locale[p]) < 0)
- return -ENOMEM;
-
- u = strv_env_set(l, t);
- if (!u)
- return -ENOMEM;
-
- strv_free_and_replace(l, u);
- }
-
- if (strv_isempty(l)) {
- if (unlink("/etc/locale.conf") < 0)
- return errno == ENOENT ? 0 : -errno;
-
- c->locale_mtime = USEC_INFINITY;
- return 0;
- }
-
- r = write_env_file_label("/etc/locale.conf", l);
- if (r < 0)
- return r;
-
- *settings = TAKE_PTR(l);
-
- if (stat("/etc/locale.conf", &st) >= 0)
- c->locale_mtime = timespec_load(&st.st_mtim);
-
- return 0;
+ return -ENOSYS;
}
int vconsole_write_data(Context *c) {
- _cleanup_strv_free_ char **l = NULL;
- struct stat st;
- int r;
-
- r = load_env_file(NULL, "/etc/vconsole.conf", &l);
- if (r < 0 && r != -ENOENT)
- return r;
-
- if (isempty(c->vc_keymap))
- l = strv_env_unset(l, "KEYMAP");
- else {
- _cleanup_free_ char *s = NULL;
- char **u;
-
- s = strappend("KEYMAP=", c->vc_keymap);
- if (!s)
- return -ENOMEM;
-
- u = strv_env_set(l, s);
- if (!u)
- return -ENOMEM;
-
- strv_free_and_replace(l, u);
- }
-
- if (isempty(c->vc_keymap_toggle))
- l = strv_env_unset(l, "KEYMAP_TOGGLE");
- else {
- _cleanup_free_ char *s = NULL;
- char **u;
-
- s = strappend("KEYMAP_TOGGLE=", c->vc_keymap_toggle);
- if (!s)
- return -ENOMEM;
-
- u = strv_env_set(l, s);
- if (!u)
- return -ENOMEM;
-
- strv_free_and_replace(l, u);
- }
-
- if (strv_isempty(l)) {
- if (unlink("/etc/vconsole.conf") < 0)
- return errno == ENOENT ? 0 : -errno;
-
- c->vc_mtime = USEC_INFINITY;
- return 0;
- }
-
- r = write_env_file_label("/etc/vconsole.conf", l);
- if (r < 0)
- return r;
-
- if (stat("/etc/vconsole.conf", &st) >= 0)
- c->vc_mtime = timespec_load(&st.st_mtim);
-
- return 0;
+ return -ENOSYS;
}
int x11_write_data(Context *c) {
- _cleanup_fclose_ FILE *f = NULL;
- _cleanup_free_ char *temp_path = NULL;
- struct stat st;
- int r;
-
- if (isempty(c->x11_layout) &&
- isempty(c->x11_model) &&
- isempty(c->x11_variant) &&
- isempty(c->x11_options)) {
-
- if (unlink("/etc/X11/xorg.conf.d/00-keyboard.conf") < 0)
- return errno == ENOENT ? 0 : -errno;
-
- c->vc_mtime = USEC_INFINITY;
- return 0;
- }
-
- mkdir_p_label("/etc/X11/xorg.conf.d", 0755);
-
- r = fopen_temporary("/etc/X11/xorg.conf.d/00-keyboard.conf", &f, &temp_path);
- if (r < 0)
- return r;
-
- (void) __fsetlocking(f, FSETLOCKING_BYCALLER);
- (void) fchmod(fileno(f), 0644);
-
- fputs("# Written by systemd-localed(8), read by systemd-localed and Xorg. It's\n"
- "# probably wise not to edit this file manually. Use localectl(1) to\n"
- "# instruct systemd-localed to update it.\n"
- "Section \"InputClass\"\n"
- " Identifier \"system-keyboard\"\n"
- " MatchIsKeyboard \"on\"\n", f);
-
- if (!isempty(c->x11_layout))
- fprintf(f, " Option \"XkbLayout\" \"%s\"\n", c->x11_layout);
-
- if (!isempty(c->x11_model))
- fprintf(f, " Option \"XkbModel\" \"%s\"\n", c->x11_model);
-
- if (!isempty(c->x11_variant))
- fprintf(f, " Option \"XkbVariant\" \"%s\"\n", c->x11_variant);
-
- if (!isempty(c->x11_options))
- fprintf(f, " Option \"XkbOptions\" \"%s\"\n", c->x11_options);
-
- fputs("EndSection\n", f);
-
- r = fflush_sync_and_check(f);
- if (r < 0)
- goto fail;
-
- if (rename(temp_path, "/etc/X11/xorg.conf.d/00-keyboard.conf") < 0) {
- r = -errno;
- goto fail;
- }
-
- if (stat("/etc/X11/xorg.conf.d/00-keyboard.conf", &st) >= 0)
- c->x11_mtime = timespec_load(&st.st_mtim);
-
- return 0;
-
-fail:
- if (temp_path)
- (void) unlink(temp_path);
-
- return r;
+ return -ENOSYS;
}
static int read_next_mapping(const char* filename,

View File

@ -0,0 +1,72 @@
Fix CVE-2019-9755:
https://security-tracker.debian.org/tracker/CVE-2019-9755
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-9755
Patch copied from upstream source repository:
https://sourceforge.net/p/ntfs-3g/ntfs-3g/ci/85c1634a26faa572d3c558d4cf8aaaca5202d4e9/
From 85c1634a26faa572d3c558d4cf8aaaca5202d4e9 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Jean-Pierre=20Andr=C3=A9?= <jean-pierre.andre@wanadoo.fr>
Date: Wed, 19 Dec 2018 15:57:50 +0100
Subject: [PATCH] Fixed reporting an error when failed to build the mountpoint
The size check was inefficient because getcwd() uses an unsigned int
argument.
---
src/lowntfs-3g.c | 6 +++++-
src/ntfs-3g.c | 6 +++++-
2 files changed, 10 insertions(+), 2 deletions(-)
diff --git a/src/lowntfs-3g.c b/src/lowntfs-3g.c
index 993867fa..0660439b 100644
--- a/src/lowntfs-3g.c
+++ b/src/lowntfs-3g.c
@@ -4411,7 +4411,8 @@ int main(int argc, char *argv[])
else {
ctx->abs_mnt_point = (char*)ntfs_malloc(PATH_MAX);
if (ctx->abs_mnt_point) {
- if (getcwd(ctx->abs_mnt_point,
+ if ((strlen(opts.mnt_point) < PATH_MAX)
+ && getcwd(ctx->abs_mnt_point,
PATH_MAX - strlen(opts.mnt_point) - 1)) {
strcat(ctx->abs_mnt_point, "/");
strcat(ctx->abs_mnt_point, opts.mnt_point);
@@ -4419,6 +4420,9 @@ int main(int argc, char *argv[])
/* Solaris also wants the absolute mount point */
opts.mnt_point = ctx->abs_mnt_point;
#endif /* defined(__sun) && defined (__SVR4) */
+ } else {
+ free(ctx->abs_mnt_point);
+ ctx->abs_mnt_point = (char*)NULL;
}
}
}
diff --git a/src/ntfs-3g.c b/src/ntfs-3g.c
index 6ce89fef..4e0912ae 100644
--- a/src/ntfs-3g.c
+++ b/src/ntfs-3g.c
@@ -4148,7 +4148,8 @@ int main(int argc, char *argv[])
else {
ctx->abs_mnt_point = (char*)ntfs_malloc(PATH_MAX);
if (ctx->abs_mnt_point) {
- if (getcwd(ctx->abs_mnt_point,
+ if ((strlen(opts.mnt_point) < PATH_MAX)
+ && getcwd(ctx->abs_mnt_point,
PATH_MAX - strlen(opts.mnt_point) - 1)) {
strcat(ctx->abs_mnt_point, "/");
strcat(ctx->abs_mnt_point, opts.mnt_point);
@@ -4156,6 +4157,9 @@ int main(int argc, char *argv[])
/* Solaris also wants the absolute mount point */
opts.mnt_point = ctx->abs_mnt_point;
#endif /* defined(__sun) && defined (__SVR4) */
+ } else {
+ free(ctx->abs_mnt_point);
+ ctx->abs_mnt_point = (char*)NULL;
}
}
}
--
2.21.0

View File

@ -58,7 +58,7 @@
(define-public php (define-public php
(package (package
(name "php") (name "php")
(version "7.3.3") (version "7.3.4")
(home-page "https://secure.php.net/") (home-page "https://secure.php.net/")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
@ -66,7 +66,7 @@
name "-" version ".tar.xz")) name "-" version ".tar.xz"))
(sha256 (sha256
(base32 (base32
"1cxrpaz5cvx1qq9klwgvcyvcly865sxpn4bdk82wpl43l5wkxc3b")) "10rvj9dn41213w0q2l123rn6sycr29syik88czprhpv5z2hrzrvg"))
(modules '((guix build utils))) (modules '((guix build utils)))
(snippet (snippet
'(with-directory-excursion "ext" '(with-directory-excursion "ext"

View File

@ -1,7 +1,7 @@
;;; GNU Guix --- Functional package management for GNU ;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2013, 2014, 2015, 2016, 2017, 2018 Ludovic Courtès <ludo@gnu.org> ;;; Copyright © 2013, 2014, 2015, 2016, 2017, 2018 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2015 Eric Bavier <bavier@member.fsf.org> ;;; Copyright © 2015 Eric Bavier <bavier@member.fsf.org>
;;; Copyright © 2016, 2017 Nicolas Goaziou <mail@nicolasgoaziou.fr> ;;; Copyright © 2016, 2017, 2019 Nicolas Goaziou <mail@nicolasgoaziou.fr>
;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr> ;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
;;; ;;;
;;; This file is part of GNU Guix. ;;; This file is part of GNU Guix.
@ -171,21 +171,23 @@ colors, styles, options and details.")
(define-public asymptote (define-public asymptote
(package (package
(name "asymptote") (name "asymptote")
(version "2.47") (version "2.49")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append "mirror://sourceforge/asymptote/" (uri (string-append "mirror://sourceforge/asymptote/"
version "/asymptote-" version ".src.tgz")) version "/asymptote-" version ".src.tgz"))
(sha256 (sha256
(base32 (base32
"0zc24n2vwzxdfmcppqfk3fkqlb4jmvswzi3bz232kxl7dyiyb971")))) "1vljhq68gyc2503l9fj76rk1q4a4db9a1sp3fdfagqqmirnmybp5"))))
(build-system gnu-build-system) (build-system gnu-build-system)
;; Note: The 'asy' binary retains a reference to docdir for use with its ;; Note: The 'asy' binary retains a reference to docdir for use with its
;; "help" command in interactive mode, so adding a "doc" output is not ;; "help" command in interactive mode, so adding a "doc" output is not
;; currently useful. ;; currently useful.
(native-inputs (native-inputs
`(("gs" ,ghostscript) ;For tests `(("emacs" ,emacs-minimal)
("texinfo" ,texinfo) ;For generating documentation ("gs" ,ghostscript) ;For tests
("perl" ,perl)
("texinfo" ,texinfo) ;For generating documentation
;; For the manual and the tests. ;; For the manual and the tests.
("texlive" ,(texlive-union (list texlive-fonts-amsfonts ("texlive" ,(texlive-union (list texlive-fonts-amsfonts
texlive-latex-amsfonts texlive-latex-amsfonts
@ -193,15 +195,15 @@ colors, styles, options and details.")
texlive-latex-graphics texlive-latex-graphics
texlive-latex-oberdiek ; for ifluatex texlive-latex-oberdiek ; for ifluatex
texlive-latex-parskip texlive-latex-parskip
texlive-tex-texinfo))) texlive-tex-texinfo)))))
("emacs" ,emacs-minimal)
("perl" ,perl)))
(inputs (inputs
`(("fftw" ,fftw) `(("fftw" ,fftw)
("freeglut" ,freeglut) ("freeglut" ,freeglut)
("glew" ,glew)
("glm" ,glm)
("gsl" ,gsl) ("gsl" ,gsl)
("libgc" ,libgc) ("libgc" ,libgc)
("python" ,python-2) ("python" ,python)
("readline" ,readline) ("readline" ,readline)
("zlib" ,zlib))) ("zlib" ,zlib)))
(arguments (arguments
@ -221,6 +223,23 @@ colors, styles, options and details.")
"/share/texmf/tex/context/third")) "/share/texmf/tex/context/third"))
#:phases #:phases
(modify-phases %standard-phases (modify-phases %standard-phases
(add-after 'unpack 'fix-build
;; XXX: Build process complains about missing "config.h"
;; and "primitives.h" files.
(lambda _
(substitute* (find-files "." "\\.in$")
(("#include <primitives.h>") "#include \"primitives.h\""))
(invoke "touch" "prc/config.h")))
(add-after 'unpack 'move-info-location
;; Build process install info file in the unusual
;; "%out/share/info/asymptote/" location. Move it to
;; "%out/share/info/" so it appears in the top-level directory.
(lambda _
(substitute* "doc/png/Makefile.in"
(("(\\$\\(infodir\\))/asymptote" _ infodir) infodir))
(substitute* "doc/asymptote.texi"
(("asymptote/asymptote") "asymptote"))
#t))
(add-before 'build 'patch-pdf-viewer (add-before 'build 'patch-pdf-viewer
(lambda _ (lambda _
;; Default to a free pdf viewer. ;; Default to a free pdf viewer.
@ -233,12 +252,6 @@ colors, styles, options and details.")
;; "failed to create directory /homeless-shelter/.asy" error. ;; "failed to create directory /homeless-shelter/.asy" error.
(lambda _ (lambda _
(setenv "HOME" "/tmp") (setenv "HOME" "/tmp")
;; The "gs" test fails, complaining about an incompatible
;; Ghostscript version. Not sure what's going on... Is this
;; because I've just replaced texlive with texlive-union?
(substitute* "tests/Makefile"
(("^(TESTDIRS =.*) gs(.*)" begin end)
(string-append begin " " end)))
#t)) #t))
(add-after 'install 'install-Emacs-data (add-after 'install 'install-Emacs-data
(lambda* (#:key outputs #:allow-other-keys) (lambda* (#:key outputs #:allow-other-keys)

View File

@ -34,6 +34,7 @@
#:use-module (gnu packages gtk) #:use-module (gnu packages gtk)
#:use-module (gnu packages gnuzilla) #:use-module (gnu packages gnuzilla)
#:use-module (gnu packages linux) #:use-module (gnu packages linux)
#:use-module (gnu packages nss)
#:use-module (gnu packages perl) #:use-module (gnu packages perl)
#:use-module (gnu packages pkg-config) #:use-module (gnu packages pkg-config)
#:use-module (gnu packages qt) #:use-module (gnu packages qt)

View File

@ -1,6 +1,7 @@
;;; GNU Guix --- Functional package management for GNU ;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2018 Ludovic Courtès <ludo@gnu.org> ;;; Copyright © 2018 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr> ;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2019 Ricardo Wurmus <rekado@elephly.net>
;;; ;;;
;;; This file is part of GNU Guix. ;;; This file is part of GNU Guix.
;;; ;;;
@ -20,9 +21,13 @@
(define-module (gnu packages printers) (define-module (gnu packages printers)
#:use-module (guix packages) #:use-module (guix packages)
#:use-module (guix git-download) #:use-module (guix git-download)
#:use-module (guix build-system cmake)
#:use-module (guix build-system gnu) #:use-module (guix build-system gnu)
#:use-module ((guix licenses) #:prefix license:) #:use-module ((guix licenses) #:prefix license:)
#:use-module (gnu packages compression)
#:use-module (gnu packages cups)
#:use-module (gnu packages libusb) #:use-module (gnu packages libusb)
#:use-module (gnu packages ghostscript)
#:use-module (gnu packages pkg-config) #:use-module (gnu packages pkg-config)
#:use-module (gnu packages qt)) #:use-module (gnu packages qt))
@ -68,3 +73,54 @@
with Graphtec and Sihouette plotting cutters using an SVG file as its input.") with Graphtec and Sihouette plotting cutters using an SVG file as its input.")
(home-page "http://robocut.org") (home-page "http://robocut.org")
(license license:gpl3+))) (license license:gpl3+)))
(define-public brlaser
(let ((commit "779f71e80fcc583f4537c844de141cf8e6a738fe")
(revision "1"))
(package
(name "brlaser")
(version (git-version "4" revision commit))
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/pdewacht/brlaser.git")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32
"0yrz9706660hdfi2y0ndp254r0vw9y665hwmxbbzfnz4ai13vj50"))))
(build-system cmake-build-system)
(arguments
`(#:configure-flags
(list (string-append "-DCUPS_DATA_DIR="
(assoc-ref %outputs "out")
"/share/cups")
(string-append "-DCUPS_SERVER_BIN="
(assoc-ref %outputs "out")
"/lib/cups"))))
(inputs
`(("ghostscript" ,ghostscript)
("cups" ,cups)
("zlib" ,zlib)))
(home-page "https://github.com/pdewacht/brlaser")
(synopsis "Brother laser printer driver")
(description "Brlaser is a CUPS driver for Brother laser printers. This
driver is known to work with these printers:
@enumerate
@item Brother DCP-1510
@item Brother DCP-7030
@item Brother DCP-7040
@item Brother DCP-7055
@item Brother DCP-7055W
@item Brother DCP-7065DN
@item Brother DCP-7080
@item Brother HL-1200 series
@item Brother HL-L2320D series
@item Brother HL-L2360D series
@item Brother MFC-7240
@item Brother MFC-7360N
@end enumerate
It partially works with printers from the Brother HL-L2300D series.")
(license license:gpl2+))))

View File

@ -27,6 +27,7 @@
#:use-module (guix build-system cmake) #:use-module (guix build-system cmake)
#:use-module (guix build-system gnu) #:use-module (guix build-system gnu)
#:use-module (guix build-system python) #:use-module (guix build-system python)
#:use-module (guix build-system emacs)
#:use-module ((guix licenses) #:prefix license:) #:use-module ((guix licenses) #:prefix license:)
#:use-module (gnu packages compression) #:use-module (gnu packages compression)
#:use-module (gnu packages gcc) #:use-module (gnu packages gcc)
@ -208,3 +209,21 @@ mechanism for serializing structured data.")
(define-public python2-protobuf (define-public python2-protobuf
(package-with-python2 python-protobuf)) (package-with-python2 python-protobuf))
(define-public emacs-protobuf-mode
(package
(name "emacs-protobuf-mode")
(version (package-version protobuf))
(source (package-source protobuf))
(build-system emacs-build-system)
(arguments
`(#:phases
(modify-phases %standard-phases
(add-before 'set-emacs-load-path 'change-working-directory
(lambda _ (chdir "editors") #t)))))
(home-page "https://github.com/protocolbuffers/protobuf")
(synopsis "Protocol buffers major mode for Emacs")
(description
"This package provides an Emacs major mode for editing Protocol Buffer
source files.")
(license license:bsd-3)))

View File

@ -336,13 +336,13 @@ password storage.")
(define-public python-certifi (define-public python-certifi
(package (package
(name "python-certifi") (name "python-certifi")
(version "2018.11.29") (version "2019.3.9")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (pypi-uri "certifi" version)) (uri (pypi-uri "certifi" version))
(sha256 (sha256
(base32 (base32
"1dvccavd2fzq4j37w0sznylp92ps14zi6gvlxzm23in0yhzciya7")))) "1bnpw7hrf9i1l9gfxjnzi45hkrvzz0pyn9ia8m4mw7sxhgb08qdj"))))
(build-system python-build-system) (build-system python-build-system)
(home-page "https://certifi.io/") (home-page "https://certifi.io/")
(synopsis "Python CA certificate bundle") (synopsis "Python CA certificate bundle")

View File

@ -51,7 +51,7 @@
;;; Copyright © 2018 Mathieu Lirzin <mthl@gnu.org> ;;; Copyright © 2018 Mathieu Lirzin <mthl@gnu.org>
;;; Copyright © 2018 Adam Massmann <massmannak@gmail.com> ;;; Copyright © 2018 Adam Massmann <massmannak@gmail.com>
;;; Copyright © 2016, 2018 Tomáš Čech <sleep_walker@gnu.org> ;;; Copyright © 2016, 2018 Tomáš Čech <sleep_walker@gnu.org>
;;; Copyright © 2018 Nicolas Goaziou <mail@nicolasgoaziou.fr> ;;; Copyright © 2018, 2019 Nicolas Goaziou <mail@nicolasgoaziou.fr>
;;; Copyright © 2018 Oleg Pykhalov <go.wigust@gmail.com> ;;; Copyright © 2018 Oleg Pykhalov <go.wigust@gmail.com>
;;; Copyright © 2018 Clément Lassieur <clement@lassieur.org> ;;; Copyright © 2018 Clément Lassieur <clement@lassieur.org>
;;; Copyright © 2018, 2019 Maxim Cournoyer <maxim.cournoyer@gmail.com> ;;; Copyright © 2018, 2019 Maxim Cournoyer <maxim.cournoyer@gmail.com>
@ -15297,3 +15297,22 @@ space that are close to a given query point. It also creates large read-only
file-based data structures that are @code{mmap}ped into memory so that many file-based data structures that are @code{mmap}ped into memory so that many
processes may share the same data.") processes may share the same data.")
(license license:asl2.0))) (license license:asl2.0)))
(define-public python-sphinxcontrib-svg2pdfconverter
(package
(name "python-sphinxcontrib-svg2pdfconverter")
(version "0.1.0")
(source (origin
(method url-fetch)
(uri (pypi-uri "sphinxcontrib-svg2pdfconverter" version))
(sha256
(base32
"1abvbgkkii13q8nsb10r0gc5lm0p9iq1iwhfhakn5ifn6asa0183"))))
(build-system python-build-system)
(propagated-inputs
`(("python-sphinx" ,python-sphinx)))
(home-page "https://github.com/missinglinkelectronics/sphinxcontrib-svg2pdfconverter/releases")
(synopsis "Sphinx SVG to PDF converter extension")
(description "A Sphinx extension to convert SVG images to PDF in case the builder does not support
SVG images natively (e.g. LaTeX).")
(license license:bsd-3)))

View File

@ -48,7 +48,6 @@
#:use-module (gnu packages freedesktop) #:use-module (gnu packages freedesktop)
#:use-module (gnu packages gl) #:use-module (gnu packages gl)
#:use-module (gnu packages glib) #:use-module (gnu packages glib)
#:use-module (gnu packages gnuzilla)
#:use-module (gnu packages gperf) #:use-module (gnu packages gperf)
#:use-module (gnu packages gstreamer) #:use-module (gnu packages gstreamer)
#:use-module (gnu packages gtk) #:use-module (gnu packages gtk)
@ -56,6 +55,7 @@
#:use-module (gnu packages image) #:use-module (gnu packages image)
#:use-module (gnu packages linux) #:use-module (gnu packages linux)
#:use-module (gnu packages maths) #:use-module (gnu packages maths)
#:use-module (gnu packages nss)
#:use-module (gnu packages pciutils) #:use-module (gnu packages pciutils)
#:use-module (gnu packages pcre) #:use-module (gnu packages pcre)
#:use-module (gnu packages perl) #:use-module (gnu packages perl)

View File

@ -30,7 +30,7 @@
(define-public re2 (define-public re2
(package (package
(name "re2") (name "re2")
(version "2019-03-01") (version "2019-04-01")
(home-page "https://github.com/google/re2") (home-page "https://github.com/google/re2")
(source (origin (source (origin
(method git-fetch) (method git-fetch)
@ -38,7 +38,7 @@
(file-name (git-file-name name version)) (file-name (git-file-name name version))
(sha256 (sha256
(base32 (base32
"032lsrb57llq79icpvrrh1fmjzy2i4bdmydfww178nc45ya5wcl4")))) "018b8z3fgcr02rmhxdz80r363k40938cbgmk1c9b46k6xkc4q0hd"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
`(#:modules ((guix build gnu-build-system) `(#:modules ((guix build gnu-build-system)

View File

@ -152,14 +152,14 @@ anywhere.")
(define-public samba (define-public samba
(package (package
(name "samba") (name "samba")
(version "4.10.0") (version "4.10.1")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append "https://download.samba.org/pub/samba/stable/" (uri (string-append "https://download.samba.org/pub/samba/stable/"
"samba-" version ".tar.gz")) "samba-" version ".tar.gz"))
(sha256 (sha256
(base32 (base32
"0n1ld77y8sydkpx6l8i2hqa1k7hpkr8df91pg849glc4b85407wz")))) "0kf5v65xgz7z18ggj1k46yy5g5dy76k7ni04s79kalzqqs25scd7"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
`(#:phases `(#:phases

View File

@ -34,7 +34,6 @@
#:use-module (guix download) #:use-module (guix download)
#:use-module (guix utils) #:use-module (guix utils)
#:use-module (guix build-system gnu) #:use-module (guix build-system gnu)
#:use-module (guix build-system haskell)
#:use-module (guix build-system trivial) #:use-module (guix build-system trivial)
#:use-module (gnu packages audio) #:use-module (gnu packages audio)
#:use-module (gnu packages fcitx) #:use-module (gnu packages fcitx)
@ -42,7 +41,6 @@
#:use-module (gnu packages freedesktop) #:use-module (gnu packages freedesktop)
#:use-module (gnu packages glib) #:use-module (gnu packages glib)
#:use-module (gnu packages guile) #:use-module (gnu packages guile)
#:use-module (gnu packages haskell)
#:use-module (gnu packages ibus) #:use-module (gnu packages ibus)
#:use-module (gnu packages image) #:use-module (gnu packages image)
#:use-module (gnu packages linux) #:use-module (gnu packages linux)
@ -544,93 +542,3 @@ sound and device input (keyboards, joysticks, mice, etc.).")
The bindings are written in pure Scheme using Guile's foreign function The bindings are written in pure Scheme using Guile's foreign function
interface.") interface.")
(license lgpl3+))) (license lgpl3+)))
(define-public ghc-sdl2
(package
(name "ghc-sdl2")
(version "2.4.1.0")
(source
(origin
(method url-fetch)
(uri (string-append "https://hackage.haskell.org/package/"
"sdl2/sdl2-" version ".tar.gz"))
(sha256
(base32
"0p4b12fmxps0sbnkqdfy0qw19s355yrkw7fgw6xz53wzq706k991"))))
(build-system haskell-build-system)
(arguments '(#:tests? #f)) ; tests require graphical environment
(inputs
`(("ghc-exceptions" ,ghc-exceptions)
("ghc-linear" ,ghc-linear)
("ghc-statevar" ,ghc-statevar)
("ghc-text" ,ghc-text)
("ghc-vector" ,ghc-vector)
("sdl2" ,sdl2)))
(native-inputs
`(("ghc-weigh" ,ghc-weigh)
("pkg-config" ,pkg-config)))
(home-page "http://hackage.haskell.org/package/sdl2")
(synopsis "High- and low-level bindings to the SDL library")
(description
"This package contains bindings to the SDL 2 library, in both high- and
low-level forms. The @code{SDL} namespace contains high-level bindings, where
enumerations are split into sum types, and we perform automatic
error-checking. The @code{SDL.Raw} namespace contains an almost 1-1
translation of the C API into Haskell FFI calls. As such, this does not
contain sum types nor error checking. Thus this namespace is suitable for
building your own abstraction over SDL, but is not recommended for day-to-day
programming.")
(license bsd-3)))
(define-public ghc-sdl2-mixer
(package
(name "ghc-sdl2-mixer")
(version "1.1.0")
(source
(origin
(method url-fetch)
(uri (string-append "https://hackage.haskell.org/package/sdl2-mixer/"
"sdl2-mixer-" version ".tar.gz"))
(sha256
(base32
"1k8avyccq5l9z7bwxigim312yaancxl1sr3q6a96bcm7pnhiak0g"))))
(build-system haskell-build-system)
(inputs
`(("ghc-data-default-class" ,ghc-data-default-class)
("ghc-lifted-base" ,ghc-lifted-base)
("ghc-monad-control" ,ghc-monad-control)
("ghc-sdl2" ,ghc-sdl2)
("ghc-vector" ,ghc-vector)
("sdl2-mixer" ,sdl2-mixer)))
(native-inputs
`(("pkg-config" ,pkg-config)))
(home-page "http://hackage.haskell.org/package/sdl2-mixer")
(synopsis "Bindings to SDL2 mixer")
(description "This package provides Haskell bindings to
@code{SDL2_mixer}.")
(license bsd-3)))
(define-public ghc-sdl2-image
(package
(name "ghc-sdl2-image")
(version "2.0.0")
(source
(origin
(method url-fetch)
(uri (string-append "https://hackage.haskell.org/package/sdl2-image/"
"sdl2-image-" version ".tar.gz"))
(sha256
(base32
"1pr6dkg73cy9z0w54lrkj9c5bhxj56nl92lxikjy8kz6nyr455rr"))))
(build-system haskell-build-system)
(inputs
`(("ghc-sdl2" ,ghc-sdl2)
("ghc-text" ,ghc-text)
("sdl2-image" ,sdl2-image)))
(native-inputs
`(("pkg-config" ,pkg-config)))
(home-page "http://hackage.haskell.org/package/sdl2-image")
(synopsis "Bindings to SDL2_image")
(description "This package provides Haskell bindings to
@code{SDL2_image}.")
(license expat)))

View File

@ -143,6 +143,24 @@ a server that supports the SSH-2 protocol.")
(license license:bsd-3) (license license:bsd-3)
(home-page "https://www.libssh2.org/"))) (home-page "https://www.libssh2.org/")))
;; XXX A hidden special obsolete libssh2 for temporary use in the curl package.
;; <https://bugs.gnu.org/34927>
(define-public libssh2-1.8.0
(hidden-package
(package
(inherit libssh2)
(version "1.8.0")
(source (origin
(method url-fetch)
(uri (string-append
"https://www.libssh2.org/download/libssh2-"
version ".tar.gz"))
(sha256
(base32
"1m3n8spv79qhjq4yi0wgly5s5rc8783jb1pyra9bkx1md0plxwrr"))
(patches
(search-patches "libssh2-fix-build-failure-with-gcrypt.patch")))))))
(define-public openssh (define-public openssh
(package (package
(name "openssh") (name "openssh")

View File

@ -35,10 +35,10 @@
#:use-module (gnu packages docbook) #:use-module (gnu packages docbook)
#:use-module (gnu packages documentation) #:use-module (gnu packages documentation)
#:use-module (gnu packages glib) #:use-module (gnu packages glib)
#:use-module (gnu packages gnuzilla) #:use-module (gnu packages kerberos)
#:use-module (gnu packages libunistring) #:use-module (gnu packages libunistring)
#:use-module (gnu packages linux) #:use-module (gnu packages linux)
#:use-module (gnu packages kerberos) #:use-module (gnu packages nss)
#:use-module (gnu packages openldap) #:use-module (gnu packages openldap)
#:use-module (gnu packages tls) #:use-module (gnu packages tls)
#:use-module (gnu packages pcre) #:use-module (gnu packages pcre)

View File

@ -400,14 +400,14 @@ D.V. Hinkley (1997, CUP), originally written by Angelo Canty for S.")
(define-public r-mass (define-public r-mass
(package (package
(name "r-mass") (name "r-mass")
(version "7.3-51.1") (version "7.3-51.3")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (cran-uri "MASS" version)) (uri (cran-uri "MASS" version))
(sha256 (sha256
(base32 (base32
"14907ia8418mp3p1rs1i2f1x5b6kk5z998dk353a29j3xqf3ybyq")))) "1dh8cvvdsf9dx29x6va47qdkswmr03k3yjycinq98fnl0ivhw3jv"))))
(properties `((upstream-name . "MASS"))) (properties `((upstream-name . "MASS")))
(build-system r-build-system) (build-system r-build-system)
(home-page "http://www.stats.ox.ac.uk/pub/MASS4/") (home-page "http://www.stats.ox.ac.uk/pub/MASS4/")
@ -443,14 +443,14 @@ k-nearest neighbour, Learning Vector Quantization and Self-Organizing Maps.")
(define-public r-cluster (define-public r-cluster
(package (package
(name "r-cluster") (name "r-cluster")
(version "2.0.7-1") (version "2.0.8")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (cran-uri "cluster" version)) (uri (cran-uri "cluster" version))
(sha256 (sha256
(base32 (base32
"1grxbifbc4nwig25dmjgkympnbzb4al0w6k1c0ibdhpk1h4l20di")))) "0jkmlhjknndh0lmyvqz7s7j1hhnarixm6zb39np4ssw47flk0nfc"))))
(build-system r-build-system) (build-system r-build-system)
(inputs (inputs
`(("gfortran" ,gfortran))) `(("gfortran" ,gfortran)))
@ -675,14 +675,14 @@ analysis.")
(define-public r-survival (define-public r-survival
(package (package
(name "r-survival") (name "r-survival")
(version "2.43-3") (version "2.44-1.1")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (cran-uri "survival" version)) (uri (cran-uri "survival" version))
(sha256 (sha256
(base32 (base32
"0ldrjja1dj4n1ic0lbggm7jvk52sl5h85i8m23nrgndi60acsv4r")))) "1faiwyg7x8y2kfzb66l4yc8br0mdlz4k20znmjrwq96dbzhm3cam"))))
(build-system r-build-system) (build-system r-build-system)
(propagated-inputs (propagated-inputs
`(("r-matrix" ,r-matrix))) `(("r-matrix" ,r-matrix)))
@ -1182,23 +1182,23 @@ agnes cluster diagrams.")
(define-public r-gdtools (define-public r-gdtools
(package (package
(name "r-gdtools") (name "r-gdtools")
(version "0.1.7") (version "0.1.8")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (cran-uri "gdtools" version)) (uri (cran-uri "gdtools" version))
(sha256 (sha256
(base32 (base32
"122k9spymawfnfyksxyapwq9cigydy5nrjwhrwrhy3qkax3aycf6")))) "1ayy0s699ghaz34lklvcskfwman3x2n2772s5sa5x9k9xgsnxwcl"))))
(build-system r-build-system) (build-system r-build-system)
(native-inputs (native-inputs
`(("r-rcpp" ,r-rcpp) `(("pkg-config" ,pkg-config)))
("pkg-config" ,pkg-config)))
(inputs (inputs
`(("cairo" ,cairo) `(("cairo" ,cairo)
("zlib" ,zlib))) ("zlib" ,zlib)))
(propagated-inputs (propagated-inputs
`(("r-withr" ,r-withr))) `(("r-rcpp" ,r-rcpp)
("r-withr" ,r-withr)))
(home-page "https://cran.r-project.org/web/packages/gdtools") (home-page "https://cran.r-project.org/web/packages/gdtools")
(synopsis "Utilities for graphical rendering") (synopsis "Utilities for graphical rendering")
(description (description
@ -1635,13 +1635,13 @@ defined in different packages.")
(define-public r-rlang (define-public r-rlang
(package (package
(name "r-rlang") (name "r-rlang")
(version "0.3.2") (version "0.3.3")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (cran-uri "rlang" version)) (uri (cran-uri "rlang" version))
(sha256 (sha256
(base32 (base32
"13s8dh7nryjacp9jpi092icxf5ffkp16qxv59m923g5nkf8f03hi")))) "1pdlafnijpd2vzy8jxcxwakfi66n4qzrqxvcxi1ja389m066cvbb"))))
(build-system r-build-system) (build-system r-build-system)
(home-page "http://rlang.tidyverse.org") (home-page "http://rlang.tidyverse.org")
(synopsis "Functions for base types, core R and Tidyverse features") (synopsis "Functions for base types, core R and Tidyverse features")

View File

@ -37,11 +37,11 @@
#:use-module (gnu packages databases) #:use-module (gnu packages databases)
#:use-module (gnu packages disk) #:use-module (gnu packages disk)
#:use-module (gnu packages gcc) #:use-module (gnu packages gcc)
#:use-module (gnu packages gnuzilla)
#:use-module (gnu packages gperf) #:use-module (gnu packages gperf)
#:use-module (gnu packages jemalloc) #:use-module (gnu packages jemalloc)
#:use-module (gnu packages linux) #:use-module (gnu packages linux)
#:use-module (gnu packages lua) #:use-module (gnu packages lua)
#:use-module (gnu packages nss)
#:use-module (gnu packages openldap) #:use-module (gnu packages openldap)
#:use-module (gnu packages perl) #:use-module (gnu packages perl)
#:use-module (gnu packages pkg-config) #:use-module (gnu packages pkg-config)

View File

@ -1,6 +1,6 @@
;;; GNU Guix --- Functional package management for GNU ;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2016 Petter <petter@mykolab.ch> ;;; Copyright © 2016 Petter <petter@mykolab.ch>
;;; Copyright © 2016, 2017, 2018 Leo Famulari <leo@famulari.name> ;;; Copyright © 2016, 2017, 2018, 2019 Leo Famulari <leo@famulari.name>
;;; ;;;
;;; This file is part of GNU Guix. ;;; This file is part of GNU Guix.
;;; ;;;
@ -30,7 +30,7 @@
(define-public syncthing (define-public syncthing
(package (package
(name "syncthing") (name "syncthing")
(version "1.1.0") (version "1.1.1")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append "https://github.com/syncthing/syncthing" (uri (string-append "https://github.com/syncthing/syncthing"
@ -38,7 +38,7 @@
"/syncthing-source-v" version ".tar.gz")) "/syncthing-source-v" version ".tar.gz"))
(sha256 (sha256
(base32 (base32
"1iks1a3149gj89yqmqa5iry2ik2sj9sjhlhc6nfh7xq4swqgsrb5")) "0xrlw95yp2p66rlvp2a2czf92m3hb3l8v3p39cwnaiw928y5i5m7"))
(modules '((guix build utils))) (modules '((guix build utils)))
;; Delete bundled ("vendored") free software source code. ;; Delete bundled ("vendored") free software source code.
(snippet '(begin (snippet '(begin

View File

@ -38,7 +38,6 @@
#:use-module (guix build-system perl) #:use-module (guix build-system perl)
#:use-module (guix build-system python) #:use-module (guix build-system python)
#:use-module (guix build-system cmake) #:use-module (guix build-system cmake)
#:use-module (guix build-system haskell)
#:use-module (guix build-system trivial) #:use-module (guix build-system trivial)
#:use-module (gnu packages compression) #:use-module (gnu packages compression)
#:use-module (gnu packages) #:use-module (gnu packages)
@ -48,9 +47,6 @@
#:use-module (gnu packages dns) #:use-module (gnu packages dns)
#:use-module (gnu packages gawk) #:use-module (gnu packages gawk)
#:use-module (gnu packages guile) #:use-module (gnu packages guile)
#:use-module (gnu packages haskell)
#:use-module (gnu packages haskell-check)
#:use-module (gnu packages haskell-crypto)
#:use-module (gnu packages libbsd) #:use-module (gnu packages libbsd)
#:use-module (gnu packages libffi) #:use-module (gnu packages libffi)
#:use-module (gnu packages libidn) #:use-module (gnu packages libidn)
@ -533,13 +529,13 @@ netcat implementation that supports TLS.")
(package (package
(name "python-acme") (name "python-acme")
;; Remember to update the hash of certbot when updating python-acme. ;; Remember to update the hash of certbot when updating python-acme.
(version "0.32.0") (version "0.33.0")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (pypi-uri "acme" version)) (uri (pypi-uri "acme" version))
(sha256 (sha256
(base32 (base32
"1v0skyrjnbxq0lfmia5k6jy29iig4sxbi9j9q367xsw0g25wxvqf")))) "0gmnbjanv8dl8035n2b30wisqn4w9rr6fxzxrbrbnhhd40pnlplx"))))
(build-system python-build-system) (build-system python-build-system)
(arguments (arguments
`(#:phases `(#:phases
@ -590,7 +586,7 @@ netcat implementation that supports TLS.")
(uri (pypi-uri name version)) (uri (pypi-uri name version))
(sha256 (sha256
(base32 (base32
"1j63i0j019q0d3l5rx14fv4nxy01nplhk7q2k2fq10vxl0jlxff0")))) "0iiqr306zy56y8wpxsvzw1izs184pzps72kxhssmznqlgz5ngni5"))))
(build-system python-build-system) (build-system python-build-system)
(arguments (arguments
`(,@(substitute-keyword-arguments (package-arguments python-acme) `(,@(substitute-keyword-arguments (package-arguments python-acme)
@ -882,48 +878,6 @@ coding footprint.")
#t))) #t)))
,@(package-arguments mbedtls-apache))))))) ,@(package-arguments mbedtls-apache)))))))
(define-public ghc-tls
(package
(name "ghc-tls")
(version "1.4.1")
(source (origin
(method url-fetch)
(uri (string-append "https://hackage.haskell.org/package/"
"tls/tls-" version ".tar.gz"))
(sha256
(base32
"1y083724mym28n6xfaz7pcc7zqxdhjpaxpbvzxfbs25qq2px3smv"))))
(build-system haskell-build-system)
(inputs
`(("ghc-cereal" ,ghc-cereal)
("ghc-data-default-class" ,ghc-data-default-class)
("ghc-memory" ,ghc-memory)
("ghc-cryptonite" ,ghc-cryptonite)
("ghc-asn1-types" ,ghc-asn1-types)
("ghc-asn1-encoding" ,ghc-asn1-encoding)
("ghc-x509" ,ghc-x509)
("ghc-x509-store" ,ghc-x509-store)
("ghc-x509-validation" ,ghc-x509-validation)
("ghc-async" ,ghc-async)
("ghc-network" ,ghc-network)
("ghc-hourglass" ,ghc-hourglass)))
(native-inputs
`(("ghc-tasty" ,ghc-tasty)
("ghc-tasty-quickcheck" ,ghc-tasty-quickcheck)
("ghc-quickcheck" ,ghc-quickcheck)))
(home-page "https://github.com/vincenthz/hs-tls")
(synopsis
"TLS/SSL protocol native implementation (Server and Client)")
(description
"Native Haskell TLS and SSL protocol implementation for server and client.
This provides a high-level implementation of a sensitive security protocol,
eliminating a common set of security issues through the use of the advanced
type system, high level constructions and common Haskell features. Currently
implement the SSL3.0, TLS1.0, TLS1.1 and TLS1.2 protocol, and support RSA and
Ephemeral (Elliptic curve and regular) Diffie Hellman key exchanges, and many
extensions.")
(license license:bsd-3)))
(define-public dehydrated (define-public dehydrated
(package (package
(name "dehydrated") (name "dehydrated")

View File

@ -32,14 +32,14 @@
(define-public miniupnpc (define-public miniupnpc
(package (package
(name "miniupnpc") (name "miniupnpc")
(version "2.1.20190210") (version "2.1.20190403")
(source (source
(origin (origin
(method url-fetch) (method url-fetch)
(uri (string-append "https://miniupnp.tuxfamily.org/files/" (uri (string-append "https://miniupnp.tuxfamily.org/files/"
name "-" version ".tar.gz")) name "-" version ".tar.gz"))
(sha256 (sha256
(base32 "05w8p51yd71ksapajb9nag464ncakk72v9dxr01y168wix707d49")))) (base32 "0qgwcinj8h312v2995qc2z1lbpmw916glkc8j9fa16xr4l2skxfy"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(native-inputs (native-inputs
`(("python" ,python-2))) `(("python" ,python-2)))

View File

@ -45,10 +45,8 @@
#:use-module (guix packages) #:use-module (guix packages)
#:use-module (guix download) #:use-module (guix download)
#:use-module (guix git-download) #:use-module (guix git-download)
#:use-module (guix build-system ant)
#:use-module (guix build-system cmake) #:use-module (guix build-system cmake)
#:use-module (guix build-system gnu) #:use-module (guix build-system gnu)
#:use-module (guix build-system haskell)
#:use-module (guix build-system python) #:use-module (guix build-system python)
#:use-module (guix build-system trivial) #:use-module (guix build-system trivial)
#:use-module (gnu packages apr) #:use-module (gnu packages apr)
@ -69,12 +67,7 @@
#:use-module (gnu packages gl) #:use-module (gnu packages gl)
#:use-module (gnu packages groff) #:use-module (gnu packages groff)
#:use-module (gnu packages guile) #:use-module (gnu packages guile)
#:use-module (gnu packages haskell)
#:use-module (gnu packages haskell-check)
#:use-module (gnu packages haskell-crypto)
#:use-module (gnu packages haskell-web)
#:use-module (gnu packages image) #:use-module (gnu packages image)
#:use-module (gnu packages java)
#:use-module (gnu packages linux) #:use-module (gnu packages linux)
#:use-module (gnu packages maths) #:use-module (gnu packages maths)
#:use-module (gnu packages nano) #:use-module (gnu packages nano)
@ -1959,180 +1952,6 @@ a built-in wiki, built-in file browsing, built-in tickets system, etc.")
be served with a HTTP file server of your choice.") be served with a HTTP file server of your choice.")
(license license:expat))) (license license:expat)))
;; Darcs has no https support: http://irclog.perlgeek.de/darcs/2016-09-17
;; http://darcs.net/manual/Configuring_darcs.html#SECTION00440070000000000000
;; and results of search engines will show that if the protocol is http, https
;; is never mentioned.
(define-public darcs
(package
(name "darcs")
(version "2.14.2")
(source
(origin
(method url-fetch)
(uri (string-append "https://hackage.haskell.org/package/darcs/"
"darcs-" version ".tar.gz"))
(sha256
(base32
"0zm2486gyhiga1amclbg92cd09bvki6vgh0ll75hv5kl72j61lb5"))
(modules '((guix build utils)))
;; Remove time-dependent code for reproducibility.
(snippet
'(begin
(substitute* "darcs/darcs.hs"
(("__DATE__") "\"1970-01-01\"")
(("__TIME__") "\"00:00:00\""))
#t))))
(build-system haskell-build-system)
(arguments
`(#:configure-flags '("-fpkgconfig" "-fcurl" "-flibiconv" "-fthreaded"
"-fnetwork-uri" "-fhttp" "--flag=executable"
"--flag=library")
#:phases
(modify-phases %standard-phases
(add-after 'patch-source-shebangs 'patch-sh
(lambda _
(substitute* "tests/issue538.sh"
(("/bin/sh") (which "sh")))
#t)))))
(inputs
`(("ghc-cmdargs" ,ghc-cmdargs)
("ghc-split" ,ghc-split)
("ghc-test-framework-quickcheck2" ,ghc-test-framework-quickcheck2)
("ghc-test-framework-hunit" ,ghc-test-framework-hunit)
("ghc-test-framework" ,ghc-test-framework)
("ghc-quickcheck" ,ghc-quickcheck)
("ghc-findbin" ,ghc-findbin)
("ghc-hunit" ,ghc-hunit)
("ghc-async" ,ghc-async)
("ghc-attoparsec" ,ghc-attoparsec)
("ghc-base16-bytestring" ,ghc-base16-bytestring)
("ghc-bytestring-builder" ,ghc-bytestring-builder)
("ghc-cryptohash" ,ghc-cryptohash)
("ghc-data-ordlist" ,ghc-data-ordlist)
("ghc-fgl" ,ghc-fgl)
("ghc-system-filepath" ,ghc-system-filepath)
("ghc-graphviz" ,ghc-graphviz)
("ghc-hashable" ,ghc-hashable)
("ghc-html" ,ghc-html)
("ghc-mmap" ,ghc-mmap)
("ghc-old-time" ,ghc-old-time)
("ghc-parsec" ,ghc-parsec)
("ghc-random" ,ghc-random)
("ghc-regex-applicative" ,ghc-regex-applicative)
("ghc-regex-compat-tdfa" ,ghc-regex-compat-tdfa)
("ghc-sandi" ,ghc-sandi)
("ghc-shelly" ,ghc-shelly)
("ghc-tar" ,ghc-tar)
("ghc-transformers-compat" ,ghc-transformers-compat)
("ghc-unix-compat" ,ghc-unix-compat)
("ghc-utf8-string" ,ghc-utf8-string)
("ghc-vector" ,ghc-vector)
("ghc-zip-archive" ,ghc-zip-archive)
("ghc-zlib" ,ghc-zlib)
("ghc-http" ,ghc-http)
("curl" ,curl)
("ghc" ,ghc)
("ncurses" ,ncurses)
("perl" ,perl)
("libiconv" ,libiconv)
("ghc-network" ,ghc-network)
("ghc-network-uri" ,ghc-network-uri)))
(native-inputs
`(("pkg-config" ,pkg-config)))
(home-page "http://darcs.net")
(synopsis "Distributed Revision Control System")
(description
"Darcs is a revision control system. It is:
@enumerate
@item Distributed: Every user has access to the full command set, removing boundaries
between server and client or committer and non-committers.
@item Interactive: Darcs is easy to learn and efficient to use because it asks you
questions in response to simple commands, giving you choices in your work flow.
You can choose to record one change in a file, while ignoring another. As you update
from upstream, you can review each patch name, even the full diff for interesting
patches.
@item Smart: Originally developed by physicist David Roundy, darcs is based on a
unique algebra of patches called @url{http://darcs.net/Theory,Patchtheory}.
@end enumerate")
(license license:gpl2)))
(define-public java-jgit
(package
(name "java-jgit")
(version "4.7.0.201704051617-r")
(source (origin
(method url-fetch)
(uri (string-append "https://repo1.maven.org/maven2/"
"org/eclipse/jgit/org.eclipse.jgit/"
version "/org.eclipse.jgit-"
version "-sources.jar"))
(sha256
(base32
"13ii4jn02ynzq6i7gsyi21k2i94jpc85wf6bcm31q4cyvzv0mk4k"))))
(build-system ant-build-system)
(arguments
`(#:tests? #f ; There are no tests to run.
#:jar-name "jgit.jar"
;; JGit must be built with a JDK supporting Java 8.
#:jdk ,icedtea-8
;; Target our older default JDK.
#:make-flags (list "-Dtarget=1.7")
#:phases
(modify-phases %standard-phases
;; The jar file generated by the default build.xml does not include
;; the text properties files, so we need to add them.
(add-after 'build 'add-properties
(lambda* (#:key jar-name #:allow-other-keys)
(with-directory-excursion "src"
(apply invoke "jar" "-uf"
(string-append "../build/jar/" jar-name)
(find-files "." "\\.properties$")))
#t)))))
(inputs
`(("java-classpathx-servletapi" ,java-classpathx-servletapi)
("java-javaewah" ,java-javaewah)
("java-jsch" ,java-jsch)
("java-slf4j-api" ,java-slf4j-api)))
(home-page "https://eclipse.org/jgit/")
(synopsis "Java library implementing the Git version control system")
(description "JGit is a lightweight, pure Java library implementing the
Git version control system, providing repository access routines, support for
network protocols, and core version control algorithms.")
(license license:edl1.0)))
;; For axoloti. This package can still be built with icedtea-7, which is
;; currently used as the default JDK.
(define-public java-jgit-4.2
(package (inherit java-jgit)
(version "4.2.0.201601211800-r")
(source (origin
(method url-fetch)
(uri (string-append "https://repo1.maven.org/maven2/"
"org/eclipse/jgit/org.eclipse.jgit/"
version "/org.eclipse.jgit-"
version "-sources.jar"))
(sha256
(base32
"15gm537iivhnzlkjym4x3wn5jqdjdragsw9pdpzqqg21nrc817mm"))))
(build-system ant-build-system)
(arguments
(substitute-keyword-arguments (package-arguments java-jgit)
;; Build for default JDK.
((#:jdk _) icedtea-7)
((#:phases phases)
`(modify-phases ,phases
(add-after 'unpack 'use-latest-javaewah-API
(lambda _
(substitute* "src/org/eclipse/jgit/internal/storage/file/BitmapIndexImpl.java"
(("wordinbits") "WORD_IN_BITS"))
#t))))))
(inputs
`(("java-javaewah" ,java-javaewah)
("java-jsch" ,java-jsch)
("java-slf4j-api" ,java-slf4j-api)))))
(define-public gource (define-public gource
(package (package
(name "gource") (name "gource")
@ -2221,133 +2040,6 @@ cases like all those little scripts in your @file{~/bin} directory, or a
directory full of HOWTOs.") directory full of HOWTOs.")
(license license:bsd-2))) (license license:bsd-2)))
(define-public git-annex
(package
(name "git-annex")
(version "6.20180926")
(source
(origin
(method url-fetch)
(uri (string-append "https://hackage.haskell.org/package/"
"git-annex/git-annex-" version ".tar.gz"))
(sha256
(base32
"1251rj8h63y30sfqk0zh670yhz14p256y59n3590pg015pf3575d"))))
(build-system haskell-build-system)
(arguments
`(#:configure-flags
'("--flags=-Android -Assistant -Pairing -S3 -Webapp -WebDAV")
#:phases
(modify-phases %standard-phases
(add-before 'configure 'patch-shell
(lambda _
(substitute* "Utility/Shell.hs"
(("/bin/sh") (which "sh")))
#t))
(add-before 'configure 'factor-setup
(lambda _
;; Factor out necessary build logic from the provided
;; `Setup.hs' script. The script as-is does not work because
;; it cannot find its dependencies, and there is no obvious way
;; to tell it where to look. Note that we do not preserve the
;; code that installs man pages here.
(call-with-output-file "PreConf.hs"
(lambda (out)
(format out "import qualified Build.Configure as Configure~%")
(format out "main = Configure.run Configure.tests~%")))
(call-with-output-file "Setup.hs"
(lambda (out)
(format out "import Distribution.Simple~%")
(format out "main = defaultMain~%")))
#t))
(add-before 'configure 'pre-configure
(lambda _
(invoke "runhaskell" "PreConf.hs")
#t))
(replace 'check
(lambda _
;; We need to set the path so that Git recognizes
;; `git annex' as a custom command.
(setenv "PATH" (string-append (getenv "PATH") ":"
(getcwd) "/dist/build/git-annex"))
(with-directory-excursion "dist/build/git-annex"
(symlink "git-annex" "git-annex-shell"))
(invoke "git-annex" "test")
#t))
(add-after 'install 'install-symlinks
(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(bin (string-append out "/bin")))
(symlink (string-append bin "/git-annex")
(string-append bin "/git-annex-shell"))
(symlink (string-append bin "/git-annex")
(string-append bin "/git-remote-tor-annex"))
#t))))))
(inputs
`(("curl" ,curl)
("ghc-aeson" ,ghc-aeson)
("ghc-async" ,ghc-async)
("ghc-bloomfilter" ,ghc-bloomfilter)
("ghc-byteable" ,ghc-byteable)
("ghc-case-insensitive" ,ghc-case-insensitive)
("ghc-crypto-api" ,ghc-crypto-api)
("ghc-cryptonite" ,ghc-cryptonite)
("ghc-data-default" ,ghc-data-default)
("ghc-disk-free-space" ,ghc-disk-free-space)
("ghc-dlist" ,ghc-dlist)
("ghc-edit-distance" ,ghc-edit-distance)
("ghc-esqueleto" ,ghc-esqueleto)
("ghc-exceptions" ,ghc-exceptions)
("ghc-feed" ,ghc-feed)
("ghc-free" ,ghc-free)
("ghc-hslogger" ,ghc-hslogger)
("ghc-http-client" ,ghc-http-client)
("ghc-http-conduit" ,ghc-http-conduit)
("ghc-http-types" ,ghc-http-types)
("ghc-ifelse" ,ghc-ifelse)
("ghc-memory" ,ghc-memory)
("ghc-monad-control" ,ghc-monad-control)
("ghc-monad-logger" ,ghc-monad-logger)
("ghc-network" ,ghc-network)
("ghc-old-locale" ,ghc-old-locale)
("ghc-optparse-applicative" ,ghc-optparse-applicative)
("ghc-persistent" ,ghc-persistent)
("ghc-persistent-sqlite" ,ghc-persistent-sqlite)
("ghc-persistent-template" ,ghc-persistent-template)
("ghc-quickcheck" ,ghc-quickcheck)
("ghc-random" ,ghc-random)
("ghc-regex-tdfa" ,ghc-regex-tdfa)
("ghc-resourcet" ,ghc-resourcet)
("ghc-safesemaphore" ,ghc-safesemaphore)
("ghc-sandi" ,ghc-sandi)
("ghc-securemem" ,ghc-securemem)
("ghc-socks" ,ghc-socks)
("ghc-split" ,ghc-split)
("ghc-stm" ,ghc-stm)
("ghc-stm-chans" ,ghc-stm-chans)
("ghc-tagsoup" ,ghc-tagsoup)
("ghc-text" ,ghc-text)
("ghc-unix-compat" ,ghc-unix-compat)
("ghc-unordered-containers" ,ghc-unordered-containers)
("ghc-utf8-string" ,ghc-utf8-string)
("ghc-uuid" ,ghc-uuid)
("git" ,git)
("rsync" ,rsync)))
(native-inputs
`(("ghc-tasty" ,ghc-tasty)
("ghc-tasty-hunit" ,ghc-tasty-hunit)
("ghc-tasty-quickcheck" ,ghc-tasty-quickcheck)
("ghc-tasty-rerun" ,ghc-tasty-rerun)))
(home-page "https://git-annex.branchable.com/")
(synopsis "Manage files with Git, without checking in their contents")
(description "This package allows managing files with Git, without
checking the file contents into Git. It can store files in many places,
such as local hard drives and cloud storage services. It can also be
used to keep a folder in sync between computers.")
;; The web app is released under the AGPLv3+.
(license (list license:gpl3+
license:agpl3+))))
(define-public git-when-merged (define-public git-when-merged
;; Use an unreleased version to get a PY3 compatibility fix. ;; Use an unreleased version to get a PY3 compatibility fix.
(let ((commit "ab6af7865a0ba55ba364a6c507e0be6f84f31c6d")) (let ((commit "ab6af7865a0ba55ba364a6c507e0be6f84f31c6d"))

View File

@ -25,7 +25,7 @@
;;; Copyright © 2018 Roel Janssen <roel@gnu.org> ;;; Copyright © 2018 Roel Janssen <roel@gnu.org>
;;; Copyright © 2018, 2019 Marius Bakke <mbakke@fastmail.com> ;;; Copyright © 2018, 2019 Marius Bakke <mbakke@fastmail.com>
;;; Copyright © 2018 Pierre Neidhardt <mail@ambrevar.xyz> ;;; Copyright © 2018 Pierre Neidhardt <mail@ambrevar.xyz>
;;; Copyright © 2018 Leo Famulari <leo@famulari.name> ;;; Copyright © 2018, 2019 Leo Famulari <leo@famulari.name>
;;; Copyright © 2018 Brendan Tildesley <brendan.tildesley@openmailbox.org> ;;; Copyright © 2018 Brendan Tildesley <brendan.tildesley@openmailbox.org>
;;; Copyright © 2018 Arun Isaac <arunisaac@systemreboot.net> ;;; Copyright © 2018 Arun Isaac <arunisaac@systemreboot.net>
;;; Copyright © 2018 Björn Höfling <bjoern.hoefling@bjoernhoefling.de> ;;; Copyright © 2018 Björn Höfling <bjoern.hoefling@bjoernhoefling.de>
@ -755,14 +755,14 @@ standards (MPEG-2, MPEG-4 ASP/H.263, MPEG-4 AVC/H.264, and VC-1/VMW3).")
(define-public ffmpeg (define-public ffmpeg
(package (package
(name "ffmpeg") (name "ffmpeg")
(version "4.1.2") (version "4.1.3")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append "https://ffmpeg.org/releases/ffmpeg-" (uri (string-append "https://ffmpeg.org/releases/ffmpeg-"
version ".tar.xz")) version ".tar.xz"))
(sha256 (sha256
(base32 (base32
"0yrl6nij4b1pk1c4nbi80857dsd760gziiss2ls19awq8zj0lpxr")))) "0gdnprc7gk4b7ckq8wbxbrj7i00r76r9a5g9mj7iln40512j0c0c"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(inputs (inputs
`(("fontconfig" ,fontconfig) `(("fontconfig" ,fontconfig)
@ -2849,7 +2849,7 @@ many codecs and formats supported by libmediainfo.")
(define-public livemedia-utils (define-public livemedia-utils
(package (package
(name "livemedia-utils") (name "livemedia-utils")
(version "2018.10.17") (version "2019.03.06")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append (uri (string-append
@ -2857,13 +2857,7 @@ many codecs and formats supported by libmediainfo.")
version ".tar.gz")) version ".tar.gz"))
(sha256 (sha256
(base32 (base32
"1s69ipvdc6ldscp0cr1zpsll8xc3qcagr95nl84x7b1rbg4xjs3w")) "1gasdl95yjabv811knkmy5laj21a54z1jdfq36jdj984k1nw5l0b"))))
(modules '((guix build utils)))
(snippet '(begin
;; As of glibc 2.26, <xlocale.h> no longer is.
(substitute* "liveMedia/include/Locale.hh"
(("xlocale\\.h") "locale.h"))
#t))))
(build-system gnu-build-system) (build-system gnu-build-system)
(arguments (arguments
'(#:tests? #f ; no tests '(#:tests? #f ; no tests

View File

@ -1,6 +1,6 @@
;;; GNU Guix --- Functional package management for GNU ;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2013 Andreas Enge <andreas@enge.fr> ;;; Copyright © 2013 Andreas Enge <andreas@enge.fr>
;;; Copyright © 2013, 2016, 2018 Ludovic Courtès <ludo@gnu.org> ;;; Copyright © 2013, 2016, 2018, 2019 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2014 Eric Bavier <bavier@member.fsf.org> ;;; Copyright © 2014 Eric Bavier <bavier@member.fsf.org>
;;; Copyright © 2015 Jeff Mickey <j@codemac.net> ;;; Copyright © 2015 Jeff Mickey <j@codemac.net>
;;; Copyright © 2016, 2017 Efraim Flashner <efraim@flashner.co.il> ;;; Copyright © 2016, 2017 Efraim Flashner <efraim@flashner.co.il>
@ -42,9 +42,9 @@
#:use-module (gnu packages compression) #:use-module (gnu packages compression)
#:use-module (gnu packages gettext) #:use-module (gnu packages gettext)
#:use-module (gnu packages gnupg) #:use-module (gnu packages gnupg)
#:use-module (gnu packages gnuzilla)
#:use-module (gnu packages libevent) #:use-module (gnu packages libevent)
#:use-module (gnu packages linux) #:use-module (gnu packages linux)
#:use-module (gnu packages nss)
#:use-module (gnu packages perl) #:use-module (gnu packages perl)
#:use-module (gnu packages pkg-config) #:use-module (gnu packages pkg-config)
#:use-module (gnu packages python) #:use-module (gnu packages python)

View File

@ -1,7 +1,7 @@
;;; GNU Guix --- Functional package management for GNU ;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2013, 2015 Andreas Enge <andreas@enge.fr> ;;; Copyright © 2013, 2015 Andreas Enge <andreas@enge.fr>
;;; Copyright © 2013 Aljosha Papsch <misc@rpapsch.de> ;;; Copyright © 2013 Aljosha Papsch <misc@rpapsch.de>
;;; Copyright © 2014, 2015, 2016, 2017, 2018 Ludovic Courtès <ludo@gnu.org> ;;; Copyright © 2014, 2015, 2016, 2017, 2018, 2019 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2014, 2015, 2016 Mark H Weaver <mhw@netris.org> ;;; Copyright © 2014, 2015, 2016 Mark H Weaver <mhw@netris.org>
;;; Copyright © 2015, 2016, 2017, 2018, 2019 Ricardo Wurmus <rekado@elephly.net> ;;; Copyright © 2015, 2016, 2017, 2018, 2019 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2018 Raoul Jean Pierre Bonnal <ilpuccio.febo@gmail.com> ;;; Copyright © 2018 Raoul Jean Pierre Bonnal <ilpuccio.febo@gmail.com>
@ -85,7 +85,6 @@
#:use-module (gnu packages gnome) #:use-module (gnu packages gnome)
#:use-module (gnu packages gnu-doc) #:use-module (gnu packages gnu-doc)
#:use-module (gnu packages gnupg) #:use-module (gnu packages gnupg)
#:use-module (gnu packages gnuzilla)
#:use-module (gnu packages gperf) #:use-module (gnu packages gperf)
#:use-module (gnu packages gtk) #:use-module (gnu packages gtk)
#:use-module (gnu packages guile) #:use-module (gnu packages guile)
@ -102,6 +101,7 @@
#:use-module (gnu packages lua) #:use-module (gnu packages lua)
#:use-module (gnu packages markup) #:use-module (gnu packages markup)
#:use-module (gnu packages ncurses) #:use-module (gnu packages ncurses)
#:use-module (gnu packages nss)
#:use-module (gnu packages openstack) #:use-module (gnu packages openstack)
#:use-module (gnu packages base) #:use-module (gnu packages base)
#:use-module (gnu packages package-management) #:use-module (gnu packages package-management)
@ -125,14 +125,14 @@
(define-public httpd (define-public httpd
(package (package
(name "httpd") (name "httpd")
(version "2.4.38") (version "2.4.39")
(source (origin (source (origin
(method url-fetch) (method url-fetch)
(uri (string-append "mirror://apache/httpd/httpd-" (uri (string-append "mirror://apache/httpd/httpd-"
version ".tar.bz2")) version ".tar.bz2"))
(sha256 (sha256
(base32 (base32
"0jiriyyf3pm6axf4mrz6c2z08yhs21hb4d23viq87jclm5bmiikx")))) "18ngvsjq65qxk3biggnkhkq8jlll9dsg9n3csra9p99sfw2rvjml"))))
(build-system gnu-build-system) (build-system gnu-build-system)
(native-inputs `(("pcre" ,pcre "bin"))) ;for 'pcre-config' (native-inputs `(("pcre" ,pcre "bin"))) ;for 'pcre-config'
(inputs `(("apr" ,apr) (inputs `(("apr" ,apr)

View File

@ -44,9 +44,7 @@
#:use-module (gnu packages curl) #:use-module (gnu packages curl)
#:use-module (gnu packages gnupg) #:use-module (gnu packages gnupg)
#:use-module (gnu packages java) #:use-module (gnu packages java)
#:use-module (gnu packages gnuzilla) #:use-module (gnu packages nss)
#:use-module (gnu packages haskell)
#:use-module (gnu packages haskell-check)
#:use-module (gnu packages perl) #:use-module (gnu packages perl)
#:use-module (gnu packages perl-check) #:use-module (gnu packages perl-check)
#:use-module (gnu packages python) #:use-module (gnu packages python)
@ -61,7 +59,6 @@
#:use-module (guix build-system gnu) #:use-module (guix build-system gnu)
#:use-module (guix build-system perl) #:use-module (guix build-system perl)
#:use-module (guix build-system python) #:use-module (guix build-system python)
#:use-module (guix build-system haskell)
#:use-module (gnu packages linux) #:use-module (gnu packages linux)
#:use-module (gnu packages pkg-config)) #:use-module (gnu packages pkg-config))
@ -1990,111 +1987,6 @@ outputting XML data from Java code.")
and back again.") and back again.")
(license license:bsd-3))) (license license:bsd-3)))
(define-public ghc-hxt-charproperties
(package
(name "ghc-hxt-charproperties")
(version "9.2.0.1")
(source
(origin
(method url-fetch)
(uri (string-append "https://hackage.haskell.org/package/"
"hxt-charproperties/hxt-charproperties-"
version ".tar.gz"))
(sha256
(base32
"1mml8wglvagqq891rchgli6r8rnkwrqhgsxfl6kb5403pzb18rp4"))))
(build-system haskell-build-system)
(home-page "https://github.com/UweSchmidt/hxt")
(synopsis "Character properties and classes for XML and Unicode")
(description
"The modules provided by this package contain predicates for Unicode
blocks and char properties and character predicates defined by XML. The
supported Unicode version is 7.0.0")
(license license:expat)))
(define-public ghc-hxt-unicode
(package
(name "ghc-hxt-unicode")
(version "9.0.2.4")
(source
(origin
(method url-fetch)
(uri (string-append
"https://hackage.haskell.org/package/hxt-unicode/hxt-unicode-"
version
".tar.gz"))
(sha256
(base32
"0rj48cy8z4fl3zpg5bpa458kqr83adav6jnqv4i71dclpprj6n3v"))))
(build-system haskell-build-system)
(inputs
`(("ghc-hxt-charproperties" ,ghc-hxt-charproperties)))
(home-page
"http://www.fh-wedel.de/~si/HXmlToolbox/index.html https://github.com/UweSchmidt/hxt")
(synopsis
"Unicode en-/decoding functions for utf8, iso-latin-* and other encodings")
(description
"This package provides Unicode encoding and decoding functions for
encodings used in the Haskell XML Toolbox. ISO Latin 1-16, utf8, utf16, ASCII
are supported. Decoding is done with lazy functions, errors may be detected or
ignored.")
(license license:expat)))
(define-public ghc-hxt-regex-xmlschema
(package
(name "ghc-hxt-regex-xmlschema")
(version "9.2.0.3")
(source
(origin
(method url-fetch)
(uri (string-append "https://hackage.haskell.org/package/"
"hxt-regex-xmlschema/hxt-regex-xmlschema-"
version ".tar.gz"))
(sha256
(base32
"1c4jr0439f5yc05h7iz53fa47g6l2wrvqp6gvwf01mlqajk3nx7l"))))
(build-system haskell-build-system)
(inputs
`(("ghc-hxt-charproperties" ,ghc-hxt-charproperties)
("ghc-parsec" ,ghc-parsec)
("ghc-text" ,ghc-text)
("ghc-hunit" ,ghc-hunit)))
(home-page "http://www.haskell.org/haskellwiki/Regular_expressions_for_XML_Schema")
(synopsis "Regular expression library for W3C XML Schema regular expressions")
(description
"This library supports full W3C XML Schema regular expressions inclusive
all Unicode character sets and blocks. It is implemented by the technique of
derivations of regular expressions.")
(license license:expat)))
(define-public ghc-hxt
(package
(name "ghc-hxt")
(version "9.3.1.16")
(source
(origin
(method url-fetch)
(uri (string-append
"https://hackage.haskell.org/package/hxt/hxt-"
version
".tar.gz"))
(sha256
(base32
"1qq3ykgn355rx242xjcbqqksgvwr6k2fdj5phw4iv28qqxff6m8d"))))
(build-system haskell-build-system)
(inputs
`(("ghc-parsec" ,ghc-parsec)
("ghc-hxt-charproperties" ,ghc-hxt-charproperties)
("ghc-hxt-unicode" ,ghc-hxt-unicode)
("ghc-hxt-regex-xmlschema" ,ghc-hxt-regex-xmlschema)
("ghc-network-uri" ,ghc-network-uri)))
(home-page "https://github.com/UweSchmidt/hxt")
(synopsis "Collection of tools for processing XML with Haskell")
(description
"The Haskell XML Toolbox bases on the ideas of HaXml and HXML, but
introduces a more general approach for processing XML with Haskell.")
(license license:expat)))
(define-public xmlrpc-c (define-public xmlrpc-c
(package (package
(name "xmlrpc-c") (name "xmlrpc-c")

View File

@ -719,7 +719,8 @@ to add @var{device} to the kernel's entropy pool. The service will fail if
#$@files)))) #$@files))))
(respawn? #f))))) (respawn? #f)))))
(define (console-keymap-service . files) (define-deprecated (console-keymap-service #:rest files)
#f
"Return a service to load console keymaps from @var{files}." "Return a service to load console keymaps from @var{files}."
(service console-keymap-service-type files)) (service console-keymap-service-type files))
@ -1515,19 +1516,9 @@ GID."
(define (hydra-key-authorization keys guix) (define (hydra-key-authorization keys guix)
"Return a gexp with code to register KEYS, a list of files containing 'guix "Return a gexp with code to register KEYS, a list of files containing 'guix
archive' public keys, with GUIX." archive' public keys, with GUIX."
(define aaa
;; XXX: Terrible hack to work around <https://bugs.gnu.org/15602>: this
;; forces (guix config) and (guix utils) to be loaded upfront, so that
;; their run-time symbols are defined.
(scheme-file "aaa.scm"
#~(define-module (guix aaa)
#:use-module (guix config)
#:use-module (guix memoization))))
(define default-acl (define default-acl
(with-extensions (list guile-gcrypt) (with-extensions (list guile-gcrypt)
(with-imported-modules `(((guix config) => ,(make-config.scm)) (with-imported-modules `(((guix config) => ,(make-config.scm))
((guix aaa) => ,aaa)
,@(source-module-closure '((guix pki)) ,@(source-module-closure '((guix pki))
#:select? not-config?)) #:select? not-config?))
(computed-file "acl" (computed-file "acl"

View File

@ -26,6 +26,7 @@
#:use-module (gnu packages polkit) #:use-module (gnu packages polkit)
#:use-module (gnu packages admin) #:use-module (gnu packages admin)
#:use-module (guix gexp) #:use-module (guix gexp)
#:use-module ((guix packages) #:select (package-name))
#:use-module (guix records) #:use-module (guix records)
#:use-module (srfi srfi-1) #:use-module (srfi srfi-1)
#:use-module (ice-9 match) #:use-module (ice-9 match)
@ -33,6 +34,7 @@
dbus-configuration? dbus-configuration?
dbus-root-service-type dbus-root-service-type
dbus-service dbus-service
wrapped-dbus-service
polkit-service-type polkit-service-type
polkit-service)) polkit-service))
@ -229,6 +231,52 @@ and policy files. For example, to allow avahi-daemon to use the system bus,
(dbus-configuration (dbus dbus) (dbus-configuration (dbus dbus)
(services services)))) (services services))))
(define (wrapped-dbus-service service program variables)
"Return a wrapper for @var{service}, a package containing a D-Bus service,
where @var{program} is wrapped such that @var{variables}, a list of name/value
tuples, are all set as environment variables when the bus daemon launches it."
(define wrapper
(program-file (string-append (package-name service) "-program-wrapper")
#~(begin
(use-modules (ice-9 match))
(for-each (match-lambda
((variable value)
(setenv variable value)))
'#$variables)
(apply execl (string-append #$service "/" #$program)
(string-append #$service "/" #$program)
(cdr (command-line))))))
(define build
(with-imported-modules '((guix build utils))
#~(begin
(use-modules (guix build utils))
(define service-directory
"/share/dbus-1/system-services")
(mkdir-p (dirname (string-append #$output
service-directory)))
(copy-recursively (string-append #$service
service-directory)
(string-append #$output
service-directory))
(symlink (string-append #$service "/etc") ;for etc/dbus-1
(string-append #$output "/etc"))
(for-each (lambda (file)
(substitute* file
(("Exec[[:blank:]]*=[[:blank:]]*([[:graph:]]+)(.*)$"
_ original-program arguments)
(string-append "Exec=" #$wrapper arguments
"\n"))))
(find-files #$output "\\.service$")))))
(computed-file (string-append (package-name service) "-wrapper")
build))
;;; ;;;
;;; Polkit privilege management service. ;;; Polkit privilege management service.

View File

@ -150,46 +150,6 @@
((package . _) package)))) ((package . _) package))))
(define (wrapped-dbus-service service program variable value)
"Return a wrapper for @var{service}, a package containing a D-Bus service,
where @var{program} is wrapped such that environment variable @var{variable}
is set to @var{value} when the bus daemon launches it."
(define wrapper
(program-file (string-append (package-name service) "-program-wrapper")
#~(begin
(setenv #$variable #$value)
(apply execl (string-append #$service "/" #$program)
(string-append #$service "/" #$program)
(cdr (command-line))))))
(define build
(with-imported-modules '((guix build utils))
#~(begin
(use-modules (guix build utils))
(define service-directory
"/share/dbus-1/system-services")
(mkdir-p (dirname (string-append #$output
service-directory)))
(copy-recursively (string-append #$service
service-directory)
(string-append #$output
service-directory))
(symlink (string-append #$service "/etc") ;for etc/dbus-1
(string-append #$output "/etc"))
(for-each (lambda (file)
(substitute* file
(("Exec[[:blank:]]*=[[:blank:]]*([[:graph:]]+)(.*)$"
_ original-program arguments)
(string-append "Exec=" #$wrapper arguments
"\n"))))
(find-files #$output "\\.service$")))))
(computed-file (string-append (package-name service) "-wrapper")
build))
;;; ;;;
;;; Upower D-Bus service. ;;; Upower D-Bus service.
@ -257,8 +217,8 @@ is set to @var{value} when the bus daemon launches it."
(define (upower-dbus-service config) (define (upower-dbus-service config)
(list (wrapped-dbus-service (upower-configuration-upower config) (list (wrapped-dbus-service (upower-configuration-upower config)
"libexec/upowerd" "libexec/upowerd"
"UPOWER_CONF_FILE_NAME" `(("UPOWER_CONF_FILE_NAME"
(upower-configuration-file config)))) ,(upower-configuration-file config))))))
(define (upower-shepherd-service config) (define (upower-shepherd-service config)
"Return a shepherd service for UPower with CONFIG." "Return a shepherd service for UPower with CONFIG."
@ -389,8 +349,8 @@ users are allowed."
(define (geoclue-dbus-service config) (define (geoclue-dbus-service config)
(list (wrapped-dbus-service (geoclue-configuration-geoclue config) (list (wrapped-dbus-service (geoclue-configuration-geoclue config)
"libexec/geoclue" "libexec/geoclue"
"GEOCLUE_CONFIG_FILE" `(("GEOCLUE_CONFIG_FILE"
(geoclue-configuration-file config)))) ,(geoclue-configuration-file config))))))
(define %geoclue-accounts (define %geoclue-accounts
(list (user-group (name "geoclue") (system? #t)) (list (user-group (name "geoclue") (system? #t))
@ -742,8 +702,8 @@ include the @command{udisksctl} command, part of UDisks, and GNOME Disks."
(define (elogind-dbus-service config) (define (elogind-dbus-service config)
(list (wrapped-dbus-service (elogind-package config) (list (wrapped-dbus-service (elogind-package config)
"libexec/elogind/elogind" "libexec/elogind/elogind"
"ELOGIND_CONF_FILE" `(("ELOGIND_CONF_FILE"
(elogind-configuration-file config)))) ,(elogind-configuration-file config))))))
(define (pam-extension-procedure config) (define (pam-extension-procedure config)
"Return an extension for PAM-ROOT-SERVICE-TYPE that ensures that all the PAM "Return an extension for PAM-ROOT-SERVICE-TYPE that ensures that all the PAM

View File

@ -64,7 +64,12 @@
exim-configuration exim-configuration
exim-configuration? exim-configuration?
exim-service-type exim-service-type
%default-exim-config-file)) %default-exim-config-file
imap4d-configuration
imap4d-configuration?
imap4d-service-type
%defualt-imap4d-config-file))
;;; Commentary: ;;; Commentary:
;;; ;;;
@ -1776,3 +1781,41 @@ exim_group = exim
(service-extension activation-service-type exim-activation) (service-extension activation-service-type exim-activation)
(service-extension profile-service-type exim-profile) (service-extension profile-service-type exim-profile)
(service-extension mail-aliases-service-type (const '())))))) (service-extension mail-aliases-service-type (const '()))))))
;;;
;;; GNU Mailutils IMAP4 Daemon.
;;;
(define %default-imap4d-config-file
(plain-file "imap4d.conf" "server localhost {};\n"))
(define-record-type* <imap4d-configuration>
imap4d-configuration make-imap4d-configuration imap4d-configuration?
(package imap4d-configuration-package
(default mailutils))
(config-file imap4d-configuration-config-file
(default %default-imap4d-config-file)))
(define imap4d-shepherd-service
(match-lambda
(($ <imap4d-configuration> package config-file)
(list (shepherd-service
(provision '(imap4d))
(requirement '(networking syslogd))
(documentation "Run the imap4d daemon.")
(start (let ((imap4d (file-append package "/sbin/imap4d")))
#~(make-forkexec-constructor
(list #$imap4d "--daemon" "--foreground"
"--config-file" #$config-file))))
(stop #~(make-kill-destructor)))))))
(define imap4d-service-type
(service-type
(name 'imap4d)
(description
"Run the GNU @command{imap4d} to serve e-mail messages through IMAP.")
(extensions
(list (service-extension
shepherd-root-service-type imap4d-shepherd-service)))
(default-value (imap4d-configuration))))

View File

@ -1060,12 +1060,13 @@ networking."))))
(list (shepherd-service (list (shepherd-service
(documentation "Run the WPA supplicant daemon") (documentation "Run the WPA supplicant daemon")
(provision '(wpa-supplicant)) (provision '(wpa-supplicant))
(requirement '(user-processes dbus-system loopback)) (requirement '(user-processes dbus-system loopback syslogd))
(start #~(make-forkexec-constructor (start #~(make-forkexec-constructor
(list (string-append #$wpa-supplicant (list (string-append #$wpa-supplicant
"/sbin/wpa_supplicant") "/sbin/wpa_supplicant")
(string-append "-P" #$pid-file) (string-append "-P" #$pid-file)
"-B" ;run in background "-B" ;run in background
"-s" ;log to syslogd
#$@(if dbus? #$@(if dbus?
#~("-u") #~("-u")
#~()) #~())

View File

@ -617,7 +617,8 @@ of user-name/file-like tuples."
(list (service-extension shepherd-root-service-type (list (service-extension shepherd-root-service-type
dropbear-shepherd-service) dropbear-shepherd-service)
(service-extension activation-service-type (service-extension activation-service-type
dropbear-activation))))) dropbear-activation)))
(default-value (dropbear-configuration))))
(define* (dropbear-service #:optional (config (dropbear-configuration))) (define* (dropbear-service #:optional (config (dropbear-configuration)))
"Run the @uref{https://matt.ucc.asn.au/dropbear/dropbear.html,Dropbear SSH "Run the @uref{https://matt.ucc.asn.au/dropbear/dropbear.html,Dropbear SSH

View File

@ -27,6 +27,7 @@
#:use-module (gnu services shepherd) #:use-module (gnu services shepherd)
#:use-module (gnu system pam) #:use-module (gnu system pam)
#:use-module (gnu system keyboard) #:use-module (gnu system keyboard)
#:use-module (gnu services base)
#:use-module (gnu services dbus) #:use-module (gnu services dbus)
#:use-module ((gnu packages base) #:select (canonical-package)) #:use-module ((gnu packages base) #:select (canonical-package))
#:use-module (gnu packages guile) #:use-module (gnu packages guile)
@ -35,6 +36,7 @@
#:use-module (gnu packages gl) #:use-module (gnu packages gl)
#:use-module (gnu packages glib) #:use-module (gnu packages glib)
#:use-module (gnu packages display-managers) #:use-module (gnu packages display-managers)
#:use-module (gnu packages freedesktop)
#:use-module (gnu packages gnustep) #:use-module (gnu packages gnustep)
#:use-module (gnu packages gnome) #:use-module (gnu packages gnome)
#:use-module (gnu packages admin) #:use-module (gnu packages admin)
@ -91,9 +93,14 @@
screen-locker-service-type screen-locker-service-type
screen-locker-service screen-locker-service
localed-configuration
localed-configuration?
localed-service-type
gdm-configuration gdm-configuration
gdm-service-type gdm-service-type
gdm-service)) gdm-service
set-xorg-configuration))
;;; Commentary: ;;; Commentary:
;;; ;;;
@ -653,6 +660,88 @@ makes the good ol' XlockMore usable."
(file-append package "/bin/" program) (file-append package "/bin/" program)
allow-empty-passwords?))) allow-empty-passwords?)))
;;;
;;; Locale service.
;;;
(define-record-type* <localed-configuration>
localed-configuration make-localed-configuration
localed-configuration?
(localed localed-configuration-localed
(default localed))
(keyboard-layout localed-configuration-keyboard-layout
(default #f)))
(define (localed-dbus-service config)
"Return the 'localed' D-Bus service for @var{config}, a
@code{<localed-configuration>} record."
(define keyboard-layout
(localed-configuration-keyboard-layout config))
;; The primary purpose of 'localed' is to tell GDM what the "current" Xorg
;; keyboard layout is. If 'localed' is missing, or if it's unable to
;; determine the current XKB layout, then GDM forcefully installs its
;; default XKB config (US English). Here we communicate the configured
;; layout through environment variables.
(if keyboard-layout
(let* ((layout (keyboard-layout-name keyboard-layout))
(variant (keyboard-layout-variant keyboard-layout))
(model (keyboard-layout-model keyboard-layout))
(options (keyboard-layout-options keyboard-layout)))
(list (wrapped-dbus-service
(localed-configuration-localed config)
"libexec/localed/localed"
`(("GUIX_XKB_LAYOUT" ,layout)
,@(if variant
`(("GUIX_XKB_VARIANT" ,variant))
'())
,@(if model
`(("GUIX_XKB_MODEL" ,model))
'())
,@(if (null? options)
'()
`(("GUIX_XKB_OPTIONS"
,(string-join options ","))))))))
'()))
(define localed-service-type
(let ((package (lambda (config)
;; Don't bother if the user didn't specify any keyboard
;; layout.
(if (localed-configuration-keyboard-layout config)
(list (localed-configuration-localed config))
'()))))
(service-type (name 'localed)
(extensions
(list (service-extension dbus-root-service-type
localed-dbus-service)
(service-extension udev-service-type package)
(service-extension polkit-service-type package)
;; Add 'localectl' to the profile.
(service-extension profile-service-type package)))
;; This service can be extended, typically by the X login
;; manager, to communicate the chosen Xorg keyboard layout.
(compose (lambda (extensions)
(find keyboard-layout? extensions)))
(extend (lambda (config keyboard-layout)
(localed-configuration
(inherit config)
(keyboard-layout keyboard-layout))))
(description
"Run the locale daemon, @command{localed}, which can be used
to control the system locale and keyboard mapping from user programs such as
the GNOME desktop environment.")
(default-value (localed-configuration)))))
;;;
;;; GNOME Desktop Manager.
;;;
(define %gdm-accounts (define %gdm-accounts
(list (user-group (name "gdm") (system? #t)) (list (user-group (name "gdm") (system? #t))
(user-account (user-account
@ -787,7 +876,26 @@ makes the good ol' XlockMore usable."
gdm-configuration-gnome-shell-assets) gdm-configuration-gnome-shell-assets)
(service-extension dbus-root-service-type (service-extension dbus-root-service-type
(compose list (compose list
gdm-configuration-gdm)))) gdm-configuration-gdm))
(service-extension localed-service-type
(compose
xorg-configuration-keyboard-layout
gdm-configuration-xorg))))
;; For convenience, this service can be extended with an
;; <xorg-configuration> record. Take the first one that
;; comes.
(compose (lambda (extensions)
(match extensions
(() #f)
((config . _) config))))
(extend (lambda (config xorg-configuration)
(if xorg-configuration
(gdm-configuration
(inherit config)
(xorg-configuration xorg-configuration))
config)))
(default-value (gdm-configuration)) (default-value (gdm-configuration))
(description (description
"Run the GNOME Desktop Manager (GDM), a program that allows "Run the GNOME Desktop Manager (GDM), a program that allows
@ -821,4 +929,14 @@ password."
(gdm gdm) (gdm gdm)
(allow-empty-passwords? allow-empty-passwords?)))) (allow-empty-passwords? allow-empty-passwords?))))
(define* (set-xorg-configuration config
#:optional
(login-manager-service-type
gdm-service-type))
"Tell the log-in manager (of type @var{login-manager-service-type}) to use
@var{config}, an <xorg-configuration> record."
(simple-service 'set-xorg-configuration
login-manager-service-type
config))
;;; xorg.scm ends here ;;; xorg.scm ends here

View File

@ -0,0 +1,60 @@
;; This is an operating system configuration template
;; for a "bare bones" setup for an ASUS C201PA.
(use-modules (gnu) (gnu bootloader depthcharge))
(use-service-modules networking ssh)
(use-package-modules linux screen)
(operating-system
(host-name "komputilo")
(timezone "Europe/Berlin")
(locale "en_US.utf8")
;; Assuming /dev/mmcblk0p1 is the kernel partition, and
;; "my-root" is the label of the target root file system.
(bootloader (bootloader-configuration
(bootloader depthcharge-bootloader)
(target "/dev/mmcblk0p1")))
;; The ASUS C201PA requires a very particular kernel to boot,
;; as well as the following arguments.
(kernel linux-libre-arm-veyron)
(kernel-arguments '("console=tty1"))
;; We do not need any special modules for initrd, and the
;; PrawnOS kernel does not include many of the normal ones.
(initrd-modules '())
(file-systems (cons (file-system
(device (file-system-label "my-root"))
(mount-point "/")
(type "ext4"))
%base-file-systems))
;; This is where user accounts are specified. The "root"
;; account is implicit, and is initially created with the
;; empty password.
(users (cons (user-account
(name "alice")
(comment "Bob's sister")
(group "users")
;; Adding the account to the "wheel" group
;; makes it a sudoer. Adding it to "audio"
;; and "video" allows the user to play sound
;; and access the webcam.
(supplementary-groups '("wheel"
"audio" "video"))
(home-directory "/home/alice"))
%base-user-accounts))
;; Globally-installed packages.
(packages (cons screen %base-packages))
;; Add services to the baseline: a DHCP client and
;; an SSH server.
(services (append (list (service dhcp-client-service-type)
(service openssh-service-type
(openssh-configuration
(port-number 2222))))
%base-services)))

View File

@ -3,7 +3,7 @@
;; root partition is encrypted with LUKS. ;; root partition is encrypted with LUKS.
(use-modules (gnu) (gnu system nss)) (use-modules (gnu) (gnu system nss))
(use-service-modules desktop) (use-service-modules desktop xorg)
(use-package-modules certs gnome) (use-package-modules certs gnome)
(operating-system (operating-system
@ -11,11 +11,16 @@
(timezone "Europe/Paris") (timezone "Europe/Paris")
(locale "en_US.utf8") (locale "en_US.utf8")
;; Choose US English keyboard layout. The "altgr-intl"
;; variant provides dead keys for accented characters.
(keyboard-layout (keyboard-layout "us" "altgr-intl"))
;; Use the UEFI variant of GRUB with the EFI System ;; Use the UEFI variant of GRUB with the EFI System
;; Partition mounted on /boot/efi. ;; Partition mounted on /boot/efi.
(bootloader (bootloader-configuration (bootloader (bootloader-configuration
(bootloader grub-efi-bootloader) (bootloader grub-efi-bootloader)
(target "/boot/efi"))) (target "/boot/efi")
(keyboard-layout keyboard-layout)))
;; Specify a mapped device for the encrypted root partition. ;; Specify a mapped device for the encrypted root partition.
;; The UUID is that returned by 'cryptsetup luksUUID'. ;; The UUID is that returned by 'cryptsetup luksUUID'.
@ -58,7 +63,10 @@
;; include the X11 log-in service, networking with ;; include the X11 log-in service, networking with
;; NetworkManager, and more. ;; NetworkManager, and more.
(services (append (list (service gnome-desktop-service-type) (services (append (list (service gnome-desktop-service-type)
(service xfce-desktop-service-type)) (service xfce-desktop-service-type)
(set-xorg-configuration
(xorg-configuration
(keyboard-layout keyboard-layout))))
%desktop-services)) %desktop-services))
;; Allow resolution of '.local' host names with mDNS. ;; Allow resolution of '.local' host names with mDNS.

View File

@ -212,13 +212,11 @@ the user's target storage device rather than on the RAM disk."
(define %installation-services (define %installation-services
;; List of services of the installation system. ;; List of services of the installation system.
(let ((motd (plain-file "motd" " (let ((motd (plain-file "motd" "
\x1b[1;37mWelcome to the installation of the Guix System Distribution!\x1b[0m \x1b[1;37mWelcome to the installation of GNU Guix!\x1b[0m
\x1b[2mThere is NO WARRANTY, to the extent permitted by law. In particular, you may \x1b[2m\
LOSE ALL YOUR DATA as a side effect of the installation process. Furthermore, Using this shell, you can carry out the installation process \"manually.\"
it is 'beta' software, so it may contain bugs. Access documentation at any time by pressing Alt-F2.\x1b[0m
You have been warned. Thanks for being so brave.\x1b[0m
"))) ")))
(define (normal-tty tty) (define (normal-tty tty)
(mingetty-service (mingetty-configuration (tty tty) (mingetty-service (mingetty-configuration (tty tty)

View File

@ -634,6 +634,11 @@ names and file names suitable for the #:allowed-references argument to
local-build? (substitutable? #t) local-build? (substitutable? #t)
(properties '()) (properties '())
;; TODO: This parameter is transitional; it's here
;; to avoid a full rebuild. Remove it on the next
;; rebuild cycle.
(pre-load-modules? #t)
deprecation-warnings deprecation-warnings
(script-name (string-append name "-builder"))) (script-name (string-append name "-builder")))
"Return a derivation NAME that runs EXP (a gexp) with GUILE-FOR-BUILD (a "Return a derivation NAME that runs EXP (a gexp) with GUILE-FOR-BUILD (a
@ -738,6 +743,8 @@ The other arguments are as for 'derivation'."
#:module-path module-path #:module-path module-path
#:extensions extensions #:extensions extensions
#:guile guile-for-build #:guile guile-for-build
#:pre-load-modules?
pre-load-modules?
#:deprecation-warnings #:deprecation-warnings
deprecation-warnings) deprecation-warnings)
(return #f))) (return #f)))
@ -1213,7 +1220,11 @@ last one is created from the given <scheme-file> object."
(guile (%guile-for-build)) (guile (%guile-for-build))
(module-path %load-path) (module-path %load-path)
(extensions '()) (extensions '())
(deprecation-warnings #f)) (deprecation-warnings #f)
;; TODO: This flag is here to prevent a full
;; rebuild. Remove it on the next rebuild cycle.
(pre-load-modules? #t))
"Return a derivation that builds a tree containing the `.go' files "Return a derivation that builds a tree containing the `.go' files
corresponding to MODULES. All the MODULES are built in a context where corresponding to MODULES. All the MODULES are built in a context where
they can refer to each other." they can refer to each other."
@ -1246,7 +1257,12 @@ they can refer to each other."
(let* ((base (basename entry ".scm")) (let* ((base (basename entry ".scm"))
(output (string-append output "/" base ".go"))) (output (string-append output "/" base ".go")))
(format #t "[~2@a/~2@a] Compiling '~a'...~%" (format #t "[~2@a/~2@a] Compiling '~a'...~%"
(+ 1 processed) (ungexp total) entry) (+ 1 processed
(ungexp-splicing (if pre-load-modules?
(gexp ((ungexp total)))
(gexp ()))))
(ungexp (* total (if pre-load-modules? 2 1)))
entry)
(compile-file entry (compile-file entry
#:output-file output #:output-file output
#:opts %auto-compilation-options) #:opts %auto-compilation-options)
@ -1293,6 +1309,33 @@ they can refer to each other."
(mkdir (ungexp output)) (mkdir (ungexp output))
(chdir (ungexp modules)) (chdir (ungexp modules))
(ungexp-splicing
(if pre-load-modules?
(gexp ((define* (load-from-directory directory
#:optional (loaded 0))
"Load all the source files found in DIRECTORY."
;; XXX: This works around <https://bugs.gnu.org/15602>.
(let ((entries (map (cut string-append directory "/" <>)
(scandir directory regular?))))
(fold (lambda (file loaded)
(if (file-is-directory? file)
(load-from-directory file loaded)
(begin
(format #t "[~2@a/~2@a] Loading '~a'...~%"
(+ 1 loaded)
(ungexp (* 2 total))
file)
(save-module-excursion
(lambda ()
(primitive-load file)))
(+ 1 loaded))))
loaded
entries)))
(load-from-directory ".")))
(gexp ())))
(process-directory "." (ungexp output) 0)))) (process-directory "." (ungexp output) 0))))
;; TODO: Pass MODULES as an environment variable. ;; TODO: Pass MODULES as an environment variable.

View File

@ -65,7 +65,7 @@
imlib2 imlib2
ipa ipa
knuth knuth
lgpl2.0 lgpl2.0+ lgpl2.1 lgpl2.1+ lgpl3 lgpl3+ lgpl2.0 lgpl2.0+ lgpl2.1 lgpl2.1+ lgpl3 lgpl3+ llgpl
lppl lppl1.0+ lppl1.1+ lppl1.2 lppl1.2+ lppl lppl1.0+ lppl1.1+ lppl1.2 lppl1.2+
lppl1.3 lppl1.3+ lppl1.3 lppl1.3+
lppl1.3a lppl1.3a+ lppl1.3a lppl1.3a+
@ -417,6 +417,11 @@ at URI, which may be a file:// URI pointing the package's tree."
"https://www.gnu.org/licenses/lgpl.html" "https://www.gnu.org/licenses/lgpl.html"
"https://www.gnu.org/licenses/license-list#LGPLv3")) "https://www.gnu.org/licenses/license-list#LGPLv3"))
(define llgpl
(license "LLGPL"
"https://opensource.franz.com/preamble.html"
"Lisp Lesser General Public License"))
(define lppl (define lppl
(license "LPPL (any version)" (license "LPPL (any version)"
"https://www.latex-project.org/lppl/lppl-1-0/" "https://www.latex-project.org/lppl/lppl-1-0/"

View File

@ -642,6 +642,9 @@ specifies modules in scope when evaluating SNIPPET."
(let ((name (tarxz-name original-file-name))) (let ((name (tarxz-name original-file-name)))
(gexp->derivation name build (gexp->derivation name build
;; TODO: Remove this on the next rebuild cycle.
#:pre-load-modules? #f
#:graft? #f #:graft? #f
#:system system #:system system
#:deprecation-warnings #t ;to avoid a rebuild #:deprecation-warnings #t ;to avoid a rebuild

View File

@ -192,7 +192,7 @@ COMMAND or an interactive shell in that environment.\n"))
(print-extended-build-trace? . #t) (print-extended-build-trace? . #t)
(multiplexed-build-output? . #t) (multiplexed-build-output? . #t)
(debug . 0) (debug . 0)
(verbosity . 2))) (verbosity . 1)))
(define (tag-package-arg opts arg) (define (tag-package-arg opts arg)
"Return a two-element list with the form (TAG ARG) that tags ARG with either "Return a two-element list with the form (TAG ARG) that tags ARG with either
@ -459,17 +459,19 @@ will be used for the passwd entry. LINK-PROFILE? creates a symbolic link from
(return (return
(let* ((cwd (getcwd)) (let* ((cwd (getcwd))
(home (getenv "HOME")) (home (getenv "HOME"))
(uid (if user 1000 (getuid)))
(gid (if user 1000 (getgid)))
(passwd (let ((pwd (getpwuid (getuid)))) (passwd (let ((pwd (getpwuid (getuid))))
(password-entry (password-entry
(name (or user (passwd:name pwd))) (name (or user (passwd:name pwd)))
(real-name (if user (real-name (if user
"" ""
(passwd:gecos pwd))) (passwd:gecos pwd)))
(uid 0) (gid 0) (shell bash) (uid uid) (gid gid) (shell bash)
(directory (if user (directory (if user
(string-append "/home/" user) (string-append "/home/" user)
(passwd:dir pwd)))))) (passwd:dir pwd))))))
(groups (list (group-entry (name "users") (gid 0)) (groups (list (group-entry (name "users") (gid gid))
(group-entry (gid 65534) ;the overflow GID (group-entry (gid 65534) ;the overflow GID
(name "overflow")))) (name "overflow"))))
(home-dir (password-entry-directory passwd)) (home-dir (password-entry-directory passwd))
@ -541,6 +543,8 @@ will be used for the passwd entry. LINK-PROFILE? creates a symbolic link from
;; A container's environment is already purified, so no need to ;; A container's environment is already purified, so no need to
;; request it be purified again. ;; request it be purified again.
(launch-environment command profile manifest #:pure? #f))) (launch-environment command profile manifest #:pure? #f)))
#:guest-uid uid
#:guest-gid gid
#:namespaces (if network? #:namespaces (if network?
(delq 'net %namespaces) ; share host network (delq 'net %namespaces) ; share host network
%namespaces))))))) %namespaces)))))))

View File

@ -126,13 +126,9 @@ dependencies are registered."
(define build (define build
(with-extensions gcrypt-sqlite3&co (with-extensions gcrypt-sqlite3&co
;; XXX: Adding (gnu build install) just to work around
;; <https://bugs.gnu.org/15602>: that way, (guix build store-copy) is
;; copied last and the 'store-info-XXX' macros are correctly expanded.
(with-imported-modules (source-module-closure (with-imported-modules (source-module-closure
'((guix build store-copy) '((guix build store-copy)
(guix store database) (guix store database)))
(gnu build install)))
#~(begin #~(begin
(use-modules (guix store database) (use-modules (guix store database)
(guix build store-copy) (guix build store-copy)
@ -633,7 +629,7 @@ please email '~a'~%")
(print-extended-build-trace? . #t) (print-extended-build-trace? . #t)
(multiplexed-build-output? . #t) (multiplexed-build-output? . #t)
(debug . 0) (debug . 0)
(verbosity . 2) (verbosity . 1)
(symlinks . ()) (symlinks . ())
(compressor . ,(first %compressors)))) (compressor . ,(first %compressors))))

View File

@ -1,5 +1,5 @@
;;; GNU Guix --- Functional package management for GNU ;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2015, 2016, 2017, 2018 Ludovic Courtès <ludo@gnu.org> ;;; Copyright © 2015, 2016, 2017, 2018, 2019 Ludovic Courtès <ludo@gnu.org>
;;; ;;;
;;; This file is part of GNU Guix. ;;; This file is part of GNU Guix.
;;; ;;;
@ -34,6 +34,7 @@
#:use-module (srfi srfi-37) #:use-module (srfi srfi-37)
#:use-module (ice-9 match) #:use-module (ice-9 match)
#:use-module (ice-9 format) #:use-module (ice-9 format)
#:use-module (ice-9 vlist)
#:export (profile? #:export (profile?
profile-file profile-file
profile-self-size profile-self-size
@ -142,11 +143,20 @@ profile of ITEMS and their requisites."
(lambda (size) (lambda (size)
(return (cons item size))))) (return (cons item size)))))
refs))) refs)))
(define size-table
(fold (lambda (pair result)
(match pair
((item . size)
(vhash-cons item size result))))
vlist-null sizes))
(define (dependency-size item) (define (dependency-size item)
(mlet %store-monad ((deps (requisites* (list item)))) (mlet %store-monad ((deps (requisites* (list item))))
(foldm %store-monad (foldm %store-monad
(lambda (item total) (lambda (item total)
(return (+ (assoc-ref sizes item) total))) (return (+ (match (vhash-assoc item size-table)
((_ . size) size))
total)))
0 0
(delete-duplicates (cons item deps))))) (delete-duplicates (cons item deps)))))

View File

@ -1299,8 +1299,7 @@ argument list and OPTS is the option alist."
(command (assoc-ref opts 'action))) (command (assoc-ref opts 'action)))
(parameterize ((%graft? (assoc-ref opts 'graft?))) (parameterize ((%graft? (assoc-ref opts 'graft?)))
(with-status-verbosity (or (assoc-ref opts 'verbosity) (with-status-verbosity (or (assoc-ref opts 'verbosity)
(if (memq command '(init reconfigure)) (if (eq? command 'build) 2 1))
1 2))
(process-command command args opts)))))) (process-command command args opts))))))
;;; Local Variables: ;;; Local Variables:

View File

@ -627,6 +627,7 @@ Info manual."
(scheme-node "guix-system" (scheme-node "guix-system"
`((gnu system) `((gnu system)
(gnu services) (gnu services)
,@(scheme-modules* source "gnu/bootloader")
,@(scheme-modules* source "gnu/system") ,@(scheme-modules* source "gnu/system")
,@(scheme-modules* source "gnu/services")) ,@(scheme-modules* source "gnu/services"))
(list *core-package-modules* *package-modules* (list *core-package-modules* *package-modules*

Some files were not shown because too many files have changed in this diff Show More