diff options
Diffstat (limited to 'gnu')
204 files changed, 7851 insertions, 3493 deletions
diff --git a/gnu/bootloader/grub.scm b/gnu/bootloader/grub.scm index 611580a350..0899fab61f 100644 --- a/gnu/bootloader/grub.scm +++ b/gnu/bootloader/grub.scm @@ -142,6 +142,24 @@ file with the resolution provided in 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 @@ fi~%" (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 @@ menuentry ~s { #: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 @@ set lang=~a~%" locale)))) (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 diff --git a/gnu/build/bootloader.scm b/gnu/build/bootloader.scm index 5ec839f902..3916930c89 100644 --- a/gnu/build/bootloader.scm +++ b/gnu/build/bootloader.scm @@ -38,10 +38,13 @@ (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))))))) diff --git a/gnu/build/file-systems.scm b/gnu/build/file-systems.scm index 734d648575..b762e82ad2 100644 --- a/gnu/build/file-systems.scm +++ b/gnu/build/file-systems.scm @@ -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> ;;; @@ -181,6 +181,98 @@ if DEVICE does not contain an ext2 file system." ;;; +;;; 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 @@ partition field reader that returned a value." 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 @@ partition field reader that returned a value." 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 @@ containing ':/')." (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) diff --git a/gnu/build/image.scm b/gnu/build/image.scm index 8a2d0eb5fd..640a784204 100644 --- a/gnu/build/image.scm +++ b/gnu/build/image.scm @@ -118,16 +118,16 @@ ROOT directory to populate the image." ((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)))) diff --git a/gnu/build/linux-boot.scm b/gnu/build/linux-boot.scm index 32e3536039..bfaac9ec1f 100644 --- a/gnu/build/linux-boot.scm +++ b/gnu/build/linux-boot.scm @@ -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 @@ OPTION doesn't appear in 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 @@ upon error." (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) diff --git a/gnu/build/shepherd.scm b/gnu/build/shepherd.scm index 91646288d5..d7b858dea4 100644 --- a/gnu/build/shepherd.scm +++ b/gnu/build/shepherd.scm @@ -21,7 +21,6 @@ #: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 @@ namespace, in addition to essential bind-mounts such /proc." "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)))) diff --git a/gnu/installer/newt.scm b/gnu/installer/newt.scm index fdab721b2f..a1cbeca49a 100644 --- a/gnu/installer/newt.scm +++ b/gnu/installer/newt.scm @@ -46,6 +46,7 @@ (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.")))) diff --git a/gnu/installer/newt/ethernet.scm b/gnu/installer/newt/ethernet.scm index ba5e222a37..ecd22efbb2 100644 --- a/gnu/installer/newt/ethernet.scm +++ b/gnu/installer/newt/ethernet.scm @@ -77,7 +77,7 @@ connection is pending." #: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 _ diff --git a/gnu/installer/newt/final.scm b/gnu/installer/newt/final.scm index 89684c4d8a..7f6dd9f075 100644 --- a/gnu/installer/newt/final.scm +++ b/gnu/installer/newt/final.scm @@ -29,6 +29,7 @@ #: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 @@ 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 @@ a specific step, or restart the installer.")) 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)) diff --git a/gnu/installer/newt/network.scm b/gnu/installer/newt/network.scm index 461d5d99c0..4af7143d63 100644 --- a/gnu/installer/newt/network.scm +++ b/gnu/installer/newt/network.scm @@ -80,7 +80,7 @@ network devices were found. Do you want to continue anyway?")) #: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 _ diff --git a/gnu/installer/newt/page.scm b/gnu/installer/newt/page.scm index 1d6b9979b4..4209674c28 100644 --- a/gnu/installer/newt/page.scm +++ b/gnu/installer/newt/page.scm @@ -32,7 +32,9 @@ #: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 @@ Like 'run-form', return two values: the exit reason, and an \"argument\"." (_ (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 @@ of the page is set to TITLE." (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) diff --git a/gnu/installer/newt/parameters.scm b/gnu/installer/newt/parameters.scm index 95112b5780..8fb1aa3abb 100644 --- a/gnu/installer/newt/parameters.scm +++ b/gnu/installer/newt/parameters.scm @@ -20,6 +20,7 @@ #: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 @@ empty string, proxy usage will be disabled.") (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 \ diff --git a/gnu/installer/newt/partition.scm b/gnu/installer/newt/partition.scm index ed38287fe8..81cf68d782 100644 --- a/gnu/installer/newt/partition.scm +++ b/gnu/installer/newt/partition.scm @@ -25,6 +25,7 @@ #: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 @@ #: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 @@ by pressing the Exit button.~%~%"))) (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 @@ by pressing the Exit button.~%~%"))) (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)) diff --git a/gnu/installer/newt/services.scm b/gnu/installer/newt/services.scm index 6d431cb4bb..ae249ba972 100644 --- a/gnu/installer/newt/services.scm +++ b/gnu/installer/newt/services.scm @@ -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 @@ system.") 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))) diff --git a/gnu/installer/newt/welcome.scm b/gnu/installer/newt/welcome.scm index 1b4b2df816..5f461279e2 100644 --- a/gnu/installer/newt/welcome.scm +++ b/gnu/installer/newt/welcome.scm @@ -38,6 +38,9 @@ (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 @@ we want this page to occupy all the screen space available." 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 diff --git a/gnu/installer/newt/wifi.scm b/gnu/installer/newt/wifi.scm index 3fd5756b99..f5d8f1fdbf 100644 --- a/gnu/installer/newt/wifi.scm +++ b/gnu/installer/newt/wifi.scm @@ -165,7 +165,8 @@ of <service-item> records present in LISTBOX." (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)) diff --git a/gnu/installer/parted.scm b/gnu/installer/parted.scm index b0c73b837e..f2352c5779 100644 --- a/gnu/installer/parted.scm +++ b/gnu/installer/parted.scm @@ -36,6 +36,7 @@ #: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) @@ -526,56 +527,54 @@ determined by MAX-LENGTH-COLUMN procedure." (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"))))))))) ;; @@ -911,13 +910,13 @@ exists." (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 +1326,12 @@ USER-PARTITIONS, or return nothing." ,@(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 diff --git a/gnu/installer/steps.scm b/gnu/installer/steps.scm index 16d74c207f..fdcfb0cb4d 100644 --- a/gnu/installer/steps.scm +++ b/gnu/installer/steps.scm @@ -50,7 +50,6 @@ %installer-configuration-file %installer-target-dir - %configuration-file-width format-configuration configuration->file)) @@ -218,7 +217,6 @@ stored in RESULTS. Return #f otherwise." (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 diff --git a/gnu/installer/tests.scm b/gnu/installer/tests.scm index 58bf0a2700..f318546a2f 100644 --- a/gnu/installer/tests.scm +++ b/gnu/installer/tests.scm @@ -286,8 +286,9 @@ instrumented for further testing." 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 @@ file, actually starting the installation process." #t) ((info (title "Preparing partitions") _ ...) (values)) ;nothing to return - ((file-dialog (title "Configuration file") - (text _) - (file ,configuration-file)) - (edit-configuration-file configuration-file)))) + ((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 final -messages once the 'guix system init' process has completed." + "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)) ((pause) ;"Press Enter to continue." #t) ((installation-complete) ;congratulations! diff --git a/gnu/local.mk b/gnu/local.mk index 04f577399f..697863ae02 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -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,7 @@ # 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> # # This file is part of GNU Guix. # @@ -465,6 +466,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 \ @@ -820,11 +822,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 \ @@ -952,6 +964,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 \ @@ -1021,7 +1034,6 @@ dist_patch_DATA = \ %D%/packages/patches/gcc-9-strmov-store-file-names.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 \ @@ -1200,6 +1212,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 \ @@ -1351,7 +1364,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 \ @@ -1371,7 +1383,6 @@ dist_patch_DATA = \ %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-CVE-2015-8869.patch \ %D%/packages/patches/ocaml-Add-a-.file-directive.patch \ @@ -1389,7 +1400,6 @@ 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-hurd.patch \ %D%/packages/patches/openresolv-restartcmd-guix.patch \ %D%/packages/patches/openscad-parser-boost-1.72.patch \ @@ -1410,6 +1420,7 @@ 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/sdl-pango-api_additions.patch \ @@ -1510,7 +1521,7 @@ dist_patch_DATA = \ %D%/packages/patches/python-pycrypto-time-clock.patch \ %D%/packages/patches/python2-pygobject-2-gi-info-type-error-domain.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 \ @@ -1537,7 +1548,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 \ @@ -1568,6 +1579,7 @@ 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 \ @@ -1636,6 +1648,7 @@ dist_patch_DATA = \ %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 \ @@ -1707,6 +1720,7 @@ dist_patch_DATA = \ %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/yggdrasil-extra-config.patch \ %D%/packages/patches/zziplib-CVE-2018-16548.patch MISC_DISTRO_FILES = \ diff --git a/gnu/machine/ssh.scm b/gnu/machine/ssh.scm index 5020bd362f..a3a12fb54b 100644 --- a/gnu/machine/ssh.scm +++ b/gnu/machine/ssh.scm @@ -482,6 +482,8 @@ an environment type of 'managed-host." (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 +494,7 @@ an environment type of 'managed-host." 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) diff --git a/gnu/packages/acl.scm b/gnu/packages/acl.scm index 4e90703d81..be4b079b04 100644 --- a/gnu/packages/acl.scm +++ b/gnu/packages/acl.scm @@ -51,7 +51,8 @@ `(#: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 diff --git a/gnu/packages/admin.scm b/gnu/packages/admin.scm index 2cfa4a05e3..ba7b46401a 100644 --- a/gnu/packages/admin.scm +++ b/gnu/packages/admin.scm @@ -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 @@ interface and is based on GNU Guile.") (define-public cloud-utils (package (name "cloud-utils") - (version "0.31") + (version "0.32") (source (origin (method url-fetch) @@ -322,7 +322,7 @@ interface and is based on GNU Guile.") version "/+download/cloud-utils-" version ".tar.gz")) (sha256 (base32 - "07fl3dlqwdzw4xx7mcxhpkks6dnmaxha80zgs9f6wmibgzni8z0r")))) + "0xxdi55lzw7j91zfajw7jhd2ilsqj2dy04i9brlk8j3pvb5ma8hk")))) (build-system gnu-build-system) (arguments '(#:make-flags @@ -443,7 +443,7 @@ graphs and can export its output to different formats.") (define-public facter (package (name "facter") - (version "4.0.43") + (version "4.0.44") (source (origin (method git-fetch) (uri (git-reference @@ -452,7 +452,7 @@ graphs and can export its output to different formats.") (file-name (git-file-name name version)) (sha256 (base32 - "0ppzr7vsl6iw8x82c4g60mx1vz06nzwcy8byablhg0n0g6qa3pb0")))) + "0cs4cr5xc3yvnln9k3gdhypnq6iw4zfrhqrhslvli11l9mwdbjwn")))) (build-system ruby-build-system) (arguments `(#:phases @@ -2683,7 +2683,7 @@ results (ndiff), and a packet generation and response analysis tool (nping).") (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 @@ -2875,9 +2875,13 @@ shortcut syntax and completion options.") (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 @@ -2911,7 +2915,7 @@ with @code{ChallengeResponseAuthentication} and @code{PrivilegeSeparation} 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 @@ -3389,40 +3393,56 @@ make it a perfect utility on modern distros.") (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 @@ -3571,7 +3591,7 @@ Python loading in HPC environments.") (let ((real-name "inxi")) (package (name "inxi-minimal") - (version "3.1.07-1") + (version "3.1.08-1") (source (origin (method git-fetch) @@ -3580,7 +3600,7 @@ Python loading in HPC environments.") (commit version))) (file-name (git-file-name real-name version)) (sha256 - (base32 "0hs4m2vmfc6srscaz72r6zpkn6n7msgzlps376ks38gj1l103xfn")))) + (base32 "15b0fn8kv09k7kzyzix1pr1wmjw5yinzgw01v8pf9p547m4a899a")))) (build-system trivial-build-system) (inputs `(("bash" ,bash-minimal) @@ -3750,26 +3770,20 @@ support forum. It runs with the @code{/exec} command in most IRC clients.") (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"))) @@ -4122,3 +4136,61 @@ EX6150v2, DNG3700v2, R6100, R6220, R7000, D7000, WNR3500, R6400, R6800, 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+))) diff --git a/gnu/packages/algebra.scm b/gnu/packages/algebra.scm index b712d3a869..2dca86cbec 100644 --- a/gnu/packages/algebra.scm +++ b/gnu/packages/algebra.scm @@ -234,7 +234,7 @@ the real span of the lattice.") (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 @@ the real span of the lattice.") version ".tar.gz")) (sha256 (base32 - "070bjw4kg7r6lqs1hfs08n5fmjv90cpwflp3wr04hbrmyz28zj5z")))) + "14xs90wrw8mbdx08hxlbhiahp6kgjq6yh27zjw7fvhfjx5nr84f8")))) (build-system gnu-build-system) (native-inputs `(("texlive" ,(texlive-union diff --git a/gnu/packages/audio.scm b/gnu/packages/audio.scm index 8a0c0fce2b..6479398cb5 100644 --- a/gnu/packages/audio.scm +++ b/gnu/packages/audio.scm @@ -300,7 +300,7 @@ Linux kernel.") (define-public libopenmpt (package (name "libopenmpt") - (version "0.5.2") + (version "0.5.3") (source (origin (method url-fetch) @@ -308,7 +308,7 @@ Linux kernel.") (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 @@ -874,6 +874,18 @@ tools.") "audiofile-division-by-zero-BlockCodec-runPull.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 +2938,7 @@ aimed at audio/musical applications.") (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+))) @@ -4068,14 +4080,14 @@ on the ALSA software PCM plugin.") (define-public snd (package (name "snd") - (version "20.7") + (version "20.8") (source (origin (method url-fetch) (uri (string-append "ftp://ccrma-ftp.stanford.edu/pub/Lisp/" "snd-" version ".tar.gz")) (sha256 (base32 - "1kd422krz8ln4m8g3p14wfplcq8lgpzly9297rpbvyc94dc6sdwj")))) + "1hw81innyyiwiyb8jkpq9aj7idmcb41yvgd1blac997023h78sss")))) (build-system glib-or-gtk-build-system) (arguments `(#:tests? #f ; no tests diff --git a/gnu/packages/aux-files/linux-libre/5.8-arm.conf b/gnu/packages/aux-files/linux-libre/5.9-arm.conf index 1e42bcdc82..1d1a86250e 100644 --- a/gnu/packages/aux-files/linux-libre/5.8-arm.conf +++ b/gnu/packages/aux-files/linux-libre/5.9-arm.conf @@ -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 diff --git a/gnu/packages/aux-files/linux-libre/5.8-arm64.conf b/gnu/packages/aux-files/linux-libre/5.9-arm64.conf index 42cc1f2eb9..28d683a040 100644 --- a/gnu/packages/aux-files/linux-libre/5.8-arm64.conf +++ b/gnu/packages/aux-files/linux-libre/5.9-arm64.conf @@ -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 diff --git a/gnu/packages/aux-files/linux-libre/5.8-i686.conf b/gnu/packages/aux-files/linux-libre/5.9-i686.conf index d8f88f0570..f4abcf55b5 100644 --- a/gnu/packages/aux-files/linux-libre/5.8-i686.conf +++ b/gnu/packages/aux-files/linux-libre/5.9-i686.conf @@ -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 diff --git a/gnu/packages/aux-files/linux-libre/5.8-x86_64.conf b/gnu/packages/aux-files/linux-libre/5.9-x86_64.conf index 930008eeb9..adfa32de3e 100644 --- a/gnu/packages/aux-files/linux-libre/5.8-x86_64.conf +++ b/gnu/packages/aux-files/linux-libre/5.9-x86_64.conf @@ -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 diff --git a/gnu/packages/aux-files/run-in-namespace.c b/gnu/packages/aux-files/run-in-namespace.c index 52a16a5362..44c3c5a6cb 100644 --- a/gnu/packages/aux-files/run-in-namespace.c +++ b/gnu/packages/aux-files/run-in-namespace.c @@ -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'; diff --git a/gnu/packages/avr.scm b/gnu/packages/avr.scm index 76af6fdef1..c113707283 100644 --- a/gnu/packages/avr.scm +++ b/gnu/packages/avr.scm @@ -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 @@ (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 @@ (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 @@ (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 @@ for use with GCC on Atmel AVR microcontrollers.") (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 diff --git a/gnu/packages/backup.scm b/gnu/packages/backup.scm index 27741e9c5c..f550f5724f 100644 --- a/gnu/packages/backup.scm +++ b/gnu/packages/backup.scm @@ -94,7 +94,7 @@ (base32 "1kg467mxg5a97v1rlv4shk32krgv8ys4nczq4b11av4bp1lgysdc")))) (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) @@ -743,14 +743,14 @@ changes are stored.") (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 @@ interactive mode.") (define-public burp (package (name "burp") - (version "2.3.34") + (version "2.3.36") (source (origin (method git-fetch) @@ -1080,7 +1080,7 @@ interactive mode.") (url "https://github.com/grke/burp") (commit version))) (sha256 - (base32 "0ri62xshcjrk5vgyx8s11vsllab132mk1pcy4xxl9kzijdsjhdpy")) + (base32 "18gj1sv1naql0xais01yniyzs8dxc8xk5sk8y9hsc0cd93mxgk17")) (file-name (git-file-name name version)))) (build-system gnu-build-system) (arguments diff --git a/gnu/packages/bash.scm b/gnu/packages/bash.scm index 47ca625d9a..ed2931fd97 100644 --- a/gnu/packages/bash.scm +++ b/gnu/packages/bash.scm @@ -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 @@ from the Korn Shell and the C Shell and new improvements of its own. It 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 @@ without modification.") "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 @@ test library") 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 @@ capturing.") 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))) diff --git a/gnu/packages/benchmark.scm b/gnu/packages/benchmark.scm index f9648b5f7c..8a8309ce52 100644 --- a/gnu/packages/benchmark.scm +++ b/gnu/packages/benchmark.scm @@ -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. ;;; @@ -213,7 +214,7 @@ This can give a much better understanding of the command's performance.") (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 @@ This can give a much better understanding of the command's performance.") (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++ diff --git a/gnu/packages/bioconductor.scm b/gnu/packages/bioconductor.scm index f30f2fd117..eac9c074a9 100644 --- a/gnu/packages/bioconductor.scm +++ b/gnu/packages/bioconductor.scm @@ -1765,6 +1765,32 @@ expressed genes in DNA microarray experiments.") 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 diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm index 0d5e6e3d20..e189dd7b00 100644 --- a/gnu/packages/bioinformatics.scm +++ b/gnu/packages/bioinformatics.scm @@ -313,7 +313,7 @@ BAM files.") (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 +321,11 @@ BAM files.") 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 @@ -4215,7 +4215,7 @@ performance.") (define-public htslib (package (name "htslib") - (version "1.9") + (version "1.11") (source (origin (method url-fetch) (uri (string-append @@ -4223,7 +4223,7 @@ performance.") 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 @@ -5613,7 +5613,7 @@ to the user's query of interest.") (define-public samtools (package (name "samtools") - (version "1.9") + (version "1.11") (source (origin (method url-fetch) @@ -5622,11 +5622,11 @@ to the user's query of interest.") 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 @@ -10954,7 +10954,7 @@ programs for inferring phylogenies (evolutionary trees).") (define-public imp (package (name "imp") - (version "2.6.2") + (version "2.13.0") (source (origin (method url-fetch) @@ -10962,7 +10962,7 @@ programs for inferring phylogenies (evolutionary trees).") 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 @@ -10974,6 +10974,7 @@ programs for inferring phylogenies (evolutionary trees).") ("swig" ,swig) ("hdf5" ,hdf5) ("fftw" ,fftw) + ("eigen" ,eigen) ("python" ,python-2))) (propagated-inputs `(("python2-numpy" ,python2-numpy) diff --git a/gnu/packages/bootloaders.scm b/gnu/packages/bootloaders.scm index d1de5cea4e..7034085d67 100644 --- a/gnu/packages/bootloaders.scm +++ b/gnu/packages/bootloaders.scm @@ -446,7 +446,7 @@ tree binary files. These are board description files used by Linux and BSD.") (define u-boot (package (name "u-boot") - (version "2020.07") + (version "2020.10") (source (origin (method url-fetch) (uri (string-append @@ -454,7 +454,7 @@ tree binary files. These are board description files used by Linux and BSD.") "u-boot-" version ".tar.bz2")) (sha256 (base32 - "0sjzy262x93aaqd6z24ziaq19xjjjk5f577ivf768vmvwsgbzxf1")))) + "08m6f1bh4pdcqbxf983qdb66ccd5vak5cbzc114yf3jwq2yinj0d")))) (native-inputs `(("bc" ,bc) ("bison" ,bison) @@ -482,7 +482,7 @@ also initializes the boards (RAM etc).") ,@(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 +493,8 @@ also initializes the boards (RAM etc).") (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 +504,6 @@ also initializes the boards (RAM etc).") (("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 +516,12 @@ def test_ctrl_c")) (("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"))) diff --git a/gnu/packages/calendar.scm b/gnu/packages/calendar.scm index e4fb7abcd6..93303d632f 100644 --- a/gnu/packages/calendar.scm +++ b/gnu/packages/calendar.scm @@ -178,26 +178,17 @@ data units.") (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 @@ data units.") (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 @@ data units.") ("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, diff --git a/gnu/packages/check.scm b/gnu/packages/check.scm index 3e93e3c12a..935937e84d 100644 --- a/gnu/packages/check.scm +++ b/gnu/packages/check.scm @@ -509,7 +509,7 @@ and it supports a very flexible form of test discovery.") (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 @@ and it supports a very flexible form of test discovery.") (file-name (git-file-name name version)) (sha256 (base32 - "1yi95saqv8qb3ix6w8d7ffvs7qbwvqmq6wblckhxhicxxdxk85cd")))) + "17g7n6rjs90i0b231x5s934qnr8m80ga2yg1z344bnsdiqcjd63w")))) (build-system cmake-build-system) (synopsis "C++ test framework") (description diff --git a/gnu/packages/chromium.scm b/gnu/packages/chromium.scm index 7bc69c7386..902f2a723c 100644 --- a/gnu/packages/chromium.scm +++ b/gnu/packages/chromium.scm @@ -301,8 +301,8 @@ "/svntogit-packages/" revision "/trunk/" name)) (sha256 (base32 hash)))) -(define %chromium-version "86.0.4240.75") -(define %ungoogled-revision "c34a56db4c121238fface560e21531b6199ce5dd") +(define %chromium-version "86.0.4240.183") +(define %ungoogled-revision "b68e17f32e9eff56615a07b44e457835bb9460c6") (define %debian-revision "debian/84.0.4147.105-1") (define %arch-revision "2cbe439471932d30ff2c8ded6b3dfd51b312bbc9") @@ -332,7 +332,15 @@ (string-take %ungoogled-revision 7))) (sha256 (base32 - "18p9a7qffmy8m03nqva7maalgil13lj2mn0s56v3crbs4wk4lalj")))) + "0visyhz321ykrmbjndvx31yd8xlmha9gas0xbkavc2i45rpfahjq")))) + +(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. @@ -356,9 +364,7 @@ (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"))))) + '#+%guix-patches)) (with-directory-excursion #+%ungoogled-origin (format #t "Ungooglifying...~%") @@ -446,10 +452,10 @@ (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")) + "1g39i82js7fm4fqb8i66d6xs0kzqjxzi4vzvvwz5y9rkbikcc4ma")) (modules '((guix build utils))) (snippet (force ungoogled-chromium-snippet)))) (build-system gnu-build-system) @@ -571,11 +577,6 @@ (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 +618,18 @@ (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 +718,10 @@ (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")) @@ -830,6 +846,11 @@ ("udev" ,eudev) ("valgrind" ,valgrind) ("vulkan-headers" ,vulkan-headers))) + (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. diff --git a/gnu/packages/code.scm b/gnu/packages/code.scm index 6d348308ac..4e30dacdf4 100644 --- a/gnu/packages/code.scm +++ b/gnu/packages/code.scm @@ -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 @@ #: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 @@ features that are not supported by the standard @code{stdio} implementation.") "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 @@ textual @command{gcov} output to implement the following enhanced 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") diff --git a/gnu/packages/cpp.scm b/gnu/packages/cpp.scm index f51e83283f..48d0b51b43 100644 --- a/gnu/packages/cpp.scm +++ b/gnu/packages/cpp.scm @@ -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. ;;; @@ -372,7 +373,7 @@ intuitive syntax and trivial integration.") (define-public xtl (package (name "xtl") - (version "0.6.19") + (version "0.6.21") (source (origin (method git-fetch) (uri @@ -381,7 +382,7 @@ intuitive syntax and trivial integration.") (commit version))) (sha256 (base32 - "1g98lfrp13fqfqrirg0rw90m7bajmjmy12yhrlj5jzwcby4dfs81")) + "08xhyy9fm2ddkdrgb1qyd2bs371a2xr7xzar482pwphz27vr035w")) (file-name (git-file-name name version)))) (native-inputs `(("googletest" ,googletest) @@ -406,7 +407,7 @@ tools (containers, algorithms) used by other QuantStack packages.") (define-public ccls (package (name "ccls") - (version "0.20190823.6") + (version "0.20201025") (source (origin (method git-fetch) @@ -414,7 +415,8 @@ tools (containers, algorithms) used by other QuantStack packages.") (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 diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm index cc75136a3a..adb1bf421b 100644 --- a/gnu/packages/cran.scm +++ b/gnu/packages/cran.scm @@ -147,14 +147,14 @@ degree elevation and curve fitting.") (define-public r-v8 (package (name "r-v8") - (version "3.2.0") + (version "3.3.1") (source (origin (method url-fetch) (uri (cran-uri "V8" version)) (sha256 (base32 - "0z0dwa538lkggawiwrlplz698xznzlgv9fwhdslm7g7gdxyf0xgm")))) + "1d2j9p1fsz9hp8n8lrywyrkwivhfa3qx5ha5f24vin8b6l04xy67")))) (properties `((upstream-name . "V8"))) (build-system r-build-system) (arguments @@ -217,15 +217,17 @@ programming packages such as @code{knitr} and @code{rmarkdown}.") (define-public r-clipr (package (name "r-clipr") - (version "0.7.0") + (version "0.7.1") (source (origin (method url-fetch) (uri (cran-uri "clipr" version)) (sha256 (base32 - "1qn2p13d0c1bpqss6mv9hk60980rzhznfqpyaf5x0fy65svy9903")))) + "1ywa4kipwc2d7na6iiz3wzdah99h6aynnh74yxl3nzl40xxlgbgz")))) (build-system r-build-system) + (native-inputs + `(("r-knitr" ,r-knitr))) (home-page "https://github.com/mdlincoln/clipr") (synopsis "Read and write from the system clipboard") (description @@ -439,13 +441,13 @@ control over dimensions and appearance.") (define-public r-ecp (package (name "r-ecp") - (version "3.1.2") + (version "3.1.3") (source (origin (method url-fetch) (uri (cran-uri "ecp" version)) (sha256 (base32 - "11f9p869xr0zg779i46gmflxlq4xclk9wxbab0nj2fan26pn4sfy")))) + "0n602jssl6rf596nwm6hbl7s9vdlqi20w8mrhxicj373mw5v22m8")))) (build-system r-build-system) (propagated-inputs `(("r-rcpp" ,r-rcpp))) @@ -787,14 +789,14 @@ same time tries to group instances from the same class together.") (define-public r-callr (package (name "r-callr") - (version "3.4.4") + (version "3.5.1") (source (origin (method url-fetch) (uri (cran-uri "callr" version)) (sha256 (base32 - "1hgc4mfwv83104fh93v8g2srpwzjayq7krgzi9r0apq784r61642")))) + "15l6ppsxdadlnl4fk0f8bvf327n8izk96px5d08m1ay9iij8qcyf")))) (build-system r-build-system) (propagated-inputs `(("r-r6" ,r-r6) @@ -947,13 +949,13 @@ in systems and applications.") (define-public r-servr (package (name "r-servr") - (version "0.18") + (version "0.20") (source (origin (method url-fetch) (uri (cran-uri "servr" version)) (sha256 (base32 - "0xfbf1a1w34hbsx4jrdr4rqf22v7gf1p37ngknglv1dyxih7ipja")))) + "0px75vkc6q4iwbirr27bbrbpv0v9ial7zijnbd6dhjccwxl3x1l3")))) (build-system r-build-system) (propagated-inputs `(("r-httpuv" ,r-httpuv) @@ -1976,13 +1978,13 @@ initiative to bring PASSTEC 2000 functionalities to R.") (define-public r-partykit (package (name "r-partykit") - (version "1.2-9") + (version "1.2-10") (source (origin (method url-fetch) (uri (cran-uri "partykit" version)) (sha256 (base32 - "18nc6vvj1cy8ly2hqixg544sbg8vbpzwsr1cdlzrqfykd0pzgkvf")))) + "1jg68rqhk2r0h2hk50xl99zp56b1nfdcam06kfvssqrkgkavkswf")))) (build-system r-build-system) (propagated-inputs `(("r-formula" ,r-formula) @@ -2056,13 +2058,13 @@ print, summary, plot, update, etc. (define-public r-ps (package (name "r-ps") - (version "1.3.4") + (version "1.4.0") (source (origin (method url-fetch) (uri (cran-uri "ps" version)) (sha256 - (base32 "1cxfhnff22fbsr9vynhql0rhhrqfxvkb6kv11h2m740r9scwcs44")))) + (base32 "0yns03ffd2a2cs4b6dsjjlqhv46vq2g094m8psmhf3h9i52awyaz")))) (build-system r-build-system) (home-page "https://ps.r-lib.org") (synopsis "List, query, and manipulate system processes") @@ -2414,14 +2416,14 @@ compare different dendrograms to one another.") (define-public r-getoptlong (package (name "r-getoptlong") - (version "1.0.3") + (version "1.0.4") (source (origin (method url-fetch) (uri (cran-uri "GetoptLong" version)) (sha256 (base32 - "142gi3ifpcz1rhqrbw4wh326jn2q61s659wkzf92ys4dybs43dky")))) + "0l9pa9dx8pcg3j7jn4b9k98g7r5vdsvnmf6apnifzm57mc0vlkg6")))) (properties `((upstream-name . "GetoptLong"))) (build-system r-build-system) (inputs @@ -2464,14 +2466,14 @@ any subsequent lookup as it keeps the hash table in memory.") (define-public r-ff (package (name "r-ff") - (version "4.0.2") + (version "4.0.4") (source (origin (method url-fetch) (uri (cran-uri "ff" version)) (sha256 (base32 - "1qbfmhk4v76q145yalqaiaffklvkfs615b5m0imxyjyjcvx1nbn0")))) + "1rfj2ff5cxzdp9nvfnbgmswc1jvxz5vkxqgpv6gprwk32a0z3v12")))) (build-system r-build-system) (propagated-inputs `(("r-bit" ,r-bit))) (home-page "http://ff.r-forge.r-project.org/") @@ -2633,13 +2635,13 @@ most popular ones.") (define-public r-sp (package (name "r-sp") - (version "1.4-2") + (version "1.4-4") (source (origin (method url-fetch) (uri (cran-uri "sp" version)) (sha256 - (base32 "02jxsd30apzjbdbssirysq70d4svdwzn931jhxr0ladl72g9bqvk")))) + (base32 "0zzw1gfic5b311vrbkmmmaap3yllgd192af067l5ymm885jqm1zs")))) (build-system r-build-system) (propagated-inputs `(("r-lattice" ,r-lattice))) @@ -3153,14 +3155,14 @@ contexts.") (define-public r-squarem (package (name "r-squarem") - (version "2020.4") + (version "2020.5") (source (origin (method url-fetch) (uri (cran-uri "SQUAREM" version)) (sha256 (base32 - "1r2yxfiqbpwy5ccg94r7f6sz7lh5aq0xjpf632s42wgmml1dvlzb")))) + "1f0j5pbsz2wi7dfl8h8gvdl991bjywiwkd2f6z0xgkh87kl5y0b4")))) (properties `((upstream-name . "SQUAREM"))) (build-system r-build-system) (home-page "https://coah.jhu.edu/people/Faculty_personal_Pages/Varadhan.html") @@ -3584,14 +3586,14 @@ by base R methods related to model fitting.") (define-public r-broom (package (name "r-broom") - (version "0.7.1") + (version "0.7.2") (source (origin (method url-fetch) (uri (cran-uri "broom" version)) (sha256 (base32 - "12xnpmm1cyhksv4gwcrwgrpw7c0xf1c7chlpng9lk8arifbfvqpg")))) + "18qkgw5f46cfr8sc7r9a261ivn3s4w88sdj653gaa20723179300")))) (build-system r-build-system) (propagated-inputs `(("r-backports" ,r-backports) @@ -3622,14 +3624,14 @@ provides a one-row summary of model-level statistics.") (define-public r-recipes (package (name "r-recipes") - (version "0.1.13") + (version "0.1.14") (source (origin (method url-fetch) (uri (cran-uri "recipes" version)) (sha256 (base32 - "1d3pmprkiz60w7lq5q4lpl5zlwf7fg7qghf7sq6xs1294w54gzbs")))) + "0ix678aj71ml5cmfhy1j0b2ddhf5wlb1d74bjc9djr6r86xsqmcz")))) (build-system r-build-system) (propagated-inputs `(("r-dplyr" ,r-dplyr) @@ -3736,13 +3738,13 @@ color labels, layout, etc.") (define-public r-stringdist (package (name "r-stringdist") - (version "0.9.6") + (version "0.9.6.3") (source (origin (method url-fetch) (uri (cran-uri "stringdist" version)) (sha256 - (base32 "0nb3iwpl4f3xxirns1frwvarpyrl4i5f74h8r6h80cg0a4mpdgcb")))) + (base32 "06rzbgw43vzg496xca82pydf3g2rz6iw6h50ai0prbp9hbwrhvfd")))) (build-system r-build-system) (home-page "https://github.com/markvanderloo/stringdist") (synopsis "Approximate string matching and string distance functions") @@ -4350,14 +4352,14 @@ plots in @code{ggplot2}.") (define-public r-cli (package (name "r-cli") - (version "2.0.2") + (version "2.1.0") (source (origin (method url-fetch) (uri (cran-uri "cli" version)) (sha256 (base32 - "1dhkah6jvr96k4h4agcc2rfls75bpjb0j58fzaz3dc0fp3jk8229")))) + "03zaq9yhz6gw49qdnhc66b3sw9i916ahkzyg2cgh17dhf31d2acq")))) (build-system r-build-system) (propagated-inputs `(("r-assertthat" ,r-assertthat) @@ -4562,13 +4564,13 @@ iVAT).") (define-public r-xfun (package (name "r-xfun") - (version "0.18") + (version "0.19") (source (origin (method url-fetch) (uri (cran-uri "xfun" version)) (sha256 - (base32 "0iqh9b0a5wlc4lmqf7r169h4m2xji5l1viwwi47qf094rl5r3ddr")))) + (base32 "15yyigkl1g9w9d7097hrm94dxn1af333ywr5xdw78qqrw6npn0iv")))) (build-system r-build-system) ;; knitr itself depends on xfun #; @@ -4736,14 +4738,14 @@ automatically.") (define-public r-network (package (name "r-network") - (version "1.16.0") + (version "1.16.1") (source (origin (method url-fetch) (uri (cran-uri "network" version)) (sha256 (base32 - "0dnf1wl3za2lhx2lwd8smhlijl1cfhckgr8zz9piiirrfi2m2kx2")))) + "1cgy7vlbinyndl0zkzvnpcmi240wry6iwfb42sz1mj5c9iwkar7b")))) (build-system r-build-system) (propagated-inputs `(("r-magrittr" ,r-magrittr) @@ -4851,14 +4853,14 @@ detect possible inconsistencies.") (define-public r-sna (package (name "r-sna") - (version "2.5") + (version "2.6") (source (origin (method url-fetch) (uri (cran-uri "sna" version)) (sha256 (base32 - "1j3i6300m686qqfmyvadim377cd3mplzgj6mandygw8brg50id8k")))) + "0ai0v4538d30m4wks5s3lch1yfmx1ml0nnrz7ihs097lv586a09s")))) (build-system r-build-system) (propagated-inputs `(("r-network" ,r-network) @@ -5839,7 +5841,7 @@ specific S3-method.") imputed values are introduced, which can be used for exploring the data and the structure of the missing and/or imputed values. Depending on this structure of the missing values, the corresponding methods may help to -identify the mechanism generating the missing values and allows to explore the +identify the mechanism generating the missing values and explore the data including missing values. In addition, the quality of imputation can be visually explored using various univariate, bivariate, multiple and multivariate plot methods.") @@ -6083,14 +6085,14 @@ additional external tools on any platform.") (define-public r-openxlsx (package (name "r-openxlsx") - (version "4.2.2") + (version "4.2.3") (source (origin (method url-fetch) (uri (cran-uri "openxlsx" version)) (sha256 (base32 - "12sjarcmbdww6jmkcqy8c6id94zv3lwmm15ns1y0xj3ipr8qmphb")))) + "0vz4nlrwgsiifrgza8kfd9i1c0ya6plymrgk59vyy2z54vc8kvyd")))) (build-system r-build-system) (propagated-inputs `(("r-rcpp" ,r-rcpp) @@ -6228,14 +6230,14 @@ promises, but with a syntax that is idiomatic R.") (define-public r-dosnow (package (name "r-dosnow") - (version "1.0.18") + (version "1.0.19") (source (origin (method url-fetch) (uri (cran-uri "doSNOW" version)) (sha256 (base32 - "0rj72z5505cprh6wykhhiz08l9bmd966srqh2qypwivf321bvrvh")))) + "0f07b38cl7s61vwzkyqkzzsic9g4sw9k6ndbxk3g90l4ca0d1ljc")))) (properties `((upstream-name . "doSNOW"))) (build-system r-build-system) (propagated-inputs @@ -6389,14 +6391,14 @@ obtain a better initial configuration in non-metric MDS.") (define-public r-reticulate (package (name "r-reticulate") - (version "1.16") + (version "1.18") (source (origin (method url-fetch) (uri (cran-uri "reticulate" version)) (sha256 (base32 - "0ddx3xrlw55d8d3w7pxap618w2c5pd1n2jw4xsa185s8mf1zifkl")))) + "04w5c9jfxakb4rr2qjynxgagb42khsja3y4dwgxywiplb1d8agxk")))) (build-system r-build-system) (inputs `(("python" ,python))) (propagated-inputs @@ -6859,21 +6861,44 @@ Just Another Gibbs Sampler. It is a program for analysis of Bayesian hierarchical models using Markov Chain Monte Carlo (MCMC) simulation.") (license license:gpl2))) +(define-public r-rbibutils + (package + (name "r-rbibutils") + (version "1.3") + (source + (origin + (method url-fetch) + (uri (cran-uri "rbibutils" version)) + (sha256 + (base32 + "1i000czyd059dczd2nn1cb0d4n0bjykrfh51rs85s8r2zlaydn6i")))) + (properties `((upstream-name . "rbibutils"))) + (build-system r-build-system) + (propagated-inputs `(("r-xml2" ,r-xml2))) + (home-page "https://geobosh.github.io/rbibutils/") + (synopsis "Convert between bibliography formats") + (description + "This package converts between a number of bibliography formats, +including BibTeX, BibLaTeX and Bibentry. It includes a port of the bibutils +utilities and supports all bibliography formats and character encodings +implemented in bibutils.") + (license license:gpl2))) + (define-public r-rdpack (package (name "r-rdpack") - (version "1.0.0") + (version "2.0") (source (origin (method url-fetch) (uri (cran-uri "Rdpack" version)) (sha256 (base32 - "069yh9h57z3gjl5ih1r6wyiwmgmfzkpjxrpxg8mfq7y6zr1mynsw")))) + "04gk68y3cxlqhfl1aarjwz2mvx934ka0yxfgzrnw03ykhvb47fpi")))) (properties `((upstream-name . "Rdpack"))) (build-system r-build-system) (propagated-inputs - `(("r-bibtex" ,r-bibtex) + `(("r-rbibutils" ,r-rbibutils) ("r-gbrd" ,r-gbrd))) (home-page "https://github.com/GeoBosh/Rdpack") (synopsis "Update and manipulate Rd documentation objects") @@ -6945,14 +6970,14 @@ on the methods that are implemented can be found in Kosmidis (2008) (define-public r-brglm (package (name "r-brglm") - (version "0.6.2") + (version "0.7.1") (source (origin (method url-fetch) (uri (cran-uri "brglm" version)) (sha256 (base32 - "0c9ngscc6zlfm90fqyggnj04qfkhp5qgf5q3wnfpxwyc8cm47by2")))) + "1v68ma1agwhxar76mfvdfkcnd5h4gmxiz8j491rhdsckg271j7sa")))) (properties `((upstream-name . "brglm"))) (build-system r-build-system) (propagated-inputs @@ -7001,24 +7026,19 @@ there are functions for discretizing continuous random variables.") (define-public r-abn (package (name "r-abn") - (version "2.2.2") + (version "2.3-0") (source (origin (method url-fetch) (uri (cran-uri "abn" version)) (sha256 (base32 - "1wwnzv5yir8cyl0f0arxagbsg9ndgs0799m42wbjkpr8cg9sfdhc")))) + "17vdrqm6qp5aijg00ah2imj3pqr6cl5r43hgg8dijbrbhznarci6")))) (build-system r-build-system) (inputs `(("gsl" ,gsl))) (propagated-inputs - `(("r-boot" ,r-boot) - ("r-brglm" ,r-brglm) - ("r-entropy" ,r-entropy) - ("r-lme4" ,r-lme4) - ("r-mass" ,r-mass) - ("r-moments" ,r-moments) + `(("r-lme4" ,r-lme4) ("r-nnet" ,r-nnet) ("r-rcpp" ,r-rcpp) ("r-rcpparmadillo" ,r-rcpparmadillo) @@ -7156,14 +7176,14 @@ other add-on packages.") (define-public r-insight (package (name "r-insight") - (version "0.9.6") + (version "0.10.0") (source (origin (method url-fetch) (uri (cran-uri "insight" version)) (sha256 (base32 - "15mws316qfbq3nn6gb7s0m0a6jk2zi056g43yqiw4gp2ar92wd0h")))) + "1r4val3hvc43zailfmq6wcbg366s0bi0ysib476a49k1x6h8b6ji")))) (build-system r-build-system) (native-inputs `(("r-knitr" ,r-knitr))) @@ -7440,20 +7460,22 @@ matches version and feature constraints.") (define-public r-argparse (package (name "r-argparse") - (version "2.0.1") + (version "2.0.3") (source (origin (method url-fetch) (uri (cran-uri "argparse" version)) (sha256 (base32 - "1as7h6z7kzgv0fqzpnp76qbm96b4jcd37azd58b7rz0l1n94764l")))) + "1c2r417m1dxk1jhcggv3g4zax5a59k9rqs9jcs6xy2pa2333jqfj")))) (build-system r-build-system) (inputs `(("python" ,python))) (propagated-inputs `(("r-findpython" ,r-findpython) ("r-jsonlite" ,r-jsonlite) ("r-r6" ,r-r6))) + (native-inputs + `(("r-knitr" ,r-knitr))) (home-page "https://github.com/trevorld/argparse") (synopsis "Command line optional and positional argument parser") (description @@ -7512,14 +7534,14 @@ Group (Non-)Overlap considerations.") (define-public r-deriv (package (name "r-deriv") - (version "4.1.0") + (version "4.1.1") (source (origin (method url-fetch) (uri (cran-uri "Deriv" version)) (sha256 (base32 - "1n5d10g9qv4fvl8q0q6yc0mzdbba10jniid6k3br3bfqvdp2a4pq")))) + "1fzchsignpb7cpizbf6l8v9k1nkmaf4r4j3mnxz0csl2g2npi1xc")))) (properties `((upstream-name . "Deriv"))) (build-system r-build-system) (home-page "https://cran.r-project.org/web/packages/Deriv") @@ -8218,20 +8240,23 @@ genotypes as \"graphical genotypes\".") (define-public r-furrr (package (name "r-furrr") - (version "0.1.0") + (version "0.2.1") (source (origin (method url-fetch) (uri (cran-uri "furrr" version)) (sha256 (base32 - "1ld9aa9hydna94hgm6p91zjbfv1dz1vsgchjlpknkg6irbvkfafx")))) + "16s6sgfgh1ayzhf3kvpy9vhsd5h6p57waj1xgbksgdmf4j1wkcq7")))) (build-system r-build-system) (propagated-inputs - `(("r-future" ,r-future) + `(("r-ellipsis" ,r-ellipsis) + ("r-future" ,r-future) ("r-globals" ,r-globals) + ("r-lifecycle" ,r-lifecycle) ("r-purrr" ,r-purrr) - ("r-rlang" ,r-rlang))) + ("r-rlang" ,r-rlang) + ("r-vctrs" ,r-vctrs))) (home-page "https://github.com/DavisVaughan/furrr") (synopsis "Apply mapping functions in parallel using futures") (description @@ -8577,14 +8602,14 @@ multiple-imputation datasets.") (define-public r-magick (package (name "r-magick") - (version "2.4.0") + (version "2.5.0") (source (origin (method url-fetch) (uri (cran-uri "magick" version)) (sha256 (base32 - "1y1p2blkg0h6061ay7mdwssxbswgrc25raffp6d8d9cqhdmsa72s")))) + "1fhwr34xff6793ifbzqmij8b8qg7hrnr4birqpg33ib0mdd6flkf")))) (build-system r-build-system) (inputs `(("imagemagick" ,imagemagick) @@ -9019,14 +9044,14 @@ Hothorn, Westfall, 2010, CRC Press).") (define-public r-emmeans (package (name "r-emmeans") - (version "1.5.1") + (version "1.5.2-1") (source (origin (method url-fetch) (uri (cran-uri "emmeans" version)) (sha256 (base32 - "05z3vvykn56g50zhzsphdhfjzdw8g8xfindcas08hbhv5y7izhs8")))) + "0ndbjhglycdycppz9lbj3vhiqv2mp0z6h4w8fbyjziqx15ai5h59")))) (build-system r-build-system) (propagated-inputs `(("r-estimability" ,r-estimability) @@ -9255,14 +9280,14 @@ differentiation.") (define-public r-bayestestr (package (name "r-bayestestr") - (version "0.7.2") + (version "0.7.5") (source (origin (method url-fetch) (uri (cran-uri "bayestestR" version)) (sha256 (base32 - "1c82bpxg2ha93rna4sy9pdp422dnk6b378dcg8x04clfg0y0lsi2")))) + "0l6q7v96m9asqa0p55k0gpzy8hddf8srkhc9r7zf4hv0dscbi9dv")))) (properties `((upstream-name . "bayestestR"))) (build-system r-build-system) (propagated-inputs @@ -9282,14 +9307,14 @@ ROPE percentage and pd).") (define-public r-performance (package (name "r-performance") - (version "0.5.0") + (version "0.5.1") (source (origin (method url-fetch) (uri (cran-uri "performance" version)) (sha256 (base32 - "01csmn52d6rhlmcj7gi6ckc6v6a8pymnrpx9l729h13igxsnaf28")))) + "1vkc87vbhw7l626pdnpiravnpsa5j0iv73lbwy3m309lnfvv0cqx")))) (build-system r-build-system) (propagated-inputs `(("r-bayestestr" ,r-bayestestr) @@ -9339,14 +9364,14 @@ results using @code{ggplot2}.") (define-public r-effectsize (package (name "r-effectsize") - (version "0.3.3") + (version "0.4.0") (source (origin (method url-fetch) (uri (cran-uri "effectsize" version)) (sha256 (base32 - "00c9j6lc58ls1vrwlpzk3h1lgvxpkcrh7b4ym6kmy4fg4f08izp7")))) + "0shx19ahw13wrn7jlyyvzvngqk66d6jiw9i51mx3psdn3hdnhy9s")))) (properties `((upstream-name . "effectsize"))) (build-system r-build-system) (propagated-inputs @@ -9366,13 +9391,13 @@ conversion of indices such as Cohen's d, r, odds, etc.") (define-public r-sjplot (package (name "r-sjplot") - (version "2.8.5") + (version "2.8.6") (source (origin (method url-fetch) (uri (cran-uri "sjPlot" version)) (sha256 - (base32 "07fwa6ga9430irk68g9wcfpn9g24pf8qc2i127nrydm865y7ri24")))) + (base32 "1dn9nvvp4jd45kwr4rpp2abf7xdpdmiv41rr3fkdb32a136bzx4b")))) (properties `((upstream-name . "sjPlot"))) (build-system r-build-system) (propagated-inputs @@ -9886,14 +9911,14 @@ experiments using ANOVA or mixed models.") (define-public r-lmertest (package (name "r-lmertest") - (version "3.1-2") + (version "3.1-3") (source (origin (method url-fetch) (uri (cran-uri "lmerTest" version)) (sha256 (base32 - "1qkdxx5sri65zgpb9gw4nkfkdam51kgy4hxclk5c40yk7y3p0n1q")))) + "1zd8gqjkazhxgpnnr484xwsq30p62fq8592nzyc171zjyplpbaim")))) (properties `((upstream-name . "lmerTest"))) (build-system r-build-system) (propagated-inputs @@ -10205,19 +10230,19 @@ hypothesis testing.") (define-public r-feature (package (name "r-feature") - (version "1.2.13") + (version "1.2.14") (source (origin (method url-fetch) (uri (cran-uri "feature" version)) (sha256 (base32 - "07hkw0bv38naj2hdsx4xxrm2dngi6w3rbvgr7s50bjic8hlgy1ra")))) + "1c12rny9nx8dynzxbcf49h76a7wlmsk1m131wh0jiyqx3c3y41y1")))) (build-system r-build-system) (propagated-inputs - `(("r-ks" ,r-ks) - ("r-misc3d" ,r-misc3d) - ("r-rgl" ,r-rgl))) + `(("r-ks" ,r-ks))) + (native-inputs + `(("r-knitr" ,r-knitr))) (home-page "http://www.mvstat.net/tduong/") (synopsis "Inferential feature significance for kernel density estimation") (description @@ -10491,14 +10516,14 @@ in-memory raw vectors.") (define-public r-nlp (package (name "r-nlp") - (version "0.2-0") + (version "0.2-1") (source (origin (method url-fetch) (uri (cran-uri "NLP" version)) (sha256 (base32 - "0xbhkrnxcbf322jfw31xcn4y2gnk5y7ccq1bz4h3prf44h0whr7w")))) + "1dpj04fmld2lnhg072ahgjbhmciqqy9h1lrz0wf32mr7mm9s9sh5")))) (properties `((upstream-name . "NLP"))) (build-system r-build-system) (home-page "https://cran.r-project.org/web/packages/NLP/") @@ -10998,14 +11023,14 @@ Touzet and Varre (2007).") (define-public r-rnifti (package (name "r-rnifti") - (version "1.2.2") + (version "1.2.3") (source (origin (method url-fetch) (uri (cran-uri "RNifti" version)) (sha256 (base32 - "0h837jdspy071ckij8szqd8149bm113jpqwbclg87is4brsm5jzg")))) + "02jdxz3w423k9b5wldky4pnnq0cs2zlfi52jxjw1mk24z756j692")))) (properties `((upstream-name . "RNifti"))) (build-system r-build-system) (propagated-inputs `(("r-rcpp" ,r-rcpp))) @@ -11965,13 +11990,13 @@ Differences with other sparse matrix packages are: (define-public r-fields (package (name "r-fields") - (version "11.5") + (version "11.6") (source (origin (method url-fetch) (uri (cran-uri "fields" version)) (sha256 - (base32 "1mgg5l6w4yvz7cccgfz3h19k11ng1s1hy26rl2h215gnfb24mnga")))) + (base32 "1nsrgkw9w3mwd3sajyzc06h49gg1s0bkq6xh5b66h1n4jbcx2046")))) (build-system r-build-system) (propagated-inputs `(("r-maps" ,r-maps) @@ -12414,14 +12439,14 @@ subsetting.") (define-public r-globals (package (name "r-globals") - (version "0.13.0") + (version "0.13.1") (source (origin (method url-fetch) (uri (cran-uri "globals" version)) (sha256 (base32 - "0gqh7dbd38wqyjy9qm85v5k60vld97pyc46wf4xkgi4mr7y0ixg3")))) + "1ch9m7fxclfhfa38b743wcm7w1bkx9kmivc6l7phpbgs6h9jhrcc")))) (build-system r-build-system) (propagated-inputs `(("r-codetools" ,r-codetools))) @@ -13263,14 +13288,14 @@ graphs.") (define-public r-pbdzmq (package (name "r-pbdzmq") - (version "0.3-3") + (version "0.3-3.1") (source (origin (method url-fetch) (uri (cran-uri "pbdZMQ" version)) (sha256 (base32 - "1jkfcfhspvqra7vbllrvkz3jx8j7d0ang6zzcdjgpb7200sc29mf")))) + "08qmrzazadkyxlqc8830r0pckaq10l3fgj1f198xy6wwrm2lf0wy")))) (properties `((upstream-name . "pbdZMQ"))) (build-system r-build-system) (inputs @@ -13436,14 +13461,14 @@ plotting functions are available for analyzing clustering results.") (define-public r-valr (package (name "r-valr") - (version "0.6.1") + (version "0.6.2") (source (origin (method url-fetch) (uri (cran-uri "valr" version)) (sha256 (base32 - "1qxw6h63i2vfb2w6q453zzwk0ypma3xdwwpj15i06669vzgyy3bb")))) + "1vbp89zfylgih5acvw7lcx3a0dbbd7dhq7yhywr7kq02737qykdx")))) (build-system r-build-system) (propagated-inputs `(("r-broom" ,r-broom) @@ -13789,14 +13814,14 @@ barplots or heatmaps.") (define-public r-seqinr (package (name "r-seqinr") - (version "3.6-1") + (version "4.2-4") (source (origin (method url-fetch) (uri (cran-uri "seqinr" version)) (sha256 (base32 - "0j30za6kji6y3v09cvcydiacnp65pv6ig8aw7cydl47l5s9chky4")))) + "0pw035h17dmic8m0pb73fbyf6p4jbwggxjk5vpjlybn8dwd0rk93")))) (build-system r-build-system) (propagated-inputs `(("r-ade4" ,r-ade4) @@ -14271,14 +14296,14 @@ include (define-public r-haplo-stats (package (name "r-haplo-stats") - (version "1.8.5") + (version "1.8.6") (source (origin (method url-fetch) (uri (cran-uri "haplo.stats" version)) (sha256 (base32 - "1f5cyyyavkf4l6kksp87s8d92vjrnhxmpz6j737pa527pn3gghf9")))) + "1imz4gs0n57vixwwbirrihpgvn2pyj5da4rgjcjk14n2xkk0nay7")))) (properties `((upstream-name . "haplo.stats"))) (build-system r-build-system) (propagated-inputs @@ -14373,14 +14398,14 @@ inbred lines, F2 intercrosses, and association mapping populations.") (define-public r-ldheatmap (package (name "r-ldheatmap") - (version "0.99-8") + (version "1.0-4") (source (origin (method url-fetch) (uri (cran-uri "LDheatmap" version)) (sha256 (base32 - "1x3da3rbhyqb2ddngi48qv7vzb6vc347n9qhryr70qgcc1xvqj4z")))) + "1jp578cf29qcgx95w10lpymlwx2pgjsf0nypwkl9b8g635gkisq7")))) (properties `((upstream-name . "LDheatmap"))) (build-system r-build-system) (propagated-inputs @@ -14464,13 +14489,13 @@ SELECT or UPDATE queries to an end-point.") (define-public r-bookdown (package (name "r-bookdown") - (version "0.20") + (version "0.21") (source (origin (method url-fetch) (uri (cran-uri "bookdown" version)) (sha256 (base32 - "0gnshkp1aj7f29sjkhzxn890hz39nwaqdln61x8apmrc658nacdg")))) + "0xms1srx9l2mn8xaxnpic0s21y8k56bhwpj45wy7b0yscmxgmh27")))) (build-system r-build-system) (propagated-inputs `(("r-htmltools" ,r-htmltools) @@ -14478,6 +14503,7 @@ SELECT or UPDATE queries to an end-point.") ("r-rmarkdown" ,r-rmarkdown) ("r-tinytex" ,r-tinytex) ("r-xfun" ,r-xfun) + ("r-yaml" ,r-yaml) ("pandoc" ,pandoc))) (home-page "https://github.com/rstudio/bookdown") (synopsis "Authoring books and technical documents with R markdown") @@ -15751,14 +15777,14 @@ code edited with @code{RStudio IDE}, @code{Emacs} and @code{Vim}.") (define-public r-sctransform (package (name "r-sctransform") - (version "0.3") + (version "0.3.1") (source (origin (method url-fetch) (uri (cran-uri "sctransform" version)) (sha256 (base32 - "1vyjxzghfvw57pwncvkfg3lbcsqfdsiplh1h4vscxpnd3872nrq3")))) + "0b8ni8dzlcikjm2bx5w8yi9vygx0qqxjrmnsy4kf7d1h03n2sxwa")))) (build-system r-build-system) (propagated-inputs `(("r-future" ,r-future) @@ -15767,8 +15793,9 @@ code edited with @code{RStudio IDE}, @code{Emacs} and @code{Vim}.") ("r-gridextra" ,r-gridextra) ("r-mass" ,r-mass) ("r-matrix" ,r-matrix) + ("r-matrixstats" ,r-matrixstats) ("r-rcpp" ,r-rcpp) - ("r-rcppeigen" ,r-rcppeigen) + ("r-rcpparmadillo" ,r-rcpparmadillo) ("r-reshape2" ,r-reshape2))) (home-page "https://github.com/ChristophH/sctransform") (synopsis "Variance stabilizing transformations for Single Cell UMI Data") @@ -15875,14 +15902,14 @@ extends the lme4 package.") (define-public r-batchtools (package (name "r-batchtools") - (version "0.9.13") + (version "0.9.14") (source (origin (method url-fetch) (uri (cran-uri "batchtools" version)) (sha256 (base32 - "02bwfinwgn5nl638997javig61jmr0ci0qybmprz13jnvmam1yns")))) + "1b78r70gm4a0wzjr367hqx2rfphfkbppp14d0l5zs2fvyz166lsx")))) (build-system r-build-system) (propagated-inputs `(("r-backports" ,r-backports) @@ -16096,14 +16123,14 @@ been used in the call to @code{aov}.") (define-public r-dalex (package (name "r-dalex") - (version "2.0") + (version "2.0.1") (source (origin (method url-fetch) (uri (cran-uri "DALEX" version)) (sha256 (base32 - "1yn61cbqvyycn617pzhd7kgd34xsnmqvj3s10inn2ywycybk7byi")))) + "1hiknx55d91abyfj3w4a2xxin7f1q8h5k0041m7w93xjdc4kis98")))) (properties `((upstream-name . "DALEX"))) (build-system r-build-system) (propagated-inputs @@ -16357,14 +16384,14 @@ LargeVis method of Tang et al. (2016) is also provided.") (define-public r-kableextra (package (name "r-kableextra") - (version "1.2.1") + (version "1.3.1") (source (origin (method url-fetch) (uri (cran-uri "kableExtra" version)) (sha256 (base32 - "0n25y7zwpspvkd62rd6x8c22dg2ys27smlpdz5brqs5ddv7x9dis")))) + "1zixccpgy9x95fgzfgxc43pm020c80c21flch71klc3zzzsq53gf")))) (properties `((upstream-name . "kableExtra"))) (build-system r-build-system) (propagated-inputs @@ -16485,20 +16512,22 @@ computed using the L1 (Manhattan, taxicab) metric.") (define-public r-leiden (package (name "r-leiden") - (version "0.3.3") + (version "0.3.4") (source (origin (method url-fetch) (uri (cran-uri "leiden" version)) (sha256 (base32 - "1hh6bmbz6cpqwl4i94gxylgv9x92zbqdg81r8r4ymfy8c70f3df2")))) + "0cj98s1d9771dahn2xwdb1hpkw51jsfmgvzpam34c7i57fj37hn2")))) (properties `((upstream-name . "leiden"))) (build-system r-build-system) (propagated-inputs `(("r-igraph" ,r-igraph) ("r-matrix" ,r-matrix) ("r-reticulate" ,r-reticulate))) + (native-inputs + `(("r-knitr" ,r-knitr))) (home-page "https://github.com/TomKellyGenetics/leiden") (synopsis "R implementation of Leiden clustering algorithm") (description @@ -16719,14 +16748,14 @@ be used further by e.g. graphic devices.") (define-public r-graphlayouts (package (name "r-graphlayouts") - (version "0.7.0") + (version "0.7.1") (source (origin (method url-fetch) (uri (cran-uri "graphlayouts" version)) (sha256 (base32 - "17lc75k8i3c696hfj44zj7j1a5sb0nap8spc5r98v7vd6xh4nii0")))) + "05v7ss18bflhqa4ipsca8iw2ln8ddbaiyrizx2a5cwq81g5qq3rq")))) (properties `((upstream-name . "graphlayouts"))) (build-system r-build-system) (propagated-inputs @@ -16836,14 +16865,14 @@ in pipelines.") (define-public r-parameters (package (name "r-parameters") - (version "0.8.6") + (version "0.9.0") (source (origin (method url-fetch) (uri (cran-uri "parameters" version)) (sha256 (base32 - "0z4qy62pxiwnsgi77ydymlc12ss9p9gbqljik2h0rwlmkpmk016w")))) + "17jjmy1qnx25ldvasrwhmal45nl1sr8qjxprbi8fcjwra9af6cr6")))) (properties `((upstream-name . "parameters"))) (build-system r-build-system) (propagated-inputs @@ -16865,13 +16894,13 @@ effect size.") (define-public r-rgdal (package (name "r-rgdal") - (version "1.5-17") + (version "1.5-18") (source (origin (method url-fetch) (uri (cran-uri "rgdal" version)) (sha256 - (base32 "16vk3a8azbqhv4m598i78hs9m1nlfcls6lx011v0wgiw6ksq64zw")))) + (base32 "1pr267sh0v6cympdg12yny51cmn4r20s5sjq2hqymn4kphcpqijk")))) (properties `((upstream-name . "rgdal"))) (build-system r-build-system) (inputs @@ -18078,14 +18107,14 @@ to maximise an approximation to the expectation of the utility function.") (define-public r-acet (package (name "r-acet") - (version "1.8.0") + (version "1.8.1") (source (origin (method url-fetch) (uri (cran-uri "ACEt" version)) (sha256 (base32 - "0626d6kg485xjya164wagrr5z223jvi93ywbwpdns7fkm03c0dlq")))) + "0b5lfpnppyk0237phr2aybhx29nhm8ngwk2qa1y4lshrvsw97wg4")))) (properties `((upstream-name . "ACEt"))) (build-system r-build-system) (propagated-inputs @@ -19769,7 +19798,7 @@ statistical shape analysis and archetypal analysis.") "This package is a collection of several algorithms to obtain archetypoids with small and large databases and with both classical multivariate data and functional data (univariate and multivariate). Some of -these algorithms also allow to detect anomalies (outliers).") +these algorithms also detect anomalies (outliers).") (license license:gpl2+))) (define-public r-idpmisc @@ -21242,14 +21271,14 @@ Haberman's interaction model when all items are dichotomously scored.") (define-public r-iheatmapr (package (name "r-iheatmapr") - (version "0.5.0") + (version "0.5.1") (source (origin (method url-fetch) (uri (cran-uri "iheatmapr" version)) (sha256 (base32 - "0s2lc088rq2siy2wzmg1y6nss68rs33mf7w2izqqmg6kbx6d7y9h")))) + "1pwkwh7ljlpr6zyz6j8knpz3iw60xzkw8amc98x4pc2mw148jvzx")))) (properties `((upstream-name . "iheatmapr"))) (build-system r-build-system) (propagated-inputs @@ -22402,14 +22431,14 @@ included in this package as well.") (define-public r-brms (package (name "r-brms") - (version "2.13.5") + (version "2.14.0") (source (origin (method url-fetch) (uri (cran-uri "brms" version)) (sha256 (base32 - "0a2m5wr134sxflmiq5jzvanzn81fv7xndy9gyvrq3bay9vakic69")))) + "0s8dl1xm3bpivfv3hw94zv9cifjg8cgs5137yd8d755kc2v0fdmf")))) (properties `((upstream-name . "brms"))) (build-system r-build-system) (propagated-inputs @@ -22692,14 +22721,14 @@ values.") (define-public r-rismed (package (name "r-rismed") - (version "2.1.7") + (version "2.2") (source (origin (method url-fetch) (uri (cran-uri "RISmed" version)) (sha256 (base32 - "08dmkkxsmwp9b4h2g1bbx03cijn793fsnzkmbima8x9d42vxnm1l")))) + "0nwixhngi4r2f73362salivsmsf7l52bm13jqvhdq8mfiigm80vd")))) (properties `((upstream-name . "RISmed"))) (build-system r-build-system) (home-page "https://cran.r-project.org/web/packages/RISmed") @@ -23121,14 +23150,14 @@ for linear mixed models (AIREML).") (define-public r-cpp11 (package (name "r-cpp11") - (version "0.2.2") + (version "0.2.3") (source (origin (method url-fetch) (uri (cran-uri "cpp11" version)) (sha256 (base32 - "1b1h7kjl3xrd4nfly7wd6v8mbyancm632r4k37pafs8xi6cqm848")))) + "1avcip33bldzz0rhkl43b4sljrbb8i24684xxmr9il5bijcpyy97")))) (properties `((upstream-name . "cpp11"))) (build-system r-build-system) (native-inputs `(("r-knitr" ,r-knitr))) @@ -23144,14 +23173,14 @@ semantics and supports interaction with @code{ALTREP} vectors.") (define-public r-rcppziggurat (package (name "r-rcppziggurat") - (version "0.1.5") + (version "0.1.6") (source (origin (method url-fetch) (uri (cran-uri "RcppZiggurat" version)) (sha256 (base32 - "0zmr3nvm5j0fpwxk3x9kxpwqbr66ldfvd10zy8xlgjbslz9myvfv")))) + "0wgd1v2p7zajnbrjf3hfi56p3pk3ld6iwkanbb04bjbnlif2ay4w")))) (properties `((upstream-name . "RcppZiggurat"))) (build-system r-build-system) (propagated-inputs @@ -23667,14 +23696,14 @@ model.") (define-public r-igraph (package (name "r-igraph") - (version "1.2.5") + (version "1.2.6") (source (origin (method url-fetch) (uri (cran-uri "igraph" version)) (sha256 (base32 - "126z1ygbmi3g7hk97snf22rnx680dyi30idssm5zacba5rdngp8c")))) + "0vf7wrx77cdiav8724cw8gchrn0y9wvywphf5km4pa7xcqhsf3b4")))) (build-system r-build-system) (native-inputs `(("gfortran" ,gfortran))) @@ -23699,14 +23728,14 @@ more.") (define-public r-workflows (package (name "r-workflows") - (version "0.2.0") + (version "0.2.1") (source (origin (method url-fetch) (uri (cran-uri "workflows" version)) (sha256 (base32 - "1mj0ibl6myzw5vl5n4gcfy7fz8wd1755kp8sdy18isxg8h5h23ya")))) + "1mk0pnmpqlhf143mvj9rwvjrrshirz6s83s5hbfalhnyw7hzkfb9")))) (properties `((upstream-name . "workflows"))) (build-system r-build-system) (propagated-inputs @@ -23795,14 +23824,14 @@ and regression metrics (e.g., RMSE).") (define-public r-warp (package (name "r-warp") - (version "0.1.0") + (version "0.2.0") (source (origin (method url-fetch) (uri (cran-uri "warp" version)) (sha256 (base32 - "16bmym91h0sbbh4iqasqs0f4kp3jqlm3sqgc356mznhxwnsm8dm2")))) + "0s0acddc5h14245hi1faycxp0fyvw6nlgaz2df7da4fpyd2f638f")))) (properties `((upstream-name . "warp"))) (build-system r-build-system) (native-inputs `(("r-knitr" ,r-knitr))) @@ -24015,14 +24044,14 @@ models without involving a test set.") (define-public r-tidypredict (package (name "r-tidypredict") - (version "0.4.7") + (version "0.4.8") (source (origin (method url-fetch) (uri (cran-uri "tidypredict" version)) (sha256 (base32 - "0z0wr0ssl1h0smr9431cy1ik5kxfy1nvkdcyyq9c0355h828hybh")))) + "0fff349pkksss8h1k2qza78l81ha6avx63pxziv6dfa8h62qmrdy")))) (properties `((upstream-name . "tidypredict"))) (build-system r-build-system) (propagated-inputs @@ -24172,14 +24201,14 @@ analysis using @code{dplyr}, @code{ggplot2}, and other Tidy tools.") (define-public r-parsnip (package (name "r-parsnip") - (version "0.1.3") + (version "0.1.4") (source (origin (method url-fetch) (uri (cran-uri "parsnip" version)) (sha256 (base32 - "12121qj1800i7g3km5kqzlb7hms55crmp6il575c2i475h5qx8d3")))) + "1134840xisvkkrbkh5kvx24vxp7sx06124svy573a9m4h8c492sr")))) (properties `((upstream-name . "parsnip"))) (build-system r-build-system) (propagated-inputs @@ -24237,14 +24266,14 @@ expressive statistical grammar that coheres with the Tidy design framework.") (define-public r-modeldata (package (name "r-modeldata") - (version "0.0.2") + (version "0.1.0") (source (origin (method url-fetch) (uri (cran-uri "modeldata" version)) (sha256 (base32 - "13q6hhbwqbwnjvg8bz6iwwfx96p1saqq3r34cjrbnpgzmr1nn11l")))) + "0lbvmicvhw560jn9qk5dywrl6mgj1rf7zh7p86lf97c6bmz0zp2r")))) (properties `((upstream-name . "modeldata"))) (build-system r-build-system) (home-page "https://modeldata.tidymodels.org") @@ -24614,7 +24643,7 @@ absolute GSEA.") (build-system r-build-system) (propagated-inputs `(("r-rcpp" ,r-rcpp))) - (home-page "https://github.com/guidotti/calculus") + (home-page "https://github.com/eguidotti/calculus") (synopsis "High dimensional numerical and symbolic calculus") (description "Efficient C++ optimized functions for numerical and symbolic calculus. diff --git a/gnu/packages/crates-io.scm b/gnu/packages/crates-io.scm index 5b4767a779..f485142383 100644 --- a/gnu/packages/crates-io.scm +++ b/gnu/packages/crates-io.scm @@ -653,6 +653,30 @@ be used with the stdlib.") (description "This package provides the glue for the Android JNI.") (license license:expat))) +(define-public rust-ansi-parser-0.6 + (package + (name "rust-ansi-parser") + (version "0.6.5") + (source + (origin + (method url-fetch) + (uri (crate-uri "ansi-parser" version)) + (file-name + (string-append name "-" version ".tar.gz")) + (sha256 + (base32 "152idb8a6gwdxzj6m099h3xgx8vw0sjc6skgw94nm2k3y5swc6kn")))) + (build-system cargo-build-system) + (arguments + `(#:cargo-inputs + (("rust-heapless" ,rust-heapless-0.5) + ("rust-nom" ,rust-nom-4.2)))) + (home-page "https://gitlab.com/DavidBittner/ansi-parser") + (synopsis "Library using nom for parsing ANSI escape codes") + (description + "This package provides a library using nom for parsing ANSI +escape codes.") + (license license:mpl2.0))) + (define-public rust-antidote-1.0 (package (name "rust-antidote") @@ -13159,7 +13183,7 @@ requires non-const function calls to be computed.") (define-public rust-libc-0.2 (package (name "rust-libc") - (version "0.2.71") + (version "0.2.79") (source (origin (method url-fetch) @@ -13167,7 +13191,7 @@ requires non-const function calls to be computed.") (file-name (string-append name "-" version ".crate")) (sha256 (base32 - "0jbgi25rhglhvpxv62alyzyral6601kldmlhbxim4w6j15jv0mwl")))) + "0hw7qnlymw5gi5c3xd7mirpgrc5l0pvqpjg9jb3vzqw0dq3gcj14")))) (build-system cargo-build-system) (arguments `(#:cargo-inputs @@ -19591,7 +19615,7 @@ formatted tables in terminal.") (define-public rust-proc-macro2-1 (package (name "rust-proc-macro2") - (version "1.0.21") + (version "1.0.24") (source (origin (method url-fetch) @@ -19599,10 +19623,11 @@ formatted tables in terminal.") (file-name (string-append name "-" version ".crate")) (sha256 (base32 - "0b1azz1c2a3rap1kfz2sjinv7narfhssazaq39axvwwlvwb8bqin")))) + "0wcabxzrddcjmryndw8fpyxcq6rw63m701vx86xxf03y3bp081qy")))) (build-system cargo-build-system) (arguments - `(#:cargo-inputs + `(#:cargo-test-flags '("--lib") + #:cargo-inputs (("rust-unicode-xid" ,rust-unicode-xid-0.2)) #:cargo-development-inputs (("rust-quote" ,rust-quote-1)))) @@ -24098,7 +24123,7 @@ comparison.") (define-public rust-serde-1 (package (name "rust-serde") - (version "1.0.116") + (version "1.0.117") (source (origin (method url-fetch) @@ -24106,7 +24131,7 @@ comparison.") (file-name (string-append name "-" version ".crate")) (sha256 (base32 - "19bhld1qyjs4qr3rd6dmzmy13imb6a1qbinb2fjqd0yjh6pmgzln")))) + "06nwyyma9hch1abjqj0y9cb09m1y6lbzbsc7jff6483pvs1sk3xq")))) (build-system cargo-build-system) (arguments `(#:cargo-inputs @@ -24368,7 +24393,7 @@ for the serde framework.") (define-public rust-serde-derive-1 (package (name "rust-serde-derive") - (version "1.0.116") + (version "1.0.117") (source (origin (method url-fetch) @@ -24376,7 +24401,7 @@ for the serde framework.") (file-name (string-append name "-" version ".crate")) (sha256 (base32 - "1s4sbl32lk1afxryfax73clvq22lwzdgzljb7f3mgr6q1wvscc7n")))) + "0kn7ais3zv9ajbyc216qm14r61zwlm229815yd4anjmlmmraxlfb")))) (build-system cargo-build-system) (arguments `(#:cargo-inputs @@ -25829,20 +25854,20 @@ initializers are available.") (define-public rust-stable-deref-trait-1 (package (name "rust-stable-deref-trait") - (version "1.1.1") + (version "1.2.0") (source (origin (method url-fetch) (uri (crate-uri "stable_deref_trait" version)) - (file-name (string-append name "-" version ".crate")) + (file-name (string-append name "-" version ".tar.gz")) (sha256 (base32 - "1j2lkgakksmz4vc5hfawcch2ipiskrhjs1sih0f3br7s7rys58fv")))) + "1lxjr8q2n534b2lhkxd6l6wcddzjvnksi58zv11f9y0jjmr15wd8")))) (build-system cargo-build-system) (home-page "https://github.com/storyyeller/stable_deref_trait0") (synopsis "Defines an unsafe marker trait, StableDeref") (description - "This crate defines an unsafe marker trait, StableDeref, for container + "This crate defines an unsafe marker trait, StableDeref, for container types which deref to a fixed address which is valid even when the containing type is moved. For example, Box, Vec, Rc, Arc and String implement this trait. Additionally, it defines CloneStableDeref for types like Rc where clones deref @@ -27668,7 +27693,7 @@ grid layout.") (package (inherit rust-term-size-1.0) (name "rust-term-size") - (version "0.3.1") + (version "0.3.2") (source (origin (method url-fetch) @@ -27677,14 +27702,11 @@ grid layout.") (string-append name "-" version ".tar.gz")) (sha256 (base32 - "09wk3173ngmb710qs9rwgibq4w250q8lgnwjvb9cypc1vdk9lnwy")))) + "1n885cykajsppx86xl7d0dqkgmgsp8v914lvs12qzvd0dij2jh8y")))) (arguments - `(#:skip-build? #t - #:cargo-inputs - (("rust-clippy" ,rust-clippy-0.0) - ("rust-kernel32-sys" ,rust-kernel32-sys-0.2) - ("rust-libc" ,rust-libc-0.2) - ("rust-winapi" ,rust-winapi-0.2)))))) + `(#:cargo-inputs + (("rust-libc" ,rust-libc-0.2) + ("rust-winapi" ,rust-winapi-0.3)))))) (define-public rust-termcolor-1 (package @@ -31059,6 +31081,26 @@ If that fails, no determination is made, and calls return None.") (base32 "1pf91pvj8n6akh7w6j5ypka6aqz08b3qpzgs0ak2kjf4frkiljwi")))))) +(define-public rust-version-compare-0.0 + (package + (name "rust-version-compare") + (version "0.0.11") + (source + (origin + (method url-fetch) + (uri (crate-uri "version-compare" version)) + (file-name + (string-append name "-" version ".tar.gz")) + (sha256 + (base32 "06v688jg6gd00zvm3cp7qh2h3mz8cs2ngr09bnwxhyddxrcwh60w")))) + (build-system cargo-build-system) + (home-page "https://github.com/timvisee/version-compare") + (synopsis "Rust library to easily compare version numbers") + (description + "This package provides a Rust library to easily compare version +numbers, and test them against various comparison operators.") + (license license:expat))) + (define-public rust-version-sync-0.8 (package (name "rust-version-sync") @@ -31833,7 +31875,7 @@ attribute that is not in the shared backend crate.") (("rust-base64" ,rust-base64-0.9)))) (home-page "https://github.com/briansmith/webpki") (synopsis "Web PKI X.509 Certificate Verification") - (description "This packge provides Web PKI X.509 Certificate + (description "This package provides Web PKI X.509 Certificate Verification.") (license license:isc))) @@ -32773,7 +32815,7 @@ library.") ("rust-zstd-sys" ,rust-zstd-sys-1.4.17)))) (home-page "https://github.com/gyscos/zstd-rs") (synopsis "Safe low-level bindings to the zstd compression library") - (description "This package provides afe low-level bindings to the zstd + (description "This package provides safe low-level bindings to the zstd compression library.") (license (list license:expat license:asl2.0)))) diff --git a/gnu/packages/crypto.scm b/gnu/packages/crypto.scm index a45d2741e6..b8ca0134b3 100644 --- a/gnu/packages/crypto.scm +++ b/gnu/packages/crypto.scm @@ -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. ;;; @@ -570,12 +571,19 @@ attacks than alternative functions such as @code{PBKDF2} or @code{bcrypt}.") (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 @@ -1287,3 +1295,38 @@ length extension attacks supporting MD4, MD5, RIPEMD-160, SHA-0, SHA-1, 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))) diff --git a/gnu/packages/databases.scm b/gnu/packages/databases.scm index 91cf4f7174..130726bb13 100644 --- a/gnu/packages/databases.scm +++ b/gnu/packages/databases.scm @@ -87,13 +87,16 @@ #: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) @@ -308,6 +311,183 @@ ElasticSearch server") (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") @@ -1024,6 +1204,8 @@ TIMESTAMP. It also supports storage of binary large objects, including pictures, sounds, or video.") (license (license:x11-style "file://COPYRIGHT")))) +(define-public postgresql-10 postgresql) + (define-public postgresql-11 (package (inherit postgresql) diff --git a/gnu/packages/dictionaries.scm b/gnu/packages/dictionaries.scm index f60b3f38d6..4e3c1e8803 100644 --- a/gnu/packages/dictionaries.scm +++ b/gnu/packages/dictionaries.scm @@ -53,14 +53,14 @@ (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 @@ (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") diff --git a/gnu/packages/diffoscope.scm b/gnu/packages/diffoscope.scm index 3e7ab7d7ba..cb835f1c58 100644 --- a/gnu/packages/diffoscope.scm +++ b/gnu/packages/diffoscope.scm @@ -72,7 +72,7 @@ (define-public diffoscope (package (name "diffoscope") - (version "151") + (version "161") (source (origin (method git-fetch) (uri (git-reference @@ -81,40 +81,16 @@ (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 @@ ;; 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 @@ ("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 @@ ("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 @@ install.") (define-public reprotest (package (name "reprotest") - (version "0.7.14") + (version "0.7.15") (source (origin (method git-fetch) @@ -250,7 +235,7 @@ install.") (file-name (git-file-name name version)) (sha256 (base32 - "12d07xq5zx5dfbsgakm6zcn7hgf0h9f5kvfjqkiyak4ix5aa6xkf")))) + "12lc1pb9d5h3blrzzx9nbqqj5bi9x23yj31fxafmk37803rl8a0m")))) (inputs `(("python-debian" ,python-debian) ("python-distro" ,python-distro) @@ -262,6 +247,7 @@ install.") ("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) diff --git a/gnu/packages/disk.scm b/gnu/packages/disk.scm index 235df8ce9e..34cfe0a56e 100644 --- a/gnu/packages/disk.scm +++ b/gnu/packages/disk.scm @@ -86,7 +86,8 @@ #: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 @@ systems. Output format is completely customizable.") (define-public f3 (package (name "f3") - (version "7.2") + (version "8.0") (source (origin (method git-fetch) @@ -491,11 +492,11 @@ systems. Output format is completely customizable.") (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 @@ -558,7 +559,7 @@ a card with a smaller capacity than stated.") (define-public duperemove (package (name "duperemove") - (version "0.11.1") + (version "0.11.2") (source (origin (method git-fetch) @@ -566,7 +567,7 @@ a card with a smaller capacity than stated.") (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,7 @@ a card with a smaller capacity than stated.") (modify-phases %standard-phases (delete 'configure)) ; no configure script #:make-flags (list (string-append "PREFIX=" %output) - "CC=gcc"))) + (string-append "CC=" ,(cc-for-target))))) (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 diff --git a/gnu/packages/django.scm b/gnu/packages/django.scm index 43339720f2..2dc99adac8 100644 --- a/gnu/packages/django.scm +++ b/gnu/packages/django.scm @@ -47,13 +47,13 @@ (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 @@ to the @dfn{don't repeat yourself} (DRY) principle.") (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) @@ -1013,14 +1013,14 @@ Django projects, which allows association of a number of tags with any (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 +1052,7 @@ provides features like a Web-browsable API and authentication policies.") ("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 +1193,7 @@ FileFields during tests.") (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 +1291,6 @@ to ElasticSearch.") (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))) diff --git a/gnu/packages/dns.scm b/gnu/packages/dns.scm index a27b670d8c..906333bb44 100644 --- a/gnu/packages/dns.scm +++ b/gnu/packages/dns.scm @@ -317,7 +317,7 @@ and BOOTP/TFTP for network booting of diskless machines.") (package (name "bind") ;; When updating, check whether isc-dhcp's bundled copy should be as well. - (version "9.16.7") + (version "9.16.8") (source (origin (method url-fetch) (uri (string-append @@ -325,7 +325,7 @@ and BOOTP/TFTP for network booting of diskless machines.") "/bind-" version ".tar.xz")) (sha256 (base32 - "1l8lhgnkj3fnl1101bs3pzj5gv2x5m9ahvrbyscsc9mxxc91hzcz")))) + "0ccdbqmpvnxlbrxjsx2w8ir4xh961svzcw7n87n8dglj6rb9r6wy")))) (build-system gnu-build-system) (outputs `("out" "utils")) (inputs @@ -760,16 +760,16 @@ served by AS112. Stub and forward zones are supported.") (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 @@ served by AS112. Stub and forward zones are supported.") (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 diff --git a/gnu/packages/education.scm b/gnu/packages/education.scm index d91c086581..1ed54e83ac 100644 --- a/gnu/packages/education.scm +++ b/gnu/packages/education.scm @@ -275,7 +275,7 @@ easy.") (define-public snap (package (name "snap") - (version "6.2.1") + (version "6.2.4") (source (origin (method git-fetch) @@ -284,7 +284,7 @@ easy.") (commit (string-append "v" version)))) (file-name (git-file-name name version)) (sha256 - (base32 "163pskgrssw0l6c73lrdx613fridnv0162lscl4xqx9sgg7hfaxh")))) + (base32 "05ahhwhswnlyg5wiywdj0df4bymcz1l5l4324gjcvpm2lgwxxnl5")))) (build-system trivial-build-system) (arguments `(#:modules ((guix build utils)) @@ -956,7 +956,7 @@ floating through space.") (define-public mdk (package (name "mdk") - (version "1.2.11") + (version "1.3.0") (source (origin (method url-fetch) @@ -964,7 +964,7 @@ floating through space.") version ".tar.gz")) (sha256 (base32 - "0rrac91ynya4jrhv14j9vvn21c5z80hi1zmmdxjb0d9zz6i7kjgb")))) + "0bhk3c82kyp8167h71vdpbcr852h5blpnwggcswqqwvvykbms7lb")))) (build-system gnu-build-system) (arguments `(#:configure-flags (list "--enable-gui=yes" "-with-readline=yes"))) @@ -979,7 +979,7 @@ floating through space.") ("ncurses" ,ncurses) ("pango" ,pango) ("readline" ,readline))) - (home-page "https://www.gnu.org/software/mdk/") + (home-page "https://www.gnu.org/software/mdk/manual/") (synopsis "Virtual development environment for Knuth's MIX") (description "GNU MDK is the Mix Development Kit, an emulation of the pedagogical diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm index da11838ea9..dfed78e434 100644 --- a/gnu/packages/emacs-xyz.scm +++ b/gnu/packages/emacs-xyz.scm @@ -35,7 +35,7 @@ ;;; Copyright © 2018 Sohom Bhattacharjee <soham.bhattacharjee15@gmail.com> ;;; Copyright © 2018, 2019 Mathieu Lirzin <mthl@gnu.org> ;;; Copyright © 2018, 2019, 2020 Pierre Neidhardt <mail@ambrevar.xyz> -;;; Copyright © 2018, 2019 Tim Gesthuizen <tim.gesthuizen@yahoo.de> +;;; Copyright © 2018, 2019, 2020 Tim Gesthuizen <tim.gesthuizen@yahoo.de> ;;; Copyright © 2018, 2019 Jack Hill <jackhill@jackhill.us> ;;; Copyright © 2018 Pierre-Antoine Rouby <pierre-antoine.rouby@inria.fr> ;;; Copyright © 2018 Alex Branham <alex.branham@gmail.com> @@ -81,6 +81,10 @@ ;;; Copyright © 2020 Niklas Eklund <niklas.eklund@posteo.net> ;;; Copyright © 2020 Marco Grassi <marco.au.grassi98@protonmail.com> ;;; Copyright © 2020 Tomás Ortín Fernández <tomasortin@mailbox.org> +;;; Copyright © 2020 Zhu Zihao <all_but_last@163.com> +;;; Copyright © 2020 Adam Kandur <rndd@tuta.io> +;;; Copyright © 2020 Tim Howes <timhowes@lavabit.com> +;;; Copyright © 2020 Noah Landis <noahlandis@posteo.net> ;;; ;;; This file is part of GNU Guix. ;;; @@ -400,6 +404,15 @@ configuration files, such as .gitattributes, .gitignore, and .git/config.") (sha256 (base32 "01ysb9pnscpmingay6njdywkqgj4hn5l5d9igsg3x7p7061jwwix")))) (build-system emacs-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-before 'install 'make-info + (lambda _ + (invoke "makeinfo" "--no-split" + "-o" "with-editor.info" "with-editor.texi")))))) + (native-inputs + `(("texinfo" ,texinfo))) (propagated-inputs `(("emacs-dash" ,emacs-dash))) (home-page "https://github.com/magit/with-editor") @@ -662,16 +675,16 @@ process, passing on the arguments as command line arguments.") (define-public emacs-minions (package (name "emacs-minions") - (version "0.3.2") - (source (origin - (method git-fetch) - (uri (git-reference - (url "https://github.com/tarsius/minions") - (commit (string-append "v" version)))) - (file-name (git-file-name name version)) - (sha256 - (base32 - "16rplpbfy3dnvqqgavk9jb1f1ihr5875zlixd4zxb1pqxs3jkgw3")))) + (version "0.3.4") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/tarsius/minions") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 "1rvsfg9aabvyzzxd38kvjwkm9675zcmrfhzj5x6wj0ba3n0k34q5")))) (build-system emacs-build-system) (propagated-inputs `(("emacs-dash" ,emacs-dash))) @@ -737,6 +750,30 @@ then only the color of the mode line changes when a window becomes in-/active.") clojure.walk and clojure.zip respectively.") (license license:gpl3+))) +(define-public emacs-typing + (let ((commit "a2ef25dde2d8eb91bd9c0c6164cb5208208647fa") + (revision "0")) + (package + (name "emacs-typing") + (version (git-version "1.1.4" revision commit)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/kensanata/typing") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "1dbh0srbf54lgd60ia79y9cfnq3kxlgw01qzdjs9mk3nfazzpgnv")))) + (build-system emacs-build-system) + (home-page "https://github.com/kensanata/typing/") + (synopsis "Emacs game where you have to type fast") + (description "The Typing of Emacs is a game for Emacs that +forces you to type words correctly as fast as possible, otherwise +you will die. The game builds the list of words from the active buffer.") + (license license:gpl2+)))) + (define-public emacs-graphql (package (name "emacs-graphql") @@ -767,6 +804,34 @@ GraphQL is a data query language and runtime designed and used to request and deliver data to mobile and web apps.") (license license:gpl3+))) +(define-public emacs-graphql-mode + ;; No tagged commit. + (let ((commit "9bed568ec86242dbe30bdbab324aa0eb2cd9bf08") + (revision "1")) + (package + (name "emacs-graphql-mode") + (version commit) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/davazp/graphql-mode") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 "0x9y7qq6y0zg8ncamzvk68ccmdyzh7xsj0xs0ykyl20d5wdpplj4")))) + (build-system emacs-build-system) + (home-page "https://github.com/davazp/graphql-mode") + (synopsis "Emacs mode to edit GraphQL schema and queries") + (description + "This package implements a major mode to edit GraphQL schemas and +query. The basic functionality includes syntax highlight and indentation. +Additionally, it is able to send GraphQL queries to an end-point URL. + +Files with the @file{.graphql} and @file{.gql} extensions are +automatically opened with this mode.") + (license license:gpl3+)))) + (define-public emacs-ghub (package (name "emacs-ghub") @@ -899,6 +964,33 @@ using the Buffers User Interface library. You can view, copy, and edit secrets from within Emacs.") (license license:gpl3+))) +(define-public emacs-solidity + ;; This commit fixes a spacing issue and adds new keywords. + (let ((commit "d166a86b83907e0cfd64c191e9dfce4b44a9843e") + (revision "0")) + (package + (name "emacs-solidity") + (version (git-version "0.1.10" revision commit)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/ethereum/emacs-solidity") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 "19hgvsrqch2vp49ag6m76bi5qxd20v95z0ib838rib9as15b17wq")))) + (build-system emacs-build-system) + (propagated-inputs + `(("emacs-company" ,emacs-company) + ("emacs-flycheck" ,emacs-flycheck))) + (home-page "https://github.com/ethereum/emacs-solidity") + (synopsis "Major mode for writing Solidity code") + (description + "This is a simple language mode for the Solidity language. It is +a constant work in progress as the language itself also progresses.") + (license license:gpl3+)))) + (define-public emacs-unpackaged-el (let ((commit "746801a677ada6cd6fa076e423aa0953779f3fad") (revision "3")) @@ -1287,7 +1379,7 @@ terminals.") (define-public emacs-reformatter (package (name "emacs-reformatter") - (version "0.4") + (version "0.6") (source (origin (method git-fetch) @@ -1296,8 +1388,7 @@ terminals.") (commit version))) (file-name (git-file-name name version)) (sha256 - (base32 - "0hhy6x1bkwlhdlarsgm06g3am4yh02yqv8qs34szpzgy53x84qah")))) + (base32 "1dfn7c3gpavpiwd73v2pasd8wd8b62dczhg9iv1cgh8vaqlsf92x")))) (build-system emacs-build-system) (home-page "https://github.com/purcell/reformatter.el") (synopsis "Define commands which run reformatters on the current buffer") @@ -1524,14 +1615,14 @@ incrementally confined in Isearch manner.") (define emacs-emms-print-metadata (package (name "emacs-emms-print-metadata") - (version "5.42") + (version "6.1") (source (origin (method url-fetch) (uri (string-append "https://elpa.gnu.org/packages/" "emms-" version ".tar")) (sha256 - (base32 "1khx1fvllrs6w9kxk12mp1hj309c90mc7lkq1vvlqlr7vd6zmnpj")))) + (base32 "1r1n8i59c6dsyqbphja7fnb1gg8rgbdqd4gdnda6ldq6jfippwlr")))) (build-system gnu-build-system) (arguments `(#:make-flags '("emms-print-metadata") @@ -1569,7 +1660,7 @@ light user interface.") (modify-phases %standard-phases (add-after 'unpack 'set-external-programs ;; Specify the absolute file names of the various programs - ;; so that everything works out-of-the-box. + ;; so that everything works out-of-the-box. (tinytag missing) (lambda* (#:key inputs outputs #:allow-other-keys) (let ((out (assoc-ref outputs "out")) (emms-print-metadata (assoc-ref inputs "emms-print-metadata")) @@ -1579,6 +1670,7 @@ light user interface.") (mpg321 (assoc-ref inputs "mpg321")) (mp3info (assoc-ref inputs "mp3info")) (mutagen (assoc-ref inputs "mutagen")) + (exiftool (assoc-ref inputs "perl-image-exiftool")) (opus (assoc-ref inputs "opus-tools"))) (emacs-substitute-variables "emms-player-mpg321-remote.el" ("emms-player-mpg321-remote-command" @@ -1612,6 +1704,9 @@ light user interface.") (substitute* "emms-tag-editor.el" (("\"mid3v2\"") (string-append "\"" mutagen "/bin/mid3v2\""))) + (substitute* "emms-info-exiftool.el" + (("\"exiftool\"") + (string-append "\"" exiftool "/bin/exiftool\""))) #t)))))) (inputs `(("emms-print-metadata" ,emacs-emms-print-metadata) @@ -1621,6 +1716,7 @@ light user interface.") ("mpg321" ,mpg321) ("mp3info" ,mp3info) ("mutagen" ,python-mutagen) + ("perl-image-exiftool" ,perl-image-exiftool) ("opus-tools" ,opus-tools))))) (define-public emacs-emms-mode-line-cycle @@ -1803,7 +1899,7 @@ is set.") (define-public emacs-ctrlf (package (name "emacs-ctrlf") - (version "1.1") + (version "1.2") (source (origin (method git-fetch) @@ -1812,7 +1908,7 @@ is set.") (commit (string-append "v" version)))) (file-name (git-file-name name version)) (sha256 - (base32 "1ffcjf0ff0748gqipkklz6jmcj4f3blgzdcax93ql9ws8bmvlsdc")))) + (base32 "1f0k3432brc96am6az6xr1nks1vacqzixhdgwfn2xklb8if9a5xi")))) (build-system emacs-build-system) (home-page "https://github.com/raxod502/ctrlf/") (synopsis "Single-buffer text search in Emacs") @@ -1955,14 +2051,14 @@ as a library for other Emacs packages.") (define-public emacs-auctex (package (name "emacs-auctex") - (version "12.2.5") + (version "12.3.1") (source (origin (method url-fetch) (uri (string-append "https://elpa.gnu.org/packages/" "auctex-" version ".tar")) (sha256 - (base32 "1288n0yna36g2h15gk34gvllifx4qms48355j8l2cafabvkffiph")))) + (base32 "0kn48mmsvp1yp8fjcl4lriymhyskv5s70wscmf596xf56s7mqas4")))) (build-system emacs-build-system) ;; We use 'emacs' because AUCTeX requires dbus at compile time ;; ('emacs-minimal' does not provide dbus). @@ -3560,7 +3656,7 @@ result.") (define-public emacs-rg (package (name "emacs-rg") - (version "1.8.1") + (version "2.0.2") (source (origin (method git-fetch) @@ -3569,7 +3665,7 @@ result.") (commit version))) (file-name (git-file-name name version)) (sha256 - (base32 "0k7x5z7mh9flwih35cqy8chs54rack3nswdcpw5wcpgv6xim227y")))) + (base32 "15qcnsnbni0aincm9pxpfhff3c5ivd5zs2s2qchjzhcn4kdm6kxr")))) (build-system emacs-build-system) (arguments '(#:phases @@ -3583,6 +3679,7 @@ result.") ("(defcustom rg-executable" (which "rg"))))))))) (propagated-inputs `(("emacs-s" ,emacs-s) + ("emacs-transient" ,emacs-transient) ("emacs-wgrep" ,emacs-wgrep))) (inputs `(("ripgrep" ,ripgrep))) @@ -4846,10 +4943,45 @@ front-ends. Company comes with many back-ends, e.g., @code{company-elisp}. These are distributed in separate files and can be used individually.") (license license:gpl3+))) +(define-public emacs-company-box + ;; There is no release yet. Version is extracted from the main + ;; file. + (let ((version "0.0.1") + (revision "0") + (commit "be37a9a30dc112ab172af21af694e2cb04a74f85")) + (package + (name "emacs-company-box") + (version (git-version version revision commit)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/sebastiencs/company-box") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 "13fgmdy51gqdwijqfvb784pirx4lgva0y7ysi0c3fcx8f82cdj59")))) + (build-system emacs-build-system) + (propagated-inputs + `(("emacs-company" ,emacs-company) + ("emacs-dash" ,emacs-dash) + ("emacs-frame-local" ,emacs-frame-local))) + (home-page "https://github.com/sebastiencs/company-box") + (synopsis "Company front-end with icons") + (description + "Company box is a Company front-end. It supports different +colors for different backends, associates icons to functions, +variables... and their backends, and displays candidate's +documentation. It is not limited by the current window size or +buffer's text properties. + +This package is not compatible with a TTY.") + (license license:gpl3+)))) + (define-public emacs-company-posframe (let ((version "0.1.0") - (revision "1") - (commit "67d899502384fb9ab2870aba0af41523dea7b64f")) + (revision "2") + (commit "4bfb8bccef4b64479f4147de6bf6fbd05df2a67e")) (package (name "emacs-company-posframe") (version (git-version version revision commit)) @@ -4861,7 +4993,7 @@ These are distributed in separate files and can be used individually.") (file-name (git-file-name name version)) (sha256 (base32 - "051smlvz1siwglsd9k9l0m20mygrx4niflmyshha0064287aysxr")))) + "0k19gkh8xbap4j1jjqw6lnkp1v2q76fz3ryrns7kvbzmca3y5599")))) (build-system emacs-build-system) (propagated-inputs `(("emacs-company" ,emacs-company) @@ -6589,7 +6721,7 @@ for Ivy and Company that make use of the library.") (define-public emacs-selectrum (package (name "emacs-selectrum") - (version "2.0") + (version "3.0") (source (origin (method git-fetch) @@ -6598,7 +6730,7 @@ for Ivy and Company that make use of the library.") (commit (string-append "v" version)))) (file-name (git-file-name name version)) (sha256 - (base32 "08wm4ybidn8g7sy5a009lnsm0f1p7a3jfzpzxnzylvnyrmyhi3y4")))) + (base32 "0j10yxlikyg7qxcmp4fnddyd5nc3hlz080d1zcbijq020a08k86g")))) (build-system emacs-build-system) (home-page "https://github.com/raxod502/selectrum/") (synopsis "Incremental narrowing in Emacs") @@ -6682,27 +6814,25 @@ regardless of @code{highlight-symbol-idle-delay}. (license license:gpl2+)))) (define-public emacs-symbol-overlay - (let ((commit "e40a7c407f24158c45eaa5f54ed41f5e416a51dc") - (revision "1")) - (package - (name "emacs-symbol-overlay") - (version (git-version "4.1" revision commit)) - (source - (origin - (method git-fetch) - (uri (git-reference - (url "https://github.com/wolray/symbol-overlay") - (commit commit))) - (file-name (git-file-name name version)) - (sha256 - (base32 "0ibz3392d3jw1l8006h9kf8s7bg6vl7jc92bmqc031a433009ic7")))) - (build-system emacs-build-system) - (home-page "https://github.com/wolray/symbol-overlay") - (synopsis "Highlight symbols and perform various search operations on them") - (description - "This package provides functions for highlighting and navigating + (package + (name "emacs-symbol-overlay") + (version "4.2") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/wolray/symbol-overlay") + (commit version))) + (file-name (git-file-name name version)) + (sha256 + (base32 "10n0871xzycifyqp73xnbqmrgy60imlb26yhm3p6vfj3d84mg1b2")))) + (build-system emacs-build-system) + (home-page "https://github.com/wolray/symbol-overlay") + (synopsis "Highlight symbols and perform various search operations on them") + (description + "This package provides functions for highlighting and navigating between symbols.") - (license license:gpl3+)))) + (license license:gpl3+))) (define-public emacs-hl-todo (package @@ -7179,33 +7309,29 @@ use it, call @code{M-x ivy-yasnippet} (but make sure you have enabled (license license:gpl3+)))) (define-public emacs-ivy-rich - ;; The latest release version has a small mistake that has since been fixed, - ;; so we use a more recent commit. - (let ((commit "7a667b135983a1f3ad33d6db8514638e2a3bdfb3") - (revision "2")) - (package - (name "emacs-ivy-rich") - (version (git-version "0.1.4" revision commit)) - (source - (origin - (method git-fetch) - (uri (git-reference - (url "https://github.com/Yevgnen/ivy-rich") - (commit commit))) - (file-name (git-file-name name version)) - (sha256 - (base32 "1v5j6pak2j1wjw19y7rx9rhxif0bj2h47xyl2knfcl6fi4qiqm9y")))) - (build-system emacs-build-system) - (propagated-inputs - `(("emacs-ivy" ,emacs-ivy))) - (home-page "https://github.com/Yevgnen/ivy-rich") - (synopsis "More friendly interface for @code{ivy}") - (description - "This package extends @code{ivy} by showing more information in the -minibuffer for each candidate. It adds columns showing buffer modes, file -sizes, docstrings, etc. If @code{emacs-all-the-icons} is installed, it can -show icons as well.") - (license license:gpl3+)))) + (package + (name "emacs-ivy-rich") + (version "0.1.6") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/Yevgnen/ivy-rich") + (commit version))) + (file-name (git-file-name name version)) + (sha256 + (base32 "1ra18v6lgz3m6asm6d5b92zn1x22yiz4cwxd9b54dnvwi11121m7")))) + (build-system emacs-build-system) + (propagated-inputs + `(("emacs-ivy" ,emacs-ivy))) + (home-page "https://github.com/Yevgnen/ivy-rich") + (synopsis "More friendly interface for @code{ivy}") + (description + "This package extends Ivy by showing more information in the minibuffer +for each candidate. It adds columns showing buffer modes, file sizes, +docstrings, etc. If @code{emacs-all-the-icons} is installed, it can show +icons as well.") + (license license:gpl3+))) (define-public emacs-avy (package @@ -7269,7 +7395,7 @@ highlighted. Pressing that character will switch to that window.") ;; There is no proper release. The base version is extracted from the ;; "Version" keyword in the main file. (let ((revision "1") - (commit "62c2846bbe95b0a73e996c75e4a644d05f57aaaa")) + (commit "62c2846bbe95b0a73e996c75e4a644d05f57aaaa")) (package (name "emacs-windsize") (version (git-version "0.1" revision commit)) @@ -7279,6 +7405,7 @@ highlighted. Pressing that character will switch to that window.") (uri (git-reference (url "https://github.com/grammati/windsize") (commit commit))) + (file-name (git-file-name name version)) (sha256 (base32 "13kfrmv3vmkfanxv9nym5v43hx5p7xkgqmx65zcxh4gcbaham1mi")))) (build-system emacs-build-system) @@ -7499,7 +7626,7 @@ It is recommended to use @code{clojure-mode} with Paredit or Smartparens.") (define-public emacs-epl (package (name "emacs-epl") - (version "0.8") + (version "0.9") (source (origin (method git-fetch) @@ -7508,7 +7635,7 @@ It is recommended to use @code{clojure-mode} with Paredit or Smartparens.") (commit version))) (file-name (git-file-name name version)) (sha256 - (base32 "0sjxd5y5hxhrbgfkpwx6m724r3841b53hgc61a0g5zwispw5pmrr")))) + (base32 "0d3z5z90ln8ipk1yds1n1p8fj9yyh2kpspqjs7agl38indra3nb4")))) (build-system emacs-build-system) (home-page "https://github.com/cask/epl") (synopsis "Emacs Package Library") @@ -7786,23 +7913,19 @@ E-Prime forbids the use of the \"to be\" form to strengthen your writing.") (license license:gpl3+)))) (define-public emacs-julia-mode - ;; XXX: Upstream version remained stuck at 0.3. See - ;; <https://github.com/JuliaEditorSupport/julia-emacs/issues/46>. - (let ((commit "115d4dc8a07445301772da8376b232fa8c7168f4") - (revision "1")) (package (name "emacs-julia-mode") - (version (string-append "0.3-" revision "." (string-take commit 8))) + (version "0.4") (source (origin (method git-fetch) (uri (git-reference (url "https://github.com/JuliaEditorSupport/julia-emacs") - (commit commit))) + (commit version))) (file-name (git-file-name name version)) (sha256 (base32 - "1is4dcv6blslpzbjcg8l2jpxi8xj96q4cm0nxjxsyswpm8bw8ki0")))) + "1w131jb9mhvyjxa0p93iwfhzidgbcs6b8i6jg79yisqb9wchik99")))) (build-system emacs-build-system) (arguments `(#:tests? #t @@ -7813,7 +7936,7 @@ E-Prime forbids the use of the \"to be\" form to strengthen your writing.") (synopsis "Major mode for Julia") (description "This Emacs package provides a mode for the Julia programming language.") - (license license:expat)))) + (license license:expat))) (define-public emacs-smex (package @@ -9365,8 +9488,14 @@ news items, openrc and runscripts.") (lambda _ (substitute* "evil-test-helpers.el" (("\\(undo-tree-mode 1\\)") "")) - #t))))) + #t)) + (add-before 'install 'make-info + (lambda _ + (with-directory-excursion "doc/build/texinfo" + (invoke "makeinfo" "--no-split" + "-o" "evil.info" "evil.texi"))))))) (build-system emacs-build-system) + (native-inputs `(("texinfo" ,texinfo))) (home-page "https://github.com/emacs-evil/evil") (synopsis "Extensible Vi layer for Emacs") (description @@ -9376,8 +9505,8 @@ extensions.") (license license:gpl3+))) (define-public emacs-evil-collection - (let ((commit "c68aed6a9694836602ada224160bc5b4c0a37919") - (revision "15")) + (let ((commit "910c1f4507d91a4790e26ddccf73ad1e5a12f68d") + (revision "17")) (package (name "emacs-evil-collection") (version (git-version "0.0.3" revision commit)) @@ -9389,7 +9518,7 @@ extensions.") (file-name (git-file-name name version)) (sha256 (base32 - "1xhrzl0vy540a572f9fnh5a039bpqsrkv0kh6bqw0rki70w7x0xx")))) + "0bkx1bwgw1n3fbd95z8i32i1yvv8w8bgzsxsybm1lcgv1v23qn8l")))) (build-system emacs-build-system) (propagated-inputs `(("emacs-evil" ,emacs-evil) @@ -11242,6 +11371,30 @@ constructs.") configuration of Chinese fonts.") (license license:gpl2+))) +(define-public emacs-csharp-mode + (package + (name "emacs-csharp-mode") + (version "0.10.0") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/josteink/csharp-mode") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 "0vwkbla2gkfa9dzxfvrvr7hd2z16769iwbycl7k6l701dnwli1fw")))) + (build-system emacs-build-system) + (home-page "https://github.com/josteink/csharp-mode") + (synopsis "Major mode for C# code") + (description + "This is a C# editing mode for Emacs, based on CC mode. It handles +syntax coloring, indentation, insertion of matched pairs of curly braces and +documentation generation. In addition, it provides menu-based navigation +using Imenu, and Compilation mode support for MSBuild, devenv and xbuild.") + ;; XXX: Project switched to GPL3+ after 0.10.0 release. + (license license:gpl2+))) + (define-public emacs-php-mode (package (name "emacs-php-mode") @@ -11341,14 +11494,14 @@ and cangjie.") (define-public emacs-posframe (package (name "emacs-posframe") - (version "0.8.1") + (version "0.8.2") (source (origin (method url-fetch) (uri (string-append "https://elpa.gnu.org/packages/" "posframe-" version ".el")) (sha256 - (base32 "01s9lc1liaxfpnfw183a320blp7cv6qg8gh2r22w4wkzi1yrcbb7")))) + (base32 "1yrk2bnlx5bpkjkzqialf0q4bdp9c5pipnvj3zsb5hbjni24x0yb")))) (build-system emacs-build-system) ;; emacs-minimal does not include the function font-info. (arguments @@ -11747,7 +11900,7 @@ pressed simultaneously or a single key quickly pressed twice.") (define-public emacs-evil-surround (package (name "emacs-evil-surround") - (version "1.1.0") + (version "1.1.1") (source (origin (method git-fetch) @@ -11756,7 +11909,7 @@ pressed simultaneously or a single key quickly pressed twice.") (commit version))) (file-name (git-file-name name version)) (sha256 - (base32 "15v2spg5rhddr97pxjfvxj36sh7knp753a9qpw8v5zjnp65kf2kn")))) + (base32 "1gfgmr4909m36gknprcam6q4rkcqfbi6w43ky7x6jnlmgb6mxggg")))) (build-system emacs-build-system) (propagated-inputs `(("emacs-evil" ,emacs-evil))) @@ -11946,7 +12099,7 @@ running tests easier.") (define-public emacs-disable-mouse (package (name "emacs-disable-mouse") - (version "0.2") + (version "0.3") (source (origin (method git-fetch) @@ -11955,7 +12108,7 @@ running tests easier.") (commit version))) (file-name (git-file-name name version)) (sha256 - (base32 "1v1y5hf6k6ng7xsvgb27nh740d14m6l4krr0paccda8zgm4mw357")))) + (base32 "0l6mai68ns3qw3rlvjvzsnqwdy7bxqiy0vdwflq0l1plxb1vazyc")))) (build-system emacs-build-system) (home-page "https://github.com/purcell/disable-mouse") (synopsis "Disable mouse commands globally") @@ -13136,6 +13289,30 @@ literate programming tools for exporting, weaving and tangling.") "Edit YAML files for Ansible containing embedded Jinja2 templating.") (license license:gpl3+)))) +(define-public emacs-powershell + ;; Tagged branch 0.1 is outdated (2015). + (let ((revision "0") + (commit "d1b3f95669343399f199f291ef76c09a0ede5e60")) + (package + (name "emacs-powershell") + (build-system emacs-build-system) + (version (git-version "0.3" revision commit)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/jschaf/powershell.el") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 "1cxhzaaig88zhylyycvb3849r85j1ijqklnh9zbqsfl2zhpb0g5c")))) + (home-page "https://github.com/jschaf/powershell.el") + (synopsis "Emacs mode for editing PowerShell scripts") + (description + "Powershell is an Emacs major mode for editing and running +Microsoft PowerShell files.") + (license license:gpl3+)))) + (define-public emacs-polymode-org (package (name "emacs-polymode-org") @@ -13218,7 +13395,7 @@ Features: (define-public emacs-evil-matchit (package (name "emacs-evil-matchit") - (version "2.3.4") + (version "2.3.9") (source (origin (method git-fetch) @@ -13227,7 +13404,7 @@ Features: (commit version))) (file-name (git-file-name name version)) (sha256 - (base32 "1nflkmx08n3ya5vaipy1xg19hnqcp6f7ddsx9xjh5gl6ix2iz0az")))) + (base32 "1jk5qkqz3c4fnh6d2y889k5ycz8ipbkmzk4i8bl86xv9rhis1pv9")))) (build-system emacs-build-system) (propagated-inputs `(("emacs-evil" ,emacs-evil))) @@ -13997,31 +14174,6 @@ match and total match information in the mode-line in various search modes.") "This package provides an Emacs Lisp interface for PostgreSQL.") (license license:gpl3+)))) -(define-public emacs-cl-generic - (package - (name "emacs-cl-generic") - (version "0.3") - (source - (origin - (method url-fetch) - (uri (string-append "https://elpa.gnu.org/packages/cl-generic-" - version ".el")) - (sha256 - (base32 - "0vb338bhjpsnrf60qgxny4z5rjrnifahnrv9axd4shay89d894zq")))) - (build-system emacs-build-system) - ;; Byte compilation of the autoload file fails. - (arguments - `(#:phases (modify-phases %standard-phases - (delete 'enable-autoloads-compilation)))) - (home-page "https://elpa.gnu.org/packages/seq.html") - (synopsis - "Forward @code{cl-generic} compatibility for Emacs before version 25") - (description "This package provides a subset of the features of the -@code{cl-generic} package introduced in Emacs-25, for use on previous -@code{emacsen}.") - (license license:gpl3+))) - (define-public emacs-finalize (package (name "emacs-finalize") @@ -14036,8 +14188,6 @@ match and total match information in the mode-line in various search modes.") (sha256 (base32 "1gvlm4i62af5jscwz0jccc8ra0grprxpg2rlq91d5nn8dn5lpy79")))) (build-system emacs-build-system) - (propagated-inputs - `(("emacs-cl-generic" ,emacs-cl-generic))) (home-page "https://github.com/skeeto/elisp-finalize") (synopsis "Finalizers for Emacs Lisp") (description @@ -14843,7 +14993,7 @@ and @code{erc-send-modify-hook} to download and show images.") (define-public emacs-list-utils (package (name "emacs-list-utils") - (version "0.4.4") + (version "0.4.6") (source (origin (method git-fetch) @@ -14852,7 +15002,7 @@ and @code{erc-send-modify-hook} to download and show images.") (commit (string-append "v" version)))) (file-name (git-file-name name version)) (sha256 - (base32 "0ql159v7sxs33yh2l080kchrj52vk34knz50cvqi3ykpb7djg3sz")))) + (base32 "07hbz2md52ccy95gv4d5n6szrfmpfqf3w4kwqdg2cf54c7kgf7hw")))) (build-system emacs-build-system) (home-page "https://github.com/rolandwalker/list-utils") (synopsis "List-manipulation utility functions") @@ -16353,7 +16503,7 @@ yasnippet fields and mirrors to be.") (description "@code{highlight-numbers-mode} provides a minor mode for syntax highlighting of numeric literals in source code. -It s customizable: it's easy to add or redefine what exactly consitutes a +It s customizable: it's easy to add or redefine what exactly constitutes a \"number\" in given major mode. See @code{highlight-numbers-modelist}.") (license license:gpl3+))) @@ -16430,27 +16580,32 @@ decreasing the default font size in all GUI Emacs frames.") (license license:gpl3+)))) (define-public emacs-mixed-pitch - (package - (name "emacs-mixed-pitch") - (version "1.0.1") - (source - (origin - (method git-fetch) - (uri (git-reference - (url "https://gitlab.com/jabranham/mixed-pitch.git") - (commit version))) - (file-name (git-file-name name version)) - (sha256 - (base32 "1458sy5b6bis1i0k23jdqk6hfqg0ghk637r3ajql2g19ym48rf58")))) - (build-system emacs-build-system) - (home-page "https://gitlab.com/jabranham/mixed-pitch") - (synopsis "Mix variable- and fixed-pitch fonts in the same Emacs buffer") - (description - "@code{mixed-pitch-mode} is a minor mode that enables mixing + ;; This commit contains fixes for visual alignment of line numbers and + ;; org-indent-mode. + (let ((commit "d305108f9520e196b533f05d1dcc284cf535faaf") + (tag "1.1.0") + (revision "0")) + (package + (name "emacs-mixed-pitch") + (version (git-version tag revision commit)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://gitlab.com/jabranham/mixed-pitch.git") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 "0yx89is3g2m8af8vfsz5rgjmfmx7mfrxlffb1x6y4b8lh9l0k6dj")))) + (build-system emacs-build-system) + (home-page "https://gitlab.com/jabranham/mixed-pitch") + (synopsis "Mix variable- and fixed-pitch fonts in the same Emacs buffer") + (description + "@code{mixed-pitch-mode} is a minor mode that enables mixing variable-pitch and fixed-pitch fonts in the same buffer. The list @code{mixed-pitch-fixed-pitch-faces} defines the faces that are kept fixed-pitch,everything else becomes variable-pitch.") - (license license:gpl3+))) + (license license:gpl3+)))) (define-public emacs-visual-regexp (package @@ -18099,7 +18254,8 @@ server with @code{M-x pinentry-start}.") (home-page "https://www.emacswiki.org/emacs/SoLong") (synopsis "Improve performance in files with long lines") (description "This package improves the performance of Emacs when -viewing files with long lines.") +viewing files with long lines. It is included as standard with Emacs 27 or +later.") (license license:gpl3+)))) (define-public emacs-github-review @@ -18456,7 +18612,7 @@ docstring of the thing at point.") (define-public emacs-rust-mode (package (name "emacs-rust-mode") - (version "0.4.0") + (version "0.5.0") (source (origin (method git-fetch) (uri (git-reference @@ -18465,7 +18621,7 @@ docstring of the thing at point.") (file-name (git-file-name name version)) (sha256 (base32 - "0bcrklyicxh032rrp585rl5mxd26nb61dp6r5bl935rlcmxzsczh")))) + "1f3nnl0d7p9b5cv1bpm0hj898qmr2psxfvmqr61bh684z7fgc045")))) (build-system emacs-build-system) (arguments `(#:phases @@ -18743,6 +18899,47 @@ News homepage.") can be queued at any time.") (license license:unlicense)))) +(define-public emacs-ytdl + (package + (name "emacs-ytdl") + (version "1.3.5") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://gitlab.com/tuedachu/ytdl") + (commit version))) + (file-name (git-file-name name version)) + (sha256 + (base32 "1xv93ny942gha1ipic5r6z4icjsb7src7ssdck9983kks3zacjk7")))) + (build-system emacs-build-system) + (inputs + `(("youtube-dl" ,youtube-dl))) + (propagated-inputs + `(("async" ,emacs-async) + ("transient" ,emacs-transient))) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-after 'unpack 'configure + (lambda* (#:key inputs #:allow-other-keys) + (let ((youtube-dl (assoc-ref inputs "youtube-dl"))) + ;; .el is read-only in git. + (make-file-writable "ytdl.el") + ;; Specify the absolute file names of the various programs so + ;; that everything works out-of-the-box. + (emacs-substitute-variables "ytdl.el" + ("ytdl-command" (string-append youtube-dl "/bin/youtube-dl"))) + #t)))))) + (home-page "https://gitlab.com/tuedachu/ytdl") + (synopsis "Emacs interface for youtube-dl") + (description + "This package manages a video download queue for @command{youtube-dl}, +which serves as the back end. New videos can be queued at any time. All +youtube-dl backends are supported. It is possible to create download profiles +depending on the downloaded URL.") + (license license:gpl3+))) + (define-public emacs-org-web-tools (package (name "emacs-org-web-tools") @@ -19361,6 +19558,34 @@ functions to ensure they are called with the right arguments during testing.") too ambiguous and navigation in the result buffer.") (license license:gpl3+)))) +(define-public emacs-frame-local + ;; There is no release yet. Version is extracted from the main + ;; file. + (let ((version "0.0.1") + (revision "0") + (commit "7ee1106c3bcd4022f48421f8cb1ef4f995da816e")) + (package + (name "emacs-frame-local") + (version (git-version version revision commit)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/sebastiencs/frame-local") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 "0zfxsxdh3bd3fd566zl0byp13p5b8f4cgkwl637imvarvahczigp")))) + (build-system emacs-build-system) + (home-page "https://github.com/sebastiencs/frame-local") + (synopsis "Access variables local to an Emacs frame") + (description + "This packages allows setting and accessing variables local to +an Emacs frame. Note that the variables created with this package do +not have any relation with variables defined by @code{defvar}, +@code{defconst}, etc.") + (license license:gpl3+)))) + (define-public emacs-frame-purpose (package (name "emacs-frame-purpose") @@ -19709,7 +19934,7 @@ to open SQLite databases.") (define-public emacs-nix-mode (package (name "emacs-nix-mode") - (version "1.4.4") + (version "1.4.5") (source (origin (method git-fetch) @@ -19718,7 +19943,7 @@ to open SQLite databases.") (commit (string-append "v" version)))) (file-name (git-file-name name version)) (sha256 - (base32 "19f36kl00pxm2a18hn4cdsdvxlfsdx1pnnm6s6zxd8nw6y8ynvn0")))) + (base32 "1bqlhkxg0faddhvxx909dq46dxdxk4mdyhdpww92dmzgxdpq38sx")))) (build-system emacs-build-system) (inputs `(("emacs-company" ,emacs-company) @@ -20203,30 +20428,28 @@ constant expressions.") (license license:gpl3+))) (define-public emacs-dockerfile-mode - ;; Latest upstream release is too old. - (let ((commit "ed73e82dcc636dad00d1a8c3b32a49136d25ee60")) - (package - (name "emacs-dockerfile-mode") - (version (git-version "1.2" "2" commit)) - (source - (origin - (method git-fetch) - (uri (git-reference - (url "https://github.com/spotify/dockerfile-mode") - (commit commit))) - (file-name (git-file-name name version)) - (sha256 - (base32 - "0lri2rnx4lr23vqfphkpq39cd4xfgzkvz1xsz7ccdvl4qj0k7fdl")))) - (build-system emacs-build-system) - (propagated-inputs - `(("emacs-s" ,emacs-s))) - (home-page "https://github.com/spotify/dockerfile-mode") - (synopsis "Major mode for editing Dockerfile") - (description - "This package provides a major mode @code{dockerfile-mode} for use with + (package + (name "emacs-dockerfile-mode") + (version "1.3") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/spotify/dockerfile-mode") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "1br73dsls42fn4rwagljkpa3l4wwj6f7jxfn3gmgl6c54z81av3v")))) + (build-system emacs-build-system) + (propagated-inputs + `(("emacs-s" ,emacs-s))) + (home-page "https://github.com/spotify/dockerfile-mode") + (synopsis "Major mode for editing Dockerfile") + (description + "This package provides a major mode @code{dockerfile-mode} for use with the standard @code{Dockerfile} file format.") - (license license:asl2.0)))) + (license license:asl2.0))) (define-public emacs-lsp-mode (package @@ -20259,26 +20482,25 @@ Projectile.") (license license:gpl3+))) (define-public emacs-pfuture - (let ((commit "368254ee30692c709400db413c347e18e76a8a55")) - (package - (name "emacs-pfuture") - (version (git-version "1.6" "1" commit)) - (source (origin - (method git-fetch) - (uri (git-reference - (url "https://github.com/Alexander-Miller/pfuture") - (commit commit))) - (file-name (git-file-name name version)) - (sha256 - (base32 - "096raqpjx84njws85r7pqq1wi9w9bjwkr0ga1mbbhlna1mfn3mg4")))) - (build-system emacs-build-system) - (home-page - "https://github.com/Alexander-Miller/pfuture") - (synopsis "Simple wrapper around asynchronous processes for Emacs") - (description "This package provides a simple wrapper around asynchronous + (package + (name "emacs-pfuture") + (version "1.9") + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/Alexander-Miller/pfuture") + (commit version))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "1chpin5277vbl2xvsl04pzzk7a9dbcvclibm2496gz6yvd19pwsf")))) + (build-system emacs-build-system) + (home-page + "https://github.com/Alexander-Miller/pfuture") + (synopsis "Simple wrapper around asynchronous processes for Emacs") + (description "This package provides a simple wrapper around asynchronous processes for Emacs") - (license license:gpl3+)))) + (license license:gpl3+))) (define-public emacs-treemacs (package @@ -21020,11 +21242,11 @@ compatible with Emacs' shell modes.") (license license:gpl3+)))) (define-public emacs-vdiff - (let ((commit "09e15fc932bfd2febe1d4a65780a532394562b07") - (revision "1")) + ;; There is no proper tag, but the commit below matches the version bump. + (let ((commit "007e44be19d068fd6b49874b6e9b8df8b1f552bd")) (package (name "emacs-vdiff") - (version (git-version "0.2.3" revision commit)) + (version "0.2.4") (source (origin (method git-fetch) @@ -21033,8 +21255,7 @@ compatible with Emacs' shell modes.") (commit commit))) (file-name (git-file-name name version)) (sha256 - (base32 - "1gvqi5l4zs872nn4pmj603aza09d81qad2rgijzv268lif8z34db")))) + (base32 "197xrwph1llrzjgkhlvagiwdgfp68pb45w5afg89ndahpqc2725s")))) (build-system emacs-build-system) (propagated-inputs `(("emacs-hydra" ,emacs-hydra))) @@ -21045,8 +21266,9 @@ compatible with Emacs' shell modes.") "-f" "ert-run-tests-batch-and-exit"))) (home-page "https://github.com/justbur/emacs-vdiff/") (synopsis "Frontend for diffing based on vimdiff") - (description "This package permits comparisons of two or three buffers -based on diff output.") + (description + "This package permits comparisons of two or three buffers based on diff +output.") (license license:gpl3+)))) (define-public emacs-vdiff-magit @@ -21548,7 +21770,7 @@ through Dash docsets.") (define-public emacs-calibredb (package (name "emacs-calibredb") - (version "2.6.0") + (version "2.7.0") (source (origin (method git-fetch) @@ -21557,7 +21779,7 @@ through Dash docsets.") (commit version))) (file-name (git-file-name name version)) (sha256 - (base32 "132afbbh4km2cbll46i6bpksvin0ncgfy782g4nkfjmwjaqh3d5l")))) + (base32 "1w3kz9iny72gk54jdafz8sy5sv6hnpm3rw4fn1r8aznx4p00f9dy")))) (build-system emacs-build-system) (propagated-inputs `(("emacs-dash" ,emacs-dash) @@ -21669,14 +21891,14 @@ well as an option for visually flashing evaluated s-expressions.") (define-public emacs-tramp (package (name "emacs-tramp") - (version "2.4.4.2") + (version "2.4.4.3") (source (origin (method url-fetch) (uri (string-append "https://elpa.gnu.org/packages/" "tramp-" version ".tar")) (sha256 - (base32 "16c8x5d803hjql0z88lidyx3zrhxlpjphdpzn3ppzz3wrsxsv8rf")))) + (base32 "0ms739a61d7jkq0lkf4dxql6kjrq435d6ds079bb1fpzglbnqkym")))) (build-system emacs-build-system) (arguments `(#:emacs ,emacs ;need D-Bus @@ -21855,7 +22077,7 @@ and article extracts for Wikipedia.") (define-public emacs-webfeeder (package (name "emacs-webfeeder") - (version "1.0.0") + (version "1.1.0") (source (origin (method url-fetch) @@ -21865,7 +22087,7 @@ and article extracts for Wikipedia.") ".tar")) (sha256 (base32 - "06y5vxw9m6pmbrzb8v2i3w9dnhgqxz06vyx1knmgi9cczlrj4a64")))) + "09wz6v58xc86hdnz6g54ckaxkm6844yyk2ffbxh4s5sdvgqrzdd8")))) (build-system emacs-build-system) (home-page "https://gitlab.com/Ambrevar/emacs-webfeeder") (synopsis "Build RSS and Atom webfeeds from HTML files") @@ -22379,14 +22601,14 @@ federated microblogging social network.") (define-public emacs-ebdb (package (name "emacs-ebdb") - (version "0.6.19") + (version "0.6.20") (source (origin (method url-fetch) (uri (string-append "https://elpa.gnu.org/packages/" "ebdb-" version ".tar")) (sha256 - (base32 "0ch5vzhxa8h5v75lg3blsmrln497lr3ylivx6w28aiyb6cv5016l")))) + (base32 "1rhmnz2g4nmk893gzxm1hfwqf5nan20yss5mxilfpza2jh4368h3")))) (build-system emacs-build-system) (home-page "https://github.com/girzel/ebdb") (synopsis "EIEIO port of BBDB, Emacs's contact-management package") @@ -22707,15 +22929,24 @@ Emacs that integrate with major modes like Org-mode.") (define-public emacs-modus-operandi-theme (package (name "emacs-modus-operandi-theme") - (version "0.12.0") + (version "0.13.0") (source (origin - (method url-fetch) - (uri (string-append "https://elpa.gnu.org/packages/" - "modus-operandi-theme-" version ".el")) + (method git-fetch) + (uri (git-reference + (url "https://gitlab.com/protesilaos/modus-themes") + (commit version))) + (file-name (git-file-name name version)) (sha256 - (base32 "1mllyysn701qfnglxs7n2f6mrzrz55v9hcwspvafc6fl2blr393y")))) + (base32 "0i6n3pzrmlgabsijy6z0hhs71q7g99yagwr2m33lr30skqc9rvdn")))) (build-system emacs-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-after 'unpack 'remove-other-theme + (lambda _ + (delete-file "modus-vivendi-theme.el") + #t))))) (home-page "https://gitlab.com/protesilaos/modus-themes") (synopsis "Accessible light theme (WCAG AAA)") (description @@ -22728,15 +22959,24 @@ standard. This is the highest standard of its kind.") (define-public emacs-modus-vivendi-theme (package (name "emacs-modus-vivendi-theme") - (version "0.12.0") + (version "0.13.0") (source (origin - (method url-fetch) - (uri (string-append "https://elpa.gnu.org/packages/" - "modus-vivendi-theme-" version ".el")) + (method git-fetch) + (uri (git-reference + (url "https://gitlab.com/protesilaos/modus-themes") + (commit version))) + (file-name (git-file-name name version)) (sha256 - (base32 "01f6z5xjnmki1k9m83jwva42lxidb31pdpwm4wpxjzxqmb96picn")))) + (base32 "0i6n3pzrmlgabsijy6z0hhs71q7g99yagwr2m33lr30skqc9rvdn")))) (build-system emacs-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-after 'unpack 'remove-other-theme + (lambda _ + (delete-file "modus-operandi-theme.el") + #t))))) (home-page "https://gitlab.com/protesilaos/modus-themes") (synopsis "Accessible dark theme (WCAG AAA)") (description @@ -23470,14 +23710,14 @@ interface.") (define-public emacs-ivy-posframe (package (name "emacs-ivy-posframe") - (version "0.5.1") + (version "0.5.2") (source (origin (method url-fetch) (uri (string-append "https://elpa.gnu.org/packages/" "ivy-posframe-" version ".el")) (sha256 - (base32 "1yi5avbgk143xs82yqiia7yhh6jjjm22lpmwaq0ysw5mdpazjxfa")))) + (base32 "01zc2yj7g4lfz7qblx7k6sg54v0h4w0frnnmsf92lwypfijd2lsj")))) (build-system emacs-build-system) (propagated-inputs `(("emacs-ivy" ,emacs-ivy) @@ -24544,7 +24784,7 @@ snippets for Emacs.") (define-public emacs-org-roam (package (name "emacs-org-roam") - (version "1.2.1") + (version "1.2.2") (source (origin (method git-fetch) @@ -24553,7 +24793,7 @@ snippets for Emacs.") (commit (string-append "v" version)))) (file-name (git-file-name name version)) (sha256 - (base32 "10s7mcyshgj6yva4k1j086xm61k9zck3r586f1maar5b2z6hwvsa")))) + (base32 "0fanv0nl03qn65amxsq4q544zrhv94a37gdg9bwydik9439avbsc")))) (build-system emacs-build-system) (propagated-inputs `(("emacs-company" ,emacs-company) @@ -24596,7 +24836,7 @@ personal wiki.") (build-system emacs-build-system) (home-page "https://github.com/conao3/org-generate.el") (synopsis "Generate template files and folders from Org document") - (description "This package allows to generate files and folders from Emacs + (description "This package generates files and folders from Emacs org-mode templates.") (license license:gpl3+))) @@ -24697,6 +24937,45 @@ sources. It features syntax highlighting, autocompletion, preview of buffer or region and use of locally installed binaries.") (license license:gpl3+))) +(define-public emacs-execline + (let ((commit "c75dd9b2c54d8e59fc35fd4bd98d8e213948a3f5") + (revision "1")) + (package + (name "emacs-execline") + (version (git-version "0.1" revision commit)) + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://gitlab.com/KAction/emacs-execline/") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "02q531c9wvdwflhggflnci4a36h2bb90bq25bbhw6i2lvrd9sk55")))) + (build-system emacs-build-system) + (propagated-inputs + `(("emacs-s" ,emacs-s))) + (arguments + `(#:tests? #t + #:test-command '("emacs" "-Q" "-batch" "-L" "." + "-l" "t/indent.el" + "-f" "ert-run-tests-batch-and-exit"))) + (home-page "https://gitlab.com/KAction/emacs-execline/") + (synopsis "Major Emacs mode for editing execline scripts") + (description + "This package provides a major mode for editing execline scripts. + +Features: +@itemize +@item Syntax highlighting of commends, builtin commands and variable substitution. +@item Completion of builtin commands. +@item Working @code{comment-region} command. +@item Indentation of blocks. +@item Automatic enable of mode in @file{*.exec} files. +@item Automatic enable of mode in files with @code{execlineb} interpreter. +@end itemize\n") + (license license:gpl3+)))) + (define-public emacs-shell-pop (let ((commit "4b4394037940a890a313d715d203d9ead2d156a6") (revision "0")) @@ -24832,7 +25111,7 @@ picked up when copy-pasting text from buffer to buffer.") (define-public emacs-org-webring (package (name "emacs-org-webring") - (version "1.9") + (version "1.9.8-rc4") (source (origin (method git-fetch) @@ -24842,7 +25121,7 @@ picked up when copy-pasting text from buffer to buffer.") (file-name (git-file-name name version)) (sha256 (base32 - "09lm2h5d6xcdwilbmi6xs4qz33d0442m9iys9k36q9vhhakl7w4x")))) + "0z2q29i9ng2vkzb6qbwb0dzvz8yv44p0kg07lx59pcdbv7mznjmc")))) (build-system emacs-build-system) (arguments `(#:phases @@ -24951,3 +25230,149 @@ web development.") ;; file and the header of the main elisp file which indicates ;; that it is licensed under the GPL version 3 or later. (license (list license:mpl2.0 license:gpl3+))))) + +(define-public emacs-iter2 + (package + (name "emacs-iter2") + (version "1.0") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/doublep/iter2") + (commit version))) + (file-name (git-file-name name version)) + (sha256 + (base32 "0gaq3z2v1q4r9mkyq71dzmqakhi0p8g7ph4z0n3a11rvyc3z9ykx")))) + (build-system emacs-build-system) + (home-page "https://github.com/doublep/iter2") + (synopsis "Reimplementation of Elisp generators") + (description "@code{iter2} is a fully compatible reimplementation of +built-in generator package. It provides @code{iter2-defun} and +@code{iter2-lambda} forms that can be used in place of @code{iter-defun} and +@code{iter-lambda}. All other functions and macros (e.g. @code{iter-yield}, +@code{iter-next}) are intentionally not duplicated: just use the ones from the +original package.") + (license license:gpl3+))) + +(define-public emacs-promise + (package + (name "emacs-promise") + (version "1.1") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/chuntaro/emacs-promise") + (commit version))) + (file-name (git-file-name name version)) + (sha256 + (base32 "1xb34zdbwjvahfhycjphdkm925kgd22dr298c57hwxza4ljc2hxj")))) + (build-system emacs-build-system) + (home-page "https://github.com/chuntaro/emacs-promise") + (synopsis "Promises/A+ for Emacs") + (description "This is a simple implementation of Promises/A+. + +This implementation ports the following Promises/A+ features +faithfully. See @url{https://github.com/then/promise}. + +@itemize +@item The same API as the JavaScript version of Promise can be used. +@item It has all the @code{then}, @code{catch}, @code{resolve}, @code{reject}, +@code{all}, @code{race}, etc. +@item It supports \"thenable\". +@item It supports \"Inheritance of Promise\". +@item It supports \"rejection-tracking\". +@end itemize\n") + (license license:gpl3+))) + +(define-public emacs-async-await + (package + (name "emacs-async-await") + (version "1.1") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/chuntaro/emacs-async-await") + (commit version))) + (file-name (git-file-name name version)) + (sha256 + (base32 "0aav9qdswnw7ynqlzn0sm34as5fj2d85syxgg8zjabzp6646ay29")))) + (build-system emacs-build-system) + (propagated-inputs + `(("promise" ,emacs-promise) + ("iter2" ,emacs-iter2))) + (home-page "https://github.com/chuntaro/emacs-async-await") + (synopsis "Async/Await for Emacs") + (description "This is a simple implementation of Async/Await inspired by +the TypeScript implementation.") + (license license:gpl3+))) + +(define-public emacs-rocket-chat + ;; No release. + (let ((commit "96fe27a8678de5ae4061f635108a7192eee13f98")) + (package + (name "emacs-rocket-chat") + (version (git-version "0.0.0" "1" commit)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/4hiziri/rocket-chat") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 "02a4j0yy7330kfr3rd3k2agdj01ii6989nki598anbamq6xvj5ql")))) + (build-system emacs-build-system) + (propagated-inputs + `(("async-await" ,emacs-async-await) + ("request" ,emacs-request))) + (home-page "https://github.com/4hiziri/rocket-chat") + (synopsis "Emacs Rocket.chat client") + (description "This package provides an Emacs client for the Rocket.chat +service.") + (license license:expat)))) + +(define-public emacs-monokai-theme + (package + (name "emacs-monokai-theme") + (version "3.5.3") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/oneKelvinSmith/monokai-emacs") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 "0dy8c3349j7fmp8052hbgvk0b7ldlv5jqpg0paq1i0hlypivd30i")))) + (build-system emacs-build-system) + (home-page "https://github.com/oneKelvinSmith/monokai-emacs") + (synopsis "High contrast color theme for Emacs") + (description + "Monokai theme is a port of the popular TextMate Monokai theme for +Emacs.") + (license license:gpl3+))) + +(define-public emacs-nord-theme + (package + (name "emacs-nord-theme") + (version "0.5.0") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/arcticicestudio/nord-emacs") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 "096f8cik4jz89bvkifwp3gm9iraqrd75ljy2q9js724v7yj88711")))) + (build-system emacs-build-system) + (home-page "https://www.nordtheme.com/") + (synopsis "Low contrast arctic color theme for Emacs") + (description + "Nord is an arctic, north-bluish color scheme created for a clean and +uncluttered design pattern to achieve optimal focus and readability for code +syntax highlighting and UI components.") + (license license:expat))) diff --git a/gnu/packages/embedded.scm b/gnu/packages/embedded.scm index f9f0e04238..cc26b17ea6 100644 --- a/gnu/packages/embedded.scm +++ b/gnu/packages/embedded.scm @@ -458,35 +458,31 @@ languages are C and C++.") ,@(package-arguments gdb))))) (define-public libjaylink - ;; No release tarballs available. - (let ((commit "699b7001d34a79c8e7064503dde1bede786fd7f0") - (revision "2")) - (package - (name "libjaylink") - (version (string-append "0.1.0-" revision "." - (string-take commit 7))) - (source (origin - (method git-fetch) - (uri (git-reference - (url "https://git.zapb.de/libjaylink.git") - (commit commit))) - (file-name (string-append name "-" version "-checkout")) - (sha256 - (base32 - "034872d44myycnzn67v5b8ixrgmg8sk32aqalvm5x7108w2byww1")))) - (build-system gnu-build-system) - (native-inputs - `(("autoconf" ,autoconf) - ("automake" ,automake) - ("libtool" ,libtool) - ("pkg-config" ,pkg-config))) - (inputs - `(("libusb" ,libusb))) - (home-page "https://repo.or.cz/w/libjaylink.git") - (synopsis "Library to interface Segger J-Link devices") - (description "libjaylink is a shared library written in C to access + (package + (name "libjaylink") + (version "0.2.0") + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://repo.or.cz/libjaylink.git") + (commit version))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "0ndyfh51hiqyv2yscpj6qd091w7myxxjid3a6rx8f6k233vy826q")))) + (build-system gnu-build-system) + (native-inputs + `(("autoconf" ,autoconf) + ("automake" ,automake) + ("libtool" ,libtool) + ("pkg-config" ,pkg-config))) + (inputs + `(("libusb" ,libusb))) + (home-page "https://repo.or.cz/w/libjaylink.git") + (synopsis "Library to interface Segger J-Link devices") + (description "libjaylink is a shared library written in C to access SEGGER J-Link and compatible devices.") - (license license:gpl2+)))) + (license license:gpl2+))) (define-public jimtcl (package @@ -518,67 +514,71 @@ language.") (license license:bsd-2))) (define-public openocd - (package - (name "openocd") - (version "0.10.0") - (source (origin - (method url-fetch) - (uri (string-append "mirror://sourceforge/openocd/openocd/" - version "/openocd-" version ".tar.gz")) - (sha256 - (base32 - "09p57y3c2spqx4vjjlz1ljm1lcd0j9q8g76ywxqgn3yc34wv18zd")) - ;; FIXME: Remove after nrf52 patch is merged. - (patches - (search-patches "openocd-nrf52.patch")))) - (build-system gnu-build-system) - (native-inputs - `(("autoconf" ,autoconf) - ("automake" ,automake) - ("libtool" ,libtool) - ("pkg-config" ,pkg-config))) - (inputs - `(("hidapi" ,hidapi) - ("jimtcl" ,jimtcl) - ("libftdi" ,libftdi) - ("libjaylink" ,libjaylink) - ("libusb-compat" ,libusb-compat))) - (arguments - '(#:configure-flags - (append (list "--disable-werror" - "--enable-sysfsgpio" - "--disable-internal-jimtcl" - "--disable-internal-libjaylink") - (map (lambda (programmer) - (string-append "--enable-" programmer)) - '("amtjtagaccel" "armjtagew" "buspirate" "ftdi" - "gw16012" "jlink" "opendous" "osbdm" - "parport" "aice" "cmsis-dap" "dummy" "jtag_vpi" - "remote-bitbang" "rlink" "stlink" "ti-icdi" "ulink" - "usbprog" "vsllink" "usb-blaster-2" "usb_blaster" - "presto" "openjtag"))) - #:phases - (modify-phases %standard-phases - ;; Required because of patched sources. - (add-before 'configure 'autoreconf - (lambda _ (invoke "autoreconf" "-vfi") #t)) - (add-after 'autoreconf 'change-udev-group - (lambda _ - (substitute* "contrib/60-openocd.rules" - (("plugdev") "dialout")) - #t)) - (add-after 'install 'install-udev-rules - (lambda* (#:key outputs #:allow-other-keys) - (install-file "contrib/60-openocd.rules" - (string-append - (assoc-ref outputs "out") - "/lib/udev/rules.d/")) - #t))))) - (home-page "http://openocd.org") - (synopsis "On-Chip Debugger") - (description "OpenOCD provides on-chip programming and debugging support + (let ((commit "9a877a83a1c8b1f105cdc0de46c5cbc4d9e8799e") + (revision "0")) + (package + (name "openocd") + (version (string-append "0.10.0-" revision "." + (string-take commit 7))) + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://git.code.sf.net/p/openocd/code") + (commit commit))) + (file-name (string-append name "-" version "-checkout")) + (sha256 + (base32 + "1q536cp80v2bcy6xwk08f1r2ljyw13jchx3a1z7d3ni3vqql7rc6")))) + (build-system gnu-build-system) + (native-inputs + `(("autoconf" ,autoconf) + ("automake" ,automake) + ("libtool" ,libtool) + ("which" ,base:which) + ("pkg-config" ,pkg-config))) + (inputs + `(("hidapi" ,hidapi) + ("jimtcl" ,jimtcl) + ("libftdi" ,libftdi) + ("libjaylink" ,libjaylink) + ("libusb-compat" ,libusb-compat))) + (arguments + '(#:configure-flags + (append (list "--disable-werror" + "--enable-sysfsgpio" + "--disable-internal-jimtcl" + "--disable-internal-libjaylink") + (map (lambda (programmer) + (string-append "--enable-" programmer)) + '("amtjtagaccel" "armjtagew" "buspirate" "ftdi" + "gw16012" "jlink" "opendous" "osbdm" + "parport" "aice" "cmsis-dap" "dummy" "jtag_vpi" + "remote-bitbang" "rlink" "stlink" "ti-icdi" "ulink" + "usbprog" "vsllink" "usb-blaster-2" "usb_blaster" + "presto" "openjtag"))) + #:phases + (modify-phases %standard-phases + (replace 'bootstrap + (lambda _ + (patch-shebang "bootstrap") + (invoke "./bootstrap" "nosubmodule"))) + (add-after 'autoreconf 'change-udev-group + (lambda _ + (substitute* "contrib/60-openocd.rules" + (("plugdev") "dialout")) + #t)) + (add-after 'install 'install-udev-rules + (lambda* (#:key outputs #:allow-other-keys) + (install-file "contrib/60-openocd.rules" + (string-append + (assoc-ref outputs "out") + "/lib/udev/rules.d/")) + #t))))) + (home-page "http://openocd.org") + (synopsis "On-Chip Debugger") + (description "OpenOCD provides on-chip programming and debugging support with a layered architecture of JTAG interface and TAP support.") - (license license:gpl2+))) + (license license:gpl2+)))) ;; The commits for all propeller tools are the stable versions published at ;; https://github.com/propellerinc/propgcc in the release_1_0. According to diff --git a/gnu/packages/emulators.scm b/gnu/packages/emulators.scm index cf48b20675..5b1d3788ad 100644 --- a/gnu/packages/emulators.scm +++ b/gnu/packages/emulators.scm @@ -538,7 +538,7 @@ The following systems are supported: (define-public mgba (package (name "mgba") - (version "0.8.3") + (version "0.8.4") (source (origin (method git-fetch) @@ -547,7 +547,7 @@ The following systems are supported: (commit version))) (file-name (git-file-name name version)) (sha256 - (base32 "0rwlfjdr0rzbq4kaplvwsgyb8xq6nrzxss2c8xrgw9hqw3ymx4s3")) + (base32 "0nqj4bnn5c2z1bq4bnbw1wznc0wpmq4sy3w8pipd6n6620b9m4qq")) (modules '((guix build utils))) (snippet ;; Make sure we don't use the bundled software. @@ -1385,7 +1385,7 @@ play them on systems for which they were never designed!") (define-public mame (package (name "mame") - (version "0.225") + (version "0.226") (source (origin (method git-fetch) @@ -1394,7 +1394,7 @@ play them on systems for which they were never designed!") (commit (apply string-append "mame" (string-split version #\.))))) (file-name (git-file-name name version)) (sha256 - (base32 "1n61v1yqmc69399khcm8gdabqaz8rwwj822m8vm5mbyxnw92icqg")) + (base32 "1yfns42rk1l0qprj5ksj9fqsgqpa23xnzxf29r4434p4n18bb77v")) (modules '((guix build utils))) (snippet ;; Remove bundled libraries. diff --git a/gnu/packages/file-systems.scm b/gnu/packages/file-systems.scm index 6ceaad4fd1..974ddc30ee 100644 --- a/gnu/packages/file-systems.scm +++ b/gnu/packages/file-systems.scm @@ -254,8 +254,8 @@ from a mounted file system.") (license license:gpl2+))) (define-public bcachefs-tools - (let ((commit "ab2f1ec24f5307b0cf1e3c4ad19bf350d9f54d9f") - (revision "0")) + (let ((commit "742dbbdbb90efb786f05a8576917fcd0e9cbd57e") + (revision "1")) (package (name "bcachefs-tools") (version (git-version "0.1" revision commit)) @@ -267,7 +267,7 @@ from a mounted file system.") (commit commit))) (file-name (git-file-name name version)) (sha256 - (base32 "10pafvaxg1lvwnqjv3a4rsi96bghbpcsgh3vhqilndi334k3b0hd")))) + (base32 "0kn8y3kqylz6scv47mzfmwrlh21kbb14z5vs65vks8w50i26sxnc")))) (build-system gnu-build-system) (arguments `(#:make-flags @@ -287,7 +287,8 @@ from a mounted file system.") ("python-pytest" ,python-pytest) ("valgrind" ,valgrind))) (inputs - `(("keyutils" ,keyutils) + `(("eudev" ,eudev) + ("keyutils" ,keyutils) ("libaio" ,libaio) ("libscrypt" ,libscrypt) ("libsodium" ,libsodium) @@ -698,7 +699,7 @@ APFS.") (define-public zfs (package (name "zfs") - (version "0.8.2") + (version "0.8.5") (outputs '("out" "module" "src")) (source (origin @@ -707,8 +708,7 @@ APFS.") "/download/zfs-" version "/zfs-" version ".tar.gz")) (sha256 - (base32 - "1f7aig15q3z832pr2n48j3clafic2yk1vvqlh28vpklfghjqwq27")))) + (base32 "0gfdnynmsxbhi97q73smrgmcw1k8zmlr1hgljfn38sk0kimivd6v")))) (build-system linux-module-build-system) (arguments `(;; The ZFS kernel module should not be downloaded since the license @@ -722,8 +722,7 @@ APFS.") (lambda* (#:key outputs inputs #:allow-other-keys) (let ((out (assoc-ref outputs "out"))) (substitute* "configure" - (("-/bin/sh") (string-append "-" (which "sh"))) - ((" /bin/sh") (string-append " " (which "sh")))) + (("-/bin/sh") (string-append "-" (which "sh")))) (invoke "./configure" "--with-config=all" (string-append "--prefix=" out) @@ -739,6 +738,9 @@ APFS.") (src (assoc-ref outputs "src")) (util-linux (assoc-ref inputs "util-linux")) (nfs-utils (assoc-ref inputs "nfs-utils"))) + (substitute* "contrib/Makefile.in" + ;; This is not configurable nor is its hard-coded /usr prefix. + ((" initramfs") "")) (substitute* "module/zfs/zfs_ctldir.c" (("/usr/bin/env\", \"umount") (string-append util-linux "/bin/umount\", \"-n")) @@ -782,7 +784,6 @@ APFS.") "INSTALL_MOD_STRIP=1") (install-file "contrib/bash_completion.d/zfs" (string-append out "/share/bash-completion/completions")) - (symlink "../share/pkgconfig/" (string-append out "/lib/pkgconfig")) #t)))))) (native-inputs `(("attr" ,attr) diff --git a/gnu/packages/finance.scm b/gnu/packages/finance.scm index 182d38c1a9..ffbf3b218d 100644 --- a/gnu/packages/finance.scm +++ b/gnu/packages/finance.scm @@ -20,6 +20,7 @@ ;;; Copyright © 2020 Tom Zander <tomz@freedommail.ch> ;;; Copyright © 2020 Marius Bakke <mbakke@fastmail.com> ;;; Copyright © 2020 Vinicius Monego <monego@posteo.net> +;;; Copyright © 2020 Carlo Holl <carloholl@gmail.com> ;;; ;;; This file is part of GNU Guix. ;;; @@ -45,6 +46,7 @@ #:use-module (guix build-system cmake) #:use-module (guix build-system copy) #:use-module (guix build-system emacs) + #:use-module (guix build-system haskell) #:use-module (guix build-system python) #:use-module (guix build-system glib-or-gtk) #:use-module (guix build-system go) @@ -72,6 +74,9 @@ #:use-module (gnu packages graphviz) #:use-module (gnu packages groff) #:use-module (gnu packages gtk) + #:use-module (gnu packages haskell-check) + #:use-module (gnu packages haskell-web) + #:use-module (gnu packages haskell-xyz) #:use-module (gnu packages jemalloc) #:use-module (gnu packages libedit) #:use-module (gnu packages libevent) @@ -170,6 +175,63 @@ of the bitcoin protocol. This package provides the Bitcoin Core command line client and a client based on Qt.") (license license:expat))) +(define-public hledger + (package + (name "hledger") + (version "1.19.1") + (source + (origin + (method url-fetch) + (uri (string-append + "https://hackage.haskell.org/package/hledger/hledger-" + version + ".tar.gz")) + (sha256 + (base32 + "0wfsyf2q1kf90mj3lxs0m5ghj153axmpkc8xfy12vkz5imnyphfm")))) + (build-system haskell-build-system) + (inputs + `(("ghc-decimal" ,ghc-decimal) + ("ghc-diff" ,ghc-diff) + ("ghc-aeson" ,ghc-aeson) + ("ghc-ansi-terminal" ,ghc-ansi-terminal) + ("ghc-base-compat-batteries" ,ghc-base-compat-batteries) + ("ghc-cmdargs" ,ghc-cmdargs) + ("ghc-data-default" ,ghc-data-default) + ("ghc-extra" ,ghc-extra) + ("ghc-hashable" ,ghc-hashable) + ("ghc-hledger-lib" ,ghc-hledger-lib) + ("ghc-lucid" ,ghc-lucid) + ("ghc-math-functions" ,ghc-math-functions) + ("ghc-megaparsec" ,ghc-megaparsec) + ("ghc-old-time" ,ghc-old-time) + ("ghc-pretty-show" ,ghc-pretty-show) + ("ghc-regex-tdfa" ,ghc-regex-tdfa) + ("ghc-safe" ,ghc-safe) + ("ghc-shakespeare" ,ghc-shakespeare) + ("ghc-split" ,ghc-split) + ("ghc-tabular" ,ghc-tabular) + ("ghc-tasty" ,ghc-tasty) + ("ghc-temporary" ,ghc-temporary) + ("ghc-timeit" ,ghc-timeit) + ("ghc-unordered-containers" ,ghc-unordered-containers) + ("ghc-utf8-string" ,ghc-utf8-string) + ("ghc-utility-ht" ,ghc-utility-ht) + ("ghc-wizards" ,ghc-wizards))) + (home-page "https://hledger.org") + (synopsis "Command-line interface for the hledger accounting system") + (description + "The command-line interface for the hledger accounting system. Its basic +function is to read a plain text file describing financial transactions and +produce useful reports. + +hledger is a robust, cross-platform set of tools for tracking money, time, or +any other commodity, using double-entry accounting and a simple, editable file +format, with command-line, terminal and web interfaces. It is a Haskell +rewrite of Ledger, and one of the leading implementations of Plain Text +Accounting.") + (license license:gpl3))) + (define-public homebank (package (name "homebank") @@ -293,67 +355,67 @@ in ability, and easy to use.") "See src/wcwidth.cc in the distribution."))))) (define-public emacs-ledger-mode - ;; There have been no new releases since 2016. - (let ((commit "253a20dc62e137ed0ed8e1dd8614ecba116610ea") - (revision "1")) - (package - (name "emacs-ledger-mode") - (version (git-version "3.1.1" revision commit)) - (source - (origin - (method git-fetch) - (uri (git-reference - (url "https://github.com/ledger/ledger-mode") - (commit commit))) - (file-name (git-file-name name version)) - (sha256 - (base32 "06wrgkqpgvk17vibrk2qikdlqn8y63jg86marp1wgmram92mb3jk")))) - (build-system cmake-build-system) - (arguments - `(#:modules ((guix build cmake-build-system) - (guix build utils) - (guix build emacs-utils)) - #:imported-modules (,@%cmake-build-system-modules - (guix build emacs-utils)) - #:tests? #f ; there are none - #:phases - (modify-phases %standard-phases - (add-after 'unpack 'patch-site-dir - (lambda _ - (substitute* "CMakeLists.txt" - (("DESTINATION share/emacs/site-lisp/ledger-mode") - "DESTINATION share/emacs/site-lisp")) - #t)) - (add-before 'build 'patch-path - (lambda* (#:key inputs #:allow-other-keys) - (let ((ledger (assoc-ref inputs "ledger"))) - (make-file-writable "ledger-exec.el") - (emacs-substitute-variables "ledger-exec.el" - ("ledger-binary-path" (string-append ledger "/bin/ledger")))) - #t)) - (add-after 'build 'build-doc - (lambda* (#:key outputs #:allow-other-keys) - (let ((target (string-append (assoc-ref outputs "out") - "/share/info"))) - (mkdir-p target) - (invoke "makeinfo" "-o" target - "../source/doc/ledger-mode.texi")) - #t)) - (add-after 'install 'generate-autoload - (lambda* (#:key outputs #:allow-other-keys) - (let* ((site-dir (string-append (assoc-ref outputs "out") - "/share/emacs/site-lisp"))) - (emacs-generate-autoloads ,name site-dir)) - #t))))) - (inputs - `(("ledger" ,ledger))) - (native-inputs - `(("emacs-minimal" ,emacs-minimal) - ("texinfo" ,texinfo))) - (home-page "https://ledger-cli.org/") - (synopsis "Command-line double-entry accounting program") - (description - "Ledger is a powerful, double-entry accounting system that is + (package + (name "emacs-ledger-mode") + (version "4.0.0") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/ledger/ledger-mode") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 "1r5rcyxd6d1rqwamzpvqdbkbdf1zbj75aaciqijrklnm59ps244y")))) + (build-system cmake-build-system) + (arguments + `(#:modules ((guix build cmake-build-system) + (guix build utils) + (guix build emacs-utils)) + #:imported-modules (,@%cmake-build-system-modules + (guix build emacs-utils)) + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'patch-site-dir + (lambda _ + (substitute* "CMakeLists.txt" + (("DESTINATION share/emacs/site-lisp/ledger-mode") + "DESTINATION share/emacs/site-lisp")) + #t)) + (add-before 'build 'patch-path + (lambda* (#:key inputs #:allow-other-keys) + (let ((ledger (assoc-ref inputs "ledger"))) + (make-file-writable "ledger-exec.el") + (emacs-substitute-variables "ledger-exec.el" + ("ledger-binary-path" (string-append ledger "/bin/ledger")))) + #t)) + (add-after 'build 'build-doc + (lambda* (#:key outputs #:allow-other-keys) + (let ((target (string-append (assoc-ref outputs "out") + "/share/info"))) + (mkdir-p target) + (invoke "makeinfo" "-o" target + "../source/doc/ledger-mode.texi")) + #t)) + (add-after 'install 'generate-autoload + (lambda* (#:key outputs #:allow-other-keys) + (let* ((site-dir (string-append (assoc-ref outputs "out") + "/share/emacs/site-lisp"))) + (emacs-generate-autoloads ,name site-dir)) + #t)) + (replace 'check + (lambda _ + (with-directory-excursion "../source/test" + (invoke "make" "test-batch"))))))) + (inputs + `(("ledger" ,ledger))) + (native-inputs + `(("emacs-minimal" ,emacs-minimal) + ("texinfo" ,texinfo))) + (home-page "https://ledger-cli.org/") + (synopsis "Command-line double-entry accounting program") + (description + "Ledger is a powerful, double-entry accounting system that is accessed from the UNIX command-line. This may put off some users, since there is no flashy UI, but for those who want unparalleled reporting access to their data there are few alternatives. @@ -367,7 +429,7 @@ a graph or html instead. Ledger is simple in concept, surprisingly rich in ability, and easy to use. This package provides the Emacs mode.") - (license license:gpl2+)))) + (license license:gpl2+))) (define-public geierlein (package @@ -555,7 +617,7 @@ other machines/servers. Electroncash does not download the Bitcoin Cash blockch ;; the system's dynamically linked library. (package (name "monero") - (version "0.17.1.0") + (version "0.17.1.1") (source (origin (method git-fetch) @@ -575,7 +637,7 @@ other machines/servers. Electroncash does not download the Bitcoin Cash blockch "external/unbound")) #t)) (sha256 - (base32 "1cngniv7sndy8r0fcfgk737640k53q3kwd36g891p5igcb985qdw")))) + (base32 "18x27dm24k04vx0yz57zi02rk0wrmbn4wr8alqf48dq6z9wr0fhp")))) (build-system cmake-build-system) (native-inputs `(("doxygen" ,doxygen) @@ -665,7 +727,7 @@ the Monero command line client and daemon.") (define-public monero-gui (package (name "monero-gui") - (version "0.17.1.0") + (version "0.17.1.1") (source (origin (method git-fetch) @@ -674,7 +736,7 @@ the Monero command line client and daemon.") (commit (string-append "v" version)))) (file-name (git-file-name name version)) (sha256 - (base32 "07r78ipv4g3i6z822kq380vi3qwlb958rccsy6lyybkhj9y0rx84")))) + (base32 "0aqhp4rmqsgwjb875kgh6qwz0wyyiag1fksyic9cnhgg5j5y95nx")))) (build-system qt-build-system) (native-inputs `(,@(package-native-inputs monero) diff --git a/gnu/packages/fonts.scm b/gnu/packages/fonts.scm index f39c529beb..396e89a1fd 100644 --- a/gnu/packages/fonts.scm +++ b/gnu/packages/fonts.scm @@ -37,6 +37,7 @@ ;;; Copyright © 2020 Zhu Zihao <all_but_last@163.com> ;;; Copyright © 2020 Simen Endsjø <simendsjo@gmail.com> ;;; Copyright © 2020 Tim Van den Langenbergh <tmt_vdl@gmx.com> +;;; Copyright © 2020 Nicolò Balzarotti <nicolo@nixo.xyz> ;;; ;;; This file is part of GNU Guix. ;;; @@ -1430,6 +1431,30 @@ emphasis while still being readable.") (define-public font-open-dyslexic (deprecated-package "font-open-dyslexic" font-opendyslexic)) +(define-public font-openmoji + (package + (name "font-openmoji") + (version "12.4.0") + (source + (origin + (method url-fetch/zipbomb) + (uri + (string-append "https://github.com/hfg-gmuend/openmoji/" + "releases/download/" version + "/openmoji-font.zip")) + (sha256 + (base32 + "0wvvg5vnc950h8v23wfgjyi7rv89mgm5hqq6viqv0bxcc3azglxb")))) + (build-system font-build-system) + (native-inputs + `(("unzip" ,unzip))) + (home-page "https://openmoji.org") + (synopsis "Font for rendering emoji characters") + (description + "This package provides the OpenMoji font in both color and black +variants.") + (license license:cc-by-sa4.0))) + (define-public font-dosis (package (name "font-dosis") @@ -1762,6 +1787,36 @@ Mono’s typeface forms are simple and free from unnecessary details. Rendered in small sizes, the text looks crisper.") (license license:asl2.0))) +(define-public font-juliamono + (package + (name "font-juliamono") + (version "0.025") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/cormullion/juliamono") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 "1w8mpl9zc1y4j1f26ikbz5g9dqsszhikp4r9p1d3ch3b5ayb5c3m")))) + (build-system font-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-after 'unpack 'delete-website-folder + ;; This folder contains other unrelated fonts. + (lambda _ + (delete-file-recursively "website") + #t))))) + (home-page "https://github.com/cormullion/juliamono") + (synopsis "Monospaced font for programming") + (description + "JuliaMono is a monospaced font for scientific and technical computing, +designed to work for programming in the Julia Programming Language and other +text environments.") + (license license:silofl1.1))) + (define-public font-vazir (package (name "font-vazir") diff --git a/gnu/packages/fontutils.scm b/gnu/packages/fontutils.scm index b3852fe093..68665edddd 100644 --- a/gnu/packages/fontutils.scm +++ b/gnu/packages/fontutils.scm @@ -6,7 +6,7 @@ ;;; Copyright © 2017 Rene Saavedra <rennes@openmailbox.org> ;;; Copyright © 2017 Leo Famulari <leo@famulari.name> ;;; Copyright © 2017 Nikita <nikita@n0.is> -;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr> +;;; Copyright © 2017, 2018, 2020 Tobias Geerinckx-Rice <me@tobias.gr> ;;; Copyright © 2018 Ricardo Wurmus <rekado@elephly.net> ;;; Copyright © 2018, 2019 Ludovic Courtès <ludo@gnu.org> ;;; Copyright © 2019, 2020 Marius Bakke <mbakke@fastmail.com> @@ -69,6 +69,7 @@ (package (name "freetype") (version "2.10.1") + (replacement freetype/fixed) (source (origin (method url-fetch) (uri (string-append "mirror://savannah/freetype/freetype-" @@ -97,6 +98,19 @@ anti-aliased glyph bitmap generation with 256 gray levels.") (license license:freetype) ; some files have other licenses (home-page "https://www.freetype.org/"))) +(define freetype/fixed + ;; Security fix for CVE-2020-15999. + (package + (inherit freetype) + (version "2.10.4") + (source + (origin + (method url-fetch) + (uri (string-append "mirror://savannah/freetype/freetype-" + version ".tar.xz")) + (sha256 + (base32 "112pyy215chg7f7fmp2l9374chhhpihbh8wgpj5nj6avj3c59a46")))))) + (define-public ttfautohint (package (name "ttfautohint") @@ -952,3 +966,33 @@ It currently provides bidirectional text support (using FriBiDi), shaping (using HarfBuzz), and proper script itemization. As a result, Raqm can support most writing systems covered by Unicode.") (license license:expat))) + +(define-public lcdf-typetools + (package + (name "lcdf-typetools") + (version "2.108") + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/kohler/lcdf-typetools") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "0a6jqaqwq43ldjjjlnsh6mczs2la9363qav7v9fyrfzkfj8kw9ad")))) + (build-system gnu-build-system) + (arguments + `(#:configure-flags + ;; This is only provided by the monolithic texlive distribution. + ;; FIXME: texlive-kpathsea doesn't come with the library and headers + (list "--without-kpathsea"))) + (native-inputs + `(("autoconf" ,autoconf) + ("automake" ,automake))) + (home-page "https://lcdf.org/type/") + (synopsis "Multiple font manipulation tools") + (description "LCDF Typetools comprises several programs for manipulating +PostScript Type 1, Type 1 Multiple Master, OpenType, and TrueType fonts. +These tools are cfftot1, mmafm, mmpfb, otfinfo, otftotfm, t1dotlessj, t1lint, +t1rawfm, t1reencode, t1testpage and ttftotype42.") + (license license:gpl2+))) diff --git a/gnu/packages/freedesktop.scm b/gnu/packages/freedesktop.scm index 5519f04b11..7b2a8d8bb3 100644 --- a/gnu/packages/freedesktop.scm +++ b/gnu/packages/freedesktop.scm @@ -21,6 +21,7 @@ ;;; Copyright © 2020 Rene Saavedra <pacoon@protonmail.com> ;;; Copyright © 2020 Nicolò Balzarotti <nicolo@nixo.xyz> ;;; Copyright © 2020 Anders Thuné <asse.97@gmail.com> +;;; Copyright © 2020 Raghav Gururajan <raghavgururajan@disroot.org> ;;; ;;; This file is part of GNU Guix. ;;; @@ -71,6 +72,7 @@ #:use-module (gnu packages gnome) #:use-module (gnu packages gperf) #:use-module (gnu packages graphviz) + #:use-module (gnu packages gstreamer) #:use-module (gnu packages gtk) #:use-module (gnu packages image) #:use-module (gnu packages libffi) @@ -79,6 +81,7 @@ #:use-module (gnu packages linux) #:use-module (gnu packages man) #:use-module (gnu packages m4) + #:use-module (gnu packages networking) #:use-module (gnu packages nss) #:use-module (gnu packages package-management) #:use-module (gnu packages perl) @@ -98,6 +101,90 @@ #:use-module (gnu packages xorg) #:use-module (srfi srfi-1)) +(define-public farstream + (package + (name "farstream") + (version "0.2.9") + (source + (origin + (method git-fetch) + (uri + (git-reference + (url "https://gitlab.freedesktop.org/farstream/farstream.git") + (commit version))) + (file-name (git-file-name name version)) + (sha256 + (base32 "1sd8syldyq6bphfdm129s3gq554vfv7vh1vcwzk48gjryf101awk")) + (patches + (search-patches "farstream-make.patch")))) + (build-system glib-or-gtk-build-system) + (outputs '("out" "doc")) + (arguments + `(#:tests? #f ; https://gitlab.freedesktop.org/farstream/farstream/-/issues/18 + #:configure-flags + (list + "--enable-gtk-doc" + "--enable-glib-asserts" + (string-append "--with-html-dir=" + (assoc-ref %outputs "doc") + "/share/gtk-doc/html")) + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'copy-common + (lambda _ + (delete-file "autogen.sh") + (copy-recursively + (assoc-ref %build-inputs "common") + "common") + #t)) + (add-after 'unpack 'patch-docbook-xml + (lambda* (#:key inputs #:allow-other-keys) + (with-directory-excursion "docs" + (substitute* '("libs/farstream-libs-docs.sgml" + "plugins/farstream-plugins-docs.sgml") + (("http://www.oasis-open.org/docbook/xml/4.1.2/") + (string-append (assoc-ref inputs "docbook-xml") + "/xml/dtd/docbook/")))) + #t))))) + (native-inputs + `(("autoconf" ,autoconf) + ("automake" ,automake) + ("common" + ,(origin + (method git-fetch) + (uri + (git-reference + (url "https://gitlab.freedesktop.org/gstreamer/common.git") + (commit "88e512ca7197a45c4114f7fa993108f23245bf50"))) + (file-name + (git-file-name "common" "latest.88e512c")) + (sha256 + (base32 "1nk94pnskjyngqcfb9p32g4yvf4nzpjszisw24r9azl0pawqpsn6")))) + ("docbook-xml" ,docbook-xml-4.1.2) + ("docbook-xsl" ,docbook-xsl) + ("gobject-introspection" ,gobject-introspection) + ("gtk-doc" ,gtk-doc) + ("libtool" ,libtool) + ("perl" ,perl) + ("pkg-config" ,pkg-config) + ("python" ,python-wrapper) + ("xsltproc" ,libxslt))) + (inputs + `(("glib" ,glib) + ("gtk+" ,gtk+) + ("gupnp-igd" ,gupnp-igd) + ("libnice" ,libnice))) + (propagated-inputs + `(("gstreamer" ,gstreamer) + ("gst-plugins-bad" ,gst-plugins-bad) + ("gst-plugins-base" ,gst-plugins-base) + ("gst-plugins-good" ,gst-plugins-good))) + (synopsis "The Farstream VVoIP framework") + (description "Farstream is a collection of GStreamer modules and libraries +for videoconferencing.") + (home-page "https://www.freedesktop.org/wiki/Software/Farstream/") + (license license:lgpl2.1+))) + (define-public libglib-testing (package (name "libglib-testing") diff --git a/gnu/packages/games.scm b/gnu/packages/games.scm index af13dc3c5a..eb29f2a8e5 100644 --- a/gnu/packages/games.scm +++ b/gnu/packages/games.scm @@ -116,6 +116,7 @@ #:use-module (gnu packages gl) #:use-module (gnu packages glib) #:use-module (gnu packages gnome) + #:use-module (gnu packages gnu-doc) #:use-module (gnu packages gnupg) #:use-module (gnu packages gnuzilla) #:use-module (gnu packages gperf) @@ -589,6 +590,139 @@ possible, while battling many vicious aliens.") license:lgpl2.1+ license:bsd-2)))) +(define-public bsd-games + (package + (name "bsd-games") + (version "2.17.0") + (source + (origin + (method url-fetch) + (uri "https://ibiblio.org/pub/linux/games/bsd-games-2.17.tar.gz") + (sha256 + (base32 "0q7zdyyfvn15y0w4g54kq3gza89h61py727m8slmw73cxx594vq6")) + (patches + (search-patches + ;; thanks Arch, and Debian + "bsd-games-2.17-64bit.patch" + "bsd-games-bad-ntohl-cast.patch" + "bsd-games-gamescreen.h.patch" + "bsd-games-getline.patch" + "bsd-games-null-check.patch" + "bsd-games-number.c-and-test.patch" + "bsd-games-stdio.h.patch" + "bsd-games-prevent-name-collisions.patch" + ;; Guix customizations + "bsd-games-add-configure-config.patch" + "bsd-games-dont-install-empty-files.patch" + "bsd-games-add-wrapper.patch")))) + (build-system gnu-build-system) + (native-inputs + `(("flex" ,flex) + ("bison" ,bison))) + (inputs + `(("curses" ,ncurses) + ("pager" ,less) + ("miscfiles" ,miscfiles) + ("openssl" ,openssl))) ;used only by 'factor' + (arguments + `(#:phases + (modify-phases %standard-phases + (replace 'configure + (lambda* (#:key outputs inputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (bin (string-append out "/bin")) + (doc (string-append out "/share/doc/bsd-games-" ,version)) + (man (string-append out "/share/man")) + (word-list (string-append (assoc-ref inputs "miscfiles") + "/share/web2")) + (static-data (string-append out "/share/games/bsd-games")) + ;; Not a "./" because of substitute* in 'patch-install + ;; below. The .// allow us not to mess with the games' + ;; code any further: we just use a wrapper script that + ;; cd's to a BSD_GAMES_DIR. :] + (save-files ".//")) + (substitute* "configure" + (("/usr/share/man") man) + (("/usr/share/doc/bsd-games") doc) + (("/usr/share/[^\n/]*") static-data) + (("/var/games") save-files) + (("/usr/bin/less") (which "less")) + (("(/usr/bin|/usr/games)") bin)) + (substitute* "config.params" (("WORD_LIST") word-list)) + (substitute* "wrapper" (("STATIC_DATA") static-data)) + (invoke "./configure")) + #t)) + (add-before 'install 'patch-install + ;; Some games need a writable directory containing pre-maded files. + ;; The files get installed to the Store. Then the wrapper kicks in. + (lambda* (#:key outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (static-data (string-append out "/share/games/bsd-games")) + (save-files ".//")) + (substitute* "Makeconfig" ((save-files) static-data))) + #t)) + (add-after 'install 'install-documents + (lambda* (#:key outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (doc (string-append out "/share/doc/bsd-games-" ,version))) + (rename-file "phantasia/COPYRIGHT" "phantasia-COPYRIGHT") + (for-each + (lambda(file) (install-file file doc)) + '("AUTHORS" "BUGS" "README" "SECURITY" "THANKS" + "phantasia-COPYRIGHT"))) + #t))))) + (home-page "https://github.com/vattam/BSDGames") + (synopsis "Collection of the old text-based games and amusements") + (description + "These are the BSD games. See the fortune-mod package for fortunes. + +Action: atc (keep the airplanes safe), hack (explore the dangerous Dungeon), +hunt (kill the others for the Pair of Boots, multi-player only), robots (avoid +the evil robots), sail (game of naval warfare with wooden ships), snake (steal +the $$ from the cave, anger the snake, and get out alive), tetris (game of +lining up the falling bricks of different shapes), and worm (eat, grow big, +and neither bite your tail, nor ram the wall). + +Amusements: banner (prints a large banner), bcd & morse & ppt (print a punch +card, or paper tape, or Morse codes), caesar & rot13 (ciphers and deciphers +the input), factor (factorizes a number), number (translates numbers into +text), pig (translates from English to Pig Latin), pom (should print the +Moon's phase), primes (generates primes), rain & worms (plays an screen-saver +in terminal), random (prints randomly choosen lines from files, or returns a +random exit-code), and wtf (explains what do some acronyms mean). + +Board: backgammon (lead the men out of board faster than the friend do), +boggle (find the words in the square of letters), dab (game of dots and +boxes), gomoku (game of five in a row), hangman (guess a word before man is +hanged), and monop (game of monopoly, hot-seat only). Also the card-games: +canfield, cribbage, fish (juniors game), and mille. + +Quests: adventure (search for treasures with the help of wizard), +battlestar (explore the world around, starting from dying spaceship), +phantasia (role-play as an rogue), trek (hunt the Klingons, and save the +Federation), and wump (hunt the big smelly Wumpus in a dark cave). + +Quizes: arithmetic, and quiz.") + ;; "Auxiliary and data files, distributed with the games in NetBSD, but + ;; not bearing copyright notices, probably fall under the terms of the UCB + ;; or NetBSD copyrights and licences. The file "fortune/Notes" contains a + ;; warning in regard to the fortune databases." + (license (list + ;; Most games. Files: countmail/countmail.6, dab/dab.6, + ;; lib/strlcpy.c, wargames/wargames.6 + license:bsd-3 + ;; dab and hunt. Files: adventure/extern.h, + ;; backgammon/backgammon/backlocal.h, caesar/rot13.in, + ;; countmail/countmail, dm/utmpentry.c, dm/utmpentry.h, + ;; hack/extern.h, robots/auto.c, sail/display.h, + ;; sail/restart.h, wargames/wargames + license:bsd-4 + ;; wtf (the game) + license:public-domain + ;; phantasia (all but phantasia/pathnames.h.in, which is bsd-3) + (license:fsf-free "file:///phantasia/COPYRIGHT"))))) + + (define-public bzflag (package (name "bzflag") @@ -1186,7 +1320,7 @@ automata. The following features are available: (define-public julius (package (name "julius") - (version "1.4.1") + (version "1.5.1") (source (origin (method git-fetch) @@ -1195,7 +1329,7 @@ automata. The following features are available: (commit (string-append "v" version)))) (file-name (git-file-name name version)) (sha256 - (base32 "12hhnhdwgz7hd3hlndbnk15pxggm1375qs0764ija4nl1gbpb110")) + (base32 "10d6py1cmkq8lnb5h3w8rdpp4fmpd1wgqkgiabdghqxi7b2s0g4b")) ;; Remove unused bundled libraries. (modules '((guix build utils))) (snippet @@ -1222,7 +1356,7 @@ does not include game data.") (package (inherit julius) (name "augustus") - (version (package-version julius)) + (version "1.4.1a") (source (origin (method git-fetch) @@ -1231,7 +1365,7 @@ does not include game data.") (commit (string-append "v" version)))) (file-name (git-file-name name version)) (sha256 - (base32 "0ii0w0iwa9zv5bbqfcps5mxifd796m6fw4gvjf09pkm3yjgqc0ag")) + (base32 "1xqv8j8jh3f13fjhyf7hk1anrn799cwwsvsd75kpl9n5yh5s1j5y")) ;; Remove unused bundled libraries. (modules '((guix build utils))) (snippet @@ -5083,7 +5217,7 @@ a style similar to the original Super Mario games.") (define-public tintin++ (package (name "tintin++") - (version "2.02.04") + (version "2.02.05") (source (origin (method url-fetch) @@ -5091,7 +5225,7 @@ a style similar to the original Super Mario games.") (string-drop-right version 1) "/tintin-" version ".tar.gz")) (sha256 - (base32 "1w1y20vqcikg59gnbxjbhyq2yanwqz1a6wp8vd1qnmil240id4j7")))) + (base32 "18fm9ga08mxqmblahmnlzwnl387i8mbkj4n0gffxc91d299019v3")))) (inputs `(("gnutls" ,gnutls) ("pcre" ,pcre) @@ -6456,7 +6590,7 @@ Crowther & Woods, its original authors, in 1995. It has been known as (define-public tome4 (package (name "tome4") - (version "1.6.7") + (version "1.7.0") (synopsis "Single-player, RPG roguelike game set in the world of Eyal") (source (origin @@ -6464,7 +6598,7 @@ Crowther & Woods, its original authors, in 1995. It has been known as (uri (string-append "https://te4.org/dl/t-engine/t-engine4-src-" version ".tar.bz2")) (sha256 - (base32 "0283hvms5hr29zr0grd6gq059k0hg8hcz3fsmwjmysiih8790i68")) + (base32 "1fs0320n3ndd5kd6j9y22jsd1hbn356d4dr11kl3iy5ssix7832s")) (modules '((guix build utils))) (snippet '(begin @@ -9345,7 +9479,7 @@ angesiedelt in einer düsteren, postapokalyptischen Vision der Zukunft~@ `(("bash" ,bash) ("scummvm" ,scummvm))) (home-page "https://www.scummvm.org/") - (synopsis "Classic 2D point an click science-fiction adventure game") + (synopsis "Classic 2D point and click science-fiction adventure game") (description "Beneath a Steel Sky is a science-fiction thriller set in a bleak post-apocalyptic vision of the future. It revolves around Union City, diff --git a/gnu/packages/gdb.scm b/gnu/packages/gdb.scm index 828e49509d..79fc49f5ff 100644 --- a/gnu/packages/gdb.scm +++ b/gnu/packages/gdb.scm @@ -40,7 +40,7 @@ #:use-module (guix build-system gnu) #:use-module (srfi srfi-1)) -(define-public gdb +(define-public gdb-9.2 (package (name "gdb") (version "9.2") @@ -128,18 +128,11 @@ the program is running to try to fix bugs. It can be used to debug programs written in C, C++, Ada, Objective-C, Pascal and more.") (license gpl3+))) -(define-public gdb-minimal - (package/inherit - gdb - (name "gdb-minimal") - (inputs (fold alist-delete (package-inputs gdb) - '("libxml2" "ncurses" "python-wrapper" "source-highlight"))))) - ;; This version of GDB is required by some of the Rust compilers, see ;; <https://bugs.gnu.org/37810>. (define-public gdb-8.2 (package - (inherit gdb) + (inherit gdb-9.2) (version "8.2.1") (source (origin (method url-fetch) @@ -148,3 +141,30 @@ written in C, C++, Ada, Objective-C, Pascal and more.") (sha256 (base32 "00i27xqawjv282a07i73lp1l02n0a3ywzhykma75qg500wll6sha")))))) + +(define-public gdb + ;; This is the fixed version that packages depend on. Update it rarely + ;; enough to avoid massive rebuilds. + gdb-9.2) + +(define-public gdb-10 + (package + (inherit gdb) + (version "10.1") + (source (origin + (method url-fetch) + (uri (string-append "mirror://gnu/gdb/gdb-" + version ".tar.xz")) + (sha256 + (base32 + "1h32dckz1y8fnyxh22iyw8h3hnhxr79v1ng85px3ljn1xv71wbzq")))) + (inputs + `(("guile" ,guile-3.0) + ,@(alist-delete "guile" (package-inputs gdb)))))) + +(define-public gdb-minimal + (package/inherit + gdb-10 + (name "gdb-minimal") + (inputs (fold alist-delete (package-inputs gdb) + '("libxml2" "ncurses" "python-wrapper" "source-highlight"))))) diff --git a/gnu/packages/geo.scm b/gnu/packages/geo.scm index 09afa658c7..c412ec35b6 100644 --- a/gnu/packages/geo.scm +++ b/gnu/packages/geo.scm @@ -1277,7 +1277,7 @@ to the OSM opening hours specification.") (define-public josm (package (name "josm") - (version "17013") + (version "17084") (source (origin (method svn-fetch) (uri (svn-reference @@ -1286,7 +1286,7 @@ to the OSM opening hours specification.") (recursive? #f))) (sha256 (base32 - "12mcqswjijvx2n7hz7lnx83i3vjr5ib58cazqin10hczcwnd778q")) + "0pl1v0lj6lslnaxlr5isivg97xgnydsp0f491idvf93fi2g5grn5")) (file-name (string-append name "-" version "-checkout")) (modules '((guix build utils))) (snippet @@ -2099,6 +2099,7 @@ growing set of geoscientific methods.") ("python" ,python) ("python-chardet" ,python-chardet) ("python-dateutil" ,python-dateutil) + ("python-future" ,python-future) ("python-gdal" ,python-gdal) ("python-jinja2" ,python-jinja2) ("python-numpy" ,python-numpy) diff --git a/gnu/packages/gettext.scm b/gnu/packages/gettext.scm index 426be35a25..de28c2341b 100644 --- a/gnu/packages/gettext.scm +++ b/gnu/packages/gettext.scm @@ -39,6 +39,7 @@ #:use-module (gnu packages libunistring) #:use-module (gnu packages ncurses) #:use-module (gnu packages perl) + #:use-module (gnu packages perl-check) #:use-module (gnu packages tex) #:use-module (gnu packages xml) #:use-module (guix utils)) @@ -185,14 +186,14 @@ color, font attributes (weight, posture), or underlining.") (define-public po4a (package (name "po4a") - (version "0.57") + (version "0.61") (source (origin (method url-fetch) (uri (string-append "https://github.com/mquinson/po4a/releases/download/v" version "/po4a-" version ".tar.gz")) (sha256 (base32 - "15yd27krlpdvjhcnwys6i5k1ww62ifq2yx8k1zxyxiwy84myqmdv")))) + "1nw61dj7ymrsjps79vvfdzp549drwd51kyj598937zvyafq4r5b2")))) (build-system perl-build-system) (arguments `(#:phases @@ -225,12 +226,13 @@ color, font attributes (weight, posture), or underlining.") #t)) (add-before 'check 'disable-failing-tests (lambda _ - ;; FIXME: ‘Files ../t-03-asciidoc/Titles.po and Titles.po differ’. - (delete-file "t/03-asciidoc.t") - ;; FIXME: these tests require SGMLS.pm. (delete-file "t/01-classes.t") - (delete-file "t/16-sgml.t") + + (delete-file "t/add.t") + (delete-file "t/core-porefs.t") + (delete-file "t/fmt-asciidoc.t") + (delete-file "t/fmt-sgml.t") #t))))) (native-inputs @@ -242,6 +244,7 @@ color, font attributes (weight, posture), or underlining.") ;; For tests. ("docbook-xml" ,docbook-xml-4.1.2) + ("perl-test-pod" ,perl-test-pod) ("perl-yaml-tiny" ,perl-yaml-tiny) ("texlive" ,texlive-tiny))) (home-page "https://po4a.org/") diff --git a/gnu/packages/gimp.scm b/gnu/packages/gimp.scm index 865e697c4f..530a53a92b 100644 --- a/gnu/packages/gimp.scm +++ b/gnu/packages/gimp.scm @@ -6,6 +6,7 @@ ;;; Copyright © 2018 Leo Famulari <leo@famulari.name> ;;; Copyright © 2018 Thorsten Wilms <t_w_@freenet.de> ;;; Copyright © 2020 Marius Bakke <mbakke@fastmail.com> +;;; Copyright © 2020 Michael Rohleder <mike@rohleder.de> ;;; ;;; This file is part of GNU Guix. ;;; @@ -204,7 +205,7 @@ provided, as well as a framework to add new color models and data types.") (define-public gegl (package (name "gegl") - (version "0.4.24") + (version "0.4.26") (source (origin (method url-fetch) (uri (list (string-append "https://download.gimp.org/pub/gegl/" @@ -218,7 +219,7 @@ provided, as well as a framework to add new color models and data types.") "/gegl-" version ".tar.xz"))) (sha256 (base32 - "0ji57s7cba94vzy49agn7x47ca61rccm6rif0cb0s6rl4ygljrbp")))) + "097427icgpgvcx40019b3dm8m84cchz79pixzpz648drs8p1wdqg")))) (build-system meson-build-system) (arguments `(#:configure-flags @@ -249,7 +250,7 @@ buffers.") (define-public gimp (package (name "gimp") - (version "2.10.20") + (version "2.10.22") (source (origin (method url-fetch) (uri (string-append "https://download.gimp.org/pub/gimp/v" @@ -257,7 +258,7 @@ buffers.") "/gimp-" version ".tar.bz2")) (sha256 (base32 - "0g3vzh1bjffqx94mfghmwvkhncv71cgah2mnfx17q00s9f3rybz1")))) + "1fqqyshakvdarf1jipk2n33ibqr23ni22z3d8srq13bpydblpf1d")))) (build-system gnu-build-system) (outputs '("out" "doc")) ; 9 MiB of gtk-doc HTML @@ -309,6 +310,7 @@ buffers.") ("exif" ,libexif) ; optional, EXIF + XMP support ("lcms" ,lcms) ; optional, color management ("librsvg" ,librsvg) ; optional, SVG support + ("libxcursor" ,libxcursor) ; optional, Mouse Cursor support ("poppler" ,poppler) ; optional, PDF support ("poppler-data" ,poppler-data) ("python" ,python-2) ; optional, Python support diff --git a/gnu/packages/glib.scm b/gnu/packages/glib.scm index cde95b13eb..bba9461d44 100644 --- a/gnu/packages/glib.scm +++ b/gnu/packages/glib.scm @@ -13,6 +13,7 @@ ;;; Copyright © 2019 Giacomo Leidi <goodoldpaul@autistici.org> ;;; Copyright © 2019, 2020 Marius Bakke <mbakke@fastmail.com> ;;; Copyright © 2020 Nicolò Balzarotti <nicolo@nixo.xyz> +;;; Copyright © 2020 Arthur Margerit <ruhtra.mar@gmail.com> ;;; ;;; This file is part of GNU Guix. ;;; @@ -53,6 +54,7 @@ #:use-module (gnu packages package-management) #:use-module (gnu packages perl) #:use-module (gnu packages perl-check) + #:use-module (gnu packages popt) #:use-module (gnu packages pkg-config) #:use-module (gnu packages python) #:use-module (gnu packages python-xyz) @@ -61,6 +63,7 @@ #:use-module (gnu packages xml) #:use-module (gnu packages xorg) #:use-module (guix build-system gnu) + #:use-module (guix build-system cmake) #:use-module (guix build-system meson) #:use-module (guix build-system perl) #:use-module (guix build-system python) @@ -932,6 +935,45 @@ programming language. It also contains the utility (home-page "https://sourceforge.net/projects/dbus-cplusplus/") (license license:lgpl2.1+))) +(define-public dbus-cxx + (package + (name "dbus-cxx") + (version "0.12.0") + (source (origin + (method url-fetch) + (uri (string-append "mirror://sourceforge/dbus-cxx/dbus-cxx/" + version "/dbus-cxx-" version ".tar.gz")) + (sha256 + (base32 + "1acsgpkd9v7b9jdc79ijmh9dbdfrzgkwkaff518i3zpk7y6g5mzw")))) + (build-system cmake-build-system) + (arguments + `(#:configure-flags '("-DENABLE_TESTS=ON" + "-DENABLE_TOOLS=ON" + "-DENABLE_GLIBMM=ON"))) + (inputs `(("dbus" ,dbus) + ("libsigc++" ,libsigc++) + ("glibmm" ,glibmm) + ("python" ,python) + ("popt" ,popt) + ("expat" ,expat))) + (native-inputs `(("pkg-config" ,pkg-config) + ("m4" ,m4))) + (synopsis "C++ wrapper for dbus") + (description "Dbus-cxx is a C++ wrapper for dbus.\n +It exposes the C API to allow direct manipulation and +relies on sigc++ to provide an Oriented Object interface.\n +This package provide 2 utils: +@enumerate +@item @command{dbus-cxx-xml2cpp} to generate proxy and adapter +@item @command{dbus-cxx-introspect} to introspect a dbus interface +@end enumerate + +Some codes examples can be find at: +@url{https://dbus-cxx.github.io/examples.html}") + (home-page "https://dbus-cxx.github.io/") + (license license:gpl3))) + (define-public appstream-glib (package (name "appstream-glib") diff --git a/gnu/packages/gnome-xyz.scm b/gnu/packages/gnome-xyz.scm index 7f3ae41d17..77b4aada6f 100644 --- a/gnu/packages/gnome-xyz.scm +++ b/gnu/packages/gnome-xyz.scm @@ -593,7 +593,7 @@ and a few extra features.") ;; Note to maintainer: VLS must be built with a Vala toolchain the same ;; version or newer. Therefore when you update this package you may need ;; to update Vala too. - (version "0.48") + (version "0.48.1") (source (origin (method git-fetch) (uri (git-reference @@ -601,7 +601,7 @@ and a few extra features.") (commit version))) (file-name (git-file-name name version)) (sha256 - (base32 "0chgfpci247skrvsiq1l8cas8sj2z6z42dlarka3df3qwxmh0if0")))) + (base32 "12k095052jkvbiyz8gzkj6w7r7p16d5m18fyikl48yvh5nln8fw0")))) (build-system meson-build-system) (arguments '(#:glib-or-gtk? #t)) (inputs @@ -609,7 +609,7 @@ and a few extra features.") ("json-glib" ,json-glib) ("jsonrpc-glib" ,jsonrpc-glib) ("libgee" ,libgee) - ("vala" ,vala-0.48))) + ("vala" ,vala-0.50))) (native-inputs `(("pkg-config" ,pkg-config))) (home-page "https://github.com/benwaffle/vala-language-server") diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm index 4e7427fdb9..17cdc93a00 100644 --- a/gnu/packages/gnome.scm +++ b/gnu/packages/gnome.scm @@ -55,6 +55,7 @@ ;;; Copyright © 2020 Brice Waegeneire <brice@waegenei.re> ;;; Copyright © 2020 Arun Isaac <arunisaac@systemreboot.net> ;;; Copyright © 2020 Michael Rohleder <mike@rohleder.de> +;;; Copyright © 2020 Tim Gesthuizen <tim.gesthuizen@yahoo.de> ;;; ;;; This file is part of GNU Guix. ;;; @@ -215,6 +216,62 @@ #:use-module (ice-9 match) #:use-module (srfi srfi-1)) +(define-public gupnp-igd + (package + (name "gupnp-igd") + (version "1.2.0") + (source + (origin + (method url-fetch) + (uri + (string-append "mirror://gnome/sources/" name "/" + (version-major+minor version) "/" + name "-" version ".tar.xz")) + (sha256 + (base32 "1q9bw12ibih3yxpha3gm1dabyqg9gx6yxacbh4kxsgm1i84j0lab")))) + (build-system meson-build-system) + (outputs '("out" "doc")) + (arguments + `(#:glib-or-gtk? #t ; To wrap binaries and compile schemas + #:configure-flags (list "-Dgtk_doc=true") + #:phases + (modify-phases %standard-phases + (add-after 'unpack 'patch-docbook-xml + (lambda* (#:key inputs #:allow-other-keys) + (with-directory-excursion "doc" + (substitute* "gupnp-igd-docs.xml" + (("http://www.oasis-open.org/docbook/xml/4.1.2/") + (string-append (assoc-ref inputs "docbook-xml-4.1.2") + "/xml/dtd/docbook/")))) + #t)) + (add-after 'install 'move-doc + (lambda* (#:key outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (doc (assoc-ref outputs "doc"))) + (mkdir-p (string-append doc "/share")) + (rename-file + (string-append out "/share/gtk-doc") + (string-append doc "/share/gtk-doc")) + #t)))))) + (native-inputs + `(("docbook-xml-4.1.2" ,docbook-xml-4.1.2) + ("docbook-xsl" ,docbook-xsl) + ("glib:bin" ,glib "bin") + ("gobject-introspection" ,gobject-introspection) + ("gsettings-desktop-schemas" ,gsettings-desktop-schemas) + ("gtk-doc" ,gtk-doc) + ("pkg-config" ,pkg-config))) + (propagated-inputs + `(("glib" ,glib) + ("glib-networking" ,glib-networking) + ("gssdp" ,gssdp) + ("gupnp" ,gupnp) + ("libsoup" ,libsoup))) + (synopsis "UPnP IGD for GNOME") + (description "GUPnP-IGD is a library to handle UPnP IGD port mapping.") + (home-page "https://gitlab.gnome.org/GNOME/gupnp-igd") + (license license:lgpl2.1+))) + (define-public brasero (package (name "brasero") @@ -657,7 +714,7 @@ of known objects without needing a central registrar.") (define-public zeitgeist (package (name "zeitgeist") - (version "1.0.2") + (version "1.0.3") (source (origin (method git-fetch) @@ -669,7 +726,7 @@ of known objects without needing a central registrar.") (file-name (git-file-name name version)) (sha256 - (base32 "0ig3d3j1n0ghaxsgfww6g2hhcdwx8cljwwfmp9jk1nrvkxd6rnmv")))) + (base32 "0y6fyzxl5np4yskcxibd0p03h619w9ir907nhf40h02y0pk1kgkp")))) (build-system glib-or-gtk-build-system) (arguments `(#:configure-flags @@ -2783,16 +2840,16 @@ database is translated at Transifex.") (define-public system-config-printer (package (name "system-config-printer") - (version "1.5.12") + (version "1.5.13") (source (origin (method url-fetch) (uri (string-append "https://github.com/OpenPrinting/system-config-printer/releases/" - "download/" version + "download/v" version "/system-config-printer-" version ".tar.xz")) (sha256 - (base32 "050yrx1vfh9f001qsn06y1jcidxq0ymxr64kxykasr0zzryp25kb")))) + (base32 "18dqvi1s971lggkw6pv1sqxixlpg5a8rppzc1pxbanxa91jg18zf")))) (build-system glib-or-gtk-build-system) (arguments `(#:imported-modules ((guix build python-build-system) @@ -4222,10 +4279,10 @@ requirements and without using a different ABI compared to applications and libraries written in C.") (license license:lgpl2.1+))) -(define-public vala-0.48 +(define-public vala-0.50 (package (inherit vala) - (version "0.48.9") + (version "0.50.1") (source (origin (method url-fetch) (uri (string-append "mirror://gnome/sources/vala/" @@ -4233,7 +4290,7 @@ libraries written in C.") "vala-" version ".tar.xz")) (sha256 (base32 - "1agyrvslv2yh9ikiw7k5nw6j6il1l2zrzfan0pzdpb9xpg9idslw")))))) + "0v4g2gvn7x7cl33h8sj1y2xyyskw5ayaj4jm2jrd3my3r439z3cm")))))) (define-public vte (package @@ -5014,14 +5071,14 @@ keyboard shortcuts.") (define-public colord (package (name "colord") - (version "1.4.4") + (version "1.4.5") (source (origin (method url-fetch) (uri (string-append "https://www.freedesktop.org/software/colord/releases/" "colord-" version ".tar.xz")) (sha256 - (base32 "19f0938fr7nvvm3jr263dlknaq7md40zrac2npfyz25zc00yh3ws")))) + (base32 "05sydi6qqqx1rrqwnga1vbg9srkf89wdcfw5w4p4m7r37m2flx5p")))) (build-system meson-build-system) (arguments '(;; FIXME: One test fails: @@ -6383,7 +6440,7 @@ USB transfers with your high-level application or system daemon.") (define-public simple-scan (package (name "simple-scan") - (version "3.36.6") + (version "3.38.1") (source (origin (method url-fetch) @@ -6391,7 +6448,7 @@ USB transfers with your high-level application or system daemon.") (version-major+minor version) "/" "simple-scan-" version ".tar.xz")) (sha256 - (base32 "0x9hzqnji5l966yy2k5gppl8hqasn3sd5an4sr8srjmncxcs80ys")))) + (base32 "0grscz96bwj79ka4qvxh8h75avdx6824k8k38ylmaj6xbl6gi0hy")))) (build-system meson-build-system) ;; TODO: Fix icons in home screen, About dialogue, and scan menu. (arguments @@ -6423,14 +6480,14 @@ almost all of them.") (define-public eolie (package (name "eolie") - (version "0.9.99") + (version "0.9.100") (source (origin (method url-fetch) (uri (string-append "https://adishatz.org/eolie/eolie-" version ".tar.xz")) (sha256 (base32 - "0zj5v7wxqj7c20bmil127ah0vnjfzvvf6kzz82b9ip3846h43j02")))) + "1vzhfp8j1z3jvd5ndqfyn7nqrx3zdvx9mv1byjl36nnd9g63ji62")))) (build-system meson-build-system) (arguments `(#:glib-or-gtk? #t @@ -6784,7 +6841,7 @@ metadata in photo and video files of various formats.") (define-public shotwell (package (name "shotwell") - (version "0.30.9") + (version "0.30.11") (source (origin (method url-fetch) (uri (string-append "mirror://gnome/sources/shotwell/" @@ -6792,7 +6849,7 @@ metadata in photo and video files of various formats.") "shotwell-" version ".tar.xz")) (sha256 (base32 - "1y556yyzfya0310v5wqjkf17hy5lhf028iminvvgi2pdfva344id")))) + "12d26y40kjlv5x8f5g04wff33vh7mdjb8c41ydqbrwdip0jwy2n2")))) (build-system meson-build-system) (arguments '(#:glib-or-gtk? #t @@ -11746,6 +11803,13 @@ libraries. Applications do not need to be recompiled--or even restarted.") (string-append (assoc-ref inputs "python-pygobject") "/lib"))) #t)) + (add-after 'configure 'fix-ninja + (lambda _ + ;; #43296: meson(?) incorrectly assumes we want to link + ;; this PIE against a static libselinux. + (substitute* "build.ninja" + (("libselinux\\.a") "libselinux.so")) + #t)) (add-before 'check 'pre-check (lambda _ (system "Xvfb :1 &") @@ -11960,9 +12024,10 @@ your data.") `(("gtksourceview" ,gtksourceview))) ; required for source view (arguments `(#:build-type "release" + #:glib-or-gtk? #t #:phases (modify-phases %standard-phases - (add-after 'unpack 'skip-gtk-update-icon-cache + (add-after 'unpack 'skip-gtk-update-icon-cache (lambda _ (substitute* "build-aux/meson/meson_post_install.py" (("gtk-update-icon-cache") (which "true"))) diff --git a/gnu/packages/gnuzilla.scm b/gnu/packages/gnuzilla.scm index 06b00038bd..0b16796b13 100644 --- a/gnu/packages/gnuzilla.scm +++ b/gnu/packages/gnuzilla.scm @@ -550,8 +550,8 @@ from forcing GEXP-PROMISE." #:system system #:guile-for-build guile))) -(define %icecat-version "78.3.1-guix0-preview1") -(define %icecat-build-id "20200926000000") ;must be of the form YYYYMMDDhhmmss +(define %icecat-version "78.4.0-guix0-preview1") +(define %icecat-build-id "20201019000000") ;must be of the form YYYYMMDDhhmmss ;; 'icecat-source' is a "computed" origin that generates an IceCat tarball ;; from the corresponding upstream Firefox ESR tarball, using the 'makeicecat' @@ -573,11 +573,11 @@ from forcing GEXP-PROMISE." "firefox-" upstream-firefox-version ".source.tar.xz")) (sha256 (base32 - "1savwk91vhvg096w289xwpjvqbbd2ibfad90081hirlzd1kpvljz")))) + "1z3hj45bnd12z3g6ajv9qrgclca7fymi1sxj9l9nh9q6y6xz0g4f")))) - (upstream-icecat-base-version "78.3.1") ; maybe older than base-version + (upstream-icecat-base-version "78.4.0") ; maybe older than base-version ;;(gnuzilla-commit (string-append "v" upstream-icecat-base-version)) - (gnuzilla-commit "cd2af837fce69145effef83def6993d244887b03") + (gnuzilla-commit "05adddbf87a5ee11de7cd90794c331a178bcfd5c") (gnuzilla-source (origin (method git-fetch) @@ -589,7 +589,7 @@ from forcing GEXP-PROMISE." (string-take gnuzilla-commit 8))) (sha256 (base32 - "0266gp8vs4avlfdnr8dj7b47msxv1vkd0xpnifp04v4scvgj0yaj")))) + "128h0gnn1adinjkfmskxdjkvyh60li8czlar2xdjn2b6myiq5yny")))) ;; 'search-patch' returns either a valid file name or #f, so wrap it ;; in 'assume-valid-file-name' to avoid 'local-file' warnings. @@ -1161,11 +1161,11 @@ standards of the IceCat project.") (cpe-version . ,(first (string-split version #\-))))))) ;; Update this together with icecat! -(define %icedove-build-id "20201007000000") ;must be of the form YYYYMMDDhhmmss +(define %icedove-build-id "20201021000000") ;must be of the form YYYYMMDDhhmmss (define-public icedove (package (name "icedove") - (version "78.3.2") + (version "78.4.0") (source icecat-source) (properties `((cpe-name . "thunderbird_esr"))) @@ -1445,7 +1445,7 @@ standards of the IceCat project.") ;; in the Thunderbird release tarball. We don't use the release ;; tarball because it duplicates the Icecat sources and only adds the ;; "comm" directory, which is provided by this repository. - ,(let ((changeset "6ee0e0ff64f4ccda9c478426d0b5d15cd583f8e6")) + ,(let ((changeset "d5c3faff83924f56859ea4584eb0610c68a0cafa")) (origin (method hg-fetch) (uri (hg-reference @@ -1454,7 +1454,7 @@ standards of the IceCat project.") (file-name (string-append "thunderbird-" version "-checkout")) (sha256 (base32 - "0w8p35x53g5anck69xnpn688600n2pyx9c7y640szl1ssdsgch82"))))) + "146vp5048j5drzyvmsj9v34ifqcywr1gikwh4f1z4l9zad7b09rs"))))) ("autoconf" ,autoconf-2.13) ("cargo" ,rust-1.41 "cargo") ("clang" ,clang) diff --git a/gnu/packages/golang.scm b/gnu/packages/golang.scm index 0c9b269c2a..4ac9071457 100644 --- a/gnu/packages/golang.scm +++ b/gnu/packages/golang.scm @@ -59,6 +59,7 @@ #:use-module (gnu packages mp3) #:use-module (gnu packages textutils) #:use-module (gnu packages tls) + #:use-module (gnu packages web) #:use-module (ice-9 match) #:use-module (srfi srfi-1)) @@ -232,7 +233,7 @@ in the style of communicating sequential processes (@dfn{CSP}).") (package (inherit go-1.4) (name "go") - (version "1.14.4") + (version "1.14.10") (source (origin (method git-fetch) @@ -242,7 +243,7 @@ in the style of communicating sequential processes (@dfn{CSP}).") (file-name (git-file-name name version)) (sha256 (base32 - "08bazglmqp123c9dgrxflvxd011xsqfxsgah2kzbvca0mhm6qcm3")))) + "0h1nmqzjc0xxpn6n2hjq7692gdqkznagzdmiq9490yzkrrii2lgk")))) (arguments (substitute-keyword-arguments (package-arguments go-1.4) ((#:system system) @@ -918,6 +919,30 @@ time.") spec in Go.") (license license:bsd-3)))) +(define-public go-golang-org-x-xerrors + (let ((commit "5ec99f83aff198f5fbd629d6c8d8eb38a04218ca") + (revision "0")) + (package + (name "go-golang-org-x-xerrors") + (version (git-version "0.0.0" revision commit)) + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://go.googlesource.com/xerrors") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "1dbzc3gmf2haazpv7cgmv97rq40g2xzwbglc17vas8dwhgwgwrzb")))) + (build-system go-build-system) + (arguments + '(#:import-path "golang.org/x/xerrors")) + (synopsis "Go 1.13 error values") + (description + "This package holds the transition packages for the new Go 1.13 error values.") + (home-page "https://godoc.org/golang.org/x/xerrors") + (license license:bsd-3)))) + (define-public go-github-com-burntsushi-toml (package (name "go-github-com-burntsushi-toml") @@ -3975,7 +4000,7 @@ colorized or SGR defined output to the standard output.") (define-public go-github-com-google-go-cmp-cmp (package (name "go-github-com-google-go-cmp-cmp") - (version "0.3.1") + (version "0.5.2") (source (origin (method git-fetch) (uri (git-reference @@ -3984,11 +4009,13 @@ colorized or SGR defined output to the standard output.") (file-name (git-file-name name version)) (sha256 (base32 - "1caw49i0plkjxir7kdf5qhwls3krqwfmi7g4h392rdfwi3kfahx1")))) + "0qchy411jm9q2l9mf7x3ry2ycaqp9xdhf2nx14qrpzcxfigv2705")))) (build-system go-build-system) (arguments '(#:import-path "github.com/google/go-cmp/cmp" #:unpack-path "github.com/google/go-cmp")) + (propagated-inputs + `(("go-golang-org-x-xerrors" ,go-golang-org-x-xerrors))) (synopsis "Determine equality of values in Go") (description "This package provides a more powerful and safer alternative to @code{reflect.DeepEqual} for comparing whether two values @@ -5127,7 +5154,7 @@ escape sequences and color conversions.") `(("go-github.com-mattn-go-runewidth" ,go-github.com-mattn-go-runewidth))) (home-page "https://github.com/olekukonko/tablewriter/") (synopsis "Generate ASCII table") - (description "This package allows to generate ASCII table. Features: + (description "This package generates ASCII tables. Features: @itemize @item automatic Padding @item support Multiple Lines @@ -5827,3 +5854,190 @@ log package. All the functionality of the built-in package still exists and is unchanged. This package contains a series of small enhancements and additions.") (license license:bsd-3)))) + +(define-public go-github-com-frankban-quicktest + (package + (name "go-github-com-frankban-quicktest") + (version "1.11.1") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/frankban/quicktest") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "0b1b44b2hli2p969gqz30z8v9z6ahlklpqzi17nwk1lsjz9yv938")))) + (build-system go-build-system) + (arguments + '(#:import-path "github.com/frankban/quicktest")) + (propagated-inputs + `(("go-github-com-google-go-cmp-cmp" ,go-github-com-google-go-cmp-cmp) + ("go-github-com-kr-pretty" ,go-github-com-kr-pretty))) + (home-page "https://github.com/frankban/quicktest") + (synopsis "Quick helpers for testing Go applications") + (description + "Package quicktest provides a collection of Go helpers for writing +tests.") + (license license:expat))) + +(define-public go-github-com-bep-golibsass + (package + (name "go-github-com-bep-golibsass") + (version "0.7.0") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/bep/golibsass") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "0xk3m2ynbydzx87dz573ihwc4ryq0r545vz937szz175ivgfrhh3")) + (modules '((guix build utils))) + (snippet + '(begin + (delete-file-recursively "libsass_src") + #t)))) + (build-system go-build-system) + (arguments + '(#:import-path "github.com/bep/golibsass/libsass" + #:unpack-path "github.com/bep/golibsass" + ;; The dev build tag modifies the build to link to system libsass + ;; instead of including the bundled one (which we remove.) + ;; https://github.com/bep/golibsass/blob/v0.7.0/internal/libsass/a__cgo_dev.go + #:build-flags '("-tags" "dev") + #:phases + (modify-phases %standard-phases + (add-before 'build 'generate-bindings + ;; Generate bindings for system libsass, replacing the + ;; pre-generated bindings. + (lambda* (#:key inputs unpack-path #:allow-other-keys) + (mkdir-p (string-append "src/" unpack-path "/internal/libsass")) + (let ((libsass-src (string-append (assoc-ref inputs "libsass-src") "/src"))) + (substitute* (string-append "src/" unpack-path "/gen/main.go") + (("filepath.Join\\(rootDir, \"libsass_src\", \"src\"\\)") + (string-append "\"" libsass-src "\"")) + (("../../libsass_src/src/") + libsass-src))) + (invoke "go" "generate" (string-append unpack-path "/gen")) + #t)) + (replace 'check + (lambda* (#:key tests? import-path #:allow-other-keys) + (if tests? + (invoke "go" "test" import-path "-tags" "dev")) + #t))))) + (propagated-inputs + `(("libsass" ,libsass))) + (native-inputs + `(("go-github-com-frankban-quicktest" ,go-github-com-frankban-quicktest) + ("libsass-src" ,(package-source libsass)))) + (home-page "https://github.com/bep/golibsass") + (synopsis "Easy to use Go bindings for LibSass") + (description + "This package provides SCSS compiler support for Go applications.") + (license license:expat))) + +(define-public go-github-com-hashicorp-go-syslog + (package + (name "go-github-com-hashicorp-go-syslog") + (version "1.0.0") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/hashicorp/go-syslog") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "09vccqggz212cg0jir6vv708d6mx0f9w5bxrcdah3h6chgmal6v1")))) + (build-system go-build-system) + (arguments + '(#:import-path "github.com/hashicorp/go-syslog")) + (home-page "https://github.com/hashicorp/go-syslog") + (synopsis "Golang syslog wrapper, cross-compile friendly") + (description "This package is a very simple wrapper around log/syslog") + (license license:expat))) + +(define-public go-github-com-hjson-hjson-go + (package + (name "go-github-com-hjson-hjson-go") + (version "3.1.0") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/hjson/hjson-go") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "1dfdiahimg6z9idg8jiqxwnlwjnmasbjccx8gnag49cz4yfqskaz")))) + (build-system go-build-system) + (arguments + '(#:import-path "github.com/hjson/hjson-go")) + (home-page "https://hjson.org/") + (synopsis "Human JSON implementation for Go") + (description "Hjson is a syntax extension to JSON. It is intended to be +used like a user interface for humans, to read and edit before passing the +JSON data to the machine.") + (license license:expat))) + +(define-public go-golang-zx2c4-com-wireguard + (package + (name "go-golang-zx2c4-com-wireguard") + (version "0.0.20200320") + (source + (origin + (method git-fetch) + ;; NOTE: module URL is a redirect + ;; target: git.zx2c4.com/wireguard-go + ;; source: golang.zx2c4.com/wireguard + (uri (git-reference + (url "https://git.zx2c4.com/wireguard-go/") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "0fy4qsss3i3pkq1rpgjds4aipbwlh1dr9hbbf7jn2a1c63kfks0r")))) + (build-system go-build-system) + (arguments + '(#:import-path "golang.zx2c4.com/wireguard")) + (propagated-inputs + `(("go-golang-org-x-crypto" ,go-golang-org-x-crypto) + ("go-golang-org-x-net" ,go-golang-org-x-net) + ("go-golang-org-x-sys" ,go-golang-org-x-sys) + ("go-golang-org-x-text" ,go-golang-org-x-text))) + (home-page "https://git.zx2c4.com/wireguard") + (synopsis "Implementation of WireGuard in Go") + (description "This package is a Go Implementation of WireGuard.") + (license license:expat))) + +(define-public go-github-com-kardianos-minwinsvc + (package + (name "go-github-com-kardianos-minwinsvc") + (version "1.0.0") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/kardianos/minwinsvc") + (commit (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "0z941cxymkjcsj3p5l3g4wm2da3smz7iyqk2wbs5y8lmxd4kfzd8")))) + (build-system go-build-system) + (arguments + '(#:import-path "github.com/kardianos/minwinsvc")) + (home-page "https://github.com/kardianos/minwinsvc/") + ;; some packages (Yggdrasil) need it to compile + ;; it's a tiny package and it's easier to bundle it than to patch it out + (synopsis "Minimal windows only service stub for Go") + (description "Go programs designed to run from most *nix style operating +systems can import this package to enable running programs as services without +modifying them.") + (license license:zlib))) diff --git a/gnu/packages/gps.scm b/gnu/packages/gps.scm index fcb6ffc9bb..60305e62ce 100644 --- a/gnu/packages/gps.scm +++ b/gnu/packages/gps.scm @@ -151,7 +151,7 @@ between two other data points.") (define-public gama (package (name "gama") - (version "2.10") + (version "2.11") (source (origin (method url-fetch) @@ -159,7 +159,12 @@ between two other data points.") version ".tar.gz")) (sha256 (base32 - "14im3ahh849rildvs4qsk009jywf9w84vcmh7w44ajmlwcw7xiys")))) + "1iw7d0lfjhvp7lnyj0lxy62zpa2d05gfra3fq4sz8nyjwss0gmqh")) + (modules '((guix build utils))) + (snippet + '(begin + (delete-file-recursively "lib/expat") + #t)))) (build-system gnu-build-system) (arguments '(#:parallel-tests? #f)) ; race condition (native-inputs @@ -179,7 +184,7 @@ coordinates as well as partial support for adjustments in global coordinate syst (define-public gpxsee (package (name "gpxsee") - (version "7.34") + (version "7.35") (source (origin (method git-fetch) (uri (git-reference @@ -188,7 +193,7 @@ coordinates as well as partial support for adjustments in global coordinate syst (file-name (git-file-name name version)) (sha256 (base32 - "0cdq2bqgkcqcyvasnrlgpl97b0kfi65iq2q6yy7dpp9xw4w764b1")))) + "1schmymcsd8s0r26qwyx56z107ql8pgrk1pnqy19mc7fyirdwmp5")))) (build-system gnu-build-system) (arguments '(#:phases diff --git a/gnu/packages/gtk.scm b/gnu/packages/gtk.scm index d378e6557b..6a2384c79e 100644 --- a/gnu/packages/gtk.scm +++ b/gnu/packages/gtk.scm @@ -173,6 +173,12 @@ affine transformation (scale, rotation, shear, etc.).") (license license:lgpl2.1) ; or Mozilla Public License 1.1 (home-page "https://cairographics.org/"))) +(define-public cairo-sans-poppler + ;; Variant used to break the dependency cycle between Poppler and Cairo. + (package/inherit cairo + (inputs (alist-delete "poppler" (package-inputs cairo))) + (properties `((hidden? . #t))))) + (define-public cairo-xcb (package (inherit cairo) diff --git a/gnu/packages/guile-xyz.scm b/gnu/packages/guile-xyz.scm index 88c0586dc9..02281d60d1 100644 --- a/gnu/packages/guile-xyz.scm +++ b/gnu/packages/guile-xyz.scm @@ -31,6 +31,7 @@ ;;; Copyright © 2020 Masaya Tojo <masaya@tojo.tokyo> ;;; Copyright © 2020 Jesse Gibbons <jgibbons2357@gmail.com> ;;; Copyright © 2020 Mike Rosset <mike.rosset@gmail.com> +;;; Copyright © 2020 Leo Prikler <leo.prikler@student.tugraz.at> ;;; ;;; This file is part of GNU Guix. ;;; @@ -53,6 +54,7 @@ #:use-module (gnu packages algebra) #:use-module (gnu packages aspell) #:use-module (gnu packages autotools) + #:use-module (gnu packages avahi) #:use-module (gnu packages base) #:use-module (gnu packages bash) #:use-module (gnu packages compression) @@ -619,6 +621,45 @@ is not available for Guile 2.0.") (define-public guile3.0-fibers (deprecated-package "guile3.0-fibers" guile-fibers)) +(define-public guile-filesystem + (package + (name "guile-filesystem") + (version "0.1.0") + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://gitlab.com/leoprikler/guile-filesystem.git") + (commit version))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "1shmkc0y9r2sj3kw7hrsnamnp7y8xifkhf3m3rnfxczqg63k67vy")))) + (build-system gnu-build-system) + (native-inputs + `(("autoconf" ,autoconf-wrapper) + ("automake" ,automake) + ("pkg-config" ,pkg-config) + ("texinfo" ,texinfo))) + (inputs + `(("guile" ,guile-3.0))) + (home-page "https://gitlab.com/leoprikler/guile-filesystem") + (synopsis "Complementary library to Guile's built-in file system procedures") + (description "@code{guile-filesystem} provides a set of utility functions, +that augment Guile's support for handling files and their names.") + (license license:lgpl3+))) + +(define-public guile2.0-filesystem + (package + (inherit guile-filesystem) + (name "guile2.0-filesystem") + (inputs `(("guile" ,guile-2.0))))) + +(define-public guile2.2-filesystem + (package + (inherit guile-filesystem) + (name "guile2.2-filesystem") + (inputs `(("guile" ,guile-2.2))))) + (define-public guile-syntax-highlight (package (name "guile-syntax-highlight") @@ -1064,20 +1105,19 @@ allows users to interact with the Guile REPL through Jupyter.") (define-public guile-sparql (package (name "guile-sparql") - (version "0.0.7") + (version "0.0.8") (source (origin (method url-fetch) (uri (string-append "https://github.com/roelj/guile-sparql/releases/download/" version "/guile-sparql-" version ".tar.gz")) (sha256 - (base32 "1drnvhsgl0gc5crmb16yyw1j98nkhwwcgssv9vgm36ng43nnzffd")))) + (base32 "1jf4972f9fpm0rd865xpnc9mzl3xv6vhfnp0iygadydy905z9nln")))) (build-system gnu-build-system) - (arguments `(#:tests? #f)) ; There are no tests. (native-inputs `(("pkg-config" ,pkg-config))) (inputs - `(("guile" ,guile-2.2))) + `(("guile" ,guile-3.0))) (home-page "https://github.com/roelj/guile-sparql") (synopsis "SPARQL module for Guile") (description "This package provides the functionality to query a SPARQL @@ -2265,7 +2305,7 @@ inspired by the SCSH regular expression system.") (description "Haunt is a static site generator written in Guile Scheme. Haunt features a functional build system and an extensible interface for reading articles in any format.") - (home-page "http://haunt.dthompson.us") + (home-page "https://dthompson.us/projects/haunt.html") (license license:gpl3+))) (define-public guile2.2-haunt @@ -3130,7 +3170,7 @@ perform geometrical transforms on JPEG images.") ("guile" ,guile-2.2) ("glib:bin" ,glib "bin") ("texinfo" ,texinfo) - ("gettext" ,gnu-gettext) + ("gettext" ,gettext-minimal) ("perl" ,perl))) (inputs `(;; Guile @@ -4007,3 +4047,100 @@ features not found in the standard read procedure such as a compatible mode with support for other RnRS standards and a tolerant mode that continues on errors.") (license license:expat))) + +(define-public guile-avahi + (let ((commit "6d43caf64f672a9694bf6c98bbf7a734f17a51e8") + (revision "1")) + (package + (name "guile-avahi") + (version (git-version "0.4.0" revision commit)) + (source (origin + (method git-fetch) + (uri (git-reference + (url "git://git.sv.gnu.org/guile-avahi.git") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "0fvrf8x22yvc71180hd3xkhspg9yvadi0pbv8shzlsaxqncwy1m9")) + (modules '((guix build utils))))) + (build-system gnu-build-system) + (arguments + `(#:modules (((guix build guile-build-system) + #:select (target-guile-effective-version)) + ,@%gnu-build-system-modules) + #:imported-modules ((guix build guile-build-system) + ,@%gnu-build-system-modules) + #:make-flags + '("GUILE_AUTO_COMPILE=0") ;to prevent guild warnings + #:phases + (modify-phases %standard-phases + (add-before 'check 'fix-guile-avahi-file-name + (lambda* (#:key outputs #:allow-other-keys) + (with-directory-excursion "src" + (invoke "make" "install" + "-j" (number->string + (parallel-job-count)))) + (let* ((out (assoc-ref outputs "out")) + (files (find-files "modules" ".scm"))) + (substitute* files + (("\"guile-avahi-v-0\"") + (format #f "\"~a/lib/guile/~a/extensions/guile-avahi-v-0\"" + out (target-guile-effective-version)))) + #t)))))) + (inputs + `(("guile" ,guile-3.0) + ("avahi" ,avahi))) + (native-inputs + `(("autoconf" ,autoconf) + ("automake" ,automake) + ("libtool" ,libtool) + ("pkg-config" ,pkg-config) + ("texinfo" ,texinfo))) + (synopsis "Guile bindings to Avahi") + (description + "This package provides bindings for Avahi. It allows programmers to +use functionalities of the Avahi client library from Guile Scheme programs. +Avahi itself is an implementation of multicast DNS (mDNS) and DNS Service +Discovery (DNS-SD).") + (home-page "https://www.nongnu.org/guile-avahi/") + (license license:lgpl3+)))) + +(define-public guile-mkdir-p + (package + (name "guile-mkdir-p") + (version "1.0.1") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://code.divoplade.fr/mkdir-p.git") + (commit (string-append "v" version)))) + (sha256 + (base32 "01k20rjcv6p0spmw8ls776aar6bfw0jxw46d2n12w0cb2p79xjv8")) + (file-name (git-file-name name version)) + (snippet + `(begin + (with-output-to-file ".tarball-version" + (lambda _ (format #t "~a~%" ,version))) + #t)))) + (build-system gnu-build-system) + (arguments `()) + (native-inputs + `(("guile" ,guile-3.0) + ("texinfo" ,texinfo) + ("autoconf" ,autoconf) + ("autoconf-archive" ,autoconf-archive) + ("automake" ,automake) + ("pkg-config" ,pkg-config) + ("gettext" ,gettext-minimal))) + (inputs `(("guile" ,guile-3.0))) + (synopsis "Implementation of a recursive @code{mkdir} for Guile") + (description + "This package provides within the @code{(mkdir-p)} module the +@code{mkdir-p} function that tries to create the chain of directories +recursively. It also provides new versions of @code{open-output-file}, +@code{call-with-output-file} and @code{with-output-to-file} to create the +directory of its argument if it does not exist.") + (home-page "https://mkdir-p.divoplade.fr") + (license license:asl2.0))) diff --git a/gnu/packages/guile.scm b/gnu/packages/guile.scm index 74f4e5adbc..6d93d7432f 100644 --- a/gnu/packages/guile.scm +++ b/gnu/packages/guile.scm @@ -737,16 +737,16 @@ type system, elevating types to first-class status.") (define-public guile-git (package (name "guile-git") - (version "0.3.0") + (version "0.4.0") (home-page "https://gitlab.com/guile-git/guile-git.git") (source (origin (method url-fetch) (uri (string-append "https://gitlab.com/guile-git/guile-git/uploads/" - "4c563d8e7e1ff84396abe8ca7011bcaf/guile-git-" + "2600bb0dfdfb00bfbe46811dccad51d8/guile-git-" version ".tar.gz")) (sha256 (base32 - "0c5i3d16hp7gp9rd78vk9zc45js8bphf92m4lbb5gyi4l1yl7kkm")))) + "1kxyg9x2aa1pg69cl48wysq0pbxvwfahy1xpl5ab6p8babhf7kic")))) (build-system gnu-build-system) (arguments `(#:make-flags '("GUILE_AUTO_COMPILE=0"))) ; to prevent guild warnings @@ -769,15 +769,7 @@ manipulate repositories of the Git version control system.") (package-for-guile-2.2 guile-git)) (define-public guile2.0-git - (let ((base (package-for-guile-2.0 guile-git))) - (package - (inherit base) - ;; Libgit2's Guile test driver requires (ice-9 textual-ports), which is - ;; not in Guile 2.0. Thus, keep LIBGIT2 as-is here (i.e., built against - ;; Guile 2.2). - (inputs `(("libgit2" ,libgit2) - ,@(srfi-1:alist-delete "libgit2" - (package-inputs base))))))) + (package-for-guile-2.0 guile-git)) (define-deprecated-guile3.0-package guile3.0-git) diff --git a/gnu/packages/hardware.scm b/gnu/packages/hardware.scm index e4a8112a7d..b1aaa21980 100644 --- a/gnu/packages/hardware.scm +++ b/gnu/packages/hardware.scm @@ -289,7 +289,7 @@ be dangerous and may void your CPU or system board's warranty.") (define-public wavemon (package (name "wavemon") - (version "0.9.1") + (version "0.9.2") (source (origin (method git-fetch) @@ -298,7 +298,24 @@ be dangerous and may void your CPU or system board's warranty.") (commit (string-append "v" version)))) (file-name (git-file-name name version)) (sha256 - (base32 "109ycwnjjqc2vpnd8b86njfifczlxglnyv4rh2qmbn2i5nw2wryg")))) + (base32 "0y984wm03lzqf7bk06a07mw7d1fzjsp9x7zxcvlx4xqmv7wlgb29")) + (patches + (list + ;; Two upstream commits required to find the correct <ncurses.h>. + (origin + (method url-fetch) + (uri (string-append + "https://github.com/uoaerg/wavemon/commit/" + "ce7f9c4da90767bb50e4b80cdb3cee61264d8d12.patch")) + (sha256 + (base32 "04b4qbsa5l0jr41dkj0c8yw74lm8z8b50nw1iwas6hnzq41dwdm3"))) + (origin + (method url-fetch) + (uri (string-append + "https://github.com/uoaerg/wavemon/commit/" + "31e3def1c7332ad830bd966e7d21b343b4f2da54.patch")) + (sha256 + (base32 "0kyv3sbkv9hl8b88xnk6bq550axh9wzfjlhp3jbvqd4fqf7663br"))))))) (build-system gnu-build-system) (arguments `(#:make-flags diff --git a/gnu/packages/haskell-apps.scm b/gnu/packages/haskell-apps.scm index 1de8b040f1..da1bd2128c 100644 --- a/gnu/packages/haskell-apps.scm +++ b/gnu/packages/haskell-apps.scm @@ -350,7 +350,7 @@ to @code{cabal repl}).") (build-system haskell-build-system) (arguments `(#:configure-flags - '("--flags=-Android -Assistant -Pairing -Webapp") + '("--flags=-Android -Webapp") #:phases (modify-phases %standard-phases (add-before 'configure 'patch-shell-for-tests @@ -457,6 +457,7 @@ to @code{cabal repl}).") ("ghc-feed" ,ghc-feed) ("ghc-filepath-bytestring" ,ghc-filepath-bytestring) ("ghc-free" ,ghc-free) + ("ghc-hinotify" ,ghc-hinotify) ("ghc-hslogger" ,ghc-hslogger) ("ghc-http-client" ,ghc-http-client) ("ghc-http-conduit" ,ghc-http-conduit) @@ -466,7 +467,10 @@ to @code{cabal repl}).") ("ghc-memory" ,ghc-memory) ("ghc-monad-control" ,ghc-monad-control) ("ghc-monad-logger" ,ghc-monad-logger) + ("ghc-mountpoints" ,ghc-mountpoints) ("ghc-network" ,ghc-network) + ("ghc-network-info" ,ghc-network-info) + ("ghc-network-multicast" ,ghc-network-multicast) ("ghc-old-locale" ,ghc-old-locale) ("ghc-optparse-applicative" ,ghc-optparse-applicative) ("ghc-persistent" ,ghc-persistent) diff --git a/gnu/packages/haskell-xyz.scm b/gnu/packages/haskell-xyz.scm index 5b9da15630..19eabd949b 100644 --- a/gnu/packages/haskell-xyz.scm +++ b/gnu/packages/haskell-xyz.scm @@ -26,6 +26,8 @@ ;;; Copyright © 2020 JoJo <jo@jo.zone> ;;; Copyright © 2020 Nicolas Goaziou <mail@nicolasgoaziou.fr> ;;; Copyright © 2020 Alexandru-Sergiu Marton <brown121407@member.fsf.org> +;;; Copyright © 2020 Carlo Holl <carloholl@gmail.com> +;;; Copyright © 2020 Christopher Lemmer Webber <cwebber@dustycloud.org> ;;; ;;; This file is part of GNU Guix. ;;; @@ -1551,6 +1553,118 @@ constructor which can be parameterised by a string-like type like: the resulting type will be insensitive to cases.") (license license:bsd-3))) +(define-public ghc-cassava + (package + (name "ghc-cassava") + (version "0.5.2.0") + (source + (origin + (method url-fetch) + (uri (string-append + "https://hackage.haskell.org/package/cassava/cassava-" + version + ".tar.gz")) + (sha256 + (base32 + "01h1zrdqb313cjd4rqm1107azzx4czqi018c2djf66a5i7ajl3dk")))) + (build-system haskell-build-system) + (inputs + `(("ghc-attoparsec" ,ghc-attoparsec) + ("ghc-hashable" ,ghc-hashable) + ("ghc-scientific" ,ghc-scientific) + ("ghc-unordered-containers" ,ghc-unordered-containers) + ("ghc-vector" ,ghc-vector) + ("ghc-only" ,ghc-only) + ("ghc-text-short" ,ghc-text-short) + ("ghc-bytestring-builder" ,ghc-bytestring-builder))) + (native-inputs + `(("ghc-hunit" ,ghc-hunit) + ("ghc-quickcheck" ,ghc-quickcheck) + ("ghc-quickcheck-instances" ,ghc-quickcheck-instances) + ("ghc-test-framework" ,ghc-test-framework) + ("ghc-test-framework-hunit" ,ghc-test-framework-hunit) + ("ghc-test-framework-quickcheck2" ,ghc-test-framework-quickcheck2))) + (arguments + `(#:cabal-revision + ("1" + "1ph8rf91z4nf1ryrh9s4gd1kq98jlgk2manwddkpch8k0n9xvfk4") + #:configure-flags '("--flags=-bytestring--lt-0_10_4"))) + (home-page "https://github.com/haskell-hvr/cassava") + (synopsis "CSV parsing and encoding library") + (description + "@code{cassava} is a library for parsing and encoding +@url{https://tools.ietf.org/html/rfc4180, RFC 4180} compliant @url{https:// +en.wikipedia.org/wiki/Comma-separated_values, comma-separated values (CSV)} +data, which is a textual line-oriented format commonly used for exchanging +tabular data. + +@code{cassava}'s API includes support for: + +@itemize @bullet + +@item +Index-based record-conversion +@item +Name-based record-conversion +@item +Typeclass directed conversion of fields and records +@item +Built-in field-conversion instances for standard types +@item +Customizable record-conversion instance derivation via GHC generics +@item +Low-level @url{https://hackage.haskell.org/package/bytestring), bytestring} +builders (see @url{https://hackage.haskell.org/package/cassava-0.5.2.0/docs/ +Data-Csv-Builder.html, Data.Csv.Builder}) +@item +Incremental decoding and encoding API (see @url{https://hackage.haskell.org/ +package/cassava-0.5.2.0/docs/Data-Csv-Incremental.html, Data.Csv.Incremental}) +@item +Streaming API for constant-space decoding (see @url{https://hackage.haskell.org/ +package/cassava-0.5.2.0/docs/Data-Csv-Streaming.html, Data.Csv.Streaming}) +@end itemize + +Moreover, this library is designed to be easy to use; for instance, here's a +very simple example of encoding CSV data: + +@verbatim +>>> Data.Csv.encode [(\"John\",27),(\"Jane\",28)] +\"John,27\r\nJane,28\r\n\" +@end verbatim +") + (license license:bsd-3))) + +(define-public ghc-cassava-megaparsec + (package + (name "ghc-cassava-megaparsec") + (version "2.0.2") + (source + (origin + (method url-fetch) + (uri (string-append + "https://hackage.haskell.org/package/cassava-megaparsec/" + "cassava-megaparsec-" + version + ".tar.gz")) + (sha256 + (base32 + "03x1462agrfdagklp8c89b8p4z2hd8nbf6d3895sz770zjkawda7")))) + (build-system haskell-build-system) + (inputs + `(("ghc-cassava" ,ghc-cassava) + ("ghc-megaparsec" ,ghc-megaparsec) + ("ghc-unordered-containers" ,ghc-unordered-containers) + ("ghc-vector" ,ghc-vector))) + (native-inputs + `(("ghc-hspec" ,ghc-hspec) + ("ghc-hspec-megaparsec" ,ghc-hspec-megaparsec))) + (home-page "https://github.com/stackbuilders/cassava-megaparsec") + (synopsis "Megaparsec parser for CSV files that plays nicely with Cassava") + (description + "Alternative parser for the Cassava package written with Megaparsec that +provides for better error messages at the expense of some speed.") + (license license:expat))) + (define-public ghc-cborg (package (name "ghc-cborg") @@ -2608,6 +2722,36 @@ a vocabulary for working with them.") @code{ghc-contravariant} package.") (license license:expat))) +(define-public ghc-control-monad-free + (package + (name "ghc-control-monad-free") + (version "0.6.2") + (source + (origin + (method url-fetch) + (uri (string-append + "https://hackage.haskell.org/" + "package/control-monad-free/control-monad-free-" + version + ".tar.gz")) + (sha256 + (base32 + "1habgf7byffqf1rqjkzpihvdhclaafgqsqpfpwp3fgpj5ayk1j33")))) + (build-system haskell-build-system) + (home-page "https://github.com/pepeiborra/control-monad-free") + (synopsis "Free monads and monad transformers") + (description + "This package provides datatypes to construct Free monads, Free monad +transformers, and useful instances. In addition it provides the constructs to +avoid quadratic complexity of left associative bind, as explained in: + +@itemize @bullet +@item +Janis Voigtlander, @cite{Asymptotic Improvement of Computations over +Free Monads, MPC'08} +@end itemize") + (license license:public-domain))) + (define-public ghc-convertible (package (name "ghc-convertible") @@ -2634,6 +2778,30 @@ pure @code{Either} value. This means that you need not remember which specific function performs the conversion you desire.") (license license:bsd-3))) +(define-public ghc-csv + (package + (name "ghc-csv") + (version "0.1.2") + (source + (origin + (method url-fetch) + (uri (string-append + "https://hackage.haskell.org/package/csv/csv-" + version + ".tar.gz")) + (sha256 + (base32 + "00767ai09wm7f0yzmpqck3cpgxncpr9djnmmz5l17ajz69139x4c")))) + (build-system haskell-build-system) + (home-page "http://hackage.haskell.org/package/csv") + (synopsis "CSV loader and dumper") + (description + "This library parses and dumps documents that are formatted according to +RFC 4180, @cite{The common Format and MIME Type for Comma-Separated +Values (CSV) Files}. This format is used, among many other things, as a +lingua franca for spreadsheets, and for certain web services.") + (license license:expat))) + (define-public ghc-data-accessor (package (name "ghc-data-accessor") @@ -2932,6 +3100,35 @@ to add D-Bus support to Haskell applications, without the awkward interfaces common to foreign bindings.") (license license:asl2.0))) +(define-public ghc-decimal + (package + (name "ghc-decimal") + (version "0.5.1") + (source + (origin + (method url-fetch) + (uri (string-append + "https://hackage.haskell.org/package/Decimal/Decimal-" + version + ".tar.gz")) + (sha256 + (base32 + "0k7kh05mr2f54w1lpgq1nln0h8k6s6h99dyp5jzsb9cfbb3aap2p")))) + (build-system haskell-build-system) + (native-inputs + `(("ghc-hunit" ,ghc-hunit) + ("ghc-quickcheck" ,ghc-quickcheck) + ("ghc-test-framework" ,ghc-test-framework) + ("ghc-test-framework-quickcheck2" ,ghc-test-framework-quickcheck2) + ("ghc-test-framework-hunit" ,ghc-test-framework-hunit))) + (home-page "https://github.com/PaulJohnson/Haskell-Decimal") + (synopsis "Decimal numbers with variable precision") + (description + "A decimal number has an integer mantissa and a negative exponent. +The exponent can be interpreted as the number of decimal places in the +value.") + (license license:bsd-3))) + (define-public ghc-deepseq-generics (package (name "ghc-deepseq-generics") @@ -3328,7 +3525,7 @@ Writer monad), where list append quickly becomes too expensive.") (define-public ghc-doctest (package (name "ghc-doctest") - (version "0.16.2") + (version "0.16.3") (source (origin (method url-fetch) @@ -3338,20 +3535,23 @@ Writer monad), where list append quickly becomes too expensive.") ".tar.gz")) (sha256 (base32 - "0lk4cjfzi5bx2snfzw1zi06li0gvgz3ckfh2kwa98l7nxfdl39ag")))) + "1y1l7aa80qkib1z8lsizgg7fpfdmdwhxvi5m255a42jdkjgn5sfg")))) (build-system haskell-build-system) (arguments `(#:tests? #f)) ; FIXME: missing test framework (inputs - `(("ghc-syb" ,ghc-syb) - ("ghc-paths" ,ghc-paths) - ("ghc-base-compat" ,ghc-base-compat) + `(("ghc-base-compat" ,ghc-base-compat) ("ghc-code-page" ,ghc-code-page) - ("ghc-hunit" ,ghc-hunit) - ("ghc-hspec" ,ghc-hspec) + ("ghc-paths" ,ghc-paths) + ("ghc-syb" ,ghc-syb))) + (native-inputs + `(("ghc-hunit" ,ghc-hunit) ("ghc-quickcheck" ,ghc-quickcheck) - ("ghc-stringbuilder" ,ghc-stringbuilder) + ("ghc-hspec" ,ghc-hspec) + ("ghc-hspec-core" ,ghc-hspec-core) + ("ghc-mockery" ,ghc-mockery) + ("ghc-setenv" ,ghc-setenv) ("ghc-silently" ,ghc-silently) - ("ghc-setenv" ,ghc-setenv))) + ("ghc-stringbuilder" ,ghc-stringbuilder))) (home-page "https://github.com/sol/doctest#readme") (synopsis "Test interactive Haskell examples") @@ -5638,6 +5838,68 @@ feature, allowing applications to subscribe to notifications when a file is accessed or modified.") (license license:bsd-3))) +(define-public ghc-hledger-lib + (package + (name "ghc-hledger-lib") + (version "1.19.1") + (source + (origin + (method url-fetch) + (uri (string-append + "https://hackage.haskell.org/package/hledger-lib/hledger-lib-" + version + ".tar.gz")) + (sha256 + (base32 + "0py11011r358nmnvwwkc8mlx6mpy36jm8sqlr4i8ihx3x0zjdgya")))) + (build-system haskell-build-system) + (inputs + `(("ghc-decimal" ,ghc-decimal) + ("ghc-glob" ,ghc-glob) + ("ghc-aeson" ,ghc-aeson) + ("ghc-aeson-pretty" ,ghc-aeson-pretty) + ("ghc-ansi-terminal" ,ghc-ansi-terminal) + ("ghc-base-compat-batteries" ,ghc-base-compat-batteries) + ("ghc-blaze-markup" ,ghc-blaze-markup) + ("ghc-call-stack" ,ghc-call-stack) + ("ghc-cassava" ,ghc-cassava) + ("ghc-cassava-megaparsec" ,ghc-cassava-megaparsec) + ("ghc-cmdargs" ,ghc-cmdargs) + ("ghc-data-default" ,ghc-data-default) + ("ghc-extra" ,ghc-extra) + ("ghc-fgl" ,ghc-fgl) + ("ghc-file-embed" ,ghc-file-embed) + ("ghc-hashtables" ,ghc-hashtables) + ("ghc-megaparsec" ,ghc-megaparsec) + ("ghc-old-time" ,ghc-old-time) + ("ghc-parser-combinators" ,ghc-parser-combinators) + ("ghc-pretty-show" ,ghc-pretty-show) + ("ghc-regex-tdfa" ,ghc-regex-tdfa) + ("ghc-safe" ,ghc-safe) + ("ghc-split" ,ghc-split) + ("ghc-tabular" ,ghc-tabular) + ("ghc-tasty" ,ghc-tasty) + ("ghc-tasty-hunit" ,ghc-tasty-hunit) + ("ghc-timeit" ,ghc-timeit) + ("ghc-uglymemo" ,ghc-uglymemo) + ("ghc-unordered-containers" ,ghc-unordered-containers) + ("ghc-utf8-string" ,ghc-utf8-string))) + (native-inputs + `(("ghc-doctest" ,ghc-doctest))) + (home-page "https://hledger.org") + (synopsis "Reusable library providing the core functionality of hledger") + (description + "A reusable library containing hledger's core functionality. +This is used by most hledger* packages so that they support the same common +file formats, command line options, reports etc. + +hledger is a robust, cross-platform set of tools for tracking money, time, or +any other commodity, using double-entry accounting and a simple, editable file +format, with command-line, terminal and web interfaces. It is a Haskell +rewrite of Ledger, and one of the leading implementations of Plain Text +Accounting.") + (license license:gpl3))) + (define-public ghc-hmatrix (package (name "ghc-hmatrix") @@ -5841,6 +6103,34 @@ are described in a file named @code{package.yaml}. Both @code{cabal2nix} and @code{package.yaml}.") (license license:expat))) +(define-public ghc-hspec-megaparsec + (package + (name "ghc-hspec-megaparsec") + (version "2.0.1") + (source + (origin + (method url-fetch) + (uri (string-append + "https://hackage.haskell.org/" + "package/hspec-megaparsec/hspec-megaparsec-" + version + ".tar.gz")) + (sha256 + (base32 + "0w8nn2rh01lkiwsiyqh3gviklhfmy0245rakj94dmliyljw8skfg")))) + (build-system haskell-build-system) + (inputs + `(("ghc-hspec-expectations" ,ghc-hspec-expectations) + ("ghc-megaparsec" ,ghc-megaparsec))) + (native-inputs + `(("ghc-hspec" ,ghc-hspec))) + (home-page "https://github.com/mrkkrp/hspec-megaparsec") + (synopsis "Utility functions for testing Megaparsec parsers with Hspec") + (description + "Provides a small set of helper functions for testing Megaparsec parsers +with Hspec.") + (license license:bsd-3))) + (define-public ghc-hs-bibutils (package (name "ghc-hs-bibutils") @@ -7169,6 +7459,48 @@ Transformers\" available @uref{http://okmij.org/ftp/papers/LogicT.pdf, online}.") (license license:bsd-3))) +(define-public ghc-lucid + (package + (name "ghc-lucid") + (version "2.9.12") + (source + (origin + (method url-fetch) + (uri (string-append + "https://hackage.haskell.org/package/lucid/lucid-" + version + ".tar.gz")) + (sha256 + (base32 + "156wniydd1hlb7rygbm95zln8ky8lai8rn2apkkv0rax9cdw6jrh")))) + (build-system haskell-build-system) + (inputs + `(("ghc-blaze-builder" ,ghc-blaze-builder) + ("ghc-hashable" ,ghc-hashable) + ("ghc-mmorph" ,ghc-mmorph) + ("ghc-unordered-containers" ,ghc-unordered-containers))) + (native-inputs + `(("ghc-hunit" ,ghc-hunit) + ("ghc-hspec" ,ghc-hspec) + ("ghc-bifunctors" ,ghc-bifunctors))) + (arguments + `(#:cabal-revision + ("1" + "1f0whk5ncanxfjjanrf6rqyncig2xgc5mh2j0sqy3nrlyjr9aqq9"))) + (home-page "https://github.com/chrisdone/lucid") + (synopsis "Haskell DSL for rendering HTML") + (description "Clear to write, read and edit Haskell DSL for HTML. + +@itemize @bullet +@item +Names are consistent, and do not conflict with base or are keywords +(all have suffix @code{-}). +@item +Same combinator can be used for attributes and elements +(e.g. @code{style_}). +@end itemize") + (license license:bsd-3))) + (define-public ghc-lzma (package (name "ghc-lzma") @@ -7975,6 +8307,28 @@ semi-direct products, \"deletable\" monoids, \"split\" monoids, and \"cut\" monoids.") (license license:bsd-3))) +(define-public ghc-mountpoints + (package + (name "ghc-mountpoints") + (version "1.0.2") + (source + (origin + (method url-fetch) + (uri (string-append + "https://hackage.haskell.org/package/mountpoints/mountpoints-" + version + ".tar.gz")) + (sha256 + (base32 + "1hnm31pqcffphyc463wf0vbik9fzm5lb2r4wjdc1y4dqzmjdzz37")))) + (build-system haskell-build-system) + (home-page + "http://hackage.haskell.org/package/mountpoints") + (synopsis "Haskell library for listing mount points") + (description "This library provides Haskell bindings for checking +currently mounted filesystems.") + (license license:lgpl2.1+))) + (define-public ghc-mtl-compat (package (name "ghc-mtl-compat") @@ -8234,6 +8588,36 @@ getting a list of all the network interfaces and their respective IPv4, IPv6 and MAC addresses.") (license license:bsd-3))) +(define-public ghc-network-multicast + (package + (name "ghc-network-multicast") + (version "0.3.2") + (source + (origin + (method url-fetch) + (uri (string-append + "https://hackage.haskell.org/package/network-multicast/network-multicast-" + version + ".tar.gz")) + (sha256 + (base32 + "0whvi0pbwjy6dbwfdf9rv1j3yr3lcmfp3q7a8pwq63g537l4l2l3")))) + (build-system haskell-build-system) + (inputs + `(("ghc-network" ,ghc-network) + ("ghc-network-bsd" ,ghc-network-bsd))) + (home-page + "http://hackage.haskell.org/package/network-multicast") + (synopsis "Simple multicast library for Haskell") + (description + "This package provides the Network.Multicast Haskell module for +sending UDP datagrams over multicast (class D) addresses.") + ;; Note that this is technically under CC0 1.0 and Expat, though it's not + ;; totally clear what the breakdown is. Since CC0 1.0 is effectively + ;; "public domain with a minimal fallback license", figuring marking it + ;; as effectively Expat is probably correct. + (license license:expat))) + (define-public ghc-network-uri (package (name "ghc-network-uri") @@ -8441,6 +8825,38 @@ old @code{time} library. For new projects, the newer @uref{https://hackage.haskell.org/package/time, time library} is recommended.") (license license:bsd-3))) +(define-public ghc-only + (package + (name "ghc-only") + (version "0.1") + (source + (origin + (method url-fetch) + (uri (string-append + "https://hackage.haskell.org/package/Only/Only-" + version + ".tar.gz")) + (sha256 + (base32 + "0rdj3a629fk2vp121jq8mf2smkblrz5w3cxhlsyx6my2x29s2ymb")))) + (build-system haskell-build-system) + (arguments + `(#:cabal-revision + ("1" + "1ahk7p34kmh041mz7lyc10nhcxgv2i4z8nvzxvqm2x34gslmsbzr"))) + (home-page "https://hackage.haskell.org/package/Only") + (synopsis "The 1-tuple type or single-value collection") + (description + "This package provides a canonical anonymous 1-tuple type missing from +Haskell for attaching typeclass instances. + +There is also the @url{https://hackage.haskell.org/package/OneTuple, OneTuple +package} which by using a boxed @code{data}-type provides a 1-tuple type which +has laziness properties which are more faithful to the ones of Haskell's +native tuples; whereas the primary purpose of @code{Only} is to provide the +traditionally so named type-wrapper for attaching typeclass instances.") + (license license:bsd-3))) + (define-public ghc-opengl (package (name "ghc-opengl") @@ -8722,6 +9138,45 @@ require aeson (description "Safe conversions between textual types") (license license:isc))) +(define-public ghc-text-short + (package + (name "ghc-text-short") + (version "0.1.3") + (source + (origin + (method url-fetch) + (uri (string-append + "https://hackage.haskell.org/package/text-short/text-short-" + version + ".tar.gz")) + (sha256 + (base32 + "0xyrxlb602z8bc9sr2y1fag0x56a20yj5qrkvy7iwc6hnznrynxz")))) + (build-system haskell-build-system) + (inputs `(("ghc-hashable" ,ghc-hashable))) + (native-inputs + `(("ghc-tasty" ,ghc-tasty) + ("ghc-tasty-quickcheck" ,ghc-tasty-quickcheck) + ("ghc-tasty-hunit" ,ghc-tasty-hunit) + ("ghc-quickcheck-instances" + ,ghc-quickcheck-instances))) + (arguments + `(#:cabal-revision + ("2" + "17cb7p0qywf2dsrq3g8qb3ssknd9wl5k0nc2pxz9gc3l8rxpkw51"))) + (home-page "https://hackage.haskell.org/package/text-short") + (synopsis "Memory-efficient representation of Unicode text strings") + (description "This package provides the @code{ShortText} type which +is suitable for keeping many short strings in memory. This is similiar +to how @code{ShortByteString} relates to @code{ByteString}. + +The main difference between @code{Text} and @code{ShortText} is that +@code{ShortText} uses UTF-8 instead of UTF-16 internally and also doesn't +support zero-copy slicing (thereby saving 2 words). Consequently, the memory +footprint of a (boxed) @{ShortText} value is 4 words (2 words when unboxed) +plus the length of the UTF-8 encoded payload.") + (license license:bsd-3))) + (define-public ghc-doclayout (package (name "ghc-doclayout") @@ -12570,6 +13025,49 @@ Unlike the filepath package, this package does not simply reuse String, increasing type safety.") (license license:expat))) +(define-public ghc-tabular + (package + (name "ghc-tabular") + (version "0.2.2.8") + (source + (origin + (method url-fetch) + (uri (string-append + "https://hackage.haskell.org/package/tabular/tabular-" + version + ".tar.gz")) + (sha256 + (base32 + "0z936gh8n8i8qdkagyxwd9gqq13skd5fv013vdvwsibrxkm0czfb")))) + (build-system haskell-build-system) + (inputs + `(("ghc-csv" ,ghc-csv) + ("ghc-html" ,ghc-html))) + (home-page "https://github.com/bgamari/tabular") + (synopsis "Two-dimensional data tables with rendering functions") + (description + "Tabular provides a Haskell representation of two-dimensional data +tables, the kind that you might find in a spreadsheet or or a research report. +It also comes with some default rendering functions for turning those tables +into ASCII art, simple text with an arbitrary delimiter, CSV, HTML or LaTeX. + +Below is an example of the kind of output this library produces. The tabular +package can group rows and columns, each group having one of three +separators (no line, single line, double line) between its members. + +@example + + || memtest 1 | memtest 2 || time test | time test 2 +====++===========+===========++=============+============ +A 1 || hog | terrible || slow | slower +A 2 || pig | not bad || fast | slowest +----++-----------+-----------++-------------+------------ +B 1 || good | awful || intolerable | bearable +B 2 || better | no chance || crawling | amazing +B 3 || meh | well... || worst ever | ok + +@end example") + (license license:bsd-3))) (define-public ghc-tagged (package @@ -13592,6 +14090,28 @@ processes. It wraps around the @code{process} library, and intends to improve upon it.") (license license:expat))) +(define-public ghc-uglymemo + (package + (name "ghc-uglymemo") + (version "0.1.0.1") + (source + (origin + (method url-fetch) + (uri (string-append + "https://hackage.haskell.org/package/uglymemo/uglymemo-" + version + ".tar.gz")) + (sha256 + (base32 + "0ixqg5d0ly1r18jbgaa89i6kjzgi6c5hanw1b1y8c5fbq14yz2gy")))) + (build-system haskell-build-system) + (home-page "https://hackage.haskell.org/package/uglymemo") + (synopsis "Simple memoization function for Haskell") + (description + "This package provides a simple (but internally ugly) memoization +function.") + (license license:public-domain))) + (define-public ghc-unagi-chan (package (name "ghc-unagi-chan") @@ -14468,6 +14988,48 @@ widths to the Char type.") Haskell value or function.") (license license:bsd-3))) +(define-public ghc-wizards + (package + (name "ghc-wizards") + (version "1.0.3") + (source + (origin + (method url-fetch) + (uri (string-append + "https://hackage.haskell.org/package/wizards/wizards-" + version + ".tar.gz")) + (sha256 + (base32 + "1clvbd1ckhvy29qrbmpkn7bya7300fq6znnps23nn3nxyrxhsr85")))) + (build-system haskell-build-system) + (inputs + `(("ghc-control-monad-free" ,ghc-control-monad-free))) + (arguments + `(#:cabal-revision + ("1" + "095qd17zrdhqmcvmslbyzfa5sh9glvvsnsvnlz31gzsmi8nnsgim"))) + (home-page "http://hackage.haskell.org/package/wizards") + (synopsis "High level, generic library for interrogative user interfaces") + (description + "@code{wizards} is a package designed for the quick and painless +development of @emph{interrogative} programs, which revolve around a dialogue +with the user, who is asked a series of questions in a sequence much like an +installation wizard. + +Everything from interactive system scripts, to installation wizards, to +full-blown shells can be implemented with the support of @code{wizards}. + +It is developed transparently on top of a free monad, which separates out the +semantics of the program from any particular interface. A variety of backends +exist, including console-based @code{System.Console.Wizard.Haskeline} and +@code{System.Console.Wizard.BasicIO}, and the pure +@code{System.Console.Wizard.Pure}. It is also possible to write your own +backends, or extend existing back-ends with new features. While both built-in +IO backends operate on a console, there is no reason why @code{wizards} cannot +also be used for making GUI wizard interfaces.") + (license license:bsd-3))) + (define-public ghc-wl-pprint (package (name "ghc-wl-pprint") diff --git a/gnu/packages/image-viewers.scm b/gnu/packages/image-viewers.scm index 05e09263a0..1efec0a0b8 100644 --- a/gnu/packages/image-viewers.scm +++ b/gnu/packages/image-viewers.scm @@ -495,7 +495,7 @@ For PDF support, install the @emph{mupdf} package.") (define-public qview (package (name "qview") - (version "3.0") + (version "4.0") (source (origin (method git-fetch) @@ -504,29 +504,22 @@ For PDF support, install the @emph{mupdf} package.") (commit version))) (file-name (git-file-name name version)) (sha256 - (base32 "15a91bs3wcqhgf76wzigbn10hayg628j84pq4j2vaxar94ak0vk7")))) + (base32 "15n9cq7w3ckinnx38hvncxrbkv4qm4k51sal41q4y0pkvhmafhnr")))) (build-system gnu-build-system) (arguments `(#:phases (modify-phases %standard-phases (replace 'configure - (lambda _ - (invoke "qmake"))) - ;; Installation process hard-codes "/usr/bin", possibly - ;; prefixed. - (add-after 'configure 'fix-install-directory (lambda* (#:key outputs #:allow-other-keys) (let ((out (assoc-ref outputs "out"))) - (substitute* "Makefile" - (("\\$\\(INSTALL_ROOT\\)/usr") out)) - #t))) - ;; Don't phone home or show "Checking for updates..." in the - ;; About menu. + (invoke "qmake" (string-append "PREFIX=" out))))) + ;; Don't phone home or show "Checking for updates..." in the About + ;; menu. (add-before 'build 'disable-auto-update (lambda _ (substitute* "src/qvaboutdialog.cpp" - (("ui->updateLabel->setText\\(updateText\\);") "") - (("requestUpdates\\(\\);") "")) + (("qvApp->checkUpdates\\(\\);") "") + (("updateText\\(\\);") "")) #t))))) (inputs `(("qtbase" ,qtbase) diff --git a/gnu/packages/inkscape.scm b/gnu/packages/inkscape.scm index 4ac3cf3966..56375f0759 100644 --- a/gnu/packages/inkscape.scm +++ b/gnu/packages/inkscape.scm @@ -6,6 +6,7 @@ ;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr> ;;; Copyright © 2020 Maxim Cournoyer <maxim.cournoyer@gmail.com> ;;; Copyright © 2020 Boris A. Dekshteyn <boris.dekshteyn@gmail.com> +;;; Copyright © 2020 Ekaitz Zarraga <ekaitz@elenq.tech> ;;; ;;; This file is part of GNU Guix. ;;; @@ -44,6 +45,7 @@ #:use-module (gnu packages pdf) #:use-module (gnu packages popt) #:use-module (gnu packages python) + #:use-module (gnu packages python-xyz) #:use-module (gnu packages xml) #:use-module (gnu packages ghostscript) #:use-module (gnu packages fontutils) @@ -250,7 +252,14 @@ endif()~%~%" (add-after 'install 'glib-or-gtk-compile-schemas (assoc-ref glib-or-gtk:%standard-phases 'glib-or-gtk-compile-schemas)) (add-after 'glib-or-gtk-compile-schemas 'glib-or-gtk-wrap - (assoc-ref glib-or-gtk:%standard-phases 'glib-or-gtk-wrap))))) + (assoc-ref glib-or-gtk:%standard-phases 'glib-or-gtk-wrap)) + (add-after 'install 'wrap-program + ;; Ensure Python is available at runtime. + (lambda* (#:key outputs #:allow-other-keys) + (let ((out (assoc-ref outputs "out"))) + (wrap-program (string-append out "/bin/inkscape") + `("PYTHONPATH" ":" prefix (,(getenv "PYTHONPATH"))))) + #t))))) (inputs `(("aspell" ,aspell) ("autotrace" ,autotrace) @@ -275,15 +284,19 @@ endif()~%~%" ("popt" ,popt) ("potrace" ,potrace) ("lcms" ,lcms) - ("boost" ,boost))) + ("boost" ,boost) + ("python" ,python-wrapper) + ("python-scour" ,python-scour) + ("python-pyserial" ,python-pyserial) + ("python-numpy" ,python-numpy) + ("python-lxml" ,python-lxml))) (native-inputs `(("imagemagick" ,imagemagick) ;for tests ("intltool" ,intltool) ("glib" ,glib "bin") ("googletest" ,googletest) ("perl" ,perl) - ("pkg-config" ,pkg-config) - ("python" ,python-wrapper))) + ("pkg-config" ,pkg-config))) (home-page "https://inkscape.org/") (synopsis "Vector graphics editor") (description "Inkscape is a vector graphics editor. What sets Inkscape diff --git a/gnu/packages/java.scm b/gnu/packages/java.scm index 9ced80cecf..35f905136f 100644 --- a/gnu/packages/java.scm +++ b/gnu/packages/java.scm @@ -3313,7 +3313,7 @@ libraries from the SIS division at ETH Zurich like jHDF5.") ("java-cisd-args4j" ,java-cisd-args4j) ("java-commons-lang" ,java-commons-lang) ("java-commons-io" ,java-commons-io) - ("hdf5" ,hdf5) + ("hdf5" ,hdf5-1.8) ("zlib" ,zlib))) (native-inputs `(("jdk" ,icedtea-8) @@ -9678,8 +9678,11 @@ not included are ones that require dependency to the Databind package.") `(("junit" ,java-junit) ("hamcrest" ,java-hamcrest-core))) (home-page "https://github.com/FasterXML/jackson-core") - (synopsis "") - (description "") + (synopsis "Low-level streaming parser and generator abstractions") + (description "This package contains core low-level incremental +(streaming) parser and generator abstractions used by the Jackson Data +Processor. It also includes the default implementation of handler types +(parser, generator) that handle JSON format.") (license license:asl2.0))); found on wiki.fasterxml.com/JacksonLicensing (define-public java-fasterxml-jackson-databind @@ -9926,12 +9929,14 @@ interface and high-performance Typed Access API.") (name "java-woodstox-core") (version "5.0.3") (source (origin - (method url-fetch) - (uri (string-append "https://github.com/FasterXML/woodstox/archive/" - "woodstox-core-" version ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/FasterXML/woodstox") + (commit (string-append "woodstox-core-" version)))) + (file-name (git-file-name name version)) (sha256 (base32 - "1i7pdgb8jbw6gdy5kmm0l6rz109n2ns92pqalpyp24vb8vlvdfd4")))) + "0bfylk24a967hwxprxqbg6cdvm6n4ldcarp54yg980viwvjiglyp")))) (build-system ant-build-system) (arguments `(#:jar-name "woodstox.jar" @@ -9966,13 +9971,14 @@ interface and high-performance Typed Access API.") (name "java-fasterxml-jackson-dataformat-xml") (version "2.9.4") (source (origin - (method url-fetch) - (uri (string-append "https://github.com/FasterXML/" - "jackson-dataformat-xml/archive/" - "jackson-dataformat-xml-" version ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url "https://github.com/FasterXML/jackson-dataformat-xml") + (commit (string-append "jackson-dataformat-xml-" version)))) + (file-name (git-file-name name version)) (sha256 (base32 - "111fkkl90w31jbf30kgj82qdcxlw4sxppki7i198liw0ck1jcavq")))) + "0s1wl65mbs57c2hz2v8rnh8i04y5lpyyvnjz562j5j6b83vwwpfx")))) (build-system ant-build-system) (arguments `(#:jar-name "jackson-dataformat-xml.jar" diff --git a/gnu/packages/kde-frameworks.scm b/gnu/packages/kde-frameworks.scm index c4479de995..febdb1f4f0 100644 --- a/gnu/packages/kde-frameworks.scm +++ b/gnu/packages/kde-frameworks.scm @@ -1963,7 +1963,8 @@ covers feedback and persistent events.") "03rp7p7i8ihz5wg58gjs638jk7xbszknfiy2j3r979snc57g95mv")) ;; Default to: external paths/symlinks can be followed by a ;; package - (patches (search-patches "kpackage-allow-external-paths.patch")))) + (patches (search-patches "kpackage-allow-external-paths.patch" + "kpackage-fix-KF5PackageMacros.cmake.patch")))) (build-system cmake-build-system) (native-inputs `(("extra-cmake-modules" ,extra-cmake-modules))) @@ -3449,7 +3450,8 @@ setUrl, setUserAgent and call.") name "-" version ".tar.xz")) (sha256 (base32 - "06cxajsxj62g3c37ssrrcaxb9a12zbyp2kvrjqym329k5vd89272")))) + "06cxajsxj62g3c37ssrrcaxb9a12zbyp2kvrjqym329k5vd89272")) + (patches (search-patches "plasma-framework-fix-KF5PlasmaMacros.cmake.patch")))) (build-system cmake-build-system) (propagated-inputs `(("kpackage" ,kpackage) diff --git a/gnu/packages/kde-internet.scm b/gnu/packages/kde-internet.scm index 6c576223e1..4203ffbaec 100644 --- a/gnu/packages/kde-internet.scm +++ b/gnu/packages/kde-internet.scm @@ -178,14 +178,14 @@ This package is part of the KDE networking module.") (define-public konversation (package (name "konversation") - (version "1.7.6") + (version "1.7.7") (source (origin (method url-fetch) (uri (string-append "mirror://kde/stable/konversation/" version "/src/konversation-" version ".tar.xz")) (sha256 - (base32 "14x0rs867grb1xjddycn9l6bfl3h3rp4cmx4zqd2gsvkihn4zlpx")))) + (base32 "19qqq9s8k0cl71ib33xn07f26j5ji2g4336jk65im6452cf1dv27")))) (build-system qt-build-system) (native-inputs `(("extra-cmake-modules" ,extra-cmake-modules) diff --git a/gnu/packages/kde-plasma.scm b/gnu/packages/kde-plasma.scm index ce6abb3a65..c53f6b29c7 100644 --- a/gnu/packages/kde-plasma.scm +++ b/gnu/packages/kde-plasma.scm @@ -38,14 +38,14 @@ (define-public kdecoration (package (name "kdecoration") - (version "5.18.5") + (version "5.19.5") (source (origin (method url-fetch) (uri (string-append "mirror://kde/stable/plasma/" version "/kdecoration-" version ".tar.xz")) (sha256 (base32 - "1j59axgpdbj7nlg06h5gb0pix3s3nll32k6s2f88vc1cbwj5d67h")))) + "0pn8n7zyb0adzjnn92vmbcf7pmpss60k9k1rk5llamj016xzfgnf")))) (build-system qt-build-system) (native-inputs `(("extra-cmake-modules" ,extra-cmake-modules))) @@ -62,17 +62,18 @@ manager which re-parents a Client window to a window decoration frame.") (define-public kscreenlocker (package (name "kscreenlocker") - (version "5.18.5") + (version "5.19.5") (source (origin (method url-fetch) (uri (string-append "mirror://kde/stable/plasma/" version "/kscreenlocker-" version ".tar.xz")) (sha256 (base32 - "1lhq9rxafbbxwpwzq8m25xi9hgcdfdfwl8hafqhygzp14z89q9ml")))) - (build-system cmake-build-system) + "1fd5sqaqx9kj3kr0bgxpllhcm5arf8bc9pkpd9yk9c8xjy0j0fxi")))) + (build-system qt-build-system) (arguments - `(#:phases + `(#:tests? #f ;; TODO: make tests pass + #:phases (modify-phases %standard-phases (add-before 'check 'check-setup (lambda* (#:key inputs outputs #:allow-other-keys) @@ -83,13 +84,15 @@ manager which re-parents a Client window to a window decoration frame.") (delete 'check) ;; Tests use the installed library and require a DBus session. (add-after 'install 'check - (lambda _ - (setenv "CTEST_OUTPUT_ON_FAILURE" "1") - (invoke "dbus-launch" "ctest" ".")))))) + (lambda* (#:key tests? #:allow-other-keys) + (if tests? + (begin + (setenv "CTEST_OUTPUT_ON_FAILURE" "1") + (invoke "dbus-launch" "ctest" "."))) + #t))))) (native-inputs `(("extra-cmake-modules" ,extra-cmake-modules) ("pkg-config" ,pkg-config) - ;; For tests. ("dbus" ,dbus) ("xorg-server" ,xorg-server-for-tests))) @@ -125,14 +128,14 @@ manager which re-parents a Client window to a window decoration frame.") (define-public libkscreen (package (name "libkscreen") - (version "5.18.5") + (version "5.19.5") (source (origin (method url-fetch) (uri (string-append "mirror://kde/stable/plasma/" version "/" name "-" version ".tar.xz")) (sha256 - (base32 "0z18djlfrj510dz3r2n8qx6fswdbp2qmhg5y3bn00hij02832qm9")))) + (base32 "0rf1pm0yyc069f4n5s9ipdx4glzfr9zvv5cbrmn4q9i4v6z1qd8i")))) (build-system qt-build-system) (native-inputs `(("extra-cmake-modules" ,extra-cmake-modules) @@ -155,15 +158,14 @@ basic needs and easy to configure for those who want special setups.") (define-public libksysguard (package (name "libksysguard") - (version "5.18.5") + (version "5.19.5") (source (origin (method url-fetch) (uri (string-append "mirror://kde//stable/plasma/" version "/libksysguard-" version ".tar.xz")) (sha256 - (base32 - "02s40ahqp4r9amjshdf0dhw9hdggvica2jl426i4d9b950507myl")))) + (base32 "1kd0h3p8bf9k5pqp0frhr81pa0yyrpkckg9zznirk9p1v88v7bfq")))) (native-inputs `(("extra-cmake-modules" ,extra-cmake-modules) ("pkg-config" ,pkg-config))) @@ -176,11 +178,14 @@ basic needs and easy to configure for those who want special setups.") ("kcompletion" ,kcompletion) ("kconfig" ,kconfig) ("kcoreaddons" ,kcoreaddons) + ("kdeclarative" ,kdeclarative) ("kglobalaccel" ,kglobalaccel) ("kio" ,kio) + ("knewstuff" ,knewstuff) ("kwidgetsaddons" ,kwidgetsaddons) ("kservice" ,kservice) ("qtbase" ,qtbase) + ("qtdeclarative" ,qtdeclarative) ("qtscript" ,qtscript) ("qtwebkit" ,qtwebkit) ("qtx11extras" ,qtx11extras) diff --git a/gnu/packages/kde.scm b/gnu/packages/kde.scm index f0a5c62856..546d8caa9b 100644 --- a/gnu/packages/kde.scm +++ b/gnu/packages/kde.scm @@ -6,7 +6,7 @@ ;;; Copyright © 2017, 2018, 2019, 2020 Tobias Geerinckx-Rice <me@tobias.gr> ;;; Copyright © 2018 Gábor Boskovits <boskovits@gmail.com> ;;; Copyright © 2019 Nicolas Goaziou <mail@nicolasgoaziou.fr> -;;; Copyright © 2018, 2019 Hartmut Goebel <h.goebel@crazy-compilers.com> +;;; Copyright © 2018, 2019, 2020 Hartmut Goebel <h.goebel@crazy-compilers.com> ;;; Copyright © 2019, 2020 Ludovic Courtès <ludo@gnu.org> ;;; Copyright © 2020 Marius Bakke <marius@gnu.org> ;;; Copyright © 2020 Michael Rohleder <mike@rohleder.de> @@ -40,12 +40,14 @@ #:use-module (gnu packages algebra) #:use-module (gnu packages apr) #:use-module (gnu packages audio) + #:use-module (gnu packages bison) #:use-module (gnu packages boost) #:use-module (gnu packages code) #:use-module (gnu packages cpp) #:use-module (gnu packages compression) #:use-module (gnu packages curl) #:use-module (gnu packages documentation) + #:use-module (gnu packages flex) #:use-module (gnu packages gettext) #:use-module (gnu packages ghostscript) #:use-module (gnu packages gl) @@ -135,7 +137,7 @@ This package contains GUI widgets for baloo.") (list license:lgpl2.1+ license:fdl1.2+)))) (define-public kdenlive - (let ((version "20.08.2")) + (let ((version "20.08.3")) (package (name "kdenlive") (version version) @@ -147,7 +149,7 @@ This package contains GUI widgets for baloo.") (commit (string-append "v" version)))) (file-name (string-append name "-" version "-checkout")) (sha256 - (base32 "1zcckv4wj12pvxjg85c8l67vi3amz79yv8mf7m4fbxnam3yxhy90")))) + (base32 "0x0qfwf6wfnybjyjvmllpf87sm27d1n2akslhp2k8ins838qy55i")))) (build-system cmake-build-system) (native-inputs `(("extra-cmake-modules" ,extra-cmake-modules) @@ -374,7 +376,7 @@ illustrate project schedules.") (define-public krita (package (name "krita") - (version "4.4.0") + (version "4.4.1") (source (origin (method url-fetch) (uri (string-append @@ -382,7 +384,7 @@ illustrate project schedules.") "/krita-" version ".tar.gz")) (sha256 (base32 - "13r7x4gql5wp88hmpv9m6m3lh7gsybm4la48hqbjcb3iwiv86pzw")))) + "05rq5hkh2lmk8hall2h9ccaav0nw8fj7vd4aff5fyp2fiq3aybbg")))) (build-system cmake-build-system) (arguments `(#:tests? #f @@ -790,3 +792,47 @@ services such as printers which advertise themselves with DNSSD (called Avahi or Bonjour by other projects).") (license ;; GPL for programs, LGPL for libraries, FDL for documentation (list license:gpl2+ license:lgpl2.0+ license:fdl1.2+)))) + + +(define-public kuserfeedback + ;; FIXME: Try to reduce data collection and ensure transmission i disabled by default. + ;; FIXME: Check https://www.reddit.com/r/kde/comments/f7ojg9 for insights + (package + (name "kuserfeedback") + (version "1.0.0") + (source + (origin + (method url-fetch) + (uri (string-append "mirror://kde/stable/kuserfeedback/" + "/kuserfeedback-" version ".tar.xz")) + (sha256 + (base32 "1dwx9fscnfp3zsxdir774skn8xvad2dvscnaaw3ji6mrnkmm6bss")))) + (build-system qt-build-system) + (native-inputs + `(("extra-cmake-modules" ,extra-cmake-modules) + ("qttools" ,qttools) + ;; For optional component "Survey target expression parser" + ("bison" ,bison) + ("flex" ,flex) + ;; For syntax checking and unit tests of PHP server code + ;;("php" ,php) + ;;("phpunit" ,phpunit) + )) + (inputs + `(("qtbase" ,qtbase) + ("qtcharts" ,qtcharts) + ("qtdeclarative" ,qtdeclarative) + ("qtsvg" ,qtsvg))) + (arguments + `(#:tests? #f)) ;; 4/17 fail + (home-page "https://api.kde.org/frameworks/kuserfeedback/html/") + (synopsis "Framework for collecting feedback from application users via +telemetry and targeted surveys") + (description "This framework consists of the following components: +@itemize +@item Libraries for use in applications. +@item QML bindings for the above. +@item A server application. +@item A management and analytics application. +@end itemize") + (license license:expat))) diff --git a/gnu/packages/kodi.scm b/gnu/packages/kodi.scm index 9ccdea46ef..b3dc96f925 100644 --- a/gnu/packages/kodi.scm +++ b/gnu/packages/kodi.scm @@ -4,6 +4,7 @@ ;;; Copyright © 2017 Oleg Pykhalov <go.wigust@gmail.com> ;;; Copyright © 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr> ;;; Copyright © 2018, 2020 Efraim Flashner <efraim@flashner.co.il> +;;; Copyright © 2020 Michael Rohleder <mike@rohleder.de> ;;; ;;; This file is part of GNU Guix. ;;; @@ -42,6 +43,7 @@ #:use-module (gnu packages curl) #:use-module (gnu packages databases) #:use-module (gnu packages documentation) + #:use-module (gnu packages file-systems) #:use-module (gnu packages fontutils) #:use-module (gnu packages freedesktop) #:use-module (gnu packages fribidi) @@ -375,7 +377,6 @@ alternatives. In compilers, this can reduce the cascade of secondary errors.") (lambda _ (invoke "make" "kodi-test")))))) ;; TODO: Add dependencies for: - ;; - nfs ;; - cec ;; - plist ;; - shairplay @@ -424,6 +425,7 @@ alternatives. In compilers, this can reduce the cascade of secondary errors.") ("libmad" ,libmad) ("libmicrohttpd" ,libmicrohttpd) ("libmpeg2" ,libmpeg2) + ("libnfs" ,libnfs) ("libogg" ,libogg) ("libpng" ,libpng) ("libssh" ,libssh) diff --git a/gnu/packages/language.scm b/gnu/packages/language.scm index 5ccc94167c..27c13fab8a 100644 --- a/gnu/packages/language.scm +++ b/gnu/packages/language.scm @@ -1053,7 +1053,7 @@ noun phrases, verb phrases, etc.).") (define-public praat (package (name "praat") - (version "6.1.27") + (version "6.1.30") (source (origin (method git-fetch) (uri (git-reference @@ -1062,7 +1062,7 @@ noun phrases, verb phrases, etc.).") (file-name (git-file-name name version)) (sha256 (base32 - "0wd2xy5shyk00d91yrif1c2xwzdl4i7qpdfa530f845yzn7k2ks1")))) + "1pjfifyv3wjn68l3i2dr83xm75nf2kxvfxrk9qqbmwz58p183jw4")))) (build-system gnu-build-system) (arguments `(#:tests? #f ; no test target diff --git a/gnu/packages/less.scm b/gnu/packages/less.scm index 6543435fab..1057dc2909 100644 --- a/gnu/packages/less.scm +++ b/gnu/packages/less.scm @@ -1,6 +1,6 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2012 Nikita Karetnikov <nikita@karetnikov.org> -;;; Copyright © 2019 Tobias Geerinckx-Rice <me@tobias.gr> +;;; Copyright © 2019, 2020 Tobias Geerinckx-Rice <me@tobias.gr> ;;; Copyright © 2020 Jan (janneke) Nieuwenhuizen <janneke@gnu.org> ;;; Copyright © 2020 Michael Rohleder <mike@rohleder.de> ;;; @@ -33,7 +33,7 @@ (define-public less (package (name "less") - (version "551") + (version "563") (source (origin (method url-fetch) @@ -43,7 +43,7 @@ version ".tar.gz"))) (patches (search-patches "less-hurd-path-max.patch")) (sha256 - (base32 "0ggyjl3yzn7c450zk1rixi9ls6asdhgqynhk34zsd0ckhmsm45pz")))) + (base32 "16lsvk88vwjwp5ax1wnll44wxwnzs8lb2fn90xx2si64kwmnsnyf")))) (build-system gnu-build-system) (inputs `(("ncurses" ,ncurses))) (home-page "https://www.gnu.org/software/less/") diff --git a/gnu/packages/libreoffice.scm b/gnu/packages/libreoffice.scm index fdc62e8825..76836d718b 100644 --- a/gnu/packages/libreoffice.scm +++ b/gnu/packages/libreoffice.scm @@ -1109,6 +1109,7 @@ converting QuarkXPress file format. It supports versions 3.1 to 4.1.") ("clucene" ,clucene) ("cups" ,cups) ("dbus-glib" ,dbus-glib) + ("firebird" ,firebird) ("fontconfig" ,fontconfig) ("fontforge" ,fontforge) ("gconf" ,gconf) @@ -1285,7 +1286,9 @@ converting QuarkXPress file format. It supports versions 3.1 to 4.1.") "--without-java" ;; FIXME: Enable once the corresponding inputs are packaged. "--disable-coinmp" - "--disable-firebird-sdbc" ; embedded firebird + ;; This could (Debian does this) be a separate output containing only + ;; program/libfirebird_sdbclo.so, if there's a way to point to it. + "--enable-firebird-sdbc" ;; XXX: PDFium support requires fetching an external tarball and ;; patching the build scripts to work with GCC5. Try enabling this ;; when our default compiler is >=GCC 6. diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm index 1d3daafc77..7bc9a46d1f 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -352,23 +352,23 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS." ;; The current "stable" kernel. That is, the most recently released major ;; version. -(define-public linux-libre-5.8-version "5.8.15") -(define deblob-scripts-5.8 +(define-public linux-libre-5.9-version "5.9.6") +(define deblob-scripts-5.9 (linux-libre-deblob-scripts - linux-libre-5.8-version - (base32 "07z7sglyrfh0706icqqf3shadf638pvyid9386r661ds5lbsa2mw") - (base32 "0z28yj4f7hhc253hssslm6xl9sg92agbiw50jxb9y72d8zp6sksq"))) -(define-public linux-libre-5.8-pristine-source - (let ((version linux-libre-5.8-version) - (hash (base32 "0hfnq4n902pws8sjxd1lsdxxa0v45g988imp73xnqfqv2d71r0bj"))) + linux-libre-5.9-version + (base32 "1l0iw2lp6alk0a8nvdafklyks83iiyw4b2r5xif84z47qfbydsis") + (base32 "0is78bvpx6mrhibpspz4iqnsa1xplh11q1cnalkkm4hpsiy0fi4g"))) +(define-public linux-libre-5.9-pristine-source + (let ((version linux-libre-5.9-version) + (hash (base32 "0w2kcng09nzk09dwkx4azdfgnwzbd2mz8lyl4j69bwx837z85hbc"))) (make-linux-libre-source version (%upstream-linux-source version hash) - deblob-scripts-5.8))) + deblob-scripts-5.9))) ;; The "longterm" kernels — the older releases with long-term upstream support. ;; Here are the support timelines: ;; <https://www.kernel.org/category/releases.html> -(define-public linux-libre-5.4-version "5.4.71") +(define-public linux-libre-5.4-version "5.4.75") (define deblob-scripts-5.4 (linux-libre-deblob-scripts linux-libre-5.4-version @@ -376,12 +376,12 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS." (base32 "1h6gbc9cfhb7dqx669iq26a23whka6km5av0ysk61aaz2z57vkrk"))) (define-public linux-libre-5.4-pristine-source (let ((version linux-libre-5.4-version) - (hash (base32 "1ivcimngj5h7lxslkrdljpfw9hfvdhrm8wrp7gp4d3gk7kpljw3k"))) + (hash (base32 "0w0lpiy56zqdm2vpx9ckxakna334n88pnqbv52zyfcslxgb6yinj"))) (make-linux-libre-source version (%upstream-linux-source version hash) deblob-scripts-5.4))) -(define-public linux-libre-4.19-version "4.19.151") +(define-public linux-libre-4.19-version "4.19.155") (define deblob-scripts-4.19 (linux-libre-deblob-scripts linux-libre-4.19-version @@ -389,12 +389,12 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS." (base32 "1jiaw0as1ippkrjdpd52657w5mz9qczg3y2hlra7m9k0xawwiqlf"))) (define-public linux-libre-4.19-pristine-source (let ((version linux-libre-4.19-version) - (hash (base32 "0vm3nsi9la3azxrsvndbd6fpz79pch7309f2144xyxszsk339cf7"))) + (hash (base32 "1lj81aadyskmxs3j4s923nhnk69dfj2kiwm0nxabbcjw83sliinb"))) (make-linux-libre-source version (%upstream-linux-source version hash) deblob-scripts-4.19))) -(define-public linux-libre-4.14-version "4.14.201") +(define-public linux-libre-4.14-version "4.14.204") (define deblob-scripts-4.14 (linux-libre-deblob-scripts linux-libre-4.14-version @@ -402,12 +402,12 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS." (base32 "1qij18inijj6c3ma8hv98yjagnzxdxyn134da9fd23ky8q6hbvky"))) (define-public linux-libre-4.14-pristine-source (let ((version linux-libre-4.14-version) - (hash (base32 "0nr3w5m7dz28v7qfhp99ih4c369qrhq751wfikbz8ga3di0dqa72"))) + (hash (base32 "1ncacsy2g80zigfx8nmr1f7v50s1y9ys1xy9jgizrnvmxjcji0wy"))) (make-linux-libre-source version (%upstream-linux-source version hash) deblob-scripts-4.14))) -(define-public linux-libre-4.9-version "4.9.239") +(define-public linux-libre-4.9-version "4.9.241") (define deblob-scripts-4.9 (linux-libre-deblob-scripts linux-libre-4.9-version @@ -415,12 +415,12 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS." (base32 "0fxajshb75siq39lj5h8xvhdj8lcmddkslwlyj65rhlwk6g2r4b2"))) (define-public linux-libre-4.9-pristine-source (let ((version linux-libre-4.9-version) - (hash (base32 "0lfbn5amykvwz1svvxayzhsz1dvm4mgzsnq1g0wqffclxm148hr3"))) + (hash (base32 "0b5k9cwz7vpaybw4nd03pn2z4d8qbhmhd9mx4j2yd0fqj57x1in4"))) (make-linux-libre-source version (%upstream-linux-source version hash) deblob-scripts-4.9))) -(define-public linux-libre-4.4-version "4.4.239") +(define-public linux-libre-4.4-version "4.4.241") (define deblob-scripts-4.4 (linux-libre-deblob-scripts linux-libre-4.4-version @@ -428,7 +428,7 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS." (base32 "0hhin1jpfkd6nwrb6xqxjzl3hdxy4pn8a15hy2d3d83yw6pflbsf"))) (define-public linux-libre-4.4-pristine-source (let ((version linux-libre-4.4-version) - (hash (base32 "03myd9ngmjmnddh4iqqsgcfg9rd11vyvwym38yh4m1p08j1zbg0k"))) + (hash (base32 "054jd6jgymxbkjfmk8wbckihl355gjimjg2xi5yr4v2343qi9zij"))) (make-linux-libre-source version (%upstream-linux-source version hash) deblob-scripts-4.4))) @@ -461,8 +461,8 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS." (patches (append (origin-patches source) patches)))) -(define-public linux-libre-5.8-source - (source-with-patches linux-libre-5.8-pristine-source +(define-public linux-libre-5.9-source + (source-with-patches linux-libre-5.9-pristine-source (list %boot-logo-patch %linux-libre-arm-export-__sync_icache_dcache-patch))) @@ -565,9 +565,9 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS." (description "Headers of the Linux-Libre kernel.") (license license:gpl2))) -(define-public linux-libre-headers-5.8 - (make-linux-libre-headers* linux-libre-5.8-version - linux-libre-5.8-source)) +(define-public linux-libre-headers-5.9 + (make-linux-libre-headers* linux-libre-5.9-version + linux-libre-5.9-source)) (define-public linux-libre-headers-5.4 (make-linux-libre-headers* linux-libre-5.4-version @@ -856,16 +856,16 @@ It has been modified to remove all non-free binary blobs.") ;;; Generic kernel packages. ;;; -(define-public linux-libre-5.8 - (make-linux-libre* linux-libre-5.8-version - linux-libre-5.8-source +(define-public linux-libre-5.9 + (make-linux-libre* linux-libre-5.9-version + linux-libre-5.9-source '("x86_64-linux" "i686-linux" "armhf-linux" "aarch64-linux" "riscv64-linux") #:configuration-file kernel-config)) -(define-public linux-libre-version linux-libre-5.8-version) -(define-public linux-libre-pristine-source linux-libre-5.8-pristine-source) -(define-public linux-libre-source linux-libre-5.8-source) -(define-public linux-libre linux-libre-5.8) +(define-public linux-libre-version linux-libre-5.9-version) +(define-public linux-libre-pristine-source linux-libre-5.9-pristine-source) +(define-public linux-libre-source linux-libre-5.9-source) +(define-public linux-libre linux-libre-5.9) (define-public linux-libre-5.4 (make-linux-libre* linux-libre-5.4-version @@ -979,7 +979,16 @@ It has been modified to remove all non-free binary blobs.") #:extra-options (append `(;; needed to fix the RTC on rockchip platforms - ("CONFIG_RTC_DRV_RK808" . #t)) + ("CONFIG_RTC_DRV_RK808" . #t) + ;; Pinebook display, battery, charger and usb + ("CONFIG_DRM_ANALOGIX_ANX6345" . m) + ("CONFIG_CHARGER_AXP20X" . m) + ("CONFIG_INPUT_AXP20X_PEK" . m) + ("CONFIG_CHARGER_AXP20X" . m) + ("CONFIG_BATTERY_AXP20X" . m) + ("CONFIG_PINCTRL_AXP209" . m) + ("CONFIG_AXP20X_POWER" . m) + ("CONFIG_AXP20X_ADC" . m)) %default-extra-linux-options))) (define-public linux-libre-arm64-generic-5.4 @@ -1003,8 +1012,8 @@ It has been modified to remove all non-free binary blobs.") (define-public linux-libre-with-bpf (let ((base-linux-libre (make-linux-libre* - linux-libre-5.4-version - linux-libre-5.4-source + linux-libre-5.9-version + linux-libre-5.9-source '("x86_64-linux" "i686-linux" "armhf-linux" "aarch64-linux" "riscv64-linux") #:extra-version "bpf" @@ -1734,14 +1743,14 @@ slabtop, and skill.") (define-public usbutils (package (name "usbutils") - (version "012") + (version "013") (source (origin (method url-fetch) (uri (string-append "mirror://kernel.org/linux/utils/usb/usbutils/" "usbutils-" version ".tar.xz")) (sha256 - (base32 "0iiy0q7fzikavmdsjsb0sl9kp3gfh701qwyjjccvqh0qz4jlcqw8")))) + (base32 "0f0klk6d3hmbpf6p4dcwa1qjzblmkhbxs1wsw87aidvqri7lj8wy")))) (build-system gnu-build-system) (outputs (list "out" "python")) (arguments @@ -1750,7 +1759,7 @@ slabtop, and skill.") (add-before 'bootstrap 'patch-bootstrap-scripts (lambda _ (substitute* "usbhid-dump/bootstrap" - (("/bin/bash") (which "bash"))) + (("/bin/sh") (which "sh"))) ;; Don't let autogen.sh run configure with bogus options & CFLAGS. (substitute* "autogen.sh" @@ -2174,8 +2183,7 @@ external rate conversion.") (define-public iptables (package (name "iptables") - ;; XXX When updating, remove the ‘install-missing-script’ phase. - (version "1.8.5") + (version "1.8.6") (source (origin (method url-fetch) @@ -2184,7 +2192,7 @@ external rate conversion.") (string-append "https://www.netfilter.org/projects/iptables/" "files/iptables-" version ".tar.bz2"))) (sha256 - (base32 "02a3575ypdpg6a2x752mhk3f7h1381ymkq1n0gss6fp6292xfmyl")))) + (base32 "0rvp0k8a72h2snrdx48cfn75bfa0ycrd2xl3kjysbymq7q6gxx50")))) (build-system gnu-build-system) (native-inputs `(("pkg-config" ,pkg-config) @@ -2196,19 +2204,7 @@ external rate conversion.") (arguments '(#:tests? #f ; no test suite #:configure-flags ; add $libdir to the RUNPATH of executables - (list (string-append "LDFLAGS=-Wl,-rpath=" %output "/lib")) - #:phases - (modify-phases %standard-phases - (add-after 'install 'install-missing-script - ;; A typo prevents installation of /sbin/iptables-apply. It's been - ;; fixed upstream (d4ed0c741fc789bb09d977d74d30875fdd50d08b), but - ;; a patch would require bootstrapping and more inputs. Simply copy - ;; the file ourselves. - (lambda* (#:key outputs #:allow-other-keys) - (let* ((out (assoc-ref outputs "out")) - (sbin (string-append out "/sbin"))) - (install-file "iptables/iptables-apply" sbin) - #t)))))) + (list (string-append "LDFLAGS=-Wl,-rpath=" %output "/lib")))) (home-page "https://www.netfilter.org/projects/iptables/index.html") (synopsis "Programs to configure Linux IP packet filtering rules") (description @@ -2927,14 +2923,14 @@ file system is as easy as logging into the server with an SSH client.") (define-public archivemount (package (name "archivemount") - (version "0.8.12") + (version "0.9.1") (source (origin (method url-fetch) (uri (string-append "https://www.cybernoia.de/software/archivemount/" "archivemount-" version ".tar.gz")) (sha256 - (base32 "12fb8fcmd1zwvfgzx4pay47md5cr2kgxcgq82cm6skmq75alfzi4")))) + (base32 "1cy5b6qril9c3ry6fv7ir87s8iyy5vxxmbyx90dm86fbra0vjaf5")))) (build-system gnu-build-system) (inputs `(("fuse" ,fuse) ("libarchive" ,libarchive))) @@ -4109,7 +4105,7 @@ Translation (@dfn{SAT}) are also supported.") (define-public nvme-cli (package (name "nvme-cli") - (version "1.12") + (version "1.13") (home-page "https://github.com/linux-nvme/nvme-cli") (source (origin (method git-fetch) @@ -4117,7 +4113,7 @@ Translation (@dfn{SAT}) are also supported.") (url home-page) (commit (string-append "v" version)))) (sha256 - (base32 "0ldky34sn0m5c4hgiip0fkzm465nca69bhxicpd5dg8wxhzxqrp3")) + (base32 "1d538kp841bjh8h8d9q7inqz56rdcwb3m78zfx8607ddykv7wcqb")) (file-name (git-file-name name version)))) (build-system gnu-build-system) (arguments @@ -4805,7 +4801,7 @@ and copy/paste text in the console and in xterm.") (define-public btrfs-progs (package (name "btrfs-progs") - (version "5.7") + (version "5.9") (source (origin (method url-fetch) (uri (string-append "mirror://kernel.org/linux/kernel/" @@ -4813,7 +4809,7 @@ and copy/paste text in the console and in xterm.") "btrfs-progs-v" version ".tar.xz")) (sha256 (base32 - "0p6ycbr8sw5bq3mj84gh9rvh5sk8sjr2l9hb9dhm4j41ij5h8bsw")))) + "14d7hz07kfczfgmy1ixkgccjn393gpkjn7givz5kwxddcnk5i4xq")))) (build-system gnu-build-system) (outputs '("out" "static")) ; static versions of the binaries in "out" @@ -6254,14 +6250,14 @@ re-use code and to avoid re-inventing the wheel.") (define-public libnftnl (package (name "libnftnl") - (version "1.1.7") + (version "1.1.8") (source (origin (method url-fetch) (uri (string-append "mirror://netfilter.org/libnftnl/" "libnftnl-" version ".tar.bz2")) (sha256 - (base32 "13zd90bfrr0q3j0l0cbc8kiizccw6n8gp727kqnfljh024zw3nr0")))) + (base32 "04dp797llg3cqzivwrql30wg9mfr0ngnp0v5gs7jcdmp11dzm8q4")))) (build-system gnu-build-system) (native-inputs `(("pkg-config" ,pkg-config))) @@ -6278,7 +6274,7 @@ used by nftables.") (define-public nftables (package (name "nftables") - (version "0.9.6") + (version "0.9.7") (source (origin (method url-fetch) @@ -6287,7 +6283,7 @@ used by nftables.") (string-append "https://www.nftables.org/projects/nftables" "/files/nftables-" version ".tar.bz2"))) (sha256 - (base32 "0vmn6xwqa1nq6crfxshh049b199d0aj6hfgin7k068xhibzgvmk8")))) + (base32 "1c1c2475nifncv0ng8z77h2dpanlsx0bhqm15k00jb3a6a68lszy")))) (build-system gnu-build-system) (arguments `(#:configure-flags '("--disable-man-doc"))) ; FIXME: Needs docbook2x. @@ -6940,7 +6936,7 @@ IP addresses and routes, and configure IPsec.") (define-public xfsprogs (package (name "xfsprogs") - (version "5.7.0") + (version "5.9.0") (source (origin (method url-fetch) (uri (string-append @@ -6948,7 +6944,7 @@ IP addresses and routes, and configure IPsec.") "xfsprogs-" version ".tar.gz")) (sha256 (base32 - "0bssrfhnw5mhybgaa6d8wp87izi3c9cjpjy7vicm6y76mf7kl8p9")))) + "13xkn9jpmwp4fm9r68vhgznkmxhnv83n2b39mhy2qdaph90w2a1l")))) (build-system gnu-build-system) (outputs (list "out" "python")) (arguments @@ -7580,13 +7576,13 @@ receiving. It is dedicated to the PL011 UART of the Raspberry Pi.") (define-public ipset (package (name "ipset") - (version "7.6") + (version "7.7") (source (origin (method url-fetch) (uri (string-append "http://ipset.netfilter.org/ipset-" version ".tar.bz2")) (sha256 (base32 - "1ny2spcm6bmpj8vnazssg99k59impr7n84jzkdmdjly1m7548z8f")))) + "0ckc678l1431mb0q5ilfgy0ajjwi8n135c72h606imm43dc0v9a5")))) (build-system gnu-build-system) (inputs `(("libmnl" ,libmnl))) diff --git a/gnu/packages/lisp-xyz.scm b/gnu/packages/lisp-xyz.scm index 1f0006964b..ba0bad252c 100644 --- a/gnu/packages/lisp-xyz.scm +++ b/gnu/packages/lisp-xyz.scm @@ -5342,38 +5342,37 @@ various string metrics in Common Lisp: (sbcl-package->ecl-package sbcl-mk-string-metrics)) (define-public sbcl-cl-str - (let ((commit "eb480f283e28802d67b35bf916506701152f9a2a")) - (package - (name "sbcl-cl-str") - (version (git-version "0.17" "1" commit)) - (home-page "https://github.com/vindarel/cl-str") - (source (origin - (method git-fetch) - (uri (git-reference - (url home-page) - (commit commit))) - (sha256 - (base32 "1hpq5m8zjjnzns370zy27z2vcm1p8n2ka5ij2x67gyc9amz9vla0")) - (file-name (git-file-name name version)))) - (build-system asdf-build-system/sbcl) - (inputs - `(("cl-ppcre" ,sbcl-cl-ppcre) - ("cl-ppcre-unicode" ,sbcl-cl-ppcre-unicode) - ("cl-change-case" ,sbcl-cl-change-case))) - (native-inputs - `(("prove" ,sbcl-prove))) - (arguments - `(#:asd-systems '("str") - #:test-asd-file "str.test.asd")) - (synopsis "Modern, consistent and terse Common Lisp string manipulation library") - (description "A modern and consistent Common Lisp string manipulation + (package + (name "sbcl-cl-str") + (version "0.19") + (home-page "https://github.com/vindarel/cl-str") + (source (origin + (method git-fetch) + (uri (git-reference + (url home-page) + (commit version))) + (sha256 + (base32 "1jyza2jhn7w6fl4w87pv0m87z5ia48m6dqw12k0mdh7l3mgjq839")) + (file-name (git-file-name name version)))) + (build-system asdf-build-system/sbcl) + (inputs + `(("cl-ppcre" ,sbcl-cl-ppcre) + ("cl-ppcre-unicode" ,sbcl-cl-ppcre-unicode) + ("cl-change-case" ,sbcl-cl-change-case))) + (native-inputs + `(("prove" ,sbcl-prove))) + (arguments + `(#:asd-systems '("str") + #:test-asd-file "str.test.asd")) + (synopsis "Modern, consistent and terse Common Lisp string manipulation library") + (description "A modern and consistent Common Lisp string manipulation library that focuses on modernity, simplicity and discoverability: @code{(str:trim s)} instead of @code{(string-trim '(#\\Space ...) s)}), or @code{str:concat strings} instead of an unusual format construct; one discoverable library instead of many; consistency and composability, where @code{s} is always the last argument, which makes it easier to feed pipes and arrows.") - (license license:expat)))) + (license license:expat))) (define-public cl-str (sbcl-package->cl-source-package sbcl-cl-str)) @@ -11018,7 +11017,8 @@ XML to Lisp structures or s-expressions and back.") (uri (string-append "https://common-lisp.net/project/geco/download/" "geco-" version ".tar.gz")) (sha256 - (base32 "0kk0bzr1019cfmf2b1jl1rk9shv3gx5z1znifxllg9mb98yqsgw0")))) + (base32 "0kk0bzr1019cfmf2b1jl1rk9shv3gx5z1znifxllg9mb98yqsgw0")) + (patches (search-patches "sbcl-geco-fix-organism-class.patch")))) (build-system asdf-build-system/sbcl) (home-page "https://common-lisp.net/project/geco/") (synopsis "Genetic algorithm toolkit for Common Lisp") diff --git a/gnu/packages/lisp.scm b/gnu/packages/lisp.scm index c2114e6935..4f79d79207 100644 --- a/gnu/packages/lisp.scm +++ b/gnu/packages/lisp.scm @@ -379,14 +379,14 @@ an interpreter, a compiler, a debugger, and much more.") (define-public sbcl (package (name "sbcl") - (version "2.0.8") + (version "2.0.10") (source (origin (method url-fetch) (uri (string-append "mirror://sourceforge/sbcl/sbcl/" version "/sbcl-" version "-source.tar.bz2")) (sha256 - (base32 "1xwrwvps7drrpyw3wg5h3g2qajmkwqs9gz0fdw1ns9adp7vld390")))) + (base32 "0mq5ga977hzsq4wgv31l8d6rpa186q8xc4x2awwcskf5nq842xai")))) (build-system gnu-build-system) (outputs '("out" "doc")) (native-inputs diff --git a/gnu/packages/llvm.scm b/gnu/packages/llvm.scm index c500430dd5..b2b80572fb 100644 --- a/gnu/packages/llvm.scm +++ b/gnu/packages/llvm.scm @@ -48,12 +48,16 @@ #:use-module (gnu packages gcc) #:use-module (gnu packages bootstrap) ;glibc-dynamic-linker #:use-module (gnu packages compression) + #:use-module (gnu packages libedit) #:use-module (gnu packages libffi) + #:use-module (gnu packages lua) #:use-module (gnu packages mpi) + #:use-module (gnu packages ncurses) #:use-module (gnu packages onc-rpc) #:use-module (gnu packages perl) #:use-module (gnu packages pkg-config) #:use-module (gnu packages python) + #:use-module (gnu packages swig) #:use-module (gnu packages xml) #:export (system->llvm-target)) @@ -326,6 +330,27 @@ given PATCHES. When TOOLS-EXTRA is given, it must point to the (("@GLIBC_LIBDIR@") (string-append libc "/lib")))))) #t))) + ,@(if (version>=? version "10") + `((add-after 'install 'adjust-cmake-file + (lambda* (#:key outputs #:allow-other-keys) + (let ((out (assoc-ref outputs "out"))) + ;; Clang generates a CMake file with "targets" + ;; for each installed library file. Downstream + ;; consumers of the CMake interface can use this + ;; to get absolute library locations. Including + ;; this file will needlessly assert that _all_ + ;; libraries are available, which causes problems + ;; in Guix because some are removed (see the + ;; move-extra-tools phase). Thus, remove the + ;; asserts so that the main functionality works. + (substitute* + (string-append + out + "/lib/cmake/clang/ClangTargets-release.cmake") + (("list\\(APPEND _IMPORT_CHECK_TARGETS.*" all) + (string-append "# Disabled by Guix.\n#" all))) + #t)))) + '()) ,@(if (version>? version "3.8") `((add-after 'install 'symlink-cfi_blacklist (lambda* (#:key inputs outputs #:allow-other-keys) @@ -854,6 +879,40 @@ of programming tools as well as libraries with equivalent functionality.") components which highly leverage existing libraries in the larger LLVM Project.") (license license:asl2.0))) ; With LLVM exception +(define-public lldb + (package + (name "lldb") + (version "11.0.0") + (source (origin + (method url-fetch) + (uri (llvm-uri "lldb" version)) + (sha256 + (base32 + "0wic9lyb2la9bkzdc13szkm4f793w1mddp50xvh237iraygw0w45")))) + (build-system cmake-build-system) + (arguments + `(#:configure-flags '("-DCMAKE_CXX_COMPILER=clang++"))) + (native-inputs + `(("pkg-config" ,pkg-config) + ("swig" ,swig))) + (inputs + `(("clang" ,clang-11) + ("llvm" ,llvm-11) + + ;; Optional (but recommended) inputs. + ("curses" ,ncurses) + ("editline" ,libedit) + ("liblzma" ,xz) + ("libxml2" ,libxml2) + ("lua" ,lua) + ("python" ,python))) + (home-page "https://lldb.llvm.org/") + (synopsis "Low level debugger") + (description + "LLDB is a high performance debugger built as a set of reusable components +which highly leverage existing libraries in the larger LLVM project.") + (license license:asl2.0))) ;with LLVM exceptions + (define-public libcxx (package (name "libcxx") diff --git a/gnu/packages/lxde.scm b/gnu/packages/lxde.scm index a9e435cbfc..c5097076b1 100644 --- a/gnu/packages/lxde.scm +++ b/gnu/packages/lxde.scm @@ -164,7 +164,7 @@ or external monitor.") (define-public lxtask (package (name "lxtask") - (version "0.1.9") + (version "0.1.10") (source (origin (method url-fetch) (uri (string-append "mirror://sourceforge/lxde/LXTask" @@ -173,7 +173,7 @@ or external monitor.") "lxtask-" version ".tar.xz")) (sha256 (base32 - "0cv4hx5dg01hbyi5p10pl78n0a40xajpq4wx9c7886pkmpq8isj1")))) + "0b2fxg8jjjpk219gh7qa18g45365598nd2bq7rrq0bdvqjdxy5i2")))) (build-system gnu-build-system) (inputs `(("gtk+" ,gtk+-2))) (native-inputs `(("intltool" ,intltool) diff --git a/gnu/packages/lxqt.scm b/gnu/packages/lxqt.scm index af452a9903..17421a9835 100644 --- a/gnu/packages/lxqt.scm +++ b/gnu/packages/lxqt.scm @@ -849,12 +849,16 @@ allows for launching applications or shutting down the system.") #:phases (modify-phases %standard-phases (add-after 'unpack 'patch-source - (lambda _ + (lambda* (#:key outputs #:allow-other-keys) (substitute* '("autostart/CMakeLists.txt" "config/CMakeLists.txt") (("DESTINATION \"\\$\\{LXQT_ETC_XDG_DIR\\}") "DESTINATION \"etc/xdg")) - #t)) + (let ((out (assoc-ref outputs "out"))) + (substitute* '("xsession/lxqt.desktop.in") + (("Exec=startlxqt") (string-append "Exec=" out "/bin/startlxqt")) + (("TryExec=lxqt-session") (string-append "TryExec=" out "/bin/startlxqt"))) + #t))) ;; add write permission to lxqt-rc.xml file which is stored as read-only in store (add-after 'unpack 'patch-openbox-permission (lambda _ @@ -872,7 +876,14 @@ allows for launching applications or shutting down the system.") (("\\$\\{LXQT_TRANSLATIONS_DIR\\}") (string-append (assoc-ref outputs "out") "/share/lxqt/translations"))) - #t))))) + #t)) + (add-after 'install 'wrap-program + (lambda* (#:key inputs outputs #:allow-other-keys) + (let ((out (assoc-ref outputs "out"))) + (wrap-program (string-append out "/bin/startlxqt") + `("XDG_CONFIG_DIRS" ":" suffix ("/run/current-system/profile/share" + "/run/current-system/profile/share/pcmanfm-qt"))) + #t)))))) (home-page "https://lxqt.github.io") (synopsis "Session manager for LXQt") (description "lxqt-session provides the standard session manager @@ -1021,6 +1032,9 @@ components to build desktop file managers which belongs to LXDE.") (substitute* '("autostart/CMakeLists.txt") (("DESTINATION \"\\$\\{LXQT_ETC_XDG_DIR\\}") "DESTINATION \"etc/xdg")) + (substitute* '("config/pcmanfm-qt/lxqt/settings.conf.in") + (("@LXQT_SHARE_DIR@") + "/run/current-system/profile/share/lxqt" )) #t))))) (home-page "https://lxqt.github.io") (synopsis "File manager and desktop icon manager") diff --git a/gnu/packages/mail.scm b/gnu/packages/mail.scm index 5056098806..44a156fd99 100644 --- a/gnu/packages/mail.scm +++ b/gnu/packages/mail.scm @@ -36,6 +36,7 @@ ;;; Copyright © 2020 Michael Rohleder <mike@rohleder.de> ;;; Copyright © 2020 Alexey Abramov <levenson@mmer.org> ;;; Copyright © 2020 Tim Gesthuizen <tim.gesthuizen@yahoo.de> +;;; Copyright © 2020 Alexandru-Sergiu Marton <brown121407@posteo.ro> ;;; ;;; This file is part of GNU Guix. ;;; @@ -76,6 +77,7 @@ #:use-module (gnu packages documentation) #:use-module (gnu packages emacs) #:use-module (gnu packages enchant) + #:use-module (gnu packages file) #:use-module (gnu packages gdb) #:use-module (gnu packages gettext) #:use-module (gnu packages ghostscript) @@ -116,6 +118,7 @@ #:use-module (gnu packages python-crypto) #:use-module (gnu packages python-web) #:use-module (gnu packages python-xyz) + #:use-module (gnu packages ragel) #:use-module (gnu packages rdf) #:use-module (gnu packages readline) #:use-module (gnu packages ruby) @@ -142,6 +145,7 @@ #:use-module (guix git-download) #:use-module (guix svn-download) #:use-module (guix utils) + #:use-module (guix build-system cmake) #:use-module (guix build-system glib-or-gtk) #:use-module (guix build-system gnu) #:use-module (guix build-system guile) @@ -400,7 +404,7 @@ to run without any changes.") (define-public fetchmail (package (name "fetchmail") - (version "6.4.12") + (version "6.4.13") (source (origin (method url-fetch) @@ -408,7 +412,7 @@ to run without any changes.") (version-major+minor version) "/" "fetchmail-" version ".tar.xz")) (sha256 - (base32 "11s83af63gs9nnrjb66yq58xriyvi8hzj4ykxp3kws5z3nby111b")))) + (base32 "1qablzgwx3a516vdhckx3pv716x9r7nyfyr6fbncif861c3cya3x")))) (build-system gnu-build-system) (inputs `(("openssl" ,openssl))) @@ -684,7 +688,7 @@ mailpack. What can alterMIME do? @enumerate @item Insert disclaimers, -@item insert arbitary X-headers, +@item insert arbitrary X-headers, @item modify existing headers, @item remove attachments based on filename or content-type, @item replace attachments based on filename. @@ -1320,16 +1324,15 @@ compresses it.") (define-public claws-mail (package (name "claws-mail") - (version "3.17.7") + (version "3.17.8") (source (origin (method url-fetch) (uri - (string-append - "https://www.claws-mail.org/releases/claws-mail-" - version ".tar.xz")) + (string-append "https://www.claws-mail.org/releases/claws-mail-" + version ".tar.xz")) (sha256 - (base32 "1j6x09621wng0lavh53nwzh9vqjzpspl8kh5azh7kbihpi4ldfb0")))) + (base32 "1byxmz68lnm2m8q1gnp0lpr3qp7dcwabrw5iqflz9mlm960v5dyd")))) (build-system glib-or-gtk-build-system) (arguments `(#:configure-flags @@ -3918,3 +3921,42 @@ DKIM and ARC sign messages and output the corresponding signature headers.") based on asyncio.") (license (list license:asl2.0 license:lgpl3)))) ; only for setup_helpers.py + +(define-public rspamd + (package + (name "rspamd") + (version "2.6") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/rspamd/rspamd") + (commit version))) + (sha256 + (base32 "0vwa7k2s2bkfb8w78z5izkd6ywjbzqysb0grls898y549hm8ii70")) + (file-name (git-file-name name version)))) + (build-system cmake-build-system) + (arguments + '(#:configure-flags '("-DENABLE_LUAJIT=ON"))) + (inputs + `(("openssl" ,openssl) + ("glib" ,glib) + ("ragel" ,ragel) + ("luajit" ,luajit) + ("sqlite" ,sqlite) + ("file" ,file) + ("icu4c" ,icu4c) + ("pcre" ,pcre) + ("zlib" ,zlib) + ("perl" ,perl) + ("libsodium" ,libsodium))) + (native-inputs + `(("pkg-config" ,pkg-config))) + (synopsis "Spam filtering system") + (description "Rspamd is an advanced spam filtering system that +allows evaluation of messages by a number of rules including regular +expressions, statistical analysis and custom services such as URL +black lists. Each message is analysed by Rspamd and given a spam +score.") + (home-page "https://www.rspamd.com/") + (license license:asl2.0))) diff --git a/gnu/packages/man.scm b/gnu/packages/man.scm index b44b66b42c..bc7c011c74 100644 --- a/gnu/packages/man.scm +++ b/gnu/packages/man.scm @@ -223,7 +223,7 @@ the traditional flat-text whatis databases.") (define-public man-pages (package (name "man-pages") - (version "5.08") + (version "5.09") (source (origin (method url-fetch) @@ -233,7 +233,7 @@ the traditional flat-text whatis databases.") (string-append "mirror://kernel.org/linux/docs/man-pages/Archive/" "man-pages-" version ".tar.xz"))) (sha256 - (base32 "1xzp3f6wvw3wplk1a1x09zfv0jp0pdc9wh95czndh3h8z0qwv9yf")))) + (base32 "1whbxim4diyan97y9pz9k4ck16rmjalw5i1m0dg6ycv3pxv386nz")))) (build-system gnu-build-system) (arguments '(#:phases (modify-phases %standard-phases (delete 'configure)) diff --git a/gnu/packages/maths.scm b/gnu/packages/maths.scm index 2a909ec1d4..ba46937f9a 100644 --- a/gnu/packages/maths.scm +++ b/gnu/packages/maths.scm @@ -1203,7 +1203,7 @@ extremely large and complex data collections.") (define-public hdf5 ;; Default version of HDF5. - hdf5-1.8) + hdf5-1.10) (define-public hdf-java (package @@ -1235,7 +1235,7 @@ extremely large and complex data collections.") ("slf4j-simple" ,java-slf4j-simple))) (inputs `(("hdf4" ,hdf4) - ("hdf5" ,hdf5) + ("hdf5" ,hdf5-1.8) ("zlib" ,zlib) ("libjpeg" ,libjpeg-turbo) ("slf4j-api" ,java-slf4j-api))) @@ -1395,7 +1395,7 @@ System (Grid, Point and Swath).") `(("gfortran" ,gfortran))) (build-system gnu-build-system) (inputs - `(("hdf5" ,hdf5) + `(("hdf5" ,hdf5-1.8) ("zlib" ,zlib) ("gctp" ,gctp))) (arguments @@ -1496,7 +1496,7 @@ Blosc-compressed datasets.") (base32 "1gm76jbwhz9adbxgn14zx8cj33dmjdr2g5xcy0m9c2gakp8w59kj")))) (build-system gnu-build-system) - (inputs `(("hdf5" ,hdf5))) ;h5cc for tests + (inputs `(("hdf5" ,hdf5-1.8))) ;h5cc for tests (home-page "https://www.hdfgroup.org/products/hdf5_tools/h5check.html") (synopsis "HDF5 format checker") (description "@code{h5check} is a validation tool for verifying that an @@ -1538,17 +1538,17 @@ similar to MATLAB, GNU Octave or SciPy.") (define-public netcdf (package (name "netcdf") - (version "4.4.1.1") + (version "4.7.4") (source (origin (method url-fetch) - (uri (string-append "ftp://ftp.unidata.ucar.edu/pub/netcdf/" - "netcdf-" version ".tar.gz")) + (uri (string-append + "https://www.unidata.ucar.edu/downloads/netcdf/ftp/" + "netcdf-c-" version ".tar.gz")) (sha256 (base32 - "1blc7ik5yin7i0ls2kag0a9xjk12m0dzx6v1x88az3ras3scci2d")) - (patches (search-patches "netcdf-date-time.patch" - "netcdf-tst_h_par.patch")))) + "1a2fpp15a2rl1m50gcvvzd9y6bavl6vjf9zzf63sz5gdmq06yiqf")) + (patches (search-patches "netcdf-date-time.patch")))) (build-system gnu-build-system) (native-inputs `(("m4" ,m4) @@ -1557,6 +1557,7 @@ similar to MATLAB, GNU Octave or SciPy.") (inputs `(("hdf4" ,hdf4-alt) ("hdf5" ,hdf5) + ("curl" ,curl) ("zlib" ,zlib) ("libjpeg" ,libjpeg-turbo))) (arguments @@ -1618,7 +1619,7 @@ sharing of scientific data.") (define-public netcdf-fortran (package (name "netcdf-fortran") - (version "4.4.4") + (version "4.5.3") (source (origin (method url-fetch) (uri (string-append @@ -1626,7 +1627,7 @@ sharing of scientific data.") version ".tar.gz")) (sha256 (base32 - "0xaxdcg1p83zmypwml3swsnr3ccn38inwldyr1l3wa4dbwbrblxj")))) + "0x4acvfhbsx1q79dkkwrwbgfhm0w5ngnp4zj5kk92s1khihmqfhj")))) (build-system gnu-build-system) (arguments `(#:parallel-tests? #f)) @@ -4537,7 +4538,7 @@ structured and unstructured grid problems."))) (build-system gnu-build-system) (inputs `(("zlib" ,zlib) - ("hdf5" ,hdf5))) + ("hdf5" ,hdf5-1.8))) (home-page "http://matio.sourceforge.net/") (synopsis "Library for reading and writing MAT files") (description "Matio is a library for reading and writing MAT files. It diff --git a/gnu/packages/matrix.scm b/gnu/packages/matrix.scm index 83a0d478af..6a6cc628ca 100644 --- a/gnu/packages/matrix.scm +++ b/gnu/packages/matrix.scm @@ -61,13 +61,13 @@ an LDAP server.") (define-public synapse (package (name "synapse") - (version "1.20.1") + (version "1.22.1") (source (origin (method url-fetch) (uri (pypi-uri "matrix-synapse" version)) (sha256 (base32 - "1sf36vwvy2f9jy6dldq6gqfmh60384i5j64s7yc131b4dp0n7lcw")))) + "1pbxdqpfa7wzdz61p6x58x7841vng1g65qayxgcw73bn1shl50jb")))) (build-system python-build-system) ;; TODO Run tests with ‘PYTHONPATH=. trial3 tests’. (propagated-inputs @@ -109,6 +109,7 @@ an LDAP server.") ("python-txacme" ,python-txacme) ("python-pysaml2" ,python-pysaml2) ("python-lxml" ,python-lxml) + ("python-packaging" ,python-packaging) ;; sentry-sdk, jaeger-client, and opentracing could be included, but ;; all are monitoring aids and not essential. ("python-pyjwt" ,python-pyjwt))) diff --git a/gnu/packages/messaging.scm b/gnu/packages/messaging.scm index 5e2a39fece..2dacb73892 100644 --- a/gnu/packages/messaging.scm +++ b/gnu/packages/messaging.scm @@ -25,6 +25,7 @@ ;;; Copyright © 2020 Jonathan Brielmaier <jonathan.brielmaier@web.de> ;;; Copyright © 2020 Mason Hock <chaosmonk@riseup.net> ;;; Copyright © 2020 Michael Rohleder <mike@rohleder.de> +;;; Copyright © 2020 Raghav Gururajan <raghavgururajan@disroot.org> ;;; ;;; This file is part of GNU Guix. ;;; @@ -69,6 +70,7 @@ #:use-module (gnu packages gnome) #:use-module (gnu packages gnupg) #:use-module (gnu packages gperf) + #:use-module (gnu packages gstreamer) #:use-module (gnu packages gtk) #:use-module (gnu packages guile) #:use-module (gnu packages icu4c) @@ -701,23 +703,29 @@ simultaneously and therefore appear under the same nickname on IRC.") (define-public python-nbxmpp (package (name "python-nbxmpp") - (version "0.6.10") + (version "1.0.2") (source (origin (method url-fetch) - (uri (pypi-uri "nbxmpp" version)) + (uri + (pypi-uri "nbxmpp" version)) (sha256 - (base32 - "1vq89nhamciblyi5579bppnm4sb0zk5cg5hdipfpz174fxvl2wyd")))) + (base32 "0vw5drr077w9ks4crnw6pwa4735ycyjdcm54knc3w4in4x5027wr")))) (build-system python-build-system) - (arguments - `(#:tests? #f)) ; no tests + (native-inputs + `(("glib:bin" ,glib "bin"))) + (inputs + `(("glib" ,glib) + ("glib-networking" ,glib-networking) + ("libsoup" ,libsoup) + ("python-idna" ,python-idna) + ("python-precis-i18n" ,python-precis-i18n) + ("python-pygobject" ,python-pygobject))) + (synopsis "Non-blocking XMPP Module") + (description "Python-nbxmpp is a Python library that provides a way for +Python applications to use the XMPP network. This library was initially a fork +of xmpppy.") (home-page "https://dev.gajim.org/gajim/python-nbxmpp") - (synopsis "Non-blocking Jabber/XMPP module") - (description - "The goal of this python library is to provide a way for Python -applications to use Jabber/XMPP networks in a non-blocking way. This library -was initially a fork of xmpppy, but uses non-blocking sockets.") (license license:gpl3+))) (define-public python2-nbxmpp @@ -726,18 +734,27 @@ was initially a fork of xmpppy, but uses non-blocking sockets.") (define-public gajim (package (name "gajim") - (version "1.1.3") - (source (origin - (method url-fetch) - (uri (string-append "https://gajim.org/downloads/" - (version-major+minor version) - "/gajim-" version ".tar.bz2")) - (sha256 - (base32 - "0bzxwcpdd4ydh6d6mzpr0gxwhcb0x9ympk55fpvm1hcw9d28a716")))) + (version "1.2.2") + (source + (origin + (method url-fetch) + (uri + (string-append "https://gajim.org/downloads/" + (version-major+minor version) + "/gajim-" version ".tar.gz")) + (sha256 + (base32 "1gfcp3b5nq43xxz5my8vfhfxnnli726j3hzcgwh9fzrzzd9ic3gx")))) (build-system python-build-system) (arguments - `(#:phases + `(#:imported-modules + (,@%python-build-system-modules + (guix build glib-or-gtk-build-system)) + #:modules + ((guix build python-build-system) + ((guix build glib-or-gtk-build-system) + #:prefix glib-or-gtk:) + (guix build utils)) + #:phases (modify-phases %standard-phases (add-after 'unpack 'add-plugin-dirs (lambda _ @@ -751,107 +768,107 @@ else [])")) #t)) (replace 'check (lambda _ - (invoke "python" "./setup.py" "test" "-s" "test.no_gui"))) - (add-after 'install 'wrap-gi-typelib-path + ;; Tests require a running X server. + (system "Xvfb :1 +extension GLX &") + (setenv "DISPLAY" ":1") + ;; For missing '/etc/machine-id'. + (setenv "DBUS_FATAL_WARNINGS" "0") + (invoke "dbus-launch" "python" "./setup.py" "test") + #t)) + (add-after 'install 'glib-or-gtk-compile-schemas + (assoc-ref glib-or-gtk:%standard-phases 'glib-or-gtk-compile-schemas)) + (add-after 'install 'glib-or-gtk-wrap + (assoc-ref glib-or-gtk:%standard-phases 'glib-or-gtk-wrap)) + (add-after 'install 'wrap-env (lambda* (#:key outputs #:allow-other-keys) (let ((out (assoc-ref outputs "out"))) (for-each (lambda (name) (let ((file (string-append out "/bin/" name)) + (gst-plugin-path (getenv "GST_PLUGIN_SYSTEM_PATH")) (gi-typelib-path (getenv "GI_TYPELIB_PATH"))) (wrap-program file - `("GI_TYPELIB_PATH" ":" prefix (,gi-typelib-path)) - ;; For translations - `("XDG_DATA_DIRS" ":" prefix - (,(string-append (assoc-ref outputs "out") "/share")))))) + `("GST_PLUGIN_SYSTEM_PATH" ":" prefix (,gst-plugin-path)) + `("GI_TYPELIB_PATH" ":" prefix (,gi-typelib-path))))) '("gajim" "gajim-remote" "gajim-history-manager"))) - #t)) - (add-after 'install 'install-icons - (lambda* (#:key inputs outputs #:allow-other-keys) - (let* ((out (assoc-ref outputs "out")) - (adwaita (string-append - (assoc-ref inputs "adwaita-icon-theme") - "/share/icons/Adwaita")) - (hicolor (string-append - (assoc-ref inputs "hicolor-icon-theme") - "/share/icons/hicolor")) - (icons (string-append - out "/lib/python" - ,(version-major+minor (package-version python)) - "/site-packages/gajim/data/icons"))) - (with-directory-excursion icons - (symlink adwaita "Adwaita") - (copy-recursively hicolor "hicolor"))) - #t)) - (add-after 'install-icons 'wrap-gsettings-schema-dir - (lambda* (#:key inputs outputs #:allow-other-keys) - (wrap-program (string-append (assoc-ref outputs "out") - "/bin/gajim") - ;; For GtkFileChooserDialog. - `("GSETTINGS_SCHEMA_DIR" = - (,(string-append (assoc-ref inputs "gtk+") - "/share/glib-2.0/schemas")))) #t))))) (native-search-paths - (list (search-path-specification - (variable "GAJIM_PLUGIN_PATH") - (separator #f) ;single entry - (files '("share/gajim/plugins"))) - ;; Gajim needs to use the propagated inputs of its plugins. - (search-path-specification - (variable "PYTHONPATH") - (files (list (string-append - "lib/python" - - ;; FIXME: Cannot use this expression as it would - ;; introduce a circular dependency at the top level. - ;; (version-major+minor (package-version python)) - "3.8" - - "/site-packages")))))) + (list + (search-path-specification + (variable "GAJIM_PLUGIN_PATH") + (separator #f) ;single entry + (files + (list + "share/gajim/plugins"))) + ;; Gajim needs to use the propagated inputs of its plugins. + (search-path-specification + (variable "PYTHONPATH") + (files + (list + (string-append + "lib/python" + ;; FIXME: Cannot use this expression as it would + ;; introduce a circular dependency at the top level. + ;; (version-major+minor (package-version python)) + "3.8" + "/site-packages")))))) (native-inputs - `(("intltool" ,intltool) - ("python-docutils" ,python-docutils) + `(("gettext" ,gettext-minimal) + ("glib:bin" ,glib "bin") + ("gobject-introspection" ,gobject-introspection) + ("gtk+:bin" ,gtk+ "bin") + ("python-distutils-extra" ,python-distutils-extra) + ("python-setuptools" ,python-setuptools) ("xorg-server" ,xorg-server-for-tests))) (inputs - `(("adwaita-icon-theme" ,adwaita-icon-theme) + `(("avahi" ,avahi) + ("dbus" ,dbus) + ("farstream" ,farstream) + ("geoclue" ,geoclue) + ("glib" ,glib) + ("glib-networking" ,glib-networking) ("gnome-keyring" ,gnome-keyring) + ("gsettings-desktop-schemas" ,gsettings-desktop-schemas) + ("gsound",gsound) + ("gspell" ,gspell) + ("gstreamer" ,gstreamer) + ("gst-plugins-base" ,gst-plugins-base) ("gtk+" ,gtk+) - ("gtkspell3" ,gtkspell3) - ("hicolor-icon-theme" ,hicolor-icon-theme) - ("libsecret" ,libsecret) - ("python-cssutils" ,python-cssutils) - ("python-dbus" ,python-dbus) - ("python-gnupg" ,python-gnupg) + ("gupnp-igd" ,gupnp-igd) + ("libsoup" ,libsoup) + ("libxss" ,libxscrnsaver) + ("network-manager" ,network-manager) + ("python-css-parser" ,python-css-parser) ("python-keyring" ,python-keyring) ("python-nbxmpp" ,python-nbxmpp) + ("python-packaging" ,python-packaging) ("python-pillow" ,python-pillow) ("python-precis-i18n" ,python-precis-i18n) ("python-pycairo" ,python-pycairo) ("python-pygobject" ,python-pygobject) - ("python-pyopenssl" ,python-pyopenssl) - ("python-qrcode" ,python-qrcode))) + ("python-pyopenssl" ,python-pyopenssl))) + (propagated-inputs + `(("dconf" ,dconf))) + (synopsis "Fully-featured XMPP client") + (description "Gajim aims to be an easy to use and fully-featured XMPP chat +client. It is extensible via plugins, supports end-to-end encryption (OMEMO +and OpenPGP) and available in 29 languages.") (home-page "https://gajim.org/") - (synopsis "Jabber (XMPP) client") - (description "Gajim is a feature-rich and easy to use Jabber/XMPP client. -Among its features are: a tabbed chat window and single window modes; support -for group chat (with Multi-User Chat protocol), invitation, chat to group chat -transformation; audio and video conferences; file transfer; TLS, GPG and -end-to-end encryption support; XML console.") (license license:gpl3))) (define-public gajim-omemo (package (name "gajim-omemo") - (version "2.7.7") - (source (origin - (method url-fetch/zipbomb) - (uri (string-append - "https://ftp.gajim.org/plugins_releases/omemo_" - version ".zip")) - (sha256 - (base32 - "17jl4blkq04ag3g0har6z1bmk36523d29s51g260wb1pywfb536h")))) + (version "2.7.9") + (source + (origin + (method url-fetch/zipbomb) + (uri + (string-append + "https://ftp.gajim.org/plugins_releases/omemo_" + version ".zip")) + (sha256 + (base32 "19si2v5yrxpn2m0f684npsg0iiyl2h3r5hbxyrxv4k3acmfmhb3z")))) (build-system trivial-build-system) (arguments `(#:modules ((guix build utils)) @@ -865,14 +882,50 @@ end-to-end encryption support; XML console.") (copy-recursively source share) #t)))) (propagated-inputs - `(("python-axolotl" ,python-axolotl))) + `(("python-axolotl" ,python-axolotl) + ("python-axolotl-curve25519" ,python-axolotl-curve25519) + ("python-cryptography" ,python-cryptography) + ("python-qrcode" ,python-qrcode))) + (synopsis "Gajim OMEMO plugin") + (description "Gajim-OMEMO is a plugin that adds support for the OMEMO +Encryption to Gajim. OMEMO is an XMPP Extension Protocol (XEP) for secure +multi-client end-to-end encryption.") (home-page "https://dev.gajim.org/gajim/gajim-plugins/-/wikis/OmemoGajimPlugin") - (synopsis "Gajim OMEMO plugin") - (description - "This package provides the Gajim OMEMO plugin. OMEMO is an XMPP -Extension Protocol (XEP) for secure multi-client end-to-end encryption based -on Axolotl and PEP.") + (license license:gpl3+))) + +(define-public gajim-openpgp + (package + (name "gajim-openpgp") + (version "1.3.5") + (source + (origin + (method url-fetch/zipbomb) + (uri + (string-append + "https://ftp.gajim.org/plugins_releases/openpgp_" + version ".zip")) + (sha256 + (base32 "1jvpl2gjl5xxvsgxpmvh3mn2mm142dg2hknakkc32swb7l1fqx5m")))) + (build-system trivial-build-system) + (arguments + `(#:modules ((guix build utils)) + #:builder + (begin + (use-modules (guix build utils)) + (let* ((out (assoc-ref %outputs "out")) + (share (in-vicinity out "share/gajim/plugins")) + (source (assoc-ref %build-inputs "source"))) + (mkdir-p share) + (copy-recursively source share) + #t)))) + (propagated-inputs + `(("python-cryptography" ,python-cryptography) + ("python-gnupg" ,python-gnupg))) + (synopsis "Gajim OpenPGP plugin") + (description "Gajim-OpenPGP is a plugin that adds support for the OpenPGP +Encryption to Gajim.") + (home-page "https://dev.gajim.org/gajim/gajim-plugins/-/wikis/OpenPGPplugin") (license license:gpl3+))) (define-public dino @@ -1863,7 +1916,7 @@ building the IRC clients and bots.") (define-public toxic (package (name "toxic") - (version "0.8.3") + (version "0.8.4") (source (origin (method git-fetch) @@ -1871,7 +1924,7 @@ building the IRC clients and bots.") (url "https://github.com/JFreegman/toxic") (commit (string-append "v" version)))) (sha256 - (base32 "09l2j3lwvrq7bf3051vjsnml9w63790ly3iylgf26gkrmld6k31w")) + (base32 "0p1cmj1kyp506y5xm04mhlznhf5wcylvgsn6b307ms91vjqs3fg2")) (file-name (git-file-name name version)))) (build-system gnu-build-system) (arguments diff --git a/gnu/packages/monitoring.scm b/gnu/packages/monitoring.scm index 30fe61ea00..96a4d8be47 100644 --- a/gnu/packages/monitoring.scm +++ b/gnu/packages/monitoring.scm @@ -158,7 +158,7 @@ etc. via a Web interface. Features include: (define-public zabbix-agentd (package (name "zabbix-agentd") - (version "5.0.3") + (version "5.2.0") (source (origin (method url-fetch) @@ -166,7 +166,7 @@ etc. via a Web interface. Features include: "https://cdn.zabbix.com/zabbix/sources/stable/" (version-major+minor version) "/zabbix-" version ".tar.gz")) (sha256 - (base32 "1dc3fb9pa2cr6mfwgfyy1hpx26pbrws7989wj2kiiilmvimvrz1l")))) + (base32 "168yi9igwkb4jcdw38kvp85n8mxnlg2n7lkrgaycp8b0dlgjnidl")))) (build-system gnu-build-system) (arguments `(#:configure-flags diff --git a/gnu/packages/mp3.scm b/gnu/packages/mp3.scm index fdc8ba801f..ac546e8c95 100644 --- a/gnu/packages/mp3.scm +++ b/gnu/packages/mp3.scm @@ -550,14 +550,13 @@ is to provide an accurate identifier for record tracks.") (define-public python-audioread (package (name "python-audioread") - (version "2.1.8") + (version "2.1.9") (source (origin (method url-fetch) (uri (pypi-uri "audioread" version)) (sha256 - (base32 - "0s6iilb8ca6j6nv5a5hbyxi5alr3crvsbr6kggh82a44pkx08f87")))) + (base32 "129hab8x9sb3plff2bkq4xnzc3i8k9rgcm1a36l813kc0m10wj53")))) (build-system python-build-system) (arguments `(#:tests? #f)) ; there is no "audiofile" fixture (native-inputs diff --git a/gnu/packages/mpd.scm b/gnu/packages/mpd.scm index b0d3645b4a..b4e1182e52 100644 --- a/gnu/packages/mpd.scm +++ b/gnu/packages/mpd.scm @@ -8,6 +8,8 @@ ;;; Copyright © 2018, 2019, 2020 Tobias Geerinckx-Rice <me@tobias.gr> ;;; Copyright © 2019 Evan Straw <evan.straw99@gmail.com> ;;; Copyright © 2020 Ricardo Wurmus <rekado@elephly.net> +;;; Copyright © 2020 Lars-Dominik Braun <lars@6xq.net> +;;; Copyright © 2020 Simon Streit <simon@netpanic.org> ;;; ;;; This file is part of GNU Guix. ;;; @@ -31,16 +33,22 @@ #:use-module (guix download) #:use-module (guix git-download) #:use-module (guix utils) + #:use-module (guix build-system cmake) #:use-module (guix build-system gnu) #:use-module (guix build-system meson) #:use-module (guix build-system python) + #:use-module (gnu packages audio) + #:use-module (gnu packages autotools) #:use-module (gnu packages avahi) + #:use-module (gnu packages base) #:use-module (gnu packages boost) + #:use-module (gnu packages cdrom) #:use-module (gnu packages gettext) #:use-module (gnu packages gnome) #:use-module (gnu packages gnupg) #:use-module (gnu packages gtk) #:use-module (gnu packages icu4c) + #:use-module (gnu packages libusb) #:use-module (gnu packages readline) #:use-module (gnu packages check) #:use-module (gnu packages compression) @@ -53,7 +61,9 @@ #:use-module (gnu packages pcre) #:use-module (gnu packages pkg-config) #:use-module (gnu packages python) + #:use-module (gnu packages python-xyz) #:use-module (gnu packages pulseaudio) + #:use-module (gnu packages qt) #:use-module (gnu packages sphinx) #:use-module (gnu packages sqlite) #:use-module (gnu packages video) @@ -94,7 +104,7 @@ interfacing MPD in the C, C++ & Objective C languages.") (define-public mpd (package (name "mpd") - (version "0.22") + (version "0.22.2") (source (origin (method url-fetch) (uri @@ -103,7 +113,7 @@ interfacing MPD in the C, C++ & Objective C languages.") "/mpd-" version ".tar.xz")) (sha256 (base32 - "0xlhwdbnww7gjw474j54j94iwrzbzlqvnv6chlkga6yh4pcl5rvx")))) + "0dldj7r58a3zxbvhs188p8mb4wcffnp66kpnglm4vwcp0wpmn6rn")))) (build-system meson-build-system) (arguments `(#:configure-flags '("-Ddocumentation=enabled"))) @@ -185,7 +195,7 @@ player daemon.") (define-public ncmpc (package (name "ncmpc") - (version "0.41") + (version "0.42") (source (origin (method url-fetch) (uri @@ -194,7 +204,7 @@ player daemon.") "/ncmpc-" version ".tar.xz")) (sha256 (base32 - "1b0kxidz3h3anc006cjrrbb281zl75f1qaip4m3672pczdc2lwwa")))) + "0kfdyvqd2dfrxll5bla8mm10xvpngshlmyjf6wic4wbafqflgxx5")))) (build-system meson-build-system) (arguments `(#:configure-flags @@ -369,3 +379,84 @@ MPD library in a similar way to many other music players' 'shuffle library' feature. ashuffle works like any other MPD client, and can be used alongside other MPD frontends.") (license license:expat))) + +(define-public mpdris2 + (package + (name "mpdris2") + (version "0.8") + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/eonpatapon/mpDris2") + (commit version))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "048b8acsd1b8kcxzd9fsh5p9g2an9c4rznicfcpyrsjz5syv894h")))) + (build-system gnu-build-system) + ;; Manually wrap the binary, because we’re not using python-build-system. + (arguments + '(#:phases + (modify-phases %standard-phases + (add-after 'install 'wrap-program + (lambda* (#:key inputs outputs #:allow-other-keys) + (let ((out (assoc-ref outputs "out")) + (python-path (getenv "PYTHONPATH"))) + (wrap-program (string-append out "/bin/mpDris2") + `("PYTHONPATH" ":" prefix (,python-path))) + #t)))))) + (inputs + `(("python-mpd2" ,python-mpd2) + ("python-dbus" ,python-dbus) + ("python-pygobject" ,python-pygobject) + ("python" ,python))) ; Sets PYTHONPATH. + ;; For bootstrapping. + (native-inputs + `(("autoconf" ,autoconf) + ("automake" ,automake) + ("gettext" ,gettext-minimal) + ("which" ,which) + ("intltool" ,intltool))) + (synopsis "MPRIS V2.1 support for MPD") + (description "Client for the Music Player Daemon providing MPRIS 2 +support") + (home-page "https://github.com/eonpatapon/mpDris2") + (license license:gpl3+))) + +(define-public cantata + (package + (name "cantata") + (version "2.4.2") + (source (origin + (method url-fetch) + (uri (string-append "https://github.com/CDrummond/" + "cantata/releases/download/v" version "/" + "cantata-" version ".tar.bz2")) + (sha256 + (base32 + "10pcrpmb4n1mkgr21xd580nrbmh57q7s72cbs1zay847hc65vliy")))) + (build-system cmake-build-system) + (arguments + `(#:tests? #f)) ; No test suite + (native-inputs + `(("pkg-config" ,pkg-config))) + (inputs + `(("eudev", eudev) + ("ffmpeg" ,ffmpeg) + ("libcdio-paranoia" ,libcdio-paranoia) + ("libebur128" ,libebur128) + ("libmtp" ,libmtp) + ("mpg123" ,mpg123) + ("qtbase" ,qtbase) + ("qtmultimedia" ,qtmultimedia) + ("qtsvg" ,qtsvg) + ("taglib" ,taglib) + ("zlib" ,zlib))) + (synopsis "Graphical MPD Client") + (description "Cantata is a graphical client for the Music Player Daemon +(MPD), using the Qt5 toolkit. Its user interface is highly customizable, +supporting multiple collections, ratings, and dynamic playlists. A local cache +of the music library will be created to provide a hierarchy of albums and +artists along with albumart.") + (home-page "https://github.com/cdrummond/cantata") + (license license:gpl3+))) diff --git a/gnu/packages/mpi.scm b/gnu/packages/mpi.scm index 06a82cce95..9035147441 100644 --- a/gnu/packages/mpi.scm +++ b/gnu/packages/mpi.scm @@ -436,7 +436,12 @@ arrays) that expose a buffer interface.") `(#:configure-flags (list "--disable-silent-rules" ;let's see what's happening "--enable-debuginfo" - ;; "--with-device=ch4:ucx" ; --with-device=ch4:ofi segfaults in tests + + ;; Default to "ch4", as will be the case in 3.4. It also works + ;; around issues when running test suites of packages that use + ;; MPICH: <https://issues.guix.gnu.org/39588#15>. + "--with-device=ch4:ucx" ; --with-device=ch4:ofi segfaults in tests + (string-append "--with-hwloc-prefix=" (assoc-ref %build-inputs "hwloc")) diff --git a/gnu/packages/mtools.scm b/gnu/packages/mtools.scm index 5994cd140c..2483459b71 100644 --- a/gnu/packages/mtools.scm +++ b/gnu/packages/mtools.scm @@ -29,14 +29,14 @@ (define-public mtools (package (name "mtools") - (version "4.0.24") + (version "4.0.25") (source (origin (method url-fetch) (uri (string-append "mirror://gnu/mtools/mtools-" version ".tar.bz2")) (sha256 (base32 - "1f9g7g8zspp8nvg1nz869il9pvxpdpchqd0vxfc89y8rjbda5x14")) + "059cirrarizvcxv8zyp6ykaz45rymljpgdkdjc9kvadp7gn1w5px")) (patches (search-patches "mtools-mformat-uninitialized.patch")))) (build-system gnu-build-system) diff --git a/gnu/packages/music.scm b/gnu/packages/music.scm index 830bc4dfbe..0d72c24d92 100644 --- a/gnu/packages/music.scm +++ b/gnu/packages/music.scm @@ -1661,7 +1661,7 @@ users to select LV2 plugins and run them with jalv.") (define-public synthv1 (package (name "synthv1") - (version "0.9.17") + (version "0.9.18") (source (origin (method url-fetch) (uri @@ -1669,7 +1669,7 @@ users to select LV2 plugins and run them with jalv.") "/synthv1-" version ".tar.gz")) (sha256 (base32 - "0jc2drk5dzsaa6vxmk1hyi0zp02zm3mzar3arssfy5vcyc5ig6sk")))) + "1sggiaswcdpyxnnbg583ldg0m92fiys6nc5qdiqli7450w416a6c")))) (build-system gnu-build-system) (arguments `(#:tests? #f)) ; there are no tests @@ -1693,7 +1693,7 @@ oscillators and stereo effects.") (define-public drumkv1 (package (name "drumkv1") - (version "0.9.17") + (version "0.9.18") (source (origin (method url-fetch) (uri @@ -1701,7 +1701,7 @@ oscillators and stereo effects.") "/drumkv1-" version ".tar.gz")) (sha256 (base32 - "198fyc5dwjn679si86vy139ngym4n3mdy1z4vfjikn7b6mriq1x2")))) + "1bzkaz7sqx1pvirja8zm7i2ckzl5ad6xspr4840389ik3l8qpnr5")))) (build-system gnu-build-system) (arguments `(#:tests? #f)) ; there are no tests @@ -1726,7 +1726,7 @@ effects.") (define-public samplv1 (package (name "samplv1") - (version "0.9.17") + (version "0.9.18") (source (origin (method url-fetch) (uri @@ -1734,7 +1734,7 @@ effects.") "/samplv1-" version ".tar.gz")) (sha256 (base32 - "1v21r722m027jjy4x6lm5cvzapsnpx36r10ar543ay0hgmygl322")))) + "13p5aj1513fwhzi9s4i1a5dbvzmbx9867zb0ddb9s9nbwks4ry3q")))) (build-system gnu-build-system) (arguments `(#:tests? #f)) ; there are no tests @@ -1759,7 +1759,7 @@ effects.") (define-public padthv1 (package (name "padthv1") - (version "0.9.17") + (version "0.9.18") (source (origin (method url-fetch) (uri @@ -1767,7 +1767,7 @@ effects.") "/padthv1-" version ".tar.gz")) (sha256 (base32 - "098fk8fwcgssnfr1gilqg8g17zvch62lrn3rqsswpzbr3an5adb3")))) + "1karrprb3ijrbiwpr43rl3nxnzc33lnmwrd1832psgr3flnr9fp5")))) (build-system gnu-build-system) (arguments `(#:tests? #f)) ; there are no tests @@ -2443,7 +2443,7 @@ capabilities, custom envelopes, effects, etc.") (define-public yoshimi (package (name "yoshimi") - (version "1.7.2") + (version "1.7.3") (source (origin (method url-fetch) @@ -2451,7 +2451,7 @@ capabilities, custom envelopes, effects, etc.") (version-major+minor version) "/yoshimi-" version ".tar.bz2")) (sha256 - (base32 "1vxrksg199pcgiykq0nsf67ihfk2ny2jmpf6gzdb3nk9iphm7di3")))) + (base32 "1ixb2kqmfgm2lfjaj6z3h03c840hcfmca4h6pjnc4aln2mzm7fcw")))) (build-system cmake-build-system) (arguments `(#:tests? #f ; there are no tests @@ -2703,14 +2703,14 @@ from the command line.") (define-public qtractor (package (name "qtractor") - (version "0.9.17") + (version "0.9.18") (source (origin (method url-fetch) (uri (string-append "https://downloads.sourceforge.net/qtractor/" "qtractor-" version ".tar.gz")) (sha256 (base32 - "0mcfli3wffz5a9pkpcxli03ysyrr53ij3569m81ck9h8pr7yng4b")))) + "121vmygdzp37p6f93f8dbbg2m2r55j7amyiapzkqgypgn4vfdbwr")))) (build-system gnu-build-system) (arguments `(#:tests? #f)) ; no "check" target @@ -4194,7 +4194,7 @@ audio samples and various soft sythesizers. It can receive input from a MIDI ke (define-public musescore (package (name "musescore") - (version "3.5.1") + (version "3.5.2") (source (origin (method git-fetch) @@ -4203,16 +4203,16 @@ audio samples and various soft sythesizers. It can receive input from a MIDI ke (commit (string-append "v" version)))) (file-name (git-file-name name version)) (sha256 - (base32 "01jj6rbvbjxvmv6q13a22vfqp3id52a5mf2a1vzph2giz7pr313x")) + (base32 "0yzps5xxa50cr2i5iv2ycjdywd0mcrdd6hx93l4p8lfljag3w3al")) (modules '((guix build utils))) (snippet - ;; Un-bundle OpenSSL and remove unused libraries. + ;; Remove unused libraries. '(begin (for-each delete-file-recursively '("thirdparty/freetype" - "thirdparty/google_analytics" "thirdparty/openssl" - "thirdparty/portmidi")) + "thirdparty/portmidi" + "thirdparty/qt-google-analytics")) #t)))) (build-system cmake-build-system) (arguments @@ -4220,6 +4220,7 @@ audio samples and various soft sythesizers. It can receive input from a MIDI ke `("-DBUILD_TELEMETRY_MODULE=OFF" ;don't phone home "-DBUILD_WEBENGINE=OFF" "-DDOWNLOAD_SOUNDFONT=OFF" + "-DMUSESCORE_BUILD_CONFIG=release" "-DUSE_SYSTEM_FREETYPE=ON") ;; There are tests, but no simple target to run. The command used to ;; run them is: @@ -4252,8 +4253,9 @@ audio samples and various soft sythesizers. It can receive input from a MIDI ke `(("pkg-config" ,pkg-config) ("qttools" ,qttools))) (synopsis "Music composition and notation software") - (description "MuseScore is a music score typesetter. Its main purpose is -the creation of high-quality engraved musical scores in a WYSIWYG environment. + (description + "MuseScore is a music score typesetter. Its main purpose is the creation +of high-quality engraved musical scores in a WYSIWYG environment. It supports unlimited staves, linked parts and part extraction, tablature, MIDI input, percussion notation, cross-staff beaming, automatic transposition, @@ -5047,7 +5049,7 @@ complete without obstructing your daily work.") (define-public playerctl (package (name "playerctl") - (version "2.0.2") + (version "2.2.1") (source (origin (method git-fetch) (uri (git-reference @@ -5056,7 +5058,7 @@ complete without obstructing your daily work.") (file-name (git-file-name name version)) (sha256 (base32 - "1f3njnpd52djx3dmhh9a8p5a67f0jmr1gbk98icflr2q91149gjz")))) + "17hi33sw3663qz5v54bqqil31sgkrlxkb2l5bgqk87pac6x2wnbz")))) (build-system meson-build-system) (arguments `(#:configure-flags '("-Dintrospection=false" "-Dgtk-doc=false"))) @@ -5889,7 +5891,7 @@ plugin and a standalone JACK application.") (define-public wolf-shaper (package (name "wolf-shaper") - (version "0.1.7") + (version "0.1.8") (source (origin (method git-fetch) @@ -5901,7 +5903,7 @@ plugin and a standalone JACK application.") (file-name (git-file-name name version)) (sha256 (base32 - "0lllgcbnnh1m95bp29hh17x170hl7170zizjrvy892qfkn36830d")))) + "1j9xmh1nkf45ay1c5dz2g165qvrwlanzcq6mvb3nfxar265drd9q")))) (build-system gnu-build-system) (arguments `(#:tests? #f ; no check target diff --git a/gnu/packages/networking.scm b/gnu/packages/networking.scm index de76406a31..5de4f6ef1b 100644 --- a/gnu/packages/networking.scm +++ b/gnu/packages/networking.scm @@ -97,6 +97,7 @@ #:use-module (gnu packages glib) #:use-module (gnu packages gnome) #:use-module (gnu packages gnupg) + #:use-module (gnu packages golang) #:use-module (gnu packages graphviz) #:use-module (gnu packages gstreamer) #:use-module (gnu packages gtk) @@ -207,7 +208,7 @@ Android, and ChromeOS.") (define-public libnice (package (name "libnice") - (version "0.1.17") + (version "0.1.18") (source (origin (method url-fetch) @@ -215,7 +216,7 @@ Android, and ChromeOS.") (string-append "https://libnice.freedesktop.org/releases/" name "-" version ".tar.gz")) (sha256 - (base32 "09lm0rxwvbr53svi3inaharlq96iwbs3s6957z69qp4bqpga0lhr")))) + (base32 "1x3kj9b3dy9m2h6j96wgywfamas1j8k2ca43k5v82kmml9dx5asy")))) (build-system meson-build-system) (outputs '("out" "doc")) (arguments @@ -225,6 +226,13 @@ Android, and ChromeOS.") "-Dgtk_doc=enabled") #:phases (modify-phases %standard-phases + (add-after 'unpack 'disable-failing-test + (lambda _ + (substitute* "tests/meson.build" + ;; ‘test-set-port-range.c:66:main: assertion failed: + ;; (nice_agent_gather_candidates (agent, stream1))’ + (("'test-set-port-range'") "#")) + #t)) (add-after 'install 'move-docs (lambda* (#:key outputs #:allow-other-keys) (let* ((out (assoc-ref outputs "out")) @@ -240,13 +248,13 @@ Android, and ChromeOS.") ("gtk-doc" ,gtk-doc) ("pkg-config" ,pkg-config))) (inputs - `(("gnutls" ,gnutls) - ("gstreamer" ,gstreamer) + `(("gstreamer" ,gstreamer) ("gst-plugins-base" ,gst-plugins-base) ("libnsl" ,libnsl))) (propagated-inputs `(("glib" ,glib) - ("glib-networking" ,glib-networking))) + ("glib-networking" ,glib-networking) + ("gnutls" ,gnutls))) (synopsis "GLib ICE implementation") (description "LibNice is a library that implements the Interactive Connectivity Establishment (ICE) standard (RFC 5245 & RFC 8445). It provides a @@ -325,17 +333,11 @@ supported, including rtmp://, rtmpt://, rtmpe://, rtmpte://, and rtmps://.") (list (string-append "-DCMAKE_INSTALL_BINDIR=" (assoc-ref %outputs "out") "/bin") - (string-append "-DCMAKE_INSTALL_LIBDIR=" - (assoc-ref %outputs "out") "/lib") - (string-append "-DINSTALL_SHARED_DIR=" - (assoc-ref %outputs "out") "/lib") - (string-append "-DCMAKE_INSTALL_INCLUDEDIR=" - (assoc-ref %outputs "out") "/include") - "-DENABLE_UNITTESTS=ON" - "-DENABLE_CODE_COVERAGE=ON"))) + "-DCMAKE_INSTALL_INCLUDEDIR=include" + "-DENABLE_STATIC=OFF" + "-DENABLE_UNITTESTS=ON"))) (native-inputs - `(("git" ,git-minimal) - ("gtest" ,googletest) + `(("gtest" ,googletest) ("pkg-config" ,pkg-config) ("tclsh" ,tcl))) (propagated-inputs @@ -508,14 +510,14 @@ systems with no further dependencies.") (define-public blueman (package (name "blueman") - (version "2.1.3") + (version "2.1.4") (source (origin (method url-fetch) (uri (string-append "https://github.com/blueman-project/blueman/releases" "/download/" version "/blueman-" version ".tar.xz")) (sha256 - (base32 "1pngqbwapbvywhkmflapqvs0wa0af7d1a87wy56l5hg2r462xl1v")))) + (base32 "1nk46s1s8yrlqv37sc7la05nnn7sdgqhkrcdm98qin34llwkv70x")))) (build-system glib-or-gtk-build-system) (arguments `(#:configure-flags (list "--enable-polkit" @@ -900,10 +902,14 @@ more.") #:phases (modify-phases %standard-phases (add-before 'check 'patch-tests (lambda _ - ;; XXX FIXME: Disable the zproc test, which fails on some - ;; hardware: <https://github.com/zeromq/czmq/issues/2007>. (substitute* "src/czmq_selftest.c" + ;; Disable the zproc test, which fails on some hardware + ;; (see: https://github.com/zeromq/czmq/issues/2007). (("\\{ \"zproc\", zproc_test.*") + "") + ;; Also disable the zarmour test, which fails as well + ;; (see: https://github.com/zeromq/czmq/issues/2125). + (("\\{ \"zarmour\", zarmour_test.*") "")) #t))))) (inputs @@ -1289,24 +1295,27 @@ of the same name.") (define-public wireshark (package (name "wireshark") - (version "3.2.7") + (version "3.4.0") (source (origin (method url-fetch) (uri (string-append "https://www.wireshark.org/download/src/wireshark-" version ".tar.xz")) (sha256 - (base32 "1nkhglzxj05hwhgzrgan4glv0z67rmasf9djx1dmqicwdnw2z0xy")))) + (base32 "1bm8jj2rviis9j9l6nixvhxcfx362y9iphkxssgmiz2kj6yypr37")))) (build-system cmake-build-system) (arguments `(#:phases (modify-phases %standard-phases (add-after 'unpack 'remove-failing-test - ;; Test 31/32 fails with errors like "Program reassemble_test is - ;; not available". Skipping it for now. + ;; Skip test suite failing with "Program reassemble_test is not + ;; available" and alike errors. Also skip test suite failing with + ;; "AssertionError: Program extcap/sdjournal is not available" + ;; error.' (lambda _ (substitute* "CMakeLists.txt" - (("suite_unittests" all) (string-append "# " all))) + (("suite_unittests" all) (string-append "# " all)) + (("suite_extcaps" all) (string-append "# " all))) #t))) ;; Build process chokes during `validate-runpath' phase. ;; @@ -1561,7 +1570,11 @@ TCP connection, TLS handshake and so on) in the terminal.") (base32 "1q1ywpic6s7dfjj3cwzcfgscc4zq0aih462gyas7j1z683ss14b8")))) (build-system gnu-build-system) (arguments - '(#:phases + '(#:configure-flags + ;; disable -march=native in build for reproducibility; see + ;; https://wiki.squid-cache.org/KnowledgeBase/IllegalInstructionError + (list "--disable-arch-native") + #:phases (modify-phases %standard-phases (add-before 'build 'fix-true-path (lambda* (#:key inputs #:allow-other-keys) @@ -3450,14 +3463,14 @@ maximum extent possible.") (define-public batctl (package (name "batctl") - (version "2020.3") + (version "2020.4") (source (origin (method url-fetch) (uri (string-append "https://downloads.open-mesh.org/batman/releases/batman-adv-" version "/batctl-" version ".tar.gz")) (sha256 - (base32 "0r2w2v4sy6wgr7mp9lc7yj9k4ldsbsm3425rjil7p0b17zmzf4rm")))) + (base32 "05rrpfbpdhxn5zgdps849qls2ifis6a94cjryb60d4y1nc2n0d7w")))) (inputs `(("libnl" ,libnl))) (native-inputs @@ -3695,14 +3708,14 @@ thousands of connections is clearly realistic with today's hardware.") (define-public lldpd (package (name "lldpd") - (version "1.0.6") + (version "1.0.7") (source (origin (method url-fetch) (uri (string-append "https://media.luffy.cx/files/lldpd/lldpd-" version ".tar.gz")) (sha256 - (base32 "1v5fd8vwxracvzvgrsswvhppwyx5c4srj89g1cnvy73w831mpq95")) + (base32 "1qc7k83zpcq27hpjv1lmgrj4la2zy1gspwk5jas43j49siwr3xqx")) (modules '((guix build utils))) (snippet '(begin @@ -3716,6 +3729,7 @@ thousands of connections is clearly realistic with today's hardware.") "--with-privsep-group=nogroup" "--localstatedir=/var" "--enable-pie" + "--disable-static" "--without-embedded-libevent" (string-append "--with-systemdsystemunitdir=" (assoc-ref %outputs "out") @@ -3808,3 +3822,97 @@ stamps.") client and server. It allows you to use remote block devices over a TCP/IP network.") (license license:gpl2))) + +(define-public yggdrasil + (package + (name "yggdrasil") + (version "0.3.15") + (source + (origin + (method git-fetch) + (uri + (git-reference + (url "https://github.com/yggdrasil-network/yggdrasil-go") + (commit (string-append "v" version)) + (recursive? #t))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "0gk7gy8yq5nrnblv4imxzzm2hac4ri0hlw19ajfbc1zll5kj32gf")) + (patches (search-patches "yggdrasil-extra-config.patch")))) + (build-system go-build-system) + (arguments + '(#:import-path "github.com/yggdrasil-network/yggdrasil-go" + ;; TODO: figure out how tests are run + #:tests? #f + #:install-source? #f + #:phases (modify-phases %standard-phases + (replace 'build + (lambda _ + (for-each + (lambda (c) + (invoke + "go" "build" "-v" "-ldflags=-s -w" + (string-append + "github.com/yggdrasil-network/yggdrasil-go/cmd/" c))) + (list "yggdrasil" "yggdrasilctl")) + #t)) + (replace 'install + (lambda* (#:key outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (bin (string-append out "/bin/")) + (doc (string-append out "/share/doc/yggdrasil/"))) + (mkdir-p bin) + (for-each + (lambda (f) + (install-file f bin)) + (list "yggdrasil" "yggdrasilctl")) + (mkdir-p doc) + (copy-recursively + (string-append + "src/github.com/yggdrasil-network/yggdrasil-go/" + "doc/yggdrasil-network.github.io") + doc)) + #t))))) + ;; https://github.com/kardianos/minwinsvc is windows only + (propagated-inputs + `(("go-github-com-arceliar-phony" ,go-github-com-arceliar-phony) + ("go-github-com-cheggaaa-pb" ,go-github-com-cheggaaa-pb) + ("go-github-com-gologme-log" ,go-github-com-gologme-log) + ("go-github-com-hashicorp-go-syslog" ,go-github-com-hashicorp-go-syslog) + ("go-github-com-hjson-hjson-go" ,go-github-com-hjson-hjson-go) + ("go-github-com-kardianos-minwinsvc" ,go-github-com-kardianos-minwinsvc) + ("go-github-com-mitchellh-mapstructure" + ,go-github-com-mitchellh-mapstructure) + ("go-golang-org-x-crypto" ,go-golang-org-x-crypto) + ("go-golang-org-x-net" ,go-golang-org-x-net) + ("go-golang-org-x-text" ,go-golang-org-x-text) + ("go-golang-zx2c4-com-wireguard" ,go-golang-zx2c4-com-wireguard) + ("go-netlink" ,go-netlink) + ("go-netns" ,go-netns))) + (home-page "https://yggdrasil-network.github.io/blog.html") + (synopsis + "Experiment in scalable routing as an encrypted IPv6 overlay network") + (description + "Yggdrasil is an early-stage implementation of a fully end-to-end encrypted +IPv6 network. It is lightweight, self-arranging, supported on multiple +platforms and allows pretty much any IPv6-capable application to communicate +securely with other Yggdrasil nodes. Yggdrasil does not require you to have +IPv6 Internet connectivity - it also works over IPv4.") + (license + ;; As a special exception to the GNU Lesser General Public License + ;; version 3 ("LGPL3"), the copyright holders of this Library give you + ;; permission to convey to a third party a Combined Work that links + ;; statically or dynamically to this Library without providing any Minimal + ;; Corresponding Source or Minimal Application Code as set out in 4d or + ;; providing the installation information set out in section 4e, provided + ;; that you comply with the other provisions of LGPL3 and provided that you + ;; meet, for the Application the terms and conditions of the license(s) + ;; which apply to the Application. Except as stated in this special + ;; exception, the provisions of LGPL3 will continue to comply in full to + ;; this Library. If you modify this Library, you may apply this exception + ;; to your version of this Library, but you are not obliged to do so. If + ;; you do not wish to do so, delete this exception statement from your + ;; version. This exception does not (and cannot) modify any license terms + ;; which apply to the Application, with which you must still comply + license:lgpl3))) diff --git a/gnu/packages/nvi.scm b/gnu/packages/nvi.scm index c34b1cad72..b520b32784 100644 --- a/gnu/packages/nvi.scm +++ b/gnu/packages/nvi.scm @@ -19,12 +19,14 @@ (define-module (gnu packages nvi) #:use-module (gnu packages) + #:use-module (gnu packages autotools) #:use-module (gnu packages dbm) #:use-module (gnu packages ncurses) #:use-module (guix packages) #:use-module (guix download) #:use-module (guix build-system gnu) - #:use-module (guix licenses)) + #:use-module (guix licenses) + #:use-module (guix utils)) (define-public nvi (package @@ -64,17 +66,41 @@ (build-system gnu-build-system) (arguments `(#:out-of-source? #t - #:configure-flags '("--enable-widechar"))) + #:configure-flags + '("--enable-widechar" + ,@(if (%current-target-system) + '("vi_cv_sprintf_count=yes") + '())) + #:phases + (modify-phases %standard-phases + (add-before 'configure 'fix-configure + (lambda* (#:key inputs native-inputs #:allow-other-keys) + ;; Replace outdated config.sub and config.guess: + (with-directory-excursion "dist" + (for-each (lambda (file) + (chmod file #o755) + (install-file + (string-append + (assoc-ref + (or native-inputs inputs) "automake") + "/share/automake-" + ,(version-major+minor + (package-version automake)) + "/" file) ".")) + '("config.sub"))) + #t))))) (inputs `(("bdb" ,bdb) ("ncurses" ,ncurses))) + (native-inputs + `(("automake" ,automake))) ;Up to date 'config.guess' and 'config.sub'. (synopsis "The Berkeley Vi Editor") (description "Vi is the original screen based text editor for Unix systems. It is considered the standard text editor, and is available on almost all Unix -systems. Nvi is intended as a \"bug-for-bug compatible\" clone of the original -BSD vi editor. As such, it doesn't have a lot of snazzy features as do some -of the other vi clones such as elvis and vim. However, if all you want is vi, -this is the one to get.") +systems. Nvi is intended as a \"bug-for-bug compatible\" clone of the +original BSD vi editor. As such, it doesn't have a lot of snazzy features as +do some of the other vi clones such as elvis and vim. However, if all you +want is vi, this is the one to get.") (home-page "https://sites.google.com/a/bostic.com/keithbostic/vi") (license bsd-3))) diff --git a/gnu/packages/ocaml.scm b/gnu/packages/ocaml.scm index 4cc530509a..30add4f6b4 100644 --- a/gnu/packages/ocaml.scm +++ b/gnu/packages/ocaml.scm @@ -15,6 +15,7 @@ ;;; Copyright © 2019 Ricardo Wurmus <rekado@elephly.net> ;;; Copyright © 2020 Brett Gilio <brettg@gnu.org> ;;; Copyright © 2020 Marius Bakke <marius@gnu.org> +;;; Copyright © 2020 Simon Tournier <zimon.toutoune@gmail.com> ;;; ;;; This file is part of GNU Guix. ;;; @@ -672,49 +673,54 @@ the OCaml core distribution.") (license license:lgpl2.1+))); with linking exception (define-public emacs-tuareg - (package - (name "emacs-tuareg") - (version "2.2.0") - (source - (origin - (method git-fetch) - (uri (git-reference - (url "https://github.com/ocaml/tuareg") - (commit version))) - (file-name (git-file-name name version)) - (sha256 - (base32 "06zxnn85fk5087iq0zxc5l5n9fz8r0367wylmynbfhc9711vccy6")))) - (build-system gnu-build-system) - (native-inputs `(("emacs" ,emacs-minimal) - ("opam" ,opam))) - (arguments - `(#:phases - (modify-phases %standard-phases - (add-after 'unpack 'make-git-checkout-writable - (lambda _ - (for-each make-file-writable (find-files ".")) - #t)) - (delete 'configure) - (add-before 'install 'fix-install-path - (lambda* (#:key outputs #:allow-other-keys) - (substitute* "Makefile" - (("/emacs/site-lisp") - (string-append (assoc-ref %outputs "out") - "/share/emacs/site-lisp/"))) - #t)) - (add-after 'install 'post-install - (lambda* (#:key outputs #:allow-other-keys) - (symlink "tuareg.el" - (string-append (assoc-ref outputs "out") - "/share/emacs/site-lisp/" - "tuareg-autoloads.el")) - #t))))) - (home-page "https://github.com/ocaml/tuareg") - (synopsis "OCaml programming mode, REPL, debugger for Emacs") - (description "Tuareg helps editing OCaml code, to highlight important + ;; Last upstream release on Sept., 14th, 2018, since then "Package cl + ;; deprecated" or 'lexical-binding' and others had been fixed. + (let ((commit "ccde45bbc292123ec20617f1af7f7e19f7481545") + (revision "0")) + (package + (name "emacs-tuareg") + (version (git-version "2.2.0" revision commit)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/ocaml/tuareg") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 "1yxv4bnqarilnpg5j7wywall8170hwvm0q4xx06yqjgcn8pq1lac")))) + (build-system gnu-build-system) + (native-inputs + `(("emacs" ,emacs-minimal) + ("opam" ,opam))) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-after 'unpack 'make-git-checkout-writable + (lambda _ + (for-each make-file-writable (find-files ".")) + #t)) + (delete 'configure) + (add-before 'install 'fix-install-path + (lambda* (#:key outputs #:allow-other-keys) + (substitute* "Makefile" + (("/emacs/site-lisp") + (string-append (assoc-ref %outputs "out") + "/share/emacs/site-lisp/"))) + #t)) + (add-after 'install 'post-install + (lambda* (#:key outputs #:allow-other-keys) + (symlink "tuareg.el" + (string-append (assoc-ref outputs "out") + "/share/emacs/site-lisp/" + "tuareg-autoloads.el")) + #t))))) + (home-page "https://github.com/ocaml/tuareg") + (synopsis "OCaml programming mode, REPL, debugger for Emacs") + (description "Tuareg helps editing OCaml code, to highlight important parts of the code, to run an OCaml REPL, and to run the OCaml debugger within Emacs.") - (license license:gpl2+))) + (license license:gpl2+)))) (define-public ocaml-menhir (package @@ -1299,8 +1305,17 @@ following a very simple s-expression syntax.") #:tests? #f)) (propagated-inputs `(("ocaml-csexp" ,ocaml-csexp))) - (synopsis "") - (description ""))) + (synopsis "Dune helper library for gathering system configuration") + (description "Dune-configurator is a small library that helps writing +OCaml scripts that test features available on the system, in order to generate +config.h files for instance. Among other things, dune-configurator allows one to: + +@itemize +@item test if a C program compiles +@item query pkg-config +@item import #define from OCaml header files +@item generate config.h file +@end itemize"))) (define-public dune (package diff --git a/gnu/packages/package-management.scm b/gnu/packages/package-management.scm index ba338415ce..4a7a15c378 100644 --- a/gnu/packages/package-management.scm +++ b/gnu/packages/package-management.scm @@ -131,8 +131,8 @@ ;; Note: the 'update-guix-package.scm' script expects this definition to ;; start precisely like this. (let ((version "1.1.0") - (commit "875c01f82dc5f2c4ca82952ea88b3240fbe8bede") - (revision 30)) + (commit "5e7cf66fb35780f930ad0bc5fe21ac330df4411d") + (revision 32)) (package (name "guix") @@ -148,7 +148,7 @@ (commit commit))) (sha256 (base32 - "0mh1hnrk84h5nzqp6aflh9ab3kxr5672c8bx44minzyd26177yik")) + "15clfjp845gvl0p6qw0b1gdibqfq20zwzr6dbxvq8l9fgzj1kb6b")) (file-name (string-append "guix-" version "-checkout")))) (build-system gnu-build-system) (arguments @@ -566,14 +566,14 @@ out) and returning a package that uses that as its 'source'." (define-public nix (package (name "nix") - (version "2.3.7") + (version "2.3.8") (source (origin (method url-fetch) - (uri (string-append "http://nixos.org/releases/nix/nix-" + (uri (string-append "https://nixos.org/releases/nix/nix-" version "/nix-" version ".tar.xz")) (sha256 (base32 - "15p50jkss6szinisb7axhxybgfi29sm9grz7mxwair8ljj2553yx")))) + "0amd5nnqslvkfpz042l4ydihw2qsy68nmjbwaagcrggaq4irh4f7")))) (build-system gnu-build-system) (arguments `(#:configure-flags '("--sysconfdir=/etc" "--enable-gc") @@ -641,6 +641,25 @@ letting you install them apart in distinct directories and then create symlinks to the files in a common directory such as /usr/local.") (license license:gpl3+))) +(define-public xstow + (package + (name "xstow") + (version "1.0.2") + (source (origin + (method url-fetch) + (uri (string-append "mirror://sourceforge/xstow/xstow-" + version ".tar.bz2")) + (sha256 + (base32 + "1vy6lcswpkixh7h5mvsmq2wbcih6lpsmcva3m7v6f5npllciy13g")))) + (build-system gnu-build-system) + (synopsis "Replacement of GNU Stow written in C++") + (description + "XStow is a replacement of GNU Stow written in C++. It supports all +features of Stow with some extensions.") + (home-page "http://xstow.sourceforge.net/") + (license license:gpl2))) + (define-public rpm (package (name "rpm") @@ -990,90 +1009,96 @@ environments.") (license (list license:gpl3+ license:agpl3+ license:silofl1.1)))) (define-public guix-build-coordinator - (let ((commit "e701d4d7f24a11d94cf504e7efbcee4e1091b092") - (revision "1")) + (let ((commit "98f50831612b9d1253ae8ca2bceb547fed373f41") + (revision "5")) (package - (name "guix-build-coordinator") - (version (git-version "0" revision commit)) - (source (origin - (method git-fetch) - (uri (git-reference - (url "https://git.cbaines.net/git/guix/build-coordinator") - (commit commit))) - (sha256 - (base32 - "16f09sl527b6bgyxs2ybyjfncli60dwzg4v1c58h4hcl2zm8qx70")) - (file-name (string-append name "-" version "-checkout")))) - (build-system gnu-build-system) - (arguments - `(#:modules (((guix build guile-build-system) - #:select (target-guile-effective-version)) - ,@%gnu-build-system-modules) - #:imported-modules ((guix build guile-build-system) - ,@%gnu-build-system-modules) - #:phases - (modify-phases %standard-phases - (add-before 'build 'set-GUILE_AUTO_COMPILE - (lambda _ - ;; To avoid warnings relating to 'guild'. - (setenv "GUILE_AUTO_COMPILE" "0") - #t)) - (add-after 'install 'wrap-executable - (lambda* (#:key inputs outputs #:allow-other-keys) - (let* ((out (assoc-ref outputs "out")) - (bin (string-append out "/bin")) - (guile (assoc-ref inputs "guile")) - (version (target-guile-effective-version)) - (scm (string-append out "/share/guile/site/" version)) - (go (string-append out "/lib/guile/" version "/site-ccache"))) - (for-each - (lambda (file) - (simple-format (current-error-port) "wrapping: ~A\n" file) - (wrap-program file - `("PATH" ":" prefix - (,bin - ;; Support building without sqitch as an input, as it - ;; can't be cross-compiled yet - ,@(or (and=> (assoc-ref inputs "sqitch") - list) - '()))) - `("GUILE_LOAD_PATH" ":" prefix - (,scm ,(getenv "GUILE_LOAD_PATH"))) - `("GUILE_LOAD_COMPILED_PATH" ":" prefix - (,go ,(getenv "GUILE_LOAD_COMPILED_PATH"))))) - (find-files bin))) - #t)) - (delete 'strip)))) ; As the .go files aren't compatible - (native-inputs - `(("pkg-config" ,pkg-config) - ("autoconf" ,autoconf) - ("automake" ,automake) - - ;; Guile libraries are needed here for cross-compilation. - ("guile-json" ,guile-json-3) - ("guile-gcrypt" ,guile-gcrypt) - ("guix" ,guix) - ("guile-prometheus" ,guile-prometheus) - ("guile-fibers" ,guile-fibers) - ("guile" ,@(assoc-ref (package-native-inputs guix) "guile")))) - (inputs - `(("guile" ,@(assoc-ref (package-native-inputs guix) "guile")) - ("guile-fibers" ,guile-fibers) - ("guile-prometheus" ,guile-prometheus) - ("guile-gcrypt" ,guile-gcrypt) - ("guile-json" ,guile-json-3) - ("guile-lzlib" ,guile-lzlib) - ("guile-sqlite3" ,guile-sqlite3) - ("guix" ,guix) - ("sqlite" ,sqlite) - ("sqitch" ,sqitch))) - (home-page "https://git.cbaines.net/guix/build-coordinator/") - (synopsis "Tool to help build derivations") - (description - "The Guix Build Coordinator helps with performing lots of builds across + (name "guix-build-coordinator") + (version (git-version "0" revision commit)) + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://git.cbaines.net/git/guix/build-coordinator") + (commit commit))) + (sha256 + (base32 + "08xwb5phh14cxgwv4fxcd2hhpjgqxfknm9zkx9qp26zb56w2xzkz")) + (file-name (string-append name "-" version "-checkout")))) + (build-system gnu-build-system) + (arguments + `(#:modules (((guix build guile-build-system) + #:select (target-guile-effective-version)) + ,@%gnu-build-system-modules) + #:imported-modules ((guix build guile-build-system) + ,@%gnu-build-system-modules) + #:phases + (modify-phases %standard-phases + (add-before 'build 'set-GUILE_AUTO_COMPILE + (lambda _ + ;; To avoid warnings relating to 'guild'. + (setenv "GUILE_AUTO_COMPILE" "0") + #t)) + (add-after 'install 'wrap-executable + (lambda* (#:key inputs outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (bin (string-append out "/bin")) + (guile (assoc-ref inputs "guile")) + (version (target-guile-effective-version)) + (scm (string-append out "/share/guile/site/" version)) + (go (string-append out "/lib/guile/" version "/site-ccache"))) + (for-each + (lambda (file) + (simple-format (current-error-port) "wrapping: ~A\n" file) + (wrap-program file + `("PATH" ":" prefix + (,bin + ;; Support building without sqitch as an input, as it + ;; can't be cross-compiled yet + ,@(or (and=> (assoc-ref inputs "sqitch") + list) + '()))) + `("GUILE_LOAD_PATH" ":" prefix + (,scm ,(getenv "GUILE_LOAD_PATH"))) + `("GUILE_LOAD_COMPILED_PATH" ":" prefix + (,go ,(getenv "GUILE_LOAD_COMPILED_PATH"))))) + (find-files bin))) + #t)) + (delete 'strip)))) ; As the .go files aren't compatible + (native-inputs + `(("pkg-config" ,pkg-config) + ("autoconf" ,autoconf) + ("automake" ,automake) + ("gnutls" ,gnutls) + + ;; Guile libraries are needed here for cross-compilation. + ("guile-json" ,guile-json-3) + ("guile-gcrypt" ,guile-gcrypt) + ("guix" ,guix) + ("guile-prometheus" ,guile-prometheus) + ("guile-fibers" ,guile-fibers) + ("guile-lib" ,guile-lib) + ("guile" ,@(assoc-ref (package-native-inputs guix) "guile")))) + (inputs + `(("guile" ,@(assoc-ref (package-native-inputs guix) "guile")) + ("sqlite" ,sqlite) + ("sqitch" ,sqitch))) + (propagated-inputs + `(("guile-fibers" ,guile-fibers) + ("guile-prometheus" ,guile-prometheus) + ("guile-gcrypt" ,guile-gcrypt) + ("guile-json" ,guile-json-4) + ("guile-lib" ,guile-lib) + ("guile-lzlib" ,guile-lzlib) + ("guile-zlib" ,guile-zlib) + ("guile-sqlite3" ,guile-sqlite3) + ("guix" ,guix) + ("gnutls" ,gnutls))) + (home-page "https://git.cbaines.net/guix/build-coordinator/") + (synopsis "Tool to help build derivations") + (description + "The Guix Build Coordinator helps with performing lots of builds across potentially many machines, and with doing something with the results and outputs of those builds.") - (license license:gpl3+)))) + (license license:gpl3+)))) (define-public guix-jupyter (package diff --git a/gnu/packages/pantheon.scm b/gnu/packages/pantheon.scm index aa7074827e..249c27e4db 100644 --- a/gnu/packages/pantheon.scm +++ b/gnu/packages/pantheon.scm @@ -37,7 +37,7 @@ (define-public granite (package (name "granite") - (version "5.4.0") + (version "5.5.0") (source (origin (method git-fetch) (uri (git-reference @@ -46,7 +46,7 @@ (file-name (git-file-name name version)) (sha256 (base32 - "0acicv3f9gksb352v88lwap8ailjsxdrfknl2xql7blasbjzl2q0")))) + "13qfhq8xndikk6kmybibs6a4ddyp6mhvbsp2yy4qr7aiiyxf7mna")))) (build-system meson-build-system) (arguments `(#:phases diff --git a/gnu/packages/parallel.scm b/gnu/packages/parallel.scm index b600a1e5b2..d65155bbde 100644 --- a/gnu/packages/parallel.scm +++ b/gnu/packages/parallel.scm @@ -9,7 +9,7 @@ ;;; Copyright © 2017, 2018 Rutger Helling <rhelling@mykolab.com> ;;; Copyright © 2018, 2019, 2020 Tobias Geerinckx-Rice <me@tobias.gr> ;;; Copyright © 2018 Clément Lassieur <clement@lassieur.org> -;;; Copyright © 2019 Ludovic Courtès <ludo@gnu.org> +;;; Copyright © 2019, 2020 Ludovic Courtès <ludo@gnu.org> ;;; Copyright © 2020 Roel Janssen <roel@gnu.org> ;;; ;;; This file is part of GNU Guix. @@ -190,6 +190,25 @@ by managing a queue of pending work.") license:zlib ; src/common/strnatcmp.c license:gpl2+)))) ; the rest, often with OpenSSL exception +;; The SLURM client/daemon protocol and file format changes from time to time +;; in incompatible ways, as noted in +;; <https://slurm.schedmd.com/troubleshoot.html#network>. Thus, keep older +;; releases here. See also <https://issues.guix.gnu.org/44387>. + +(define-public slurm-19.05 + (package + (inherit slurm) + (version "19.05.3-2") + (source (origin + (inherit (package-source slurm)) + (method url-fetch) + (uri (string-append + "https://download.schedmd.com/slurm/slurm-" + version ".tar.bz2")) + (sha256 + (base32 + "0qj4blfymrd2ry2qmb58l3jbr4jwygc3adcfw7my27rippcijlyc")))))) + (define-public slurm-drmaa (package (name "slurm-drmaa") diff --git a/gnu/packages/password-utils.scm b/gnu/packages/password-utils.scm index c178c2de8d..c1bd212f09 100644 --- a/gnu/packages/password-utils.scm +++ b/gnu/packages/password-utils.scm @@ -9,7 +9,7 @@ ;;; Copyright © 2016, 2019, 2020 Alex Griffin <a@ajgrf.com> ;;; Copyright © 2017 Leo Famulari <leo@famulari.name> ;;; Copyright © 2017, 2018 Clément Lassieur <clement@lassieur.org> -;;; Copyright © 2017, 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr> +;;; Copyright © 2017, 2018, 2019, 2020 Tobias Geerinckx-Rice <me@tobias.gr> ;;; Copyright © 2017 Jelle Licht <jlicht@fsfe.org> ;;; Copyright © 2017, 2019 Eric Bavier <bavier@member.fsf.org> ;;; Copyright © 2017, 2020 Nicolas Goaziou <mail@nicolasgoaziou.fr> @@ -123,7 +123,7 @@ human.") (define-public keepassxc (package (name "keepassxc") - (version "2.6.1") + (version "2.6.2") (source (origin (method url-fetch) @@ -131,7 +131,7 @@ human.") "/releases/download/" version "/keepassxc-" version "-src.tar.xz")) (sha256 - (base32 "1j4cmj5mv13m5b4ig950yas8ayybakqs366lp1cimmzw8ycparml")))) + (base32 "0f3ygnjzjijqmmrvrslwsbnz208jgxp5bwy4p336w3bn1bggl6qh")))) (build-system cmake-build-system) (arguments '(#:configure-flags '("-DWITH_XC_ALL=YES" @@ -211,7 +211,7 @@ algorithms AES or Twofish.") (define-public pwsafe (package (name "pwsafe") - (version "3.52.0") + (version "3.54.1") (home-page "https://www.pwsafe.org/") (source (origin @@ -220,7 +220,7 @@ algorithms AES or Twofish.") (url "https://github.com/pwsafe/pwsafe") (commit version))) (sha256 - (base32 "1ka7xsl63v0559fzf3pwc1iqr37gwr4vq5iaxa2hzar2g28hsxvh")) + (base32 "0d51dlw98mv23nwb0b5jyji8gnb9f5cnig6kivfljl97lmr6lhvf")) (file-name (git-file-name name version)))) (build-system cmake-build-system) (native-inputs @@ -367,7 +367,7 @@ them out, at the source.") (define-public libpwquality (package (name "libpwquality") - (version "1.4.2") + (version "1.4.4") (source (origin (method url-fetch) (uri (list @@ -379,7 +379,7 @@ them out, at the source.") "libpwquality-" version ".tar.bz2"))) (sha256 (base32 - "13hw532fmzc5xjpy75d74rlfdlxf2a8ibb4hyy9c0s92wsgf0qsj")))) + "0id5a8bi8xnjg11g9vzrl2xbpx65mfxclxcvis7zx1v8vhisyfyl")))) (build-system gnu-build-system) (arguments `(#:phases diff --git a/gnu/packages/patches/benchmark-unbundle-googletest.patch b/gnu/packages/patches/benchmark-unbundle-googletest.patch deleted file mode 100644 index 4dce8f59f1..0000000000 --- a/gnu/packages/patches/benchmark-unbundle-googletest.patch +++ /dev/null @@ -1,69 +0,0 @@ -From 5eb306618196ea78b8c9390e22ea2edce20760fe Mon Sep 17 00:00:00 2001 -From: =?UTF-8?q?G=C3=A1bor=20Boskovits?= <boskovits@gmail.com> -Date: Fri, 14 Jun 2019 22:15:49 +0200 -Subject: [PATCH] Remove googletest lookup from build system. - ---- - cmake/GoogleTest.cmake | 18 +++++++++--------- - cmake/GoogleTest.cmake.in | 12 ++++++------ - 2 files changed, 15 insertions(+), 15 deletions(-) - -diff --git a/cmake/GoogleTest.cmake b/cmake/GoogleTest.cmake -index fb7c6be..a6c473b 100644 ---- a/cmake/GoogleTest.cmake -+++ b/cmake/GoogleTest.cmake -@@ -27,15 +27,15 @@ endif() - # settings on Windows - set(gtest_force_shared_crt ON CACHE BOOL "" FORCE) - --include(${GOOGLETEST_PREFIX}/googletest-paths.cmake) -+#include(${GOOGLETEST_PREFIX}/googletest-paths.cmake) - - # Add googletest directly to our build. This defines - # the gtest and gtest_main targets. --add_subdirectory(${GOOGLETEST_SOURCE_DIR} -- ${GOOGLETEST_BINARY_DIR} -- EXCLUDE_FROM_ALL) -- --set_target_properties(gtest PROPERTIES INTERFACE_SYSTEM_INCLUDE_DIRECTORIES $<TARGET_PROPERTY:gtest,INTERFACE_INCLUDE_DIRECTORIES>) --set_target_properties(gtest_main PROPERTIES INTERFACE_SYSTEM_INCLUDE_DIRECTORIES $<TARGET_PROPERTY:gtest_main,INTERFACE_INCLUDE_DIRECTORIES>) --set_target_properties(gmock PROPERTIES INTERFACE_SYSTEM_INCLUDE_DIRECTORIES $<TARGET_PROPERTY:gmock,INTERFACE_INCLUDE_DIRECTORIES>) --set_target_properties(gmock_main PROPERTIES INTERFACE_SYSTEM_INCLUDE_DIRECTORIES $<TARGET_PROPERTY:gmock_main,INTERFACE_INCLUDE_DIRECTORIES>) -+#add_subdirectory(${GOOGLETEST_SOURCE_DIR} -+# ${GOOGLETEST_BINARY_DIR} -+# EXCLUDE_FROM_ALL) -+ -+#set_target_properties(gtest PROPERTIES INTERFACE_SYSTEM_INCLUDE_DIRECTORIES $<TARGET_PROPERTY:gtest,INTERFACE_INCLUDE_DIRECTORIES>) -+#set_target_properties(gtest_main PROPERTIES INTERFACE_SYSTEM_INCLUDE_DIRECTORIES $<TARGET_PROPERTY:gtest_main,INTERFACE_INCLUDE_DIRECTORIES>) -+#set_target_properties(gmock PROPERTIES INTERFACE_SYSTEM_INCLUDE_DIRECTORIES $<TARGET_PROPERTY:gmock,INTERFACE_INCLUDE_DIRECTORIES>) -+#set_target_properties(gmock_main PROPERTIES INTERFACE_SYSTEM_INCLUDE_DIRECTORIES $<TARGET_PROPERTY:gmock_main,INTERFACE_INCLUDE_DIRECTORIES>) -diff --git a/cmake/GoogleTest.cmake.in b/cmake/GoogleTest.cmake.in -index 28818ee..13b0888 100644 ---- a/cmake/GoogleTest.cmake.in -+++ b/cmake/GoogleTest.cmake.in -@@ -31,7 +31,7 @@ if(EXISTS "${GOOGLETEST_PATH}" AND IS_DIRECTORY "${GOOGLETEST_PATH}" - ) - else() - if(NOT ALLOW_DOWNLOADING_GOOGLETEST) -- message(SEND_ERROR "Did not find Google Test sources! Either pass correct path in GOOGLETEST_PATH, or enable ALLOW_DOWNLOADING_GOOGLETEST, or disable BENCHMARK_ENABLE_GTEST_TESTS / BENCHMARK_ENABLE_TESTING.") -+ message(WARNING "Did not find Google Test sources! Either pass correct path in GOOGLETEST_PATH, or enable ALLOW_DOWNLOADING_GOOGLETEST, or disable BENCHMARK_ENABLE_GTEST_TESTS / BENCHMARK_ENABLE_TESTING.") - else() - message(WARNING "Did not find Google Test sources! Fetching from web...") - ExternalProject_Add( -@@ -51,8 +51,8 @@ else() - endif() - endif() - --ExternalProject_Get_Property(googletest SOURCE_DIR BINARY_DIR) --file(WRITE googletest-paths.cmake --"set(GOOGLETEST_SOURCE_DIR \"${SOURCE_DIR}\") --set(GOOGLETEST_BINARY_DIR \"${BINARY_DIR}\") --") -+#ExternalProject_Get_Property(googletest SOURCE_DIR BINARY_DIR) -+#file(WRITE googletest-paths.cmake -+#"set(GOOGLETEST_SOURCE_DIR \"${SOURCE_DIR}\") -+#set(GOOGLETEST_BINARY_DIR \"${BINARY_DIR}\") -+#") --- -2.22.0 - diff --git a/gnu/packages/patches/bsd-games-2.17-64bit.patch b/gnu/packages/patches/bsd-games-2.17-64bit.patch new file mode 100644 index 0000000000..e286c1c531 --- /dev/null +++ b/gnu/packages/patches/bsd-games-2.17-64bit.patch @@ -0,0 +1,43 @@ +David Leverton writes about adventure/crc.c: + +The 'adventure' game from the games-misc/bsd-games-2.13 package crashes +when saving the game on AMD64 (and probably other 64-bit systems, but I +haven't checked). Find attached to fix this. + +http://bugs.gentoo.org/show_bug.cgi?id=77032 + + +About utmpentry.c: + +the utmpx structure defines the ut_tv member a little differently on +64bit hosts so that a 32bit and 64bit structure can be shared. So the +ut_tv is a custom 32bit structure rather than the native 64bit timeval +structure. Work around is to assign the submembers instead. + +http://bugs.gentoo.org/show_bug.cgi?id=102667 + +--- bsd-games/adventure/crc.c ++++ bsd-games/adventure/crc.c +@@ -134,7 +134,8 @@ + if (step >= sizeof(crctab) / sizeof(crctab[0])) + step = 0; + } +- crcval = (crcval << 8) ^ crctab[i]; ++ /* Mask to 32 bits. */ ++ crcval = ((crcval << 8) ^ crctab[i]) & 0xffffffff; + } +- return crcval & 0xffffffff; /* Mask to 32 bits. */ ++ return crcval; + } +--- bsd-games/dm/utmpentry.c ++++ bsd-games/dm/utmpentry.c +@@ -291,7 +291,8 @@ + e->line[sizeof(e->line) - 1] = '\0'; + (void)strncpy(e->host, up->ut_host, sizeof(up->ut_host)); + e->name[sizeof(e->host) - 1] = '\0'; +- e->tv = up->ut_tv; ++ e->tv.tv_sec = up->ut_tv.tv_sec; ++ e->tv.tv_usec = up->ut_tv.tv_usec; + adjust_size(e); + } + #endif diff --git a/gnu/packages/patches/bsd-games-add-configure-config.patch b/gnu/packages/patches/bsd-games-add-configure-config.patch new file mode 100644 index 0000000000..d8636addb6 --- /dev/null +++ b/gnu/packages/patches/bsd-games-add-configure-config.patch @@ -0,0 +1,22 @@ +Remove a few 'setenv's from the definition. + +diff -Naur bsd-games-2.17/config.params bsd-games-patch/config.params +--- bsd-games-2.17/config.params 1970-01-01 07:00:00.000000000 +0700 ++++ bsd-games-patch/config.params 2020-04-22 20:49:40.809695248 +0700 +@@ -0,0 +1,16 @@ ++bsd_games_cfg_do_chown=n ++bsd_games_cfg_non_interactive=y ++ ++# Fix some man-pages: cfscores, morse, ppt, rot13, snscore, teachgammon. ++bsd_games_cfg_use_dot_so=syml ++ ++# Don't build some games: ++# Countmail require some BSD-package called `from`. ++# DM is a toy to restrict access to bsd-games. ++# Fortune seems to be already packaged (fortune-mod). ++# Wargames isn't convenient as a game launcher. ++bsd_games_cfg_no_build_dirs="countmail dm fortune wargames" ++ ++# Those are substitute*'d with GNU miscfiles. ++bsd_games_cfg_hangman_wordsfile=WORD_LIST ++bsd_games_cfg_dictionary_src=WORD_LIST diff --git a/gnu/packages/patches/bsd-games-add-wrapper.patch b/gnu/packages/patches/bsd-games-add-wrapper.patch new file mode 100644 index 0000000000..ad3b1a9860 --- /dev/null +++ b/gnu/packages/patches/bsd-games-add-wrapper.patch @@ -0,0 +1,251 @@ +As we cannot install outside the Store, and those games do not create the +needed writable files on their own, we need a wrapper script. + +diff -Naur bsd-games-2.17/atc/Makefrag bsd-games-patch/atc/Makefrag +--- bsd-games-2.17/atc/Makefrag 1970-01-01 07:00:00.000000000 +0700 ++++ bsd-games-patch/atc/Makefrag 2020-04-23 20:24:04.446176222 +0700 +@@ -47,7 +47,8 @@ + mv atc/lex.yy.c $@ + + atc_install: atc_all +- $(INSTALL_SCORE_GAME) atc/atc $(INSTALL_PREFIX)$(GAMESDIR)/atc ++ $(INSTALL_SCORE_GAME) wrapper $(INSTALL_PREFIX)$(GAMESDIR)/atc ++ $(INSTALL_SCORE_GAME) atc/atc $(INSTALL_PREFIX)$(GAMESDIR)/.atc-real + $(HIDE_GAME) atc + $(INSTALL_SCORE_FILE) $(ATC_SCOREFILE) + $(INSTALL_MANUAL) atc/atc.6 +diff -Naur bsd-games-2.17/battlestar/Makefrag bsd-games-patch/battlestar/Makefrag +--- bsd-games-2.17/battlestar/Makefrag 1970-01-01 07:00:00.000000000 +0700 ++++ bsd-games-patch/battlestar/Makefrag 2020-04-23 20:24:04.482175771 +0700 +@@ -32,7 +32,8 @@ + battlestar_all: battlestar/battlestar battlestar/battlestar.6 + + battlestar_install: battlestar_all +- $(INSTALL_SCORE_GAME) battlestar/battlestar $(INSTALL_PREFIX)$(GAMESDIR)/battlestar ++ $(INSTALL_SCORE_GAME) wrapper $(INSTALL_PREFIX)$(GAMESDIR)/battlestar ++ $(INSTALL_SCORE_GAME) battlestar/battlestar $(INSTALL_PREFIX)$(GAMESDIR)/.battlestar-real + $(HIDE_GAME) battlestar + $(INSTALL_MANUAL) battlestar/battlestar.6 + $(INSTALL_SCORE_FILE) $(BATTLESTAR_SCOREFILE) +diff -Naur bsd-games-2.17/canfield/canfield/Makefrag bsd-games-patch/canfield/canfield/Makefrag +--- bsd-games-2.17/canfield/canfield/Makefrag 1970-01-01 07:00:00.000000000 +0700 ++++ bsd-games-patch/canfield/canfield/Makefrag 2020-04-23 20:24:04.522175270 +0700 +@@ -31,7 +31,8 @@ + canfield_canfield_all: canfield/canfield/canfield canfield/canfield/canfield.6 + + canfield_canfield_install: canfield_canfield_all +- $(INSTALL_SCORE_GAME) canfield/canfield/canfield $(INSTALL_PREFIX)$(GAMESDIR)/canfield ++ $(INSTALL_SCORE_GAME) wrapper $(INSTALL_PREFIX)$(GAMESDIR)/canfield ++ $(INSTALL_SCORE_GAME) canfield/canfield/canfield $(INSTALL_PREFIX)$(GAMESDIR)/.canfield-real + $(HIDE_GAME) canfield + $(INSTALL_MANUAL) canfield/canfield/canfield.6 + $(INSTALL_SCORE_FILE) $(CANFIELD_SCOREFILE) +diff -ur bsd-games-2.17.orig/canfield/cfscores/Makefrag bsd-games-2.17/canfield/cfscores/Makefrag +--- bsd-games-2.17.orig/canfield/cfscores/Makefrag 1970-01-01 07:00:01.000000000 +0700 ++++ bsd-games-2.17/canfield/cfscores/Makefrag 2020-08-06 12:20:10.592076477 +0700 +@@ -32,6 +32,7 @@ + canfield_cfscores_all: canfield/cfscores/cfscores + + canfield_cfscores_install: canfield_cfscores_all +- $(INSTALL_BINARY) canfield/cfscores/cfscores $(INSTALL_PREFIX)$(GAMESDIR)/cfscores ++ $(INSTALL_BINARY) wrapper $(INSTALL_PREFIX)$(GAMESDIR)/cfscores ++ $(INSTALL_BINARY) canfield/cfscores/cfscores $(INSTALL_PREFIX)$(GAMESDIR)/.cfscores-real + $(HIDE_GAME) cfscores + $(INSTALL_MANUAL) canfield.6 cfscores.6 +diff -Naur bsd-games-2.17/cribbage/Makefrag bsd-games-patch/cribbage/Makefrag +--- bsd-games-2.17/cribbage/Makefrag 1970-01-01 07:00:00.000000000 +0700 ++++ bsd-games-patch/cribbage/Makefrag 2020-04-23 20:24:04.534175120 +0700 +@@ -31,7 +31,8 @@ + cribbage_all: cribbage/cribbage cribbage/cribbage.n cribbage/cribbage.6 + + cribbage_install: cribbage_all +- $(INSTALL_SCORE_GAME) cribbage/cribbage $(INSTALL_PREFIX)$(GAMESDIR)/cribbage ++ $(INSTALL_SCORE_GAME) wrapper $(INSTALL_PREFIX)$(GAMESDIR)/cribbage ++ $(INSTALL_SCORE_GAME) cribbage/cribbage $(INSTALL_PREFIX)$(GAMESDIR)/.cribbage-real + $(HIDE_GAME) cribbage + $(INSTALL_DATA) cribbage/cribbage.n $(INSTALL_PREFIX)$(CRIBBAGE_INSTRFILE) + $(INSTALL_SCORE_FILE) $(CRIBBAGE_SCOREFILE) +diff -Naur bsd-games-2.17/hack/Makefrag bsd-games-patch/hack/Makefrag +--- bsd-games-2.17/hack/Makefrag 1970-01-01 07:00:00.000000000 +0700 ++++ bsd-games-patch/hack/Makefrag 2020-04-23 20:24:04.590174419 +0700 +@@ -53,7 +53,8 @@ + hack/hack.zap.d hack/rnd.d: hack/hack.onames.h + + hack_install: hack_all +- $(INSTALL_SCORE_GAME) hack/hack $(INSTALL_PREFIX)$(GAMESDIR)/hack ++ $(INSTALL_SCORE_GAME) wrapper $(INSTALL_PREFIX)$(GAMESDIR)/hack ++ $(INSTALL_SCORE_GAME) hack/hack $(INSTALL_PREFIX)$(GAMESDIR)/.hack-real + $(HIDE_GAME) hack + $(INSTALL_HACK_DIR) $(INSTALL_PREFIX)$(HACK_DIR) + set -e; for f in data help hh rumors; do $(INSTALL_DATA) hack/$$f $(INSTALL_PREFIX)$(HACK_DIR)/$$f; done +diff -Naur bsd-games-2.17/phantasia/Makefrag bsd-games-patch/phantasia/Makefrag +--- bsd-games-2.17/phantasia/Makefrag 1970-01-01 07:00:00.000000000 +0700 ++++ bsd-games-patch/phantasia/Makefrag 2020-04-23 20:24:04.650173667 +0700 +@@ -38,7 +38,8 @@ + touch phantasia/scorefiles.stamp + + phantasia_install: phantasia_all +- $(INSTALL_SCORE_GAME) phantasia/phantasia $(INSTALL_PREFIX)$(GAMESDIR)/phantasia ++ $(INSTALL_SCORE_GAME) wrapper $(INSTALL_PREFIX)$(GAMESDIR)/phantasia ++ $(INSTALL_SCORE_GAME) phantasia/phantasia $(INSTALL_PREFIX)$(GAMESDIR)/.phantasia-real + $(HIDE_GAME) phantasia + (set -e; for f in $(phantasia_VFILES1); do \ + cp phantasia/$$f $(INSTALL_PREFIX)$(PHANTASIA_DIR)/$$f; \ +diff -Naur bsd-games-2.17/robots/Makefrag bsd-games-patch/robots/Makefrag +--- bsd-games-2.17/robots/Makefrag 1970-01-01 07:00:00.000000000 +0700 ++++ bsd-games-patch/robots/Makefrag 2020-04-23 20:24:04.702173016 +0700 +@@ -32,7 +32,8 @@ + robots_all: robots/robots robots/robots.6 + + robots_install: robots_all +- $(INSTALL_SCORE_GAME) robots/robots $(INSTALL_PREFIX)$(GAMESDIR)/robots ++ $(INSTALL_SCORE_GAME) wrapper $(INSTALL_PREFIX)$(GAMESDIR)/robots ++ $(INSTALL_SCORE_GAME) robots/robots $(INSTALL_PREFIX)$(GAMESDIR)/.robots-real + $(HIDE_GAME) robots + $(INSTALL_SCORE_FILE) $(ROBOTS_SCOREFILE) + $(INSTALL_MANUAL) robots/robots.6 +diff -Naur bsd-games-2.17/sail/Makefrag bsd-games-patch/sail/Makefrag +--- bsd-games-2.17/sail/Makefrag 1970-01-01 07:00:00.000000000 +0700 ++++ bsd-games-patch/sail/Makefrag 2020-04-23 20:24:04.710172917 +0700 +@@ -31,7 +31,8 @@ + sail_all: sail/sail sail/sail.6 + + sail_install: sail_all +- $(INSTALL_SCORE_GAME) sail/sail $(INSTALL_PREFIX)$(GAMESDIR)/sail ++ $(INSTALL_SCORE_GAME) wrapper $(INSTALL_PREFIX)$(GAMESDIR)/sail ++ $(INSTALL_SCORE_GAME) sail/sail $(INSTALL_PREFIX)$(GAMESDIR)/.sail-real + $(HIDE_GAME) sail + $(INSTALL_SCORE_FILE) $(SAIL_SCOREFILE) + $(INSTALL_SAIL_DIR) $(INSTALL_PREFIX)$(SAIL_DIR) +diff -Naur bsd-games-2.17/snake/snake/Makefrag bsd-games-patch/snake/snake/Makefrag +--- bsd-games-2.17/snake/snake/Makefrag 1970-01-01 07:00:00.000000000 +0700 ++++ bsd-games-patch/snake/snake/Makefrag 2020-04-23 20:24:04.722172766 +0700 +@@ -31,7 +31,8 @@ + snake_snake_all: snake/snake/snake snake/snake/snake.6 + + snake_snake_install: snake_snake_all +- $(INSTALL_SCORE_GAME) snake/snake/snake $(INSTALL_PREFIX)$(GAMESDIR)/snake ++ $(INSTALL_SCORE_GAME) wrapper $(INSTALL_PREFIX)$(GAMESDIR)/snake ++ $(INSTALL_SCORE_GAME) snake/snake/snake $(INSTALL_PREFIX)$(GAMESDIR)/.snake-real + $(HIDE_GAME) snake + $(INSTALL_SCORE_FILE) $(SNAKE_SCOREFILE) + $(INSTALL_SCORE_FILE) $(SNAKE_RAWSCOREFILE) +--- bsd-games-2.17.orig/snake/snscore/Makefrag 1970-01-01 07:00:01.000000000 +0700 ++++ bsd-games-2.17/snake/snscore/Makefrag 2020-08-06 12:33:09.636089394 +0700 +@@ -32,6 +32,7 @@ + snake_snscore_all: snake/snscore/snscore + + snake_snscore_install: snake_snscore_all +- $(INSTALL_BINARY) snake/snscore/snscore $(INSTALL_PREFIX)$(GAMESDIR)/snscore ++ $(INSTALL_BINARY) wrapper $(INSTALL_PREFIX)$(GAMESDIR)/snscore ++ $(INSTALL_BINARY) snake/snscore/snscore $(INSTALL_PREFIX)$(GAMESDIR)/.snscore-real + $(HIDE_GAME) snscore + $(INSTALL_MANUAL) snake.6 snscore.6 +diff -Naur bsd-games-2.17/tetris/Makefrag bsd-games-patch/tetris/Makefrag +--- bsd-games-2.17/tetris/Makefrag 1970-01-01 07:00:00.000000000 +0700 ++++ bsd-games-patch/tetris/Makefrag 2020-04-23 20:24:04.734172616 +0700 +@@ -32,7 +32,8 @@ + tetris_all: tetris/tetris tetris/tetris.6 + + tetris_install: tetris_all +- $(INSTALL_SCORE_GAME) tetris/tetris $(INSTALL_PREFIX)$(GAMESDIR)/tetris-bsd ++ $(INSTALL_SCORE_GAME) wrapper $(INSTALL_PREFIX)$(GAMESDIR)/tetris-bsd ++ $(INSTALL_SCORE_GAME) tetris/tetris $(INSTALL_PREFIX)$(GAMESDIR)/.tetris-bsd-real + $(HIDE_GAME) tetris-bsd + $(INSTALL_SCORE_FILE) $(TETRIS_SCOREFILE) + ln -f tetris/tetris.6 tetris/tetris-bsd.6 +diff -Naur bsd-games-2.17/wrapper bsd-games-patch/wrapper +--- bsd-games-2.17/wrapper 1970-01-01 07:00:00.000000000 +0700 ++++ bsd-games-patch/wrapper 2020-04-23 20:24:37.153766719 +0700 +@@ -0,0 +1,91 @@ ++#!/bin/sh ++# This file works around limitations of our read-only Store. ++ ++set -e ++ ++check_empty_files () { ++ # those start empty ++ for f in ${@} ++ do ++ if [[ ! -f ${f} ]] ++ then ++ touch ${f} ++ echo "$(pwd)/${f} RESTORED" ++ fi ++ done ++} ++check_data_files () { ++ # those start with some initial data ++ for f in ${@} ++ do ++ if [[ ! -f ${f} ]] ++ then ++ cp STATIC_DATA/${game}/${f} ${f} ++ chmod u+w ${f} ++ echo "$(pwd)/${f} RESTORED" ++ fi ++ done ++} ++visit_dir () { ++ mkdir -p ${1} ++ cd ${1} ++} ++exit_with_variable_error () { ++ variables="${1}${2:+ or ${2}}" ++ echo "Guix: Please set up the ${variables} variable." ++ echo "Examples:" ++ echo " export ${1}=/var/multiplayer" ++ echo " export ${2:-${1}}=~/.local/share/bsd-games" ++ echo "You can place this in ~/.bashrc or a similar file for Your shell." ++ echo "For multiplayer this directory should be writable for all players." ++ exit 1 ++} ++ ++game=$(basename $0) ++if [[ ${game} == "hack" ]] ++then ++ if [[ -n ${HACKDIR} ]]; then visit_dir "${HACKDIR}" ++ elif [[ -n ${BSD_GAMES_DIR} ]]; then visit_dir "${BSD_GAMES_DIR}/hack" ++ else exit_with_variable_error "HACKDIR" "BSD_GAMES_DIR" ++ fi ++else ++ if [[ -n ${BSD_GAMES_DIR} ]]; then visit_dir "${BSD_GAMES_DIR}" ++ else exit_with_variable_error "BSD_GAMES_DIR" ++ fi ++fi ++ ++case ${game} in ++ ### Games with score-files ++ atc) ++ check_empty_files "atc_score";; ++ battlestar) ++ check_empty_files "battlestar.log";; ++ canfield) ++ check_empty_files "cfscores";; ++ cribbage) ++ check_empty_files "criblog";; ++ robots) ++ check_empty_files "robots_roll";; ++ snake) ++ check_empty_files "snakerawscores" "snake.log";; ++ tetris) ++ check_empty_files "tetris-bsd.scores";; ++ ### Games with saved state ++ hack) ++ check_empty_files "record" "perm" ++ check_data_files "data" "help" "hh" "rumors" ++ visit_dir "save" ++ cd ../../;; ++ phantasia) ++ visit_dir "phantasia" ++ check_empty_files "characs" "gold" "lastdead"\ ++ "mess" "motd" "scoreboard" "void" ++ check_data_files "monsters" ++ cd ../;; ++ sail) ++ visit_dir "sail" ++ check_empty_files "log" "syncfile" ++ cd ../;; ++esac ++ ++exec .${game}-real ${@} diff --git a/gnu/packages/patches/bsd-games-bad-ntohl-cast.patch b/gnu/packages/patches/bsd-games-bad-ntohl-cast.patch new file mode 100644 index 0000000000..caadfa5054 --- /dev/null +++ b/gnu/packages/patches/bsd-games-bad-ntohl-cast.patch @@ -0,0 +1,22 @@ +diff --git a/hunt/hunt/playit.c b/hunt/hunt/playit.c +index 9acf86e..881a4e7 100644 +--- a/hunt/hunt/playit.c ++++ b/hunt/hunt/playit.c +@@ -114,7 +114,7 @@ playit() + bad_con(); + /* NOTREACHED */ + } +- if (ntohl(version) != (unsigned long)HUNT_VERSION) { ++ if (ntohl(version) != (uint32_t)HUNT_VERSION) { + bad_ver(); + /* NOTREACHED */ + } +@@ -649,7 +649,7 @@ do_message() + bad_con(); + /* NOTREACHED */ + } +- if (ntohl(version) != (unsigned long)HUNT_VERSION) { ++ if (ntohl(version) != (uint32_t)HUNT_VERSION) { + bad_ver(); + /* NOTREACHED */ + } diff --git a/gnu/packages/patches/bsd-games-dont-install-empty-files.patch b/gnu/packages/patches/bsd-games-dont-install-empty-files.patch new file mode 100644 index 0000000000..4ee0578177 --- /dev/null +++ b/gnu/packages/patches/bsd-games-dont-install-empty-files.patch @@ -0,0 +1,87 @@ +Those games rely on user to provide the files to write scores in. +Those score-files are initially empty. Anyway, the Store is read-only. +So we do not install those empty files. + +diff -Naur bsd-games-2.17/install-score.in bsd-games-patch/install-score.in +--- bsd-games-2.17/install-score.in 1970-01-01 07:00:00.000000000 +0700 ++++ bsd-games-patch/install-score.in 2020-04-22 21:41:47.810544804 +0700 +@@ -1,45 +0,0 @@ +-# install-score.in - install a score file +-# +-# Copyright (c) 1997, 1998, 1999 Joseph Samuel Myers. +-# All rights reserved. +-# +-# Redistribution and use in source and binary forms, with or without +-# modification, are permitted provided that the following conditions +-# are met: +-# 1. Redistributions of source code must retain the above copyright +-# notice, this list of conditions and the following disclaimer. +-# 2. Redistributions in binary form must reproduce the above copyright +-# notice, this list of conditions and the following disclaimer in the +-# documentation and/or other materials provided with the distribution. +-# 3. The name of the author may not be used to endorse or promote products +-# derived from this software without specific prior written permission. +-# +-# THIS SOFTWARE IS PROVIDED BY THE AUTHOR ``AS IS'' AND ANY EXPRESS OR +-# IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED WARRANTIES +-# OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE DISCLAIMED. +-# IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY DIRECT, INDIRECT, +-# INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, +-# BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; +-# LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED +-# AND ON ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, +-# OR TORT (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY +-# OUT OF THE USE OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF +-# SUCH DAMAGE. +- +-set -e +- +-if [ "$1" = "-p" ]; then +- scorefile="@install_prefix@$2" +- perms=@vardata_perms_priv@ +-else +- scorefile="@install_prefix@$1" +- perms=@vardata_perms@ +-fi +- +-mkdir -p "$(dirname "$scorefile")" +- +-test -e "$scorefile" || touch "$scorefile" +-if [ @do_chown@ = y ]; then +- chown @vardata_owner@:@vardata_group@ "$scorefile" +-fi +-chmod "$perms" "$scorefile" +diff -Naur bsd-games-2.17/phantasia/Makefrag bsd-games-patch/phantasia/Makefrag +--- bsd-games-2.17/phantasia/Makefrag 1970-01-01 07:00:00.000000000 +0700 ++++ bsd-games-patch/phantasia/Makefrag 2020-04-22 21:26:00.162409464 +0700 +@@ -27,9 +27,8 @@ + # SUCH DAMAGE. + + phantasia_DIRS := $(GAMESDIR) $(MAN6DIR) $(PHANTASIA_DIR) +-phantasia_VFILES1 := gold lastdead mess monsters motd void +-phantasia_VFILES2 := scoreboard characs +-phantasia_CLEANFILES := $(phantasia_VFILES1) $(phantasia_VFILES2) scorefiles.stamp ++phantasia_VFILES1 := monsters ++phantasia_CLEANFILES := $(phantasia_VFILES1) scorefiles.stamp + + phantasia_all: phantasia/phantasia phantasia/phantasia.6 phantasia/scorefiles.stamp + +@@ -43,9 +42,4 @@ + (set -e; for f in $(phantasia_VFILES1); do \ + cp phantasia/$$f $(INSTALL_PREFIX)$(PHANTASIA_DIR)/$$f; \ + $(INSTALL_SCORE_FILE) $(PHANTASIA_DIR)/$$f; done) +- (set -e; for f in $(phantasia_VFILES2); do \ +- if [ ! -e $(PHANTASIA_DIR)/$$f ]; then \ +- cp phantasia/$$f $(INSTALL_PREFIX)$(PHANTASIA_DIR)/$$f; fi; done; \ +- $(INSTALL_SCORE_FILE) $(PHANTASIA_DIR)/scoreboard; \ +- $(INSTALL_SCORE_FILE) -p $(PHANTASIA_DIR)/characs) + $(INSTALL_MANUAL) phantasia/phantasia.6 +diff -Naur bsd-games-2.17/sail/Makefrag bsd-games-patch/sail/Makefrag +--- bsd-games-2.17/sail/Makefrag 1970-01-01 07:00:00.000000000 +0700 ++++ bsd-games-patch/sail/Makefrag 2020-04-22 21:26:48.701801676 +0700 +@@ -34,5 +34,4 @@ + $(INSTALL_SCORE_GAME) sail/sail $(INSTALL_PREFIX)$(GAMESDIR)/sail + $(HIDE_GAME) sail + $(INSTALL_SCORE_FILE) $(SAIL_SCOREFILE) +- $(INSTALL_SAIL_DIR) $(INSTALL_PREFIX)$(SAIL_DIR) + $(INSTALL_MANUAL) sail/sail.6 diff --git a/gnu/packages/patches/bsd-games-gamescreen.h.patch b/gnu/packages/patches/bsd-games-gamescreen.h.patch new file mode 100644 index 0000000000..d3c6b4ae50 --- /dev/null +++ b/gnu/packages/patches/bsd-games-gamescreen.h.patch @@ -0,0 +1,14 @@ +--- a/dab/gamescreen.h 2004-01-02 23:34:51.000000000 +0530 ++++ b/dab/gamescreen.h 2008-07-31 23:45:19.000000000 +0530 +@@ -70,9 +70,9 @@ + virtual void redraw(void) = 0; // Refresh + virtual int getinput(void) = 0; // Get user input + virtual void bell(void) = 0; // Beep +- virtual void score(size_t p, const PLAYER& p) = 0; // Post current score +- virtual void games(size_t p, const PLAYER& p) = 0; // Post games won +- virtual void total(size_t p, const PLAYER& p) = 0; // Post total score ++ virtual void score(size_t, const PLAYER&) = 0; // Post current score ++ virtual void games(size_t, const PLAYER&) = 0; // Post games won ++ virtual void total(size_t, const PLAYER&) = 0; // Post total score + virtual void ties(const PLAYER& p) = 0; // Post tie games + }; diff --git a/gnu/packages/patches/bsd-games-getline.patch b/gnu/packages/patches/bsd-games-getline.patch new file mode 100644 index 0000000000..d7c0b4034d --- /dev/null +++ b/gnu/packages/patches/bsd-games-getline.patch @@ -0,0 +1,194 @@ +diff -Naur bsd-games-2.17/boggle/boggle/bog.c bsd-games-2.17.1/boggle/boggle/bog.c +--- bsd-games-2.17/boggle/boggle/bog.c 2004-12-07 07:34:21.000000000 -0600 ++++ bsd-games-2.17.1/boggle/boggle/bog.c 2010-05-22 10:51:23.000000000 -0500 +@@ -336,7 +336,7 @@ + } + + while (1) { +- if (getline(buf) == NULL) { ++ if (boggle_getline(buf) == NULL) { + if (feof(stdin)) + clearerr(stdin); + break; +diff -Naur bsd-games-2.17/boggle/boggle/extern.h bsd-games-2.17.1/boggle/boggle/extern.h +--- bsd-games-2.17/boggle/boggle/extern.h 2004-01-27 14:52:07.000000000 -0600 ++++ bsd-games-2.17.1/boggle/boggle/extern.h 2010-05-22 10:51:23.000000000 -0500 +@@ -43,7 +43,7 @@ + long dictseek(FILE *, long, int); + void findword(void); + void flushin(FILE *); +-char *getline(char *); ++char *boggle_getline(char *); + void getword(char *); + int help(void); + int inputch(void); +diff -Naur bsd-games-2.17/boggle/boggle/mach.c bsd-games-2.17.1/boggle/boggle/mach.c +--- bsd-games-2.17/boggle/boggle/mach.c 2004-12-07 07:34:21.000000000 -0600 ++++ bsd-games-2.17.1/boggle/boggle/mach.c 2010-05-22 10:51:23.000000000 -0500 +@@ -168,7 +168,7 @@ + * - doesn't accept words longer than MAXWORDLEN or containing caps + */ + char * +-getline(q) ++boggle_getline(q) + char *q; + { + int ch, done; +diff -Naur bsd-games-2.17/cribbage/cribbage.h bsd-games-2.17.1/cribbage/cribbage.h +--- bsd-games-2.17/cribbage/cribbage.h 2004-02-08 16:29:14.000000000 -0600 ++++ bsd-games-2.17.1/cribbage/cribbage.h 2010-05-22 10:51:23.000000000 -0500 +@@ -77,7 +77,7 @@ + int fifteens(const CARD [], int); + void game(void); + void gamescore(void); +-char *getline(void); ++char *cribbage_getline(void); + int getuchar(void); + int incard(CARD *); + int infrom(const CARD [], int, const char *); +diff -Naur bsd-games-2.17/cribbage/crib.c bsd-games-2.17.1/cribbage/crib.c +--- bsd-games-2.17/cribbage/crib.c 2004-01-27 14:52:07.000000000 -0600 ++++ bsd-games-2.17.1/cribbage/crib.c 2010-05-22 10:51:23.000000000 -0500 +@@ -221,7 +221,7 @@ + if (!rflag) { /* player cuts deck */ + msg(quiet ? "Cut for crib? " : + "Cut to see whose crib it is -- low card wins? "); +- getline(); ++ cribbage_getline(); + } + i = (rand() >> 4) % CARDS; /* random cut */ + do { /* comp cuts deck */ +@@ -397,7 +397,7 @@ + if (!rflag) { /* random cut */ + msg(quiet ? "Cut the deck? " : + "How many cards down do you wish to cut the deck? "); +- getline(); ++ cribbage_getline(); + } + i = (rand() >> 4) % (CARDS - pos); + turnover = deck[i + pos]; +diff -Naur bsd-games-2.17/cribbage/io.c bsd-games-2.17.1/cribbage/io.c +--- bsd-games-2.17/cribbage/io.c 2004-12-07 07:34:21.000000000 -0600 ++++ bsd-games-2.17.1/cribbage/io.c 2010-05-22 10:51:23.000000000 -0500 +@@ -245,7 +245,7 @@ + + retval = FALSE; + rnk = sut = EMPTY; +- if (!(line = getline())) ++ if (!(line = cribbage_getline())) + goto gotit; + p = p1 = line; + while (*p1 != ' ' && *p1 != '\0') +@@ -346,7 +346,7 @@ + + for (sum = 0;;) { + msg(prompt); +- if (!(p = getline()) || *p == '\0') { ++ if (!(p = cribbage_getline()) || *p == '\0') { + msg(quiet ? "Not a number" : + "That doesn't look like a number"); + continue; +@@ -528,12 +528,12 @@ + } + + /* +- * getline: ++ * cribbage_getline: + * Reads the next line up to '\n' or EOF. Multiple spaces are + * compressed to one space; a space is inserted before a ',' + */ + char * +-getline() ++cribbage_getline() + { + char *sp; + int c, oy, ox; +diff -Naur bsd-games-2.17/gomoku/bdisp.c bsd-games-2.17.1/gomoku/bdisp.c +--- bsd-games-2.17/gomoku/bdisp.c 2003-12-16 20:47:37.000000000 -0600 ++++ bsd-games-2.17.1/gomoku/bdisp.c 2010-05-22 10:51:23.000000000 -0500 +@@ -241,7 +241,7 @@ + } + + int +-getline(buf, size) ++gomoku_getline(buf, size) + char *buf; + int size; + { +diff -Naur bsd-games-2.17/gomoku/gomoku.h bsd-games-2.17.1/gomoku/gomoku.h +--- bsd-games-2.17/gomoku/gomoku.h 2004-01-27 14:52:07.000000000 -0600 ++++ bsd-games-2.17.1/gomoku/gomoku.h 2010-05-22 10:51:23.000000000 -0500 +@@ -263,7 +263,7 @@ + + void bdinit(struct spotstr *); + void init_overlap(void); +-int getline(char *, int); ++int gomoku_getline(char *, int); + void ask(const char *); + void dislog(const char *); + void bdump(FILE *); +diff -Naur bsd-games-2.17/gomoku/main.c bsd-games-2.17.1/gomoku/main.c +--- bsd-games-2.17/gomoku/main.c 2004-01-27 14:52:07.000000000 -0600 ++++ bsd-games-2.17.1/gomoku/main.c 2010-05-22 10:51:23.000000000 -0500 +@@ -155,7 +155,7 @@ + if (inputfp == NULL && test == 0) { + for (;;) { + ask("black or white? "); +- getline(buf, sizeof(buf)); ++ gomoku_getline(buf, sizeof(buf)); + if (buf[0] == 'b' || buf[0] == 'B') { + color = BLACK; + break; +@@ -172,7 +172,7 @@ + } + } else { + setbuf(stdout, 0); +- getline(buf, sizeof(buf)); ++ gomoku_getline(buf, sizeof(buf)); + if (strcmp(buf, "black") == 0) + color = BLACK; + else if (strcmp(buf, "white") == 0) +@@ -244,7 +244,7 @@ + getinput: + if (interactive) + ask("move? "); +- if (!getline(buf, sizeof(buf))) { ++ if (!gomoku_getline(buf, sizeof(buf))) { + curmove = RESIGN; + break; + } +@@ -256,7 +256,7 @@ + FILE *fp; + + ask("save file name? "); +- (void)getline(buf, sizeof(buf)); ++ (void)gomoku_getline(buf, sizeof(buf)); + if ((fp = fopen(buf, "w")) == NULL) { + glog("cannot create save file"); + goto getinput; +@@ -309,14 +309,14 @@ + if (i != RESIGN) { + replay: + ask("replay? "); +- if (getline(buf, sizeof(buf)) && ++ if (gomoku_getline(buf, sizeof(buf)) && + (buf[0] == 'y' || buf[0] == 'Y')) + goto again; + if (strcmp(buf, "save") == 0) { + FILE *fp; + + ask("save file name? "); +- (void)getline(buf, sizeof(buf)); ++ (void)gomoku_getline(buf, sizeof(buf)); + if ((fp = fopen(buf, "w")) == NULL) { + glog("cannot create save file"); + goto replay; +@@ -367,7 +367,7 @@ + quit(); + top: + ask("cmd? "); +- if (!getline(fmtbuf, sizeof(fmtbuf))) ++ if (!gomoku_getline(fmtbuf, sizeof(fmtbuf))) + quit(); + switch (*fmtbuf) { + case '\0': diff --git a/gnu/packages/patches/bsd-games-null-check.patch b/gnu/packages/patches/bsd-games-null-check.patch new file mode 100644 index 0000000000..ba977c95bf --- /dev/null +++ b/gnu/packages/patches/bsd-games-null-check.patch @@ -0,0 +1,24 @@ +diff --git a/hunt/hunt/hunt.c b/hunt/hunt/hunt.c +index 11f4c44..28321bc 100644 +--- a/hunt/hunt/hunt.c ++++ b/hunt/hunt/hunt.c +@@ -394,7 +394,8 @@ broadcast_vec(s, vector) + + vec_cnt = 0; + for (ip = ifp; ip; ip = ip->ifa_next) +- if ((ip->ifa_addr->sa_family == AF_INET) && ++ if (ip->ifa_addr && ++ (ip->ifa_addr->sa_family == AF_INET) && + (ip->ifa_flags & IFF_BROADCAST)) + vec_cnt++; + +@@ -405,7 +406,8 @@ broadcast_vec(s, vector) + + vec_cnt = 0; + for (ip = ifp; ip; ip = ip->ifa_next) +- if ((ip->ifa_addr->sa_family == AF_INET) && ++ if (ip->ifa_addr && ++ (ip->ifa_addr->sa_family == AF_INET) && + (ip->ifa_flags & IFF_BROADCAST)) + memcpy(&(*vector)[vec_cnt++], ip->ifa_broadaddr, + sizeof(struct sockaddr_in)); diff --git a/gnu/packages/patches/bsd-games-number.c-and-test.patch b/gnu/packages/patches/bsd-games-number.c-and-test.patch new file mode 100644 index 0000000000..1cf5ba2822 --- /dev/null +++ b/gnu/packages/patches/bsd-games-number.c-and-test.patch @@ -0,0 +1,183 @@ +Arch's patch, and a fix for the "number" game's test. +--- bsdgames-2.17.orig/number/number.c ++++ bsdgames-2.17/number/number.c +@@ -78,9 +78,9 @@ + + void convert(char *); + int main(int, char *[]); +-int number(const char *, int); +-void pfract(int); +-int unit(int, const char *); ++int number(const char *, int, int *); ++void pfract(int, int); ++int unit(int, const char *, int *); + void usage(void) __attribute__((__noreturn__)); + + int lflag; +@@ -131,7 +131,7 @@ + convert(line) + char *line; + { +- int flen, len, rval; ++ int flen, len, rval, singular; + char *p, *fraction; + + flen = 0; +@@ -174,7 +174,7 @@ + --len; + } + +- rval = len > 0 ? unit(len, line) : 0; ++ rval = len > 0 ? unit(len, line, &singular) : 0; + if (fraction != NULL && flen != 0) + for (p = fraction; *p != '\0'; ++p) + if (*p != '0') { +@@ -182,10 +182,10 @@ + (void)printf("%sand%s", + lflag ? " " : "", + lflag ? " " : "\n"); +- if (unit(flen, fraction)) { ++ if (unit(flen, fraction, &singular)) { + if (lflag) + (void)printf(" "); +- pfract(flen); ++ pfract(flen, singular); + rval = 1; + } + break; +@@ -197,9 +197,10 @@ + } + + int +-unit(len, p) ++unit(len, p, singular) + int len; + const char *p; ++ int *singular; + { + int off, rval; + +@@ -208,7 +209,7 @@ + if (len % 3) { + off = len % 3; + len -= off; +- if (number(p, off)) { ++ if (number(p, off, singular)) { + rval = 1; + (void)printf(" %s%s", + name3[len / 3], lflag ? " " : ".\n"); +@@ -217,14 +218,16 @@ + } + for (; len > 3; p += 3) { + len -= 3; +- if (number(p, 3)) { ++ if (number(p, 3, singular)) { + rval = 1; + (void)printf(" %s%s", + name3[len / 3], lflag ? " " : ".\n"); + } + } + } +- if (number(p, len)) { ++ if (number(p, len, singular)) { ++ if (rval) ++ *singular = 0; + if (!lflag) + (void)printf(".\n"); + rval = 1; +@@ -233,17 +236,20 @@ + } + + int +-number(p, len) ++number(p, len, singular) + const char *p; + int len; ++ int *singular; + { + int val, rval; + + rval = 0; ++ *singular = 1; + switch (len) { + case 3: + if (*p != '0') { + rval = 1; ++ *singular = 0; + (void)printf("%s hundred", name1[*p - '0']); + } + ++p; +@@ -262,33 +268,42 @@ + } + rval = 1; + } ++ if (val != 1) ++ *singular = 0; + break; + case 1: + if (*p != '0') { + rval = 1; + (void)printf("%s", name1[*p - '0']); + } ++ if (*p != '1') ++ *singular = 0; + } + return (rval); + } + + void +-pfract(len) ++pfract(len, singular) + int len; ++ int singular; + { + static const char *const pref[] = { "", "ten-", "hundred-" }; + + switch(len) { + case 1: +- (void)printf("tenths.\n"); ++ (void)printf("tenth"); + break; + case 2: +- (void)printf("hundredths.\n"); ++ (void)printf("hundredth"); + break; + default: +- (void)printf("%s%sths.\n", pref[len % 3], name3[len / 3]); ++ (void)printf("%s%sth", pref[len % 3], name3[len / 3]); + break; + } ++ if (!singular) { ++ printf("s"); ++ } ++ printf(".\n"); + } + + void +diff -Naur bsd-games-2.17/tests/number.-0.1 bsd-games-patch/tests/number.-0.1 +--- bsd-games-2.17/tests/number.-0.1 1970-01-01 07:00:00.000000000 +0700 ++++ bsd-games-patch/tests/number.-0.1 2020-04-17 15:14:27.831098084 +0700 +@@ -1,3 +1,3 @@ + minus + one. +-tenths. ++tenth. +diff -Naur bsd-games-2.17/tests/number.-0.2 bsd-games-patch/tests/number.-0.2 +--- bsd-games-2.17/tests/number.-0.2 1970-01-01 07:00:00.000000000 +0700 ++++ bsd-games-patch/tests/number.-0.2 2020-04-17 15:20:48.162336279 +0700 +@@ -0,0 +1,3 @@ ++minus ++two. ++tenths. +diff -Naur bsd-games-2.17/tests/number.test bsd-games-patch/tests/number.test +--- bsd-games-2.17/tests/number.test 1970-01-01 07:00:00.000000000 +0700 ++++ bsd-games-patch/tests/number.test 2020-04-17 15:20:22.774654155 +0700 +@@ -36,6 +36,8 @@ + testno 1 + number/number -- -0.1 >test.out 2>&1 || failtest + compare test.out tests/number.-0.1 ++number/number -- -0.2 >test.out 2>&1 || failtest ++compare test.out tests/number.-0.2 + rm -f test.out + + testno 2 diff --git a/gnu/packages/patches/bsd-games-prevent-name-collisions.patch b/gnu/packages/patches/bsd-games-prevent-name-collisions.patch new file mode 100644 index 0000000000..855ce59131 --- /dev/null +++ b/gnu/packages/patches/bsd-games-prevent-name-collisions.patch @@ -0,0 +1,13 @@ +There is already a "fish" shell. +diff -ur bsd-games-2.17.orig/fish/Makefrag bsd-games-2.17/fish/Makefrag +--- bsd-games-2.17.orig/fish/Makefrag 1970-01-01 07:00:01.000000000 +0700 ++++ bsd-games-2.17/fish/Makefrag 2020-08-06 19:18:43.204492847 +0700 +@@ -31,7 +31,7 @@ + fish_all: fish/fish fish/fish.instr fish/fish.6 + + fish_install: fish_all +- $(INSTALL_BINARY) fish/fish $(INSTALL_PREFIX)$(GAMESDIR)/fish ++ $(INSTALL_BINARY) fish/fish $(INSTALL_PREFIX)$(GAMESDIR)/fish-game + $(HIDE_GAME) fish + $(INSTALL_DATA) fish/fish.instr $(INSTALL_PREFIX)$(FISH_INSTRFILE) + $(INSTALL_MANUAL) fish/fish.6 diff --git a/gnu/packages/patches/bsd-games-stdio.h.patch b/gnu/packages/patches/bsd-games-stdio.h.patch new file mode 100644 index 0000000000..1c3a402042 --- /dev/null +++ b/gnu/packages/patches/bsd-games-stdio.h.patch @@ -0,0 +1,14 @@ +diff -ru a/include/stdio.h b/include/stdio.h +--- a/include/stdio.h 2000-08-04 10:24:39.000000000 +1000 ++++ b/include/stdio.h 2005-06-18 14:26:35.000000000 +1000 +@@ -34,6 +34,10 @@ + #include <bsd-games.h> + #include_next <stdio.h> + ++__BEGIN_DECLS ++ + #ifndef HAVE_fgetln + extern char *fgetln(FILE *stream, size_t *len); + #endif ++ ++__END_DECLS diff --git a/gnu/packages/patches/farstream-make.patch b/gnu/packages/patches/farstream-make.patch new file mode 100644 index 0000000000..6c1e9e7119 --- /dev/null +++ b/gnu/packages/patches/farstream-make.patch @@ -0,0 +1,39 @@ +This patch comes from upstream: +https://gitlab.freedesktop.org/farstream/farstream/-/merge_requests/4 + +From 54987d445ea714b467d901b7daf8c09ed0644189 Mon Sep 17 00:00:00 2001 +From: Debarshi Ray <debarshir@freedesktop.org> +Date: Thu, 12 Mar 2020 14:07:23 +0100 +Subject: [PATCH] build: Adapt to backwards incompatible change in GNU Make 4.3 + +GNU Make 4.3 has a backwards incompatible change affecting the use of +number signs or hashes (ie., #) inside function invocations. See: +https://lists.gnu.org/archive/html/info-gnu/2020-01/msg00004.html + +In this case, it would expand the '\#' in the '\n\#include \"$(h)\"' +argument to the foreach call to '\#', not '#'. This would lead to +spurious backslashes in front of the '#include' directives in the +generated fs-enumtypes.c file. + +Spotted by Ernestas Kulik. +--- + common-modified/gst-glib-gen.mak | 3 ++- + 1 file changed, 2 insertions(+), 1 deletion(-) + +diff --git a/common-modified/gst-glib-gen.mak b/common-modified/gst-glib-gen.mak +index 14f1ba37..2247a41c 100644 +--- a/common-modified/gst-glib-gen.mak ++++ b/common-modified/gst-glib-gen.mak +@@ -6,7 +6,8 @@ + #glib_gen_prefix=gst_color_balance + #glib_gen_basename=colorbalance + +-enum_headers=$(foreach h,$(glib_enum_headers),\n\#include \"$(h)\") ++hash:=\# ++enum_headers=$(foreach h,$(glib_enum_headers),\n$(hash)include \"$(h)\") + + # these are all the rules generating the relevant files + $(glib_gen_basename)-enumtypes.h: $(glib_enum_headers) +-- +GitLab + diff --git a/gnu/packages/patches/gdb-hurd.patch b/gnu/packages/patches/gdb-hurd.patch deleted file mode 100644 index 0af8d4dc28..0000000000 --- a/gnu/packages/patches/gdb-hurd.patch +++ /dev/null @@ -1,69 +0,0 @@ -Taken from upstream, removed ChangeLog. - -From 6930bffe3373690b3431d6291f9f7c116d6a1ec4 Mon Sep 17 00:00:00 2001 -From: Samuel Thibault <samuel.thibault@ens-lyon.org> -Date: Sat, 30 May 2020 18:35:59 +0000 -Subject: [PATCH] hurd: fix gnu_debug_flag type -MIME-Version: 1.0 -Content-Type: text/plain; charset=UTF-8 -Content-Transfer-Encoding: 8bit - -Fixes - -../../gdb/gnu-nat.c:96:6: error: conflicting declaration ‘bool gnu_debug_flag’ - 96 | bool gnu_debug_flag = false; -../../gdb/gnu-nat.c: In function ‘void _initialize_gnu_nat()’: -../../gdb/gnu-nat.c:3511:7: error: cannot - -gdb/ChangeLog: - - * gnu-nat.h (gnu_debug_flag): Set type to bool. ---- - gdb/ChangeLog | 4 ++++ - gdb/gnu-nat.h | 2 +- - 2 files changed, 5 insertions(+), 1 deletion(-) - -diff --git a/gdb/gnu-nat.h b/gdb/gnu-nat.h -index 77c57817b2..766f716587 100644 ---- a/gdb/gnu-nat.h -+++ b/gdb/gnu-nat.h -@@ -111,7 +111,7 @@ extern char *proc_string (struct proc *proc); - __proc_pid (__proc), __proc->tid, \ - host_address_to_string (__proc) , ##args); } while (0) - --extern int gnu_debug_flag; -+extern bool gnu_debug_flag; - - #define debug(msg, args...) \ - do { if (gnu_debug_flag) \ --- -Jan Nieuwenhuizen <janneke@gnu.org> | GNU LilyPond http://lilypond.org -Freelance IT http://JoyofSource.com | Avatar® http://AvatarAcademy.com - -commit 366f550a593c7e6bae3699a4b6d65fe937af5603 -Author: Samuel Thibault <samuel.thibault@ens-lyon.org> -Date: Sat May 30 18:41:30 2020 +0000 - - hurd: add missing include - - Fixes - - ../../gdb/gnu-nat.c:2522:14: error: ‘target_gdbarch’ was not declared in this scope; did you mean ‘target_detach’? - 2522 | paddress (target_gdbarch (), memaddr), pulongest (len), - - gdb/Changelog: - - * gnu-nat.c: Include "gdbarch.h". - -diff --git a/gdb/gnu-nat.c b/gdb/gnu-nat.c -index 3b438a9a43..9b93488b41 100644 ---- a/gdb/gnu-nat.c -+++ b/gdb/gnu-nat.c -@@ -64,6 +64,7 @@ extern "C" - #include "language.h" - #include "target.h" - #include "gdbsupport/gdb_wait.h" -+#include "gdbarch.h" - #include "gdbcmd.h" - #include "gdbcore.h" - #include "gdbthread.h" diff --git a/gnu/packages/patches/icecat-makeicecat.patch b/gnu/packages/patches/icecat-makeicecat.patch index c90950d5ef..e0cdde61ec 100644 --- a/gnu/packages/patches/icecat-makeicecat.patch +++ b/gnu/packages/patches/icecat-makeicecat.patch @@ -25,7 +25,7 @@ index 8be2362..48716f2 100755 -wget -N https://ftp.mozilla.org/pub/mozilla.org/firefox/releases/${FFVERSION}esr/source/firefox-${FFVERSION}esr.source.tar.xz.asc -gpg --recv-keys --keyserver keyserver.ubuntu.com 14F26682D0916CDD81E37B6D61B7B526D98F0353 -gpg --verify firefox-${FFVERSION}esr.source.tar.xz.asc --echo -n 5fd27d67689fe60803022035e556146d2dbce5e53d21c14d026fc31dd2e45be9 firefox-${FFVERSION}esr.source.tar.xz |sha256sum -c - +-echo -n 8e3cf0bbf1062768134db2eb10ab774731ca5ec6694b65def82234bb0a9170fc firefox-${FFVERSION}esr.source.tar.xz |sha256sum -c - - -echo Extracting Firefox tarball -tar -xf firefox-${FFVERSION}esr.source.tar.xz @@ -37,7 +37,7 @@ index 8be2362..48716f2 100755 +# wget -N https://ftp.mozilla.org/pub/mozilla.org/firefox/releases/${FFVERSION}esr/source/firefox-${FFVERSION}esr.source.tar.xz.asc +# gpg --recv-keys --keyserver keyserver.ubuntu.com 14F26682D0916CDD81E37B6D61B7B526D98F0353 +# gpg --verify firefox-${FFVERSION}esr.source.tar.xz.asc -+# echo -n 5fd27d67689fe60803022035e556146d2dbce5e53d21c14d026fc31dd2e45be9 firefox-${FFVERSION}esr.source.tar.xz |sha256sum -c - ++# echo -n 8e3cf0bbf1062768134db2eb10ab774731ca5ec6694b65def82234bb0a9170fc firefox-${FFVERSION}esr.source.tar.xz |sha256sum -c - +# +# echo Extracting Firefox tarball +# tar -xf firefox-${FFVERSION}esr.source.tar.xz diff --git a/gnu/packages/patches/kpackage-fix-KF5PackageMacros.cmake.patch b/gnu/packages/patches/kpackage-fix-KF5PackageMacros.cmake.patch new file mode 100644 index 0000000000..d677f19a70 --- /dev/null +++ b/gnu/packages/patches/kpackage-fix-KF5PackageMacros.cmake.patch @@ -0,0 +1,25 @@ +From 668010ebc9fd84d9dc60f90b9a4ebf3c7054977f Mon Sep 17 00:00:00 2001 +From: Hartmut Goebel <h.goebel@crazy-compilers.com> +Date: Sun, 25 Oct 2020 20:11:13 +0000 +Subject: [PATCH] Fix build errors if PREFIX is different from ECM's PREFIX. + +See <https://bugs.kde.org/424483> for details. +--- + KF5PackageMacros.cmake | 3 +-- + 1 file changed, 1 insertion(+), 2 deletions(-) + +diff --git a/KF5PackageMacros.cmake b/KF5PackageMacros.cmake +index f4c1d1d..acd3798 100644 +--- a/KF5PackageMacros.cmake ++++ b/KF5PackageMacros.cmake +@@ -1,6 +1,5 @@ + +-find_package(ECM 1.6.0 CONFIG REQUIRED) +-include(${ECM_KDE_MODULE_DIR}/KDEInstallDirs.cmake) ++include(KDEInstallDirs) + + set(KPACKAGE_RELATIVE_DATA_INSTALL_DIR "kpackage") + +-- +GitLab + diff --git a/gnu/packages/patches/netcdf-date-time.patch b/gnu/packages/patches/netcdf-date-time.patch index a4e7925aa1..0bdfc55299 100644 --- a/gnu/packages/patches/netcdf-date-time.patch +++ b/gnu/packages/patches/netcdf-date-time.patch @@ -3,9 +3,9 @@ @@ -13,7 +13,7 @@ #endif - /* Tell the user the version of netCDF. */ + /** @internal The version string for the library, used by + * nc_inq_libvers(). */ -static const char nc_libvers[] = PACKAGE_VERSION " of "__DATE__" "__TIME__" $"; -+static const char nc_libvers[] = PACKAGE_VERSION" $"; ++static const char nc_libvers[] = PACKAGE_VERSION " $"; /** - \defgroup lib_version Library Version diff --git a/gnu/packages/patches/netcdf-tst_h_par.patch b/gnu/packages/patches/netcdf-tst_h_par.patch deleted file mode 100644 index ac14a4c0a2..0000000000 --- a/gnu/packages/patches/netcdf-tst_h_par.patch +++ /dev/null @@ -1,21 +0,0 @@ -From a83702834938b23cc2e843589aa223e2024a7e6f Mon Sep 17 00:00:00 2001 -From: Orion Poplawski <orion@cora.nwra.com> -Date: Tue, 29 Nov 2016 11:48:01 -0700 -Subject: [PATCH] Add missing #include "err_macros.h" to tst_h_par.c - ---- - h5_test/tst_h_par.c | 1 + - 1 file changed, 1 insertion(+) - -diff --git a/h5_test/tst_h_par.c b/h5_test/tst_h_par.c -index c3da7f4..a419d55 100644 ---- a/h5_test/tst_h_par.c -+++ b/h5_test/tst_h_par.c -@@ -11,6 +11,7 @@ - $Id: tst_h_par.c,v 1.15 2010/05/25 13:53:04 ed Exp $ - */ - #include <nc_tests.h> -+#include "err_macros.h" - #include <hdf5.h> - - /* Defining USE_MPE causes the MPE trace library to be used (and you diff --git a/gnu/packages/patches/ocaml-bisect-fix-camlp4-in-another-directory.patch b/gnu/packages/patches/ocaml-bisect-fix-camlp4-in-another-directory.patch deleted file mode 100644 index fd9a4c9401..0000000000 --- a/gnu/packages/patches/ocaml-bisect-fix-camlp4-in-another-directory.patch +++ /dev/null @@ -1,283 +0,0 @@ -From bc3b353cb2f26cf10aa5c5caebddf6d3d5b1e318 Mon Sep 17 00:00:00 2001 -From: Julien Lepiller <julien@lepiller.eu> -Date: Fri, 21 Sep 2018 22:31:29 +0200 -Subject: [PATCH] fix camlp4 in another directory - ---- - Makefile | 11 ++++++----- - configure | 13 ++++++++++++- - tests/Makefile | 2 +- - tests/camlp4-comments/Makefile | 2 +- - tests/camlp4-exclude-file/Makefile | 2 +- - tests/camlp4-exclude/Makefile | 2 +- - tests/camlp4-instrument-fast/Makefile | 2 +- - tests/camlp4-instrument/Makefile | 2 +- - tests/combine-expr/Makefile | 2 +- - tests/ppx-comments/Makefile | 2 +- - tests/ppx-exclude-file/Makefile | 2 +- - tests/ppx-exclude/Makefile | 2 +- - tests/ppx-instrument-fast/Makefile | 2 +- - tests/ppx-instrument/Makefile | 2 +- - tests/report/Makefile | 2 +- - 15 files changed, 31 insertions(+), 19 deletions(-) - -diff --git a/Makefile b/Makefile -index b0980ee..6697922 100644 ---- a/Makefile -+++ b/Makefile -@@ -25,7 +25,7 @@ PATH_BUILD=$(PATH_BASE)/_build - PATH_OCAMLDOC=$(PATH_BASE)/ocamldoc - PATH_SRC=$(PATH_BASE)/src - PATH_TESTS=$(PATH_BASE)/tests --PATH_INSTALL=$(PATH_OCAML_PREFIX)/lib/ocaml/bisect -+PATH_INSTALL=$(PREFIX)/lib/ocaml/bisect - - - # DEFINITIONS -@@ -33,7 +33,8 @@ PATH_INSTALL=$(PATH_OCAML_PREFIX)/lib/ocaml/bisect - PROJECT_NAME=bisect - OCAMLBUILD=ocamlbuild - OCAMLBUILD_ENV=WARNINGS=$(WARNINGS) PATH_OCAML_PREFIX=$(PATH_OCAML_PREFIX) --OCAMLBUILD_FLAGS=-classic-display -no-links -+CAMLP4_INCLUDE=$(shell test -z $(CAMLP4_LIBDIR) || echo "-cflags -I,$(CAMLP4_LIBDIR)") -+OCAMLBUILD_FLAGS=-classic-display -no-links $(CAMLP4_INCLUDE) - MODULES_ODOCL=$(PROJECT_NAME).odocl - MODULES_MLPACK=$(PROJECT_NAME).mlpack - MODULES_MLPACK_PP=$(PROJECT_NAME)_pp.mlpack -@@ -80,11 +81,11 @@ veryclean: clean - rm -f $(PATH_OCAMLDOC)/*.html $(PATH_OCAMLDOC)/*.css - - install: FORCE -- cp $(PATH_BUILD)/src/report/report.byte $(PATH_OCAML_PREFIX)/bin/bisect-report; \ -+ cp $(PATH_BUILD)/src/report/report.byte $(PREFIX)/bin/bisect-report; \ - if [ "$(PPX)" = "TRUE" ]; then \ -- cp $(PATH_BUILD)/src/syntax/bisect_ppx.byte $(PATH_OCAML_PREFIX)/bin; \ -+ cp $(PATH_BUILD)/src/syntax/bisect_ppx.byte $(PREFIX)/bin; \ - fi; \ -- (which ocamlopt && cp $(PATH_BUILD)/src/report/report.native $(PATH_OCAML_PREFIX)/bin/bisect-report.opt || true); \ -+ (which ocamlopt && cp $(PATH_BUILD)/src/report/report.native $(PREFIX)/bin/bisect-report.opt || true); \ - if [ -x "$(PATH_OCAMLFIND)" ]; then \ - $(PATH_OCAMLFIND) query $(PROJECT_NAME) && $(PATH_OCAMLFIND) remove $(PROJECT_NAME) || true; \ - $(PATH_OCAMLFIND) install $(PROJECT_NAME) META -optional \ -diff --git a/configure b/configure -index bb7ebf4..43ef46b 100755 ---- a/configure -+++ b/configure -@@ -21,7 +21,9 @@ - # default values - ocamlbuild=`which ocamlbuild || echo '/usr/local/bin/ocamlbuild'` - bin_path=`dirname $ocamlbuild` -+prefix='' - ocaml_prefix=`dirname $bin_path` -+camlp4_prefix=`dirname $(dirname $(which camlp4of))` - ocamlfind=`which ocamlfind 2> /dev/null || echo ''` - native_dynlink='TRUE' - devel='FALSE' -@@ -32,8 +34,12 @@ ppx='FALSE' - while [ $# -gt 0 ] - do - case "$1" in -+ -prefix) -+ prefix="$2"; shift;; - -ocaml-prefix) - ocaml_prefix="$2"; shift;; -+ -camlp4-prefix) -+ camlp4_prefix="$2"; shift;; - -ocamlfind) - ocamlfind="$2"; shift;; - -no-native-dynlink) -@@ -45,7 +51,7 @@ do - -ppx) - ppx='TRUE';; - *) -- echo "usage: $0 [-ocaml-prefix <path>] [-ocamlfind <path>] [-no-native-dynlink] [-devel]"; -+ echo "usage: $0 [-prefix <path>] [-ocaml-prefix <path>] [-camlp4-prefix <path>] [-ocamlfind <path>] [-no-native-dynlink] [-devel]"; - exit 1;; - esac - shift -@@ -57,6 +63,9 @@ if [ "$no_camlp4" = "TRUE" -a "$ppx" = "FALSE" ]; then - exit 1 - fi - -+# prefix default value -+test -z $prefix && prefix=$ocaml_prefix -+ - # make options - make_quiet=`make -f - <<EOF - default: gnumake -@@ -66,7 +75,9 @@ EOF` - - # file creation - echo "# timestamp: `date`" > Makefile.config -+echo "PREFIX=$prefix" >> Makefile.config - echo "PATH_OCAML_PREFIX=$ocaml_prefix" >> Makefile.config -+echo "PATH_CAMLP4_PREFIX=$camlp4_prefix" >> Makefile.config - echo "PATH_OCAMLFIND=$ocamlfind" >> Makefile.config - echo "NATIVE_DYNLINK=$native_dynlink" >> Makefile.config - echo "WARNINGS=$devel" >> Makefile.config -diff --git a/tests/Makefile b/tests/Makefile -index 1aba27f..9642323 100644 ---- a/tests/Makefile -+++ b/tests/Makefile -@@ -41,7 +41,7 @@ one: FORCE - else \ - echo "Running tests for '$(NAME)'..." | tee -a _log; \ - (cd $(NAME) && \ -- $(MAKE) PATH_OCAML_BIN=$(PATH_OCAML_PREFIX)/bin \ -+ $(MAKE) PATH_OCAML_BIN=$(PATH_OCAML_PREFIX)/bin PATH_CAMLP4_PREFIX=$(PATH_CAMLP4_PREFIX) \ - COMPILER=ocamlc EXECUTABLE=bytecode RUN=./ LIB_EXT=cma EXE_SUFFIX='' \ - REPORT=../../_build/src/report/report.byte && \ - cd ..) || echo '*** error' >> _log; \ -diff --git a/tests/camlp4-comments/Makefile b/tests/camlp4-comments/Makefile -index 33fca72..a918118 100644 ---- a/tests/camlp4-comments/Makefile -+++ b/tests/camlp4-comments/Makefile -@@ -2,7 +2,7 @@ default: - @rm -fr *.result *.cmp - @for file in *.ml; do \ - echo " testing '$$file' ..."; \ -- $(PATH_OCAML_BIN)/camlp4o$(EXE_SUFFIX) str.cma ../../_build/bisect_pp.cmo $$file -o $$file.result; \ -+ $(PATH_CAMLP4_PREFIX)/bin/camlp4o$(EXE_SUFFIX) str.cma ../../_build/bisect_pp.cmo $$file -o $$file.result; \ - diff -q $$file.reference $$file.result || exit 1; \ - done - @rm -fr *.result *.cmp -diff --git a/tests/camlp4-exclude-file/Makefile b/tests/camlp4-exclude-file/Makefile -index ab13983..e2520fa 100644 ---- a/tests/camlp4-exclude-file/Makefile -+++ b/tests/camlp4-exclude-file/Makefile -@@ -2,7 +2,7 @@ default: - @rm -fr *.result *.cmp - @for file in *.ml; do \ - echo " testing '$$file' ..."; \ -- $(PATH_OCAML_BIN)/camlp4o$(EXE_SUFFIX) str.cma ../../_build/bisect_pp.cmo $$file -exclude-file exclusions -o $$file.result; \ -+ $(PATH_CAMLP4_PREFIX)/bin/camlp4o$(EXE_SUFFIX) str.cma ../../_build/bisect_pp.cmo $$file -exclude-file exclusions -o $$file.result; \ - diff -q $$file.reference $$file.result || exit 1; \ - done - @rm -fr *.result *.cmp -diff --git a/tests/camlp4-exclude/Makefile b/tests/camlp4-exclude/Makefile -index 18aada4..d71a7bc 100644 ---- a/tests/camlp4-exclude/Makefile -+++ b/tests/camlp4-exclude/Makefile -@@ -2,7 +2,7 @@ default: - @rm -fr *.result *.cmp - @for file in *.ml; do \ - echo " testing '$$file' ..."; \ -- $(PATH_OCAML_BIN)/camlp4o$(EXE_SUFFIX) str.cma ../../_build/bisect_pp.cmo $$file -exclude 'f.*' -o $$file.result; \ -+ $(PATH_CAMLP4_PREFIX)/bin/camlp4o$(EXE_SUFFIX) str.cma ../../_build/bisect_pp.cmo $$file -exclude 'f.*' -o $$file.result; \ - diff -q $$file.reference $$file.result || exit 1; \ - done - @rm -fr *.result *.cmp -diff --git a/tests/camlp4-instrument-fast/Makefile b/tests/camlp4-instrument-fast/Makefile -index f60767f..8506e38 100644 ---- a/tests/camlp4-instrument-fast/Makefile -+++ b/tests/camlp4-instrument-fast/Makefile -@@ -2,7 +2,7 @@ default: - @rm -fr *.result *.cmp - @for file in *.ml; do \ - echo " testing '$$file' ..."; \ -- $(PATH_OCAML_BIN)/camlp4o$(EXE_SUFFIX) str.cma ../../_build/bisect_pp.cmo -mode fast $$file -o $$file.result; \ -+ $(PATH_CAMLP4_PREFIX)/bin/camlp4o$(EXE_SUFFIX) str.cma ../../_build/bisect_pp.cmo -mode fast $$file -o $$file.result; \ - diff -q $$file.reference $$file.result || exit 1; \ - done - @rm -fr *.result *.cmp -diff --git a/tests/camlp4-instrument/Makefile b/tests/camlp4-instrument/Makefile -index 33fca72..a918118 100644 ---- a/tests/camlp4-instrument/Makefile -+++ b/tests/camlp4-instrument/Makefile -@@ -2,7 +2,7 @@ default: - @rm -fr *.result *.cmp - @for file in *.ml; do \ - echo " testing '$$file' ..."; \ -- $(PATH_OCAML_BIN)/camlp4o$(EXE_SUFFIX) str.cma ../../_build/bisect_pp.cmo $$file -o $$file.result; \ -+ $(PATH_CAMLP4_PREFIX)/bin/camlp4o$(EXE_SUFFIX) str.cma ../../_build/bisect_pp.cmo $$file -o $$file.result; \ - diff -q $$file.reference $$file.result || exit 1; \ - done - @rm -fr *.result *.cmp -diff --git a/tests/combine-expr/Makefile b/tests/combine-expr/Makefile -index 46ae9eb..e8e2af2 100644 ---- a/tests/combine-expr/Makefile -+++ b/tests/combine-expr/Makefile -@@ -1,4 +1,4 @@ --COMPILE_FLAGS=-I ../../_build -pp '$(PATH_OCAML_BIN)/camlp4o str.cma -I ../../_build bisect_pp.cmo' bisect.$(LIB_EXT) $(FLAGS) -+COMPILE_FLAGS=-I ../../_build -pp '$(PATH_CAMLP4_PREFIX)/bin/camlp4o str.cma -I ../../_build bisect_pp.cmo' bisect.$(LIB_EXT) $(FLAGS) - - default: clean compile run report - -diff --git a/tests/ppx-comments/Makefile b/tests/ppx-comments/Makefile -index f8c645a..667526f 100644 ---- a/tests/ppx-comments/Makefile -+++ b/tests/ppx-comments/Makefile -@@ -2,7 +2,7 @@ default: - @rm -fr *.result *.cm* - @for file in *.ml; do \ - echo " testing '$$file' ..."; \ -- $(PATH_OCAML_BIN)/ocamlc -c -I ../../_build -ppx '../../_build/src/syntax/bisect_ppx.byte' -dsource $$file 2> $$file.result; \ -+ $(PATH_CAMLP4_PREFIX)/bin/ocamlc -c -I ../../_build -ppx '../../_build/src/syntax/bisect_ppx.byte' -dsource $$file 2> $$file.result; \ - diff -q $$file.reference $$file.result || exit 1; \ - done - @rm -fr *.result *.cm* -diff --git a/tests/ppx-exclude-file/Makefile b/tests/ppx-exclude-file/Makefile -index a575a77..0dd1a20 100644 ---- a/tests/ppx-exclude-file/Makefile -+++ b/tests/ppx-exclude-file/Makefile -@@ -2,7 +2,7 @@ default: - @rm -fr *.result *.cm* - @for file in *.ml; do \ - echo " testing '$$file' ..."; \ -- $(PATH_OCAML_BIN)/ocamlc -c -I ../../_build -ppx '../../_build/src/syntax/bisect_ppx.byte -exclude-file exclusions' -dsource $$file 2> $$file.result; \ -+ $(PATH_CAMLP4_PREFIX)/bin/ocamlc -c -I ../../_build -ppx '../../_build/src/syntax/bisect_ppx.byte -exclude-file exclusions' -dsource $$file 2> $$file.result; \ - diff -q $$file.reference $$file.result || exit 1; \ - done - @rm -fr *.result *.cm* -diff --git a/tests/ppx-exclude/Makefile b/tests/ppx-exclude/Makefile -index a517af4..f502a42 100644 ---- a/tests/ppx-exclude/Makefile -+++ b/tests/ppx-exclude/Makefile -@@ -2,7 +2,7 @@ default: - @rm -fr *.result *.cm* - @for file in *.ml; do \ - echo " testing '$$file' ..."; \ -- $(PATH_OCAML_BIN)/ocamlc -c -I ../../_build -ppx "../../_build/src/syntax/bisect_ppx.byte -exclude 'f.*'" -dsource $$file 2> $$file.result; \ -+ $(PATH_CAMLP4_PREFIX)/bin/ocamlc -c -I ../../_build -ppx "../../_build/src/syntax/bisect_ppx.byte -exclude 'f.*'" -dsource $$file 2> $$file.result; \ - diff -q $$file.reference $$file.result || exit 1; \ - done - @rm -fr *.result *.cm* -diff --git a/tests/ppx-instrument-fast/Makefile b/tests/ppx-instrument-fast/Makefile -index da78bb6..1195988 100644 ---- a/tests/ppx-instrument-fast/Makefile -+++ b/tests/ppx-instrument-fast/Makefile -@@ -2,7 +2,7 @@ default: - @rm -fr *.result *.cm* - @for file in *.ml; do \ - echo " testing '$$file' ..."; \ -- $(PATH_OCAML_BIN)/ocamlc -c -I ../../_build -ppx '../../_build/src/syntax/bisect_ppx.byte -mode fast' -dsource $$file 2> $$file.result; \ -+ $(PATH_CAMLP4_PREFIX)/bin/ocamlc -c -I ../../_build -ppx '../../_build/src/syntax/bisect_ppx.byte -mode fast' -dsource $$file 2> $$file.result; \ - diff -q $$file.reference $$file.result || exit 1; \ - done - @rm -fr *.result *.cm* -diff --git a/tests/ppx-instrument/Makefile b/tests/ppx-instrument/Makefile -index f8c645a..667526f 100644 ---- a/tests/ppx-instrument/Makefile -+++ b/tests/ppx-instrument/Makefile -@@ -2,7 +2,7 @@ default: - @rm -fr *.result *.cm* - @for file in *.ml; do \ - echo " testing '$$file' ..."; \ -- $(PATH_OCAML_BIN)/ocamlc -c -I ../../_build -ppx '../../_build/src/syntax/bisect_ppx.byte' -dsource $$file 2> $$file.result; \ -+ $(PATH_CAMLP4_PREFIX)/bin/ocamlc -c -I ../../_build -ppx '../../_build/src/syntax/bisect_ppx.byte' -dsource $$file 2> $$file.result; \ - diff -q $$file.reference $$file.result || exit 1; \ - done - @rm -fr *.result *.cm* -diff --git a/tests/report/Makefile b/tests/report/Makefile -index a7ffe44..a968bf9 100644 ---- a/tests/report/Makefile -+++ b/tests/report/Makefile -@@ -1,4 +1,4 @@ --COMPILE_FLAGS=-I ../../_build -pp '$(PATH_OCAML_BIN)/camlp4o str.cma -I ../../_build bisect_pp.cmo' bisect.$(LIB_EXT) $(FLAGS) -+COMPILE_FLAGS=-I ../../_build -pp '$(PATH_CAMLP4_PREFIX)/bin/camlp4o str.cma -I ../../_build bisect_pp.cmo' bisect.$(LIB_EXT) $(FLAGS) - XMLLINT=$(shell which xmllint) - - default: clean compile run report --- -2.18.0 - diff --git a/gnu/packages/patches/openocd-nrf52.patch b/gnu/packages/patches/openocd-nrf52.patch deleted file mode 100644 index 0ec4348cb4..0000000000 --- a/gnu/packages/patches/openocd-nrf52.patch +++ /dev/null @@ -1,827 +0,0 @@ -This patch adds support for nRF52 series devices. It is patchset 7 from -<http://openocd.zylin.com/#/c/3511/>, which has been tested, but not -merged yet in master. - -From: Michael Dietz <mjdietzx@gmail.com> -Date: Mon, 30 May 2016 12:50:44 +0000 (-0700) -Subject: Added support for nRF52 Series Devices. -X-Git-Url: http://openocd.zylin.com/gitweb?p=openocd.git;a=commitdiff_plain;h=9ba15633e221d9d72e320372ba8f49d3f30d4bce - -Added support for nRF52 Series Devices. - -Both nrf52.c and nrf52.cfg are based off of previous nRF51 files. -- Some possible race conditions with NVMC have been fixed in nRF52.c -- Removed nrf51_get_probed_chip_if_halted() as the core does not have to be halted to perform operations where it is called. -- Only registers that are needed by openOCD are defined, some registers in nRF51 don't exist in nRF52 and are removed. -- Some all around cleanup has been done. -- The protection mechanism is completely different on nRF52 and this has not been implemented yet - just prints a warning and returns for now. - -Change-Id: I4dd42c86f33f450709bb981806c2655f04aa6201 -Signed-off-by: Michael Dietz <mjdietzx@gmail.com> ---- - -diff --git a/src/flash/nor/Makefile.am b/src/flash/nor/Makefile.am -index 727e4f2..839667c 100644 ---- a/src/flash/nor/Makefile.am -+++ b/src/flash/nor/Makefile.am -@@ -36,6 +36,7 @@ NOR_DRIVERS = \ - %D%/niietcm4.c \ - %D%/non_cfi.c \ - %D%/nrf51.c \ -+ %D%/nrf52.c \ - %D%/numicro.c \ - %D%/ocl.c \ - %D%/pic32mx.c \ -diff --git a/src/flash/nor/drivers.c b/src/flash/nor/drivers.c -index 56a5cb2..071273e 100644 ---- a/src/flash/nor/drivers.c -+++ b/src/flash/nor/drivers.c -@@ -48,6 +48,7 @@ extern struct flash_driver mdr_flash; - extern struct flash_driver mrvlqspi_flash; - extern struct flash_driver niietcm4_flash; - extern struct flash_driver nrf51_flash; -+extern struct flash_driver nrf52_flash; - extern struct flash_driver numicro_flash; - extern struct flash_driver ocl_flash; - extern struct flash_driver pic32mx_flash; -@@ -100,6 +101,7 @@ static struct flash_driver *flash_drivers[] = { - &mrvlqspi_flash, - &niietcm4_flash, - &nrf51_flash, -+ &nrf52_flash, - &numicro_flash, - &ocl_flash, - &pic32mx_flash, -diff --git a/src/flash/nor/nrf52.c b/src/flash/nor/nrf52.c -new file mode 100644 -index 0000000..7f2bd35 ---- /dev/null -+++ b/src/flash/nor/nrf52.c -@@ -0,0 +1,733 @@ -+/*************************************************************************** -+ * Copyright (C) 2013 Synapse Product Development * -+ * Andrey Smirnov <andrew.smironv@gmail.com> * -+ * Angus Gratton <gus@projectgus.com> * -+ * Erdem U. Altunyurt <spamjunkeater@gmail.com> * -+ * * -+ * This program 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 2 of the License, or * -+ * (at your option) any later version. * -+ * * -+ * This program 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 this program. If not, see <http://www.gnu.org/licenses/>. * -+ ***************************************************************************/ -+ -+#ifdef HAVE_CONFIG_H -+#include "config.h" -+#endif -+ -+#include <stdlib.h> -+ -+#include "imp.h" -+#include <target/algorithm.h> -+#include <target/armv7m.h> -+#include <helper/types.h> -+ -+/* nRF52 Register addresses used by openOCD. */ -+#define NRF52_FLASH_BASE_ADDR (0x0) -+ -+#define NRF52_FICR_BASE_ADDR (0x10000000) -+#define NRF52_FICR_CODEPAGESIZE_ADDR (NRF52_FICR_BASE_ADDR | 0x010) -+#define NRF52_FICR_CODESIZE_ADDR (NRF52_FICR_BASE_ADDR | 0x014) -+ -+#define NRF52_UICR_BASE_ADDR (0x10001000) -+ -+#define NRF52_NVMC_BASE_ADDR (0x4001E000) -+#define NRF52_NVMC_READY_ADDR (NRF52_NVMC_BASE_ADDR | 0x400) -+#define NRF52_NVMC_CONFIG_ADDR (NRF52_NVMC_BASE_ADDR | 0x504) -+#define NRF52_NVMC_ERASEPAGE_ADDR (NRF52_NVMC_BASE_ADDR | 0x508) -+#define NRF52_NVMC_ERASEALL_ADDR (NRF52_NVMC_BASE_ADDR | 0x50C) -+#define NRF52_NVMC_ERASEUICR_ADDR (NRF52_NVMC_BASE_ADDR | 0x514) -+ -+/* nRF52 bit fields. */ -+enum nrf52_nvmc_config_bits { -+ NRF52_NVMC_CONFIG_REN = 0x0, -+ NRF52_NVMC_CONFIG_WEN = 0x01, -+ NRF52_NVMC_CONFIG_EEN = 0x02 -+}; -+ -+enum nrf52_nvmc_ready_bits { -+ NRF52_NVMC_BUSY = 0x0, -+ NRF52_NVMC_READY = 0x01 -+}; -+ -+/* nRF52 state information. */ -+struct nrf52_info { -+ uint32_t code_page_size; /* Size of FLASH page in bytes. */ -+ uint32_t code_memory_size; /* Size of Code FLASH region in bytes. */ -+ -+ struct { -+ bool probed; -+ int (*write) (struct flash_bank *bank, -+ struct nrf52_info *chip, -+ const uint8_t *buffer, uint32_t offset, uint32_t count); -+ } bank[2]; /* There are two regions in nRF52 FLASH - Code and UICR. */ -+ struct target *target; -+}; -+ -+static int nrf52_protect_check(struct flash_bank *bank); -+ -+static int nrf52_probe(struct flash_bank *bank) -+{ -+ int res; -+ struct nrf52_info *chip = bank->driver_priv; -+ assert(chip != NULL); -+ -+ res = target_read_u32(chip->target, -+ NRF52_FICR_CODEPAGESIZE_ADDR, -+ &chip->code_page_size); -+ if (res != ERROR_OK) { -+ LOG_ERROR("Couldn't read code page size"); -+ return res; -+ } -+ -+ res = target_read_u32(chip->target, -+ NRF52_FICR_CODESIZE_ADDR, -+ &chip->code_memory_size); -+ if (res != ERROR_OK) { -+ LOG_ERROR("Couldn't read code memory size"); -+ return res; -+ } -+ -+ chip->code_memory_size = chip->code_memory_size * chip->code_page_size; -+ -+ if (bank->base == NRF52_FLASH_BASE_ADDR) { -+ bank->size = chip->code_memory_size; -+ bank->num_sectors = bank->size / chip->code_page_size; -+ bank->sectors = calloc(bank->num_sectors, -+ sizeof((bank->sectors)[0])); -+ if (!bank->sectors) -+ return ERROR_FLASH_BANK_NOT_PROBED; -+ -+ /* Fill out the sector information: All nRF51 sectors are the same size. */ -+ for (int i = 0; i < bank->num_sectors; i++) { -+ bank->sectors[i].size = chip->code_page_size; -+ bank->sectors[i].offset = i * chip->code_page_size; -+ -+ /* Mark as unknown. */ -+ bank->sectors[i].is_erased = -1; -+ bank->sectors[i].is_protected = -1; -+ } -+ -+ nrf52_protect_check(bank); -+ -+ chip->bank[0].probed = true; -+ } else { /* This is the UICR bank. */ -+ bank->size = chip->code_page_size; -+ bank->num_sectors = 1; -+ bank->sectors = calloc(bank->num_sectors, -+ sizeof((bank->sectors)[0])); -+ if (!bank->sectors) -+ return ERROR_FLASH_BANK_NOT_PROBED; -+ -+ bank->sectors[0].size = bank->size; -+ bank->sectors[0].offset = 0; -+ -+ bank->sectors[0].is_erased = -1; -+ bank->sectors[0].is_protected = -1; -+ -+ chip->bank[1].probed = true; -+ } -+ -+ return ERROR_OK; -+} -+ -+static int nrf52_bank_is_probed(struct flash_bank *bank) -+{ -+ struct nrf52_info *chip = bank->driver_priv; -+ assert(chip != NULL); -+ -+ return chip->bank[bank->bank_number].probed; -+} -+ -+static int nrf52_auto_probe(struct flash_bank *bank) -+{ -+ if (!nrf52_bank_is_probed(bank)) -+ return nrf52_probe(bank); -+ else -+ return ERROR_OK; -+} -+ -+static int nrf52_wait_for_nvmc(struct nrf52_info *chip) -+{ -+ int res; -+ uint32_t ready; -+ int timeout = 100; -+ -+ do { -+ res = target_read_u32(chip->target, NRF52_NVMC_READY_ADDR, &ready); -+ if (res != ERROR_OK) { -+ LOG_ERROR("Couldn't read NVMC_READY register"); -+ return res; -+ } -+ -+ if (ready == NRF52_NVMC_READY) -+ return ERROR_OK; -+ -+ alive_sleep(1); -+ } while (timeout--); -+ -+ LOG_DEBUG("Timed out waiting for the NVMC to be ready"); -+ return ERROR_FLASH_BUSY; -+} -+ -+static int nrf52_nvmc_erase_enable(struct nrf52_info *chip) -+{ -+ int res; -+ -+ res = nrf52_wait_for_nvmc(chip); -+ if (res != ERROR_OK) -+ return res; -+ -+ res = target_write_u32(chip->target, -+ NRF52_NVMC_CONFIG_ADDR, -+ NRF52_NVMC_CONFIG_EEN); -+ if (res != ERROR_OK) { -+ LOG_ERROR("Failed to configure the NVMC for erasing"); -+ return res; -+ } -+ -+ return res; -+} -+ -+static int nrf52_nvmc_write_enable(struct nrf52_info *chip) -+{ -+ int res; -+ -+ res = nrf52_wait_for_nvmc(chip); -+ if (res != ERROR_OK) -+ return res; -+ -+ res = target_write_u32(chip->target, -+ NRF52_NVMC_CONFIG_ADDR, -+ NRF52_NVMC_CONFIG_WEN); -+ if (res != ERROR_OK) { -+ LOG_ERROR("Failed to configure the NVMC for writing"); -+ return res; -+ } -+ -+ return res; -+} -+ -+static int nrf52_nvmc_read_only(struct nrf52_info *chip) -+{ -+ int res; -+ -+ res = nrf52_wait_for_nvmc(chip); -+ if (res != ERROR_OK) -+ return res; -+ -+ res = target_write_u32(chip->target, -+ NRF52_NVMC_CONFIG_ADDR, -+ NRF52_NVMC_CONFIG_REN); -+ if (res != ERROR_OK) { -+ LOG_ERROR("Failed to configure the NVMC for read-only"); -+ return res; -+ } -+ -+ return res; -+} -+ -+static int nrf52_nvmc_generic_erase(struct nrf52_info *chip, -+ uint32_t erase_register, -+ uint32_t erase_value) -+{ -+ int res; -+ -+ res = nrf52_nvmc_erase_enable(chip); -+ if (res != ERROR_OK) -+ return res; -+ -+ res = target_write_u32(chip->target, -+ erase_register, -+ erase_value); -+ if (res != ERROR_OK) -+ LOG_ERROR("Failed to write NVMC erase register"); -+ -+ return nrf52_nvmc_read_only(chip); -+} -+ -+static int nrf52_protect_check(struct flash_bank *bank) -+{ -+ LOG_WARNING("nrf52_protect_check() is not implemented for nRF52 series devices yet"); -+ return ERROR_OK; -+} -+ -+static int nrf52_protect(struct flash_bank *bank, int set, int first, int last) -+{ -+ LOG_WARNING("nrf52_protect() is not implemented for nRF52 series devices yet"); -+ return ERROR_OK; -+} -+ -+static struct flash_sector *nrf52_find_sector_by_address(struct flash_bank *bank, uint32_t address) -+{ -+ struct nrf52_info *chip = bank->driver_priv; -+ assert(chip != NULL); -+ -+ for (int i = 0; i < bank->num_sectors; i++) -+ if (bank->sectors[i].offset <= address && -+ address < (bank->sectors[i].offset + chip->code_page_size)) { -+ return &bank->sectors[i]; -+ } -+ -+ return NULL; -+} -+ -+static int nrf52_erase_all(struct nrf52_info *chip) -+{ -+ LOG_DEBUG("Erasing all non-volatile memory"); -+ return nrf52_nvmc_generic_erase(chip, -+ NRF52_NVMC_ERASEALL_ADDR, -+ 0x01); -+} -+ -+static int nrf52_erase_page(struct flash_bank *bank, -+ struct nrf52_info *chip, -+ struct flash_sector *sector) -+{ -+ int res; -+ -+ LOG_DEBUG("Erasing page at 0x%"PRIx32, sector->offset); -+ if (sector->is_protected == 1) { -+ LOG_ERROR("Cannot erase protected sector at 0x%" PRIx32, sector->offset); -+ return ERROR_FAIL; -+ } -+ -+ if (bank->base == NRF52_UICR_BASE_ADDR) { -+ res = nrf52_nvmc_generic_erase(chip, -+ NRF52_NVMC_ERASEUICR_ADDR, -+ 0x00000001); -+ } else { -+ res = nrf52_nvmc_generic_erase(chip, -+ NRF52_NVMC_ERASEPAGE_ADDR, -+ sector->offset); -+ } -+ -+ if (res == ERROR_OK) -+ sector->is_erased = 1; -+ return res; -+} -+ -+static const uint8_t nrf52_flash_write_code[] = { -+ /* See contrib/loaders/flash/cortex-m0.S */ -+ /* <wait_fifo>: */ -+ 0x0d, 0x68, /* ldr r5, [r1, #0] */ -+ 0x00, 0x2d, /* cmp r5, #0 */ -+ 0x0b, 0xd0, /* beq.n 1e <exit> */ -+ 0x4c, 0x68, /* ldr r4, [r1, #4] */ -+ 0xac, 0x42, /* cmp r4, r5 */ -+ 0xf9, 0xd0, /* beq.n 0 <wait_fifo> */ -+ 0x20, 0xcc, /* ldmia r4!, {r5} */ -+ 0x20, 0xc3, /* stmia r3!, {r5} */ -+ 0x94, 0x42, /* cmp r4, r2 */ -+ 0x01, 0xd3, /* bcc.n 18 <no_wrap> */ -+ 0x0c, 0x46, /* mov r4, r1 */ -+ 0x08, 0x34, /* adds r4, #8 */ -+ /* <no_wrap>: */ -+ 0x4c, 0x60, /* str r4, [r1, #4] */ -+ 0x04, 0x38, /* subs r0, #4 */ -+ 0xf0, 0xd1, /* bne.n 0 <wait_fifo> */ -+ /* <exit>: */ -+ 0x00, 0xbe /* bkpt 0x0000 */ -+}; -+ -+ -+/* Start a low level flash write for the specified region */ -+static int nrf52_ll_flash_write(struct nrf52_info *chip, uint32_t offset, const uint8_t *buffer, uint32_t bytes) -+{ -+ struct target *target = chip->target; -+ uint32_t buffer_size = 8192; -+ struct working_area *write_algorithm; -+ struct working_area *source; -+ uint32_t address = NRF52_FLASH_BASE_ADDR + offset; -+ struct reg_param reg_params[4]; -+ struct armv7m_algorithm armv7m_info; -+ int retval = ERROR_OK; -+ -+ LOG_DEBUG("Writing buffer to flash offset=0x%"PRIx32" bytes=0x%"PRIx32, offset, bytes); -+ assert(bytes % 4 == 0); -+ -+ /* allocate working area with flash programming code */ -+ if (target_alloc_working_area(target, sizeof(nrf52_flash_write_code), -+ &write_algorithm) != ERROR_OK) { -+ LOG_WARNING("no working area available, falling back to slow memory writes"); -+ -+ for (; bytes > 0; bytes -= 4) { -+ retval = target_write_memory(chip->target, -+ offset, 4, 1, buffer); -+ if (retval != ERROR_OK) -+ return retval; -+ -+ retval = nrf52_wait_for_nvmc(chip); -+ if (retval != ERROR_OK) -+ return retval; -+ -+ offset += 4; -+ buffer += 4; -+ } -+ -+ return ERROR_OK; -+ } -+ -+ LOG_WARNING("using fast async flash loader. This is currently supported"); -+ LOG_WARNING("only with ST-Link and CMSIS-DAP. If you have issues, add"); -+ LOG_WARNING("\"set WORKAREASIZE 0\" before sourcing nrf52.cfg to disable it"); -+ -+ retval = target_write_buffer(target, write_algorithm->address, -+ sizeof(nrf52_flash_write_code), -+ nrf52_flash_write_code); -+ if (retval != ERROR_OK) -+ return retval; -+ -+ /* memory buffer */ -+ while (target_alloc_working_area(target, buffer_size, &source) != ERROR_OK) { -+ buffer_size /= 2; -+ buffer_size &= ~3UL; /* Make sure it's 4 byte aligned */ -+ if (buffer_size <= 256) { -+ /* free working area, write algorithm already allocated */ -+ target_free_working_area(target, write_algorithm); -+ -+ LOG_WARNING("No large enough working area available, can't do block memory writes"); -+ return ERROR_TARGET_RESOURCE_NOT_AVAILABLE; -+ } -+ } -+ -+ armv7m_info.common_magic = ARMV7M_COMMON_MAGIC; -+ armv7m_info.core_mode = ARM_MODE_THREAD; -+ -+ init_reg_param(®_params[0], "r0", 32, PARAM_IN_OUT); /* byte count */ -+ init_reg_param(®_params[1], "r1", 32, PARAM_OUT); /* buffer start */ -+ init_reg_param(®_params[2], "r2", 32, PARAM_OUT); /* buffer end */ -+ init_reg_param(®_params[3], "r3", 32, PARAM_IN_OUT); /* target address */ -+ -+ buf_set_u32(reg_params[0].value, 0, 32, bytes); -+ buf_set_u32(reg_params[1].value, 0, 32, source->address); -+ buf_set_u32(reg_params[2].value, 0, 32, source->address + source->size); -+ buf_set_u32(reg_params[3].value, 0, 32, address); -+ -+ retval = target_run_flash_async_algorithm(target, buffer, bytes/4, 4, -+ 0, NULL, -+ 4, reg_params, -+ source->address, source->size, -+ write_algorithm->address, 0, -+ &armv7m_info); -+ -+ target_free_working_area(target, source); -+ target_free_working_area(target, write_algorithm); -+ -+ destroy_reg_param(®_params[0]); -+ destroy_reg_param(®_params[1]); -+ destroy_reg_param(®_params[2]); -+ destroy_reg_param(®_params[3]); -+ -+ return retval; -+} -+ -+/* Check and erase flash sectors in specified range, then start a low level page write. -+ start/end must be sector aligned. -+*/ -+static int nrf52_write_pages(struct flash_bank *bank, uint32_t start, uint32_t end, const uint8_t *buffer) -+{ -+ int res; -+ uint32_t offset; -+ struct flash_sector *sector; -+ struct nrf52_info *chip = bank->driver_priv; -+ assert(chip != NULL); -+ -+ assert(start % chip->code_page_size == 0); -+ assert(end % chip->code_page_size == 0); -+ -+ /* Erase all sectors */ -+ for (offset = start; offset < end; offset += chip->code_page_size) { -+ sector = nrf52_find_sector_by_address(bank, offset); -+ -+ if (sector == NULL) { -+ LOG_ERROR("Invalid sector @ 0x%08"PRIx32, offset); -+ return ERROR_FLASH_SECTOR_INVALID; -+ } -+ -+ if (sector->is_protected == 1) { -+ LOG_ERROR("Can't erase protected sector @ 0x%08"PRIx32, offset); -+ return ERROR_FAIL; -+ } -+ -+ if (sector->is_erased != 1) { /* 1 = erased, 0= not erased, -1 = unknown */ -+ res = nrf52_erase_page(bank, chip, sector); -+ if (res != ERROR_OK) { -+ LOG_ERROR("Failed to erase sector @ 0x%08"PRIx32, sector->offset); -+ return res; -+ } -+ } -+ sector->is_erased = 1; -+ } -+ -+ res = nrf52_nvmc_write_enable(chip); -+ if (res != ERROR_OK) -+ return res; -+ -+ res = nrf52_ll_flash_write(chip, start, buffer, (end - start)); -+ if (res != ERROR_OK) { -+ LOG_ERROR("Failed to write FLASH"); -+ nrf52_nvmc_read_only(chip); -+ return res; -+ } -+ -+ return nrf52_nvmc_read_only(chip); -+} -+ -+static int nrf52_erase(struct flash_bank *bank, int first, int last) -+{ -+ int res = ERROR_OK; -+ struct nrf52_info *chip = bank->driver_priv; -+ assert(chip != NULL); -+ -+ /* For each sector to be erased */ -+ for (int s = first; s <= last && res == ERROR_OK; s++) -+ res = nrf52_erase_page(bank, chip, &bank->sectors[s]); -+ -+ return res; -+} -+ -+static int nrf52_code_flash_write(struct flash_bank *bank, -+ struct nrf52_info *chip, -+ const uint8_t *buffer, uint32_t offset, uint32_t count) -+{ -+ int res; -+ /* Need to perform reads to fill any gaps we need to preserve in the first page, -+ before the start of buffer, or in the last page, after the end of buffer */ -+ uint32_t first_page = offset / chip->code_page_size; -+ uint32_t last_page = DIV_ROUND_UP(offset+count, chip->code_page_size); -+ -+ uint32_t first_page_offset = first_page * chip->code_page_size; -+ uint32_t last_page_offset = last_page * chip->code_page_size; -+ -+ LOG_DEBUG("Padding write from 0x%08"PRIx32"-0x%08"PRIx32" as 0x%08"PRIx32"-0x%08"PRIx32, -+ offset, offset+count, first_page_offset, last_page_offset); -+ -+ uint32_t page_cnt = last_page - first_page; -+ uint8_t buffer_to_flash[page_cnt * chip->code_page_size]; -+ -+ /* Fill in any space between start of first page and start of buffer */ -+ uint32_t pre = offset - first_page_offset; -+ if (pre > 0) { -+ res = target_read_memory(bank->target, first_page_offset, 1, pre, buffer_to_flash); -+ if (res != ERROR_OK) -+ return res; -+ } -+ -+ /* Fill in main contents of buffer */ -+ memcpy(buffer_to_flash + pre, buffer, count); -+ -+ /* Fill in any space between end of buffer and end of last page */ -+ uint32_t post = last_page_offset - (offset + count); -+ if (post > 0) { -+ /* Retrieve the full row contents from Flash */ -+ res = target_read_memory(bank->target, offset + count, 1, post, buffer_to_flash + pre + count); -+ if (res != ERROR_OK) -+ return res; -+ } -+ -+ return nrf52_write_pages(bank, first_page_offset, last_page_offset, buffer_to_flash); -+} -+ -+static int nrf52_uicr_flash_write(struct flash_bank *bank, -+ struct nrf52_info *chip, -+ const uint8_t *buffer, uint32_t offset, uint32_t count) -+{ -+ int res; -+ uint32_t nrf52_uicr_size = chip->code_page_size; -+ uint8_t uicr[nrf52_uicr_size]; -+ struct flash_sector *sector = &bank->sectors[0]; -+ -+ if ((offset + count) > nrf52_uicr_size) -+ return ERROR_FAIL; -+ -+ res = target_read_memory(bank->target, NRF52_UICR_BASE_ADDR, 1, nrf52_uicr_size, uicr); -+ -+ if (res != ERROR_OK) -+ return res; -+ -+ if (sector->is_erased != 1) { -+ res = nrf52_erase_page(bank, chip, sector); -+ if (res != ERROR_OK) -+ return res; -+ } -+ -+ memcpy(&uicr[offset], buffer, count); -+ -+ res = nrf52_nvmc_write_enable(chip); -+ if (res != ERROR_OK) -+ return res; -+ -+ res = nrf52_ll_flash_write(chip, NRF52_UICR_BASE_ADDR, uicr, nrf52_uicr_size); -+ if (res != ERROR_OK) { -+ nrf52_nvmc_read_only(chip); -+ return res; -+ } -+ -+ return nrf52_nvmc_read_only(chip); -+} -+ -+ -+static int nrf52_write(struct flash_bank *bank, const uint8_t *buffer, -+ uint32_t offset, uint32_t count) -+{ -+ struct nrf52_info *chip = bank->driver_priv; -+ assert(chip != NULL); -+ -+ return chip->bank[bank->bank_number].write(bank, chip, buffer, offset, count); -+} -+ -+ -+FLASH_BANK_COMMAND_HANDLER(nrf52_flash_bank_command) -+{ -+ static struct nrf52_info *chip; -+ -+ assert(bank != NULL); -+ -+ switch (bank->base) { -+ case NRF52_FLASH_BASE_ADDR: -+ bank->bank_number = 0; -+ break; -+ case NRF52_UICR_BASE_ADDR: -+ bank->bank_number = 1; -+ break; -+ default: -+ LOG_ERROR("Invalid bank address 0x%08" PRIx32, bank->base); -+ return ERROR_FAIL; -+ } -+ -+ if (!chip) { -+ /* Create a new chip */ -+ chip = calloc(1, sizeof(*chip)); -+ assert(chip != NULL); -+ -+ chip->target = bank->target; -+ } -+ -+ switch (bank->base) { -+ case NRF52_FLASH_BASE_ADDR: -+ chip->bank[bank->bank_number].write = nrf52_code_flash_write; -+ break; -+ case NRF52_UICR_BASE_ADDR: -+ chip->bank[bank->bank_number].write = nrf52_uicr_flash_write; -+ break; -+ } -+ -+ chip->bank[bank->bank_number].probed = false; -+ bank->driver_priv = chip; -+ -+ return ERROR_OK; -+} -+ -+COMMAND_HANDLER(nrf52_handle_mass_erase_command) -+{ -+ int res; -+ struct flash_bank *bank = NULL; -+ struct target *target = get_current_target(CMD_CTX); -+ -+ res = get_flash_bank_by_addr(target, NRF52_FLASH_BASE_ADDR, true, &bank); -+ if (res != ERROR_OK) -+ return res; -+ -+ assert(bank != NULL); -+ -+ struct nrf52_info *chip = bank->driver_priv; -+ assert(chip != NULL); -+ -+ res = nrf52_erase_all(chip); -+ if (res != ERROR_OK) { -+ LOG_ERROR("Failed to erase the chip"); -+ nrf52_protect_check(bank); -+ return res; -+ } -+ -+ for (int i = 0; i < bank->num_sectors; i++) -+ bank->sectors[i].is_erased = 1; -+ -+ res = nrf52_protect_check(bank); -+ if (res != ERROR_OK) { -+ LOG_ERROR("Failed to check chip's write protection"); -+ return res; -+ } -+ -+ res = get_flash_bank_by_addr(target, NRF52_UICR_BASE_ADDR, true, &bank); -+ if (res != ERROR_OK) -+ return res; -+ -+ bank->sectors[0].is_erased = 1; -+ -+ return ERROR_OK; -+} -+ -+static int nrf52_info(struct flash_bank *bank, char *buf, int buf_size) -+{ -+ int res; -+ uint32_t ficr[2]; -+ struct nrf52_info *chip = bank->driver_priv; -+ assert(chip != NULL); -+ -+ res = target_read_u32(chip->target, NRF52_FICR_CODEPAGESIZE_ADDR, &ficr[0]); -+ if (res != ERROR_OK) { -+ LOG_ERROR("Couldn't read NVMC_READY register"); -+ return res; -+ } -+ -+ res = target_read_u32(chip->target, NRF52_FICR_CODESIZE_ADDR, &ficr[1]); -+ if (res != ERROR_OK) { -+ LOG_ERROR("Couldn't read NVMC_READY register"); -+ return res; -+ } -+ -+ snprintf(buf, buf_size, -+ "\n--------nRF52 Series Device--------\n\n" -+ "\n[factory information control block]\n" -+ "code page size: %"PRIu32"B\n" -+ "code memory size: %"PRIu32"kB\n", -+ ficr[0], -+ (ficr[1] * ficr[0]) / 1024); -+ -+ return ERROR_OK; -+} -+ -+static const struct command_registration nrf52_exec_command_handlers[] = { -+ { -+ .name = "mass_erase", -+ .handler = nrf52_handle_mass_erase_command, -+ .mode = COMMAND_EXEC, -+ .help = "Erase all flash contents of the chip.", -+ }, -+ COMMAND_REGISTRATION_DONE -+}; -+ -+static const struct command_registration nrf52_command_handlers[] = { -+ { -+ .name = "nrf52", -+ .mode = COMMAND_ANY, -+ .help = "nrf52 flash command group", -+ .usage = "", -+ .chain = nrf52_exec_command_handlers, -+ }, -+ COMMAND_REGISTRATION_DONE -+}; -+ -+struct flash_driver nrf52_flash = { -+ .name = "nrf52", -+ .commands = nrf52_command_handlers, -+ .flash_bank_command = nrf52_flash_bank_command, -+ .info = nrf52_info, -+ .erase = nrf52_erase, -+ .protect = nrf52_protect, -+ .write = nrf52_write, -+ .read = default_flash_read, -+ .probe = nrf52_probe, -+ .auto_probe = nrf52_auto_probe, -+ .erase_check = default_flash_blank_check, -+ .protect_check = nrf52_protect_check, -+}; -diff --git a/tcl/target/nrf52.cfg b/tcl/target/nrf52.cfg -index c1cbf1a..41a22ff 100644 ---- a/tcl/target/nrf52.cfg -+++ b/tcl/target/nrf52.cfg -@@ -10,6 +10,13 @@ if { [info exists CHIPNAME] } { - set _CHIPNAME nrf52 - } - -+# Work-area is a space in RAM used for flash programming, by default use 16kB. -+if { [info exists WORKAREASIZE] } { -+ set _WORKAREASIZE $WORKAREASIZE -+} else { -+ set _WORKAREASIZE 0x4000 -+} -+ - if { [info exists CPUTAPID] } { - set _CPUTAPID $CPUTAPID - } else { -@@ -22,7 +29,15 @@ set _TARGETNAME $_CHIPNAME.cpu - target create $_TARGETNAME cortex_m -chain-position $_TARGETNAME - - adapter_khz 10000 -+$_TARGETNAME configure -work-area-phys 0x20000000 -work-area-size $_WORKAREASIZE -work-area-backup 0 - - if { ![using_hla] } { - cortex_m reset_config sysresetreq - } -+ -+flash bank $_CHIPNAME.flash nrf52 0x00000000 0 1 1 $_TARGETNAME -+flash bank $_CHIPNAME.uicr nrf52 0x10001000 0 1 1 $_TARGETNAME -+ -+adapter_khz 1000 -+ -+$_TARGETNAME configure -event reset-end {} diff --git a/gnu/packages/patches/plasma-framework-fix-KF5PlasmaMacros.cmake.patch b/gnu/packages/patches/plasma-framework-fix-KF5PlasmaMacros.cmake.patch new file mode 100644 index 0000000000..bd55d512cf --- /dev/null +++ b/gnu/packages/patches/plasma-framework-fix-KF5PlasmaMacros.cmake.patch @@ -0,0 +1,25 @@ +From ff5ed26f21d304e867ab57781878069567deb23d Mon Sep 17 00:00:00 2001 +From: Hartmut Goebel <h.goebel@crazy-compilers.com> +Date: Mon, 3 Aug 2020 19:49:58 +0000 +Subject: [PATCH] Fix build errors if PREFIX is different from ECM's PREFIX. + +See <https://bugs.kde.org/424483> for details +--- + KF5PlasmaMacros.cmake | 3 +-- + 1 file changed, 1 insertion(+), 2 deletions(-) + +diff --git a/KF5PlasmaMacros.cmake b/KF5PlasmaMacros.cmake +index 494b42d56..80b3fd8dd 100644 +--- a/KF5PlasmaMacros.cmake ++++ b/KF5PlasmaMacros.cmake +@@ -1,6 +1,5 @@ + +-find_package(ECM 1.6.0 CONFIG REQUIRED) +-include(${ECM_KDE_MODULE_DIR}/KDEInstallDirs.cmake) ++include(KDEInstallDirs) + + set(PLASMA_RELATIVE_DATA_INSTALL_DIR "plasma") + set(PLASMA_DATA_INSTALL_DIR "${KDE_INSTALL_DATADIR}/${PLASMA_RELATIVE_DATA_INSTALL_DIR}") +-- +GitLab + diff --git a/gnu/packages/patches/python-robotframework-honor-source-date-epoch.patch b/gnu/packages/patches/python-robotframework-source-date-epoch.patch index ccd87911d8..ccd87911d8 100644 --- a/gnu/packages/patches/python-robotframework-honor-source-date-epoch.patch +++ b/gnu/packages/patches/python-robotframework-source-date-epoch.patch diff --git a/gnu/packages/patches/rcs-5.10.0-no-stdin.patch b/gnu/packages/patches/rcs-5.10.0-no-stdin.patch new file mode 100644 index 0000000000..56edfe7b65 --- /dev/null +++ b/gnu/packages/patches/rcs-5.10.0-no-stdin.patch @@ -0,0 +1,57 @@ +http://git.savannah.gnu.org/cgit/rcs.git/patch/?id=8883c4f5a29be18e9ea09bd27a7b660830de45bb + + +From 8883c4f5a29be18e9ea09bd27a7b660830de45bb Mon Sep 17 00:00:00 2001 +From: Thien-Thi Nguyen <ttn@gnu.org> +Date: Fri, 23 Oct 2020 09:23:49 -0400 +Subject: [v] Don't test signal handling if stdin not ok. + +<https://mail.gnu.org/archive/html/bug-rcs/2020-10/msg00014.html> + +* tests/t632: If stdin is not open and connected to +a tty, skip the signal handling portion of the test. +--- + tests/ChangeLog | 9 +++++++++ + tests/t632 | 9 +++++++++ + 2 files changed, 18 insertions(+) + +diff --git a/tests/ChangeLog b/tests/ChangeLog +index c3715c0..0565058 100644 +--- a/tests/ChangeLog ++++ b/tests/ChangeLog +@@ -1,3 +1,12 @@ ++2020-10-23 Thien-Thi Nguyen <ttn@gnu.org> ++ ++ [v] Don't test signal handling if stdin not ok. ++ ++ <https://mail.gnu.org/archive/html/bug-rcs/2020-10/msg00014.html> ++ ++ * t632: If stdin is not open and connected to ++ a tty, skip the signal handling portion of the test. ++ + 2020-10-20 Thien-Thi Nguyen <ttn@gnu.org> + + Release: 5.10.0 +diff --git a/tests/t632 b/tests/t632 +index df6acc9..677ec8c 100644 +--- a/tests/t632 ++++ b/tests/t632 +@@ -40,6 +40,15 @@ echo | co -l -I $w \ + # (This is skipped if GNU coreutils timeout(1) is not available.) + ## + ++# <https://mail.gnu.org/archive/html/bug-rcs/2020-10/msg00014.html> ++# The timeout test needs co(1) to block on input. ++# If stdin is not open and connected to a tty, skip out. ++if test -t 0 ; then ++ echo STDIN OK ++else ++ exit 0 ++fi ++ + # TODO: Don't be lame! Pick one: + # (a) Mimic timeout(1) w/ sh commands. + # (b) Incorporate heart of timeout(1) into ./btdt and use that. +-- +cgit v1.2.1 + diff --git a/gnu/packages/patches/rcs-5.9.4-noreturn.patch b/gnu/packages/patches/rcs-5.9.4-noreturn.patch deleted file mode 100644 index 0c0c044ed5..0000000000 --- a/gnu/packages/patches/rcs-5.9.4-noreturn.patch +++ /dev/null @@ -1,94 +0,0 @@ -Builds with GCC-5 failed due to misplaced `_Noreturn (__attribute__((noreturn)))` -statement. - -Patch copied from upstream source repository: - -http://git.savannah.gnu.org/cgit/rcs.git/commit/?h=p&id=260704a9164dd34cf7128d6b1e88075ffa3be054 - -Upstream bug URL: - -https://savannah.gnu.org/bugs/?49568 - -commit 260704a9164dd34cf7128d6b1e88075ffa3be054 -Author: Thien-Thi Nguyen <ttn@gnu.org> -Date: Thu Jun 18 21:25:53 2015 +0200 - - [C slog] Move ‘exiting’ to beginning of func decl. - - Apparently, ‘gcc --std=c11’ does not abide the ‘exiting’ - attribute appearing at the end of the func decl. - Reported by Romain Francoise. - See also <https://bugs.debian.org/778100>. - - * src/b-complain.h (generic_fatal, fatal_syntax, fatal_sys) - * src/b-fb.h (Ierror, Oerror) - * src/base.h (unexpected_EOF, thank_you_and_goodnight): - Move ‘exiting’ attribute to beginning of func decl. - -diff --git a/src/b-complain.h b/src/b-complain.h -index 0ffd157..ea0ffc5 100644 ---- a/src/b-complain.h -+++ b/src/b-complain.h -@@ -32,12 +32,14 @@ extern void generic_warn (char const *who, char const *fmt, ...) - printf_string (2, 3); - extern void generic_error (char const *who, char const *fmt, ...) - printf_string (2, 3); -+exiting - extern void generic_fatal (char const *who, char const *fmt, ...) -- printf_string (2, 3) exiting; -+ printf_string (2, 3); -+exiting - extern void fatal_syntax (size_t lno, char const *fmt, ...) -- printf_string (2, 3) exiting; --extern void fatal_sys (char const *who) -- exiting; -+ printf_string (2, 3); -+exiting -+extern void fatal_sys (char const *who); - - /* Idioms. Here, prefix P stands for "program" (general operation); - M for "manifestation"; R for "repository". */ -diff --git a/src/b-fb.h b/src/b-fb.h -index c9850e7..bf5eaf8 100644 ---- a/src/b-fb.h -+++ b/src/b-fb.h -@@ -21,9 +21,11 @@ - */ - - extern int change_mode (int fd, mode_t mode); --extern void Ierror (void) exiting; -+exiting -+extern void Ierror (void); - extern void testIerror (FILE *f); --extern void Oerror (void) exiting; -+exiting -+extern void Oerror (void); - extern void testOerror (FILE *o); - extern FILE *fopen_safer (char const *filename, char const *type); - extern void Ozclose (FILE **p); -diff --git a/src/base.h b/src/base.h -index 163ee09..5e7a9f8 100644 ---- a/src/base.h -+++ b/src/base.h -@@ -755,8 +755,8 @@ int dorewrite (bool lockflag, int changed); - int donerewrite (int changed, time_t newRCStime); - void ORCSclose (void); - void ORCSerror (void); --void unexpected_EOF (void) -- exiting; -+exiting -+void unexpected_EOF (void); - void initdiffcmd (struct diffcmd *dc); - int getdiffcmd (struct fro *finfile, bool delimiter, - FILE *foutfile, struct diffcmd *dc); -@@ -831,8 +831,8 @@ char const *date2str (char const date[datesize], - char datebuf[datesize + zonelenmax]); - - /* rcsutil */ --void thank_you_and_goodnight (int const how) -- exiting; -+exiting -+void thank_you_and_goodnight (int const how); - /* These are for ‘thank_you_and_goodnight’. */ - #define TYAG_ORCSERROR (1 << 3) - #define TYAG_DIRTMPUNLINK (1 << 2) diff --git a/gnu/packages/patches/sbcl-geco-fix-organism-class.patch b/gnu/packages/patches/sbcl-geco-fix-organism-class.patch new file mode 100644 index 0000000000..817596241e --- /dev/null +++ b/gnu/packages/patches/sbcl-geco-fix-organism-class.patch @@ -0,0 +1,13 @@ +Fix the ORGANISM class so that SBCL >= 2.0.9 can compile it without error. + +--- a/classes.lisp 2020-10-28 12:11:10.725659464 +0100 ++++ b/classes.lisp 2020-10-31 17:34:36.822752447 +0100 +@@ -148,7 +148,7 @@ + :accessor score + :initarg :score + :initform 'nil +- :type number) ++ :type (or number null)) + (NORMALIZED-SCORE + :accessor normalized-score + :initarg :normalized-score diff --git a/gnu/packages/patches/u-boot-riscv64-fix-extlinux.patch b/gnu/packages/patches/u-boot-riscv64-fix-extlinux.patch index 29dec4f5e9..d6c1987718 100644 --- a/gnu/packages/patches/u-boot-riscv64-fix-extlinux.patch +++ b/gnu/packages/patches/u-boot-riscv64-fix-extlinux.patch @@ -32,9 +32,9 @@ Index: u-boot/configs/sifive_fu540_defconfig =================================================================== --- u-boot.orig/configs/sifive_fu540_defconfig +++ u-boot/configs/sifive_fu540_defconfig -@@ -12,3 +12,5 @@ CONFIG_DISPLAY_BOARDINFO=y - CONFIG_DEFAULT_DEVICE_TREE="hifive-unleashed-a00" - CONFIG_SYS_RELOC_GD_ENV_ADDR=y +@@ -27,3 +27,5 @@ CONFIG_SPL_DM_SEQ_ALIAS=y + CONFIG_SPL_CLK=y CONFIG_DM_MTD=y + CONFIG_DM_RESET=y +CONFIG_USE_PREBOOT=y +CONFIG_PREBOOT="setenv fdt_addr ${fdtcontroladdr}; fdt addr ${fdtcontroladdr};" diff --git a/gnu/packages/patches/ungoogled-chromium-extension-search-path.patch b/gnu/packages/patches/ungoogled-chromium-extension-search-path.patch new file mode 100644 index 0000000000..5ce219ccc7 --- /dev/null +++ b/gnu/packages/patches/ungoogled-chromium-extension-search-path.patch @@ -0,0 +1,28 @@ +Look for extensions in $CHROMIUM_EXTENSION_DIRECTORY instead of +/usr/share/chromium/extensions. + +--- a/chrome/common/chrome_paths.cc ++++ b/chrome/common/chrome_paths.cc +@@ -4,6 +4,7 @@ + + #include "chrome/common/chrome_paths.h" + ++#include "base/environment.h" + #include "base/files/file_util.h" + #include "base/logging.h" + #include "base/native_library.h" +@@ -511,7 +512,13 @@ + #endif + #if defined(OS_LINUX) || defined(OS_CHROMEOS) + case chrome::DIR_STANDALONE_EXTERNAL_EXTENSIONS: { +- cur = base::FilePath(kFilepathSinglePrefExtensions); ++ std::unique_ptr<base::Environment> environment(base::Environment::Create()); ++ std::string extension_dir; ++ if (environment->GetVar("CHROMIUM_EXTENSION_DIRECTORY", &extension_dir)) { ++ cur = base::FilePath(extension_dir); ++ } else { ++ cur = base::FilePath(kFilepathSinglePrefExtensions); ++ } + break; + } + #endif diff --git a/gnu/packages/patches/yggdrasil-extra-config.patch b/gnu/packages/patches/yggdrasil-extra-config.patch new file mode 100644 index 0000000000..c21ca29a84 --- /dev/null +++ b/gnu/packages/patches/yggdrasil-extra-config.patch @@ -0,0 +1,86 @@ +diff --git a/cmd/yggdrasil/main.go b/cmd/yggdrasil/main.go +index 813e950..08d35cc 100644 +--- a/cmd/yggdrasil/main.go ++++ b/cmd/yggdrasil/main.go +@@ -40,11 +40,12 @@ type node struct { + admin module.Module // admin.AdminSocket + } + +-func readConfig(useconf *bool, useconffile *string, normaliseconf *bool) *config.NodeConfig { ++func readConfig(useconf *bool, useconffile *string, extraconffile *string, normaliseconf *bool) *config.NodeConfig { + // Use a configuration file. If -useconf, the configuration will be read + // from stdin. If -useconffile, the configuration will be read from the + // filesystem. + var conf []byte ++ var extraconf []byte + var err error + if *useconffile != "" { + // Read the file from the filesystem +@@ -56,6 +57,21 @@ func readConfig(useconf *bool, useconffile *string, normaliseconf *bool) *config + if err != nil { + panic(err) + } ++ if *extraconffile != "" { ++ extraconf, err = ioutil.ReadFile(*extraconffile); ++ } ++ if err != nil { ++ panic(err) ++ } ++ // Generate a new configuration - this gives us a set of sane defaults - ++ // then parse the configuration we loaded above on top of it. The effect ++ // of this is that any configuration item that is missing from the provided ++ // configuration will use a sane default. ++ cfg := config.GenerateConfig() ++ var confs [2][]byte ++ confs[0]=conf ++ confs[1]=extraconf ++ for _, conf := range confs { if len(conf)>0 { + // If there's a byte order mark - which Windows 10 is now incredibly fond of + // throwing everywhere when it's converting things into UTF-16 for the hell + // of it - remove it and decode back down into UTF-8. This is necessary +@@ -69,11 +85,6 @@ func readConfig(useconf *bool, useconffile *string, normaliseconf *bool) *config + panic(err) + } + } +- // Generate a new configuration - this gives us a set of sane defaults - +- // then parse the configuration we loaded above on top of it. The effect +- // of this is that any configuration item that is missing from the provided +- // configuration will use a sane default. +- cfg := config.GenerateConfig() + var dat map[string]interface{} + if err := hjson.Unmarshal(conf, &dat); err != nil { + panic(err) +@@ -112,6 +123,7 @@ func readConfig(useconf *bool, useconffile *string, normaliseconf *bool) *config + if err = mapstructure.Decode(dat, &cfg); err != nil { + panic(err) + } ++ }} + return cfg + } + +@@ -164,6 +176,7 @@ func main() { + genconf := flag.Bool("genconf", false, "print a new config to stdout") + useconf := flag.Bool("useconf", false, "read HJSON/JSON config from stdin") + useconffile := flag.String("useconffile", "", "read HJSON/JSON config from specified file path") ++ extraconffile := flag.String("extraconffile", "", "extra (usually private) HJSON/JSON config from specified file path") + normaliseconf := flag.Bool("normaliseconf", false, "use in combination with either -useconf or -useconffile, outputs your configuration normalised") + confjson := flag.Bool("json", false, "print configuration from -genconf or -normaliseconf as JSON instead of HJSON") + autoconf := flag.Bool("autoconf", false, "automatic mode (dynamic IP, peer with IPv6 neighbors)") +@@ -187,7 +200,7 @@ func main() { + cfg = config.GenerateConfig() + case *useconffile != "" || *useconf: + // Read the configuration from either stdin or from the filesystem +- cfg = readConfig(useconf, useconffile, normaliseconf) ++ cfg = readConfig(useconf, useconffile, extraconffile, normaliseconf) + // If the -normaliseconf option was specified then remarshal the above + // configuration and print it back to stdout. This lets the user update + // their configuration file with newly mapped names (like above) or to +@@ -332,7 +345,7 @@ func main() { + goto exit + case _ = <-r: + if *useconffile != "" { +- cfg = readConfig(useconf, useconffile, normaliseconf) ++ cfg = readConfig(useconf, useconffile, extraconffile, normaliseconf) + logger.Infoln("Reloading configuration from", *useconffile) + n.core.UpdateConfig(cfg) + n.tuntap.UpdateConfig(cfg) diff --git a/gnu/packages/patchutils.scm b/gnu/packages/patchutils.scm index 12dd472c68..da0f13a01e 100644 --- a/gnu/packages/patchutils.scm +++ b/gnu/packages/patchutils.scm @@ -468,3 +468,57 @@ patches, and displays the patches along with comments and state information. Users can login allowing them to change the state of patches.") (home-page "http://jk.ozlabs.org/projects/patchwork/") (license gpl2+))) + +(define-public pwclient + (package + (name "pwclient") + (version "1.3.0") + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/getpatchwork/pwclient") + (commit version))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "1xckwvcqklzpyh3xs4k2zm40ifp0q5fdkj2vmgb8vhfvl1ivs6jv")))) + (build-system python-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-after 'unpack 'patch-requirements + (lambda _ + (substitute* "test-requirements.txt" + ;; The pytest requirement is unnecessarily strict + (("pytest>=3.0,<5.0;") + "pytest>=3.0,<6.0;")) + #t)) + (add-before 'build 'set-PBR_VERSION + (lambda _ + (setenv "PBR_VERSION" + ,version) + #t)) + (replace 'check + (lambda* (#:key tests? #:allow-other-keys) + (when tests? + (invoke "pytest")) + #t)) + (add-after 'install 'install-man-page + (lambda* (#:key outputs #:allow-other-keys) + (install-file "man/pwclient.1" + (string-append + (assoc-ref outputs "out") + "/share/man/man1")) + #t))))) + (native-inputs + `(("python-pbr" ,python-pbr) + ("python-pytest" ,python-pytest) + ("python-pytest-cov" ,python-pytest-cov) + ("python-mock" ,python-mock))) + (home-page + "https://github.com/getpatchwork/pwclient") + (synopsis "Command-line client for the Patchwork patch tracking tool") + (description + "pwclient is a VCS-agnostic tool for interacting with Patchwork, the +web-based patch tracking system.") + (license gpl2+))) diff --git a/gnu/packages/pdf.scm b/gnu/packages/pdf.scm index c9cce98e7f..1442d3e43b 100644 --- a/gnu/packages/pdf.scm +++ b/gnu/packages/pdf.scm @@ -191,9 +191,7 @@ please install the @code{flyer-composer-gui} package."))) ;; To build poppler-glib (as needed by Evince), we need Cairo and ;; GLib. But of course, that Cairo must not depend on Poppler. - ("cairo" ,(package (inherit cairo) - (inputs (alist-delete "poppler" - (package-inputs cairo))))))) + ("cairo" ,cairo-sans-poppler))) (propagated-inputs ;; As per poppler-cairo and poppler-glib.pc. ;; XXX: Ideally we'd propagate Cairo too, but that would require a @@ -823,7 +821,7 @@ using a stylus.") (define-public xournalpp (package (name "xournalpp") - (version "1.0.18") + (version "1.0.19") (source (origin (method git-fetch) @@ -832,7 +830,7 @@ using a stylus.") (commit version))) (file-name (git-file-name name version)) (sha256 - (base32 "0a9ygbmd4dwgck3k8wsrm2grynqa0adb12wwspzmzvpisbadffjy")))) + (base32 "05nx4cmrka6hwdn7r91yy4h46qpa9k7iy9dkgaq3hrkh9z3fxlkq")))) (build-system cmake-build-system) (arguments `(#:configure-flags (list "-DENABLE_CPPUNIT=ON") ;enable tests diff --git a/gnu/packages/photo.scm b/gnu/packages/photo.scm index dbe18a025a..5ba60502da 100644 --- a/gnu/packages/photo.scm +++ b/gnu/packages/photo.scm @@ -316,7 +316,7 @@ MTP, and much more.") (define-public perl-image-exiftool (package (name "perl-image-exiftool") - (version "11.85") + (version "12.00") (source (origin (method url-fetch) @@ -328,7 +328,7 @@ MTP, and much more.") "Image-ExifTool-" version ".tar.gz"))) (sha256 (base32 - "15zqm0ly2b3paqg0ym44ib2mvh6k18a9q5rvdirwipqa127al2lb")))) + "0nl5djf6hs6brnp7qnqvj3xwhj1qnjwcv35ih4yqp2mm9b4jqyfh")))) (build-system perl-build-system) (arguments '(#:phases diff --git a/gnu/packages/php.scm b/gnu/packages/php.scm index 9e34811969..7abe561e0e 100644 --- a/gnu/packages/php.scm +++ b/gnu/packages/php.scm @@ -60,7 +60,7 @@ (define-public php (package (name "php") - (version "7.4.11") + (version "7.4.12") (home-page "https://secure.php.net/") (source (origin (method url-fetch) @@ -68,7 +68,7 @@ "php-" version ".tar.xz")) (sha256 (base32 - "1knnw9b5hkxmisxclw384ic6bcihihhii51q0fyva8cwkdd6fcax")) + "0xkbx7ykjlkv8p1an342am4j0d633dbf5x1ggmmmy985mp72nbg8")) (modules '((guix build utils))) (snippet '(with-directory-excursion "ext" @@ -218,6 +218,9 @@ ;; count of a sub-directory to increase compared to ;; its parent. "ext/standard/tests/file/lstat_stat_variation8.phpt" + ;; This tests whether microseconds ‘differ enough’ and + ;; fails inconsistently on ‘fast’ machines. + "ext/date/tests/bug73837.phpt" ;; XXX: These gd tests fails. Likely because our version ;; is different from the (patched) bundled one. @@ -312,10 +315,10 @@ "ext/standard/tests/file/bug43008.phpt" ;; Table data not created in sqlite(?). "ext/pdo_sqlite/tests/bug_42589.phpt" - - ;; This tests whether microseconds ‘differ enough’ and - ;; fails inconsistently on ‘fast’ machines. - "ext/date/tests/bug73837.phpt")) + ;; Expects an Array with 3 preg_matches; gets 0. + "ext/pcre/tests/bug79846.phpt" + ;; Expects an empty Array; gets one with " " in it. + "ext/pcre/tests/bug80118.phpt")) ;; Skip tests requiring network access. (setenv "SKIP_ONLINE_TESTS" "1") diff --git a/gnu/packages/prolog.scm b/gnu/packages/prolog.scm index 324b089f4b..9e0fe2a829 100644 --- a/gnu/packages/prolog.scm +++ b/gnu/packages/prolog.scm @@ -86,7 +86,7 @@ manner. It also features an interactive interpreter.") (define-public swi-prolog (package (name "swi-prolog") - (version "8.3.9") + (version "8.3.10") (source (origin (method git-fetch) (uri (git-reference @@ -96,7 +96,7 @@ manner. It also features an interactive interpreter.") (file-name (git-file-name name version)) (sha256 (base32 - "0ixb8pc5s7q8q0njs8is1clpvik6jhhdcwnys7m9rpwdzgi10sjz")))) + "15q40qpxz472lp190zbk0lyap2xgaxzib55l0c3qwgf9haz46j1p")))) (build-system cmake-build-system) (arguments `(#:parallel-build? #t diff --git a/gnu/packages/protobuf.scm b/gnu/packages/protobuf.scm index 4e748e1f1d..b7587230bd 100644 --- a/gnu/packages/protobuf.scm +++ b/gnu/packages/protobuf.scm @@ -276,7 +276,7 @@ mechanism for serializing structured data.") (home-page "https://pypi.org/project/pure-protobuf/") (synopsis "Protobuf implementation using dataclasses") (description - "@code{python-pure-protobuf} allows to take advantage of the standard + "@code{python-pure-protobuf} takes advantage of the standard dataclasses module to define message types. Protocol buffers are a language-neutral, platform-neutral extensible mechanism for serializing structured data.") diff --git a/gnu/packages/python-check.scm b/gnu/packages/python-check.scm index 498f495584..24fe2906f9 100644 --- a/gnu/packages/python-check.scm +++ b/gnu/packages/python-check.scm @@ -868,7 +868,7 @@ variables in the @file{pytest.ini} file.") `(#:tests? #f)) ;the mini test suite fails (home-page "https://github.com/farizrahman4u/pyux") (synopsis "Utility to check API integrity in Python libraries") - (description "The pyux utility allows to detect API changes in Python + (description "The pyux utility detects API changes in Python libraries.") (license license:expat))) diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm index a0770df17d..384caddd6b 100644 --- a/gnu/packages/python-web.scm +++ b/gnu/packages/python-web.scm @@ -30,7 +30,7 @@ ;;; Copyright © 2019 Vagrant Cascadian <vagrant@debian.org> ;;; Copyright © 2019 Brendan Tildesley <mail@brendan.scot> ;;; Copyright © 2019 Pierre Langlois <pierre.langlois@gmx.com> -;;; Copyright © 2019 Tanguy Le Carrour <tanguy@bioneland.org> +;;; Copyright © 2019, 2020 Tanguy Le Carrour <tanguy@bioneland.org> ;;; Copyright © 2020 Jakub Kądziołka <kuba@kadziolka.net> ;;; Copyright © 2020 Evan Straw <evan.straw99@gmail.com> ;;; Copyright © 2020 Alexandros Theodotou <alex@zrythm.org> @@ -429,14 +429,14 @@ other HTTP libraries.") (define-public httpie (package (name "httpie") - (version "2.2.0") + (version "2.3.0") (source (origin (method url-fetch) (uri (pypi-uri "httpie" version)) (sha256 (base32 - "18058k0i3cc4ixvgzj882w693lf40283flvspbrvd876iq42ib1i")))) + "15ngl3yc186gkgqdx8iav9bpj8gxjpzz26y32z92jwyhj4cmfh6m")))) (build-system python-build-system) (arguments ;; The tests attempt to access external web servers, so we cannot run them. @@ -444,8 +444,9 @@ other HTTP libraries.") (propagated-inputs `(("python-colorama" ,python-colorama) ("python-pygments" ,python-pygments) - ("python-requests" ,python-requests))) - (home-page "https://httpie.org/") + ("python-requests" ,python-requests) + ("python-requests-toolbelt" ,python-requests-toolbelt-0.9.1))) + (home-page "https://httpie.io") (synopsis "cURL-like tool for humans") (description "A command line HTTP client with an intuitive UI, JSON support, @@ -5169,3 +5170,30 @@ Encoding for HTTP.") "This module acts as a webbrowser solving Cloudflare's Javascript challenges.") (license license:expat))) + +(define-public python-imap-tools + (package + (name "python-imap-tools") + (version "0.29.0") + (source + (origin + (method url-fetch) + (uri (pypi-uri "imap_tools" version)) + (sha256 + (base32 + "0x122jwpc74wwyw2rsv2fvh6p12y31019ndfr9717jzjkj2d3lhb")))) + (build-system python-build-system) + (arguments '(#:tests? #f)) ; tests require internet access + (home-page "https://github.com/ikvk/imap_tools") + (synopsis "Work with email and mailbox by IMAP") + (description + "This Python library provides tools to deal with email and mailboxes +over IMAP: + +@itemize +@item Parsed email message attributes +@item Query builder for searching emails +@item Work with emails in folders (copy, delete, flag, move, seen) +@item Work with mailbox folders (list, set, get, create, exists, rename, delete, status) +@end itemize") + (license license:asl2.0))) diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index 2a3143b739..7170b867a7 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -87,6 +87,8 @@ ;;; Copyright © 2020 Malte Frank Gerdes <malte.f.gerdes@gmail.com> ;;; Copyright © 2020 Joseph LaFreniere <joseph@lafreniere.xyz> ;;; Copyright © 2020 Tim Gesthuizen <tim.gesthuizen@yahoo.de> +;;; Copyright © 2020 Bonface Munyoki Kilyungi <bonfacemunyoki@gmail.com> +;;; Copyright © 2020 Ekaitz Zarraga <ekaitz@elenq.tech> ;;; ;;; This file is part of GNU Guix. ;;; @@ -956,9 +958,6 @@ to users of that module.") ;; by the Expat license. (license (list license:isc license:expat)))) -(define-public python2-netcdf4 - (package-with-python2 python-netcdf4)) - (define-public python-license-expression (package (name "python-license-expression") @@ -1793,6 +1792,32 @@ human-friendly syntax.") (define-public python2-schedule (package-with-python2 python-schedule)) +(define-public python-scour + (package + (name "python-scour") + (version "038.1") + (source + (origin + (method git-fetch) + (uri + (git-reference + (url "https://github.com/scour-project/scour") + (commit + (string-append "v" version)))) + (file-name (git-file-name name version)) + (sha256 + (base32 "0rgiypb9ig8x4rl3hfzpy7kwnx1q3064nvlrv4fk0dnp84girn0v")))) + (propagated-inputs + `(("python-six" ,python-six))) + (build-system python-build-system) + (home-page "https://github.com/scour-project/scour") + (synopsis "Scour is an SVG optimizer/cleaner written in Python") + (description "The goal of Scour is to output a file that renderes +identically at a fraction of the size by removing a lot of redundant +information created by most SVG editors. Optimization options are typically +lossless but can be tweaked for more aggressive cleaning.") + (license license:asl2.0))) + (define-public python-mechanize (package (name "python-mechanize") @@ -1818,6 +1843,30 @@ after Andy Lester’s Perl module WWW::Mechanize.") (define-public python2-mechanize (package-with-python2 python-mechanize)) +(define-public python-simpleaudio + (package + (name "python-simpleaudio") + (version "1.0.4") + (source + (origin + (method url-fetch) + (uri (pypi-uri "simpleaudio" version)) + (sha256 + (base32 + "07glihg0fpca0gvbbvqs9q815w8xhflzdvg72yvlsm23j9j8h739")))) + (build-system python-build-system) + (arguments + `(#:tests? #f)) + (inputs + `(("alsa-lib" ,alsa-lib))) + (home-page + "https://github.com/hamiltron/py-simple-audio") + (synopsis "Simple, asynchronous audio playback for Python 3") + (description + "The @code{simplaudio} package provides cross-platform, dependency-free +audio playback capability for Python 3 on OSX, Windows, and Linux.") + (license license:expat))) ; MIT license + (define-public python-simplejson (package (name "python-simplejson") @@ -3658,7 +3707,7 @@ ecosystem, but can naturally be used also by other projects.") (define-public python-robotframework (package (name "python-robotframework") - (version "3.1.2") + (version "3.2.2") ;; There are no tests in the PyPI archive. (source (origin @@ -3668,9 +3717,9 @@ ecosystem, but can naturally be used also by other projects.") (commit (string-append "v" version)))) (file-name (git-file-name name version)) (sha256 - (base32 "16gnxy0qinh8fhs0qvhff5z2xh49c3cqgm0d7bfjw120df6x7fym")) + (base32 "0if0h3myb9m3hgmn1phrhq8pfp89kfqsaq32vmfdjkyjdj7y59ds")) (patches (search-patches - "python-robotframework-honor-source-date-epoch.patch")))) + "python-robotframework-source-date-epoch.patch")))) (build-system python-build-system) (arguments `(#:phases (modify-phases %standard-phases @@ -3685,12 +3734,23 @@ ecosystem, but can naturally be used also by other projects.") (string-append doc "/libraries")) #t))) (replace 'check - (lambda _ + (lambda* (#:key inputs #:allow-other-keys) + ;; Some tests require timezone data. Otherwise, they + ;; look up /etc/localtime, which doesn't exist, and fail + ;; with: + ;; + ;; OverflowError: mktime argument out of range + (setenv "TZDIR" + (string-append (assoc-ref inputs "tzdata") + "/share/zoneinfo")) + (setenv "TZ" "Europe/Paris") + (invoke "python" "utest/run.py")))))) (native-inputs `(("python-invoke" ,python-invoke) ("python-rellu" ,python-rellu) - ("python:tk" ,python "tk"))) ;used when building the HTML doc + ("python:tk" ,python "tk") ;used when building the HTML doc + ("tzdata" ,tzdata-for-tests))) (outputs '("out" "doc")) (home-page "https://robotframework.org") (synopsis "Generic automation framework") @@ -3704,11 +3764,12 @@ process automation (RPA).") ;; to the 0.9 stable release available from PyPI. The tests are not ;; included in the PyPI archive, so we fetch the sources from the upstream ;; Git repo. - (let ((commit "e851879bab1f63e4e53b34a4dc8a67ed95102830") - (revision "1")) + (let ((commit "b0619ac58a8b1be125f9c98856a664594614570f") + (revision "0")) (package (name "python-robotframework-lint") - (version (git-version "0.9.0" revision commit)) + (version (git-version "1.1" ;version taken from 'rflint/version.py' + revision commit)) (source (origin (method git-fetch) @@ -3718,7 +3779,7 @@ process automation (RPA).") (file-name (git-file-name name version)) (sha256 (base32 - "1p6fknqg5sb9qz5857ji4a877657vgfjm5v3zn45994parx6ml1m")))) + "180npmvzqync25b2scs878gv8q4y17dsinxyjcc10bw22msfap6b")))) (build-system python-build-system) (arguments `(#:phases @@ -4063,14 +4124,14 @@ matching of file paths.") (define-public python-black (package (name "python-black") - (version "19.10b0") + (version "20.8b1") (source (origin (method url-fetch) (uri (pypi-uri "black" version)) (sha256 (base32 - "0f8mr0yzj78q1dx7v6ggbgfir2wv0n5z2shfbbvfdq7910xbgvf2")))) + "1spv6sldp3mcxr740dh3ywp25lly9s8qlvs946fin44rl1x5a0hw")))) (build-system python-build-system) (arguments `(#:phases @@ -4088,7 +4149,11 @@ matching of file paths.") ""))))) #t)) (add-after 'unpack 'disable-broken-tests - (lambda _ + (lambda* (#:key outputs inputs #:allow-other-keys) + ;; Make installed package available for running the tests + (setenv "PATH" (string-append (assoc-ref outputs "out") "/bin" + ":" (getenv "PATH"))) + ;; These tests are supposed to be skipped when the blackd ;; dependencies are missing, but this doesn't quite work. (substitute* "tests/test_black.py" @@ -4102,15 +4167,21 @@ matching of file paths.") (substitute* "tests/test_black.py" (("( *)def test_self" match indent) (string-append indent "@unittest.skip(\"guix\")\n" match))) + + (substitute* "tests/test_black.py" + (("( *)def test_python38" match indent) + (string-append indent "@unittest.skip(\"guix\")\n" match))) #t))))) (propagated-inputs `(("python-click" ,python-click) ("python-attrs" ,python-attrs) ("python-appdirs" ,python-appdirs) ("python-pathspec" ,python-pathspec) + ("python-mypy-extensions" ,python-mypy-extensions) ("python-regex" ,python-regex) ("python-toml" ,python-toml) - ("python-typed-ast" ,python-typed-ast))) + ("python-typed-ast" ,python-typed-ast) + ("python-typing-extensions" ,python-typing-extensions))) (native-inputs `(("python-setuptools-scm" ,python-setuptools-scm))) (home-page "https://github.com/ambv/black") @@ -14810,13 +14881,13 @@ projects.") (package (name "python-invoke") (home-page "https://www.pyinvoke.org/") - (version "1.3.0") + (version "1.4.1") (source (origin (method url-fetch) (uri (pypi-uri "invoke" version)) (sha256 (base32 - "1nn7gad0rvy492acpyhkrp01zsk86acf34qhsvq4xmm6x39788n5")))) + "0pg1lpl4583z83i12262v72y1a4cxdcxi7vqhl8dpqv9wszj6gyy")))) (build-system python-build-system) (arguments ;; XXX: Requires many dependencies that are not yet in Guix. @@ -16623,6 +16694,44 @@ ignoring formatting changes.") (define-public python2-pydiff (package-with-python2 python-pydiff)) +(define-public python-pydub + (package + (name "python-pydub") + (version "0.24.1") + (source + (origin + (method url-fetch) + (uri (pypi-uri "pydub" version)) + (sha256 + (base32 + "0sfwfq7yjv4bl3yqbmizszscafvwf4zr40hzbsy7rclvzyznh333")))) + (build-system python-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-after 'unpack 'fix-ffmpeg-path + (lambda* (#:key inputs #:allow-other-keys) + (let ((ffmpeg (assoc-ref inputs "ffmpeg"))) + (substitute* '("pydub/utils.py") + (("return \"ffmpeg\"") + (string-append "return \"" ffmpeg "/bin/ffmpeg\"")) + (("return \"ffplay\"") + (string-append "return \"" ffmpeg "/bin/ffplay\"")) + (("return \"ffprobe\"") + (string-append "return \"" ffmpeg "/bin/ffprobe\"")) + (("warn\\(\"Couldn't find ff") "# warn\\(\"Couldn't find ff")) + #t)))))) + (home-page "https://pydub.com") + (inputs + `(("ffmpeg" ,ffmpeg))) + (propagated-inputs + `(("python-scipy" ,python-scipy))) + (synopsis "Manipulate audio with a high level interface in Python") + (description + "@code{pydub} makes it easy to manipulate audio in Python. It relies on +@code{ffmpeg} to open various audio formats.") + (license license:expat))) ; MIT license + (define-public python-tqdm (package (name "python-tqdm") @@ -17357,6 +17466,47 @@ style guide, even if the original code didn't violate the style guide.") (define-public python2-yapf (package-with-python2 python-yapf)) +(define-public python-yq + (package + (name "python-yq") + (version "2.11.1") + (source + (origin + (method url-fetch) + (uri (pypi-uri "yq" version)) + (sha256 + (base32 + "1q4rky0a6n4izmq7slb91a54g8swry1xrbfqxwc8lkd3hhvlxxkl")))) + (build-system python-build-system) + (arguments + '(#:phases + (modify-phases %standard-phases + (add-after 'unpack 'patch + (lambda* (#:key inputs #:allow-other-keys) + (substitute* "yq/__init__.py" + (("Popen\\(\\[\"jq") + (string-append + "Popen([\"" + (assoc-ref inputs "jq") + "/bin/jq"))) + #t))))) + (inputs + `(("python-argcomplete" ,python-argcomplete) + ("python-pyyaml" ,python-pyyaml) + ("python-xmltodict" ,python-xmltodict) + ("jq" ,jq))) + (native-inputs + `(("python-coverage" ,python-coverage) + ("python-flake8" ,python-flake8) + ("python-wheel" ,python-wheel))) + (home-page "https://github.com/kislyuk/yq") + (synopsis "Command-line YAML/XML processor") + (description + "This package provides @command{yq} and @command{xq} for processing YAML +and XML respectively. The processing is done through @{jq}, @command{jq} +filters can be used to process the data as it passes through.") + (license license:asl2.0))) + (define-public python-gyp (let ((commit "5e2b3ddde7cda5eb6bc09a5546a76b00e49d888f") (revision "0")) @@ -21895,7 +22045,7 @@ allows you, from Python code, to “fix” invalid (X)HTML markup.") (build-system python-build-system) (home-page "https://github.com/mattgiles/mujson") (synopsis "Use the fastest JSON functions available at import time") - (description "This packages selects the fastest JSON functions available + (description "This package selects the fastest JSON functions available at import time.") (license license:expat))) @@ -22232,8 +22382,6 @@ It adds a simple and readable way to print stuff during development.") (base32 "1ypbyqxlk7n6zibk90js3ybz37xmin3kk0i35g8c51bwqpcfyxg8")))) (build-system python-build-system) - (inputs - `(("tzdata" ,tzdata))) (propagated-inputs `(("python-dateutil" ,python-dateutil) ("python-pytz" ,python-pytz) @@ -22242,7 +22390,8 @@ It adds a simple and readable way to print stuff during development.") ("python-tzlocal" ,python-tzlocal))) (native-inputs `(("python-mock" ,python-mock) - ("python-parameterized" ,python-parameterized))) + ("python-parameterized" ,python-parameterized) + ("tzdata" ,tzdata-for-tests))) (arguments `(;; TODO: Of 23320 tests, 6 fail and 53 error. #:tests? #f @@ -22504,3 +22653,33 @@ NestedText is both simple and natural. Only a small number of concepts and rule be kept in mind when creating it. It is easily created, modified, or viewed with a text editor and easily understood and used by both programmers and non-programmers.") (license license:expat))) ; MIT license + +(define-public python-parallel + (package + (name "python-parallel") + (version "1.6.4.4") + (source + (origin + (method url-fetch) + (uri (string-append + "https://www.parallelpython.com/downloads/pp/pp-" + version ".zip")) + (sha256 + (base32 + "1mzk4yabxj6r149fswhis18hd8dnag5sj8i4wb06450zq3pi8dh7")))) + (native-inputs + `(("unzip" ,unzip))) + (build-system python-build-system) + (arguments '(#:tests? #f)) ; No test suite. + (home-page "https://www.parallelpython.com") + (synopsis "Parallel and distributed programming for Python") + (description "Parallel Python module (PP) provides an easy and efficient +way to create parallel-enabled applications for SMP computers and clusters. +PP module features cross-platform portability and dynamic load balancing. +Thus applications written with PP will parallelize efficiently even on +heterogeneous and multi-platform clusters (including clusters running other +applications with variable CPU loads).") + (license license:bsd-3))) + +(define-public python2-parallel + (package-with-python2 python-parallel)) diff --git a/gnu/packages/python.scm b/gnu/packages/python.scm index 8f2651decf..43704bccae 100644 --- a/gnu/packages/python.scm +++ b/gnu/packages/python.scm @@ -395,7 +395,39 @@ data types.") " --exclude test_mmap" ;; test_socket may hang and eventually run out of memory ;; on some systems: <https://bugs.python.org/issue34587>. - " test_socket"))) + " test_socket" + ,@(if (hurd-target?) + '(" test_posix" ;multiple errors + " test_time" + " test_pty" + " test_shutil" + " test_tempfile" ;chflags: invalid argument: + ; tbv14c9t/dir0/dir0/dir0/test0.txt + " test_asyncio" ;runs over 10min + " test_os" ;stty: 'standard input': + ; Inappropriate ioctl for device + " test_openpty" ;No such file or directory + " test_selectors" ;assertEqual(NUM_FDS // 2, len(fds)) + ; 32752 != 4 + " test_compileall" ;multiple errors + " test_poll" ;list index out of range + " test_subprocess" ;runs over 10min + " test_asyncore" ;multiple errors + " test_threadsignals" + " test_eintr" ;Process return code is -14 + " test_io" ;multiple errors + " test_logging" + " test_signal" + " test_threading" ;runs over 10min + " test_flags" ;ERROR + " test_bidirectional_pty" + " test_create_unix_connection" + " test_unix_sock_client_ops" + " test_open_unix_connection" + " test_open_unix_connection_error" + " test_read_pty_output" + " test_write_pty") + '())))) ((#:phases phases) `(modify-phases ,phases ,@(if (hurd-system?) diff --git a/gnu/packages/radio.scm b/gnu/packages/radio.scm index a8f57b6c17..f54a8aae6f 100644 --- a/gnu/packages/radio.scm +++ b/gnu/packages/radio.scm @@ -538,7 +538,7 @@ to the fix block above. (define-public gqrx (package (name "gqrx") - (version "2.12.1") + (version "2.13.3") (source (origin (method git-fetch) @@ -547,7 +547,7 @@ to the fix block above. (commit (string-append "v" version)))) (file-name (git-file-name name version)) (sha256 - (base32 "00alf3q6y313xpx6p7v43vqsphd2x4am4q362lw21bcy9wc4jidw")))) + (base32 "0awj5wzq0p677my0065rpqkmfl3jc0bjdrnip8715z8031cd923n")))) (build-system qt-build-system) (native-inputs `(("pkg-config" ,pkg-config))) @@ -577,14 +577,14 @@ using GNU Radio and the Qt GUI toolkit.") (define-public fldigi (package (name "fldigi") - (version "4.1.14") + (version "4.1.15") (source (origin (method url-fetch) (uri (string-append "http://www.w1hkj.com/files/fldigi/fldigi-" version ".tar.gz")) (sha256 - (base32 "0hr6xbv01xf7z4r2jxxhn8xjdmca2198q4m9glh4877dllvfq6xj")))) + (base32 "1fzbcv2dgg6byb2l8m2d6i69yn0a44pq52mpmms756jdf6z622i6")))) (build-system gnu-build-system) (native-inputs `(("pkg-config" ,pkg-config))) @@ -1015,7 +1015,7 @@ gain and standing wave ratio.") (define-public dump1090 (package (name "dump1090") - (version "3.8.1") + (version "4.0") (source (origin (method git-fetch) @@ -1024,7 +1024,7 @@ gain and standing wave ratio.") (commit (string-append "v" version)))) (file-name (git-file-name name version)) (sha256 - (base32 "0xg8rzrxqklx1m9ncxsd96dlkbjcsxfi2mrb859v50f07xysdyd8")))) + (base32 "1zacsqaqsiapljhzw31dwc4nld2rp98jm3ivkyznrhzk9n156p42")))) (build-system gnu-build-system) (native-inputs `(("pkg-config" ,pkg-config))) @@ -1052,7 +1052,7 @@ gain and standing wave ratio.") It can be used to decode the ADS-B signals that planes emit to indicate their position, altitude, speed, etc.") (home-page "https://github.com/flightaware/dump1090") - (license license:bsd-3))) + (license license:gpl2+))) (define-public rtl-433 (package diff --git a/gnu/packages/raspberry-pi.scm b/gnu/packages/raspberry-pi.scm new file mode 100644 index 0000000000..7700c26d06 --- /dev/null +++ b/gnu/packages/raspberry-pi.scm @@ -0,0 +1,237 @@ +;;; GNU Guix --- Functional package management for GNU +;;; Copyright © 2020 Danny Milosavljevic <dannym@scratchpost.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 raspberry-pi) + #:use-module (gnu packages) + #:use-module (gnu packages admin) + #:use-module (gnu packages algebra) + #:use-module (gnu packages base) + #:use-module (gnu packages bash) + #:use-module (gnu packages commencement) + #:use-module (gnu packages cross-base) + #:use-module (gnu packages documentation) + #:use-module (gnu packages file) + #:use-module (gnu packages gcc) + #:use-module (gnu packages embedded) + #:use-module (guix build-system gnu) + #:use-module (guix download) + #:use-module (guix git-download) + #:use-module ((guix licenses) #:prefix license:) + #:use-module (guix packages) + #:use-module (guix gexp) + #:use-module (guix store) + #:use-module (guix monads) + #:use-module (guix utils) + #:use-module (srfi srfi-1) + #:use-module (srfi srfi-2) + #:use-module (srfi srfi-26) + #:use-module (ice-9 match)) + +(define-public bcm2835 + (package + (name "bcm2835") + (version "1.64") + (source (origin + (method url-fetch) + (uri (string-append + "http://www.airspayce.com/mikem/bcm2835/bcm2835-" + version ".tar.gz")) + (sha256 + (base32 + "06s81540iz4vsh0cm6jwah2x0hih79v42pfa4pgr8kcbv56158h6")))) + (build-system gnu-build-system) + (arguments + `(#:tests? #f)) ; Would need to be root + ;; doc/html docs would not be installed anyway. + ;(native-inputs + ; `(("doxygen", doxygen))) + (synopsis "C library for Broadcom BCM 2835 as used in Raspberry Pi") + (description "This package provides a C library for Broadcom BCM 2835 as +used in the Raspberry Pi") + (home-page "http://www.airspayce.com/mikem/bcm2835/") + (supported-systems '("armhf-linux" "aarch64-linux")) + (license license:gpl3))) + +(define raspi-gpio + (let ((commit "6d0769ac04760b6e9f33b4aa1f11c682237bf368") + (revision "1")) + (package + (name "raspi-gpio") + (version (git-version "0.1" revision commit)) + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/RPi-Distro/raspi-gpio.git") + (commit commit))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "1fia1ma586hwhpda0jz86j6i55andq0wncbhzhzvhf7yc773cpi4")))) + (build-system gnu-build-system) + (synopsis "State dumper for BCM270x GPIOs") + (description "Tool to help debug / hack at the BCM283x GPIO. You can dump + the state of a GPIO or (all GPIOs). You can change a GPIO mode and pulls (and + level if set as an output). Beware this tool writes directly to the BCM283x + GPIO reisters, ignoring anything else that may be using them (like Linux + drivers).") + (home-page "https://github.com/RPi-Distro/raspi-gpio") + (supported-systems '("armhf-linux" "aarch64-linux")) + (license license:bsd-3)))) + +(define %rpi-open-firmware-version "0.1") +(define %rpi-open-firmware-origin + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/librerpi/rpi-open-firmware.git") + (commit "6be45466e0be437a1b0b3512a86f3d9627217006"))) + (file-name "rpi-open-firmware-checkout") + (sha256 + (base32 "1wyxvv62i3rjicg4hd94pzbgpadinnrgs27sk39md706mm0qixbh")))) + +(define-public raspi-arm-chainloader + (package + (name "raspi-arm-chainloader") + (version %rpi-open-firmware-version) + (source %rpi-open-firmware-origin) + (build-system gnu-build-system) + (arguments + `(#:tests? #f ; No tests exist + #:phases + (modify-phases %standard-phases + (delete 'configure) + (add-before 'build 'setenv + (lambda _ + (setenv "CC" "arm-none-eabi-gcc") + (setenv "CXX" "arm-none-eabi-g++") + (setenv "AS" "arm-none-eabi-as") + (setenv "OBJCOPY" "arm-none-eabi-objcopy") + (setenv "BAREMETAL" "1") + #t)) + (add-after 'setenv 'build-tlsf + (lambda _ + (with-directory-excursion "tlsf" + ;; Note: Adding "-I../common -I../notc/include". + (invoke "make" + "CFLAGS=-mtune=arm1176jzf-s -march=armv6zk -mfpu=vfp -mfloat-abi=softfp -I../common -I../notc/include")))) + (add-after 'build-tlsf 'build-common + (lambda _ + (with-directory-excursion "common" + (invoke "make" + ;; Note: Adding "-I.. -I../notc/include". + "ARMCFLAGS=-mtune=arm1176jzf-s -march=armv6zk -marm -I.. -I../notc/include")))) + (add-after 'build-common 'build-notc + (lambda _ + (with-directory-excursion "notc" + (invoke "make")))) + (add-after 'build-notc 'chdir + (lambda _ + (chdir "arm_chainloader") + (substitute* "Makefile" + (("-I[.][.]/") + "-I../common -I../common/include -I../notc/include -I../") + (("-ltlsf") + "-L../common -L../notc -L../tlsf -ltlsf")) + #t)) + (replace 'install + (lambda* (#:key outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (libexec (string-append out "/libexec"))) + (mkdir-p libexec) + (install-file "build/arm_chainloader.elf" libexec) + (install-file "build/arm_chainloader.map" libexec) + (install-file "build/arm_chainloader.bin" libexec) + #t)))))) + (native-inputs + `(("binutils" ,(cross-binutils "arm-none-eabi")) + ("gcc" ,gcc-arm-none-eabi-6))) + (inputs + `()) + (synopsis "Raspberry Pi ARM bootloader") + (description "This package provides a bootloader for the ARM part of a +Raspberry Pi. Note: It does not work on Raspberry Pi 1.") + (home-page "https://github.com/librerpi/rpi-open-firmware/") + (license license:gpl2+))) + +(define-public raspi-arm64-chainloader + (package + (inherit raspi-arm-chainloader) + (name "raspi-arm64-chainloader") + ;; These native-inputs especially don't contain a libc. + (native-inputs + `(("bash" ,bash) + ("binutils" ,binutils) + ("coreutils" ,coreutils) + ("file" ,file) + ("ld-wrapper" ,ld-wrapper) + ("make" ,gnu-make) + ("gcc" ,gcc-6) + ("locales" ,glibc-utf8-locales))) + (inputs + `()) + (arguments + `(#:implicit-inputs? #f + ,@(substitute-keyword-arguments (package-arguments raspi-arm-chainloader) + ((#:phases phases) + `(modify-phases ,phases + (replace 'setenv + (lambda _ + (setenv "AS" "as") ; TODO: as-for-target + (setenv "OBJCOPY" "objcopy") + (setenv "CC" ,(cc-for-target)) + (setenv "CXX" ,(cc-for-target)) + (setenv "BAREMETAL" "1") + #t)) + (add-after 'setenv 'build-tlsf + (lambda _ + (with-directory-excursion "tlsf" + (invoke "make" + "CFLAGS=-I../common -I../notc/include")))) + (replace 'build-common + (lambda _ + (with-directory-excursion "common" + ;; Autodetection uses the CC filename for detecting the architecture. + ;; Since we are not using a cross-compiler, we side-step that. + (invoke "make" + "CFLAGS=-Ilib -I. -Iinclude -ffunction-sections -Wall -g -nostdlib -nostartfiles -ffreestanding -DBAREMETAL")))) + (replace 'build-notc + (lambda _ + (with-directory-excursion "notc" + ;; Autodetection uses the CC filename for detecting the architecture. + ;; Since we are not using a cross-compiler, we side-step that. + (invoke "make" + "CFLAGS=-Iinclude -g")))) + (replace 'chdir + (lambda _ + (chdir "arm64") + (substitute* "Makefile" + (("CFLAGS =") + "CFLAGS = -I../common -I../common/include -I../notc/include -I.. -DBAREMETAL") + (("-lcommon") + "-L../common -L../notc -lcommon")) + #t)) + (replace 'install + (lambda* (#:key outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (libexec (string-append out "/libexec"))) + (mkdir-p libexec) + (install-file "arm64.elf" libexec) + (install-file "arm64.map" libexec) + (install-file "arm64.bin" libexec) + #t)))))))) + (supported-systems '("aarch64-linux")))) diff --git a/gnu/packages/ruby.scm b/gnu/packages/ruby.scm index cd452f88d3..2bef683b4a 100644 --- a/gnu/packages/ruby.scm +++ b/gnu/packages/ruby.scm @@ -147,16 +147,16 @@ a focus on simplicity and productivity.") (define-public ruby-2.7 (package (inherit ruby) - (version "2.7.1") + (version "2.7.2") (source (origin (method url-fetch) - (uri (string-append "http://cache.ruby-lang.org/pub/ruby/" + (uri (string-append "https://cache.ruby-lang.org/pub/ruby/" (version-major+minor version) "/ruby-" version ".tar.gz")) (sha256 (base32 - "0674x98f542y02r7n2yv2qhmh97blqhi2mvh2dn5f000vlxlh66l")) + "1m63461mxi3fg4y3bspbgmb0ckbbb1ldgf9xi0piwkpfsk80cmvf")) (modules '((guix build utils))) (snippet `(begin ;; Remove bundled libffi @@ -2416,7 +2416,9 @@ extensions.") (arguments '(#:tests? #f ; test suite hangs for unknown reason #:gem-flags - (list "--" + (list "--no-document" ; TODO: Re-enable when documentation + ; generation works + "--" (string-append "--with-xml2-include=" (assoc-ref %build-inputs "libxml2") "/include/libxml2" )))) @@ -3847,6 +3849,10 @@ as a base class when writing classes that depend upon (base32 "1r19ifc4skyl2gxnifrxa5jvbbay9fb2in79ppgv02b6n4bhsw90")))) (build-system ruby-build-system) + (arguments + ;; The test suite fails (see: + ;; https://github.com/cldwalker/bond/issues/46). + `(#:tests? #f)) (native-inputs `(("ruby-bacon" ,ruby-bacon) ("ruby-bacon-bits" ,ruby-bacon-bits) @@ -4518,6 +4524,29 @@ reporter.") (home-page "https://blowmage.com/minitest-rg/") (license license:expat))) +(define-public ruby-minitest-global-expectations + (package + (name "ruby-minitest-global-expectations") + (version "1.0.1") + (source + (origin + (method url-fetch) + (uri (rubygems-uri "minitest-global_expectations" + version)) + (sha256 + (base32 + "1pp3k2608spj4kvqy2y16hs18an917g6vwgvphrfhjviac83090x")))) + (build-system ruby-build-system) + (propagated-inputs + `(("ruby-minitest" ,ruby-minitest))) + (synopsis "Adjust minitest behaviour for calling expectation methods") + (description + "Minitest-global_expectations allows continued use of expectation methods +on all objects. Calling expectation methods on all objects was deprecated in +minitest 5.12, and is planned to be removed from minitest 6.") + (home-page "https://github.com/jeremyevans/minitest-global_expectations") + (license license:expat))) + (define-public ruby-minitest-hooks (package (name "ruby-minitest-hooks") diff --git a/gnu/packages/samba.scm b/gnu/packages/samba.scm index 76a9c01866..55981da463 100644 --- a/gnu/packages/samba.scm +++ b/gnu/packages/samba.scm @@ -9,6 +9,7 @@ ;;; Copyright © 2018 Ricardo Wurmus <rekado@elephly.net> ;;; Copyright © 2019 Rutger Helling <rhelling@mykolab.com> ;;; Copyright © 2020 Pierre Langlois <pierre.langlois@gmx.com> +;;; Copyright © 2020 Maxim Cournoyer <maxim.cournoyer@gmail.com> ;;; ;;; This file is part of GNU Guix. ;;; @@ -43,6 +44,8 @@ #:use-module (gnu packages cups) #:use-module (gnu packages databases) #:use-module (gnu packages docbook) + #:use-module (gnu packages glib) + #:use-module (gnu packages gnome) #:use-module (gnu packages gnupg) #:use-module (gnu packages kerberos) #:use-module (gnu packages linux) @@ -175,69 +178,77 @@ external dependencies.") (define-public samba (package (name "samba") - (version "4.12.7") + (version "4.13.2") (source (origin (method url-fetch) (uri (string-append "https://download.samba.org/pub/samba/stable/" "samba-" version ".tar.gz")) (sha256 - (base32 "1lkgih0vrarf5zy6chspkwarqdylzwr63nxr3qjkpazrs86nlm9h")) + (base32 "1d7j79c8aggwiv90y2q1yz63d9p5n4paq0fsbdvqpn05d8wn8r17")) (patches (search-patches "samba-fix-fcntl-hint-detection.patch")) (modules '((guix build utils))) (snippet '(begin - ;; TODO: also remove the bundled ‘third_party/popt’. + ;; XXX: Some bundled libraries (e.g, popt, cmocka) are used from + ;; the system, but their bundled sources must be kept as they + ;; include the WAF scripts used for detecting them. (delete-file-recursively "third_party/pyiso8601") #t)))) (build-system gnu-build-system) (arguments - `(#:phases + `(#:make-flags '("TEST_OPTIONS=--quick") ;some tests are very long + #:phases (modify-phases %standard-phases - (add-before 'configure 'locate-docbook-stylesheets + (add-before 'configure 'setup-docbook-stylesheets (lambda* (#:key inputs #:allow-other-keys) - ;; XXX for some reason XML_CATALOG_FILES is not respected. - (substitute* '("buildtools/wafsamba/samba_conftests.py" - "buildtools/wafsamba/wafsamba.py" - "docs-xml/xslt/man.xsl") - (("http://docbook.sourceforge.net/release/xsl/current/") - (string-append (assoc-ref inputs "docbook-xsl") - "/xml/xsl/docbook-xsl-" - ,(package-version docbook-xsl) "/"))) + ;; Append Samba's own DTDs to XML_CATALOG_FILES + ;; (c.f. docs-xml/build/README). + (copy-file "docs-xml/build/catalog.xml.in" + "docs-xml/build/catalog.xml") + (substitute* "docs-xml/build/catalog.xml" + (("/@abs_top_srcdir@") + (string-append (getcwd) "/docs-xml"))) + ;; Honor XML_CATALOG_FILES. + (substitute* "buildtools/wafsamba/wafsamba.py" + (("XML_CATALOG_FILES=\"\\$\\{SAMBA_CATALOGS\\}" all) + (string-append all " $XML_CATALOG_FILES"))) #t)) (replace 'configure - ;; samba uses a custom configuration script that runs waf. + ;; Samba uses a custom configuration script that runs WAF. (lambda* (#:key outputs #:allow-other-keys) (let* ((out (assoc-ref outputs "out")) (libdir (string-append out "/lib"))) (invoke "./configure" + "--enable-selftest" "--enable-fhs" - ;; XXX: heimdal not packaged. - "--bundled-libraries=com_err" (string-append "--prefix=" out) "--sysconfdir=/etc" + "--localstatedir=/var" ;; Install public and private libraries into ;; a single directory to avoid RPATH issues. (string-append "--libdir=" libdir) (string-append "--with-privatelibdir=" libdir))))) - (add-before 'install 'disable-etc-samba-directory-creation + (add-before 'install 'disable-etc,var-samba-directories-setup (lambda _ (substitute* "dynconfig/wscript" - (("bld\\.INSTALL_DIR\\(\"\\$\\{CONFIGDIR\\}\"\\)") - "")) + (("bld\\.INSTALL_DIR.*") "")) #t))) - ;; XXX: The test infrastructure attempts to set password with - ;; smbpasswd, which fails with "smbpasswd -L can only be used by root." - ;; So disable tests until there's a workaround. + ;; FIXME: The test suite seemingly hangs after failing to provision the + ;; test environment. #:tests? #f)) - (inputs ; TODO: Add missing dependencies + (inputs `(("acl" ,acl) + ("cmocka" ,cmocka) ("cups" ,cups) - ;; ("gamin" ,gamin) + ("gamin" ,gamin) + ("dbus", dbus) ("gpgme" ,gpgme) ("gnutls" ,gnutls) + ("heimdal" ,heimdal) ("jansson" ,jansson) ("libarchive" ,libarchive) + ("libtirpc" ,libtirpc) ("linux-pam" ,linux-pam) ("lmdb" ,lmdb) ("openldap" ,openldap) @@ -256,11 +267,11 @@ external dependencies.") ("pkg-config" ,pkg-config) ("python-iso8601" ,python-iso8601) ("rpcsvc-proto" ,rpcsvc-proto) ; for 'rpcgen' - ;; For generating man pages. ("docbook-xml" ,docbook-xml-4.2) ("docbook-xsl" ,docbook-xsl) - ("xsltproc" ,libxslt))) + ("xsltproc" ,libxslt) + ("libxml2", libxml2))) ;for XML_CATALOG_FILES (home-page "https://www.samba.org/") (synopsis "The standard Windows interoperability suite of programs for GNU and Unix") diff --git a/gnu/packages/scheme.scm b/gnu/packages/scheme.scm index f787b5e0f8..1327d8b539 100644 --- a/gnu/packages/scheme.scm +++ b/gnu/packages/scheme.scm @@ -815,14 +815,14 @@ linked with a SCM executable.") (define-public tinyscheme (package (name "tinyscheme") - (version "1.41") + (version "1.42") (source (origin (method url-fetch) (uri (string-append "mirror://sourceforge/" name "/" name "/" name "-" version "/" name "-" version ".zip")) (sha256 (base32 - "0yqma4jrjgj95f3hf30h542x97n8ah234n19yklbqq0phfsa08wf")))) + "0rik3qnxqd8wjlazx8rw996pfzkjjg60v6hcbpcqzi7rgml8q4n8")))) (build-system gnu-build-system) (native-inputs `(("unzip" ,unzip))) diff --git a/gnu/packages/shells.scm b/gnu/packages/shells.scm index 9e400eb27e..cd10dd3872 100644 --- a/gnu/packages/shells.scm +++ b/gnu/packages/shells.scm @@ -513,13 +513,13 @@ ksh, and tcsh.") (define-public xonsh (package (name "xonsh") - (version "0.9.23") + (version "0.9.24") (source (origin (method url-fetch) (uri (pypi-uri "xonsh" version)) (sha256 - (base32 "165lx37kibsm56srg9rj7s950b0p7g4g8qhs2iikbcyinp303g35")) + (base32 "00nwbagsl8qrs7m40lb0yi5dhvippj387bpnjg6w7r9cvfbj2h7m")) (modules '((guix build utils))) (snippet `(begin @@ -814,14 +814,14 @@ Shell (pdksh).") (define-public oil (package (name "oil") - (version "0.8.2") + (version "0.8.3") (source (origin (method url-fetch) (uri (string-append "https://www.oilshell.org/download/oil-" version ".tar.gz")) (sha256 - (base32 "1m49darrs38x60zqi3sy1mh4a47qvwcyf7djrkzqwzwxsczxybgr")))) + (base32 "14j0qjh92b16xxaj0f0k71y8wkbz6nmgx0yin2q7xrzqk8hzqgj6")))) (build-system gnu-build-system) (arguments `(#:strip-binaries? #f ; strip breaks the binary diff --git a/gnu/packages/skribilo.scm b/gnu/packages/skribilo.scm index 6bfed916de..e5d764ae28 100644 --- a/gnu/packages/skribilo.scm +++ b/gnu/packages/skribilo.scm @@ -20,6 +20,7 @@ #:use-module (guix packages) #:use-module (guix download) #:use-module (guix licenses) + #:use-module ((guix utils) #:select (version-major+minor)) #:use-module (guix build-system gnu) #:use-module (gnu packages guile) #:use-module (gnu packages guile-xyz) @@ -32,30 +33,35 @@ (define-public skribilo (package (name "skribilo") - (version "0.9.4") + (version "0.9.5") (source (origin (method url-fetch) (uri (string-append "mirror://savannah/skribilo/skribilo-" version ".tar.gz")) (sha256 (base32 - "06ywnfjfa9sxrzdszb5sryzg266380g519cm64kq62sskzl7zmnf")))) + "02dzy2imqgfmwda4d1r51205si4c0r4fp2gf22sb0kv3qhhnm0h0")))) (build-system gnu-build-system) (arguments ;; Make the modules available under the usual location. - '(#:phases + `(#:phases (modify-phases %standard-phases (add-before 'configure 'pre-configure (lambda* (#:key inputs #:allow-other-keys) ;; Make sure the 'skribilo' command gets to see ;; Guile-Reader, even if Guile-Reader is not in the search ;; path. - (let ((reader (assoc-ref inputs "guile-reader"))) + (let ((reader (assoc-ref inputs "guile-reader")) + (effective ,(version-major+minor + (package-version + (car (assoc-ref (package-inputs this-package) + "guile")))))) (substitute* "src/skribilo.in" (("^exec (.*) -c" _ things) (string-append "exec " things - " -L " reader "/share/guile/site/2.2" - " -C " reader "/lib/guile/2.2/site-ccache" + " -L " reader "/share/guile/site/" effective + " -C " reader + "/lib/guile/" effective "/site-ccache" " -c")))) #t))) @@ -63,7 +69,7 @@ (native-inputs `(("pkg-config" ,pkg-config))) - (inputs `(("guile" ,guile-2.2) + (inputs `(("guile" ,guile-3.0) ("imagemagick" ,imagemagick) ("ghostscript" ,ghostscript) ; for 'convert' ("ploticus" ,ploticus) @@ -71,8 +77,8 @@ ;; The 'skribilo' command needs them, and for people using Skribilo as a ;; library, these inputs are needed as well. - (propagated-inputs `(("guile-reader" ,guile2.2-reader) - ("guile-lib" ,guile2.2-lib))) + (propagated-inputs `(("guile-reader" ,guile-reader) + ("guile-lib" ,guile-lib))) (home-page "https://www.nongnu.org/skribilo/") (synopsis "Document production tool written in Guile Scheme") diff --git a/gnu/packages/sphinx.scm b/gnu/packages/sphinx.scm index 5ba9594135..12d739c384 100644 --- a/gnu/packages/sphinx.scm +++ b/gnu/packages/sphinx.scm @@ -533,14 +533,13 @@ to be able to read and render the Doxygen xml output.") (define-public python-sphinx-intl (package (name "python-sphinx-intl") - (version "2.0.0") + (version "2.0.1") (source (origin (method url-fetch) (uri (pypi-uri "sphinx-intl" version)) (sha256 - (base32 - "0zbf1bh23b3kza8bnjykmv2k21xmmr4gamhi3lnicnr6ypnrphr5")))) + (base32 "1d1q0sanjp4nkfvhsxi75zf3xjyyi8nzxvl3v7l0jy9ld70nwnmj")))) (build-system python-build-system) (propagated-inputs `(("python-sphinx" ,python-sphinx) diff --git a/gnu/packages/spice.scm b/gnu/packages/spice.scm index 2fb587aa7a..6de99aec86 100644 --- a/gnu/packages/spice.scm +++ b/gnu/packages/spice.scm @@ -369,6 +369,7 @@ share smart cards from client system to local or remote virtual machines.") (build-system gnu-build-system) (inputs `(("gtk+" ,gtk+) + ("gtk-vnc" ,gtk-vnc) ("libcap" ,libcap) ("libxml2" ,libxml2) ("spice-gtk" ,spice-gtk))) diff --git a/gnu/packages/ssh.scm b/gnu/packages/ssh.scm index ca99235a01..9f60b3c02e 100644 --- a/gnu/packages/ssh.scm +++ b/gnu/packages/ssh.scm @@ -520,7 +520,7 @@ TCP, not the SSH protocol.") (define-public dropbear (package (name "dropbear") - (version "2020.80") + (version "2020.81") (source (origin (method url-fetch) @@ -528,7 +528,7 @@ TCP, not the SSH protocol.") "https://matt.ucc.asn.au/dropbear/releases/" "dropbear-" version ".tar.bz2")) (sha256 - (base32 "0jbrbpdzyv11x5rkljdimzq9p6a7da5siw9k405ibnpjj4dr89yr")))) + (base32 "0fy5ma4cfc2pk25mcccc67b2mf1rnb2c06ilb7ddnxbpnc85s8s8")))) (build-system gnu-build-system) (arguments `(#:tests? #f)) ; there is no "make check" or anything similar ;; TODO: Investigate unbundling libtommath and libtomcrypt or at least @@ -793,6 +793,45 @@ dynamically loadable modules for extended functionality such as new remote shell services and remote host selection.") (license license:gpl2+))) +(define-public python-asyncssh + (package + (name "python-asyncssh") + (version "2.3.0") + (source + (origin + (method url-fetch) + (uri (pypi-uri "asyncssh" version)) + (sha256 + (base32 + "0pi6npmsgx7l9r1qrfvg8mxx3i23ipff492xz4yhrw13f56a7ga4")))) + (build-system python-build-system) + (propagated-inputs + `(("python-cryptography" ,python-cryptography) + ("python-pyopenssl" ,python-pyopenssl) + ("python-gssapi" ,python-gssapi) + ("python-bcrypt" ,python-bcrypt))) + (native-inputs + `(("openssh" ,openssh) + ("openssl" ,openssl))) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-after 'unpack 'disable-tests + (lambda* _ + (substitute* "tests/test_agent.py" + ;; TODO Test fails for unknown reason + (("(.+)async def test_confirm" all indent) + (string-append indent "@unittest.skip('disabled by guix')\n" + indent "async def test_confirm"))) + #t))))) + (home-page "https://asyncssh.readthedocs.io/") + (synopsis "Asynchronous SSHv2 client and server library for Python") + (description + "AsyncSSH is a Python package which provides an asynchronous client and +server implementation of the SSHv2 protocol on top of the Python 3.6+ asyncio +framework.") + (license license:epl2.0))) + (define-public clustershell (package (name "clustershell") diff --git a/gnu/packages/statistics.scm b/gnu/packages/statistics.scm index 71ff921c62..314a11e429 100644 --- a/gnu/packages/statistics.scm +++ b/gnu/packages/statistics.scm @@ -184,7 +184,7 @@ This package also provides @command{xls2csv} to export Excel files to CSV.") (define r-with-tests (package (name "r-with-tests") - (version "4.0.2") + (version "4.0.3") (source (origin (method url-fetch) (uri (string-append "mirror://cran/src/base/R-" @@ -192,7 +192,7 @@ This package also provides @command{xls2csv} to export Excel files to CSV.") version ".tar.gz")) (sha256 (base32 - "0xdy3dy2bzdiba8z94hjykyra8si8a5q15s0bri7c26scjrymg6k")))) + "03cypg2qf7v9mq9mr9alz9w5y9m5kdgwbc97bp26pyymg253m609")))) (build-system gnu-build-system) (arguments `(#:disallowed-references (,tzdata-for-tests) @@ -269,6 +269,15 @@ as.POSIXct(if (\"\" != Sys.getenv(\"SOURCE_DATE_EPOCH\")) {\ (substitute* "tools/help2man.pl" (("my \\$date = strftime \"%B %Y\", localtime" line) (string-append line " 1")))) + + ;; The "References" section of this file when converted to + ;; package.rds is sometimes stored with a newline, sometimes with + ;; a space. We avoid this problem by adding characters to break + ;; up the series of line break and spaces that is suspected to be + ;; the culprit. + (substitute* "src/library/methods/DESCRIPTION.in" + ((" ``Software") + " -- ``Software")) #t)) (add-before 'build 'set-locales (lambda _ @@ -533,14 +542,14 @@ for reading and writing some dBase files.") (define-public r-kernsmooth (package (name "r-kernsmooth") - (version "2.23-17") + (version "2.23-18") (source (origin (method url-fetch) (uri (cran-uri "KernSmooth" version)) (sha256 (base32 - "11g6b0q67vasxag6v9m4px33qqxpmnx47c73yv1dninv2pz76g9b")))) + "14640ddvxmczd5xjg1xsd51gll2glfg946vks8wmac6jb8680d43")))) (properties `((upstream-name . "KernSmooth"))) (build-system r-build-system) (native-inputs @@ -599,13 +608,13 @@ and operations on them using LAPACK and SuiteSparse.") (define-public r-nlme (package (name "r-nlme") - (version "3.1-149") + (version "3.1-150") (source (origin (method url-fetch) (uri (cran-uri "nlme" version)) (sha256 - (base32 "16n39v36hdp5vy3s3xqgs6ai0vgzx6j2py7ghpljdahndbqn6qn9")))) + (base32 "18qmbzrmrham8hbdlzsca7w46c5iqighx1ymzggll5s86c4s7kvr")))) (build-system r-build-system) (propagated-inputs `(("r-lattice" ,r-lattice))) @@ -815,13 +824,13 @@ effects of different types of color-blindness.") (define-public r-digest (package (name "r-digest") - (version "0.6.25") + (version "0.6.27") (source (origin (method url-fetch) (uri (cran-uri "digest" version)) (sha256 - (base32 "1r9dkq0kxkps54gkmgcdngsd068p054va2vhnqhs5jmwp2vsvk0m")))) + (base32 "0gr503pinailfglpfbzxprqw7w1jla8jr9nl856a4zch498zg1gl")))) (build-system r-build-system) ;; Vignettes require r-knitr, which requires r-digest, so we have to ;; disable them and the tests. @@ -863,13 +872,13 @@ non-estimable cases correctly.") (define-public r-labeling (package (name "r-labeling") - (version "0.3") + (version "0.4.2") (source (origin (method url-fetch) (uri (cran-uri "labeling" version)) (sha256 - (base32 "13sk7zrrrzry6ky1bp8mmnzcl9jhvkig8j4id9nny7z993mnk00d")))) + (base32 "0rfikd9gy70b8qz87q9axcwv8nmn9mbxfdwypxi0sghpfs9df8p0")))) (build-system r-build-system) (home-page "https://cran.r-project.org/web/packages/labeling") (synopsis "Axis labeling algorithms") @@ -1600,13 +1609,13 @@ flexible and easy to set up.") (define-public r-r6 (package (name "r-r6") - (version "2.4.1") + (version "2.5.0") (source (origin (method url-fetch) (uri (cran-uri "R6" version)) (sha256 (base32 - "0gma5z41mx02ka9h96xdyf3p6i1rx0izczrzj26c4mbnh9jgvc16")))) + "00ifi2kwa7kn67xf0z1w6jfdicjczygbyi5mhfw2qlzc4sbazhdf")))) (build-system r-build-system) (home-page "https://github.com/wch/R6/") (synopsis "Classes with reference semantics in R") @@ -1622,13 +1631,13 @@ defined in different packages.") (define-public r-rlang (package (name "r-rlang") - (version "0.4.7") + (version "0.4.8") (source (origin (method url-fetch) (uri (cran-uri "rlang" version)) (sha256 (base32 - "0f4rhnhyhgrv874l0yzm80ij6vcqdykfd7bzmnqs0wbgyhkxk8vq")))) + "0z8hnwbzpwal66svwp04csjm49vdb9rmwzvn8hyqn93qy6pd9015")))) (build-system r-build-system) (home-page "http://rlang.tidyverse.org") (synopsis "Functions for base types, core R and Tidyverse features") @@ -1640,14 +1649,14 @@ like tidy evaluation.") (define-public r-tibble (package (name "r-tibble") - (version "3.0.3") + (version "3.0.4") (source (origin (method url-fetch) (uri (cran-uri "tibble" version)) (sha256 (base32 - "0f4yi87w6509lnaz1lhk9s8nm3bzx21ij3273s0zx7vpbp0qlxxz")))) + "189yyl27mnswk1z51xw6gj3lyxgy6m332jq8xyvwskff57w2w692")))) (build-system r-build-system) (propagated-inputs `(("r-cli" ,r-cli) @@ -1765,14 +1774,14 @@ transformations.") (define-public r-formula (package (name "r-formula") - (version "1.2-3") + (version "1.2-4") (source (origin (method url-fetch) (uri (cran-uri "Formula" version)) (sha256 (base32 - "0wiqh8rr9d5ciy80wj8f5fnmiiw0ywanvvnhkwd622dx42dk848l")))) + "1bsw282i5m8rlirbhz7hqvf25zbxschk7yrp152whbzdnmry6w6b")))) (properties `((upstream-name . "Formula"))) (build-system r-build-system) (home-page "https://cran.r-project.org/web/packages/Formula") @@ -1826,13 +1835,13 @@ times.") (define-public r-data-table (package (name "r-data-table") - (version "1.13.0") + (version "1.13.2") (source (origin (method url-fetch) (uri (cran-uri "data.table" version)) (sha256 (base32 - "0wihpg1syjxzsij2fmhwh30vvf2cghw2b2qi79w36qwil2s8w2gn")))) + "011qsjfybvlpy2sjn9b6hfkcgwx2xrnpxlaqq3y3baps8n1lgnr7")))) (build-system r-build-system) (inputs `(("zlib" ,zlib))) @@ -1986,18 +1995,19 @@ chain.") (define-public r-ade4 (package (name "r-ade4") - (version "1.7-15") + (version "1.7-16") (source (origin (method url-fetch) (uri (cran-uri "ade4" version)) (sha256 (base32 - "1xpxznlqm8wb4d5z2dcrl0wi3jjciq2hr5rcx2b5aaipiiyzm1ij")))) + "142m70im8yd4q01q7z02y3ia0f66yh4ikdznv0ps6c7yyigs5mwv")))) (build-system r-build-system) (propagated-inputs `(("r-mass" ,r-mass) ("r-pixmap" ,r-pixmap) + ("r-progress" ,r-progress) ("r-sp" ,r-sp))) (home-page "http://pbil.univ-lyon1.fr/ADE-4") (synopsis "Multivariate data analysis and graphical display") @@ -2603,13 +2613,13 @@ well as additional utilities such as panel and axis annotation functions.") (define-public r-rcpparmadillo (package (name "r-rcpparmadillo") - (version "0.9.900.3.0") + (version "0.10.1.0.0") (source (origin (method url-fetch) (uri (cran-uri "RcppArmadillo" version)) (sha256 (base32 - "0x8jm6cvfvp1kyckwwqxyy5hfkr8na28fih3k0lhi55wry3ml30q")))) + "0m0f4viw3r6zfk85b7v7h5dqydhdkjdacpl0bqxkmcndlzq8jnsb")))) (properties `((upstream-name . "RcppArmadillo"))) (build-system r-build-system) (propagated-inputs @@ -2695,13 +2705,13 @@ certain criterion, e.g., it contains a certain regular file.") (define-public r-rmarkdown (package (name "r-rmarkdown") - (version "2.4") + (version "2.5") (source (origin (method url-fetch) (uri (cran-uri "rmarkdown" version)) (sha256 - (base32 "1y2156w1abik8df8vl376ilv8s1jg8i0x2w4n4dwrnm3xxgp5kf0")))) + (base32 "0vmd1kykd4p1nwqbvra34sld5brac0wxb1zmav4wxj05shy67bd5")))) (properties `((upstream-name . "rmarkdown"))) (build-system r-build-system) (propagated-inputs @@ -2709,7 +2719,6 @@ certain criterion, e.g., it contains a certain regular file.") ("r-htmltools" ,r-htmltools) ("r-jsonlite" ,r-jsonlite) ("r-knitr" ,r-knitr) - ("r-mime" ,r-mime) ("r-stringr" ,r-stringr) ("r-tinytex" ,r-tinytex) ("r-xfun" ,r-xfun) @@ -3007,14 +3016,14 @@ statements.") (define-public r-segmented (package (name "r-segmented") - (version "1.2-0") + (version "1.3-0") (source (origin (method url-fetch) (uri (cran-uri "segmented" version)) (sha256 (base32 - "0r83p36l6m5sy4lxfjbfajn4gcqb0wv9zh7arny02s6c7fb4756y")))) + "1a9nnlf8j8j4ik34z19x187s8ki7pv1aayr344jrpn3h6m8fk3x5")))) (build-system r-build-system) (home-page "https://cran.r-project.org/web/packages/segmented") (synopsis "Regression models with breakpoints estimation") @@ -3071,14 +3080,14 @@ standard R subsetting and Kronecker products.") (define-public r-iterators (package (name "r-iterators") - (version "1.0.12") + (version "1.0.13") (source (origin (method url-fetch) (uri (cran-uri "iterators" version)) (sha256 (base32 - "0jwzxaa3jm1xzgfv5pn0xqkk7rhm0xwvgn85w7xaw8xx1vb33gwn")))) + "190i1y2493v5c9z8978rb3idlwsjymy67k1assa9znljqbj313kp")))) (build-system r-build-system) (home-page "https://cran.r-project.org/web/packages/iterators") (synopsis "Iterator construct for R") @@ -3091,14 +3100,14 @@ data.") (define-public r-foreach (package (name "r-foreach") - (version "1.5.0") + (version "1.5.1") (source (origin (method url-fetch) (uri (cran-uri "foreach" version)) (sha256 (base32 - "0584nv49x8d8m1cak5drb54sxs3y594gd521kjsdwk4c849sgy8s")))) + "1qb83b1jvpmk8d6kfibkm5q2hiki0x5gipy758mwa62n56gdcnpv")))) (build-system r-build-system) (propagated-inputs `(("r-codetools" ,r-codetools) @@ -3121,14 +3130,14 @@ parallel.") (define-public r-doparallel (package (name "r-doparallel") - (version "1.0.15") + (version "1.0.16") (source (origin (method url-fetch) (uri (cran-uri "doParallel" version)) (sha256 (base32 - "0vnqbha3gig3awbfvsfx3ni5jir398md1n7xmsb8jihnjsk7xbbi")))) + "1cjf0mxrxgls5pl7aj22fv9j488craib1wkc9np4f3gkckwjdfzi")))) (properties `((upstream-name . "doParallel"))) (build-system r-build-system) (propagated-inputs @@ -3144,14 +3153,14 @@ using the parallel package.") (define-public r-domc (package (name "r-domc") - (version "1.3.6") + (version "1.3.7") (source (origin (method url-fetch) (uri (cran-uri "doMC" version)) (sha256 (base32 - "1cn9gxavhvjswip8pwvkpi7q6wpzdllcsdjabga8akf55nggqxr9")))) + "0kdmfhp5m1wisjbfyl9d040jrmjmhcgjb0vdi536g2i9vixb5yny")))) (properties `((upstream-name . "doMC"))) (build-system r-build-system) (propagated-inputs @@ -3167,13 +3176,13 @@ using the multicore functionality of the parallel package.") (define-public r-dt (package (name "r-dt") - (version "0.15") + (version "0.16") (source (origin (method url-fetch) (uri (cran-uri "DT" version)) (sha256 (base32 - "1wc2aiqkn01i571h29847yaq7vb624bkf44axp4ygpn0r85hdq7k")))) + "0in4d34nxb4pk2jygj0a21cqf0k0m4dhm4rjv68bnkp5kmmz6kbk")))) (properties `((upstream-name . "DT"))) (build-system r-build-system) @@ -3275,23 +3284,20 @@ path-wise fashion.") (define-public r-pkgmaker (package (name "r-pkgmaker") - (version "0.31.1") + (version "0.32.2") (source (origin (method url-fetch) (uri (cran-uri "pkgmaker" version)) (sha256 (base32 - "0r0ga20dy25v9y5gjbds4y6kaa5a7qknh503qdkzllcpzbibh0hp")))) + "14ggsd24n5g5rvn0wl4w90ipxzmywqikh28llj89q6kpxwnv4iff")))) (build-system r-build-system) (propagated-inputs `(("r-assertthat" ,r-assertthat) - ("r-bibtex" ,r-bibtex) ("r-codetools" ,r-codetools) ("r-digest" ,r-digest) - ("r-magrittr" ,r-magrittr) ("r-registry" ,r-registry) - ("r-stringi" ,r-stringi) ("r-stringr" ,r-stringr) ("r-withr" ,r-withr) ("r-xtable" ,r-xtable))) @@ -3373,14 +3379,14 @@ Stochastic Neighbor Embedding using a Barnes-Hut implementation.") (define-public r-e1071 (package (name "r-e1071") - (version "1.7-3") + (version "1.7-4") (source (origin (method url-fetch) (uri (cran-uri "e1071" version)) (sha256 (base32 - "0pf2pjb590z0jikgv1037xcp7dq06mg3dzmyffjw6gk7dd9blbdv")))) + "02935xcscjhb0jmnvh44hxlpjcgladrcr0gpz1jxq07m0qdqgaz6")))) (build-system r-build-system) (propagated-inputs `(("r-class" ,r-class))) @@ -4275,22 +4281,24 @@ mechanism.") (define-public r-ztable (package (name "r-ztable") - (version "0.2.0") + (version "0.2.2") (source (origin (method url-fetch) (uri (cran-uri "ztable" version)) (sha256 (base32 - "0g7khk5ifsdh9p31wlwh2l5mn1hzxzpv6qcn1wh34vsfjdmijjwy")))) + "0wxcdb7yp2r6w5iznz1k49npp5sn4jiybfcj30s3198hkcnv0r8y")))) (build-system r-build-system) (propagated-inputs `(("r-flextable" ,r-flextable) ("r-magrittr" ,r-magrittr) - ("r-moonbook" ,r-moonbook) ("r-officer" ,r-officer) ("r-rcolorbrewer" ,r-rcolorbrewer) + ("r-rstudioapi" ,r-rstudioapi) ("r-scales" ,r-scales) ("r-stringr" ,r-stringr))) + (native-inputs + `(("r-knitr" ,r-knitr))) (home-page "https://cran.r-project.org/web/packages/ztable") (synopsis "Zebra-striped tables in LaTeX and HTML formats for R") (description @@ -4411,13 +4419,13 @@ Wall Street Journal, among others. This package also provides (define-public r-statmod (package (name "r-statmod") - (version "1.4.34") + (version "1.4.35") (source (origin (method url-fetch) (uri (cran-uri "statmod" version)) (sha256 (base32 - "0yklg64aw5y8kfq5piafnrj1v3jv563iwzzl75g3kllrw23c508s")))) + "1zpqnfslq5gi6hvqjqnsn5kf2m986s1yb6kvyjd881n3h67l4pny")))) (build-system r-build-system) (home-page "https://cran.r-project.org/web/packages/statmod") (native-inputs @@ -4666,14 +4674,14 @@ to change in the future.") (define-public r-flexmix (package (name "r-flexmix") - (version "2.3-15") + (version "2.3-17") (source (origin (method url-fetch) (uri (cran-uri "flexmix" version)) (sha256 (base32 - "0hrz2axp2c9548b1r0bmrl57219nn030qndb83a8garkzq5lqi5s")))) + "0jangf89174p0idh9afbicfiln2sz8jxc3bjc6n0j9036dw9n09n")))) (build-system r-build-system) (propagated-inputs `(("r-lattice" ,r-lattice) @@ -4943,13 +4951,13 @@ groupings.") (define-public r-vgam (package (name "r-vgam") - (version "1.1-3") + (version "1.1-4") (source (origin (method url-fetch) (uri (cran-uri "VGAM" version)) (sha256 - (base32 "1hwlrdx3nhdp83pvy1h23i16vbbhi4kizdhr58c8nvg7kqdzb7qc")))) + (base32 "1iwrpyhz3khgw904zxz3pn7d61zvkd5m22gimzk57f8jjplxh1zm")))) (properties `((upstream-name . "VGAM"))) (build-system r-build-system) (native-inputs @@ -5080,13 +5088,13 @@ using modular prediction and response module classes.") (define-public r-quantreg (package (name "r-quantreg") - (version "5.73") + (version "5.75") (source (origin (method url-fetch) (uri (cran-uri "quantreg" version)) (sha256 - (base32 "0mjwwj3c7cfnprlh90ld0f1lll0mrqbx8mpnbfr7bvzg8h6072y4")))) + (base32 "05mb1qmwah5sdgg2z7m36lqkh479phvb1cx4sjnv1ykvmi9alxv5")))) (build-system r-build-system) (native-inputs `(("gfortran" ,gfortran))) @@ -5136,14 +5144,14 @@ algorithms.") (define-public r-lme4 (package (name "r-lme4") - (version "1.1-23") + (version "1.1-25") (source (origin (method url-fetch) (uri (cran-uri "lme4" version)) (sha256 (base32 - "0qh29kqli0l3naylgb6jha6jllx4nwryr3hv9yk37blgyyql5mcr")))) + "0vvjac7hnn5lfbyl92zi8qxyc8kkjcwsg94z0p2s2q311in4gnp4")))) (build-system r-build-system) (propagated-inputs `(("r-boot" ,r-boot) diff --git a/gnu/packages/telephony.scm b/gnu/packages/telephony.scm index 6ee1b2c250..48e30abfc3 100644 --- a/gnu/packages/telephony.scm +++ b/gnu/packages/telephony.scm @@ -515,14 +515,14 @@ address of one of the participants.") (define-public mumble (package (name "mumble") - (version "1.3.2") + (version "1.3.3") (source (origin (method url-fetch) (uri (string-append "https://mumble.info/snapshot/stable/" name "-" version ".tar.gz")) (sha256 (base32 - "1q91vp3bp7xn67g9kgp1pfgxjj1hks3w60vdxcfm3373wy5db5lz")) + "101gw1334zmqsbjrba5dq1v4p2nxcs37g2yrzvkcra6s9ri4fw3j")) (modules '((guix build utils))) (snippet `(begin diff --git a/gnu/packages/terminals.scm b/gnu/packages/terminals.scm index e596c1b81f..f17c36cf2b 100644 --- a/gnu/packages/terminals.scm +++ b/gnu/packages/terminals.scm @@ -1312,6 +1312,12 @@ made by suckless.") ("ncurses" ,ncurses) ("pkg-config" ,pkg-config) ("python3" ,python))) + (native-search-paths + ;; FIXME: This should only be located in 'ncurses'. Nonetheless it is + ;; provided for usability reasons. See <https://bugs.gnu.org/22138>. + (list (search-path-specification + (variable "TERMINFO_DIRS") + (files '("share/terminfo"))))) (home-page "https://github.com/alacritty/alacritty") (synopsis "GPU-accelerated terminal emulator") (description diff --git a/gnu/packages/tex.scm b/gnu/packages/tex.scm index f297252de4..1cffb52410 100644 --- a/gnu/packages/tex.scm +++ b/gnu/packages/tex.scm @@ -5353,6 +5353,65 @@ alternative version of the Kurier fonts. The difference lies in the absence of ink traps which typify the Kurier font.") (license license:gfl1.0))) +(define-public texlive-libertine + (package + (inherit (simple-texlive-package + "texlive-libertine" + (list "/doc/fonts/libertine/" + + "/fonts/enc/dvips/libertine/" + "/fonts/map/dvips/libertine/" + "/fonts/opentype/public/libertine/" + "/fonts/tfm/public/libertine/" + "/fonts/type1/public/libertine/" + "/fonts/vf/public/libertine/" + + "/tex/latex/libertine/") + (base32 + "1v2vimpfi0b08sd79dadrck7wkpa0bphiakwyvhjc3ygq9k5bp8k") + #:trivial? #t)) + (home-page "https://www.ctan.org/pkg/libertine") + (synopsis "Use Linux Libertine and Biolinum fonts with LaTeX") + (description + "The package provides the Libertine and Biolinum fonts in both Type 1 and +OTF styles, together with support macros for their use. Monospaced and +display fonts, and the \"keyboard\" set are also included, in OTF style, only. +The @code{mweights} package is used to manage the selection of font weights. +The package supersedes both the @code{libertineotf} and the +@code{libertine-legacy} packages.") + (license (list license:gpl2+ ; with font exception + license:silofl1.1 + license:lppl)))) + +(define-public texlive-dejavu + (package + (inherit (simple-texlive-package + "texlive-dejavu" + (list "/doc/fonts/dejavu/" + + "/fonts/enc/dvips/dejavu/" + "/fonts/map/dvips/dejavu/" + + "/fonts/afm/public/dejavu/" + "/fonts/tfm/public/dejavu/" + "/fonts/truetype/public/dejavu/" + "/fonts/type1/public/dejavu/" + "/fonts/vf/public/dejavu/" + + "/tex/latex/dejavu/") + (base32 + "0y4qf5jl0xncah9nkcaalmy69wwq02n3j895zp71n2p0nfi24aka") + #:trivial? #t)) + (home-page "https://www.ctan.org/pkg/libertine") + (synopsis "LaTeX support for the DejaVu fonts") + (description + "The package contains LaTeX support for the DejaVu fonts, which are +derived from the Vera fonts but contain more characters and styles. The fonts +are included in the original TrueType format, and in converted Type 1 format. +The (currently) supported encodings are: OT1, T1, IL2, TS1, T2*, X2, QX, and +LGR. The package doesn't (currently) support mathematics.") + (license license:lppl))) + (define-public texlive-latex-titlesec (package (name "texlive-latex-titlesec") diff --git a/gnu/packages/text-editors.scm b/gnu/packages/text-editors.scm index ed88c8de1c..0860189d48 100644 --- a/gnu/packages/text-editors.scm +++ b/gnu/packages/text-editors.scm @@ -848,14 +848,14 @@ and multiple fonts.") (define-public geany (package (name "geany") - (version "1.36") + (version "1.37") (source (origin (method url-fetch) (uri (string-append "https://download.geany.org/" "geany-" version ".tar.bz2")) (sha256 - (base32 "0gnm17cr4rf3pmkf0axz4a0fxwnvp55ji0q0lzy88yqbshyxv14i")))) + (base32 "0l9xds0qghxv21ymifdc9spvp9mpvpnxn9scf1b9qxivha22brfx")))) (build-system gnu-build-system) (native-inputs `(("autoconf" ,autoconf) diff --git a/gnu/packages/textutils.scm b/gnu/packages/textutils.scm index 7cbbe5f61d..11613cb703 100644 --- a/gnu/packages/textutils.scm +++ b/gnu/packages/textutils.scm @@ -52,6 +52,7 @@ #:use-module (gnu packages base) #:use-module (gnu packages compression) #:use-module (gnu packages gcc) + #:use-module (gnu packages golang) #:use-module (gnu packages gettext) #:use-module (gnu packages java) #:use-module (gnu packages ncurses) @@ -1174,3 +1175,35 @@ This package provides Python bindings.") (description "@command{aha} (Ansi Html Adapter) converts ANSI escape sequences of a Unix terminal to HTML code.") (license (list license:lgpl2.0+ license:mpl1.1)))) + +(define-public go-github-com-errata-ai-vale + (package + (name "go-github-com-errata-ai-vale") + (version "2.4.0") + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/errata-ai/vale") + (commit (string-append "v" version)))) + (sha256 + (base32 "0d07fwha2220m8j24h527xl0gnl3svvyaywflgk5292d6g49ach2")) + (file-name (git-file-name name version)))) + (build-system go-build-system) + (native-inputs + `(("github.com/sp13/afero" ,go-github-com-spf13-afero) + ("github.com/urfave/cli" ,go-github-com-urfave-cli) + ("github.com/olekukonko/tablewriter" ,go-github-com-olekukonko-tablewriter) + ("github.com/mitchellh/mapstructure" ,go-github-com-mitchellh-mapstructure))) + (arguments + `(#:import-path "github.com/errata-ai/vale" + #:install-source? #f)) + (home-page "https://github.com/errata-ai/vale") + (synopsis "Fully customizable syntax-aware linter that focuses on your style") + (description + "Vale is a fully extensible linter that focuses on your own writing style +by making use of rules in individual YAML files. It is syntax-aware on markup +languages such as HTML, Markdown, Asciidoc, and reStructuredText. The community +around it also has a list of style guides implemented with Vale in +@url{https://github.com/errata-ai/styles, their styles repo}.") + (license license:expat))) diff --git a/gnu/packages/time.scm b/gnu/packages/time.scm index e396412e47..d9ea0e12c2 100644 --- a/gnu/packages/time.scm +++ b/gnu/packages/time.scm @@ -140,13 +140,13 @@ saving time. Almost all of the Olson timezones are supported.") (define-public python-pendulum (package (name "python-pendulum") - (version "2.1.1") + (version "2.1.2") (source (origin (method url-fetch) (uri (pypi-uri "pendulum" version)) (sha256 - (base32 "1w4an6ki3l1pc36m2f2xiglaw5czmj9b4imbigln9z6mlnkkjxyr")))) + (base32 "01zjc245w08j0xryrgrq9vng59q1cl5ry0hcpw5rj774pyhhqsmh")))) (build-system python-build-system) ;; XXX: The PyPI distribution lacks tests, and the upstream repository ;; lacks a setup.py! diff --git a/gnu/packages/tls.scm b/gnu/packages/tls.scm index 82e6321de6..d6b43d8d8f 100644 --- a/gnu/packages/tls.scm +++ b/gnu/packages/tls.scm @@ -4,7 +4,7 @@ ;;; Copyright © 2014 Ian Denhardt <ian@zenhack.net> ;;; Copyright © 2013, 2015 Andreas Enge <andreas@enge.fr> ;;; Copyright © 2015 David Thompson <davet@gnu.org> -;;; Copyright © 2015, 2016, 2017, 2018, 2019 Leo Famulari <leo@famulari.name> +;;; Copyright © 2015, 2016, 2017, 2018, 2019, 2020 Leo Famulari <leo@famulari.name> ;;; Copyright © 2016, 2017, 2019 Efraim Flashner <efraim@flashner.co.il> ;;; Copyright © 2016, 2017, 2018 Nikita <nikita@n0.is> ;;; Copyright © 2016 Hartmut Goebel <h.goebel@crazy-compilers.com> @@ -586,13 +586,13 @@ netcat implementation that supports TLS.") (package (name "python-acme") ;; Remember to update the hash of certbot when updating python-acme. - (version "1.3.0") + (version "1.8.0") (source (origin (method url-fetch) (uri (pypi-uri "acme" version)) (sha256 (base32 - "03fjmg0fgfy7xfn3i8rzn9i0i4amajmijkash84qb8mlphgrxpn0")))) + "0b80qmlchf8f071nrrh4ihq64cwicn9rshs34snp73952iyhd3dd")))) (build-system python-build-system) (arguments `(#:phases @@ -643,7 +643,7 @@ netcat implementation that supports TLS.") (uri (pypi-uri "certbot" version)) (sha256 (base32 - "1n5i0k6kwmd6wvivshfl3k4djwcpwx390c39xmr2hhrgpk5r285w")))) + "1r2k54d2k2smn4c3lpd0z6gdzfqk4654kwbh1p8wqhv5mwbcads8")))) (build-system python-build-system) (arguments `(,@(substitute-keyword-arguments (package-arguments python-acme) diff --git a/gnu/packages/tmux.scm b/gnu/packages/tmux.scm index 910b3dd781..de55c0b188 100644 --- a/gnu/packages/tmux.scm +++ b/gnu/packages/tmux.scm @@ -43,7 +43,7 @@ (define-public tmux (package (name "tmux") - (version "3.1b") + (version "3.1c") (source (origin (method url-fetch) (uri (string-append @@ -51,7 +51,7 @@ version "/tmux-" version ".tar.gz")) (sha256 (base32 - "1fbd93hzaz64h7j0h9nsll29avbq1ikqa438wrgsf1dga0fkagyr")))) + "11l3r337ly2wxwdrgjg19bdxkbqpagqaykrdj2hk7vvv8hh753wi")))) (build-system gnu-build-system) (inputs `(("libevent" ,libevent) diff --git a/gnu/packages/version-control.scm b/gnu/packages/version-control.scm index fe61bc8fce..9060bdc06a 100644 --- a/gnu/packages/version-control.scm +++ b/gnu/packages/version-control.scm @@ -159,14 +159,14 @@ as well as the classic centralized workflow.") (define-public git (package (name "git") - (version "2.28.0") + (version "2.29.2") (source (origin (method url-fetch) (uri (string-append "mirror://kernel.org/software/scm/git/git-" version ".tar.xz")) (sha256 (base32 - "17a311vzimqn1glc9d7x82rhb1mb81m5rr4g8xji8idaafid39fz")))) + "1h87yv117ypnc0yi86941089c14n91gixk8b6shj2y35prp47z7j")))) (build-system gnu-build-system) (native-inputs `(("native-perl" ,perl) @@ -183,7 +183,7 @@ as well as the classic centralized workflow.") version ".tar.xz")) (sha256 (base32 - "1dvwq0py8a2ywmgc5pzdlsj3608s7r9wyba292728fcs3yj7ynk6")))) + "14npkg9rnp2yclsx5p622qpm6byzfy5k5wb209vkmm5r60m4mm72")))) ;; For subtree documentation. ("asciidoc" ,asciidoc-py3) ("docbook-xsl" ,docbook-xsl) @@ -518,11 +518,6 @@ everything from small to very large projects with speed and efficiency.") (delete 'install-man-pages) (delete 'install-subtree) (delete 'install-credential-netrc) - (add-before 'check 'delete-svn-test - (lambda _ - ;; This test cannot run since we are not building 'git-svn'. - (delete-file "t/t9020-remote-svn.sh") - #t)) (add-after 'install 'remove-unusable-perl-commands (lambda* (#:key outputs #:allow-other-keys) (let* ((out (assoc-ref outputs "out")) @@ -1799,26 +1794,17 @@ projects, from individuals to large-scale enterprise operations.") (define-public rcs (package (name "rcs") - (version "5.9.4") + (version "5.10.0") (source (origin (method url-fetch) (uri (string-append "mirror://gnu/rcs/rcs-" version ".tar.xz")) (sha256 (base32 - "1zsx7bb0rgvvvisiy4zlixf56ay8wbd9qqqcp1a1g0m1gl6mlg86")) - (patches (search-patches "rcs-5.9.4-noreturn.patch")))) + "1if5pa4iip2p70gljm54nggfdnsfjxa4cqz8fpj07lvsijary39s")) + (patches (search-patches "rcs-5.10.0-no-stdin.patch")))) (build-system gnu-build-system) (native-inputs `(("ed" ,ed))) - (arguments - `(#:phases (modify-phases %standard-phases - (add-before 'check 'disable-t810 - ;; See https://savannah.gnu.org/bugs/index.php?52288 - ;; Back-porting the fix is non-trivial, so disable for now. - (lambda _ - (substitute* "tests/Makefile" - ((" t810 \\\\\n") "")) - #t))))) (home-page "https://www.gnu.org/software/rcs/") (synopsis "Per-file local revision control system") (description diff --git a/gnu/packages/video.scm b/gnu/packages/video.scm index bd5367d439..c17e105fd5 100644 --- a/gnu/packages/video.scm +++ b/gnu/packages/video.scm @@ -44,6 +44,7 @@ ;;; Copyright © 2020 Michael Rohleder <mike@rohleder.de> ;;; Copyright © 2020 Vinicius Monego <monego@posteo.net> ;;; Copyright © 2020 Brett Gilio <brettg@gnu.org> +;;; Copyright © 2020 Alexandru-Sergiu Marton <brown121407@posteo.ro> ;;; ;;; This file is part of GNU Guix. ;;; @@ -826,8 +827,8 @@ shared library and encoder and decoder command-line executables.") (define-public libx264 ;; There are no tags in the repository, so we take the version number from ;; the X264_BUILD variable defined in x264.h. - (let ((version "159") - (commit "1771b556ee45207f8711744ccbd5d42a3949b14c") + (let ((version "161") + (commit "4c2aafd864dd201832ec2be0fef4484925146650") (revision "0")) (package (name "libx264") @@ -840,7 +841,7 @@ shared library and encoder and decoder command-line executables.") (file-name (git-file-name name version)) (sha256 (base32 - "0kmi78gs5101d4df33il5bmjbns54nvdjsyn44xiw60lwsg11vwz")))) + "1i6v9h3xx9pi0zmlj3anwwjxqa63sbhy9crrif8dphipwfn9hyg5")))) (build-system gnu-build-system) (native-inputs `(("pkg-config" ,pkg-config) @@ -881,14 +882,14 @@ H.264 (MPEG-4 AVC) video streams.") (define-public mkvtoolnix (package (name "mkvtoolnix") - (version "50.0.0") + (version "51.0.0") (source (origin (method url-fetch) (uri (string-append "https://mkvtoolnix.download/sources/" "mkvtoolnix-" version ".tar.xz")) (sha256 - (base32 "09485qfbdirr9g536shglzdm271yipb1669r3dm3hxp46k0x59aq")) + (base32 "0w2crz6wnfw18m9m4zrij1yplcq5drzhz8n58w9kp51wl48a0yn1")) (modules '((guix build utils))) (snippet '(begin ;; Delete bundled libraries. @@ -1005,7 +1006,7 @@ H.264 (MPEG-4 AVC) video streams.") (define-public straw-viewer (package (name "straw-viewer") - (version "0.0.7") + (version "0.1.0") (source (origin (method git-fetch) @@ -1014,7 +1015,7 @@ H.264 (MPEG-4 AVC) video streams.") (commit version))) (file-name (git-file-name name version)) (sha256 - (base32 "11ywip9ck2rgyj8s1pyr6za3si0bnx8rl2f3cv84xgcq36ac3rv4")))) + (base32 "0786bppk8dhp5p2284qp7pm3b9vwh1cm4n03hiqwd2vvgv41aypy")))) (build-system perl-build-system) (native-inputs `(("perl-module-build" ,perl-module-build) @@ -1467,7 +1468,6 @@ operate properly.") ("perl" ,perl) ("pkg-config" ,pkg-config) ("texinfo" ,texinfo) - ("python" ,python-2) ; scripts use interpreter python2 ("speex" ,speex) ("yasm" ,yasm))) (arguments @@ -1635,11 +1635,19 @@ audio/video codec library.") "1j7mdk9szrljgv4sdx69bm1pnbb3cldbdxbkr42jbdi9zn11gl7g")))) (arguments (substitute-keyword-arguments (package-arguments ffmpeg) + ((#:modules modules %gnu-build-system-modules) + `((srfi srfi-1) + ,@modules)) ((#:configure-flags flags) - `(delete "--enable-libdav1d" (delete "--enable-libaom" (delete "--enable-librav1e" - ,flags)))))) - (inputs (alist-delete "dav1d" (alist-delete "libaom" (alist-delete "rav1e" - (package-inputs ffmpeg))))))) + `(fold delete + ,flags + '("--enable-libdav1d" + "--enable-libaom" + "--enable-librav1e" + "--enable-libsrt"))))) + (inputs (fold alist-delete + (package-inputs ffmpeg) + '("dav1d" "libaom" "rav1e" "srt"))))) (define-public ffmpeg-2.8 (package @@ -2177,15 +2185,14 @@ To load this plugin, specify the following option when starting mpv: (define-public youtube-dl (package (name "youtube-dl") - (version "2020.09.20") + (version "2020.11.01.1") (source (origin (method url-fetch) - (uri (string-append "https://github.com/ytdl-org/youtube-dl/" - "releases/download/" version "/youtube-dl-" - version ".tar.gz")) + (uri (string-append "https://youtube-dl.org/downloads/latest/" + "youtube-dl-" version ".tar.gz")) (sha256 (base32 - "1pkw3hnkddk1kqv0in152q1k4jjgbmf2xvc9j3r5nd38z6f7j6mc")))) + "06lhba4b9bm6f5yqrb5xvdr0l5shwd95djf9nlpg86prr5xihqks")))) (build-system python-build-system) (arguments ;; The problem here is that the directory for the man page and completion @@ -3714,6 +3721,47 @@ information and other metadata about audio or video files. It supports the many codecs and formats supported by libmediainfo.") (license license:bsd-2))) +(define-public atomicparsley + (package + (name "atomicparsley") + (version "20200701.154658.b0d6223") + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/wez/atomicparsley") + (commit version))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "1kym2l5y34nmbrrlkfmxsf1cwrvch64kb34jp0hpa0b89idbhwqh")))) + (build-system cmake-build-system) + (arguments + `(#:tests? #f ;; no tests included + #:phases + (modify-phases %standard-phases + (add-before 'configure 'set-cmake-version + (lambda* _ + (substitute* "CMakeLists.txt" + ;; At the time of writing, Guix has CMake at 3.16, but + ;; AtomicParsley uses 3.17. This brings the required CMake + ;; version down to what Guix can afford. + (("VERSION 3.17") "VERSION 3.16")) + #t)) + (replace 'install + (lambda* (#:key outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (bin (string-append out "/bin"))) + (install-file "AtomicParsley" bin)) + #t))))) + (inputs + `(("zlib" ,zlib))) + (synopsis "Metadata editor for MPEG-4 files") + (description "AtomicParsley is a lightweight command line program for +reading, parsing and setting metadata into MPEG-4 files, in particular, +iTunes-style metadata.") + (home-page "https://github.com/wez/atomicparsley") + (license license:gpl2+))) + (define-public livemedia-utils (package (name "livemedia-utils") diff --git a/gnu/packages/vim.scm b/gnu/packages/vim.scm index 05136981ea..87539e353f 100644 --- a/gnu/packages/vim.scm +++ b/gnu/packages/vim.scm @@ -70,7 +70,7 @@ (define-public vim (package (name "vim") - (version "8.2.1852") + (version "8.2.1964") (source (origin (method git-fetch) (uri (git-reference @@ -79,18 +79,13 @@ (file-name (git-file-name name version)) (sha256 (base32 - "0nvcvvig5fc45smf4kh71jqyqafffgxzaizwqknk0h9vzl4k4h57")))) + "0rhx93xq5gk7lgxnm0h0lnwl6zgifcnl0c9k0f4fqb6cx81ihp4q")))) (build-system gnu-build-system) (arguments `(#:test-target "test" #:parallel-tests? #f #:phases (modify-phases %standard-phases - (add-after 'patch-source-shebangs 'fix-installman - (lambda _ - (substitute* "src/installman.sh" - ((" /bin/sh") (which "sh"))) - #t)) (add-after 'configure 'patch-absolute-paths (lambda _ (substitute* "runtime/tools/mve.awk" diff --git a/gnu/packages/virtualization.scm b/gnu/packages/virtualization.scm index ac062dfa15..b20fb70ecb 100644 --- a/gnu/packages/virtualization.scm +++ b/gnu/packages/virtualization.scm @@ -1606,7 +1606,8 @@ Open Container Initiative (OCI) image layout and its tagged images.") "1v7k3ki10i6082r7zswblyirx6zck674y6bw3plssw4p1l2611rd")))) (build-system go-build-system) (native-inputs - `(("pkg-config" ,pkg-config))) + `(("pkg-config" ,pkg-config) + ("go-github-com-go-md2man" ,go-github-com-go-md2man))) (inputs `(("btrfs-progs" ,btrfs-progs) ("eudev" ,eudev) @@ -1625,13 +1626,18 @@ Open Container Initiative (OCI) image layout and its tagged images.") (replace 'build (lambda* (#:key import-path #:allow-other-keys) (with-directory-excursion (string-append "src/" import-path) - ;; TODO: build manpages with 'go-md2man'. (invoke "make" "bin/skopeo")))) + (add-after 'build 'build-docs + (lambda* (#:key import-path #:allow-other-keys) + (with-directory-excursion (string-append "src/" import-path) + (invoke "make" "docs")))) (replace 'install (lambda* (#:key import-path outputs #:allow-other-keys) (with-directory-excursion (string-append "src/" import-path) (let ((out (assoc-ref outputs "out"))) - (invoke "make" "install-binary" "install-completions" + (install-file "default-policy.json" + (string-append out "/etc/containers")) + (invoke "make" "install-binary" "install-completions" "install-docs" (string-append "PREFIX=" out))))))))) (home-page "https://github.com/containers/skopeo") (synopsis "Interact with container images and container image registries") diff --git a/gnu/packages/visidata.scm b/gnu/packages/visidata.scm index 68ea401362..6ba2939b4f 100644 --- a/gnu/packages/visidata.scm +++ b/gnu/packages/visidata.scm @@ -17,13 +17,13 @@ ;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>. (define-module (gnu packages visidata) - #:use-module (gnu packages databases) - #:use-module (gnu packages python-science) + #:use-module (gnu packages check) + #:use-module (gnu packages time) #:use-module (gnu packages python-web) #:use-module (gnu packages python-xyz) - #:use-module (gnu packages time) #:use-module (gnu packages xml) #:use-module (guix build-system python) + #:use-module (guix build utils) #:use-module (guix download) #:use-module ((guix licenses) #:prefix license:) #:use-module (guix packages)) @@ -31,34 +31,34 @@ (define-public visidata (package (name "visidata") - (version "1.5.2") + (version "2.0.1") (source (origin (method url-fetch) (uri (pypi-uri "visidata" version)) (sha256 (base32 - "10adfyn4gkisvciqawgh2lakkhhnjjxiyp7mzbgcwkq1b3sigpf1")))) + "1p4x9fz59ablyjvp18y50zdsapavhzx7w5hk2v8rsar5ill8947v")))) (build-system python-build-system) - ;; Tests disabled because they are not packaged with the source tarball. - ;; Upstream suggests tests will be packaged with tarball around 2.0 release. - (arguments '(#:tests? #f)) + (arguments + '(#:phases + (modify-phases %standard-phases + (replace 'check + (lambda* (#:key tests? #:allow-other-keys) + (when tests? (invoke "pytest")) + #t))))) (inputs - `(("python-dateutil" ,python-dateutil) - ("python-fonttools" ,python-fonttools) - ("python-h5py" ,python-h5py) - ("python-lxml" ,python-lxml) - ("python-openpyxl" ,python-openpyxl) - ("python-pandas" ,python-pandas) - ("python-psycopg2" ,python-psycopg2) - ("python-pyyaml" ,python-pyyaml) - ("python-requests" ,python-requests) - ("python-xlrd" ,python-xlrd))) + `(("dateutil" ,python-dateutil) + ("requests" ,python-requests) + ("lxml" ,python-lxml) + ("openpyxl" ,python-openpyxl) + ("xlrd" ,python-xlrd))) + (native-inputs + `(("pytest" ,python-pytest))) (synopsis "Terminal spreadsheet multitool for discovering and arranging data") (description "VisiData is an interactive multitool for tabular data. It combines the clarity of a spreadsheet, the efficiency of the terminal, and the power of Python, into a lightweight utility which can handle millions of rows.") (home-page "https://www.visidata.org/") - (license (list license:gpl3 - license:expat)))) ;; visidata/vdtui.py + (license license:gpl3))) diff --git a/gnu/packages/vpn.scm b/gnu/packages/vpn.scm index e451ca1891..e43f467eca 100644 --- a/gnu/packages/vpn.scm +++ b/gnu/packages/vpn.scm @@ -634,7 +634,7 @@ public keys and can roam across IP addresses.") (define-public xl2tpd (package (name "xl2tpd") - (version "1.3.15") + (version "1.3.16") (source (origin (method git-fetch) (uri (git-reference @@ -643,7 +643,7 @@ public keys and can roam across IP addresses.") (file-name (git-file-name name version)) (sha256 (base32 - "0ppwza8nwm1av1vldw40gin9wrjrs4l9si50jad414js3k8ycaag")))) + "0is5ccrvijz0pfm45pfrlbb9y8231yz3c4zqs8mkgakl9rxajy6l")))) (build-system gnu-build-system) (arguments `(#:make-flags (list (string-append "PREFIX=" %output) diff --git a/gnu/packages/web-browsers.scm b/gnu/packages/web-browsers.scm index 3ea4f7f867..b2209cbb2a 100644 --- a/gnu/packages/web-browsers.scm +++ b/gnu/packages/web-browsers.scm @@ -461,7 +461,7 @@ driven and does not detract you from your daily work.") (name "nyxt") ;; Package the pre-release because latest stable 1.5.0 does not build ;; anymore. - (version "2-pre-release-2") + (version "2-pre-release-3") (source (origin (method git-fetch) @@ -472,7 +472,7 @@ driven and does not detract you from your daily work.") (commit version))) (sha256 (base32 - "0wqq8ppn0n7js3pxzzb36h0lf3r3gqhs2hi8h85c3n8a54hnbp8q")) + "16crhc89hpvzkms5fypq9vdrf7glidqwh7yvy5cdmjdq4v7fkmy4")) (file-name (git-file-name "nyxt" version)))) (build-system gnu-build-system) (arguments @@ -482,7 +482,8 @@ driven and does not detract you from your daily work.") #:strip-binaries? #f ; Stripping breaks SBCL binaries. #:phases (modify-phases %standard-phases - (add-after 'unpack 'patch-version ; Version is guessed from .git which Guix does not have. + ;; Version is guessed from .git which Guix does not have. + (add-after 'unpack 'patch-version (lambda* (#:key inputs #:allow-other-keys) (let ((version (format #f "~a" ,version)) (file "source/global.lisp")) @@ -515,7 +516,8 @@ driven and does not detract you from your daily work.") ":")) (gi-path (string-join (map (lambda (lib) - (string-append (assoc-ref inputs lib) "/lib/girepository-1.0")) + (string-append (assoc-ref inputs lib) + "/lib/girepository-1.0")) libs) ":")) (xdg-path (string-join @@ -536,6 +538,7 @@ driven and does not detract you from your daily work.") (inputs `(("alexandria" ,sbcl-alexandria) ("bordeaux-threads" ,sbcl-bordeaux-threads) + ("cl-chanl" ,sbcl-chanl) ("cl-containers" ,sbcl-cl-containers) ("cl-css" ,sbcl-cl-css) ("cl-json" ,sbcl-cl-json) @@ -567,6 +570,7 @@ driven and does not detract you from your daily work.") ("trivial-package-local-nicknames" ,sbcl-trivial-package-local-nicknames) ("trivial-types" ,sbcl-trivial-types) ("unix-opts" ,sbcl-unix-opts) + ("usocket" ,sbcl-usocket) ;; WebKitGTK deps ("cl-cffi-gtk" ,sbcl-cl-cffi-gtk) ("cl-webkit" ,sbcl-cl-webkit) @@ -588,7 +592,7 @@ key-bindings and is fully configurable and extensible in Common Lisp.") (define-public bombadillo (package (name "bombadillo") - (version "2.2.0") + (version "2.3.1") (source (origin (method git-fetch) (uri (git-reference @@ -596,7 +600,7 @@ key-bindings and is fully configurable and extensible in Common Lisp.") (commit version))) (sha256 (base32 - "1m52b1wk48gkqmjy8l0x3jaksrx2v8w6w59lhr7zaw2i0n4f5k0z")) + "0n0gza9qfx1hxigicyvf6wg1ccc2irvh17yhzpw9gx75ls5ybrjn")) (file-name (git-file-name name version)))) (build-system go-build-system) (arguments @@ -615,7 +619,6 @@ key-bindings and is fully configurable and extensible in Common Lisp.") (pixdir (string-append sharedir "/pixmaps"))) (with-directory-excursion builddir (install-file "bombadillo.desktop" appdir) - (install-file "LICENSE" docdir) (install-file "bombadillo.1" mandir) (install-file "bombadillo-icon.png" pixdir) #t))))))) diff --git a/gnu/packages/web.scm b/gnu/packages/web.scm index f7c6bedd6d..b07f9e4d44 100644 --- a/gnu/packages/web.scm +++ b/gnu/packages/web.scm @@ -46,6 +46,7 @@ ;;; Copyright © 2020 Paul Garlick <pgarlick@tourbillion-technology.com> ;;; Copyright © 2020 Michael Rohleder <mike@rohleder.de> ;;; Copyright © 2020 Ryan Prior <rprior@protonmail.com> +;;; Copyright © 2020 Alexandru-Sergiu Marton <brown121407@posteo.ro> ;;; ;;; This file is part of GNU Guix. ;;; @@ -128,6 +129,7 @@ #:use-module (gnu packages lisp-xyz) #:use-module (gnu packages lsof) #:use-module (gnu packages lua) + #:use-module (gnu packages man) #:use-module (gnu packages markup) #:use-module (gnu packages ncurses) #:use-module (gnu packages networking) @@ -232,14 +234,14 @@ Interface} specification.") ;; ’stable’ and recommends that “in general you deploy the NGINX mainline ;; branch at all times” (https://www.nginx.com/blog/nginx-1-6-1-7-released/) ;; Consider updating the nginx-documentation package together with this one. - (version "1.19.3") + (version "1.19.4") (source (origin (method url-fetch) (uri (string-append "https://nginx.org/download/nginx-" version ".tar.gz")) (sha256 (base32 - "1w4dkq7bl5gyix3x0ap3d9lndh7zyvc3mscl693d4ybql57vgrci")))) + "03h0hhrbfy3asla9gki2cp97zjn7idxbp5lk9xi0snlh4xlm9pv1")))) (build-system gnu-build-system) (inputs `(("openssl" ,openssl) ("pcre" ,pcre) @@ -323,8 +325,8 @@ and as a proxy to reduce the load on back-end HTTP or mail servers.") (define-public nginx-documentation ;; This documentation should be relevant for the current nginx package. (let ((version "1.19.3") - (revision 2603) - (changeset "94ebfbcd68bb")) + (revision 2615) + (changeset "3cb2736bb74c")) (package (name "nginx-documentation") (version (simple-format #f "~A-~A-~A" version revision changeset)) @@ -336,7 +338,7 @@ and as a proxy to reduce the load on back-end HTTP or mail servers.") (file-name (string-append name "-" version)) (sha256 (base32 - "1yryharm4dkjnj424r7sy0rc28h8ypfyj8as255a42gmllkwl2pg")))) + "0dpn5zl8wld0c1l68wzl76wlii2k8bawq0609gnzkahwnsrqnad9")))) (build-system gnu-build-system) (arguments '(#:tests? #f ; no test suite @@ -1422,7 +1424,7 @@ used to validate and fix HTML data.") (define-public esbuild (package (name "esbuild") - (version "0.7.14") + (version "0.8.4") (source (origin (method git-fetch) @@ -1432,7 +1434,7 @@ used to validate and fix HTML data.") (file-name (git-file-name name version)) (sha256 (base32 - "1y5hqymv2r8r29f8vh8kgncj3wlkg4fzi0zlc7mgyss872ajkc7i")) + "0aaqyfnl4dncrpw8n2sqkkavx7ki7i2r9pdi82pp9syql3b5495y")) (modules '((guix build utils))) (snippet '(begin @@ -1447,14 +1449,14 @@ used to validate and fix HTML data.") (modify-phases %standard-phases (replace 'check (lambda* (#:key tests? unpack-path #:allow-other-keys) - (if tests? + (when tests? (with-directory-excursion (string-append "src/" unpack-path) (invoke "make" "test-go"))) #t))))) (inputs - `(("go-golang-org-x-sys" ,go-golang-org-x-sys))) + `(("golang.org/x/sys" ,go-golang-org-x-sys))) (native-inputs - `(("go-github-com-kylelemons-godebug" ,go-github-com-kylelemons-godebug))) + `(("github.com/kylelemons/godebug" ,go-github-com-kylelemons-godebug))) (home-page "https://github.com/evanw/esbuild") (synopsis "Bundler and minifier tool for JavaScript and TypeScript") (description @@ -7706,3 +7708,44 @@ solution for any project's interface needs: @item Easily integrated and extensible with Python or Lua scripting. @end itemize\n") (license license:expat))) + +(define-public gmnisrv + (let ((commit "a22bec51494a50c044416d469cc33e043480e7fd")) + (package + (name "gmnisrv") + (version (git-version "0" "0" commit)) + (home-page "https://git.sr.ht/~sircmpwn/gmnisrv") + (source (origin + (method git-fetch) + (uri (git-reference + (url home-page) + (commit commit))) + (sha256 + (base32 + "1k1n7cqd37jgbhxyh231bagdxdxqwpr6n5pk3gax2516w6xbzlb9")) + (file-name (git-file-name name version)))) + (build-system gnu-build-system) + (arguments + `(#:phases + (modify-phases %standard-phases + (add-before 'configure 'set-variables + (lambda _ + (setenv "CC" "gcc") + #t)) + (delete 'check) + (add-after 'install 'install-config + (lambda* (#:key outputs #:allow-other-keys) + (let ((etc (string-append (assoc-ref outputs "out") + "/etc"))) + (mkdir-p etc) + (copy-file "config.ini" (string-append etc "/gmnisrv.ini")) + #t)))))) + (inputs + `(("openssl" ,openssl))) + (native-inputs + `(("pkg-config" ,pkg-config) + ("scdoc" ,scdoc))) + (synopsis "Simple Gemini protocol server") + (description "gmnisrv is a simple Gemini protocol server written in C.") + (license (list license:gpl3+ + license:bsd-3))))) ;; for ini.c and ini.h diff --git a/gnu/packages/webkit.scm b/gnu/packages/webkit.scm index 7958375bed..d72cbfeda3 100644 --- a/gnu/packages/webkit.scm +++ b/gnu/packages/webkit.scm @@ -224,14 +224,14 @@ acceleration in mind, leveraging common 3D graphics APIs for best performance.") (define-public webkitgtk (package (name "webkitgtk") - (version "2.30.1") + (version "2.30.2") (source (origin (method url-fetch) (uri (string-append "https://www.webkitgtk.org/releases/" "webkitgtk-" version ".tar.xz")) (sha256 (base32 - "1cfnsl5kvwrbclmp7v9q9ynrz702i9ncb6xmx6972dxpmpyrvi8p")) + "0ak8slddg7gpk6m096xzkiqw9bfsrrizvqr815bw44665fyf0ry4")) (patches (search-patches "webkitgtk-share-store.patch" "webkitgtk-bind-all-fonts.patch")))) (build-system cmake-build-system) diff --git a/gnu/packages/wm.scm b/gnu/packages/wm.scm index 2fafee29a0..6cba0ad0fd 100644 --- a/gnu/packages/wm.scm +++ b/gnu/packages/wm.scm @@ -36,6 +36,7 @@ ;;; Copyright © 2020 Boris A. Dekshteyn <harlequin78@gmail.com> ;;; Copyright © 2020 Marcin Karpezo <sirmacik@wioo.waw.pl> ;;; Copyright © 2020 EuAndreh <eu@euandre.org> +;;; Copyright © 2020 Michael Rohleder <mike@rohleder.de> ;;; ;;; This file is part of GNU Guix. ;;; @@ -272,14 +273,14 @@ commands would.") (define-public i3-wm (package (name "i3-wm") - (version "4.18.2") + (version "4.18.3") (source (origin (method url-fetch) (uri (string-append "https://i3wm.org/downloads/i3-" version ".tar.bz2")) (sha256 (base32 - "030jym6b8b07yf4y6pb806hg8k77zsprv569gy0r72rh5zb1g1mj")))) + "03dijnwv2n8ak9jq59fhq0rc80m5wjc9d54fslqaivnnz81pkbjk")))) (build-system gnu-build-system) (arguments `(#:configure-flags @@ -342,7 +343,7 @@ many programming languages.") (define-public i3-gaps (package (inherit i3-wm) (name "i3-gaps") - (version "4.18.2") + (version "4.18.3") (source (origin (method url-fetch) (uri (string-append @@ -350,7 +351,7 @@ many programming languages.") version "/i3-" version ".tar.bz2")) (sha256 (base32 - "0lz08wf4b0yprzqsmymn94kiyg885dcwmh0p64v2rnf52s165g2g")))) + "1hcakwyz78lgp8mhqv7pw86jlb3m415pfql1q19rkijnhm3fn3ci")))) (home-page "https://github.com/Airblader/i3") (synopsis "Tiling window manager with gaps") (description "i3-gaps is a fork of i3wm, a tiling window manager @@ -1717,7 +1718,8 @@ productive, customizable lisp based systems.") (name "stumpish") (inputs `(("bash" ,bash) - ("rlwrap" ,rlwrap))) + ("rlwrap" ,rlwrap) + ("xprop" ,xprop))) (build-system trivial-build-system) (arguments '(#:modules ((guix build utils)) @@ -1729,6 +1731,8 @@ productive, customizable lisp based systems.") (substitute* "stumpish" (("rlwrap") (string-append (assoc-ref %build-inputs "rlwrap") "/bin/rlwrap")) + (("xprop") (string-append (assoc-ref %build-inputs "xprop") + "/bin/xprop")) (("/bin/sh") (string-append (assoc-ref %build-inputs "bash") "/bin/bash"))) (install-file "stumpish" (string-append %output "/bin"))))) diff --git a/gnu/packages/xfce.scm b/gnu/packages/xfce.scm index 2b9c13e6c9..240b73fe2e 100644 --- a/gnu/packages/xfce.scm +++ b/gnu/packages/xfce.scm @@ -662,7 +662,7 @@ like appearance, display, keyboard and mouse settings.") (define-public thunar (package (name "thunar") - (version "1.8.15") + (version "1.8.16") (source (origin (method url-fetch) (uri (string-append "https://archive.xfce.org/src/xfce/" @@ -670,7 +670,7 @@ like appearance, display, keyboard and mouse settings.") "thunar-" version ".tar.bz2")) (sha256 (base32 - "14vw4yaf9fff24zmj4dp8r8hf8mb19hl4w4l0jc8c4qzy865c93n")))) + "0k1w2zwa8z6sc8vi3frva74npks79x79n7q9p7ibwk7irfqkh4r2")))) (build-system gnu-build-system) (native-inputs `(("pkg-config" ,pkg-config) @@ -898,7 +898,7 @@ system resources, while still being visually appealing and user friendly.") (define-public xfce4-power-manager (package (name "xfce4-power-manager") - (version "1.7.0") + (version "1.7.1") (source (origin (method url-fetch) (uri (string-append "https://archive.xfce.org/src/xfce/" @@ -906,7 +906,7 @@ system resources, while still being visually appealing and user friendly.") "xfce4-power-manager-" version ".tar.bz2")) (sha256 (base32 - "0jqjwy341dxyijjm9k77a12iih6b5r3f4cmpr2lppa7mf37qqdj5")))) + "1ki088iyr266cfyq9bmmhhd27wrsrmbhsblyf4yqby03hlvqif3k")))) (build-system gnu-build-system) (native-inputs `(("pkg-config" ,pkg-config) @@ -1034,7 +1034,7 @@ several different time zones.") (define-public xfce4-notifyd (package (name "xfce4-notifyd") - (version "0.6.1") + (version "0.6.2") (source (origin (method url-fetch) (uri (string-append "https://archive.xfce.org/src/apps/" @@ -1042,7 +1042,7 @@ several different time zones.") name "-" version ".tar.bz2")) (sha256 (base32 - "1d49l2vdz4hb2c14ai5p81wz7vikh9g3ffz0gmm2kgw9kjcp8llv")))) + "0ib5s7kjbr9sy8nh89nfcc4w6qplacnk4s92iycijy2wcv389aqr")))) (build-system glib-or-gtk-build-system) (native-inputs `(("intltool" ,intltool) diff --git a/gnu/packages/zile.scm b/gnu/packages/zile.scm index 2718232e27..6169815520 100644 --- a/gnu/packages/zile.scm +++ b/gnu/packages/zile.scm @@ -2,7 +2,7 @@ ;;; Copyright © 2012, 2013, 2017, 2018 Ludovic Courtès <ludo@gnu.org> ;;; Copyright © 2014 Eric Bavier <bavier@member.fsf.org> ;;; Copyright © 2016 Efraim Flashner <efraim@flashner.co.il> -;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr> +;;; Copyright © 2018, 2020 Tobias Geerinckx-Rice <me@tobias.gr> ;;; Copyright © 2020 Marius Bakke <mbakke@fastmail.com> ;;; ;;; This file is part of GNU Guix. @@ -42,14 +42,14 @@ (define-public zile (package (name "zile") - (version "2.4.14") + (version "2.4.15") (source (origin (method url-fetch) (uri (string-append "mirror://gnu/zile/zile-" version ".tar.gz")) (sha256 (base32 - "0x3byaddms8l3g7igx6njycqsq98wgapysdb5c7lhcnajlkp8y3s")))) + "0ph3wd0cz3ysdyka6ds2w5l5b89mb5l79kwkfyk7phvq9yih1hrr")))) (build-system gnu-build-system) (arguments `(#:phases diff --git a/gnu/services/base.scm b/gnu/services/base.scm index 04bc991356..499e50bfd7 100644 --- a/gnu/services/base.scm +++ b/gnu/services/base.scm @@ -1476,10 +1476,18 @@ archive' public keys, with GUIX." #~(begin (use-modules (guix build utils)) - (unless (file-exists? "/etc/guix/acl") - (mkdir-p "/etc/guix") - (copy-file #+default-acl "/etc/guix/acl") - (chmod "/etc/guix/acl" #o600))))) + ;; If the ACL already exists, move it out of the way. Create a backup + ;; if it's a regular file: it's likely that the user manually updated + ;; it with 'guix archive --authorize'. + (if (file-exists? "/etc/guix/acl") + (if (and (symbolic-link? "/etc/guix/acl") + (store-file-name? (readlink "/etc/guix/acl"))) + (delete-file "/etc/guix/acl") + (rename-file "/etc/guix/acl" "/etc/guix/acl.bak")) + (mkdir-p "/etc/guix")) + + ;; Installed the declared ACL. + (symlink #+default-acl "/etc/guix/acl")))) (define %default-authorized-guix-keys ;; List of authorized substitute keys. @@ -1562,8 +1570,10 @@ proxy of 'guix-daemon'...~%") (ice-9 match) (gnu build shepherd))) (start - (with-imported-modules (source-module-closure - '((gnu build shepherd))) + (with-imported-modules `(((guix config) => ,(make-config.scm)) + ,@(source-module-closure + '((gnu build shepherd)) + #:select? not-config?)) #~(lambda args (define proxy ;; HTTP/HTTPS proxy. The 'http_proxy' variable is set by @@ -1732,6 +1742,8 @@ proxy of 'guix-daemon'...~%") (default "nar")) (cache guix-publish-configuration-cache ;#f | string (default #f)) + (cache-bypass-threshold guix-publish-configuration-cache-bypass-threshold + (default (* 10 (expt 2 20)))) ;integer (workers guix-publish-configuration-workers ;#f | integer (default #f)) (ttl guix-publish-configuration-ttl ;#f | integer @@ -1766,7 +1778,7 @@ raise a deprecation warning if the 'compression-level' field was used." lst)))) (match-record config <guix-publish-configuration> - (guix port host nar-path cache workers ttl) + (guix port host nar-path cache workers ttl cache-bypass-threshold) (list (shepherd-service (provision '(guix-publish)) (requirement '(guix-daemon)) @@ -1788,7 +1800,11 @@ raise a deprecation warning if the 'compression-level' field was used." "s")) #~()) #$@(if cache - #~((string-append "--cache=" #$cache)) + #~((string-append "--cache=" #$cache) + #$(string-append + "--cache-bypass-threshold=" + (number->string + cache-bypass-threshold))) #~())) ;; Make sure we run in a UTF-8 locale so we can produce @@ -2096,22 +2112,52 @@ instance." 'swap (lambda (device) (define requirement - (if (string-prefix? "/dev/mapper/" device) + (if (and (string? device) + (string-prefix? "/dev/mapper/" device)) (list (symbol-append 'device-mapping- (string->symbol (basename device)))) '())) - (shepherd-service - (provision (list (symbol-append 'swap- (string->symbol device)))) - (requirement `(udev ,@requirement)) - (documentation "Enable the given swap device.") - (start #~(lambda () - (restart-on-EINTR (swapon #$device)) - #t)) - (stop #~(lambda _ - (restart-on-EINTR (swapoff #$device)) - #f)) - (respawn? #f))))) + (define (device-lookup device) + ;; The generic 'find-partition' procedures could return a partition + ;; that's not swap space, but that's unlikely. + (cond ((uuid? device) + #~(find-partition-by-uuid #$(uuid-bytevector device))) + ((file-system-label? device) + #~(find-partition-by-label + #$(file-system-label->string device))) + (else + device))) + + (define service-name + (symbol-append 'swap- + (string->symbol + (cond ((uuid? device) + (string-take (uuid->string device) 6)) + ((file-system-label? device) + (file-system-label->string device)) + (else + device))))) + + (with-imported-modules (source-module-closure '((gnu build file-systems))) + (shepherd-service + (provision (list service-name)) + (requirement `(udev ,@requirement)) + (documentation "Enable the given swap device.") + (modules `((gnu build file-systems) + ,@%default-modules)) + (start #~(lambda () + (let ((device #$(device-lookup device))) + (and device + (begin + (restart-on-EINTR (swapon device)) + #t))))) + (stop #~(lambda _ + (let ((device #$(device-lookup device))) + (when device + (restart-on-EINTR (swapoff device))) + #f))) + (respawn? #f)))))) (define (swap-service device) "Return a service that uses @var{device} as a swap device." diff --git a/gnu/services/databases.scm b/gnu/services/databases.scm index 2bddf70f71..d7b4594b9e 100644 --- a/gnu/services/databases.scm +++ b/gnu/services/databases.scm @@ -30,6 +30,7 @@ #:use-module (gnu packages databases) #:use-module (guix build-system trivial) #:use-module (guix build union) + #:use-module (guix deprecation) #:use-module (guix modules) #:use-module (guix packages) #:use-module (guix records) @@ -146,8 +147,7 @@ host all all ::1/128 md5")) (define-record-type* <postgresql-configuration> postgresql-configuration make-postgresql-configuration postgresql-configuration? - (postgresql postgresql-configuration-postgresql ;<package> - (default postgresql)) + (postgresql postgresql-configuration-postgresql) ;<package> (port postgresql-configuration-port (default 5432)) (locale postgresql-configuration-locale @@ -278,15 +278,15 @@ host all all ::1/128 md5")) (service-extension account-service-type (const %postgresql-accounts)) (service-extension profile-service-type - (compose list postgresql-configuration-postgresql)))) - (default-value (postgresql-configuration)))) - -(define* (postgresql-service #:key (postgresql postgresql) - (port 5432) - (locale "en_US.utf8") - (config-file (postgresql-config-file)) - (data-directory "/var/lib/postgresql/data") - (extension-packages '())) + (compose list postgresql-configuration-postgresql)))))) + +(define-deprecated (postgresql-service #:key (postgresql postgresql) + (port 5432) + (locale "en_US.utf8") + (config-file (postgresql-config-file)) + (data-directory "/var/lib/postgresql/data") + (extension-packages '())) + postgresql-service-type "Return a service that runs @var{postgresql}, the PostgreSQL database server. The PostgreSQL daemon loads its runtime configuration from @var{config-file} diff --git a/gnu/services/desktop.scm b/gnu/services/desktop.scm index 3a3fd8fd1b..265cf9f35f 100644 --- a/gnu/services/desktop.scm +++ b/gnu/services/desktop.scm @@ -11,6 +11,7 @@ ;;; Copyright © 2019 Tim Gesthuizen <tim.gesthuizen@yahoo.de> ;;; Copyright © 2019 David Wilson <david@daviwil.com> ;;; Copyright © 2020 Tobias Geerinckx-Rice <me@tobias.gr> +;;; Copyright © 2020 Reza Alizadeh Majd <r.majd@pantherx.org> ;;; ;;; This file is part of GNU Guix. ;;; @@ -53,6 +54,7 @@ #:use-module (gnu packages suckless) #:use-module (gnu packages linux) #:use-module (gnu packages libusb) + #:use-module (gnu packages lxqt) #:use-module (gnu packages mate) #:use-module (gnu packages nfs) #:use-module (gnu packages enlightenment) @@ -127,6 +129,10 @@ mate-desktop-service mate-desktop-service-type + lxqt-desktop-configuration + lxqt-desktop-configuration? + lxqt-desktop-service-type + xfce-desktop-configuration xfce-desktop-configuration? xfce-desktop-service @@ -1009,6 +1015,36 @@ system as root from within a user session, after the user has authenticated with the administrator's password." (service xfce-desktop-service-type config)) ++ +;;; +;;; Lxqt desktop service. +;;; + +(define-record-type* <lxqt-desktop-configuration> lxqt-desktop-configuration + make-lxqt-desktop-configuration + lxqt-desktop-configuration? + (lxqt lxqt-package + (default lxqt))) + +(define (lxqt-polkit-settings config) + "Return the list of LXQt dependencies that provide polkit actions and +rules." + (let ((lxqt (lxqt-package config))) + (map (lambda (name) + ((package-direct-input-selector name) lxqt)) + '("lxqt-admin")))) + +(define lxqt-desktop-service-type + (service-type + (name 'lxqt-desktop) + (extensions + (list (service-extension polkit-service-type + lxqt-polkit-settings) + (service-extension profile-service-type + (compose list lxqt-package)))) + (default-value (lxqt-desktop-configuration)) + (description "Run LXQt desktop environment."))) + ;;; ;;; X11 socket directory service diff --git a/gnu/services/dns.scm b/gnu/services/dns.scm index 572880561c..b339eb0619 100644 --- a/gnu/services/dns.scm +++ b/gnu/services/dns.scm @@ -700,7 +700,7 @@ cache.size = 100 * MB (documentation "Run the Knot Resolver daemon.") (start #~(make-forkexec-constructor '(#$(file-append package "/sbin/kresd") - "-c" #$kresd-config-file "-f" "1" + "-c" #$kresd-config-file "-n" "/var/cache/knot-resolver"))) (stop #~(make-kill-destructor))) (shepherd-service diff --git a/gnu/services/ganeti.scm b/gnu/services/ganeti.scm index d87db5b9ac..0a34ea6a5e 100644 --- a/gnu/services/ganeti.scm +++ b/gnu/services/ganeti.scm @@ -430,7 +430,7 @@ appropriate requests to this daemon."))) (description "@command{ganeti-luxid} is a daemon used to answer queries related to the configuration and the current live state of a Ganeti cluster. -Additionally, it is the authorative daemon for the Ganeti job queue. Jobs can +Additionally, it is the authoritative daemon for the Ganeti job queue. Jobs can be submitted via this daemon and it schedules and starts them."))) (define-record-type* <ganeti-rapi-configuration> diff --git a/gnu/services/guix.scm b/gnu/services/guix.scm index a47c4bd941..b909c651cc 100644 --- a/gnu/services/guix.scm +++ b/gnu/services/guix.scm @@ -188,8 +188,11 @@ ;; libraries, but it means that the Guile libraries ;; needed for the Guix Build Coordinator don't need ;; to be individually specified here. - (map second (package-inputs - guix-build-coordinator-package))) + (append + (map second (package-inputs + guix-build-coordinator-package)) + (map second (package-propagated-inputs + guix-build-coordinator-package)))) #~(begin (use-modules (srfi srfi-1) (ice-9 match) @@ -200,16 +203,21 @@ (guix-build-coordinator build-allocator) (guix-build-coordinator coordinator)) + (setvbuf (current-output-port) 'line) + (setvbuf (current-error-port) 'line) + + (simple-format #t "starting the guix-build-coordinator:\n ~A\n" + (current-filename)) (let* ((metrics-registry (make-metrics-registry #:namespace - "guixbuildcoordinator_")) + "guixbuildcoordinator")) (datastore (database-uri->datastore #$database-uri-string #:metrics-registry metrics-registry)) (hooks (list #$@(map (match-lambda ((name . hook-gexp) - #~(cons name #$hook-gexp))) + #~(cons '#$name #$hook-gexp))) hooks))) (hooks-with-defaults `(,@hooks @@ -265,7 +273,8 @@ #:environment-variables `(,(string-append "GUIX_LOCPATH=" #$glibc-utf8-locales "/lib/locale") - "LC_ALL=en_US.utf8") + "LC_ALL=en_US.utf8" + "PATH=/run/current-system/profile/bin") ; for hooks #:log-file "/var/log/guix-build-coordinator/coordinator.log")) (stop #~(make-kill-destructor)))))) @@ -363,6 +372,8 @@ #~(begin (use-modules (guix build utils)) + (define %user (getpw "guix-build-coordinator-agent")) + (mkdir-p "/var/log/guix-build-coordinator") ;; Allow writing the PID file diff --git a/gnu/services/monitoring.scm b/gnu/services/monitoring.scm index 511f4fb2fe..da3d736ba6 100644 --- a/gnu/services/monitoring.scm +++ b/gnu/services/monitoring.scm @@ -279,11 +279,11 @@ configuration file.")) (define (zabbix-server-activation config) "Return the activation gexp for CONFIG." - (with-imported-modules '((guix build utils) - (ice-9 rdelim)) + (with-imported-modules '((guix build utils)) #~(begin (use-modules (guix build utils) (ice-9 rdelim)) + (let ((user (getpw #$(zabbix-server-configuration-user config)))) (for-each (lambda (file) (let ((directory (dirname file))) @@ -393,8 +393,7 @@ configuration file.")) (define (zabbix-agent-activation config) "Return the activation gexp for CONFIG." - (with-imported-modules '((guix build utils) - (ice-9 rdelim)) + (with-imported-modules '((guix build utils)) #~(begin (use-modules (guix build utils) (ice-9 rdelim)) diff --git a/gnu/services/networking.scm b/gnu/services/networking.scm index 64f54e787f..9ec0f6a9ca 100644 --- a/gnu/services/networking.scm +++ b/gnu/services/networking.scm @@ -61,7 +61,9 @@ #:use-module (srfi srfi-1) #:use-module (srfi srfi-9) #:use-module (srfi srfi-26) + #:use-module (srfi srfi-43) #:use-module (ice-9 match) + #:use-module (json) #:re-export (static-networking-service static-networking-service-type) #:export (%facebook-host-aliases @@ -180,7 +182,17 @@ pagekite-configuration-kitesecret pagekite-configuration-frontend pagekite-configuration-kites - pagekite-configuration-extra-file)) + pagekite-configuration-extra-file + + yggdrasil-service-type + yggdrasil-configuration + yggdrasil-configuration? + yggdrasil-configuration-autoconf? + yggdrasil-configuration-config-file + yggdrasil-configuration-log-level + yggdrasil-configuration-log-to + yggdrasil-configuration-json-config + yggdrasil-configuration-package)) ;;; Commentary: ;;; @@ -1750,4 +1762,107 @@ table inet filter { "Run @url{https://pagekite.net/,PageKite}, a tunneling solution to make local servers publicly accessible on the web, even behind NATs and firewalls."))) + +;;; +;;; Yggdrasil +;;; + +(define-record-type* <yggdrasil-configuration> + yggdrasil-configuration + make-yggdrasil-configuration + yggdrasil-configuration? + (package yggdrasil-configuration-package + (default yggdrasil)) + (json-config yggdrasil-configuration-json-config + (default '())) + (config-file yggdrasil-config-file + (default "/etc/yggdrasil-private.conf")) + (autoconf? yggdrasil-configuration-autoconf? + (default #f)) + (log-level yggdrasil-configuration-log-level + (default 'info)) + (log-to yggdrasil-configuration-log-to + (default 'stdout))) + +(define (yggdrasil-configuration-file config) + (define (scm->yggdrasil-json x) + (define key-value? + dotted-list?) + (define (param->camel str) + (string-concatenate + (map + string-capitalize + (string-split str (cut eqv? <> #\-))))) + (cond + ((key-value? x) + (let ((k (car x)) + (v (cdr x))) + (cons + (if (symbol? k) + (param->camel (symbol->string k)) + k) + v))) + ((list? x) (map scm->yggdrasil-json x)) + ((vector? x) (vector-map scm->yggdrasil-json x)) + (else x))) + (computed-file + "yggdrasil.conf" + #~(call-with-output-file #$output + (lambda (port) + ;; it's HJSON, so comments are a-okay + (display "# Generated by yggdrasil-service\n" port) + (display #$(scm->json-string + (scm->yggdrasil-json + (yggdrasil-configuration-json-config config))) + port))))) + +(define (yggdrasil-shepherd-service config) + "Return a <shepherd-service> for yggdrasil with CONFIG." + (define yggdrasil-command + #~(append + (list (string-append + #$(yggdrasil-configuration-package config) + "/bin/yggdrasil") + "-useconffile" + #$(yggdrasil-configuration-file config)) + (if #$(yggdrasil-configuration-autoconf? config) + '("-autoconf") + '()) + (let ((extraconf #$(yggdrasil-config-file config))) + (if extraconf + (list "-extraconffile" extraconf) + '())) + (list "-loglevel" + #$(symbol->string + (yggdrasil-configuration-log-level config)) + "-logto" + #$(symbol->string + (yggdrasil-configuration-log-to config))))) + (list (shepherd-service + (documentation "Connect to the Yggdrasil mesh network") + (provision '(yggdrasil)) + (requirement '(networking)) + (start #~(make-forkexec-constructor + #$yggdrasil-command + #:log-file "/var/log/yggdrasil.log" + #:group "yggdrasil")) + (stop #~(make-kill-destructor))))) + +(define %yggdrasil-accounts + (list (user-group (name "yggdrasil") (system? #t)))) + +(define yggdrasil-service-type + (service-type + (name 'yggdrasil) + (description + "Connect to the Yggdrasil mesh network. +See yggdrasil -genconf for config options.") + (extensions + (list (service-extension shepherd-root-service-type + yggdrasil-shepherd-service) + (service-extension account-service-type + (const %yggdrasil-accounts)) + (service-extension profile-service-type + (compose list yggdrasil-configuration-package)))))) + ;;; networking.scm ends here diff --git a/gnu/services/virtualization.scm b/gnu/services/virtualization.scm index edd0b644f5..eaf0bbde43 100644 --- a/gnu/services/virtualization.scm +++ b/gnu/services/virtualization.scm @@ -875,7 +875,16 @@ that will be listening to receive secret keys on port 1004, TCP." (permit-root-login #t) (allow-empty-passwords? #t) (password-authentication? #t))) - %base-services/hurd)))) + + ;; By default, the secret service introduces a pre-initialized + ;; /etc/guix/acl file in the childhurd. Thus, clear + ;; 'authorize-key?' so that it's not overridden at activation + ;; time. + (modify-services %base-services/hurd + (guix-service-type config => + (guix-configuration + (inherit config) + (authorize-key? #f)))))))) (define-record-type* <hurd-vm-configuration> hurd-vm-configuration make-hurd-vm-configuration diff --git a/gnu/services/web.scm b/gnu/services/web.scm index a74c6c54b4..7e17dac6e2 100644 --- a/gnu/services/web.scm +++ b/gnu/services/web.scm @@ -14,6 +14,7 @@ ;;; Copyright © 2020 Tobias Geerinckx-Rice <me@tobias.gr> ;;; Copyright © 2020 Arun Isaac <arunisaac@systemreboot.net> ;;; Copyright © 2020 Oleg Pykhalov <go.wigust@gmail.com> +;;; Copyright © 2020 Alexandru-Sergiu Marton <brown121407@posteo.ro> ;;; ;;; This file is part of GNU Guix. ;;; @@ -1134,7 +1135,7 @@ a webserver.") #:user "hpcguix-web" #:group "hpcguix-web" #:environment-variables - (list "XDG_CACHE_HOME=/var/cache" + (list "XDG_CACHE_HOME=/var/cache/guix/web" "SSL_CERT_DIR=/etc/ssl/certs") #:log-file #$%hpcguix-web-log-file)) (stop #~(make-kill-destructor)))))) @@ -1798,3 +1799,75 @@ WSGIPassAuthorization On "Run Mumi, a Web interface to the Debbugs bug-tracking server.") (default-value (mumi-configuration)))) + +(define %default-gmnisrv-config-file + (plain-file "gmnisrv.ini" " +listen=0.0.0.0:1965 [::]:1965 + +[:tls] +store=/var/lib/gemini/certs + +organization=gmnisrv on Guix user + +[localhost] +root=/srv/gemini +")) + +(define-record-type* <gmnisrv-configuration> + gmnisrv-configuration make-gmnisrv-configuration + gmnisrv-configuration? + (package gmnisrv-configuration-package + (default gmnisrv)) + (config-file gmnisrv-configuration-config-file + (default %default-gmnisrv-config-file))) + +(define gmnisrv-shepherd-service + (match-lambda + (($ <gmnisrv-configuration> package config-file) + (list (shepherd-service + (provision '(gmnisrv)) + (requirement '(networking)) + (documentation "Run the gmnisrv Gemini server.") + (start (let ((gmnisrv (file-append package "/bin/gmnisrv"))) + #~(make-forkexec-constructor + (list #$gmnisrv "-C" #$config-file) + #:user "gmnisrv" #:group "gmnisrv" + #:log-file "/var/log/gmnisrv.log"))) + (stop #~(make-kill-destructor))))))) + +(define %gmnisrv-accounts + (list (user-group (name "gmnisrv") (system? #t)) + (user-account + (name "gmnisrv") + (group "gmnisrv") + (system? #t) + (comment "gmnisrv Gemini server") + (home-directory "/var/empty") + (shell (file-append shadow "/sbin/nologin"))))) + +(define %gmnisrv-activation + (with-imported-modules '((guix build utils)) + #~(begin + (use-modules (guix build utils)) + + (mkdir-p "/var/lib/gemini/certs") + (let* ((pw (getpwnam "gmnisrv")) + (uid (passwd:uid pw)) + (gid (passwd:gid pw))) + (chown "/var/lib/gemini" uid gid) + (chown "/var/lib/gemini/certs" uid gid))))) + +(define gmnisrv-service-type + (service-type + (name 'guix) + (extensions + (list (service-extension activation-service-type + (const %gmnisrv-activation)) + (service-extension account-service-type + (const %gmnisrv-accounts)) + (service-extension shepherd-root-service-type + gmnisrv-shepherd-service))) + (description + "Run the gmnisrv Gemini server.") + (default-value + (gmnisrv-configuration)))) diff --git a/gnu/system.scm b/gnu/system.scm index a3122eaa65..b257ea0385 100644 --- a/gnu/system.scm +++ b/gnu/system.scm @@ -148,6 +148,7 @@ boot-parameters-bootloader-name boot-parameters-bootloader-menu-entries boot-parameters-store-device + boot-parameters-store-directory-prefix boot-parameters-store-mount-point boot-parameters-locale boot-parameters-kernel @@ -289,16 +290,21 @@ directly by the user." ;; Because we will use the 'store-device' to create the GRUB search command, ;; the 'store-device' has slightly different semantics than 'root-device'. ;; The 'store-device' can be a file system uuid, a file system label, or #f, - ;; but it cannot be a device path such as "/dev/sda3", since GRUB would not - ;; understand that. The 'root-device', on the other hand, corresponds + ;; but it cannot be a device file name such as "/dev/sda3", since GRUB would + ;; not understand that. The 'root-device', on the other hand, corresponds ;; exactly to the device field of the <file-system> object representing the - ;; OS's root file system, so it might be a device path like "/dev/sda3". + ;; OS's root file system, so it might be a device file name like + ;; "/dev/sda3". The 'store-directory-prefix' field contains #f or the store + ;; file name inside the 'store-device' as it is seen by GRUB, e.g. it would + ;; contain "/storefs" if the store is located in that subvolume of a btrfs + ;; partition. (root-device boot-parameters-root-device) (bootloader-name boot-parameters-bootloader-name) (bootloader-menu-entries ;list of <menu-entry> boot-parameters-bootloader-menu-entries) (store-device boot-parameters-store-device) (store-mount-point boot-parameters-store-mount-point) + (store-directory-prefix boot-parameters-store-directory-prefix) (locale boot-parameters-locale) (kernel boot-parameters-kernel) (kernel-arguments boot-parameters-kernel-arguments) @@ -394,6 +400,17 @@ file system labels." (_ ;the old format root-device)))) + (store-directory-prefix + (match (assq 'store rest) + (('store . store-data) + (match (assq 'directory-prefix store-data) + (('directory-prefix prefix) prefix) + ;; No directory-prefix found. + (_ #f))) + (_ + ;; No store found, old format. + #f))) + (store-mount-point (match (assq 'store rest) (('store ('device _) ('mount-point mount-point) _ ...) @@ -1294,6 +1311,7 @@ such as '--root' and '--load' to <boot-parameters>." (let* ((initrd (and (not (operating-system-hurd os)) (operating-system-initrd-file os))) (store (operating-system-store-file-system os)) + (file-systems (operating-system-file-systems os)) (locale (operating-system-locale os)) (bootloader (bootloader-configuration-bootloader (operating-system-bootloader os))) @@ -1315,6 +1333,7 @@ such as '--root' and '--load' to <boot-parameters>." (bootloader-configuration-menu-entries (operating-system-bootloader os))) (locale locale) (store-device (ensure-not-/dev (file-system-device store))) + (store-directory-prefix (btrfs-store-subvolume-file-name file-systems)) (store-mount-point (file-system-mount-point store))))) (define (device->sexp device) @@ -1371,7 +1390,9 @@ being stored into the \"parameters\" file)." (device #$(device->sexp (boot-parameters-store-device params))) (mount-point #$(boot-parameters-store-mount-point - params)))) + params)) + (directory-prefix + #$(boot-parameters-store-directory-prefix params)))) #:set-load-path? #f))) (define-gexp-compiler (operating-system-compiler (os <operating-system>) diff --git a/gnu/system/examples/yggdrasil.tmpl b/gnu/system/examples/yggdrasil.tmpl new file mode 100644 index 0000000000..be80bf4de9 --- /dev/null +++ b/gnu/system/examples/yggdrasil.tmpl @@ -0,0 +1,60 @@ +;; This is an operating system configuration template +;; for a "bare bones" setup, with no X11 display server. + +(use-modules (gnu)) +(use-service-modules networking ssh) +(use-package-modules admin curl networking screen) + +(operating-system + (host-name "ruby-guard-5545") + (timezone "Europe/Budapest") + (locale "en_US.utf8") + + ;; Boot in "legacy" BIOS mode, assuming /dev/sdX is the + ;; target hard disk, and "my-root" is the label of the target + ;; root file system. + (bootloader (bootloader-configuration + (bootloader grub-bootloader) + (target "/dev/sdX"))) + (file-systems (cons (file-system + (device (file-system-label "my-root")) + (mount-point "/") + (type "ext4")) + %base-file-systems)) + (users (cons (user-account + (name "alice") + (comment "Bob's sister") + (group "users") + ;; adding her to the yggdrasil group means she can use + ;; yggdrasilctl to modify the configuration + (supplementary-groups '("wheel" "yggdrasil"))) + %base-user-accounts)) + + ;; Globally-installed packages. + (packages (cons* screen curl %base-packages)) + + ;; Add services to the baseline: a DHCP client and + ;; an SSH server. + ;; If you add an /etc/yggdrasil-private.conf, you can log in to ssh + ;; using your Yggdrasil IPv6 address from another machine running Yggdrasil. + ;; Alternatively, the client can sit behind a router that has Yggdrasil. + ;; That file is specifically _not_ handled by Guix, because we don't want its + ;; contents to sit in the world-readable /gnu/store. + (services + (append + (list + (service dhcp-client-service-type) + (service yggdrasil-service-type + (yggdrasil-configuration + (log-to 'stdout) + (log-level 'debug) + (autoconf? #f) + (json-config + ;; choose a few from + ;; https://github.com/yggdrasil-network/public-peers + '((peers . #("tcp://1.2.3.4:1337")))) + (config-file #f))) + (service openssh-service-type + (openssh-configuration + (port-number 2222)))) + %base-services))) diff --git a/gnu/system/image.scm b/gnu/system/image.scm index bc6610b14c..4075a26552 100644 --- a/gnu/system/image.scm +++ b/gnu/system/image.scm @@ -66,6 +66,7 @@ efi-disk-image iso9660-image + arm32-disk-image arm64-disk-image image-with-os @@ -73,6 +74,7 @@ qcow2-image-type iso-image-type uncompressed-iso-image-type + arm32-image-type arm64-image-type image-with-label @@ -126,10 +128,10 @@ (label "GUIX_IMAGE") (flags '(boot))))))) -(define arm64-disk-image +(define arm32-disk-image (image (format 'disk-image) - (target "aarch64-linux-gnu") + (target "arm-linux-gnueabihf") (partitions (list (partition (inherit root-partition) @@ -138,6 +140,11 @@ ;; fails. (volatile-root? #f))) +(define arm64-disk-image + (image + (inherit arm32-disk-image) + (target "aarch64-linux-gnu"))) + ;;; ;;; Images types. @@ -179,9 +186,14 @@ set to the given OS." (compression? #f)) <>)))) +(define arm32-image-type + (image-type + (name 'arm32-raw) + (constructor (cut image-with-os arm32-disk-image <>)))) + (define arm64-image-type (image-type - (name 'arm) + (name 'arm64-raw) (constructor (cut image-with-os arm64-disk-image <>)))) @@ -342,6 +354,9 @@ used in the image." #$output image-root))))) (computed-file "partition.img" image-builder + ;; Allow offloading so that this I/O-intensive process + ;; doesn't run on the build farm's head node. + #:local-build? #f #:options `(#:references-graphs ,inputs)))) (define (partition->config partition) @@ -476,6 +491,9 @@ used in the image. " #:volume-id #$root-label #:volume-uuid #$root-uuid))))) (computed-file name builder + ;; Allow offloading so that this I/O-intensive process + ;; doesn't run on the build farm's head node. + #:local-build? #f #:options `(#:references-graphs ,inputs #:substitutable? ,substitutable?)))) diff --git a/gnu/system/uuid.scm b/gnu/system/uuid.scm index c8352f4933..f4c4be6e2b 100644 --- a/gnu/system/uuid.scm +++ b/gnu/system/uuid.scm @@ -1,7 +1,7 @@ ;;; GNU Guix --- Functional package management for GNU ;;; Copyright © 2016, 2017, 2018, 2019 Ludovic Courtès <ludo@gnu.org> ;;; Copyright © 2017 Danny Milosavljevic <dannym@scratchpost.org> -;;; Copyright © 2019 Tobias Geerinckx-Rice <me@tobias.gr> +;;; Copyright © 2019, 2020 Tobias Geerinckx-Rice <me@tobias.gr> ;;; ;;; This file is part of GNU Guix. ;;; @@ -42,6 +42,7 @@ string->ext2-uuid string->ext3-uuid string->ext4-uuid + string->bcachefs-uuid string->btrfs-uuid string->fat-uuid string->jfs-uuid @@ -236,6 +237,7 @@ ISO9660 UUID representation." (define string->ext2-uuid string->dce-uuid) (define string->ext3-uuid string->dce-uuid) (define string->ext4-uuid string->dce-uuid) +(define string->bcachefs-uuid string->dce-uuid) (define string->btrfs-uuid string->dce-uuid) (define string->jfs-uuid string->dce-uuid) @@ -251,14 +253,14 @@ ISO9660 UUID representation." (define %uuid-parsers (vhashq - ('dce 'ext2 'ext3 'ext4 'btrfs 'jfs 'luks => string->dce-uuid) + ('dce 'ext2 'ext3 'ext4 'bcachefs 'btrfs 'jfs 'luks => string->dce-uuid) ('fat32 'fat16 'fat => string->fat-uuid) ('ntfs => string->ntfs-uuid) ('iso9660 => string->iso9660-uuid))) (define %uuid-printers (vhashq - ('dce 'ext2 'ext3 'ext4 'btrfs 'jfs 'luks => dce-uuid->string) + ('dce 'ext2 'ext3 'ext4 'bcachefs 'btrfs 'jfs 'luks => dce-uuid->string) ('iso9660 => iso9660-uuid->string) ('fat32 'fat16 'fat => fat-uuid->string) ('ntfs => ntfs-uuid->string))) diff --git a/gnu/system/vm.scm b/gnu/system/vm.scm index 80a8618729..21d777a3fe 100644 --- a/gnu/system/vm.scm +++ b/gnu/system/vm.scm @@ -641,7 +641,10 @@ of the GNU system as described by OS." (let ((target (file-system-mount-point fs)) (source (file-system-device fs))) (or (string=? target "/") - (string-prefix? "/dev/" source)))) + (and (string? source) + (string-prefix? "/dev/" source)) + (uuid? source) + (file-system-label? source)))) (operating-system-file-systems os))) (define root-uuid diff --git a/gnu/tests/base.scm b/gnu/tests/base.scm index 482310cc12..e5f9b87b1d 100644 --- a/gnu/tests/base.scm +++ b/gnu/tests/base.scm @@ -880,7 +880,7 @@ non-ASCII names from /tmp.") (test-equal "avahi-browse" 0 (marionette-eval - '(system* "avahi-browse" "-avt") + '(system* "/run/current-system/profile/bin/avahi-browse" "-avt") marionette)) (test-assert "getaddrinfo .local" diff --git a/gnu/tests/databases.scm b/gnu/tests/databases.scm index e0544bbcd2..d3045cc3f7 100644 --- a/gnu/tests/databases.scm +++ b/gnu/tests/databases.scm @@ -215,7 +215,9 @@ (define %postgresql-os (simple-operating-system - (service postgresql-service-type))) + (service postgresql-service-type + (postgresql-configuration + (postgresql postgresql-10))))) (define (run-postgresql-test) "Run tests in %POSTGRESQL-OS." diff --git a/gnu/tests/guix.scm b/gnu/tests/guix.scm index 20b67d55d3..af7d8f0b21 100644 --- a/gnu/tests/guix.scm +++ b/gnu/tests/guix.scm @@ -156,6 +156,7 @@ (service dhcp-client-service-type) (service postgresql-service-type (postgresql-configuration + (postgresql postgresql-10) (config-file (postgresql-config-file (hba-file diff --git a/gnu/tests/install.scm b/gnu/tests/install.scm index 86bd93966b..2d62a873ca 100644 --- a/gnu/tests/install.scm +++ b/gnu/tests/install.scm @@ -1211,6 +1211,16 @@ build (current-guix) and then store a couple of full system images.") #$marionette) (screenshot "installer-run.ppm") + (unless #$encrypted? + ;; At this point, user partitions are formatted and the installer is + ;; waiting for us to start the final step: generating the + ;; configuration file, etc. Set a fixed UUID on the swap partition + ;; that matches what 'installation-target-os-for-gui-tests' expects. + (marionette-eval* '(invoke #$(file-append util-linux "/sbin/swaplabel") + "-U" "11111111-2222-3333-4444-123456789abc" + "/dev/vda2") + #$marionette)) + (marionette-eval* '(conclude-installation installer-socket) #$marionette) @@ -1257,8 +1267,12 @@ build (current-guix) and then store a couple of full system images.") '("wheel" "audio" "video")))) %base-user-accounts)) ;; The installer does not create a swap device in guided mode with - ;; encryption support. - (swap-devices (if encrypted? '() '("/dev/vda2"))) + ;; encryption support. The installer produces a UUID for the partition; + ;; this "UUID" is explicitly set in 'gui-test-program' to the value shown + ;; below. + (swap-devices (if encrypted? + '() + (list (uuid "11111111-2222-3333-4444-123456789abc")))) (services (cons (service dhcp-client-service-type) (operating-system-user-services %minimal-os-on-vda))))) diff --git a/gnu/tests/mail.scm b/gnu/tests/mail.scm index a50fb1dbca..eb8952b33a 100644 --- a/gnu/tests/mail.scm +++ b/gnu/tests/mail.scm @@ -205,8 +205,7 @@ acl_check_data: (port-forwardings '((1025 . 25))))) (define test - (with-imported-modules '((gnu build marionette) - (ice-9 ftw)) + (with-imported-modules '((gnu build marionette)) #~(begin (use-modules (rnrs base) (srfi srfi-64) diff --git a/gnu/tests/monitoring.scm b/gnu/tests/monitoring.scm index d20b8ac59e..7371b02fe1 100644 --- a/gnu/tests/monitoring.scm +++ b/gnu/tests/monitoring.scm @@ -307,7 +307,9 @@ zabbix||{} (let ((base-os (simple-operating-system (service dhcp-client-service-type) - (postgresql-service) + (service postgresql-service-type + (postgresql-configuration + (postgresql postgresql-10))) (service zabbix-front-end-service-type (zabbix-front-end-configuration (db-password "zabbix"))) diff --git a/gnu/tests/reconfigure.scm b/gnu/tests/reconfigure.scm index 928a210a94..52beeef447 100644 --- a/gnu/tests/reconfigure.scm +++ b/gnu/tests/reconfigure.scm @@ -260,7 +260,9 @@ bootloader's configuration file." ;; test suite, the bootloader installer script is omitted. 'grub-install' ;; would attempt to write directly to the virtual disk if the ;; installation script were run. - (test (install-bootloader-program #f #f bootcfg bootcfg-file #f "/"))))) + (test + (install-bootloader-program #f #f #f bootcfg bootcfg-file #f "/"))))) + (define %test-switch-to-system (system-test diff --git a/gnu/tests/web.scm b/gnu/tests/web.scm index 7513eab2e4..7f4518acd2 100644 --- a/gnu/tests/web.scm +++ b/gnu/tests/web.scm @@ -567,7 +567,9 @@ HTTP-PORT." (config (httpd-config-file (listen '("8080")))))) - (service postgresql-service-type) + (service postgresql-service-type + (postgresql-configuration + (postgresql postgresql-10))) (service patchwork-service-type (patchwork-configuration (patchwork patchwork) |