mirror of
https://git.in.rschanz.org/ryan77627/guix.git
synced 2024-12-24 05:18:07 -05:00
Merge branch 'master' into core-updates
This commit is contained in:
commit
0481289cbc
100 changed files with 8227 additions and 3206 deletions
33
Makefile.am
33
Makefile.am
|
@ -851,6 +851,39 @@ cuirass-jobs.scm: $(GOBJECTS)
|
|||
.PHONY: clean-go make-go as-derivation
|
||||
.PHONY: update-guix-package update-NEWS release
|
||||
|
||||
# Downloading up-to-date PO files.
|
||||
|
||||
# make-download-po-rule DOMAIN DIRECTORY [FILE-NAME-PREFIX]
|
||||
define make-download-po-rule
|
||||
|
||||
download-po.$(1):
|
||||
if [ -f "$(top_srcdir)/$(2)/LINGUAS" ]; then \
|
||||
LINGUAS="`grep -v '^[[:blank:]]*#' < $(top_srcdir)/$(2)/LINGUAS`" ; \
|
||||
else \
|
||||
LINGUAS="`(cd $(top_srcdir)/$(2); \
|
||||
for i in *.po; do echo $$$$i; done) | cut -d . -f 2`" ; \
|
||||
fi ; \
|
||||
for lang in $$$$LINGUAS; do \
|
||||
if wget -nv -O "$(top_srcdir)/$(2)/$(3)$$$$lang.po.tmp" \
|
||||
"https://translationproject.org/latest/$(1)/$$$$lang.po" ; \
|
||||
then \
|
||||
mv "$(top_srcdir)/$(2)/$(3)$$$$lang.po"{.tmp,} ; \
|
||||
else \
|
||||
rm "$(top_srcdir)/$(2)/$(3)$$$$lang.po.tmp" ; \
|
||||
fi ; \
|
||||
done
|
||||
|
||||
.PHONY: download-po.$(1)
|
||||
|
||||
endef
|
||||
|
||||
$(eval $(call make-download-po-rule,guix,po/guix))
|
||||
$(eval $(call make-download-po-rule,guix-packages,po/packages))
|
||||
$(eval $(call make-download-po-rule,guix-manual,po/doc,guix-manual.))
|
||||
|
||||
download-po: $(foreach domain,guix guix-packages guix-manual,download-po.$(domain))
|
||||
.PHONY: download-po
|
||||
|
||||
## -------------- ##
|
||||
## Silent rules. ##
|
||||
## -------------- ##
|
||||
|
|
|
@ -49,7 +49,7 @@ Copyright @copyright{} 2017 Christopher Allan Webber@*
|
|||
Copyright @copyright{} 2017, 2018 Marius Bakke@*
|
||||
Copyright @copyright{} 2017 Hartmut Goebel@*
|
||||
Copyright @copyright{} 2017 Maxim Cournoyer@*
|
||||
Copyright @copyright{} 2017, 2018 Tobias Geerinckx-Rice@*
|
||||
Copyright @copyright{} 2017, 2018, 2019 Tobias Geerinckx-Rice@*
|
||||
Copyright @copyright{} 2017 George Clemmer@*
|
||||
Copyright @copyright{} 2017 Andy Wingo@*
|
||||
Copyright @copyright{} 2017, 2018, 2019 Arun Isaac@*
|
||||
|
@ -5854,11 +5854,10 @@ should be added to the package definition via the
|
|||
|
||||
In its @code{configure} phase, this build system will make any source inputs
|
||||
specified in the @code{#:cargo-inputs} and @code{#:cargo-development-inputs}
|
||||
parameters available to cargo. The @code{update-cargo-lock} phase will,
|
||||
when there is a @code{Cargo.lock} file, update the @code{Cargo.lock} file
|
||||
with the inputs and their versions available at build time. The
|
||||
@code{install} phase installs any crate the binaries if they are defined by
|
||||
the crate.
|
||||
parameters available to cargo. It will also remove an included
|
||||
@code{Cargo.lock} file to be recreated by @code{cargo} during the
|
||||
@code{build} phase. The @code{install} phase installs any crate the binaries
|
||||
if they are defined by the crate.
|
||||
@end defvr
|
||||
|
||||
@cindex Clojure (programming language)
|
||||
|
@ -6112,7 +6111,7 @@ interpreter version.
|
|||
By default guix calls @code{setup.py} under control of
|
||||
@code{setuptools}, much like @command{pip} does. Some packages are not
|
||||
compatible with setuptools (and pip), thus you can disable this by
|
||||
setting the @code{#:use-setuptools} parameter to @code{#f}.
|
||||
setting the @code{#:use-setuptools?} parameter to @code{#f}.
|
||||
@end defvr
|
||||
|
||||
@defvr {Scheme Variable} perl-build-system
|
||||
|
@ -8629,8 +8628,8 @@ When @code{--archive=bioconductor} is added, metadata is imported from
|
|||
packages for for the analysis and comprehension of high-throughput
|
||||
genomic data in bioinformatics.
|
||||
|
||||
Information is extracted from the @code{DESCRIPTION} file of a package
|
||||
published on the web interface of the Bioconductor SVN repository.
|
||||
Information is extracted from the @code{DESCRIPTION} file contained in the
|
||||
package archive.
|
||||
|
||||
The command below imports metadata for the @code{GenomicRanges}
|
||||
R package:
|
||||
|
@ -8639,6 +8638,14 @@ R package:
|
|||
guix import cran --archive=bioconductor GenomicRanges
|
||||
@end example
|
||||
|
||||
Finally, you can also import R packages that have not yet been published on
|
||||
CRAN or Bioconductor as long as they are in a git repository. Use
|
||||
@code{--archive=git} followed by the URL of the git repository:
|
||||
|
||||
@example
|
||||
guix import cran --archive=git https://github.com/immunogenomics/harmony
|
||||
@end example
|
||||
|
||||
@item texlive
|
||||
@cindex TeX Live
|
||||
@cindex CTAN
|
||||
|
@ -12442,6 +12449,40 @@ gexps to introduce job definitions that are passed to mcron
|
|||
%base-services)))
|
||||
@end lisp
|
||||
|
||||
For more complex jobs defined in Scheme where you need control over the top
|
||||
level, for instance to introduce a @code{use-modules} form, you can move your
|
||||
code to a separate program using the @code{program-file} procedure of the
|
||||
@code{(guix gexp)} module (@pxref{G-Expressions}). The example below
|
||||
illustrates that.
|
||||
|
||||
@lisp
|
||||
(define %battery-alert-job
|
||||
;; Beep when the battery percentage falls below %MIN-LEVEL.
|
||||
#~(job
|
||||
'(next-minute (range 0 60 1))
|
||||
#$(program-file
|
||||
"battery-alert.scm"
|
||||
(with-imported-modules (source-module-closure
|
||||
'((guix build utils)))
|
||||
#~(begin
|
||||
(define %min-level 20)
|
||||
(use-modules (guix build utils)
|
||||
(ice-9 popen)
|
||||
(ice-9 regex)
|
||||
(ice-9 textual-ports)
|
||||
(srfi srfi-2))
|
||||
(setenv "LC_ALL" "C") ;ensure English output
|
||||
(and-let* ((input-pipe (open-pipe*
|
||||
OPEN_READ
|
||||
#$(file-append acpi "/bin/acpi")))
|
||||
(output (get-string-all input-pipe))
|
||||
(m (string-match "Discharging, ([0-9]+)%" output))
|
||||
(level (string->number (match:substring m 1)))
|
||||
((< level %min-level)))
|
||||
(format #t "warning: Battery level is low (~a%)~%" level)
|
||||
(invoke #$(file-append beep "/bin/beep") "-r5")))))))
|
||||
@end lisp
|
||||
|
||||
@xref{Guile Syntax, mcron job specifications,, mcron, GNU@tie{}mcron},
|
||||
for more information on mcron job specifications. Below is the
|
||||
reference of the mcron service.
|
||||
|
@ -14723,11 +14764,14 @@ Defaults to @samp{()}.
|
|||
|
||||
@deftypevr {@code{cups-configuration} parameter} ssl-options ssl-options
|
||||
Sets encryption options. By default, CUPS only supports encryption
|
||||
using TLS v1.0 or higher using known secure cipher suites. The
|
||||
@code{AllowRC4} option enables the 128-bit RC4 cipher suites, which are
|
||||
required for some older clients that do not implement newer ones. The
|
||||
@code{AllowSSL3} option enables SSL v3.0, which is required for some
|
||||
older clients that do not support TLS v1.0.
|
||||
using TLS v1.0 or higher using known secure cipher suites. Security is
|
||||
reduced when @code{Allow} options are used, and enhanced when @code{Deny}
|
||||
options are used. The @code{AllowRC4} option enables the 128-bit RC4 cipher
|
||||
suites, which are required for some older clients. The @code{AllowSSL3} option
|
||||
enables SSL v3.0, which is required for some older clients that do not support
|
||||
TLS v1.0. The @code{DenyCBC} option disables all CBC cipher suites. The
|
||||
@code{DenyTLS1.0} option disables TLS v1.0 support - this sets the minimum
|
||||
protocol version to TLS v1.1.
|
||||
|
||||
Defaults to @samp{()}.
|
||||
@end deftypevr
|
||||
|
@ -21351,6 +21395,9 @@ Data type representing the configuration of Cuirass.
|
|||
@item @code{log-file} (default: @code{"/var/log/cuirass.log"})
|
||||
Location of the log file.
|
||||
|
||||
@item @code{web-log-file} (default: @code{"/var/log/cuirass-web.log"})
|
||||
Location of the log file used by the web interface.
|
||||
|
||||
@item @code{cache-directory} (default: @code{"/var/cache/cuirass"})
|
||||
Location of the repository cache.
|
||||
|
||||
|
|
|
@ -238,7 +238,7 @@ (define (write-entries port)
|
|||
(for-each (lambda (entry)
|
||||
(display (entry->string entry) port)
|
||||
(newline port))
|
||||
entries))
|
||||
(delete-duplicates entries)))
|
||||
|
||||
(if (port? file-or-port)
|
||||
(write-entries file-or-port)
|
||||
|
|
|
@ -128,7 +128,11 @@ (define (unpacked-mingw-dir)
|
|||
|
||||
(substitute* (string-append mingw-headers "/crt/_mingw.h")
|
||||
(("@MINGW_HAS_SECURE_API@")
|
||||
"#define MINGW_HAS_SECURE_API 1"))
|
||||
"#define MINGW_HAS_SECURE_API 1")
|
||||
(("@DEFAULT_WIN32_WINNT@")
|
||||
"0x502")
|
||||
(("@DEFAULT_MSVCRT_VERSION@")
|
||||
"0x700"))
|
||||
|
||||
(let ((cpath (string-append mingw-headers "/include"
|
||||
":" mingw-headers "/crt"
|
||||
|
|
|
@ -331,8 +331,12 @@ (define (all-packages)
|
|||
"Return the list of packages to build."
|
||||
(define (adjust package result)
|
||||
(cond ((package-replacement package)
|
||||
(cons* package ;build both
|
||||
(package-replacement package)
|
||||
;; XXX: If PACKAGE and its replacement have the same name/version,
|
||||
;; then both Cuirass jobs will have the same name, which
|
||||
;; effectively means that the second one will be ignored. Thus,
|
||||
;; return the replacement first.
|
||||
(cons* (package-replacement package) ;build both
|
||||
package
|
||||
result))
|
||||
((package-superseded package)
|
||||
result) ;don't build it
|
||||
|
|
|
@ -1,6 +1,7 @@
|
|||
;;; GNU Guix --- Functional package management for GNU
|
||||
;;; Copyright © 2018 Mathieu Othacehe <m.othacehe@gmail.com>
|
||||
;;; Copyright © 2019 Ludovic Courtès <ludo@gnu.org>
|
||||
;;; Copyright © 2019 Tobias Geerinckx-Rice <me@tobias.gr>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
|
@ -226,15 +227,6 @@ (define (installer-steps)
|
|||
(#$keymap-step current-installer)))
|
||||
(configuration-formatter keyboard-layout->configuration))
|
||||
|
||||
;; Run a partitioning tool allowing the user to modify
|
||||
;; partition tables, partitions and their mount points.
|
||||
(installer-step
|
||||
(id 'partition)
|
||||
(description (G_ "Partitioning"))
|
||||
(compute (lambda _
|
||||
((installer-partition-page current-installer))))
|
||||
(configuration-formatter user-partitions->configuration))
|
||||
|
||||
;; Ask the user to input a hostname for the system.
|
||||
(installer-step
|
||||
(id 'hostname)
|
||||
|
@ -267,6 +259,17 @@ (define (installer-steps)
|
|||
((installer-services-page current-installer))))
|
||||
(configuration-formatter system-services->configuration))
|
||||
|
||||
;; Run a partitioning tool allowing the user to modify
|
||||
;; partition tables, partitions and their mount points.
|
||||
;; Do this last so the user has something to boot if any
|
||||
;; of the previous steps didn't go as expected.
|
||||
(installer-step
|
||||
(id 'partition)
|
||||
(description (G_ "Partitioning"))
|
||||
(compute (lambda _
|
||||
((installer-partition-page current-installer))))
|
||||
(configuration-formatter user-partitions->configuration))
|
||||
|
||||
(installer-step
|
||||
(id 'final)
|
||||
(description (G_ "Configuration file"))
|
||||
|
|
|
@ -1,6 +1,7 @@
|
|||
;;; GNU Guix --- Functional package management for GNU
|
||||
;;; Copyright © 2018 Mathieu Othacehe <m.othacehe@gmail.com>
|
||||
;;; Copyright © 2019 Ludovic Courtès <ludo@gnu.org>
|
||||
;;; Copyright © 2019 Tobias Geerinckx-Rice <me@tobias.gr>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
|
@ -75,7 +76,7 @@ (define* (run-input-page text title
|
|||
#:key
|
||||
(allow-empty-input? #f)
|
||||
(default-text #f)
|
||||
(input-hide-checkbox? #f)
|
||||
(input-visibility-checkbox? #f)
|
||||
(input-field-width 40)
|
||||
(input-flags 0))
|
||||
"Run a page to prompt user for an input. The given TEXT will be displayed
|
||||
|
@ -88,8 +89,8 @@ (define* (run-input-page text title
|
|||
input-field-width
|
||||
#:flags FLAG-BORDER))
|
||||
(input-visible-cb
|
||||
(make-checkbox -1 -1 (G_ "Hide") #\x "x "))
|
||||
(input-flags* (if input-hide-checkbox?
|
||||
(make-checkbox -1 -1 (G_ "Show") #\space "x "))
|
||||
(input-flags* (if input-visibility-checkbox?
|
||||
(logior FLAG-PASSWORD FLAG-SCROLL
|
||||
input-flags)
|
||||
input-flags))
|
||||
|
@ -102,7 +103,7 @@ (define* (run-input-page text title
|
|||
(apply
|
||||
horizontal-stacked-grid
|
||||
GRID-ELEMENT-COMPONENT input-entry
|
||||
`(,@(if input-hide-checkbox?
|
||||
`(,@(if input-visibility-checkbox?
|
||||
(list GRID-ELEMENT-COMPONENT input-visible-cb)
|
||||
'())))
|
||||
GRID-ELEMENT-COMPONENT ok-button))
|
||||
|
|
|
@ -1,6 +1,7 @@
|
|||
;;; GNU Guix --- Functional package management for GNU
|
||||
;;; Copyright © 2018 Mathieu Othacehe <m.othacehe@gmail.com>
|
||||
;;; Copyright © 2019 Ludovic Courtès <ludo@gnu.org>
|
||||
;;; Copyright © 2019 Tobias Geerinckx-Rice <me@tobias.gr>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
|
@ -55,7 +56,7 @@ (define (pad-label label)
|
|||
(entry-home-directory (make-entry -1 -1 entry-width
|
||||
#:initial-value home-directory))
|
||||
(password-visible-cb
|
||||
(make-checkbox -1 -1 (G_ "Hide") #\x "x "))
|
||||
(make-checkbox -1 -1 (G_ "Show") #\space "x "))
|
||||
(entry-password (make-entry -1 -1 entry-width
|
||||
#:flags (logior FLAG-PASSWORD
|
||||
FLAG-SCROLL)))
|
||||
|
@ -156,7 +157,7 @@ (define confirmation
|
|||
(run-input-page (G_ "Please confirm the password.")
|
||||
(G_ "Password confirmation required")
|
||||
#:allow-empty-input? #t
|
||||
#:input-hide-checkbox? #t))
|
||||
#:input-visibility-checkbox? #t))
|
||||
|
||||
(if (string=? password confirmation)
|
||||
password
|
||||
|
@ -173,7 +174,7 @@ (define password
|
|||
(run-input-page (G_ "Please choose a password for the system \
|
||||
administrator (\"root\").")
|
||||
(G_ "System administrator password")
|
||||
#:input-hide-checkbox? #t))
|
||||
#:input-visibility-checkbox? #t))
|
||||
|
||||
(confirm-password password run-root-password-page))
|
||||
|
||||
|
|
|
@ -1,6 +1,7 @@
|
|||
;;; GNU Guix --- Functional package management for GNU
|
||||
;;; Copyright © 2018 Mathieu Othacehe <m.othacehe@gmail.com>
|
||||
;;; Copyright © 2019 Meiyo Peng <meiyo@riseup.net>
|
||||
;;; Copyright © 2019 Tobias Geerinckx-Rice <me@tobias.gr>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
|
@ -88,7 +89,8 @@ (define (draw-scanning-page)
|
|||
(define (run-wifi-password-page)
|
||||
"Run a page prompting user for a password and return it."
|
||||
(run-input-page (G_ "Please enter the wifi password.")
|
||||
(G_ "Password required")))
|
||||
(G_ "Password required")
|
||||
#:input-visibility-checkbox? #t))
|
||||
|
||||
(define (run-wrong-password-page service-name)
|
||||
"Run a page to inform user of a wrong password input."
|
||||
|
|
|
@ -21,6 +21,7 @@
|
|||
# Copyright © 2018 Stefan Stefanović <stefanx2ovic@gmail.com>
|
||||
# Copyright © 2018 Maxim Cournoyer <maxim.cournoyer@gmail.com>
|
||||
# Copyright © 2019 Guillaume Le Vaillant <glv@posteo.net>
|
||||
# Copyright © 2019 John Soo <jsoo1@asu.edu>
|
||||
#
|
||||
# This file is part of GNU Guix.
|
||||
#
|
||||
|
@ -99,6 +100,7 @@ GNU_SYSTEM_MODULES = \
|
|||
%D%/packages/calcurse.scm \
|
||||
%D%/packages/ccache.scm \
|
||||
%D%/packages/cdrom.scm \
|
||||
%D%/packages/cedille.scm \
|
||||
%D%/packages/certs.scm \
|
||||
%D%/packages/check.scm \
|
||||
%D%/packages/chemistry.scm \
|
||||
|
@ -128,6 +130,7 @@ GNU_SYSTEM_MODULES = \
|
|||
%D%/packages/cryptsetup.scm \
|
||||
%D%/packages/cups.scm \
|
||||
%D%/packages/curl.scm \
|
||||
%D%/packages/cvassistant.scm \
|
||||
%D%/packages/cyrus-sasl.scm \
|
||||
%D%/packages/databases.scm \
|
||||
%D%/packages/datamash.scm \
|
||||
|
@ -410,6 +413,7 @@ GNU_SYSTEM_MODULES = \
|
|||
%D%/packages/rdf.scm \
|
||||
%D%/packages/re2c.scm \
|
||||
%D%/packages/readline.scm \
|
||||
%D%/packages/rednotebook.scm \
|
||||
%D%/packages/regex.scm \
|
||||
%D%/packages/robotics.scm \
|
||||
%D%/packages/rrdtool.scm \
|
||||
|
@ -697,6 +701,7 @@ dist_patch_DATA = \
|
|||
%D%/packages/patches/avidemux-install-to-lib.patch \
|
||||
%D%/packages/patches/awesome-reproducible-png.patch \
|
||||
%D%/packages/patches/azr3.patch \
|
||||
%D%/packages/patches/bash-4.4-linux-pgrp-pipe.patch \
|
||||
%D%/packages/patches/bash-completion-directories.patch \
|
||||
%D%/packages/patches/bastet-change-source-of-unordered_set.patch \
|
||||
%D%/packages/patches/bazaar-CVE-2017-14176.patch \
|
||||
|
@ -1021,6 +1026,7 @@ dist_patch_DATA = \
|
|||
%D%/packages/patches/libexif-CVE-2016-6328.patch \
|
||||
%D%/packages/patches/libexif-CVE-2017-7544.patch \
|
||||
%D%/packages/patches/libexif-CVE-2018-20030.patch \
|
||||
%D%/packages/patches/libextractor-exiv2.patch \
|
||||
%D%/packages/patches/libgit2-avoid-python.patch \
|
||||
%D%/packages/patches/libgit2-mtime-0.patch \
|
||||
%D%/packages/patches/libgnome-encoding.patch \
|
||||
|
@ -1099,7 +1105,7 @@ dist_patch_DATA = \
|
|||
%D%/packages/patches/meson-for-build-rpath.patch \
|
||||
%D%/packages/patches/metabat-fix-compilation.patch \
|
||||
%D%/packages/patches/mhash-keygen-test-segfault.patch \
|
||||
%D%/packages/patches/mingw-w64-5.0rc2-gcc-4.9.3.patch \
|
||||
%D%/packages/patches/mingw-w64-6.0.0-gcc.patch \
|
||||
%D%/packages/patches/mpc123-initialize-ao.patch \
|
||||
%D%/packages/patches/module-init-tools-moduledir.patch \
|
||||
%D%/packages/patches/monero-use-system-miniupnpc.patch \
|
||||
|
|
|
@ -3,6 +3,8 @@
|
|||
;;; Copyright © 2018 Ricardo Wurmus <rekado@elephly.net>
|
||||
;;; Copyright © 2018 Alex Vong <alexvong1995@gmail.com>
|
||||
;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
|
||||
;;; Copyright © 2018 John Soo <jsoo1@asu.edu>
|
||||
;;; Copyright © 2019 Ludovic Courtès <ludo@gnu.org>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
|
@ -24,9 +26,11 @@ (define-module (gnu packages agda)
|
|||
#:use-module (gnu packages haskell-check)
|
||||
#:use-module (gnu packages haskell-web)
|
||||
#:use-module (guix build-system emacs)
|
||||
#:use-module (guix build-system gnu)
|
||||
#:use-module (guix build-system haskell)
|
||||
#:use-module (guix build-system trivial)
|
||||
#:use-module (guix download)
|
||||
#:use-module (guix git-download)
|
||||
#:use-module ((guix licenses) #:prefix license:)
|
||||
#:use-module (guix packages))
|
||||
|
||||
|
@ -154,3 +158,45 @@ (define-public emacs-agda2-mode
|
|||
(synopsis "Emacs mode for Agda")
|
||||
(description "This Emacs mode enables interactive development with
|
||||
Agda. It also aids the input of Unicode characters.")))
|
||||
|
||||
(define-public agda-ial
|
||||
(package
|
||||
(name "agda-ial")
|
||||
(version "1.5.0")
|
||||
(home-page "https://github.com/cedille/ial")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference (url home-page)
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"0dlis6v6nzbscf713cmwlx8h9n2gxghci8y21qak3hp18gkxdp0g"))))
|
||||
(build-system gnu-build-system)
|
||||
(inputs
|
||||
`(("agda" ,agda)))
|
||||
(arguments
|
||||
`(#:parallel-build? #f
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(delete 'configure)
|
||||
(add-before 'build 'patch-dependencies
|
||||
(lambda _ (patch-shebang "find-deps.sh") #t))
|
||||
(delete 'check)
|
||||
(replace 'install
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
(let* ((out (assoc-ref outputs "out"))
|
||||
(include (string-append out "/include/agda/ial")))
|
||||
(for-each (lambda (file)
|
||||
(make-file-writable file)
|
||||
(install-file file include))
|
||||
(find-files "." "\\.agdai?(-lib)?$"))
|
||||
#t))))))
|
||||
(synopsis "The Iowa Agda Library")
|
||||
(description
|
||||
"The goal is to provide a concrete library focused on verification
|
||||
examples, as opposed to mathematics. The library has a good number
|
||||
of theorems for booleans, natural numbers, and lists. It also has
|
||||
trees, tries, vectors, and rudimentary IO. A number of good ideas
|
||||
come from Agda's standard library.")
|
||||
(license license:expat)))
|
||||
|
|
|
@ -120,7 +120,7 @@ (define-public wcslib
|
|||
(define-public gnuastro
|
||||
(package
|
||||
(name "gnuastro")
|
||||
(version "0.9")
|
||||
(version "0.10")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
|
@ -128,7 +128,7 @@ (define-public gnuastro
|
|||
version ".tar.lz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1c1894ixz3l8p1nmzkysgl9lz8vpqbfw1dd404kh6lvrpml7jzig"))))
|
||||
"0gmhmh0yddb2aql4hd5ffrr0d4hrmh4pa3yln0n186hslqinp81b"))))
|
||||
(inputs
|
||||
`(("cfitsio" ,cfitsio)
|
||||
("gsl" ,gsl)
|
||||
|
|
|
@ -3374,21 +3374,22 @@ (define-public bluez-alsa
|
|||
(define-public snd
|
||||
(package
|
||||
(name "snd")
|
||||
(version "19.5")
|
||||
(version "19.6")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "ftp://ccrma-ftp.stanford.edu/pub/Lisp/"
|
||||
"snd-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0sk6iyykwi2mm3f1g4r0iqbsrwk3zmyagp6jjqkh8njbq42cjr1y"))))
|
||||
"0s2qv8sznvw6559bi39qj9p072azh9qcb2b86w6w8clz2azjaa76"))))
|
||||
(build-system glib-or-gtk-build-system)
|
||||
(arguments
|
||||
`(#:tests? #f ; no tests
|
||||
#:out-of-source? #f ; for the 'install-doc' phase
|
||||
#:configure-flags
|
||||
(let* ((out (assoc-ref %outputs "out"))
|
||||
(docdir (string-append out "/share/doc/snd")))
|
||||
(docdir (string-append out "/share/doc/"
|
||||
,name "-" ,version)))
|
||||
(list "--with-alsa" "--with-jack" "--with-gmp"
|
||||
(string-append "--with-doc-dir=" docdir)))
|
||||
#:phases
|
||||
|
@ -3401,7 +3402,7 @@ (define-public snd
|
|||
(for-each
|
||||
(lambda (f)
|
||||
(install-file f doc))
|
||||
(find-files "." "\\.html$|COPYING"))
|
||||
(find-files "." "\\.html$"))
|
||||
(copy-recursively "pix" (string-append doc "/pix"))
|
||||
#t))))))
|
||||
(native-inputs
|
||||
|
|
|
@ -131,7 +131,7 @@ (define-public transmission
|
|||
(define-public libtorrent
|
||||
(package
|
||||
(name "libtorrent")
|
||||
(version "0.13.6")
|
||||
(version "0.13.8")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
|
@ -139,7 +139,7 @@ (define-public libtorrent
|
|||
version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"012s1nwcvz5m5r4d2z9klgy2n34kpgn9kgwgzxm97zgdjs6a0f18"))))
|
||||
"10z9i1rc41cmmi7nx8k7k1agsx6afv09g9cl7g9zr35fyhl5l4gd"))))
|
||||
(build-system gnu-build-system)
|
||||
(inputs `(("openssl" ,openssl)
|
||||
("zlib" ,zlib)))
|
||||
|
@ -156,7 +156,7 @@ (define-public libtorrent
|
|||
(define-public rtorrent
|
||||
(package
|
||||
(name "rtorrent")
|
||||
(version "0.9.6")
|
||||
(version "0.9.8")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
|
@ -164,7 +164,7 @@ (define-public rtorrent
|
|||
version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"03jvzw9pi2mhcm913h8qg0qw9gwjqc6lhwynb1yz1y163x7w4s8y"))))
|
||||
"1bs2fnf4q7mlhkhzp3i1v052v9xn8qa7g845pk9ia8hlpw207pwy"))))
|
||||
(build-system gnu-build-system)
|
||||
(inputs `(("libtorrent" ,libtorrent)
|
||||
("ncurses" ,ncurses)
|
||||
|
|
124
gnu/packages/cedille.scm
Normal file
124
gnu/packages/cedille.scm
Normal file
|
@ -0,0 +1,124 @@
|
|||
;;; GNU Guix --- Functional package management for GNU
|
||||
;;; Copyright © 2019 John Soo <jsoo1@asu.edu>
|
||||
;;;
|
||||
;;; 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 cedille)
|
||||
#:use-module (gnu packages)
|
||||
#:use-module (gnu packages agda)
|
||||
#:use-module (gnu packages emacs-xyz)
|
||||
#:use-module (gnu packages haskell)
|
||||
#:use-module (guix build-system emacs)
|
||||
#:use-module (guix git-download)
|
||||
#:use-module ((guix licenses) #:prefix license:)
|
||||
#:use-module (guix packages))
|
||||
|
||||
(define-public cedille
|
||||
(package
|
||||
(name "cedille")
|
||||
(version "1.1.1")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/cedille/cedille")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"07kv9wncyipfjf5w4ax8h2p35g70zb1qw6zc4afd7c225xia55wp"))))
|
||||
(inputs
|
||||
`(("agda" ,agda)
|
||||
("agda-ial" ,agda-ial)
|
||||
("ghc" ,ghc-8.4)
|
||||
("ghc-alex" ,ghc-alex)
|
||||
("ghc-happy" ,ghc-happy)))
|
||||
(build-system emacs-build-system)
|
||||
(arguments
|
||||
`(#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-after 'unpack 'patch-cedille-path-el
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
(let ((out (assoc-ref outputs "out")))
|
||||
(substitute* "cedille-mode.el"
|
||||
(("/usr/share/emacs/site-lisp/cedille-mode")
|
||||
(string-append
|
||||
out "/share/emacs/site-lisp/guix.d/cedille-"
|
||||
,version)))
|
||||
#t)))
|
||||
(add-after 'unpack 'copy-cedille-mode
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
(let* ((out (assoc-ref outputs "out"))
|
||||
(lisp
|
||||
(string-append
|
||||
out "/share/emacs/site-lisp/guix.d/cedille-"
|
||||
,version "/")))
|
||||
(mkdir-p (string-append lisp "cedille-mode"))
|
||||
(copy-recursively
|
||||
"cedille-mode"
|
||||
(string-append lisp "cedille-mode"))
|
||||
(mkdir-p (string-append lisp "se-mode"))
|
||||
(copy-recursively
|
||||
"se-mode"
|
||||
(string-append lisp "se-mode"))
|
||||
#t)))
|
||||
;; FIXME: Byte compilation fails
|
||||
(delete 'build)
|
||||
(replace 'check
|
||||
(lambda _
|
||||
(with-directory-excursion "cedille-tests"
|
||||
(invoke "sh" "run-tests.sh"))))
|
||||
(add-after 'unpack 'patch-libraries
|
||||
(lambda _ (patch-shebang "create-libraries.sh") #t))
|
||||
(add-after 'unpack 'copy-ial
|
||||
(lambda* (#:key inputs #:allow-other-keys)
|
||||
(copy-recursively
|
||||
(string-append (assoc-ref inputs "agda-ial")
|
||||
"/include/agda/ial")
|
||||
"ial")
|
||||
;; Ambiguous module if main is included from ial
|
||||
(delete-file "ial/main.agda")
|
||||
#t))
|
||||
(add-after 'check 'build-cedille
|
||||
;; Agda has a hard time with parallel compilation
|
||||
(lambda _
|
||||
(invoke "touch" "src/Templates.hs")
|
||||
(make-file-writable "src/Templates.hs")
|
||||
(invoke "touch" "src/templates.agda")
|
||||
(make-file-writable "src/templates.agda")
|
||||
(invoke "make" "--jobs=1")))
|
||||
(add-after 'install 'install-cedille
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
(let ((out (assoc-ref outputs "out")))
|
||||
(copy-recursively
|
||||
"lib" (string-append out "/lib/cedille"))
|
||||
(install-file "cedille" (string-append out "/bin"))
|
||||
(install-file "core/cedille-core"
|
||||
(string-append out "/bin"))
|
||||
#t))))))
|
||||
(home-page "https://cedille.github.io/")
|
||||
(synopsis
|
||||
"Language based on Calculus of Dependent Lambda Eliminations")
|
||||
(description
|
||||
"Cedille is an interactive theorem-prover and dependently typed
|
||||
programming language, based on extrinsic (aka Curry-style) type theory. This
|
||||
makes it rather different from type theories like Coq and Agda, which are
|
||||
intrinsic (aka Church-style). In Cedille, terms are nothing more than
|
||||
annotated versions of terms of pure untyped lambda calculus. In contrast, in
|
||||
Coq or Agda, the typing annotations are intrinsic parts of terms. The typing
|
||||
annotations can only be erased as an optimization under certain conditions,
|
||||
not by virtue of the definition of the type theory.")
|
||||
(license license:expat)))
|
|
@ -238,7 +238,7 @@ (define* (computed-origin-method gexp-promise hash-algo hash
|
|||
#:system system
|
||||
#:guile-for-build guile)))
|
||||
|
||||
(define %chromium-version "76.0.3809.100")
|
||||
(define %chromium-version "76.0.3809.132")
|
||||
(define %ungoogled-revision "8eba5c0df1a318012e3deab39a9add252a0d56a3")
|
||||
(define %debian-revision "debian/76.0.3809.87-2")
|
||||
(define package-revision "0")
|
||||
|
@ -254,7 +254,7 @@ (define %chromium-origin
|
|||
%chromium-version ".tar.xz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0vfjfxsqf8jrmd7y08ln1lpbilwi150875zn2bawwdq87vd3mncc"))))
|
||||
"0hajwjf7swlgh1flpf8ljfrb2zhmcpzvrigvvxqd36g3nm04cknm"))))
|
||||
|
||||
(define %ungoogled-origin
|
||||
(origin
|
||||
|
|
|
@ -47,8 +47,8 @@ (define-module (gnu packages ci)
|
|||
#:use-module (guix build-system gnu))
|
||||
|
||||
(define-public cuirass
|
||||
(let ((commit "858b6b8c8f2ae7b1ddaf4ae363147121be1f1fe8")
|
||||
(revision "22"))
|
||||
(let ((commit "1cd2f9334dde13542732c22753c4ebde61bc95e0")
|
||||
(revision "23"))
|
||||
(package
|
||||
(name "cuirass")
|
||||
(version (string-append "0.0.1-" revision "." (string-take commit 7)))
|
||||
|
@ -60,7 +60,7 @@ (define-public cuirass
|
|||
(file-name (string-append name "-" version))
|
||||
(sha256
|
||||
(base32
|
||||
"049hg0yaakmfp27950cn0yn43r0v7bqva75xi082n8cxzi6vadgc"))))
|
||||
"0r3x8gv0v89brjqi8r31p6c0mblbaf2kdk2fz99jiab4pir16w87"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
'(#:modules ((guix build utils)
|
||||
|
|
|
@ -15097,3 +15097,42 @@ (define-public r-liger
|
|||
integrative non-negative matrix factorization to identify shared and
|
||||
dataset-specific factors.")
|
||||
(license license:gpl3)))
|
||||
|
||||
(define-public r-harmony
|
||||
;; There are no tagged commits
|
||||
(let ((commit "4d1653870d4dd70fff1807c182882db1fbf9af5a")
|
||||
(revision "1"))
|
||||
(package
|
||||
(name "r-harmony")
|
||||
(version (git-version "1.0" revision commit))
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/immunogenomics/harmony")
|
||||
(commit commit)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"1gasdldr4aalr9h2q9kmm3y4i7azkgnhdn4bmvsszs7lg9xacw85"))))
|
||||
(build-system r-build-system)
|
||||
(propagated-inputs
|
||||
`(("r-cowplot" ,r-cowplot)
|
||||
("r-dplyr" ,r-dplyr)
|
||||
("r-ggplot2" ,r-ggplot2)
|
||||
("r-irlba" ,r-irlba)
|
||||
("r-matrix" ,r-matrix)
|
||||
("r-rcpp" ,r-rcpp)
|
||||
("r-rcpparmadillo" ,r-rcpparmadillo)
|
||||
("r-rcppprogress" ,r-rcppprogress)
|
||||
("r-rlang" ,r-rlang)
|
||||
("r-tibble" ,r-tibble)
|
||||
("r-tidyr" ,r-tidyr)))
|
||||
(home-page "https://github.com/immunogenomics/harmony")
|
||||
(synopsis "Integration of single cell sequencing data")
|
||||
(description
|
||||
"This package provides an implementation of the Harmony algorithm for
|
||||
single cell integration, described in Korsunsky et al
|
||||
@url{doi.org/10.1101/461954}. The package includes a standalone Harmony
|
||||
function and interfaces to external frameworks.")
|
||||
(license license:gpl3))))
|
||||
|
|
File diff suppressed because it is too large
Load diff
|
@ -594,7 +594,7 @@ (define-public foomatic-filters
|
|||
(method url-fetch)
|
||||
(uri (string-append
|
||||
"http://www.openprinting.org/download/foomatic/"
|
||||
name "-" version ".tar.gz"))
|
||||
"foomatic-filters-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1qrkgbm5jay2r7sh9qbyf0aiyrsl1mdc844hxf7fhw95a0zfbqm2"))
|
||||
|
@ -639,14 +639,14 @@ (define-public foomatic-filters
|
|||
(define-public foo2zjs
|
||||
(package
|
||||
(name "foo2zjs")
|
||||
(version "20190413")
|
||||
(version "20190517")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
;; XXX: This is an unversioned URL!
|
||||
(uri "http://foo2zjs.rkkda.com/foo2zjs.tar.gz")
|
||||
(sha256
|
||||
(base32
|
||||
"0djzp3ddslmzyxkjhzkhkg6qqqm02whjfnfvh5glprkshcskzlg9"))))
|
||||
"13gzsd26nq4brx1xzpwmg1qnr4nk7ykgi94qr1hbjqfi561prki4"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
'(#:phases (modify-phases %standard-phases
|
||||
|
|
90
gnu/packages/cvassistant.scm
Normal file
90
gnu/packages/cvassistant.scm
Normal file
|
@ -0,0 +1,90 @@
|
|||
;;; GNU Guix --- Functional package management for GNU
|
||||
;;; Copyright © 2019 Nicolas Goaziou <mail@nicolasgoaziou.fr>
|
||||
;;; Copyright © 2019 Jesse Gibbons <jgibbons2357+guix@gmail.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 packages cvassistant)
|
||||
#:use-module (guix packages)
|
||||
#:use-module (guix download)
|
||||
#:use-module (guix build-system gnu)
|
||||
#:use-module ((guix licenses) #:prefix license:)
|
||||
#:use-module (gnu packages qt)
|
||||
#:use-module (gnu packages compression))
|
||||
|
||||
(define-public cvassistant
|
||||
(package
|
||||
(name "cvassistant")
|
||||
(version "3.1.0")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "mirror://sourceforge/cvassistant/"
|
||||
"cvassistant-" version "-src.tar.bz2"))
|
||||
(sha256
|
||||
(base32
|
||||
"1y2680bazyiwm50gdhdd4982ckbjscrkbw2mngyk7yw708iadvr7"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
`(#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-after 'unpack 'remove-donation-banner
|
||||
;; Remove dialog box with a donation link, as suggested by
|
||||
;; the INSTALL file.
|
||||
(lambda _
|
||||
(substitute* "controllers/mainwindow.cpp"
|
||||
(("//(#define NO_DONATION_PROMPT)" _ line) line))
|
||||
#t))
|
||||
(add-after 'unpack 'fix-quazip-directory
|
||||
(lambda _
|
||||
(substitute* "models/resumedocument.h"
|
||||
(("quazip(/quazipfile\\.h)" _ suffix)
|
||||
(string-append "quazip5" suffix)))
|
||||
#t))
|
||||
(add-after 'fix-quazip-directory 'fix-quazip-link
|
||||
(lambda _
|
||||
(substitute* "CVAssistant.pro"
|
||||
(("lquazip-qt5")
|
||||
"lquazip5"))
|
||||
#t))
|
||||
(add-after 'fix-quazip-directory 'fix-install-root
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
(let ((out (assoc-ref outputs "out")))
|
||||
(substitute* "CVAssistant.pro"
|
||||
(("/usr/(bin|share/)" _ suffix)
|
||||
(string-append out "/" suffix)))
|
||||
#t)))
|
||||
(replace 'configure
|
||||
(lambda _ (invoke "qmake"))))))
|
||||
(inputs
|
||||
`(("qtbase" ,qtbase)
|
||||
("quazip" ,quazip)
|
||||
("zlib" ,zlib)))
|
||||
(home-page "https://cvassistant.sourceforge.io/")
|
||||
(synopsis "Job application organizer")
|
||||
(description "Whether you're looking for a job or trying to help
|
||||
a friend to find one, CVAssistant is a tool for you. It helps you by
|
||||
preparing resumes and cover letters and organizing your job
|
||||
application process. It:
|
||||
@itemize
|
||||
@item Stores all your skills and experiences.
|
||||
@item Creates resumes tailored for each job you apply.
|
||||
@item Creates cover letters summarized to match each job
|
||||
advertisement.
|
||||
@item Keeps a history of job applications so you are ready when you
|
||||
receive a phone call.
|
||||
@item Writes resumes in your language. All languages are supported!
|
||||
@end itemize")
|
||||
(license license:gpl3+)))
|
|
@ -2101,20 +2101,19 @@ (define-public python2-pyodbc-c
|
|||
(define-public python-pyodbc
|
||||
(package
|
||||
(name "python-pyodbc")
|
||||
(version "4.0.26")
|
||||
(version "4.0.27")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "pyodbc" version))
|
||||
(sha256
|
||||
(base32 "1qrxnf7ji5hml7z4y669k4wmk3iz2pcsr05bnn1n912asash09z5"))
|
||||
(base32 "1kd2i7hc1330cli72vawzby17c3039cqn1aba4i0zrjnpghjhmib"))
|
||||
(file-name (string-append name "-" version ".tar.gz"))))
|
||||
(build-system python-build-system)
|
||||
(inputs
|
||||
`(("unixodbc" ,unixodbc)))
|
||||
(arguments
|
||||
`(;; No unit tests exist.
|
||||
#:tests? #f))
|
||||
`(#:tests? #f)) ; no unit tests exist
|
||||
(home-page "https://github.com/mkleehammer/pyodbc")
|
||||
(synopsis "Python ODBC Library")
|
||||
(description "@code{python-pyodbc} provides a Python DB-API driver
|
||||
|
@ -2431,14 +2430,14 @@ (define-public python2-sqlalchemy-utils
|
|||
(define-public python-alembic
|
||||
(package
|
||||
(name "python-alembic")
|
||||
(version "1.0.10")
|
||||
(version "1.0.11")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "alembic" version))
|
||||
(sha256
|
||||
(base32
|
||||
"1dwl0264r6ri2jyrjr68am04x538ab26xwy4crqjnnhm4alwm3c2"))))
|
||||
"1k5hag0vahd5vrf9abx8fdj2whrwaw2iq2yp736mmxnbsn5xkdyd"))))
|
||||
(build-system python-build-system)
|
||||
(native-inputs
|
||||
`(("python-mock" ,python-mock)
|
||||
|
@ -2449,8 +2448,7 @@ (define-public python-alembic
|
|||
("python-mako" ,python-mako)
|
||||
("python-editor" ,python-editor)))
|
||||
(home-page "https://bitbucket.org/zzzeek/alembic")
|
||||
(synopsis
|
||||
"Database migration tool for SQLAlchemy")
|
||||
(synopsis "Database migration tool for SQLAlchemy")
|
||||
(description
|
||||
"Alembic is a lightweight database migration tool for usage with the
|
||||
SQLAlchemy Database Toolkit for Python.")
|
||||
|
|
|
@ -760,7 +760,7 @@ (define-public libblockdev
|
|||
(define-public rmlint
|
||||
(package
|
||||
(name "rmlint")
|
||||
(version "2.8.0")
|
||||
(version "2.9.0")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
|
@ -769,7 +769,7 @@ (define-public rmlint
|
|||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"1gc7gbnh0qg1kl151cv1ld87vhpm1v3pnkn7prhscdcc21jrg8nz"))))
|
||||
"1b5cziam14h80xrfb285fmfrzz2rligxcpsq1xsig14xf4l2875i"))))
|
||||
(build-system scons-build-system)
|
||||
(arguments
|
||||
`(#:scons ,scons-python2
|
||||
|
|
|
@ -481,3 +481,43 @@ (define-public childsplay
|
|||
letters of the alphabet, spelling, eye-hand coordination, etc.")
|
||||
(home-page "http://www.schoolsplay.org")
|
||||
(license license:gpl3+)))
|
||||
|
||||
(define-public fet
|
||||
(package
|
||||
(name "fet")
|
||||
(version "5.39.0")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://www.lalescu.ro/liviu/fet/download/"
|
||||
"fet-" version ".tar.bz2"))
|
||||
(sha256
|
||||
(base32
|
||||
"100bmggkychqs2cavqxy7015lr4icw6k99qb03im0v4jasqqmyix"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
`(#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-after 'unpack 'fix-hardcoded-directories
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
(substitute* (list "fet.pro"
|
||||
"src/src.pro"
|
||||
"src/src-cl.pro"
|
||||
"src/interface/fet.cpp")
|
||||
(("/usr") (assoc-ref outputs "out")))
|
||||
#t))
|
||||
(replace 'configure
|
||||
(lambda _ (invoke "qmake" "fet.pro"))))))
|
||||
(inputs
|
||||
`(("qtbase" ,qtbase)))
|
||||
(home-page "https://www.lalescu.ro/liviu/fet/")
|
||||
(synopsis "Timetabling software")
|
||||
(description "FET is a program for automatically scheduling the
|
||||
timetable of a school, high-school or university. It uses a fast and
|
||||
efficient timetabling algorithm.
|
||||
|
||||
Usually, FET is able to solve a complicated timetable in maximum 5-20
|
||||
minutes. For simpler timetables, it may take a shorter time, under
|
||||
5 minutes (in some cases, a matter of seconds). For extremely
|
||||
difficult timetables, it may take a longer time, a matter of hours.")
|
||||
(license license:agpl3+)))
|
||||
|
||||
|
|
|
@ -905,6 +905,35 @@ (define-public emacs-xr
|
|||
@code{skip-chars-backward}.")
|
||||
(license license:gpl3+)))
|
||||
|
||||
(define-public emacs-ample-regexps
|
||||
(let ((commit "cbe91e148cac1ee8e223874dc956ed4cf607f046")
|
||||
(revision "1"))
|
||||
(package
|
||||
(name "emacs-ample-regexps")
|
||||
(version (git-version "0.1" revision commit))
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/immerrr/ample-regexps.el")
|
||||
(commit commit)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"1mm4icrwx4mscp7kbbmlc34995r164dhrfczn5ybkyxjzzf76jn1"))))
|
||||
(build-system emacs-build-system)
|
||||
(native-inputs
|
||||
`(("ert-runner" ,emacs-ert-runner)))
|
||||
(arguments
|
||||
`(#:tests? #t
|
||||
#:test-command '("ert-runner" "-l" "ample-regexps")))
|
||||
(home-page "https://github.com/immerrr/ample-regexps.el")
|
||||
(synopsis "Compose and reuse Emacs regexps")
|
||||
(description
|
||||
"This package allows common parts of regexps to be easily picked out
|
||||
and reused.")
|
||||
(license license:gpl3+))))
|
||||
|
||||
(define-public emacs-reformatter
|
||||
(package
|
||||
(name "emacs-reformatter")
|
||||
|
@ -3048,30 +3077,27 @@ (define-public emacs-flycheck-flow
|
|||
(license license:gpl3+))))
|
||||
|
||||
(define-public emacs-elisp-demos
|
||||
(let ((commit "4c1fbc392668662890b685ab297e950259227e06")
|
||||
(version "0.1")
|
||||
(revision "1"))
|
||||
(package
|
||||
(name "emacs-elisp-demos")
|
||||
(version (git-version version revision commit))
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/xuchunyang/elisp-demos")
|
||||
(commit commit)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"01cbkmjgmzxdf02w9xgbf4bhnx1mh53vvpkri13yxfksym5zizp4"))))
|
||||
(build-system emacs-build-system)
|
||||
(arguments '(#:include '("\\.el$" "\\.org$")))
|
||||
(home-page "https://github.com/xuchunyang/elisp-demos/")
|
||||
(synopsis "Enhance @code{*Help*} buffers with additional examples")
|
||||
(description
|
||||
"This package injects example uses of Elisp functions into their
|
||||
(package
|
||||
(name "emacs-elisp-demos")
|
||||
(version "2019.08.16")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/xuchunyang/elisp-demos")
|
||||
(commit version)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"0lybadq66bl4snkwph9i1y0qxln29wyfjn222ii3nfwany28cj66"))))
|
||||
(build-system emacs-build-system)
|
||||
(arguments '(#:include '("\\.el$" "\\.org$")))
|
||||
(home-page "https://github.com/xuchunyang/elisp-demos/")
|
||||
(synopsis "Enhance @code{*Help*} buffers with additional examples")
|
||||
(description
|
||||
"This package injects example uses of Elisp functions into their
|
||||
respective @code{*Help*} buffers.")
|
||||
(license license:gpl3+))))
|
||||
(license license:gpl3+)))
|
||||
|
||||
(define-public emacs-docker-compose-mode
|
||||
(package
|
||||
|
@ -3876,7 +3902,7 @@ (define-public emacs-tagedit
|
|||
(define-public emacs-slime
|
||||
(package
|
||||
(name "emacs-slime")
|
||||
(version "2.23")
|
||||
(version "2.24")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
|
@ -3885,7 +3911,7 @@ (define-public emacs-slime
|
|||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "0i637n0ragpbj39hqx65nx5k99xf0464c4w6w1qpzykm6z42grky"))))
|
||||
(base32 "0js24x42m7b5iymb4rxz501dff19vav5pywnzv50b673rbkaaqvh"))))
|
||||
(build-system emacs-build-system)
|
||||
(native-inputs
|
||||
`(("texinfo" ,texinfo)))
|
||||
|
@ -6246,20 +6272,20 @@ (define-public emacs-helm
|
|||
(define-public emacs-helm-swoop
|
||||
(package
|
||||
(name "emacs-helm-swoop")
|
||||
(version "1.7.4")
|
||||
(version "2.0.0")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/ShingoFukuyama/helm-swoop.git")
|
||||
(url "https://github.com/emacsorphanage/helm-swoop.git")
|
||||
(commit version)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "0b23j1bkpg4pm310hqdhgnl4mxsj05gpl08b6kb2ja4fzrg6adsk"))))
|
||||
(base32 "0k0ns92g45x8dbymqpl6ylk5mj3wiw2h03f48q5cy1z8in0c4rjd"))))
|
||||
(build-system emacs-build-system)
|
||||
(propagated-inputs
|
||||
`(("emacs-helm" ,emacs-helm)))
|
||||
(home-page "https://github.com/ShingoFukuyama/helm-swoop")
|
||||
(home-page "https://github.com/emacsorphanage/helm-swoop")
|
||||
(synopsis "Filter and jump to lines in an Emacs buffer using Helm")
|
||||
(description
|
||||
"This package builds on the Helm interface to provide several commands
|
||||
|
@ -6555,8 +6581,8 @@ (define-public emacs-janpath-evil-numbers
|
|||
(license license:gpl3+))))
|
||||
|
||||
(define-public emacs-evil-owl
|
||||
(let ((commit "36a5fe057f44d48e377e3ef4f04b4eb30e1af309")
|
||||
(revision "1"))
|
||||
(let ((commit "e8fe5b2f745e36db04cb71eb689bf91c5409614f")
|
||||
(revision "2"))
|
||||
(package
|
||||
(name "emacs-evil-owl")
|
||||
(version (git-version "0.0.1" revision commit))
|
||||
|
@ -6569,11 +6595,10 @@ (define-public emacs-evil-owl
|
|||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"07a6n0gqss1qx9a50dqzqqq0gj6n7a4ykbcv1a0c9qd4fnfnm90m"))))
|
||||
"1g7kplna62f271135mnjdbvxk2ayx7m4gvd6l86d2394alx16nhq"))))
|
||||
(build-system emacs-build-system)
|
||||
(propagated-inputs
|
||||
`(("emacs-evil" ,emacs-evil)
|
||||
("emacs-posframe" ,emacs-posframe)))
|
||||
`(("emacs-evil" ,emacs-evil)))
|
||||
(home-page "https://github.com/mamapanda/evil-owl")
|
||||
(synopsis "Preview candidates when using Evil registers and marks")
|
||||
(description
|
||||
|
@ -13617,6 +13642,32 @@ (define-public emacs-evil-multiedit
|
|||
defaults.")
|
||||
(license license:gpl3+)))
|
||||
|
||||
(define-public emacs-evil-mc
|
||||
(let ((commit "5205fe671803465149e578849bbbe803c23a8e4e")
|
||||
(revision "1"))
|
||||
(package
|
||||
(name "emacs-evil-mc")
|
||||
(version (git-version "0.0.3" revision commit))
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/gabesoft/evil-mc.git")
|
||||
(commit commit)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "03pxpjjxbai4dwp84bgxh52ahh0f6ac58xi2mds1kl4v93nm7v42"))))
|
||||
(build-system emacs-build-system)
|
||||
(propagated-inputs
|
||||
`(("emacs-evil" ,emacs-evil)))
|
||||
(native-inputs
|
||||
`(("emacs-espuds" ,emacs-espuds)))
|
||||
(home-page "https://github.com/gabesoft/evil-mc")
|
||||
(synopsis "Interactive search compatible with @code{multiple-cursors}")
|
||||
(description "This package can be used with @code{multiple-cursors} to
|
||||
provide an incremental search that moves all fake cursors in sync.")
|
||||
(license license:expat))))
|
||||
|
||||
(define-public emacs-evil-org
|
||||
(let ((commit "b6d652a9163d3430a9e0933a554bdbee5244bbf6"))
|
||||
(package
|
||||
|
@ -16129,12 +16180,11 @@ (define-public emacs-matcha
|
|||
(license license:gpl3+))))
|
||||
|
||||
(define-public emacs-undo-propose-el
|
||||
(let ((commit "5f1fa99a04369a959aad01b476fe4f34229f28cd")
|
||||
(version "1.0.0")
|
||||
(let ((commit "21a5cdc8ebfe8113f7039867c4abb0197c0fe71c")
|
||||
(revision "1"))
|
||||
(package
|
||||
(name "emacs-undo-propose-el")
|
||||
(version (git-version version revision commit))
|
||||
(version (git-version "3.0.0" revision commit))
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
|
@ -16144,7 +16194,7 @@ (define-public emacs-undo-propose-el
|
|||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"1p9h1fqmva07mcs46rqrg9vqn537b615as84s9b7xh76k1r8h1c0"))))
|
||||
"035hav4lfxwgikg3zpb4cz1nf08qfp27awl87dqbm2ly6d74lpny"))))
|
||||
(build-system emacs-build-system)
|
||||
(home-page "https://github.com/jackkamm/undo-propose-el")
|
||||
(synopsis "Simple and safe navigation of @code{undo} history")
|
||||
|
@ -17364,7 +17414,8 @@ (define-public emacs-zerodark-theme
|
|||
"0nnlxzsmhsbszqigcyxak9i1a0digrd13gv6v18ck4h760mihh1m"))))
|
||||
(build-system emacs-build-system)
|
||||
(propagated-inputs
|
||||
`(("emacs-all-the-icons" ,emacs-all-the-icons)))
|
||||
`(("emacs-flycheck" ,emacs-flycheck)
|
||||
("emacs-all-the-icons" ,emacs-all-the-icons)))
|
||||
(home-page
|
||||
"https://gitlab.petton.fr/nico/zerodark-theme")
|
||||
(synopsis
|
||||
|
|
|
@ -479,16 +479,17 @@ (define-public mupen64plus-core
|
|||
(delete 'configure)
|
||||
;; Makefile is in a subdirectory.
|
||||
(add-before
|
||||
'build 'cd-to-project-dir
|
||||
'build 'chdir-to-project-directory
|
||||
(lambda _
|
||||
(chdir "projects/unix"))))
|
||||
(chdir "projects/unix")
|
||||
#t)))
|
||||
#:make-flags (let ((out (assoc-ref %outputs "out")))
|
||||
(list "all" (string-append "PREFIX=" out)))
|
||||
;; There are no tests.
|
||||
#:tests? #f))
|
||||
;; As per the Makefile (in projects/unix/Makefile):
|
||||
(supported-systems '("i686-linux" "x86_64-linux"))
|
||||
(home-page "http://www.mupen64plus.org/")
|
||||
(home-page "https://www.mupen64plus.org/")
|
||||
(synopsis "Nintendo 64 emulator core library")
|
||||
(description
|
||||
"Mupen64Plus is a cross-platform plugin-based Nintendo 64 (N64) emulator
|
||||
|
@ -534,7 +535,7 @@ (define-public mupen64plus-audio-sdl
|
|||
(string-append "APIDIR=" m64p "/include/mupen64plus")))
|
||||
;; There are no tests.
|
||||
#:tests? #f))
|
||||
(home-page "http://www.mupen64plus.org/")
|
||||
(home-page "https://www.mupen64plus.org/")
|
||||
(synopsis "Mupen64Plus SDL input plugin")
|
||||
(description
|
||||
"Mupen64Plus is a cross-platform plugin-based Nintendo 64 (N64) emulator
|
||||
|
@ -579,7 +580,7 @@ (define-public mupen64plus-input-sdl
|
|||
(string-append "APIDIR=" m64p "/include/mupen64plus")))
|
||||
;; There are no tests.
|
||||
#:tests? #f))
|
||||
(home-page "http://www.mupen64plus.org/")
|
||||
(home-page "https://www.mupen64plus.org/")
|
||||
(synopsis "Mupen64Plus SDL input plugin")
|
||||
(description
|
||||
"Mupen64Plus is a cross-platform plugin-based Nintendo 64 (N64) emulator
|
||||
|
@ -621,7 +622,7 @@ (define-public mupen64plus-rsp-hle
|
|||
(string-append "APIDIR=" m64p "/include/mupen64plus")))
|
||||
;; There are no tests.
|
||||
#:tests? #f))
|
||||
(home-page "http://www.mupen64plus.org/")
|
||||
(home-page "https://www.mupen64plus.org/")
|
||||
(synopsis "Mupen64Plus SDL input plugin")
|
||||
(description
|
||||
"Mupen64Plus is a cross-platform plugin-based Nintendo 64 (N64) emulator
|
||||
|
@ -663,7 +664,7 @@ (define-public mupen64plus-rsp-z64
|
|||
(string-append "APIDIR=" m64p "/include/mupen64plus")))
|
||||
;; There are no tests.
|
||||
#:tests? #f))
|
||||
(home-page "http://www.mupen64plus.org/")
|
||||
(home-page "https://www.mupen64plus.org/")
|
||||
(synopsis "Mupen64Plus SDL input plugin")
|
||||
(description
|
||||
"Mupen64Plus is a cross-platform plugin-based Nintendo 64 (N64) emulator
|
||||
|
@ -709,7 +710,7 @@ (define-public mupen64plus-video-arachnoid
|
|||
(string-append "APIDIR=" m64p "/include/mupen64plus")))
|
||||
;; There are no tests.
|
||||
#:tests? #f))
|
||||
(home-page "http://www.mupen64plus.org/")
|
||||
(home-page "https://www.mupen64plus.org/")
|
||||
(synopsis "Mupen64Plus Rice Video plugin")
|
||||
(description
|
||||
"Mupen64Plus is a cross-platform plugin-based Nintendo 64 (N64) emulator
|
||||
|
@ -763,7 +764,7 @@ (define-public mupen64plus-video-glide64
|
|||
(string-append "APIDIR=" m64p "/include/mupen64plus")))
|
||||
;; There are no tests.
|
||||
#:tests? #f))
|
||||
(home-page "http://www.mupen64plus.org/")
|
||||
(home-page "https://www.mupen64plus.org/")
|
||||
(synopsis "Mupen64Plus Rice Video plugin")
|
||||
(description
|
||||
"Mupen64Plus is a cross-platform plugin-based Nintendo 64 (N64) emulator
|
||||
|
@ -813,7 +814,7 @@ (define-public mupen64plus-video-glide64mk2
|
|||
(string-append "APIDIR=" m64p "/include/mupen64plus")))
|
||||
;; There are no tests.
|
||||
#:tests? #f))
|
||||
(home-page "http://www.mupen64plus.org/")
|
||||
(home-page "https://www.mupen64plus.org/")
|
||||
(synopsis "Mupen64Plus Rice Video plugin")
|
||||
(description
|
||||
"Mupen64Plus is a cross-platform plugin-based Nintendo 64 (N64) emulator
|
||||
|
@ -861,7 +862,7 @@ (define-public mupen64plus-video-rice
|
|||
(string-append "APIDIR=" m64p "/include/mupen64plus")))
|
||||
;; There are no tests.
|
||||
#:tests? #f))
|
||||
(home-page "http://www.mupen64plus.org/")
|
||||
(home-page "https://www.mupen64plus.org/")
|
||||
(synopsis "Mupen64Plus Rice Video plugin")
|
||||
(description
|
||||
"Mupen64Plus is a cross-platform plugin-based Nintendo 64 (N64) emulator
|
||||
|
@ -916,7 +917,7 @@ (define-public mupen64plus-video-z64
|
|||
(string-append "APIDIR=" m64p "/include/mupen64plus")))
|
||||
;; There are no tests.
|
||||
#:tests? #f))
|
||||
(home-page "http://www.mupen64plus.org/")
|
||||
(home-page "https://www.mupen64plus.org/")
|
||||
(synopsis "Mupen64Plus Z64 video plugin")
|
||||
(description
|
||||
"Mupen64Plus is a cross-platform plugin-based Nintendo 64 (N64) emulator
|
||||
|
@ -1043,7 +1044,7 @@ (define-public nestopia-ue
|
|||
(define-public retroarch
|
||||
(package
|
||||
(name "retroarch")
|
||||
(version "1.7.7")
|
||||
(version "1.7.8")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
|
@ -1052,7 +1053,7 @@ (define-public retroarch
|
|||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "026720z0vpiwr4da7l2x2yinns09fmg6yxsib203xwnixj399azi"))))
|
||||
(base32 "0xxd9nhqiclpkdd9crymvba37fl0xs5mikwhya68nfzcgar7w480"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
`(#:tests? #f ; no tests
|
||||
|
@ -1074,8 +1075,7 @@ (define-public retroarch
|
|||
(("/bin/true") (which "true")))
|
||||
;; Use shared zlib.
|
||||
(substitute* '("libretro-common/file/archive_file_zlib.c"
|
||||
"libretro-common/streams/trans_stream_zlib.c"
|
||||
"network/httpserver/httpserver.c")
|
||||
"libretro-common/streams/trans_stream_zlib.c")
|
||||
(("<compat/zlib.h>") "<zlib.h>"))
|
||||
;; The configure script does not yet accept the extra arguments
|
||||
;; (like ‘CONFIG_SHELL=’) passed by the default configure phase.
|
||||
|
|
|
@ -65,7 +65,7 @@ (define-module (gnu packages enlightenment)
|
|||
(define-public efl
|
||||
(package
|
||||
(name "efl")
|
||||
(version "1.22.2")
|
||||
(version "1.22.3")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
|
@ -73,7 +73,7 @@ (define-public efl
|
|||
version ".tar.xz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1l0wdgzxqm2y919277b1p9d37xzg808zwxxaw0nn44arh8gqk68n"))))
|
||||
"1j1i8cwq4ym9z34ikv35mdmv5q7q69hdp494mc6l03g9n6cl2yky"))))
|
||||
(outputs '("out" ; 53 MB
|
||||
"include")) ; 21 MB
|
||||
(build-system gnu-build-system)
|
||||
|
@ -242,7 +242,7 @@ (define-public terminology
|
|||
(define-public rage
|
||||
(package
|
||||
(name "rage")
|
||||
(version "0.3.0")
|
||||
(version "0.3.1")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri
|
||||
|
@ -251,7 +251,7 @@ (define-public rage
|
|||
version ".tar.xz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0gfzdd4jg78bkmj61yg49w7bzspl5m1nh6agqgs8k7qrq9q26xqy"))))
|
||||
"04fdk23bbgvni212zrfy4ndg7vmshbsjgicrhckdvhay87pk9i75"))))
|
||||
(build-system meson-build-system)
|
||||
(arguments
|
||||
'(#:phases
|
||||
|
@ -273,20 +273,22 @@ (define-public rage
|
|||
(define-public enlightenment
|
||||
(package
|
||||
(name "enlightenment")
|
||||
(version "0.22.4")
|
||||
(version "0.23.0")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri
|
||||
(string-append "https://download.enlightenment.org/rel/apps/"
|
||||
name "/" name "-" version ".tar.xz"))
|
||||
"enlightenment/enlightenment-" version ".tar.xz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0ygy891rrw5c7lhk539nhif77j88phvz2h0fhx172iaridy9kx2r"))
|
||||
"1y7x594gvyvl5zbb1rnf3clj2pm6j97n8wl5mp9x6xjmhx0d1idq"))
|
||||
(patches (search-patches "enlightenment-fix-setuid-path.patch"))))
|
||||
(build-system gnu-build-system)
|
||||
(build-system meson-build-system)
|
||||
(arguments
|
||||
`(#:phases
|
||||
`(#:configure-flags '("-Dsystemd=false")
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(delete 'bootstrap) ; We don't want to run the autogen script.
|
||||
(add-before 'configure 'set-system-actions
|
||||
(lambda* (#:key inputs #:allow-other-keys)
|
||||
(setenv "HOME" "/tmp")
|
||||
|
@ -294,6 +296,7 @@ (define-public enlightenment
|
|||
(setxkbmap (assoc-ref inputs "setxkbmap"))
|
||||
(utils (assoc-ref inputs "util-linux"))
|
||||
(libc (assoc-ref inputs "libc"))
|
||||
(bluez (assoc-ref inputs "bluez"))
|
||||
(efl (assoc-ref inputs "efl")))
|
||||
;; We need to patch the path to 'base.lst' to be able
|
||||
;; to switch the keyboard layout in E.
|
||||
|
@ -314,12 +317,14 @@ (define-public enlightenment
|
|||
(string-append efl "/bin/edje_cc -v %s %s %s\"")))
|
||||
(substitute* "src/modules/everything/evry_plug_apps.c"
|
||||
(("/usr/bin/") ""))
|
||||
(substitute* "configure"
|
||||
(substitute* "data/etc/meson.build"
|
||||
(("/bin/mount") (string-append utils "/bin/mount"))
|
||||
(("/bin/umount") (string-append utils "/bin/umount"))
|
||||
(("/usr/bin/eject") (string-append utils "/bin/eject"))
|
||||
(("/etc/acpi/sleep.sh force") "/run/current-system/profile/bin/loginctl suspend")
|
||||
(("/etc/acpi/hibernate.sh force") "/run/current-system/profile/bin/loginctl hibernate")
|
||||
(("/usr/bin/l2ping") (string-append bluez "/bin/l2ling"))
|
||||
(("/bin/rfkill") (string-append utils "/sbin/rfkill"))
|
||||
(("SUSPEND = ''") "SUSPEND = '/run/current-system/profile/bin/loginctl suspend'")
|
||||
(("HIBERNATE = ''") "HIBERNATE = '/run/current-system/profile/bin/loginctl hibernate'")
|
||||
(("/sbin/shutdown -h now") "/run/current-system/profile/bin/loginctl poweroff now")
|
||||
(("/sbin/shutdown -r now") "/run/current-system/profile/bin/loginctl reboot now"))
|
||||
#t))))))
|
||||
|
@ -329,12 +334,14 @@ (define-public enlightenment
|
|||
("util-linux" ,util-linux)))
|
||||
(inputs
|
||||
`(("alsa-lib" ,alsa-lib)
|
||||
("bluez" ,bluez)
|
||||
("dbus" ,dbus)
|
||||
("efl" ,efl)
|
||||
("freetype" ,freetype)
|
||||
("libxcb" ,libxcb)
|
||||
("libxext" ,libxext)
|
||||
("linux-pam" ,linux-pam)
|
||||
("puleseaudio" ,pulseaudio)
|
||||
("setxkbmap" ,setxkbmap)
|
||||
("xcb-util-keysyms" ,xcb-util-keysyms)
|
||||
("xkeyboard-config" ,xkeyboard-config)))
|
||||
|
|
|
@ -85,20 +85,20 @@ (define-public abc
|
|||
(define-public iverilog
|
||||
(package
|
||||
(name "iverilog")
|
||||
(version "10.2")
|
||||
(version "10.3")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri
|
||||
(string-append "ftp://ftp.icarus.com/pub/eda/verilog/v10/"
|
||||
"verilog-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0075x5nsxwkrgn7b3635il9kw7mslckaji518pdmwdrdn7fxppln"))))
|
||||
(base32
|
||||
"1vv88ckvfwq7mrysyjnilsrcrzm9d173kp9w5ivwh6rdw7klbgc6"))))
|
||||
(build-system gnu-build-system)
|
||||
(native-inputs
|
||||
`(("flex" ,flex)
|
||||
("bison" ,bison)
|
||||
("ghostscript" ,ghostscript))) ; ps2pdf
|
||||
("ghostscript" ,ghostscript))) ; ps2pdf
|
||||
(home-page "http://iverilog.icarus.com/")
|
||||
(synopsis "FPGA Verilog simulation and synthesis tool")
|
||||
(description "Icarus Verilog is a Verilog simulation and synthesis tool.
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
;;; Copyright © 2013 Andreas Enge <andreas@enge.fr>
|
||||
;;; Copyright © 2014, 2015, 2016, 2017 Mark H Weaver <mhw@netris.org>
|
||||
;;; Copyright © 2015 Ricardo Wurmus <rekado@elephly.net>
|
||||
;;; Copyright © 2013, 2015, 2016, 2017 Ludovic Courtès <ludo@gnu.org>
|
||||
;;; Copyright © 2013, 2015, 2016, 2017, 2019 Ludovic Courtès <ludo@gnu.org>
|
||||
;;; Copyright © 2017 Alex Vong <alexvong1995@gmail.com>
|
||||
;;; Copyright © 2017, 2018, 2019 Efraim Flashner <efraim@flashner.co.il>
|
||||
;;; Copyright © 2017 Leo Famulari <leo@famulari.name>
|
||||
|
@ -138,6 +138,12 @@ (define-public ghostscript
|
|||
(package
|
||||
(name "ghostscript")
|
||||
(version "9.27")
|
||||
|
||||
;; The problems addressed by GHOSTSCRIPT/FIXED are not security-related,
|
||||
;; but they have a significant impact on usability, hence this graft.
|
||||
;; TODO: Ungraft on next update cycle.
|
||||
(replacement ghostscript/fixed)
|
||||
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
|
@ -269,6 +275,25 @@ (define-public ghostscript
|
|||
(home-page "https://www.ghostscript.com/")
|
||||
(license license:agpl3+)))
|
||||
|
||||
(define-public ghostscript/fixed
|
||||
;; This adds the Freetype dependency (among other things), which fixes the
|
||||
;; rendering issues described in <https://issues.guix.gnu.org/issue/34877>.
|
||||
(package/inherit
|
||||
ghostscript
|
||||
(arguments
|
||||
(substitute-keyword-arguments (package-arguments ghostscript)
|
||||
((#:configure-flags flags ''())
|
||||
`(append (list "--disable-compile-inits"
|
||||
(string-append "--with-fontpath="
|
||||
(assoc-ref %build-inputs "gs-fonts")
|
||||
"/share/fonts/type1/ghostscript"))
|
||||
,flags))))
|
||||
(native-inputs `(("pkg-config" ,pkg-config) ;needed for freetype
|
||||
,@(package-native-inputs ghostscript)))
|
||||
(inputs `(("gs-fonts" ,gs-fonts)
|
||||
("fontconfig" ,fontconfig)
|
||||
,@(package-inputs ghostscript)))))
|
||||
|
||||
(define-public ghostscript/x
|
||||
(package/inherit ghostscript
|
||||
(name (string-append (package-name ghostscript) "-with-x"))
|
||||
|
|
|
@ -10,6 +10,7 @@
|
|||
;;; Copyright © 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr>
|
||||
;;; Copyright © 2018 Alex Vong <alexvong1995@gmail.com>
|
||||
;;; Copyright © 2019 Maxim Cournoyer <maxim.cournoyer@gmail.com>
|
||||
;;; Copyright © 2019 Giacomo Leidi <goodoldpaul@autistici.org>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
|
@ -925,3 +926,40 @@ (define perl-net-dbus-glib
|
|||
@code{Net::DBus::GLib} rather than the usual @code{Net::DBus} module. Every
|
||||
other API remains the same.")
|
||||
(license license:gpl2+)))
|
||||
|
||||
(define-public template-glib
|
||||
(package
|
||||
(name "template-glib")
|
||||
(version "3.32.0")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "mirror://gnome/sources/" name "/"
|
||||
(version-major+minor version) "/"
|
||||
name "-" version ".tar.xz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1g0zx0sxpw8kqp7p3sgl9kngaqrg9xl6cir24nrahks0vgsk98rr"))))
|
||||
(build-system meson-build-system)
|
||||
(arguments
|
||||
`(#:configure-flags '("-D" "enable_gtk_doc=true")))
|
||||
(inputs
|
||||
`(("gettext" ,gettext-minimal)
|
||||
("glib" ,glib)
|
||||
("gobject-introspection" ,gobject-introspection)))
|
||||
(native-inputs
|
||||
`(("bison" ,bison)
|
||||
("flex" ,flex)
|
||||
("glib:bin" ,glib "bin") ;; For glib-mkenums
|
||||
("gtk-doc" ,gtk-doc)
|
||||
("pkg-config" ,pkg-config)
|
||||
("vala" ,vala)))
|
||||
(home-page "https://gitlab.gnome.org/GNOME/template-glib")
|
||||
(synopsis "Library for template expansion")
|
||||
(description
|
||||
"Template-GLib is a library to help you generate text based on a template and
|
||||
user defined state. Template-GLib does not use a language runtime, so it is
|
||||
safe to use from any GObject-Introspectable language.
|
||||
|
||||
Template-GLib allows you to access properties on GObjects as well as call
|
||||
simple methods via GObject-Introspection.")
|
||||
(license license:lgpl2.1+)))
|
||||
|
|
|
@ -8053,7 +8053,7 @@ (define-public ghex
|
|||
(define-public libdazzle
|
||||
(package
|
||||
(name "libdazzle")
|
||||
(version "3.30.2")
|
||||
(version "3.33.90")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "mirror://gnome/sources/libdazzle/"
|
||||
|
@ -8061,17 +8061,11 @@ (define-public libdazzle
|
|||
"libdazzle-" version ".tar.xz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1m9n1gcxndly24rjkxzvmx02a2rkb6ad4cy7p6ncanm1kyp0wxvq"))))
|
||||
"189m7q88d1a7bq0yyal9f3yhm9kz46lb61379nn4wsnnhpa1d0qs"))))
|
||||
(build-system meson-build-system)
|
||||
(arguments
|
||||
`(#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-after 'unpack 'disable-failing-test
|
||||
(lambda _
|
||||
;; Disable failing test.
|
||||
(substitute* "tests/meson.build"
|
||||
(("test\\('test-application") "#"))
|
||||
#t))
|
||||
(add-before 'check 'pre-check
|
||||
(lambda _
|
||||
;; Tests require a running X server.
|
||||
|
|
|
@ -75,7 +75,8 @@ (define-public libextractor
|
|||
version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1zz2zvikvfibxnk1va3kgzs7djsmiqy7bmk8y01vbsf54ryjb3zh"))))
|
||||
"1zz2zvikvfibxnk1va3kgzs7djsmiqy7bmk8y01vbsf54ryjb3zh"))
|
||||
(patches (search-patches "libextractor-exiv2.patch"))))
|
||||
(build-system gnu-build-system)
|
||||
;; WARNING: Checks require /dev/shm to be in the build chroot, especially
|
||||
;; not to be a symbolic link to /run/shm.
|
||||
|
@ -146,14 +147,14 @@ (define-public libextractor
|
|||
(define-public libmicrohttpd
|
||||
(package
|
||||
(name "libmicrohttpd")
|
||||
(version "0.9.65")
|
||||
(version "0.9.66")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "mirror://gnu/libmicrohttpd/libmicrohttpd-"
|
||||
version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1jdk6wigvnkh5bi9if4rik8i9sbvdql61lm8ipgpypyxqmcpjipj"))))
|
||||
"06xblz77bnn29y7sl43avxbcrjbw486x3416plpr3x3l2pdx8rjf"))))
|
||||
(build-system gnu-build-system)
|
||||
(inputs
|
||||
`(("curl" ,curl)
|
||||
|
|
|
@ -15,6 +15,7 @@
|
|||
;;; Copyright @ 2018, 2019 Katherine Cox-Buday <cox.katherine.e@gmail.com>
|
||||
;;; Copyright @ 2019 Giovanni Biscuolo <g@xelera.eu>
|
||||
;;; Copyright @ 2019 Alex Griffin <a@ajgrf.com>
|
||||
;;; Copyright © 2019 Arun Isaac <arunisaac@systemreboot.net>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
|
@ -3636,3 +3637,26 @@ (define-public go-github-com-maruel-panicparse
|
|||
and aid debugging.")
|
||||
(home-page "https://github.com/maruel/panicparse")
|
||||
(license license:asl2.0)))
|
||||
|
||||
(define-public go-github-com-robfig-cron
|
||||
(package
|
||||
(name "go-github-com-robfig-cron")
|
||||
(version "3.0.0")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/robfig/cron")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"0bvq5gxkhyj21lq32nma23i4dpwp7bswnp2yks6372ilkcyisx2z"))))
|
||||
(build-system go-build-system)
|
||||
(arguments
|
||||
`(#:import-path "github.com/robfig/cron"))
|
||||
(home-page "https://godoc.org/github.com/robfig/cron")
|
||||
(synopsis "Cron library for Go")
|
||||
(description "This package provides a cron library for Go. It implements
|
||||
a cron spec parser and job runner.")
|
||||
(license license:expat)))
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
;;; Copyright © 2012 Andreas Enge <andreas@enge.fr>
|
||||
;;; Copyright © 2017 Ricardo Wurmus <rekado@elephly.net>
|
||||
;;; Copyright © 2017 Eric Bavier <bavier@member.fsf.org>
|
||||
;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
|
||||
;;; Copyright © 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
|
|
|
@ -21,6 +21,7 @@
|
|||
;;; Copyright © 2018 Arun Isaac <arunisaac@systemreboot.net>
|
||||
;;; Copyright © 2018 Pierre Neidhardt <mail@ambrevar.xyz>
|
||||
;;; Copyright © 2019 Meiyo Peng <meiyo@riseup.net>
|
||||
;;; Copyright © 2019 Giacomo Leidi <goodoldpaul@autistici.org>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
|
@ -1597,7 +1598,8 @@ (define-public gtkspell3
|
|||
(build-system gnu-build-system)
|
||||
(native-inputs
|
||||
`(("intltool" ,intltool)
|
||||
("pkg-config" ,pkg-config)))
|
||||
("pkg-config" ,pkg-config)
|
||||
("vala" ,vala)))
|
||||
(inputs
|
||||
`(("gobject-introspection" ,gobject-introspection)
|
||||
("gtk+" ,gtk+)
|
||||
|
|
|
@ -21,6 +21,7 @@
|
|||
;;; Copyright © 2018 Pierre-Antoine Rouby <pierre-antoine.rouby@inria.fr>
|
||||
;;; Copyright © 2018 Eric Bavier <bavier@member.fsf.org>
|
||||
;;; Copyright © 2019 swedebugia <swedebugia@riseup.net>
|
||||
;;; Copyright © 2019 Amar Singh <nly@disroot.org>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
|
@ -55,6 +56,7 @@ (define-module (gnu packages guile-xyz)
|
|||
#:use-module (gnu packages gl)
|
||||
#:use-module (gnu packages glib)
|
||||
#:use-module (gnu packages gnome)
|
||||
#:use-module (gnu packages gnupg)
|
||||
#:use-module (gnu packages gperf)
|
||||
#:use-module (gnu packages gtk)
|
||||
#:use-module (gnu packages guile)
|
||||
|
@ -70,6 +72,7 @@ (define-module (gnu packages guile-xyz)
|
|||
#:use-module (gnu packages ncurses)
|
||||
#:use-module (gnu packages networking)
|
||||
#:use-module (gnu packages noweb)
|
||||
#:use-module (gnu packages password-utils)
|
||||
#:use-module (gnu packages perl)
|
||||
#:use-module (gnu packages pkg-config)
|
||||
#:use-module (gnu packages python)
|
||||
|
@ -2350,22 +2353,52 @@ (define-public emacsy
|
|||
("pkg-config" ,pkg-config)
|
||||
("texinfo" ,texinfo)
|
||||
("texlive" ,(texlive-union (list texlive-generic-epsf)))))
|
||||
(propagated-inputs
|
||||
(inputs
|
||||
`(("dbus-glib" ,dbus-glib)
|
||||
("guile" ,guile-2.2)
|
||||
("guile-lib" ,guile-lib)
|
||||
("guile-readline" ,guile-readline)
|
||||
("glib-networking" ,glib-networking)
|
||||
("freeglut" ,freeglut)
|
||||
("gssettings-desktop-schemas" ,gsettings-desktop-schemas)
|
||||
("webkitgtk" ,webkitgtk)))
|
||||
(propagated-inputs
|
||||
`(("glib-networking" ,glib-networking)
|
||||
("gssettings-desktop-schemas" ,gsettings-desktop-schemas)))
|
||||
(arguments
|
||||
`(#:phases
|
||||
`(#:modules ((guix build gnu-build-system)
|
||||
(guix build utils)
|
||||
(ice-9 popen)
|
||||
(ice-9 rdelim)
|
||||
(ice-9 regex)
|
||||
(ice-9 ftw)
|
||||
(srfi srfi-26))
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-before 'configure 'setenv
|
||||
(lambda _
|
||||
(setenv "GUILE_AUTO_COMPILE" "0")
|
||||
#t)))))
|
||||
#t))
|
||||
(add-after 'install 'wrap-binaries
|
||||
(lambda* (#:key inputs outputs #:allow-other-keys)
|
||||
(let* ((out (assoc-ref outputs "out"))
|
||||
(effective (read-line
|
||||
(open-pipe* OPEN_READ
|
||||
"guile" "-c"
|
||||
"(display (effective-version))")))
|
||||
(deps (map (cut assoc-ref inputs <>)
|
||||
'("guile-lib" "guile-readline")))
|
||||
(scm-path (map (cut string-append <> "/share/guile/site/"
|
||||
effective) `(,out ,@deps)))
|
||||
(go-path (map (cut string-append <> "/lib/guile/" effective
|
||||
"/site-ccache/") `(,out ,@deps)))
|
||||
(examples (filter (cut string-match "emacsy" <>)
|
||||
(scandir (string-append out "/bin/"))))
|
||||
(progs (map (cut string-append out "/bin/" <>)
|
||||
examples)))
|
||||
(map (cut wrap-program <>
|
||||
`("GUILE_LOAD_PATH" ":" prefix ,scm-path)
|
||||
`("GUILE_LOAD_COMPILED_PATH" ":" prefix ,go-path))
|
||||
progs)
|
||||
#t))))))
|
||||
(home-page "https://savannah.nongnu.org/projects/emacsy")
|
||||
(synopsis "Embeddable GNU Emacs-like library using Guile")
|
||||
(description
|
||||
|
@ -2377,6 +2410,36 @@ (define-public emacsy
|
|||
in C using Gtk+-3 and WebKitGtk.")
|
||||
(license license:gpl3+)))
|
||||
|
||||
(define-public emacsy-minimal
|
||||
(let ((commit "f3bf0dbd803d7805b6ae8303253507ad13922293"))
|
||||
(package
|
||||
(inherit emacsy)
|
||||
(name "emacsy-minimal")
|
||||
(version (git-version "v0.4.1" "19" commit))
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://git.savannah.gnu.org/git/emacsy.git")
|
||||
(commit commit)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"0ivy28km1p7nlrf63xx3hvrpxf5ld5amk1wcan3k7sqv1kq9mqdb"))))
|
||||
(build-system gnu-build-system)
|
||||
(inputs
|
||||
`(("guile" ,guile-2.2)
|
||||
("guile-lib" ,guile-lib)
|
||||
("guile-readline" ,guile-readline)))
|
||||
(propagated-inputs '())
|
||||
(arguments
|
||||
`(#:configure-flags '("--without-examples")
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-before 'configure 'setenv
|
||||
(lambda _
|
||||
(setenv "GUILE_AUTO_COMPILE" "0")
|
||||
#t))))))))
|
||||
|
||||
(define-public guile-jpeg
|
||||
(let ((commit "6a1673578b297c2c1b28e44a76bd5c49e76a5046")
|
||||
(revision "0"))
|
||||
|
@ -2410,3 +2473,95 @@ (define-public guile-jpeg
|
|||
"Guile-JPEG is a Scheme library to parse JPEG image files and to
|
||||
perform geometrical transforms on JPEG images.")
|
||||
(license license:gpl3+))))
|
||||
|
||||
(define-public nomad
|
||||
(package
|
||||
(name "nomad")
|
||||
(version "0.1.1-alpha")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://git.savannah.gnu.org/git/nomad.git")
|
||||
(commit version)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"0abz07hl5dh802ciy71xzkvkhyryypq1i94wna40a2wndbd73f7z"))))
|
||||
(build-system gnu-build-system)
|
||||
(native-inputs
|
||||
`(("autoconf" ,autoconf)
|
||||
("automake" ,automake)
|
||||
("bash" ,bash)
|
||||
("pkg-config" ,pkg-config)
|
||||
("libtool" ,libtool)
|
||||
("guile" ,guile-2.2)
|
||||
("glib:bin" ,glib "bin")))
|
||||
(inputs
|
||||
`(("guile" ,guile-2.2)
|
||||
("guile-lib" ,guile-lib)
|
||||
("guile-gcrypt" ,guile-gcrypt)
|
||||
("guile-readline" ,guile-readline)
|
||||
("gnutls" ,gnutls)
|
||||
("shroud" ,shroud)
|
||||
("emacsy" ,emacsy-minimal)
|
||||
("glib" ,glib)
|
||||
("dbus-glib" ,dbus-glib)
|
||||
("gtk+" ,gtk+)
|
||||
("gtksourceview" ,gtksourceview)
|
||||
("webkitgtk" ,webkitgtk)
|
||||
("xorg-server" ,xorg-server)))
|
||||
(propagated-inputs
|
||||
`(("glib" ,glib)
|
||||
("glib-networking" ,glib-networking)
|
||||
("gsettings-desktop-schemas" ,gsettings-desktop-schemas)))
|
||||
(arguments
|
||||
`(#:modules ((guix build gnu-build-system)
|
||||
(guix build utils)
|
||||
(ice-9 popen)
|
||||
(ice-9 rdelim)
|
||||
(srfi srfi-26))
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-before 'check 'start-xorg-server
|
||||
(lambda* (#:key inputs #:allow-other-keys)
|
||||
;; The test suite requires a running X server.
|
||||
(system (format #f "~a/bin/Xvfb :1 &"
|
||||
(assoc-ref inputs "xorg-server")))
|
||||
(setenv "DISPLAY" ":1")
|
||||
#t))
|
||||
(add-after 'install 'wrap-binaries
|
||||
(lambda* (#:key inputs outputs #:allow-other-keys)
|
||||
(let* ((out (assoc-ref outputs "out"))
|
||||
(gio-deps (map (cut assoc-ref inputs <>) '("glib-networking"
|
||||
"glib")))
|
||||
(gio-mod-path (map (cut string-append <> "/lib/gio/modules")
|
||||
gio-deps))
|
||||
(effective (read-line (open-pipe*
|
||||
OPEN_READ
|
||||
"guile" "-c"
|
||||
"(display (effective-version))")))
|
||||
(deps (map (cut assoc-ref inputs <>)
|
||||
'("emacsy" "guile-lib" "guile-readline"
|
||||
"shroud")))
|
||||
(scm-path (map (cut string-append <>
|
||||
"/share/guile/site/" effective)
|
||||
`(,out ,@deps)))
|
||||
(go-path (map (cut string-append <>
|
||||
"/lib/guile/" effective "/site-ccache")
|
||||
`(,out ,@deps)))
|
||||
(progs (map (cut string-append out "/bin/" <>)
|
||||
'("nomad"))))
|
||||
(map (cut wrap-program <>
|
||||
`("GIO_EXTRA_MODULES" ":" prefix ,gio-mod-path)
|
||||
`("GUILE_LOAD_PATH" ":" prefix ,scm-path)
|
||||
`("GUILE_LOAD_COMPILED_PATH" ":"
|
||||
prefix ,go-path))
|
||||
progs)
|
||||
#t))))))
|
||||
(home-page "https://savannah.nongnu.org/projects/nomad/")
|
||||
(synopsis "Extensible Web Browser in Guile Scheme")
|
||||
(description "Nomad is an Emacs-like Web Browser built using Webkitgtk and
|
||||
Emacsy. It has a small C layer and most browser features are fully
|
||||
programmable in Guile. It has hooks, keymaps, and self documentation
|
||||
features.")
|
||||
(license license:gpl3+)))
|
||||
|
|
|
@ -264,14 +264,14 @@ (define-public guile-next
|
|||
(package
|
||||
(inherit guile-2.2)
|
||||
(name "guile-next")
|
||||
(version "2.9.3")
|
||||
(version "2.9.4")
|
||||
(source (origin
|
||||
(inherit (package-source guile-2.2))
|
||||
(uri (string-append "ftp://alpha.gnu.org/gnu/guile/guile-"
|
||||
version ".tar.xz"))
|
||||
(sha256
|
||||
(base32
|
||||
"14990wcpysgw58kij03wbgiggmi5z94jmy7wdcqnn6ny7cimkkgr"))))
|
||||
"1milviqhipyfx400pqhngxpxyajalzwmp597dxn5514pkk0g7v0p"))))
|
||||
(native-search-paths
|
||||
(list (search-path-specification
|
||||
(variable "GUILE_LOAD_PATH")
|
||||
|
@ -541,7 +541,7 @@ (define-public guile2.0-sqlite3
|
|||
(define-public guile-bytestructures
|
||||
(package
|
||||
(name "guile-bytestructures")
|
||||
(version "1.0.5")
|
||||
(version "1.0.6")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://github.com/TaylanUB/scheme-bytestructures"
|
||||
|
@ -549,7 +549,7 @@ (define-public guile-bytestructures
|
|||
"/bytestructures-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0ibk7fjwpb450lnrva4bx45sgln3pbyb645az4ansvh1spgani43"))))
|
||||
"07dffrmc6cnw9mmw0pdrqlkbhzzpz0hm8p26z738l2j5i84dypnk"))))
|
||||
(build-system gnu-build-system)
|
||||
(native-inputs
|
||||
`(("pkg-config" ,pkg-config)))
|
||||
|
@ -563,7 +563,8 @@ (define-public guile-bytestructures
|
|||
system works on raw memory, and Guile works on bytevectors which are
|
||||
an abstraction over raw memory. It's also more powerful than the C
|
||||
type system, elevating types to first-class status.")
|
||||
(license license:gpl3+)))
|
||||
(license license:gpl3+)
|
||||
(properties '((upstream-name . "bytestructures")))))
|
||||
|
||||
(define-public guile2.0-bytestructures
|
||||
(package-for-guile-2.0 guile-bytestructures))
|
||||
|
|
|
@ -219,7 +219,7 @@ (define-public gx-go
|
|||
(define-public go-ipfs
|
||||
(package
|
||||
(name "go-ipfs")
|
||||
(version "0.4.19")
|
||||
(version "0.4.22")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch/tarbomb)
|
||||
|
@ -227,7 +227,7 @@ (define-public go-ipfs
|
|||
"https://dist.ipfs.io/go-ipfs/v" version
|
||||
"/go-ipfs-source.tar.gz"))
|
||||
(sha256
|
||||
(base32 "0s04ap14p6hnipjm27nm5k8s28zv9k5g9mziyh3ibgwn7dzb1kpx"))
|
||||
(base32 "1gyz9yqb4y7p6vdjbcm66nvm6gjs4mdrjygdn79z3misv1pb5nkg"))
|
||||
(file-name (string-append name "-" version "-source"))))
|
||||
(build-system go-build-system)
|
||||
(arguments
|
||||
|
|
|
@ -181,31 +181,31 @@ (define (linux-libre-deblob-scripts version
|
|||
|
||||
(define deblob-scripts-5.2
|
||||
(linux-libre-deblob-scripts
|
||||
"5.2.3"
|
||||
"5.2.10"
|
||||
(base32 "076fwxlm6jq6z4vg1xq3kr474zz7qk71r90sf9dnfia3rw2pb4fa")
|
||||
(base32 "0d3pp1bqchqc7vnxr1a56km5r0hzjiiipzz2xc3wgjwfi51k9kxc")))
|
||||
|
||||
(define deblob-scripts-4.19
|
||||
(linux-libre-deblob-scripts
|
||||
"4.19.61"
|
||||
"4.19.68"
|
||||
(base32 "02zs405awaxydbapka4nz8h6lmnc0dahgczqsrs5s2bmzjyyqkcy")
|
||||
(base32 "1fyacg28aym6virxyn7wk99qil2fjbks3iwm7p3hxy51pccn34za")))
|
||||
|
||||
(define deblob-scripts-4.14
|
||||
(linux-libre-deblob-scripts
|
||||
"4.14.134"
|
||||
"4.14.140"
|
||||
(base32 "091jk9jkn9jf39bxpc7395bhcb7p96nkg3a8047380ki06lnfxh6")
|
||||
(base32 "0x9nd3hnyrm753cbgdqmy92mbnyw86w64g4hvyibnkpq5n7s3z9n")))
|
||||
|
||||
(define deblob-scripts-4.9
|
||||
(linux-libre-deblob-scripts
|
||||
"4.9.186"
|
||||
"4.9.190"
|
||||
(base32 "1wvldzlv7q2xdbadas87dh593nxr4a8p5n0f8zpm72lja6w18hmg")
|
||||
(base32 "1gmjn5cwxydg6qb47wcmahwkv37npsjx4papynzkkdxyidmrccya")))
|
||||
(base32 "0is8gn4qdd7h5l6lacvhqdch26lmrbgxfm8ab7fx8n85ha7y358w")))
|
||||
|
||||
(define deblob-scripts-4.4
|
||||
(linux-libre-deblob-scripts
|
||||
"4.4.186"
|
||||
"4.4.190"
|
||||
(base32 "0x2j1i88am54ih2mk7gyl79g25l9zz4r08xhl482l3fvjj2irwbw")
|
||||
(base32 "1x40lbiaizksy8z38ax7wpqr9ldgq7qvkxbb0ca98vd1axpklb10")))
|
||||
|
||||
|
@ -349,42 +349,42 @@ (define (%upstream-linux-source version hash)
|
|||
"linux-" version ".tar.xz"))
|
||||
(sha256 hash)))
|
||||
|
||||
(define-public linux-libre-5.2-version "5.2.9")
|
||||
(define-public linux-libre-5.2-version "5.2.11")
|
||||
(define-public linux-libre-5.2-pristine-source
|
||||
(let ((version linux-libre-5.2-version)
|
||||
(hash (base32 "1rnlnphw9rih4qhdld9ic5lnj5jh4vy5nqbj9lqwv9bc615jmw5n")))
|
||||
(hash (base32 "1y9kn1zny3xpmbi5an3g7hbzywnycys8chfaw6laij1xk4gq6ahc")))
|
||||
(make-linux-libre-source version
|
||||
(%upstream-linux-source version hash)
|
||||
deblob-scripts-5.2)))
|
||||
|
||||
(define-public linux-libre-4.19-version "4.19.67")
|
||||
(define-public linux-libre-4.19-version "4.19.69")
|
||||
(define-public linux-libre-4.19-pristine-source
|
||||
(let ((version linux-libre-4.19-version)
|
||||
(hash (base32 "00m5k0nfcvgff70686rbhn3w8c9wc3jxqvyddw40lylaqdh3s72s")))
|
||||
(hash (base32 "11yrw8ixd5ni9rlpndqsz2ihx6k8qaf35a1lf164lkhaa85pd4f0")))
|
||||
(make-linux-libre-source version
|
||||
(%upstream-linux-source version hash)
|
||||
deblob-scripts-4.19)))
|
||||
|
||||
(define-public linux-libre-4.14-version "4.14.139")
|
||||
(define-public linux-libre-4.14-version "4.14.141")
|
||||
(define-public linux-libre-4.14-pristine-source
|
||||
(let ((version linux-libre-4.14-version)
|
||||
(hash (base32 "0hkhwcbxg6bry13w9kspx48b10274w6pgv200wh91fjd8jax8qlc")))
|
||||
(hash (base32 "05rs411rw10hhnfzvaxmcik3pq20i1i05shvvra4bv164f0z1f8b")))
|
||||
(make-linux-libre-source version
|
||||
(%upstream-linux-source version hash)
|
||||
deblob-scripts-4.14)))
|
||||
|
||||
(define-public linux-libre-4.9-version "4.9.189")
|
||||
(define-public linux-libre-4.9-version "4.9.190")
|
||||
(define-public linux-libre-4.9-pristine-source
|
||||
(let ((version linux-libre-4.9-version)
|
||||
(hash (base32 "1cyhwnxkjd0qa5d48657yppjnzbi830q0p25jjv2dxs629k4bnck")))
|
||||
(hash (base32 "05ha3snfk0vdqk9i27icwpq2if0h2jvshavn69ldwqm4h2h1r2py")))
|
||||
(make-linux-libre-source version
|
||||
(%upstream-linux-source version hash)
|
||||
deblob-scripts-4.9)))
|
||||
|
||||
(define-public linux-libre-4.4-version "4.4.189")
|
||||
(define-public linux-libre-4.4-version "4.4.190")
|
||||
(define-public linux-libre-4.4-pristine-source
|
||||
(let ((version linux-libre-4.4-version)
|
||||
(hash (base32 "0nc8v62gw89m3ykqg6nqf749fzm8y1n481ns8vny4gbinyikjhlp")))
|
||||
(hash (base32 "1rf28cjrrmj7mm8xqlfld6k20ddk15j4mmyarqibjx9pk9acij7y")))
|
||||
(make-linux-libre-source version
|
||||
(%upstream-linux-source version hash)
|
||||
deblob-scripts-4.4)))
|
||||
|
@ -4854,14 +4854,14 @@ (define-public efibootmgr
|
|||
(define-public sysstat
|
||||
(package
|
||||
(name "sysstat")
|
||||
(version "11.4.3")
|
||||
(version "12.1.6")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "http://perso.orange.fr/sebastien.godard/"
|
||||
(uri (string-append "http://pagesperso-orange.fr/sebastien.godard/"
|
||||
"sysstat-" version ".tar.xz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1ryf9myjzpa2279i3rvsh6fr5psm6qvr5r9kbm1sxyspapxcms82"))))
|
||||
"0agi17n82k363mf9f7cky3isq195hw112vs98v26yfhm0v2g6lpp"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
`(#:tests? #f ; No test suite.
|
||||
|
|
|
@ -327,14 +327,14 @@ (define-public clisp
|
|||
(define-public sbcl
|
||||
(package
|
||||
(name "sbcl")
|
||||
(version "1.5.1")
|
||||
(version "1.5.5")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "mirror://sourceforge/sbcl/sbcl/" version "/sbcl-"
|
||||
version "-source.tar.bz2"))
|
||||
(sha256
|
||||
(base32 "08z62qba0kmm15k93s2rq7ipi769895g8iwigcp20qjh6amwnwph"))
|
||||
(base32 "1qmapk2hyxxqd3ajiqacz4isij0ibx7gn10n8dbmq33gm3kgliyb"))
|
||||
(modules '((guix build utils)))
|
||||
(snippet
|
||||
;; Add sbcl-bundle-systems to 'default-system-source-registry'.
|
||||
|
@ -364,7 +364,8 @@ (define-public sbcl
|
|||
("inetutils" ,inetutils) ;for hostname(1)
|
||||
("ed" ,ed)
|
||||
("texlive" ,(texlive-union (list texlive-tex-texinfo)))
|
||||
("texinfo" ,texinfo)))
|
||||
("texinfo" ,texinfo)
|
||||
("zlib" ,zlib)))
|
||||
(arguments
|
||||
`(#:modules ((guix build gnu-build-system)
|
||||
(guix build utils)
|
||||
|
@ -431,7 +432,9 @@ (define (quoted-path input path)
|
|||
(_
|
||||
`("clisp")))
|
||||
(string-append "--prefix="
|
||||
(assoc-ref outputs "out")))))
|
||||
(assoc-ref outputs "out"))
|
||||
"--with-sb-core-compression"
|
||||
"--with-sb-xref-for-internals")))
|
||||
(replace 'install
|
||||
(lambda _
|
||||
(invoke "sh" "install.sh")))
|
||||
|
@ -440,6 +443,21 @@ (define (quoted-path input path)
|
|||
(with-directory-excursion "doc/manual"
|
||||
(and (invoke "make" "info")
|
||||
(invoke "make" "dist")))))
|
||||
(add-after 'build 'build-source
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
(let* ((out (assoc-ref outputs "out"))
|
||||
(rc (string-append out "/lib/sbcl/sbclrc"))
|
||||
(source-dir (string-append out "/share/sbcl")))
|
||||
(for-each (lambda (p)
|
||||
(copy-recursively p (string-append source-dir "/" p)))
|
||||
'("src" "contrib"))
|
||||
(mkdir-p (dirname rc))
|
||||
(with-output-to-file rc
|
||||
(lambda ()
|
||||
(display
|
||||
(string-append "(sb-ext:set-sbcl-source-location \""
|
||||
source-dir "\")") )))
|
||||
#t)))
|
||||
(add-after 'install 'install-doc
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
(let* ((out (assoc-ref outputs "out"))
|
||||
|
@ -6650,3 +6668,75 @@ (define-public sbcl-cl-str
|
|||
@code{s} is always the last argument, which makes it easier to feed pipes and
|
||||
arrows.")
|
||||
(license license:expat))))
|
||||
|
||||
(define-public sbcl-cl-xmlspam
|
||||
(let ((commit "ea06abcca2a73a9779bcfb09081e56665f94e22a"))
|
||||
(package
|
||||
(name "sbcl-cl-xmlspam")
|
||||
(build-system asdf-build-system/sbcl)
|
||||
(version (git-version "0.0.0" "1" commit))
|
||||
(home-page "https://github.com/rogpeppe/cl-xmlspam")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url home-page)
|
||||
(commit commit)))
|
||||
(file-name (string-append name "-" version))
|
||||
(sha256
|
||||
(base32
|
||||
"0w4rqvrgdgk3fwfq3kx4r7wwdr2bv3b6n3bdqwsiriw9psqzpz2s"))))
|
||||
(inputs
|
||||
`(("cxml" ,sbcl-cxml)
|
||||
("cl-ppcre" ,sbcl-cl-ppcre)))
|
||||
(synopsis "Concise, regexp-like pattern matching on streaming XML for Common Lisp")
|
||||
(description "CXML does an excellent job at parsing XML elements, but what
|
||||
do you do when you have a XML file that's larger than you want to fit in
|
||||
memory, and you want to extract some information from it? Writing code to deal
|
||||
with SAX events, or even using Klacks, quickly becomes tedious.
|
||||
@code{cl-xmlspam} (for XML Stream PAttern Matcher) is designed to make it easy
|
||||
to write code that mirrors the structure of the XML that it's parsing. It
|
||||
also makes it easy to shift paradigms when necessary - the usual Lisp control
|
||||
constructs can be used interchangeably with pattern matching, and the full
|
||||
power of CXML is available when necessary.")
|
||||
(license license:bsd-3))))
|
||||
|
||||
;; TODO: dbus uses ASDF's package-inferred-system which is not supported by
|
||||
;; asdf-build-system/sbcl as of 2019-08-02. We should fix
|
||||
;; asdf-build-system/sbcl.
|
||||
(define-public cl-dbus
|
||||
(let ((commit "24b452df3a45ca5dc95015500f34baad175c981a")
|
||||
(revision "1"))
|
||||
(package
|
||||
(name "cl-dbus")
|
||||
(build-system asdf-build-system/source)
|
||||
(version (git-version "20190408" revision commit))
|
||||
(home-page "https://github.com/death/dbus")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url home-page)
|
||||
(commit commit)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"0fw2q866yddbf23nk9pxphm9gsasx35vjyss82xzvndnjmzlqfl5"))))
|
||||
;; Inputs must be propagated or else packages depending on this won't have the necessary packages.
|
||||
(propagated-inputs
|
||||
`(("alexandria" ,sbcl-alexandria)
|
||||
("trivial-garbage" ,sbcl-trivial-garbage)
|
||||
("babel" ,sbcl-babel)
|
||||
("iolib" ,sbcl-iolib)
|
||||
("iolib+multiplex" ,(@@ (gnu packages lisp) sbcl-iolib+multiplex))
|
||||
("iolib+syscalls" ,(@@ (gnu packages lisp) sbcl-iolib+syscalls))
|
||||
("iolib+streams" ,(@@ (gnu packages lisp) sbcl-iolib+streams))
|
||||
("iolib+sockets" ,(@@ (gnu packages lisp) sbcl-iolib+sockets))
|
||||
("ieee-floats" ,sbcl-ieee-floats)
|
||||
("flexi-streams" ,sbcl-flexi-streams)
|
||||
("cl-xmlspam" ,sbcl-cl-xmlspam)
|
||||
("ironclad" ,sbcl-ironclad)))
|
||||
(synopsis "D-Bus client library for Common Lisp")
|
||||
(description "This is a Common Lisp library that allows to publish D-Bus
|
||||
objects as well as send and notify other objects connected to a bus.")
|
||||
(license license:bsd-2))))
|
||||
|
|
|
@ -1285,7 +1285,7 @@ (define-public exim
|
|||
(define-public dovecot
|
||||
(package
|
||||
(name "dovecot")
|
||||
(version "2.3.6")
|
||||
(version "2.3.7.2")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
|
@ -1293,7 +1293,8 @@ (define-public dovecot
|
|||
(version-major+minor version) "/"
|
||||
"dovecot-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32 "1irnalplb47nlc26dn7zzdi95zhrxxi3miza7p3wdsgapv0qs7gd"))))
|
||||
(base32
|
||||
"0q0jgcv3ni2znkgyhc966ffphj1wk73y76wssh0yciqafs2f0v36"))))
|
||||
(build-system gnu-build-system)
|
||||
(native-inputs
|
||||
`(("pkg-config" ,pkg-config)))
|
||||
|
|
|
@ -2,8 +2,8 @@
|
|||
;;; Copyright © 2012, 2013, 2014, 2015, 2016, 2017, 2018 Ludovic Courtès <ludo@gnu.org>
|
||||
;;; Copyright © 2017 Efraim Flashner <efraim@flashner.co.il>
|
||||
;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
|
||||
;;; Copyright © 2018 Mark H Weaver <mhw@netris.org>
|
||||
;;; Copyright © 2018 Jan (janneke) Nieuwenhuizen <janneke@gnu.org>
|
||||
;;; Copyright © 2018, 2019 Mark H Weaver <mhw@netris.org>
|
||||
;;; Copyright © 2018, 2019 Jan (janneke) Nieuwenhuizen <janneke@gnu.org>
|
||||
;;; Copyright © 2019 Marius Bakke <mbakke@fastmail.com>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
|
@ -158,6 +158,15 @@ (define (native-inputs)
|
|||
(current-source-location)
|
||||
#:native-inputs native-inputs))
|
||||
|
||||
(define static-bash-for-bootstrap
|
||||
(package
|
||||
(inherit static-bash)
|
||||
(source (origin
|
||||
(inherit (package-source static-bash))
|
||||
(patches
|
||||
(cons (search-patch "bash-4.4-linux-pgrp-pipe.patch")
|
||||
(origin-patches (package-source static-bash))))))))
|
||||
|
||||
(define %static-inputs
|
||||
;; Packages that are to be used as %BOOTSTRAP-INPUTS.
|
||||
(let ((coreutils (package (inherit coreutils)
|
||||
|
@ -234,7 +243,7 @@ (define %static-inputs
|
|||
(("-Wl,-export-dynamic") ""))
|
||||
#t)))))))
|
||||
(inputs (if (%current-target-system)
|
||||
`(("bash" ,static-bash))
|
||||
`(("bash" ,static-bash-for-bootstrap))
|
||||
'()))))
|
||||
(tar (package (inherit tar)
|
||||
(arguments
|
||||
|
@ -280,7 +289,7 @@ (define %static-inputs
|
|||
("sed" ,sed)
|
||||
("grep" ,grep)
|
||||
("gawk" ,gawk)))
|
||||
("bash" ,static-bash))))
|
||||
("bash" ,static-bash-for-bootstrap))))
|
||||
|
||||
(define %static-binaries
|
||||
(package
|
||||
|
@ -585,8 +594,32 @@ (define %gcc-stripped
|
|||
#t))))
|
||||
(inputs `(("gcc" ,%gcc-static)))))
|
||||
|
||||
;; One package: build + remove store references
|
||||
;; (define %mescc-tools-static-stripped
|
||||
;; ;; A statically linked Mescc Tools with store references removed, for
|
||||
;; ;; bootstrap.
|
||||
;; (package
|
||||
;; (inherit mescc-tools)
|
||||
;; (name "mescc-tools-static-stripped")
|
||||
;; (arguments
|
||||
;; `(#:make-flags (list (string-append "PREFIX=" (assoc-ref %outputs "out"))
|
||||
;; "CC=gcc -static")
|
||||
;; #:test-target "test"
|
||||
;; #:phases (modify-phases %standard-phases
|
||||
;; (delete 'configure)
|
||||
;; (add-after 'install 'strip-store-references
|
||||
;; (lambda _
|
||||
;; (let* ((out (assoc-ref %outputs "out"))
|
||||
;; (bin (string-append out "/bin")))
|
||||
;; (for-each (lambda (file)
|
||||
;; (let ((target (string-append bin "/" file)))
|
||||
;; (format #t "strippingg `~a'...~%" target)
|
||||
;; (remove-store-references target)))
|
||||
;; '( "M1" "blood-elf" "hex2"))))))))))
|
||||
|
||||
;; Two packages: first build static, bare minimum content.
|
||||
(define %mescc-tools-static
|
||||
;; A statically linked MesCC Tools for bootstrap.
|
||||
;; A statically linked MesCC Tools.
|
||||
(package
|
||||
(inherit mescc-tools)
|
||||
(name "mescc-tools-static")
|
||||
|
@ -596,12 +629,73 @@ (define %mescc-tools-static
|
|||
((#:make-flags flags)
|
||||
`(cons "CC=gcc -static" ,flags)))))))
|
||||
|
||||
(define-public %mes-minimal-stripped
|
||||
;; A minimal Mes without documentation dependencies, for bootstrap.
|
||||
;; ... next remove store references.
|
||||
(define %mescc-tools-static-stripped
|
||||
;; A statically linked Mescc Tools with store references removed, for
|
||||
;; bootstrap.
|
||||
(package
|
||||
(inherit %mescc-tools-static)
|
||||
(name (string-append (package-name %mescc-tools-static) "-stripped"))
|
||||
(build-system trivial-build-system)
|
||||
(arguments
|
||||
`(#:modules ((guix build utils))
|
||||
#:builder
|
||||
(begin
|
||||
(use-modules (guix build utils))
|
||||
(let* ((in (assoc-ref %build-inputs "mescc-tools"))
|
||||
(out (assoc-ref %outputs "out"))
|
||||
(bin (string-append out "/bin")))
|
||||
(mkdir-p bin)
|
||||
(for-each (lambda (file)
|
||||
(let ((target (string-append bin "/" file)))
|
||||
(format #t "copying `~a'...~%" file)
|
||||
(copy-file (string-append in "/bin/" file)
|
||||
target)
|
||||
(remove-store-references target)))
|
||||
'( "M1" "blood-elf" "hex2"))
|
||||
#t))))
|
||||
(inputs `(("mescc-tools" ,%mescc-tools-static)))))
|
||||
|
||||
;; (define-public %mes-minimal-stripped
|
||||
;; ;; A minimal Mes without documentation dependencies, for bootstrap.
|
||||
;; (let ((triplet "i686-unknown-linux-gnu"))
|
||||
;; (package
|
||||
;; (inherit mes)
|
||||
;; (name "mes-minimal-stripped")
|
||||
;; (native-inputs
|
||||
;; `(("guile" ,guile-2.2)))
|
||||
;; (arguments
|
||||
;; `(#:system "i686-linux"
|
||||
;; #:strip-binaries? #f
|
||||
;; #:configure-flags '("--mes")
|
||||
;; #:phases
|
||||
;; (modify-phases %standard-phases
|
||||
;; (delete 'patch-shebangs)
|
||||
;; (add-after 'install 'strip-install
|
||||
;; (lambda _
|
||||
;; (let* ((out (assoc-ref %outputs "out"))
|
||||
;; (share (string-append out "/share")))
|
||||
;; (delete-file-recursively (string-append out "/lib/guile"))
|
||||
;; (delete-file-recursively (string-append share "/guile"))
|
||||
;; (delete-file-recursively (string-append share "/mes/scaffold"))
|
||||
|
||||
;; (for-each delete-file
|
||||
;; (find-files
|
||||
;; (string-append share "/mes/lib") "\\.(h|c)"))
|
||||
|
||||
;; (for-each (lambda (dir)
|
||||
;; (for-each remove-store-references
|
||||
;; (find-files (string-append out "/" dir)
|
||||
;; ".*")))
|
||||
;; '("bin" "share/mes")))))))))))
|
||||
|
||||
;; Two packages: first build static, bare minimum content.
|
||||
(define-public %mes-minimal
|
||||
;; A minimal Mes without documentation.
|
||||
(let ((triplet "i686-unknown-linux-gnu"))
|
||||
(package
|
||||
(inherit mes)
|
||||
(name "mes-minimal-stripped")
|
||||
(name "mes-minimal")
|
||||
(native-inputs
|
||||
`(("guile" ,guile-2.2)))
|
||||
(arguments
|
||||
|
@ -610,6 +704,7 @@ (define-public %mes-minimal-stripped
|
|||
#:configure-flags '("--mes")
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(delete 'patch-shebangs)
|
||||
(add-after 'install 'strip-install
|
||||
(lambda _
|
||||
(let* ((out (assoc-ref %outputs "out"))
|
||||
|
@ -617,10 +712,35 @@ (define-public %mes-minimal-stripped
|
|||
(delete-file-recursively (string-append out "/lib/guile"))
|
||||
(delete-file-recursively (string-append share "/guile"))
|
||||
(delete-file-recursively (string-append share "/mes/scaffold"))
|
||||
(for-each
|
||||
delete-file
|
||||
(find-files (string-append share "/mes/lib")
|
||||
"\\.(h|c)")))))))))))
|
||||
|
||||
(for-each delete-file
|
||||
(find-files
|
||||
(string-append share "/mes/lib")
|
||||
"\\.(h|c)")))))))))))
|
||||
|
||||
;; next remove store references.
|
||||
(define %mes-minimal-stripped
|
||||
;; A minimal Mes with store references removed, for bootstrap.
|
||||
(package
|
||||
(inherit %mes-minimal)
|
||||
(name (string-append (package-name %mes-minimal) "-stripped"))
|
||||
(build-system trivial-build-system)
|
||||
(arguments
|
||||
`(#:modules ((guix build utils))
|
||||
#:builder
|
||||
(begin
|
||||
(use-modules (guix build utils))
|
||||
(let ((in (assoc-ref %build-inputs "mes"))
|
||||
(out (assoc-ref %outputs "out")))
|
||||
|
||||
(copy-recursively in out)
|
||||
(for-each (lambda (dir)
|
||||
(for-each remove-store-references
|
||||
(find-files (string-append out "/" dir)
|
||||
".*")))
|
||||
'("bin" "share/mes"))
|
||||
#t))))
|
||||
(inputs `(("mes" ,%mes-minimal)))))
|
||||
|
||||
(define %guile-static
|
||||
;; A statically-linked Guile that is relocatable--i.e., it can search
|
||||
|
@ -680,6 +800,10 @@ (define %guile-static
|
|||
((#:tests? _ #f)
|
||||
;; There are uses of `dynamic-link' in
|
||||
;; {foreign,coverage}.test that don't fly here.
|
||||
#f)
|
||||
((#:parallel-build? _ #f)
|
||||
;; Work around the fact that the Guile build system is
|
||||
;; not deterministic when parallel-build is enabled.
|
||||
#f))))))
|
||||
(package-with-relocatable-glibc (static-package guile))))
|
||||
|
||||
|
@ -790,11 +914,11 @@ (define %guile-bootstrap-tarball
|
|||
(tarball-package %guile-static-stripped))
|
||||
|
||||
(define %mescc-tools-bootstrap-tarball
|
||||
;; A tarball with MesCC binary seed.
|
||||
(tarball-package %mescc-tools-static))
|
||||
;; A tarball with statically-linked MesCC binary seed.
|
||||
(tarball-package %mescc-tools-static-stripped))
|
||||
|
||||
(define %mes-bootstrap-tarball
|
||||
;; A tarball with Mes ASCII Seed and binary Mes C Library.
|
||||
;; A tarball with Mes binary seed.
|
||||
(tarball-package %mes-minimal-stripped))
|
||||
|
||||
(define %bootstrap-tarballs
|
||||
|
|
|
@ -246,7 +246,7 @@ (define-public qhull
|
|||
(define-public python-cvxopt
|
||||
(package
|
||||
(name "python-cvxopt")
|
||||
(version "1.2.1")
|
||||
(version "1.2.3")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
|
@ -255,7 +255,7 @@ (define-public python-cvxopt
|
|||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"05mnjil9palaa48xafdfh4f5pr4z7aqjr995rwl08qfyxs8y0crf"))))
|
||||
"1kiy2m62xgs2d5id6dnnwy4vap85cd70p7pgkb9nh23qf9xnak7b"))))
|
||||
(build-system python-build-system)
|
||||
(arguments
|
||||
`(#:phases
|
||||
|
|
|
@ -36,15 +36,15 @@ (define-public (make-mingw-w64 machine)
|
|||
(let ((triplet (string-append machine "-" "w64-mingw32")))
|
||||
(package
|
||||
(name (string-append "mingw-w64" "-" machine))
|
||||
(version "5.0.4")
|
||||
(version "6.0.0")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
"https://sourceforge.net/projects/mingw-w64/files/mingw-w64/"
|
||||
"mingw-w64-release/mingw-w64-v" version ".tar.bz2"))
|
||||
(sha256
|
||||
(base32 "00zq3z1hbzd5yzmskskjg79xrzwsqx7ihyprfaxy4hb897vf29sm"))
|
||||
(patches (search-patches "mingw-w64-5.0rc2-gcc-4.9.3.patch"))))
|
||||
(base32 "1w28mynv500y03h92nh87rgw3fnp82qwnjbxrrzqkmr63q812pl0"))
|
||||
(patches (search-patches "mingw-w64-6.0.0-gcc.patch"))))
|
||||
(native-inputs `(("xgcc-core" ,(cross-gcc triplet))
|
||||
("xbinutils" ,(cross-binutils triplet))))
|
||||
(build-system gnu-build-system)
|
||||
|
|
|
@ -30,13 +30,13 @@ (define-module (gnu packages nano)
|
|||
(define-public nano
|
||||
(package
|
||||
(name "nano")
|
||||
(version "4.3")
|
||||
(version "4.4")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "mirror://gnu/nano/nano-" version ".tar.xz"))
|
||||
(sha256
|
||||
(base32 "108dzj6azqmini9bvgl26r0q1y59s3nnrw75hfzv91bs50davlq0"))))
|
||||
(base32 "1iw2ypq34g1gfqyhgka2fz5yj5vrlz85q6zk7amgyj286ph25wia"))))
|
||||
(build-system gnu-build-system)
|
||||
(inputs
|
||||
`(("gettext" ,gettext-minimal)
|
||||
|
|
|
@ -465,32 +465,17 @@ (define-public nix
|
|||
(define-public stow
|
||||
(package
|
||||
(name "stow")
|
||||
(version "2.3.0")
|
||||
(version "2.3.1")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "mirror://gnu/stow/stow-"
|
||||
version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0h8qr2rxsrkg6d8jxjk68r23jgn1dxdxyp4bnzzinpa8sjhfl905"))))
|
||||
"0jrxy12ywn7smdzdnvwzjw77l6knx6jkj2rckgykg1dpf6bdkm89"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
'(#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-after 'install 'wrap-stow
|
||||
(lambda* (#:key inputs outputs #:allow-other-keys)
|
||||
(let ((out (assoc-ref outputs "out")))
|
||||
(wrap-program (string-append out "/bin/stow")
|
||||
`("PERL5LIB" ":" prefix
|
||||
,(map (lambda (i) (string-append (assoc-ref inputs i)
|
||||
"/lib/perl5/site_perl"))
|
||||
'("perl-clone-choose" "perl-clone" "perl-hash-merge"))))
|
||||
#t))))))
|
||||
(inputs
|
||||
`(("perl" ,perl)
|
||||
("perl-clone" ,perl-clone)
|
||||
("perl-clone-choose" ,perl-clone-choose)
|
||||
("perl-hash-merge" ,perl-hash-merge)))
|
||||
`(("perl" ,perl)))
|
||||
(native-inputs
|
||||
`(("perl-test-simple" ,perl-test-simple)
|
||||
("perl-test-output" ,perl-test-output)
|
||||
|
@ -559,75 +544,83 @@ (define-public rpm
|
|||
(license license:gpl2+)))
|
||||
|
||||
(define-public diffoscope
|
||||
(package
|
||||
(name "diffoscope")
|
||||
(version "120")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://salsa.debian.org/reproducible-builds/diffoscope.git")
|
||||
(commit "120")))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"07z9yclvfkw4326739l2ywzzihax5vdijiaqqpfix9rz1rb923aa"))))
|
||||
(build-system python-build-system)
|
||||
(arguments
|
||||
`(#:phases (modify-phases %standard-phases
|
||||
;; setup.py mistakenly requires python-magic from PyPi, even
|
||||
;; though the Python bindings of `file` are sufficient.
|
||||
;; https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=815844
|
||||
(add-after 'unpack 'dependency-on-python-magic
|
||||
(lambda _
|
||||
(substitute* "setup.py"
|
||||
(("'python-magic',") ""))))
|
||||
;; This test is broken because our `file` package has a
|
||||
;; bug in berkeley-db file type detection.
|
||||
(add-after 'unpack 'remove-berkeley-test
|
||||
(lambda _
|
||||
(delete-file "tests/comparators/test_berkeley_db.py")
|
||||
#t))
|
||||
(add-after 'unpack 'embed-tool-references
|
||||
(lambda* (#:key inputs #:allow-other-keys)
|
||||
(substitute* "diffoscope/comparators/utils/compare.py"
|
||||
(("\\['xxd',")
|
||||
(string-append "['" (which "xxd") "',")))
|
||||
(substitute* "diffoscope/comparators/elf.py"
|
||||
(("@tool_required\\('readelf'\\)") "")
|
||||
(("get_tool_name\\('readelf'\\)")
|
||||
(string-append "'" (which "readelf") "'")))
|
||||
(substitute* "diffoscope/comparators/directory.py"
|
||||
(("@tool_required\\('stat'\\)") "")
|
||||
(("@tool_required\\('getfacl'\\)") "")
|
||||
(("\\['stat',")
|
||||
(string-append "['" (which "stat") "',"))
|
||||
(("\\['getfacl',")
|
||||
(string-append "['" (which "getfacl") "',")))
|
||||
#t))
|
||||
(add-before 'check 'delete-failing-test
|
||||
(lambda _
|
||||
;; this requires /sbin to be on the path
|
||||
(delete-file "tests/test_tools.py")
|
||||
#t)))))
|
||||
(inputs `(("rpm" ,rpm) ;for rpm-python
|
||||
("python-file" ,python-file)
|
||||
("python-debian" ,python-debian)
|
||||
("python-libarchive-c" ,python-libarchive-c)
|
||||
("python-tlsh" ,python-tlsh)
|
||||
("acl" ,acl) ;for getfacl
|
||||
("colordiff" ,colordiff)
|
||||
("xxd" ,xxd)))
|
||||
;; Below are modules used for tests.
|
||||
(native-inputs `(("python-pytest" ,python-pytest)
|
||||
("python-chardet" ,python-chardet)))
|
||||
(home-page "https://diffoscope.org/")
|
||||
(synopsis "Compare files, archives, and directories in depth")
|
||||
(description
|
||||
"Diffoscope tries to get to the bottom of what makes files or directories
|
||||
(let ((version "121"))
|
||||
(package
|
||||
(name "diffoscope")
|
||||
(version version)
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://salsa.debian.org/reproducible-builds/diffoscope.git")
|
||||
(commit version)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"1bw7s8qs1vnr93vhifl6pj6h6w6r6nrpc5anzhh9wx2gcaipkb3m"))))
|
||||
(build-system python-build-system)
|
||||
(arguments
|
||||
`(#:phases (modify-phases %standard-phases
|
||||
;; setup.py mistakenly requires python-magic from PyPi, even
|
||||
;; though the Python bindings of `file` are sufficient.
|
||||
;; https://bugs.debian.org/cgi-bin/bugreport.cgi?bug=815844
|
||||
(add-after 'unpack 'dependency-on-python-magic
|
||||
(lambda _
|
||||
(substitute* "setup.py"
|
||||
(("'python-magic',") ""))))
|
||||
;; This test is broken because our `file` package has a
|
||||
;; bug in berkeley-db file type detection.
|
||||
(add-after 'unpack 'remove-berkeley-test
|
||||
(lambda _
|
||||
(delete-file "tests/comparators/test_berkeley_db.py")
|
||||
#t))
|
||||
(add-after 'unpack 'embed-tool-references
|
||||
(lambda* (#:key inputs #:allow-other-keys)
|
||||
(substitute* "diffoscope/comparators/utils/compare.py"
|
||||
(("\\['xxd',")
|
||||
(string-append "['" (which "xxd") "',")))
|
||||
(substitute* "diffoscope/comparators/elf.py"
|
||||
(("@tool_required\\('readelf'\\)") "")
|
||||
(("get_tool_name\\('readelf'\\)")
|
||||
(string-append "'" (which "readelf") "'")))
|
||||
(substitute* "diffoscope/comparators/directory.py"
|
||||
(("@tool_required\\('stat'\\)") "")
|
||||
(("@tool_required\\('getfacl'\\)") "")
|
||||
(("\\['stat',")
|
||||
(string-append "['" (which "stat") "',"))
|
||||
(("\\['getfacl',")
|
||||
(string-append "['" (which "getfacl") "',")))
|
||||
#t))
|
||||
(add-before 'check 'writable-test-data
|
||||
(lambda _
|
||||
;; tests/comparators/test_elf.py needs write access to
|
||||
;; test data
|
||||
(make-file-writable
|
||||
"tests/data/ignore_readelf_errors_expected_diff")
|
||||
#t))
|
||||
(add-before 'check 'delete-failing-test
|
||||
(lambda _
|
||||
;; this requires /sbin to be on the path
|
||||
(delete-file "tests/test_tools.py")
|
||||
#t)))))
|
||||
(inputs `(("rpm" ,rpm) ;for rpm-python
|
||||
("python-file" ,python-file)
|
||||
("python-debian" ,python-debian)
|
||||
("python-libarchive-c" ,python-libarchive-c)
|
||||
("python-tlsh" ,python-tlsh)
|
||||
("acl" ,acl) ;for getfacl
|
||||
("colordiff" ,colordiff)
|
||||
("xxd" ,xxd)))
|
||||
;; Below are modules used for tests.
|
||||
(native-inputs `(("python-pytest" ,python-pytest)
|
||||
("python-chardet" ,python-chardet)))
|
||||
(home-page "https://diffoscope.org/")
|
||||
(synopsis "Compare files, archives, and directories in depth")
|
||||
(description
|
||||
"Diffoscope tries to get to the bottom of what makes files or directories
|
||||
different. It recursively unpacks archives of many kinds and transforms
|
||||
various binary formats into more human readable forms to compare them. It can
|
||||
compare two tarballs, ISO images, or PDFs just as easily.")
|
||||
(license license:gpl3+)))
|
||||
(license license:gpl3+))))
|
||||
|
||||
(define-public trydiffoscope
|
||||
(package
|
||||
|
|
|
@ -52,14 +52,14 @@ (define-module (gnu packages parallel)
|
|||
(define-public parallel
|
||||
(package
|
||||
(name "parallel")
|
||||
(version "20190522")
|
||||
(version "20190822")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "mirror://gnu/parallel/parallel-"
|
||||
version ".tar.bz2"))
|
||||
(sha256
|
||||
(base32 "0y3z9wybs3gak3zwgsby8r5gg6dwd3qlrkch0q4fn0i1j1jhmijv"))))
|
||||
(base32 "1mi3a18fdwcx50jg51pw1ks1fkmc2slyinff0yb3xhihi2szbskp"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
`(#:phases
|
||||
|
|
|
@ -236,28 +236,40 @@ (define-public pwsafe
|
|||
(define-public shroud
|
||||
(package
|
||||
(name "shroud")
|
||||
(version "0.1.1")
|
||||
(version "0.1.2")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://files.dthompson.us/shroud/shroud-"
|
||||
version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1y43yhgy2zbrk5bqj3qyx9rkcz2bma9sinlrg7dip3jqms9gq4lr"))))
|
||||
"1l2shrhvcwfzkar9qiwb75nhcqmx25iz55lzmz0c187nbjhqzi9p"))))
|
||||
(build-system gnu-build-system)
|
||||
(native-inputs
|
||||
`(("pkg-config" ,pkg-config)))
|
||||
(arguments
|
||||
'(#:phases
|
||||
`(#:modules ((guix build gnu-build-system)
|
||||
(guix build utils)
|
||||
(ice-9 popen)
|
||||
(ice-9 rdelim))
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-after 'install 'wrap-shroud
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
(lambda* (#:key inputs outputs #:allow-other-keys)
|
||||
(let* ((out (assoc-ref outputs "out"))
|
||||
(ccachedir (string-append out "/lib/guile/2.0/ccache"))
|
||||
(guile (assoc-ref inputs "guile"))
|
||||
(effective (read-line
|
||||
(open-pipe* OPEN_READ
|
||||
(string-append guile "/bin/guile")
|
||||
"-c" "(display (effective-version))")))
|
||||
(ccachedir (string-append out
|
||||
"/lib/guile/" effective "/site-ccache"))
|
||||
(prog (string-append out "/bin/shroud")))
|
||||
(wrap-program prog
|
||||
`("GUILE_LOAD_COMPILED_PATH" ":" prefix (,ccachedir)))
|
||||
#t))))))
|
||||
(inputs
|
||||
`(("guile" ,guile-2.0)
|
||||
`(("guile" ,guile-2.2)
|
||||
("gnupg" ,gnupg)
|
||||
("xclip" ,xclip)))
|
||||
(synopsis "GnuPG-based secret manager")
|
||||
|
|
30
gnu/packages/patches/bash-4.4-linux-pgrp-pipe.patch
Normal file
30
gnu/packages/patches/bash-4.4-linux-pgrp-pipe.patch
Normal file
|
@ -0,0 +1,30 @@
|
|||
Unconditionally enable PGRP_PIPE on Linux (the kernel), regardless of
|
||||
the kernel version in use on the build machine.
|
||||
|
||||
--- configure.ac.orig 1969-12-31 19:00:00.000000000 -0500
|
||||
+++ configure.ac 2019-08-11 22:28:26.038841961 -0400
|
||||
@@ -1092,9 +1092,7 @@
|
||||
solaris2*) LOCAL_CFLAGS=-DSOLARIS ;;
|
||||
lynxos*) LOCAL_CFLAGS=-DRECYCLES_PIDS ;;
|
||||
linux*) LOCAL_LDFLAGS=-rdynamic # allow dynamic loading
|
||||
- case "`uname -r`" in
|
||||
- 2.[[456789]]*|[[34]]*) AC_DEFINE(PGRP_PIPE) ;;
|
||||
- esac ;;
|
||||
+ AC_DEFINE(PGRP_PIPE) ;;
|
||||
*qnx6*) LOCAL_CFLAGS="-Dqnx -Dqnx6" LOCAL_LIBS="-lncurses" ;;
|
||||
*qnx*) LOCAL_CFLAGS="-Dqnx -F -3s" LOCAL_LDFLAGS="-3s" LOCAL_LIBS="-lunix -lncurses" ;;
|
||||
powerux*) LOCAL_LIBS="-lgen" ;;
|
||||
--- configure.orig 1969-12-31 19:00:00.000000000 -0500
|
||||
+++ configure 2019-08-11 22:28:10.166763255 -0400
|
||||
@@ -16064,10 +16064,7 @@
|
||||
solaris2*) LOCAL_CFLAGS=-DSOLARIS ;;
|
||||
lynxos*) LOCAL_CFLAGS=-DRECYCLES_PIDS ;;
|
||||
linux*) LOCAL_LDFLAGS=-rdynamic # allow dynamic loading
|
||||
- case "`uname -r`" in
|
||||
- 2.[456789]*|[34]*) $as_echo "#define PGRP_PIPE 1" >>confdefs.h
|
||||
- ;;
|
||||
- esac ;;
|
||||
+ $as_echo "#define PGRP_PIPE 1" >>confdefs.h ;;
|
||||
*qnx6*) LOCAL_CFLAGS="-Dqnx -Dqnx6" LOCAL_LIBS="-lncurses" ;;
|
||||
*qnx*) LOCAL_CFLAGS="-Dqnx -F -3s" LOCAL_LDFLAGS="-3s" LOCAL_LIBS="-lunix -lncurses" ;;
|
||||
powerux*) LOCAL_LIBS="-lgen" ;;
|
|
@ -28,7 +28,7 @@ index 2bced6766..208e583ba 100644
|
|||
}
|
||||
#endif // HAVE_EEZE || __FreeBSD_kernel__
|
||||
diff --git a/src/bin/e_fm/e_fm_main_eeze.c b/src/bin/e_fm/e_fm_main_eeze.c
|
||||
index b7d9e3eba..d8a9eb82c 100644
|
||||
index 0fcffa249..c1921121d 100644
|
||||
--- a/src/bin/e_fm/e_fm_main_eeze.c
|
||||
+++ b/src/bin/e_fm/e_fm_main_eeze.c
|
||||
@@ -318,7 +318,7 @@ _e_fm_main_eeze_volume_eject(E_Volume *v)
|
||||
|
@ -59,10 +59,10 @@ index b7d9e3eba..d8a9eb82c 100644
|
|||
}
|
||||
v->guard = ecore_timer_loop_add(E_FM_MOUNT_TIMEOUT, (Ecore_Task_Cb)_e_fm_main_eeze_vol_mount_timeout, v);
|
||||
diff --git a/src/bin/e_sys.c b/src/bin/e_sys.c
|
||||
index 6781a9b5a..8cd140f1b 100644
|
||||
index 671fbcd9a..90ee04cf1 100644
|
||||
--- a/src/bin/e_sys.c
|
||||
+++ b/src/bin/e_sys.c
|
||||
@@ -653,20 +653,16 @@ _e_sys_cb_timer(void *data EINA_UNUSED)
|
||||
@@ -702,20 +702,16 @@ _e_sys_cb_timer(void *data EINA_UNUSED)
|
||||
|
||||
e_init_status_set(_("Checking System Permissions"));
|
||||
snprintf(buf, sizeof(buf),
|
||||
|
@ -87,9 +87,9 @@ index 6781a9b5a..8cd140f1b 100644
|
|||
_e_sys_hibernate_check_exe = ecore_exe_run(buf, NULL);
|
||||
return ECORE_CALLBACK_CANCEL;
|
||||
}
|
||||
@@ -1079,8 +1075,7 @@ _e_sys_action_do(E_Sys_Action a, char *param EINA_UNUSED, Eina_Bool raw)
|
||||
/* shutdown -h now */
|
||||
@@ -1134,8 +1130,7 @@ _e_sys_action_do(E_Sys_Action a, char *param EINA_UNUSED, Eina_Bool raw)
|
||||
if (e_util_immortal_check()) return 0;
|
||||
e_fm2_die();
|
||||
snprintf(buf, sizeof(buf),
|
||||
- "%s/enlightenment/utils/enlightenment_sys halt",
|
||||
- e_prefix_lib_get());
|
||||
|
@ -97,9 +97,9 @@ index 6781a9b5a..8cd140f1b 100644
|
|||
if (_e_sys_exe)
|
||||
{
|
||||
if ((ecore_time_get() - _e_sys_begin_time) > 2.0)
|
||||
@@ -1114,8 +1109,7 @@ _e_sys_action_do(E_Sys_Action a, char *param EINA_UNUSED, Eina_Bool raw)
|
||||
/* shutdown -r now */
|
||||
@@ -1170,8 +1165,7 @@ _e_sys_action_do(E_Sys_Action a, char *param EINA_UNUSED, Eina_Bool raw)
|
||||
if (e_util_immortal_check()) return 0;
|
||||
e_fm2_die();
|
||||
snprintf(buf, sizeof(buf),
|
||||
- "%s/enlightenment/utils/enlightenment_sys reboot",
|
||||
- e_prefix_lib_get());
|
||||
|
@ -107,7 +107,7 @@ index 6781a9b5a..8cd140f1b 100644
|
|||
if (_e_sys_exe)
|
||||
{
|
||||
if ((ecore_time_get() - _e_sys_begin_time) > 2.0)
|
||||
@@ -1148,8 +1142,7 @@ _e_sys_action_do(E_Sys_Action a, char *param EINA_UNUSED, Eina_Bool raw)
|
||||
@@ -1204,8 +1198,7 @@ _e_sys_action_do(E_Sys_Action a, char *param EINA_UNUSED, Eina_Bool raw)
|
||||
case E_SYS_SUSPEND:
|
||||
/* /etc/acpi/sleep.sh force */
|
||||
snprintf(buf, sizeof(buf),
|
||||
|
@ -117,7 +117,7 @@ index 6781a9b5a..8cd140f1b 100644
|
|||
if (_e_sys_exe)
|
||||
{
|
||||
if ((ecore_time_get() - _e_sys_begin_time) > 2.0)
|
||||
@@ -1208,8 +1201,7 @@ _e_sys_action_do(E_Sys_Action a, char *param EINA_UNUSED, Eina_Bool raw)
|
||||
@@ -1265,8 +1258,7 @@ _e_sys_action_do(E_Sys_Action a, char *param EINA_UNUSED, Eina_Bool raw)
|
||||
case E_SYS_HIBERNATE:
|
||||
/* /etc/acpi/hibernate.sh force */
|
||||
snprintf(buf, sizeof(buf),
|
||||
|
@ -152,11 +152,26 @@ index 4b5148634..47d34b07f 100644
|
|||
autolock_exe = ecore_exe_run(eina_strbuf_string_get(buf), NULL);
|
||||
eina_strbuf_free(buf);
|
||||
|
||||
diff --git a/src/modules/bluez5/e_mod_main.c b/src/modules/bluez5/e_mod_main.c
|
||||
index a581c466c..095d8f360 100644
|
||||
--- a/src/modules/bluez5/e_mod_main.c
|
||||
+++ b/src/modules/bluez5/e_mod_main.c
|
||||
@@ -321,8 +321,8 @@ ebluez5_rfkill_unblock(const char *name)
|
||||
if (buf)
|
||||
{
|
||||
eina_strbuf_append_printf
|
||||
- (buf, "%s/enlightenment/utils/enlightenment_sys rfkill-unblock %s",
|
||||
- e_prefix_lib_get(), name);
|
||||
+ (buf, "/run/setuid-programs/enlightenment_sys rfkill-unblock %s",
|
||||
+ name);
|
||||
_rfkill_exe = ecore_exe_run(eina_strbuf_string_get(buf), NULL);
|
||||
eina_strbuf_free(buf);
|
||||
}
|
||||
diff --git a/src/modules/cpufreq/e_mod_main.c b/src/modules/cpufreq/e_mod_main.c
|
||||
index f4ba259b6..ae228bae3 100644
|
||||
index b66b365d8..bab0802cc 100644
|
||||
--- a/src/modules/cpufreq/e_mod_main.c
|
||||
+++ b/src/modules/cpufreq/e_mod_main.c
|
||||
@@ -1450,8 +1450,7 @@ e_modapi_init(E_Module *m)
|
||||
@@ -1452,8 +1452,7 @@ e_modapi_init(E_Module *m)
|
||||
}
|
||||
E_CONFIG_LIMIT(cpufreq_config->poll_interval, 1, 1024);
|
||||
|
||||
|
@ -166,3 +181,40 @@ index f4ba259b6..ae228bae3 100644
|
|||
cpufreq_config->set_exe_path = strdup(buf);
|
||||
|
||||
if (stat(buf, &st) < 0)
|
||||
diff --git a/src/modules/sysinfo/cpuclock/cpuclock.c b/src/modules/sysinfo/cpuclock/cpuclock.c
|
||||
index 938916e53..00d5067d0 100644
|
||||
--- a/src/modules/sysinfo/cpuclock/cpuclock.c
|
||||
+++ b/src/modules/sysinfo/cpuclock/cpuclock.c
|
||||
@@ -80,8 +80,7 @@ _cpuclock_set_governor(const char *governor)
|
||||
char buf[4096 + 100], exe[4096];
|
||||
struct stat st;
|
||||
|
||||
- snprintf(exe, 4096, "%s/%s/cpuclock_sysfs",
|
||||
- e_module_dir_get(sysinfo_config->module), MODULE_ARCH);
|
||||
+ snprintf(exe, 4096, "/run/setuid-programs/cpuclock_sysfs");
|
||||
if (stat(exe, &st) < 0) return;
|
||||
|
||||
snprintf(buf, sizeof(buf),
|
||||
@@ -108,8 +107,7 @@ _cpuclock_set_frequency(int frequency)
|
||||
if (system(buf) != 0)
|
||||
ERR("Error code from trying to run \"%s\"", buf);
|
||||
#else
|
||||
- snprintf(exe, 4096, "%s/%s/cpuclock_sysfs",
|
||||
- e_module_dir_get(sysinfo_config->module), MODULE_ARCH);
|
||||
+ snprintf(exe, 4096, "/run/setuid-programs/cpuclock_sysfs");
|
||||
if (stat(exe, &st) < 0) return;
|
||||
snprintf(buf, sizeof(buf),
|
||||
"%s %s %i", exe, "frequency", frequency);
|
||||
@@ -127,8 +125,7 @@ _cpuclock_set_pstate(int min, int max, int turbo)
|
||||
char buf[4096 + 100], exe[4096];
|
||||
struct stat st;
|
||||
|
||||
- snprintf(exe, 4096, "%s/%s/cpuclock_sysfs",
|
||||
- e_module_dir_get(sysinfo_config->module), MODULE_ARCH);
|
||||
+ snprintf(exe, 4096, "/run/setuid-programs/cpuclock_sysfs");
|
||||
if (stat(exe, &st) < 0) return;
|
||||
snprintf(buf, sizeof(buf),
|
||||
"%s %s %i %i %i", exe, "pstate", min, max, turbo);
|
||||
--
|
||||
2.23.0
|
||||
|
||||
|
|
124
gnu/packages/patches/libextractor-exiv2.patch
Normal file
124
gnu/packages/patches/libextractor-exiv2.patch
Normal file
|
@ -0,0 +1,124 @@
|
|||
This patch allows us to build libextractor against exiv2 0.27.x.
|
||||
Adapted from this upstream commit:
|
||||
|
||||
commit 1ecee9a47717e36cb8a3925d011d1a6de11d631c
|
||||
Author: Christian Grothoff <christian@grothoff.org>
|
||||
Date: Mon Jul 29 17:58:18 2019 +0200
|
||||
|
||||
importing patch from Gentoo/AS to address exiv2 build issue (#5820)
|
||||
|
||||
diff --git a/src/plugins/exiv2_extractor.cc b/src/plugins/exiv2_extractor.cc
|
||||
index 8741d40..ef402a8 100644
|
||||
--- a/src/plugins/exiv2_extractor.cc
|
||||
+++ b/src/plugins/exiv2_extractor.cc
|
||||
@@ -27,10 +27,7 @@
|
||||
#include <cassert>
|
||||
#include <cstring>
|
||||
#include <math.h>
|
||||
-#include <exiv2/exif.hpp>
|
||||
-#include <exiv2/error.hpp>
|
||||
-#include <exiv2/image.hpp>
|
||||
-#include <exiv2/futils.hpp>
|
||||
+#include <exiv2/exiv2.hpp>
|
||||
|
||||
/**
|
||||
* Enable debugging to get error messages.
|
||||
@@ -180,7 +177,7 @@ public:
|
||||
*
|
||||
* @return -1 on error
|
||||
*/
|
||||
-#if EXIV2_VERSION >= EXIV2_MAKE_VERSION(0,26,0)
|
||||
+#if EXIV2_TEST_VERSION(0,26,0)
|
||||
virtual size_t size (void) const;
|
||||
#else
|
||||
virtual long int size (void) const;
|
||||
@@ -316,7 +313,11 @@ ExtractorIO::getb ()
|
||||
const unsigned char *r;
|
||||
|
||||
if (1 != ec->read (ec->cls, &data, 1))
|
||||
+#if EXIV2_TEST_VERSION(0,27,0)
|
||||
+ throw Exiv2::BasicError<char> (Exiv2::kerDecodeLangAltQualifierFailed);
|
||||
+#else
|
||||
throw Exiv2::BasicError<char> (42 /* error code */);
|
||||
+#endif
|
||||
r = (const unsigned char *) data;
|
||||
return *r;
|
||||
}
|
||||
@@ -371,7 +372,11 @@ ExtractorIO::putb (Exiv2::byte data)
|
||||
void
|
||||
ExtractorIO::transfer (Exiv2::BasicIo& src)
|
||||
{
|
||||
+#if EXIV2_TEST_VERSION(0,27,0)
|
||||
+ throw Exiv2::BasicError<char> (Exiv2::kerDecodeLangAltQualifierFailed);
|
||||
+#else
|
||||
throw Exiv2::BasicError<char> (42 /* error code */);
|
||||
+#endif
|
||||
}
|
||||
|
||||
|
||||
@@ -416,7 +421,11 @@ ExtractorIO::seek (long offset,
|
||||
Exiv2::byte *
|
||||
ExtractorIO::mmap (bool isWritable)
|
||||
{
|
||||
+#if EXIV2_TEST_VERSION(0,27,0)
|
||||
+ throw Exiv2::BasicError<char> (Exiv2::kerDecodeLangAltQualifierFailed);
|
||||
+#else
|
||||
throw Exiv2::BasicError<char> (42 /* error code */);
|
||||
+#endif
|
||||
}
|
||||
|
||||
|
||||
@@ -449,7 +458,7 @@ ExtractorIO::tell (void) const
|
||||
*
|
||||
* @return -1 on error
|
||||
*/
|
||||
-#if EXIV2_VERSION >= EXIV2_MAKE_VERSION(0,26,0)
|
||||
+#if EXIV2_TEST_VERSION(0,26,0)
|
||||
size_t
|
||||
#else
|
||||
long int
|
||||
@@ -504,7 +513,11 @@ ExtractorIO::eof () const
|
||||
std::string
|
||||
ExtractorIO::path () const
|
||||
{
|
||||
+#if EXIV2_TEST_VERSION(0,27,0)
|
||||
+ throw Exiv2::BasicError<char> (Exiv2::kerDecodeLangAltQualifierFailed);
|
||||
+#else
|
||||
throw Exiv2::BasicError<char> (42 /* error code */);
|
||||
+#endif
|
||||
}
|
||||
|
||||
|
||||
@@ -517,7 +530,11 @@ ExtractorIO::path () const
|
||||
std::wstring
|
||||
ExtractorIO::wpath () const
|
||||
{
|
||||
+#if EXIV2_TEST_VERSION(0,27,0)
|
||||
+ throw Exiv2::BasicError<char> (Exiv2::kerDecodeLangAltQualifierFailed);
|
||||
+#else
|
||||
throw Exiv2::BasicError<char> (42 /* error code */);
|
||||
+#endif
|
||||
}
|
||||
#endif
|
||||
|
||||
@@ -531,7 +548,11 @@ Exiv2::BasicIo::AutoPtr
|
||||
ExtractorIO::temporary () const
|
||||
{
|
||||
fprintf (stderr, "throwing temporary error\n");
|
||||
+#if EXIV2_TEST_VERSION(0,27,0)
|
||||
+ throw Exiv2::BasicError<char> (Exiv2::kerDecodeLangAltQualifierFailed);
|
||||
+#else
|
||||
throw Exiv2::BasicError<char> (42 /* error code */);
|
||||
+#endif
|
||||
}
|
||||
|
||||
|
||||
@@ -697,7 +718,7 @@ EXTRACTOR_exiv2_extract_method (struct EXTRACTOR_ExtractContext *ec)
|
||||
{
|
||||
try
|
||||
{
|
||||
-#if EXIV2_MAKE_VERSION(0,23,0) <= EXIV2_VERSION
|
||||
+#if !EXIV2_TEST_VERSION(0,24,0)
|
||||
Exiv2::LogMsg::setLevel (Exiv2::LogMsg::mute);
|
||||
#endif
|
||||
std::auto_ptr<Exiv2::BasicIo> eio(new ExtractorIO (ec));
|
|
@ -1,218 +0,0 @@
|
|||
This patch includes
|
||||
|
||||
* mingw-w64-headers/include/winnt.h: compile fixes for1 gcc-4.9.3
|
||||
* mingw-w64-headers/crt/math.h: Likewise
|
||||
* mingw-w64-headers/crt/float.h (FLT_EPSILON,DBL_EPSILON,LDBL_EPSILON): Add
|
||||
symbols.
|
||||
* mingw-w64-headers/crt/stat.h (S_ISLNK,S_ISSOCK,S_ISUID,S_ISGID,S_ISLINK):
|
||||
Add symbols.
|
||||
(lstat): Add function.
|
||||
* mingw-w64-headers/crt/_mingw_stat64.h: Likewise
|
||||
* mingw-w64-headers/crt/stdlib.h (realpath): Add function.
|
||||
|
||||
Needed for building with gcc-4.9.3 and using with cross-libtool-2.4.6.
|
||||
|
||||
Upstream status: not yet presented upstream.
|
||||
|
||||
index 9c5cf87..74a8541 100644
|
||||
--- a/mingw-w64-crt/misc/dirname.c
|
||||
+++ b/mingw-w64-crt/misc/dirname.c
|
||||
@@ -29,6 +29,12 @@
|
||||
#define __cdecl /* this may not be defined. */
|
||||
#endif
|
||||
|
||||
+char *__cdecl
|
||||
+realpath(const char *name, char *resolved)
|
||||
+{
|
||||
+ return resolved ? strcpy (resolved, name) : strdup (name);
|
||||
+}
|
||||
+
|
||||
char * __cdecl
|
||||
dirname(char *path)
|
||||
{
|
||||
diff --git a/mingw-w64-headers/crt/_mingw_stat64.h b/mingw-w64-headers/crt/_mingw_stat64.h
|
||||
index 17e754c..7d2339b 100644
|
||||
--- a/mingw-w64-headers/crt/_mingw_stat64.h
|
||||
+++ b/mingw-w64-headers/crt/_mingw_stat64.h
|
||||
@@ -2,13 +2,17 @@
|
||||
|
||||
#ifdef _USE_32BIT_TIME_T
|
||||
#define _fstat32 _fstat
|
||||
+#define _lstat32 _lstat
|
||||
#define _stat32 _stat
|
||||
#define _wstat32 _wstat
|
||||
#define _fstat32i64 _fstati64
|
||||
+#define _lstat32i64 _lstati64
|
||||
#define _stat32i64 _stati64
|
||||
#define _wstat32i64 _wstati64
|
||||
#else
|
||||
#define _fstat _fstat64i32
|
||||
+#define _lstat _lstat64i32
|
||||
+#define _lstati64 _lstat64
|
||||
#define _fstati64 _fstat64
|
||||
#define _stat _stat64i32
|
||||
#define _stati64 _stat64
|
||||
diff --git a/mingw-w64-headers/crt/float.h b/mingw-w64-headers/crt/float.h
|
||||
index 5874f4e..bdf4ead 100644
|
||||
--- a/mingw-w64-headers/crt/float.h
|
||||
+++ b/mingw-w64-headers/crt/float.h
|
||||
@@ -22,6 +22,15 @@
|
||||
#if (__GNUC__ < 4)
|
||||
#error Corrupt install of gcc-s internal headers, or search order was changed.
|
||||
#else
|
||||
+
|
||||
+ /* From gcc-4.9.3 float.h. */
|
||||
+ #undef FLT_EPSILON
|
||||
+ #undef DBL_EPSILON
|
||||
+ #undef LDBL_EPSILON
|
||||
+ #define FLT_EPSILON __FLT_EPSILON__
|
||||
+ #define DBL_EPSILON __DBL_EPSILON__
|
||||
+ #define LDBL_EPSILON __LDBL_EPSILON__
|
||||
+
|
||||
/* #include_next <float_ginclude.h> */
|
||||
|
||||
/* Number of decimal digits, q, such that any floating-point number with q
|
||||
diff --git a/mingw-w64-headers/crt/math.h b/mingw-w64-headers/crt/math.h
|
||||
index 1e970f4..99a332f 100644
|
||||
--- a/mingw-w64-headers/crt/math.h
|
||||
+++ b/mingw-w64-headers/crt/math.h
|
||||
@@ -216,6 +216,7 @@ extern "C" {
|
||||
#endif
|
||||
}
|
||||
|
||||
+#if 0
|
||||
__CRT_INLINE long double __cdecl fabsl (long double x)
|
||||
{
|
||||
#ifdef __arm__
|
||||
@@ -226,6 +227,7 @@ extern "C" {
|
||||
return res;
|
||||
#endif
|
||||
}
|
||||
+#endif
|
||||
|
||||
__CRT_INLINE double __cdecl fabs (double x)
|
||||
{
|
||||
@@ -905,7 +907,7 @@ __mingw_choose_expr ( \
|
||||
/* 7.12.7.3 */
|
||||
extern double __cdecl hypot (double, double) __MINGW_ATTRIB_DEPRECATED_MSVC2005; /* in libmoldname.a */
|
||||
extern float __cdecl hypotf (float x, float y);
|
||||
-#ifndef __CRT__NO_INLINE
|
||||
+#if 0 //ndef __CRT__NO_INLINE
|
||||
__CRT_INLINE float __cdecl hypotf (float x, float y) { return (float) hypot ((double)x, (double)y);}
|
||||
#endif
|
||||
extern long double __cdecl hypotl (long double, long double);
|
||||
diff --git a/mingw-w64-headers/crt/stdlib.h b/mingw-w64-headers/crt/stdlib.h
|
||||
index dfc5ae4..6f0fee3 100644
|
||||
--- a/mingw-w64-headers/crt/stdlib.h
|
||||
+++ b/mingw-w64-headers/crt/stdlib.h
|
||||
@@ -8,6 +8,7 @@
|
||||
|
||||
#include <crtdefs.h>
|
||||
#include <limits.h>
|
||||
+#include <string.h>
|
||||
|
||||
#if defined (__USE_MINGW_ANSI_STDIO) && ((__USE_MINGW_ANSI_STDIO + 0) != 0) && !defined (__USE_MINGW_STRTOX)
|
||||
#define __USE_MINGW_STRTOX 1
|
||||
@@ -676,6 +677,8 @@ unsigned long __cdecl _lrotr(unsigned long,int);
|
||||
|
||||
#endif /* !__NO_ISOCEXT */
|
||||
|
||||
+char *__cdecl realpath (const char *name, char *resolved);
|
||||
+
|
||||
#ifdef __cplusplus
|
||||
}
|
||||
#endif
|
||||
diff --git a/mingw-w64-headers/crt/sys/stat.h b/mingw-w64-headers/crt/sys/stat.h
|
||||
index ed60219..d88b4f1 100644
|
||||
--- a/mingw-w64-headers/crt/sys/stat.h
|
||||
+++ b/mingw-w64-headers/crt/sys/stat.h
|
||||
@@ -58,16 +58,21 @@ extern "C" {
|
||||
#include <_mingw_stat64.h>
|
||||
|
||||
#define _S_IFMT 0xF000
|
||||
+#define _S_IFLNK 0xA000
|
||||
+#define _S_IFSOCK 0xC000
|
||||
#define _S_IFDIR 0x4000
|
||||
#define _S_IFCHR 0x2000
|
||||
#define _S_IFIFO 0x1000
|
||||
#define _S_IFREG 0x8000
|
||||
+#define _S_ISUID 0x0400
|
||||
+#define _S_ISGID 0x0200
|
||||
#define _S_IREAD 0x0100
|
||||
#define _S_IWRITE 0x0080
|
||||
#define _S_IEXEC 0x0040
|
||||
|
||||
_CRTIMP int __cdecl _fstat32(int _FileDes,struct _stat32 *_Stat);
|
||||
_CRTIMP int __cdecl _stat32(const char *_Name,struct _stat32 *_Stat);
|
||||
+ static inline int __cdecl _lstat32(const char *_Name,struct _stat32 *_Stat) {return _stat32(_Name, _Stat);}
|
||||
_CRTIMP int __cdecl _fstat64(int _FileDes,struct _stat64 *_Stat);
|
||||
_CRTIMP int __cdecl _fstat32i64(int _FileDes,struct _stat32i64 *_Stat);
|
||||
int __cdecl _fstat64i32(int _FileDes,struct _stat64i32 *_Stat);
|
||||
@@ -97,6 +102,9 @@ extern "C" {
|
||||
_CRTIMP int __cdecl _stat64(const char *_Name,struct _stat64 *_Stat);
|
||||
_CRTIMP int __cdecl _stat32i64(const char *_Name,struct _stat32i64 *_Stat);
|
||||
int __cdecl _stat64i32(const char *_Name,struct _stat64i32 *_Stat);
|
||||
+ static inline int __cdecl _lstat64(const char *_Name,struct _stat64 *_Stat) {return _stat64(_Name, _Stat);}
|
||||
+ static inline int __cdecl _lstat32i64(const char *_Name,struct _stat32i64 *_Stat) {return _stat32i64(_Name, _Stat);}
|
||||
+ static inline int __cdecl _lstat64i32(const char *_Name,struct _stat64i32 *_Stat) {return _stat64i32(_Name, _Stat);}
|
||||
#ifndef __CRT__NO_INLINE
|
||||
__CRT_INLINE int __cdecl _stat64i32(const char *_Name,struct _stat64i32 *_Stat)
|
||||
{
|
||||
@@ -132,6 +140,8 @@ extern "C" {
|
||||
#ifndef NO_OLDNAMES
|
||||
#define _S_IFBLK 0x3000 /* Block: Is this ever set under w32? */
|
||||
|
||||
+#define S_IFLNK _S_IFLNK
|
||||
+#define S_IFSOCK _S_IFSOCK
|
||||
#define S_IFMT _S_IFMT
|
||||
#define S_IFDIR _S_IFDIR
|
||||
#define S_IFCHR _S_IFCHR
|
||||
@@ -162,6 +172,11 @@ extern "C" {
|
||||
#define S_IXOTH (S_IXGRP >> 3)
|
||||
#define S_IRWXO (S_IRWXG >> 3)
|
||||
|
||||
+#define S_ISUID _S_ISUID
|
||||
+#define S_ISGID _S_ISGID
|
||||
+
|
||||
+#define S_ISLNK(m) (((m) & S_IFMT) == S_IFLNK)
|
||||
+#define S_ISSOCK(m) (((m) & S_IFMT) == S_IFSOCK)
|
||||
#define S_ISDIR(m) (((m) & S_IFMT) == S_IFDIR)
|
||||
#define S_ISFIFO(m) (((m) & S_IFMT) == S_IFIFO)
|
||||
#define S_ISCHR(m) (((m) & S_IFMT) == S_IFCHR)
|
||||
@@ -174,6 +189,7 @@ extern "C" {
|
||||
int __cdecl stat(const char *_Filename,struct stat *_Stat);
|
||||
int __cdecl fstat(int _Desc,struct stat *_Stat);
|
||||
int __cdecl wstat(const wchar_t *_Filename,struct stat *_Stat);
|
||||
+static inline int __cdecl lstat(const char *_Filename,struct stat *_Stat){return stat(_Filename, _Stat);}
|
||||
|
||||
#ifndef __CRT__NO_INLINE
|
||||
#ifdef _USE_32BIT_TIME_T
|
||||
@@ -262,9 +278,11 @@ __CRT_INLINE int __cdecl
|
||||
|
||||
#if defined(_FILE_OFFSET_BITS) && (_FILE_OFFSET_BITS == 64)
|
||||
#ifdef _USE_32BIT_TIME_T
|
||||
+#define lstat _lstat32i64
|
||||
#define stat _stat32i64
|
||||
#define fstat _fstat32i64
|
||||
#else
|
||||
+#define lstat _lstat64
|
||||
#define stat _stat64
|
||||
#define fstat _fstat64
|
||||
#endif
|
||||
diff --git a/mingw-w64-headers/include/winnt.h b/mingw-w64-headers/include/winnt.h
|
||||
index 52af29b..8626396 100644
|
||||
--- a/mingw-w64-headers/include/winnt.h
|
||||
+++ b/mingw-w64-headers/include/winnt.h
|
||||
@@ -6895,7 +6895,12 @@ __buildmemorybarrier()
|
||||
DWORD Reg : 3;
|
||||
DWORD R : 1;
|
||||
DWORD L : 1;
|
||||
+/* C is used as a const specifier */
|
||||
+#define save_C C
|
||||
+#undef C
|
||||
DWORD C : 1;
|
||||
+#define C save_C
|
||||
+#undef save_C
|
||||
DWORD StackAdjust : 10;
|
||||
} DUMMYSTRUCTNAME;
|
||||
} DUMMYUNIONNAME;
|
65
gnu/packages/patches/mingw-w64-6.0.0-gcc.patch
Normal file
65
gnu/packages/patches/mingw-w64-6.0.0-gcc.patch
Normal file
|
@ -0,0 +1,65 @@
|
|||
This patch includes
|
||||
|
||||
* mingw-w64-headers/include/winnt.h: compile fixes for1 gcc-4.9.3
|
||||
* mingw-w64-headers/crt/math.h: Likewise
|
||||
* mingw-w64-headers/crt/float.h (FLT_EPSILON,DBL_EPSILON,LDBL_EPSILON): Add
|
||||
symbols.
|
||||
* mingw-w64-headers/crt/stat.h (S_ISLNK,S_ISSOCK,S_ISUID,S_ISGID,S_ISLINK):
|
||||
Add symbols.
|
||||
(lstat): Add function.
|
||||
* mingw-w64-headers/crt/_mingw_stat64.h: Likewise
|
||||
* mingw-w64-headers/crt/stdlib.h (realpath): Add function.
|
||||
|
||||
Needed for building with gcc-4.9.3 and using with cross-libtool-2.4.6.
|
||||
|
||||
Upstream status: not yet presented upstream.
|
||||
|
||||
diff --git a/mingw-w64-headers/crt/float.h b/mingw-w64-headers/crt/float.h
|
||||
index 5874f4e..bdf4ead 100644
|
||||
--- a/mingw-w64-headers/crt/float.h
|
||||
+++ b/mingw-w64-headers/crt/float.h
|
||||
@@ -22,6 +22,15 @@
|
||||
#if (__GNUC__ < 4)
|
||||
#error Corrupt install of gcc-s internal headers, or search order was changed.
|
||||
#else
|
||||
+
|
||||
+ /* From gcc-4.9.3 float.h. */
|
||||
+ #undef FLT_EPSILON
|
||||
+ #undef DBL_EPSILON
|
||||
+ #undef LDBL_EPSILON
|
||||
+ #define FLT_EPSILON __FLT_EPSILON__
|
||||
+ #define DBL_EPSILON __DBL_EPSILON__
|
||||
+ #define LDBL_EPSILON __LDBL_EPSILON__
|
||||
+
|
||||
/* #include_next <float_ginclude.h> */
|
||||
|
||||
/* Number of decimal digits, q, such that any floating-point number with q
|
||||
diff --git a/mingw-w64-headers/crt/math.h b/mingw-w64-headers/crt/math.h
|
||||
index 1e970f4..99a332f 100644
|
||||
--- a/mingw-w64-headers/crt/math.h
|
||||
+++ b/mingw-w64-headers/crt/math.h
|
||||
@@ -216,6 +216,7 @@ extern "C" {
|
||||
#endif
|
||||
}
|
||||
|
||||
+#if 0
|
||||
__CRT_INLINE long double __cdecl fabsl (long double x)
|
||||
{
|
||||
#ifdef __arm__
|
||||
@@ -226,6 +227,7 @@ extern "C" {
|
||||
return res;
|
||||
#endif
|
||||
}
|
||||
+#endif
|
||||
|
||||
__CRT_INLINE double __cdecl fabs (double x)
|
||||
{
|
||||
@@ -905,7 +907,7 @@ __mingw_choose_expr ( \
|
||||
/* 7.12.7.3 */
|
||||
extern double __cdecl hypot (double, double) __MINGW_ATTRIB_DEPRECATED_MSVC2005; /* in libmoldname.a */
|
||||
extern float __cdecl hypotf (float x, float y);
|
||||
-#ifndef __CRT__NO_INLINE
|
||||
+#if 0 //ndef __CRT__NO_INLINE
|
||||
__CRT_INLINE float __cdecl hypotf (float x, float y) { return (float) hypot ((double)x, (double)y);}
|
||||
#endif
|
||||
extern long double __cdecl hypotl (long double, long double);
|
|
@ -6495,19 +6495,18 @@ (define-public perl-mro-compat
|
|||
(define-public perl-namespace-autoclean
|
||||
(package
|
||||
(name "perl-namespace-autoclean")
|
||||
(version "0.28")
|
||||
(version "0.29")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "mirror://cpan/authors/id/E/ET/ETHER/"
|
||||
"namespace-autoclean-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0fbcq99yaix1aa99jl3v811dbw24il9jxnh5i2i23mddh4b0lhfd"))))
|
||||
(base32 "012qqs561xyyhm082znmzsl8lz4n299fa6p0v246za2l9bkdiss5"))))
|
||||
(build-system perl-build-system)
|
||||
(native-inputs
|
||||
`(("perl-module-build" ,perl-module-build)
|
||||
("perl-test-requires" ,perl-test-requires)))
|
||||
("perl-test-needs" ,perl-test-needs)))
|
||||
(propagated-inputs
|
||||
`(("perl-b-hooks-endofscope" ,perl-b-hooks-endofscope)
|
||||
("perl-namespace-clean" ,perl-namespace-clean)
|
||||
|
|
|
@ -2218,24 +2218,21 @@ (define-public python-flask-htpasswd
|
|||
(define-public python-flask-sqlalchemy
|
||||
(package
|
||||
(name "python-flask-sqlalchemy")
|
||||
(version "2.1")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "Flask-SQLAlchemy" version))
|
||||
(sha256
|
||||
(base32
|
||||
"1i9ps5d5snih9xlqhrvmi3qfiygkmqzxh92n25kj4pf89kj4s965"))))
|
||||
(version "2.4.0")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "Flask-SQLAlchemy" version))
|
||||
(sha256
|
||||
(base32
|
||||
"0nnllf0ddbh9jlhngnyjj98lbxgxr1csaplllx0caw98syq0k5hc"))))
|
||||
(build-system python-build-system)
|
||||
(propagated-inputs
|
||||
`(("python-flask" ,python-flask)
|
||||
("python-sqlalchemy" ,python-sqlalchemy)))
|
||||
(home-page
|
||||
"https://github.com/mitsuhiko/flask-sqlalchemy")
|
||||
(synopsis
|
||||
"Module adding SQLAlchemy support to your Flask application")
|
||||
(home-page "https://github.com/mitsuhiko/flask-sqlalchemy")
|
||||
(synopsis "Module adding SQLAlchemy support to your Flask application")
|
||||
(description
|
||||
"This package adds SQLAlchemy support to your Flask application.")
|
||||
"This package adds SQLAlchemy support to your Flask application.")
|
||||
(license license:bsd-3)))
|
||||
|
||||
(define-public python-flask-restplus
|
||||
|
|
|
@ -64,6 +64,7 @@
|
|||
;;; Copyright © 2019 Alex Griffin <a@ajgrf.com>
|
||||
;;; Copyright © 2019 Pierre Langlois <pierre.langlois@gmx.com>
|
||||
;;; Copyright © 2019 Jacob MacDonald <jaccarmac@gmail.com>
|
||||
;;; Copyright © 2019 Giacomo Leidi <goodoldpaul@autistici.org>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
|
@ -6999,14 +7000,14 @@ (define-public python2-pyroute2
|
|||
(define-public python-wrapt
|
||||
(package
|
||||
(name "python-wrapt")
|
||||
(version "1.11.1")
|
||||
(version "1.11.2")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "wrapt" version))
|
||||
(sha256
|
||||
(base32
|
||||
"0cqmysny1pz01jw26q48q5zasvns6507rwhgm6wcw743f0r01sja"))))
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "wrapt" version))
|
||||
(sha256
|
||||
(base32
|
||||
"1q81762dgsgrd12f8qc39zk8s5wll3m5xc32jdmlf6cls4gh4njn"))))
|
||||
(build-system python-build-system)
|
||||
(arguments
|
||||
;; Tests are not included in the tarball, they are only available in the
|
||||
|
@ -7015,7 +7016,7 @@ (define-public python-wrapt
|
|||
(home-page "https://github.com/GrahamDumpleton/wrapt")
|
||||
(synopsis "Module for decorators, wrappers and monkey patching")
|
||||
(description
|
||||
"The aim of the wrapt module is to provide a transparent object proxy for
|
||||
"The aim of the wrapt module is to provide a transparent object proxy for
|
||||
Python, which can be used as the basis for the construction of function
|
||||
wrappers and decorator functions.")
|
||||
(license license:bsd-2)))
|
||||
|
@ -7322,14 +7323,14 @@ (define-public python2-pretend
|
|||
(define-public python-pip
|
||||
(package
|
||||
(name "python-pip")
|
||||
(version "18.1")
|
||||
(version "19.2.1")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "pip" version))
|
||||
(sha256
|
||||
(base32
|
||||
"188fclay154s520n43s7cxxlhdaiysvxf19zk8vr1xbyjyyr58n0"))))
|
||||
"100sd12ss4mbdj5lf3wawad29cm573b27765mq098x6xhcj71395"))))
|
||||
(build-system python-build-system)
|
||||
(arguments
|
||||
'(#:tests? #f)) ; there are no tests in the pypi archive.
|
||||
|
@ -9990,13 +9991,13 @@ (define-public python2-fastimport
|
|||
(define-public python-twisted
|
||||
(package
|
||||
(name "python-twisted")
|
||||
(version "19.2.1")
|
||||
(version "19.7.0")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "Twisted" version ".tar.bz2"))
|
||||
(sha256
|
||||
(base32
|
||||
"0liymyd4pzphizjlpwkncxjpm9akyr3lkfkm77yfg6wasv108b7s"))))
|
||||
"17d3hnxv9qndagzz63mdpyk99xj63p9gq586vjn0rxk8cl197nym"))))
|
||||
(build-system python-build-system)
|
||||
(arguments
|
||||
'(#:tests? #f)) ; FIXME: some tests fail
|
||||
|
@ -16088,3 +16089,72 @@ (define-public python-folium
|
|||
Stamen, and supports custom tilesets with Mapbox or Cloudmade API keys. It
|
||||
supports Image, Video, GeoJSON and TopoJSON overlays.")
|
||||
(license license:expat)))
|
||||
|
||||
(define-public jube
|
||||
(package
|
||||
;; This is a command-line tool, so no "python-" prefix.
|
||||
(name "jube")
|
||||
(version "2.2.2")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
"http://apps.fz-juelich.de/jsc/jube/jube2/download.php?version="
|
||||
version))
|
||||
(sha256
|
||||
(base32
|
||||
"0xq4k1q63s1p6swgyp61vahlrd1fqmgbm0gm5kpj8ikwy0yc0nqk"))
|
||||
(file-name (string-append "jube-" version ".tar.gz"))))
|
||||
(build-system python-build-system)
|
||||
(home-page "https://apps.fz-juelich.de/jsc/jube/jube2/docu/index.html")
|
||||
(synopsis "Benchmarking environment")
|
||||
(description
|
||||
"JUBE helps perform and analyze benchmarks in a systematic way. For each
|
||||
benchmarked application, benchmark data is stored in a format that allows JUBE
|
||||
to deduct the desired information. This data can be parsed by automatic pre-
|
||||
and post-processing scripts that draw information and store it more densely
|
||||
for manual interpretation.")
|
||||
(license license:gpl3+)))
|
||||
|
||||
(define-public python-pyroutelib3
|
||||
(package
|
||||
(name "python-pyroutelib3")
|
||||
(version "1.3.post1")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "pyroutelib3" version))
|
||||
(sha256
|
||||
(base32
|
||||
"1hpbydpn2alyswiajfbvhzq4c7f36vdmvxy91hgv8l1lb2g2vfrj"))))
|
||||
(build-system python-build-system)
|
||||
(propagated-inputs
|
||||
`(("python-dateutil" ,python-dateutil)))
|
||||
(home-page "https://github.com/MKuranowski/pyroutelib3")
|
||||
(synopsis "Library for simple routing on OSM data")
|
||||
(description "Library for simple routing on OSM data")
|
||||
(license license:gpl3+)))
|
||||
|
||||
(define-public python-elementpath
|
||||
(package
|
||||
(name "python-elementpath")
|
||||
(version "1.2.0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "elementpath" version))
|
||||
(sha256
|
||||
(base32
|
||||
"1syn2z543brab23dskh3fjd9pqvz6npqbcicrs2d88dbg26xl08p"))))
|
||||
(build-system python-build-system)
|
||||
(home-page
|
||||
"https://github.com/sissaschool/elementpath")
|
||||
(synopsis
|
||||
"XPath 1.0/2.0 parsers and selectors for ElementTree and lxml")
|
||||
(description
|
||||
"The proposal of this package is to provide XPath 1.0 and 2.0 selectors
|
||||
for Python's ElementTree XML data structures, both for the standard
|
||||
ElementTree library and for the @uref{http://lxml.de, lxml.etree} library.
|
||||
|
||||
For lxml.etree this package can be useful for providing XPath 2.0 selectors,
|
||||
because lxml.etree already has it's own implementation of XPath 1.0.")
|
||||
(license license:expat)))
|
||||
|
|
|
@ -2216,6 +2216,9 @@ (define-public qtwebkit
|
|||
(description "QtWebKit provides a Web browser engine that makes it easy to
|
||||
embed content from the World Wide Web into your Qt application. At the same
|
||||
time Web content can be enhanced with native controls.")
|
||||
;; Building QtWebKit takes around 13 hours on an AArch64 machine. Give some
|
||||
;; room for slower or busy hardware.
|
||||
(properties '((timeout . 64800))) ;18 hours
|
||||
(license license:lgpl2.1+)))
|
||||
|
||||
(define-public dotherside
|
||||
|
|
91
gnu/packages/rednotebook.scm
Normal file
91
gnu/packages/rednotebook.scm
Normal file
|
@ -0,0 +1,91 @@
|
|||
;;; GNU Guix --- Functional package management for GNU
|
||||
;;; Copyright © 2019 Jesse Gibbons <jgibbons2357+guix@gmail.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 packages rednotebook)
|
||||
#:use-module (guix packages)
|
||||
#:use-module (guix git-download)
|
||||
#:use-module (guix build-system python)
|
||||
#:use-module ((guix licenses) #:prefix license:)
|
||||
#:use-module (gnu packages python)
|
||||
#:use-module (gnu packages glib)
|
||||
#:use-module (gnu packages gtk)
|
||||
#:use-module (gnu packages webkit)
|
||||
#:use-module (gnu packages python-xyz))
|
||||
|
||||
(define-public rednotebook
|
||||
(package
|
||||
(name "rednotebook")
|
||||
(version "2.11.1")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/jendrikseipp/rednotebook.git")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "04c7a0wgmdl88v9386y1052c38ajbkryiwhqps5lx34d4g7r6hm1"))))
|
||||
(build-system python-build-system)
|
||||
(arguments
|
||||
;; Tests fail to find the "_" function.
|
||||
;; It should be defined in rednotebook/info.py if '_' is not a member of
|
||||
;; 'builtins'. It is either not defined or not exported during the check
|
||||
;; phase. The program does not have this problem after it is installed.
|
||||
;; TODO: Fix tests.
|
||||
`(#:tests? #f
|
||||
#:imported-modules ((guix build glib-or-gtk-build-system)
|
||||
,@%python-build-system-modules)
|
||||
#:modules ((ice-9 match)
|
||||
(guix build python-build-system)
|
||||
((guix build glib-or-gtk-build-system) #:prefix glib-or-gtk:)
|
||||
(guix build utils))
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
;; Make sure rednotebook can find the typelibs and webkitgtk shared
|
||||
;; libraries.
|
||||
(add-before 'wrap 'wrap-with-library-paths
|
||||
(lambda* (#:key inputs outputs #:allow-other-keys)
|
||||
(let ((out (assoc-ref outputs "out"))
|
||||
(gi-typelib-path (getenv "GI_TYPELIB_PATH"))
|
||||
(webkitgtk-path (string-append
|
||||
(assoc-ref inputs "webkitgtk")
|
||||
"/lib")))
|
||||
(wrap-program (string-append out "/bin/rednotebook")
|
||||
`("GI_TYPELIB_PATH" ":" prefix (,gi-typelib-path))
|
||||
`("LD_LIBRARY_PATH" ":" prefix (,webkitgtk-path)))
|
||||
#t))))))
|
||||
(inputs
|
||||
`(("gtk+" ,gtk+)
|
||||
("gtksourceview" ,gtksourceview-3)
|
||||
("python-pyyaml" ,python-pyyaml)
|
||||
("python-pygobject" ,python-pygobject)
|
||||
("webkitgtk" ,webkitgtk)))
|
||||
;; TODO: package the following for python3 (if possible), add them as
|
||||
;; dependencies, and remove them from rednotebook source:
|
||||
;; pygtkspellcheck, elib.intl, msgfmt, txt2tags
|
||||
;; TODO: package and add pyenchant for python3 and add it as a dependency.
|
||||
(home-page "https://www.rednotebook.app")
|
||||
(synopsis "Daily journal with calendar, templates and keyword searching")
|
||||
(description
|
||||
"RedNotebook is a modern desktop journal. It lets you format, tag and
|
||||
search your entries. You can also add pictures, links and customizable
|
||||
templates, spell check your notes, and export to plain text, HTML, Latex or
|
||||
PDF.")
|
||||
(license (list license:gpl2+ ; rednotebook, txt2tags
|
||||
license:lgpl3+ ; elib.intl
|
||||
license:gpl3+)))) ; pygtkspellcheck
|
|
@ -16,6 +16,7 @@
|
|||
;;; Copyright © 2019 Pierre Neidhardt <mail@ambrevar.xyz>
|
||||
;;; Copyright © 2019 Mikhail Kirillov <w96k.ru@gmail.com>
|
||||
;;; Copyright © 2019 Jelle Licht <jlicht@fsfe.org>
|
||||
;;; Copyright © 2019 Brian Leung <bkleung89@gmail.com>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
|
@ -2035,13 +2036,13 @@ (define-public ruby-simplecov-html
|
|||
(define-public ruby-simplecov
|
||||
(package
|
||||
(name "ruby-simplecov")
|
||||
(version "0.12.0")
|
||||
(version "0.17.0")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (rubygems-uri "simplecov" version))
|
||||
(sha256
|
||||
(base32
|
||||
"0ffhyrfnq2zm2mc1742a4hqy475g3qa1zf6yfldwg1ldh5sn3qbx"))))
|
||||
"0dq0nkaxvbsnl70hkimy35g4yjfs3blx4s7nbpzbvgqx72hxgv5v"))))
|
||||
(build-system ruby-build-system)
|
||||
;; Simplecov depends on rubocop for code style checking at build time.
|
||||
;; Rubocop needs simplecov at build time.
|
||||
|
@ -3638,24 +3639,24 @@ (define-public ruby-mini-portile
|
|||
|
||||
(define-public ruby-mini-portile-2
|
||||
(package (inherit ruby-mini-portile)
|
||||
(version "2.2.0")
|
||||
(version "2.4.0")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (rubygems-uri "mini_portile2" version))
|
||||
(sha256
|
||||
(base32
|
||||
"0g5bpgy08q0nc0anisg3yvwc1gc3inl854fcrg48wvg7glqd6dpm"))))))
|
||||
"15zplpfw3knqifj9bpf604rb3wc1vhq6363pd6lvhayng8wql5vy"))))))
|
||||
|
||||
(define-public ruby-nokogiri
|
||||
(package
|
||||
(name "ruby-nokogiri")
|
||||
(version "1.8.0")
|
||||
(version "1.10.4")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (rubygems-uri "nokogiri" version))
|
||||
(sha256
|
||||
(base32
|
||||
"1nffsyx1xjg6v5n9rrbi8y1arrcx2i5f21cp6clgh9iwiqkr7rnn"))))
|
||||
"0nmdrqqz1gs0fwkgzxjl4wr554gr8dc1fkrqjc2jpsvwgm41rygv"))))
|
||||
(build-system ruby-build-system)
|
||||
(arguments
|
||||
;; Tests fail because Nokogiri can only test with an installed extension,
|
||||
|
@ -8571,6 +8572,33 @@ (define-public ruby-mustermann
|
|||
(home-page "https://github.com/sinatra/mustermann")
|
||||
(license license:expat)))
|
||||
|
||||
(define-public ruby-htmlentities
|
||||
(package
|
||||
(name "ruby-htmlentities")
|
||||
(version "4.3.4")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (rubygems-uri "htmlentities" version))
|
||||
(sha256
|
||||
(base32
|
||||
"1nkklqsn8ir8wizzlakncfv42i32wc0w9hxp00hvdlgjr7376nhj"))))
|
||||
(build-system ruby-build-system)
|
||||
(arguments
|
||||
`(#:phases
|
||||
(modify-phases %standard-phases
|
||||
(replace 'check
|
||||
(lambda _
|
||||
(map (lambda (file)
|
||||
(invoke "ruby" "-Itest" file))
|
||||
(find-files "./test" ".*_test\\.rb")))))))
|
||||
(synopsis "Encode and decode (X)HTML entities")
|
||||
(description
|
||||
"This package provides a module for encoding and decoding (X)HTML
|
||||
entities.")
|
||||
(home-page "https://github.com/threedaymonk/htmlentities")
|
||||
(license license:expat)))
|
||||
|
||||
(define-public ruby-sinatra
|
||||
(package
|
||||
(name "ruby-sinatra")
|
||||
|
@ -8807,3 +8835,92 @@ (define-public swagger-diff
|
|||
backwards-compatible with an older API specification.")
|
||||
(home-page "https://github.com/civisanalytics/swagger-diff")
|
||||
(license license:bsd-3)))
|
||||
|
||||
(define-public ruby-reverse-markdown
|
||||
(package
|
||||
(name "ruby-reverse-markdown")
|
||||
(version "1.1.0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (rubygems-uri "reverse_markdown" version))
|
||||
(sha256
|
||||
(base32
|
||||
"0w7y5n74daajvl9gixr91nh8670d7mkgspkk3ql71m8azq3nffbg"))))
|
||||
(build-system ruby-build-system)
|
||||
(propagated-inputs
|
||||
`(("ruby-nokogiri" ,ruby-nokogiri)))
|
||||
(native-inputs
|
||||
`(("bundler" ,bundler)
|
||||
("ruby-rspec" ,ruby-rspec)
|
||||
("ruby-kramdown" ,ruby-kramdown)
|
||||
("ruby-simplecov" ,ruby-simplecov)))
|
||||
(arguments
|
||||
`(#:phases
|
||||
(modify-phases %standard-phases
|
||||
(replace 'check
|
||||
(lambda* (#:key tests? #:allow-other-keys)
|
||||
(when tests?
|
||||
(invoke "rspec"))
|
||||
#t)))))
|
||||
(synopsis "Convert HTML into Markdown")
|
||||
(description
|
||||
"This Ruby module allows you to map simple HTML back into
|
||||
Markdown---e.g., if you want to import existing HTML data in your
|
||||
application.")
|
||||
(home-page "https://github.com/xijo/reverse_markdown")
|
||||
(license license:wtfpl2)))
|
||||
|
||||
(define-public ruby-solargraph
|
||||
(package
|
||||
(name "ruby-solargraph")
|
||||
(version "0.36.0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (rubygems-uri "solargraph" version))
|
||||
(sha256
|
||||
(base32
|
||||
"0b93xzkgd1h06da9gdnwivj1mzbil8lc072y2838dy6i7bxgpy9i"))))
|
||||
(build-system ruby-build-system)
|
||||
(propagated-inputs
|
||||
`(("ruby-backport" ,ruby-backport)
|
||||
("bundler" ,bundler)
|
||||
("ruby-htmlentities" ,ruby-htmlentities)
|
||||
("ruby-jaro-winkler" ,ruby-jaro-winkler)
|
||||
("ruby-maruku" ,ruby-maruku)
|
||||
("ruby-nokogiri" ,ruby-nokogiri)
|
||||
("ruby-parser" ,ruby-parser)
|
||||
("ruby-reverse-markdown" ,ruby-reverse-markdown)
|
||||
("ruby-rubocop" ,ruby-rubocop)
|
||||
("ruby-thor" ,ruby-thor)
|
||||
("ruby-tilt" ,ruby-tilt)
|
||||
("ruby-yard" ,ruby-yard)))
|
||||
(native-inputs
|
||||
`(("ruby-rspec" ,ruby-rspec)
|
||||
("ruby-pry" ,ruby-pry)
|
||||
("ruby-simplecov" ,ruby-simplecov)
|
||||
("ruby-webmock" ,ruby-webmock-2)))
|
||||
;; FIXME: can't figure out how to run the tests properly:
|
||||
|
||||
;; An error occurred while loading spec_helper.
|
||||
;; Failure/Error: return gem_original_require(path)
|
||||
;; LoadError:
|
||||
;; cannot load such file -- spec_helper
|
||||
(arguments
|
||||
'(#:tests? #f
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(replace 'check
|
||||
(lambda* (#:key tests? #:allow-other-keys)
|
||||
(when tests?
|
||||
(invoke "rspec"))
|
||||
#t)))))
|
||||
(synopsis
|
||||
"IDE tools for code completion, inline documentation, and static analysis")
|
||||
(description
|
||||
"Solargraph provides a comprehensive suite of tools for Ruby
|
||||
programming: intellisense, diagnostics, inline documentation, and type
|
||||
checking.")
|
||||
(home-page "https://solargraph.org/")
|
||||
(license license:expat)))
|
||||
|
|
|
@ -353,7 +353,7 @@ (define-public yubikey-personalization
|
|||
(define-public python-pyscard
|
||||
(package
|
||||
(name "python-pyscard")
|
||||
(version "1.9.8")
|
||||
(version "1.9.9")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
;; The maintainer publishes releases on various sites, but
|
||||
|
@ -363,7 +363,7 @@ (define-public python-pyscard
|
|||
version "/pyscard-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"15fh00z1an6r5j7hrz3jlq0rb3jygwf3x4jcwsa008bv8vpcg7gm"))))
|
||||
"082cjkbxadaz2jb4rbhr0mkrirzlqyqhcf3r823qb0q1k50ybgg6"))))
|
||||
(build-system python-build-system)
|
||||
(arguments
|
||||
`(#:phases
|
||||
|
|
|
@ -1106,3 +1106,59 @@ (define-public eternalterminal
|
|||
while also supporting native scrolling and @command{tmux} control mode
|
||||
(@code{tmux -CC}).")
|
||||
(license license:asl2.0)))
|
||||
|
||||
(define-public wterm
|
||||
(package
|
||||
(name "wterm")
|
||||
(version "0.7")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/majestrate/wterm.git")
|
||||
(commit "0ae42717c08a85a6509214e881422c7fbe7ecc45")))
|
||||
(sha256
|
||||
(base32
|
||||
"0g4lzmc1w6na81i6hny32xds4xfig4xzswzfijyi6p93a1226dv0"))
|
||||
(file-name (git-file-name name version))))
|
||||
(build-system gnu-build-system)
|
||||
(native-inputs
|
||||
`(("pkg-config" ,pkg-config)))
|
||||
(inputs
|
||||
`(("fontconfig" ,fontconfig)
|
||||
("freetype" ,freetype)
|
||||
("libdrm" ,libdrm)
|
||||
("libxkbcommon" ,libxkbcommon)
|
||||
("ncurses" ,ncurses)
|
||||
("pixman" ,pixman)
|
||||
("wayland" ,wayland)))
|
||||
(arguments
|
||||
'(#:tests? #f
|
||||
|
||||
;; Without -j1 it fails to find file libwld.a.
|
||||
#:parallel-build? #f
|
||||
|
||||
#:make-flags (list "CC=gcc"
|
||||
(string-append "PREFIX=" %output)
|
||||
(string-append "TERMINFO="
|
||||
(assoc-ref %outputs "out")
|
||||
"/share/terminfo"))
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(delete 'configure)
|
||||
(add-after 'unpack 'terminfo-fix
|
||||
(lambda _
|
||||
(substitute* "Makefile"
|
||||
(("\ttic .*") "\tmkdir -p $(SHARE_PREFIX)/share/terminfo
|
||||
\ttic -o $(SHARE_PREFIX)/share/terminfo -s wterm.info\n"))
|
||||
#t)))))
|
||||
(native-search-paths
|
||||
(list (search-path-specification
|
||||
(variable "TERMINFO_DIRS")
|
||||
(files '("share/terminfo")))))
|
||||
(home-page "https://github.com/majestrate/wterm")
|
||||
(synopsis "Terminal emulator for Wayland")
|
||||
(description "wterm is a native Wayland terminal emulator based on
|
||||
an st fork using wld. st is a simple terminal emulator for X originally
|
||||
made by suckless.")
|
||||
(license license:x11)))
|
||||
|
|
|
@ -41,6 +41,7 @@ (define-module (gnu packages text-editors)
|
|||
#:use-module (gnu packages documentation)
|
||||
#:use-module (gnu packages fontutils)
|
||||
#:use-module (gnu packages gcc)
|
||||
#:use-module (gnu packages gettext)
|
||||
#:use-module (gnu packages glib)
|
||||
#:use-module (gnu packages gtk)
|
||||
#:use-module (gnu packages guile)
|
||||
|
@ -567,3 +568,55 @@ (define-public geany
|
|||
@item extensibility through plugins
|
||||
@end itemize")
|
||||
(license license:gpl2+)))
|
||||
|
||||
(define-public fe
|
||||
(package
|
||||
(name "fe")
|
||||
;; Stable release is 1.8. However, this development version
|
||||
;; introduces support for UTF-8.
|
||||
(version "2.0")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "http://www.moria.de/~michael/fe/"
|
||||
"fe-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1hwws7si1752z6hp61zxznvgsb6846lp8zl1hn5ddhsbafwalwb9"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
`(#:tests? #f ;no test
|
||||
;; Sendmail is only used to send a crash log. Disable the
|
||||
;; feature since it is (1) undocumented (2) not very useful.
|
||||
#:configure-flags (list "--disable-sendmail")
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-after 'install 'install-doc
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
(let* ((out (assoc-ref outputs "out"))
|
||||
(doc (string-append out "/share/doc/" ,name "-" ,version)))
|
||||
(for-each (lambda (f) (install-file f doc))
|
||||
'("fe.doc" "fe.html" "fe.ps" "feref.ps" "README"))
|
||||
#t))))))
|
||||
(native-inputs
|
||||
`(("gettext" ,gettext-minimal)))
|
||||
(inputs
|
||||
`(("ncurses" ,ncurses)))
|
||||
(home-page "http://www.moria.de/~michael/fe/")
|
||||
(synopsis "Small folding editor")
|
||||
(description "Fe is a small folding editor. It allows to fold
|
||||
arbitrary text regions; it is not bound to syntactic units.
|
||||
|
||||
Fe has no configuration or extension language and requires no setup.
|
||||
Its user interface is emacs-like and it has menues for the very most
|
||||
important functions to help beginners. Further there is a reference
|
||||
card. It offers:
|
||||
|
||||
@itemize
|
||||
@item Regions and Emacs-like kill ring
|
||||
@item Incremental search
|
||||
@item Keyboard macros
|
||||
@item Editing binary files
|
||||
@item Multiple windows and views
|
||||
@item Compose function for Latin 1 characters
|
||||
@end itemize")
|
||||
(license license:gpl2+)))
|
||||
|
|
|
@ -10,7 +10,7 @@
|
|||
;;; Copyright © 2016 Marius Bakke <mbakke@fastmail.com>
|
||||
;;; Copyright © 2017 Eric Bavier <bavier@member.fsf.org>
|
||||
;;; Copyright © 2017 Rene Saavedra <rennes@openmailbox.org>
|
||||
;;; Copyright © 2017 Hartmut Goebel <h.goebel@crazy-compilers.com>
|
||||
;;; Copyright © 2017,2019 Hartmut Goebel <h.goebel@crazy-compilers.com>
|
||||
;;; Copyright © 2017 Kei Kebreau <kkebreau@posteo.net>
|
||||
;;; Copyright © 2017 Alex Vong <alexvong1995@gmail.com>
|
||||
;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
|
||||
|
@ -45,6 +45,7 @@ (define-module (gnu packages textutils)
|
|||
#:use-module (guix build-system python)
|
||||
#:use-module (gnu packages)
|
||||
#:use-module (gnu packages autotools)
|
||||
#:use-module (gnu packages base)
|
||||
#:use-module (gnu packages compression)
|
||||
#:use-module (gnu packages gettext)
|
||||
#:use-module (gnu packages java)
|
||||
|
@ -321,6 +322,112 @@ (define-public ustr
|
|||
;; entails."
|
||||
(license license:public-domain)))
|
||||
|
||||
(define-public ascii2binary
|
||||
(package
|
||||
(name "ascii2binary")
|
||||
(version "2.14")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "http://billposer.org/Software/Downloads/"
|
||||
"ascii2binary-" version ".tar.bz2"))
|
||||
(sha256
|
||||
(base32 "0dc9fxcdmppbs9s06jvq61zbk552laxps0xyk098gj41697ihd96"))))
|
||||
(build-system gnu-build-system)
|
||||
(native-inputs
|
||||
`(("gettext" ,gettext-minimal)))
|
||||
(home-page "https://billposer.org/Software/a2b.html")
|
||||
(synopsis "Convert between ASCII, hexadecimal and binary representations")
|
||||
(description "The two programs are useful for generating test data, for
|
||||
inspecting binary files, and for interfacing programs that generate textual
|
||||
output to programs that require binary input and conversely. They can also be
|
||||
useful when it is desired to reformat numbers.
|
||||
|
||||
@itemize
|
||||
|
||||
@item @command{ascii2binary} reads input consisting of ascii or hexadecimal
|
||||
representation numbers separated by whitespace and produces as output
|
||||
the binary equivalents. The type and precision of the binary output
|
||||
is selected using command line flags.
|
||||
|
||||
@item @command{binary2ascii} reads input consisting of binary numbers
|
||||
and converts them to their ascii or hexadecimal representation.
|
||||
Command line flags specify the type and size of the binary numbers
|
||||
and provide control over the format of the output.
|
||||
Unsigned integers may be written out in binary, octal, decimal,
|
||||
or hexadecimal.
|
||||
|
||||
Signed integers may be written out only in binary or decimal. Floating
|
||||
point numbers may be written out only decimal, either in standard or
|
||||
scientific notation. (If you want to examine the binary representation
|
||||
of floating point numbers, just treat the input as a sequence of unsigned
|
||||
characters.)
|
||||
|
||||
@end itemize")
|
||||
(license license:gpl3)))
|
||||
|
||||
(define-public uniutils
|
||||
(package
|
||||
(name "uniutils")
|
||||
(version "2.27")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "http://billposer.org/Software/Downloads/"
|
||||
"uniutils-" version ".tar.bz2"))
|
||||
(sha256
|
||||
(base32 "19w1510w87gx7n4qy3zsb0m467a4rn5scvh4ajajg7jh6x5xri08"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
'(#:configure-flags '("--disable-dependency-tracking")
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-after 'build 'fix-paths
|
||||
(lambda* (#:key outputs inputs #:allow-other-keys)
|
||||
(let ((out (assoc-ref outputs "out"))
|
||||
(a2b (assoc-ref inputs "ascii2binary"))
|
||||
(iconv (assoc-ref inputs "libiconv")))
|
||||
(substitute* "utf8lookup"
|
||||
(("^ascii2binary ") (string-append a2b "/bin/ascii2binary "))
|
||||
(("^uniname ") (string-append out "/bin/uniname "))
|
||||
(("^iconv ") (string-append iconv "/bin/iconv ")))
|
||||
#t))))))
|
||||
(inputs
|
||||
`(("ascii2binary" ,ascii2binary)
|
||||
("libiconv" ,libiconv)))
|
||||
(home-page "https://billposer.org/Software/unidesc.html")
|
||||
(synopsis "Find out what is in a Unicode file")
|
||||
(description "Useful tools when working with Unicode files when one
|
||||
doesn't know the writing system, doesn't have the necessary font, needs to
|
||||
inspect invisible characters, needs to find out whether characters have been
|
||||
combined or in what order they occur, or needs statistics on which characters
|
||||
occur.
|
||||
|
||||
@itemize
|
||||
|
||||
@item @command{uniname} defaults to printing the character offset of each
|
||||
character, its byte offset, its hex code value, its encoding, the glyph
|
||||
itself, and its name. It may also be used to validate UTF-8 input.
|
||||
|
||||
@item @command{unidesc} reports the character ranges to which different
|
||||
portions of the text belong. It can also be used to identify Unicode encodings
|
||||
(e.g. UTF-16be) flagged by magic numbers.
|
||||
|
||||
@item @command{unihist} generates a histogram of the characters in its input.
|
||||
|
||||
@item @command{ExplicateUTF8} is intended for debugging or for learning about
|
||||
Unicode. It determines and explains the validity of a sequence of bytes as a
|
||||
UTF8 encoding.
|
||||
|
||||
@item @command{utf8lookup} provides a handy way to look up Unicode characters
|
||||
from the command line.
|
||||
|
||||
@item @command{unireverse} reverse each line of UTF-8 input
|
||||
character-by-character.
|
||||
|
||||
@end itemize")
|
||||
(license license:gpl3)))
|
||||
|
||||
(define-public libconfig
|
||||
(package
|
||||
(name "libconfig")
|
||||
|
|
|
@ -505,13 +505,13 @@ (define-public python-acme
|
|||
(package
|
||||
(name "python-acme")
|
||||
;; Remember to update the hash of certbot when updating python-acme.
|
||||
(version "0.35.1")
|
||||
(version "0.37.2")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "acme" version))
|
||||
(sha256
|
||||
(base32
|
||||
"08y4ankn0di34c9d1c3pqd9by9n0ckzz7b5ld1g0fx6c32sbi259"))))
|
||||
"0p3zqhna9p8iy5i9mfhzdf5bmjigs05r6rlwnxykk4n67fp8yyc8"))))
|
||||
(build-system python-build-system)
|
||||
(arguments
|
||||
`(#:phases
|
||||
|
@ -559,10 +559,10 @@ (define-public certbot
|
|||
(version (package-version python-acme))
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri name version))
|
||||
(uri (pypi-uri "certbot" version))
|
||||
(sha256
|
||||
(base32
|
||||
"0q0855qvsvs4mgglss5iim7f1p22rv4rn1n6j731vv869v0yrs6p"))))
|
||||
"1xbfv4fwkgfp9qqzlk8wxbhchc61349m26q9fg35j9fnm253cm74"))))
|
||||
(build-system python-build-system)
|
||||
(arguments
|
||||
`(,@(substitute-keyword-arguments (package-arguments python-acme)
|
||||
|
|
|
@ -357,15 +357,14 @@ (define-public libx264
|
|||
(define-public mkvtoolnix
|
||||
(package
|
||||
(name "mkvtoolnix")
|
||||
(version "31.0.0")
|
||||
(version "37.0.0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://mkvtoolnix.download/sources/"
|
||||
name "-" version ".tar.xz"))
|
||||
"mkvtoolnix-" version ".tar.xz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0d8va2iamzc7y3wi71z8mk2vnqvnkgwb2p7casdfp37400x8r2pr"))
|
||||
(base32 "0r4d9318ymb9a0mkc0shi9p4kjy3m70s49v4f8dmjhvj63silhix"))
|
||||
(modules '((guix build utils)))
|
||||
(snippet '(begin
|
||||
;; Delete bundled libraries.
|
||||
|
@ -419,6 +418,13 @@ (define-public mkvtoolnix
|
|||
"--enable-precompiled-headers=no")
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-after 'unpack 'patch-relative-file-names
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
(let ((out (assoc-ref outputs "out")))
|
||||
(substitute* "src/mkvtoolnix-gui/util/settings.cpp"
|
||||
(("mkvmerge" match)
|
||||
(string-append out "/bin/" match)))
|
||||
#t)))
|
||||
(add-before 'configure 'add-googletest
|
||||
(lambda* (#:key inputs #:allow-other-keys)
|
||||
(symlink
|
||||
|
@ -466,8 +472,9 @@ (define-public mkvtoolnix
|
|||
(synopsis "Tools to create, alter and inspect Matroska files")
|
||||
(description
|
||||
"MKVToolNix provides tools for getting information about Matroska files
|
||||
(@code{mkvinfo}), extracting tracks/data from Matroska files (@code{mkvextract})
|
||||
and creating Matroska files from other media files (@code{mkvmerge}).")
|
||||
(@command{mkvinfo}), extracting tracks/data from Matroska files
|
||||
(@command{mkvextract}), and creating Matroska files from other media files
|
||||
(@command{mkvmerge}).")
|
||||
(license license:gpl2)))
|
||||
|
||||
(define-public x265
|
||||
|
@ -1485,7 +1492,7 @@ (define-public libvpx-1.7
|
|||
(define-public youtube-dl
|
||||
(package
|
||||
(name "youtube-dl")
|
||||
(version "2019.08.02")
|
||||
(version "2019.08.13")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://github.com/rg3/youtube-dl/releases/"
|
||||
|
@ -1493,7 +1500,7 @@ (define-public youtube-dl
|
|||
version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"101b6jrf6ckbxrn76ppvgdyrb25p7d247kn8qgq7n476sfnkfg2p"))))
|
||||
"0b94hrhbqa7jhn91pxsbphg2ylwkpkknb2y4v4sczp7rjvgmjgdj"))))
|
||||
(build-system python-build-system)
|
||||
(arguments
|
||||
;; The problem here is that the directory for the man page and completion
|
||||
|
|
|
@ -365,10 +365,10 @@ (define-public vimb
|
|||
driven and does not detract you from your daily work.")
|
||||
(license license:gpl3+)))
|
||||
|
||||
(define-public next-gtk-webkit
|
||||
(define next-gtk-webkit
|
||||
(package
|
||||
(name "next-gtk-webkit")
|
||||
(version "1.2.2")
|
||||
(version "1.3.0")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
|
@ -377,7 +377,7 @@ (define-public next-gtk-webkit
|
|||
(commit version)))
|
||||
(sha256
|
||||
(base32
|
||||
"1bif1k738knhifxhkn0d2x1m521zkx40pri44vyjqncp9r95hkbk"))
|
||||
"0ibq30xrf871pkpasi8p9krn0pmd86rsdzb3jqvz3wnp4wa3hl9d"))
|
||||
(file-name (git-file-name "next" version))))
|
||||
(build-system glib-or-gtk-build-system)
|
||||
(arguments
|
||||
|
@ -405,71 +405,124 @@ (define-public next-gtk-webkit
|
|||
features for productive professionals.")
|
||||
(license license:bsd-3)))
|
||||
|
||||
(define-public sbcl-next
|
||||
(define sbcl-next-download-manager
|
||||
(package
|
||||
(inherit next-gtk-webkit)
|
||||
(name "sbcl-next")
|
||||
(name "sbcl-next-download-manager")
|
||||
(build-system asdf-build-system/sbcl)
|
||||
(outputs '("out" "lib"))
|
||||
(arguments
|
||||
`(#:tests? #f ; no tests
|
||||
#:phases (modify-phases %standard-phases
|
||||
(add-after 'unpack 'patch-platform-port-path
|
||||
(lambda* (#:key inputs #:allow-other-keys)
|
||||
(substitute* "source/ports/gtk-webkit.lisp"
|
||||
(("\"next-gtk-webkit\"")
|
||||
(string-append "\"" (assoc-ref inputs "next-gtk-webkit")
|
||||
"/bin/next-gtk-webkit\"")))))
|
||||
(add-before 'cleanup 'move-bundle
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
(define lib (assoc-ref outputs "lib"))
|
||||
(define actual-fasl (string-append
|
||||
lib
|
||||
"/lib/sbcl/next.fasl"))
|
||||
(define expected-fasl (string-append
|
||||
lib
|
||||
"/lib/sbcl/next--system.fasl"))
|
||||
(copy-file actual-fasl expected-fasl)
|
||||
#t))
|
||||
(add-after 'create-symlinks 'build-program
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
(build-program
|
||||
(string-append (assoc-ref outputs "out") "/bin/next")
|
||||
outputs
|
||||
#:entry-program '((next:start-with-port) 0))))
|
||||
(add-before 'build 'install-assets
|
||||
;; Since the ASDF build system generates a new .asd with a
|
||||
;; possibly suffixed and thus illegal version number, assets
|
||||
;; should not be installed after the 'build phase or else
|
||||
;; the illegal version will result in NIL in the .desktop
|
||||
;; file.
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
(with-output-to-file "version"
|
||||
(lambda _
|
||||
(format #t "~a" ,(package-version next-gtk-webkit))))
|
||||
(invoke "make" "install-assets"
|
||||
(string-append "PREFIX="
|
||||
(assoc-ref outputs "out"))))))))
|
||||
`(#:tests? #f ; Need online access.
|
||||
#:asd-file "next.asd"
|
||||
#:asd-system-name "download-manager"))
|
||||
(inputs
|
||||
`(("next-gtk-webkit" ,next-gtk-webkit)
|
||||
;; Lisp libraries:
|
||||
`(;; ASD libraries:
|
||||
("trivial-features" ,sbcl-trivial-features)
|
||||
("alexandria" ,sbcl-alexandria)
|
||||
("anaphora" ,sbcl-anaphora)
|
||||
("closer-mop" ,sbcl-closer-mop)
|
||||
;; Lisp libraries:
|
||||
("cl-ppcre" ,sbcl-cl-ppcre)
|
||||
("dexador" ,sbcl-dexador)
|
||||
("log4cl" ,sbcl-log4cl)
|
||||
("find-port" ,sbcl-find-port)
|
||||
("cl-strings" ,sbcl-cl-strings)
|
||||
("cl-string-match" ,sbcl-cl-string-match)
|
||||
("puri" ,sbcl-puri)
|
||||
("sqlite" ,sbcl-cl-sqlite)
|
||||
("parenscript" ,sbcl-parenscript)
|
||||
("cl-json" ,sbcl-cl-json)
|
||||
("swank" ,sbcl-slime-swank)
|
||||
("cl-markup" ,sbcl-cl-markup)
|
||||
("cl-css" ,sbcl-cl-css)
|
||||
("bordeaux-threads" ,sbcl-bordeaux-threads)
|
||||
("s-xml-rpc" ,sbcl-s-xml-rpc)
|
||||
("unix-opts" ,sbcl-unix-opts)
|
||||
("trivial-clipboard" ,sbcl-trivial-clipboard)))
|
||||
(synopsis "Infinitely extensible web-browser (with Lisp development files)")))
|
||||
("lparallel" ,sbcl-lparallel)
|
||||
("quri" ,sbcl-quri)
|
||||
("str" ,sbcl-cl-str)))
|
||||
(native-inputs
|
||||
`(("prove-asdf" ,sbcl-prove-asdf)))
|
||||
(synopsis "Infinitely extensible web-browser (download manager)")))
|
||||
|
||||
(define-public next
|
||||
(let ((version (package-version next-gtk-webkit)))
|
||||
(package
|
||||
(inherit next-gtk-webkit)
|
||||
(name "next")
|
||||
(build-system asdf-build-system/sbcl)
|
||||
(outputs '("out" "lib"))
|
||||
(arguments
|
||||
`(#:tests? #f ; no tests
|
||||
#:asd-system-name "next"
|
||||
#:phases (modify-phases %standard-phases
|
||||
(add-after 'unpack 'patch-platform-port-path
|
||||
(lambda* (#:key inputs #:allow-other-keys)
|
||||
(substitute* "source/ports/gtk-webkit.lisp"
|
||||
(("\"next-gtk-webkit\"")
|
||||
(string-append "\"" (assoc-ref inputs "next-gtk-webkit")
|
||||
"/bin/next-gtk-webkit\"")))
|
||||
#t))
|
||||
(add-after 'patch-platform-port-path 'patch-version
|
||||
;; When the version is not just dot-separated numerals
|
||||
;; (e.g. a git-commit version), Guix modifies the .asd with
|
||||
;; an illegal version number, and then Next fails to query
|
||||
;; it. So we hard-code it here.
|
||||
(lambda* (#:key inputs #:allow-other-keys)
|
||||
(let ((version (format #f "~a" ,version)))
|
||||
(substitute* "source/global.lisp"
|
||||
(("version\\)\\)\\)")
|
||||
(string-append "version)))
|
||||
(setf +version+ \"" version "\")"))))
|
||||
#t))
|
||||
(add-before 'cleanup 'move-bundle
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
(define lib (assoc-ref outputs "lib"))
|
||||
(define actual-fasl (string-append
|
||||
lib
|
||||
"/lib/sbcl/next.fasl"))
|
||||
(define expected-fasl (string-append
|
||||
lib
|
||||
"/lib/sbcl/next--system.fasl"))
|
||||
(copy-file actual-fasl expected-fasl)
|
||||
#t))
|
||||
(add-after 'create-symlinks 'build-program
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
(build-program
|
||||
(string-append (assoc-ref outputs "out") "/bin/next")
|
||||
outputs
|
||||
#:entry-program '((next:entry-point) 0))))
|
||||
(add-before 'build 'install-assets
|
||||
;; Since the ASDF build system generates a new .asd with a
|
||||
;; possibly suffixed and thus illegal version number, assets
|
||||
;; should not be installed after the 'build phase or else
|
||||
;; the illegal version will result in NIL in the .desktop
|
||||
;; file.
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
(with-output-to-file "version"
|
||||
(lambda _
|
||||
(format #t "~a" ,(package-version next-gtk-webkit))))
|
||||
(invoke "make" "install-assets"
|
||||
(string-append "PREFIX="
|
||||
(assoc-ref outputs "out"))))))))
|
||||
(inputs
|
||||
`(("next-gtk-webkit" ,next-gtk-webkit)
|
||||
;; ASD libraries:
|
||||
("trivial-features" ,sbcl-trivial-features)
|
||||
("trivial-garbage" ,sbcl-trivial-garbage)
|
||||
;; Lisp libraries:
|
||||
("alexandria" ,sbcl-alexandria)
|
||||
("bordeaux-threads" ,sbcl-bordeaux-threads)
|
||||
("cl-css" ,sbcl-cl-css)
|
||||
("cl-json" ,sbcl-cl-json)
|
||||
("cl-markup" ,sbcl-cl-markup)
|
||||
("cl-ppcre" ,sbcl-cl-ppcre)
|
||||
("cl-ppcre-unicode" ,sbcl-cl-ppcre-unicode)
|
||||
("cl-string-match" ,sbcl-cl-string-match)
|
||||
("cl-strings" ,sbcl-cl-strings)
|
||||
("closer-mop" ,sbcl-closer-mop)
|
||||
("dbus" ,cl-dbus)
|
||||
("dexador" ,sbcl-dexador)
|
||||
("ironclad" ,sbcl-ironclad)
|
||||
("log4cl" ,sbcl-log4cl)
|
||||
("lparallel" ,sbcl-lparallel)
|
||||
("mk-string-metrics" ,sbcl-mk-string-metrics)
|
||||
("parenscript" ,sbcl-parenscript)
|
||||
("quri" ,sbcl-quri)
|
||||
("sqlite" ,sbcl-cl-sqlite)
|
||||
("str" ,sbcl-cl-str)
|
||||
("swank" ,sbcl-slime-swank)
|
||||
("trivia" ,sbcl-trivia)
|
||||
("trivial-clipboard" ,sbcl-trivial-clipboard)
|
||||
("unix-opts" ,sbcl-unix-opts)
|
||||
;; Local deps
|
||||
("next-download-manager" ,sbcl-next-download-manager)))
|
||||
(native-inputs
|
||||
`(("prove-asdf" ,sbcl-prove-asdf)))
|
||||
(synopsis "Infinitely extensible web-browser (with Lisp development files)"))))
|
||||
|
||||
(define-public sbcl-next
|
||||
(deprecated-package "sbcl-next" next))
|
||||
|
|
|
@ -68,6 +68,7 @@ (define-module (gnu packages web)
|
|||
#:use-module (guix build-system python)
|
||||
#:use-module (guix build-system ant)
|
||||
#:use-module (guix build-system scons)
|
||||
#:use-module (guix build-system go)
|
||||
#:use-module (gnu packages)
|
||||
#:use-module (gnu packages admin)
|
||||
#:use-module (gnu packages adns)
|
||||
|
@ -92,6 +93,7 @@ (define-module (gnu packages web)
|
|||
#:use-module (gnu packages gnome)
|
||||
#:use-module (gnu packages gnu-doc)
|
||||
#:use-module (gnu packages gnupg)
|
||||
#:use-module (gnu packages golang)
|
||||
#:use-module (gnu packages gperf)
|
||||
#:use-module (gnu packages gtk)
|
||||
#:use-module (gnu packages guile)
|
||||
|
@ -6596,3 +6598,35 @@ (define-public anonip
|
|||
|
||||
Anonip can also be uses as a Python module in your own Python application.")
|
||||
(license license:bsd-3)))
|
||||
|
||||
(define-public poussetaches
|
||||
(package
|
||||
(name "poussetaches")
|
||||
(version "0.0.1")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/tsileo/poussetaches")
|
||||
(commit version)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"07106kfcz3a39jvrv3mlqqxlihsmdhgkrjnqznyjsij9absgvdv6"))))
|
||||
(build-system go-build-system)
|
||||
(propagated-inputs
|
||||
`(("go-github-com-robfig-cron" ,go-github-com-robfig-cron)
|
||||
("go-golang-org-x-time-rate" ,go-golang-org-x-time-rate)))
|
||||
(arguments
|
||||
`(#:import-path "github.com/tsileo/poussetaches"))
|
||||
(home-page "https://github.com/tsileo/poussetaches")
|
||||
(synopsis "Lightweight asynchronous task execution service")
|
||||
(description "Poussetaches (which literally means \"push tasks\" in
|
||||
French) is a lightweight asynchronous task execution service that aims to
|
||||
replace Celery and RabbitMQ for small Python applications.
|
||||
|
||||
The app posts base64-encoded payload to poussetaches and specifies the
|
||||
endpoint that will be used to trigger the task. Poussetaches makes HTTP
|
||||
requests with the registered payload until the right status code is
|
||||
returned.")
|
||||
(license license:isc)))
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
;;; Copyright © 2015 Sou Bunnbu <iyzsong@gmail.com>
|
||||
;;; Copyright © 2015 David Hashe <david.hashe@dhashe.com>
|
||||
;;; Copyright © 2015 Ricardo Wurmus <rekado@elephly.net>
|
||||
;;; Copyright © 2015, 2016, 2017, 2018 Mark H Weaver <mhw@netris.org>
|
||||
;;; Copyright © 2015, 2016, 2017, 2018, 2019 Mark H Weaver <mhw@netris.org>
|
||||
;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
|
||||
;;; Copyright © 2018 Pierre Neidhardt <mail@ambrevar.xyz>
|
||||
;;;
|
||||
|
@ -59,14 +59,14 @@ (define-module (gnu packages webkit)
|
|||
(define-public webkitgtk
|
||||
(package
|
||||
(name "webkitgtk")
|
||||
(version "2.24.3")
|
||||
(version "2.24.4")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://www.webkitgtk.org/releases/"
|
||||
name "-" version ".tar.xz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0lbcrw5axwrbrajxq7fqywfyh0djqi23ynzb5wi5ghw2grnp83cl"))))
|
||||
"1n3x5g1z6rg9n1ssna7wi0z6zlprjm4wzk544v14wqi6q0lv2s46"))))
|
||||
(build-system cmake-build-system)
|
||||
(outputs '("out" "doc"))
|
||||
(arguments
|
||||
|
|
|
@ -72,7 +72,7 @@ (define-module (gnu packages wine)
|
|||
(define-public wine
|
||||
(package
|
||||
(name "wine")
|
||||
(version "4.0.1")
|
||||
(version "4.0.2")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://dl.winehq.org/wine/source/"
|
||||
|
@ -80,7 +80,7 @@ (define-public wine
|
|||
"/wine-" version ".tar.xz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0j29df0px6dzin4j0cbxgza4msvf9spmwranv25krq1g9kq959nk"))))
|
||||
"0x5x9pvhryzhq1m7i8gx5wwwj341zz05zymadlhfw5w45xlm0h4r"))))
|
||||
(build-system gnu-build-system)
|
||||
(native-inputs `(("pkg-config" ,pkg-config)
|
||||
("gettext" ,gettext-minimal)
|
||||
|
|
|
@ -1183,7 +1183,7 @@ (define-public wlroots
|
|||
(define-public sway
|
||||
(package
|
||||
(name "sway")
|
||||
(version "1.1.1")
|
||||
(version "1.2")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
|
@ -1192,7 +1192,7 @@ (define-public sway
|
|||
(commit version)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "0yhn9zdg9mzfhn97c440lk3pw6122nrhx0is5sqmvgr6p814f776"))))
|
||||
(base32 "0vch2zm5afc76ia78p3vg71zr2fyda67l9hd2h0x1jq3mnvfbxnd"))))
|
||||
(build-system meson-build-system)
|
||||
(arguments
|
||||
`(#:phases
|
||||
|
|
|
@ -3,7 +3,7 @@
|
|||
;;; Copyright © 2016, 2017, 2018, 2019 Ludovic Courtès <ludo@gnu.org>
|
||||
;;; Copyright © 2017 Mathieu Othacehe <m.othacehe@gmail.com>
|
||||
;;; Copyright © 2017 Jan Nieuwenhuizen <janneke@gnu.org>
|
||||
;;; Copyright © 2018 Ricardo Wurmus <rekado@elephly.net>
|
||||
;;; Copyright © 2018, 2019 Ricardo Wurmus <rekado@elephly.net>
|
||||
;;; Copyright © 2018 Clément Lassieur <clement@lassieur.org>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
|
@ -52,6 +52,8 @@ (define-record-type* <cuirass-configuration>
|
|||
(default cuirass))
|
||||
(log-file cuirass-configuration-log-file ;string
|
||||
(default "/var/log/cuirass.log"))
|
||||
(web-log-file cuirass-configuration-web-log-file ;string
|
||||
(default "/var/log/cuirass-web.log"))
|
||||
(cache-directory cuirass-configuration-cache-directory ;string (dir-name)
|
||||
(default "/var/cache/cuirass"))
|
||||
(ttl cuirass-configuration-ttl ;integer
|
||||
|
@ -83,6 +85,7 @@ (define (cuirass-shepherd-service config)
|
|||
(cuirass-configuration? config)
|
||||
(let ((cuirass (cuirass-configuration-cuirass config))
|
||||
(cache-directory (cuirass-configuration-cache-directory config))
|
||||
(web-log-file (cuirass-configuration-web-log-file config))
|
||||
(log-file (cuirass-configuration-log-file config))
|
||||
(user (cuirass-configuration-user config))
|
||||
(group (cuirass-configuration-group config))
|
||||
|
@ -106,8 +109,6 @@ (define (cuirass-shepherd-service config)
|
|||
#$(scheme-file "cuirass-specs.scm" specs)
|
||||
"--database" #$database
|
||||
"--ttl" #$(string-append (number->string ttl) "s")
|
||||
"--port" #$(number->string port)
|
||||
"--listen" #$host
|
||||
"--interval" #$(number->string interval)
|
||||
#$@(if use-substitutes? '("--use-substitutes") '())
|
||||
#$@(if one-shot? '("--one-shot") '())
|
||||
|
@ -121,6 +122,28 @@ (define (cuirass-shepherd-service config)
|
|||
#:user #$user
|
||||
#:group #$group
|
||||
#:log-file #$log-file))
|
||||
(stop #~(make-kill-destructor)))
|
||||
(shepherd-service
|
||||
(documentation "Run Cuirass web interface.")
|
||||
(provision '(cuirass-web))
|
||||
(requirement '(guix-daemon networking))
|
||||
(start #~(make-forkexec-constructor
|
||||
(list (string-append #$cuirass "/bin/cuirass")
|
||||
"--cache-directory" #$cache-directory
|
||||
"--specifications"
|
||||
#$(scheme-file "cuirass-specs.scm" specs)
|
||||
"--database" #$database
|
||||
"--ttl" #$(string-append (number->string ttl) "s")
|
||||
"--web"
|
||||
"--port" #$(number->string port)
|
||||
"--listen" #$host
|
||||
"--interval" #$(number->string interval)
|
||||
#$@(if use-substitutes? '("--use-substitutes") '())
|
||||
#$@(if fallback? '("--fallback") '()))
|
||||
|
||||
#:user #$user
|
||||
#:group #$group
|
||||
#:log-file #$web-log-file))
|
||||
(stop #~(make-kill-destructor)))))))
|
||||
|
||||
(define (cuirass-account config)
|
||||
|
|
|
@ -3,6 +3,7 @@
|
|||
;;; Copyright © 2017 Clément Lassieur <clement@lassieur.org>
|
||||
;;; Copyright © 2018 Ricardo Wurmus <rekado@elephly.net>
|
||||
;;; Copyright © 2019 Alex Griffin <a@ajgrf.com>
|
||||
;;; Copyright © 2019 Tobias Geerinckx-Rice <me@tobias.gr>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
|
@ -170,7 +171,10 @@ (define (serialize-boolean-or-non-negative-integer field-name x)
|
|||
|
||||
(define (ssl-options? x)
|
||||
(and (list? x)
|
||||
(and-map (lambda (elt) (memq elt '(AllowRC4 AllowSSL3))) x)))
|
||||
(and-map (lambda (elt) (memq elt '(AllowRC4
|
||||
AllowSSL3
|
||||
DenyCBC
|
||||
DenyTLS1.0))) x)))
|
||||
(define (serialize-ssl-options field-name val)
|
||||
(serialize-field field-name
|
||||
(match val
|
||||
|
@ -805,12 +809,15 @@ (define-configuration cups-configuration
|
|||
all addresses.")
|
||||
(ssl-options
|
||||
(ssl-options '())
|
||||
"Sets encryption options.
|
||||
By default, CUPS only supports encryption using TLS v1.0 or higher using known
|
||||
secure cipher suites. The @code{AllowRC4} option enables the 128-bit RC4
|
||||
cipher suites, which are required for some older clients that do not implement
|
||||
newer ones. The @code{AllowSSL3} option enables SSL v3.0, which is required
|
||||
for some older clients that do not support TLS v1.0.")
|
||||
"Sets encryption options. By default, CUPS only supports encryption
|
||||
using TLS v1.0 or higher using known secure cipher suites. Security is
|
||||
reduced when @code{Allow} options are used, and enhanced when @code{Deny}
|
||||
options are used. The @code{AllowRC4} option enables the 128-bit RC4 cipher
|
||||
suites, which are required for some older clients. The @code{AllowSSL3} option
|
||||
enables SSL v3.0, which is required for some older clients that do not support
|
||||
TLS v1.0. The @code{DenyCBC} option disables all CBC cipher suites. The
|
||||
@code{DenyTLS1.0} option disables TLS v1.0 support - this sets the minimum
|
||||
protocol version to TLS v1.1.")
|
||||
#;
|
||||
(ssl-port
|
||||
(non-negative-integer 631)
|
||||
|
|
|
@ -963,23 +963,29 @@ (define (enlightenment-setuid-programs enlightenment-desktop-configuration)
|
|||
(match-record enlightenment-desktop-configuration
|
||||
<enlightenment-desktop-configuration>
|
||||
(enlightenment)
|
||||
(list (file-append enlightenment
|
||||
"/lib/enlightenment/utils/enlightenment_sys")
|
||||
(file-append enlightenment
|
||||
"/lib/enlightenment/utils/enlightenment_backlight")
|
||||
;; TODO: Move this binary to a screen-locker service.
|
||||
(file-append enlightenment
|
||||
"/lib/enlightenment/utils/enlightenment_ckpasswd")
|
||||
(file-append enlightenment
|
||||
(string-append
|
||||
"/lib/enlightenment/modules/cpufreq/"
|
||||
(match (string-tokenize (%current-system)
|
||||
(char-set-complement (char-set #\-)))
|
||||
((arch "linux") (string-append "linux-gnu-" arch))
|
||||
((arch "gnu") (string-append "gnu-" arch)))
|
||||
"-"
|
||||
(version-major+minor (package-version enlightenment))
|
||||
"/freqset")))))
|
||||
(let ((module-arch (match (string-tokenize (%current-system)
|
||||
(char-set-complement (char-set #\-)))
|
||||
((arch "linux") (string-append "linux-gnu-" arch))
|
||||
((arch "gnu") (string-append "gnu-" arch)))))
|
||||
(list (file-append enlightenment
|
||||
"/lib/enlightenment/utils/enlightenment_sys")
|
||||
(file-append enlightenment
|
||||
"/lib/enlightenment/utils/enlightenment_backlight")
|
||||
;; TODO: Move this binary to a screen-locker service.
|
||||
(file-append enlightenment
|
||||
"/lib/enlightenment/utils/enlightenment_ckpasswd")
|
||||
(file-append enlightenment
|
||||
(string-append
|
||||
"/lib/enlightenment/modules/cpufreq/"
|
||||
module-arch "-"
|
||||
(package-version enlightenment)
|
||||
"/freqset"))
|
||||
(file-append enlightenment
|
||||
(string-append
|
||||
"/lib/enlightenment/modules/sysinfo/"
|
||||
module-arch "-"
|
||||
(package-version enlightenment)
|
||||
"/cpuclock_sysfs"))))))
|
||||
|
||||
(define enlightenment-desktop-service-type
|
||||
(service-type
|
||||
|
|
|
@ -401,7 +401,8 @@ (define tlp-service-type
|
|||
(compose list tlp-configuration-tlp))
|
||||
(service-extension activation-service-type
|
||||
tlp-activation)))
|
||||
(default-value (tlp-configuration))))
|
||||
(default-value (tlp-configuration))
|
||||
(description "Run TLP, a power management tool.")))
|
||||
|
||||
(define (generate-tlp-documentation)
|
||||
(generate-documentation
|
||||
|
@ -441,4 +442,6 @@ (define thermald-service-type
|
|||
(name 'thermald)
|
||||
(extensions (list (service-extension shepherd-root-service-type
|
||||
thermald-shepherd-service)))
|
||||
(default-value (thermald-configuration))))
|
||||
(default-value (thermald-configuration))
|
||||
(description "Run thermald, a CPU frequency scaling service that helps
|
||||
prevent overheating.")))
|
||||
|
|
|
@ -100,7 +100,7 @@ (define marionette
|
|||
marionette))
|
||||
|
||||
(test-equal "Load docker image and run it"
|
||||
'("hello world" "hi!" "JSON!")
|
||||
'("hello world" "hi!" "JSON!" #o1777)
|
||||
(marionette-eval
|
||||
`(begin
|
||||
(define slurp
|
||||
|
@ -131,8 +131,15 @@ (define slurp
|
|||
,(string-append #$docker-cli "/bin/docker")
|
||||
"run" repository&tag
|
||||
"-c" "(use-modules (json))
|
||||
(display (json-string->scm (scm->json-string \"JSON!\")))")))
|
||||
(list response1 response2 response3)))
|
||||
(display (json-string->scm (scm->json-string \"JSON!\")))"))
|
||||
|
||||
;; Check whether /tmp exists.
|
||||
(response4 (slurp
|
||||
,(string-append #$docker-cli "/bin/docker")
|
||||
"run" repository&tag "-c"
|
||||
"(display (stat:perms (lstat \"/tmp\")))")))
|
||||
(list response1 response2 response3
|
||||
(string->number response4))))
|
||||
marionette))
|
||||
|
||||
(test-end)
|
||||
|
|
|
@ -134,22 +134,12 @@ (define* (configure #:key inputs
|
|||
;; upgrading the compiler for example.
|
||||
(setenv "RUSTFLAGS" "--cap-lints allow")
|
||||
(setenv "CC" (string-append (assoc-ref inputs "gcc") "/bin/gcc"))
|
||||
#t)
|
||||
|
||||
;; The Cargo.lock file tells the build system which crates are required for
|
||||
;; building and hardcodes their version and checksum. In order to build with
|
||||
;; the inputs we provide, we need to recreate the file with our inputs.
|
||||
(define* (update-cargo-lock #:key
|
||||
(vendor-dir "guix-vendor")
|
||||
#:allow-other-keys)
|
||||
"Regenerate the Cargo.lock file with the current build inputs."
|
||||
;; We don't use the Cargo.lock file to determine the package versions we use
|
||||
;; during building, and in any case if one is not present it is created
|
||||
;; during the 'build phase by cargo.
|
||||
(when (file-exists? "Cargo.lock")
|
||||
(begin
|
||||
;; Unfortunately we can't generate a Cargo.lock file until the checksums
|
||||
;; are generated, so we have an extra round of generate-all-checksums here.
|
||||
(generate-all-checksums vendor-dir)
|
||||
(delete-file "Cargo.lock")
|
||||
(invoke "cargo" "generate-lockfile")))
|
||||
(delete-file "Cargo.lock"))
|
||||
#t)
|
||||
|
||||
;; After the 'patch-generated-file-shebangs phase any vendored crates who have
|
||||
|
@ -203,7 +193,6 @@ (define %standard-phases
|
|||
(replace 'build build)
|
||||
(replace 'check check)
|
||||
(replace 'install install)
|
||||
(add-after 'configure 'update-cargo-lock update-cargo-lock)
|
||||
(add-after 'patch-generated-file-shebangs 'patch-cargo-checksums patch-cargo-checksums)))
|
||||
|
||||
(define* (cargo-build #:key inputs (phases %standard-phases)
|
||||
|
|
|
@ -47,6 +47,7 @@ (define (copy-linux-headers output kernel-headers)
|
|||
(install-file (pk 'src (string-append kernel-headers "/include/linux/" file))
|
||||
(pk 'dest (string-append incdir "/linux"))))
|
||||
'(
|
||||
"a.out.h" ; for 2.2.5
|
||||
"atalk.h" ; for 2.2.5
|
||||
"errno.h"
|
||||
"falloc.h"
|
||||
|
|
|
@ -71,7 +71,12 @@ (define len
|
|||
(define* (%highlight-argument arg #:optional (port (guix-warning-port)))
|
||||
"Highlight ARG, a format string argument, if PORT supports colors."
|
||||
(cond ((string? arg)
|
||||
(highlight arg port))
|
||||
;; If ARG contains white space, don't highlight it, on the grounds
|
||||
;; that it may be a complete message in its own, like those produced
|
||||
;; by 'guix lint.
|
||||
(if (string-any char-set:whitespace arg)
|
||||
arg
|
||||
(highlight arg port)))
|
||||
((symbol? arg)
|
||||
(highlight (symbol->string arg) port))
|
||||
(else arg)))
|
||||
|
|
|
@ -28,11 +28,13 @@ (define-module (guix docker)
|
|||
invoke))
|
||||
#:use-module (gnu build install)
|
||||
#:use-module (json) ;guile-json
|
||||
#:use-module (srfi srfi-1)
|
||||
#:use-module (srfi srfi-19)
|
||||
#:use-module (srfi srfi-26)
|
||||
#:use-module ((texinfo string-utils)
|
||||
#:select (escape-special-chars))
|
||||
#:use-module (rnrs bytevectors)
|
||||
#:use-module (ice-9 ftw)
|
||||
#:use-module (ice-9 match)
|
||||
#:export (build-docker-image))
|
||||
|
||||
|
@ -99,21 +101,18 @@ (define %tar-determinism-options
|
|||
'("--sort=name" "--mtime=@1"
|
||||
"--owner=root:0" "--group=root:0"))
|
||||
|
||||
(define symlink-source
|
||||
(define directive-file
|
||||
;; Return the file or directory created by a 'evaluate-populate-directive'
|
||||
;; directive.
|
||||
(match-lambda
|
||||
((source '-> target)
|
||||
(string-trim source #\/))))
|
||||
|
||||
(define (topmost-component file)
|
||||
"Return the topmost component of FILE. For instance, if FILE is \"/a/b/c\",
|
||||
return \"a\"."
|
||||
(match (string-tokenize file (char-set-complement (char-set #\/)))
|
||||
((first rest ...)
|
||||
first)))
|
||||
(string-trim source #\/))
|
||||
(('directory name _ ...)
|
||||
(string-trim name #\/))))
|
||||
|
||||
(define* (build-docker-image image paths prefix
|
||||
#:key
|
||||
(symlinks '())
|
||||
(extra-files '())
|
||||
(transformations '())
|
||||
(system (utsname:machine (uname)))
|
||||
database
|
||||
|
@ -133,8 +132,9 @@ (define* (build-docker-image image paths prefix
|
|||
ENVIRONMENT must be a list of name/value pairs. It specifies the environment
|
||||
variables that must be defined in the resulting image.
|
||||
|
||||
SYMLINKS must be a list of (SOURCE -> TARGET) tuples describing symlinks to be
|
||||
created in the image, where each TARGET is relative to PREFIX.
|
||||
EXTRA-FILES must be a list of directives for 'evaluate-populate-directive'
|
||||
describing non-store files that must be created in the image.
|
||||
|
||||
TRANSFORMATIONS must be a list of (OLD -> NEW) tuples describing how to
|
||||
transform the PATHS. Any path in PATHS that begins with OLD will be rewritten
|
||||
in the Docker image so that it begins with NEW instead. If a path is a
|
||||
|
@ -199,25 +199,27 @@ (define transformation-options
|
|||
(with-output-to-file "json"
|
||||
(lambda () (scm->json (image-description id time))))
|
||||
|
||||
;; Create SYMLINKS.
|
||||
(for-each (match-lambda
|
||||
((source '-> target)
|
||||
(let ((source (string-trim source #\/)))
|
||||
(mkdir-p (dirname source))
|
||||
(symlink (string-append prefix "/" target)
|
||||
source))))
|
||||
symlinks)
|
||||
;; Create a directory for the non-store files that need to go into the
|
||||
;; archive.
|
||||
(mkdir "extra")
|
||||
|
||||
(when database
|
||||
;; Initialize /var/guix, assuming PREFIX points to a profile.
|
||||
(install-database-and-gc-roots "." database prefix))
|
||||
(with-directory-excursion "extra"
|
||||
;; Create non-store files.
|
||||
(for-each (cut evaluate-populate-directive <> "./")
|
||||
extra-files)
|
||||
|
||||
(when database
|
||||
;; Initialize /var/guix, assuming PREFIX points to a profile.
|
||||
(install-database-and-gc-roots "." database prefix))
|
||||
|
||||
(apply invoke "tar" "-cf" "../layer.tar"
|
||||
`(,@transformation-options
|
||||
,@%tar-determinism-options
|
||||
,@paths
|
||||
,@(scandir "."
|
||||
(lambda (file)
|
||||
(not (member file '("." ".."))))))))
|
||||
|
||||
(apply invoke "tar" "-cf" "layer.tar"
|
||||
`(,@transformation-options
|
||||
,@%tar-determinism-options
|
||||
,@paths
|
||||
,@(if database '("var") '())
|
||||
,@(map symlink-source symlinks)))
|
||||
;; It is possible for "/" to show up in the archive, especially when
|
||||
;; applying transformations. For example, the transformation
|
||||
;; "s,^/a,," will (perhaps surprisingly) cause GNU tar to transform
|
||||
|
@ -231,13 +233,7 @@ (define transformation-options
|
|||
(lambda ()
|
||||
(system* "tar" "--delete" "/" "-f" "layer.tar")))
|
||||
|
||||
(for-each delete-file-recursively
|
||||
(map (compose topmost-component symlink-source)
|
||||
symlinks))
|
||||
|
||||
;; Delete /var/guix.
|
||||
(when database
|
||||
(delete-file-recursively "var")))
|
||||
(delete-file-recursively "extra"))
|
||||
|
||||
(with-output-to-file "config.json"
|
||||
(lambda ()
|
||||
|
|
|
@ -139,8 +139,11 @@ (define recursive?
|
|||
;; As a last resort, attempt to download from Software Heritage.
|
||||
;; XXX: Currently recursive checkouts are not supported.
|
||||
(and (not recursive?)
|
||||
(swh-download (getenv "git url") (getenv "git commit")
|
||||
#$output)))))))
|
||||
(begin
|
||||
(format (current-error-port)
|
||||
"Trying to download from Software Heritage...~%")
|
||||
(swh-download (getenv "git url") (getenv "git commit")
|
||||
#$output))))))))
|
||||
|
||||
(mlet %store-monad ((guile (package->derivation guile system)))
|
||||
(gexp->derivation (or name "git-checkout") build
|
||||
|
|
|
@ -24,6 +24,7 @@ (define-module (guix import cran)
|
|||
#:use-module ((ice-9 rdelim) #:select (read-string read-line))
|
||||
#:use-module (srfi srfi-1)
|
||||
#:use-module (srfi srfi-2)
|
||||
#:use-module (srfi srfi-11)
|
||||
#:use-module (srfi srfi-26)
|
||||
#:use-module (srfi srfi-34)
|
||||
#:use-module (ice-9 receive)
|
||||
|
@ -32,11 +33,13 @@ (define-module (guix import cran)
|
|||
#:use-module (guix http-client)
|
||||
#:use-module (gcrypt hash)
|
||||
#:use-module (guix store)
|
||||
#:use-module ((guix serialization) #:select (write-file))
|
||||
#:use-module (guix base32)
|
||||
#:use-module ((guix download) #:select (download-to-store))
|
||||
#:use-module (guix import utils)
|
||||
#:use-module ((guix build utils) #:select (find-files))
|
||||
#:use-module (guix utils)
|
||||
#:use-module (guix git)
|
||||
#:use-module ((guix build-system r) #:select (cran-uri bioconductor-uri))
|
||||
#:use-module (guix upstream)
|
||||
#:use-module (guix packages)
|
||||
|
@ -166,11 +169,25 @@ (define* (latest-bioconductor-package-version name #:optional type)
|
|||
(bioconductor-packages-list type))
|
||||
(cut assoc-ref <> "Version")))
|
||||
|
||||
;; XXX taken from (guix scripts hash)
|
||||
(define (vcs-file? file stat)
|
||||
(case (stat:type stat)
|
||||
((directory)
|
||||
(member (basename file) '(".bzr" ".git" ".hg" ".svn" "CVS")))
|
||||
((regular)
|
||||
;; Git sub-modules have a '.git' file that is a regular text file.
|
||||
(string=? (basename file) ".git"))
|
||||
(else
|
||||
#f)))
|
||||
|
||||
;; Little helper to download URLs only once.
|
||||
(define download
|
||||
(memoize
|
||||
(lambda (url)
|
||||
(with-store store (download-to-store store url)))))
|
||||
(lambda* (url #:optional git)
|
||||
(with-store store
|
||||
(if git
|
||||
(latest-repository-commit store url)
|
||||
(download-to-store store url))))))
|
||||
|
||||
(define (fetch-description repository name)
|
||||
"Return an alist of the contents of the DESCRIPTION file for the R package
|
||||
|
@ -211,7 +228,18 @@ (define (fetch-description repository name)
|
|||
(string-append dir "/DESCRIPTION") read-string))
|
||||
(lambda (meta)
|
||||
(if (boolean? type) meta
|
||||
(cons `(bioconductor-type . ,type) meta))))))))))))
|
||||
(cons `(bioconductor-type . ,type) meta))))))))))
|
||||
((git)
|
||||
;; Download the git repository at "NAME"
|
||||
(call-with-values
|
||||
(lambda () (download name #t))
|
||||
(lambda (dir commit)
|
||||
(and=> (description->alist (with-input-from-file
|
||||
(string-append dir "/DESCRIPTION") read-string))
|
||||
(lambda (meta)
|
||||
(cons* `(git . ,name)
|
||||
`(git-commit . ,commit)
|
||||
meta))))))))
|
||||
|
||||
(define (listify meta field)
|
||||
"Look up FIELD in the alist META. If FIELD contains a comma-separated
|
||||
|
@ -256,7 +284,7 @@ (define invalid-packages
|
|||
|
||||
(define cran-guix-name (cut guix-name "r-" <>))
|
||||
|
||||
(define (needs-fortran? tarball)
|
||||
(define (tarball-needs-fortran? tarball)
|
||||
"Check if the TARBALL contains Fortran source files."
|
||||
(define (check pattern)
|
||||
(parameterize ((current-error-port (%make-void-port "rw+"))
|
||||
|
@ -266,69 +294,127 @@ (define (check pattern)
|
|||
(check "*.f95")
|
||||
(check "*.f")))
|
||||
|
||||
(define (directory-needs-fortran? dir)
|
||||
"Check if the directory DIR contains Fortran source files."
|
||||
(match (find-files dir "\\.f(90|95)?")
|
||||
(() #f)
|
||||
(_ #t)))
|
||||
|
||||
(define (needs-fortran? thing tarball?)
|
||||
"Check if the THING contains Fortran source files."
|
||||
(if tarball?
|
||||
(tarball-needs-fortran? thing)
|
||||
(directory-needs-fortran? thing)))
|
||||
|
||||
(define (files-match-pattern? directory regexp . file-patterns)
|
||||
"Return #T if any of the files matching FILE-PATTERNS in the DIRECTORY match
|
||||
the given REGEXP."
|
||||
(let ((pattern (make-regexp regexp)))
|
||||
(any (lambda (file)
|
||||
(call-with-input-file file
|
||||
(lambda (port)
|
||||
(let loop ()
|
||||
(let ((line (read-line port)))
|
||||
(cond
|
||||
((eof-object? line) #f)
|
||||
((regexp-exec pattern line) #t)
|
||||
(else (loop))))))))
|
||||
(apply find-files directory file-patterns))))
|
||||
|
||||
(define (tarball-files-match-pattern? tarball regexp . file-patterns)
|
||||
"Return #T if any of the files represented by FILE-PATTERNS in the TARBALL
|
||||
match the given REGEXP."
|
||||
(call-with-temporary-directory
|
||||
(lambda (dir)
|
||||
(let ((pattern (make-regexp regexp)))
|
||||
(parameterize ((current-error-port (%make-void-port "rw+")))
|
||||
(apply system* "tar"
|
||||
"xf" tarball "-C" dir
|
||||
`("--wildcards" ,@file-patterns)))
|
||||
(any (lambda (file)
|
||||
(call-with-input-file file
|
||||
(lambda (port)
|
||||
(let loop ()
|
||||
(let ((line (read-line port)))
|
||||
(cond
|
||||
((eof-object? line) #f)
|
||||
((regexp-exec pattern line) #t)
|
||||
(else (loop))))))))
|
||||
(find-files dir))))))
|
||||
(parameterize ((current-error-port (%make-void-port "rw+")))
|
||||
(apply system* "tar"
|
||||
"xf" tarball "-C" dir
|
||||
`("--wildcards" ,@file-patterns)))
|
||||
(files-match-pattern? dir regexp))))
|
||||
|
||||
(define (needs-zlib? tarball)
|
||||
(define (directory-needs-zlib? dir)
|
||||
"Return #T if any of the Makevars files in the src directory DIR contain a
|
||||
zlib linker flag."
|
||||
(files-match-pattern? dir "-lz" "(Makevars.*|configure.*)"))
|
||||
|
||||
(define (tarball-needs-zlib? tarball)
|
||||
"Return #T if any of the Makevars files in the src directory of the TARBALL
|
||||
contain a zlib linker flag."
|
||||
(tarball-files-match-pattern?
|
||||
tarball "-lz"
|
||||
"*/src/Makevars*" "*/src/configure*" "*/configure*"))
|
||||
|
||||
(define (needs-pkg-config? tarball)
|
||||
(define (needs-zlib? thing tarball?)
|
||||
"Check if the THING contains files indicating a dependency on zlib."
|
||||
(if tarball?
|
||||
(tarball-needs-zlib? thing)
|
||||
(directory-needs-zlib? thing)))
|
||||
|
||||
(define (directory-needs-pkg-config? dir)
|
||||
"Return #T if any of the Makevars files in the src directory DIR reference
|
||||
the pkg-config tool."
|
||||
(files-match-pattern? dir "pkg-config"
|
||||
"(Makevars.*|configure.*)"))
|
||||
|
||||
(define (tarball-needs-pkg-config? tarball)
|
||||
"Return #T if any of the Makevars files in the src directory of the TARBALL
|
||||
reference the pkg-config tool."
|
||||
(tarball-files-match-pattern?
|
||||
tarball "pkg-config"
|
||||
"*/src/Makevars*" "*/src/configure*" "*/configure*"))
|
||||
|
||||
(define (needs-pkg-config? thing tarball?)
|
||||
"Check if the THING contains files indicating a dependency on pkg-config."
|
||||
(if tarball?
|
||||
(tarball-needs-pkg-config? thing)
|
||||
(directory-needs-pkg-config? thing)))
|
||||
|
||||
;; XXX adapted from (guix scripts hash)
|
||||
(define (file-hash file select? recursive?)
|
||||
;; Compute the hash of FILE.
|
||||
(if recursive?
|
||||
(let-values (((port get-hash) (open-sha256-port)))
|
||||
(write-file file port #:select? select?)
|
||||
(force-output port)
|
||||
(get-hash))
|
||||
(call-with-input-file file port-sha256)))
|
||||
|
||||
(define (description->package repository meta)
|
||||
"Return the `package' s-expression for an R package published on REPOSITORY
|
||||
from the alist META, which was derived from the R package's DESCRIPTION file."
|
||||
(let* ((base-url (case repository
|
||||
((cran) %cran-url)
|
||||
((bioconductor) %bioconductor-url)))
|
||||
((bioconductor) %bioconductor-url)
|
||||
((git) #f)))
|
||||
(uri-helper (case repository
|
||||
((cran) cran-uri)
|
||||
((bioconductor) bioconductor-uri)))
|
||||
((bioconductor) bioconductor-uri)
|
||||
((git) #f)))
|
||||
(name (assoc-ref meta "Package"))
|
||||
(synopsis (assoc-ref meta "Title"))
|
||||
(version (assoc-ref meta "Version"))
|
||||
(license (string->license (assoc-ref meta "License")))
|
||||
;; Some packages have multiple home pages. Some have none.
|
||||
(home-page (match (listify meta "URL")
|
||||
((url rest ...) url)
|
||||
(_ (string-append base-url name))))
|
||||
(source-url (match (apply uri-helper name version
|
||||
(case repository
|
||||
((bioconductor)
|
||||
(list (assoc-ref meta 'bioconductor-type)))
|
||||
(else '())))
|
||||
((url rest ...) url)
|
||||
((? string? url) url)
|
||||
(_ #f)))
|
||||
(tarball (download source-url))
|
||||
(home-page (case repository
|
||||
((git) (assoc-ref meta 'git))
|
||||
(else (match (listify meta "URL")
|
||||
((url rest ...) url)
|
||||
(_ (string-append base-url name))))))
|
||||
(source-url (case repository
|
||||
((git) (assoc-ref meta 'git))
|
||||
(else
|
||||
(match (apply uri-helper name version
|
||||
(case repository
|
||||
((bioconductor)
|
||||
(list (assoc-ref meta 'bioconductor-type)))
|
||||
(else '())))
|
||||
((url rest ...) url)
|
||||
((? string? url) url)
|
||||
(_ #f)))))
|
||||
(git? (assoc-ref meta 'git))
|
||||
(source (download source-url git?))
|
||||
(sysdepends (append
|
||||
(if (needs-zlib? tarball) '("zlib") '())
|
||||
(if (needs-zlib? source (not git?)) '("zlib") '())
|
||||
(filter (lambda (name)
|
||||
(not (member name invalid-packages)))
|
||||
(map string-downcase (listify meta "SystemRequirements")))))
|
||||
|
@ -339,41 +425,67 @@ (define (description->package repository meta)
|
|||
(listify meta "Imports")
|
||||
(listify meta "LinkingTo")
|
||||
(delete "R"
|
||||
(listify meta "Depends"))))))
|
||||
(listify meta "Depends")))))
|
||||
(package
|
||||
`(package
|
||||
(name ,(cran-guix-name name))
|
||||
(version ,(case repository
|
||||
((git)
|
||||
`(git-version ,version revision commit))
|
||||
(else version)))
|
||||
(source (origin
|
||||
(method ,(if git?
|
||||
'git-fetch
|
||||
'url-fetch))
|
||||
(uri ,(case repository
|
||||
((git)
|
||||
`(git-reference
|
||||
(url ,(assoc-ref meta 'git))
|
||||
(commit commit)))
|
||||
(else
|
||||
`(,(procedure-name uri-helper) ,name version
|
||||
,@(or (and=> (assoc-ref meta 'bioconductor-type)
|
||||
(lambda (type)
|
||||
(list (list 'quote type))))
|
||||
'())))))
|
||||
,@(if git?
|
||||
'((file-name (git-file-name name version)))
|
||||
'())
|
||||
(sha256
|
||||
(base32
|
||||
,(bytevector->nix-base32-string
|
||||
(case repository
|
||||
((git)
|
||||
(file-hash source (negate vcs-file?) #t))
|
||||
(else (file-sha256 source))))))))
|
||||
,@(if (not (and git?
|
||||
(equal? (string-append "r-" name)
|
||||
(cran-guix-name name))))
|
||||
`((properties ,`(,'quasiquote ((,'upstream-name . ,name)))))
|
||||
'())
|
||||
(build-system r-build-system)
|
||||
,@(maybe-inputs sysdepends)
|
||||
,@(maybe-inputs (map cran-guix-name propagate) 'propagated-inputs)
|
||||
,@(maybe-inputs
|
||||
`(,@(if (needs-fortran? source (not git?))
|
||||
'("gfortran") '())
|
||||
,@(if (needs-pkg-config? source (not git?))
|
||||
'("pkg-config") '()))
|
||||
'native-inputs)
|
||||
(home-page ,(if (string-null? home-page)
|
||||
(string-append base-url name)
|
||||
home-page))
|
||||
(synopsis ,synopsis)
|
||||
(description ,(beautify-description (or (assoc-ref meta "Description")
|
||||
"")))
|
||||
(license ,license))))
|
||||
(values
|
||||
`(package
|
||||
(name ,(cran-guix-name name))
|
||||
(version ,version)
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (,(procedure-name uri-helper) ,name version
|
||||
,@(or (and=> (assoc-ref meta 'bioconductor-type)
|
||||
(lambda (type)
|
||||
(list (list 'quote type))))
|
||||
'())))
|
||||
(sha256
|
||||
(base32
|
||||
,(bytevector->nix-base32-string (file-sha256 tarball))))))
|
||||
,@(if (not (equal? (string-append "r-" name)
|
||||
(cran-guix-name name)))
|
||||
`((properties ,`(,'quasiquote ((,'upstream-name . ,name)))))
|
||||
'())
|
||||
(build-system r-build-system)
|
||||
,@(maybe-inputs sysdepends)
|
||||
,@(maybe-inputs (map cran-guix-name propagate) 'propagated-inputs)
|
||||
,@(maybe-inputs
|
||||
`(,@(if (needs-fortran? tarball)
|
||||
'("gfortran") '())
|
||||
,@(if (needs-pkg-config? tarball)
|
||||
'("pkg-config") '()))
|
||||
'native-inputs)
|
||||
(home-page ,(if (string-null? home-page)
|
||||
(string-append base-url name)
|
||||
home-page))
|
||||
(synopsis ,synopsis)
|
||||
(description ,(beautify-description (or (assoc-ref meta "Description")
|
||||
"")))
|
||||
(license ,license))
|
||||
(case repository
|
||||
((git)
|
||||
`(let ((commit ,(assoc-ref meta 'git-commit))
|
||||
(revision "1"))
|
||||
,package))
|
||||
(else package))
|
||||
propagate)))
|
||||
|
||||
(define cran->guix-package
|
||||
|
|
|
@ -49,7 +49,7 @@ (define (updated-github-url old-package new-version)
|
|||
(define (updated-url url)
|
||||
(if (string-prefix? "https://github.com/" url)
|
||||
(let ((ext (or (find-extension url) ""))
|
||||
(name (package-name old-package))
|
||||
(name (package-upstream-name old-package))
|
||||
(version (package-version old-package))
|
||||
(prefix (string-append "https://github.com/"
|
||||
(github-user-slash-repository url)))
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
;;; Copyright © 2012, 2013, 2018, 2019 Ludovic Courtès <ludo@gnu.org>
|
||||
;;; Copyright © 2016 Jelle Licht <jlicht@fsfe.org>
|
||||
;;; Copyright © 2016 David Craven <david@craven.ch>
|
||||
;;; Copyright © 2017 Ricardo Wurmus <rekado@elephly.net>
|
||||
;;; Copyright © 2017, 2019 Ricardo Wurmus <rekado@elephly.net>
|
||||
;;; Copyright © 2018 Oleg Pykhalov <go.wigust@gmail.com>
|
||||
;;; Copyright © 2019 Robert Vollmert <rob@vllmrt.net>
|
||||
;;;
|
||||
|
@ -251,6 +251,9 @@ (define* (maybe-native-inputs package-names #:optional (output #f))
|
|||
(define (package->definition guix-package)
|
||||
(match guix-package
|
||||
(('package ('name (? string? name)) _ ...)
|
||||
`(define-public ,(string->symbol name)
|
||||
,guix-package))
|
||||
(('let anything ('package ('name (? string? name)) _ ...))
|
||||
`(define-public ,(string->symbol name)
|
||||
,guix-package))))
|
||||
|
||||
|
|
|
@ -1008,8 +1008,8 @@ (define (check-vulnerabilities package)
|
|||
(define (check-for-updates package)
|
||||
"Check if there is an update available for PACKAGE."
|
||||
(match (with-networking-fail-safe
|
||||
(G_ "while retrieving upstream info for '~a'")
|
||||
(list (package-name package))
|
||||
(format #f (G_ "while retrieving upstream info for '~a'")
|
||||
(package-name package))
|
||||
#f
|
||||
(package-latest-release* package (force %updaters)))
|
||||
((? upstream-source? source)
|
||||
|
|
|
@ -801,7 +801,8 @@ (define (bag-transitive-build-inputs bag)
|
|||
|
||||
(define (bag-transitive-host-inputs bag)
|
||||
"Same as 'package-transitive-target-inputs', but applied to a bag."
|
||||
(transitive-inputs (bag-host-inputs bag)))
|
||||
(parameterize ((%current-target-system (bag-target bag)))
|
||||
(transitive-inputs (bag-host-inputs bag))))
|
||||
|
||||
(define (bag-transitive-target-inputs bag)
|
||||
"Return the \"target inputs\" of BAG, recursively."
|
||||
|
|
|
@ -27,6 +27,7 @@ (define-module (guix remote)
|
|||
#:use-module (guix derivations)
|
||||
#:use-module (guix utils)
|
||||
#:use-module (ssh popen)
|
||||
#:use-module (ssh channel)
|
||||
#:use-module (srfi srfi-1)
|
||||
#:use-module (srfi srfi-34)
|
||||
#:use-module (srfi srfi-35)
|
||||
|
@ -68,10 +69,13 @@ (define repl-command
|
|||
|
||||
(let ((pipe (apply open-remote-pipe* session OPEN_READ repl-command)))
|
||||
(when (eof-object? (peek-char pipe))
|
||||
(raise (condition
|
||||
(&message
|
||||
(message (format #f (G_ "failed to run '~{~a~^ ~}'")
|
||||
repl-command))))))
|
||||
(let ((status (channel-get-exit-status pipe)))
|
||||
(close-port pipe)
|
||||
(raise (condition
|
||||
(&message
|
||||
(message (format #f (G_ "remote command '~{~a~^ ~}' failed \
|
||||
with status ~a")
|
||||
repl-command status)))))))
|
||||
pipe))
|
||||
|
||||
(define* (%remote-eval lowered session #:optional become-command)
|
||||
|
|
|
@ -94,7 +94,7 @@ (define (handle-argument arg result)
|
|||
(machine-display-name machine))
|
||||
(parameterize ((%graft? (assq-ref opts 'graft?)))
|
||||
(guard (c ((message-condition? c)
|
||||
(report-error (G_ "failed to deploy ~a: '~a'~%")
|
||||
(report-error (G_ "failed to deploy ~a: ~a~%")
|
||||
(machine-display-name machine)
|
||||
(condition-message c)))
|
||||
((deploy-error? c)
|
||||
|
|
|
@ -2,6 +2,7 @@
|
|||
;;; Copyright © 2012, 2013, 2014 Ludovic Courtès <ludo@gnu.org>
|
||||
;;; Copyright © 2014 David Thompson <davet@gnu.org>
|
||||
;;; Copyright © 2018 Kyle Meyer <kyle@kyleam.com>
|
||||
;;; Copyright © 2019 Ricardo Wurmus <rekado@elephly.net>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
|
@ -113,7 +114,8 @@ (define (guix-import . args)
|
|||
(pretty-print expr (newline-rewriting-port
|
||||
(current-output-port))))))
|
||||
(match (apply (resolve-importer importer) args)
|
||||
((and expr ('package _ ...))
|
||||
((and expr (or ('package _ ...)
|
||||
('let _ ...)))
|
||||
(print expr))
|
||||
((? list? expressions)
|
||||
(for-each (lambda (expr)
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
;;; GNU Guix --- Functional package management for GNU
|
||||
;;; Copyright © 2014 Eric Bavier <bavier@member.fsf.org>
|
||||
;;; Copyright © 2015, 2017 Ricardo Wurmus <rekado@elephly.net>
|
||||
;;; Copyright © 2015, 2017, 2019 Ricardo Wurmus <rekado@elephly.net>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
|
@ -22,6 +22,7 @@ (define-module (guix scripts import cran)
|
|||
#:use-module (guix utils)
|
||||
#:use-module (guix scripts)
|
||||
#:use-module (guix import cran)
|
||||
#:use-module (guix import utils)
|
||||
#:use-module (guix scripts import)
|
||||
#:use-module (srfi srfi-1)
|
||||
#:use-module (srfi srfi-11)
|
||||
|
@ -96,11 +97,7 @@ (define (parse-options)
|
|||
((package-name)
|
||||
(if (assoc-ref opts 'recursive)
|
||||
;; Recursive import
|
||||
(map (match-lambda
|
||||
((and ('package ('name name) . rest) pkg)
|
||||
`(define-public ,(string->symbol name)
|
||||
,pkg))
|
||||
(_ #f))
|
||||
(map package->definition
|
||||
(reverse
|
||||
(stream->list
|
||||
(cran-recursive-import package-name
|
||||
|
|
|
@ -46,9 +46,9 @@ (define (emit-warnings warnings)
|
|||
(lambda (lint-warning)
|
||||
(let ((package (lint-warning-package lint-warning))
|
||||
(loc (lint-warning-location lint-warning)))
|
||||
(warning loc (G_ "~a@~a: ~a~%")
|
||||
(package-name package) (package-version package)
|
||||
(lint-warning-message lint-warning))))
|
||||
(info loc (G_ "~a@~a: ~a~%")
|
||||
(package-name package) (package-version package)
|
||||
(lint-warning-message lint-warning))))
|
||||
warnings))
|
||||
|
||||
(define (run-checkers package checkers)
|
||||
|
|
|
@ -490,7 +490,8 @@ (define build
|
|||
#~(begin
|
||||
(use-modules (guix docker) (guix build store-copy)
|
||||
(guix profiles) (guix search-paths)
|
||||
(srfi srfi-19) (ice-9 match))
|
||||
(srfi srfi-1) (srfi srfi-19)
|
||||
(ice-9 match))
|
||||
|
||||
(define environment
|
||||
(map (match-lambda
|
||||
|
@ -499,6 +500,23 @@ (define environment
|
|||
value)))
|
||||
(profile-search-paths #$profile)))
|
||||
|
||||
(define symlink->directives
|
||||
;; Return "populate directives" to make the given symlink and its
|
||||
;; parent directories.
|
||||
(match-lambda
|
||||
((source '-> target)
|
||||
(let ((target (string-append #$profile "/" target))
|
||||
(parent (dirname source)))
|
||||
`((directory ,parent)
|
||||
(,source -> ,target))))))
|
||||
|
||||
(define directives
|
||||
;; Create a /tmp directory, as some programs expect it, and
|
||||
;; create SYMLINKS.
|
||||
`((directory "/tmp" ,(getuid) ,(getgid) #o1777)
|
||||
,@(append-map symlink->directives '#$symlinks)))
|
||||
|
||||
|
||||
(setenv "PATH" (string-append #$archiver "/bin"))
|
||||
|
||||
(build-docker-image #$output
|
||||
|
@ -513,7 +531,7 @@ (define environment
|
|||
#$(and entry-point
|
||||
#~(list (string-append #$profile "/"
|
||||
#$entry-point)))
|
||||
#:symlinks '#$symlinks
|
||||
#:extra-files directives
|
||||
#:compressor '#$(compressor-command compressor)
|
||||
#:creation-time (make-time time-utc 0 1))))))
|
||||
|
||||
|
@ -611,8 +629,13 @@ (define (output-file args)
|
|||
;;;
|
||||
|
||||
(define* (wrapped-package package
|
||||
#:optional (compiler (c-compiler))
|
||||
#:optional
|
||||
(output* "out")
|
||||
(compiler (c-compiler))
|
||||
#:key proot?)
|
||||
"Return the OUTPUT of PACKAGE with its binaries wrapped such that they are
|
||||
relocatable. When PROOT? is true, include PRoot in the result and use it as a
|
||||
last resort for relocation."
|
||||
(define runner
|
||||
(local-file (search-auxiliary-file "run-in-namespace.c")))
|
||||
|
||||
|
@ -629,6 +652,14 @@ (define build
|
|||
(ice-9 ftw)
|
||||
(ice-9 match))
|
||||
|
||||
(define input
|
||||
;; The OUTPUT* output of PACKAGE.
|
||||
(ungexp package output*))
|
||||
|
||||
(define target
|
||||
;; The output we are producing.
|
||||
(ungexp output output*))
|
||||
|
||||
(define (strip-store-prefix file)
|
||||
;; Given a file name like "/gnu/store/…-foo-1.2/bin/foo", return
|
||||
;; "/bin/foo".
|
||||
|
@ -648,7 +679,7 @@ (define (build-wrapper program)
|
|||
(("@STORE_DIRECTORY@") (%store-directory)))
|
||||
|
||||
(let* ((base (strip-store-prefix program))
|
||||
(result (string-append #$output "/" base))
|
||||
(result (string-append target "/" base))
|
||||
(proot #$(and proot?
|
||||
#~(string-drop
|
||||
#$(file-append (proot) "/bin/proot")
|
||||
|
@ -667,18 +698,18 @@ (define (build-wrapper program)
|
|||
|
||||
;; Link the top-level files of PACKAGE so that search paths are
|
||||
;; properly defined in PROFILE/etc/profile.
|
||||
(mkdir #$output)
|
||||
(mkdir target)
|
||||
(for-each (lambda (file)
|
||||
(unless (member file '("." ".." "bin" "sbin" "libexec"))
|
||||
(let ((file* (string-append #$package "/" file)))
|
||||
(symlink (relative-file-name #$output file*)
|
||||
(string-append #$output "/" file)))))
|
||||
(scandir #$package))
|
||||
(let ((file* (string-append input "/" file)))
|
||||
(symlink (relative-file-name target file*)
|
||||
(string-append target "/" file)))))
|
||||
(scandir input))
|
||||
|
||||
(for-each build-wrapper
|
||||
(append (find-files #$(file-append package "/bin"))
|
||||
(find-files #$(file-append package "/sbin"))
|
||||
(find-files #$(file-append package "/libexec")))))))
|
||||
(append (find-files (string-append input "/bin"))
|
||||
(find-files (string-append input "/sbin"))
|
||||
(find-files (string-append input "/libexec")))))))
|
||||
|
||||
(computed-file (string-append
|
||||
(cond ((package? package)
|
||||
|
@ -691,14 +722,18 @@ (define (build-wrapper program)
|
|||
"R")
|
||||
build))
|
||||
|
||||
(define (wrapped-manifest-entry entry . args)
|
||||
(manifest-entry
|
||||
(inherit entry)
|
||||
(item (apply wrapped-package
|
||||
(manifest-entry-item entry)
|
||||
(manifest-entry-output entry)
|
||||
args))))
|
||||
|
||||
(define (map-manifest-entries proc manifest)
|
||||
"Apply PROC to all the entries of MANIFEST and return a new manifest."
|
||||
(make-manifest
|
||||
(map (lambda (entry)
|
||||
(manifest-entry
|
||||
(inherit entry)
|
||||
(item (proc (manifest-entry-item entry)))))
|
||||
(manifest-entries manifest))))
|
||||
(map proc (manifest-entries manifest))))
|
||||
|
||||
|
||||
;;;
|
||||
|
@ -960,7 +995,7 @@ (define properties
|
|||
;; 'glibc-bootstrap' lacks 'libc.a'.
|
||||
(if relocatable?
|
||||
(map-manifest-entries
|
||||
(cut wrapped-package <> #:proot? proot?)
|
||||
(cut wrapped-manifest-entry <> #:proot? proot?)
|
||||
manifest)
|
||||
manifest)))
|
||||
(pack-format (assoc-ref opts 'format))
|
||||
|
|
14
guix/ssh.scm
14
guix/ssh.scm
|
@ -106,14 +106,14 @@ (define* (remote-inferior session #:optional become-command)
|
|||
(let* ((repl-command (append (or become-command '())
|
||||
'("guix" "repl" "-t" "machine")))
|
||||
(pipe (apply open-remote-pipe* session OPEN_BOTH repl-command)))
|
||||
;; XXX: 'channel-get-exit-status' would be better here, but hangs if the
|
||||
;; process does succeed. This doesn't reflect the documentation, so it's
|
||||
;; possible that it's a bug in guile-ssh.
|
||||
(when (eof-object? (peek-char pipe))
|
||||
(raise (condition
|
||||
(&message
|
||||
(message (format #f (G_ "failed to run '~{~a~^ ~}'")
|
||||
repl-command))))))
|
||||
(let ((status (channel-get-exit-status pipe)))
|
||||
(close-port pipe)
|
||||
(raise (condition
|
||||
(&message
|
||||
(message (format #f (G_ "remote command '~{~a~^ ~}' failed \
|
||||
with status ~a")
|
||||
repl-command status)))))))
|
||||
(port->inferior pipe)))
|
||||
|
||||
(define* (inferior-remote-eval exp session #:optional become-command)
|
||||
|
|
61
guix/swh.scm
61
guix/swh.scm
|
@ -190,6 +190,12 @@ (define (ref n)
|
|||
(ref 10))))))
|
||||
str)) ;oops!
|
||||
|
||||
(define string*
|
||||
;; Converts "string or #nil" coming from JSON to "string or #f".
|
||||
(match-lambda
|
||||
((? string? str) str)
|
||||
((? null?) #f)))
|
||||
|
||||
(define* (call url decode #:optional (method http-get)
|
||||
#:key (false-if-404? #t))
|
||||
"Invoke the endpoint at URL using METHOD. Decode the resulting JSON body
|
||||
|
@ -239,8 +245,8 @@ (define-json-mapping <visit> make-visit visit?
|
|||
(date visit-date "date" string->date*)
|
||||
(origin visit-origin)
|
||||
(url visit-url "origin_visit_url")
|
||||
(snapshot-url visit-snapshot-url "snapshot_url")
|
||||
(status visit-status)
|
||||
(snapshot-url visit-snapshot-url "snapshot_url" string*) ;string | #f
|
||||
(status visit-status "status" string->symbol) ;'full | 'partial | 'ongoing
|
||||
(number visit-number "visit"))
|
||||
|
||||
;; <https://archive.softwareheritage.org/api/1/snapshot/4334c3ed4bb208604ed780d8687fe523837f1bd1/>
|
||||
|
@ -378,9 +384,11 @@ (define (origin-visits origin)
|
|||
(map json->visit (vector->list (json->scm port))))))
|
||||
|
||||
(define (visit-snapshot visit)
|
||||
"Return the snapshot corresponding to VISIT."
|
||||
(call (swh-url (visit-snapshot-url visit))
|
||||
json->snapshot))
|
||||
"Return the snapshot corresponding to VISIT or #f if no snapshot is
|
||||
available."
|
||||
(and (visit-snapshot-url visit)
|
||||
(call (swh-url (visit-snapshot-url visit))
|
||||
json->snapshot)))
|
||||
|
||||
(define (branch-target branch)
|
||||
"Return the target of BRANCH, either a <revision> or a <release>."
|
||||
|
@ -396,7 +404,7 @@ (define (lookup-origin-revision url tag)
|
|||
"Return a <revision> corresponding to the given TAG for the repository
|
||||
coming from URL. Example:
|
||||
|
||||
(lookup-origin-release \"https://github.com/guix-mirror/guix/\" \"v0.8\")
|
||||
(lookup-origin-revision \"https://github.com/guix-mirror/guix/\" \"v0.8\")
|
||||
=> #<<revision> id: \"44941…\" …>
|
||||
|
||||
The information is based on the latest visit of URL available. Return #f if
|
||||
|
@ -404,7 +412,7 @@ (define (lookup-origin-revision url tag)
|
|||
(match (lookup-origin url)
|
||||
(#f #f)
|
||||
(origin
|
||||
(match (origin-visits origin)
|
||||
(match (filter visit-snapshot-url (origin-visits origin))
|
||||
((visit . _)
|
||||
(let ((snapshot (visit-snapshot visit)))
|
||||
(match (and=> (find (lambda (branch)
|
||||
|
@ -533,7 +541,8 @@ (define (call-with-temporary-directory proc) ;FIXME: factorize
|
|||
(lambda ()
|
||||
(false-if-exception (delete-file-recursively tmp-dir))))))
|
||||
|
||||
(define (swh-download url reference output)
|
||||
(define* (swh-download url reference output
|
||||
#:key (log-port (current-error-port)))
|
||||
"Download from Software Heritage a checkout of the Git tag or commit
|
||||
REFERENCE originating from URL, and unpack it in OUTPUT. Return #t on success
|
||||
and #f on failure.
|
||||
|
@ -545,21 +554,31 @@ (define (swh-download url reference output)
|
|||
(lookup-revision reference)
|
||||
(lookup-origin-revision url reference))
|
||||
((? revision? revision)
|
||||
(format log-port "SWH: found revision ~a with directory at '~a'~%"
|
||||
(revision-id revision)
|
||||
(swh-url (revision-directory-url revision)))
|
||||
(call-with-temporary-directory
|
||||
(lambda (directory)
|
||||
(let ((input (vault-fetch (revision-directory revision) 'directory))
|
||||
(tar (open-pipe* OPEN_WRITE "tar" "-C" directory "-xzvf" "-")))
|
||||
(dump-port input tar)
|
||||
(close-port input)
|
||||
(let ((status (close-pipe tar)))
|
||||
(unless (zero? status)
|
||||
(error "tar extraction failure" status)))
|
||||
(match (vault-fetch (revision-directory revision) 'directory
|
||||
#:log-port log-port)
|
||||
(#f
|
||||
(format log-port
|
||||
"SWH: directory ~a could not be fetched from the vault~%"
|
||||
(revision-directory revision))
|
||||
#f)
|
||||
((? port? input)
|
||||
(let ((tar (open-pipe* OPEN_WRITE "tar" "-C" directory "-xzvf" "-")))
|
||||
(dump-port input tar)
|
||||
(close-port input)
|
||||
(let ((status (close-pipe tar)))
|
||||
(unless (zero? status)
|
||||
(error "tar extraction failure" status)))
|
||||
|
||||
(match (scandir directory)
|
||||
(("." ".." sub-directory)
|
||||
(copy-recursively (string-append directory "/" sub-directory)
|
||||
output
|
||||
#:log (%make-void-port "w"))
|
||||
#t))))))
|
||||
(match (scandir directory)
|
||||
(("." ".." sub-directory)
|
||||
(copy-recursively (string-append directory "/" sub-directory)
|
||||
output
|
||||
#:log (%make-void-port "w"))
|
||||
#t))))))))
|
||||
(#f
|
||||
#f)))
|
||||
|
|
File diff suppressed because it is too large
Load diff
|
@ -9,7 +9,7 @@ msgstr ""
|
|||
"Project-Id-Version: guix-manual 1.0.1-pre1\n"
|
||||
"Report-Msgid-Bugs-To: ludo@gnu.org\n"
|
||||
"POT-Creation-Date: 2019-05-10 20:53+0200\n"
|
||||
"PO-Revision-Date: 2019-05-12 11:55+0200\n"
|
||||
"PO-Revision-Date: 2019-07-20 11:50+0200\n"
|
||||
"Last-Translator: Julien Lepiller <julien@lepiller.eu>\n"
|
||||
"Language-Team: French <traduc@traduc.org>\n"
|
||||
"Language: fr\n"
|
||||
|
@ -18,7 +18,7 @@ msgstr ""
|
|||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n > 1);\n"
|
||||
"X-Bugs: Report translation errors to the Language-Team address.\n"
|
||||
"X-Generator: Offlate 0.1\n"
|
||||
"X-Generator: Poedit 2.2.1\n"
|
||||
|
||||
#. #-#-#-#-# contributing.pot (guix 1.0.1-pre1) #-#-#-#-#
|
||||
#. type: chapter
|
||||
|
@ -1432,6 +1432,8 @@ msgstr "version-fr.texi"
|
|||
|
||||
#. type: copying
|
||||
#: doc/guix.texi:66
|
||||
#, fuzzy
|
||||
#| msgid "Copyright @copyright{} 2012, 2013, 2014, 2015, 2016, 2017, 2018, 2019 Ludovic Courtès@* Copyright @copyright{} 2013, 2014, 2016 Andreas Enge@* Copyright @copyright{} 2013 Nikita Karetnikov@* Copyright @copyright{} 2014, 2015, 2016 Alex Kost@* Copyright @copyright{} 2015, 2016 Mathieu Lirzin@* Copyright @copyright{} 2014 Pierre-Antoine Rault@* Copyright @copyright{} 2015 Taylan Ulrich Bayırlı/Kammer@* Copyright @copyright{} 2015, 2016, 2017 Leo Famulari@* Copyright @copyright{} 2015, 2016, 2017, 2018, 2019 Ricardo Wurmus@* Copyright @copyright{} 2016 Ben Woodcroft@* Copyright @copyright{} 2016, 2017, 2018 Chris Marusich@* Copyright @copyright{} 2016, 2017, 2018, 2019 Efraim Flashner@* Copyright @copyright{} 2016 John Darrington@* Copyright @copyright{} 2016, 2017 ng0@* Copyright @copyright{} 2016, 2017, 2018, 2019 Jan Nieuwenhuizen@* Copyright @copyright{} 2016 Julien Lepiller@* Copyright @copyright{} 2016 Alex ter Weele@* Copyright @copyright{} 2016, 2017, 2018, 2019 Christopher Baines@* Copyright @copyright{} 2017, 2018 Clément Lassieur@* Copyright @copyright{} 2017, 2018 Mathieu Othacehe@* Copyright @copyright{} 2017 Federico Beffa@* Copyright @copyright{} 2017, 2018 Carlo Zancanaro@* Copyright @copyright{} 2017 Thomas Danckaert@* Copyright @copyright{} 2017 humanitiesNerd@* Copyright @copyright{} 2017 Christopher Allan Webber@* Copyright @copyright{} 2017, 2018 Marius Bakke@* Copyright @copyright{} 2017 Hartmut Goebel@* Copyright @copyright{} 2017 Maxim Cournoyer@* Copyright @copyright{} 2017, 2018 Tobias Geerinckx-Rice@* Copyright @copyright{} 2017 George Clemmer@* Copyright @copyright{} 2017 Andy Wingo@* Copyright @copyright{} 2017, 2018, 2019 Arun Isaac@* Copyright @copyright{} 2017 nee@* Copyright @copyright{} 2018 Rutger Helling@* Copyright @copyright{} 2018 Oleg Pykhalov@* Copyright @copyright{} 2018 Mike Gerwitz@* Copyright @copyright{} 2018 Pierre-Antoine Rouby@* Copyright @copyright{} 2018 Gábor Boskovits@* Copyright @copyright{} 2018, 2019 Florian Pelz@* Copyright @copyright{} 2018 Laura Lazzati@* Copyright @copyright{} 2018 Alex Vong@* Copyright @copyright{} 2019 Josh Holland@* Copyright @copyright{} 2019 Diego Nicola Barbato@*"
|
||||
msgid "Copyright @copyright{} 2012, 2013, 2014, 2015, 2016, 2017, 2018, 2019 Ludovic Courtès@* Copyright @copyright{} 2013, 2014, 2016 Andreas Enge@* Copyright @copyright{} 2013 Nikita Karetnikov@* Copyright @copyright{} 2014, 2015, 2016 Alex Kost@* Copyright @copyright{} 2015, 2016 Mathieu Lirzin@* Copyright @copyright{} 2014 Pierre-Antoine Rault@* Copyright @copyright{} 2015 Taylan Ulrich Bayırlı/Kammer@* Copyright @copyright{} 2015, 2016, 2017 Leo Famulari@* Copyright @copyright{} 2015, 2016, 2017, 2018, 2019 Ricardo Wurmus@* Copyright @copyright{} 2016 Ben Woodcroft@* Copyright @copyright{} 2016, 2017, 2018 Chris Marusich@* Copyright @copyright{} 2016, 2017, 2018, 2019 Efraim Flashner@* Copyright @copyright{} 2016 John Darrington@* Copyright @copyright{} 2016, 2017 ng0@* Copyright @copyright{} 2016, 2017, 2018, 2019 Jan Nieuwenhuizen@* Copyright @copyright{} 2016 Julien Lepiller@* Copyright @copyright{} 2016 Alex ter Weele@* Copyright @copyright{} 2016, 2017, 2018, 2019 Christopher Baines@* Copyright @copyright{} 2017, 2018 Clément Lassieur@* Copyright @copyright{} 2017, 2018 Mathieu Othacehe@* Copyright @copyright{} 2017 Federico Beffa@* Copyright @copyright{} 2017, 2018 Carlo Zancanaro@* Copyright @copyright{} 2017 Thomas Danckaert@* Copyright @copyright{} 2017 humanitiesNerd@* Copyright @copyright{} 2017 Christopher Allan Webber@* Copyright @copyright{} 2017, 2018 Marius Bakke@* Copyright @copyright{} 2017 Hartmut Goebel@* Copyright @copyright{} 2017 Maxim Cournoyer@* Copyright @copyright{} 2017, 2018 Tobias Geerinckx-Rice@* Copyright @copyright{} 2017 George Clemmer@* Copyright @copyright{} 2017 Andy Wingo@* Copyright @copyright{} 2017, 2018, 2019 Arun Isaac@* Copyright @copyright{} 2017 nee@* Copyright @copyright{} 2018 Rutger Helling@* Copyright @copyright{} 2018 Oleg Pykhalov@* Copyright @copyright{} 2018 Mike Gerwitz@* Copyright @copyright{} 2018 Pierre-Antoine Rouby@* Copyright @copyright{} 2018 Gábor Boskovits@* Copyright @copyright{} 2018 Florian Pelz@* Copyright @copyright{} 2018 Laura Lazzati@* Copyright @copyright{} 2018 Alex Vong@* Copyright @copyright{} 2019 Josh Holland@*"
|
||||
msgstr ""
|
||||
"Copyright @copyright{} 2012, 2013, 2014, 2015, 2016, 2017, 2018, 2019 Ludovic Courtès@*\n"
|
||||
|
@ -1449,7 +1451,7 @@ msgstr ""
|
|||
"Copyright @copyright{} 2016 John Darrington@*\n"
|
||||
"Copyright @copyright{} 2016, 2017 ng0@*\n"
|
||||
"Copyright @copyright{} 2016, 2017, 2018, 2019 Jan Nieuwenhuizen@*\n"
|
||||
"Copyright @copyright{} 2016, 2018, 2019 Julien Lepiller@*\n"
|
||||
"Copyright @copyright{} 2016 Julien Lepiller@*\n"
|
||||
"Copyright @copyright{} 2016 Alex ter Weele@*\n"
|
||||
"Copyright @copyright{} 2016, 2017, 2018, 2019 Christopher Baines@*\n"
|
||||
"Copyright @copyright{} 2017, 2018 Clément Lassieur@*\n"
|
||||
|
@ -1472,10 +1474,11 @@ msgstr ""
|
|||
"Copyright @copyright{} 2018 Mike Gerwitz@*\n"
|
||||
"Copyright @copyright{} 2018 Pierre-Antoine Rouby@*\n"
|
||||
"Copyright @copyright{} 2018 Gábor Boskovits@*\n"
|
||||
"Copyright @copyright{} 2018 Florian Pelz@*\n"
|
||||
"Copyright @copyright{} 2018, 2019 Florian Pelz@*\n"
|
||||
"Copyright @copyright{} 2018 Laura Lazzati@*\n"
|
||||
"Copyright @copyright{} 2018 Alex Vong@*\n"
|
||||
"Copyright @copyright{} 2019 Josh Holland@*"
|
||||
"Copyright @copyright{} 2019 Josh Holland@*\n"
|
||||
"Copyright @copyright{} 2019 Diego Nicola Barbato@*"
|
||||
|
||||
#. type: copying
|
||||
#: doc/guix.texi:73
|
||||
|
@ -1610,8 +1613,10 @@ msgstr "Cette documentation décrit GNU Guix version @value{VERSION}, un outil d
|
|||
|
||||
#. type: Plain text
|
||||
#: doc/guix.texi:123
|
||||
#, fuzzy
|
||||
#| msgid "This manual is also available in Simplified Chinese (@pxref{Top,,, guix.zh_CN, GNU Guix参考手册}), French (@pxref{Top,,, guix.fr, Manuel de référence de GNU Guix}), German (@pxref{Top,,, guix.de, Referenzhandbuch zu GNU Guix}), Spanish (@pxref{Top,,, guix.es, Manual de referencia de GNU Guix}), and Russian (@pxref{Top,,, guix.ru, Руководство GNU Guix}). If you would like to translate it in your native language, consider joining the @uref{https://translationproject.org/domain/guix-manual.html, Translation Project}."
|
||||
msgid "This manual is also available in Simplified Chinese (@pxref{Top,,, guix.zh_CN, GNU Guix参考手册}), French (@pxref{Top,,, guix.fr, Manuel de référence de GNU Guix}), German (@pxref{Top,,, guix.de, Referenzhandbuch zu GNU Guix}), and Spanish (@pxref{Top,,, guix.es, Manual de referencia de GNU Guix}). If you would like to translate it in your native language, consider joining the @uref{https://translationproject.org/domain/guix-manual.html, Translation Project}."
|
||||
msgstr "Ce manuel est aussi disponible en anglais (@pxref{Top,,, guix, GNU Guix Reference Manual}), en allemand (@pxref{Top,,, guix.de, Referenzhandbuch zu GNU Guix}), en chinois simplifié (@pxref{Top,,, guix.zh_CN, GNU Guix参考手册}) et en espagnol (@pxref{Top,,, guix.es, Manual de referencia de GNU Guix}). Si vous souhaitez nous aider à traduire ce manuel en français, vous pouvez nous rejoindre sur le @uref{https://translationproject.org/domain/guix-manual.html, projet de traduction} et sur la liste de diffusion @uref{https://listes.traduc.org/mailman/listinfo/traduc/, traduc@@traduc.org}."
|
||||
msgstr "Ce manuel est aussi disponible en anglais (@pxref{Top,,, guix, GNU Guix Reference Manual}), en allemand (@pxref{Top,,, guix.de, Referenzhandbuch zu GNU Guix}), en chinois simplifié (@pxref{Top,,, guix.zh_CN, GNU Guix参考手册}), en espagnol (@pxref{Top,,, guix.es, Manual de referencia de GNU Guix}) et en russe (@pxref{Top,,, guix.ru, Руководство GNU Guix}). Si vous souhaitez nous aider à traduire ce manuel en français, vous pouvez nous rejoindre sur le @uref{https://translationproject.org/domain/guix-manual.html, projet de traduction} et sur la liste de diffusion @uref{https://listes.traduc.org/mailman/listinfo/traduc/, traduc@@traduc.org}."
|
||||
|
||||
#. type: chapter
|
||||
#: doc/guix.texi:139 doc/guix.texi:149 doc/guix.texi:312 doc/guix.texi:313
|
||||
|
@ -3280,7 +3285,7 @@ msgstr "i686-linux"
|
|||
#. type: table
|
||||
#: doc/guix.texi:434
|
||||
msgid "Intel 32-bit architecture (IA32), Linux-Libre kernel;"
|
||||
msgstr "l'architecture Intel 32-bits (IA32) avec le noyau Linux-libre ;"
|
||||
msgstr "l'architecture Intel 32 bits (IA32) avec le noyau Linux-libre ;"
|
||||
|
||||
#. type: item
|
||||
#: doc/guix.texi:435
|
||||
|
@ -3312,8 +3317,10 @@ msgstr "mips64el-linux"
|
|||
|
||||
#. type: table
|
||||
#: doc/guix.texi:448
|
||||
#, fuzzy
|
||||
#| msgid "little-endian 64-bit ARMv8-A processors, Linux-Libre kernel."
|
||||
msgid "little-endian 64-bit MIPS processors, specifically the Loongson series, n32 ABI, and Linux-Libre kernel."
|
||||
msgstr "les processeurs MIPS 64-bits little-endian, spécifiquement la série Loongson, ABI n32, avec le noyau Linux-libre."
|
||||
msgstr "les processeurs 64 bits ARMv8-A en little-endian, avec le noyau Linux-libre."
|
||||
|
||||
#. type: Plain text
|
||||
#: doc/guix.texi:458
|
||||
|
@ -4086,7 +4093,7 @@ msgstr "crochet de construction"
|
|||
#. type: Plain text
|
||||
#: doc/guix.texi:1020
|
||||
msgid "When desired, the build daemon can @dfn{offload} derivation builds to other machines running Guix, using the @code{offload} @dfn{build hook}@footnote{This feature is available only when @uref{https://github.com/artyom-poptsov/guile-ssh, Guile-SSH} is present.}. When that feature is enabled, a list of user-specified build machines is read from @file{/etc/guix/machines.scm}; every time a build is requested, for instance via @code{guix build}, the daemon attempts to offload it to one of the machines that satisfy the constraints of the derivation, in particular its system type---e.g., @file{x86_64-linux}. Missing prerequisites for the build are copied over SSH to the target machine, which then proceeds with the build; upon success the output(s) of the build are copied back to the initial machine."
|
||||
msgstr "Si vous le souhaitez, le démon de construction peut @dfn{décharger} des constructions de dérivations sur d'autres machines Guix avec le @dfn{crochet de construction} @code{offload}@footnote{Cette fonctionnalité n'est disponible que si @uref{https://github.com/artyom-poptsov/guile-ssh, Guile-SSH} est présent.}. Lorsque cette fonctionnalité est activée, Guix lit une liste de machines de constructions spécifiée par l'utilisateur dans @file{/etc/guix/machines.scm} ; à chaque fois qu'une construction est demandée, par exemple par @code{guix build}, le démon essaie de la décharger sur une des machines qui satisfont les contraintes de la dérivation, en particulier le type de système, p.@: ex.@: @file{x86_64-linux}. Les prérequis manquants pour la construction sont copiés par SSH sur la machine de construction qui procède ensuite à la construction ; si elle réussi, les sorties de la construction sont copiés vers la machine de départ."
|
||||
msgstr "Si vous le souhaitez, le démon de construction peut @dfn{décharger} des constructions de dérivations sur d'autres machines Guix avec le @dfn{crochet de construction} @code{offload}@footnote{Cette fonctionnalité n'est disponible que si @uref{https://github.com/artyom-poptsov/guile-ssh, Guile-SSH} est présent.}. Lorsque cette fonctionnalité est activée, Guix lit une liste de machines de constructions spécifiée par l'utilisateur dans @file{/etc/guix/machines.scm} ; à chaque fois qu'une construction est demandée, par exemple par @code{guix build}, le démon essaie de la décharger sur une des machines qui satisfont les contraintes de la dérivation, en particulier le type de système, p.@: ex.@: @file{x86_64-linux}. Les prérequis manquants pour la construction sont copiés par SSH sur la machine de construction qui procède ensuite à la construction ; si elle réussit, les sorties de la construction sont copiés vers la machine de départ."
|
||||
|
||||
#. type: Plain text
|
||||
#: doc/guix.texi:1022
|
||||
|
@ -6289,7 +6296,7 @@ msgstr "transactions"
|
|||
#. type: Plain text
|
||||
#: doc/guix.texi:2544
|
||||
msgid "The command provides the obvious install, remove, and upgrade operations. Each invocation is actually a @emph{transaction}: either the specified operation succeeds, or nothing happens. Thus, if the @command{guix package} process is terminated during the transaction, or if a power outage occurs during the transaction, then the user's profile remains in its previous state, and remains usable."
|
||||
msgstr "La commande fournit les opérations évidentes d'installation, de suppression et de mise à jour. Chaque invocation est en fait une @emph{transaction} : soit l'opération demandée réussi, soit rien ne se passe. Ainsi, si le processus @command{guix package} est terminé pendant la transaction ou si une panne de courant arrive pendant la transaction, le profil de l'utilisateur reste dans son état précédent et reste utilisable."
|
||||
msgstr "La commande fournit les opérations évidentes d'installation, de suppression et de mise à jour. Chaque invocation est en fait une @emph{transaction} : soit l'opération demandée réussit, soit rien ne se passe. Ainsi, si le processus @command{guix package} est terminé pendant la transaction ou si une panne de courant arrive pendant la transaction, le profil de l'utilisateur reste dans son état précédent et reste utilisable."
|
||||
|
||||
#. type: Plain text
|
||||
#: doc/guix.texi:2552
|
||||
|
@ -6299,7 +6306,7 @@ msgstr "En plus, il est possible @emph{d'annuler} toute transaction sur les paqu
|
|||
#. type: Plain text
|
||||
#: doc/guix.texi:2559
|
||||
msgid "All packages in the package store may be @emph{garbage-collected}. Guix can determine which packages are still referenced by user profiles, and remove those that are provably no longer referenced (@pxref{Invoking guix gc}). Users may also explicitly remove old generations of their profile so that the packages they refer to can be collected."
|
||||
msgstr "Tous les paquets du dépôt des paquets peut être @emph{glané}. Guix peut déterminer quels paquets sont toujours référencés par les profils des utilisateurs et supprimer ceux qui ne sont plus référencés de manière prouvable (@pxref{Invoking guix gc}). Les utilisateurs peuvent toujours explicitement supprimer les anciennes générations de leur profil pour que les paquets auxquels elles faisaient référence puissent être glanés."
|
||||
msgstr "Tout paquet du dépôt des paquets peut être @emph{glané}. Guix peut déterminer quels paquets sont toujours référencés par les profils des utilisateurs et supprimer ceux qui ne sont plus référencés de manière prouvable (@pxref{Invoking guix gc}). Les utilisateurs peuvent toujours explicitement supprimer les anciennes générations de leur profil pour que les paquets auxquels elles faisaient référence puissent être glanés."
|
||||
|
||||
#. type: cindex
|
||||
#: doc/guix.texi:2560 doc/guix.texi:4087
|
||||
|
@ -6310,7 +6317,7 @@ msgstr "reproductibilité"
|
|||
#. type: Plain text
|
||||
#: doc/guix.texi:2572
|
||||
msgid "Guix takes a @dfn{purely functional} approach to package management, as described in the introduction (@pxref{Introduction}). Each @file{/gnu/store} package directory name contains a hash of all the inputs that were used to build that package---compiler, libraries, build scripts, etc. This direct correspondence allows users to make sure a given package installation matches the current state of their distribution. It also helps maximize @dfn{build reproducibility}: thanks to the isolated build environments that are used, a given build is likely to yield bit-identical files when performed on different machines (@pxref{Invoking guix-daemon, container})."
|
||||
msgstr "Guix prend une approche @dfn{purement fonctionnelle} de la gestion de paquets, telle que décrite dans l'introduction (@pxref{Introduction}). Chaque nom de répertoire de paquet dans @file{/gnu/store} contient un hash de toutes les entrées qui ont été utilisées pendant la construction de ce paquet — le compilateur, les bibliothèques, les scripts de construction, etc. Cette correspondance directe permet aux utilisateurs de s'assurer que l'installation d'un paquet donné correspond à l'état actuel de leur distribution. Elle aide aussi à maximiser la @dfn{reproductibilité} : grâce aux environnements de construction utilisés, une construction donnée à de forte chances de donner des fichiers identiques bit-à-bit lorsqu'elle est effectuée sur des machines différents (@pxref{Invoking guix-daemon, container})."
|
||||
msgstr "Guix prend une approche @dfn{purement fonctionnelle} de la gestion de paquets, telle que décrite dans l'introduction (@pxref{Introduction}). Chaque nom de répertoire de paquet dans @file{/gnu/store} contient un hash de toutes les entrées qui ont été utilisées pendant la construction de ce paquet — le compilateur, les bibliothèques, les scripts de construction, etc. Cette correspondance directe permet aux utilisateurs de s'assurer que l'installation d'un paquet donné correspond à l'état actuel de leur distribution. Elle aide aussi à maximiser la @dfn{reproductibilité} : grâce aux environnements de construction utilisés, une construction donnée a de forte chances de donner des fichiers identiques bit-à-bit lorsqu'elle est effectuée sur des machines différentes (@pxref{Invoking guix-daemon, container})."
|
||||
|
||||
#. type: Plain text
|
||||
#: doc/guix.texi:2583
|
||||
|
@ -6472,7 +6479,7 @@ msgstr ""
|
|||
#. type: Plain text
|
||||
#: doc/guix.texi:2678
|
||||
msgid "In a multi-user setup, user profiles are stored in a place registered as a @dfn{garbage-collector root}, which @file{$HOME/.guix-profile} points to (@pxref{Invoking guix gc}). That directory is normally @code{@var{localstatedir}/guix/profiles/per-user/@var{user}}, where @var{localstatedir} is the value passed to @code{configure} as @code{--localstatedir}, and @var{user} is the user name. The @file{per-user} directory is created when @command{guix-daemon} is started, and the @var{user} sub-directory is created by @command{guix package}."
|
||||
msgstr "Dans un environnement multi-utilisateur, les profils utilisateurs sont stockés comme une @dfn{racine du ramasse-miettes}, vers laquelle pointe @file{$HOME/.guix-profile} (@pxref{Invoking guix gc}). Ce répertoire est normalement @code{@var{localstatedir}/guix/profiles/per-user/@var{utilisateur}}, où @var{localstatedir} est la valeur passée à @code{configure} avec @code{--localstatedir} et @var{utilisateur} le nom d'utilisateur. Le répertoire @file{per-user} est créé lorsque @command{guix-daemon} est démarré et sous-répertoire @var{utilisateur} est créé par @command{guix package}."
|
||||
msgstr "Dans un environnement multi-utilisateur, les profils utilisateurs sont stockés comme une @dfn{racine du ramasse-miettes}, vers laquelle pointe @file{$HOME/.guix-profile} (@pxref{Invoking guix gc}). Ce répertoire est normalement @code{@var{localstatedir}/guix/profiles/per-user/@var{utilisateur}}, où @var{localstatedir} est la valeur passée à @code{configure} avec @code{--localstatedir} et @var{utilisateur} le nom d'utilisateur. Le répertoire @file{per-user} est créé lorsque @command{guix-daemon} est démarré et le sous-répertoire @var{user} est créé par @command{guix package}."
|
||||
|
||||
#. type: Plain text
|
||||
#: doc/guix.texi:2680
|
||||
|
@ -7243,7 +7250,7 @@ msgstr "@emph{Des intervalles}. @code{--list-generations=2..9} affiche les"
|
|||
#. type: itemize
|
||||
#: doc/guix.texi:3061
|
||||
msgid "specified generations and everything in between. Note that the start of a range must be smaller than its end."
|
||||
msgstr "générations demandées et tout ce qui se trouvent entre elles. Remarquez que le début d'un intervalle doit être plus petit que sa fin."
|
||||
msgstr "générations demandées et tout ce qui se trouve entre elles. Remarquez que le début d'un intervalle doit être plus petit que sa fin."
|
||||
|
||||
#. type: itemize
|
||||
#: doc/guix.texi:3065
|
||||
|
@ -7455,7 +7462,7 @@ msgstr "signatures numériques"
|
|||
#. type: Plain text
|
||||
#: doc/guix.texi:3230
|
||||
msgid "Guix detects and raises an error when attempting to use a substitute that has been tampered with. Likewise, it ignores substitutes that are not signed, or that are not signed by one of the keys listed in the ACL."
|
||||
msgstr "Guix détecte et lève une erreur lorsqu'il essaye d'utiliser un substituts qui a été modifié. De même, il ignore les substituts qui ne sont pas signés ou qui ne sont pas signés par l'une des clefs listés dans l'ACL."
|
||||
msgstr "Guix détecte et lève une erreur lorsqu'il essaye d'utiliser un substitut qui a été modifié. De même, il ignore les substituts qui ne sont pas signés ou qui ne sont pas signés par l'une des clefs listées dans l'ACL."
|
||||
|
||||
#. type: Plain text
|
||||
#: doc/guix.texi:3236
|
||||
|
@ -7654,7 +7661,7 @@ msgstr "Ramasse les miettes — c.-à-d.@: les fichiers inaccessibles de @file{/
|
|||
#. type: table
|
||||
#: doc/guix.texi:3443
|
||||
msgid "When @var{min} is given, stop once @var{min} bytes have been collected. @var{min} may be a number of bytes, or it may include a unit as a suffix, such as @code{MiB} for mebibytes and @code{GB} for gigabytes (@pxref{Block size, size specifications,, coreutils, GNU Coreutils})."
|
||||
msgstr "Lorsque @var{min} est donné, s'arrêter une fois que @var{min} octets ont été collectés. @var{min} pour être un nombre d'octets ou inclure un suffixe d'unité, comme @code{MiB} pour mébioctet et @code{GB} pour gigaoctet (@pxref{Block size, size specifications,, coreutils, GNU Coreutils})."
|
||||
msgstr "Lorsque @var{min} est donné, s'arrêter une fois que @var{min} octets ont été collectés. @var{min} peut être un nombre d'octets ou inclure un suffixe d'unité, comme @code{MiB} pour mébioctet et @code{GB} pour gigaoctet (@pxref{Block size, size specifications,, coreutils, GNU Coreutils})."
|
||||
|
||||
#. type: table
|
||||
#: doc/guix.texi:3445
|
||||
|
@ -8006,7 +8013,7 @@ msgstr "À la fin, @command{guix package} utilisera les paquets et les versions
|
|||
#. type: Plain text
|
||||
#: doc/guix.texi:3614
|
||||
msgid "Any user can update their Guix copy using @command{guix pull}, and the effect is limited to the user who run @command{guix pull}. For instance, when user @code{root} runs @command{guix pull}, this has no effect on the version of Guix that user @code{alice} sees, and vice versa."
|
||||
msgstr "Chaque utilisateur peut mettre à jour sa copie de Guix avec @command{guix pull} et l'effet est limité à l'utilisateur qui a lancé @command{guix pull}. Par exemple, lorsque l'utilisateur @code{root} lance @command{guix pull}, cela n'a pas d'effet sur la version de Guix que vois @code{alice} et vice-versa."
|
||||
msgstr "Chaque utilisateur peut mettre à jour sa copie de Guix avec @command{guix pull} et l'effet est limité à l'utilisateur qui a lancé @command{guix pull}. Par exemple, lorsque l'utilisateur @code{root} lance @command{guix pull}, cela n'a pas d'effet sur la version de Guix que voit @code{alice} et vice-versa."
|
||||
|
||||
#. type: Plain text
|
||||
#: doc/guix.texi:3620
|
||||
|
@ -8102,7 +8109,7 @@ msgstr "@xref{Invoking guix describe, @command{guix describe}}, pour d'autres ma
|
|||
#. type: Plain text
|
||||
#: doc/guix.texi:3663
|
||||
msgid "This @code{~/.config/guix/current} profile works like any other profile created by @command{guix package} (@pxref{Invoking guix package}). That is, you can list generations, roll back to the previous generation---i.e., the previous Guix---and so on:"
|
||||
msgstr "Ce profil @code{~/.config/guix/current} fonctionne comme les autres profils créés par @command{guix package} (@pxref{Invoking guix package}). C'est-à-dire que vous pouvez lister les générations, revenir en arrière à une génération précédente — c.-à-d.@: la version de Guix précédente — etc :"
|
||||
msgstr "Ce profil @code{~/.config/guix/current} fonctionne comme les autres profils créés par @command{guix package} (@pxref{Invoking guix package}). C'est-à-dire que vous pouvez lister les générations, revenir en arrière à une génération précédente — c.-à-d.@: la version de Guix précédente — etc.@: :"
|
||||
|
||||
#. type: example
|
||||
#: doc/guix.texi:3669
|
||||
|
@ -8121,7 +8128,7 @@ msgstr ""
|
|||
#. type: Plain text
|
||||
#: doc/guix.texi:3673
|
||||
msgid "The @command{guix pull} command is usually invoked with no arguments, but it supports the following options:"
|
||||
msgstr "La commande @command{guix pull} est typiquement invoquée sans arguments mais il supporte les options suivantes :"
|
||||
msgstr "La commande @command{guix pull} est typiquement invoquée sans arguments mais elle prend en charge les options suivantes :"
|
||||
|
||||
#. type: item
|
||||
#: doc/guix.texi:3675
|
||||
|
@ -9095,7 +9102,7 @@ msgstr ""
|
|||
#. type: Plain text
|
||||
#: doc/guix.texi:4226
|
||||
msgid "However, note that, in both examples, all of @code{emacs} and the profile as well as all of their dependencies are transferred (due to @code{-r}), regardless of what is already available in the store on the target machine. The @code{--missing} option can help figure out which items are missing from the target store. The @command{guix copy} command simplifies and optimizes this whole process, so this is probably what you should use in this case (@pxref{Invoking guix copy})."
|
||||
msgstr "Cependant, remarquez que, dans les deux exemples, le paquet @code{emacs}, le profil ainsi que toutes leurs dépendances sont transférées (à cause de @code{-r}), indépendamment du fait qu'ils soient disponibles dans le dépôt de la machine cible. L'option @code{--missing} peut vous aider à comprendre les éléments qui manquent dans le dépôt de la machine cible. La commande @command{guix copy} simplifie et optimise ce processus, c'est donc ce que vous devriez utiliser dans ce cas (@pxref{Invoking guix copy})."
|
||||
msgstr "Cependant, remarquez que, dans les deux exemples, le paquet @code{emacs}, le profil ainsi que toutes leurs dépendances sont transférés (à cause de @code{-r}), indépendamment du fait qu'ils soient ou non disponibles dans le dépôt de la machine cible. L'option @code{--missing} peut vous aider à comprendre les éléments qui manquent dans le dépôt de la machine cible. La commande @command{guix copy} simplifie et optimise ce processus, c'est donc ce que vous devriez utiliser dans ce cas (@pxref{Invoking guix copy})."
|
||||
|
||||
#. type: cindex
|
||||
#: doc/guix.texi:4227
|
||||
|
@ -9388,7 +9395,7 @@ msgstr "$ ls \"$GUIX_ENVIRONMENT/bin\"\n"
|
|||
#. type: Plain text
|
||||
#: doc/guix.texi:4417
|
||||
msgid "Additionally, more than one package may be specified, in which case the union of the inputs for the given packages are used. For example, the command below spawns a shell where all of the dependencies of both Guile and Emacs are available:"
|
||||
msgstr "En plus, plus d'un paquet peut être spécifié, auquel cas l'union des entrées des paquets données est utilisée. Par exemple, la commande ci-dessous crée un shell où toutes les dépendances de Guile et Emacs sont disponibles :"
|
||||
msgstr "De surcroît, plus d'un paquet peut être spécifié, auquel cas l'union des entrées des paquets données est utilisée. Par exemple, la commande ci-dessous crée un shell où toutes les dépendances de Guile et Emacs sont disponibles :"
|
||||
|
||||
#. type: example
|
||||
#: doc/guix.texi:4420
|
||||
|
@ -9662,7 +9669,7 @@ msgstr ""
|
|||
#. type: table
|
||||
#: doc/guix.texi:4585
|
||||
msgid "This example runs @command{mpirun} in a context where the only environment variables defined are @code{PATH}, environment variables whose name starts with @code{SLURM}, as well as the usual ``precious'' variables (@code{HOME}, @code{USER}, etc.)"
|
||||
msgstr "Cet exemple exécute @command{mpirun} dans un contexte où les seules variables d'environnement défines sont @code{PATH}, les variables d'environnement dont le nom commence par @code{SLURM}, ainsi que les variables « importante » habituelles (@code{HOME}, @code{USER}, etc)."
|
||||
msgstr "Cet exemple exécute @command{mpirun} dans un contexte où les seules variables d'environnement défines sont @code{PATH}, les variables d'environnement dont le nom commence par @code{SLURM}, ainsi que les variables « importante » habituelles (@code{HOME}, @code{USER}, etc.)."
|
||||
|
||||
#. type: item
|
||||
#: doc/guix.texi:4586
|
||||
|
@ -9925,7 +9932,7 @@ msgstr "binaires repositionnables, avec @command{guix pack}"
|
|||
#. type: Plain text
|
||||
#: doc/guix.texi:4752
|
||||
msgid "What if the recipient of your pack does not have root privileges on their machine, and thus cannot unpack it in the root file system? In that case, you will want to use the @code{--relocatable} option (see below). This option produces @dfn{relocatable binaries}, meaning they they can be placed anywhere in the file system hierarchy: in the example above, users can unpack your tarball in their home directory and directly run @file{./opt/gnu/bin/guile}."
|
||||
msgstr "Et si le destinataire de votre pack n'a pas les privilèges root sur sa machine, et ne peut donc pas le décompresser dans le système de fichiers racine ? Dans ce cas, vous pourriez utiliser l'option @code{--relocatable} (voir plus bas). Cette option produite des @dfn{binaire repositionnables}, ce qui signifie qu'ils peuvent être placés n'importe où dans l'arborescence du système de fichiers : dans l'exemple au-dessus, les utilisateurs peuvent décompresser votre archive dans leur répertoire personnel et lancer directement @file{./opt/gnu/bin/guile}."
|
||||
msgstr "Et si le destinataire de votre pack n'a pas les privilèges root sur sa machine, et ne peut donc pas le décompresser dans le système de fichiers racine ? Dans ce cas, vous pourriez utiliser l'option @code{--relocatable} (voir plus bas). Cette option produit des @dfn{binaire repositionnables}, ce qui signifie qu'ils peuvent être placés n'importe où dans l'arborescence du système de fichiers : dans l'exemple au-dessus, les utilisateurs peuvent décompresser votre archive dans leur répertoire personnel et lancer directement @file{./opt/gnu/bin/guile}."
|
||||
|
||||
#. type: cindex
|
||||
#: doc/guix.texi:4753
|
||||
|
@ -13248,7 +13255,7 @@ msgstr "strate de code"
|
|||
#. type: Plain text
|
||||
#: doc/guix.texi:6979
|
||||
msgid "It should come as no surprise that we like to write these build actions in Scheme. When we do that, we end up with two @dfn{strata} of Scheme code@footnote{The term @dfn{stratum} in this context was coined by Manuel Serrano et al.@: in the context of their work on Hop. Oleg Kiselyov, who has written insightful @url{http://okmij.org/ftp/meta-programming/#meta-scheme, essays and code on this topic}, refers to this kind of code generation as @dfn{staging}.}: the ``host code''---code that defines packages, talks to the daemon, etc.---and the ``build code''---code that actually performs build actions, such as making directories, invoking @command{make}, etc."
|
||||
msgstr "Ça ne devrait pas vous surprendre, mais nous aimons écrire ces actions de construction en Scheme. Lorsqu'on fait ça, on fini avec deux @dfn{strates} de code Scheme@footnote{Le terme @dfn{strate} dans ce contexte a été inventé par Manuel Serrano et ses collaborateurs dans le contexte de leur travaux sur Hop. Oleg Kiselyov, qui a écrit des @url{http://okmij.org/ftp/meta-programming/#meta-scheme, essais perspicaces et du code sur le sujet}, utilise le terme de « mise en scène » pour ce genre de génération de code.} : le « code hôte » — le code qui défini les paquets, parle au démon, etc — et le « code côté construction » — le code qui effectue effectivement les actions de construction, comme créer des répertoires, invoquer @code{make}, etc."
|
||||
msgstr "Ça ne devrait pas vous surprendre, mais nous aimons écrire ces actions de construction en Scheme. Lorsqu'on fait ça, on fini avec deux @dfn{strates} de code Scheme@footnote{Le terme @dfn{strate} dans ce contexte a été inventé par Manuel Serrano et ses collaborateurs dans le contexte de leur travaux sur Hop. Oleg Kiselyov, qui a écrit des @url{http://okmij.org/ftp/meta-programming/#meta-scheme, essais perspicaces et du code sur le sujet}, utilise le terme de « mise en scène » pour ce genre de génération de code.} : le « code hôte » — le code qui définit les paquets, parle au démon, etc.@: — et le « code côté construction » — le code qui effectue effectivement les actions de construction, comme créer des répertoires, invoquer @code{make}, etc."
|
||||
|
||||
#. type: Plain text
|
||||
#: doc/guix.texi:6986
|
||||
|
@ -15250,7 +15257,7 @@ msgstr "Maintenant, vous pouvez invoquer les commandes comme si vous étiez le d
|
|||
#. type: Plain text
|
||||
#: doc/guix.texi:8217
|
||||
msgid "Sometimes it happens that, for example, a package's tests pass when you run them manually but they fail when the daemon runs them. This can happen because the daemon runs builds in containers where, unlike in our environment above, network access is missing, @file{/bin/sh} does not exist, etc. (@pxref{Build Environment Setup})."
|
||||
msgstr "Parfois il arrive que, par exemple, les tests d'un paquet réussissent lorsque vous les lancez manuellement mais échouent quand ils sont lancés par le démon. Cela peut arriver parce que le démon tourne dans un conteneur où, contrairement à notre environnement au-dessus, l'accès réseau est indisponible, @file{/bin/sh} n'existe pas, etc (@pxref{Build Environment Setup})."
|
||||
msgstr "Parfois il arrive que, par exemple, les tests d'un paquet réussissent lorsque vous les lancez manuellement mais échouent quand ils sont lancés par le démon. Cela peut arriver parce que le démon tourne dans un conteneur où, contrairement à notre environnement au-dessus, l'accès réseau est indisponible, @file{/bin/sh} n'existe pas, etc.@: (@pxref{Build Environment Setup})."
|
||||
|
||||
#. type: Plain text
|
||||
#: doc/guix.texi:8220
|
||||
|
@ -15512,7 +15519,7 @@ msgstr "-x"
|
|||
#. type: table
|
||||
#: doc/guix.texi:8388
|
||||
msgid "When combined with @option{--recursive}, exclude version control system directories (@file{.bzr}, @file{.git}, @file{.hg}, etc.)"
|
||||
msgstr "Lorsqu'elle est combinée à @option{--recursive}, exclut les répertoires de système de contrôle de version (@file{.bzr}, @file{.git}, @file{.hg}, etc)."
|
||||
msgstr "Lorsqu'elle est combinée à @option{--recursive}, exclut les répertoires de système de contrôle de version (@file{.bzr}, @file{.git}, @file{.hg}, etc.)"
|
||||
|
||||
#. type: table
|
||||
#: doc/guix.texi:8393
|
||||
|
@ -20082,7 +20089,7 @@ msgstr "disposition clavier"
|
|||
#. type: Plain text
|
||||
#: doc/guix.texi:11134
|
||||
msgid "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 is specified, is the US English QWERTY layout for 105-key PC keyboards. However, German speakers will usually prefer the German QWERTZ layout, French speakers will want the AZERTY layout, and so on; hackers might prefer Dvorak or bépo, and they might even want to further customize the effect of some of the keys. This section explains how to get that done."
|
||||
msgstr "Pour spécifier ce que fait chaque touche de votre clavier, vous devez dire au système d'exploitation quel @dfn{disposition du clavier} vous voulez utiliser. Par défaut, lorsque rien n'est spécifié, la disposition QWERTY pour l'anglais américain pour les claviers 105 touches est utilisée. Cependant, les germanophones préfèrent généralement la disposition QWERTZ, les francophones la disposition AZERTY etc ; les hackers peuvent préférer Dvorak ou bépo, et peuvent même vouloir personnaliser plus en détails l'effet de certaines touches. Cette section explique comment faire cela."
|
||||
msgstr "Pour spécifier ce que fait chaque touche de votre clavier, vous devez dire au système d'exploitation quel @dfn{disposition du clavier} vous voulez utiliser. Par défaut, lorsque rien n'est spécifié, la disposition QWERTY pour l'anglais américain pour les claviers 105 touches est utilisée. Cependant, les germanophones préfèrent généralement la disposition QWERTZ, les francophones la disposition AZERTY etc.@: ; les hackers peuvent préférer Dvorak ou bépo, et peuvent même vouloir personnaliser plus en détails l'effet de certaines touches. Cette section explique comment faire cela."
|
||||
|
||||
#. type: cindex
|
||||
#: doc/guix.texi:11135
|
||||
|
@ -20892,7 +20899,7 @@ msgstr "Sinon et s'il y a une valeur pour une option @code{console} avec un tty
|
|||
#. type: table
|
||||
#: doc/guix.texi:11633
|
||||
msgid "In both cases, agetty will leave the other serial device settings (baud rate etc.)@: alone---in the hope that Linux pinned them to the correct values."
|
||||
msgstr "Dans les deux cas, agetty laissera les autres paramètres du périphérique série (baud, etc) sans y toucher — dans l'espoir que Linux leur a assigné les bonnes valeurs."
|
||||
msgstr "Dans les deux cas, agetty laissera les autres paramètres du périphérique série (baud, etc.) sans y toucher — dans l'espoir que Linux leur a assigné les bonnes valeurs."
|
||||
|
||||
#. type: item
|
||||
#: doc/guix.texi:11634
|
||||
|
@ -25673,7 +25680,7 @@ msgstr "{Procédure Scheme} xorg-start-command [@var{config}]"
|
|||
#. type: deffn
|
||||
#: doc/guix.texi:13744
|
||||
msgid "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 @code{startx}."
|
||||
msgstr "Renvoie un script @code{startx} dans lequel les modules, les polices, etc, spécifiés dans @var{config} sont disponibles. Le résultat devrait être utilisé à la place de @code{startx}."
|
||||
msgstr "Renvoie un script @code{startx} dans lequel les modules, les polices, etc., spécifiés dans @var{config} sont disponibles. Le résultat devrait être utilisé à la place de @code{startx}."
|
||||
|
||||
#. type: deffn
|
||||
#: doc/guix.texi:13746
|
||||
|
@ -27321,8 +27328,10 @@ msgstr "C'est la liste des services qui étend @var{%base-services} en ajoutant
|
|||
|
||||
#. type: defvr
|
||||
#: doc/guix.texi:14629
|
||||
#, fuzzy
|
||||
#| msgid "In particular, it adds a graphical login manager (@pxref{X Window, @code{gdm-service-type}}), screen lockers, a network management tool (@pxref{Networking Services, @code{network-manager-service-type}}) with modem support (@pxref{Networking Services, @code{modem-manager-service-type}}), energy and color management services, the @code{elogind} login and seat manager, the Polkit privilege service, the GeoClue location service, the AccountsService daemon that allows authorized users change system passwords, an NTP client (@pxref{Networking Services}), the Avahi daemon, and has the name service switch service configured to be able to use @code{nss-mdns} (@pxref{Name Service Switch, mDNS})."
|
||||
msgid "In particular, it adds a graphical login manager (@pxref{X Window, @code{gdm-service-type}}), screen lockers, a network management tool (@pxref{Networking Services, @code{network-manager-service-type}}), energy and color management services, the @code{elogind} login and seat manager, the Polkit privilege service, the GeoClue location service, the AccountsService daemon that allows authorized users change system passwords, an NTP client (@pxref{Networking Services}), the Avahi daemon, and has the name service switch service configured to be able to use @code{nss-mdns} (@pxref{Name Service Switch, mDNS})."
|
||||
msgstr "En particulier, il ajoute un gestionnaire de connexion graphique (@pxref{X Window, @code{gdm-service-type}}), des verrouilleurs d'écran, un outil de gestion réseau (@pxref{Networking Services, @code{network-manager-service-type}}), des services de gestion de l'énergie et des couleurs, le gestionnaire de connexion et de session @code{elogind}, le service de privilèges Polkit, le service de géolocalisation GeoClue, le démon Accounts Service qui permet aux utilisateurs autorisés de changer les mots de passe du système, un client NTP (@pxref{Networking Services}), le démon Avahi, et le service name service switch est configuré pour pouvoir utiliser @code{nss-mdns} (@pxref{Name Service Switch, mDNS})."
|
||||
msgstr "En particulier, elle ajoute un gestionnaire de connexion graphique (@pxref{X Window, @code{gdm-service-type}}), des verrouilleurs d'écran, un outil de gestion réseau (@pxref{Networking Services, @code{network-manager-service-type}}) avec la prise en charge des modems (@pxref{Networking Services, @code{modem-manager-service-type}}), des services de gestion de l'énergie et des couleurs, le gestionnaire de connexion et de session @code{elogind}, le service de privilèges Polkit, le service de géolocalisation GeoClue, le démon Accounts Service qui permet aux utilisateurs autorisés de changer les mots de passe du système, un client NTP (@pxref{Networking Services}), le démon Avahi, et le service name service switch est configuré pour pouvoir utiliser @code{nss-mdns} (@pxref{Name Service Switch, mDNS})."
|
||||
|
||||
#. type: Plain text
|
||||
#: doc/guix.texi:14634
|
||||
|
@ -30216,7 +30225,7 @@ msgstr "{paramètre de @code{dovecot-configuration}} space-separated-string-list
|
|||
#. type: deftypevr
|
||||
#: doc/guix.texi:16152
|
||||
msgid "List of plugins to load for all services. Plugins specific to IMAP, LDA, etc.@: are added to this list in their own .conf files. Defaults to @samp{()}."
|
||||
msgstr "Liste des greffons à charger pour tous les services. Les greffons spécifiques à IMAP, LDA, etc sont ajoutés à cette liste dans leur propre fichiers .conf. La valeur par défaut est @samp{()}."
|
||||
msgstr "Liste des greffons à charger pour tous les services. Les greffons spécifiques à IMAP, LDA, etc.@: sont ajoutés à cette liste dans leur propre fichiers .conf. La valeur par défaut est @samp{()}."
|
||||
|
||||
#. type: deftypevr
|
||||
#: doc/guix.texi:16154
|
||||
|
@ -35832,7 +35841,7 @@ msgstr "Des améliorations à FastCGI, comme fastcgi_finish_request() -"
|
|||
#. type: itemize
|
||||
#: doc/guix.texi:19139
|
||||
msgid "a special function to finish request & flush all data while continuing to do something time-consuming (video converting, stats processing, etc.)"
|
||||
msgstr "une fonction spéciale pour terminer la requête et nettoyer toutes les données tout en continuant à faire d'autres choses qui prennent du temps (conversion vidéo, gestion des stats, etc…)."
|
||||
msgstr "une fonction spéciale pour terminer la requête et nettoyer toutes les données tout en continuant à faire d'autres choses qui prennent du temps (conversion vidéo, gestion des stats, etc.)."
|
||||
|
||||
#. type: Plain text
|
||||
#: doc/guix.texi:19141
|
||||
|
@ -45339,8 +45348,10 @@ msgstr ""
|
|||
|
||||
#. type: table
|
||||
#: doc/guix.texi:24514
|
||||
#, fuzzy
|
||||
#| msgid "Depending on what you run in the Docker container, it may be necessary to give the container additional permissions. For example, if you intend to build software using Guix inside of the Docker container, you may need to pass the @option{--privileged} option to @code{docker create}."
|
||||
msgid "This command starts a new Docker container from the specified image. It will boot the Guix system in the usual manner, which means it will start any services you have defined in the operating system configuration. Depending on what you run in the Docker container, it may be necessary to give the container additional permissions. For example, if you intend to build software using Guix inside of the Docker container, you may need to pass the @option{--privileged} option to @code{docker run}."
|
||||
msgstr "Cette commande démarre un nouveau conteneur Docker à partir de l'image spécifiée. Il démarrera le système Guix de la manière habituelle, ce qui signifie qu'il démarrera tous les services que vous avez définis dans la configuration du système d'exploitation. En fonction de ce que vous lancez dans le conteneur Docker, il peut être nécessaire de donner des permissions supplémentaires au conteneur. Par exemple, si vous voulez construire des paquets avec Guix dans le conteneur Docker, vous devriez passer @option{--privileged} à @code{docker run}."
|
||||
msgstr "En fonction de ce que vous lancez dans le conteneur Docker, il peut être nécessaire de donner des permissions supplémentaires au conteneur. Par exemple, si vous voulez construire des paquets avec Guix dans le conteneur Docker, vous devriez passer @option{--privileged} à @code{docker create}."
|
||||
|
||||
#. type: table
|
||||
#: doc/guix.texi:24522
|
||||
|
@ -46565,9 +46576,10 @@ msgstr "Ce sont les noms qui peuvent être passés à @command{herd start}, @com
|
|||
|
||||
#. type: item
|
||||
#: doc/guix.texi:25282
|
||||
#, no-wrap
|
||||
#, fuzzy, no-wrap
|
||||
#| msgid "@code{requirement} (default: @code{'()})"
|
||||
msgid "@code{requirements} (default: @code{'()})"
|
||||
msgstr "@code{requirements} (par défaut : @code{'()})"
|
||||
msgstr "@code{requirement} (par défaut : @code{'()})"
|
||||
|
||||
#. type: table
|
||||
#: doc/guix.texi:25284
|
||||
|
@ -47350,6 +47362,33 @@ msgstr "license, GNU Free Documentation License"
|
|||
msgid "fdl-1.3.texi"
|
||||
msgstr "fdl-1.3.texi"
|
||||
|
||||
#~ msgid "little-endian 64-bit MIPS processors, specifically the Loongson series, n32 ABI, and Linux-Libre kernel. This configuration is no longer fully supported; in particular, the project's build farms no longer provide substitutes for this architecture."
|
||||
#~ msgstr "les processeurs 64 bits MIPS en little-endian, spécifiquement la série Loongson, ABI n32, avec le noyau Linux-libre. Cette configuration n'est plus totalement prise en charge ; en particulier, les fermes de construction du projet de fournissent plus de substituts pour cette architecture."
|
||||
|
||||
#~ msgid ""
|
||||
#~ "image_id=\"`docker load < guix-system-docker-image.tar.gz`\"\n"
|
||||
#~ "container_id=\"`docker create $image_id`\"\n"
|
||||
#~ "docker start $container_id\n"
|
||||
#~ msgstr ""
|
||||
#~ "image_id=\"`docker load < guix-system-docker-image.tar.gz`\"\n"
|
||||
#~ "container_id=\"`docker create $image_id`\"\n"
|
||||
#~ "docker start $container_id\n"
|
||||
|
||||
#~ msgid "This command starts a new Docker container from the specified image. It will boot the Guix system in the usual manner, which means it will start any services you have defined in the operating system configuration. You can get an interactive shell running in the container using @command{docker exec}:"
|
||||
#~ msgstr "Cette commande démarre un nouveau conteneur Docker à partir de l'image spécifiée. Il démarrera le système Guix de la manière habituelle, ce qui signifie qu'il démarrera tous les services que vous avez définis dans la configuration du système d'exploitation. Vous pouvez obtenir un shell interactif dans le conteneur en utilisant @command{docker exec} :"
|
||||
|
||||
#~ msgid "docker exec -ti $container_id /run/current-system/profile/bin/bash --login\n"
|
||||
#~ msgstr "docker exec -ti $container_id /run/current-system/profile/bin/bash --login\n"
|
||||
|
||||
#~ msgid "For the @code{container} action, allow containers to access the host network, that is, do not create a network namespace."
|
||||
#~ msgstr "Pour l'action @code{container}, permet aux conteneurs d'accéder au réseau de l'hôte, c'est-à-dire, ne crée pas pas d'espace de nom réseau."
|
||||
|
||||
#~ msgid "@code{auto-start?} (default: @code{#t})"
|
||||
#~ msgstr "@code{auto-start?} (par défaut : @code{#t})"
|
||||
|
||||
#~ msgid "Whether this service should be started automatically by the Shepherd. If it is @code{#f} the service has to be started manually with @code{herd start}."
|
||||
#~ msgstr "Indique si ce service doit être démarré automatiquement par le Shepherd. Si la valeur est @code{#f}, le service doit être démarré manuellement avec @code{herd start}."
|
||||
|
||||
#~ msgid "The @code{guix} package must remain available in @code{root}'s profile, or it would become subject to garbage collection---in which case you would find yourself badly handicapped by the lack of the @command{guix} command. In other words, do not remove @code{guix} by running @code{guix package -r guix}."
|
||||
#~ msgstr "Le paquet @code{guix} doit rester disponible dans le profil de @code{root} ou il pourrait être sujet au ramassage de miettes — dans ce cas vous vous retrouveriez gravement handicapé par l'absence de la commande @command{guix}. En d'autres termes, ne supprimez pas @code{guix} en lançant @code{guix package -r guix}."
|
||||
|
||||
|
|
|
@ -19,7 +19,7 @@ msgstr ""
|
|||
"Project-Id-Version: guix 1.0.1-pre1\n"
|
||||
"Report-Msgid-Bugs-To: ludo@gnu.org\n"
|
||||
"POT-Creation-Date: 2019-05-10 20:54+0200\n"
|
||||
"PO-Revision-Date: 2019-05-12 17:38+0200\n"
|
||||
"PO-Revision-Date: 2019-07-27 09:07+0200\n"
|
||||
"Last-Translator: Julien Lepiller <julien@lepiller.eu>\n"
|
||||
"Language-Team: French <traduc@traduc.org>\n"
|
||||
"Language: fr\n"
|
||||
|
@ -28,7 +28,7 @@ msgstr ""
|
|||
"Content-Transfer-Encoding: 8bit\n"
|
||||
"Plural-Forms: nplurals=2; plural=(n > 1);\n"
|
||||
"X-Bugs: Report translation errors to the Language-Team address.\n"
|
||||
"X-Generator: Offlate 0.1\n"
|
||||
"X-Generator: Poedit 2.2.1\n"
|
||||
|
||||
#: gnu.scm:83
|
||||
#, scheme-format
|
||||
|
@ -1393,7 +1393,7 @@ msgid ""
|
|||
" -v, --verbosity=LEVEL use the given verbosity LEVEL"
|
||||
msgstr ""
|
||||
"\n"
|
||||
" --verbosity=NIVEAU utiliser le NIVEAU de verbosité donné"
|
||||
" -v, --verbosity=NIVEAU utiliser le NIVEAU de verbosité donné"
|
||||
|
||||
#: guix/scripts/build.scm:676
|
||||
msgid ""
|
||||
|
|
2915
po/guix/sv.po
2915
po/guix/sv.po
File diff suppressed because it is too large
Load diff
|
@ -62,6 +62,25 @@ (define %shadow-sample
|
|||
(shell "/bin/sh")))
|
||||
port))))
|
||||
|
||||
(test-equal "write-passwd with duplicate entry"
|
||||
%passwd-sample
|
||||
(call-with-output-string
|
||||
(lambda (port)
|
||||
(let ((charlie (password-entry
|
||||
(name "charlie")
|
||||
(uid 1000) (gid 998)
|
||||
(real-name "Charlie")
|
||||
(directory "/home/charlie")
|
||||
(shell "/bin/sh"))))
|
||||
(write-passwd (list (password-entry
|
||||
(name "root")
|
||||
(uid 0) (gid 0)
|
||||
(real-name "Admin")
|
||||
(directory "/root")
|
||||
(shell "/bin/sh"))
|
||||
charlie charlie)
|
||||
port)))))
|
||||
|
||||
(test-equal "read-passwd + write-passwd"
|
||||
%passwd-sample
|
||||
(call-with-output-string
|
||||
|
|
|
@ -78,3 +78,9 @@ else
|
|||
"$test_directory/Bin/sed" --version > "$test_directory/output"
|
||||
fi
|
||||
grep 'GNU sed' "$test_directory/output"
|
||||
chmod -Rf +w "$test_directory"; rm -rf "$test_directory"/*
|
||||
|
||||
# Ensure '-R' works with outputs other than "out".
|
||||
tarball="`guix pack -R -S /share=share groff:doc`"
|
||||
(cd "$test_directory"; tar xvf "$tarball")
|
||||
test -d "$test_directory/share/doc/groff/html"
|
||||
|
|
|
@ -169,6 +169,7 @@ (define bin
|
|||
(when
|
||||
(and (file-exists? (string-append bin "/guile"))
|
||||
(file-exists? "var/guix/db/db.sqlite")
|
||||
(file-is-directory? "tmp")
|
||||
(string=? (string-append #$%bootstrap-guile "/bin")
|
||||
(pk 'binlink (readlink bin)))
|
||||
(string=? (string-append #$profile "/bin/guile")
|
||||
|
|
Loading…
Reference in a new issue