Merge remote-tracking branch 'origin/master' into core-updates

This commit is contained in:
Christopher Baines 2020-11-29 14:19:55 +00:00
commit ff01206345
No known key found for this signature in database
GPG key ID: 5E28A33B0B84F577
437 changed files with 137482 additions and 74327 deletions

View file

@ -8,7 +8,38 @@
;; For use with 'bug-reference-prog-mode'.
(bug-reference-url-format . "http://bugs.gnu.org/%s")
(bug-reference-bug-regexp
. "<https?://\\(debbugs\\|bugs\\)\\.gnu\\.org/\\([0-9]+\\)>")))
. "<https?://\\(debbugs\\|bugs\\)\\.gnu\\.org/\\([0-9]+\\)>")
;; Emacs-Guix
(eval . (setq-local guix-directory
(locate-dominating-file default-directory
".dir-locals.el")))
;; Geiser
;; This allows automatically setting the `geiser-guile-load-path'
;; variable when using various Guix checkouts (e.g., via git worktrees).
(eval . (let ((root-dir-unexpanded (locate-dominating-file
default-directory ".dir-locals.el")))
;; While Guix should in theory always have a .dir-locals.el
;; (we are reading this file, after all) there seems to be a
;; strange problem where this code "escapes" to some other buffers,
;; at least vc-mode. See:
;; https://lists.gnu.org/archive/html/guix-devel/2020-11/msg00296.html
;; Upstream report: <https://bugs.gnu.org/44698>
;; Hence the following "when", which might otherwise be unnecessary;
;; it prevents causing an error when root-dir-unexpanded is nil.
(when root-dir-unexpanded
(let* ((root-dir (expand-file-name root-dir-unexpanded))
;; Workaround for bug https://issues.guix.gnu.org/43818.
(root-dir* (directory-file-name root-dir)))
(unless (boundp 'geiser-guile-load-path)
(defvar geiser-guile-load-path '()))
(make-local-variable 'geiser-guile-load-path)
(require 'cl-lib)
(cl-pushnew root-dir* geiser-guile-load-path
:test #'string-equal)))))))
(c-mode . ((c-file-style . "gnu")))
(scheme-mode
.

4
.gitignore vendored
View file

@ -140,9 +140,13 @@ Makefile
Makefile.in
config.cache
stamp-h[0-9]
.dirstamp
.deps
tmp
/doc/os-config-lightweight-desktop.texi
/nix/scripts/download
/.version
/doc/stamp-[0-9]
/gnu/packages/bootstrap
/gnu/packages/aux-files/guile-guile-launcher.o
/guile

View file

@ -75,6 +75,8 @@
(;; primary: "1BA4 08C5 8BF2 0EA7 3179 635A 865D C0A3 DED9 B5D0"
"E31D 9DDE EBA5 4A14 8A20 4550 DA45 97F9 47B4 1025"
(name "jlicht"))
("8141 6036 E81A 5CF7 8F80 1071 ECFC 8398 8B4E 4B9F"
(name "jonsger"))
("83B6 703A DCCA 3B69 4BCE 2DA6 E6A5 EE3C 1946 7A0D"
(name "kkebreau"))
("45E5 75FA 53EA 8BD6 1BCE 0B4E 3ADC 75F0 13D6 78F9"

View file

@ -13,7 +13,7 @@ Copyright © 2017 Arun Isaac <arunisaac@systemreboot.net>
* Contributing
See the manual for useful hacking informations, either by running
See the manual for useful hacking information, either by running
info -f doc/guix.info "Contributing"

View file

@ -105,6 +105,7 @@ MODULES = \
guix/derivations.scm \
guix/grafts.scm \
guix/repl.scm \
guix/transformations.scm \
guix/inferior.scm \
guix/describe.scm \
guix/quirks.scm \
@ -343,10 +344,10 @@ dist_noinst_DATA = \
AUX_FILES = \
gnu/packages/aux-files/chromium/master-preferences.json \
gnu/packages/aux-files/emacs/guix-emacs.el \
gnu/packages/aux-files/linux-libre/5.8-arm.conf \
gnu/packages/aux-files/linux-libre/5.8-arm64.conf \
gnu/packages/aux-files/linux-libre/5.8-i686.conf \
gnu/packages/aux-files/linux-libre/5.8-x86_64.conf \
gnu/packages/aux-files/linux-libre/5.9-arm.conf \
gnu/packages/aux-files/linux-libre/5.9-arm64.conf \
gnu/packages/aux-files/linux-libre/5.9-i686.conf \
gnu/packages/aux-files/linux-libre/5.9-x86_64.conf \
gnu/packages/aux-files/linux-libre/5.4-arm.conf \
gnu/packages/aux-files/linux-libre/5.4-arm64.conf \
gnu/packages/aux-files/linux-libre/5.4-i686.conf \
@ -455,7 +456,6 @@ SCM_TESTS = \
tests/pypi.scm \
tests/records.scm \
tests/scripts.scm \
tests/scripts-build.scm \
tests/search-paths.scm \
tests/services.scm \
tests/services/linux.scm \
@ -472,6 +472,7 @@ SCM_TESTS = \
tests/syscalls.scm \
tests/system.scm \
tests/texlive.scm \
tests/transformations.scm \
tests/ui.scm \
tests/union.scm \
tests/upstream.scm \
@ -560,7 +561,7 @@ dist_zshcompletion_DATA = etc/completion/zsh/_guix
dist_fishcompletion_DATA = etc/completion/fish/guix.fish
# SELinux policy
dist_selinux_policy_DATA = etc/guix-daemon.cil
nodist_selinux_policy_DATA = etc/guix-daemon.cil
EXTRA_DIST += \
HACKING \
@ -568,6 +569,7 @@ EXTRA_DIST += \
TODO \
CODE-OF-CONDUCT \
.dir-locals.el \
.guix-authorizations \
.guix-channel \
scripts/guix.in \
etc/guix-install.sh \
@ -665,9 +667,11 @@ channel_intro_commit = 9edb3f66fd807b096b48283debdcddccfea34bad
channel_intro_signer = BBB0 2DDF 2CEA F6A8 0D1D E643 A2A0 6DF2 A33A 54FA
# Authenticate the current Git checkout by checking signatures on every commit.
GUIX_GIT_KEYRING = origin/keyring
authenticate:
$(AM_V_at)echo "Authenticating Git checkout..." ; \
guix git authenticate \
--keyring=$(GUIX_GIT_KEYRING) \
--cache-key=channels/guix --stats \
"$(channel_intro_commit)" "$(channel_intro_signer)"
@ -706,7 +710,7 @@ AM_DISTCHECK_CONFIGURE_FLAGS = \
ac_cv_guix_test_root="$(GUIX_TEST_ROOT)"
# Name of the 'guix' package shipped in the binary tarball.
GUIX_FOR_BINARY_TARBALL = guile3.0-guix
GUIX_FOR_BINARY_TARBALL = guix
# The self-contained tarball.
guix-binary.%.tar.xz:
@ -726,8 +730,8 @@ distcheck-hook: assert-binaries-available assert-final-inputs-self-contained
EXTRA_DIST += $(top_srcdir)/.version
BUILT_SOURCES += $(top_srcdir)/.version
$(top_srcdir)/.version:
echo $(VERSION) > "$@-t" && mv "$@-t" "$@"
$(top_srcdir)/.version: config.status
$(AM_V_GEN)echo $(VERSION) > "$@-t" && mv "$@-t" "$@"
gen-tarball-version:
echo $(VERSION) > "$(distdir)/.tarball-version"
@ -822,9 +826,10 @@ release: dist-with-updated-version
$(MKDIR_P) "$(releasedir)"
rm -f "$(releasedir)"/*
mv $(SOURCE_TARBALLS) "$(releasedir)"
$(top_builddir)/pre-inst-env "$(GUILE)" \
$(top_srcdir)/build-aux/update-guix-package.scm \
"`git rev-parse HEAD`" "$(PACKAGE_VERSION)"
GUIX_ALLOW_ME_TO_USE_PRIVATE_COMMIT=yes \
$(top_builddir)/pre-inst-env "$(GUILE)" \
$(top_srcdir)/build-aux/update-guix-package.scm \
"`git rev-parse HEAD`" "$(PACKAGE_VERSION)"
git add $(top_srcdir)/gnu/packages/package-management.scm
git commit -m "gnu: guix: Update to $(PACKAGE_VERSION)."
$(top_builddir)/pre-inst-env guix build $(GUIX_FOR_BINARY_TARBALL) \
@ -836,9 +841,10 @@ release: dist-with-updated-version
mv "guix-binary.$$system.tar.xz" \
"$(releasedir)/guix-binary-$(PACKAGE_VERSION).$$system.tar.xz" ; \
done
$(top_builddir)/pre-inst-env "$(GUILE)" \
$(top_srcdir)/build-aux/update-guix-package.scm \
"`git rev-parse HEAD`"
GUIX_ALLOW_ME_TO_USE_PRIVATE_COMMIT=yes \
$(top_builddir)/pre-inst-env "$(GUILE)" \
$(top_srcdir)/build-aux/update-guix-package.scm \
"`git rev-parse HEAD`"
git add $(top_srcdir)/gnu/packages/package-management.scm
git commit -m "gnu: guix: Update to `git rev-parse HEAD | cut -c1-7`."
$(top_builddir)/pre-inst-env guix build guix \

154
NEWS
View file

@ -11,6 +11,160 @@ Copyright © 2016, 2017, 2018 Ricardo Wurmus <rekado@elephly.net>
Please send Guix bug reports to bug-guix@gnu.org.
* Changes in 1.2.0 (since 1.1.0)
** Package management
*** guix pull now crytographically authenticates channels
*** guix describe -f channels now shows “channel introductions”
*** guix describe -f channels-sans-intro omits channel introductions
*** New guix git authenticate command, to authenticate Git checkouts
*** guix pull and guix system reconfigure detect attempts to downgrade
*** New --allow-downgrades option for guix pull and guix system
*** Guix build time reduced thanks to Guile 3.0.4s “baseline compiler”
*** New --with-debug-info package transformation option
*** New --with-c-toolchain package transformation option
*** New --without-tests package transformation option
*** --with-input & co. now also apply to implicit dependencies
*** Package transformation options are now recorded in profiles
*** New fakechroot “execution engine” for packs produced by guix pack -RR
*** New --cache-bypass-threshold option for guix publish
*** New --diff option for guix challenge, to compare substitutes
*** New --exclude option for guix lint, to exclude checkers
*** New check-for-collisions checker in guix lint
*** All of Guix and Guix System now runs on Guile 3.0
*** guix pull and --with-git-url now support authenticated SSH repos
*** guix pull now honors $http_proxy and $https_proxy
*** New --path option for guix graph, showing the shortest path
*** guix repl can now be passed a script to execute
*** guix help finally shows command descriptions
*** guix install etc. no longer list items to download by default
*** guix search etc. now automatically invoke the pager
*** New --hash option for guix hash
*** New --list-formats option for guix describe
*** New “Getting Started” section in the manual
** Distribution
*** Bootstrap binary seeds reduced to 60 MiB on x86_64/i686
*** New --target option for guix system, for cross-compilation
*** New --image-type option for guix system disk-image
*** New --label option for guix system disk-image
*** Guix System can now boot from a Btrfs subvolume
*** New hurd field of operating-system, for GNU/Hurd support
*** Guix System can be cross-compiled to GNU/Hurd with --target=i586-pc-gnu
*** New hurd-vm-service-type to spawn a GNU/Hurd VM on GNU/Linux
*** /etc/guix/acl on Guix System is now built from the OS configuration
*** rottlog-service-type is now part of %base-services
*** Linux-libre modules are now gzip-compressed
*** The efivarfs file system is now part of %base-file-systems
*** mcron job specs are now statically checked at OS build time
*** swap-devices field of operating-system can contains UUIDs and labels
*** Graphical installer uses UUIDs for unencrypted swap partitions
*** Graphical installer now supports NTFS file systems
*** File systems UUIDs and labels now recognized for F2FS and NTFS
*** Root file system can now be on NFS
*** New services
autossh, ganeti, gmnisrv, guix-build-coordinator,
guix-build-coordinator-agent, guix-build-coordinator-queue-builds, hostapd,
hurd-console, hurd-getty, hurd-vm, lxqt, rshiny, secret-service,
simulated-wifi, udev-rules, unattended-upgrade, webssh, zram
*** 1999 new packages
*** 3652 package updates
Noteworthy updates:
bash 5.0.16, binutils 2.34, cups 2.3.3, emacs 27.1, enlightenment 0.24.2,
gcc-toolchain 10.2.0, gdb 10.1, ghc 8.8.3, gimp 2.10.22, glibc 2.31,
gnome 3.34.2, gnupg 2.2.23, go 1.14.10, guile 3.0.4,
icecat 78.4.0-guix0-preview1, inkscape 1.0.1, julia 1.5.2,
libreoffice 6.4.6.2, linux-libre 5.9.3, mate 1.24.1, ocaml 4.09.0,
openjdk 14.0, perl 5.30.2, python2 2.7.17, python 3.8.2, racket 7.8,
rust 1.46.0, r 4.0.3, sbcl 2.0.10, shepherd 0.8.1, xfce 4.14.2,
xorg-server 1.20.8
** Programming interfaces
*** New maven-build-system, for packages built with Maven
*** haskell-build-system now always adds a “static” output
*** New (gnu image) module, to build system images
*** New (guix git-authenticate) module, for Git checkout authentication
*** New (guix openpgp) module with a minimal OpenPGP implementation
*** New (guix transformations) module, for package transformations
*** New (gnu services hurd) module providing GNU/Hurd services
*** (guix json) removed in favor of Guile-JSONs (json) module
*** (guix zlib) and (guix lzlib) removed in favor of Guile-{Zlib,Lzlib}
*** local-file warns about non-literal relative file names
*** Daemon now supports more hash algorithms: SHA3 and BLAKE2s
*** New <content-hash> record type for use in origin
*** New let-system for in (guix gexp), for system-dependent code
*** New lowerable <profile> record type in (guix profiles)
*** (gnu build secret-service) can share secrets with a guest OS
*** “Programming Interface” section of the manual greatly expounded
** Noteworthy bug fixes
*** guix pull now shows a progress bar while fetching from Git
(<https://bugs.gnu.org/39260>)
*** guix copy and guix deploy show a progress bar while copying
*** Bootloader messages are now localized
(<https://issues.guix.gnu.org/35394>)
*** guix system reconfigure now starts services not currently running
(<https://bugs.gnu.org/43720>)
*** Desktop environments now detect newly installed applications
(<https://bugs.gnu.org/35594>)
*** Offloading and copying small items is now much faster
(<https://issues.guix.gnu.org/43340>)
*** GCC switched back to C_INCLUDE_PATH & co. from CPATH
(<https://bugs.gnu.org/30756>)
*** Graphical installer no longer hangs while connecting to WiFi network
(<https://issues.guix.gnu.org/40682>)
*** GNU Aspell truly honors ASPELL_DICT_DIR (<https://bugs.gnu.org/29686>)
*** Fix overly aggressive memoization of “commencement” packages
(<https://bugs.gnu.org/40482>)
*** Duplicate /etc entries are now reported (<https://bugs.gnu.org/40729>)
*** guix pack -R wrapper correctly reports exit code
(<https://bugs.gnu.org/40816>)
*** Fix time travel to pre-Guile 3.0 revisions
(<https://bugs.gnu.org/41028>)
*** package-grafts returns grafts for all the relevant outputs
(<https://bugs.gnu.org/41796>)
*** guix pull and related commands authenticate Git checkouts
(<https://bugs.gnu.org/22883>)
*** Fix GNU libstdc++ misconfiguration in recent gcc-toolchain versions
(<https://bugs.gnu.org/42392>)
*** guix pack -R wraps propagated inputs as well
(<https://bugs.gnu.org/42510>)
*** guix pack -R wrapper leaves root available to child processes
(<https://bugs.gnu.org/44261>)
*** lib/guix/package.cache generated by guix pull is now bit-reproducible
(<https://bugs.gnu.org/42009>)
*** Graphical installer now properly detects disks containing an LVM partition
(<https://issues.guix.gnu.org/42683>)
*** Fix possible crash when copying store items over SSH
(<https://bugs.gnu.org/42740>)
*** gcc is now a “deprecated” alias for gcc-toolchain
(<https://bugs.gnu.org/43303>)
*** package-input-rewriting & co. no longer yield unnecessary rebuilds
(<https://bugs.gnu.org/42156>)
*** Offloading better normalizes build machine load
(<https://issues.guix.gnu.org/43773>)
*** guix build --check now honors --rounds
(<https://issues.guix.gnu.org/40144>)
*** guix-install.sh now installs shell completion files
(<https://bugs.gnu.org/43744>)
*** guix-install.sh now warns about lack of nscd
(<https://bugs.gnu.org/43744>)
** Native language support
*** Updated translations of the manual
The manual is fully translated into French, German, and Spanish, and has
preliminary translations into Chinese and Russian.
*** Updated translations of messages
This version of Guix is fully translated in French, German, and Spanish, and
partially translated in 11 other languages.
* Changes in 1.1.0 (since 1.0.1)
** Package management
*** New guix deploy command to deploy several machines at once

21
README
View file

@ -33,25 +33,14 @@ See the manual for the installation instructions, either by running
or by checking the [[https://guix.gnu.org/manual/en/html_node/Installation.html][web copy of the manual]].
For information on installation from a Git checkout, please see the section
"Building from Git" in the manual.
* Building from Git
* Installing Guix from Guix
For information on building Guix from a Git checkout, please see the relevant
section in the manual, either by running
You can re-build and re-install Guix using a system that already runs Guix.
To do so:
info -f doc/guix.info "Building from Git"
- Start a shell with the development environment for Guix:
guix environment guix
- Re-run the 'configure' script passing it the option
'--localstatedir=/somewhere', where '/somewhere' is the 'localstatedir'
value of the currently installed Guix (failing to do that would lead the
new Guix to consider the store to be empty!). We recommend to use the
value '/var'.
- Run "make", "make check", and "make install".
or by checking the [[https://guix.gnu.org/manual/en/html_node/Building-from-Git.html][web_copy of the manual]].
* How It Works

View file

@ -1,5 +1,6 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2017, 2018 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2020 Maxim Cournoyer <maxim.cournoyer@gmail.com>
;;;
;;; This file is part of GNU Guix.
;;;
@ -24,20 +25,25 @@
;;; Code:
(use-modules (guix)
(guix ui)
(guix git-download)
(guix upstream)
(guix utils)
(guix base32)
(guix build utils)
(guix scripts hash)
(gnu packages package-management)
(ice-9 match))
(ice-9 match)
(ice-9 popen)
(ice-9 regex)
(ice-9 textual-ports)
(srfi srfi-1)
(srfi srfi-2)
(srfi srfi-26))
(define %top-srcdir
(string-append (current-source-directory) "/.."))
(define version-controlled?
(git-predicate %top-srcdir))
(define (package-definition-location)
"Return the source properties of the definition of the 'guix' package."
(call-with-input-file (location-file (package-location guix))
@ -101,44 +107,107 @@ (define (update-hash str)
(exp
(error "'guix' package definition is not as expected" exp)))))
(define (git-add-worktree directory commit)
"Create a new git worktree at DIRECTORY, detached on commit COMMIT."
(invoke "git" "worktree" "add" "--detach" directory commit))
(define (call-with-temporary-git-worktree commit proc)
"Execute PROC in the context of a temporary git worktree created from
COMMIT. PROC receives the temporary directory file name as an argument."
(call-with-temporary-directory
(lambda (tmp-directory)
(dynamic-wind
(lambda ()
#t)
(lambda ()
(git-add-worktree tmp-directory commit)
(proc tmp-directory))
(lambda ()
(invoke "git" "worktree" "remove" "--force" tmp-directory))))))
(define %savannah-guix-git-repo-push-url-regexp
"git.(savannah|sv).gnu.org:?/srv/git/guix.git \\(push\\)")
(define-syntax-rule (with-input-pipe-to-string prog arg ...)
(let* ((input-pipe (open-pipe* OPEN_READ prog arg ...))
(output (get-string-all input-pipe))
(exit-val (status:exit-val (close-pipe input-pipe))))
(unless (zero? exit-val)
(error (format #f "Command ~s exited with non-zero exit status: ~s"
(string-join (list prog arg ...)) exit-val)))
(string-trim-both output)))
(define (find-origin-remote)
"Find the name of the git remote with the Savannah Guix git repo URL."
(and-let* ((remotes (string-split (with-input-pipe-to-string
"git" "remote" "-v")
#\newline))
(origin-entry (find (cut string-match
%savannah-guix-git-repo-push-url-regexp
<>)
remotes)))
(first (string-split origin-entry #\tab))))
(define (commit-already-pushed? remote commit)
"True if COMMIT is found in the REMOTE repository."
(not (string-null? (with-input-pipe-to-string
"git" "branch" "-r" "--contains" commit
(string-append remote "/master")))))
(define (keep-source-in-store store source)
"Add SOURCE to the store under the name that the 'guix' package expects."
;; Add SOURCE to the store, but this time under the real name used in the
;; 'origin'. This allows us to build the package without having to make a
;; real checkout; thus, it also works when working on a private branch.
(reload-module
(resolve-module '(gnu packages package-management)))
(let* ((source (add-to-store store
(origin-file-name (package-source guix))
#t "sha256" source
#:select? (git-predicate source)))
(root (store-path-package-name source)))
;; Add an indirect GC root for SOURCE in the current directory.
(false-if-exception (delete-file root))
(symlink source root)
(add-indirect-root store
(string-append (getcwd) "/" root))
(info (G_ "source code kept in ~a (GC root: ~a)~%")
source root)))
(define (main . args)
(match args
((commit version)
(with-store store
(let* ((source (add-to-store store
"guix-checkout" ;dummy name
#t "sha256" %top-srcdir
#:select? version-controlled?))
(hash (query-path-hash store source))
(location (package-definition-location))
(old-hash (content-hash-value
(origin-hash (package-source guix)))))
(edit-expression location
(update-definition commit hash
#:old-hash old-hash
#:version version))
;; Re-add SOURCE to the store, but this time under the real name used
;; in the 'origin'. This allows us to build the package without
;; having to make a real checkout; thus, it also works when working
;; on a private branch.
(reload-module
(resolve-module '(gnu packages package-management)))
(let* ((source (add-to-store store
(origin-file-name (package-source guix))
#t "sha256" source))
(root (store-path-package-name source)))
;; Add an indirect GC root for SOURCE in the current directory.
(false-if-exception (delete-file root))
(symlink source root)
(add-indirect-root store
(string-append (getcwd) "/" root))
(format #t "source code for commit ~a: ~a (GC root: ~a)~%"
commit source root)))))
(with-directory-excursion %top-srcdir
(or (getenv "GUIX_ALLOW_ME_TO_USE_PRIVATE_COMMIT")
(let ((remote (find-origin-remote)))
(unless remote
(leave (G_ "Failed to find the origin git remote.~%")))
(commit-already-pushed? remote commit))
(leave (G_ "Commit ~a is not pushed upstream. Aborting.~%") commit))
(call-with-temporary-git-worktree commit
(lambda (tmp-directory)
(let* ((hash (nix-base32-string->bytevector
(string-trim-both
(with-output-to-string
(lambda ()
(guix-hash "-rx" tmp-directory))))))
(location (package-definition-location))
(old-hash (content-hash-value
(origin-hash (package-source guix)))))
(edit-expression location
(update-definition commit hash
#:old-hash old-hash
#:version version))
;; When GUIX_ALLOW_ME_TO_USE_PRIVATE_COMMIT is set, the sources are
;; added to the store. This is used as part of 'make release'.
(when (getenv "GUIX_ALLOW_ME_TO_USE_PRIVATE_COMMIT")
(with-store store
(keep-source-in-store store tmp-directory))))))))
((commit)
;; Automatically deduce the version and revision numbers.
(main commit #f))))

View file

@ -144,6 +144,11 @@ if test "x$guix_cv_have_recent_guile_gcrypt" != "xyes"; then
AC_MSG_ERROR([A recent Guile-Gcrypt could not be found; please install it.])
fi
GUIX_CHECK_GUILE_GIT
if test "x$guix_cv_have_recent_guile_git" != "xyes"; then
AC_MSG_ERROR([A recent Guile-Git could not be found; please install it.])
fi
dnl Check for Guile-zlib.
GUILE_MODULE_AVAILABLE([have_guile_zlib], [(zlib)])
if test "x$have_guile_zlib" != "xyes"; then

View file

@ -298,13 +298,17 @@ (define (worthy-entry? lst)
(loop rest))
((('strong _ ...) _ ...)
#t)
(_ #f))))
((('span ('@ ('class "symbol-definition-category"))
(? string-or-entity?) ...) rest ...)
#t)
(x
#f))))
(let ((shtml (call-with-input-file file html->shtml)))
(let loop ((shtml shtml)
(anchors anchors))
(match shtml
(('dt ('@ ('id id)) rest ...)
(('dt ('@ ('id id) _ ...) rest ...)
(if (and (string-prefix? "index-" id)
(worthy-entry? rest))
(alist-cons (anchor-id->key id)
@ -479,6 +483,19 @@ (define (concatenate-snippets pieces)
(pk 'unsupported-code-snippet something)
(primitive-exit 1)))))
(define (highlight-definition id category symbol args)
;; Produce stylable HTML for the given definition (an @deftp,
;; @deffn, or similar).
`(dt (@ (id ,id) (class "symbol-definition"))
(span (@ (class "symbol-definition-category"))
,@category)
(span (@ (class "symbol-definition-prototype"))
,symbol " " ,@args)))
(define (space? obj)
(and (string? obj)
(string-every char-set:whitespace obj)))
(define (syntax-highlight sxml anchors)
;; Recurse over SXML and syntax-highlight code snippets.
(let loop ((sxml sxml))
@ -497,6 +514,15 @@ (define (syntax-highlight sxml anchors)
(highlight lex-scheme
(concatenate-snippets code-snippet)))
anchors)))
;; Replace the ugly <strong> used for @deffn etc., which
;; translate to <dt>, with more stylable markup.
(('dt (@ ('id id)) category ... ('strong thing))
(highlight-definition id category thing '()))
(('dt (@ ('id id)) category ... ('strong thing)
(? space?) ('em args ...))
(highlight-definition id category thing args))
((tag ('@ attributes ...) body ...)
`(,tag (@ ,@attributes) ,@(map loop body)))
((tag body ...)
@ -1172,7 +1198,8 @@ (define guix-mono-node-indexes
#:manual-name "guix"
#:base-url (if (string=? %manual "guix")
(const "")
(cut string-append "/manual/" <>))
(cut string-append
"/manual/devel/" <>))
#:languages %languages))
(define guix-split-node-indexes
@ -1181,8 +1208,9 @@ (define guix-split-node-indexes
#:manual-name "guix"
#:base-url (if (string=? %manual "guix")
(const "")
(cut string-append "/manual/" <>
"/html_node"))
(cut string-append
"/manual/devel/" <>
"/html_node"))
#:languages %languages))
(define mono-node-indexes

View file

@ -28,6 +28,7 @@ choice.
* Submitting Patches:: Share your work.
* Tracking Bugs and Patches:: Using Debbugs.
* Commit Access:: Pushing to the official repository.
* Updating the Guix Package:: Updating the Guix package definition.
@end menu
@node Building from Git
@ -139,6 +140,16 @@ make authenticate
The first run takes a couple of minutes, but subsequent runs are faster.
Or, when your configuration for your local Git repository doesn't match
the default one, you can provide the reference for the @code{keyring}
branch through the variable @code{GUIX_GIT_KEYRING}. The following
example assumes that you have a Git remote called @samp{myremote}
pointing to the official repository:
@example
make authenticate GUIX_GIT_KEYRING=myremote/keyring
@end example
@quotation Note
You are advised to run @command{make authenticate} after every
@command{git pull} invocation. This ensures you keep receiving valid
@ -604,11 +615,11 @@ to make recommendations or instructions visible to them by inserting
special comments like this (@pxref{xgettext Invocation,,, gettext, GNU
Gettext}):
@example
@lisp
;; TRANSLATORS: "X11 resize-and-rotate" should not be translated.
(description "ARandR is designed to provide a simple visual front end
for the X11 resize-and-rotate (RandR) extension. @dots{}")
@end example
@end lisp
@node Snippets versus Phases
@subsection Snippets versus Phases
@ -1323,3 +1334,40 @@ only push their own awesome changes, but also offer some of their time
@emph{reviewing} and pushing other people's changes. As a committer,
you're welcome to use your expertise and commit rights to help other
contributors, too!
@node Updating the Guix Package
@section Updating the Guix Package
@cindex update-guix-package, updating the guix package
It is sometimes desirable to update the @code{guix} package itself (the
package defined in @code{(gnu packages package-management)}), for
example to make new daemon features available for use by the
@code{guix-service-type} service type. In order to simplify this task,
the following command can be used:
@example
make update-guix-package
@end example
The @code{update-guix-package} make target will use the last known
@emph{commit} corresponding to @code{HEAD} in your Guix checkout,
compute the hash of the Guix sources corresponding to that commit and
update the @code{commit}, @code{revision} and hash of the @code{guix}
package definition.
To validate that the updated @code{guix} package hashes are correct and
that it can be built successfully, the following command can be run from
the directory of your Guix checkout:
@example
./pre-inst-env guix build guix
@end example
To guard against accidentally updating the @code{guix} package to a
commit that others can't refer to, a check is made that the commit used
has already been pushed to the Savannah-hosted Guix git repository.
This check can be disabled, @emph{at your own peril}, by setting the
@code{GUIX_ALLOW_ME_TO_USE_PRIVATE_COMMIT} environment variable. When
this variable is set, the updated package source is also added to the
store. This is used as part of the release process of Guix.

File diff suppressed because it is too large Load diff

View file

@ -96,14 +96,16 @@ define xref_command
cat "$@.tmp" | egrep '@p?x?ref' -A1 | sed 'N;s|--\n||g;P;D' | sed 's|^| |g' | \
tr -d '\012' | sed 's|\(@p\?x\?ref\)|\n\1|g' | egrep '@p?x?ref' | \
sed 's|^.*@p\?x\?ref{\([^,}]*\).*$$|\1|g' | sort | uniq | while read e; do \
line=$$(grep -n "^msgid \"$$e\"" "$<" | cut -f1 --delimiter=":") ;\
((line++)) ;\
if [ "$$line" != "1" ]; then \
translation=$$(head -n $$line "$<" | tail -1 | grep msgstr | sed 's|msgstr "\(.*\)"|\1|') ;\
if [ "$$translation" != "" ]; then \
sed "N;s@\(p\?x\?ref\){$$(echo $$e | sed 's| |[\\n ]|g')\(,\|}\)@\1{$$translation\2@g;P;D" -i "$@.tmp" ;\
fi ;\
fi ;\
if [ -n "$$e" ]; then \
line=$$(grep -n "^msgid \"$$e\"" "$<" | cut -f1 --delimiter=":") ;\
((line++)) ;\
if [ "$$line" != "1" ]; then \
translation=$$(head -n "$$line" "$<" | tail -1 | grep msgstr | sed 's|msgstr "\(.*\)"|\1|') ;\
if [ "$$translation" != "" ]; then \
sed "N;s@\(p\?x\?ref\){$$(echo $$e | sed 's| |[\\n ]|g')\(,\|}\)@\1{$$translation\2@g;P;D" -i "$@.tmp" ;\
fi ;\
fi ;\
fi ;\
done
endef

View file

@ -1,6 +1,8 @@
; -*- lisp -*-
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2018 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2020 Daniel Brooks <db48x@db48x.net>
;;; Copyright © 2020 Marius Bakke <marius@gnu.org>
;;;
;;; This file is part of GNU Guix.
;;;
@ -21,6 +23,18 @@
;; Intermediate Language (CIL). It refers to types that must be defined in
;; the system's base policy.
;; If you, like me, need advice about fixing an SELinux policy, I recommend
;; reading https://danwalsh.livejournal.com/55324.html
;; In particular, you can run semanage permissive -a guix_daemon.guix_daemon_t
;; to allow guix-daemon to do whatever it wants. SELinux will still check its
;; permissions, and when it doesn't have permission it will still send an
;; audit message to your system logs. This lets you know what permissions it
;; ought to have. Use ausearch --raw to find the permissions violations, then
;; pipe that to audit2allow to generate an updated policy. You'll still need
;; to translate that policy into CIL in order to update this file, but that's
;; fairly straight-forward. Annoying, but easy.
(block guix_daemon
;; Require existing types
(typeattributeset cil_gen_require init_t)
@ -34,14 +48,19 @@
(roletype object_r guix_daemon_t)
(type guix_daemon_conf_t)
(roletype object_r guix_daemon_conf_t)
(typeattributeset file_type guix_daemon_conf_t)
(type guix_daemon_exec_t)
(roletype object_r guix_daemon_exec_t)
(typeattributeset file_type guix_daemon_exec_t)
(type guix_daemon_socket_t)
(roletype object_r guix_daemon_socket_t)
(typeattributeset file_type guix_daemon_socket_t)
(type guix_store_content_t)
(roletype object_r guix_store_content_t)
(typeattributeset file_type guix_store_content_t)
(type guix_profiles_t)
(roletype object_r guix_profiles_t)
(typeattributeset file_type guix_profiles_t)
;; These types are domains, thereby allowing process rules
(typeattributeset domain (guix_daemon_t guix_daemon_exec_t))
@ -55,6 +74,30 @@
(typetransition guix_store_content_t guix_daemon_exec_t
process guix_daemon_t)
(roletype system_r guix_daemon_t)
;; allow init_t to read and execute guix files
(allow init_t
guix_profiles_t
(lnk_file (read)))
(allow init_t
guix_daemon_exec_t
(file (execute)))
(allow init_t
guix_daemon_t
(process (transition)))
(allow init_t
guix_store_content_t
(lnk_file (read)))
(allow init_t
guix_store_content_t
(file (open read execute)))
;; guix-daemon needs to know the names of users
(allow guix_daemon_t
passwd_file_t
(file (getattr open read)))
;; Permit communication with NSCD
(allow guix_daemon_t
nscd_var_run_t
@ -71,25 +114,46 @@
(allow guix_daemon_t
nscd_t
(unix_stream_socket (connectto)))
(allow guix_daemon_t nscd_t
(nscd (getgrp gethost getpwd getserv shmemgrp shmemhost shmempwd shmemserv)))
;; permit downloading packages via HTTP(s)
(allow guix_daemon_t http_port_t
(tcp_socket (name_connect)))
(allow guix_daemon_t ftp_port_t
(tcp_socket (name_connect)))
(allow guix_daemon_t ephemeral_port_t
(tcp_socket (name_connect)))
;; Permit logging and temp file access
(allow guix_daemon_t
tmp_t
(lnk_file (setattr unlink)))
(lnk_file (create rename setattr unlink)))
(allow guix_daemon_t
tmp_t
(dir (create
rmdir
(file (link
rename create execute execute_no_trans write
unlink setattr map relabelto relabelfrom)))
(allow guix_daemon_t
tmp_t
(fifo_file (open read write create getattr ioctl setattr unlink)))
(allow guix_daemon_t
tmp_t
(dir (create rename
rmdir relabelto relabelfrom reparent
add_name remove_name
open read write
getattr setattr
search)))
(allow guix_daemon_t
tmp_t
(sock_file (create getattr setattr unlink write)))
(allow guix_daemon_t
var_log_t
(file (create getattr open write)))
(allow guix_daemon_t
var_log_t
(dir (getattr write add_name)))
(dir (getattr create write add_name)))
(allow guix_daemon_t
var_run_t
(lnk_file (read)))
@ -100,10 +164,10 @@
;; Spawning processes, execute helpers
(allow guix_daemon_t
self
(process (fork)))
(process (fork execmem setrlimit setpgid setsched)))
(allow guix_daemon_t
guix_daemon_exec_t
(file (execute execute_no_trans read open)))
(file (execute execute_no_trans read open entrypoint map)))
;; TODO: unknown
(allow guix_daemon_t
@ -119,38 +183,51 @@
;; Build isolation
(allow guix_daemon_t
guix_store_content_t
(file (mounton)))
(file (ioctl mounton)))
(allow guix_store_content_t
fs_t
(filesystem (associate)))
(allow guix_daemon_t
guix_store_content_t
(dir (mounton)))
(dir (read mounton)))
(allow guix_daemon_t
guix_daemon_t
(capability (net_admin
fsetid fowner
chown setuid setgid
dac_override dac_read_search
sys_chroot)))
sys_chroot
sys_admin)))
(allow guix_daemon_t
fs_t
(filesystem (unmount)))
(allow guix_daemon_t
devpts_t
(dir (search)))
(allow guix_daemon_t
devpts_t
(filesystem (mount)))
(allow guix_daemon_t
devpts_t
(chr_file (setattr getattr)))
(chr_file (ioctl open read write setattr getattr)))
(allow guix_daemon_t
tmpfs_t
(filesystem (mount)))
(filesystem (getattr mount)))
(allow guix_daemon_t
tmpfs_t
(dir (getattr)))
(file (create open read unlink write)))
(allow guix_daemon_t
tmpfs_t
(dir (getattr add_name remove_name write)))
(allow guix_daemon_t
proc_t
(filesystem (mount)))
(file (getattr open read)))
(allow guix_daemon_t
proc_t
(dir (read)))
(allow guix_daemon_t
proc_t
(filesystem (associate mount)))
(allow guix_daemon_t
null_device_t
(chr_file (getattr open read write)))
@ -179,7 +256,7 @@
search rename
add_name remove_name
open write
rmdir)))
rmdir relabelfrom)))
(allow guix_daemon_t
guix_store_content_t
(file (create
@ -189,7 +266,8 @@
link unlink
map
rename
open read write)))
append
open read write relabelfrom)))
(allow guix_daemon_t
guix_store_content_t
(lnk_file (create
@ -197,17 +275,23 @@
link unlink
read
rename)))
(allow guix_daemon_t
guix_store_content_t
(fifo_file (create getattr open read unlink write)))
(allow guix_daemon_t
guix_store_content_t
(sock_file (create getattr setattr unlink write)))
;; Access to configuration files and directories
(allow guix_daemon_t
guix_daemon_conf_t
(dir (search
(dir (search create
setattr getattr
add_name remove_name
open read write)))
(allow guix_daemon_t
guix_daemon_conf_t
(file (create
(file (create rename
lock
map
getattr setattr
@ -216,11 +300,17 @@
(allow guix_daemon_t
guix_daemon_conf_t
(lnk_file (create getattr rename unlink)))
(allow guix_daemon_t net_conf_t
(file (getattr open read)))
(allow guix_daemon_t net_conf_t
(lnk_file (read)))
(allow guix_daemon_t NetworkManager_var_run_t
(dir (search)))
;; Access to profiles
(allow guix_daemon_t
guix_profiles_t
(dir (getattr setattr read open)))
(dir (search getattr setattr read write open create add_name)))
(allow guix_daemon_t
guix_profiles_t
(lnk_file (read getattr)))
@ -233,8 +323,22 @@
(allow guix_daemon_t
user_home_t
(dir (search)))
(allow guix_daemon_t
cache_home_t
(dir (search)))
;; self upgrades
(allow guix_daemon_t
self
(dir (add_name write)))
(allow guix_daemon_t
self
(netlink_route_socket (bind create getattr nlmsg_read read write getopt)))
;; Socket operations
(allow guix_daemon_t
guix_daemon_socket_t
(sock_file (unlink)))
(allow guix_daemon_t
init_t
(fd (use)))
@ -253,12 +357,75 @@
read write
connect bind accept
getopt setopt)))
(allow guix_daemon_t
self
(tcp_socket (accept listen bind connect create setopt getopt getattr ioctl read write shutdown)))
(allow guix_daemon_t
unreserved_port_t
(tcp_socket (name_bind name_connect accept listen)))
(allow guix_daemon_t
self
(udp_socket (connect getattr bind getopt setopt read write)))
(allow guix_daemon_t
self
(fifo_file (write read)))
(allow guix_daemon_t
self
(udp_socket (ioctl create)))
(allow guix_daemon_t
self
(unix_stream_socket (connectto)))
(allow guix_daemon_t
self
(unix_dgram_socket (create bind connect sendto read write)))
;; For some esoteric build jobs (i.e. running PostgreSQL, etc).
(allow guix_daemon_t
self
(capability (kill)))
(allow guix_daemon_t
node_t
(tcp_socket (node_bind)))
(allow guix_daemon_t
node_t
(udp_socket (node_bind)))
(allow guix_daemon_t
port_t
(tcp_socket (name_connect)))
(allow guix_daemon_t
tmpfs_t
(file (map read write link getattr)))
(allow guix_daemon_t
usermodehelper_t
(file (read)))
(allow guix_daemon_t
hugetlbfs_t
(file (map read write)))
(allow guix_daemon_t
proc_net_t
(file (read)))
(allow guix_daemon_t
postgresql_port_t
(tcp_socket (name_connect name_bind)))
(allow guix_daemon_t
rtp_media_port_t
(udp_socket (name_bind)))
(allow guix_daemon_t
vnc_port_t
(tcp_socket (name_bind)))
;; I guess sometimes it needs random numbers
(allow guix_daemon_t
random_device_t
(chr_file (read)))
;; guix system vm
(allow guix_daemon_t
kvm_device_t
(chr_file (ioctl open read write)))
(allow guix_daemon_t
kernel_t
(system (ipc_info)))
;; Label file system
(filecon "@guix_sysconfdir@/guix(/.*)?"
@ -277,5 +444,7 @@
file (system_u object_r guix_daemon_exec_t (low low)))
(filecon "@storedir@/.+-(guix-.+|profile)/bin/guix-daemon"
file (system_u object_r guix_daemon_exec_t (low low)))
(filecon "@storedir@/[a-z0-9]+-guix-daemon"
file (system_u object_r guix_daemon_exec_t (low low)))
(filecon "@guix_localstatedir@/guix/daemon-socket/socket"
any (system_u object_r guix_daemon_socket_t (low low))))

View file

@ -6,6 +6,7 @@
# Copyright © 2019, 2020 Tobias Geerinckx-Rice <me@tobias.gr>
# Copyright © 2020 Morgan Smith <Morgan.J.Smith@outlook.com>
# Copyright © 2020 Simon Tournier <zimon.toutoune@gmail.com>
# Copyright © 2020 Daniel Brooks <db48x@db48x.net>
#
# This file is part of GNU Guix.
#
@ -60,6 +61,7 @@ INF="[ INFO ] "
DEBUG=0
GNU_URL="https://ftp.gnu.org/gnu/guix/"
#GNU_URL="https://alpha.gnu.org/gnu/guix/"
OPENPGP_SIGNING_KEY_ID="3CE464558A84FDC69DB40CFB090B11993D9AEBB5"
# This script needs to know where root's home directory is. However, we
@ -228,11 +230,11 @@ guix_get_bin_list()
# Filter only version and architecture
bin_ver_ls=("$(wget -qO- "$gnu_url" \
| sed -n -e 's/.*guix-binary-\([0-9.]*\)\..*.tar.xz.*/\1/p' \
| sed -n -e 's/.*guix-binary-\([0-9.]*[a-z0-9]*\)\..*.tar.xz.*/\1/p' \
| sort -Vu)")
latest_ver="$(echo "$bin_ver_ls" \
| grep -oE "([0-9]{1,2}\.){2}[0-9]{1,2}" \
| grep -oE "([0-9]{1,2}\.){2}[0-9]{1,2}[a-z0-9]*" \
| tail -n1)"
default_ver="guix-binary-${latest_ver}.${ARCH_OS}"

View file

@ -18,9 +18,184 @@
(channel-news
(version 0)
(entry (commit "a9a2fdaabcc78e7a54d9a6bcfa4ee3de308e9a90")
(title (en "Logical Volume Manager (LVM) now supported on Guix System")
(de "Logical Volume Manager (LVM) wird jetzt auf Guix System unterstützt"))
(body
(en "On Guix System, the new @code{lvm-device-mapping} variable
allows you to declare ``mapped devices'' for LVM, the Linux Logical Volume
Manager. For example, LVM logical volumes ``alpha'' and ``beta'' from volume
group ``vg0'' can be declared as follows:
@lisp
(mapped-device
(source \"vg0\")
(target (list \"vg0-alpha\" \"vg0-beta\"))
(type lvm-device-mapping))
@end lisp
See @command{info \"(guix) Mapped Devices\"} for more information.")
(de "Auf Guix System erlaubt Ihnen die neue Variable
@code{lvm-device-mapping}, zugeordnete Geräte (Mapped Devices) für LVM, den
Linux Logical Volume Manager, zu deklarieren. Zum Beispiel können logische
Datenträger von LVM namens alpha und beta aus der
Datenträgergruppe (Volume Group) vg0 wie folgt deklariert werden:
@lisp
(mapped-device
(source \"vg0\")
(target (list \"vg0-alpha\" \"vg0-beta\"))
(type lvm-device-mapping))
@end lisp
Siehe @command{info \"(guix.de) Zugeordnete Geräte\"} für nähere Informationen.")))
(entry (commit "3b6e4e5fd05e72b8a32ff1a2d5e21464260e21e6")
(title (en "List of substitute keys is now declarative on Guix System")
(de "Liste der Substitutschlüssel auf Guix System ist jetzt deklarativ")
(es "Claves para sustituciones del sistema Guix en formato declarativo")
(fr "Liste des clefs de substituts désormais déclarative sur Guix System"))
(body
(en "The list of authorized substitute keys, available in
@file{/etc/guix/acl}, is now built by default in a purely declarative fashion
on Guix System based on the @code{authorized-keys} field of the configuration
of @code{guix-service-type}. This means that manual changes to
@file{/etc/guix/acl} are now @emph{discarded} upon reconfiguration or
reboot (a backup is made as @file{/etc/guix/acl.bak} in that case).
We recommend updating your operating system configuration to explicitly list
all the authorized substitute keys. See @command{info \"(guix) Base
Services\"}, for more info about @code{guix-configuration} and
@code{authorized-keys}.
Alternatively, you can set the @code{authorize-key?} field of
@code{guix-configuration} to @code{#f} to restore previous behavior.")
(de "Die Liste von autorisierten Substitutschlüsseln, die in
@file{/etc/guix/acl} steht, wird auf Guix System nach Vorgabe jetzt auf rein
deklarative Weise erstellt, je nach Inhalt des @code{authorized-keys}-Feldes
der Konfiguration des @code{guix-service-type}. Das hat zur Folge, dass
manuelle Änderungen an @file{/etc/guix/acl} von jetzt an nach jedem
Rekonfigurieren oder Neustarten @emph{verworfen} werden (in diesem Fall wird
eine Sicherheitskopie namens @file{/etc/guix/acl.bak} angelegt).
Wir empfehlen, dass Sie Ihre Betriebssystemkonfiguration aktualisieren, damit
dort alle autorisierten Substitutschlüssel ausdrücklich aufgeführt
werden. Siehe @command{info \"(guix.de) Basisdienste\"} für mehr Informationen
zur @code{guix-configuration} und @code{authorized-keys}.
Alternativ können Sie das @code{authorize-key?}-Feld der
@code{guix-configuration} auf @code{#f} setzen, um zum alten Verhalten
zurückzugehen.")
(es "El listado de claves autorizadas para la obtención de
sustituciones, disponible en @file{/etc/guix/acl}, ahora se genera de manera
predeterminada en el sistema Guix de forma completamente declarativa en base
al campo @code{authorized-keys} del la configuración para el servicio
@code{guix-service-type}. Esto significa que los cambios que se hayan
realizado de manera manual en @file{/etc/guix/acl} @emph{se descartan} tras
una reconfiguración del sistema o tras un reinicio (se realiza una copia de
seguridad en la ruta @file{/etc/guix/acl.bak} en este caso).
Le recomendamos que actualice su configuración del sistema operativo para que
enumere explícitamente todas las claves que desea autorizar para la obtención
de sustituciones. Véase @command{info \"(guix.es) Servicios base\"}, para
obtener más información sobre @code{guix-configuration} y
@code{authorized-keys}.
También puede proporcionar el valor @code{#f} en el campo
@code{authorize-key?} de @code{guix-configuration} para volver al
comportamiento que se obtenía con versiones previas.")
(fr "La liste des clefs de substituts autorisées, stockée dans
@file{/guix/guix/acl}, est dorénavant construite par défaut de manière
déclarative sur Guix System, en se basant sur le champs @code{authorized-keys}
de la configuration de @code{guix-service-type}. Cela signifie que les
modifications apportées manuellement à @file{/etc/guix/acl} seront désormais
@emph{perdues} lors d'une reconfiguration ou d'un redémarrage (dans ce cas une
sauvegarde est faite dans @file{/etc/guix/acl.bak}).
Nous recommandons de mettre à jour sa configuration de système d'exploitation
pour y lister explicitement les clefs autorisées. Lancez @command{info
\"(guix.fr) Services de base\"} pour plus d'informations sur
@code{guix-configuration} et @code{authorized-keys}.
Il est également possible de mettre le champs @code{authorize-key?} de
@code{guix-configuration} à @code{#f} pour restaurer le comportement qui
prévalait jusqu maintenant.")))
(entry (commit "6aeda81602555fbeac0c0a209e74f5262093b513")
(title (en "New @option{--with-debug-info} package transformation option")
(de "Neue Paketumwandlungsoption @option{--with-debug-info}")
(es "Nueva opción de transformación @option{--with-debug-info}")
(fr "Nouvelle option de transformation @option{--with-debug-info}"))
(body
(en "The new @option{--with-debug-info} option builds a variant of a
package that includes debug info and grafts it onto the application you want
to debug. Thus, only the package for which you want debug info needs to be
recompiled. This is useful for packages that do not already have a
@code{debug} output.
For example, here is how you would obtain debug info for the @code{glib}
library so you can inspect it while debugging Inkscape:
@example
guix build --with-debug-info=glib inkscape
@end example
Run @command{info \"(guix) Package Transformation Options\"} for more info.")
(de "Die neue Paketumwandlungsoption @option{--with-debug-info} lässt
eine Variante eines Pakets erstellen, die auch Informationen zur Fehlersuche
enthält. Damit wird die Anwendung veredelt, wo Sie Fehler nachvollziehen
möchten. Somit muss nur das Paket, für das Sie die Informationen brauchen, neu
kompiliert werden. Das ist hilfreich bei Paketen, die noch nicht über eine
@code{debug}-Ausgabe verfügen.
Zum Beispiel würden Sie so Informationen zur Fehlersuche für die
@code{glib}-Bibliothek bekommen, um sie inspizieren zu können, wenn Sie Fehler
in Inkscape nachvollziehen möchten:
@example
guix build --with-debug-info=glib inkscape
@end example
Führen Sie für mehr Informationen @command{info \"(guix.de)
Paketumwandlungsoptionen\"} aus.")
(es "La nueva opción @option{--with-debug-info} construye una
variante del paquete que incluye la información de depuración y la injerta
en la aplicación que desee depurar. Por tanto, únicamente el paquete del
que desee información de depuración debe construirse de nuevo. Es útil
para paquetes que no tienen ya una salida @code{debug}.
El siguiente ejemplo muestra como obtener información de depuración
para la biblioteca @code{glib} de modo que pueda inspeccionarla mientras
depura Inkscape:
@example
guix build --with-debug-info=glib inkscape
@end example
Ejecute @command{info \"(guix.es) Opciones de transformación de paquetes\"}
para obtener más información.")
(fr "La nouvelle option de transformation de paquets
@option{--with-debug-info} compile une variante d'un paquet avec les
informations de déboguage et la greffe sur l'application que l'on veut
déboguer. Ainsi seul le paquet pour lequel on demande des informations de
déboguage a besoin d'être recompilé. C'est utile pour les paquets n'ayant pas
déjà un résultat @code{debug}.
Voici par exemple comment obtenir des informations de déboguage pour la
bibliothèque @code{glib} de manière à pouvoir l'inspecter quand on débuggue
Inkscape :
@example
guix build --with-debug-info=glib inkscape
@end example
Voir @command{info \"(guix.fr) Options de transformation de paquets\"} pour
plus de détails.")))
(entry (commit "abd7a474615353149a44f4504f0b4b248dcc0716")
(title (en "New @option{--with-c-toolchain} package transformation option")
(de "Neue Paketumwandlungsoption @option{--with-c-toolchain}")
(es "Nueva opción de transformación @option{--with-c-toolchain}")
(fr "Nouvelle option de transformation @option{--with-c-toolchain}"))
(body
(en "The new @option{--with-c-toolchain} package transformation
@ -57,6 +232,24 @@
Führen Sie für mehr Informationen @command{info \"(guix.de)
Paketumwandlungsoptionen\"} aus.")
(es "La nueva opción de transformación de paquetes
@option{--with-c-toolchain} proporciona a las desarrolladoras una manera
fácil de reconstruir sus paquetes favoritos con la cadena de herramientas
de compilación de C/C++ que elijan en vez de la predeterminada.
Por ejemplo, la siguiente orden reconstruye los paquetes @code{fftw} y
@code{fftwf} así como todos los paquetes que dependen de ellos hasta
@code{octave-cli}, usando la versión 10 de GCC (el compilador
predeterminado en estos momentos es GCC 7.5):
@example
guix build octave-cli \\
--with-c-toolchain=fftw=gcc-toolchain@@10 \\
--with-c-toolchain=fftwf=gcc-toolchain@@10
@end example
Ejecute @command{info \"(guix.es) Opciones de transformación de paquetes\"}
para obtener más información.")
(fr "La nouvelle option de transformation de paquets
@option{--with-c-toolchain} permet aux développeur·euses de recompiler leurs
paquets préférés avec la chaîne d'outils C/C++ de leur choix à la place de

View file

@ -49,6 +49,12 @@ (define %base-packages
'("bootstrap-tarballs" "gcc-toolchain" "nss-certs"
"openssh" "emacs" "vim" "python" "guile" "guix")))
(define %base-packages/hurd
;; XXX: For now we are less demanding of "i586-gnu".
(map specification->package
'("coreutils" "grep" "findutils" "gawk" "make"
"gcc-toolchain" "tar" "xz")))
(define %system-packages
;; Key packages proposed by the Guix System installer.
(append (map specification->package
@ -94,7 +100,9 @@ (define %base-manifest
(manifest
(append-map (lambda (system)
(map (cut package->manifest-entry* <> system)
%base-packages))
(if (string=? system "i586-gnu")
%base-packages/hurd
%base-packages)))
%hydra-supported-systems)))
(define %system-manifest

View file

@ -0,0 +1,15 @@
# -*- mode: snippet -*-
# name: guix-commit-message-add-cl-package
# key: addcl
# condition: git-commit-mode
# --
gnu: Add ${1:`(with-temp-buffer
(magit-git-wash #'magit-diff-wash-diffs
"diff" "--staged")
(beginning-of-buffer)
(when (search-forward "+(define-public " nil 'noerror)
(replace-regexp-in-string
"^sbcl-" ""
(thing-at-point 'sexp 'no-properties))))`}.
* `(car (magit-staged-files))` (cl-${1:$(replace-regexp-in-string "^cl-" "" yas-text)}, ecl-$1, sbcl-$1): New variables.

View file

@ -7,7 +7,7 @@ gnu: Add ${1:`(with-temp-buffer
(magit-git-wash #'magit-diff-wash-diffs
"diff" "--staged")
(beginning-of-buffer)
(when (search-forward "(define-public " nil 'noerror)
(when (search-forward "+(define-public " nil 'noerror)
(thing-at-point 'sexp 'no-properties)))`}.
* `(car (magit-staged-files))` ($1): New variable.

View file

@ -22,6 +22,8 @@
(define-module (gnu bootloader)
#:use-module (guix discovery)
#:use-module (guix gexp)
#:use-module (guix profiles)
#:use-module (guix records)
#:use-module (guix ui)
#:use-module (srfi srfi-1)
@ -66,7 +68,9 @@ (define-module (gnu bootloader)
bootloader-configuration-additional-configuration
%bootloaders
lookup-bootloader-by-name))
lookup-bootloader-by-name
efi-bootloader-chain))
;;;
@ -227,3 +231,122 @@ (define (lookup-bootloader-by-name name)
(eq? name (bootloader-name bootloader)))
(force %bootloaders))
(leave (G_ "~a: no such bootloader~%") name)))
(define (efi-bootloader-profile files bootloader-package hooks)
"Creates a profile with BOOTLOADER-PACKAGE and a directory collection/ with
links to additional FILES from the store. This collection is meant to be used
by the bootloader installer.
FILES is a list of file or directory names from the store, which will be
symlinked into the collection/ directory. If a directory name ends with '/',
then the directory content instead of the directory itself will be symlinked
into the collection/ directory.
FILES may contain file like objects produced by functions like plain-file,
local-file, etc., or package contents produced with file-append.
HOOKS lists additional hook functions to modify the profile."
(define (bootloader-collection manifest)
(define build
(with-imported-modules '((guix build utils)
(ice-9 ftw)
(srfi srfi-1)
(srfi srfi-26))
#~(begin
(use-modules ((guix build utils)
#:select (mkdir-p strip-store-file-name))
((ice-9 ftw)
#:select (scandir))
((srfi srfi-1)
#:select (append-map every remove))
((srfi srfi-26)
#:select (cut)))
(define (symlink-to file directory transform)
"Creates a symlink to FILE named (TRANSFORM FILE) in DIRECTORY."
(symlink file (string-append directory "/" (transform file))))
(define (directory-content directory)
"Creates a list of absolute path names inside DIRECTORY."
(map (lambda (name)
(string-append directory name))
(or (scandir directory (lambda (name)
(not (member name '("." "..")))))
'())))
(define name-ends-with-/? (cut string-suffix? "/" <>))
(define (name-is-store-entry? name)
"Return #t if NAME is a direct store entry and nothing inside."
(not (string-index (strip-store-file-name name) #\/)))
(let* ((collection (string-append #$output "/collection"))
(files '#$files)
(directories (filter name-ends-with-/? files))
(names-from-directories
(append-map (lambda (directory)
(directory-content directory))
directories))
(names (append names-from-directories
(remove name-ends-with-/? files))))
(mkdir-p collection)
(if (every file-exists? names)
(begin
(for-each (lambda (name)
(symlink-to name collection
(if (name-is-store-entry? name)
strip-store-file-name
basename)))
names)
#t)
#f)))))
(gexp->derivation "bootloader-collection"
build
#:local-build? #t
#:substitutable? #f
#:properties
`((type . profile-hook)
(hook . bootloader-collection))))
(profile (content (packages->manifest (list bootloader-package)))
(name "bootloader-profile")
(hooks (append (list bootloader-collection) hooks))
(locales? #f)
(allow-collisions? #f)
(relative-symlinks? #f)))
(define* (efi-bootloader-chain files
final-bootloader
#:key
(hooks '())
installer)
"Define a bootloader chain with FINAL-BOOTLOADER as the final bootloader and
certain directories and files from the store given in the list of FILES.
FILES may contain file like objects produced by functions like plain-file,
local-file, etc., or package contents produced with file-append. They will be
collected inside a directory collection/ inside a generated bootloader profile,
which will be passed to the INSTALLER.
If a directory name in FILES ends with '/', then the directory content instead
of the directory itself will be symlinked into the collection/ directory.
The procedures in the HOOKS list can be used to further modify the bootloader
profile. It is possible to pass a single function instead of a list.
If the INSTALLER argument is used, then this function will be called to install
the bootloader. Otherwise the installer of the FINAL-BOOTLOADER will be called."
(let* ((final-installer (or installer
(bootloader-installer final-bootloader)))
(profile (efi-bootloader-profile files
(bootloader-package final-bootloader)
(if (list? hooks)
hooks
(list hooks)))))
(bootloader
(inherit final-bootloader)
(package profile)
(installer
#~(lambda (bootloader target mount-point)
(#$final-installer bootloader target mount-point)
(copy-recursively
(string-append bootloader "/collection")
(string-append mount-point target)
#:follow-symlinks? #t
#:log (%make-void-port "w")))))))

View file

@ -142,6 +142,24 @@ (define* (grub-background-image config)
(image->png image #:width width #:height height))
(_ #f)))))
(define (grub-locale-directory grub)
"Generate a directory with the locales from GRUB."
(define builder
#~(begin
(use-modules (ice-9 ftw))
(let ((locale (string-append #$grub "/share/locale"))
(out #$output))
(mkdir out)
(chdir out)
(for-each (lambda (lang)
(let ((file (string-append locale "/" lang
"/LC_MESSAGES/grub.mo"))
(dest (string-append lang ".mo")))
(when (file-exists? file)
(copy-file file dest))))
(scandir locale)))))
(computed-file "grub-locales" builder))
(define* (eye-candy config store-device store-mount-point
#:key store-directory-prefix port)
"Return a gexp that writes to PORT (a port-valued gexp) the 'grub.cfg' part
@ -171,9 +189,11 @@ (define (theme-colors type)
(symbol->string (assoc-ref colors 'bg)))))
(define font-file
(normalize-file (file-append grub "/share/grub/unicode.pf2")
store-mount-point
store-directory-prefix))
(let* ((bootloader (bootloader-configuration-bootloader config))
(grub (bootloader-package bootloader)))
(normalize-file (file-append grub "/share/grub/unicode.pf2")
store-mount-point
store-directory-prefix)))
(define image
(normalize-file (grub-background-image config)
@ -402,18 +422,33 @@ (define (sugar)
#:port #~port)))
(define locale-config
#~(let ((locale #$(and locale
(locale-definition-source
(locale-name->definition locale)))))
(when locale
(format port "\
(let* ((entry (first all-entries))
(device (menu-entry-device entry))
(mount-point (menu-entry-device-mount-point entry))
(bootloader (bootloader-configuration-bootloader config))
(grub (bootloader-package bootloader)))
#~(let ((locale #$(and locale
(locale-definition-source
(locale-name->definition locale))))
(locales #$(and locale
(normalize-file (grub-locale-directory grub)
mount-point
store-directory-prefix))))
(when locale
(format port "\
# Localization configuration.
if search --file --set boot_partition /grub/grub.cfg; then
set locale_dir=(${boot_partition})/grub/locale
else
set locale_dir=/boot/grub/locale
fi
set lang=~a~%" locale))))
~asearch --file --set ~a/en@quot.mo
set locale_dir=~a
set lang=~a~%"
;; Skip the search if there is an image, as it has already
;; been performed by eye-candy and traversing the store is
;; an expensive operation.
#$(if (grub-theme-image (bootloader-theme config))
"# "
"")
locales
locales
locale)))))
(define keyboard-layout-config
(let* ((layout (bootloader-configuration-keyboard-layout config))
@ -421,11 +456,12 @@ (define keyboard-layout-config
(bootloader-configuration-bootloader config)))
(keymap* (and layout
(keyboard-layout-file layout #:grub grub)))
(entry (first all-entries))
(device (menu-entry-device entry))
(mount-point (menu-entry-device-mount-point entry))
(keymap (and keymap*
(if store-directory-prefix
#~(string-append #$store-directory-prefix
#$keymap*)
keymap*))))
(normalize-file keymap* mount-point
store-directory-prefix))))
#~(when #$keymap
(format port "\
insmod keylayouts
@ -537,21 +573,24 @@ (define install-grub-disk-image
(define install-grub-efi
#~(lambda (bootloader efi-dir mount-point)
;; Install GRUB onto the EFI partition mounted at EFI-DIR, for the
;; system whose root is mounted at MOUNT-POINT.
(let ((grub-install (string-append bootloader "/sbin/grub-install"))
(install-dir (string-append mount-point "/boot"))
;; When installing Guix, it's common to mount EFI-DIR below
;; MOUNT-POINT rather than /boot/efi on the live image.
(target-esp (if (file-exists? (string-append mount-point efi-dir))
(string-append mount-point efi-dir)
efi-dir)))
;; Tell 'grub-install' that there might be a LUKS-encrypted /boot or
;; root partition.
(setenv "GRUB_ENABLE_CRYPTODISK" "y")
(invoke/quiet grub-install "--boot-directory" install-dir
"--bootloader-id=Guix"
"--efi-directory" target-esp))))
;; There is nothing useful to do when called in the context of a disk
;; image generation.
(when efi-dir
;; Install GRUB onto the EFI partition mounted at EFI-DIR, for the
;; system whose root is mounted at MOUNT-POINT.
(let ((grub-install (string-append bootloader "/sbin/grub-install"))
(install-dir (string-append mount-point "/boot"))
;; When installing Guix, it's common to mount EFI-DIR below
;; MOUNT-POINT rather than /boot/efi on the live image.
(target-esp (if (file-exists? (string-append mount-point efi-dir))
(string-append mount-point efi-dir)
efi-dir)))
;; Tell 'grub-install' that there might be a LUKS-encrypted /boot or
;; root partition.
(setenv "GRUB_ENABLE_CRYPTODISK" "y")
(invoke/quiet grub-install "--boot-directory" install-dir
"--bootloader-id=Guix"
"--efi-directory" target-esp)))))
(define (install-grub-efi-netboot subdir)
"Define a grub-efi-netboot bootloader installer for installation in SUBDIR,

View file

@ -38,10 +38,13 @@ (define (write-file-on-device file size device offset)
(lambda (input)
(let ((bv (get-bytevector-n input size)))
(call-with-port
;; Do not use "call-with-output-file" that would truncate the file.
(open-file-output-port device
(file-options no-truncate no-create)
(file-options no-truncate no-fail)
(buffer-mode block)
(native-transcoder))
;; Use the binary-friendly ISO-8859-1
;; encoding.
(make-transcoder (latin-1-codec)))
(lambda (output)
(seek output offset SEEK_SET)
(put-bytevector output bv)))))))

View file

@ -0,0 +1,192 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2020 Marius Bakke <marius@gnu.org>
;;;
;;; This file is part of GNU Guix.
;;;
;;; GNU Guix is free software; you can redistribute it and/or modify it
;;; under the terms of the GNU General Public License as published by
;;; the Free Software Foundation; either version 3 of the License, or (at
;;; your option) any later version.
;;;
;;; GNU Guix is distributed in the hope that it will be useful, but
;;; WITHOUT ANY WARRANTY; without even the implied warranty of
;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
;;; GNU General Public License for more details.
;;;
;;; You should have received a copy of the GNU General Public License
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
(define-module (gnu build chromium-extension)
#:use-module (gcrypt base16)
#:use-module ((gcrypt hash) #:prefix hash:)
#:use-module (ice-9 iconv)
#:use-module (guix gexp)
#:use-module (guix packages)
#:use-module (gnu packages base)
#:use-module (gnu packages check)
#:use-module (gnu packages chromium)
#:use-module (gnu packages gnupg)
#:use-module (gnu packages tls)
#:use-module (gnu packages xorg)
#:use-module (guix build-system trivial)
#:export (make-chromium-extension))
;;; Commentary:
;;;
;;; Tools to deal with Chromium extensions.
;;;
;;; Code:
(define (make-signing-key seed)
"Return a derivation for a deterministic PKCS #8 private key using SEED."
(define sha256sum
(bytevector->base16-string (hash:sha256 (string->bytevector seed "UTF-8"))))
;; certtool.c wants a 56 byte seed for a 2048 bit key.
(define size 2048)
(define normalized-seed (string-take sha256sum 56))
(computed-file (string-append seed "-signing-key.pem")
#~(system* #$(file-append gnutls "/bin/certtool")
"--generate-privkey"
"--key-type=rsa"
"--pkcs8"
;; Use the provable FIPS-PUB186-4 algorithm for
;; deterministic results.
"--provable"
"--password="
"--no-text"
(string-append "--bits=" #$(number->string size))
(string-append "--seed=" #$normalized-seed)
"--outfile" #$output)
#:local-build? #t))
(define* (make-crx signing-key package #:optional (package-output "out"))
"Create a signed \".crx\" file from the unpacked Chromium extension residing
in PACKAGE-OUTPUT of PACKAGE. The extension will be signed with SIGNING-KEY."
(define name (package-name package))
(define version (package-version package))
(with-imported-modules '((guix build utils))
(computed-file
(string-append name "-" version ".crx")
#~(begin
;; This is not great. We pull Xorg and Chromium just to Zip and
;; sign an extension. This should be implemented with something
;; lighter. (TODO: where is the CRXv3 documentation..?)
(use-modules (guix build utils))
(let ((chromium #$(file-append ungoogled-chromium "/bin/chromium"))
(xvfb #$(file-append xorg-server "/bin/Xvfb"))
(packdir "/tmp/extension"))
(mkdir-p (dirname packdir))
(copy-recursively (ungexp package package-output) packdir)
(system (string-append xvfb " :1 &"))
(setenv "DISPLAY" ":1")
(sleep 2) ;give Xorg some time to initialize...
;; Chromium stores the current time in the .crx Zip archive.
;; Use a fixed timestamp for deterministic behavior.
;; FIXME (core-updates): faketime is missing an absolute reference
;; to 'date', hence the need to set PATH.
(setenv "PATH" #$(file-append coreutils "/bin"))
(invoke #$(file-append libfaketime "/bin/faketime")
"2000-01-01 00:00:00"
chromium
"--user-data-dir=/tmp/signing-profile"
(string-append "--pack-extension=" packdir)
(string-append "--pack-extension-key=" #$signing-key))
(copy-file (string-append packdir ".crx") #$output)))
#:local-build? #t)))
(define* (crx->chromium-json crx version)
"Return a derivation that creates a Chromium JSON settings file for the
extension given as CRX. VERSION is used to signify the CRX version, and
must match the version listed in the extension manifest.json."
;; See chrome/browser/extensions/external_provider_impl.cc and
;; extensions/common/extension.h for documentation on the JSON format.
(computed-file "extension.json"
#~(call-with-output-file #$output
(lambda (port)
(format port "{
\"external_crx\": \"~a\",
\"external_version\": \"~a\"
}
"
#$crx #$version)))
#:local-build? #t))
(define (signing-key->public-der key)
"Return a derivation for a file containing the public key of KEY in DER
format."
(computed-file "der"
#~(system* #$(file-append gnutls "/bin/certtool")
"--load-privkey" #$key
"--pubkey-info"
"--outfile" #$output
"--outder")
#:local-build? #t))
(define (chromium-json->profile-object json signing-key)
"Return a derivation that installs JSON to the directory searched by
Chromium, using a file name (aka extension ID) derived from SIGNING-KEY."
(define der (signing-key->public-der signing-key))
(with-extensions (list guile-gcrypt)
(with-imported-modules '((guix build utils))
(computed-file
"chromium-extension"
#~(begin
(use-modules (guix build utils)
(gcrypt base16)
(gcrypt hash))
(define (base16-string->chromium-base16 str)
;; Translate STR, a hexadecimal string, to a Chromium-style
;; representation using the letters a-p (where a=0, p=15).
(define s1 "0123456789abcdef")
(define s2 "abcdefghijklmnop")
(let loop ((chars (string->list str))
(converted '()))
(if (null? chars)
(list->string (reverse converted))
(loop (cdr chars)
(cons (string-ref s2 (string-index s1 (car chars)))
converted)))))
(let* ((checksum (bytevector->base16-string (file-sha256 #$der)))
(file-name (base16-string->chromium-base16
(string-take checksum 32)))
(extension-directory (string-append #$output
"/share/chromium/extensions")))
(mkdir-p extension-directory)
(symlink #$json (string-append extension-directory "/"
file-name ".json"))))
#:local-build? #t))))
(define* (make-chromium-extension p #:optional (output "out"))
"Create a Chromium extension from package P and return a package that,
when installed, will make the extension contained in P available as a
Chromium browser extension. OUTPUT specifies which output of P to use."
(let* ((pname (package-name p))
(version (package-version p))
(signing-key (make-signing-key pname)))
(package
(inherit p)
(name (string-append pname "-chromium"))
(source #f)
(build-system trivial-build-system)
(native-inputs '())
(inputs
`(("extension" ,(chromium-json->profile-object
(crx->chromium-json (make-crx signing-key p output)
version)
signing-key))))
(propagated-inputs '())
(outputs '("out"))
(arguments
'(#:modules ((guix build utils))
#:builder
(begin
(use-modules (guix build utils))
(copy-recursively (assoc-ref %build-inputs "extension")
(assoc-ref %outputs "out"))))))))

View file

@ -1,9 +1,9 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2014, 2015, 2016, 2017, 2018 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2014, 2015, 2016, 2017, 2018, 2020 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2016, 2017 David Craven <david@craven.ch>
;;; Copyright © 2017 Mathieu Othacehe <m.othacehe@gmail.com>
;;; Copyright © 2019 Guillaume Le Vaillant <glv@posteo.net>
;;; Copyright © 2019 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2019, 2020 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2019 David C. Trudgian <dave@trudgian.net>
;;; Copyright © 2020 Maxim Cournoyer <maxim.cournoyer@gmail.com>
;;;
@ -179,6 +179,98 @@ (define (check-ext2-file-system device)
(2 'reboot-required)
(_ 'fatal-error)))
;;;
;;; Linux swap.
;;;
;; Linux "swap space" is not a file system but it has a UUID and volume name,
;; like actual file systems, and we want to be able to look up swap partitions
;; by UUID and by label.
(define %linux-swap-magic
(string->utf8 "SWAPSPACE2"))
;; Like 'PAGE_SIZE' in Linux, arch/x86/include/asm/page.h.
;; XXX: This is always 4K on x86_64, i386, and ARMv7. However, on AArch64,
;; this is determined by 'CONFIG_ARM64_PAGE_SHIFT' in the kernel, which is 12
;; by default (4K) but can be 14 or 16.
(define %page-size 4096)
(define (linux-swap-superblock? sblock)
"Return #t when SBLOCK is an linux-swap superblock."
(and (= (bytevector-length sblock) %page-size)
(bytevector=? (sub-bytevector sblock (- %page-size 10) 10)
%linux-swap-magic)))
(define (read-linux-swap-superblock device)
"Return the raw contents of DEVICE's linux-swap superblock as a bytevector, or #f
if DEVICE does not contain an linux-swap file system."
(read-superblock device 0 %page-size linux-swap-superblock?))
;; See 'union swap_header' in 'include/linux/swap.h'.
(define (linux-swap-superblock-uuid sblock)
"Return the UUID of Linux-swap superblock SBLOCK as a 16-byte bytevector."
(sub-bytevector sblock (+ 1024 4 4 4) 16))
(define (linux-swap-superblock-volume-name sblock)
"Return the label of Linux-swap superblock SBLOCK as a string."
(null-terminated-latin1->string
(sub-bytevector sblock (+ 1024 4 4 4 16) 16)))
;;;
;;; Bcachefs file systems.
;;;
;; <https://evilpiepirate.org/git/bcachefs-tools.git/tree/libbcachefs/bcachefs_format.h>
(define-syntax %bcachefs-endianness
;; Endianness of bcachefs file systems.
(identifier-syntax (endianness little)))
(define (bcachefs-superblock? sblock)
"Return #t when SBLOCK is an bcachefs superblock."
(bytevector=? (sub-bytevector sblock 24 16)
#vu8(#xc6 #x85 #x73 #xf6 #x4e #x1a #x45 #xca
#x82 #x65 #xf5 #x7f #x48 #xba #x6d #x81)))
(define (read-bcachefs-superblock device)
"Return the raw contents of DEVICE's bcachefs superblock as a bytevector, or #f
if DEVICE does not contain a bcachefs file system."
;; We completely ignore the back-up superblock & any checksum errors.
;; Superblock field names, with offset & length respectively, in bytes:
;; 0 16 bch_csum
;; 16 8 version
;; 24 16 magic
;; 40 16 uuid ← internal UUID, you probably don't want this
;; 56 16 user_uuid ← external UUID, the one by which to mount
;; 72 32 label
;; … there are more & the superblock is extensible, but we don't care yet.
(read-superblock device 4096 104 bcachefs-superblock?))
(define (bcachefs-superblock-external-uuid sblock)
"Return the external UUID of bcachefs superblock SBLOCK as a 16-byte
bytevector."
(sub-bytevector sblock 56 16))
(define (bcachefs-superblock-volume-name sblock)
"Return the volume name of SBLOCK as a string of at most 32 characters, or
#f if SBLOCK has no volume name."
(null-terminated-latin1->string (sub-bytevector sblock 72 32)))
(define (check-bcachefs-file-system device)
"Return the health of a bcachefs file system on DEVICE."
(match (status:exit-val
(apply system* "bcachefs" "fsck" "-p" "-v"
;; Make each multi-device member a separate argument.
(string-split device #\:)))
(0 'pass)
(1 'errors-corrected)
(2 'reboot-required)
(_ 'fatal-error)))
;;;
;;; Btrfs file systems.
@ -596,6 +688,10 @@ (define %partition-label-readers
iso9660-superblock-volume-name)
(partition-field-reader read-ext2-superblock
ext2-superblock-volume-name)
(partition-field-reader read-linux-swap-superblock
linux-swap-superblock-volume-name)
(partition-field-reader read-bcachefs-superblock
bcachefs-superblock-volume-name)
(partition-field-reader read-btrfs-superblock
btrfs-superblock-volume-name)
(partition-field-reader read-fat32-superblock
@ -612,6 +708,10 @@ (define %partition-uuid-readers
iso9660-superblock-uuid)
(partition-field-reader read-ext2-superblock
ext2-superblock-uuid)
(partition-field-reader read-linux-swap-superblock
linux-swap-superblock-uuid)
(partition-field-reader read-bcachefs-superblock
bcachefs-superblock-external-uuid)
(partition-field-reader read-btrfs-superblock
btrfs-superblock-uuid)
(partition-field-reader read-fat32-superblock
@ -719,6 +819,7 @@ (define (check-file-system device type)
(define check-procedure
(cond
((string-prefix? "ext" type) check-ext2-file-system)
((string-prefix? "bcachefs" type) check-bcachefs-file-system)
((string-prefix? "btrfs" type) check-btrfs-file-system)
((string-suffix? "fat" type) check-fat-file-system)
((string-prefix? "jfs" type) check-jfs-file-system)

View file

@ -118,16 +118,16 @@ (define* (make-partition-image partition-sexp target root)
((string=? type "vfat")
(make-vfat-image partition target root))
(else
(format (current-error-port)
"Unsupported partition type~%.")))))
(raise (condition
(&message
(message "unsupported partition type"))))))))
(define (convert-disk-image image format output)
"Convert IMAGE to OUTPUT according to the given FORMAT."
(case format
((compressed-qcow2)
(begin
(invoke "qemu-img" "convert" "-c" "-f" "raw"
"-O" "qcow2" image output)))
(invoke "qemu-img" "convert" "-c" "-f" "raw"
"-O" "qcow2" image output))
(else
(copy-file image output))))

View file

@ -1,5 +1,6 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2020 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2016, 2017, 2019, 2020 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2017 Mathieu Othacehe <m.othacehe@gmail.com>
;;; Copyright © 2019 Guillaume Le Vaillant <glv@posteo.net>
;;;
@ -110,6 +111,58 @@ (define (find-long-options option arguments)
(substring arg (+ 1 (string-index arg #\=)))))
arguments)))
(define (resume-if-hibernated device)
"Resume from hibernation if possible. This is safe ONLY if no on-disk file
systems have been mounted; calling it later risks severe file system corruption!
See <Documentation/swsusp.txt> in the kernel source directory. This is the
caller's responsibility, as is catching exceptions if resumption was supposed to
happen but didn't.
Resume only from DEVICE if it's a string. If it's #f, use the kernel's default
hibernation device (CONFIG_PM_STD_PARTITION). Never return if resumption
succeeds. Return nothing otherwise. The kernel logs any details to dmesg."
(define (string->major:minor string)
"Return a string with MAJOR:MINOR numbers of the device specified by STRING"
;; The "resume=" kernel command-line option always provides a string, which
;; can represent a device, a UUID, or a label. Check for all three.
(let* ((spec (cond ((string-prefix? "/" string) string)
((uuid string) => identity)
(else (file-system-label string))))
;; XXX The kernel's swsusp_resume_can_resume() waits if resumewait
;; is found on the command line; our canonicalize-device-spec gives
;; up after 20 seconds. We could emulate the former by looping…
(device (canonicalize-device-spec spec))
(rdev (stat:rdev (stat device)))
;; For backwards compatibility, device numbering is a baroque affair.
;; This is the full 64-bit scheme used by glibc's <sys/sysmacros.h>.
(major (logior (ash (logand #x00000000000fff00 rdev) -8)
(ash (logand #xfffff00000000000 rdev) -32)))
(minor (logior (logand #x00000000000000ff rdev)
(ash (logand #x00000ffffff00000 rdev) -12))))
(format #f "~a:~a" major minor)))
;; Write the resume DEVICE to this magic file, using the MAJOR:MINOR device
;; numbers if possible. The kernel will immediately try to resume from it.
(let ((resume "/sys/power/resume"))
(when (file-exists? resume) ; this kernel supports hibernation
;; Honour the kernel's default device (only) if none other was given.
(let ((major:minor (if device
(or (false-if-exception (string->major:minor
device))
;; We can't parse it. Maybe the kernel can.
device)
(let ((default (call-with-input-file resume
read-line)))
;; Don't waste time echoing 0:0 to /sys.
(if (string=? "0:0" default)
#f
default)))))
(when major:minor
(call-with-output-file resume ; may throw an Invalid argument
(cut display major:minor <>))))))) ; may never return
(define* (make-disk-device-nodes base major #:optional (minor 0))
"Make the block device nodes around BASE (something like \"/root/dev/sda\")
with the given MAJOR number, starting with MINOR."
@ -507,6 +560,12 @@ (define (device-string->file-system-device device-string)
(load-linux-modules-from-directory linux-modules
linux-module-directory)
(unless (member "noresume" args)
;; Try to resume immediately after loading (storage) modules
;; but before any on-disk file systems have been mounted.
(false-if-exception ; failure is not fatal
(resume-if-hibernated (find-long-option "resume" args))))
(when keymap-file
(let ((status (system* "loadkeys" keymap-file)))
(unless (zero? status)

View file

@ -1,5 +1,5 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2013, 2014, 2015, 2018 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2013, 2014, 2015, 2018, 2020 Ludovic Courtès <ludo@gnu.org>
;;;
;;; This file is part of GNU Guix.
;;;
@ -39,8 +39,9 @@ (define* (write-cpio-archive output directory
#:key
(compress? #t)
(gzip "gzip"))
"Write a cpio archive containing DIRECTORY to file OUTPUT. When
COMPRESS? is true, compress it using GZIP. On success, return OUTPUT."
"Write a cpio archive containing DIRECTORY to file OUTPUT, with reset
timestamps in the archive. When COMPRESS? is true, compress it using GZIP.
On success, return OUTPUT."
;; Note: as per `ramfs-rootfs-initramfs.txt', always add directory entries
;; before the files that are inside of it: "The Linux kernel cpio
@ -141,12 +142,6 @@ (define* (build-initrd output
(symlink (string-append guile "/bin/guile") "proc/self/exe")
(readlink "proc/self/exe")
;; Reset the timestamps of all the files that will make it in the initrd.
(for-each (lambda (file)
(unless (eq? 'symlink (stat:type (lstat file)))
(utime file 0 0 0 0)))
(find-files "." ".*"))
(write-cpio-archive output "." #:gzip gzip))
;; Make sure directories are writable so we can delete files.

View file

@ -21,7 +21,6 @@ (define-module (gnu build shepherd)
#:use-module (gnu system file-systems)
#:use-module (gnu build linux-container)
#:use-module (guix build utils)
#:use-module (guix utils)
#:use-module (srfi srfi-1)
#:use-module (srfi srfi-26)
#:use-module (ice-9 match)
@ -199,11 +198,24 @@ (define* (fork+exec-command/container command
"This is a variant of 'fork+exec-command' procedure, that joins the
namespaces of process PID beforehand. If there is no support for containers,
on Hurd systems for instance, fallback to direct forking."
(define (strip-pid args)
;; TODO: Replace with 'strip-keyword-arguments' when that no longer pulls
;; in (guix config).
(let loop ((args args)
(result '()))
(match args
(()
(reverse result))
((#:pid _ . rest)
(loop rest result))
((head . rest)
(loop rest (cons head result))))))
(let ((container-support?
(file-exists? "/proc/self/ns"))
(fork-proc (lambda ()
(apply fork+exec-command command
(strip-keyword-arguments '(#:pid) args)))))
(strip-pid args)))))
(if container-support?
(container-excursion* pid fork-proc)
(fork-proc))))

View file

@ -3,6 +3,7 @@
;;; Copyright © 2017, 2020 Jan (janneke) Nieuwenhuizen <janneke@gnu.org>
;;; Copyright © 2018, 2019 Clément Lassieur <clement@lassieur.org>
;;; Copyright © 2020 Julien Lepiller <julien@lepiller.eu>
;;; Copyright © 2020 Mathieu Othacehe <othacehe@gnu.org>
;;;
;;; This file is part of GNU Guix.
;;;
@ -57,6 +58,7 @@ (define-module (gnu ci)
#:use-module (gnu system install)
#:use-module (gnu system images hurd)
#:use-module (gnu system images pine64)
#:use-module (gnu system images pinebook-pro)
#:use-module (gnu tests)
#:use-module (srfi srfi-1)
#:use-module (srfi srfi-26)
@ -205,10 +207,16 @@ (define %guix-system-supported-systems
(define %guix-system-images
(list hurd-barebones-qcow2-image
pine64-barebones-raw-image))
pine64-barebones-raw-image
pinebook-pro-barebones-raw-image))
(define (hours hours)
(* 3600 hours))
(define (image-jobs store system)
"Return a list of jobs that build images for SYSTEM."
"Return a list of jobs that build images for SYSTEM. Those jobs are
expensive in storage and I/O operations, hence their periodicity is limited by
passing the PERIOD argument."
(define (->alist drv)
`((derivation . ,(derivation-file-name drv))
(log . ,(log-file store (derivation-file-name drv)))
@ -223,6 +231,7 @@ (define (->alist drv)
(long-description . "This is a demo stand-alone image of the GNU
system.")
(license . ,(license-name gpl3+))
(period . ,(hours 48))
(max-silent-time . 600)
(timeout . 3600)
(home-page . ,%guix-home-page-url)
@ -321,6 +330,9 @@ (define drv
(set-guile-for-build (default-guile))
(system-test-value test))))
;; Those tests are extremely expensive in I/O operations and storage
;; size, use the "period" attribute to run them with a period of at
;; least 48 hours.
`((derivation . ,(derivation-file-name drv))
(log . ,(log-file store (derivation-file-name drv)))
(outputs . ,(filter-map (lambda (res)
@ -334,6 +346,7 @@ (define drv
(system-test-name test)))
(long-description . ,(system-test-description test))
(license . ,(license-name gpl3+))
(period . ,(hours 48))
(max-silent-time . 600)
(timeout . 3600)
(home-page . ,%guix-home-page-url)
@ -372,7 +385,8 @@ (define (->alist drv)
all its dependencies, and ready to be installed on \"foreign\" distributions.")
(license . ,(license-name gpl3+))
(home-page . ,%guix-home-page-url)
(maintainers . ("bug-guix@gnu.org"))))
(maintainers . ("bug-guix@gnu.org"))
(period . ,(hours 24))))
(define (->job name drv)
(let ((name (symbol-append name (string->symbol ".")

View file

@ -46,6 +46,7 @@ (define (init)
(newt-init)
(clear-screen)
(set-screen-size!)
(syslog "Display is ~ax~a.~%" (screen-columns) (screen-rows))
(push-help-line
(format #f (G_ "Press <F1> for installation parameters."))))

View file

@ -77,7 +77,7 @@ (define (run-ethernet-page)
#:title (G_ "Ethernet connection")
#:listbox-items services
#:listbox-item->text ethernet-service->text
#:listbox-height (min (+ (length services) 2) 10)
#:listbox-height (min (+ (length services) 2) 5)
#:button-text (G_ "Exit")
#:button-callback-procedure
(lambda _

View file

@ -29,6 +29,7 @@ (define-module (gnu installer newt final)
#:use-module (srfi srfi-34)
#:use-module (srfi srfi-35)
#:use-module (ice-9 match)
#:use-module ((ice-9 rdelim) #:select (read-line))
#:use-module (newt)
#:export (run-final-page))
@ -39,9 +40,8 @@ (define* (strip-prefix file #:optional (prefix (%installer-target-dir)))
file))
(define* (run-config-display-page #:key locale)
(let ((width (%configuration-file-width))
(height (nearest-exact-integer
(/ (screen-rows) 2))))
(let ((width (max 70 (- (screen-columns) 20)))
(height (default-listbox-height)))
(run-file-textbox-page
#:info-text (format #f (G_ "\
We're now ready to proceed with the installation! \
@ -107,6 +107,19 @@ (define* (run-install-shell locale
install-ok?))
(define (run-final-page result prev-steps)
(define (wait-for-clients)
(unless (null? (current-clients))
(syslog "waiting with clients before starting final step~%")
(send-to-clients '(starting-final-step))
(match (select (current-clients) '() '())
(((port _ ...) _ _)
(read-line port)))))
;; Before generating the configuration file, give clients a chance to do
;; things such as changing the swap partition label.
(wait-for-clients)
(syslog "proceeding with final step~%")
(let* ((configuration (format-configuration prev-steps result))
(user-partitions (result-step result 'partition))
(locale (result-step result 'locale))

View file

@ -80,7 +80,7 @@ (define (technology-items)
#:title (G_ "Internet access")
#:listbox-items items
#:listbox-item->text technology->text
#:listbox-height (min (+ (length items) 2) 10)
#:listbox-height (min (+ (length items) 2) 5)
#:button-text (G_ "Exit")
#:button-callback-procedure
(lambda _

View file

@ -32,7 +32,9 @@ (define-module (gnu installer newt page)
#:use-module (srfi srfi-34)
#:use-module (srfi srfi-35)
#:use-module (newt)
#:export (draw-info-page
#:export (default-listbox-height
draw-info-page
draw-connecting-page
run-input-page
run-error-page
@ -168,6 +170,10 @@ (define title
(_
(values reason argument))))))
(define (default-listbox-height)
"Return the default listbox height."
(max 5 (- (screen-rows) 20)))
(define (draw-info-page text title)
"Draw an informative page with the given TEXT as content. Set the title of
this page to TITLE."
@ -339,7 +345,8 @@ (define* (run-listbox-selection-page #:key
(info-textbox-width 50)
listbox-items
listbox-item->text
(listbox-height 20)
(listbox-height
(default-listbox-height))
(listbox-default-item #f)
(listbox-allow-multiple? #f)
(sort-listbox-items? #t)

View file

@ -20,6 +20,7 @@ (define-module (gnu installer newt parameters)
#:use-module (gnu installer proxy)
#:use-module (gnu installer steps)
#:use-module (gnu installer newt page)
#:use-module (guix build syscalls)
#:use-module (guix i18n)
#:use-module (ice-9 match)
#:use-module (newt)
@ -40,7 +41,8 @@ (define (run-parameters-page keyboard-layout-selection)
(let* ((items
(list
(cons (G_ "Change keyboard layout") keyboard-layout-selection)
(cons (G_ "Configure HTTP proxy") run-proxy-page)))
(cons (G_ "Configure HTTP proxy") run-proxy-page)
(cons (G_ "Reboot") reboot)))
(result
(run-listbox-selection-page
#:info-text (G_ "Please choose one of the following parameters or \

View file

@ -25,6 +25,7 @@ (define-module (gnu installer newt partition)
#:use-module (gnu installer newt page)
#:use-module (gnu installer newt utils)
#:use-module (guix i18n)
#:use-module (ice-9 format)
#:use-module (ice-9 match)
#:use-module (srfi srfi-1)
#:use-module (srfi srfi-26)
@ -56,11 +57,17 @@ (define (run-scheme-page)
#:button-callback-procedure button-exit-action)))
(car result)))
(define (draw-formatting-page)
(define (draw-formatting-page partitions)
"Draw a page asking for confirmation, and then indicating that partitions
are being formatted."
(run-confirmation-page (G_ "We are about to format your hard disk. All \
its data will be lost. Do you wish to continue?")
;; TRANSLATORS: The ~{ and ~} format specifiers are used to iterate the list
;; of device names of the user partitions that will be formatted.
(run-confirmation-page (format #f (G_ "We are about to write the configured \
partition table to the disk and format the partitions listed below. Their \
data will be lost. Do you wish to continue?~%~%~{ - ~a~%~}")
(map user-partition-file-name
(filter user-partition-need-formatting?
partitions)))
(G_ "Format disk?")
#:exit-button-procedure button-exit-action)
(draw-info-page
@ -674,7 +681,7 @@ (define (hotkey-action key listbox-item)
(G_ "Guided partitioning")
(G_ "Manual partitioning"))
#:info-textbox-width 76 ;we need a lot of room for INFO-TEXT
#:listbox-height 12
#:listbox-height (max 5 (- (screen-rows) 30))
#:listbox-items (disk-items)
#:listbox-item->text cdr
#:sort-listbox-items? #f
@ -773,9 +780,12 @@ (define (run-page devices)
(user-partitions (run-page non-install-devices))
(user-partitions-with-pass (prompt-luks-passwords
user-partitions))
(form (draw-formatting-page)))
(form (draw-formatting-page user-partitions)))
;; Make sure the disks are not in use before proceeding to formatting.
(free-parted non-install-devices)
(format-user-partitions user-partitions-with-pass)
(syslog "formatted ~a user partitions~%"
(length user-partitions-with-pass))
(destroy-form-and-pop form)
user-partitions))

View file

@ -1,6 +1,6 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2018 Mathieu Othacehe <m.othacehe@gmail.com>
;;; Copyright © 2019 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2019, 2020 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2020 Jan (janneke) Nieuwenhuizen <janneke@gnu.org>
;;;
;;; This file is part of GNU Guix.
@ -77,6 +77,7 @@ (define (run-network-management-page)
We recommend NetworkManager or Connman for a WiFi-capable laptop; the DHCP \
client may be enough for a server.")
#:info-textbox-width 70
#:listbox-height 7
#:listbox-items (filter (lambda (service)
(eq? 'network-management
(system-service-type service)))

View file

@ -38,6 +38,9 @@ (define logo-height (make-parameter 19))
(define info-textbox-width (make-parameter 70))
(define options-listbox-height (make-parameter 5))
(define (display-logo?)
(> (screen-rows) 35))
(define* (run-menu-page title info-text logo
#:key
listbox-items
@ -55,7 +58,10 @@ (define (fill-listbox listbox items)
items))
(let* ((logo-textbox
(make-textbox -1 -1 (logo-width) (logo-height) 0))
(make-textbox -1 -1
(if (display-logo?) (logo-width) 0)
(if (display-logo?) (logo-height) 0)
0))
(info-textbox
(make-reflowed-textbox -1 -1
info-text

View file

@ -165,7 +165,8 @@ (define* (fill-wifi-services listbox wifi-services)
(define service-name-max-length (make-parameter 20))
;; Height of the listbox displaying wifi services.
(define wifi-listbox-height (make-parameter 20))
(define wifi-listbox-height (make-parameter
(default-listbox-height)))
;; Information textbox width.
(define info-textbox-width (make-parameter 40))

View file

@ -36,10 +36,12 @@ (define-module (gnu installer parted)
#:use-module (guix utils)
#:use-module (guix i18n)
#:use-module (parted)
#:use-module (ice-9 format)
#:use-module (ice-9 match)
#:use-module (ice-9 regex)
#:use-module (rnrs io ports)
#:use-module (srfi srfi-1)
#:use-module (srfi srfi-19)
#:use-module (srfi srfi-26)
#:use-module (srfi srfi-34)
#:use-module (srfi srfi-35)
@ -317,7 +319,7 @@ (define (with-delay-device-in-use? file-name)
fail. See rereadpt function in wipefs.c of util-linux for an explanation."
;; Kernel always return EINVAL for BLKRRPART on loopdevices.
(and (not (string-match "/dev/loop*" file-name))
(let loop ((try 4))
(let loop ((try 16))
(usleep 250000)
(let ((in-use? (device-in-use? file-name)))
(if (and in-use? (> try 0))
@ -338,15 +340,12 @@ (define (remove-logical-devices)
(define (non-install-devices)
"Return all the available devices, except the busy one, allegedly the
install device. DEVICE-IS-BUSY? is a parted call, checking if the device is
mounted. The install image uses an overlayfs so the install device does not
appear as mounted and won't be considered as busy. So use also DEVICE-IN-USE?
from (guix build syscalls) module, who will try to re-read the device's
partition table to determine whether or not it is already used (like sfdisk
from util-linux)."
mounted."
;; FIXME: The install image uses an overlayfs so the install device does not
;; appear as mounted and won't be considered as busy.
(remove (lambda (device)
(let ((file-name (device-path device)))
(or (device-is-busy? device)
(with-delay-device-in-use? file-name))))
(device-is-busy? device)))
(devices)))
@ -526,56 +525,54 @@ (define (user-partition-description user-partition)
(size (user-partition-size user-partition))
(mount-point (user-partition-mount-point user-partition)))
`(,@(if has-name?
`((name . ,(string-append "Name: " (or name "None"))))
`((name . ,(format #f (G_ "Name: ~a")
(or name (G_ "None")))))
'())
,@(if (and has-extended?
(freespace-partition? partition)
(not (eq? type 'logical)))
`((type . ,(string-append "Type: " type-name)))
`((type . ,(format #f (G_ "Type: ~a") type-name)))
'())
,@(if (eq? type 'extended)
'()
`((fs-type . ,(string-append "Filesystem type: " fs-type-name))))
`((fs-type . ,(format #f (G_ "File system type: ~a")
fs-type-name))))
,@(if (or (eq? type 'extended)
(eq? fs-type 'swap)
(not has-extended?))
'()
`((bootable . ,(string-append "Bootable flag: "
(if bootable? "On" "Off")))))
`((bootable . ,(format #f (G_ "Bootable flag: ~:[off~;on~]")
bootable?))))
,@(if (and (not has-extended?)
(not (eq? fs-type 'swap)))
`((esp? . ,(string-append "ESP flag: "
(if esp? "On" "Off"))))
`((esp? . ,(format #f (G_ "ESP flag: ~:[off~;on~]") esp?)))
'())
,@(if (freespace-partition? partition)
(let ((size-formatted
(or size (unit-format device
(or size (unit-format device ;XXX: i18n
(partition-length partition)))))
`((size . ,(string-append "Size : " size-formatted))))
`((size . ,(format #f (G_ "Size: ~a") size-formatted))))
'())
,@(if (or (eq? type 'extended)
(eq? fs-type 'swap))
'()
`((crypt-label
. ,(string-append
"Encryption: "
(if crypt-label
(format #f "Yes (label ~a)" crypt-label)
"No")))))
. ,(format #f (G_ "Encryption: ~:[No~a~;Yes (label '~a')~]")
crypt-label (or crypt-label "")))))
,@(if (or (freespace-partition? partition)
(eq? fs-type 'swap))
'()
`((need-formatting?
. ,(string-append "Format the partition? : "
(if need-formatting? "Yes" "No")))))
. ,(format #f (G_ "Format the partition? ~:[No~;Yes~]")
need-formatting?))))
,@(if (or (eq? type 'extended)
(eq? fs-type 'swap))
'()
`((mount-point
. ,(string-append "Mount point : "
(or mount-point
(and esp? (default-esp-mount-point))
"None"))))))))
. ,(format #f (G_ "Mount point: ~a")
(or mount-point
(and esp? (default-esp-mount-point))
(G_ "None")))))))))
;;
@ -759,11 +756,33 @@ (define* (extend-ranges! start-range end-range
dev-constraint))
(no-constraint (constraint-any device))
;; Try to create a partition with an optimal alignment
;; constraint. If it fails, fallback to creating a partition with
;; no specific constraint.
;; constraint. If it fails, fallback to creating a partition
;; with no specific constraint.
(partition-constraint-ok?
(disk-add-partition disk partition final-constraint))
(partition-no-contraint-ok?
(or partition-constraint-ok?
(disk-add-partition disk partition no-constraint)))
(partition-ok?
(or (disk-add-partition disk partition final-constraint)
(disk-add-partition disk partition no-constraint))))
(or partition-constraint-ok? partition-no-contraint-ok?)))
(syslog "Creating partition:
~/type: ~a
~/filesystem-type: ~a
~/start: ~a
~/end: ~a
~/start-range: [~a, ~a]
~/end-range: [~a, ~a]
~/constraint: ~a
~/no-constraint: ~a
"
partition-type
(filesystem-type-name filesystem-type)
start-sector*
end-sector
(geometry-start start-range) (geometry-end start-range)
(geometry-start end-range) (geometry-end end-range)
partition-constraint-ok?
partition-no-contraint-ok?)
;; Set the partition name if supported.
(when (and partition-ok? has-name? name)
(partition-set-name partition name))
@ -911,13 +930,13 @@ (define* (auto-partition! disk
(let* ((start-partition
(and (not has-extended?)
(not esp-partition)
(if (efi-installation?)
(user-partition
(fs-type 'fat32)
(esp? #t)
(size new-esp-size)
(mount-point (default-esp-mount-point)))
(and (not esp-partition)
(user-partition
(fs-type 'fat32)
(esp? #t)
(size new-esp-size)
(mount-point (default-esp-mount-point))))
(user-partition
(fs-type 'ext4)
(bootable? #t)
@ -1327,7 +1346,12 @@ (define (user-partitions->configuration user-partitions)
,@(initrd-configuration user-partitions)
,@(if (null? swap-devices)
'()
`((swap-devices (list ,@swap-devices))))
(let* ((uuids (map (lambda (file)
(uuid->string (read-partition-uuid file)))
swap-devices)))
`((swap-devices (list ,@(map (lambda (uuid)
`(uuid ,uuid))
uuids))))))
,@(if (null? encrypted-partitions)
'()
`((mapped-devices
@ -1364,9 +1388,12 @@ (define (free-parted devices)
(let ((device-file-names (map device-path devices)))
(for-each force-device-sync devices)
(for-each (lambda (file-name)
(let ((in-use? (with-delay-device-in-use? file-name)))
(and in-use?
(error
(format #f (G_ "Device ~a is still in use.")
file-name)))))
(let/time ((time in-use?
(with-delay-device-in-use? file-name)))
(if in-use?
(error
(format #f (G_ "Device ~a is still in use.")
file-name))
(syslog "Syncing ~a took ~a seconds.~%"
file-name (time-second time)))))
device-file-names)))

View file

@ -50,7 +50,6 @@ (define-module (gnu installer steps)
%installer-configuration-file
%installer-target-dir
%configuration-file-width
format-configuration
configuration->file))
@ -218,7 +217,6 @@ (define (result-step-done? results step-id)
(define %installer-configuration-file (make-parameter "/mnt/etc/config.scm"))
(define %installer-target-dir (make-parameter "/mnt"))
(define %configuration-file-width (make-parameter 79))
(define (format-configuration steps results)
"Return the list resulting from the application of the procedure defined in

View file

@ -286,8 +286,9 @@ (define* (choose-partitioning port
edit-configuration-file))
"Converse over PORT to choose the partitioning method. When ENCRYPTED? is
true, choose full-disk encryption with PASSPHRASE as the LUKS passphrase.
This conversation goes past the final dialog box that shows the configuration
file, actually starting the installation process."
This conversation stops when the user partitions have been formatted, right
before the installer generates the configuration file and shows it in a dialog
box."
(converse port
((list-selection (title "Partitioning method")
(multiple-choices? #f)
@ -330,15 +331,29 @@ (define* (choose-partitioning port
#t)
((info (title "Preparing partitions") _ ...)
(values)) ;nothing to return
((starting-final-step)
;; Do not return anything. The reply will be sent by
;; 'conclude-installation' and in the meantime the installer just waits
;; for us, giving us a chance to do things such as changing partition
;; UUIDs before it generates the configuration file.
(values))))
(define (conclude-installation port)
"Conclude the installation by checking over PORT that we get the generated
configuration file, accepting it and starting the installation, and then
receiving the final messages once the 'guix system init' process has
completed."
;; Assume the previous message received was 'starting-final-step'; here we
;; send the reply to that message, which lets the installer continue.
(write #t port)
(newline port)
(force-output port)
(converse port
((file-dialog (title "Configuration file")
(text _)
(file ,configuration-file))
(edit-configuration-file configuration-file))))
(define (conclude-installation port)
"Conclude the installation by checking over PORT that we get the final
messages once the 'guix system init' process has completed."
(converse port
(edit-configuration-file configuration-file))
((pause) ;"Press Enter to continue."
#t)
((installation-complete) ;congratulations!

View file

@ -22,6 +22,7 @@ (define-module (gnu installer utils)
#:use-module (guix build utils)
#:use-module (guix i18n)
#:use-module (srfi srfi-1)
#:use-module (srfi srfi-19)
#:use-module (srfi srfi-34)
#:use-module (ice-9 match)
#:use-module (ice-9 rdelim)
@ -36,6 +37,8 @@ (define-module (gnu installer utils)
syslog-port
syslog
call-with-time
let/time
with-server-socket
current-server-socket
@ -117,6 +120,17 @@ (define (pause)
;;; Logging.
;;;
(define (call-with-time thunk kont)
"Call THUNK and pass KONT the elapsed time followed by THUNK's return
values."
(let* ((start (current-time time-monotonic))
(result (call-with-values thunk list))
(end (current-time time-monotonic)))
(apply kont (time-difference end start) result)))
(define-syntax-rule (let/time ((time result exp)) body ...)
(call-with-time (lambda () exp) (lambda (time result) body ...)))
(define (open-syslog-port)
"Return an open port (a socket) to /dev/log or #f if that wasn't possible."
(let ((sock (socket AF_UNIX SOCK_DGRAM 0)))

View file

@ -20,7 +20,7 @@
# Copyright © 2018, 2019, 2020 Oleg Pykhalov <go.wigust@gmail.com>
# Copyright © 2018 Stefan Stefanović <stefanx2ovic@gmail.com>
# Copyright © 2018, 2020 Maxim Cournoyer <maxim.cournoyer@gmail.com>
# Copyright © 2019 Guillaume Le Vaillant <glv@posteo.net>
# Copyright © 2019, 2020 Guillaume Le Vaillant <glv@posteo.net>
# Copyright © 2019, 2020 John Soo <jsoo1@asu.edu>
# Copyright © 2019 Jonathan Brielmaier <jonathan.brielmaier@web.de>
# Copyright © 2019 Evan Straw <evan.straw99@gmail.com>
@ -37,6 +37,8 @@
# Copyright © 2020 Brice Waegeneire <brice@waegenei.re>
# Copyright © 2020 Tanguy Le Carrour <tanguy@bioneland.org>
# Copyright © 2020 Martin Becze <mjbecze@riseup.net>
# Copyright © 2020 Malte Frank Gerdes <mate.f.gerdes@gmail.com>
# Copyright © 2020 Vinicius Monego <monego@posteo.net>
#
# This file is part of GNU Guix.
#
@ -110,6 +112,7 @@ GNU_SYSTEM_MODULES = \
%D%/packages/boost.scm \
%D%/packages/bootloaders.scm \
%D%/packages/bootstrap.scm \
%D%/packages/browser-extensions.scm \
%D%/packages/build-tools.scm \
%D%/packages/busybox.scm \
%D%/packages/c.scm \
@ -465,6 +468,7 @@ GNU_SYSTEM_MODULES = \
%D%/packages/radio.scm \
%D%/packages/ragel.scm \
%D%/packages/rails.scm \
%D%/packages/raspberry-pi.scm \
%D%/packages/ratpoison.scm \
%D%/packages/rcm.scm \
%D%/packages/rdesktop.scm \
@ -650,12 +654,14 @@ GNU_SYSTEM_MODULES = \
\
%D%/system/images/hurd.scm \
%D%/system/images/pine64.scm \
%D%/system/images/pinebook-pro.scm \
\
%D%/machine.scm \
\
%D%/build/accounts.scm \
%D%/build/activation.scm \
%D%/build/bootloader.scm \
%D%/build/chromium-extension.scm \
%D%/build/cross-toolchain.scm \
%D%/build/image.scm \
%D%/build/file-systems.scm \
@ -799,14 +805,14 @@ dist_patch_DATA = \
%D%/packages/patches/audiofile-CVE-2015-7747.patch \
%D%/packages/patches/audiofile-CVE-2018-13440.patch \
%D%/packages/patches/audiofile-CVE-2018-17095.patch \
%D%/packages/patches/audiofile-Check-the-number-of-coefficients.patch \
%D%/packages/patches/audiofile-check-number-of-coefficients.patch \
%D%/packages/patches/audiofile-Fail-on-error-in-parseFormat.patch \
%D%/packages/patches/audiofile-Fix-index-overflow-in-IMA.cpp.patch \
%D%/packages/patches/audiofile-Fix-multiply-overflow-sfconvert.patch \
%D%/packages/patches/audiofile-Fix-overflow-in-MSADPCM-decodeSam.patch \
%D%/packages/patches/audiofile-division-by-zero-BlockCodec-runPull.patch \
%D%/packages/patches/audiofile-hurd.patch \
%D%/packages/patches/audiofile-signature-of-multiplyCheckOverflow.patch \
%D%/packages/patches/audiofile-multiply-overflow.patch \
%D%/packages/patches/audiofile-overflow-in-MSADPCM.patch \
%D%/packages/patches/audiofile-division-by-zero.patch \
%D%/packages/patches/audiofile-hurd.patch \
%D%/packages/patches/audiofile-function-signature.patch \
%D%/packages/patches/automake-skip-amhello-tests.patch \
%D%/packages/patches/avahi-localstatedir.patch \
%D%/packages/patches/avogadro-boost148.patch \
@ -821,11 +827,21 @@ dist_patch_DATA = \
%D%/packages/patches/bastet-change-source-of-unordered_set.patch \
%D%/packages/patches/bazaar-CVE-2017-14176.patch \
%D%/packages/patches/bc-fix-cross-compilation.patch \
%D%/packages/patches/bsd-games-2.17-64bit.patch \
%D%/packages/patches/bsd-games-add-configure-config.patch \
%D%/packages/patches/bsd-games-add-wrapper.patch \
%D%/packages/patches/bsd-games-bad-ntohl-cast.patch \
%D%/packages/patches/bsd-games-dont-install-empty-files.patch \
%D%/packages/patches/bsd-games-gamescreen.h.patch \
%D%/packages/patches/bsd-games-getline.patch \
%D%/packages/patches/bsd-games-null-check.patch \
%D%/packages/patches/bsd-games-number.c-and-test.patch \
%D%/packages/patches/bsd-games-prevent-name-collisions.patch \
%D%/packages/patches/bsd-games-stdio.h.patch \
%D%/packages/patches/beancount-disable-googleapis-fonts.patch \
%D%/packages/patches/beets-werkzeug-compat.patch \
%D%/packages/patches/behave-skip-a-couple-of-tests.patch \
%D%/packages/patches/beignet-correct-file-names.patch \
%D%/packages/patches/benchmark-unbundle-googletest.patch \
%D%/packages/patches/biber-fix-encoding-write.patch \
%D%/packages/patches/biber-sortinithash.patch \
%D%/packages/patches/bidiv-update-fribidi.patch \
@ -833,7 +849,6 @@ dist_patch_DATA = \
%D%/packages/patches/binutils-loongson-workaround.patch \
%D%/packages/patches/binutils-mingw-w64-timestamp.patch \
%D%/packages/patches/binutils-mingw-w64-deterministic.patch \
%D%/packages/patches/bitcoin-core-python-compat.patch \
%D%/packages/patches/blender-2.79-gcc8.patch \
%D%/packages/patches/blender-2.79-gcc9.patch \
%D%/packages/patches/blender-2.79-newer-ffmpeg.patch \
@ -921,6 +936,7 @@ dist_patch_DATA = \
%D%/packages/patches/ecl-16-format-directive-limit.patch \
%D%/packages/patches/ecl-16-ignore-stderr-write-error.patch \
%D%/packages/patches/ecl-16-libffi.patch \
%D%/packages/patches/eigen-remove-openmp-error-counting.patch \
%D%/packages/patches/eigen-stabilise-sparseqr-test.patch \
%D%/packages/patches/einstein-build.patch \
%D%/packages/patches/elfutils-tests-ptrace.patch \
@ -953,6 +969,7 @@ dist_patch_DATA = \
%D%/packages/patches/exiv2-CVE-2017-14859-14862-14864.patch \
%D%/packages/patches/extempore-unbundle-external-dependencies.patch \
%D%/packages/patches/extundelete-e2fsprogs-1.44.patch \
%D%/packages/patches/farstream-make.patch \
%D%/packages/patches/fastcap-mulGlobal.patch \
%D%/packages/patches/fastcap-mulSetup.patch \
%D%/packages/patches/fasthenry-spAllocate.patch \
@ -976,6 +993,7 @@ dist_patch_DATA = \
%D%/packages/patches/freedink-engine-fix-sdl-hints.patch \
%D%/packages/patches/freeimage-unbundle.patch \
%D%/packages/patches/fuse-overlapping-headers.patch \
%D%/packages/patches/gajim-honour-GAJIM_PLUGIN_PATH.patch \
%D%/packages/patches/ganeti-deterministic-manual.patch \
%D%/packages/patches/ganeti-disable-version-symlinks.patch \
%D%/packages/patches/ganeti-drbd-compat.patch \
@ -998,6 +1016,8 @@ dist_patch_DATA = \
%D%/packages/patches/gcc-4.9-libsanitizer-ustat.patch \
%D%/packages/patches/gcc-libsanitizer-ustat.patch \
%D%/packages/patches/gcc-4.9-libsanitizer-mode-size.patch \
%D%/packages/patches/gcc-6-fix-isl-includes.patch \
%D%/packages/patches/gcc-6-fix-buffer-size.patch \
%D%/packages/patches/gcc-6-libsanitizer-mode-size.patch \
%D%/packages/patches/gcc-7-libsanitizer-mode-size.patch \
%D%/packages/patches/gcc-libvtv-runpath.patch \
@ -1020,9 +1040,9 @@ dist_patch_DATA = \
%D%/packages/patches/gcc-8-strmov-store-file-names.patch \
%D%/packages/patches/gcc-9-asan-fix-limits-include.patch \
%D%/packages/patches/gcc-9-strmov-store-file-names.patch \
%D%/packages/patches/gdb-hurd.patch \
%D%/packages/patches/gd-fix-tests-on-i686.patch \
%D%/packages/patches/gd-brect-bounds.patch \
%D%/packages/patches/gdb-hurd.patch \
%D%/packages/patches/gdm-default-session.patch \
%D%/packages/patches/genimage-signedness.patch \
%D%/packages/patches/geoclue-config.patch \
@ -1038,6 +1058,7 @@ dist_patch_DATA = \
%D%/packages/patches/ghostscript-no-header-id.patch \
%D%/packages/patches/ghostscript-no-header-uuid.patch \
%D%/packages/patches/ghostscript-no-header-creationdate.patch \
%D%/packages/patches/glib-appinfo-watch.patch \
%D%/packages/patches/glib-tests-timer.patch \
%D%/packages/patches/glibc-CVE-2018-11236.patch \
%D%/packages/patches/glibc-CVE-2018-11237.patch \
@ -1071,6 +1092,7 @@ dist_patch_DATA = \
%D%/packages/patches/glibc-supported-locales.patch \
%D%/packages/patches/gmp-arm-asm-nothumb.patch \
%D%/packages/patches/gmp-faulty-test.patch \
%D%/packages/patches/gnash-fix-giflib-version.patch \
%D%/packages/patches/gnome-shell-theme.patch \
%D%/packages/patches/gnome-shell-disable-test.patch \
%D%/packages/patches/gnome-settings-daemon-gc.patch \
@ -1089,7 +1111,6 @@ dist_patch_DATA = \
%D%/packages/patches/gpsbabel-qstring.patch \
%D%/packages/patches/grantlee-merge-theme-dirs.patch \
%D%/packages/patches/grep-timing-sensitive-test.patch \
%D%/packages/patches/grim-revert-output-rotation.patch \
%D%/packages/patches/grocsvs-dont-use-admiral.patch \
%D%/packages/patches/gromacs-tinyxml2.patch \
%D%/packages/patches/groovy-add-exceptionutilsgenerator.patch \
@ -1146,8 +1167,7 @@ dist_patch_DATA = \
%D%/packages/patches/icecat-use-older-reveal-hidden-html.patch \
%D%/packages/patches/icecat-use-system-graphite2+harfbuzz.patch \
%D%/packages/patches/icecat-use-system-media-libs.patch \
%D%/packages/patches/icedtea-6-hotspot-gcc-segfault-workaround.patch \
%D%/packages/patches/icedtea-7-hotspot-gcc-segfault-workaround.patch \
%D%/packages/patches/icedtea-6-extend-hotspot-aarch64-support.patch \
%D%/packages/patches/id3lib-CVE-2007-4460.patch \
%D%/packages/patches/id3lib-UTF16-writing-bug.patch \
%D%/packages/patches/ilmbase-fix-tests.patch \
@ -1185,6 +1205,7 @@ dist_patch_DATA = \
%D%/packages/patches/julia-SOURCE_DATE_EPOCH-mtime.patch \
%D%/packages/patches/kdbusaddons-kinit-file-name.patch \
%D%/packages/patches/libffi-float128-powerpc64le.patch \
%D%/packages/patches/libffi-3.3-powerpc-fixes.patch \
%D%/packages/patches/libvirt-create-machine-cgroup.patch \
%D%/packages/patches/libziparchive-add-includes.patch \
%D%/packages/patches/localed-xorg-keyboard.patch \
@ -1200,6 +1221,7 @@ dist_patch_DATA = \
%D%/packages/patches/kmod-module-directory.patch \
%D%/packages/patches/kmscon-runtime-keymap-switch.patch \
%D%/packages/patches/kpackage-allow-external-paths.patch \
%D%/packages/patches/kpackage-fix-KF5PackageMacros.cmake.patch \
%D%/packages/patches/kmplayer-aarch64.patch \
%D%/packages/patches/kmplayer-upstream_Fix-build-with-Qt-5.9.patch \
%D%/packages/patches/kobodeluxe-paths.patch \
@ -1292,6 +1314,7 @@ dist_patch_DATA = \
%D%/packages/patches/lrcalc-includes.patch \
%D%/packages/patches/lrzip-CVE-2017-8842.patch \
%D%/packages/patches/lsh-fix-x11-forwarding.patch \
%D%/packages/patches/lsof-fatal-test-failures.patch \
%D%/packages/patches/lua-CVE-2014-5461.patch \
%D%/packages/patches/lua-pkgconfig.patch \
%D%/packages/patches/lua51-liblua-so.patch \
@ -1338,11 +1361,11 @@ dist_patch_DATA = \
%D%/packages/patches/mozjs38-version-detection.patch \
%D%/packages/patches/mrrescue-support-love-11.patch \
%D%/packages/patches/mtools-mformat-uninitialized.patch \
%D%/packages/patches/multipath-tools-sans-systemd.patch \
%D%/packages/patches/mumps-build-parallelism.patch \
%D%/packages/patches/mumps-shared-libseq.patch \
%D%/packages/patches/mumps-shared-mumps.patch \
%D%/packages/patches/mumps-shared-pord.patch \
%D%/packages/patches/mupdf-fix-linkage.patch \
%D%/packages/patches/mupen64plus-ui-console-notice.patch \
%D%/packages/patches/mupen64plus-video-z64-glew-correct-path.patch \
%D%/packages/patches/musl-cross-locale.patch \
@ -1350,7 +1373,6 @@ dist_patch_DATA = \
%D%/packages/patches/m4-gnulib-libio.patch \
%D%/packages/patches/ncompress-fix-softlinks.patch \
%D%/packages/patches/netcdf-date-time.patch \
%D%/packages/patches/netcdf-tst_h_par.patch \
%D%/packages/patches/netpbm-CVE-2017-2586.patch \
%D%/packages/patches/netpbm-CVE-2017-2587.patch \
%D%/packages/patches/netsurf-message-timestamp.patch \
@ -1369,9 +1391,8 @@ dist_patch_DATA = \
%D%/packages/patches/nvi-dbpagesize-binpower.patch \
%D%/packages/patches/nvi-db4.patch \
%D%/packages/patches/nyacc-binary-literals.patch \
%D%/packages/patches/oath-toolkit-glibc-compat.patch \
%D%/packages/patches/ocaml-bisect-fix-camlp4-in-another-directory.patch \
%D%/packages/patches/ocaml-bitstring-fix-configure.patch \
%D%/packages/patches/ocaml-cairo2-caml_ba_array-fix.patch \
%D%/packages/patches/ocaml-CVE-2015-8869.patch \
%D%/packages/patches/ocaml-Add-a-.file-directive.patch \
%D%/packages/patches/ocaml-enable-ocamldoc-reproducibility.patch \
@ -1388,7 +1409,7 @@ dist_patch_DATA = \
%D%/packages/patches/openfoam-4.1-cleanup.patch \
%D%/packages/patches/openjdk-10-idlj-reproducibility.patch \
%D%/packages/patches/openmpi-mtl-priorities.patch \
%D%/packages/patches/openocd-nrf52.patch \
%D%/packages/patches/openssh-fix-ssh-copy-id.patch \
%D%/packages/patches/openssh-hurd.patch \
%D%/packages/patches/openresolv-restartcmd-guix.patch \
%D%/packages/patches/openscad-parser-boost-1.72.patch \
@ -1409,8 +1430,10 @@ dist_patch_DATA = \
%D%/packages/patches/pam-mount-luks2-support.patch \
%D%/packages/patches/pango-skip-libthai-test.patch \
%D%/packages/patches/pciutils-hurd-configure.patch \
%D%/packages/patches/plasma-framework-fix-KF5PlasmaMacros.cmake.patch \
%D%/packages/patches/ppsspp-disable-upgrade-and-gold.patch \
%D%/packages/patches/samba-fix-fcntl-hint-detection.patch \
%D%/packages/patches/sdcc-disable-non-free-code.patch \
%D%/packages/patches/sdl-pango-api_additions.patch \
%D%/packages/patches/sdl-pango-blit_overflow.patch \
%D%/packages/patches/sdl-pango-fillrect_crash.patch \
@ -1432,6 +1455,7 @@ dist_patch_DATA = \
%D%/packages/patches/perl-text-markdown-discount-unbundle.patch \
%D%/packages/patches/perl-module-pluggable-search.patch \
%D%/packages/patches/perl-reproducible-build-date.patch \
%D%/packages/patches/perl-www-curl-fix-struct-void.patch \
%D%/packages/patches/perl-www-curl-remove-symbol.patch \
%D%/packages/patches/picard-fix-id3-rename-test.patch \
%D%/packages/patches/picprog-non-intel-support.patch \
@ -1485,7 +1509,6 @@ dist_patch_DATA = \
%D%/packages/patches/python-3.8-fix-tests.patch \
%D%/packages/patches/python-3-hurd-configure.patch \
%D%/packages/patches/python-CVE-2018-14647.patch \
%D%/packages/patches/python-aiohttp-3.6.2-no-warning-fail.patch \
%D%/packages/patches/python-aionotify-0.2.0-py3.8.patch \
%D%/packages/patches/python-argcomplete-1.11.1-fish31.patch \
%D%/packages/patches/python-axolotl-AES-fix.patch \
@ -1509,9 +1532,10 @@ dist_patch_DATA = \
%D%/packages/patches/python-paste-remove-timing-test.patch \
%D%/packages/patches/python-pycrypto-CVE-2013-7459.patch \
%D%/packages/patches/python-pycrypto-time-clock.patch \
%D%/packages/patches/python2-pygobject-2-gi-info-type-error-domain.patch \
%D%/packages/patches/python-pydot-regression-test.patch \
%D%/packages/patches/python2-pygobject-2-deprecation.patch \
%D%/packages/patches/python-pygpgme-fix-pinentry-tests.patch \
%D%/packages/patches/python-robotframework-honor-source-date-epoch.patch \
%D%/packages/patches/python-robotframework-source-date-epoch.patch \
%D%/packages/patches/python-shouldbe-0.1.2-cpy3.8.patch \
%D%/packages/patches/python2-subprocess32-disable-input-test.patch \
%D%/packages/patches/python-tinycss2-flake8-compat.patch \
@ -1538,7 +1562,7 @@ dist_patch_DATA = \
%D%/packages/patches/raptor2-heap-overflow.patch \
%D%/packages/patches/ratpoints-sturm_and_rp_private.patch \
%D%/packages/patches/ratpoison-shell.patch \
%D%/packages/patches/rcs-5.9.4-noreturn.patch \
%D%/packages/patches/rcs-5.10.0-no-stdin.patch \
%D%/packages/patches/rct-add-missing-headers.patch \
%D%/packages/patches/readline-link-ncurses.patch \
%D%/packages/patches/readline-6.2-CVE-2014-2524.patch \
@ -1569,12 +1593,12 @@ dist_patch_DATA = \
%D%/packages/patches/rust-reproducible-builds.patch \
%D%/packages/patches/rust-openssl-sys-no-vendor.patch \
%D%/packages/patches/rxvt-unicode-escape-sequences.patch \
%D%/packages/patches/sbcl-geco-fix-organism-class.patch \
%D%/packages/patches/scalapack-blacs-mpi-deprecations.patch \
%D%/packages/patches/scheme48-tests.patch \
%D%/packages/patches/scotch-build-parallelism.patch \
%D%/packages/patches/scotch-integer-declarations.patch \
%D%/packages/patches/screen-hurd-path-max.patch \
%D%/packages/patches/scribus-1.5.5-poppler-0.86-build-fix.patch \
%D%/packages/patches/sdl-libx11-1.6.patch \
%D%/packages/patches/seed-webkit.patch \
%D%/packages/patches/seq24-rename-mutex.patch \
@ -1629,14 +1653,15 @@ dist_patch_DATA = \
%D%/packages/patches/tipp10-remove-license-code.patch \
%D%/packages/patches/tk-find-library.patch \
%D%/packages/patches/transcode-ffmpeg.patch \
%D%/packages/patches/transmission-honor-localedir.patch \
%D%/packages/patches/ttf2eot-cstddef.patch \
%D%/packages/patches/tomb-fix-errors-on-open.patch \
%D%/packages/patches/tup-unbundle-dependencies.patch \
%D%/packages/patches/tuxpaint-stamps-path.patch \
%D%/packages/patches/twinkle-bcg729.patch \
%D%/packages/patches/u-boot-riscv64-fix-extlinux.patch \
%D%/packages/patches/ucx-tcp-iface-ioctl.patch \
%D%/packages/patches/udiskie-no-appindicator.patch \
%D%/packages/patches/ungoogled-chromium-extension-search-path.patch \
%D%/packages/patches/ungoogled-chromium-system-nspr.patch \
%D%/packages/patches/unison-fix-ocaml-4.08.patch \
%D%/packages/patches/unknown-horizons-python-3.8-distro.patch \
@ -1702,12 +1727,12 @@ dist_patch_DATA = \
%D%/packages/patches/xplanet-1.3.1-libimage_gif.c.patch \
%D%/packages/patches/xplanet-1.3.1-xpUtil-Add2017LeapSecond.cpp.patch \
%D%/packages/patches/xpra-4.0.1-systemd-run.patch \
%D%/packages/patches/xpra-4.0.4-norequests.patch \
%D%/packages/patches/xsane-fix-memory-leak.patch \
%D%/packages/patches/xsane-fix-pdf-floats.patch \
%D%/packages/patches/xsane-fix-snprintf-buffer-length.patch \
%D%/packages/patches/xsane-support-ipv6.patch \
%D%/packages/patches/xsane-tighten-default-umask.patch
%D%/packages/patches/xsane-tighten-default-umask.patch \
%D%/packages/patches/yggdrasil-extra-config.patch
MISC_DISTRO_FILES = \
%D%/packages/ld-wrapper.in

View file

@ -37,6 +37,7 @@ (define-module (gnu machine ssh)
#:use-module (guix ssh)
#:use-module (guix store)
#:use-module (guix utils)
#:use-module ((guix self) #:select (make-config.scm))
#:use-module (gcrypt pk-crypto)
#:use-module (ice-9 format)
#:use-module (ice-9 match)
@ -353,8 +354,9 @@ (define bootable-kernel-arguments
(define remote-exp
(with-extensions (list guile-gcrypt)
(with-imported-modules (source-module-closure '((guix config)
(guix profiles)))
(with-imported-modules (source-module-closure
`(((guix config) => ,(make-config.scm))
(guix profiles)))
#~(begin
(use-modules (guix config)
(guix profiles)
@ -482,6 +484,8 @@ (define roll-back-failure
(list (second boot-parameters))))
(locale -> (boot-parameters-locale
(second boot-parameters)))
(store-dir -> (boot-parameters-store-directory-prefix
(second boot-parameters)))
(old-entries -> (map boot-parameters->menu-entry
(drop boot-parameters 2)))
(bootloader -> (operating-system-bootloader
@ -492,6 +496,7 @@ (define roll-back-failure
bootloader))
bootloader entries
#:locale locale
#:store-directory-prefix store-dir
#:old-entries old-entries)))
(remote-result (machine-remote-eval machine remote-exp)))
(when (eqv? 'error remote-result)

View file

@ -51,7 +51,8 @@ (define-public acl
`(#:modules ((ice-9 ftw)
,@%gnu-build-system-modules)
#:configure-flags '("--disable-static")
#:tests? ,(not (hurd-target?))
#:tests? ,(not (or (%current-target-system)
(hurd-target?)))
#:phases
(modify-phases %standard-phases
;; XXX After repacking the sources the timestamps are reset to the

View file

@ -1,5 +1,6 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2018 Danny Milosavljevic <dannym@scratchpost.org>
;;; Copyright © 2020 Tobias Geerinckx-Rice <me@tobias.gr>
;;;
;;; This file is part of GNU Guix.
;;;
@ -24,10 +25,126 @@ (define-module (gnu packages ada)
#:use-module (guix download)
#:use-module (guix git-download)
#:use-module (gnu packages)
#:use-module (gnu packages base)
#:use-module (gnu packages check)
#:use-module (gnu packages compression)
#:use-module (gnu packages python)
#:use-module (gnu packages python-xyz))
#:use-module (gnu packages python-xyz)
#:use-module (ice-9 match))
(define-public ada/ed
(package
(name "ada-ed")
(version "1.11.2")
(source
(origin
(method git-fetch)
(uri (git-reference
;; The HOME-PAGE sources, mirrored by one of the original authors.
(url "https://github.com/daveshields/AdaEd")
(commit "57daecfb7ccadfd9aaf13b4d54f51065affbe599")))
(sha256
(base32 "1k97a8nqsvbsadizrmhhypcx758sxqkai8wq3ckk853qxvzaasd8"))
(file-name (git-file-name name version))))
(build-system gnu-build-system)
(supported-systems (list "i686-linux" "x86_64-linux"
"armhf-linux" "aarch64-linux"))
(outputs (list "out" "debug"))
(arguments
`(#:system
,@(match (%current-system)
;; This package predates 64-bit PCs: a 64-bit adaexec segfaults.
;; Force a 32-bit build targeting a similar architecture.
((or "armhf-linux" "aarch64-linux")
`("armhf-linux"))
(_
`("i686-linux")))
#:make-flags
(let ((out (assoc-ref %outputs "out")))
(list (string-append
"CFLAGS=-g" ; compile with :debug symbols
" -DOP_SYS='\"GNU\"'" ; sic; quoting gets mangled somewhere
" -DSYSTEM_V" ; closest to modern GNU
" -DWORDSIZE32"
" -DALIGN4") ; suffices on both x86 and ARM
"LFLAGS=" ; don't link against -lg
(string-append "BINDIR=" out "/bin")
(string-append "LIBDIR=" out "/lib")
(string-append "MANDIR=" out "/share/man")))
#:modules ((guix build gnu-build-system)
(guix build utils)
(srfi srfi-26))
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'patch-sources
(lambda _
;; Rename the custom (and incompatible) getline() implementation.
(substitute* "adalex.c"
(("getline") "adaed_getline"))
;; Work around error: initializer element is not constant by not
;; initialising MSGFILE.
(substitute* "vars.ch"
(("INIT\\(stdout\\)") ""))
#t))
(delete 'configure) ; no configure script
(add-before 'build 'find-build-scripts
(lambda _
(setenv "PATH" (string-append ".:" (getenv "PATH")))
#t))
(add-after 'build 'build-predef
(lambda* (#:key make-flags #:allow-other-keys)
;; These aren't otherwise compiled until the install phase.
(apply invoke "make" "predef" make-flags)
#t))
(delete 'check) ; no test suite; run our own below
(add-before 'install 'create-output-directories
(lambda* (#:key outputs #:allow-other-keys)
(let ((out (assoc-ref outputs "out")))
(mkdir-p (string-append out "/share/man/manl"))
#t)))
(add-after 'install 'check
;; Run most of the included demos as our own test suite.
(lambda* (#:key outputs tests? #:allow-other-keys)
(let ((out (assoc-ref outputs "out")))
(when tests?
(setenv "ADAED" (string-append out "/lib"))
(setenv "PATH" (string-append out "/bin:" (getenv "PATH")))
(with-directory-excursion "demos" ; won't run outside of it
(for-each
delete-file
'("runc" ; invalid data. Please make it a positive no.
"rund" ; deadlocks by design
"rune" ; dining2.ada: No such file or directory
"rung")) ; mathlib cannot be used as a library (!)
(for-each (lambda (script)
(format #t "\n=== Invoking ~a ===\n" script)
(invoke script))
(find-files "." "^run")))))))
(add-after 'install 'clean-up-output
(lambda* (#:key outputs #:allow-other-keys)
(let ((out (assoc-ref outputs "out")))
(with-directory-excursion out
;; These needn't be executable.
(for-each (cut chmod <> #o644)
(append (find-files "lib" "\\....$")
(find-files "share" ".")))
#t)))))))
(native-inputs
`(("sed" ,sed)))
(home-page (string-append "https://web.archive.org/web/20140902150609/"
"http://www2.informatik.uni-stuttgart.de/iste/ps/"
"ada-software/html/dos_ada.html"))
(synopsis "Ada 83 interpreter")
(description "Ada/Ed is a translator-interpreter for Ada 83. It's intended
primarily as a teaching tool and lacks the capacity, performance, and robustness
of other contemporary or modern-day Ada compilers.
Ada/Ed was the first Ada compiler to pass the @acronym{ACVC, Ada Compiler
Validation Suite} version 1.7 but fails many newer tests and is not a validated
Ada system. Being an interpreter, it does not implement most representation
clauses, and thus does not support systems programming close to the machine
level.")
(license license:gpl2+)))
(define-public python2-langkit
(let ((commit "fe0bc8bf60dbd2937759810df76ac420d99fc15f")

View file

@ -6,7 +6,7 @@
;;; Copyright © 2015, 2016 Taylan Ulrich Bayırlı/Kammer <taylanbayirli@gmail.com>
;;; Copyright © 2015 Alex Sassmannshausen <alex.sassmannshausen@gmail.com>
;;; Copyright © 2015 Eric Dvorsak <eric@dvorsak.fr>
;;; Copyright © 2016, 2017 Leo Famulari <leo@famulari.name>
;;; Copyright © 2016, 2017, 2020 Leo Famulari <leo@famulari.name>
;;; Copyright © 2016 Pjotr Prins <pjotr.guix@thebird.nl>
;;; Copyright © 2016, 2017 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2016, 2017, 2018, 2019, 2020 Efraim Flashner <efraim@flashner.co.il>
@ -313,7 +313,7 @@ (define-public guile2.0-shepherd
(define-public cloud-utils
(package
(name "cloud-utils")
(version "0.31")
(version "0.32")
(source
(origin
(method url-fetch)
@ -322,7 +322,7 @@ (define-public cloud-utils
version "/+download/cloud-utils-" version ".tar.gz"))
(sha256
(base32
"07fl3dlqwdzw4xx7mcxhpkks6dnmaxha80zgs9f6wmibgzni8z0r"))))
"0xxdi55lzw7j91zfajw7jhd2ilsqj2dy04i9brlk8j3pvb5ma8hk"))))
(build-system gnu-build-system)
(arguments
'(#:make-flags
@ -443,7 +443,7 @@ (define-public dfc
(define-public facter
(package
(name "facter")
(version "4.0.43")
(version "4.0.46")
(source (origin
(method git-fetch)
(uri (git-reference
@ -452,7 +452,7 @@ (define-public facter
(file-name (git-file-name name version))
(sha256
(base32
"0ppzr7vsl6iw8x82c4g60mx1vz06nzwcy8byablhg0n0g6qa3pb0"))))
"1pi93i1jfpmxxw22b5r4gyx5jzgrammlrjzhjr3q2bpn3kcas91j"))))
(build-system ruby-build-system)
(arguments
`(#:phases
@ -1499,7 +1499,7 @@ (define-public sudo
(define-public opendoas
(package
(name "opendoas")
(version "6.6.1")
(version "6.8")
(source (origin
(method git-fetch)
(uri (git-reference
@ -1508,7 +1508,7 @@ (define-public opendoas
(file-name (git-file-name name version))
(sha256
(base32
"07kkc5729p654jrgfsc8zyhiwicgmq38yacmwfvay2b3gmy728zn"))))
"1dlwnvy8r6slxcy260gfkximp1ms510wdslpfq9y6xvd2qi5izcb"))))
(build-system gnu-build-system)
(arguments
`(#:phases
@ -1516,19 +1516,17 @@ (define-public opendoas
(replace 'configure
;; The configure script doesn't accept most of the default flags.
(lambda* (#:key configure-flags #:allow-other-keys)
;; The configure script can only be told which compiler to use
;; The configure script can be told which compiler to use only
;; through environment variables.
(setenv "CC" ,(cc-for-target))
(apply invoke "./configure" configure-flags)))
(add-before 'install 'fix-makefile
(lambda* (#:key outputs #:allow-other-keys)
(substitute* "bsd.prog.mk"
(substitute* "GNUmakefile"
(("^\tchown.*$") ""))
#t)))
#:configure-flags
(list (string-append "--prefix=" (assoc-ref %outputs "out"))
;; Nothing is done with this value (yet?) but it's supported.
;; (string-append "--target=" (or ,(%current-target-system) ""))
"--with-timestamp")
;; Compiler choice is not carried over from the configure script.
#:make-flags
@ -1566,10 +1564,10 @@ (define-public wpa-supplicant-minimal
#t))))
(build-system gnu-build-system)
(arguments
'(#:phases
`(#:phases
(modify-phases %standard-phases
(replace 'configure
(lambda* (#:key outputs #:allow-other-keys)
(lambda _
(chdir "wpa_supplicant")
(copy-file "defconfig" ".config")
(let ((port (open-file ".config" "al")))
@ -1583,6 +1581,15 @@ (define-public wpa-supplicant-minimal
CONFIG_LIBNL32=y
CONFIG_READLINE=y\n" port)
(close-port port))
;; Make sure we have a pkg-config when cross compiling
(substitute* '(".config"
"Android.mk"
"Makefile"
"dbus/Makefile")
(("pkg-config")
(or (which "pkg-config")
(which (string-append ,(%current-target-system)
"-pkg-config")))))
#t))
(add-after 'install 'install-documentation
(lambda* (#:key outputs #:allow-other-keys)
@ -1611,7 +1618,7 @@ (define (copy-man-page target)
"wpa_supplicant.conf"))
#t))))
#:make-flags (list "CC=gcc"
#:make-flags (list (string-append "CC=" ,(cc-for-target))
(string-append "BINDIR=" (assoc-ref %outputs "out")
"/sbin")
(string-append "LIBDIR=" (assoc-ref %outputs "out")
@ -1721,10 +1728,10 @@ (define-public hostapd
"1mrbvg4v7vm7mknf0n29mf88k3s4a4qj6r4d51wq8hmjj1m7s7c8"))))
(build-system gnu-build-system)
(arguments
'(#:phases
`(#:phases
(modify-phases %standard-phases
(replace 'configure
(lambda* (#:key outputs #:allow-other-keys)
(lambda _
;; This is mostly copied from 'wpa-supplicant' above.
(chdir "hostapd")
(copy-file "defconfig" ".config")
@ -1736,6 +1743,14 @@ (define-public hostapd
CONFIG_IEEE80211AC=y\n" port)
(close-port port))
#t))
(add-after 'unpack 'patch-pkg-config
(lambda _
(substitute* "src/drivers/drivers.mak"
(("pkg-config")
(or (which "pkg-config")
(string-append ,(%current-target-system)
"-pkg-config"))))
#t))
(add-after 'install 'install-man-pages
(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
@ -1752,7 +1767,7 @@ (define (copy-man-page target)
(find-files "." "\\.8"))
#t))))
#:make-flags (list "CC=gcc"
#:make-flags (list (string-append "CC=" ,(cc-for-target))
(string-append "BINDIR=" (assoc-ref %outputs "out")
"/sbin")
(string-append "LIBDIR=" (assoc-ref %outputs "out")
@ -1847,7 +1862,7 @@ (define-public dmidecode
(define-public acpica
(package
(name "acpica")
(version "20200717")
(version "20201113")
(source (origin
(method url-fetch)
(uri (string-append
@ -1855,13 +1870,13 @@ (define-public acpica
version ".tar.gz"))
(sha256
(base32
"0jyy71szjr40c8v40qqw6yh3gfk8d6sl3nay69zrn5d88i3r0jca"))))
"0fmck3zklc328c8nzvfzm2xyh2i8zszzrd4k8kk8q30y4avnc6z1"))))
(build-system gnu-build-system)
(native-inputs `(("flex" ,flex)
("bison" ,bison)))
(arguments
'(#:make-flags (list (string-append "PREFIX=" %output)
"CC=gcc"
`(#:make-flags (list (string-append "PREFIX=" %output)
(string-append "CC=" ,(cc-for-target))
"HOST=_LINUX"
"OPT_CFLAGS=-Wall -fno-strict-aliasing")
#:tests? #f ; no 'check' target
@ -2381,17 +2396,20 @@ (define-public cpulimit
`(#:phases (modify-phases %standard-phases
(delete 'configure)
(replace 'build
(lambda _
(invoke "make" "CC=gcc" "-Csrc")))
(lambda* (#:key make-flags #:allow-other-keys)
(apply invoke "make" "-Csrc" make-flags)))
(replace 'check
(lambda _
(invoke "make" "CC=gcc" "-Ctests")))
(lambda* (#:key tests? make-flags #:allow-other-keys)
(when tests?
(apply invoke "make" "-Ctests" make-flags))
#t))
(replace 'install
(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(bin (string-append out "/bin")))
(install-file "src/cpulimit" bin))
#t)))))
#t)))
#:make-flags (list (string-append "CC=" ,(cc-for-target)))))
(home-page "https://github.com/opsengine/cpulimit")
(synopsis "Limit CPU usage")
(description
@ -2688,7 +2706,7 @@ (define-public dstat
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/dagwieers/dstat")
(url "https://github.com/dstat-real/dstat")
(commit (string-append "v" version))))
(file-name (git-file-name "dstat" version))
(sha256
@ -2880,9 +2898,13 @@ (define-public pam-krb5
(version "4.8")
(source (origin
(method url-fetch)
(uri (string-append
"https://archives.eyrie.org/software/kerberos/"
"pam-krb5-" version ".tar.xz"))
(uri
(list (string-append
"https://archives.eyrie.org/software/kerberos/"
"pam-krb5-" version ".tar.xz")
(string-append
"https://archives.eyrie.org/software/ARCHIVE/"
"pam-krb5/pam-krb5-" version ".tar.xz")))
(patches (search-patches "pam-krb5-CVE-2020-10595.patch"))
(sha256
(base32
@ -2916,7 +2938,7 @@ (define-public pam-krb5
enabled, and supports extensive configuration either by PAM options or in
krb5.conf or both. PKINIT is supported with recent versions of both MIT
Kerberos and Heimdal and FAST is supported with recent MIT Kerberos.")
(home-page "https://www.eyrie.org/~eagle/software/pam-krb5")
(home-page "https://www.eyrie.org/~eagle/software/pam-krb5/")
;; Dual licenced under a homebrew non-copyleft OR GPL (any version)
;; However, the tarball does not contain a copy of the GPL, so unless
;; we put one in, we cannot distribute it under GPL without violating
@ -3358,14 +3380,14 @@ (define-public pfetch
(define-public nnn
(package
(name "nnn")
(version "3.4")
(version "3.5")
(source
(origin
(method url-fetch)
(uri (string-append "https://github.com/jarun/nnn/releases/download/v"
version "/nnn-v" version ".tar.gz"))
(sha256
(base32 "189h950m1jjrnhvgcvzk6nj89l58rkxim7bxa0441ssajxpaw0vq"))))
(base32 "1ww18vvfjkvi36rcamw8kpix4bhk71w5bw9kmnh158crah1x8dp6"))))
(build-system gnu-build-system)
(inputs
`(("ncurses" ,ncurses)
@ -3373,15 +3395,23 @@ (define-public nnn
(native-inputs
`(("pkg-config" ,pkg-config)))
(arguments
'(#:tests? #f ; no tests
`(#:tests? #f ; no tests
#:phases
(modify-phases %standard-phases
(delete 'configure)) ; no configure script
(delete 'configure) ; no configure script
(add-after 'unpack 'patch-pkg-config
(lambda _
(substitute* "Makefile"
(("pkg-config")
(or (which "pkg-config")
(string-append ,(%current-target-system)
"-pkg-config"))))
#t)))
#:make-flags
(list
(string-append "PREFIX="
(assoc-ref %outputs "out"))
"CC=gcc")))
(string-append "CC=" ,(cc-for-target)))))
(home-page "https://github.com/jarun/nnn")
(synopsis "Terminal file browser")
(description "@command{nnn} is a fork of @command{noice}, a blazing-fast
@ -3394,40 +3424,56 @@ (define-public nnn
(define-public thermald
(package
(name "thermald")
(version "1.9.1")
(version "2.3")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/01org/thermal_daemon")
(url "https://github.com/intel/thermal_daemon")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0iagc3jqpnh6q2fa1gx4wx6r8qg0556j60xr159zqg95djr4dv99"))))
(base32 "0cisaca2c2z1x9xvxc4lr6nl6yqx5bww6brh73m0p1n643jgq1dl"))))
(build-system gnu-build-system)
(arguments
`(#:configure-flags
(let ((out (assoc-ref %outputs "out")))
(list (string-append "--sysconfdir="
out "/etc")
(string-append "--with-dbus-sys-dir="
(list (string-append "--with-dbus-sys-dir="
out "/etc/dbus-1/system.d")
"--localstatedir=/var"))))
"--localstatedir=/var"))
#:make-flags
(list "V=1") ; log build commands
#:phases
(modify-phases %standard-phases
(add-before 'bootstrap 'no-early-./configure
(lambda _
(setenv "NO_CONFIGURE" "yet")
;; XXX thd_trip_point.h redefines "__STDC_LIMIT_MACROS" after
;; <xz>/include/lzma.h. ./configure forcibly appends -Werror
;; to CXXFLAGS, overriding any -Wno-error we'd add.
(substitute* "configure.ac"
(("-Werror") ""))
#t)))))
(native-inputs
`(("autoconf" ,autoconf)
("autoconf-archive" ,autoconf-archive)
("automake" ,automake)
("glib" ,glib "bin") ; for glib-genmarshal, etc.
("gtk-doc" ,gtk-doc)
("pkg-config" ,pkg-config)))
(inputs
`(("dbus-glib" ,dbus-glib)
("libxml2" ,libxml2)))
("libevdev" ,libevdev)
("libxml2" ,libxml2)
("upower" ,upower)
("xz" ,xz)))
(home-page "https://01.org/linux-thermal-daemon/")
(synopsis "CPU scaling for thermal management")
(description "The Linux Thermal Daemon helps monitor and control temperature
on systems running the Linux kernel.")
;; arm and aarch64 don't have cpuid.h.
(supported-systems '("i686-linux" "x86_64-linux"))
(license license:gpl2+)))
(license license:gpl2)))
(define-public masscan
(package
@ -3446,9 +3492,9 @@ (define-public masscan
(inputs
`(("libpcap" ,libpcap)))
(arguments
'(#:test-target "regress"
`(#:test-target "regress"
#:make-flags
(list "CC=gcc"
(list (string-append "CC=" ,(cc-for-target))
(string-append "PREFIX=" (assoc-ref %outputs "out")))
#:phases
(modify-phases %standard-phases
@ -3576,7 +3622,7 @@ (define-public inxi-minimal
(let ((real-name "inxi"))
(package
(name "inxi-minimal")
(version "3.1.07-1")
(version "3.1.09-1")
(source
(origin
(method git-fetch)
@ -3585,7 +3631,7 @@ (define-public inxi-minimal
(commit version)))
(file-name (git-file-name real-name version))
(sha256
(base32 "0hs4m2vmfc6srscaz72r6zpkn6n7msgzlps376ks38gj1l103xfn"))))
(base32 "0m6s8kxjppy3jm39is5i1lbrah29cw86rq0vamvx46izbdyf84y5"))))
(build-system trivial-build-system)
(inputs
`(("bash" ,bash-minimal)
@ -3755,26 +3801,20 @@ (define-public python-pyudev
(define-public solaar
(package
(name "solaar")
(version "0.9.2")
(version "1.0.4")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/pwr/Solaar")
(url "https://github.com/pwr-Solaar/Solaar")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32
"085mfa13dap3wqik1dqlad0d7kff4rv7j4ljh99c7l8nhczkqgwm"))))
"15wzxxr2m5349kkvcs3k5clg1rsmvh6by2066qm4hlgvjwmigggy"))))
(build-system python-build-system)
(arguments
`(#:phases
(modify-phases %standard-phases
(add-after 'unpack 'fix-prefix-detection
(lambda _
(substitute* "setup.py"
(("'--prefix' in sys\\.argv")
"len([x.startswith('--prefix=') for x in sys.argv]) > 0"))
#t))
(add-before 'build 'setenv-PATH
(lambda _
(setenv "PYTHONPATH" (string-append "lib:" (getenv "PYTHONPATH")))
@ -4096,7 +4136,7 @@ (define-public nmrpflash
(method git-fetch)
(uri
(git-reference
(url "https://github.com/jclehner/nmrpflash.git")
(url "https://github.com/jclehner/nmrpflash")
(commit (string-append "v" version))))
(sha256
(base32 "1fdjrxhjs96rdclbkld57xarf592slhkp79h46z833npxpn12ck1"))
@ -4127,3 +4167,61 @@ (define-public nmrpflash
R8000, R8500, WNDR3800, but is likely to be compatible with many other
Netgear devices.")
(license license:gpl3+)))
(define-public atop
(package
(name "atop")
(version "2.5.0")
(source (origin
(method url-fetch)
(uri (string-append "https://www.atoptool.nl/download/atop-"
version ".tar.gz"))
(sha256
(base32
"0crzz4i2nabyh7d6xg7fvl65qls87nbca5ihidp3nijhrrbi14ab"))))
(build-system gnu-build-system)
(arguments
`(#:tests? #f ; no test suite
#:make-flags
(list (string-append "CC=" ,(cc-for-target))
;; The installer requires a choice between systemd or SysV.
"systemdinstall"
(string-append "DESTDIR=" (assoc-ref %outputs "out"))
(string-append "BINPATH=/bin")
(string-append "SBINPATH=/sbin")
(string-append "SYSDPATH=/etc/systemd/system")
(string-append "PMPATHD=/etc/systemd/system-sleep")
(string-append "MAN1PATH=/share/man/man1")
(string-append "MAN5PATH=/share/man/man5")
(string-append "MAN8PATH=/share/man/man8")
;; Or else it tries to create /var/log/atop...
(string-append "LOGPATH="))
#:phases
(modify-phases %standard-phases
(delete 'configure) ; No ./configure script
(add-before 'build 'patch-build
(lambda* (#:key outputs #:allow-other-keys)
(substitute* "Makefile"
;; We don't need to chown things in the build environment.
(("chown.*$") "")
;; We can't toggle the setuid bit in the build environment.
(("chmod 04711") "chmod 0711")
;; Otherwise, it creates a blank configuration file as a "default".
(("touch.*DEFPATH)/atop") "")
(("chmod.*DEFPATH)/atop") ""))
#t)))))
(inputs
`(("ncurses" ,ncurses)
("python" ,python-wrapper) ; for `atopgpud`
("zlib" ,zlib)))
(home-page "https://www.atoptool.nl/")
(synopsis "Linux performance monitoring console")
(description "Atop is an ASCII full-screen performance monitor for Linux
that is capable of reporting the activity of all processes (even processes have
finished during the monitoring interval), daily logging of system and process
activity for long-term analysis, highlighting overloaded system resources by
using colors, etc. At regular intervals, it shows system-level activity related
to the CPU, memory, swap, disks (including LVM) and network layers, and for
every process (and thread) it shows e.g. the CPU utilization, memory growth,
disk utilization, priority, username, state, and exit code.")
(license license:gpl2+)))

View file

@ -50,7 +50,7 @@ (define-public zxing-cpp
(method git-fetch)
(uri
(git-reference
(url "https://github.com/nu-book/zxing-cpp.git")
(url "https://github.com/nu-book/zxing-cpp")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256

View file

@ -234,7 +234,7 @@ (define-public python-fpylll
(define-public pari-gp
(package
(name "pari-gp")
(version "2.11.4")
(version "2.13.0")
(source (origin
(method url-fetch)
(uri (string-append
@ -242,7 +242,7 @@ (define-public pari-gp
version ".tar.gz"))
(sha256
(base32
"070bjw4kg7r6lqs1hfs08n5fmjv90cpwflp3wr04hbrmyz28zj5z"))))
"14xs90wrw8mbdx08hxlbhiahp6kgjq6yh27zjw7fvhfjx5nr84f8"))))
(build-system gnu-build-system)
(native-inputs
`(("texlive" ,(texlive-union
@ -355,7 +355,7 @@ (define-public cmh
(define-public giac
(package
(name "giac")
(version "1.6.0-25")
(version "1.6.0-31")
(source
(origin
(method url-fetch)
@ -367,7 +367,7 @@ (define-public giac
"~parisse/debian/dists/stable/main/source/"
"giac_" version ".tar.gz"))
(sha256
(base32 "11kik2csdg9wy0npiih21kaag0nc89i9ldgk7ak7gvf9ycddm6mh"))))
(base32 "1dr1y88sx2gzldn0zl6p8b1ngjjcmh89iv4kzyhi2cf74j3yw85m"))))
(build-system gnu-build-system)
(arguments
`(#:modules ((ice-9 ftw)
@ -1005,16 +1005,20 @@ (define-public symengine
(define-public eigen
(package
(name "eigen")
(version "3.3.7")
(version "3.3.8")
(source (origin
(method url-fetch)
(uri (string-append "https://bitbucket.org/eigen/eigen/get/"
version ".tar.bz2"))
(uri (list
(string-append "https://bitbucket.org/eigen/eigen/get/"
version ".tar.bz2")
(string-append "mirror://debian/pool/main/e/eigen3/eigen3_"
version ".orig.tar.bz2")))
(sha256
(base32
"1km3fyfzyqfdvmnl79drps3fjwnz3zbh0c7l34mfbqyvvs8cy4wz"))
"1vxrsncfnkyq6gwxpsannpryp12mk7lc8f42ybvz3saf7icwc582"))
(file-name (string-append name "-" version ".tar.bz2"))
(patches (search-patches "eigen-stabilise-sparseqr-test.patch"))
(patches (search-patches "eigen-remove-openmp-error-counting.patch"
"eigen-stabilise-sparseqr-test.patch"))
(modules '((guix build utils)))
(snippet
;; There are 3 test failures in the "unsupported" directory,
@ -1089,7 +1093,7 @@ (define-public xtensor
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/QuantStack/xtensor")
(url "https://github.com/xtensor-stack/xtensor")
(commit version)))
(sha256
(base32
@ -1103,7 +1107,7 @@ (define-public xtensor
`(#:configure-flags
'("-DBUILD_TESTS=ON")
#:test-target "xtest"))
(home-page "https://quantstack.net/xtensor")
(home-page "https://xtensor.readthedocs.io/en/latest/")
(synopsis "C++ tensors with broadcasting and lazy computing")
(description "xtensor is a C++ library meant for numerical analysis with
multi-dimensional array expressions.

View file

@ -2,6 +2,7 @@
;;; Copyright © 2015, 2017 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2018, 2019, 2020 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2019 Pkill -9 <pkill9@runbox.com>
;;; Copyright © 2020 Vinicius Monego <monego@posteo.net>
;;;
;;; This file is part of GNU Guix.
;;;
@ -27,19 +28,30 @@ (define-module (gnu packages animation)
#:use-module (guix build-system gnu)
#:use-module (gnu packages)
#:use-module (gnu packages algebra)
#:use-module (gnu packages autotools)
#:use-module (gnu packages boost)
#:use-module (gnu packages compression)
#:use-module (gnu packages curl)
#:use-module (gnu packages dejagnu)
#:use-module (gnu packages fontutils)
#:use-module (gnu packages gettext)
#:use-module (gnu packages gl)
#:use-module (gnu packages glib)
#:use-module (gnu packages gnome)
#:use-module (gnu packages graphics)
#:use-module (gnu packages gtk)
#:use-module (gnu packages image)
#:use-module (gnu packages imagemagick)
#:use-module (gnu packages jemalloc)
#:use-module (gnu packages perl)
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages pulseaudio)
#:use-module (gnu packages python)
#:use-module (gnu packages qt)
#:use-module (gnu packages video))
#:use-module (gnu packages sdl)
#:use-module (gnu packages tls)
#:use-module (gnu packages video)
#:use-module (gnu packages xiph))
;; ETL, synfig, and Synfig Studio are updated in tandem.
(define synfig-version "1.2.2")
@ -192,6 +204,89 @@ (define-public synfigstudio
contains the graphical user interface for synfig.")
(license license:gpl3+)))
;; This package provides a standalone (no browser plugin) version of Gnash.
(define-public gnash
;; The last tagged release of Gnash was in 2013.
(let ((commit "583ccbc1275c7701dc4843ec12142ff86bb305b4")
(revision "0"))
(package
(name "gnash")
(version (git-version "0.8.11" revision commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://git.savannah.gnu.org/git/gnash.git/")
(commit commit)))
(file-name (git-file-name name version))
(patches (search-patches "gnash-fix-giflib-version.patch"))
(sha256
(base32 "0fh0bljn0i6ypyh6l99afi855p7ki7lm869nq1qj6k8hrrwhmfry"))))
(build-system gnu-build-system)
(arguments
`(#:configure-flags
(list "--disable-static"
;; Plugins are based on XULRunner and NPAPI only. Disable.
"--disable-plugins"
"--enable-gui=gtk"
"--enable-media=ffmpeg"
(string-append "--with-boost-incl="
(assoc-ref %build-inputs "boost") "/include")
(string-append "--with-boost-lib="
(assoc-ref %build-inputs "boost") "/lib")
(string-append "--with-ffmpeg-incl="
(assoc-ref %build-inputs "ffmpeg")
"/include/libavcodec")
(string-append "--with-speex-incl="
(assoc-ref %build-inputs "speex") "/include")
(string-append "--with-jemalloc-incl="
(assoc-ref %build-inputs "jemalloc")
"/include/jemalloc")
(string-append "--with-speex-lib="
(assoc-ref %build-inputs "speex") "/lib")
(string-append "--with-jpeg-incl="
(assoc-ref %build-inputs "libjpeg") "/include")
(string-append "--with-zlib-incl="
(assoc-ref %build-inputs "zlib") "/include")
(string-append "--with-png-incl="
(assoc-ref %build-inputs "libpng")
"/include"))))
(native-inputs
`(("autoconf" ,autoconf)
("automake" ,automake)
("dejagnu" ,dejagnu) ;for tests
("gettext" ,gettext-minimal)
("libtool" ,libtool)
("perl" ,perl)
("pkg-config" ,pkg-config)
("python" ,python-wrapper)))
(inputs
`(("agg" ,agg)
("atk" ,atk)
("boost" ,boost)
("curl" ,curl)
("ffmpeg" ,ffmpeg-2.8)
("freeglut" ,freeglut)
("gconf" ,gconf)
("giflib" ,giflib)
("glib" ,glib)
("gtk+" ,gtk+-2)
("gtkglext" ,gtkglext)
("jemalloc" ,jemalloc)
("libjpeg" ,libjpeg-turbo)
("libltdl" ,libltdl)
("libpng" ,libpng)
("pangox-compat" ,pangox-compat)
("sdl" ,sdl)
("speex" ,speex)))
(synopsis "Flash movie player")
(description
"Gnash is a Flash movie player. It supports SWF version v7 and some
of v8 and v9. It is possible to configure Gnash to use several different
audio or video backends, ensuring good performance.")
(home-page "https://www.gnu.org/software/gnash/")
(license license:gpl3+))))
(define-public papagayo
(let ((commit "e143684b30e59fe4a554f965cb655d23cbe93ee7")
(revision "1"))

View file

@ -2,7 +2,7 @@
;;; Copyright © 2013, 2014, 2015, 2017, 2018, 2019, 2020 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2015, 2016 Alex Kost <alezost@gmail.com>
;;; Copyright © 2016 John Darrington <jmd@gnu.org>
;;; Copyright © 2016, 2017, 2019 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2016, 2017, 2019, 2020 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2016 Christopher Andersson <christopher@8bits.nu>
;;; Copyright © 2016 Theodoros Foradis <theodoros@foradis.org>
;;; Copyright © 2016, 2017, 2019 Tobias Geerinckx-Rice <me@tobias.gr>
@ -11,6 +11,7 @@
;;; Copyright © 2020 Marcin Karpezo <sirmacik@wioo.waw.pl>
;;; Copyright © 2020 Jonathan Brielmaier <jonathan.brielmaier@web.de>
;;; Copyright © 2020 Jakub Kądziołka <kuba@kadziolka.net>
;;; Copyright © 2020 Noah Landis <noahlandis@posteo.net>
;;;
;;; This file is part of GNU Guix.
;;;
@ -170,6 +171,13 @@ (define-public aspell-dict-ca
(hash (content-hash sha256))))
(home-page "https://www.softcatala.org/pub/softcatala/aspell/"))))
(define-public aspell-dict-cs
(aspell-dictionary "cs" "Czech"
#:version "20040614-1"
#:sha256
(base32
"0rihj4hsw96pd9casvmpvw3r8040pfa28p1h73x4vyn20zwr3h01")))
(define-public aspell-dict-de
(aspell-dictionary "de" "German"
#:version "20161207-7-0"
@ -275,6 +283,7 @@ (define-public aspell-dict-it
(define-public aspell-dict-mi
(aspell-dictionary "mi" "Maori"
#:version "0.50-0"
#:prefix "aspell-"
#:sha256
(base32
"12bxplpd348yx8d2q8qvahi9dlp7qf28qmanzhziwc7np8rixvmy")))
@ -290,6 +299,7 @@ (define-public aspell-dict-nl
(define-public aspell-dict-nn
(aspell-dictionary "nn" "Norwegian Nynorsk"
#:version "0.50.1-1"
#:prefix "aspell-"
#:sha256
(base32
"0w2k5l5rbqpliripgqwiqixz5ghnjf7i9ggbrc4ly4vy1ia10rmc")))
@ -297,6 +307,7 @@ (define-public aspell-dict-nn
(define-public aspell-dict-pl
(aspell-dictionary "pl" "Polish"
#:version "0.51-0"
#:prefix "aspell-"
#:sha256
(base32
"1a3ccji6k5gys7l3ilr2lh5pzxgzb7ipc5vb737svl6nqgdy8757")))
@ -363,8 +374,8 @@ (define* (aspell-word-list language synopsis
(source (origin
(method url-fetch)
(uri (string-append
"http://downloads.sourceforge.net/wordlist/scowl-"
version ".tar.gz"))
"mirror://sourceforge/wordlist/SCOWL/"
version "/scowl-" version ".tar.gz"))
(sha256
(base32
"11lkrnhwrf5mvrrq45k4mads3n9aswgac8dc25ba61c75alxb5rs"))))

View file

@ -2,7 +2,7 @@
;;; Copyright © 2016 Jan Nieuwenhuizen <janneke@gnu.org>
;;; Copyright © 2013, 2015 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2013 Andreas Enge <andreas@enge.fr>
;;; Copyright © 2016 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2016, 2020 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2017, 2018, 2019, 2020 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2019 Guy Fleury Iteriteka <hoonandon@gmail.com>
;;; Copyright © 2019 Andy Tai <atai@atai.org>
@ -51,7 +51,7 @@ (define-module (gnu packages assembly)
#:use-module (gnu packages shells)
#:use-module (gnu packages xml)
#:use-module ((guix utils)
#:select (%current-system)))
#:select (%current-system cc-for-target)))
(define-public nasm
(package
@ -265,7 +265,7 @@ (define-public rgbds
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/rednex/rgbds")
(url "https://github.com/gbdev/rgbds")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
@ -276,13 +276,21 @@ (define-public rgbds
`(#:phases
(modify-phases %standard-phases
(delete 'configure)
(add-after 'unpack 'patch-pkg-config
(lambda _
(substitute* "Makefile"
(("pkg-config")
(or (which "pkg-config")
(string-append ,(%current-target-system)
"-pkg-config"))))
#t))
(replace 'check
(lambda _
(with-directory-excursion "test/asm"
(invoke "./test.sh"))
(with-directory-excursion "test/link"
(invoke "./test.sh")))))
#:make-flags `("CC=gcc"
#:make-flags `(,(string-append "CC=" ,(cc-for-target))
,(string-append "PREFIX="
(assoc-ref %outputs "out")))))
(native-inputs
@ -292,7 +300,7 @@ (define-public rgbds
("util-linux" ,util-linux)))
(inputs
`(("libpng" ,libpng)))
(home-page "https://github.com/rednex/rgbds")
(home-page "https://github.com/gbdev/rgbds")
(synopsis "Rednex Game Boy Development System")
(description
"RGBDS (Rednex Game Boy Development System) is an assembler/linker
@ -436,7 +444,7 @@ (define-public intel-xed
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/intelxed/mbuild.git")
(url "https://github.com/intelxed/mbuild")
(commit "5304b94361fccd830c0e2417535a866b79c1c297")))
(sha256
(base32

View file

@ -4,7 +4,7 @@
;;; Copyright © 2015 Andreas Enge <andreas@enge.fr>
;;; Copyright © 2015 Alex Kost <alezost@gmail.com>
;;; Copyright © 2015, 2016 Mark H Weaver <mhw@netris.org>
;;; Copyright © 2016, 2017, 2018, 2019 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2016, 2017, 2018, 2019, 2020 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2016, 2017 Alex Griffin <a@ajgrf.com>
;;; Copyright © 2016 Nikita <nikita@n0.is>
;;; Copyright © 2016 Lukas Gradl <lgradl@openmailbox.org>
@ -58,6 +58,7 @@ (define-module (gnu packages audio)
#:use-module (gnu packages backup)
#:use-module (gnu packages base)
#:use-module (gnu packages bison)
#:use-module (gnu packages build-tools)
#:use-module (gnu packages boost)
#:use-module (gnu packages check)
#:use-module (gnu packages compression)
@ -140,7 +141,7 @@ (define-public opensles
(method git-fetch)
(uri
(git-reference
(url "https://github.com/KhronosGroup/OpenSL-ES-Registry.git")
(url "https://github.com/KhronosGroup/OpenSL-ES-Registry")
(commit "ea5104bf37bf525c25e6ae2386586048179d0fda")))
(file-name (git-file-name name version))
(sha256
@ -202,7 +203,7 @@ (define-public wildmidi
(method git-fetch)
(uri
(git-reference
(url "https://github.com/Mindwerks/wildmidi.git")
(url "https://github.com/Mindwerks/wildmidi")
(commit (string-append name "-" version))))
(file-name (git-file-name name version))
(sha256
@ -277,7 +278,7 @@ (define-public tinyalsa
(method git-fetch)
(uri
(git-reference
(url "https://github.com/tinyalsa/tinyalsa.git")
(url "https://github.com/tinyalsa/tinyalsa")
(commit version)))
(file-name (git-file-name name version))
(sha256
@ -300,7 +301,7 @@ (define-public tinyalsa
(define-public libopenmpt
(package
(name "libopenmpt")
(version "0.5.2")
(version "0.5.3")
(source
(origin
(method url-fetch)
@ -308,7 +309,7 @@ (define-public libopenmpt
(string-append "https://download.openmpt.org/archive/libopenmpt/src/"
"libopenmpt-" version "+release.autotools.tar.gz"))
(sha256
(base32 "1cwpc4j90dpxa2siia68rg9qwwm2xk6bhxnslfjj364507jy6s4l"))))
(base32 "1f155yf5v57dwhzb7z0kh67lckr3yq4x8040dm54qgbxw582la77"))))
(build-system gnu-build-system)
(arguments
`(#:configure-flags
@ -862,18 +863,30 @@ (define-public audiofile
"audiofile-Fix-index-overflow-in-IMA.cpp.patch"
;; CVE-2017-6827, CVE-2017-6828, CVE-2017-6832, CVE-2017-6835,
;; CVE-2017-6837:
"audiofile-Check-the-number-of-coefficients.patch"
"audiofile-check-number-of-coefficients.patch"
;; CVE-2017-6839:
"audiofile-Fix-overflow-in-MSADPCM-decodeSam.patch"
"audiofile-overflow-in-MSADPCM.patch"
;; CVE-2017-6830, CVE-2017-6834, CVE-2017-6836, CVE-2017-6838:
"audiofile-Fix-multiply-overflow-sfconvert.patch"
"audiofile-signature-of-multiplyCheckOverflow.patch"
"audiofile-multiply-overflow.patch"
"audiofile-function-signature.patch"
;; CVE-2017-6831:
"audiofile-Fail-on-error-in-parseFormat.patch"
;; CVE-2017-6833:
"audiofile-division-by-zero-BlockCodec-runPull.patch"
"audiofile-division-by-zero.patch"
"audiofile-CVE-2018-13440.patch"
"audiofile-CVE-2018-17095.patch"))))
(properties `((lint-hidden-cve . ("CVE-2017-6829"
"CVE-2017-6827" "CVE-2017-6828"
"CVE-2017-6832" "CVE-2017-6835"
"CVE-2017-6837"
"CVE-2017-6839"
"CVE-2017-6830" "CVE-2017-6834"
"CVE-2017-6836" "CVE-2017-6838"
"CVE-2017-6831" "CVE-2017-6833"))))
(build-system gnu-build-system)
(inputs
`(("alsa-lib" ,alsa-lib)))
@ -2926,7 +2939,7 @@ (define-public resample
(description "This package contains the @command{resample} and
@command{windowfilter} command line utilities. The @command{resample} command
allows changing the sampling rate of a sound file, while the
@command{windowfilter} command allows to design Finite Impulse Response (FIR)
@command{windowfilter} command allows designing Finite Impulse Response (FIR)
filters using the so-called @emph{window method}.")
(home-page "https://ccrma.stanford.edu/~jos/resample/Free_Resampling_Software.html")
(license license:lgpl2.1+)))
@ -3510,8 +3523,11 @@ (define-public qsynth
(source
(origin
(method url-fetch)
(uri (string-append "mirror://sourceforge/qsynth/qsynth/" version
"/qsynth-" version ".tar.gz"))
(uri (list
(string-append "mirror://sourceforge/qsynth/qsynth/" version
"/qsynth-" version ".tar.gz")
(string-append "mirror://sourceforge/qsynth/qsynth (attic)"
"/qsynth-" version ".tar.gz")))
(sha256
(base32 "18im4w8agj60nkppwbkxqnhpp13z5li3w30kklv4lgs20rvgbvl6"))))
(build-system gnu-build-system)
@ -3790,8 +3806,11 @@ (define-public shntool
(version "3.0.10")
(source (origin
(method url-fetch)
(uri (string-append "http://etree.org/shnutils/shntool/dist/src/"
"shntool-" version ".tar.gz"))
(uri (list
(string-append "http://etree.org/shnutils/shntool/dist/src/"
"shntool-" version ".tar.gz")
(string-append "mirror://debian/pool/main/s/shntool/shntool_"
version ".orig.tar.gz")))
(sha256
(base32
"00i1rbjaaws3drkhiczaign3lnbhr161b7rbnjr8z83w8yn2wc3l"))))
@ -3822,9 +3841,9 @@ (define-public dcadec
(build-system gnu-build-system)
(arguments
;; Test files are missing: https://github.com/foo86/dcadec/issues/53
'(#:tests? #f
`(#:tests? #f
#:make-flags
(list "CC=gcc"
(list (string-append "CC=" ,(cc-for-target))
;; Build shared library.
"CONFIG_SHARED=1"
(string-append "PREFIX=" (assoc-ref %outputs "out"))
@ -3899,8 +3918,8 @@ (define-public filteraudio
"0hbb290n3wb23f2k692a6bhc23nnqmxqi9sc9j15pnya8wifw64g"))))
(build-system gnu-build-system)
(arguments
'(#:make-flags (list (string-append "PREFIX=" %output)
"CC=gcc")
`(#:make-flags (list (string-append "PREFIX=" %output)
(string-append "CC=" ,(cc-for-target)))
#:tests? #f ; No tests
#:phases
(modify-phases %standard-phases
@ -4068,14 +4087,14 @@ (define-public bluez-alsa
(define-public snd
(package
(name "snd")
(version "20.7")
(version "20.9")
(source (origin
(method url-fetch)
(uri (string-append "ftp://ccrma-ftp.stanford.edu/pub/Lisp/"
"snd-" version ".tar.gz"))
(sha256
(base32
"1kd422krz8ln4m8g3p14wfplcq8lgpzly9297rpbvyc94dc6sdwj"))))
"0jxkycxn6jcbs4gklk9sk3gfr0y26dz1m71nxah9rnx80wnzj6hr"))))
(build-system glib-or-gtk-build-system)
(arguments
`(#:tests? #f ; no tests
@ -4695,7 +4714,7 @@ (define-public ecasound
(define-public libaudec
(package
(name "libaudec")
(version "0.2.3")
(version "0.2.4")
(source
(origin
(method git-fetch)
@ -4705,11 +4724,13 @@ (define-public libaudec
(file-name (git-file-name name version))
(sha256
(base32
"04hw61db8wscj28qjyiaiafx8xl87njgmvqszxyhs4gmg8xgjip7"))))
"1570m2dfia17dbkhd2qhx8jjihrpm7g8nnyg6n4wif4vv229s7dz"))))
(build-system meson-build-system)
(arguments
;; Compile tests.
`(#:configure-flags `("-Dtests=true")))
`(#:meson ,meson-0.55
#:configure-flags
;; Build the tests.
`("-Dtests=true")))
(inputs
`(("libsamplerate" ,libsamplerate)
("libsndfile" ,libsndfile)))

View file

@ -1,5 +1,5 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2018, 2020 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2019 Ricardo Wurmus <rekado@elephly.net>
;;;
;;; This file is part of GNU Guix.
@ -33,26 +33,14 @@ (define-module (gnu packages authentication)
(define-public oath-toolkit
(package
(name "oath-toolkit")
(version "2.6.2")
(version "2.6.4")
(source
(origin
(method url-fetch)
(uri (string-append "https://download.savannah.nongnu.org/releases/"
name "/" name "-" version ".tar.gz"))
(patches
(append (search-patches "oath-toolkit-glibc-compat.patch")
(list (origin
;; This huge commit updates gnulib for GCC 7 compatibility.
(method url-fetch)
(uri (string-append
"https://gitlab.com/oath-toolkit/oath-toolkit/commit/"
"2fffce2a471f74a585939c84cce16ef3015e5d3d.diff"))
(file-name "oath-toolkit-update-gnulib.patch")
(sha256
(base32
"088c9s4ay1b54bjqc4mwfs5l3f6357zj5vpw771zlq5g4addd4s0"))))))
(sha256
(base32 "182ah8vfbg0yhv6mh1b6ap944d0na6x7lpfkwkmzb6jl9gx4cd5h"))))
(base32 "116na9nncpwshl3ww8w3llzwk49igilplxcjy1k6jzl3mmg2bimz"))))
(build-system gnu-build-system)
(arguments
;; TODO --enable-pskc causes xmlsec-related test suite failures.

View file

@ -1,6 +1,6 @@
#
# Automatically generated file; DO NOT EDIT.
# Linux/arm 5.8.0-gnu Kernel Configuration
# Linux/arm 5.9.2 Kernel Configuration
#
CONFIG_CC_VERSION_TEXT="gcc (Debian 8.3.0-6) 8.3.0"
CONFIG_CC_IS_GCC=y
@ -173,6 +173,7 @@ CONFIG_RD_LZMA=y
CONFIG_RD_XZ=y
CONFIG_RD_LZO=y
CONFIG_RD_LZ4=y
CONFIG_RD_ZSTD=y
CONFIG_BOOT_CONFIG=y
CONFIG_CC_OPTIMIZE_FOR_PERFORMANCE=y
# CONFIG_CC_OPTIMIZE_FOR_SIZE is not set
@ -231,6 +232,7 @@ CONFIG_SLAB=y
# CONFIG_SLOB is not set
CONFIG_SLAB_MERGE_DEFAULT=y
CONFIG_SLAB_FREELIST_RANDOM=y
CONFIG_SLAB_FREELIST_HARDENED=y
CONFIG_SHUFFLE_PAGE_ALLOCATOR=y
CONFIG_SYSTEM_DATA_VERIFICATION=y
CONFIG_PROFILING=y
@ -393,6 +395,9 @@ CONFIG_SOC_IMX6Q=y
# CONFIG_ARCH_MESON is not set
# CONFIG_ARCH_MILBEAUT is not set
# CONFIG_ARCH_MMP is not set
CONFIG_ARCH_MSTARV7=y
CONFIG_MACH_INFINITY=y
CONFIG_MACH_MERCURY=y
CONFIG_ARCH_MVEBU=y
CONFIG_MACH_MVEBU_ANY=y
CONFIG_MACH_MVEBU_V7=y
@ -779,6 +784,7 @@ CONFIG_RESET_ATTACK_MITIGATION=y
CONFIG_ARM_PSCI_FW=y
CONFIG_HAVE_ARM_SMCCC=y
CONFIG_HAVE_ARM_SMCCC_DISCOVERY=y
CONFIG_ARM_SMCCC_SOC_ID=y
#
# Tegra firmware driver
@ -833,7 +839,6 @@ CONFIG_ARCH_WANT_IPC_PARSE_VERSION=y
CONFIG_HAVE_ARCH_SECCOMP_FILTER=y
CONFIG_SECCOMP_FILTER=y
CONFIG_HAVE_STACKPROTECTOR=y
CONFIG_CC_HAS_STACKPROTECTOR_NONE=y
CONFIG_STACKPROTECTOR=y
CONFIG_STACKPROTECTOR_STRONG=y
CONFIG_HAVE_CONTEXT_TRACKING=y
@ -846,7 +851,6 @@ CONFIG_HAVE_ARCH_MMAP_RND_BITS=y
CONFIG_HAVE_EXIT_THREAD=y
CONFIG_ARCH_MMAP_RND_BITS=8
CONFIG_ARCH_WANT_DEFAULT_TOPDOWN_MMAP_LAYOUT=y
CONFIG_HAVE_COPY_THREAD_TLS=y
CONFIG_CLONE_BACKWARDS=y
CONFIG_OLD_SIGSUSPEND3=y
CONFIG_OLD_SIGACTION=y
@ -1146,8 +1150,8 @@ CONFIG_IPV6_PIMSM_V2=y
# CONFIG_IPV6_RPL_LWTUNNEL is not set
# CONFIG_NETLABEL is not set
CONFIG_MPTCP=y
CONFIG_INET_MPTCP_DIAG=m
CONFIG_MPTCP_IPV6=y
# CONFIG_MPTCP_HMAC_TEST is not set
CONFIG_NETWORK_SECMARK=y
CONFIG_NET_PTP_CLASSIFY=y
# CONFIG_NETWORK_PHY_TIMESTAMPING is not set
@ -1570,6 +1574,7 @@ CONFIG_NET_DSA_TAG_DSA=m
CONFIG_NET_DSA_TAG_EDSA=m
CONFIG_NET_DSA_TAG_MTK=m
CONFIG_NET_DSA_TAG_KSZ=m
CONFIG_NET_DSA_TAG_RTL4_A=m
CONFIG_NET_DSA_TAG_OCELOT=m
CONFIG_NET_DSA_TAG_QCA=m
CONFIG_NET_DSA_TAG_LAN9303=m
@ -2017,6 +2022,7 @@ CONFIG_PCIE_CADENCE=y
CONFIG_PCIE_CADENCE_HOST=y
CONFIG_PCIE_CADENCE_PLAT=y
CONFIG_PCIE_CADENCE_PLAT_HOST=y
# CONFIG_PCI_J721E_HOST is not set
# end of Cadence PCIe controllers support
# end of PCI controller drivers
@ -2187,6 +2193,9 @@ CONFIG_MTD_SST25L=m
# CONFIG_MTD_DOCG3 is not set
# end of Self-contained MTD device drivers
#
# NAND
#
CONFIG_MTD_NAND_CORE=m
CONFIG_MTD_ONENAND=y
CONFIG_MTD_ONENAND_VERIFY_WRITE=y
@ -2229,6 +2238,7 @@ CONFIG_MTD_NAND_NANDSIM=m
CONFIG_MTD_NAND_RICOH=m
# CONFIG_MTD_NAND_DISKONCHIP is not set
CONFIG_MTD_SPI_NAND=m
# end of NAND
#
# LPDDR & LPDDR2 PCM memory drivers
@ -2240,7 +2250,6 @@ CONFIG_MTD_QINFO_PROBE=m
CONFIG_MTD_SPI_NOR=m
CONFIG_MTD_SPI_NOR_USE_4K_SECTORS=y
# CONFIG_SPI_CADENCE_QUADSPI is not set
CONFIG_MTD_UBI=m
CONFIG_MTD_UBI_WL_THRESHOLD=4096
CONFIG_MTD_UBI_BEB_LIMIT=20
@ -2309,6 +2318,7 @@ CONFIG_NVME_RDMA=m
# CONFIG_NVME_FC is not set
# CONFIG_NVME_TCP is not set
CONFIG_NVME_TARGET=m
# CONFIG_NVME_TARGET_PASSTHRU is not set
# CONFIG_NVME_TARGET_LOOP is not set
CONFIG_NVME_TARGET_RDMA=m
# CONFIG_NVME_TARGET_FC is not set
@ -2463,6 +2473,7 @@ CONFIG_SCSI_UFSHCD_PCI=m
# CONFIG_SCSI_UFS_DWC_TC_PCI is not set
# CONFIG_SCSI_UFSHCD_PLATFORM is not set
# CONFIG_SCSI_UFS_BSG is not set
CONFIG_SCSI_UFS_CRYPTO=y
# CONFIG_SCSI_HPTIOP is not set
# CONFIG_SCSI_MYRB is not set
# CONFIG_SCSI_MYRS is not set
@ -2623,7 +2634,7 @@ CONFIG_MD_FAULTY=m
CONFIG_BCACHE=m
# CONFIG_BCACHE_DEBUG is not set
# CONFIG_BCACHE_CLOSURES_DEBUG is not set
# CONFIG_BCACHE_ASYNC_REGISTRAION is not set
# CONFIG_BCACHE_ASYNC_REGISTRATION is not set
CONFIG_BLK_DEV_DM_BUILTIN=y
CONFIG_BLK_DEV_DM=m
# CONFIG_DM_DEBUG is not set
@ -2953,8 +2964,8 @@ CONFIG_ENC28J60=m
# CONFIG_ENCX24J600 is not set
# CONFIG_LAN743X is not set
CONFIG_NET_VENDOR_MICROSEMI=y
CONFIG_MSCC_OCELOT_SWITCH_LIB=m
CONFIG_MSCC_OCELOT_SWITCH=m
CONFIG_MSCC_OCELOT_SWITCH_OCELOT=m
CONFIG_NET_VENDOR_MYRI=y
CONFIG_MYRI10GE=m
CONFIG_FEALNX=m
@ -3075,6 +3086,7 @@ CONFIG_SKFP=m
# CONFIG_HIPPI is not set
CONFIG_MDIO_DEVICE=y
CONFIG_MDIO_BUS=y
CONFIG_MDIO_DEVRES=y
CONFIG_MDIO_BCM_UNIMAC=m
# CONFIG_MDIO_BITBANG is not set
CONFIG_MDIO_BUS_MUX=m
@ -3370,7 +3382,11 @@ CONFIG_MT7601U=m
# CONFIG_MT7603E is not set
# CONFIG_MT7615E is not set
# CONFIG_MT7663U is not set
# CONFIG_MT7663S is not set
# CONFIG_MT7915E is not set
CONFIG_WLAN_VENDOR_MICROCHIP=y
# CONFIG_WILC1000_SDIO is not set
# CONFIG_WILC1000_SPI is not set
CONFIG_WLAN_VENDOR_RALINK=y
CONFIG_RT2X00=m
CONFIG_RT2400PCI=m
@ -3807,6 +3823,7 @@ CONFIG_SERIAL_TEGRA=y
# CONFIG_SERIAL_MAX310X is not set
CONFIG_SERIAL_IMX=y
CONFIG_SERIAL_IMX_CONSOLE=y
CONFIG_SERIAL_IMX_EARLYCON=y
# CONFIG_SERIAL_UARTLITE is not set
CONFIG_SERIAL_CORE=y
CONFIG_SERIAL_CORE_CONSOLE=y
@ -3856,6 +3873,7 @@ CONFIG_VIRTIO_CONSOLE=m
# CONFIG_IPMI_HANDLER is not set
CONFIG_HW_RANDOM=m
# CONFIG_HW_RANDOM_TIMERIOMEM is not set
CONFIG_HW_RANDOM_BA431=m
CONFIG_HW_RANDOM_BCM2835=m
CONFIG_HW_RANDOM_IPROC_RNG200=m
CONFIG_HW_RANDOM_OMAP=m
@ -4007,6 +4025,7 @@ CONFIG_SPI_BCM2835AUX=m
CONFIG_SPI_BITBANG=y
CONFIG_SPI_BUTTERFLY=m
# CONFIG_SPI_CADENCE is not set
# CONFIG_SPI_CADENCE_QUADSPI is not set
# CONFIG_SPI_DESIGNWARE is not set
# CONFIG_SPI_FSL_LPSPI is not set
# CONFIG_SPI_FSL_QUADSPI is not set
@ -4048,6 +4067,7 @@ CONFIG_SPI_SPIDEV=y
# CONFIG_SPI_LOOPBACK_TEST is not set
# CONFIG_SPI_TLE62X0 is not set
# CONFIG_SPI_SLAVE is not set
CONFIG_SPI_DYNAMIC=y
# CONFIG_SPMI is not set
CONFIG_HSI=m
CONFIG_HSI_BOARDINFO=y
@ -4205,6 +4225,7 @@ CONFIG_GPIO_XILINX=m
# CONFIG_GPIO_MAX732X is not set
CONFIG_GPIO_PCA953X=m
CONFIG_GPIO_PCA953X_IRQ=y
CONFIG_GPIO_PCA9570=m
CONFIG_GPIO_PCF857X=m
# CONFIG_GPIO_TPIC2810 is not set
# CONFIG_GPIO_TS4900 is not set
@ -4300,6 +4321,7 @@ CONFIG_POWER_RESET_AS3722=y
# CONFIG_POWER_RESET_BRCMSTB is not set
CONFIG_POWER_RESET_GPIO=y
CONFIG_POWER_RESET_GPIO_RESTART=y
# CONFIG_POWER_RESET_LINKSTATION is not set
# CONFIG_POWER_RESET_LTC2952 is not set
# CONFIG_POWER_RESET_QNAP is not set
CONFIG_POWER_RESET_RESTART=y
@ -4353,6 +4375,7 @@ CONFIG_CHARGER_BQ2415X=m
# CONFIG_CHARGER_BQ24190 is not set
# CONFIG_CHARGER_BQ24257 is not set
# CONFIG_CHARGER_BQ24735 is not set
# CONFIG_CHARGER_BQ2515X is not set
# CONFIG_CHARGER_BQ25890 is not set
# CONFIG_CHARGER_SMB347 is not set
# CONFIG_BATTERY_GAUGE_LTC2941 is not set
@ -4390,6 +4413,7 @@ CONFIG_SENSORS_AXI_FAN_CONTROL=m
CONFIG_SENSORS_ARM_SCMI=m
# CONFIG_SENSORS_ASPEED is not set
CONFIG_SENSORS_ATXP1=m
CONFIG_SENSORS_CORSAIR_CPRO=m
CONFIG_SENSORS_DRIVETEMP=m
CONFIG_SENSORS_DS620=m
# CONFIG_SENSORS_DS1621 is not set
@ -4515,6 +4539,7 @@ CONFIG_SENSORS_W83L786NG=m
# CONFIG_SENSORS_W83627HF is not set
CONFIG_SENSORS_W83627EHF=m
CONFIG_THERMAL=y
CONFIG_THERMAL_NETLINK=y
# CONFIG_THERMAL_STATISTICS is not set
CONFIG_THERMAL_EMERGENCY_POWEROFF_DELAY_MS=0
CONFIG_THERMAL_HWMON=y
@ -4530,7 +4555,6 @@ CONFIG_THERMAL_GOV_STEP_WISE=y
# CONFIG_THERMAL_GOV_POWER_ALLOCATOR is not set
CONFIG_CPU_THERMAL=y
CONFIG_CPU_FREQ_THERMAL=y
# CONFIG_CLOCK_THERMAL is not set
# CONFIG_DEVFREQ_THERMAL is not set
# CONFIG_THERMAL_EMULATION is not set
# CONFIG_THERMAL_MMIO is not set
@ -4571,6 +4595,7 @@ CONFIG_TEGRA_SOCTHERM=y
# end of NVIDIA Tegra thermal drivers
# CONFIG_GENERIC_ADC_THERMAL is not set
CONFIG_KHADAS_MCU_FAN_THERMAL=m
CONFIG_WATCHDOG=y
CONFIG_WATCHDOG_CORE=y
# CONFIG_WATCHDOG_NOWAYOUT is not set
@ -4734,7 +4759,6 @@ CONFIG_MFD_SEC_CORE=y
# CONFIG_MFD_SI476X_CORE is not set
# CONFIG_MFD_SM501 is not set
# CONFIG_MFD_SKY81452 is not set
# CONFIG_MFD_SMSC is not set
# CONFIG_ABX500_CORE is not set
CONFIG_MFD_STMPE=y
@ -4792,6 +4816,7 @@ CONFIG_MFD_ROHM_BD70528=m
CONFIG_MFD_ROHM_BD71828=m
# CONFIG_MFD_STPMIC1 is not set
# CONFIG_MFD_STMFX is not set
CONFIG_MFD_KHADAS_MCU=m
CONFIG_MFD_VEXPRESS_SYSREG=y
# end of Multifunction device drivers
@ -4812,10 +4837,12 @@ CONFIG_REGULATOR_BD70528=m
CONFIG_REGULATOR_BD71828=m
CONFIG_REGULATOR_BD718XX=m
CONFIG_REGULATOR_BD9571MWV=m
CONFIG_REGULATOR_CROS_EC=m
CONFIG_REGULATOR_DA9052=m
# CONFIG_REGULATOR_DA9210 is not set
# CONFIG_REGULATOR_DA9211 is not set
CONFIG_REGULATOR_FAN53555=m
CONFIG_REGULATOR_FAN53880=m
CONFIG_REGULATOR_GPIO=m
# CONFIG_REGULATOR_ISL9305 is not set
# CONFIG_REGULATOR_ISL6271A is not set
@ -4844,6 +4871,7 @@ CONFIG_REGULATOR_MPQ7920=m
# CONFIG_REGULATOR_MT6311 is not set
CONFIG_REGULATOR_PALMAS=y
CONFIG_REGULATOR_PBIAS=m
CONFIG_REGULATOR_PCA9450=m
CONFIG_REGULATOR_PFUZE100=m
# CONFIG_REGULATOR_PV88060 is not set
# CONFIG_REGULATOR_PV88080 is not set
@ -4858,6 +4886,7 @@ CONFIG_REGULATOR_SLG51000=m
CONFIG_REGULATOR_TI_ABB=m
CONFIG_REGULATOR_SY8106A=m
CONFIG_REGULATOR_SY8824X=m
CONFIG_REGULATOR_SY8827N=m
# CONFIG_REGULATOR_TPS51632 is not set
# CONFIG_REGULATOR_TPS62360 is not set
# CONFIG_REGULATOR_TPS65023 is not set
@ -4904,10 +4933,12 @@ CONFIG_IR_SUNXI=m
# CONFIG_IR_SERIAL is not set
# CONFIG_IR_SIR is not set
CONFIG_RC_XBOX_DVD=m
CONFIG_IR_TOY=m
CONFIG_CEC_CORE=m
CONFIG_CEC_NOTIFIER=y
# CONFIG_MEDIA_CEC_RC is not set
CONFIG_MEDIA_CEC_SUPPORT=y
CONFIG_CEC_CH7322=m
CONFIG_CEC_CROS_EC=m
CONFIG_CEC_SAMSUNG_S5P=m
CONFIG_CEC_TEGRA=m
@ -5371,6 +5402,7 @@ CONFIG_VIDEO_TW9903=m
CONFIG_VIDEO_TW9906=m
CONFIG_VIDEO_TW9910=m
CONFIG_VIDEO_VPX3220=m
CONFIG_VIDEO_MAX9286=m
#
# Video and audio decoders
@ -5440,7 +5472,6 @@ CONFIG_VIDEO_OV2640=m
CONFIG_VIDEO_OV2659=m
CONFIG_VIDEO_OV2680=m
CONFIG_VIDEO_OV2685=m
CONFIG_VIDEO_OV2740=m
CONFIG_VIDEO_OV5640=m
CONFIG_VIDEO_OV5645=m
CONFIG_VIDEO_OV5647=m
@ -5470,6 +5501,7 @@ CONFIG_VIDEO_MT9V111=m
CONFIG_VIDEO_SR030PC30=m
CONFIG_VIDEO_NOON010PC30=m
CONFIG_VIDEO_M5MOLS=m
CONFIG_VIDEO_RDACM20=m
CONFIG_VIDEO_RJ54N1=m
CONFIG_VIDEO_S5K6AA=m
CONFIG_VIDEO_S5K6A3=m
@ -5486,6 +5518,7 @@ CONFIG_VIDEO_S5C73M3=m
CONFIG_VIDEO_AD5820=m
CONFIG_VIDEO_AK7375=m
CONFIG_VIDEO_DW9714=m
CONFIG_VIDEO_DW9768=m
CONFIG_VIDEO_DW9807_VCM=m
# end of Lens drivers
@ -5894,7 +5927,6 @@ CONFIG_DRM_PANEL_OSD_OSD101T2587_53TS=m
CONFIG_DRM_PANEL_RASPBERRYPI_TOUCHSCREEN=m
# CONFIG_DRM_PANEL_RAYDIUM_RM67191 is not set
# CONFIG_DRM_PANEL_RAYDIUM_RM68200 is not set
# CONFIG_DRM_PANEL_ROCKTECH_JH057N00900 is not set
# CONFIG_DRM_PANEL_RONBO_RB070D30 is not set
# CONFIG_DRM_PANEL_SAMSUNG_S6D16D0 is not set
# CONFIG_DRM_PANEL_SAMSUNG_S6E3HA2 is not set
@ -5907,6 +5939,7 @@ CONFIG_DRM_PANEL_SAMSUNG_S6E88A0_AMS452EF01=m
# CONFIG_DRM_PANEL_SHARP_LS037V7DW01 is not set
# CONFIG_DRM_PANEL_SHARP_LS043T1LE01 is not set
# CONFIG_DRM_PANEL_SITRONIX_ST7701 is not set
# CONFIG_DRM_PANEL_SITRONIX_ST7703 is not set
# CONFIG_DRM_PANEL_SITRONIX_ST7789V is not set
CONFIG_DRM_PANEL_SONY_ACX424AKP=m
# CONFIG_DRM_PANEL_SONY_ACX565AKM is not set
@ -6081,7 +6114,6 @@ CONFIG_FB_SIMPLE=y
#
# CONFIG_LCD_CLASS_DEVICE is not set
CONFIG_BACKLIGHT_CLASS_DEVICE=y
# CONFIG_BACKLIGHT_GENERIC is not set
CONFIG_BACKLIGHT_PWM=m
# CONFIG_BACKLIGHT_DA9052 is not set
CONFIG_BACKLIGHT_QCOM_WLED=m
@ -6238,6 +6270,7 @@ CONFIG_SND_VIRTUOSO=m
# HD-Audio
#
CONFIG_SND_HDA=m
CONFIG_SND_HDA_GENERIC_LEDS=y
# CONFIG_SND_HDA_INTEL is not set
CONFIG_SND_HDA_TEGRA=m
CONFIG_SND_HDA_HWDEP=y
@ -6374,6 +6407,11 @@ CONFIG_SND_SOC_TEGRA20_I2S=m
CONFIG_SND_SOC_TEGRA20_SPDIF=m
CONFIG_SND_SOC_TEGRA30_AHUB=m
CONFIG_SND_SOC_TEGRA30_I2S=m
# CONFIG_SND_SOC_TEGRA210_AHUB is not set
# CONFIG_SND_SOC_TEGRA210_DMIC is not set
# CONFIG_SND_SOC_TEGRA210_I2S is not set
# CONFIG_SND_SOC_TEGRA186_DSPK is not set
# CONFIG_SND_SOC_TEGRA210_ADMAIF is not set
CONFIG_SND_SOC_TEGRA_RT5640=m
CONFIG_SND_SOC_TEGRA_WM8753=m
CONFIG_SND_SOC_TEGRA_WM8903=m
@ -6477,7 +6515,8 @@ CONFIG_SND_SOC_MAX98090=m
# CONFIG_SND_SOC_MAX98504 is not set
# CONFIG_SND_SOC_MAX9867 is not set
# CONFIG_SND_SOC_MAX98927 is not set
# CONFIG_SND_SOC_MAX98373 is not set
CONFIG_SND_SOC_MAX98373=m
CONFIG_SND_SOC_MAX98373_I2C=m
# CONFIG_SND_SOC_MAX98390 is not set
# CONFIG_SND_SOC_MAX9860 is not set
# CONFIG_SND_SOC_MSM8916_WCD_DIGITAL is not set
@ -6742,8 +6781,8 @@ CONFIG_USB_ANNOUNCE_NEW_DEVICES=y
CONFIG_USB_DEFAULT_PERSIST=y
CONFIG_USB_DYNAMIC_MINORS=y
# CONFIG_USB_OTG is not set
# CONFIG_USB_OTG_WHITELIST is not set
# CONFIG_USB_OTG_BLACKLIST_HUB is not set
# CONFIG_USB_OTG_PRODUCTLIST is not set
# CONFIG_USB_OTG_DISABLE_EXTERNAL_HUB is not set
CONFIG_USB_LEDS_TRIGGER_USBPORT=m
CONFIG_USB_AUTOSUSPEND_DELAY=2
CONFIG_USB_MON=m
@ -7193,6 +7232,7 @@ CONFIG_MEMSTICK_REALTEK_USB=m
CONFIG_NEW_LEDS=y
CONFIG_LEDS_CLASS=y
# CONFIG_LEDS_CLASS_FLASH is not set
CONFIG_LEDS_CLASS_MULTICOLOR=m
# CONFIG_LEDS_BRIGHTNESS_HW_CHANGED is not set
#
@ -7204,6 +7244,7 @@ CONFIG_LEDS_CLASS=y
# CONFIG_LEDS_BCM6358 is not set
# CONFIG_LEDS_CR0014114 is not set
# CONFIG_LEDS_EL15203000 is not set
# CONFIG_LEDS_TURRIS_OMNIA is not set
# CONFIG_LEDS_LM3530 is not set
# CONFIG_LEDS_LM3532 is not set
# CONFIG_LEDS_LM3642 is not set
@ -7269,13 +7310,30 @@ CONFIG_LEDS_TRIGGER_CAMERA=m
CONFIG_LEDS_TRIGGER_PANIC=y
# CONFIG_LEDS_TRIGGER_NETDEV is not set
# CONFIG_LEDS_TRIGGER_PATTERN is not set
# CONFIG_LEDS_TRIGGER_AUDIO is not set
CONFIG_LEDS_TRIGGER_AUDIO=m
CONFIG_ACCESSIBILITY=y
CONFIG_A11Y_BRAILLE_CONSOLE=y
#
# Speakup console speech
#
CONFIG_SPEAKUP=m
CONFIG_SPEAKUP_SYNTH_ACNTSA=m
CONFIG_SPEAKUP_SYNTH_APOLLO=m
CONFIG_SPEAKUP_SYNTH_AUDPTR=m
CONFIG_SPEAKUP_SYNTH_BNS=m
CONFIG_SPEAKUP_SYNTH_DECTLK=m
CONFIG_SPEAKUP_SYNTH_DECEXT=m
CONFIG_SPEAKUP_SYNTH_LTLK=m
CONFIG_SPEAKUP_SYNTH_SOFT=m
CONFIG_SPEAKUP_SYNTH_SPKOUT=m
CONFIG_SPEAKUP_SYNTH_TXPRT=m
CONFIG_SPEAKUP_SYNTH_DUMMY=m
# end of Speakup console speech
CONFIG_INFINIBAND=m
CONFIG_INFINIBAND_USER_MAD=m
CONFIG_INFINIBAND_USER_ACCESS=m
# CONFIG_INFINIBAND_EXP_LEGACY_VERBS_NEW_UAPI is not set
CONFIG_INFINIBAND_USER_MEM=y
CONFIG_INFINIBAND_ON_DEMAND_PAGING=y
CONFIG_INFINIBAND_ADDR_TRANS=y
@ -7471,6 +7529,7 @@ CONFIG_MX3_IPU_IRQS=4
CONFIG_PL330_DMA=y
CONFIG_PLX_DMA=m
CONFIG_TEGRA20_APB_DMA=y
CONFIG_XILINX_ZYNQMP_DPDMA=m
# CONFIG_QCOM_HIDMA_MGMT is not set
# CONFIG_QCOM_HIDMA is not set
# CONFIG_DW_DMAC is not set
@ -7514,6 +7573,7 @@ CONFIG_UIO_NETX=m
# CONFIG_UIO_PRUSS is not set
CONFIG_UIO_MF624=m
# CONFIG_VFIO is not set
CONFIG_IRQ_BYPASS_MANAGER=m
CONFIG_VIRT_DRIVERS=y
CONFIG_VIRTIO=m
CONFIG_VIRTIO_MENU=y
@ -7527,6 +7587,8 @@ CONFIG_VIRTIO_MMIO=m
CONFIG_VDPA=m
# CONFIG_VDPA_SIM is not set
CONFIG_IFCVF=m
CONFIG_MLX5_VDPA=y
CONFIG_MLX5_VDPA_NET=m
CONFIG_VHOST_IOTLB=m
CONFIG_VHOST=m
CONFIG_VHOST_MENU=y
@ -7636,24 +7698,6 @@ CONFIG_88EU_AP_MODE=y
# end of IIO staging drivers
# CONFIG_FB_SM750 is not set
#
# Speakup console speech
#
CONFIG_SPEAKUP=m
CONFIG_SPEAKUP_SYNTH_ACNTSA=m
CONFIG_SPEAKUP_SYNTH_APOLLO=m
CONFIG_SPEAKUP_SYNTH_AUDPTR=m
CONFIG_SPEAKUP_SYNTH_BNS=m
CONFIG_SPEAKUP_SYNTH_DECTLK=m
CONFIG_SPEAKUP_SYNTH_DECEXT=m
CONFIG_SPEAKUP_SYNTH_LTLK=m
CONFIG_SPEAKUP_SYNTH_SOFT=m
CONFIG_SPEAKUP_SYNTH_SPKOUT=m
CONFIG_SPEAKUP_SYNTH_TXPRT=m
CONFIG_SPEAKUP_SYNTH_DUMMY=m
# end of Speakup console speech
# CONFIG_MFD_NVEC is not set
# CONFIG_STAGING_MEDIA is not set
@ -7667,15 +7711,13 @@ CONFIG_SPEAKUP_SYNTH_DUMMY=m
# CONFIG_FIREWIRE_SERIAL is not set
# CONFIG_GS_FPGABOOT is not set
# CONFIG_UNISYSSPAR is not set
# CONFIG_COMMON_CLK_XLNX_CLKWZRD is not set
# CONFIG_FB_TFT is not set
# CONFIG_WILC1000_SDIO is not set
# CONFIG_WILC1000_SPI is not set
# CONFIG_KS7010 is not set
CONFIG_BCM_VIDEOCORE=y
# CONFIG_BCM2835_VCHIQ is not set
# CONFIG_SND_BCM2835 is not set
# CONFIG_VIDEO_BCM2835 is not set
# CONFIG_BCM2835_VCHIQ_MMAL is not set
CONFIG_PI433=m
#
@ -7717,6 +7759,7 @@ CONFIG_CLK_SP810=y
CONFIG_CLK_VEXPRESS_OSC=y
# end of Clock driver for ARM Reference designs
# CONFIG_CLK_HSDK is not set
CONFIG_COMMON_CLK_MAX77686=m
CONFIG_COMMON_CLK_MAX9485=m
CONFIG_COMMON_CLK_RK808=m
@ -7737,6 +7780,7 @@ CONFIG_COMMON_CLK_PALMAS=m
# CONFIG_COMMON_CLK_VC5 is not set
# CONFIG_COMMON_CLK_BD718XX is not set
# CONFIG_COMMON_CLK_FIXED_MMIO is not set
CONFIG_CLK_BCM2711_DVP=y
# CONFIG_CLK_BCM2835 is not set
CONFIG_CLK_RASPBERRYPI=m
CONFIG_MXC_CLK=y
@ -7747,11 +7791,13 @@ CONFIG_MXC_CLK=y
CONFIG_MVEBU_CLK_COMMON=y
CONFIG_MVEBU_CLK_CPU=y
CONFIG_MVEBU_CLK_COREDIV=y
CONFIG_ARMADA_AP_CP_HELPER=y
CONFIG_ARMADA_370_CLK=y
CONFIG_ARMADA_375_CLK=y
CONFIG_ARMADA_38X_CLK=y
CONFIG_ARMADA_39X_CLK=y
CONFIG_ARMADA_XP_CLK=y
CONFIG_ARMADA_AP_CPU_CLK=y
CONFIG_COMMON_CLK_SAMSUNG=y
CONFIG_EXYNOS_AUDSS_CLK_CON=y
CONFIG_CLK_SUNXI=y
@ -7907,6 +7953,7 @@ CONFIG_EXYNOS_CHIPID=y
CONFIG_EXYNOS_PMU=y
CONFIG_EXYNOS_PMU_ARM_DRIVERS=y
CONFIG_EXYNOS_PM_DOMAINS=y
CONFIG_EXYNOS_REGULATOR_COUPLER=y
CONFIG_SUNXI_SRAM=y
# CONFIG_ARCH_TEGRA_2x_SOC is not set
# CONFIG_ARCH_TEGRA_3x_SOC is not set
@ -7997,6 +8044,7 @@ CONFIG_IIO_CONSUMERS_PER_TRIGGER=2
# CONFIG_BMA220 is not set
CONFIG_BMA400=m
CONFIG_BMA400_I2C=m
CONFIG_BMA400_SPI=m
# CONFIG_BMC150_ACCEL is not set
# CONFIG_DA280 is not set
# CONFIG_DA311 is not set
@ -8118,6 +8166,8 @@ CONFIG_XILINX_XADC=m
# CONFIG_BME680 is not set
CONFIG_CCS811=m
# CONFIG_IAQCORE is not set
CONFIG_SCD30_CORE=m
CONFIG_SCD30_I2C=m
# CONFIG_SENSIRION_SGP30 is not set
# CONFIG_SPS30 is not set
# CONFIG_VZ89X is not set
@ -8259,6 +8309,9 @@ CONFIG_HID_SENSOR_GYRO_3D=m
# CONFIG_FXOS8700_I2C is not set
# CONFIG_FXOS8700_SPI is not set
# CONFIG_KMX61 is not set
CONFIG_INV_ICM42600=m
CONFIG_INV_ICM42600_I2C=m
CONFIG_INV_ICM42600_SPI=m
# CONFIG_INV_MPU6050_I2C is not set
# CONFIG_INV_MPU6050_SPI is not set
# CONFIG_IIO_ST_LSM6DSX is not set
@ -8545,6 +8598,7 @@ CONFIG_PHY_ROCKCHIP_USB=m
CONFIG_PHY_EXYNOS_DP_VIDEO=m
CONFIG_PHY_EXYNOS_MIPI_VIDEO=m
# CONFIG_PHY_EXYNOS_PCIE is not set
CONFIG_PHY_SAMSUNG_UFS=m
CONFIG_PHY_SAMSUNG_USB2=m
CONFIG_PHY_EXYNOS4210_USB2=y
CONFIG_PHY_EXYNOS4X12_USB2=y
@ -8586,7 +8640,7 @@ CONFIG_DAX=m
CONFIG_NVMEM=y
CONFIG_NVMEM_SYSFS=y
# CONFIG_NVMEM_IMX_IIM is not set
# CONFIG_NVMEM_IMX_OCOTP is not set
CONFIG_NVMEM_IMX_OCOTP=m
CONFIG_ROCKCHIP_EFUSE=m
CONFIG_ROCKCHIP_OTP=m
CONFIG_NVMEM_SUNXI_SID=m
@ -8620,6 +8674,7 @@ CONFIG_PM_OPP=y
CONFIG_COUNTER=m
CONFIG_TI_EQEP=m
CONFIG_FTM_QUADDEC=m
CONFIG_MICROCHIP_TCB_CAPTURE=m
# CONFIG_MOST is not set
# end of Device Drivers
@ -8878,6 +8933,7 @@ CONFIG_NFSD_PNFS=y
CONFIG_NFSD_BLOCKLAYOUT=y
# CONFIG_NFSD_SCSILAYOUT is not set
# CONFIG_NFSD_FLEXFILELAYOUT is not set
# CONFIG_NFSD_V4_2_INTER_SSC is not set
CONFIG_NFSD_V4_SECURITY_LABEL=y
CONFIG_GRACE_PERIOD=m
CONFIG_LOCKD=m
@ -9346,7 +9402,7 @@ CONFIG_LZ4_COMPRESS=m
CONFIG_LZ4HC_COMPRESS=m
CONFIG_LZ4_DECOMPRESS=y
CONFIG_ZSTD_COMPRESS=m
CONFIG_ZSTD_DECOMPRESS=m
CONFIG_ZSTD_DECOMPRESS=y
CONFIG_XZ_DEC=y
# CONFIG_XZ_DEC_X86 is not set
# CONFIG_XZ_DEC_POWERPC is not set
@ -9362,6 +9418,7 @@ CONFIG_DECOMPRESS_LZMA=y
CONFIG_DECOMPRESS_XZ=y
CONFIG_DECOMPRESS_LZO=y
CONFIG_DECOMPRESS_LZ4=y
CONFIG_DECOMPRESS_ZSTD=y
CONFIG_GENERIC_ALLOCATOR=y
CONFIG_REED_SOLOMON=m
CONFIG_REED_SOLOMON_DEC16=y
@ -9374,6 +9431,7 @@ CONFIG_INTERVAL_TREE=y
CONFIG_ASSOCIATIVE_ARRAY=y
CONFIG_HAS_IOMEM=y
CONFIG_HAS_DMA=y
CONFIG_DMA_OPS=y
CONFIG_NEED_SG_DMA_LENGTH=y
CONFIG_NEED_DMA_MAP_STATE=y
CONFIG_ARCH_DMA_ADDR_T_64BIT=y
@ -9473,6 +9531,7 @@ CONFIG_STRIP_ASM_SYMS=y
# CONFIG_HEADERS_INSTALL is not set
# CONFIG_DEBUG_SECTION_MISMATCH is not set
CONFIG_SECTION_MISMATCH_WARN_ONLY=y
# CONFIG_DEBUG_FORCE_FUNCTION_ALIGN_32B is not set
CONFIG_ARCH_WANT_FRAME_POINTERS=y
CONFIG_FRAME_POINTER=y
# CONFIG_DEBUG_FORCE_WEAK_PER_CPU is not set
@ -9486,6 +9545,9 @@ CONFIG_MAGIC_SYSRQ_DEFAULT_ENABLE=0x01b6
CONFIG_MAGIC_SYSRQ_SERIAL=y
CONFIG_MAGIC_SYSRQ_SERIAL_SEQUENCE=""
CONFIG_DEBUG_FS=y
CONFIG_DEBUG_FS_ALLOW_ALL=y
# CONFIG_DEBUG_FS_DISALLOW_MOUNT is not set
# CONFIG_DEBUG_FS_ALLOW_NONE is not set
CONFIG_HAVE_ARCH_KGDB=y
# CONFIG_KGDB is not set
# CONFIG_UBSAN is not set
@ -9519,7 +9581,6 @@ CONFIG_DEBUG_MEMORY_INIT=y
# CONFIG_DEBUG_HIGHMEM is not set
CONFIG_CC_HAS_KASAN_GENERIC=y
CONFIG_CC_HAS_WORKING_NOSANITIZE_ADDRESS=y
CONFIG_KASAN_STACK=1
# end of Memory Debugging
# CONFIG_DEBUG_SHIRQ is not set
@ -9591,6 +9652,7 @@ CONFIG_BUG_ON_DATA_CORRUPTION=y
#
# CONFIG_RCU_PERF_TEST is not set
# CONFIG_RCU_TORTURE_TEST is not set
# CONFIG_RCU_REF_SCALE_TEST is not set
CONFIG_RCU_CPU_STALL_TIMEOUT=21
# CONFIG_RCU_TRACE is not set
# CONFIG_RCU_EQS_DEBUG is not set
@ -9723,6 +9785,7 @@ CONFIG_TEST_STATIC_KEYS=m
# CONFIG_TEST_MEMCAT_P is not set
# CONFIG_TEST_STACKINIT is not set
# CONFIG_TEST_MEMINIT is not set
# CONFIG_TEST_FREE_PAGES is not set
# CONFIG_MEMTEST is not set
# end of Kernel Testing and Coverage
# end of Kernel hacking

View file

@ -1,6 +1,6 @@
#
# Automatically generated file; DO NOT EDIT.
# Linux/arm64 5.8.0-gnu Kernel Configuration
# Linux/arm64 5.9.2 Kernel Configuration
#
CONFIG_CC_VERSION_TEXT="gcc (Debian 8.3.0-6) 8.3.0"
CONFIG_CC_IS_GCC=y
@ -158,6 +158,7 @@ CONFIG_CGROUP_BPF=y
CONFIG_SOCK_CGROUP_DATA=y
CONFIG_NAMESPACES=y
CONFIG_UTS_NS=y
CONFIG_TIME_NS=y
CONFIG_IPC_NS=y
CONFIG_USER_NS=y
CONFIG_PID_NS=y
@ -174,6 +175,7 @@ CONFIG_RD_LZMA=y
CONFIG_RD_XZ=y
CONFIG_RD_LZO=y
CONFIG_RD_LZ4=y
CONFIG_RD_ZSTD=y
CONFIG_BOOT_CONFIG=y
CONFIG_CC_OPTIMIZE_FOR_PERFORMANCE=y
# CONFIG_CC_OPTIMIZE_FOR_SIZE is not set
@ -288,10 +290,12 @@ CONFIG_ARCH_BCM2835=y
CONFIG_ARCH_BITMAIN=y
# CONFIG_ARCH_BRCMSTB is not set
# CONFIG_ARCH_EXYNOS is not set
# CONFIG_ARCH_SPARX5 is not set
# CONFIG_ARCH_K3 is not set
# CONFIG_ARCH_LAYERSCAPE is not set
# CONFIG_ARCH_LG1K is not set
CONFIG_ARCH_HISI=y
CONFIG_ARCH_KEEMBAY=y
# CONFIG_ARCH_MEDIATEK is not set
CONFIG_ARCH_MESON=y
CONFIG_ARCH_MVEBU=y
@ -404,7 +408,6 @@ CONFIG_XEN=y
CONFIG_FORCE_MAX_ZONEORDER=11
CONFIG_UNMAP_KERNEL_AT_EL0=y
CONFIG_HARDEN_BRANCH_PREDICTOR=y
CONFIG_HARDEN_EL2_VECTORS=y
CONFIG_ARM64_SSBD=y
CONFIG_RODATA_FULL_DEFAULT_ENABLED=y
# CONFIG_ARM64_SW_TTBR0_PAN is not set
@ -564,6 +567,7 @@ CONFIG_ARM_SCMI_CPUFREQ=m
CONFIG_ARM_TEGRA20_CPUFREQ=m
CONFIG_ARM_TEGRA124_CPUFREQ=y
# CONFIG_ARM_TEGRA186_CPUFREQ is not set
CONFIG_ARM_TEGRA194_CPUFREQ=m
# end of CPU Frequency scaling
# end of CPU Power Management
@ -615,6 +619,7 @@ CONFIG_ARM_PSCI_FW=y
# CONFIG_ARM_PSCI_CHECKER is not set
CONFIG_HAVE_ARM_SMCCC=y
CONFIG_HAVE_ARM_SMCCC_DISCOVERY=y
CONFIG_ARM_SMCCC_SOC_ID=y
#
# Tegra firmware driver
@ -746,7 +751,6 @@ CONFIG_HAVE_ARCH_SECCOMP_FILTER=y
CONFIG_SECCOMP_FILTER=y
CONFIG_HAVE_ARCH_STACKLEAK=y
CONFIG_HAVE_STACKPROTECTOR=y
CONFIG_CC_HAS_STACKPROTECTOR_NONE=y
CONFIG_STACKPROTECTOR=y
CONFIG_STACKPROTECTOR_STRONG=y
CONFIG_HAVE_CONTEXT_TRACKING=y
@ -762,7 +766,6 @@ CONFIG_ARCH_MMAP_RND_BITS=18
CONFIG_HAVE_ARCH_MMAP_RND_COMPAT_BITS=y
CONFIG_ARCH_MMAP_RND_COMPAT_BITS=11
CONFIG_ARCH_WANT_DEFAULT_TOPDOWN_MMAP_LAYOUT=y
CONFIG_HAVE_COPY_THREAD_TLS=y
CONFIG_CLONE_BACKWARDS=y
CONFIG_OLD_SIGSUSPEND3=y
CONFIG_COMPAT_OLD_SIGACTION=y
@ -956,7 +959,6 @@ CONFIG_SELECT_MEMORY_MODEL=y
CONFIG_SPARSEMEM_MANUAL=y
CONFIG_SPARSEMEM=y
CONFIG_NEED_MULTIPLE_NODES=y
CONFIG_HAVE_MEMORY_PRESENT=y
CONFIG_SPARSEMEM_EXTREME=y
CONFIG_SPARSEMEM_VMEMMAP_ENABLE=y
CONFIG_SPARSEMEM_VMEMMAP=y
@ -1139,8 +1141,8 @@ CONFIG_IPV6_SEG6_BPF=y
# CONFIG_IPV6_RPL_LWTUNNEL is not set
# CONFIG_NETLABEL is not set
CONFIG_MPTCP=y
CONFIG_INET_MPTCP_DIAG=m
CONFIG_MPTCP_IPV6=y
# CONFIG_MPTCP_HMAC_TEST is not set
CONFIG_NETWORK_SECMARK=y
CONFIG_NET_PTP_CLASSIFY=y
# CONFIG_NETWORK_PHY_TIMESTAMPING is not set
@ -1563,6 +1565,7 @@ CONFIG_NET_DSA_TAG_DSA=m
CONFIG_NET_DSA_TAG_EDSA=m
CONFIG_NET_DSA_TAG_MTK=m
CONFIG_NET_DSA_TAG_KSZ=m
CONFIG_NET_DSA_TAG_RTL4_A=m
CONFIG_NET_DSA_TAG_OCELOT=m
CONFIG_NET_DSA_TAG_QCA=m
CONFIG_NET_DSA_TAG_LAN9303=m
@ -1942,6 +1945,7 @@ CONFIG_GRO_CELLS=y
CONFIG_NET_DEVLINK=y
CONFIG_PAGE_POOL=y
CONFIG_FAILOVER=m
CONFIG_ETHTOOL_NETLINK=y
CONFIG_HAVE_EBPF_JIT=y
#
@ -2035,6 +2039,7 @@ CONFIG_PCIE_TEGRA194_HOST=m
# Cadence PCIe controllers support
#
# CONFIG_PCIE_CADENCE_PLAT_HOST is not set
# CONFIG_PCI_J721E_HOST is not set
# end of Cadence PCIe controllers support
# end of PCI controller drivers
@ -2204,6 +2209,9 @@ CONFIG_MTD_SST25L=m
# CONFIG_MTD_DOCG3 is not set
# end of Self-contained MTD device drivers
#
# NAND
#
CONFIG_MTD_NAND_CORE=m
CONFIG_MTD_ONENAND=m
CONFIG_MTD_ONENAND_VERIFY_WRITE=y
@ -2247,6 +2255,7 @@ CONFIG_MTD_NAND_DISKONCHIP=m
CONFIG_MTD_NAND_DISKONCHIP_PROBE_ADDRESS=0
# CONFIG_MTD_NAND_DISKONCHIP_BBTWRITE is not set
CONFIG_MTD_SPI_NAND=m
# end of NAND
#
# LPDDR & LPDDR2 PCM memory drivers
@ -2257,7 +2266,6 @@ CONFIG_MTD_QINFO_PROBE=m
CONFIG_MTD_SPI_NOR=m
CONFIG_MTD_SPI_NOR_USE_4K_SECTORS=y
# CONFIG_SPI_CADENCE_QUADSPI is not set
CONFIG_SPI_HISI_SFC=m
CONFIG_MTD_UBI=m
CONFIG_MTD_UBI_WL_THRESHOLD=4096
@ -2333,6 +2341,7 @@ CONFIG_NVME_RDMA=m
CONFIG_NVME_FC=m
CONFIG_NVME_TCP=m
CONFIG_NVME_TARGET=m
# CONFIG_NVME_TARGET_PASSTHRU is not set
# CONFIG_NVME_TARGET_LOOP is not set
CONFIG_NVME_TARGET_RDMA=m
CONFIG_NVME_TARGET_FC=m
@ -2499,6 +2508,7 @@ CONFIG_SCSI_UFSHCD_PCI=m
# CONFIG_SCSI_UFS_DWC_TC_PCI is not set
# CONFIG_SCSI_UFSHCD_PLATFORM is not set
# CONFIG_SCSI_UFS_BSG is not set
CONFIG_SCSI_UFS_CRYPTO=y
CONFIG_SCSI_HPTIOP=m
# CONFIG_SCSI_MYRB is not set
# CONFIG_SCSI_MYRS is not set
@ -2666,7 +2676,7 @@ CONFIG_MD_FAULTY=m
CONFIG_BCACHE=m
# CONFIG_BCACHE_DEBUG is not set
# CONFIG_BCACHE_CLOSURES_DEBUG is not set
# CONFIG_BCACHE_ASYNC_REGISTRAION is not set
# CONFIG_BCACHE_ASYNC_REGISTRATION is not set
CONFIG_BLK_DEV_DM_BUILTIN=y
CONFIG_BLK_DEV_DM=m
# CONFIG_DM_DEBUG is not set
@ -2983,6 +2993,7 @@ CONFIG_MLX4_CORE=m
CONFIG_MLX4_DEBUG=y
CONFIG_MLX4_CORE_GEN2=y
CONFIG_MLX5_CORE=m
CONFIG_MLX5_ACCEL=y
# CONFIG_MLX5_FPGA is not set
CONFIG_MLX5_CORE_EN=y
CONFIG_MLX5_EN_ARFS=y
@ -2992,6 +3003,8 @@ CONFIG_MLX5_ESWITCH=y
CONFIG_MLX5_CLS_ACT=y
CONFIG_MLX5_CORE_EN_DCB=y
# CONFIG_MLX5_CORE_IPOIB is not set
CONFIG_MLX5_IPSEC=y
CONFIG_MLX5_EN_IPSEC=y
CONFIG_MLX5_SW_STEERING=y
# CONFIG_MLXSW_CORE is not set
# CONFIG_MLXFW is not set
@ -3005,8 +3018,8 @@ CONFIG_NET_VENDOR_MICROCHIP=y
# CONFIG_ENCX24J600 is not set
# CONFIG_LAN743X is not set
CONFIG_NET_VENDOR_MICROSEMI=y
CONFIG_MSCC_OCELOT_SWITCH_LIB=m
CONFIG_MSCC_OCELOT_SWITCH=m
CONFIG_MSCC_OCELOT_SWITCH_OCELOT=m
CONFIG_NET_VENDOR_MYRI=y
CONFIG_MYRI10GE=m
CONFIG_FEALNX=m
@ -3132,6 +3145,7 @@ CONFIG_SKFP=m
# CONFIG_NET_SB1000 is not set
CONFIG_MDIO_DEVICE=m
CONFIG_MDIO_BUS=m
CONFIG_MDIO_DEVRES=m
# CONFIG_MDIO_BCM_UNIMAC is not set
# CONFIG_MDIO_BITBANG is not set
CONFIG_MDIO_BUS_MUX=m
@ -3434,7 +3448,11 @@ CONFIG_MT7601U=m
# CONFIG_MT7603E is not set
# CONFIG_MT7615E is not set
# CONFIG_MT7663U is not set
# CONFIG_MT7663S is not set
# CONFIG_MT7915E is not set
CONFIG_WLAN_VENDOR_MICROCHIP=y
# CONFIG_WILC1000_SDIO is not set
# CONFIG_WILC1000_SPI is not set
CONFIG_WLAN_VENDOR_RALINK=y
CONFIG_RT2X00=m
CONFIG_RT2400PCI=m
@ -3770,6 +3788,8 @@ CONFIG_SERIAL_TEGRA_TCU=m
# CONFIG_SERIAL_MAX3100 is not set
# CONFIG_SERIAL_MAX310X is not set
CONFIG_SERIAL_IMX=m
CONFIG_SERIAL_IMX_CONSOLE=m
CONFIG_SERIAL_IMX_EARLYCON=y
# CONFIG_SERIAL_UARTLITE is not set
CONFIG_SERIAL_CORE=y
CONFIG_SERIAL_CORE_CONSOLE=y
@ -3824,6 +3844,7 @@ CONFIG_IPMI_SSIF=m
# CONFIG_IPMI_POWEROFF is not set
CONFIG_HW_RANDOM=m
# CONFIG_HW_RANDOM_TIMERIOMEM is not set
CONFIG_HW_RANDOM_BA431=m
CONFIG_HW_RANDOM_BCM2835=m
CONFIG_HW_RANDOM_IPROC_RNG200=m
# CONFIG_HW_RANDOM_OMAP is not set
@ -3984,6 +4005,7 @@ CONFIG_SPI_BCM2835AUX=m
CONFIG_SPI_BITBANG=m
CONFIG_SPI_BUTTERFLY=m
# CONFIG_SPI_CADENCE is not set
# CONFIG_SPI_CADENCE_QUADSPI is not set
# CONFIG_SPI_DESIGNWARE is not set
CONFIG_SPI_FSL_LPSPI=m
CONFIG_SPI_FSL_QUADSPI=m
@ -4031,6 +4053,7 @@ CONFIG_SPI_MUX=m
# CONFIG_SPI_LOOPBACK_TEST is not set
# CONFIG_SPI_TLE62X0 is not set
# CONFIG_SPI_SLAVE is not set
CONFIG_SPI_DYNAMIC=y
CONFIG_SPMI=y
CONFIG_SPMI_MSM_PMIC_ARB=y
# CONFIG_HSI is not set
@ -4204,6 +4227,7 @@ CONFIG_GPIO_XLP=y
# CONFIG_GPIO_MAX732X is not set
CONFIG_GPIO_PCA953X=y
CONFIG_GPIO_PCA953X_IRQ=y
CONFIG_GPIO_PCA9570=m
# CONFIG_GPIO_PCF857X is not set
# CONFIG_GPIO_TPIC2810 is not set
# end of I2C GPIO expanders
@ -4292,6 +4316,7 @@ CONFIG_POWER_RESET=y
# CONFIG_POWER_RESET_GPIO is not set
# CONFIG_POWER_RESET_GPIO_RESTART is not set
CONFIG_POWER_RESET_HISI=y
# CONFIG_POWER_RESET_LINKSTATION is not set
CONFIG_POWER_RESET_MSM=y
CONFIG_POWER_RESET_QCOM_PON=m
# CONFIG_POWER_RESET_LTC2952 is not set
@ -4341,6 +4366,7 @@ CONFIG_CHARGER_QCOM_SMBB=m
# CONFIG_CHARGER_BQ24190 is not set
# CONFIG_CHARGER_BQ24257 is not set
# CONFIG_CHARGER_BQ24735 is not set
# CONFIG_CHARGER_BQ2515X is not set
# CONFIG_CHARGER_BQ25890 is not set
# CONFIG_CHARGER_SMB347 is not set
# CONFIG_BATTERY_GAUGE_LTC2941 is not set
@ -4378,6 +4404,7 @@ CONFIG_SENSORS_AXI_FAN_CONTROL=m
CONFIG_SENSORS_ARM_SCMI=m
# CONFIG_SENSORS_ASPEED is not set
CONFIG_SENSORS_ATXP1=m
CONFIG_SENSORS_CORSAIR_CPRO=m
CONFIG_SENSORS_DRIVETEMP=m
CONFIG_SENSORS_DS620=m
# CONFIG_SENSORS_DS1621 is not set
@ -4509,6 +4536,7 @@ CONFIG_SENSORS_XGENE=m
#
# CONFIG_SENSORS_ACPI_POWER is not set
CONFIG_THERMAL=y
CONFIG_THERMAL_NETLINK=y
# CONFIG_THERMAL_STATISTICS is not set
CONFIG_THERMAL_EMERGENCY_POWEROFF_DELAY_MS=0
CONFIG_THERMAL_HWMON=y
@ -4524,7 +4552,6 @@ CONFIG_THERMAL_GOV_STEP_WISE=y
# CONFIG_THERMAL_GOV_POWER_ALLOCATOR is not set
CONFIG_CPU_THERMAL=y
CONFIG_CPU_FREQ_THERMAL=y
# CONFIG_CLOCK_THERMAL is not set
# CONFIG_DEVFREQ_THERMAL is not set
# CONFIG_THERMAL_EMULATION is not set
# CONFIG_THERMAL_MMIO is not set
@ -4562,6 +4589,7 @@ CONFIG_QCOM_TSENS=m
CONFIG_QCOM_SPMI_TEMP_ALARM=m
# end of Qualcomm thermal drivers
CONFIG_KHADAS_MCU_FAN_THERMAL=m
CONFIG_WATCHDOG=y
CONFIG_WATCHDOG_CORE=y
# CONFIG_WATCHDOG_NOWAYOUT is not set
@ -4720,7 +4748,6 @@ CONFIG_MFD_RK808=m
# CONFIG_MFD_SI476X_CORE is not set
# CONFIG_MFD_SM501 is not set
# CONFIG_MFD_SKY81452 is not set
# CONFIG_MFD_SMSC is not set
# CONFIG_ABX500_CORE is not set
# CONFIG_MFD_STMPE is not set
CONFIG_MFD_SUN6I_PRCM=y
@ -4764,6 +4791,7 @@ CONFIG_MFD_ROHM_BD70528=m
CONFIG_MFD_ROHM_BD71828=m
# CONFIG_MFD_STPMIC1 is not set
# CONFIG_MFD_STMFX is not set
CONFIG_MFD_KHADAS_MCU=m
CONFIG_MFD_VEXPRESS_SYSREG=y
# CONFIG_RAVE_SP_CORE is not set
# end of Multifunction device drivers
@ -4783,9 +4811,11 @@ CONFIG_REGULATOR_AXP20X=m
CONFIG_REGULATOR_BD70528=m
CONFIG_REGULATOR_BD71828=m
CONFIG_REGULATOR_BD718XX=m
CONFIG_REGULATOR_CROS_EC=m
# CONFIG_REGULATOR_DA9210 is not set
# CONFIG_REGULATOR_DA9211 is not set
CONFIG_REGULATOR_FAN53555=m
CONFIG_REGULATOR_FAN53880=m
CONFIG_REGULATOR_GPIO=m
CONFIG_REGULATOR_HI655X=m
# CONFIG_REGULATOR_ISL9305 is not set
@ -4809,6 +4839,7 @@ CONFIG_REGULATOR_MP8859=m
CONFIG_REGULATOR_MP886X=m
CONFIG_REGULATOR_MPQ7920=m
# CONFIG_REGULATOR_MT6311 is not set
CONFIG_REGULATOR_PCA9450=m
# CONFIG_REGULATOR_PFUZE100 is not set
# CONFIG_REGULATOR_PV88060 is not set
# CONFIG_REGULATOR_PV88080 is not set
@ -4817,11 +4848,13 @@ CONFIG_REGULATOR_PWM=m
CONFIG_REGULATOR_QCOM_RPM=m
CONFIG_REGULATOR_QCOM_SMD_RPM=m
CONFIG_REGULATOR_QCOM_SPMI=m
CONFIG_REGULATOR_QCOM_USB_VBUS=m
CONFIG_REGULATOR_RK808=m
CONFIG_REGULATOR_ROHM=m
CONFIG_REGULATOR_SLG51000=m
CONFIG_REGULATOR_SY8106A=m
CONFIG_REGULATOR_SY8824X=m
CONFIG_REGULATOR_SY8827N=m
# CONFIG_REGULATOR_TPS51632 is not set
# CONFIG_REGULATOR_TPS62360 is not set
# CONFIG_REGULATOR_TPS65023 is not set
@ -4831,6 +4864,7 @@ CONFIG_REGULATOR_SY8824X=m
# CONFIG_REGULATOR_VCTRL is not set
# CONFIG_REGULATOR_VEXPRESS is not set
# CONFIG_REGULATOR_VQMMC_IPQ4019 is not set
CONFIG_REGULATOR_QCOM_LABIBB=m
CONFIG_RC_CORE=m
CONFIG_RC_MAP=m
CONFIG_LIRC=y
@ -4871,10 +4905,12 @@ CONFIG_RC_LOOPBACK=m
# CONFIG_IR_SERIAL is not set
# CONFIG_IR_SIR is not set
CONFIG_RC_XBOX_DVD=m
CONFIG_IR_TOY=m
CONFIG_CEC_CORE=m
CONFIG_CEC_NOTIFIER=y
# CONFIG_MEDIA_CEC_RC is not set
CONFIG_MEDIA_CEC_SUPPORT=y
CONFIG_CEC_CH7322=m
CONFIG_CEC_CROS_EC=m
CONFIG_CEC_MESON_AO=m
CONFIG_CEC_MESON_G12A_AO=m
@ -5325,6 +5361,7 @@ CONFIG_VIDEO_TW9903=m
CONFIG_VIDEO_TW9906=m
CONFIG_VIDEO_TW9910=m
CONFIG_VIDEO_VPX3220=m
CONFIG_VIDEO_MAX9286=m
#
# Video and audio decoders
@ -5422,6 +5459,7 @@ CONFIG_VIDEO_MT9V111=m
CONFIG_VIDEO_SR030PC30=m
CONFIG_VIDEO_NOON010PC30=m
CONFIG_VIDEO_M5MOLS=m
CONFIG_VIDEO_RDACM20=m
CONFIG_VIDEO_RJ54N1=m
CONFIG_VIDEO_S5K6AA=m
CONFIG_VIDEO_S5K6A3=m
@ -5438,6 +5476,7 @@ CONFIG_VIDEO_S5C73M3=m
CONFIG_VIDEO_AD5820=m
CONFIG_VIDEO_AK7375=m
CONFIG_VIDEO_DW9714=m
CONFIG_VIDEO_DW9768=m
CONFIG_VIDEO_DW9807_VCM=m
# end of Lens drivers
@ -5753,6 +5792,7 @@ CONFIG_NOUVEAU_PLATFORM_DRIVER=y
CONFIG_NOUVEAU_DEBUG=5
CONFIG_NOUVEAU_DEBUG_DEFAULT=3
# CONFIG_NOUVEAU_DEBUG_MMU is not set
# CONFIG_NOUVEAU_DEBUG_PUSH is not set
CONFIG_DRM_NOUVEAU_BACKLIGHT=y
CONFIG_DRM_VGEM=m
# CONFIG_DRM_VKMS is not set
@ -5815,7 +5855,6 @@ CONFIG_DRM_PANEL_OSD_OSD101T2587_53TS=m
# CONFIG_DRM_PANEL_RASPBERRYPI_TOUCHSCREEN is not set
# CONFIG_DRM_PANEL_RAYDIUM_RM67191 is not set
# CONFIG_DRM_PANEL_RAYDIUM_RM68200 is not set
# CONFIG_DRM_PANEL_ROCKTECH_JH057N00900 is not set
# CONFIG_DRM_PANEL_RONBO_RB070D30 is not set
# CONFIG_DRM_PANEL_SAMSUNG_S6D16D0 is not set
# CONFIG_DRM_PANEL_SAMSUNG_S6E3HA2 is not set
@ -5828,6 +5867,7 @@ CONFIG_DRM_PANEL_SAMSUNG_S6E88A0_AMS452EF01=m
# CONFIG_DRM_PANEL_SHARP_LS037V7DW01 is not set
# CONFIG_DRM_PANEL_SHARP_LS043T1LE01 is not set
# CONFIG_DRM_PANEL_SITRONIX_ST7701 is not set
# CONFIG_DRM_PANEL_SITRONIX_ST7703 is not set
# CONFIG_DRM_PANEL_SITRONIX_ST7789V is not set
CONFIG_DRM_PANEL_SONY_ACX424AKP=m
# CONFIG_DRM_PANEL_SONY_ACX565AKM is not set
@ -5999,7 +6039,6 @@ CONFIG_LCD_LMS501KF03=m
CONFIG_LCD_HX8357=m
CONFIG_LCD_OTM3225A=m
CONFIG_BACKLIGHT_CLASS_DEVICE=y
CONFIG_BACKLIGHT_GENERIC=m
CONFIG_BACKLIGHT_PWM=m
CONFIG_BACKLIGHT_QCOM_WLED=m
# CONFIG_BACKLIGHT_ADP8860 is not set
@ -6158,6 +6197,7 @@ CONFIG_SND_VIRTUOSO=m
# HD-Audio
#
CONFIG_SND_HDA=m
CONFIG_SND_HDA_GENERIC_LEDS=y
CONFIG_SND_HDA_INTEL=m
CONFIG_SND_HDA_TEGRA=m
CONFIG_SND_HDA_HWDEP=y
@ -6179,6 +6219,7 @@ CONFIG_SND_HDA_CODEC_CMEDIA=m
CONFIG_SND_HDA_CODEC_SI3054=m
CONFIG_SND_HDA_GENERIC=m
CONFIG_SND_HDA_POWER_SAVE_DEFAULT=0
CONFIG_SND_HDA_INTEL_HDMI_SILENT_STREAM=y
# end of HD-Audio
CONFIG_SND_HDA_CORE=m
@ -6255,6 +6296,7 @@ CONFIG_SND_SOC_IMX_AUDMIX=m
CONFIG_SND_I2S_HI6210_I2S=m
# CONFIG_SND_KIRKWOOD_SOC is not set
# CONFIG_SND_SOC_IMG is not set
CONFIG_SND_SOC_INTEL_KEEMBAY=m
# CONFIG_SND_SOC_MTK_BTCVSD is not set
#
@ -6319,6 +6361,11 @@ CONFIG_SND_SOC_TEGRA=m
CONFIG_SND_SOC_TEGRA20_SPDIF=m
# CONFIG_SND_SOC_TEGRA30_AHUB is not set
# CONFIG_SND_SOC_TEGRA30_I2S is not set
# CONFIG_SND_SOC_TEGRA210_AHUB is not set
# CONFIG_SND_SOC_TEGRA210_DMIC is not set
# CONFIG_SND_SOC_TEGRA210_I2S is not set
# CONFIG_SND_SOC_TEGRA186_DSPK is not set
# CONFIG_SND_SOC_TEGRA210_ADMAIF is not set
CONFIG_SND_SOC_TEGRA_RT5640=m
CONFIG_SND_SOC_TEGRA_WM8753=m
CONFIG_SND_SOC_TEGRA_WM8903=m
@ -6396,7 +6443,8 @@ CONFIG_SND_SOC_MAX98090=m
# CONFIG_SND_SOC_MAX98504 is not set
# CONFIG_SND_SOC_MAX9867 is not set
CONFIG_SND_SOC_MAX98927=m
# CONFIG_SND_SOC_MAX98373 is not set
CONFIG_SND_SOC_MAX98373=m
CONFIG_SND_SOC_MAX98373_I2C=m
# CONFIG_SND_SOC_MAX98390 is not set
# CONFIG_SND_SOC_MAX9860 is not set
# CONFIG_SND_SOC_MSM8916_WCD_ANALOG is not set
@ -6488,6 +6536,7 @@ CONFIG_SND_SOC_WM8904=m
# CONFIG_SND_SOC_TPA6130A2 is not set
# end of CODEC drivers
CONFIG_SND_SIMPLE_CARD_UTILS=m
# CONFIG_SND_SIMPLE_CARD is not set
# CONFIG_SND_AUDIO_GRAPH_CARD is not set
CONFIG_SND_SYNTH_EMUX=m
@ -6657,8 +6706,8 @@ CONFIG_USB_ANNOUNCE_NEW_DEVICES=y
CONFIG_USB_DEFAULT_PERSIST=y
CONFIG_USB_DYNAMIC_MINORS=y
# CONFIG_USB_OTG is not set
# CONFIG_USB_OTG_WHITELIST is not set
# CONFIG_USB_OTG_BLACKLIST_HUB is not set
# CONFIG_USB_OTG_PRODUCTLIST is not set
# CONFIG_USB_OTG_DISABLE_EXTERNAL_HUB is not set
CONFIG_USB_LEDS_TRIGGER_USBPORT=m
CONFIG_USB_AUTOSUSPEND_DELAY=2
CONFIG_USB_MON=m
@ -7103,6 +7152,7 @@ CONFIG_MEMSTICK_REALTEK_USB=m
CONFIG_NEW_LEDS=y
CONFIG_LEDS_CLASS=y
# CONFIG_LEDS_CLASS_FLASH is not set
CONFIG_LEDS_CLASS_MULTICOLOR=m
CONFIG_LEDS_BRIGHTNESS_HW_CHANGED=y
#
@ -7122,6 +7172,7 @@ CONFIG_LEDS_BRIGHTNESS_HW_CHANGED=y
CONFIG_LEDS_GPIO=m
CONFIG_LEDS_LP3944=m
# CONFIG_LEDS_LP3952 is not set
CONFIG_LEDS_LP55XX_COMMON=m
# CONFIG_LEDS_LP5521 is not set
# CONFIG_LEDS_LP5523 is not set
# CONFIG_LEDS_LP5562 is not set
@ -7178,10 +7229,27 @@ CONFIG_LEDS_TRIGGER_PANIC=y
CONFIG_LEDS_TRIGGER_AUDIO=m
CONFIG_ACCESSIBILITY=y
CONFIG_A11Y_BRAILLE_CONSOLE=y
#
# Speakup console speech
#
CONFIG_SPEAKUP=m
CONFIG_SPEAKUP_SYNTH_ACNTSA=m
CONFIG_SPEAKUP_SYNTH_APOLLO=m
CONFIG_SPEAKUP_SYNTH_AUDPTR=m
CONFIG_SPEAKUP_SYNTH_BNS=m
CONFIG_SPEAKUP_SYNTH_DECTLK=m
CONFIG_SPEAKUP_SYNTH_DECEXT=m
CONFIG_SPEAKUP_SYNTH_LTLK=m
CONFIG_SPEAKUP_SYNTH_SOFT=m
CONFIG_SPEAKUP_SYNTH_SPKOUT=m
CONFIG_SPEAKUP_SYNTH_TXPRT=m
CONFIG_SPEAKUP_SYNTH_DUMMY=m
# end of Speakup console speech
CONFIG_INFINIBAND=m
CONFIG_INFINIBAND_USER_MAD=m
CONFIG_INFINIBAND_USER_ACCESS=m
# CONFIG_INFINIBAND_EXP_LEGACY_VERBS_NEW_UAPI is not set
CONFIG_INFINIBAND_USER_MEM=y
CONFIG_INFINIBAND_ON_DEMAND_PAGING=y
CONFIG_INFINIBAND_ADDR_TRANS=y
@ -7382,6 +7450,7 @@ CONFIG_TEGRA210_ADMA=y
CONFIG_XGENE_DMA=m
# CONFIG_XILINX_DMA is not set
# CONFIG_XILINX_ZYNQMP_DMA is not set
CONFIG_XILINX_ZYNQMP_DPDMA=m
CONFIG_QCOM_BAM_DMA=m
CONFIG_QCOM_HIDMA_MGMT=m
CONFIG_QCOM_HIDMA=m
@ -7444,6 +7513,8 @@ CONFIG_VIRTIO_MMIO=m
CONFIG_VDPA=m
# CONFIG_VDPA_SIM is not set
CONFIG_IFCVF=m
CONFIG_MLX5_VDPA=y
CONFIG_MLX5_VDPA_NET=m
CONFIG_VHOST_IOTLB=m
CONFIG_VHOST=m
CONFIG_VHOST_MENU=y
@ -7553,24 +7624,6 @@ CONFIG_88EU_AP_MODE=y
# end of IIO staging drivers
# CONFIG_FB_SM750 is not set
#
# Speakup console speech
#
CONFIG_SPEAKUP=m
CONFIG_SPEAKUP_SYNTH_ACNTSA=m
CONFIG_SPEAKUP_SYNTH_APOLLO=m
CONFIG_SPEAKUP_SYNTH_AUDPTR=m
CONFIG_SPEAKUP_SYNTH_BNS=m
CONFIG_SPEAKUP_SYNTH_DECTLK=m
CONFIG_SPEAKUP_SYNTH_DECEXT=m
CONFIG_SPEAKUP_SYNTH_LTLK=m
CONFIG_SPEAKUP_SYNTH_SOFT=m
CONFIG_SPEAKUP_SYNTH_SPKOUT=m
CONFIG_SPEAKUP_SYNTH_TXPRT=m
CONFIG_SPEAKUP_SYNTH_DUMMY=m
# end of Speakup console speech
# CONFIG_MFD_NVEC is not set
# CONFIG_STAGING_MEDIA is not set
@ -7584,15 +7637,13 @@ CONFIG_SPEAKUP_SYNTH_DUMMY=m
# CONFIG_FIREWIRE_SERIAL is not set
# CONFIG_GS_FPGABOOT is not set
# CONFIG_UNISYSSPAR is not set
# CONFIG_COMMON_CLK_XLNX_CLKWZRD is not set
# CONFIG_FB_TFT is not set
# CONFIG_WILC1000_SDIO is not set
# CONFIG_WILC1000_SPI is not set
# CONFIG_KS7010 is not set
CONFIG_BCM_VIDEOCORE=y
# CONFIG_BCM2835_VCHIQ is not set
# CONFIG_SND_BCM2835 is not set
# CONFIG_VIDEO_BCM2835 is not set
# CONFIG_BCM2835_VCHIQ_MMAL is not set
# CONFIG_PI433 is not set
#
@ -7638,6 +7689,7 @@ CONFIG_CLK_SP810=y
CONFIG_CLK_VEXPRESS_OSC=y
# end of Clock driver for ARM Reference designs
# CONFIG_CLK_HSDK is not set
# CONFIG_COMMON_CLK_MAX77686 is not set
CONFIG_COMMON_CLK_MAX9485=m
CONFIG_COMMON_CLK_RK808=m
@ -7658,6 +7710,7 @@ CONFIG_COMMON_CLK_XGENE=y
# CONFIG_COMMON_CLK_VC5 is not set
# CONFIG_COMMON_CLK_BD718XX is not set
# CONFIG_COMMON_CLK_FIXED_MMIO is not set
CONFIG_CLK_BCM2711_DVP=y
# CONFIG_CLK_BCM2835 is not set
CONFIG_CLK_RASPBERRYPI=m
CONFIG_COMMON_CLK_HI3516CV300=y
@ -7699,10 +7752,13 @@ CONFIG_QCOM_RPMCC=y
CONFIG_COMMON_CLK_QCOM=y
CONFIG_QCOM_A53PLL=y
CONFIG_QCOM_CLK_APCS_MSM8916=m
CONFIG_QCOM_CLK_APCC_MSM8996=m
CONFIG_QCOM_CLK_RPM=m
CONFIG_QCOM_CLK_SMD_RPM=m
# CONFIG_APQ_GCC_8084 is not set
# CONFIG_APQ_MMCC_8084 is not set
# CONFIG_IPQ_APSS_PLL is not set
# CONFIG_IPQ_APSS_6018 is not set
# CONFIG_IPQ_GCC_4019 is not set
# CONFIG_IPQ_GCC_6018 is not set
# CONFIG_IPQ_GCC_806X is not set
@ -7726,7 +7782,8 @@ CONFIG_MSM_MMCC_8996=y
# CONFIG_MSM_MMCC_8998 is not set
# CONFIG_QCS_GCC_404 is not set
# CONFIG_SC_DISPCC_7180 is not set
# CONFIG_SC_GCC_7180 is not set
CONFIG_SC_GCC_7180=m
CONFIG_SC_LPASS_CORECC_7180=m
# CONFIG_SC_GPUCC_7180 is not set
# CONFIG_SC_MSS_7180 is not set
# CONFIG_SC_VIDEOCC_7180 is not set
@ -7741,6 +7798,8 @@ CONFIG_SDM_DISPCC_845=m
CONFIG_SDM_LPASSCC_845=m
# CONFIG_SM_GCC_8150 is not set
# CONFIG_SM_GCC_8250 is not set
# CONFIG_SM_GPUCC_8150 is not set
# CONFIG_SM_GPUCC_8250 is not set
# CONFIG_SPMI_PMIC_CLKDIV is not set
# CONFIG_QCOM_HFPLL is not set
# CONFIG_KPSS_XCC is not set
@ -7886,7 +7945,6 @@ CONFIG_FSL_RCPM=y
# i.MX SoC drivers
#
CONFIG_IMX_GPCV2_PM_DOMAINS=y
# CONFIG_IMX_SCU_SOC is not set
CONFIG_SOC_IMX8M=y
# end of i.MX SoC drivers
@ -7898,6 +7956,7 @@ CONFIG_QCOM_COMMAND_DB=y
CONFIG_QCOM_GENI_SE=m
CONFIG_QCOM_GSBI=m
CONFIG_QCOM_LLCC=m
CONFIG_QCOM_KRYO_L2_ACCESSORS=y
CONFIG_QCOM_MDT_LOADER=m
# CONFIG_QCOM_OCMEM is not set
CONFIG_QCOM_PDR_HELPERS=m
@ -7967,6 +8026,8 @@ CONFIG_EXTCON_USB_GPIO=m
CONFIG_MEMORY=y
# CONFIG_ARM_PL172_MPMC is not set
CONFIG_TEGRA_MC=y
CONFIG_TEGRA210_EMC_TABLE=y
CONFIG_TEGRA210_EMC=m
CONFIG_IIO=m
CONFIG_IIO_BUFFER=y
# CONFIG_IIO_BUFFER_CB is not set
@ -7992,6 +8053,7 @@ CONFIG_IIO_CONSUMERS_PER_TRIGGER=2
# CONFIG_BMA220 is not set
CONFIG_BMA400=m
CONFIG_BMA400_I2C=m
CONFIG_BMA400_SPI=m
# CONFIG_BMC150_ACCEL is not set
# CONFIG_DA280 is not set
# CONFIG_DA311 is not set
@ -8111,6 +8173,9 @@ CONFIG_XILINX_XADC=m
# CONFIG_CCS811 is not set
# CONFIG_IAQCORE is not set
# CONFIG_PMS7003 is not set
CONFIG_SCD30_CORE=m
CONFIG_SCD30_I2C=m
CONFIG_SCD30_SERIAL=m
# CONFIG_SENSIRION_SGP30 is not set
# CONFIG_SPS30 is not set
# CONFIG_VZ89X is not set
@ -8248,6 +8313,9 @@ CONFIG_DHT11=m
# CONFIG_FXOS8700_I2C is not set
# CONFIG_FXOS8700_SPI is not set
# CONFIG_KMX61 is not set
CONFIG_INV_ICM42600=m
CONFIG_INV_ICM42600_I2C=m
CONFIG_INV_ICM42600_SPI=m
# CONFIG_INV_MPU6050_I2C is not set
# CONFIG_INV_MPU6050_SPI is not set
# CONFIG_IIO_ST_LSM6DSX is not set
@ -8544,13 +8612,12 @@ CONFIG_PHY_QCOM_IPQ806X_SATA=m
CONFIG_PHY_QCOM_PCIE2=m
CONFIG_PHY_QCOM_QMP=m
CONFIG_PHY_QCOM_QUSB2=m
CONFIG_PHY_QCOM_UFS=m
CONFIG_PHY_QCOM_UFS_14NM=m
CONFIG_PHY_QCOM_USB_HS=m
CONFIG_PHY_QCOM_USB_SNPS_FEMTO_V2=m
CONFIG_PHY_QCOM_USB_HSIC=m
CONFIG_PHY_QCOM_USB_HS_28NM=m
CONFIG_PHY_QCOM_USB_SS=m
# CONFIG_PHY_QCOM_IPQ806X_USB is not set
# CONFIG_PHY_ROCKCHIP_DP is not set
CONFIG_PHY_ROCKCHIP_EMMC=m
# CONFIG_PHY_ROCKCHIP_INNO_HDMI is not set
@ -8804,6 +8871,7 @@ CONFIG_SYSFS=y
CONFIG_TMPFS=y
CONFIG_TMPFS_POSIX_ACL=y
CONFIG_TMPFS_XATTR=y
# CONFIG_TMPFS_INODE64 is not set
CONFIG_HUGETLBFS=y
CONFIG_HUGETLB_PAGE=y
CONFIG_MEMFD_CREATE=y
@ -8938,6 +9006,7 @@ CONFIG_NFSD_PNFS=y
CONFIG_NFSD_BLOCKLAYOUT=y
# CONFIG_NFSD_SCSILAYOUT is not set
# CONFIG_NFSD_FLEXFILELAYOUT is not set
# CONFIG_NFSD_V4_2_INTER_SSC is not set
CONFIG_NFSD_V4_SECURITY_LABEL=y
CONFIG_GRACE_PERIOD=m
CONFIG_LOCKD=m
@ -9420,7 +9489,7 @@ CONFIG_LZ4_COMPRESS=m
CONFIG_LZ4HC_COMPRESS=m
CONFIG_LZ4_DECOMPRESS=y
CONFIG_ZSTD_COMPRESS=m
CONFIG_ZSTD_DECOMPRESS=m
CONFIG_ZSTD_DECOMPRESS=y
CONFIG_XZ_DEC=y
# CONFIG_XZ_DEC_X86 is not set
# CONFIG_XZ_DEC_POWERPC is not set
@ -9435,6 +9504,7 @@ CONFIG_DECOMPRESS_LZMA=y
CONFIG_DECOMPRESS_XZ=y
CONFIG_DECOMPRESS_LZO=y
CONFIG_DECOMPRESS_LZ4=y
CONFIG_DECOMPRESS_ZSTD=y
CONFIG_GENERIC_ALLOCATOR=y
CONFIG_REED_SOLOMON=m
CONFIG_REED_SOLOMON_ENC8=y
@ -9452,6 +9522,7 @@ CONFIG_ASSOCIATIVE_ARRAY=y
CONFIG_HAS_IOMEM=y
CONFIG_HAS_IOPORT_MAP=y
CONFIG_HAS_DMA=y
CONFIG_DMA_OPS=y
CONFIG_NEED_SG_DMA_LENGTH=y
CONFIG_NEED_DMA_MAP_STATE=y
CONFIG_ARCH_DMA_ADDR_T_64BIT=y
@ -9497,6 +9568,7 @@ CONFIG_OID_REGISTRY=y
CONFIG_UCS2_STRING=y
CONFIG_HAVE_GENERIC_VDSO=y
CONFIG_GENERIC_GETTIMEOFDAY=y
CONFIG_GENERIC_VDSO_TIME_NS=y
CONFIG_FONT_SUPPORT=y
CONFIG_FONTS=y
CONFIG_FONT_8x8=y
@ -9556,6 +9628,7 @@ CONFIG_STRIP_ASM_SYMS=y
# CONFIG_HEADERS_INSTALL is not set
# CONFIG_DEBUG_SECTION_MISMATCH is not set
CONFIG_SECTION_MISMATCH_WARN_ONLY=y
# CONFIG_DEBUG_FORCE_FUNCTION_ALIGN_32B is not set
CONFIG_ARCH_WANT_FRAME_POINTERS=y
CONFIG_FRAME_POINTER=y
# CONFIG_DEBUG_FORCE_WEAK_PER_CPU is not set
@ -9569,6 +9642,9 @@ CONFIG_MAGIC_SYSRQ_DEFAULT_ENABLE=0x01b6
CONFIG_MAGIC_SYSRQ_SERIAL=y
CONFIG_MAGIC_SYSRQ_SERIAL_SEQUENCE=""
CONFIG_DEBUG_FS=y
CONFIG_DEBUG_FS_ALLOW_ALL=y
# CONFIG_DEBUG_FS_DISALLOW_MOUNT is not set
# CONFIG_DEBUG_FS_ALLOW_NONE is not set
CONFIG_HAVE_ARCH_KGDB=y
# CONFIG_KGDB is not set
CONFIG_ARCH_HAS_UBSAN_SANITIZE_ALL=y
@ -9612,7 +9688,6 @@ CONFIG_HAVE_ARCH_KASAN_SW_TAGS=y
CONFIG_CC_HAS_KASAN_GENERIC=y
CONFIG_CC_HAS_WORKING_NOSANITIZE_ADDRESS=y
# CONFIG_KASAN is not set
CONFIG_KASAN_STACK=1
# end of Memory Debugging
# CONFIG_DEBUG_SHIRQ is not set
@ -9685,6 +9760,7 @@ CONFIG_BUG_ON_DATA_CORRUPTION=y
#
# CONFIG_RCU_PERF_TEST is not set
# CONFIG_RCU_TORTURE_TEST is not set
# CONFIG_RCU_REF_SCALE_TEST is not set
CONFIG_RCU_CPU_STALL_TIMEOUT=21
# CONFIG_RCU_TRACE is not set
# CONFIG_RCU_EQS_DEBUG is not set
@ -9813,6 +9889,7 @@ CONFIG_TEST_STATIC_KEYS=m
# CONFIG_TEST_MEMCAT_P is not set
# CONFIG_TEST_STACKINIT is not set
# CONFIG_TEST_MEMINIT is not set
# CONFIG_TEST_FREE_PAGES is not set
# CONFIG_MEMTEST is not set
# end of Kernel Testing and Coverage
# end of Kernel hacking

View file

@ -1,6 +1,6 @@
#
# Automatically generated file; DO NOT EDIT.
# Linux/i386 5.8.0-gnu Kernel Configuration
# Linux/i386 5.9.2 Kernel Configuration
#
CONFIG_CC_VERSION_TEXT="gcc (Debian 8.3.0-6) 8.3.0"
CONFIG_CC_IS_GCC=y
@ -27,12 +27,14 @@ CONFIG_HAVE_KERNEL_LZMA=y
CONFIG_HAVE_KERNEL_XZ=y
CONFIG_HAVE_KERNEL_LZO=y
CONFIG_HAVE_KERNEL_LZ4=y
CONFIG_HAVE_KERNEL_ZSTD=y
CONFIG_KERNEL_GZIP=y
# CONFIG_KERNEL_BZIP2 is not set
# CONFIG_KERNEL_LZMA is not set
# CONFIG_KERNEL_XZ is not set
# CONFIG_KERNEL_LZO is not set
# CONFIG_KERNEL_LZ4 is not set
# CONFIG_KERNEL_ZSTD is not set
CONFIG_DEFAULT_INIT=""
CONFIG_DEFAULT_HOSTNAME="(none)"
CONFIG_SWAP=y
@ -76,6 +78,8 @@ CONFIG_GENERIC_CLOCKEVENTS=y
CONFIG_GENERIC_CLOCKEVENTS_BROADCAST=y
CONFIG_GENERIC_CLOCKEVENTS_MIN_ADJUST=y
CONFIG_GENERIC_CMOS_UPDATE=y
CONFIG_HAVE_POSIX_CPU_TIMERS_TASK_WORK=y
CONFIG_POSIX_CPU_TIMERS_TASK_WORK=y
#
# Timers subsystem
@ -97,7 +101,6 @@ CONFIG_PREEMPT_VOLUNTARY=y
#
CONFIG_TICK_CPU_ACCOUNTING=y
# CONFIG_IRQ_TIME_ACCOUNTING is not set
CONFIG_SCHED_THERMAL_PRESSURE=y
CONFIG_BSD_PROCESS_ACCT=y
CONFIG_BSD_PROCESS_ACCT_V3=y
CONFIG_TASKSTATS=y
@ -180,6 +183,7 @@ CONFIG_RD_LZMA=y
CONFIG_RD_XZ=y
CONFIG_RD_LZO=y
CONFIG_RD_LZ4=y
CONFIG_RD_ZSTD=y
CONFIG_BOOT_CONFIG=y
CONFIG_CC_OPTIMIZE_FOR_PERFORMANCE=y
# CONFIG_CC_OPTIMIZE_FOR_SIZE is not set
@ -307,14 +311,10 @@ CONFIG_X86_32_IRIS=m
CONFIG_SCHED_OMIT_FRAME_POINTER=y
CONFIG_HYPERVISOR_GUEST=y
CONFIG_PARAVIRT=y
CONFIG_PARAVIRT_XXL=y
# CONFIG_PARAVIRT_DEBUG is not set
CONFIG_PARAVIRT_SPINLOCKS=y
CONFIG_X86_HV_CALLBACK_VECTOR=y
CONFIG_XEN=y
CONFIG_XEN_PV=y
CONFIG_XEN_PV_SMP=y
CONFIG_XEN_DOM0=y
CONFIG_XEN_PVHVM=y
CONFIG_XEN_PVHVM_SMP=y
CONFIG_XEN_SAVE_RESTORE=y
@ -511,7 +511,6 @@ CONFIG_ACPI_SYSTEM_POWER_STATES_SUPPORT=y
# CONFIG_ACPI_DEBUGGER is not set
CONFIG_ACPI_SPCR_TABLE=y
CONFIG_ACPI_SLEEP=y
# CONFIG_ACPI_PROCFS_POWER is not set
CONFIG_ACPI_REV_OVERRIDE_POSSIBLE=y
CONFIG_ACPI_EC_DEBUGFS=m
CONFIG_ACPI_AC=m
@ -720,6 +719,7 @@ CONFIG_KVM_VFIO=y
CONFIG_KVM_GENERIC_DIRTYLOG_READ_PROTECT=y
CONFIG_HAVE_KVM_IRQ_BYPASS=y
CONFIG_HAVE_KVM_NO_POLL=y
CONFIG_KVM_XFER_TO_GUEST_WORK=y
CONFIG_VIRTUALIZATION=y
CONFIG_KVM=m
CONFIG_KVM_WERROR=y
@ -737,6 +737,7 @@ CONFIG_AS_TPAUSE=y
CONFIG_CRASH_CORE=y
CONFIG_KEXEC_CORE=y
CONFIG_HOTPLUG_SMT=y
CONFIG_GENERIC_ENTRY=y
CONFIG_OPROFILE=m
# CONFIG_OPROFILE_EVENT_MULTIPLEX is not set
CONFIG_HAVE_OPROFILE=y
@ -790,7 +791,6 @@ CONFIG_HAVE_ARCH_SECCOMP_FILTER=y
CONFIG_SECCOMP_FILTER=y
CONFIG_HAVE_ARCH_STACKLEAK=y
CONFIG_HAVE_STACKPROTECTOR=y
CONFIG_CC_HAS_STACKPROTECTOR_NONE=y
CONFIG_STACKPROTECTOR=y
CONFIG_STACKPROTECTOR_STRONG=y
CONFIG_HAVE_ARCH_WITHIN_STACK_FRAMES=y
@ -805,7 +805,6 @@ CONFIG_ARCH_HAS_ELF_RANDOMIZE=y
CONFIG_HAVE_ARCH_MMAP_RND_BITS=y
CONFIG_HAVE_EXIT_THREAD=y
CONFIG_ARCH_MMAP_RND_BITS=8
CONFIG_HAVE_COPY_THREAD_TLS=y
CONFIG_ISA_BUS_API=y
CONFIG_CLONE_BACKWARDS=y
CONFIG_OLD_SIGSUSPEND3=y
@ -947,7 +946,6 @@ CONFIG_SELECT_MEMORY_MODEL=y
# CONFIG_FLATMEM_MANUAL is not set
CONFIG_SPARSEMEM_MANUAL=y
CONFIG_SPARSEMEM=y
CONFIG_HAVE_MEMORY_PRESENT=y
CONFIG_SPARSEMEM_STATIC=y
CONFIG_HAVE_FAST_GUP=y
CONFIG_MEMORY_ISOLATION=y
@ -1128,8 +1126,8 @@ CONFIG_IPV6_PIMSM_V2=y
# CONFIG_IPV6_RPL_LWTUNNEL is not set
CONFIG_NETLABEL=y
CONFIG_MPTCP=y
CONFIG_INET_MPTCP_DIAG=m
CONFIG_MPTCP_IPV6=y
# CONFIG_MPTCP_HMAC_TEST is not set
CONFIG_NETWORK_SECMARK=y
CONFIG_NET_PTP_CLASSIFY=y
# CONFIG_NETWORK_PHY_TIMESTAMPING is not set
@ -1557,6 +1555,7 @@ CONFIG_NET_DSA_TAG_DSA=m
CONFIG_NET_DSA_TAG_EDSA=m
CONFIG_NET_DSA_TAG_MTK=m
CONFIG_NET_DSA_TAG_KSZ=m
CONFIG_NET_DSA_TAG_RTL4_A=m
CONFIG_NET_DSA_TAG_OCELOT=m
CONFIG_NET_DSA_TAG_QCA=m
CONFIG_NET_DSA_TAG_LAN9303=m
@ -2298,6 +2297,9 @@ CONFIG_BCH_CONST_M=14
CONFIG_BCH_CONST_T=4
# end of Self-contained MTD device drivers
#
# NAND
#
CONFIG_MTD_NAND_CORE=m
CONFIG_MTD_ONENAND=m
CONFIG_MTD_ONENAND_VERIFY_WRITE=y
@ -2332,6 +2334,7 @@ CONFIG_MTD_NAND_DISKONCHIP=m
CONFIG_MTD_NAND_DISKONCHIP_PROBE_ADDRESS=0
# CONFIG_MTD_NAND_DISKONCHIP_BBTWRITE is not set
CONFIG_MTD_SPI_NAND=m
# end of NAND
#
# LPDDR & LPDDR2 PCM memory drivers
@ -2447,6 +2450,7 @@ CONFIG_NVME_RDMA=m
CONFIG_NVME_FC=m
CONFIG_NVME_TCP=m
CONFIG_NVME_TARGET=m
# CONFIG_NVME_TARGET_PASSTHRU is not set
CONFIG_NVME_TARGET_LOOP=m
CONFIG_NVME_TARGET_RDMA=m
CONFIG_NVME_TARGET_FC=m
@ -2629,6 +2633,7 @@ CONFIG_SCSI_UFSHCD_PLATFORM=m
CONFIG_SCSI_UFS_CDNS_PLATFORM=m
# CONFIG_SCSI_UFS_DWC_TC_PLATFORM is not set
# CONFIG_SCSI_UFS_BSG is not set
CONFIG_SCSI_UFS_CRYPTO=y
CONFIG_SCSI_HPTIOP=m
CONFIG_SCSI_BUSLOGIC=m
CONFIG_SCSI_FLASHPOINT=y
@ -2821,7 +2826,7 @@ CONFIG_MD_CLUSTER=m
CONFIG_BCACHE=m
# CONFIG_BCACHE_DEBUG is not set
# CONFIG_BCACHE_CLOSURES_DEBUG is not set
# CONFIG_BCACHE_ASYNC_REGISTRAION is not set
# CONFIG_BCACHE_ASYNC_REGISTRATION is not set
CONFIG_BLK_DEV_DM_BUILTIN=y
CONFIG_BLK_DEV_DM=y
# CONFIG_DM_DEBUG is not set
@ -3170,6 +3175,7 @@ CONFIG_MLX4_CORE=m
CONFIG_MLX4_DEBUG=y
CONFIG_MLX4_CORE_GEN2=y
CONFIG_MLX5_CORE=m
CONFIG_MLX5_ACCEL=y
# CONFIG_MLX5_FPGA is not set
CONFIG_MLX5_CORE_EN=y
CONFIG_MLX5_EN_ARFS=y
@ -3179,6 +3185,8 @@ CONFIG_MLX5_ESWITCH=y
CONFIG_MLX5_CLS_ACT=y
CONFIG_MLX5_CORE_EN_DCB=y
# CONFIG_MLX5_CORE_IPOIB is not set
CONFIG_MLX5_IPSEC=y
CONFIG_MLX5_EN_IPSEC=y
CONFIG_MLX5_SW_STEERING=y
CONFIG_MLXSW_CORE=m
CONFIG_MLXSW_CORE_HWMON=y
@ -3202,7 +3210,6 @@ CONFIG_ENC28J60=m
CONFIG_ENCX24J600=m
CONFIG_LAN743X=m
CONFIG_NET_VENDOR_MICROSEMI=y
CONFIG_MSCC_OCELOT_SWITCH=m
CONFIG_NET_VENDOR_MYRI=y
CONFIG_MYRI10GE=m
CONFIG_FEALNX=m
@ -3334,6 +3341,7 @@ CONFIG_SKFP=m
CONFIG_NET_SB1000=m
CONFIG_MDIO_DEVICE=y
CONFIG_MDIO_BUS=y
CONFIG_MDIO_DEVRES=y
CONFIG_MDIO_BCM_UNIMAC=m
CONFIG_MDIO_BITBANG=m
CONFIG_MDIO_GPIO=m
@ -3645,7 +3653,13 @@ CONFIG_MT7601U=m
# CONFIG_MT7603E is not set
# CONFIG_MT7615E is not set
# CONFIG_MT7663U is not set
# CONFIG_MT7663S is not set
# CONFIG_MT7915E is not set
CONFIG_WLAN_VENDOR_MICROCHIP=y
CONFIG_WILC1000=m
CONFIG_WILC1000_SDIO=m
CONFIG_WILC1000_SPI=m
# CONFIG_WILC1000_HW_OOB_INTR is not set
CONFIG_WLAN_VENDOR_RALINK=y
CONFIG_RT2X00=m
CONFIG_RT2400PCI=m
@ -4271,6 +4285,7 @@ CONFIG_HW_RANDOM=y
CONFIG_HW_RANDOM_TIMERIOMEM=m
CONFIG_HW_RANDOM_INTEL=m
CONFIG_HW_RANDOM_AMD=m
CONFIG_HW_RANDOM_BA431=m
CONFIG_HW_RANDOM_GEODE=m
CONFIG_HW_RANDOM_VIA=m
CONFIG_HW_RANDOM_VIRTIO=m
@ -4457,6 +4472,7 @@ CONFIG_SPI_DLN2=m
CONFIG_SPI_NXP_FLEXSPI=m
CONFIG_SPI_GPIO=m
CONFIG_SPI_LM70_LLP=m
CONFIG_SPI_LANTIQ_SSC=m
CONFIG_SPI_OC_TINY=m
CONFIG_SPI_PXA2XX=m
CONFIG_SPI_PXA2XX_PCI=m
@ -4482,6 +4498,7 @@ CONFIG_SPI_SPIDEV=m
# CONFIG_SPI_LOOPBACK_TEST is not set
CONFIG_SPI_TLE62X0=m
# CONFIG_SPI_SLAVE is not set
CONFIG_SPI_DYNAMIC=y
CONFIG_SPMI=m
CONFIG_HSI=m
CONFIG_HSI_BOARDINFO=y
@ -4543,6 +4560,7 @@ CONFIG_PINCTRL_BROXTON=m
CONFIG_PINCTRL_CANNONLAKE=m
CONFIG_PINCTRL_CEDARFORK=m
CONFIG_PINCTRL_DENVERTON=m
CONFIG_PINCTRL_EMMITSBURG=m
CONFIG_PINCTRL_GEMINILAKE=m
CONFIG_PINCTRL_ICELAKE=m
CONFIG_PINCTRL_JASPERLAKE=m
@ -4594,6 +4612,7 @@ CONFIG_GPIO_MAX7300=m
CONFIG_GPIO_MAX732X=m
CONFIG_GPIO_PCA953X=m
CONFIG_GPIO_PCA953X_IRQ=y
CONFIG_GPIO_PCA9570=m
CONFIG_GPIO_PCF857X=m
CONFIG_GPIO_TPIC2810=m
# end of I2C GPIO expanders
@ -4761,6 +4780,7 @@ CONFIG_CHARGER_BQ2415X=m
CONFIG_CHARGER_BQ24190=m
CONFIG_CHARGER_BQ24257=m
CONFIG_CHARGER_BQ24735=m
CONFIG_CHARGER_BQ2515X=m
CONFIG_CHARGER_BQ25890=m
CONFIG_CHARGER_SMB347=m
CONFIG_CHARGER_TPS65090=m
@ -4807,6 +4827,7 @@ CONFIG_SENSORS_APPLESMC=m
CONFIG_SENSORS_ASB100=m
CONFIG_SENSORS_ASPEED=m
CONFIG_SENSORS_ATXP1=m
CONFIG_SENSORS_CORSAIR_CPRO=m
CONFIG_SENSORS_DRIVETEMP=y
CONFIG_SENSORS_DS620=m
CONFIG_SENSORS_DS1621=m
@ -4972,6 +4993,7 @@ CONFIG_SENSORS_XGENE=m
CONFIG_SENSORS_ACPI_POWER=m
CONFIG_SENSORS_ATK0110=m
CONFIG_THERMAL=y
CONFIG_THERMAL_NETLINK=y
# CONFIG_THERMAL_STATISTICS is not set
CONFIG_THERMAL_EMERGENCY_POWEROFF_DELAY_MS=0
CONFIG_THERMAL_HWMON=y
@ -4983,7 +5005,6 @@ CONFIG_THERMAL_GOV_FAIR_SHARE=y
CONFIG_THERMAL_GOV_STEP_WISE=y
CONFIG_THERMAL_GOV_BANG_BANG=y
CONFIG_THERMAL_GOV_USER_SPACE=y
CONFIG_CLOCK_THERMAL=y
CONFIG_DEVFREQ_THERMAL=y
CONFIG_THERMAL_EMULATION=y
@ -5209,7 +5230,6 @@ CONFIG_MFD_SI476X_CORE=m
CONFIG_MFD_SM501=m
CONFIG_MFD_SM501_GPIO=y
CONFIG_MFD_SKY81452=m
CONFIG_MFD_SMSC=y
CONFIG_ABX500_CORE=y
CONFIG_AB3100_CORE=y
CONFIG_AB3100_OTP=m
@ -5315,6 +5335,7 @@ CONFIG_REGULATOR_MT6323=m
CONFIG_REGULATOR_MT6358=m
CONFIG_REGULATOR_MT6397=m
CONFIG_REGULATOR_PALMAS=m
CONFIG_REGULATOR_PCA9450=m
CONFIG_REGULATOR_PCAP=m
CONFIG_REGULATOR_PCF50633=m
CONFIG_REGULATOR_PFUZE100=m
@ -5323,6 +5344,7 @@ CONFIG_REGULATOR_PV88080=m
CONFIG_REGULATOR_PV88090=m
CONFIG_REGULATOR_PWM=m
CONFIG_REGULATOR_QCOM_SPMI=m
CONFIG_REGULATOR_QCOM_USB_VBUS=m
CONFIG_REGULATOR_RC5T583=m
CONFIG_REGULATOR_RT5033=m
CONFIG_REGULATOR_S2MPA01=m
@ -5348,6 +5370,7 @@ CONFIG_REGULATOR_WM831X=m
CONFIG_REGULATOR_WM8350=m
CONFIG_REGULATOR_WM8400=m
CONFIG_REGULATOR_WM8994=m
CONFIG_REGULATOR_QCOM_LABIBB=m
CONFIG_RC_CORE=m
CONFIG_RC_MAP=m
CONFIG_LIRC=y
@ -5383,10 +5406,12 @@ CONFIG_IR_SERIAL=m
CONFIG_IR_SERIAL_TRANSMITTER=y
CONFIG_IR_SIR=m
CONFIG_RC_XBOX_DVD=m
CONFIG_IR_TOY=m
CONFIG_CEC_CORE=m
CONFIG_CEC_NOTIFIER=y
# CONFIG_MEDIA_CEC_RC is not set
CONFIG_MEDIA_CEC_SUPPORT=y
CONFIG_CEC_CH7322=m
CONFIG_CEC_CROS_EC=m
CONFIG_CEC_SECO=m
CONFIG_CEC_SECO_RC=y
@ -5949,6 +5974,7 @@ CONFIG_VIDEO_MT9V111=m
CONFIG_VIDEO_SR030PC30=m
CONFIG_VIDEO_NOON010PC30=m
CONFIG_VIDEO_M5MOLS=m
CONFIG_VIDEO_RDACM20=m
CONFIG_VIDEO_RJ54N1=m
CONFIG_VIDEO_S5K6AA=m
CONFIG_VIDEO_S5K6A3=m
@ -5965,6 +5991,7 @@ CONFIG_VIDEO_S5C73M3=m
CONFIG_VIDEO_AD5820=m
CONFIG_VIDEO_AK7375=m
CONFIG_VIDEO_DW9714=m
CONFIG_VIDEO_DW9768=m
CONFIG_VIDEO_DW9807_VCM=m
# end of Lens drivers
@ -6276,6 +6303,7 @@ CONFIG_DRM_AMDGPU_USERPTR=y
#
CONFIG_DRM_AMD_DC=y
CONFIG_DRM_AMD_DC_DCN=y
CONFIG_DRM_AMD_DC_DCN3_0=y
# CONFIG_DRM_AMD_DC_HDCP is not set
# CONFIG_DEBUG_KERNEL_DC is not set
# end of Display Engine Configuration
@ -6285,6 +6313,7 @@ CONFIG_DRM_NOUVEAU=m
CONFIG_NOUVEAU_DEBUG=5
CONFIG_NOUVEAU_DEBUG_DEFAULT=3
# CONFIG_NOUVEAU_DEBUG_MMU is not set
# CONFIG_NOUVEAU_DEBUG_PUSH is not set
CONFIG_DRM_NOUVEAU_BACKLIGHT=y
CONFIG_DRM_I915=m
CONFIG_DRM_I915_FORCE_PROBE=""
@ -6500,7 +6529,6 @@ CONFIG_LCD_LMS501KF03=m
CONFIG_LCD_HX8357=m
CONFIG_LCD_OTM3225A=m
CONFIG_BACKLIGHT_CLASS_DEVICE=y
CONFIG_BACKLIGHT_GENERIC=m
CONFIG_BACKLIGHT_LM3533=m
CONFIG_BACKLIGHT_CARILLO_RANCH=m
CONFIG_BACKLIGHT_PWM=m
@ -6539,7 +6567,6 @@ CONFIG_HDMI=y
# Console display driver support
#
CONFIG_VGA_CONSOLE=y
# CONFIG_VGACON_SOFT_SCROLLBACK is not set
CONFIG_MDA_CONSOLE=m
CONFIG_DUMMY_CONSOLE=y
CONFIG_DUMMY_CONSOLE_COLUMNS=80
@ -6717,6 +6744,7 @@ CONFIG_SND_YMFPCI=m
# HD-Audio
#
CONFIG_SND_HDA=m
CONFIG_SND_HDA_GENERIC_LEDS=y
CONFIG_SND_HDA_INTEL=m
CONFIG_SND_HDA_HWDEP=y
CONFIG_SND_HDA_RECONFIG=y
@ -6737,6 +6765,7 @@ CONFIG_SND_HDA_CODEC_CMEDIA=m
CONFIG_SND_HDA_CODEC_SI3054=m
CONFIG_SND_HDA_GENERIC=m
CONFIG_SND_HDA_POWER_SAVE_DEFAULT=0
CONFIG_SND_HDA_INTEL_HDMI_SILENT_STREAM=y
# end of HD-Audio
CONFIG_SND_HDA_CORE=m
@ -7005,6 +7034,7 @@ CONFIG_SND_SOC_MAX98504=m
CONFIG_SND_SOC_MAX9867=m
CONFIG_SND_SOC_MAX98927=m
CONFIG_SND_SOC_MAX98373=m
CONFIG_SND_SOC_MAX98373_I2C=m
CONFIG_SND_SOC_MAX98390=m
CONFIG_SND_SOC_MAX9860=m
CONFIG_SND_SOC_MSM8916_WCD_ANALOG=m
@ -7296,8 +7326,8 @@ CONFIG_USB_ANNOUNCE_NEW_DEVICES=y
CONFIG_USB_DEFAULT_PERSIST=y
CONFIG_USB_DYNAMIC_MINORS=y
# CONFIG_USB_OTG is not set
# CONFIG_USB_OTG_WHITELIST is not set
# CONFIG_USB_OTG_BLACKLIST_HUB is not set
# CONFIG_USB_OTG_PRODUCTLIST is not set
# CONFIG_USB_OTG_DISABLE_EXTERNAL_HUB is not set
CONFIG_USB_LEDS_TRIGGER_USBPORT=m
CONFIG_USB_AUTOSUSPEND_DELAY=2
CONFIG_USB_MON=m
@ -7732,6 +7762,7 @@ CONFIG_MEMSTICK_REALTEK_USB=m
CONFIG_NEW_LEDS=y
CONFIG_LEDS_CLASS=y
CONFIG_LEDS_CLASS_FLASH=m
CONFIG_LEDS_CLASS_MULTICOLOR=m
# CONFIG_LEDS_BRIGHTNESS_HW_CHANGED is not set
#
@ -7753,11 +7784,6 @@ CONFIG_LEDS_PCA9532_GPIO=y
CONFIG_LEDS_GPIO=m
CONFIG_LEDS_LP3944=m
CONFIG_LEDS_LP3952=m
CONFIG_LEDS_LP55XX_COMMON=m
CONFIG_LEDS_LP5521=m
CONFIG_LEDS_LP5523=m
CONFIG_LEDS_LP5562=m
CONFIG_LEDS_LP8501=m
CONFIG_LEDS_LP8788=m
CONFIG_LEDS_CLEVO_MAIL=m
CONFIG_LEDS_PCA955X=m
@ -7822,7 +7848,6 @@ CONFIG_LEDS_TRIGGER_AUDIO=m
CONFIG_INFINIBAND=m
CONFIG_INFINIBAND_USER_MAD=m
CONFIG_INFINIBAND_USER_ACCESS=m
# CONFIG_INFINIBAND_EXP_LEGACY_VERBS_NEW_UAPI is not set
CONFIG_INFINIBAND_USER_MEM=y
CONFIG_INFINIBAND_ON_DEMAND_PAGING=y
CONFIG_INFINIBAND_ADDR_TRANS=y
@ -8027,6 +8052,7 @@ CONFIG_INTEL_IDMA64=m
CONFIG_PCH_DMA=m
CONFIG_PLX_DMA=m
CONFIG_TIMB_DMA=m
CONFIG_XILINX_ZYNQMP_DPDMA=m
CONFIG_QCOM_HIDMA_MGMT=m
CONFIG_QCOM_HIDMA=m
CONFIG_DW_DMAC_CORE=m
@ -8109,6 +8135,8 @@ CONFIG_VIRTIO_MMIO_CMDLINE_DEVICES=y
CONFIG_VDPA=m
# CONFIG_VDPA_SIM is not set
CONFIG_IFCVF=m
CONFIG_MLX5_VDPA=y
CONFIG_MLX5_VDPA_NET=m
CONFIG_VHOST_IOTLB=m
CONFIG_VHOST_RING=m
CONFIG_VHOST=m
@ -8148,13 +8176,8 @@ CONFIG_XEN_PVCALLS_FRONTEND=m
# CONFIG_XEN_PVCALLS_BACKEND is not set
CONFIG_XEN_SCSI_BACKEND=m
CONFIG_XEN_PRIVCMD=m
CONFIG_XEN_ACPI_PROCESSOR=y
CONFIG_XEN_MCE_LOG=y
CONFIG_XEN_HAVE_PVMMU=y
CONFIG_XEN_AUTO_XLATE=y
CONFIG_XEN_ACPI=y
CONFIG_XEN_SYMS=y
CONFIG_XEN_HAVE_VPMU=y
CONFIG_XEN_FRONT_PGDIR_SHBUF=m
# end of Xen driver support
@ -8376,35 +8399,9 @@ CONFIG_AD2S1210=m
# end of IIO staging drivers
CONFIG_FB_SM750=m
#
# Speakup console speech
#
CONFIG_SPEAKUP=m
CONFIG_SPEAKUP_SYNTH_ACNTSA=m
CONFIG_SPEAKUP_SYNTH_ACNTPC=m
CONFIG_SPEAKUP_SYNTH_APOLLO=m
CONFIG_SPEAKUP_SYNTH_AUDPTR=m
CONFIG_SPEAKUP_SYNTH_BNS=m
CONFIG_SPEAKUP_SYNTH_DECTLK=m
CONFIG_SPEAKUP_SYNTH_DECEXT=m
CONFIG_SPEAKUP_SYNTH_DECPC=m
CONFIG_SPEAKUP_SYNTH_DTLK=m
CONFIG_SPEAKUP_SYNTH_KEYPC=m
CONFIG_SPEAKUP_SYNTH_LTLK=m
CONFIG_SPEAKUP_SYNTH_SOFT=m
CONFIG_SPEAKUP_SYNTH_SPKOUT=m
CONFIG_SPEAKUP_SYNTH_TXPRT=m
CONFIG_SPEAKUP_SYNTH_DUMMY=m
# end of Speakup console speech
CONFIG_STAGING_MEDIA=y
CONFIG_INTEL_ATOMISP=y
CONFIG_VIDEO_IPU3_IMGU=m
#
# soc_camera sensor drivers
#
CONFIG_VIDEO_USBVISION=m
#
@ -8451,17 +8448,12 @@ CONFIG_FB_TFT_UC1611=m
CONFIG_FB_TFT_UC1701=m
CONFIG_FB_TFT_UPD161704=m
CONFIG_FB_TFT_WATTEROTT=m
CONFIG_WILC1000=m
CONFIG_WILC1000_SDIO=m
CONFIG_WILC1000_SPI=m
# CONFIG_WILC1000_HW_OOB_INTR is not set
CONFIG_MOST_COMPONENTS=m
CONFIG_MOST_CDEV=m
CONFIG_MOST_NET=m
CONFIG_MOST_SOUND=m
CONFIG_MOST_VIDEO=m
CONFIG_MOST_I2C=m
CONFIG_MOST_USB=m
CONFIG_KS7010=m
# CONFIG_PI433 is not set
@ -8524,6 +8516,7 @@ CONFIG_THINKPAD_ACPI_DEBUGFACILITIES=y
# CONFIG_THINKPAD_ACPI_UNSAFE_LEDS is not set
CONFIG_THINKPAD_ACPI_VIDEO=y
CONFIG_THINKPAD_ACPI_HOTKEY_POLL=y
CONFIG_INTEL_ATOMISP2_LED=m
CONFIG_INTEL_CHT_INT33FE=m
CONFIG_INTEL_HID_EVENT=m
CONFIG_INTEL_INT0002_VGPIO=m
@ -8770,6 +8763,7 @@ CONFIG_ADXL372_I2C=m
CONFIG_BMA220=m
CONFIG_BMA400=m
CONFIG_BMA400_I2C=m
CONFIG_BMA400_SPI=m
CONFIG_BMC150_ACCEL=m
CONFIG_BMC150_ACCEL_I2C=m
CONFIG_BMC150_ACCEL_SPI=m
@ -8899,6 +8893,9 @@ CONFIG_BME680_SPI=m
CONFIG_CCS811=m
CONFIG_IAQCORE=m
CONFIG_PMS7003=m
CONFIG_SCD30_CORE=m
CONFIG_SCD30_I2C=m
CONFIG_SCD30_SERIAL=m
CONFIG_SENSIRION_SGP30=m
CONFIG_SPS30=m
CONFIG_VZ89X=m
@ -9058,6 +9055,9 @@ CONFIG_FXOS8700=m
CONFIG_FXOS8700_I2C=m
CONFIG_FXOS8700_SPI=m
CONFIG_KMX61=m
CONFIG_INV_ICM42600=m
CONFIG_INV_ICM42600_I2C=m
CONFIG_INV_ICM42600_SPI=m
CONFIG_INV_MPU6050_IIO=m
CONFIG_INV_MPU6050_I2C=m
CONFIG_INV_MPU6050_SPI=m
@ -9438,6 +9438,7 @@ CONFIG_PM_OPP=y
# CONFIG_INTERCONNECT is not set
CONFIG_COUNTER=m
CONFIG_MOST=m
CONFIG_MOST_USB_HDM=m
# end of Device Drivers
#
@ -9722,6 +9723,7 @@ CONFIG_NFSD_V4=y
# CONFIG_NFSD_BLOCKLAYOUT is not set
# CONFIG_NFSD_SCSILAYOUT is not set
# CONFIG_NFSD_FLEXFILELAYOUT is not set
# CONFIG_NFSD_V4_2_INTER_SSC is not set
CONFIG_NFSD_V4_SECURITY_LABEL=y
CONFIG_GRACE_PERIOD=m
CONFIG_LOCKD=m
@ -10212,7 +10214,7 @@ CONFIG_LZ4_COMPRESS=m
CONFIG_LZ4HC_COMPRESS=m
CONFIG_LZ4_DECOMPRESS=y
CONFIG_ZSTD_COMPRESS=m
CONFIG_ZSTD_DECOMPRESS=m
CONFIG_ZSTD_DECOMPRESS=y
CONFIG_XZ_DEC=y
CONFIG_XZ_DEC_X86=y
CONFIG_XZ_DEC_POWERPC=y
@ -10228,6 +10230,7 @@ CONFIG_DECOMPRESS_LZMA=y
CONFIG_DECOMPRESS_XZ=y
CONFIG_DECOMPRESS_LZO=y
CONFIG_DECOMPRESS_LZ4=y
CONFIG_DECOMPRESS_ZSTD=y
CONFIG_GENERIC_ALLOCATOR=y
CONFIG_REED_SOLOMON=m
CONFIG_REED_SOLOMON_ENC8=y
@ -10246,6 +10249,7 @@ CONFIG_ASSOCIATIVE_ARRAY=y
CONFIG_HAS_IOMEM=y
CONFIG_HAS_IOPORT_MAP=y
CONFIG_HAS_DMA=y
CONFIG_DMA_OPS=y
CONFIG_NEED_SG_DMA_LENGTH=y
CONFIG_NEED_DMA_MAP_STATE=y
CONFIG_ARCH_DMA_ADDR_T_64BIT=y
@ -10305,6 +10309,8 @@ CONFIG_OBJAGG=m
# CONFIG_STRING_SELFTEST is not set
# end of Library routines
CONFIG_PLDMFW=y
#
# Kernel hacking
#
@ -10335,6 +10341,7 @@ CONFIG_FRAME_WARN=1024
# CONFIG_HEADERS_INSTALL is not set
# CONFIG_DEBUG_SECTION_MISMATCH is not set
CONFIG_SECTION_MISMATCH_WARN_ONLY=y
# CONFIG_DEBUG_FORCE_FUNCTION_ALIGN_32B is not set
CONFIG_FRAME_POINTER=y
# CONFIG_DEBUG_FORCE_WEAK_PER_CPU is not set
# end of Compile-time checks and compiler options
@ -10347,6 +10354,9 @@ CONFIG_MAGIC_SYSRQ_DEFAULT_ENABLE=0x1
CONFIG_MAGIC_SYSRQ_SERIAL=y
CONFIG_MAGIC_SYSRQ_SERIAL_SEQUENCE=""
CONFIG_DEBUG_FS=y
CONFIG_DEBUG_FS_ALLOW_ALL=y
# CONFIG_DEBUG_FS_DISALLOW_MOUNT is not set
# CONFIG_DEBUG_FS_ALLOW_NONE is not set
CONFIG_HAVE_ARCH_KGDB=y
CONFIG_KGDB=y
CONFIG_KGDB_SERIAL_CONSOLE=y
@ -10394,7 +10404,6 @@ CONFIG_HAVE_DEBUG_STACKOVERFLOW=y
# CONFIG_DEBUG_STACKOVERFLOW is not set
CONFIG_CC_HAS_KASAN_GENERIC=y
CONFIG_CC_HAS_WORKING_NOSANITIZE_ADDRESS=y
CONFIG_KASAN_STACK=1
# end of Memory Debugging
# CONFIG_DEBUG_SHIRQ is not set
@ -10471,6 +10480,7 @@ CONFIG_STACKTRACE=y
CONFIG_TORTURE_TEST=m
# CONFIG_RCU_PERF_TEST is not set
# CONFIG_RCU_TORTURE_TEST is not set
# CONFIG_RCU_REF_SCALE_TEST is not set
CONFIG_RCU_CPU_STALL_TIMEOUT=60
# CONFIG_RCU_TRACE is not set
# CONFIG_RCU_EQS_DEBUG is not set
@ -10549,6 +10559,7 @@ CONFIG_IO_STRICT_DEVMEM=y
# x86 Debugging
#
CONFIG_TRACE_IRQFLAGS_SUPPORT=y
CONFIG_TRACE_IRQFLAGS_NMI_SUPPORT=y
CONFIG_EARLY_PRINTK_USB=y
# CONFIG_X86_VERBOSE_BOOTUP is not set
CONFIG_EARLY_PRINTK=y
@ -10626,6 +10637,8 @@ CONFIG_TEST_STATIC_KEYS=m
CONFIG_TEST_OBJAGG=m
# CONFIG_TEST_STACKINIT is not set
# CONFIG_TEST_MEMINIT is not set
# CONFIG_TEST_FREE_PAGES is not set
# CONFIG_TEST_FPU is not set
CONFIG_MEMTEST=y
# CONFIG_HYPERV_TESTING is not set
# end of Kernel Testing and Coverage

View file

@ -1,6 +1,6 @@
#
# Automatically generated file; DO NOT EDIT.
# Linux/x86 5.8.0-gnu Kernel Configuration
# Linux/x86 5.9.2 Kernel Configuration
#
CONFIG_CC_VERSION_TEXT="gcc (Debian 8.3.0-6) 8.3.0"
CONFIG_CC_IS_GCC=y
@ -29,12 +29,14 @@ CONFIG_HAVE_KERNEL_LZMA=y
CONFIG_HAVE_KERNEL_XZ=y
CONFIG_HAVE_KERNEL_LZO=y
CONFIG_HAVE_KERNEL_LZ4=y
CONFIG_HAVE_KERNEL_ZSTD=y
CONFIG_KERNEL_GZIP=y
# CONFIG_KERNEL_BZIP2 is not set
# CONFIG_KERNEL_LZMA is not set
# CONFIG_KERNEL_XZ is not set
# CONFIG_KERNEL_LZO is not set
# CONFIG_KERNEL_LZ4 is not set
# CONFIG_KERNEL_ZSTD is not set
CONFIG_DEFAULT_INIT=""
CONFIG_DEFAULT_HOSTNAME="(none)"
CONFIG_SWAP=y
@ -79,6 +81,8 @@ CONFIG_GENERIC_CLOCKEVENTS=y
CONFIG_GENERIC_CLOCKEVENTS_BROADCAST=y
CONFIG_GENERIC_CLOCKEVENTS_MIN_ADJUST=y
CONFIG_GENERIC_CMOS_UPDATE=y
CONFIG_HAVE_POSIX_CPU_TIMERS_TASK_WORK=y
CONFIG_POSIX_CPU_TIMERS_TASK_WORK=y
#
# Timers subsystem
@ -102,7 +106,6 @@ CONFIG_PREEMPT_VOLUNTARY=y
CONFIG_TICK_CPU_ACCOUNTING=y
# CONFIG_VIRT_CPU_ACCOUNTING_GEN is not set
# CONFIG_IRQ_TIME_ACCOUNTING is not set
CONFIG_SCHED_THERMAL_PRESSURE=y
CONFIG_BSD_PROCESS_ACCT=y
CONFIG_BSD_PROCESS_ACCT_V3=y
CONFIG_TASKSTATS=y
@ -190,6 +193,7 @@ CONFIG_RD_LZMA=y
CONFIG_RD_XZ=y
CONFIG_RD_LZO=y
CONFIG_RD_LZ4=y
CONFIG_RD_ZSTD=y
CONFIG_BOOT_CONFIG=y
CONFIG_CC_OPTIMIZE_FOR_PERFORMANCE=y
# CONFIG_CC_OPTIMIZE_FOR_SIZE is not set
@ -521,7 +525,6 @@ CONFIG_ACPI_SYSTEM_POWER_STATES_SUPPORT=y
CONFIG_ACPI_SPCR_TABLE=y
CONFIG_ACPI_LPIT=y
CONFIG_ACPI_SLEEP=y
# CONFIG_ACPI_PROCFS_POWER is not set
CONFIG_ACPI_REV_OVERRIDE_POSSIBLE=y
CONFIG_ACPI_EC_DEBUGFS=m
CONFIG_ACPI_AC=m
@ -713,6 +716,7 @@ CONFIG_KVM_GENERIC_DIRTYLOG_READ_PROTECT=y
CONFIG_KVM_COMPAT=y
CONFIG_HAVE_KVM_IRQ_BYPASS=y
CONFIG_HAVE_KVM_NO_POLL=y
CONFIG_KVM_XFER_TO_GUEST_WORK=y
CONFIG_VIRTUALIZATION=y
CONFIG_KVM=m
CONFIG_KVM_WERROR=y
@ -731,6 +735,7 @@ CONFIG_AS_TPAUSE=y
CONFIG_CRASH_CORE=y
CONFIG_KEXEC_CORE=y
CONFIG_HOTPLUG_SMT=y
CONFIG_GENERIC_ENTRY=y
CONFIG_OPROFILE=m
# CONFIG_OPROFILE_EVENT_MULTIPLEX is not set
CONFIG_HAVE_OPROFILE=y
@ -784,7 +789,6 @@ CONFIG_HAVE_ARCH_SECCOMP_FILTER=y
CONFIG_SECCOMP_FILTER=y
CONFIG_HAVE_ARCH_STACKLEAK=y
CONFIG_HAVE_STACKPROTECTOR=y
CONFIG_CC_HAS_STACKPROTECTOR_NONE=y
CONFIG_STACKPROTECTOR=y
CONFIG_STACKPROTECTOR_STRONG=y
CONFIG_HAVE_ARCH_WITHIN_STACK_FRAMES=y
@ -806,7 +810,6 @@ CONFIG_ARCH_MMAP_RND_BITS=28
CONFIG_HAVE_ARCH_MMAP_RND_COMPAT_BITS=y
CONFIG_ARCH_MMAP_RND_COMPAT_BITS=8
CONFIG_HAVE_ARCH_COMPAT_MMAP_BASES=y
CONFIG_HAVE_COPY_THREAD_TLS=y
CONFIG_HAVE_STACK_VALIDATION=y
CONFIG_HAVE_RELIABLE_STACKTRACE=y
CONFIG_ISA_BUS_API=y
@ -953,7 +956,6 @@ CONFIG_SELECT_MEMORY_MODEL=y
CONFIG_SPARSEMEM_MANUAL=y
CONFIG_SPARSEMEM=y
CONFIG_NEED_MULTIPLE_NODES=y
CONFIG_HAVE_MEMORY_PRESENT=y
CONFIG_SPARSEMEM_EXTREME=y
CONFIG_SPARSEMEM_VMEMMAP_ENABLE=y
CONFIG_SPARSEMEM_VMEMMAP=y
@ -1154,8 +1156,8 @@ CONFIG_IPV6_PIMSM_V2=y
# CONFIG_IPV6_RPL_LWTUNNEL is not set
CONFIG_NETLABEL=y
CONFIG_MPTCP=y
CONFIG_INET_MPTCP_DIAG=m
CONFIG_MPTCP_IPV6=y
# CONFIG_MPTCP_HMAC_TEST is not set
CONFIG_NETWORK_SECMARK=y
CONFIG_NET_PTP_CLASSIFY=y
# CONFIG_NETWORK_PHY_TIMESTAMPING is not set
@ -1583,6 +1585,7 @@ CONFIG_NET_DSA_TAG_DSA=m
CONFIG_NET_DSA_TAG_EDSA=m
CONFIG_NET_DSA_TAG_MTK=m
CONFIG_NET_DSA_TAG_KSZ=m
CONFIG_NET_DSA_TAG_RTL4_A=m
CONFIG_NET_DSA_TAG_OCELOT=m
CONFIG_NET_DSA_TAG_QCA=m
CONFIG_NET_DSA_TAG_LAN9303=m
@ -2312,6 +2315,9 @@ CONFIG_BCH_CONST_M=14
CONFIG_BCH_CONST_T=4
# end of Self-contained MTD device drivers
#
# NAND
#
CONFIG_MTD_NAND_CORE=m
CONFIG_MTD_ONENAND=m
CONFIG_MTD_ONENAND_VERIFY_WRITE=y
@ -2345,6 +2351,7 @@ CONFIG_MTD_NAND_DISKONCHIP=m
CONFIG_MTD_NAND_DISKONCHIP_PROBE_ADDRESS=0
# CONFIG_MTD_NAND_DISKONCHIP_BBTWRITE is not set
CONFIG_MTD_SPI_NAND=m
# end of NAND
#
# LPDDR & LPDDR2 PCM memory drivers
@ -2457,6 +2464,7 @@ CONFIG_NVME_RDMA=m
CONFIG_NVME_FC=m
CONFIG_NVME_TCP=m
CONFIG_NVME_TARGET=m
# CONFIG_NVME_TARGET_PASSTHRU is not set
CONFIG_NVME_TARGET_LOOP=m
CONFIG_NVME_TARGET_RDMA=m
CONFIG_NVME_TARGET_FC=m
@ -2643,6 +2651,7 @@ CONFIG_SCSI_UFSHCD_PLATFORM=m
CONFIG_SCSI_UFS_CDNS_PLATFORM=m
# CONFIG_SCSI_UFS_DWC_TC_PLATFORM is not set
# CONFIG_SCSI_UFS_BSG is not set
CONFIG_SCSI_UFS_CRYPTO=y
CONFIG_SCSI_HPTIOP=m
CONFIG_SCSI_BUSLOGIC=m
CONFIG_SCSI_FLASHPOINT=y
@ -2822,7 +2831,7 @@ CONFIG_MD_CLUSTER=m
CONFIG_BCACHE=m
# CONFIG_BCACHE_DEBUG is not set
# CONFIG_BCACHE_CLOSURES_DEBUG is not set
# CONFIG_BCACHE_ASYNC_REGISTRAION is not set
# CONFIG_BCACHE_ASYNC_REGISTRATION is not set
CONFIG_BLK_DEV_DM_BUILTIN=y
CONFIG_BLK_DEV_DM=y
# CONFIG_DM_DEBUG is not set
@ -3173,6 +3182,7 @@ CONFIG_MLX4_CORE=m
CONFIG_MLX4_DEBUG=y
CONFIG_MLX4_CORE_GEN2=y
CONFIG_MLX5_CORE=m
CONFIG_MLX5_ACCEL=y
# CONFIG_MLX5_FPGA is not set
CONFIG_MLX5_CORE_EN=y
CONFIG_MLX5_EN_ARFS=y
@ -3182,6 +3192,8 @@ CONFIG_MLX5_ESWITCH=y
CONFIG_MLX5_CLS_ACT=y
CONFIG_MLX5_CORE_EN_DCB=y
# CONFIG_MLX5_CORE_IPOIB is not set
CONFIG_MLX5_IPSEC=y
CONFIG_MLX5_EN_IPSEC=y
CONFIG_MLX5_SW_STEERING=y
CONFIG_MLXSW_CORE=m
CONFIG_MLXSW_CORE_HWMON=y
@ -3205,7 +3217,6 @@ CONFIG_ENC28J60=m
CONFIG_ENCX24J600=m
CONFIG_LAN743X=m
CONFIG_NET_VENDOR_MICROSEMI=y
CONFIG_MSCC_OCELOT_SWITCH=m
CONFIG_NET_VENDOR_MYRI=y
CONFIG_MYRI10GE=m
CONFIG_MYRI10GE_DCA=y
@ -3335,6 +3346,7 @@ CONFIG_SKFP=m
CONFIG_NET_SB1000=m
CONFIG_MDIO_DEVICE=y
CONFIG_MDIO_BUS=y
CONFIG_MDIO_DEVRES=y
CONFIG_MDIO_BCM_UNIMAC=m
CONFIG_MDIO_BITBANG=m
CONFIG_MDIO_CAVIUM=m
@ -3648,7 +3660,13 @@ CONFIG_MT7601U=m
# CONFIG_MT7603E is not set
# CONFIG_MT7615E is not set
# CONFIG_MT7663U is not set
# CONFIG_MT7663S is not set
# CONFIG_MT7915E is not set
CONFIG_WLAN_VENDOR_MICROCHIP=y
CONFIG_WILC1000=m
CONFIG_WILC1000_SDIO=m
CONFIG_WILC1000_SPI=m
# CONFIG_WILC1000_HW_OOB_INTR is not set
CONFIG_WLAN_VENDOR_RALINK=y
CONFIG_RT2X00=m
CONFIG_RT2400PCI=m
@ -4256,6 +4274,7 @@ CONFIG_HW_RANDOM=y
CONFIG_HW_RANDOM_TIMERIOMEM=m
CONFIG_HW_RANDOM_INTEL=m
CONFIG_HW_RANDOM_AMD=m
CONFIG_HW_RANDOM_BA431=m
CONFIG_HW_RANDOM_VIA=m
CONFIG_HW_RANDOM_VIRTIO=m
CONFIG_APPLICOM=m
@ -4434,6 +4453,7 @@ CONFIG_SPI_DLN2=m
CONFIG_SPI_NXP_FLEXSPI=m
CONFIG_SPI_GPIO=m
CONFIG_SPI_LM70_LLP=m
CONFIG_SPI_LANTIQ_SSC=m
CONFIG_SPI_OC_TINY=m
CONFIG_SPI_PXA2XX=m
CONFIG_SPI_PXA2XX_PCI=m
@ -4458,6 +4478,7 @@ CONFIG_SPI_SPIDEV=m
# CONFIG_SPI_LOOPBACK_TEST is not set
CONFIG_SPI_TLE62X0=m
# CONFIG_SPI_SLAVE is not set
CONFIG_SPI_DYNAMIC=y
CONFIG_SPMI=m
CONFIG_HSI=m
CONFIG_HSI_BOARDINFO=y
@ -4518,6 +4539,7 @@ CONFIG_PINCTRL_BROXTON=m
CONFIG_PINCTRL_CANNONLAKE=m
CONFIG_PINCTRL_CEDARFORK=m
CONFIG_PINCTRL_DENVERTON=m
CONFIG_PINCTRL_EMMITSBURG=m
CONFIG_PINCTRL_GEMINILAKE=m
CONFIG_PINCTRL_ICELAKE=m
CONFIG_PINCTRL_JASPERLAKE=m
@ -4568,6 +4590,7 @@ CONFIG_GPIO_MAX7300=m
CONFIG_GPIO_MAX732X=m
CONFIG_GPIO_PCA953X=m
CONFIG_GPIO_PCA953X_IRQ=y
CONFIG_GPIO_PCA9570=m
CONFIG_GPIO_PCF857X=m
CONFIG_GPIO_TPIC2810=m
# end of I2C GPIO expanders
@ -4732,6 +4755,7 @@ CONFIG_CHARGER_BQ2415X=m
CONFIG_CHARGER_BQ24190=m
CONFIG_CHARGER_BQ24257=m
CONFIG_CHARGER_BQ24735=m
CONFIG_CHARGER_BQ2515X=m
CONFIG_CHARGER_BQ25890=m
CONFIG_CHARGER_SMB347=m
CONFIG_CHARGER_TPS65090=m
@ -4778,6 +4802,7 @@ CONFIG_SENSORS_APPLESMC=m
CONFIG_SENSORS_ASB100=m
CONFIG_SENSORS_ASPEED=m
CONFIG_SENSORS_ATXP1=m
CONFIG_SENSORS_CORSAIR_CPRO=m
CONFIG_SENSORS_DRIVETEMP=y
CONFIG_SENSORS_DS620=m
CONFIG_SENSORS_DS1621=m
@ -4943,6 +4968,7 @@ CONFIG_SENSORS_XGENE=m
CONFIG_SENSORS_ACPI_POWER=m
CONFIG_SENSORS_ATK0110=m
CONFIG_THERMAL=y
CONFIG_THERMAL_NETLINK=y
# CONFIG_THERMAL_STATISTICS is not set
CONFIG_THERMAL_EMERGENCY_POWEROFF_DELAY_MS=0
CONFIG_THERMAL_HWMON=y
@ -4954,7 +4980,6 @@ CONFIG_THERMAL_GOV_FAIR_SHARE=y
CONFIG_THERMAL_GOV_STEP_WISE=y
CONFIG_THERMAL_GOV_BANG_BANG=y
CONFIG_THERMAL_GOV_USER_SPACE=y
CONFIG_CLOCK_THERMAL=y
CONFIG_DEVFREQ_THERMAL=y
CONFIG_THERMAL_EMULATION=y
@ -5168,7 +5193,6 @@ CONFIG_MFD_SI476X_CORE=m
CONFIG_MFD_SM501=m
CONFIG_MFD_SM501_GPIO=y
CONFIG_MFD_SKY81452=m
CONFIG_MFD_SMSC=y
CONFIG_ABX500_CORE=y
CONFIG_AB3100_CORE=y
CONFIG_AB3100_OTP=m
@ -5272,6 +5296,7 @@ CONFIG_REGULATOR_MT6323=m
CONFIG_REGULATOR_MT6358=m
CONFIG_REGULATOR_MT6397=m
CONFIG_REGULATOR_PALMAS=m
CONFIG_REGULATOR_PCA9450=m
CONFIG_REGULATOR_PCAP=m
CONFIG_REGULATOR_PCF50633=m
CONFIG_REGULATOR_PFUZE100=m
@ -5280,6 +5305,7 @@ CONFIG_REGULATOR_PV88080=m
CONFIG_REGULATOR_PV88090=m
CONFIG_REGULATOR_PWM=m
CONFIG_REGULATOR_QCOM_SPMI=m
CONFIG_REGULATOR_QCOM_USB_VBUS=m
CONFIG_REGULATOR_RC5T583=m
CONFIG_REGULATOR_RT5033=m
CONFIG_REGULATOR_S2MPA01=m
@ -5305,6 +5331,7 @@ CONFIG_REGULATOR_WM831X=m
CONFIG_REGULATOR_WM8350=m
CONFIG_REGULATOR_WM8400=m
CONFIG_REGULATOR_WM8994=m
CONFIG_REGULATOR_QCOM_LABIBB=m
CONFIG_RC_CORE=m
CONFIG_RC_MAP=m
CONFIG_LIRC=y
@ -5340,10 +5367,12 @@ CONFIG_IR_SERIAL=m
CONFIG_IR_SERIAL_TRANSMITTER=y
CONFIG_IR_SIR=m
CONFIG_RC_XBOX_DVD=m
CONFIG_IR_TOY=m
CONFIG_CEC_CORE=m
CONFIG_CEC_NOTIFIER=y
# CONFIG_MEDIA_CEC_RC is not set
CONFIG_MEDIA_CEC_SUPPORT=y
CONFIG_CEC_CH7322=m
CONFIG_CEC_CROS_EC=m
CONFIG_CEC_SECO=m
CONFIG_CEC_SECO_RC=y
@ -5890,6 +5919,7 @@ CONFIG_VIDEO_MT9V111=m
CONFIG_VIDEO_SR030PC30=m
CONFIG_VIDEO_NOON010PC30=m
CONFIG_VIDEO_M5MOLS=m
CONFIG_VIDEO_RDACM20=m
CONFIG_VIDEO_RJ54N1=m
CONFIG_VIDEO_S5K6AA=m
CONFIG_VIDEO_S5K6A3=m
@ -5906,6 +5936,7 @@ CONFIG_VIDEO_S5C73M3=m
CONFIG_VIDEO_AD5820=m
CONFIG_VIDEO_AK7375=m
CONFIG_VIDEO_DW9714=m
CONFIG_VIDEO_DW9768=m
CONFIG_VIDEO_DW9807_VCM=m
# end of Lens drivers
@ -6211,6 +6242,7 @@ CONFIG_DRM_AMDGPU_USERPTR=y
#
CONFIG_DRM_AMD_DC=y
CONFIG_DRM_AMD_DC_DCN=y
CONFIG_DRM_AMD_DC_DCN3_0=y
# CONFIG_DRM_AMD_DC_HDCP is not set
# CONFIG_DEBUG_KERNEL_DC is not set
# end of Display Engine Configuration
@ -6221,6 +6253,7 @@ CONFIG_DRM_NOUVEAU=m
CONFIG_NOUVEAU_DEBUG=5
CONFIG_NOUVEAU_DEBUG_DEFAULT=3
# CONFIG_NOUVEAU_DEBUG_MMU is not set
# CONFIG_NOUVEAU_DEBUG_PUSH is not set
CONFIG_DRM_NOUVEAU_BACKLIGHT=y
CONFIG_DRM_I915=m
CONFIG_DRM_I915_FORCE_PROBE=""
@ -6431,7 +6464,6 @@ CONFIG_LCD_LMS501KF03=m
CONFIG_LCD_HX8357=m
CONFIG_LCD_OTM3225A=m
CONFIG_BACKLIGHT_CLASS_DEVICE=y
CONFIG_BACKLIGHT_GENERIC=m
CONFIG_BACKLIGHT_LM3533=m
CONFIG_BACKLIGHT_CARILLO_RANCH=m
CONFIG_BACKLIGHT_PWM=m
@ -6470,7 +6502,6 @@ CONFIG_HDMI=y
# Console display driver support
#
CONFIG_VGA_CONSOLE=y
# CONFIG_VGACON_SOFT_SCROLLBACK is not set
CONFIG_DUMMY_CONSOLE=y
CONFIG_DUMMY_CONSOLE_COLUMNS=80
CONFIG_DUMMY_CONSOLE_ROWS=25
@ -6605,6 +6636,7 @@ CONFIG_SND_YMFPCI=m
# HD-Audio
#
CONFIG_SND_HDA=m
CONFIG_SND_HDA_GENERIC_LEDS=y
CONFIG_SND_HDA_INTEL=m
CONFIG_SND_HDA_HWDEP=y
CONFIG_SND_HDA_RECONFIG=y
@ -6625,6 +6657,7 @@ CONFIG_SND_HDA_CODEC_CMEDIA=m
CONFIG_SND_HDA_CODEC_SI3054=m
CONFIG_SND_HDA_GENERIC=m
CONFIG_SND_HDA_POWER_SAVE_DEFAULT=0
CONFIG_SND_HDA_INTEL_HDMI_SILENT_STREAM=y
# end of HD-Audio
CONFIG_SND_HDA_CORE=m
@ -6893,6 +6926,7 @@ CONFIG_SND_SOC_MAX98504=m
CONFIG_SND_SOC_MAX9867=m
CONFIG_SND_SOC_MAX98927=m
CONFIG_SND_SOC_MAX98373=m
CONFIG_SND_SOC_MAX98373_I2C=m
CONFIG_SND_SOC_MAX98390=m
CONFIG_SND_SOC_MAX9860=m
CONFIG_SND_SOC_MSM8916_WCD_ANALOG=m
@ -7190,8 +7224,8 @@ CONFIG_USB_ANNOUNCE_NEW_DEVICES=y
CONFIG_USB_DEFAULT_PERSIST=y
CONFIG_USB_DYNAMIC_MINORS=y
# CONFIG_USB_OTG is not set
# CONFIG_USB_OTG_WHITELIST is not set
# CONFIG_USB_OTG_BLACKLIST_HUB is not set
# CONFIG_USB_OTG_PRODUCTLIST is not set
# CONFIG_USB_OTG_DISABLE_EXTERNAL_HUB is not set
CONFIG_USB_LEDS_TRIGGER_USBPORT=m
CONFIG_USB_AUTOSUSPEND_DELAY=2
CONFIG_USB_MON=m
@ -7626,6 +7660,7 @@ CONFIG_MEMSTICK_REALTEK_USB=m
CONFIG_NEW_LEDS=y
CONFIG_LEDS_CLASS=y
CONFIG_LEDS_CLASS_FLASH=m
CONFIG_LEDS_CLASS_MULTICOLOR=m
# CONFIG_LEDS_BRIGHTNESS_HW_CHANGED is not set
#
@ -7645,11 +7680,6 @@ CONFIG_LEDS_PCA9532_GPIO=y
CONFIG_LEDS_GPIO=m
CONFIG_LEDS_LP3944=m
CONFIG_LEDS_LP3952=m
CONFIG_LEDS_LP55XX_COMMON=m
CONFIG_LEDS_LP5521=m
CONFIG_LEDS_LP5523=m
CONFIG_LEDS_LP5562=m
CONFIG_LEDS_LP8501=m
CONFIG_LEDS_LP8788=m
CONFIG_LEDS_CLEVO_MAIL=m
CONFIG_LEDS_PCA955X=m
@ -7713,7 +7743,6 @@ CONFIG_LEDS_TRIGGER_AUDIO=m
CONFIG_INFINIBAND=m
CONFIG_INFINIBAND_USER_MAD=m
CONFIG_INFINIBAND_USER_ACCESS=m
# CONFIG_INFINIBAND_EXP_LEGACY_VERBS_NEW_UAPI is not set
CONFIG_INFINIBAND_USER_MEM=y
CONFIG_INFINIBAND_ON_DEMAND_PAGING=y
CONFIG_INFINIBAND_ADDR_TRANS=y
@ -7928,6 +7957,7 @@ CONFIG_INTEL_IDXD=m
CONFIG_INTEL_IOATDMA=m
CONFIG_INTEL_MIC_X100_DMA=m
CONFIG_PLX_DMA=m
CONFIG_XILINX_ZYNQMP_DPDMA=m
CONFIG_QCOM_HIDMA_MGMT=m
CONFIG_QCOM_HIDMA=m
CONFIG_DW_DMAC_CORE=m
@ -8013,6 +8043,8 @@ CONFIG_VIRTIO_MMIO_CMDLINE_DEVICES=y
CONFIG_VDPA=m
# CONFIG_VDPA_SIM is not set
CONFIG_IFCVF=m
CONFIG_MLX5_VDPA=y
CONFIG_MLX5_VDPA_NET=m
CONFIG_VHOST_IOTLB=m
CONFIG_VHOST_RING=m
CONFIG_VHOST=m
@ -8063,6 +8095,7 @@ CONFIG_XEN_ACPI=y
CONFIG_XEN_SYMS=y
CONFIG_XEN_HAVE_VPMU=y
CONFIG_XEN_FRONT_PGDIR_SHBUF=m
CONFIG_XEN_UNPOPULATED_ALLOC=y
# end of Xen driver support
# CONFIG_GREYBUS is not set
@ -8282,31 +8315,9 @@ CONFIG_AD2S1210=m
# end of IIO staging drivers
CONFIG_FB_SM750=m
#
# Speakup console speech
#
CONFIG_SPEAKUP=m
CONFIG_SPEAKUP_SYNTH_ACNTSA=m
CONFIG_SPEAKUP_SYNTH_APOLLO=m
CONFIG_SPEAKUP_SYNTH_AUDPTR=m
CONFIG_SPEAKUP_SYNTH_BNS=m
CONFIG_SPEAKUP_SYNTH_DECTLK=m
CONFIG_SPEAKUP_SYNTH_DECEXT=m
CONFIG_SPEAKUP_SYNTH_LTLK=m
CONFIG_SPEAKUP_SYNTH_SOFT=m
CONFIG_SPEAKUP_SYNTH_SPKOUT=m
CONFIG_SPEAKUP_SYNTH_TXPRT=m
CONFIG_SPEAKUP_SYNTH_DUMMY=m
# end of Speakup console speech
CONFIG_STAGING_MEDIA=y
CONFIG_INTEL_ATOMISP=y
CONFIG_VIDEO_IPU3_IMGU=m
#
# soc_camera sensor drivers
#
CONFIG_VIDEO_USBVISION=m
#
@ -8356,17 +8367,12 @@ CONFIG_FB_TFT_UC1611=m
CONFIG_FB_TFT_UC1701=m
CONFIG_FB_TFT_UPD161704=m
CONFIG_FB_TFT_WATTEROTT=m
CONFIG_WILC1000=m
CONFIG_WILC1000_SDIO=m
CONFIG_WILC1000_SPI=m
# CONFIG_WILC1000_HW_OOB_INTR is not set
CONFIG_MOST_COMPONENTS=m
CONFIG_MOST_CDEV=m
CONFIG_MOST_NET=m
CONFIG_MOST_SOUND=m
CONFIG_MOST_VIDEO=m
CONFIG_MOST_I2C=m
CONFIG_MOST_USB=m
CONFIG_KS7010=m
# CONFIG_PI433 is not set
@ -8430,6 +8436,7 @@ CONFIG_THINKPAD_ACPI_DEBUGFACILITIES=y
# CONFIG_THINKPAD_ACPI_UNSAFE_LEDS is not set
CONFIG_THINKPAD_ACPI_VIDEO=y
CONFIG_THINKPAD_ACPI_HOTKEY_POLL=y
CONFIG_INTEL_ATOMISP2_LED=m
CONFIG_INTEL_CHT_INT33FE=m
CONFIG_INTEL_HID_EVENT=m
CONFIG_INTEL_INT0002_VGPIO=m
@ -8690,6 +8697,7 @@ CONFIG_ADXL372_I2C=m
CONFIG_BMA220=m
CONFIG_BMA400=m
CONFIG_BMA400_I2C=m
CONFIG_BMA400_SPI=m
CONFIG_BMC150_ACCEL=m
CONFIG_BMC150_ACCEL_I2C=m
CONFIG_BMC150_ACCEL_SPI=m
@ -8819,6 +8827,9 @@ CONFIG_BME680_SPI=m
CONFIG_CCS811=m
CONFIG_IAQCORE=m
CONFIG_PMS7003=m
CONFIG_SCD30_CORE=m
CONFIG_SCD30_I2C=m
CONFIG_SCD30_SERIAL=m
CONFIG_SENSIRION_SGP30=m
CONFIG_SPS30=m
CONFIG_VZ89X=m
@ -8978,6 +8989,9 @@ CONFIG_FXOS8700=m
CONFIG_FXOS8700_I2C=m
CONFIG_FXOS8700_SPI=m
CONFIG_KMX61=m
CONFIG_INV_ICM42600=m
CONFIG_INV_ICM42600_I2C=m
CONFIG_INV_ICM42600_SPI=m
CONFIG_INV_MPU6050_IIO=m
CONFIG_INV_MPU6050_I2C=m
CONFIG_INV_MPU6050_SPI=m
@ -9370,6 +9384,7 @@ CONFIG_UNISYS_VISORBUS=m
# CONFIG_INTERCONNECT is not set
CONFIG_COUNTER=m
CONFIG_MOST=m
CONFIG_MOST_USB_HDM=m
# end of Device Drivers
#
@ -9523,6 +9538,7 @@ CONFIG_SYSFS=y
CONFIG_TMPFS=y
CONFIG_TMPFS_POSIX_ACL=y
CONFIG_TMPFS_XATTR=y
# CONFIG_TMPFS_INODE64 is not set
CONFIG_HUGETLBFS=y
CONFIG_HUGETLB_PAGE=y
CONFIG_MEMFD_CREATE=y
@ -9658,6 +9674,7 @@ CONFIG_NFSD_V4=y
# CONFIG_NFSD_BLOCKLAYOUT is not set
# CONFIG_NFSD_SCSILAYOUT is not set
# CONFIG_NFSD_FLEXFILELAYOUT is not set
# CONFIG_NFSD_V4_2_INTER_SSC is not set
CONFIG_NFSD_V4_SECURITY_LABEL=y
CONFIG_GRACE_PERIOD=m
CONFIG_LOCKD=m
@ -10177,7 +10194,7 @@ CONFIG_LZ4_COMPRESS=m
CONFIG_LZ4HC_COMPRESS=m
CONFIG_LZ4_DECOMPRESS=y
CONFIG_ZSTD_COMPRESS=m
CONFIG_ZSTD_DECOMPRESS=m
CONFIG_ZSTD_DECOMPRESS=y
CONFIG_XZ_DEC=y
CONFIG_XZ_DEC_X86=y
CONFIG_XZ_DEC_POWERPC=y
@ -10193,6 +10210,7 @@ CONFIG_DECOMPRESS_LZMA=y
CONFIG_DECOMPRESS_XZ=y
CONFIG_DECOMPRESS_LZO=y
CONFIG_DECOMPRESS_LZ4=y
CONFIG_DECOMPRESS_ZSTD=y
CONFIG_GENERIC_ALLOCATOR=y
CONFIG_REED_SOLOMON=m
CONFIG_REED_SOLOMON_ENC8=y
@ -10211,6 +10229,7 @@ CONFIG_ASSOCIATIVE_ARRAY=y
CONFIG_HAS_IOMEM=y
CONFIG_HAS_IOPORT_MAP=y
CONFIG_HAS_DMA=y
CONFIG_DMA_OPS=y
CONFIG_NEED_SG_DMA_LENGTH=y
CONFIG_NEED_DMA_MAP_STATE=y
CONFIG_ARCH_DMA_ADDR_T_64BIT=y
@ -10273,6 +10292,8 @@ CONFIG_OBJAGG=m
# CONFIG_STRING_SELFTEST is not set
# end of Library routines
CONFIG_PLDMFW=y
#
# Kernel hacking
#
@ -10303,6 +10324,7 @@ CONFIG_FRAME_WARN=1024
# CONFIG_HEADERS_INSTALL is not set
# CONFIG_DEBUG_SECTION_MISMATCH is not set
CONFIG_SECTION_MISMATCH_WARN_ONLY=y
# CONFIG_DEBUG_FORCE_FUNCTION_ALIGN_32B is not set
CONFIG_FRAME_POINTER=y
CONFIG_STACK_VALIDATION=y
# CONFIG_DEBUG_FORCE_WEAK_PER_CPU is not set
@ -10316,6 +10338,9 @@ CONFIG_MAGIC_SYSRQ_DEFAULT_ENABLE=0x1
CONFIG_MAGIC_SYSRQ_SERIAL=y
CONFIG_MAGIC_SYSRQ_SERIAL_SEQUENCE=""
CONFIG_DEBUG_FS=y
CONFIG_DEBUG_FS_ALLOW_ALL=y
# CONFIG_DEBUG_FS_DISALLOW_MOUNT is not set
# CONFIG_DEBUG_FS_ALLOW_NONE is not set
CONFIG_HAVE_ARCH_KGDB=y
CONFIG_KGDB=y
CONFIG_KGDB_SERIAL_CONSOLE=y
@ -10328,6 +10353,7 @@ CONFIG_KDB_CONTINUE_CATASTROPHIC=0
CONFIG_ARCH_HAS_EARLY_DEBUG=y
CONFIG_ARCH_HAS_UBSAN_SANITIZE_ALL=y
# CONFIG_UBSAN is not set
CONFIG_HAVE_ARCH_KCSAN=y
# end of Generic Kernel Debugging Instruments
CONFIG_DEBUG_KERNEL=y
@ -10366,7 +10392,6 @@ CONFIG_HAVE_ARCH_KASAN_VMALLOC=y
CONFIG_CC_HAS_KASAN_GENERIC=y
CONFIG_CC_HAS_WORKING_NOSANITIZE_ADDRESS=y
# CONFIG_KASAN is not set
CONFIG_KASAN_STACK=1
# end of Memory Debugging
# CONFIG_DEBUG_SHIRQ is not set
@ -10444,6 +10469,7 @@ CONFIG_STACKTRACE=y
CONFIG_TORTURE_TEST=m
# CONFIG_RCU_PERF_TEST is not set
# CONFIG_RCU_TORTURE_TEST is not set
# CONFIG_RCU_REF_SCALE_TEST is not set
CONFIG_RCU_CPU_STALL_TIMEOUT=60
# CONFIG_RCU_TRACE is not set
# CONFIG_RCU_EQS_DEBUG is not set
@ -10514,7 +10540,6 @@ CONFIG_SYNTH_EVENTS=y
# CONFIG_KPROBE_EVENT_GEN_TEST is not set
# CONFIG_PROVIDE_OHCI1394_DMA_INIT is not set
# CONFIG_SAMPLES is not set
CONFIG_HAVE_ARCH_KCSAN=y
CONFIG_ARCH_HAS_DEVMEM_IS_ALLOWED=y
CONFIG_STRICT_DEVMEM=y
CONFIG_IO_STRICT_DEVMEM=y
@ -10523,6 +10548,7 @@ CONFIG_IO_STRICT_DEVMEM=y
# x86 Debugging
#
CONFIG_TRACE_IRQFLAGS_SUPPORT=y
CONFIG_TRACE_IRQFLAGS_NMI_SUPPORT=y
CONFIG_EARLY_PRINTK_USB=y
# CONFIG_X86_VERBOSE_BOOTUP is not set
CONFIG_EARLY_PRINTK=y
@ -10604,6 +10630,8 @@ CONFIG_TEST_STATIC_KEYS=m
CONFIG_TEST_OBJAGG=m
# CONFIG_TEST_STACKINIT is not set
# CONFIG_TEST_MEMINIT is not set
# CONFIG_TEST_FREE_PAGES is not set
# CONFIG_TEST_FPU is not set
CONFIG_MEMTEST=y
# CONFIG_HYPERV_TESTING is not set
# end of Kernel Testing and Coverage

View file

@ -41,6 +41,7 @@
#include <fcntl.h>
#include <dirent.h>
#include <sys/syscall.h>
#include <sys/prctl.h>
/* Whether we're building the ld.so/libfakechroot wrapper. */
#define HAVE_EXEC_WITH_LOADER \
@ -258,11 +259,20 @@ exec_in_user_namespace (const char *store, int argc, char *argv[])
{
/* Spawn @WRAPPED_PROGRAM@ in a separate namespace where STORE is
bind-mounted in the right place. */
int err;
int err, is_tmpfs;
char *new_root = mkdtemp (strdup ("/tmp/guix-exec-XXXXXX"));
char *new_store = concat (new_root, original_store);
char *cwd = get_current_dir_name ();
/* Become the new parent of grand-children when their parent dies. */
prctl (PR_SET_CHILD_SUBREAPER, 1);
/* Optionally, make NEW_ROOT a tmpfs. That way, if we have to leave it
behind because there are sub-processes still running when this wrapper
exits, it's OK. */
err = mount ("none", new_root, "tmpfs", 0, NULL);
is_tmpfs = (err == 0);
/* Create a child with separate namespaces and set up bind-mounts from
there. That way, bind-mounts automatically disappear when the child
exits, which simplifies cleanup for the parent. Note: clone is more
@ -300,6 +310,7 @@ exec_in_user_namespace (const char *store, int argc, char *argv[])
/* Failure: user namespaces not supported. */
fprintf (stderr, "%s: error: 'clone' failed: %m\n", argv[0]);
rm_rf (new_root);
free (new_root);
break;
default:
@ -312,10 +323,25 @@ exec_in_user_namespace (const char *store, int argc, char *argv[])
write_id_map (child, "uid_map", getuid ());
write_id_map (child, "gid_map", getgid ());
int status;
int status, status_other;
waitpid (child, &status, 0);
chdir ("/"); /* avoid EBUSY */
rm_rf (new_root);
chdir ("/"); /* avoid EBUSY */
if (is_tmpfs)
{
/* NEW_ROOT lives on in child processes and we no longer need it
to exist as an empty directory in the global namespace. */
umount (new_root);
rmdir (new_root);
}
/* Check whether there are child processes left. If there are none,
we can remove NEW_ROOT just fine. Conversely, if there are
processes left (for example because this wrapper's child forked),
we have to leave NEW_ROOT behind so that those processes can still
access their root file system (XXX). */
else if (waitpid (-1 , &status_other, WNOHANG) == -1)
rm_rf (new_root);
free (new_root);
if (WIFEXITED (status))
@ -490,6 +516,9 @@ exec_with_loader (const char *store, int argc, char *argv[])
setenv ("FAKECHROOT_BASE", new_root, 1);
/* Become the new parent of grand-children when their parent dies. */
prctl (PR_SET_CHILD_SUBREAPER, 1);
pid_t child = fork ();
switch (child)
{
@ -507,12 +536,19 @@ exec_with_loader (const char *store, int argc, char *argv[])
default:
{
int status;
int status, status_other;
waitpid (child, &status, 0);
chdir ("/"); /* avoid EBUSY */
rm_rf (new_root);
free (new_root);
/* If there are child processes still running, leave NEW_ROOT around
so they can still access it. XXX: In that case NEW_ROOT is left
behind. */
if (waitpid (-1 , &status_other, WNOHANG) == -1)
{
chdir ("/"); /* avoid EBUSY */
rm_rf (new_root);
}
free (new_root);
close (2); /* flushing stderr should be silent */
if (WIFEXITED (status))
@ -620,7 +656,7 @@ main (int argc, char *argv[])
/* SELF is something like "/home/ludo/.local/gnu/store/…-foo/bin/ls" and we
want to extract "/home/ludo/.local/gnu/store". */
size_t index = strlen (self)
- strlen ("@WRAPPED_PROGRAM@") + strlen (original_store);
- strlen (WRAPPER_PROGRAM) + strlen (original_store);
char *store = strdup (self);
store[index] = '\0';

View file

@ -5,6 +5,7 @@
;;; Copyright © 2016 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2020 Marius Bakke <mbakke@fastmail.com>
;;; Copyright © 2020 Arun Isaac <arunisaac@systemreboot.net>
;;;
;;; This file is part of GNU Guix.
;;;
@ -41,8 +42,8 @@ (define-public avr-binutils
(inherit (cross-binutils "avr"))
(name "avr-binutils")))
(define-public avr-gcc-4.9
(let ((xgcc (cross-gcc "avr" #:xgcc gcc-4.9 #:xbinutils avr-binutils)))
(define avr-gcc
(let ((xgcc (cross-gcc "avr" #:xgcc gcc #:xbinutils avr-binutils)))
(package
(inherit xgcc)
(name "avr-gcc")
@ -94,19 +95,10 @@ (define-public avr-gcc-4.9
(variable "CROSS_LIBRARY_PATH")
(files '("avr/lib")))))
(native-inputs
`(("gcc@5" ,gcc-5)
`(("gcc" ,gcc)
,@(package-native-inputs xgcc))))))
(define-public avr-gcc-5
(package
(inherit avr-gcc-4.9)
(version (package-version gcc-5))
(source (origin
(inherit (package-source gcc-5))
(patches (append (origin-patches (package-source gcc-5))
(search-patches "gcc-cross-environment-variables.patch")))))))
(define (avr-libc avr-gcc)
(define avr-libc
(package
(name "avr-libc")
(version "2.0.0")
@ -120,18 +112,7 @@ (define (avr-libc avr-gcc)
(build-system gnu-build-system)
(arguments
'(#:out-of-source? #t
#:configure-flags '("--host=avr")
#:phases
(modify-phases %standard-phases
(add-before 'unpack 'fix-cpath
(lambda _
;; C_INCLUDE_PATH and CPATH pose issues for cross-building,
;; leading to failures when building avr-libc on 64-bit systems.
;; Simply unsetting them allows the build to succeed because it
;; doesn't try to use any of the native system's headers.
(unsetenv "C_INCLUDE_PATH")
(unsetenv "CPATH")
#t)))))
#:configure-flags '("--host=avr")))
(native-inputs `(("avr-binutils" ,avr-binutils)
("avr-gcc" ,avr-gcc)))
(home-page "https://www.nongnu.org/avr-libc/")
@ -142,31 +123,27 @@ (define (avr-libc avr-gcc)
(license
(license:non-copyleft "http://www.nongnu.org/avr-libc/LICENSE.txt"))))
(define (avr-toolchain avr-gcc)
(define-public avr-toolchain
;; avr-libc checks the compiler version and passes "--enable-device-lib" for avr-gcc > 5.1.0.
;; It wouldn't install the library for atmega32u4 etc if we didn't use the corret avr-gcc.
(let ((avr-libc (avr-libc avr-gcc)))
(package
(name "avr-toolchain")
(version (package-version avr-gcc))
(source #f)
(build-system trivial-build-system)
(arguments '(#:builder (begin (mkdir %output) #t)))
(propagated-inputs
`(("avrdude" ,avrdude)
("binutils" ,avr-binutils)
("gcc" ,avr-gcc)
("libc" ,avr-libc)))
(synopsis "Complete GCC tool chain for AVR microcontroller development")
(description "This package provides a complete GCC tool chain for AVR
(package
(name "avr-toolchain")
(version (package-version avr-gcc))
(source #f)
(build-system trivial-build-system)
(arguments '(#:builder (begin (mkdir %output) #t)))
(propagated-inputs
`(("avrdude" ,avrdude)
("binutils" ,avr-binutils)
("gcc" ,avr-gcc)
("libc" ,avr-libc)))
(synopsis "Complete GCC tool chain for AVR microcontroller development")
(description "This package provides a complete GCC tool chain for AVR
microcontroller development. This includes the GCC AVR cross compiler and
avrdude for firmware flashing. The supported programming languages are C and
C++.")
(home-page (package-home-page avr-libc))
(license (package-license avr-gcc)))))
(define-public avr-toolchain-4.9 (avr-toolchain avr-gcc-4.9))
(define-public avr-toolchain-5 (avr-toolchain avr-gcc-5))
(home-page (package-home-page avr-libc))
(license (package-license avr-gcc))))
(define-public microscheme
(package

View file

@ -6,7 +6,7 @@
;;; Copyright © 2017 Thomas Danckaert <post@thomasdanckaert.be>
;;; Copyright © 2017 Arun Isaac <arunisaac@systemreboot.net>
;;; Copyright © 2017 Kei Kebreau <kkebreau@posteo.net>
;;; Copyright © 2017 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2017, 2020 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2017 Christopher Allan Webber <cwebber@dustycloud.org>
;;; Copyright © 2017 Rutger Helling <rhelling@mykolab.com>
;;; Copyright © 2018 Mark H Weaver <mhw@netris.org>
@ -82,7 +82,7 @@ (define-module (gnu packages backup)
(define-public duplicity
(package
(name "duplicity")
(version "0.8.15")
(version "0.8.17")
(source
(origin
(method url-fetch)
@ -91,10 +91,10 @@ (define-public duplicity
"-series/" version "/+download/duplicity-"
version ".tar.gz"))
(sha256
(base32 "1kg467mxg5a97v1rlv4shk32krgv8ys4nczq4b11av4bp1lgysdc"))))
(base32 "114rwkf9b3h4fcagrx013sb7krc4hafbwl9gawjph2wd9pkv2wx2"))))
(build-system python-build-system)
(native-inputs
`(("gettext" ,gnu-gettext) ; for msgfmt
`(("gettext" ,gettext-minimal) ; for msgfmt
("util-linux" ,util-linux) ; setsid command, for the tests
("par2cmdline" ,par2cmdline)
("python-fasteners" ,python-fasteners)
@ -392,7 +392,7 @@ (define-public btar
`(("librsync" ,librsync-0.9)))
(arguments
`(#:make-flags `(,(string-append "PREFIX=" (assoc-ref %outputs "out"))
"CC=gcc")
,(string-append "CC=" ,(cc-for-target)))
#:tests? #f ;test input not distributed
#:phases
;; no configure phase
@ -743,14 +743,14 @@ (define-public attic
(define-public wimlib
(package
(name "wimlib")
(version "1.13.2")
(version "1.13.3")
(source (origin
(method url-fetch)
(uri (string-append "https://wimlib.net/downloads/"
"wimlib-" version ".tar.gz"))
(sha256
(base32
"0id9ym3hzij4kpdrk0sz3ijxp5r0z1md5jch83pml9hdy1zbx5bj"))))
"0zpsbl9iicc6y81xfl6kf8farwfsyrl63shc0idp654kgp8421wa"))))
(build-system gnu-build-system)
(native-inputs
`(("pkg-config" ,pkg-config)))
@ -1072,7 +1072,7 @@ (define-public dump
(define-public burp
(package
(name "burp")
(version "2.3.34")
(version "2.3.38")
(source
(origin
(method git-fetch)
@ -1080,7 +1080,7 @@ (define-public burp
(url "https://github.com/grke/burp")
(commit version)))
(sha256
(base32 "0ri62xshcjrk5vgyx8s11vsllab132mk1pcy4xxl9kzijdsjhdpy"))
(base32 "0m0s6rrgxn3l6bad45vyhks6iz6bwvd0f3rzdsc7l28gar79wsj6"))
(file-name (git-file-name name version))))
(build-system gnu-build-system)
(arguments

View file

@ -1225,7 +1225,7 @@ (define-public glibc/hurd-headers
(define-public tzdata
(package
(name "tzdata")
(version "2020b")
(version "2020d")
(source (origin
(method url-fetch)
(uri (string-append
@ -1233,10 +1233,10 @@ (define-public tzdata
version ".tar.gz"))
(sha256
(base32
"02g88pbw82zr36x9dz5ib4sq6bfq253yx5hbhnfyhp143naky1cv"))))
"1wxskk9mh1x2073n99qna2mq58mgi648mbq5dxlqfcrnvrbkk0cd"))))
(build-system gnu-build-system)
(arguments
'(#:tests? #f
`(#:tests? #f
#:make-flags (let ((out (assoc-ref %outputs "out"))
(tmp (getenv "TMPDIR")))
(list (string-append "TOPDIR=" out)
@ -1248,6 +1248,16 @@ (define-public tzdata
(string-append "LIBDIR=" tmp "/lib")
(string-append "MANDIR=" tmp "/man")
;; XXX: tzdata 2020b changed the on-disk format
;; of the time zone files from 'fat' to 'slim'.
;; Many packages (particularly evolution-data-server)
;; can not yet handle the latter, so we stick with
;; 'fat' for now.
,@(if (version>=? (package-version this-package)
"2020b")
'("CPPFLAGS=-DZIC_BLOAT_DEFAULT='\"fat\"'")
'())
"AWK=awk"
"CC=gcc"))
#:modules ((guix build utils)
@ -1282,7 +1292,7 @@ (define-public tzdata
version ".tar.gz"))
(sha256
(base32
"1nj3zvqpy5lm6w365p9ynz4i5arq4fiy8ldq55v4z9p49nagivs7"))))))
"1mgsckixmmk9qxzsflfxnp3999qi3ls72bgksclk01g852x51w3c"))))))
(home-page "https://www.iana.org/time-zones")
(synopsis "Database of current and historical time zones")
(description "The Time Zone Database (often called tz or zoneinfo)

View file

@ -5,6 +5,7 @@
;;; Copyright © 2016, 2017, 2018, 2019 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2018, 2019, 2020 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2019 Mathieu Othacehe <m.othacehe@gmail.com>
;;; Copyright © 2020 Zhu Zihao <all_but_last@163.com>
;;;
;;; This file is part of GNU Guix.
;;;
@ -22,14 +23,18 @@
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
(define-module (gnu packages bash)
#:use-module (guix licenses)
#:use-module ((guix licenses) #:prefix license:)
#:use-module (gnu packages)
#:use-module (gnu packages base)
#:use-module (gnu packages bootstrap)
#:use-module (gnu packages compression)
#:use-module (gnu packages elf)
#:use-module (gnu packages ncurses)
#:use-module (gnu packages readline)
#:use-module (gnu packages bison)
#:use-module (gnu packages linux)
#:use-module (gnu packages libffi)
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages guile)
#:use-module (guix packages)
#:use-module (guix download)
@ -210,7 +215,7 @@ (define-public bash
allows command-line editing, unlimited command history, shell functions and
aliases, and job control while still allowing most sh scripts to be run
without modification.")
(license gpl3+)
(license license:gpl3+)
(home-page "https://www.gnu.org/software/bash/"))))
(define-public bash-minimal
@ -320,7 +325,7 @@ (define-public bash-completion
"This package provides extensions that allow Bash to provide adapted
completion for many common commands.")
(home-page "https://github.com/scop/bash-completion")
(license gpl2+)))
(license license:gpl2+)))
(define-public bash-tap
(package
@ -364,7 +369,7 @@ (define-public bash-tap
for Bash shell scripts and functions. Along with the Test::More-style testing
helpers it provides helper functions for mocking commands and in-process output
capturing.")
(license expat)))
(license license:expat)))
(define-public bats
(package
@ -414,4 +419,32 @@ (define-public bats
framework for Bash. It provides a simple way to verify that the UNIX programs
you write behave as expected. Bats is most useful when testing software written
in Bash, but you can use it to test any UNIX program.")
(license expat)))
(license license:expat)))
(define-public bash-ctypes
(package
(name "bash-ctypes")
(version "1.2")
(source
(origin
(method url-fetch)
(uri (string-append "https://github.com/taviso/ctypes.sh/releases/download/v"
version "/ctypes-sh-" version ".tar.gz"))
(sha256
(base32 "0s1sifqzqmr0dnciv06yqrpzgj11d7n0gy5zaxh6b3x8bx7k75l8"))))
(build-system gnu-build-system)
(inputs
`(("elfutils" ,elfutils)
("libelf" ,libelf)
("libffi" ,libffi)
("zlib" ,zlib)
;; Require a bash with C plugin support to build.
("bash" ,bash)))
(native-inputs
`(("pkg-config" ,pkg-config)))
(home-page "https://github.com/taviso/ctypes.sh")
(synopsis "Foreign function interface for Bash")
(description "Bash-ctypes is a Bash plugin that provides a foreign
function interface (FFI) directly in your shell. In other words, it allows
you to call routines in shared libraries from within Bash.")
(license license:expat)))

View file

@ -7,6 +7,7 @@
;;; Copyright © 2019 Gábor Boskovits <boskovits@gmail.com>
;;; Copyright © 2019 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2020 Vincent Legoll <vincent.legoll@gmail.com>
;;; Copyright © 2020 malte Frank Gerdes <malte.f.gerdes@gmail.com>
;;;
;;; This file is part of GNU Guix.
;;;
@ -46,14 +47,14 @@ (define-module (gnu packages benchmark)
(define-public fio
(package
(name "fio")
(version "3.23")
(version "3.24")
(source (origin
(method url-fetch)
(uri (string-append "https://brick.kernel.dk/snaps/"
"fio-" version ".tar.bz2"))
(sha256
(base32
"0cy32431hv0i84yrryna5byj4r610n6i1rm8nfflnrznbf051axs"))))
"0qshbyqpvm01hmpkmk0v0jhjz23sngqhy291kiz38z04s2df4vxn"))))
(build-system gnu-build-system)
(arguments
'(#:test-target "test"
@ -213,7 +214,7 @@ (define-public multitime
(define-public benchmark
(package
(name "benchmark")
(version "1.5.0")
(version "1.5.2")
(source (origin
(method git-fetch)
(uri (git-reference
@ -222,16 +223,24 @@ (define-public benchmark
(file-name (git-file-name name version))
(sha256
(base32
"0r9dbg4cbk47gwmayys31a83m3y67k0kh1f6pl8i869rbd609ndh"))
(patches (search-patches "benchmark-unbundle-googletest.patch"))))
"13rxagpzw6bal6ajlmrxlh9kgfvcixn6j734b2bvfqz7lch8n0pa"))))
(build-system cmake-build-system)
(native-inputs
`(("googletest" ,googletest)))
`(("googletest-source" ,(package-source googletest))
("googletest" ,googletest)))
(arguments
`(#:phases
(modify-phases %standard-phases
(add-after 'unpack 'unpack-googletest
(lambda* (#:key inputs #:allow-other-keys)
(copy-recursively (assoc-ref inputs "googletest-source")
"googletest")
#t)))))
(home-page "https://github.com/google/benchmark")
(synopsis "Microbenchmark support library")
(description
"Benchmark is a library to benchmark code snippets,
similar to unit tests.")
"Benchmark is a library to benchmark code snippets, similar to unit
tests.")
(license license:asl2.0)))
(define-public bonnie++

View file

@ -1765,6 +1765,32 @@ (define-public r-ggm
fitting of some classes of graphical Markov models.")
(license license:gpl2+)))
;; This is a CRAN package, but it depends on a Bioconductor package, r-graph.
(define-public r-perfmeas
(package
(name "r-perfmeas")
(version "1.2.1")
(source
(origin
(method url-fetch)
(uri (cran-uri "PerfMeas" version))
(sha256
(base32
"1x7ancmb41zd1js24rx94plgbssyc71z2bvpic6mg34xjkwdjw93"))))
(properties `((upstream-name . "PerfMeas")))
(build-system r-build-system)
(propagated-inputs
`(("r-graph" ,r-graph)
("r-limma" ,r-limma)
("r-rbgl" ,r-rbgl)))
(home-page "https://cran.r-project.org/web/packages/PerfMeas/")
(synopsis "Performance measures for ranking and classification tasks")
(description
"This package implements different performance measures for
classification and ranking tasks. @dfn{Area under curve} (AUC), precision at
a given recall, F-score for single and multiple classes are available.")
(license license:gpl2+)))
;; This is a CRAN package, but it depends on a Bioconductor package.
(define-public r-codedepends
(package

View file

@ -1,7 +1,7 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2014, 2015, 2016, 2017, 2018, 2019, 2020 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2015, 2016, 2017, 2018 Ben Woodcroft <donttrustben@gmail.com>
;;; Copyright © 2015, 2016 Pjotr Prins <pjotr.guix@thebird.nl>
;;; Copyright © 2015, 2016, 2018, 2019, 2020 Pjotr Prins <pjotr.guix@thebird.nl>
;;; Copyright © 2015 Andreas Enge <andreas@enge.fr>
;;; Copyright © 2016, 2020 Roel Janssen <roel@gnu.org>
;;; Copyright © 2016, 2017, 2018, 2019, 2020 Efraim Flashner <efraim@flashner.co.il>
@ -12,12 +12,13 @@
;;; Copyright © 2018 Joshua Sierles, Nextjournal <joshua@nextjournal.com>
;;; Copyright © 2018 Gábor Boskovits <boskovits@gmail.com>
;;; Copyright © 2018, 2019, 2020 Mădălin Ionel Patrașcu <madalinionel.patrascu@mdc-berlin.de>
;;; Copyright © 2019 Maxim Cournoyer <maxim.cournoyer@gmail.com>
;;; Copyright © 2019, 2020 Maxim Cournoyer <maxim.cournoyer@gmail.com>
;;; Copyright © 2019 Brian Leung <bkleung89@gmail.com>
;;; Copyright © 2019 Brett Gilio <brettg@gnu.org>
;;; Copyright © 2020 Björn Höfling <bjoern.hoefling@bjoernhoefling.de>
;;; Copyright © 2020 Jakub Kądziołka <kuba@kadziolka.net>
;;; Copyright © 2020 Pierre Langlois <pierre.langlois@gmx.com>
;;; Copyright © 2020 Bonface Munyoki Kilyungi <bonfacemunyoki@gmail.com>
;;;
;;; This file is part of GNU Guix.
;;;
@ -65,6 +66,8 @@ (define-module (gnu packages bioinformatics)
#:use-module (gnu packages boost)
#:use-module (gnu packages check)
#:use-module (gnu packages code)
#:use-module (gnu packages commencement)
#:use-module (gnu packages cmake)
#:use-module (gnu packages compression)
#:use-module (gnu packages cpio)
#:use-module (gnu packages cran)
@ -81,6 +84,7 @@ (define-module (gnu packages bioinformatics)
#:use-module (gnu packages golang)
#:use-module (gnu packages glib)
#:use-module (gnu packages graph)
#:use-module (gnu packages graphics)
#:use-module (gnu packages graphviz)
#:use-module (gnu packages groff)
#:use-module (gnu packages gtk)
@ -90,6 +94,7 @@ (define-module (gnu packages bioinformatics)
#:use-module (gnu packages haskell-web)
#:use-module (gnu packages haskell-xyz)
#:use-module (gnu packages image)
#:use-module (gnu packages image-processing)
#:use-module (gnu packages imagemagick)
#:use-module (gnu packages java)
#:use-module (gnu packages java-compression)
@ -102,6 +107,7 @@ (define-module (gnu packages bioinformatics)
#:use-module (gnu packages maths)
#:use-module (gnu packages mpi)
#:use-module (gnu packages ncurses)
#:use-module (gnu packages node)
#:use-module (gnu packages ocaml)
#:use-module (gnu packages pcre)
#:use-module (gnu packages parallel)
@ -112,10 +118,12 @@ (define-module (gnu packages bioinformatics)
#:use-module (gnu packages popt)
#:use-module (gnu packages protobuf)
#:use-module (gnu packages python)
#:use-module (gnu packages python-check)
#:use-module (gnu packages python-compression)
#:use-module (gnu packages python-science)
#:use-module (gnu packages python-web)
#:use-module (gnu packages python-xyz)
#:use-module (gnu packages rdf)
#:use-module (gnu packages readline)
#:use-module (gnu packages ruby)
#:use-module (gnu packages serialization)
@ -313,7 +321,7 @@ (define-public bamtools
(define-public bcftools
(package
(name "bcftools")
(version "1.9")
(version "1.11")
(source (origin
(method url-fetch)
(uri (string-append "https://github.com/samtools/bcftools/"
@ -321,11 +329,11 @@ (define-public bcftools
version "/bcftools-" version ".tar.bz2"))
(sha256
(base32
"1j3h638i8kgihzyrlnpj82xg1b23sijibys9hvwari3fy7kd0dkg"))
"0r508mp15pqzf8r1269kb4v5naw9zsvbwd3cz8s1yj7carsf9viw"))
(modules '((guix build utils)))
(snippet '(begin
;; Delete bundled htslib.
(delete-file-recursively "htslib-1.9")
(delete-file-recursively "htslib-1.11")
#t))))
(build-system gnu-build-system)
(arguments
@ -354,6 +362,28 @@ (define-public bcftools
;; The sources are dual MIT/GPL, but becomes GPL-only when USE_GPL=1.
(license (list license:gpl3+ license:expat))))
(define-public bcftools-1.9
(package (inherit bcftools)
(name "bcftools")
(version "1.9")
(source (origin
(method url-fetch)
(uri (string-append "https://github.com/samtools/bcftools/"
"releases/download/"
version "/bcftools-" version ".tar.bz2"))
(sha256
(base32
"1j3h638i8kgihzyrlnpj82xg1b23sijibys9hvwari3fy7kd0dkg"))
(modules '((guix build utils)))
(snippet '(begin
;; Delete bundled htslib.
(delete-file-recursively "htslib-1.9")
#t))))
(build-system gnu-build-system)
(native-inputs
`(("htslib" ,htslib-1.9)
("perl" ,perl)))))
(define-public bedops
(package
(name "bedops")
@ -437,7 +467,7 @@ (define-public bedtools
(native-inputs
`(("python" ,python-wrapper)))
(inputs
`(("samtools" ,samtools)
`(("samtools" ,samtools-1.9)
("zlib" ,zlib)))
(home-page "https://github.com/arq5x/bedtools2")
(synopsis "Tools for genome analysis and arithmetic")
@ -1955,7 +1985,7 @@ (define-public python-pysam
;; FIXME: tests keep timing out on some systems.
(invoke "nosetests" "-v" "--processes" "1")))))))
(propagated-inputs
`(("htslib" ,htslib))) ; Included from installed header files.
`(("htslib" ,htslib-1.9))) ; Included from installed header files.
(inputs
`(("ncurses" ,ncurses)
("curl" ,curl)
@ -1963,8 +1993,8 @@ (define-public python-pysam
(native-inputs
`(("python-cython" ,python-cython)
;; Dependencies below are are for tests only.
("samtools" ,samtools)
("bcftools" ,bcftools)
("samtools" ,samtools-1.9)
("bcftools" ,bcftools-1.9)
("python-nose" ,python-nose)))
(home-page "https://github.com/pysam-developers/pysam")
(synopsis "Python bindings to the SAMtools C API")
@ -2557,6 +2587,132 @@ (define-public python-pybigwig
(define-public python2-pybigwig
(package-with-python2 python-pybigwig))
(define-public python-schema-salad
(package
(name "python-schema-salad")
(version "7.0.20200811075006")
(source
(origin
(method url-fetch)
(uri (pypi-uri "schema-salad" version))
(sha256
(base32
"0wanbwmqb189x1m0vacnhpivfsr8rwbqknngivzxxs8j46yj80bg"))))
(build-system python-build-system)
(propagated-inputs
`(("python-cachecontrol" ,python-cachecontrol-0.11)
("python-lockfile" ,python-lockfile)
("python-mistune" ,python-mistune)
("python-rdflib" ,python-rdflib)
("python-rdflib-jsonld" ,python-rdflib-jsonld)
("python-requests" ,python-requests)
("python-ruamel.yaml" ,python-ruamel.yaml)
("python-typing-extensions" ,python-typing-extensions)))
(native-inputs
`(("python-pytest" ,python-pytest)
("python-pytest-runner" ,python-pytest-runner)))
(home-page "https://github.com/common-workflow-language/schema_salad")
(synopsis "Schema Annotations for Linked Avro Data (SALAD)")
(description
"Salad is a schema language for describing JSON or YAML structured linked
data documents. Salad schema describes rules for preprocessing, structural
validation, and hyperlink checking for documents described by a Salad schema.
Salad supports rich data modeling with inheritance, template specialization,
object identifiers, object references, documentation generation, code
generation, and transformation to RDF. Salad provides a bridge between document
and record oriented data modeling and the Semantic Web.")
(license license:asl2.0)))
(define-public cwltool
(package
(name "cwltool")
(version "3.0.20201121085451")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/common-workflow-language/cwltool")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32
"1awf99n7aglxc5zszrlrv6jxp355jp45ws7wpsgjlgcdv7advn0w"))))
(build-system python-build-system)
(arguments
`(#:phases
(modify-phases %standard-phases
(add-after 'unpack 'loosen-version-restrictions
(lambda _
(substitute* "setup.py"
(("== 1.5.1") ">=1.5.1") ; prov
((", < 3.5") "")) ; shellescape
#t))
(add-after 'unpack 'dont-use-git
(lambda _
(substitute* "gittaggers.py"
(("self.git_timestamp_tag\\(\\)")
(string-append "time.strftime('.%Y%m%d%H%M%S', time.gmtime(int("
(string-drop ,version 4) ")))")))
#t))
(add-after 'unpack 'modify-tests
(lambda _
;; Tries to connect to the internet.
(delete-file "tests/test_udocker.py")
(delete-file "tests/test_http_input.py")
(substitute* "tests/test_load_tool.py"
(("def test_load_graph_fragment_from_packed")
(string-append "@pytest.mark.skip(reason=\"Disabled by Guix\")\n"
"def test_load_graph_fragment_from_packed")))
(substitute* "tests/test_examples.py"
(("def test_env_filtering")
(string-append "@pytest.mark.skip(reason=\"Disabled by Guix\")\n"
"def test_env_filtering")))
;; Tries to use cwl-runners.
(substitute* "tests/test_examples.py"
(("def test_v1_0_arg_empty_prefix_separate_false")
(string-append "@pytest.mark.skip(reason=\"Disabled by Guix\")\n"
"def test_v1_0_arg_empty_prefix_separate_false")))
#t)))))
(propagated-inputs
`(("python-argcomplete" ,python-argcomplete)
("python-bagit" ,python-bagit)
("python-coloredlogs" ,python-coloredlogs)
("python-mypy-extensions" ,python-mypy-extensions)
("python-prov" ,python-prov)
("python-pydot" ,python-pydot)
("python-psutil" ,python-psutil)
("python-rdflib" ,python-rdflib)
("python-requests" ,python-requests)
("python-ruamel.yaml" ,python-ruamel.yaml)
("python-schema-salad" ,python-schema-salad)
("python-shellescape" ,python-shellescape)
("python-typing-extensions" ,python-typing-extensions)
;; Not listed as needed but still necessary:
("node" ,node)))
(native-inputs
`(("python-arcp" ,python-arcp)
("python-humanfriendly" ,python-humanfriendly)
("python-mock" ,python-mock)
("python-pytest" ,python-pytest)
("python-pytest-cov" ,python-pytest-cov)
("python-pytest-mock" ,python-pytest-mock)
("python-pytest-runner" ,python-pytest-runner)
("python-rdflib-jsonld" ,python-rdflib-jsonld)))
(home-page
"https://github.com/common-workflow-language/common-workflow-language")
(synopsis "Common Workflow Language reference implementation")
(description
"This is the reference implementation of the @acronym{CWL, Common Workflow
Language} standards. The CWL open standards are for describing analysis
workflows and tools in a way that makes them portable and scalable across a
variety of software and hardware environments, from workstations to cluster,
cloud, and high performance computing (HPC) environments. CWL is designed to
meet the needs of data-intensive science, such as Bioinformatics, Medical
Imaging, Astronomy, Physics, and Chemistry. The @acronym{cwltool, CWL reference
implementation} is intended to be feature complete and to provide comprehensive
validation of CWL files as well as provide other tools related to working with
CWL descriptions.")
(license license:asl2.0)))
(define-public python-dendropy
(package
(name "python-dendropy")
@ -4215,7 +4371,7 @@ (define-public fastp
(define-public htslib
(package
(name "htslib")
(version "1.9")
(version "1.11")
(source (origin
(method url-fetch)
(uri (string-append
@ -4223,7 +4379,7 @@ (define-public htslib
version "/htslib-" version ".tar.bz2"))
(sha256
(base32
"16ljv43sc3fxmv63w7b2ff8m1s7h89xhazwmbm1bicz8axq8fjz0"))))
"1mrq4mihzx37yqhj3sfz6da6mw49niia808bzsw2gkkgmadxvyng"))))
(build-system gnu-build-system)
;; Let htslib translate "gs://" and "s3://" to regular https links with
;; "--enable-gcs" and "--enable-s3". For these options to work, we also
@ -4250,6 +4406,19 @@ (define-public htslib
;; the rest is released under the Expat license
(license (list license:expat license:bsd-3))))
(define-public htslib-1.9
(package (inherit htslib)
(name "htslib")
(version "1.9")
(source (origin
(method url-fetch)
(uri (string-append
"https://github.com/samtools/htslib/releases/download/"
version "/htslib-" version ".tar.bz2"))
(sha256
(base32
"16ljv43sc3fxmv63w7b2ff8m1s7h89xhazwmbm1bicz8axq8fjz0"))))))
;; This package should be removed once no packages rely upon it.
(define htslib-1.3
(package
@ -4470,26 +4639,40 @@ (define-public macs
;; The PyPi tarball does not contain tests.
(method git-fetch)
(uri (git-reference
(url "https://github.com/taoliu/MACS")
(url "https://github.com/macs3-project/MACS")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
"1c5gxr0mk6hkd4vclf0k00wvyvzw2vrmk52c85338p7aqjwg6n15"))))
"1c5gxr0mk6hkd4vclf0k00wvyvzw2vrmk52c85338p7aqjwg6n15"))
(modules '((guix build utils)))
;; Remove files generated by Cython
(snippet
'(begin
(for-each (lambda (file)
(let ((generated-file
(string-append (string-drop-right file 3) "c")))
(when (file-exists? generated-file)
(delete-file generated-file))))
(find-files "." "\\.pyx$"))
(delete-file "MACS2/IO/CallPeakUnitPrecompiled.c")
#t))))
(build-system python-build-system)
(arguments
`(#:phases
(modify-phases %standard-phases
(delete 'check)
(add-after 'install 'check
(lambda* (#:key inputs outputs #:allow-other-keys)
(add-installed-pythonpath inputs outputs)
(invoke "pytest" "-v"))))))
(replace 'check
(lambda* (#:key tests? inputs outputs #:allow-other-keys)
(when tests?
(add-installed-pythonpath inputs outputs)
(invoke "pytest" "-v"))
#t)))))
(inputs
`(("python-numpy" ,python-numpy)))
(native-inputs
`(("python-pytest" ,python-pytest)))
(home-page "https://github.com/taoliu/MACS/")
`(("python-cython" ,python-cython)
("python-pytest" ,python-pytest)))
(home-page "https://github.com/macs3-project/MACS")
(synopsis "Model based analysis for ChIP-Seq data")
(description
"MACS is an implementation of a ChIP-Seq analysis algorithm for
@ -5613,7 +5796,7 @@ (define-public seek
(define-public samtools
(package
(name "samtools")
(version "1.9")
(version "1.11")
(source
(origin
(method url-fetch)
@ -5622,11 +5805,11 @@ (define-public samtools
version "/samtools-" version ".tar.bz2"))
(sha256
(base32
"10ilqbmm7ri8z431sn90lvbjwizd0hhkf9rcqw8j823hf26nhgq8"))
"1dp5wknak4arnw5ghhif9mmljlfnw5bgm91wib7z0j8wdjywx0z2"))
(modules '((guix build utils)))
(snippet '(begin
;; Delete bundled htslib.
(delete-file-recursively "htslib-1.9")
(delete-file-recursively "htslib-1.11")
#t))))
(build-system gnu-build-system)
(arguments
@ -5672,6 +5855,31 @@ (define-public samtools
viewer.")
(license license:expat)))
(define-public samtools-1.9
(package (inherit samtools)
(name "samtools")
(version "1.9")
(source
(origin
(method url-fetch)
(uri
(string-append "mirror://sourceforge/samtools/samtools/"
version "/samtools-" version ".tar.bz2"))
(sha256
(base32
"10ilqbmm7ri8z431sn90lvbjwizd0hhkf9rcqw8j823hf26nhgq8"))
(modules '((guix build utils)))
(snippet '(begin
;; Delete bundled htslib.
(delete-file-recursively "htslib-1.9")
#t))))
(inputs
`(("htslib" ,htslib-1.9)
("ncurses" ,ncurses)
("perl" ,perl)
("python" ,python)
("zlib" ,zlib)))))
(define-public samtools-0.1
;; This is the most recent version of the 0.1 line of samtools. The input
;; and output formats differ greatly from that used and produced by samtools
@ -10954,7 +11162,7 @@ (define-public phylip
(define-public imp
(package
(name "imp")
(version "2.6.2")
(version "2.13.0")
(source
(origin
(method url-fetch)
@ -10962,25 +11170,47 @@ (define-public imp
version "/download/imp-" version ".tar.gz"))
(sha256
(base32
"0lxqx7vh79d771svr611dkilp6sn30qrbw8zvscbrm37v38d2j6h"))))
"1z1vcpwbylixk0zywngg5iw0jv083jj1bqphi817jpg3fb9fx2jj"))))
(build-system cmake-build-system)
(arguments
`(;; FIXME: Some tests fail because they produce warnings, others fail
;; because the PYTHONPATH does not include the modeller's directory.
#:tests? #f))
`( ;; CMake 3.17 or newer is required for the CMAKE_TEST_ARGUMENTS used
;; below to have an effect.
#:cmake ,cmake
#:configure-flags
(let ((disabled-tests
'("expensive" ;exclude expensive tests
"IMP.modeller" ;fail to import its own modules
"IMP.parallel-test_sge.py" ;fail in build container
;; The following test fails non-reproducibly on
;; an inexact numbers assertion.
"IMP.em-medium_test_local_fitting.py")))
(list
(string-append
"-DCMAKE_CTEST_ARGUMENTS="
(string-join
(list "-L" "-tests?-" ;select only tests
"-E" (format #f "'(~a)'" (string-join disabled-tests "|")))
";"))))))
(native-inputs
`(("python" ,python-wrapper)
("swig" ,swig)))
(inputs
`(("boost" ,boost)
("cgal" ,cgal)
("gsl" ,gsl)
("swig" ,swig)
("hdf5" ,hdf5)
("fftw" ,fftw)
("python" ,python-2)))
("eigen" ,eigen)
;; Enabling MPI causes the build to use all the available memory and
;; fail (tested on a machine with 32 GiB of RAM).
;;("mpi" ,openmpi)
("opencv" ,opencv)))
(propagated-inputs
`(("python2-numpy" ,python2-numpy)
("python2-scipy" ,python2-scipy)
("python2-pandas" ,python2-pandas)
("python2-scikit-learn" ,python2-scikit-learn)
("python2-networkx" ,python2-networkx)))
`(("python-numpy" ,python-numpy)
("python-scipy" ,python-scipy)
("python-pandas" ,python-pandas)
("python-scikit-learn" ,python-scikit-learn)
("python-networkx" ,python-networkx)))
(home-page "https://integrativemodeling.org")
(synopsis "Integrative modeling platform")
(description "IMP's broad goal is to contribute to a comprehensive
@ -10998,7 +11228,7 @@ (define-public imp
(define-public tadbit
(package
(name "tadbit")
(version "0.2.0")
(version "1.0.1")
(source (origin
(method git-fetch)
(uri (git-reference
@ -11007,21 +11237,13 @@ (define-public tadbit
(file-name (git-file-name name version))
(sha256
(base32
"07g3aj648prmsvxp9caz5yl41k0y0647vxh0f5p3w8376mfiljd0"))))
"0hqrlymh2a2bimcfdvlssy1x5h1lp3h1c5a7jj11hmcqczzqn3ni"))))
(build-system python-build-system)
(arguments
`(;; Tests are included and must be run after installation, but
;; they are incomplete and thus cannot be run.
#:tests? #f
#:python ,python-2
#:phases
`(#:phases
(modify-phases %standard-phases
(add-after 'unpack 'fix-problems-with-setup.py
(lambda* (#:key outputs #:allow-other-keys)
;; setup.py opens these files for writing
(chmod "_pytadbit/_version.py" #o664)
(chmod "README.rst" #o664)
;; Don't attempt to install the bash completions to
;; the home directory.
(rename-file "extras/.bash_completion"
@ -11033,15 +11255,25 @@ (define-public tadbit
"/etc/bash_completion.d\""))
(("extras/\\.bash_completion")
"extras/tadbit"))
#t))
(replace 'check
(lambda* (#:key inputs outputs #:allow-other-keys)
(add-installed-pythonpath inputs outputs)
(invoke "python3" "test/test_all.py")
#t)))))
(native-inputs
`(("glib" ,glib "bin") ;for gtester
("pkg-config" ,pkg-config)))
(inputs
;; TODO: add Chimera for visualization
`(("imp" ,imp)
("mcl" ,mcl)
("python2-scipy" ,python2-scipy)
("python2-numpy" ,python2-numpy)
("python2-matplotlib" ,python2-matplotlib)
("python2-pysam" ,python2-pysam)))
("python-future" ,python-future)
("python-h5py" ,python-h5py)
("python-scipy" ,python-scipy)
("python-numpy" ,python-numpy)
("python-matplotlib" ,python-matplotlib)
("python-pysam" ,python-pysam)))
(home-page "https://3dgenomes.github.io/TADbit/")
(synopsis "Analyze, model, and explore 3C-based data")
(description
@ -15361,7 +15593,7 @@ (define-public r-velocyto
(define-public methyldackel
(package
(name "methyldackel")
(version "0.4.0")
(version "0.5.1")
(source (origin
(method git-fetch)
(uri (git-reference
@ -15370,7 +15602,7 @@ (define-public methyldackel
(file-name (git-file-name name version))
(sha256
(base32
"10gh8k0ca92kywnrw5pkacq3g6r8s976s12k8jhp8g3g49q9a97g"))))
"1sfhf2ap75qxpnmy1ifgmxqs18rq8mah9mcgkby73vc6h0sw99ws"))))
(build-system gnu-build-system)
(arguments
`(#:test-target "test"
@ -15383,11 +15615,14 @@ (define-public methyldackel
(replace 'configure
(lambda* (#:key outputs #:allow-other-keys)
(substitute* "Makefile"
(("-lhts ") "-lhts -lBigWig ")
(("install MethylDackel \\$\\(prefix\\)" match)
(string-append "install -d $(prefix); " match)))
#t)))))
(inputs
`(("htslib" ,htslib)
`(("curl" ,curl) ; XXX: needed by libbigwig
("htslib" ,htslib-1.9)
("libbigwig" ,libbigwig)
("zlib" ,zlib)))
;; Needed for tests
(native-inputs

View file

@ -2,7 +2,7 @@
;;; Copyright © 2014 Taylan Ulrich Bayirli/Kammer <taylanbayirli@gmail.com>
;;; Copyright © 2014, 2015, 2016 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2016, 2017, 2018, 2019, 2020 Leo Famulari <leo@famulari.name>
;;; Copyright © 2016, 2017, 2018, 2019 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2016, 2017, 2018, 2019, 2020 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2016 Tomáš Čech <sleep_walker@gnu.org>
;;; Copyright © 2016, 2017, 2018, 2019, 2020 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2017 Jelle Licht <jlicht@fsfe.org>
@ -75,12 +75,17 @@ (define-public transmission
version ".tar.xz"))
(sha256
(base32
"1wjmn96zrvmk8j1yz2ysmqd7a2x6ilvnwwapcvfzgxs2wwpnai4i"))))
"1wjmn96zrvmk8j1yz2ysmqd7a2x6ilvnwwapcvfzgxs2wwpnai4i"))
(patches (search-patches "transmission-honor-localedir.patch"))))
(build-system glib-or-gtk-build-system)
(outputs '("out" ; library and command-line interface
"gui")) ; graphical user interface
(arguments
'(#:glib-or-gtk-wrap-excluded-outputs '("out")
'(#:configure-flags
(list (string-append "--localedir="
(assoc-ref %outputs "gui")
"/share/locale"))
#:glib-or-gtk-wrap-excluded-outputs '("out")
#:phases
(modify-phases %standard-phases
(add-after 'install 'move-gui
@ -93,14 +98,17 @@ (define-public transmission
(rename-file (string-append out "/bin/transmission-gtk")
(string-append gui "/bin/transmission-gtk"))
;; Move the '.desktop' and icon files as well.
(mkdir (string-append gui "/share"))
(for-each
(lambda (dir)
(rename-file (string-append out "/share/" dir)
(string-append gui "/share/" dir)))
'("applications" "icons" "pixmaps")))
#t)))))
'("appdata" "applications" "icons" "pixmaps"))
(mkdir-p (string-append gui "/share/man/man1"))
(rename-file
(string-append out "/share/man/man1/transmission-gtk.1")
(string-append gui "/share/man/man1/transmission-gtk.1"))
#t))))))
(inputs
`(("libevent" ,libevent)
("curl" ,curl)
@ -308,7 +316,7 @@ (define-public aria2
(define-public uget
(package
(name "uget")
(version "2.2.0")
(version "2.2.1")
(source
(origin
(method url-fetch)
@ -316,7 +324,7 @@ (define-public uget
"uget%20%28stable%29/" version "/uget-"
version ".tar.gz"))
(sha256
(base32 "0rg2mr2cndxvnjib8zm5dp7y2hgbvnqkz2j2jmg0xlzfh9d34b2m"))))
(base32 "0dlrjhnm1pg2vwmp7nl2xv1aia5hyirb3021rl46x859k63zap24"))))
(build-system gnu-build-system)
(inputs
`(("curl" ,curl)
@ -355,7 +363,7 @@ (define-public mktorrent
(arguments
`(#:phases (modify-phases %standard-phases
(delete 'configure)) ; no configure script
#:make-flags (list "CC=gcc"
#:make-flags (list (string-append "CC=" ,(cc-for-target))
(string-append "PREFIX=" (assoc-ref %outputs "out"))
"NO_HASH_CHECK=1"
"USE_LARGE_FILES=1"

View file

@ -6,7 +6,7 @@
;;; Copyright © 2016, 2017, 2018 Marius Bakke <mbakke@fastmail.com>
;;; Copyright © 2016, 2017 Danny Milosavljevic <dannym@scratchpost.org>
;;; Copyright © 2016, 2017 David Craven <david@craven.ch>
;;; Copyright © 2017, 2018 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2017, 2018, 2020 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2018, 2019, 2020 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2019 nee <nee@cock.li>
;;; Copyright © 2019 Mathieu Othacehe <m.othacehe@gmail.com>
@ -115,11 +115,12 @@ (define-public grub
;; determine the root file system when it's a RAID
;; device. Failing to do that, 'grub-probe' silently
;; fails if 'mdadm' is not in $PATH.
(substitute* "grub-core/osdep/linux/getroot.c"
(("argv\\[0\\] = \"mdadm\"")
(string-append "argv[0] = \""
(assoc-ref inputs "mdadm")
"/sbin/mdadm\"")))
(when (assoc-ref inputs "mdadm")
(substitute* "grub-core/osdep/linux/getroot.c"
(("argv\\[0\\] = \"mdadm\"")
(string-append "argv[0] = \""
(assoc-ref inputs "mdadm")
"/sbin/mdadm\""))))
;; Make the font visible.
(copy-file (assoc-ref (or native-inputs inputs)
@ -133,6 +134,20 @@ (define-public grub
(string-append (assoc-ref inputs "console-setup")
"/bin/ckbcomp ")))
#t))
(add-after 'unpack 'set-freetype-variables
;; These variables need to be set to the native versions
;; of the dependencies because they are used to build
;; programs which are executed during build time.
(lambda* (#:key native-inputs #:allow-other-keys)
(when (assoc-ref native-inputs "freetype")
(let ((freetype (assoc-ref native-inputs "freetype")))
(setenv "BUILD_FREETYPE_LIBS"
(string-append "-L" freetype
"/lib -lfreetype"))
(setenv "BUILD_FREETYPE_CFLAGS"
(string-append "-I" freetype
"/include/freetype2"))))
#t))
(add-before 'check 'disable-flaky-test
(lambda _
;; This test is unreliable. For more information, see:
@ -149,10 +164,11 @@ (define-public grub
(("test_unset grub_func_test")
"test_unset"))
#t)))
;; Disable tests on ARM and AARCH64 platforms.
#:tests? ,(not (any (cute string-prefix? <> (or (%current-target-system)
(%current-system)))
'("arm" "aarch64")))))
;; Disable tests on ARM and AARCH64 platforms or when cross-compiling.
#:tests? ,(not (or (any (cute string-prefix? <> (or (%current-target-system)
(%current-system)))
'("arm" "aarch64"))
(%current-target-system)))))
(inputs
`(("gettext" ,gettext-minimal)
@ -194,6 +210,7 @@ (define-public grub
("flex" ,flex)
("texinfo" ,texinfo)
("help2man" ,help2man)
("freetype" ,freetype) ; native version needed for build-grub-mkfont
;; XXX: When building GRUB 2.02 on 32-bit x86, we need a binutils
;; capable of assembling 64-bit instructions. However, our default
@ -241,21 +258,25 @@ (define-public grub-minimal
(fold alist-delete (package-native-inputs grub)
'("help2man" "texinfo" "parted" "qemu" "xorriso")))
(arguments
`(#:configure-flags (list "PYTHON=true")
#:phases (modify-phases %standard-phases
(add-after 'unpack 'patch-stuff
(lambda* (#:key native-inputs inputs #:allow-other-keys)
(substitute* "grub-core/Makefile.in"
(("/bin/sh") (which "sh")))
(substitute-keyword-arguments (package-arguments grub)
((#:configure-flags _ ''())
'(list "PYTHON=true"))
((#:tests? _ #t)
#f)
((#:phases phases '%standard-phases)
`(modify-phases ,phases
(replace 'patch-stuff
(lambda* (#:key native-inputs inputs #:allow-other-keys)
(substitute* "grub-core/Makefile.in"
(("/bin/sh") (which "sh")))
;; Make the font visible.
(copy-file (assoc-ref (or native-inputs inputs)
"unifont")
"unifont.bdf.gz")
(system* "gunzip" "unifont.bdf.gz")
;; Make the font visible.
(copy-file (assoc-ref (or native-inputs inputs)
"unifont")
"unifont.bdf.gz")
(system* "gunzip" "unifont.bdf.gz")
#t)))
#:tests? #f))))
#t))))))))
(define-public grub-efi
(package
@ -424,7 +445,7 @@ (define-public dtc
`(("python" ,python)))
(arguments
`(#:make-flags
(list "CC=gcc"
(list (string-append "CC=" ,(cc-for-target))
;; /bin/fdt{get,overlay,put} need help finding libfdt.so.1.
(string-append "LDFLAGS=-Wl,-rpath="
@ -435,6 +456,15 @@ (define-public dtc
"INSTALL=install")
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'patch-pkg-config
(lambda _
(substitute* '("Makefile"
"tests/run_tests.sh")
(("pkg-config")
(or (which "pkg-config")
(string-append ,(%current-target-system)
"-pkg-config"))))
#t))
(delete 'configure)))) ; no configure script
(home-page "https://www.devicetree.org")
(synopsis "Compiles device tree source files")
@ -446,7 +476,7 @@ (define-public dtc
(define u-boot
(package
(name "u-boot")
(version "2020.07")
(version "2020.10")
(source (origin
(method url-fetch)
(uri (string-append
@ -454,7 +484,7 @@ (define u-boot
"u-boot-" version ".tar.bz2"))
(sha256
(base32
"0sjzy262x93aaqd6z24ziaq19xjjjk5f577ivf768vmvwsgbzxf1"))))
"08m6f1bh4pdcqbxf983qdb66ccd5vak5cbzc114yf3jwq2yinj0d"))))
(native-inputs
`(("bc" ,bc)
("bison" ,bison)
@ -482,7 +512,7 @@ (define-public u-boot-tools
,@(package-native-inputs u-boot)))
(arguments
`(#:make-flags '("HOSTCC=gcc")
#:test-target "tests"
#:test-target "tcheck"
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'patch
@ -493,11 +523,8 @@ (define-public u-boot-tools
(substitute* "tools/dtoc/fdt_util.py"
(("'cc'") "'gcc'"))
(substitute* "tools/patman/test_util.py"
;; python*-coverage is simply called coverage in guix.
(("%s-coverage") "coverage")
;; XXX Allow for only 99% test coverage.
;; TODO: Find out why that is needed.
(("if coverage != '100%':") "if not int(coverage.rstrip('%')) >= 99:"))
;; python3-coverage is simply called coverage in guix.
(("python3-coverage") "coverage"))
(substitute* "test/run"
;; Make it easier to find test failures.
(("#!/bin/bash") "#!/bin/bash -x")
@ -507,8 +534,6 @@ (define-public u-boot-tools
(("run_test \"binman\"") ": run_test \"binman\"")
;; FIXME: code coverage not working
(("run_test \"binman code coverage\"") ": run_test \"binman code coverage\"")
(("run_test \"dtoc code coverage\"") ": run_test \"dtoc code coverage\"")
(("run_test \"fdt code coverage\"") ": run_test \"fdt code coverage\"")
;; This test would require internet access.
(("\\./tools/buildman/buildman") (which "true")))
(substitute* "test/py/tests/test_sandbox_exit.py"
@ -521,10 +546,12 @@ (define-public u-boot-tools
(("BASEDIR=sandbox") "BASEDIR=."))
(for-each (lambda (file)
(substitute* file
;; Disable signatures, due to GPL/Openssl
;; license incompatibilities. See
;; https://bugs.gnu.org/34717 for details.
(("CONFIG_FIT_SIGNATURE=y") "CONFIG_FIT_SIGNATURE=n")
;; Disable features that require OpenSSL due
;; to GPL/Openssl license incompatibilities.
;; See https://bugs.gnu.org/34717 for
;; details.
(("CONFIG_FIT_SIGNATURE=y")
"CONFIG_FIT_SIGNATURE=n\nCONFIG_UT_LIB_ASN1=n")
;; This test requires a sound system, which is un-used
;; in u-boot-tools.
(("CONFIG_SOUND=y") "CONFIG_SOUND=n")))

View file

@ -0,0 +1,123 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2020 Marius Bakke <marius@gnu.org>
;;;
;;; This file is part of GNU Guix.
;;;
;;; GNU Guix is free software; you can redistribute it and/or modify it
;;; under the terms of the GNU General Public License as published by
;;; the Free Software Foundation; either version 3 of the License, or (at
;;; your option) any later version.
;;;
;;; GNU Guix is distributed in the hope that it will be useful, but
;;; WITHOUT ANY WARRANTY; without even the implied warranty of
;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
;;; GNU General Public License for more details.
;;;
;;; You should have received a copy of the GNU General Public License
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
(define-module (gnu packages browser-extensions)
#:use-module (guix packages)
#:use-module (guix git-download)
#:use-module (guix build-system copy)
#:use-module (guix build-system gnu)
#:use-module ((guix licenses) #:prefix license:)
#:use-module (gnu build chromium-extension)
#:use-module (gnu packages compression)
#:use-module (gnu packages python))
(define play-to-kodi
(package
(name "play-to-kodi")
(version "1.9.1")
(home-page "https://github.com/khloke/play-to-xbmc-chrome")
(source (origin
(method git-fetch)
(uri (git-reference (url home-page) (commit version)))
(file-name (git-file-name name version))
(sha256
(base32
"01rmcpbkn9vhcd8mrah2jmd2801k2r5fz7aqvp22hbwmh2z5f1ch"))))
(build-system copy-build-system)
(synopsis "Send website contents to Kodi")
(description
"Play to Kodi is a browser add-on that can send video, audio, and other
supported content to the Kodi media center.")
(license license:expat)))
(define-public play-to-kodi/chromium
(make-chromium-extension play-to-kodi))
(define uassets
(let ((commit "0cef83c9fc68fdad8f3ee9dc07f6356ebc12791c"))
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/uBlockOrigin/uAssets")
(commit commit)))
(file-name (git-file-name "uAssets" (string-take commit 9)))
(sha256
(base32
"13mjql3rr5f3zilx05i8r7slnp7xyj6zn43dcfl3gdgi8ik483dd")))))
(define ublock-origin
(package
(name "ublock-origin")
(version "1.31.0")
(home-page "https://github.com/gorhill/uBlock")
(source (origin
(method git-fetch)
(uri (git-reference (url home-page) (commit version)))
(file-name (git-file-name name version))
(sha256
(base32
"1wfg1g061l83fqwllp8q1jr1kvwxy2kbbzfk6ynlf18kjng9v3h5"))))
(build-system gnu-build-system)
(outputs '("xpi" "firefox" "chromium"))
(arguments
'(#:tests? #f ;no tests
#:allowed-references ()
#:phases
(modify-phases (map (lambda (phase)
(assq phase %standard-phases))
'(set-paths unpack patch-source-shebangs))
(add-after 'unpack 'link-uassets
(lambda* (#:key native-inputs inputs #:allow-other-keys)
(symlink (string-append (assoc-ref (or native-inputs inputs)
"uassets"))
"../uAssets")
#t))
(add-after 'unpack 'make-files-writable
(lambda _
;; The build system copies some files and later tries
;; modifying them.
(for-each make-file-writable (find-files "."))
#t))
(add-after 'patch-source-shebangs 'build-xpi
(lambda _
(invoke "./tools/make-firefox.sh" "all")))
(add-after 'build-xpi 'build-chromium
(lambda _
(invoke "./tools/make-chromium.sh")))
(add-after 'build-chromium 'install
(lambda* (#:key outputs #:allow-other-keys)
(let ((firefox (assoc-ref outputs "firefox"))
(xpi (assoc-ref outputs "xpi"))
(chromium (assoc-ref outputs "chromium")))
(install-file "dist/build/uBlock0.firefox.xpi"
(string-append xpi "/lib/mozilla/extensions"))
(copy-recursively "dist/build/uBlock0.firefox" firefox)
(copy-recursively "dist/build/uBlock0.chromium" chromium)
#t))))))
(native-inputs
`(("python" ,python-wrapper)
("uassets" ,uassets)
("zip" ,zip)))
(synopsis "Block unwanted content from web sites")
(description
"uBlock Origin is a @dfn{wide spectrum blocker} for IceCat and
ungoogled-chromium.")
(license license:gpl3+)))
(define-public ublock-origin/chromium
(make-chromium-extension ublock-origin "chromium"))

View file

@ -11,6 +11,7 @@
;;; Copyright © 2020 Leo Prikler <leo.prikler@student.tugraz.at>
;;; Copyright © 2020 Yuval Kogman <nothingmuch@woobling.org>
;;; Copyright © 2020 Jakub Kądziołka <kuba@kadziolka.net>
;;; Copyright © 2020 Efraim Flashner <efraim@flashner.co.il>
;;;
;;; This file is part of GNU Guix.
;;;
@ -67,7 +68,7 @@ (define-public bam
"13br735ig7lygvzyfd15fc2rdygrqm503j6xj5xkrl1r7w2wipq6"))))
(build-system gnu-build-system)
(arguments
`(#:make-flags `("CC=gcc"
`(#:make-flags `(,(string-append "CC=" ,(cc-for-target))
,(string-append "INSTALL_PREFIX="
(assoc-ref %outputs "out")))
#:test-target "test"
@ -251,7 +252,7 @@ (define-public premake4
(native-inputs
`(("unzip" ,unzip))) ; for unpacking the source
(arguments
`(#:make-flags '("CC=gcc")
`(#:make-flags (list (string-append "CC=" ,(cc-for-target)))
#:tests? #f ; No test suite
#:phases
(modify-phases %standard-phases

View file

@ -3,7 +3,7 @@
;;; Copyright © 2016, 2017, 2018, 2019 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2018, 2020 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2018, 2019 Pierre Neidhardt <mail@ambrevar.xyz>
;;; Copyright © 2019 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2019, 2020 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2019 Guillaume Le Vaillant <glv@posteo.net>
;;; Copyright © 2019 Andreas Enge <andreas@enge.fr>
;;; Copyright © 2020 Jan (janneke) Nieuwenhuizen <janneke@gnu.org>
@ -28,6 +28,7 @@
(define-module (gnu packages c)
#:use-module ((guix licenses) #:prefix license:)
#:use-module (guix utils)
#:use-module (guix packages)
#:use-module (guix download)
#:use-module (guix git-download)
@ -183,6 +184,8 @@ (define-public libbytesize
(define-public udunits
(package
(name "udunits")
;; Four-part version numbers are development snapshots, not releases. See
;; <https://github.com/Unidata/UDUNITS-2/issues/99#issuecomment-732323472>.
(version "2.2.26")
(source (origin
(method url-fetch)
@ -370,7 +373,7 @@ (define-public packcc
(define-public sparse
(package
(name "sparse")
(version "0.6.2")
(version "0.6.3")
(source (origin
(method url-fetch)
(uri
@ -378,7 +381,7 @@ (define-public sparse
"sparse-" version ".tar.xz"))
(sha256
(base32
"1z11chawwcmf5xxx5v52cj7wrr3warz6q5wlcjvxpif1jbga172i"))))
"16d8c4dhipjzjf8z4z7pix1pdpqydz0v4r7i345f5s09hjnxpxnl"))))
(build-system gnu-build-system)
(inputs `(("perl" ,perl)))
(arguments
@ -518,7 +521,8 @@ (define-public unifdef
(arguments
`(#:phases (modify-phases %standard-phases
(delete 'configure))
#:make-flags (list "CC=gcc" (string-append "prefix=" %output))
#:make-flags (list (string-append "CC=" ,(cc-for-target))
(string-append "prefix=" %output))
#:tests? #f)) ;no test suite
(native-inputs
`(("perl" ,perl)))

View file

@ -178,26 +178,17 @@ (define-public libical
(define-public khal
(package
(name "khal")
(version "0.10.1")
(version "0.10.2")
(source (origin
(method url-fetch)
(uri (pypi-uri "khal" version))
(sha256
(base32
"1r8bkgjwkh7i8ygvsv51h1cnax50sb183vafg66x5snxf3dgjl6l"))
(patches
(list
(origin
(method url-fetch)
;; This patch fixes an issue with python-urwid-2.1.0
(uri "https://github.com/pimutils/khal/commit/2c5990c2de2015b251ba23617faa40ee11b8c22a.patch")
(file-name "khal-compat-urwid-2.1.0.patch")
(sha256
(base32
"11nd8hkjz68imwqqn0p54zmb53z2pfxmzchaviy7jc1ky5s9l663")))))))
(method url-fetch)
(uri (pypi-uri "khal" version))
(sha256
(base32
"11qhrga44knlnp88py9p547d4nr5kn041d2nszwa3dqw7mf22ks9"))))
(build-system python-build-system)
(arguments
`(#:phases (modify-phases %standard-phases
`(#:tests? #f ; The test suite is unreliable. See <https://bugs.gnu.org/44197>
#:phases (modify-phases %standard-phases
;; Building the manpage requires khal to be installed.
(add-after 'install 'manpage
(lambda* (#:key inputs outputs #:allow-other-keys)
@ -207,28 +198,9 @@ (define-public khal
(install-file
"doc/build/man/khal.1"
(string-append (assoc-ref outputs "out") "/share/man/man1"))
#t))
(add-before 'check 'fix-tests
(lambda _
;; Reported upstream: <https://github.com/pimutils/khal/issues/947>.
(substitute* "tests/cli_test.py"
(("Invalid value for \"\\[ICS\\]\"") "Invalid value for \\'[ICS]\\'"))
#t))
(replace 'check
(lambda* (#:key inputs #:allow-other-keys)
;; The tests require us to choose a timezone.
(setenv "TZ"
(string-append (assoc-ref inputs "tzdata")
"/share/zoneinfo/Zulu"))
(invoke "py.test" "tests"))))))
#t)))))
(native-inputs
`(("python-pytest" ,python-pytest)
("python-pytest-cov" ,python-pytest-cov)
("python-setuptools-scm" ,python-setuptools-scm)
;; Required for tests
("python-freezegun" ,python-freezegun)
("tzdata" ,tzdata-for-tests)
("vdirsyncer" ,vdirsyncer)
`(("python-setuptools-scm" ,python-setuptools-scm)
;; Required to build manpage
("python-sphinxcontrib-newsfeed" ,python-sphinxcontrib-newsfeed)
("python-sphinx" ,python-sphinx)))
@ -239,6 +211,11 @@ (define-public khal
("python-icalendar" ,python-icalendar)
("python-tzlocal" ,python-tzlocal)
("python-urwid" ,python-urwid)
("python-pytz" ,python-pytz)
("python-setproctitle" ,python-setproctitle)
("python-atomicwrites" ,python-atomicwrites)
("python-click" ,python-click)
("python-click-log" ,python-click-log)
("python-pyxdg" ,python-pyxdg)))
(synopsis "Console calendar program")
(description "Khal is a standards based console calendar program,

View file

@ -953,7 +953,7 @@ (define-public libmirage
(source (origin
(method url-fetch)
(uri (string-append
"https://downloads.sourceforge.net/cdemu/libmirage-"
"mirror://sourceforge/cdemu/libmirage/libmirage-"
version ".tar.bz2"))
(sha256
(base32
@ -982,7 +982,7 @@ (define-public cdemu-daemon
(source (origin
(method url-fetch)
(uri (string-append
"https://downloads.sourceforge.net/cdemu/cdemu-daemon/"
"mirror://sourceforge/cdemu/cdemu-daemon/"
"cdemu-daemon-" version ".tar.bz2"))
(sha256
(base32
@ -1011,7 +1011,7 @@ (define-public cdemu-client
(source (origin
(method url-fetch)
(uri (string-append
"https://downloads.sourceforge.net/cdemu/cdemu-client-"
"mirror://sourceforge/cdemu/cdemu-client/cdemu-client-"
version ".tar.bz2"))
(sha256
(base32

View file

@ -119,7 +119,7 @@ (define-public mutest
(method git-fetch)
(uri
(git-reference
(url "https://github.com/ebassi/mutest.git")
(url "https://github.com/ebassi/mutest")
(commit "e6246c9")))
(file-name (git-file-name name version))
(sha256
@ -509,7 +509,7 @@ (define-public cxxtest
(define-public doctest
(package
(name "doctest")
(version "2.4.0")
(version "2.4.1")
(home-page "https://github.com/onqtam/doctest")
(source (origin
(method git-fetch)
@ -517,7 +517,7 @@ (define-public doctest
(file-name (git-file-name name version))
(sha256
(base32
"1yi95saqv8qb3ix6w8d7ffvs7qbwvqmq6wblckhxhicxxdxk85cd"))))
"17g7n6rjs90i0b231x5s934qnr8m80ga2yg1z344bnsdiqcjd63w"))))
(build-system cmake-build-system)
(synopsis "C++ test framework")
(description
@ -1427,14 +1427,14 @@ (define-public python2-testresources
(define-public python-subunit-bootstrap
(package
(name "python-subunit-bootstrap")
(version "1.3.0")
(version "1.4.0")
(source
(origin
(method url-fetch)
(uri (pypi-uri "python-subunit" version))
(sha256
(base32
"1fsw8rsn1s3nklx06mayrg5rn2zbky6wwjc5z07s7rf1wjzfs1wn"))))
"0j0ymmnc5nfxi1qzvy59j27viqca7l7xd0y9x29g7yr0h693j804"))))
(build-system python-build-system)
(propagated-inputs
`(("python-extras" ,python-extras)
@ -2693,7 +2693,7 @@ (define-public libfaketime
(define-public umockdev
(package
(name "umockdev")
(version "0.14.3")
(version "0.14.4")
(source (origin
(method url-fetch)
(uri (string-append "https://github.com/martinpitt/umockdev/"
@ -2701,7 +2701,7 @@ (define-public umockdev
"umockdev-" version ".tar.xz"))
(sha256
(base32
"15smnxwplk48nas2c8ji6a5fqcsh770f1yl5nc2j5iprjspbm4mg"))))
"0xmi24ckpps32k7hc139psgbsnsf4g106sv4l9m445m46amkxggd"))))
(build-system gnu-build-system)
(arguments
`(#:phases

View file

@ -27,9 +27,11 @@ (define-module (gnu packages chromium)
#:use-module (guix git-download)
#:use-module (guix utils)
#:use-module (guix build-system gnu)
#:use-module (guix build-system trivial)
#:use-module (gnu packages)
#:use-module (gnu packages assembly)
#:use-module (gnu packages base)
#:use-module (gnu packages bash)
#:use-module (gnu packages bison)
#:use-module (gnu packages build-tools)
#:use-module (gnu packages compression)
@ -141,6 +143,7 @@ (define %preserved-third-party-files
"third_party/depot_tools/owners.py" ;BSD-3
"third_party/devtools-frontend" ;BSD-3
"third_party/devtools-frontend/src/front_end/third_party/acorn" ;Expat
"third_party/devtools-frontend/src/front_end/third_party/axe-core" ;MPL2.0
"third_party/devtools-frontend/src/front_end/third_party/chromium" ;BSD-3
"third_party/devtools-frontend/src/front_end/third_party/codemirror" ;Expat
"third_party/devtools-frontend/src/front_end/third_party/fabricjs" ;Expat
@ -150,8 +153,8 @@ (define %preserved-third-party-files
"third_party/devtools-frontend/src/front_end/third_party/lit-html" ;BSD-3
"third_party/devtools-frontend/src/front_end/third_party/lodash-isequal" ;Expat
"third_party/devtools-frontend/src/front_end/third_party/marked" ;Expat, BSD-3
"third_party/devtools-frontend/src/front_end/third_party/puppeteer" ;ASL2.0
"third_party/devtools-frontend/src/front_end/third_party/wasmparser" ;ASL2.0
"third_party/devtools-frontend/src/third_party/axe-core" ;MPL2.0
"third_party/devtools-frontend/src/third_party/pyjson5" ;ASL2.0
"third_party/devtools-frontend/src/third_party/typescript" ;ASL2.0
"third_party/dom_distiller_js" ;BSD-3
@ -219,6 +222,7 @@ (define %preserved-third-party-files
"third_party/pffft" ;the "FFTPACK" license, similar to BSD-3
"third_party/ply" ;BSD-3
"third_party/polymer" ;BSD-3
"third_party/private_membership" ;ASL2.0
"third_party/private-join-and-compute" ;ASL2.0
"third_party/protobuf" ;BSD-3
"third_party/protobuf/third_party/six" ;Expat
@ -231,6 +235,8 @@ (define %preserved-third-party-files
"third_party/s2cellid" ;ASL2.0
"third_party/schema_org" ;CC-BY-SA3.0
"third_party/securemessage" ;ASL2.0
"third_party/shaka-player" ;ASL2.0
"third_party/shell-encryption" ;ASL2.0
"third_party/skia" ;BSD-3
"third_party/skia/include/third_party/skcms" ;BSD-3
"third_party/skia/third_party/skcms" ;BSD-3
@ -252,6 +258,8 @@ (define %preserved-third-party-files
"third_party/usb_ids" ;BSD-3
"third_party/usrsctp" ;BSD-2
"third_party/vulkan_memory_allocator" ;Expat
"third_party/wayland/protocol" ;Expat
"third_party/wayland/stubs" ;BSD-3, Expat
"third_party/wayland/wayland_scanner_wrapper.py" ;BSD-3
"third_party/wayland-protocols" ;Expat
"third_party/web-animations-js" ;ASL2.0
@ -294,17 +302,9 @@ (define (debian-patch name revision hash)
(string-append "ungoogled-chromium-" category "-" name))))
(sha256 (base32 hash))))
(define (arch-patch name revision hash)
(origin
(method url-fetch)
(uri (string-append "https://raw.githubusercontent.com/archlinux"
"/svntogit-packages/" revision "/trunk/" name))
(sha256 (base32 hash))))
(define %chromium-version "86.0.4240.75")
(define %ungoogled-revision "c34a56db4c121238fface560e21531b6199ce5dd")
(define %chromium-version "87.0.4280.66")
(define %ungoogled-revision "1f7cdef6dfa8f612afde8f988131f210612333e0")
(define %debian-revision "debian/84.0.4147.105-1")
(define %arch-revision "2cbe439471932d30ff2c8ded6b3dfd51b312bbc9")
(define %debian-patches
(list (debian-patch "system/zlib.patch" %debian-revision
@ -312,17 +312,6 @@ (define %debian-patches
(debian-patch "system/openjpeg.patch" %debian-revision
"0zd6v5njx1pc7i0y6mslxvpx5j4cq01mmyx55qcqx8qzkm0gm48j")))
(define %arch-patches
(list (arch-patch "check-for-enable-accelerated-video-decode-on-Linux.patch"
%arch-revision
"12qj23dcp2g2ivyfyj13m4fzf68nllb9djwcxf1h195gn8wkml03")
(arch-patch "only-fall-back-to-the-i965-driver-if-we-re-on-iHD.patch"
%arch-revision
"0073qjp0dp9kj2ix2j6cxrima01rpdpkcjj9crxlb9b43b4cc53m")
(arch-patch "fix-invalid-end-iterator-usage-in-CookieMonster.patch"
%arch-revision
"1p1wy3dfncw0hhz77a1km0xjhix69ksgbpa569qz86nv76jbgn39")))
(define %ungoogled-origin
(origin
(method git-fetch)
@ -332,7 +321,15 @@ (define %ungoogled-origin
(string-take %ungoogled-revision 7)))
(sha256
(base32
"18p9a7qffmy8m03nqva7maalgil13lj2mn0s56v3crbs4wk4lalj"))))
"1cka9h7znkmilz9ld4s8pw1jjq2p7br03g3agcnqrk591y5h141i"))))
(define %guix-patches
(list (local-file
(assume-valid-file-name
(search-patch "ungoogled-chromium-system-nspr.patch")))
(local-file
(assume-valid-file-name
(search-patch "ungoogled-chromium-extension-search-path.patch")))))
;; This is a source 'snippet' that does the following:
;; *) Applies various patches for unbundling purposes and libstdc++ compatibility.
@ -355,10 +352,7 @@ (define ungoogled-chromium-snippet
(for-each (lambda (patch)
(invoke "patch" "-p1" "--force" "--input"
patch "--no-backup-if-mismatch"))
(append '#+%debian-patches '#+%arch-patches
'#+(list (local-file
(search-patch
"ungoogled-chromium-system-nspr.patch")))))
(append '#+%debian-patches '#+%guix-patches))
(with-directory-excursion #+%ungoogled-origin
(format #t "Ungooglifying...~%")
@ -446,10 +440,10 @@ (define-public ungoogled-chromium
(method url-fetch)
(uri (string-append "https://commondatastorage.googleapis.com"
"/chromium-browser-official/chromium-"
(car (string-split version #\-)) ".tar.xz"))
%chromium-version ".tar.xz"))
(sha256
(base32
"1ddw4p9zfdzhi5hrd8x14k4w326znljzprnpfi2f917rlpnl2ynx"))
"0hgpg31gkksqgyvycsan7l7vjypc7cr6ikjfygf2zv7dhbmf9a19"))
(modules '((guix build utils)))
(snippet (force ungoogled-chromium-snippet))))
(build-system gnu-build-system)
@ -463,7 +457,7 @@ (define-public ungoogled-chromium
#:configure-flags
;; See tools/gn/docs/cookbook.md and
;; https://www.chromium.org/developers/gn-build-configuration
;; for usage. Run "./gn args . --list" in the Release
;; for usage. Run "gn args . --list" in the Release
;; directory for an exhaustive list of supported flags.
;; (Note: The 'configure' phase will do that for you.)
(list "is_debug=false"
@ -471,8 +465,10 @@ (define-public ungoogled-chromium
;; a developer build.
"is_official_build=true"
(string-append "max_jobs_per_link="
(number->string (parallel-job-count)))
;; Respect the default cap of 8 jobs.
(number->string (max 8 (parallel-job-count))))
"clang_use_chrome_plugins=false"
"chrome_pgo_phase=0"
"use_sysroot=false"
"goma_dir=\"\""
"enable_nacl=false"
@ -506,6 +502,11 @@ (define-public ungoogled-chromium
"use_system_libjpeg=true"
"use_system_libopenjpeg2=true"
"use_system_libpng=true"
"use_system_wayland_scanner=true"
(string-append "system_wayland_scanner_path=\""
(assoc-ref %build-inputs "wayland-scanner")
"/bin/wayland-scanner\"")
"use_system_zlib=true"
"use_gnome_keyring=false" ;deprecated by libsecret
"use_openh264=true"
@ -529,6 +530,8 @@ (define-public ungoogled-chromium
;; WebRTC stuff.
"rtc_use_h264=true"
"rtc_use_pipewire=true"
"rtc_link_pipewire=true"
;; Don't use bundled sources.
"rtc_build_json=true" ;FIXME: libc++ std::string ABI difference
"rtc_build_libevent=false"
@ -571,11 +574,6 @@ (define-public ungoogled-chromium
(find-files (string-append "third_party/webrtc/modules"
"/audio_coding/codecs/opus")))
(substitute* "chrome/common/chrome_paths.cc"
(("/usr/share/chromium/extensions")
;; TODO: Add ~/.guix-profile.
"/run/current-system/profile/share/chromium/extensions"))
;; Many files try to include ICU headers from "third_party/icu/...".
;; Remove the "third_party/" prefix to use system headers instead.
(substitute* (find-files "chrome" "\\.cc$")
@ -617,6 +615,18 @@ (define-public ungoogled-chromium
(substitute* "device/udev_linux/udev1_loader.cc"
(("libudev\\.so\\.1")
(string-append udev "/lib/libudev.so.1")))
(substitute*
'("ui/ozone/platform/x11/gl_ozone_glx.cc"
"ui/ozone/common/egl_util.cc"
"ui/gl/init/gl_initializer_linux_x11.cc"
"third_party/angle/src/libANGLE/renderer/gl/glx/FunctionsGLX.cpp")
(("libGL\\.so\\.1")
(string-append mesa "/lib/libGL.so.1"))
(("libEGL\\.so\\.1")
(string-append mesa "/lib/libEGL.so.1"))
(("libGLESv2\\.so\\.2")
(string-append mesa "/lib/libGLESv2.so.2")))
#t)))
(add-before 'configure 'prepare-build-environment
(lambda* (#:key inputs #:allow-other-keys)
@ -705,7 +715,10 @@ (define-public ungoogled-chromium
(libs '("chrome_100_percent.pak"
"chrome_200_percent.pak"
"resources.pak"
"v8_context_snapshot.bin"))
"v8_context_snapshot.bin"
;; Chromium ships its own libGL
;; implementation called ANGLE.
"libEGL.so" "libGLESv2.so"))
(locales (string-append lib "/locales"))
(resources (string-append lib "/resources"))
(preferences (assoc-ref inputs "master-preferences"))
@ -774,7 +787,8 @@ (define-public ungoogled-chromium
("python-beautifulsoup4" ,python2-beautifulsoup4)
("python-html5lib" ,python2-html5lib)
("python" ,python-2)))
("python" ,python-2)
("wayland-scanner" ,wayland)))
(inputs
`(("alsa-lib" ,alsa-lib)
("atk" ,atk)
@ -824,12 +838,19 @@ (define-public ungoogled-chromium
("opus" ,opus+custom)
("pango" ,pango)
("pciutils" ,pciutils)
("pipewire" ,pipewire)
("pulseaudio" ,pulseaudio)
("snappy" ,snappy)
("speech-dispatcher" ,speech-dispatcher)
("udev" ,eudev)
("valgrind" ,valgrind)
("vulkan-headers" ,vulkan-headers)))
("vulkan-headers" ,vulkan-headers)
("wayland" ,wayland)))
(native-search-paths
(list (search-path-specification
(variable "CHROMIUM_EXTENSION_DIRECTORY")
(separator #f) ;single entry
(files '("share/chromium/extensions")))))
;; Building Chromium takes ... a very long time. On a single core, a busy
;; mid-end x86 system may need more than 24 hours to complete the build.
@ -857,24 +878,46 @@ (define-public ungoogled-chromium
license:lgpl2.1+))))
(define-public ungoogled-chromium/wayland
(package/inherit ungoogled-chromium
(package
(inherit ungoogled-chromium)
(name "ungoogled-chromium-wayland")
(native-inputs '())
(inputs
`(("wayland" ,wayland)
("wayland-protocols" ,wayland-protocols)
,@(package-inputs ungoogled-chromium)))
`(("bash" ,bash-minimal)
("glibc-locales" ,glibc-utf8-locales)
("ungoogled-chromium" ,ungoogled-chromium)))
(build-system trivial-build-system)
(arguments
(substitute-keyword-arguments (package-arguments ungoogled-chromium)
((#:configure-flags flags)
`(append (list "use_ozone=true"
"ozone_platform_wayland=true"
"ozone_platform_x11=true"
"ozone_auto_platforms=false"
"ozone_platform=\"wayland\""
"use_xkbcommon=true"
"use_system_minigbm=true"
"use_system_libwayland=true"
(string-append "system_wayland_scanner_path=\""
(assoc-ref %build-inputs "wayland")
"/bin/wayland-scanner\""))
(delete "use_vaapi=true" ,flags)))))))
'(#:modules ((guix build utils))
#:builder
(begin
(use-modules (guix build utils))
(let* ((bash (assoc-ref %build-inputs "bash"))
(chromium (assoc-ref %build-inputs "ungoogled-chromium"))
(locales (assoc-ref %build-inputs "glibc-locales"))
(out (assoc-ref %outputs "out"))
(exe (string-append out "/bin/chromium")))
;; Use a Unicode locale so we can substitute the file below.
(setenv "GUIX_LOCPATH" (string-append locales "/lib/locale"))
(setlocale LC_ALL "en_US.utf8")
(mkdir-p (dirname exe))
(symlink (string-append chromium "/bin/chromedriver")
(string-append out "/bin/chromedriver"))
(call-with-output-file exe
(lambda (port)
(format port "#!~a
exec ~a --enable-features=UseOzonePlatform --ozone-platform=wayland $@"
(string-append bash "/bin/bash")
(string-append chromium "/bin/chromium"))))
(chmod exe #o555)
;; Provide the manual and .desktop file.
(copy-recursively (string-append chromium "/share")
(string-append out "/share"))
(substitute* (string-append
out "/share/applications/chromium.desktop")
((chromium) out))
#t))))))

View file

@ -68,8 +68,8 @@ (define-public guile-sqlite3-dev
(file-name (string-append name "-" version "-checkout")))))))
(define-public cuirass
(let ((commit "df2d13621f4b2ace33a460746e704115b7b1541e")
(revision "53"))
(let ((commit "fd432b8e8f449d691773e96e7d90f44761e01aa3")
(revision "55"))
(package
(name "cuirass")
(version (git-version "0.0.1" revision commit))
@ -81,7 +81,7 @@ (define-public cuirass
(file-name (git-file-name name version))
(sha256
(base32
"1vgb1wl1rkijm1vv5chqllf4i5w1j7g02xqlaf2xmqjh2phy5dxa"))))
"10j3w3px0250avwry2x8wsa0m0plvm957g4qqgnajsbc9gvka554"))))
(build-system gnu-build-system)
(arguments
'(#:modules ((guix build utils)

View file

@ -2,6 +2,7 @@
;;; Copyright © 2018 Alex Vong <alexvong1995@gmail.com>
;;; Copyright © 2018 Pierre Neidhardt <mail@ambrevar.xyz>
;;; Copyright © 2019 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2019 Jesse Gibbons <jgibbons2357+guix@gmail.com>
;;; Copyright © 2020 Ludovic Courtès <ludo@gnu.org>
;;;
;;; This file is part of GNU Guix.
@ -21,6 +22,7 @@
(define-module (gnu packages clojure)
#:use-module (gnu packages)
#:use-module (gnu packages java)
#:use-module ((guix licenses) #:prefix license:)
#:use-module (guix packages)
#:use-module (guix download)
@ -78,6 +80,8 @@ (define-public clojure
(sha256
(base32 "1kcyv2836acs27vi75hvf3r773ahv2nlh9b3j9xa9m9sdanz1h83")))))
(build-system ant-build-system)
(inputs
`(("jre" ,icedtea)))
(arguments
`(#:imported-modules ((guix build clojure-utils)
(guix build guile-build-system)
@ -114,7 +118,23 @@ (define (extract-library name)
(add-after 'install-license-files 'install-doc
(cut install-doc #:doc-dirs '("doc/clojure/") <...>))
(add-after 'install-doc 'install-javadoc
(install-javadoc "target/javadoc/")))))
(install-javadoc "target/javadoc/"))
(add-after 'install 'make-wrapper
(lambda* (#:key inputs outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(wrapper (string-append out "/bin/clojure")))
(mkdir-p (string-append out "/bin"))
(with-output-to-file wrapper
(lambda _
(display
(string-append
"#!"
(which "sh")
"\n\n"
(assoc-ref inputs "jre") "/bin/java -jar "
out "/share/java/clojure.jar \"$@\"\n"))))
(chmod wrapper #o555))
#t)))))
(native-inputs libraries)
(home-page "https://clojure.org/")
(synopsis "Lisp dialect running on the JVM")

View file

@ -7,8 +7,8 @@
;;; Copyright © 2016 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2017, 2018, 2020 Marius Bakke <mbakke@fastmail.com>
;;; Copyright © 2018 Arun Isaac <arunisaac@systemreboot.net>
;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2019 Maxim Cournoyer <maxim.cournoyer@gmail.com>
;;; Copyright © 2018, 2020 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2019, 2020 Maxim Cournoyer <maxim.cournoyer@gmail.com>
;;; Copyright © 2019 Pierre-Moana Levesque <pierre.moana.levesque@gmail.com>
;;; Copyright © 2020 Jan (janneke) Nieuwenhuizen <janneke@gnu.org>
;;;
@ -72,7 +72,6 @@ (define %common-build-phases
"Source/cmGlobalXCodeGenerator.cxx"
"Source/cmLocalUnixMakefileGenerator3.cxx"
"Source/cmExecProgramCommand.cxx"
"Utilities/Release/release_cmake.cmake"
"Tests/CMakeLists.txt"
"Tests/RunCMake/File_Generate/RunCMakeTest.cmake")
(("/bin/sh") (which "sh")))
@ -85,7 +84,11 @@ (define %common-disabled-tests
;; This test requires network access.
"CTestTestUpload"
;; This test requires 'ldconfig' which is not available in Guix.
"RunCMake.install"))
"RunCMake.install"
;; This test fails for unknown reason.
"RunCMake.file-GET_RUNTIME_DEPENDENCIES"
;; This test requires the bundled libuv.
"BootstrapTest"))
(define %preserved-third-party-files
'(;; 'Source/cm_getdate.c' includes archive_getdate.c wholesale, so it must
@ -101,7 +104,7 @@ (define-public cmake-bootstrap
(version "3.16.5")
(source (origin
(method url-fetch)
(uri (string-append "https://www.cmake.org/files/v"
(uri (string-append "https://cmake.org/files/v"
(version-major+minor version)
"/cmake-" version ".tar.gz"))
(sha256
@ -305,6 +308,39 @@ (define-public cmake
(package
(inherit cmake-minimal)
(name "cmake")
(version "3.19.1")
;; TODO: Move the following source field to the cmake-bootstrap package in
;; the next rebuild cycle.
(source (origin
(inherit (package-source cmake-bootstrap))
(uri (string-append "https://cmake.org/files/v"
(version-major+minor version)
"/cmake-" version ".tar.gz"))
(sha256
(base32
"1fisi9rlijw9wd0yjzk1c6j7ljnb2yiq5iqnrz6m1xkflyinw9hx"))
(snippet
(match (origin-snippet (package-source cmake-bootstrap))
((_ _ exp ...)
;; Now we can delete the remaining software bundles.
(append `(begin
(define preserved-files
'(,@%preserved-third-party-files
;; TODO: Move this file to the
;; %preserved-third-party-files variable in
;; the next rebuild cycle.
"Utilities/cm3p" ;CMake header wrappers
;; Use the bundled JsonCpp during bootstrap
;; to work around a circular dependency.
;; TODO: JsonCpp can be built with Meson
;; instead of CMake, but meson-build-system
;; currently does not support
;; cross-compilation.
"Utilities/cmjsoncpp"
;; LibUV is required to bootstrap the initial
;; build system.
"Utilities/cmlibuv")))
exp))))))
(arguments
(substitute-keyword-arguments (package-arguments cmake-minimal)
;; Use cmake-minimal this time.

View file

@ -1,5 +1,5 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2013, 2015, 2018 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2013, 2015, 2018, 2020 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2015 Andreas Enge <andreas@enge.fr>
;;; Copyright © 2015, 2018 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2016, 2017, 2019, 2020 Efraim Flashner <efraim@flashner.co.il>
@ -39,6 +39,7 @@ (define-module (gnu packages code)
#:use-module ((guix licenses) #:prefix license:)
#:use-module (guix build-system gnu)
#:use-module (guix build-system cmake)
#:use-module (guix build-system python)
#:use-module (guix build-system trivial)
#:use-module (gnu packages)
#:use-module (gnu packages autogen)
@ -338,81 +339,93 @@ (define-public trio
"http://sourceforge.net/p/ctrio/git/ci/master/tree/README"))))
(define-public universal-ctags
;; The project is unable to decide whether to use 1.0 or 6.0 as the
;; first public release version (it started as a fork of another ctags
;; project that was on version 5.8), and five years later have been
;; unable to tag a release. Thus, we just take the master branch.
(let ((commit "0c78c0c4a68030df0d025c90bad291108b5e7107")
(revision "0"))
(package
(name "universal-ctags")
(version (git-version "0.0.0" revision commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/universal-ctags/ctags")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32
"0lnxc3kwi6srw0015m16vyjfdc7pdr9d1qzxjsbfv3c69ag87jhc"))
(modules '((guix build utils)))
(snippet
'(begin
;; Remove the bundled PackCC and associated build rules.
(substitute* "Makefile.am"
(("\\$\\(packcc_verbose\\)\\$\\(PACKCC\\)")
"packcc")
(("\\$\\(PEG_SRCS\\) \\$\\(PEG_HEADS\\): packcc\\$\\(EXEEXT\\)")
"$(PEG_SRCS) $(PEG_HEADS):")
(("noinst_PROGRAMS \\+= packcc")
""))
(delete-file-recursively "misc/packcc")
#t))))
(build-system gnu-build-system)
(arguments
'(#:phases (modify-phases %standard-phases
(add-after 'unpack 'make-files-writable
(lambda _
(for-each make-file-writable (find-files "."))
#t))
(add-before 'bootstrap 'patch-optlib2c
(lambda _
;; The autogen.sh script calls out to optlib2c to
;; generate translations, so we can not wait for the
;; patch-source-shebangs phase.
(patch-shebang "misc/optlib2c")
#t))
(add-before 'check 'patch-tests
(lambda _
(substitute* "misc/units"
(("SHELL=/bin/sh")
(string-append "SHELL=" (which "sh"))))
(substitute* "Tmain/utils.sh"
(("/bin/echo") (which "echo")))
#t)))))
(native-inputs
`(("autoconf" ,autoconf)
("automake" ,automake)
("packcc" ,packcc)
("perl" ,perl)
("pkg-config" ,pkg-config)))
(inputs
`(("jansson" ,jansson)
("libseccomp" ,libseccomp)
("libxml2" ,libxml2)
("libyaml" ,libyaml)))
(home-page "https://ctags.io/")
(synopsis "Generate tag files for source code")
(description
"Universal Ctags generates an index (or tag) file of language objects
(package
(name "universal-ctags")
(version "5.9.20201018.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/universal-ctags/ctags")
(commit (string-append "p" version))))
(file-name (git-file-name name version))
(sha256
(base32
"174p1w20pl25k996hfw61inw4mqhskmmic1lyw2m65firmkyvs7x"))
(modules '((guix build utils)))
(snippet
'(begin
;; Remove the bundled PackCC and associated build rules.
(substitute* "Makefile.am"
(("\\$\\(packcc_verbose\\)\\$\\(PACKCC\\)")
"packcc")
(("\\$\\(PEG_SRCS\\) \\$\\(PEG_HEADS\\): packcc\\$\\(EXEEXT\\)")
"$(PEG_SRCS) $(PEG_HEADS):")
(("noinst_PROGRAMS \\+= packcc")
""))
(delete-file-recursively "misc/packcc")
#t))))
(build-system gnu-build-system)
(arguments
'(;; Don't use the build-time TMPDIR (/tmp/guix-build-...) at runtime.
#:configure-flags '("--enable-tmpdir=/tmp")
#:phases (modify-phases %standard-phases
(add-after 'unpack 'make-files-writable
(lambda _
(for-each make-file-writable (find-files "."))
#t))
(add-before 'bootstrap 'patch-optlib2c
(lambda _
;; The autogen.sh script calls out to optlib2c to
;; generate translations, so we can not wait for the
;; patch-source-shebangs phase.
(patch-shebang "misc/optlib2c")
#t))
(add-before 'check 'patch-tests
(lambda _
(substitute* "misc/units"
(("SHELL=/bin/sh")
(string-append "SHELL=" (which "sh"))))
(substitute* "Tmain/utils.sh"
(("/bin/echo") (which "echo")))
#t)))))
(native-inputs
`(("autoconf" ,autoconf)
("automake" ,automake)
;; XXX: Use ctags' own packcc fork even though we meticolously unbundle
;; it above. Mainly for historical reasons, and perhaps their changes
;; get upstreamed in the future.
("packcc"
,(let ((commit "03402b79505dc0024f90d5bebfd7e5d3fb62da9a"))
(package
(inherit packcc)
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/universal-ctags/packcc")
(commit commit)))
(file-name (git-file-name "packcc-for-ctags"
(string-take commit 7)))
(sha256
(base32
"0vxpdk9l2lf7f32nx1p3b3xmw2kw2wp95vnf9bc4lyqrg69pblm0")))))))
("perl" ,perl)
("pkg-config" ,pkg-config)))
(inputs
`(("jansson" ,jansson)
("libseccomp" ,libseccomp)
("libxml2" ,libxml2)
("libyaml" ,libyaml)))
(home-page "https://ctags.io/")
(synopsis "Generate tag files for source code")
(description
"Universal Ctags generates an index (or tag) file of language objects
found in source files for many popular programming languages. This index
makes it easy for text editors and other tools to locate the indexed items.
Universal Ctags improves on traditional ctags because of its multilanguage
support, its ability for the user to define new languages searched by regular
expressions, and its ability to generate emacs-style TAGS files.")
(license license:gpl2+))))
(license license:gpl2+)))
(define-public withershins
(package
@ -518,6 +531,28 @@ (define-public lcov
functionality such as HTML output.")
(license license:gpl2+)))
(define-public lcov-cobertura
(package
(name "python-lcov-cobertura")
(version "1.6")
(source
(origin
(method url-fetch)
(uri (pypi-uri "lcov_cobertura" version))
(sha256
(base32
"02ar6yjazlxq4p64cz9gag08bvakmzjrp147jara9wlnlbc96j8g"))))
(build-system python-build-system)
(home-page "https://eriwen.github.io/lcov-to-cobertura-xml/")
(synopsis "LCOV to Cobertura XML converter")
(description
"The lcov-to-cobertura Python module converts code coverage report files
in the lcov format to the XML format of
@uref{http://cobertura.github.io/cobertura/, Cobertura}, a Java code coverage
tool. It allows continuous integration servers like Jenkins to aggregate
results and determine build stability.")
(license license:asl2.0)))
(define-public kcov
(package
(name "kcov")

View file

@ -2758,6 +2758,12 @@ (define gcc-boot0
"--disable-shared"
"--enable-languages=c,c++"
,@(if (equal? "powerpc64le-linux-gnu" (boot-triplet))
;; On POWER9 (little endian) glibc needs the
;; 128-bit long double type.
'("--with-long-double-128")
'())
;; libstdc++ cannot be built at this stage
;; ("Link tests are not allowed after
;; GCC_NO_EXECUTABLES.").

View file

@ -787,17 +787,17 @@ (define-public libmspack
(define-public lz4
(package
(name "lz4")
(version "1.9.2")
(version "1.9.3")
(source
(origin
(method git-fetch)
(uri (git-reference (url "https://github.com/lz4/lz4")
(commit (string-append "v" version))))
(sha256
(base32
"0lpaypmk70ag2ks3kf2dl4ac3ba40n5kc1ainkp9wfjawz76mh61"))
(base32 "1w02kazh1fps3sji2sn89fz862j1199c5ajrqcgl1bnlxj09kcbz"))
(file-name (git-file-name name version))))
(build-system gnu-build-system)
(outputs (list "out" "static"))
(native-inputs
`(;; For tests.
("python" ,python)
@ -806,20 +806,24 @@ (define-public lz4
`(#:test-target "test"
#:make-flags (list (string-append "CC=" ,(cc-for-target))
(string-append "prefix=" (assoc-ref %outputs "out")))
#:phases (modify-phases %standard-phases
(delete 'configure) ;no configure script
(add-before 'check 'disable-broken-test
(lambda _
;; XXX: test_install.sh fails when prefix is a subdirectory.
(substitute* "tests/Makefile"
(("^test: (.*) test-install" _ targets)
(string-append "test: " targets)))
#t))
(add-after 'install 'delete-static-library
(lambda* (#:key outputs #:allow-other-keys)
(let ((out (assoc-ref outputs "out")))
(delete-file (string-append out "/lib/liblz4.a"))
#t))))))
#:phases
(modify-phases %standard-phases
(delete 'configure) ; no configure script
(add-before 'check 'disable-broken-test
(lambda _
(substitute* "tests/Makefile"
;; This fails when $prefix is not a single top-level directory.
(("^test: (.*) test-install" _ targets)
(string-append "test: " targets)))
#t))
(add-after 'install 'move-static-library
(lambda* (#:key outputs #:allow-other-keys)
(let ((out (assoc-ref outputs "out"))
(static (assoc-ref outputs "static")))
(mkdir-p (string-append static "/lib"))
(rename-file (string-append out "/lib/liblz4.a")
(string-append static "/lib/liblz4.a"))
#t))))))
(home-page "https://www.lz4.org")
(synopsis "Compression algorithm focused on speed")
(description "LZ4 is a lossless compression algorithm, providing
@ -845,9 +849,9 @@ (define-public squashfs-tools
"0zmhvczscqz0mzh4b9m8m42asq14db0a6lc8clp5ljq5ybrv70d9"))))
(build-system gnu-build-system)
(arguments
'(#:tests? #f ; no check target
`(#:tests? #f ; no check target
#:make-flags
(list "CC=gcc"
(list (string-append "CC=" ,(cc-for-target))
"XZ_SUPPORT=1"
"LZO_SUPPORT=1"
"LZ4_SUPPORT=1"
@ -952,7 +956,8 @@ (define-public bsdiff
"0j2zm3z271x5aw63mwhr3vymzn45p2vvrlrpm9cz2nywna41b0hq"))))
(build-system gnu-build-system)
(arguments
`(#:make-flags (list "INSTALL=install" "CC=gcc"
`(#:make-flags (list "INSTALL=install"
(string-append "CC=" ,(cc-for-target))
(string-append "PREFIX=" (assoc-ref %outputs "out")))
#:phases (modify-phases %standard-phases
(delete 'configure)
@ -1297,7 +1302,7 @@ (define-public unshield
(source
(origin (method git-fetch)
(uri (git-reference
(url "http://github.com/twogood/unshield.git")
(url "http://github.com/twogood/unshield")
(commit version)))
(file-name (git-file-name name version))
(sha256
@ -1429,7 +1434,7 @@ (define-public zstd
#t))))
#:make-flags
(list "CC=gcc"
(list ,(string-append "CC=" (cc-for-target))
(string-append "prefix=" (assoc-ref %outputs "out"))
(string-append "libdir=" (assoc-ref %outputs "lib") "/lib")
(string-append "includedir=" (assoc-ref %outputs "lib") "/include")
@ -1464,8 +1469,14 @@ (define-public pzstd
(version (package-version zstd))
(source (package-source zstd))
(build-system gnu-build-system)
(inputs
`(,@(if (%current-target-system)
`(("googletest" ,googletest))
'())))
(native-inputs
`(("googletest" ,googletest)))
`(,@(if (%current-system)
`(("googletest" ,googletest))
'())))
(arguments
`(#:phases
(modify-phases %standard-phases
@ -1483,7 +1494,8 @@ (define-public pzstd
(install-file "README.md" doc)
#t))))
#:make-flags
(list "CC=gcc"
(list (string-append "CC=" ,(cc-for-target))
(string-append "CXX=" ,(cxx-for-target))
(string-append "PREFIX=" (assoc-ref %outputs "out")))))
(home-page (package-home-page zstd))
(synopsis "Threaded implementation of the Zstandard compression algorithm")
@ -1674,7 +1686,7 @@ (define-public atool
(source
(origin
(method url-fetch)
(uri (string-append "http://savannah.nongnu.org/download/atool/atool-"
(uri (string-append "mirror://savannah/atool/atool-"
version ".tar.gz"))
(sha256
(base32

View file

@ -522,7 +522,7 @@ (define-public coq-autosubst
(source (origin
(method git-fetch)
(uri (git-reference
(url "git://github.com/uds-psl/autosubst.git")
(url "git://github.com/uds-psl/autosubst")
(commit commit)))
(file-name (git-file-name name version))
(sha256

View file

@ -15,6 +15,7 @@
;;; Copyright © 2020 Michael Rohleder <mike@rohleder.de>
;;; Copyright © 2020 Alexandros Theodotou <alex@zrythm.org>
;;; Copyright © 2020 Greg Hogan <code@greghogan.com>
;;; Copyright © 2020 Brett Gilio <brettg@gnu.org>
;;;
;;; This file is part of GNU Guix.
;;;
@ -193,7 +194,7 @@ (define-public dashel
(define-public xsimd
(package
(name "xsimd")
(version "7.2.3")
(version "7.4.9")
(source
(origin
(method git-fetch)
@ -201,7 +202,7 @@ (define-public xsimd
(url "https://github.com/QuantStack/xsimd")
(commit version)))
(sha256
(base32 "1ny2qin1j4h35mljivh8z52kwdyjxf4yxlzb8j52ji91v2ccc88j"))
(base32 "11by8gbshm4vv6flqp0ihff8c6nmbaqq7ms93b38rrq68bigcply"))
(file-name (git-file-name name version))))
(build-system cmake-build-system)
(arguments
@ -211,11 +212,12 @@ (define-public xsimd
`(("googletest" ,googletest)))
(home-page "https://github.com/QuantStack/xsimd")
(synopsis "C++ wrappers for SIMD intrinsics and math implementations")
(description "xsimd provides a unified means for using SIMD features for
library authors. Namely, it enables manipulation of batches of numbers with
the same arithmetic operators as for single values. It also provides
accelerated implementation of common mathematical functions operating on
batches.")
(description
"xsimd provides a unified means for using @acronym{SIMD, single instruction
multiple data} features for library authors. Namely, it enables manipulation of
batches of numbers with the same arithmetic operators as for single values.
It also provides accelerated implementation of common mathematical functions
operating on batches.")
(license license:bsd-3)))
(define-public chaiscript
@ -372,7 +374,7 @@ (define-public nlohmann-json-cpp
(define-public xtl
(package
(name "xtl")
(version "0.6.19")
(version "0.6.21")
(source (origin
(method git-fetch)
(uri
@ -381,7 +383,7 @@ (define-public xtl
(commit version)))
(sha256
(base32
"1g98lfrp13fqfqrirg0rw90m7bajmjmy12yhrlj5jzwcby4dfs81"))
"08xhyy9fm2ddkdrgb1qyd2bs371a2xr7xzar482pwphz27vr035w"))
(file-name (git-file-name name version))))
(native-inputs
`(("googletest" ,googletest)
@ -406,7 +408,7 @@ (define-public xtl
(define-public ccls
(package
(name "ccls")
(version "0.20190823.6")
(version "0.20201025")
(source
(origin
(method git-fetch)
@ -414,7 +416,8 @@ (define-public ccls
(url "https://github.com/MaskRay/ccls")
(commit version)))
(sha256
(base32 "11h5nwk4qqshf3i8yr4bxpnvmidrhkzd0zxhf1xqv8cv6r08k47f"))
(base32
"13v00q1bz8g0ckw1sv0zyicbc44irc00vhwxdv3vvwlvylm7s21p"))
(file-name (git-file-name name version))))
(build-system cmake-build-system)
(arguments

File diff suppressed because it is too large Load diff

View file

@ -183,20 +183,12 @@ (define-public rust-aom-sys-0.1
(arguments
`(#:cargo-inputs
(("rust-bindgen" ,rust-bindgen-0.53)
("rust-metadeps" ,rust-metadeps-1.1))
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'set-environmental-variable
(lambda* (#:key inputs #:allow-other-keys)
(let ((clang (assoc-ref inputs "libclang")))
(setenv "LIBCLANG_PATH"
(string-append clang "/lib")))
#t)))))
("rust-metadeps" ,rust-metadeps-1.1))))
(native-inputs
`(("pkg-config" ,pkg-config)))
(inputs
`(("libaom" ,libaom)
("libclang" ,clang)
("clang" ,clang)
("llvm" ,llvm)))
(home-page "https://github.com/rust-av/aom-rs")
(synopsis "FFI bindings to aom")
@ -402,19 +394,12 @@ (define-public rust-dav1d-sys-0.3
(arguments
`(#:cargo-inputs
(("rust-bindgen" ,rust-bindgen-0.54)
("rust-metadeps" ,rust-metadeps-1.1))
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'set-environmental-variable
(lambda* (#:key inputs #:allow-other-keys)
(let ((clang (assoc-ref inputs "libclang")))
(setenv "LIBCLANG_PATH"
(string-append clang "/lib")))
#t)))))
("rust-metadeps" ,rust-metadeps-1.1))))
(native-inputs
`(("pkg-config" ,pkg-config)))
(inputs
`(("dav1d" ,dav1d)
("pkg-config" ,pkg-config)
("libclang" ,clang)
("clang" ,clang)
("llvm" ,llvm)))
(home-page "https://github.com/rust-av/dav1d-rs")
(synopsis "FFI bindings to dav1d")

File diff suppressed because it is too large Load diff

View file

@ -153,6 +153,12 @@ (define (cross-gcc-arguments target xgcc libc)
"--disable-decimal-float" ;would need libc
"--disable-libcilkrts"
,@(if (equal? "powerpc64le-linux-gnu" target)
;; On POWER9 (little endian) glibc needs
;; the 128-bit long double type.
'("--with-long-double-128")
'())
;; When target is any OS other than 'none' these
;; libraries will fail if there is no libc
;; present. See
@ -530,7 +536,13 @@ (define* (cross-libc target
;; FIXME: 'static-bash' should really be an input, not a native input, but
;; to do that will require building an intermediate cross libc.
(inputs '())
(inputs (if (hurd-triplet? target)
`(;; TODO: move to glibc in the next rebuild cycle
("hurd-mach-print.patch"
,(search-patch "glibc-hurd-mach-print.patch"))
("hurd-gettyent.patch"
,(search-patch "glibc-hurd-gettyent.patch")))
'()))
(native-inputs `(("cross-gcc" ,xgcc)
("cross-binutils" ,xbinutils)

View file

@ -5,7 +5,7 @@
;;; Copyright © 2016 Lukas Gradl <lgradl@openmailbox>
;;; Copyright © 2016, 2017, 2018, 2019, 2020 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2016, 2017 Nikita <nikita@n0.is>
;;; Copyright © 2016, 2017, 2019 Eric Bavier <bavier@member.fsf.org>
;;; Copyright © 2016, 2017, 2019, 2020 Eric Bavier <bavier@posteo.net>
;;; Copyright © 2017 Pierre Langlois <pierre.langlois@gmx.com>
;;; Copyright © 2018, 2020 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2018 Arun Isaac <arunisaac@systemreboot.net>
@ -18,6 +18,7 @@
;;; Copyright © 2020 Jakub Kądziołka <kuba@kadziolka.net>
;;; Copyright © 2020 Brice Waegeneire <brice@waegenei.re>
;;; Copyright © 2020 Hendur Saga <hendursaga@yahoo.com>
;;; Copyright © 2020 pukkamustard <pukkamustard@posteo.net>
;;;
;;; This file is part of GNU Guix.
;;;
@ -443,15 +444,14 @@ (define-public ssss
(define-public tomb
(package
(name "tomb")
(version "2.7")
(version "2.8")
(source (origin
(method url-fetch)
(uri (string-append "https://files.dyne.org/tomb/"
(uri (string-append "https://files.dyne.org/tomb/releases/"
"Tomb-" version ".tar.gz"))
(sha256
(base32
"0x3al02796vx1cvy6y6h685c367qx70dwv471g0hmks2gr10f0cn"))
(patches (search-patches "tomb-fix-errors-on-open.patch"))))
"0bggzzqmpfiknr76lyl8iszybrcpyqlbgiqk47fxq08h2b5ln1ic"))))
(build-system gnu-build-system)
(native-inputs `(("sudo" ,sudo))) ;presence needed for 'check' phase
(inputs
@ -570,12 +570,19 @@ (define-public libscrypt
(base32
"1d76ys6cp7fi4ng1w3mz2l0p9dbr7ljbk33dcywyimzjz8bahdng"))))
(build-system gnu-build-system)
(outputs (list "out" "static"))
(arguments
`(#:make-flags (list (string-append "PREFIX=" %output)
"CC=gcc")
#:phases
(modify-phases %standard-phases
(delete 'configure))))
(delete 'configure) ; no configure script
(add-after 'install 'install:static
(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(lib (string-append out "/lib")))
(install-file "libscrypt.a" lib)
#t))))))
(home-page "https://lolware.net/libscrypt.html")
(synopsis "Password hashing library")
(description "@code{libscrypt} implements @code{scrypt} key derivation
@ -1222,7 +1229,7 @@ (define-public minisign
(define-public libolm
(package
(name "libolm")
(version "3.1.5")
(version "3.2.1")
(source (origin
(method git-fetch)
(uri (git-reference
@ -1230,15 +1237,16 @@ (define-public libolm
(commit version)))
(sha256
(base32
"030g0jmmvhx2dh32k708sz6cdd5q1wz48i4gigh6dclqk10w28lm"))
"14b5cplcnbf2baq0lvz4f97m6swxpb13rvxdajxyw3s4mbvasia4"))
(file-name (git-file-name name version))))
(build-system cmake-build-system)
(arguments
`(#:phases
(modify-phases %standard-phases
(replace 'check
(lambda _
(invoke "ctest" "build/tests"))))))
(build-system cmake-build-system)
(with-directory-excursion "tests"
(invoke "ctest" ".")))))))
(synopsis "Implementation of the olm and megolm cryptographic ratchets")
(description "The libolm library implements the Double Ratchet
cryptographic ratchet. It is written in C and C++11, and exposed as a C
@ -1287,3 +1295,38 @@ (define-public hash-extender
SHA-256, SHA-512, and WHIRLPOOL hashes.")
(home-page "https://github.com/iagox86/hash_extender")
(license license:bsd-3))))
(define-public mkp224o
(package
(name "mkp224o")
(version "1.5.0")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/cathugger/mkp224o")
(commit (string-append "v" version))))
(sha256
(base32
"0b2cn96wg4l8jkkqqp8l2295xlmm2jc8nrw6rdqb5g0zkpfmrxbb"))
(file-name (git-file-name name version))))
(build-system gnu-build-system)
(arguments
`(#:tests? #f ; no test suite
#:phases
(modify-phases %standard-phases
(replace 'install
(lambda* (#:key outputs #:allow-other-keys)
(let* ((outdir (assoc-ref outputs "out"))
(bindir (string-append outdir "/bin")))
(install-file "mkp224o" bindir)
#t))))))
(native-inputs
`(("autoconf" ,autoconf)))
(inputs
`(("libsodium" ,libsodium)))
(synopsis "Tor hidden service v3 name generator")
(description "@code{mkp224o} generates valid ed25519 (hidden service
version 3) onion addresses. It allows one to produce customized vanity .onion
addresses using a brute-force method.")
(home-page "https://github.com/cathugger/mkp224o")
(license license:cc0)))

View file

@ -50,7 +50,7 @@ (define-module (gnu packages cups)
#:use-module (guix build-system gnu)
#:use-module (guix build-system python)
#:use-module (guix download)
#:use-module (guix svn-download)
#:use-module (guix git-download)
#:use-module ((guix licenses) #:prefix license:)
#:use-module (guix packages)
#:use-module (guix utils)
@ -747,10 +747,10 @@ (define-public foo2zjs
(license (list license:expat ; icc2ps/*.[ch]
license:gpl2+)))) ; everything else
(define-public escpr
(define-public epson-inkjet-printer-escpr
(package
(name "escpr")
(version "1.7.7")
(name "epson-inkjet-printer-escpr")
(version "1.7.8")
;; XXX: This currently works. But it will break as soon as a newer
;; version is available since the URLs for older versions are not
;; preserved. An alternative source will be added as soon as
@ -758,15 +758,19 @@ (define-public escpr
(source
(origin
(method url-fetch)
(uri (string-append "https://download3.ebz.epson.net/dsc/f/03/00/10/49/18/"
"f3016be6120a7271a6d9cb64872f817bce1920b8/"
"epson-inkjet-printer-escpr-1.7.7-1lsb3.2.tar.gz"))
(uri (string-append "https://download3.ebz.epson.net/dsc/f/03/00/12/04/32/"
"1a455ef8618def65700ca4e446311c2fb43cd839/"
"epson-inkjet-printer-escpr-1.7.8-1lsb3.2.tar.gz"))
(sha256
(base32 "0khdf2a9iwh9aplj2gzyzl53yyfnfv0kszk3p018jnirl5l475ld"))))
(base32 "1pygg2bd2gh27dc65h3dzwrpvi6bq5c87wl0ldchqlc2b3blsx6p"))))
(build-system gnu-build-system)
(arguments
`(#:configure-flags
`(,(string-append "--prefix="
`(#:modules
((srfi srfi-26)
,@%gnu-build-system-modules)
#:configure-flags
`("--disable-static"
,(string-append "--prefix="
(assoc-ref %outputs "out"))
,(string-append "--with-cupsfilterdir="
(assoc-ref %outputs "out") "/lib/cups/filter")
@ -784,7 +788,13 @@ (define-public escpr
(string-append match "aclocal"))
(("^(AUTOMAKE=).*" _ match)
(string-append match "automake")))
#t)))))
#t))
(add-after 'install 'compress-PPDs
(lambda* (#:key outputs #:allow-other-keys)
(let ((out (assoc-ref outputs "out")))
(with-directory-excursion out
(for-each (cut invoke "gzip" "-9" <>)
(find-files "share/cups" "\\.ppd$")))))))))
(native-inputs
`(("autoconf" ,autoconf)
("automake" ,automake)))
@ -796,31 +806,39 @@ (define-public escpr
System} that offers high-quality printing with Seiko@tie{}Epson color ink jet
printers. It can be used only with printers that support the Epson@tie{}ESC/P-R
language.")
(home-page "http://download.ebz.epson.net/dsc/search/01/search")
(home-page "http://download.ebz.epson.net/dsc/search/01/search/?OSC=LX")
(license license:gpl2+)))
(define-public escpr
(deprecated-package "escpr" epson-inkjet-printer-escpr))
(define-public splix
;; The last release was in 2009. The SVN repository contains 5 years of
;; unreleased bug fixes and support for newer printer models.
(let ((revision 315))
;; Last released in 2009 <https://sourceforge.net/projects/splix/files/>.
;; Last SVN commit was 2013 <https://svn.code.sf.net/p/splix/code/splix/>.
;; Use a more maintained fork with several bug fixes and support for newer
;; printer models.
(let ((commit "76268c4dd7dbc8218ea7426401104c3b40cc707a")
(revision "315"))
(package
(name "splix")
(version (string-append "2.0.0-" (number->string revision)))
(version (git-version "2.0.0" revision commit))
(source
(origin
(method svn-fetch)
(uri (svn-reference
(url "https://svn.code.sf.net/p/splix/code/splix/")
(revision revision)))
(file-name (string-append name "-" version "-checkout"))
(method git-fetch)
(uri (git-reference
(url "https://gitlab.com/ScumCoder/splix")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32 "16wbm4xnz35ca3mw2iggf5f4jaxpyna718ia190ka6y4ah932jxl"))))
(base32 "1mxsvllwwr1v8sgrax0b7gkajjhnm0l06s67spmaxz47lyll1qab"))))
(build-system gnu-build-system)
;; 90% (3.8 MiB) of output are .ppd files. Don't install them by default:
;; CUPS has been able to read the .drv sources directly since version 1.2.
;; PPDs have been obsolete since CUPS 1.2 and make up 90% of total size.
(outputs (list "out" "ppd"))
(arguments
'(#:make-flags
`(#:modules
((srfi srfi-26)
,@%gnu-build-system-modules)
#:make-flags
(list (string-append "CUPSDRV="
(assoc-ref %outputs "out") "/share/cups/drv")
(string-append "CUPSFILTER="
@ -831,21 +849,28 @@ (define-public splix
"THREADS=4") ; compress and print faster
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'enter-subdirectory
;; The git repository replicates the top-level SVN layout.
(lambda _
(chdir "splix")
#t))
(delete 'configure) ; no configure script
(add-before 'build 'build-.drv-files
(lambda* (#:key make-flags #:allow-other-keys)
(apply invoke "make" "drv" make-flags)))
(add-after 'install 'install-.drv-files
(lambda* (#:key make-flags #:allow-other-keys)
(apply invoke "make" "install" "DRV_ONLY=1" make-flags))))
(apply invoke "make" "install" "DRV_ONLY=1" make-flags)))
(add-after 'install 'compress-PPDs
(lambda* (#:key outputs #:allow-other-keys)
(let ((ppd (assoc-ref outputs "ppd")))
(for-each (cut invoke "gzip" "-9" <>)
(find-files ppd "\\.ppd$"))))))
#:tests? #f)) ; no test suite
(inputs
`(("cups" ,cups-minimal)
("zlib" ,zlib)
;; This dependency can be dropped by setting DISABLE_JBIG=1, but the
;; result will not support some printers like the Samsung CLP-600.
("jbigkit" ,jbigkit)))
("jbigkit" ,jbigkit)
("zlib" ,zlib)))
(synopsis "QPDL (SPL2) printer driver")
(description
"SpliX is a set of CUPS drivers for printers that speak @acronym{QPDL,

View file

@ -87,13 +87,16 @@ (define-module (gnu packages databases)
#:use-module (gnu packages guile)
#:use-module (gnu packages time)
#:use-module (gnu packages golang)
#:use-module (gnu packages icu4c)
#:use-module (gnu packages jemalloc)
#:use-module (gnu packages language)
#:use-module (gnu packages libedit)
#:use-module (gnu packages libevent)
#:use-module (gnu packages linux)
#:use-module (gnu packages logging)
#:use-module (gnu packages man)
#:use-module (gnu packages maths)
#:use-module (gnu packages multiprecision)
#:use-module (gnu packages ncurses)
#:use-module (gnu packages onc-rpc)
#:use-module (gnu packages parallel)
@ -234,7 +237,7 @@ (define-public go-gopkg.in-mgo.v2
(define-public ephemeralpg
(package
(name "ephemeralpg")
(version "3.0")
(version "3.1")
(source
(origin
(method url-fetch)
@ -242,10 +245,10 @@ (define-public ephemeralpg
"https://eradman.com/ephemeralpg/code/ephemeralpg-"
version ".tar.gz"))
(sha256
(base32 "1j0g7g114ma7y7sadbng5p1ss1zsm9zpicm77qspym6565733vvh"))))
(base32 "1ap22ki8yz6agd0qybcjgs4b9izw1rwwcgpxn3jah2ccfyax34s6"))))
(build-system gnu-build-system)
(arguments
'(#:make-flags (list "CC=gcc"
`(#:make-flags (list (string-append "CC=" ,(cc-for-target))
(string-append "PREFIX=" %output))
#:phases
(modify-phases %standard-phases
@ -308,6 +311,183 @@ (define-public es-dump-restore
(home-page "https://github.com/patientslikeme/es_dump_restore")
(license license:expat)))
(define-public firebird
(package
(name "firebird")
(version "3.0.7")
(source
(let ((revision "33374-0"))
(origin
(method url-fetch)
(uri (string-append "https://github.com/FirebirdSQL/"
"firebird/releases/download/R"
(string-replace-substring version "." "_") "/"
"Firebird-" version "." revision ".tar.bz2"))
(sha256
(base32 "0xpy1bncz36c6n28y7kllm1dkrdkn4vb4gw2n43f2351mznmrf5c"))
(modules '((guix build utils)))
(snippet
`(begin
(for-each
delete-file-recursively
(list "extern/btyacc/test" ; TODO: package and remove entirely
"extern/editline"
"extern/icu"
"extern/libtommath"
"extern/zlib"
"src/include/firebird/impl/boost"
;; Missing licence.
"builds/install/arch-specific/solaris"
"extern/SfIO"
"src/msgs/templates.sql"
;; Generated files missing sources.
"doc/Firebird-3-QuickStart.pdf"
(string-append "doc/Firebird-" ,version
"-ReleaseNotes.pdf")
"doc/README.SecureRemotePassword.html"))
#t)))))
(build-system gnu-build-system)
(outputs (list "debug" "out"))
(arguments
`(#:configure-flags
(let ((out (assoc-ref %outputs "out")))
(list (string-append "--with-fbsbin=" out "/sbin")
(string-append "--with-fbdoc=" out "/share/doc/"
,name "-" ,version)
(string-append "--with-fbconf=" out "/lib/firebird")
(string-append "--with-fbintl=" out "/lib/firebird/intl")
(string-append "--with-fbmisc=" out "/lib/firebird/misc")
(string-append "--with-fbmsg=" out "/lib/firebird")
(string-append "--with-fbplugins=" out "/lib/firebird/plugins")
(string-append "--with-fbudf=" out "/lib/firebird/UDF")
"--with-fbglock=/run/firebird"
"--with-fblog=/var/log/firebird"
"--with-fbhelp=/var/lib/firebird/system"
"--with-fbsecure-db=/var/lib/firebird/secure"
"--without-fbsample"
"--without-fbsample-db"
"--with-system-editline"))
#:make-flags
(list (string-append "CC=" ,(cc-for-target))
;; The plugins/ can't find libfbclient otherwise.
(string-append "LDFLAGS=-Wl,-rpath="
(assoc-ref %outputs "out") "/lib"))
#:tests? #f ; no test suite
#:modules ((guix build gnu-build-system)
(guix build utils)
(srfi srfi-26))
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'use-system-boost
(lambda _
(substitute* "src/include/firebird/Message.h"
(("\"\\./impl/boost/preprocessor/seq/for_each_i\\.hpp\"")
"<boost/preprocessor/seq/for_each_i.hpp>")
(("FB_BOOST_") "BOOST_"))
#t))
(add-after 'unpack 'patch-installation
(lambda _
(substitute*
"builds/install/arch-specific/linux/makeInstallImage.sh.in"
(("/bin/sh") (which "bash"))
;; Remove shell script helpers from $PATH.
(("(addLibs|cp) .*\\.sh .*@FB_SBINDIR@") ":")
;; Put files where Guix users expect them.
(("(License\\.txt.*)@FB_CONFDIR" match)
(string-append match "@FB_DOCDIR@"))
(("@FB_CONFDIR@(.*License\\.txt.*)" match)
(string-append "@FB_DOCDIR@" match))
(("(cp .*/doc/.*)@FB_CONFDIR@(.*)" _ head tail)
(string-append head "@FB_DOCDIR@" tail "\n")))
(substitute*
(list "builds/install/posix-common/changeServerMode.sh.in"
"builds/install/posix-common/install.sh.in")
;; Skip phases that (could) cause problems in Guix.
(("check(InstallUser|IfServerRunning|Libraries)|addFirebirdUser")
":")
;; Skip phases that are merely pointless on Guix.
(("buildUninstallFile|installInitdScript|startFirebird") ":")
;; Omit randomly generated password with bonus timestamp.
(("setDBAPassword") ":"))
;; These promote proprietary workflows not relevant on Guix.
(for-each delete-file-recursively
(find-files "doc" "README\\.(build\\.msvc|NT|Win)"))
#t))
(add-after 'configure 'delete-init-scripts
(lambda _
(delete-file-recursively "gen/install/misc")
#t))
(add-before 'build 'set-build-environment-variables
(lambda _
;; isql needs to run & find libfbclient.so during the build.
;; This doubles as a rudimentary test in lieu of a test suite.
(setenv "LD_LIBRARY_PATH"
(string-append (assoc-ref %build-inputs "icu4c") "/lib"))
#t))
(add-before 'install 'keep-embedded-debug-symbols
(lambda _
;; Let the gnu-build-system separate & deal with them later.
;; XXX Upstream would use --strip-unneeded, shaving a whole
;; megabyte off Guix's 7.7M libEngine12.so, for example.
(substitute* "gen/Makefile.install"
(("readelf") "false"))
#t))
(add-after 'install 'prune-undesirable-files
(lambda* (#:key outputs #:allow-other-keys)
(let ((out (assoc-ref outputs "out")))
(with-directory-excursion out
;; Remove example binaries.
(for-each delete-file-recursively
(find-files "." "example"))
;; Delete (now-)empty directories.
(for-each rmdir
(list "include/firebird/impl"
"lib/firebird/plugins/udr"))
#t)))))))
(inputs
`(("boost" ,boost)
("editline" ,editline)
("icu4c" ,icu4c-67)
("libtommath" ,libtommath)
("ncurses" ,ncurses)
("zlib" ,zlib)))
(home-page "https://www.firebirdsql.org")
(synopsis "Relational database with many ANSI SQL standard features")
(description
"Firebird is an SQL @acronym{RDBMS, relational database management system}
with rich support for ANSI SQL (e.g., @code{INSERT...RETURNING}) including
@acronym{UDFs, user-defined functions} and PSQL stored procedures, cursors, and
triggers. Transactions provide full ACID-compliant referential integrity.
The database requires very little manual maintenance once set up, making it
ideal for small business or embedded use.
When installed as a traditional local or remote (network) database server,
Firebird can grow to terabyte scale with proper tuning---although PostgreSQL
may be a better choice for such very large environments.
Firebird can also be embedded into stand-alone applications that don't want or
need a full client & server. Used in this manner, it offers richer SQL support
than SQLite as well as the option to seamlessly migrate to a client/server
database later.")
(properties
`((lint-hidden-cve . ("CVE-2017-6369"))))
(license
;; See doc/license/README.license.usage.txt for rationale & details.
(list license:bsd-3 ; src/common/sha2/
license:bsd-4 ; src/common/enc.cpp
license:gpl2+ ; builds/posix/make.defaults
(license:non-copyleft "file:///builds/install/misc/IPLicense.txt"
"InterBase Public License v1.0")
(license:non-copyleft "file:///builds/install/misc/IDPLicense.txt"
"Initial Developer's Public License v1.0")
license:lgpl2.1 ; exception for OSI-compatible licences
license:mpl1.1 ; examples/interfaces/0{6,8}*.cpp
license:public-domain)))) ; including files without explicit licence
(define-public leveldb
(package
(name "leveldb")
@ -956,16 +1136,16 @@ (define-public mariadb
(define-public mariadb-connector-c
(package
(name "mariadb-connector-c")
(version "3.1.10")
(source (origin
(method url-fetch)
(uri (string-append
"https://downloads.mariadb.org/f/connector-c-"
version "/mariadb-connector-c-"
version "-src.tar.gz"))
(sha256
(base32
"13v5z4w1cl890lnr2fbwbziw638lqw2aga45vdq1z0cyrc9mcgmg"))))
(version "3.1.11")
(source
(origin
(method url-fetch)
(uri (string-append
"https://downloads.mariadb.org/f/connector-c-" version
"/mariadb-connector-c-" version "-src.tar.gz"
"/from/https%3A//mirrors.ukfast.co.uk/sites/mariadb/?serve"))
(sha256
(base32 "03svzahdf7czjlm695c11r4bfd04qdqgx8r1vkpr1zlkjhwnqvry"))))
(inputs
`(("openssl" ,openssl)))
(build-system cmake-build-system)
@ -1024,6 +1204,8 @@ (define-public postgresql
pictures, sounds, or video.")
(license (license:x11-style "file://COPYRIGHT"))))
(define-public postgresql-10 postgresql)
(define-public postgresql-11
(package
(inherit postgresql)
@ -1126,12 +1308,12 @@ (define-public recutils
(native-inputs `(("bc" ,bc)
("bash:include" ,bash "include")
("check" ,check-0.14)
("libuuid" ,util-linux)
("pkg-config" ,pkg-config)))
;; TODO: Add more optional inputs.
(inputs `(("curl" ,curl)
("libgcrypt" ,libgcrypt)))
("libgcrypt" ,libgcrypt)
("libuuid" ,util-linux "lib")))
(synopsis "Manipulate plain text files as databases")
(description
"GNU Recutils is a set of tools and libraries for creating and
@ -1188,6 +1370,7 @@ (define-public rocksdb
`(#:make-flags (list "CC=gcc" "V=1"
;; Ceph requires that RTTI is enabled.
"USE_RTTI=1"
"date=1970-01-01" ; build reproducibly
(string-append "INSTALL_PATH="
(assoc-ref %outputs "out"))
@ -2137,7 +2320,7 @@ (define-public perl-db-file
(define-public lmdb
(package
(name "lmdb")
(version "0.9.26")
(version "0.9.27")
(source
(origin
(method git-fetch)
@ -2146,7 +2329,7 @@ (define-public lmdb
(commit (string-append "LMDB_" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0323xwb2rqyrr9vr6gbxc2kl89drhqw0ifmyh9pg9qgqmymyhxdx"))))
(base32 "09xqqm8yjsf1gv4gd4llal48sms76hfhxadx6rik1j2g5v3d3f1k"))))
(build-system gnu-build-system)
(arguments
`(#:test-target "test"
@ -2238,17 +2421,18 @@ (define-public libpqxx
(define-public python-peewee
(package
(name "python-peewee")
(version "3.9.6")
(source
(origin
(method url-fetch)
(uri (pypi-uri "peewee" version))
(sha256
(base32
"1j4sh946k0736m7pd54z0y6i2hjhgg3kdllx1pwq8xkzzcgrx1xw"))))
(version "3.14.0")
(source
(origin
(method url-fetch)
(uri (pypi-uri "peewee" version))
(sha256
(base32 "1yl49gxrg0c2x3n3r60z3lixw9am8b61s0477l9vjabhhx1yziar"))))
(build-system python-build-system)
(arguments
`(#:tests? #f)) ; Fails to import test data
`(#:tests? #f)) ; fails to import test data
(inputs
`(("sqlite" ,sqlite)))
(native-inputs
`(("python-cython" ,python-cython)))
(home-page "https://github.com/coleifer/peewee/")
@ -3273,7 +3457,7 @@ (define-public python2-sql
(define-public python-pypika
(package
(name "python-pypika")
(version "0.37.2")
(version "0.44.0")
(source
(origin (method git-fetch)
(uri (git-reference
@ -3282,7 +3466,7 @@ (define-public python-pypika
(file-name (git-file-name name version))
(sha256
(base32
"089z1c778q1fwhzsc88ws8j5gm2hgxknibabn4wpax8rz2bfs3ck"))))
"0mpddrw9z1pzcc40j3pzhd583hlgjx96aa8ak6m9zzhpm4bv3ard"))))
(build-system python-build-system)
(native-inputs
`(("python-parameterized" ,python-parameterized)))
@ -3687,7 +3871,7 @@ (define-public libdbi-drivers
(define-public soci
(package
(name "soci")
(version "4.0.0")
(version "4.0.1")
(source (origin
(method git-fetch)
(uri (git-reference
@ -3696,23 +3880,21 @@ (define-public soci
(file-name (git-file-name name version))
(sha256
(base32
"06faswdxd2frqr9xnx6bxc7zwarlzsbdi3bqpz7kwdxsjvq41rnb"))))
"14x2gjblkgpflv75wl144cyjp1sis5rbxnr9r2gj3yw16v2av0bp"))))
(build-system cmake-build-system)
(inputs
`(("postgresql" ,postgresql)
`(("firebird" ,firebird)
("postgresql" ,postgresql)
("sqlite" ,sqlite)
("odbc" ,unixodbc)
("boost" ,boost)
("mariadb:dev" ,mariadb "dev")))
(arguments
`(#:tests? #f ; Tests may require running database management systems.
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'fix-lib-path
(lambda _
(substitute* "CMakeLists.txt"
(("set\\(SOCI_LIBDIR \"lib64\"\\)") ""))
#t)))))
`(#:configure-flags
;; C++11 (-DSOCI_CXX11) is OFF by default. hyperledger-iroha needs it.
(list "-DCMAKE_CXX_STANDARD=17"
"-DSOCI_LIBDIR=lib")
#:tests? #f)) ; may require running database management systems
(synopsis "C++ Database Access Library")
(description
"SOCI is an abstraction layer for several database backends, including

View file

@ -1,7 +1,7 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2012, 2013, 2014, 2016 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2013, 2015 Andreas Enge <andreas@enge.fr>
;;; Copyright © 2016, 2017, 2018 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2016, 2017, 2018, 2020 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2017, 2018 Marius Bakke <mbakke@fastmail.com>
;;; Copyright © 2018 Mark H Weaver <mhw@netris.org>
;;;
@ -41,7 +41,7 @@ (define-public bdb-4.8
"See LICENSE in the distribution."))
(source (origin
(method url-fetch)
(uri (string-append "http://download.oracle.com/berkeley-db/db-"
(uri (string-append "https://download.oracle.com/berkeley-db/db-"
version ".tar.gz"))
(sha256
(base32
@ -104,7 +104,7 @@ (define-public bdb-5.3
(version "5.3.28")
(source (origin
(method url-fetch)
(uri (string-append "http://download.oracle.com/berkeley-db/db-"
(uri (string-append "https://download.oracle.com/berkeley-db/db-"
version ".tar.gz"))
(sha256
(base32
@ -116,7 +116,7 @@ (define-public bdb-6
(version "6.2.32")
(source (origin
(method url-fetch)
(uri (string-append "http://download.oracle.com/berkeley-db/db-"
(uri (string-append "https://download.oracle.com/berkeley-db/db-"
version ".tar.gz"))
(sha256
(base32

View file

@ -1,5 +1,5 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2018 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2018, 2020 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2018, 2020 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2020 Marius Bakke <marius@gnu.org>
;;;
@ -26,12 +26,17 @@ (define-module (gnu packages debian)
#:use-module (guix build-system gnu)
#:use-module (guix build-system trivial)
#:use-module (gnu packages autotools)
#:use-module (gnu packages backup)
#:use-module (gnu packages base)
#:use-module (gnu packages compression)
#:use-module (gnu packages crypto)
#:use-module (gnu packages dbm)
#:use-module (gnu packages gettext)
#:use-module (gnu packages gnupg)
#:use-module (gnu packages wget)
#:use-module (gnu packages perl))
#:use-module (gnu packages ncurses)
#:use-module (gnu packages perl)
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages wget))
(define-public debian-archive-keyring
(package
@ -275,3 +280,114 @@ (define-public apt-mirror
selectively mirror Debian and Ubuntu GNU/Linux distributions or any
other apt sources typically provided by open source developers.")
(license license:gpl2))))
(define-public dpkg
(package
(name "dpkg")
(version "1.20.5")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://git.dpkg.org/git/dpkg/dpkg")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32
"190q968g1vdz07byvfvc2gladhpq3yl765mfiacglyix3nkisy0j"))))
(build-system gnu-build-system)
(arguments
`(#:phases
(modify-phases %standard-phases
(add-before 'bootstrap 'patch-version
(lambda _
(patch-shebang "get-version")
(with-output-to-file ".dist-version"
(lambda () (display ,version)))
#t))
(add-after 'unpack 'set-perl-libdir
(lambda* (#:key inputs outputs #:allow-other-keys)
(let ((out (assoc-ref outputs "out"))
(perl (assoc-ref inputs "perl")))
(setenv "PERL_LIBDIR"
(string-append out
"/lib/perl5/site_perl/"
,(package-version perl)))
#t))))))
(native-inputs
`(("autoconf" ,autoconf)
("automake" ,automake)
("gettext" ,gettext-minimal)
("libtool" ,libtool)
("pkg-config" ,pkg-config)
("perl-io-string" ,perl-io-string)))
(inputs
`(("bzip2" ,bzip2)
("libmd" ,libmd)
("ncurses" ,ncurses)
("perl" ,perl)
("xz" ,xz)
("zlib" ,zlib)))
(home-page "https://wiki.debian.org/Teams/Dpkg")
(synopsis "Debian package management system")
(description "This package provides the low-level infrastructure for
handling the installation and removal of Debian software packages.")
(license license:gpl2+)))
(define-public reprepro
(package
(name "reprepro")
(version "5.3.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://salsa.debian.org/brlink/reprepro.git/")
(commit (string-append name "-" version))))
(file-name (git-file-name name version))
(sha256
(base32
"1kn7m5rxay6q2c4vgjgm4407xx2r46skkkb6rn33m6dqk1xfkqnh"))))
(build-system gnu-build-system)
(arguments
`(#:tests? #f ; testtool not found
#:phases
(modify-phases %standard-phases
(replace 'check
(lambda* (#:key tests? #:allow-other-keys)
(if tests?
(with-directory-excursion "tests"
(invoke (which "sh") "test.sh"))
#t)))
(add-after 'install 'install-completions
(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(bash (string-append out "/etc/bash_completion.d/"))
(zsh (string-append out "/share/zsh/site-fucnctions/")))
(mkdir-p bash)
(mkdir-p zsh)
(copy-file "docs/reprepro.bash_completion"
(string-append bash "reprepro"))
(copy-file "docs/reprepro.zsh_completion"
(string-append zsh "_reprepro"))
#t))))))
(inputs
`(("bdb" ,bdb)
("bzip2" ,bzip2)
("gpgme" ,gpgme)
("libarchive" ,libarchive)
("xz" ,xz)
("zlib" ,zlib)))
(native-inputs
`(("autoconf" ,autoconf)
("automake" ,automake)))
(home-page "https://salsa.debian.org/brlink/reprepro")
(synopsis "Debian package repository producer")
(description "Reprepro is a tool to manage a repository of Debian packages
(@code{.deb}, @code{.udeb}, @code{.dsc}, ...). It stores files either being
injected manually or downloaded from some other repository (partially) mirrored
into one pool/ hierarchy. Managed packages and files are stored in a Berkeley
DB, so no database server is needed. Checking signatures of mirrored
repositories and creating signatures of the generated Package indices is
supported.")
(license license:gpl2)))

View file

@ -1,7 +1,7 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2014, 2015, 2016, 2017, 2019, 2020 Eric Bavier <bavier@posteo.net>
;;; Copyright © 2016, 2017, 2018, 2020 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2018, 2020 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2018, 2019 Rutger Helling <rhelling@mykolab.com>
;;; Copyright © 2019 Pkill -9 <pkill9@runbox.com>
;;; Copyright © 2020 Vincent Legoll <vincent.legoll@gmail.com>
@ -566,7 +566,7 @@ (define-public remake
(define-public rr
(package
(name "rr")
(version "5.3.0")
(version "5.4.0")
(source (origin
(method git-fetch)
(uri (git-reference
@ -574,18 +574,19 @@ (define-public rr
(commit version)))
(sha256
(base32
"1x6l1xsdksnhz9v50p4r7hhmr077cq20kaywqy1jzdklvkjqzf64"))
"1sfldgkkmsdyaqa28i5agcykc63gwm3zjihd64g86i852w8al2w6"))
(file-name (git-file-name name version))))
(build-system cmake-build-system)
(arguments
`(#:configure-flags
;; The 'rr_exec_stub' is a static binary, which leads CMake to fail
;; with:
;;
;; file RPATH_CHANGE could not write new RPATH:
;;
;; with file RPATH_CHANGE could not write new RPATH: ....
;; Clear CMAKE_INSTALL_RPATH to avoid that problem.
(list "-DCMAKE_INSTALL_RPATH="
;; Satisfy the validate-runpath phase. This isn't a direct
;; consequence of clearing CMAKE_INSTALL_RPATH.
(string-append "-DCMAKE_EXE_LINKER_FLAGS=-Wl,-rpath="
(assoc-ref %build-inputs "capnproto") "/lib")
,@(if (and (not (%current-target-system))
(member (%current-system)
'("x86_64-linux" "aarch64-linux")))
@ -613,7 +614,7 @@ (define-public rr
("which" ,which)))
(inputs
`(("gdb" ,gdb)
("cpanproto" ,capnproto)
("capnproto" ,capnproto)
("python" ,python)
("python-pexpect" ,python-pexpect)))
(home-page "https://rr-project.org/")

View file

@ -53,14 +53,14 @@ (define-module (gnu packages dictionaries)
(define-public vera
(package
(name "vera")
(version "1.23")
(version "1.24")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnu/vera/vera-" version
".tar.gz"))
(sha256
(base32
"1az0v563jja8xb4896jyr8yv7jd9zacqyfkjd7psb73v7clg1mzz"))))
"1j5p679vw72bv766acbg6g89k31ynmrzlpg7s3wzy4krlwdf92xc"))))
(build-system trivial-build-system)
(arguments
`(#:builder (begin
@ -80,6 +80,12 @@ (define-public vera
(mkdir-p info)
(mkdir-p html)
;; Change a Malformed UTF-8 character: \xd7\x34 (unexpected
;; non-continuation byte 0x34, immediately after start byte
;; 0xd7; need 2 bytes, got 1) in pattern match (m//).
(substitute* "vera.h"
(("320.480") "320x480"))
;; XXX: Use '--force' because the document is unhappy
;; with Texinfo 5 (yes, documents can be unhappy.)
(invoke (string-append texi "/bin/makeinfo")
@ -236,7 +242,7 @@ (define-public translate-shell
(origin
(method git-fetch)
(uri (git-reference
(url"https://github.com/soimort/translate-shell.git")
(url"https://github.com/soimort/translate-shell")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256

View file

@ -72,7 +72,7 @@ (define-module (gnu packages diffoscope)
(define-public diffoscope
(package
(name "diffoscope")
(version "151")
(version "161")
(source (origin
(method git-fetch)
(uri (git-reference
@ -81,40 +81,16 @@ (define-public diffoscope
(file-name (git-file-name name version))
(sha256
(base32
"1lv44ngqij9dp3xk9jj95w7an7h03iac6b2ifpq33j5fffswa1sm"))))
"1c9afc0s8p2wh7pw7xclr8j06ma3fjk6r1dnfaf1gdfk05hdxi78"))))
(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))
;; Test is dynamically generated and may have false
;; negatives with different ocaml versions. Further
;; background in: https://bugs.debian.org/939386
(add-after 'unpack 'remove-ocaml-test
(lambda _
(substitute* "tests/comparators/test_ocaml.py"
(("def test_diff.differences.:")
"def skip_test_diff(differences):"))
#t))
(add-after 'unpack 'skip-elf-tests
;; FIXME: libmix_differences test added in 125, and is
;; failing, need to explore why...
(lambda _
(substitute* "tests/comparators/test_elf.py"
(("def test_libmix_differences.libmix_differences.:")
"def skip_test_libmix_differences(libmix_differences):"))
#t))
(add-after 'unpack 'embed-tool-references
(lambda* (#:key inputs #:allow-other-keys)
(substitute* "diffoscope/comparators/utils/compare.py"
@ -145,6 +121,13 @@ (define-public diffoscope
;; This requires /sbin to be in $PATH.
(delete-file "tests/test_tools.py")
#t))
(add-before 'check 'skip-dex-test-with-missing-procyon
(lambda _
;; This test actually requires procyon decompiler
(substitute* "tests/comparators/test_dex.py"
(("skip_unless_tools_exist.\"enjarify\", \"zipinfo\", \"javap\"")
"skip_unless_tools_exist(\"enjarify\", \"zipinfo\", \"javap\", \"procyon\""))
#t))
(add-after 'install 'install-man-page
(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
@ -155,6 +138,7 @@ (define-public diffoscope
("python-file" ,python-file)
("python-debian" ,python-debian)
("python-libarchive-c" ,python-libarchive-c)
("python-magic" ,python-magic)
("python-tlsh" ,python-tlsh)
("acl" ,acl) ;for getfacl
("colordiff" ,colordiff)
@ -164,6 +148,7 @@ (define-public diffoscope
("python-pytest" ,python-pytest)
("python-chardet" ,python-chardet)
("python-binwalk" ,python-binwalk)
("python-black" ,python-black)
("python-h5py" ,python-h5py)
("python-pypdf2" ,python-pypdf2)
("python-progressbar33" ,python-progressbar33)
@ -240,7 +225,7 @@ (define-public diffoscope
(define-public reprotest
(package
(name "reprotest")
(version "0.7.14")
(version "0.7.15")
(source
(origin
(method git-fetch)
@ -250,7 +235,7 @@ (define-public reprotest
(file-name (git-file-name name version))
(sha256
(base32
"12d07xq5zx5dfbsgakm6zcn7hgf0h9f5kvfjqkiyak4ix5aa6xkf"))))
"12lc1pb9d5h3blrzzx9nbqqj5bi9x23yj31fxafmk37803rl8a0m"))))
(inputs
`(("python-debian" ,python-debian)
("python-distro" ,python-distro)
@ -262,6 +247,7 @@ (define-public reprotest
("libfaketime" ,libfaketime)
("python-coverage" ,python-coverage)
("python-docutils" ,python-docutils)
("python-magic " ,python-magic)
("python-pytest " ,python-pytest)
("python-tlsh" ,python-tlsh)
("python-tox" ,python-tox)

View file

@ -86,7 +86,8 @@ (define-module (gnu packages disk)
#:use-module (guix download)
#:use-module (guix git-download)
#:use-module ((guix licenses) #:prefix license:)
#:use-module (guix packages))
#:use-module (guix packages)
#:use-module (guix utils))
(define-public udevil
(package
@ -482,7 +483,7 @@ (define-public pydf
(define-public f3
(package
(name "f3")
(version "7.2")
(version "8.0")
(source
(origin
(method git-fetch)
@ -491,11 +492,11 @@ (define-public f3
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1iwdg0r4wkgc8rynmw1qcqz62l0ldgc8lrazq33msxnk5a818jgy"))))
(base32 "17l5vspfcgfbkqg7bakp3gql29yb05gzawm8n3im30ilzdr53678"))))
(build-system gnu-build-system)
(arguments
'(#:tests? #f ; no check target
#:make-flags (list "CC=gcc"
`(#:tests? #f ; no check target
#:make-flags (list (string-append "CC=" ,(cc-for-target))
(string-append "PREFIX=" %output))
#:phases
(modify-phases %standard-phases
@ -520,7 +521,7 @@ (define-public f3
(define-public python-parted
(package
(name "python-parted")
(version "3.11.6")
(version "3.11.7")
(source
(origin
(method git-fetch)
@ -529,7 +530,7 @@ (define-public python-parted
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1xgrqhvn44vr3676j5sy2x3xfv2dzf7vncg25cmrsmkbd49x3z5j"))))
(base32 "01193fmkss9icjvqpw85szpk8ld1pnha7p9kqm7mpwk6rc6gi2m3"))))
(build-system python-build-system)
(arguments
`(#:phases
@ -558,7 +559,7 @@ (define-public python-parted
(define-public duperemove
(package
(name "duperemove")
(version "0.11.1")
(version "0.11.2")
(source
(origin
(method git-fetch)
@ -566,7 +567,7 @@ (define-public duperemove
(url "https://github.com/markfasheh/duperemove")
(commit (string-append "v" version))))
(sha256
(base32 "1scz76pvpljvrpfn176125xwaqwyy4pirlm11sc9spb2hyzknw2z"))
(base32 "1a87mka2sfzhbch2jip6wlvvs0glxq9lqwmyrp359d1rmwwmqiw9"))
(file-name (git-file-name name version))))
(build-system gnu-build-system)
(native-inputs
@ -580,7 +581,9 @@ (define-public duperemove
(modify-phases %standard-phases
(delete 'configure)) ; no configure script
#:make-flags (list (string-append "PREFIX=" %output)
"CC=gcc")))
(string-append "CC=" ,(cc-for-target))
;; Set to <next release>dev by default.
(string-append "VER=" ,version))))
(home-page "https://github.com/markfasheh/duperemove")
(synopsis "Tools for de-duplicating file system data")
(description "Duperemove is a simple tool for finding duplicated extents
@ -1049,7 +1052,7 @@ (define-public memkind
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/memkind/memkind.git")
(url "https://github.com/memkind/memkind")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256

View file

@ -47,13 +47,13 @@ (define-module (gnu packages django)
(define-public python-django
(package
(name "python-django")
(version "3.1.1")
(version "3.1.3")
(source (origin
(method url-fetch)
(uri (pypi-uri "Django" version))
(sha256
(base32
"0bzwy58hrxbsh7szak1yfh7qvvfnpdpi8ay1x7d3pvbkm1f15j2r"))))
"13rz3v0bwk8i3xcccn5awbafahab3cyk8wwv57v2xazdzxspgf0l"))))
(build-system python-build-system)
(arguments
'(#:phases
@ -132,13 +132,13 @@ (define-public python-django
(define-public python-django-2.2
(package
(inherit python-django)
(version "2.2.16")
(version "2.2.17")
(source (origin
(method url-fetch)
(uri (pypi-uri "Django" version))
(sha256
(base32
"1535g2r322cl4x52fb0dmzlbg23539j2wx6027j54p22xvjlbkv2"))))
"0qdq0h2gw45j0h9j22c2sdn49ybl7jsrcyraskb9snknsyj70lyg"))))
(native-inputs
`(;; XXX: In 2.2 and 3.0, selenium is required for the test suite.
("python-selenium" ,python-selenium)
@ -862,14 +862,13 @@ (define-public python-django-rq
(define-public python-django-q
(package
(name "python-django-q")
(version "1.3.3")
(version "1.3.4")
(source
(origin
(method url-fetch)
(uri (pypi-uri "django-q" version))
(sha256
(base32
"1fs29767940akbsn3vdzw2rqnn9v77b0b55bi7fvydny1rk7fw6y"))))
(base32 "03z1pf6wlf47i7afr79a8fiiidfk1vq19yaqnv0m4qdny7f58gaj"))))
(build-system python-build-system)
;; FIXME: Tests require disque, Redis, MongoDB, Docker.
(arguments '(#:tests? #f))
@ -1013,14 +1012,14 @@ (define-public python-django-tagging
(define-public python-djangorestframework
(package
(name "python-djangorestframework")
(version "3.11.1")
(version "3.12.1")
(source
(origin
(method url-fetch)
(uri (pypi-uri "djangorestframework" version))
(sha256
(base32
"0chbl1d0m1x23mmpdj7y85k3n32lpxrhcdl07ywnylfj9dd2vl3d"))))
"0jb22psb823vh5fj9az63p5lgyax9ygjy2faah16ajxvvsp54i6m"))))
(build-system python-build-system)
(arguments
'(;; No included tests
@ -1052,7 +1051,7 @@ (define-public python-django-sekizai
("python-six" ,python-six)))
(home-page "https://github.com/divio/django-sekizai")
(synopsis "Template blocks for Django projects")
(description "Sekizai means blocks in Japanese, and thats what this app
(description "Sekizai means blocks in Japanese, and that is what this app
provides. A fresh look at blocks. With @code{django-sekizai} you can define
placeholders where your blocks get rendered and at different places in your
templates append to those blocks. This is especially useful for css and
@ -1193,7 +1192,7 @@ (define-public python-django-auth-ldap
(home-page "https://github.com/django-auth-ldap/django-auth-ldap")
(synopsis "Django LDAP authentication backend")
(description
"This packages provides a LDAP authentication backend for Django.")
"This package provides an LDAP authentication backend for Django.")
(license license:bsd-2)))
(define-public python-django-logging-json
@ -1291,6 +1290,6 @@ (define-public python-django-url-filter
(description
"The main goal of Django URL Filter is to provide an easy URL interface
for filtering data. It allows the user to safely filter by model attributes
and also allows to specify the lookup type for each filter (very much like
and also specify the lookup type for each filter (very much like
Django's filtering system in ORM).")
(license license:expat)))

View file

@ -2,6 +2,7 @@
;;; Copyright © 2015 Paul van der Walt <paul@denknerd.org>
;;; Copyright © 2020 Nicolas Goaziou <mail@nicolasgoaziou.fr>
;;; Copyright © 2020 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2020 Guillaume Le Vaillant <glv@posteo.net>
;;;
;;; This file is part of GNU Guix.
;;;
@ -25,33 +26,67 @@ (define-module (gnu packages djvu)
#:use-module (guix download)
#:use-module (guix git-download)
#:use-module (guix build-system gnu)
#:use-module (guix build-system python)
#:use-module (gnu packages autotools)
#:use-module (gnu packages base)
#:use-module (gnu packages check)
#:use-module (gnu packages compression)
#:use-module (gnu packages gawk)
#:use-module (gnu packages gettext)
#:use-module (gnu packages ghostscript)
#:use-module (gnu packages glib)
#:use-module (gnu packages image)
#:use-module (gnu packages imagemagick)
#:use-module (gnu packages linux)
#:use-module (gnu packages ncurses)
#:use-module (gnu packages ocr)
#:use-module (gnu packages pdf)
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages python)
#:use-module (gnu packages python-web)
#:use-module (gnu packages python-xyz)
#:use-module (gnu packages qt)
#:use-module (gnu packages wxwidgets)
#:use-module (gnu packages xml)
#:use-module (gnu packages xorg))
(define-public djvulibre
(package
(name "djvulibre")
(version "3.5.27")
(source (origin
(method url-fetch)
(uri (string-append "mirror://sourceforge/djvu/DjVuLibre/"
version "/djvulibre-" version ".tar.gz"))
(sha256
(base32
"0psh3zl9dj4n4r3lx25390nx34xz0bg0ql48zdskhq354ljni5p6"))))
(version "3.5.28")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://sourceforge/djvu/DjVuLibre/"
(string-replace-substring version "." ",")
"/djvulibre-" version ".tar.gz"))
(sha256
(base32 "0manxn1ly5n8nqamv47hz7akxi6v0rzwc9j1c3x99vngrjlr5qw2"))
(modules '((guix build utils)))
(snippet
'(begin
;; This bundles software (e.g., zlib) and is entirely superfluous.
(delete-file-recursively "win32")
#t))))
(build-system gnu-build-system)
(native-inputs
;; The 3.5.28 release tarball isn't bootstrapped.
`(("autoconf" ,autoconf)
("automake" ,automake)
("libtool" ,libtool)))
(inputs
`(("libjpeg-turbo" ,libjpeg-turbo)
("libtiff" ,libtiff)
("zlib" ,zlib)))
(arguments
`(#:phases (modify-phases %standard-phases
(add-after 'unpack 'reproducible
(lambda _
;; Ensure there are no timestamps in .svgz files.
(substitute* "desktopfiles/Makefile.in"
(("gzip") "gzip -n"))
#t)))))
`(#:phases
(modify-phases %standard-phases
(add-after 'bootstrap 'make-reproducible
(lambda _
;; Ensure there are no timestamps in .svgz files.
(substitute* "desktopfiles/Makefile.am"
(("gzip") "gzip -n"))
#t)))))
(home-page "http://djvu.sourceforge.net/")
(synopsis "Implementation of DjVu, the document format")
(description "DjVuLibre is an implementation of DjVu,
@ -62,7 +97,7 @@ (define-public djvulibre
(define-public djview
(package
(name "djview")
(version "4.11")
(version "4.12")
(source
(origin
(method git-fetch)
@ -70,7 +105,7 @@ (define-public djview
(url "https://git.code.sf.net/p/djvu/djview-git")
(commit (string-append "release." version))))
(sha256
(base32 "0qlhd0xlxn8i869m0hwdjvwivi2vigqm88wliyr1h7s84zl3qhsy"))
(base32 "0mn9ywjbc7iga50lbjclrk892g0x0rap0dmb6ybzjyarybdhhcxp"))
(file-name (git-file-name name version))))
(build-system gnu-build-system)
(native-inputs
@ -112,3 +147,343 @@ (define-public djview
The viewer can simultaneously display several pages using a side-by-side or
a continuous layout.")
(license license:gpl2+)))
(define-public pdf2djvu
(package
(name "pdf2djvu")
(version "0.9.17.1")
(source
(origin
(method url-fetch)
(uri (string-append
"https://github.com/jwilk/pdf2djvu/releases/download/" version
"/pdf2djvu-" version ".tar.xz"))
(sha256
(base32 "18r648kna6ccw0m0nfxxnsmz541k69d0w9zzqvm1x2l5qyyvgfsv"))))
(build-system gnu-build-system)
(native-inputs
`(("gettext" ,gettext-minimal)
("pkg-config" ,pkg-config)
("python2" ,python-2)
("python2-nose" ,python2-nose)))
(inputs
`(("djvulibre" ,djvulibre)
("exiv2" ,exiv2)
("graphicsmagick" ,graphicsmagick)
("poppler" ,poppler)
("poppler-data" ,poppler-data)
("util-linux-lib" ,util-linux "lib"))) ; for libuuid
(arguments
`(#:test-target "test"))
(synopsis "PDF to DjVu converter")
(description
"@code{pdf2djvu} creates DjVu files from PDF files.
It is able to extract:
@itemize
@item graphics,
@item text layer,
@item hyperlinks,
@item document outline (bookmarks),
@item metadata (including XMP metadata).
@end itemize\n")
(home-page "https://jwilk.net/software/pdf2djvu")
(license license:gpl2)))
(define-public djvu2pdf
(package
(name "djvu2pdf")
(version "0.9.2")
(source
(origin
(method url-fetch)
(uri (string-append "https://0x2a.at/site/projects/djvu2pdf/djvu2pdf-"
version ".tar.gz"))
(sha256
(base32 "0v2ax30m7j1yi4m02nzn9rc4sn4vzqh5vywdh96r64j4pwvn5s5g"))))
(build-system gnu-build-system)
(inputs
`(("djvulibre" ,djvulibre)
("gawk" ,gawk)
("ghostscript" ,ghostscript)
("grep" ,grep)
("ncurses" ,ncurses)
("which" ,which)))
(arguments
`(#:tests? #f ; No test suite
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'fix-paths
(lambda* (#:key inputs #:allow-other-keys)
(let ((djvulibre (assoc-ref inputs "djvulibre"))
(gawk (assoc-ref inputs "gawk"))
(ghostscript (assoc-ref inputs "ghostscript"))
(grep (assoc-ref inputs "grep"))
(ncurses (assoc-ref inputs "ncurses"))
(which (assoc-ref inputs "which")))
(substitute* "djvu2pdf"
(("awk")
(string-append gawk "/bin/awk"))
(("ddjvu")
(string-append djvulibre "/bin/ddjvu"))
(("djvudump")
(string-append djvulibre "/bin/djvudump"))
(("grep")
(string-append grep "/bin/grep"))
(("gs")
(string-append ghostscript "/bin/gs"))
(("tput ")
(string-append ncurses "/bin/tput "))
(("which")
(string-append which "/bin/which"))))
#t))
(delete 'configure)
(delete 'build)
(replace 'install
(lambda* (#:key outputs #:allow-other-keys)
(let ((out (assoc-ref %outputs "out")))
(install-file "djvu2pdf"
(string-append out "/bin"))
(install-file "djvu2pdf.1.gz"
(string-append out "/share/man/man1"))
#t))))))
(synopsis "DjVu to PDF converter")
(description "This is a small tool to convert DjVu files to PDF files.")
(home-page "https://0x2a.at/site/projects/djvu2pdf/")
(license license:gpl2+)))
(define-public minidjvu
(package
(name "minidjvu")
(version "0.8")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://sourceforge/minidjvu/minidjvu/"
version "/minidjvu-" version ".tar.gz"))
(sha256
(base32 "0jmpvy4g68k6xgplj9zsl6brg6vi81mx3nx2x9hfbr1f4zh95j79"))))
(build-system gnu-build-system)
(native-inputs
`(("gettext" ,gettext-minimal)))
(inputs
`(("libjpeg-turbo" ,libjpeg-turbo)
("libtiff" ,libtiff)
("zlib" ,zlib)))
(arguments
'(#:configure-flags '("--disable-static")
#:parallel-build? #f
#:tests? #f ; No test suite
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'fix-paths
(lambda _
(substitute* "Makefile.in"
(("/usr/bin/gzip")
"gzip"))
#t))
(add-before 'install 'make-lib-directory
(lambda* (#:key outputs #:allow-other-keys)
(mkdir-p (string-append (assoc-ref outputs "out") "/lib"))
#t)))))
(synopsis "Black and white DjVu encoder")
(description
"@code{minidjvu} is a multipage DjVu encoder and single page
encoder/decoder. It doesn't support colors or grayscales, just black
and white.")
(home-page "https://sourceforge.net/projects/minidjvu/")
(license license:gpl2)))
(define-public djvusmooth
(package
(name "djvusmooth")
(version "0.3")
(source
(origin
(method url-fetch)
(uri (string-append
"https://github.com/jwilk/djvusmooth/releases/download/" version
"/djvusmooth-" version ".tar.gz"))
(sha256
(base32 "0z403cklvxzz0qaczgv83ax0nknrd9h8micp04j9kjfdxk2sgval"))))
(build-system python-build-system)
(inputs
`(("djvulibre" ,djvulibre)
("python2-djvulibre" ,python2-djvulibre)
("python2-subprocess32" ,python2-subprocess32)
("python2-wxpython" ,python2-wxpython)))
(arguments
`(#:python ,python-2
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'fix-paths
(lambda* (#:key inputs #:allow-other-keys)
(substitute* "lib/djvused.py"
(("djvused_path = 'djvused'")
(string-append "djvused_path = '"
(assoc-ref inputs "djvulibre")
"/bin/djvused'"))))))))
(synopsis "Graphical editor for DjVu documents")
(description
"@code{djvusmooth} is a graphical editor for DjVu_ documents.
It is able to:
@itemize
@item edit document metadata,
@item edit document outline (bookmarks),
@item add, remove or edit hyperlinks,
@item correct occasional errors in the hidden text layer.
@end itemize\n")
(home-page "https://jwilk.net/software/djvusmooth")
(license license:gpl2)))
(define-public didjvu
(package
(name "didjvu")
(version "0.9")
(source
(origin
(method url-fetch)
(uri (string-append
"https://github.com/jwilk/didjvu/releases/download/" version
"/didjvu-" version ".tar.gz"))
(sha256
(base32 "0xyrnk8d2khi7q1zr28gjkjq6frz4mkb5jdl8821yzf12k7c8pbv"))))
(build-system gnu-build-system)
(native-inputs
`(("python2-nose" ,python2-nose)))
(inputs
`(("djvulibre" ,djvulibre)
("minidjvu" ,minidjvu)
("python" ,python-2)
("python2-gamera" ,python2-gamera)
("python2-pillow" ,python2-pillow)))
(arguments
`(#:modules ((guix build gnu-build-system)
((guix build python-build-system) #:prefix python:)
(guix build utils))
#:imported-modules (,@%gnu-build-system-modules
(guix build python-build-system))
#:test-target "test"
#:phases
(modify-phases %standard-phases
(delete 'configure)
(add-before 'check 'disable-failing-test
(lambda _
(substitute* "tests/test_ipc.py"
;; test_wait_signal gets stuck forever
(("yield self\\._test_signal, name")
"return True")
;; test_path fails to find a file it should have created
(("path = os\\.getenv\\('PATH'\\)\\.split\\(':'\\)")
"return True"))
(substitute* "tests/test_timestamp.py"
;; test_timezones fails with:
;; '2009-12-18T21:25:14Z' != '2009-12-18T22:25:14+01:00'
(("@fork_isolation")
"return True"))))
(replace 'install
(lambda* (#:key outputs #:allow-other-keys)
(let ((out (assoc-ref outputs "out")))
(invoke "make"
"DESTDIR="
(string-append "PREFIX=" out)
"install"))))
(add-after 'install 'wrap-python
(assoc-ref python:%standard-phases 'wrap))
(add-after 'wrap-python 'wrap-path
(lambda* (#:key inputs outputs #:allow-other-keys)
(let ((out (assoc-ref outputs "out"))
(djvulibre (assoc-ref inputs "djvulibre")))
(wrap-program (string-append out "/bin/didjvu")
`("PATH" ":" prefix (,(string-append djvulibre "/bin"))))))))))
(synopsis "DjVu encoder with foreground/background separation")
(description
"@code{didjvu} uses the @code{Gamera} framework to separate the foreground
and background layers of images, which can then be encoded into a DjVu file.")
(home-page "https://jwilk.net/software/didjvu")
(license license:gpl2)))
(define-public ocrodjvu
(package
(name "ocrodjvu")
(version "0.12")
(source
(origin
(method url-fetch)
(uri (string-append
"https://github.com/jwilk/ocrodjvu/releases/download/" version
"/ocrodjvu-" version ".tar.xz"))
(sha256
(base32 "09w9rqr7z2jd5kwp178zz2yrsc82mxs7gksipg92znxzgzhmw2ng"))))
(build-system gnu-build-system)
(native-inputs
`(("libxml2" ,libxml2)
("python2-nose" ,python2-nose)
("python2-pillow" ,python2-pillow)))
(inputs
`(("djvulibre" ,djvulibre)
("ocrad" ,ocrad)
("python" ,python-2)
("python2-djvulibre" ,python2-djvulibre)
("python2-html5lib" ,python2-html5lib)
("python2-lxml" ,python2-lxml)
("python2-pyicu" ,python2-pyicu)
("python2-subprocess32" ,python2-subprocess32)
("tesseract-ocr" ,tesseract-ocr)))
(arguments
`(#:modules ((guix build gnu-build-system)
((guix build python-build-system) #:prefix python:)
(guix build utils))
#:imported-modules (,@%gnu-build-system-modules
(guix build python-build-system))
#:test-target "test"
#:phases
(modify-phases %standard-phases
(delete 'configure)
(add-before 'check 'disable-failing-test
(lambda _
(substitute* "tests/test_ipc.py"
;; test_wait_signal gets stuck forever
(("yield self\\._test_signal, name")
"return True")
;; test_path fails to find a file it should have created
(("path = os\\.getenv\\('PATH'\\)\\.split\\(':'\\)")
"return True"))
;; Disable tests with tesseract. They can't work without
;; the language files that must downloaded by the final user
;; as they are not packaged in Guix.
(substitute* "tests/ocrodjvu/test.py"
(("engines = stdout\\.getvalue\\(\\)\\.splitlines\\(\\)")
"engines = ['ocrad']"))
(substitute* "tests/ocrodjvu/test_integration.py"
(("engines = 'tesseract', 'cuneiform', 'gocr', 'ocrad'")
"engines = 'ocrad'"))))
(replace 'install
(lambda* (#:key outputs #:allow-other-keys)
(let ((out (assoc-ref outputs "out")))
(invoke "make"
"DESTDIR="
(string-append "PREFIX=" out)
"install"))))
(add-after 'install 'wrap-python
(assoc-ref python:%standard-phases 'wrap))
(add-after 'wrap-python 'wrap-path
(lambda* (#:key inputs outputs #:allow-other-keys)
(let ((out (assoc-ref outputs "out"))
(djvulibre (assoc-ref inputs "djvulibre"))
(ocrad (assoc-ref inputs "ocrad"))
(tesseract (assoc-ref inputs "tesseract-ocr")))
(for-each (lambda (file)
(wrap-program (string-append out "/bin/" file)
`("PATH" ":" prefix
(,(string-append djvulibre "/bin:"
ocrad "/bin:"
tesseract "/bin")))))
'("djvu2hocr"
"hocr2djvused"
"ocrodjvu"))))))))
(synopsis "Program to perform OCR on DjVu files")
(description
"@code{ocrodjvu} is a wrapper for OCR systems, that allows you to perform
OCR on DjVu files.")
(home-page "https://jwilk.net/software/ocrodjvu")
(license license:gpl2)))

View file

@ -317,7 +317,7 @@ (define-public isc-bind
(package
(name "bind")
;; When updating, check whether isc-dhcp's bundled copy should be as well.
(version "9.16.7")
(version "9.16.9")
(source (origin
(method url-fetch)
(uri (string-append
@ -325,7 +325,7 @@ (define-public isc-bind
"/bind-" version ".tar.xz"))
(sha256
(base32
"1l8lhgnkj3fnl1101bs3pzj5gv2x5m9ahvrbyscsc9mxxc91hzcz"))))
"0nja60jxb8d2m5fi6xd55xjpfkzmxhjsmbxqphy6x91qsz295cmw"))))
(build-system gnu-build-system)
(outputs `("out" "utils"))
(inputs
@ -760,16 +760,16 @@ (define-public unbound
(define-public yadifa
(package
(name "yadifa")
(version "2.3.10")
(version "2.4.0")
(source
(let ((build "9729"))
(let ((build "9809"))
(origin
(method url-fetch)
(uri
(string-append "http://cdn.yadifa.eu/sites/default/files/releases/"
(string-append "https://www.yadifa.eu/sites/default/files/releases/"
"yadifa-" version "-" build ".tar.gz"))
(sha256
(base32 "0azaignqmylfdzr4x02s8y3pkn4f0xkpz3d1pkiiz8mwk92zgybn")))))
(base32 "114a1y4pzzzq0s9hyn65nd4fg19xijsqpfhsd0wkvjndsazg63ky")))))
(build-system gnu-build-system)
(native-inputs
`(("which" ,which)))
@ -782,19 +782,19 @@ (define-public yadifa
(lambda _
(substitute* "Makefile.in"
((" (etc|var)") ""))
#t))
(add-after 'configure 'omit-spurious-references
(lambda _
;; The many Makefile.in grep this(!) to #define BUILD_OPTIONS.
(substitute* "config.log"
(("(=/gnu/store/)[^-]*" _ match)
(string-append match "...")))
#t)))
#:configure-flags
(list "--sysconfdir=/etc"
"--localstatedir=/var"
"--disable-build-timestamp" ; build reproducibly
"--enable-shared"
"--disable-static"
"--enable-acl"
"--enable-caching"
"--enable-ctrl" ; enable remote control
"--enable-nsec"
"--enable-nsec3"
"--enable-tsig")))
"--enable-shared" "--disable-static"
"--disable-build-timestamp"))) ; build reproducibly
(home-page "https://www.yadifa.eu/")
(synopsis "Authoritative DNS name server")
(description "YADIFA is an authoritative name server for the @dfn{Domain
@ -807,7 +807,7 @@ (define-public yadifa
(define-public knot
(package
(name "knot")
(version "3.0.1")
(version "3.0.2")
(source
(origin
(method git-fetch)
@ -816,7 +816,7 @@ (define-public knot
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "10mlzldxqvbaw78nghkr0s73rlbpz9wg16z14321xw2l9xfibkad"))
(base32 "1cinzz8p86fzknnr2z6b49yqr4y05mmnr0l2q3lwzcfhc6dcl8di"))
(modules '((guix build utils)))
(snippet
'(begin

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