Merge branch 'master' into core-updates

This commit is contained in:
Marius Bakke 2020-04-11 00:10:23 +02:00
commit bdb90df764
No known key found for this signature in database
GPG key ID: A2A06DF2A33A54FA
51 changed files with 1151 additions and 292 deletions

View file

@ -2203,6 +2203,18 @@ ping -c 3 gnu.org
Setting up network access is almost always a requirement because the
image does not contain all the software and tools that may be needed.
@cindex proxy, during system installation
If you need HTTP and HTTPS access to go through a proxy, run the
following command:
@example
herd set-http-proxy guix-daemon @var{URL}
@end example
@noindent
where @var{URL} is the proxy URL, for example
@code{http://example.org:8118}.
@cindex installing over SSH
If you want to, you can continue the installation remotely by starting
an SSH server:

View file

@ -11,12 +11,18 @@
(version 0)
(entry (commit "0468455e7d279c89ea3ad1b51935efb2b785ec47")
(title (en "Rottlog service added to @code{%base-services}"))
(title (en "Rottlog service added to @code{%base-services}")
(de "Rottlog-Dienst ist nun Teil der @code{%base-services}"))
(body (en "An instance of @code{rottlog-service-type}, the system
service responsible for log rotation, has been added to @code{%base-services}.
If your operating system configuration for Guix System is explicitly adding
@code{rottlog-service-type} to the services, you should now remove it. See
the ``Log Rotation'' section of the manual for more information.")))
the ``Log Rotation'' section of the manual for more information.")
(de "Eine Instanz des @code{rottlog-service-type} für
Log-Rotation wurde zu den @code{%base-services} hinzugefügt. Wenn der
Systemdienst bereits in Ihrer Konfiguration für Guix System ausdrücklich
genannt wurde, sollten Sie ihn jetzt daraus entfernen. Siehe den Abschnitt
Log-Rotation im Handbuch für weitere Informationen.")))
(entry (commit "b6bee63bed4f013064c0d902e7c8b83ed7514ade")
(title (en "@code{guile} package now refers to version 3.0"))

View file

@ -5,6 +5,7 @@
;;; Copyright © 2017 Mathieu Othacehe <m.othacehe@gmail.com>
;;; Copyright © 2017 Marius Bakke <mbakke@fastmail.com>
;;; Copyright © 2018 Chris Marusich <cmmarusich@gmail.com>
;;; Copyright © 2020 Tobias Geerinckx-Rice <me@tobias.gr>
;;;
;;; This file is part of GNU Guix.
;;;
@ -533,6 +534,24 @@ (define items
;; Set all timestamps to 1.
"-volume_date" "all_file_dates" "=1"
;; zisofs compression reduces the total image size by ~60%.
"-zisofs" "level=9:block_size=128k" ; highest compression
;; It's transparent to our Linux-Libre kernel but not to GRUB.
;; Don't compress the kernel, initrd, and other files read by
;; grub.cfg, as well as common already-compressed file names.
"-find" "/" "-type" "f"
;; XXX Even after "--" above, and despite documentation claiming
;; otherwise, "-or" is stolen by grub-mkrescue which then chokes
;; on it (as -o …’) and dies. Don't use "-or".
"-not" "-wholename" "/boot/*"
"-not" "-wholename" "/System/*"
"-not" "-name" "unicode.pf2"
"-not" "-name" "bzImage"
"-not" "-name" "*.gz" ; initrd & all man pages
"-not" "-name" "*.png" ; includes grub-image.png
"-exec" "set_filter" "--zisofs"
"--"
"-volid" (string-upcase volume-id)
(if volume-uuid
`("-volume_date" "uuid"

View file

@ -2,6 +2,7 @@
;;; Copyright © 2018, 2020 Mathieu Othacehe <m.othacehe@gmail.com>
;;; Copyright © 2019, 2020 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2019, 2020 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2020 Florian Pelz <pelzflorian@pelzflorian.de>
;;;
;;; This file is part of GNU Guix.
;;;
@ -170,9 +171,9 @@ (define (compiled-file-loader file name)
(define apply-keymap
;; Apply the specified keymap. Use the default keyboard model.
#~(match-lambda
((layout variant)
((layout variant options)
(kmscon-update-keymap (default-keyboard-model)
layout variant))))
layout variant options))))
(define* (compute-keymap-step context)
"Return a gexp that runs the keymap-page of INSTALLER and install the
@ -235,12 +236,13 @@ (define (installer-steps)
;; The installer runs in a kmscon virtual terminal where loadkeys
;; won't work. kmscon uses libxkbcommon as a backend for keyboard
;; input. It is possible to update kmscon current keymap by sending it
;; a keyboard model, layout and variant, in a somehow similar way as
;; what is done with setxkbmap utility.
;; input. It is possible to update kmscon current keymap by sending
;; it a keyboard model, layout, variant and options, in a somehow
;; similar way as what is done with setxkbmap utility.
;;
;; So ask for a keyboard model, layout and variant to update the
;; current kmscon keymap.
;; current kmscon keymap. For non-Latin layouts, we add an
;; appropriate second layout and toggle via Alt+Shift.
(installer-step
(id 'keymap)
(description (G_ "Keyboard mapping selection"))

View file

@ -1,5 +1,6 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2018 Mathieu Othacehe <m.othacehe@gmail.com>
;;; Copyright © 2020 Florian Pelz <pelzflorian@pelzflorian.de>
;;;
;;; This file is part of GNU Guix.
;;;
@ -154,8 +155,8 @@ (define (layout l)
((models layouts)
(values models layouts)))))
(define (kmscon-update-keymap model layout variant)
"Update kmscon keymap with the provided MODEL, LAYOUT and VARIANT."
(define (kmscon-update-keymap model layout variant options)
"Update kmscon keymap with the provided MODEL, LAYOUT, VARIANT and OPTIONS."
(and=>
(getenv "KEYMAP_UPDATE")
(lambda (keymap-file)
@ -174,5 +175,8 @@ (define (kmscon-update-keymap model layout variant)
(format port layout)
(put-u8 port 0)
(format port variant)
(format port (or variant ""))
(put-u8 port 0)
(format port (or options ""))
(put-u8 port 0))))))

View file

@ -1,6 +1,7 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2018, 2020 Mathieu Othacehe <m.othacehe@gmail.com>
;;; Copyright © 2019 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2020 Florian Pelz <pelzflorian@pelzflorian.de>
;;;
;;; This file is part of GNU Guix.
;;;
@ -40,10 +41,12 @@ (define (run-layout-page layouts layout->text context)
#:info-text
(case context
((param) (G_ "Please choose your keyboard layout. \
It will only be used during the installation process."))
It will only be used during the installation process. \
Non-Latin layouts can be toggled with Alt+Shift."))
(else (G_ "Please choose your keyboard layout. \
It will be used during the install process, and for the installed system. \
You can switch to different layout at any time from the parameters menu.")))
Non-Latin layouts can be toggled with Alt+Shift. You can switch to a \
different layout at any time from the parameters menu.")))
#:listbox-items layouts
#:listbox-item->text layout->text
#:sort-listbox-items? #f
@ -101,21 +104,66 @@ (define preferred
(append (sort main layout<?)
(sort others layout<?)))))
(define (add-empty-variant variants)
"Prepend #f to VARIANTS so the user has the option to select no variant.
The resulting layout may be different from all other variants (e.g. for
Azerbaijani)."
(cons #f variants))
(define (sort-variants variants)
"Sort VARIANTS list by putting the international variant ahead and return it."
(call-with-values
(lambda ()
(partition
(lambda (variant)
(let ((name (x11-keymap-variant-name variant)))
(string=? name "altgr-intl")))
(and variant
(let ((name (x11-keymap-variant-name variant)))
(string=? name "altgr-intl"))))
variants))
(cut append <> <>)))
(define %non-latin-layouts
;; List of keyboard layouts marked as $nonlatin in xkeyboard-config.
;; See comments in xkeyboard-config file /share/X11/xkb/rules/base.
;; We ignore layouts that support Latin input: "kr"
'("am" "ara" "ben" "bd" "bg" "bt" "by" "cs" "deva" "ge" "gh"
"gr" "guj" "guru" "il" "in" "ir" "iku" "jp" "kan" "kh"
"la" "lao" "lk" "mk" "mm" "mn" "mv" "mal" "olck" "ori" "pk"
"ru" "scc" "sy" "syr" "tel" "th" "tj" "tam" "ua" "uz"
;; The list from xkeyboard-config is incomplete. Add more layouts when
;; noticed:
"et" "kz"))
(define %non-latin-variants
'("cyrillic"))
(define %latin-layout+variants
;; These layout+variant combinations are Latin after all.
'(("ir" "ku")))
(define (toggleable-latin-layout layout variant)
"If LAYOUT is a non-Latin layout, return a new combined layout,
a variant, and options that allow the user to switch between the
non-Latin and the Latin layout. Otherwise, return LAYOUT, VARIANT,
and #f."
(if (and (not (equal? variant "latin"))
(not (member (list layout variant) %latin-layout+variants))
(or (member layout %non-latin-layouts)
(member variant %non-latin-variants)))
(let ((latin-layout (if (equal? variant "azerty") "fr" "us")))
(list
(string-append layout "," latin-layout)
;; Comma to use variant only for non-Latin:
(and variant (string-append variant ","))
"grp:alt_shift_toggle"))
(list layout variant #f)))
(define* (run-keymap-page layouts #:key (context #f))
"Run a page asking the user to select a keyboard layout and variant. LAYOUTS
is a list of supported X11-KEYMAP-LAYOUT. Return a list of two elements, the
names of the selected keyboard layout and variant."
is a list of supported X11-KEYMAP-LAYOUT. For non-Latin keyboard layouts, a
second layout and toggle options will be added automatically. Return a list
of three elements, the names of the selected keyboard layout, variant and
options."
(define keymap-steps
(list
(installer-step
@ -139,10 +187,14 @@ (define keymap-steps
;; Return #f if the layout does not have any variant.
(and (not (null? variants))
(run-variant-page
(sort-variants variants)
(sort-variants (add-empty-variant variants))
(lambda (variant)
(gettext (x11-keymap-variant-description variant)
"xkeyboard-config"))))))))))
(if variant
(gettext (x11-keymap-variant-description variant)
"xkeyboard-config")
;; Text to opt for no variant at all:
(gettext (x11-keymap-layout-description layout)
"xkeyboard-config")))))))))))
(define (format-result result)
(let ((layout (x11-keymap-layout-name
@ -151,14 +203,20 @@ (define (format-result result)
(lambda (variant)
(gettext (x11-keymap-variant-name variant)
"xkeyboard-config")))))
(list layout (or variant ""))))
(toggleable-latin-layout layout variant)))
(format-result
(run-installer-steps #:steps keymap-steps)))
(define (keyboard-layout->configuration keymap)
"Return the operating system configuration snippet to install KEYMAP."
(match keymap
((name "")
((name #f "grp:alt_shift_toggle")
`((keyboard-layout (keyboard-layout ,name
#:options '("grp:alt_shift_toggle")))))
((name #f _)
`((keyboard-layout (keyboard-layout ,name))))
((name variant)
((name variant "grp:alt_shift_toggle")
`((keyboard-layout (keyboard-layout ,name ,variant
#:options '("grp:alt_shift_toggle")))))
((name variant _)
`((keyboard-layout (keyboard-layout ,name ,variant))))))

View file

@ -1,5 +1,6 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2018, 2020 Mathieu Othacehe <m.othacehe@gmail.com>
;;; Copyright © 2020 Florian Pelz <pelzflorian@pelzflorian.de>
;;;
;;; This file is part of GNU Guix.
;;;
@ -63,7 +64,7 @@ (define-record-type* <installer>
(exit-error installer-exit-error)
;; procedure void -> void
(final-page installer-final-page)
;; procedure (layouts context) -> (list layout variant)
;; procedure (layouts context) -> (list layout variant options)
(keymap-page installer-keymap-page)
;; procedure: (#:key supported-locales iso639-languages iso3166-territories)
;; -> glibc-locale

View file

@ -296,8 +296,13 @@ (define* (choose-partitioning port
encrypted
not-encrypted))
((list-selection (title "Disk") (multiple-choices? #f)
(items (,disk _ ...)))
disk)
(items (,disks ...)))
;; When running the installation from an ISO image, the CD/DVD drive
;; shows up in the list. Avoid it.
(find (lambda (disk)
(not (or (string-contains disk "DVD")
(string-contains disk "CD-ROM"))))
disks))
;; The "Partition table" dialog pops up only if there's not already a
;; partition table.

View file

@ -1,5 +1,5 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2018 Mathieu Othacehe <m.othacehe@gmail.com>
;;; Copyright © 2018, 2020 Mathieu Othacehe <m.othacehe@gmail.com>
;;; Copyright © 2019, 2020 Ludovic Courtès <ludo@gnu.org>
;;;
;;; This file is part of GNU Guix.
@ -93,7 +93,8 @@ (define (pause)
(setenv "LC_ALL" locale)
(setenv "LANGUAGE"
(string-take locale
(string-index locale #\_))))))
(or (string-index locale #\_)
(string-length locale)))))))
(guard (c ((invoke-error? c)
(newline)

View file

@ -569,6 +569,7 @@ GNU_SYSTEM_MODULES = \
%D%/services/getmail.scm \
%D%/services/guix.scm \
%D%/services/kerberos.scm \
%D%/services/linux.scm \
%D%/services/lirc.scm \
%D%/services/virtualization.scm \
%D%/services/mail.scm \
@ -726,7 +727,7 @@ dist_patch_DATA = \
%D%/packages/patches/aegisub-make43.patch \
%D%/packages/patches/agg-am_c_prototype.patch \
%D%/packages/patches/akonadi-paths.patch \
%D%/packages/patches/akonadi-Revert-Make-installation-properly-relo.patch \
%D%/packages/patches/akonadi-not-relocatable.patch \
%D%/packages/patches/akonadi-timestamps.patch \
%D%/packages/patches/allegro-mesa-18.2.5-and-later.patch \
%D%/packages/patches/amule-crypto-6.patch \
@ -776,8 +777,8 @@ dist_patch_DATA = \
%D%/packages/patches/bidiv-update-fribidi.patch \
%D%/packages/patches/binutils-boot-2.20.1a.patch \
%D%/packages/patches/binutils-loongson-workaround.patch \
%D%/packages/patches/binutils-mingw-w64-specify-timestamp.patch \
%D%/packages/patches/binutils-mingw-w64-reproducible-import-libraries.patch \
%D%/packages/patches/binutils-mingw-w64-timestamp.patch \
%D%/packages/patches/binutils-mingw-w64-deterministic.patch \
%D%/packages/patches/blender-2.79-newer-ffmpeg.patch \
%D%/packages/patches/blender-2.79-python-3.7-fix.patch \
%D%/packages/patches/bluez-CVE-2020-0556.patch \
@ -1303,7 +1304,7 @@ dist_patch_DATA = \
%D%/packages/patches/sdl-pango-api_additions.patch \
%D%/packages/patches/sdl-pango-blit_overflow.patch \
%D%/packages/patches/sdl-pango-fillrect_crash.patch \
%D%/packages/patches/sdl-pango-fix-explicit-SDLPango_CopyFTBitmapTo.patch \
%D%/packages/patches/sdl-pango-header-guard.patch \
%D%/packages/patches/sdl-pango-matrix_declarations.patch \
%D%/packages/patches/sdl-pango-sans-serif.patch \
%D%/packages/patches/patchutils-test-perms.patch \

View file

@ -29,6 +29,7 @@
;;; Copyright © 2019 Hartmt Goebel <h.goebel@crazy-compilers.com>
;;; Copyright © 2019 Nicolas Goaziou <mail@nicolasgoaziou.fr>
;;; Copyright © 2020 Vincent Legoll <vincent.legoll@gmail.com>
;;; Copyright © 2020 Guillaume Le Vaillant <glv@posteo.net>
;;;
;;; This file is part of GNU Guix.
;;;
@ -99,6 +100,7 @@ (define-module (gnu packages audio)
#:use-module (gnu packages telephony)
#:use-module (gnu packages linphone)
#:use-module (gnu packages tls)
#:use-module (gnu packages valgrind)
#:use-module (gnu packages video)
#:use-module (gnu packages vim) ;xxd
#:use-module (gnu packages webkit)
@ -4199,3 +4201,37 @@ (define-public ztoolkit-rsvg
`(("librsvg" ,librsvg)
,@(package-inputs ztoolkit)))
(synopsis "ZToolkit with SVG support")))
(define-public codec2
(package
(name "codec2")
(version "0.9.2")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/drowe67/codec2.git")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1jpvr7bra8srz8jvnlbmhf8andbaavq5v01qjnp2f61za93rzwba"))))
(build-system cmake-build-system)
(native-inputs
`(("bc" ,bc)
("octave" ,octave)
("valgrind" ,valgrind)))
(arguments
`(#:tests? #f ; TODO: Fix tests (paths, graphic toolkit, octave modules).
#:phases
(modify-phases %standard-phases
(add-before 'check 'set-test-environment
(lambda _
(setenv "HOME" "/tmp")
#t)))))
(synopsis "Speech codec")
(description
"Codec 2 is a speech codec designed for communications quality speech
between 700 and 3200 bit/s. The main application is low bandwidth HF/VHF
digital radio.")
(home-page "https://www.rowetel.com/?page_id=452")
(license license:lgpl2.1)))

View file

@ -2,7 +2,7 @@
;;; Copyright © 2014, 2015 Eric Bavier <bavier@member.fsf.org>
;;; Copyright © 2014 Ian Denhardt <ian@zenhack.net>
;;; Copyright © 2015, 2016, 2017 Leo Famulari <leo@famulari.name>
;;; Copyright © 2017, 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2017, 2018, 2019, 2020 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2017 Thomas Danckaert <post@thomasdanckaert.be>
;;; Copyright © 2017 Arun Isaac <arunisaac@systemreboot.net>
;;; Copyright © 2017 Kei Kebreau <kkebreau@posteo.net>
@ -990,15 +990,25 @@ (define-public restic
(define-public burp
(package
(name "burp")
(version "2.3.20")
(version "2.3.24")
(source (origin
(method url-fetch)
(uri (string-append "mirror://sourceforge/burp/burp-" version
"/burp-" version ".tar.bz2"))
(sha256
(base32
"0dm2y76z7pg17kfv6ahmh4mf2r3pg7mlwd69lvmjwssnd9vs1nn5"))))
"0dmahqx8ldqdrx9b47r7ag3m801n7h3kclcqja1cc1jzhfhfq27w"))))
(build-system gnu-build-system)
(arguments
`(#:phases
(modify-phases %standard-phases
(add-before 'check 'extend-test-time-outs
;; The defaults are far too low for busy boxes & spinning storage.
(lambda _
(substitute* (find-files "utest" "\\.c$")
(("(tcase_set_timeout\\(tc_core,)[ 0-9]*(\\);.*)$" _ prefix suffix)
(string-append prefix " 3600" suffix "\n")))
#t)))))
(inputs
`(("librsync" ,librsync)
("openssl" ,openssl)

View file

@ -13173,7 +13173,7 @@ (define-public minimap2
((or (string-prefix? "armhf" system)
(string-prefix? "aarch64" system))
"arm_neon=1")
(_ "sse2only=1"))))
(else "sse2only=1"))))
#:phases
(modify-phases %standard-phases
(delete 'configure)

View file

@ -3,7 +3,7 @@
;;; Copyright © 2013, 2014 Andreas Enge <andreas@enge.fr>
;;; Copyright © 2015 Taylan Ulrich Bayırlı/Kammer <taylanbayirli@gmail.com>
;;; Copyright © 2015 Paul van der Walt <paul@denknerd.org>
;;; Copyright © 2015, 2016, 2017, 2018, 2019 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2015, 2016, 2017, 2018, 2019, 2020 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2016 Alex Kost <alezost@gmail.com>
;;; Copyright © 2016 Marius Bakke <mbakke@fastmail.com>
;;; Copyright © 2017 John Darrington <jmd@gnu.org>
@ -66,6 +66,7 @@ (define-module (gnu packages cdrom)
#:use-module (gnu packages python)
#:use-module (gnu packages image)
#:use-module (gnu packages photo)
#:use-module (gnu packages tcl)
#:use-module (gnu packages video)
#:use-module (gnu packages wget)
#:use-module (gnu packages xiph))
@ -156,6 +157,7 @@ (define-public xorriso
(package
(name "xorriso")
(version "1.5.2")
(outputs '("out" "gui"))
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnu/xorriso/xorriso-"
@ -172,10 +174,26 @@ (define-public xorriso
(let* ((out (assoc-ref outputs "out"))
(out-bin (string-append out "/bin")))
(install-file "frontend/grub-mkrescue-sed.sh" out-bin)
#t)))
(add-after 'install 'move-gui-to-separate-output
(lambda* (#:key outputs #:allow-other-keys)
(let ((out (assoc-ref outputs "out"))
(gui (assoc-ref outputs "gui")))
(for-each
(lambda (file)
(mkdir-p (string-append gui (dirname file)))
(rename-file (string-append out file)
(string-append gui file)))
(list "/bin/xorriso-tcltk"
"/share/info/xorriso-tcltk.info"
"/share/man/man1/xorriso-tcltk.1"))
(wrap-program (string-append gui "/bin/xorriso-tcltk")
`("PATH" ":" prefix (,(string-append out "/bin"))))
#t))))))
(inputs
`(("acl" ,acl)
("readline" ,readline)
("tk" ,tk)
("zlib" ,zlib)))
(home-page "https://www.gnu.org/software/xorriso/")
(synopsis "Create, manipulate, burn ISO-9660 file systems")

View file

@ -47,18 +47,18 @@ (define-module (gnu packages cpp)
(define-public libzen
(package
(name "libzen")
(version "0.4.37")
(version "0.4.38")
(source (origin
(method url-fetch)
;; Warning: This source has proved unreliable 1 time at least.
;; Consider an alternate source or report upstream if this
;; happens again.
(uri (string-append "https://mediaarea.net/download/source/"
name "/" version "/"
name "_" version ".tar.bz2"))
"libzen/" version "/"
"libzen_" version ".tar.bz2"))
(sha256
(base32
"1dkqbgabzpa6bd7dkqrvd35sdxrhr6qxalb88f3dw0afk65xqb0k"))))
"1nkygc17sndznpcf71fdrhwpm8z9a3hc9csqlafwswh49axhfkjr"))))
(native-inputs
`(("autoconf" ,autoconf)
("automake" ,automake)
@ -66,7 +66,7 @@ (define-public libzen
(build-system gnu-build-system)
(arguments
'(#:phases
;; build scripts not in root of archive
;; The build scripts are not at the root of the archive.
(modify-phases %standard-phases
(add-after 'unpack 'pre-configure
(lambda _

View file

@ -1905,14 +1905,13 @@ (define-public r-circlize
(define-public r-powerlaw
(package
(name "r-powerlaw")
(version "0.70.2")
(version "0.70.4")
(source
(origin
(method url-fetch)
(uri (cran-uri "poweRlaw" version))
(sha256
(base32
"1asr6ikr7hmj78jyg8r1gwvcjg14addkxdiz92nh06lv71a183r4"))))
(base32 "19zah9mx93az5lh9vicn3c8q1xb12g0w46dh5p901fbyimc32vwk"))))
(properties `((upstream-name . "poweRlaw")))
(build-system r-build-system)
(propagated-inputs

View file

@ -102,9 +102,8 @@ (define* (cross-binutils target #:optional (binutils binutils))
((target-mingw? target)
(package-with-extra-patches
binutils
(search-patches
"binutils-mingw-w64-specify-timestamp.patch"
"binutils-mingw-w64-reproducible-import-libraries.patch")))
(search-patches "binutils-mingw-w64-timestamp.patch"
"binutils-mingw-w64-deterministic.patch")))
(else binutils))
target)))

View file

@ -225,15 +225,15 @@ (define-public go-gopkg.in-mgo.v2
(define-public ephemeralpg
(package
(name "ephemeralpg")
(version "2.8")
(version "2.9")
(source
(origin
(method url-fetch)
(uri (string-append
"http://eradman.com/ephemeralpg/code/ephemeralpg-"
"https://eradman.com/ephemeralpg/code/ephemeralpg-"
version ".tar.gz"))
(sha256
(base32 "1dpfxsd8a52psx3zlfbqkw53m35w28qwyb87a8anz143x6gnkkr4"))))
(base32 "1ghp3kya4lxvfwz3c022cx9vqf55jbf9sjw60bxjcb5sszklyc89"))))
(build-system gnu-build-system)
(arguments
'(#:make-flags (list "CC=gcc"
@ -243,20 +243,7 @@ (define-public ephemeralpg
(delete 'configure)
(replace 'check
(lambda* (#:key inputs #:allow-other-keys)
;; The intention for one test is to test without PostgreSQL on
;; the $PATH, so replace the test $PATH with just the util-linux
;; bin, which contains getopt. It will hopefully be possible to
;; remove this for releases after 2.8.
(substitute* "test.rb"
(("/bin:/usr/bin")
(string-append (assoc-ref inputs "util-linux")
"/bin")))
;; Set the LC_ALL=C as some tests use sort, and the locale
;; affects the order. It will hopefully be possible to remove
;; this for releases after 2.8.
(setenv "LC_ALL" "C")
(invoke "ruby" "test.rb")
#t))
(invoke "ruby" "test.rb")))
(add-after 'install 'wrap
(lambda* (#:key inputs outputs #:allow-other-keys)
(let ((out (assoc-ref outputs "out")))
@ -266,15 +253,16 @@ (define-public ephemeralpg
"/bin")
,(string-append (assoc-ref inputs "postgresql")
"/bin")
;; For getsocket
;; For getsocket.
,(string-append out "/bin")))))
#t)))))
(inputs
`(("postgresql" ,postgresql)
("util-linux" ,util-linux)))
(native-inputs
`(("ruby" ,ruby)))
(home-page "http://eradman.com/ephemeralpg/")
`(("ruby" ,ruby)
("which" ,which)))
(home-page "https://eradman.com/ephemeralpg/")
(synopsis "Run temporary PostgreSQL databases")
(description
"@code{pg_tmp} creates temporary PostgreSQL databases, suitable for tasks

View file

@ -17,6 +17,7 @@
;;; Copyright © 2019 Pierre Langlois <pierre.langlois@gmx.com>
;;; Copyright © 2020 Pkill -9 <pkill9@runbox.com>
;;; Copyright © 2020 Vincent Legoll <vincent.legoll@gmail.com>
;;; Copyright © 2020 Raghav Gururajan <raghavgururajan@disroot.org>
;;;
;;; This file is part of GNU Guix.
;;;
@ -46,10 +47,12 @@ (define-module (gnu packages disk)
#:use-module (gnu packages docbook)
#:use-module (gnu packages documentation)
#:use-module (gnu packages elf)
#:use-module (gnu packages fontutils)
#:use-module (gnu packages gettext)
#:use-module (gnu packages glib)
#:use-module (gnu packages gnome)
#:use-module (gnu packages gnupg)
#:use-module (gnu packages graphics)
#:use-module (gnu packages gtk)
#:use-module (gnu packages guile)
#:use-module (gnu packages linux)
@ -70,6 +73,7 @@ (define-module (gnu packages disk)
#:use-module (gnu packages w3m)
#:use-module (gnu packages web)
#:use-module (gnu packages xml)
#:use-module (gnu packages xorg)
#:use-module (guix build-system gnu)
#:use-module (guix build-system go)
#:use-module (guix build-system python)
@ -858,3 +862,49 @@ (define-public lf
extra features. Some of the missing features are deliberately omitted
since they are better handled by external tools.")
(license license:expat)))
(define-public xfe
(package
(name "xfe")
(version "1.43.2")
(source
(origin
(method url-fetch)
(uri
(string-append "https://sourceforge.net/projects/xfe/files/xfe/"
version
"/xfe-" version ".tar.gz"))
(sha256
(base32 "1fl51k5jm2vrfc2g66agbikzirmp0yb0lqhmsssixfb4mky3hpzs"))))
(build-system gnu-build-system)
(native-inputs
`(("intltool" ,intltool)
("pkg-config" ,pkg-config)))
(inputs
`(("fox" ,fox)
("freetype" ,freetype)
("x11" ,libx11)
("xcb" ,libxcb)
("xcb-util" ,xcb-util)
("xft" ,libxft)
("xrandr" ,libxrandr)))
(arguments
`(#:phases
(modify-phases %standard-phases
(add-after 'unpack 'patch-xferc-path
(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(xferc (string-append out "/share/xfe/xferc")))
(substitute* "src/XFileExplorer.cpp"
(("/usr/share/xfe/xferc") xferc))
#t))))
#:make-flags
(let ((out (assoc-ref %outputs "out")))
(list (string-append "BASH_COMPLETION_DIR=" out
"/share/bash-completion/completions")))))
(synopsis "File Manager for X-Based Graphical Systems")
(description"XFE (X File Explorer) is a file manager for X. It is based on
the popular but discontinued, X Win Commander. It aims to be the file manager
of choice for all light thinking Unix addicts!")
(home-page "http://roland65.free.fr/xfe/")
(license license:gpl2+)))

View file

@ -44,7 +44,7 @@ (define-module (gnu packages distributed)
(define-public boinc-client
(package
(name "boinc-client")
(version "7.16.5")
(version "7.16.6")
(source (origin
(method git-fetch)
(uri (git-reference
@ -55,7 +55,7 @@ (define-public boinc-client
(file-name (git-file-name "boinc" version))
(sha256
(base32
"107rpw9qd5x4pyxm9jd1lqxva5nxwb01dm5h61d6msv2vgiy0r8n"))))
"00xpzxxnki9hsf2vg9p67dk9ilw9ychpgm09fp3c41zyylb33ml5"))))
(build-system gnu-build-system)
(arguments '(#:configure-flags '("--disable-server")))
(inputs `(("openssl" ,openssl)

View file

@ -5976,33 +5976,30 @@ (define-public emacs-avy
(license license:gpl3+)))
(define-public emacs-ace-window
;; last release version is from 2015
(let ((commit "a5344925e399e1f015721cda6cf5db03c90ab87a")
(revision "1"))
(package
(name "emacs-ace-window")
(version (git-version "0.9.0" revision commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/abo-abo/ace-window.git")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32
"18jm8gfgnf6ja9aarws5650lw2zfi3wdwc5j8r5ijn5fcqhfy7rc"))))
(build-system emacs-build-system)
(propagated-inputs
`(("emacs-avy" ,emacs-avy)))
(home-page "https://github.com/abo-abo/ace-window")
(synopsis "Quickly switch windows in Emacs")
(description
"@code{ace-window} is meant to replace @code{other-window}.
(package
(name "emacs-ace-window")
(version "0.10.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/abo-abo/ace-window.git")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32
"0f3r40d5yxp2pm2j0nn86s29nqj8py0jxjbj50v4ci3hsd92d8jl"))))
(build-system emacs-build-system)
(propagated-inputs
`(("emacs-avy" ,emacs-avy)))
(home-page "https://github.com/abo-abo/ace-window")
(synopsis "Quickly switch windows in Emacs")
(description
"@code{ace-window} is meant to replace @code{other-window}.
In fact, when there are only two windows present, @code{other-window} is
called. If there are more, each window will have its first character
highlighted. Pressing that character will switch to that window.")
(license license:gpl3+))))
(license license:gpl3+)))
(define-public emacs-iedit
;; Last release version was in 2016.
@ -8406,24 +8403,23 @@ (define-public emacs-monroe
(define-public emacs-orgalist
(package
(name "emacs-orgalist")
(version "1.11")
(version "1.12")
(source
(origin
(method url-fetch)
(uri (string-append "https://elpa.gnu.org/packages/"
"orgalist-" version ".el"))
(sha256
(base32
"0zbqkk540rax32s8szp5zgz3a02zw88fc1dmjmyw6h3ls04m91kl"))))
(base32 "1hwm7j0hbv2pg9w885ky1c9qga3grcfq8v216jv2ivkw8xzavysd"))))
(build-system emacs-build-system)
(home-page "https://elpa.gnu.org/packages/orgalist.html")
(synopsis "Manage Org-like lists in non-Org buffers")
(description "Write Org mode's plain lists in non-Org buffers. More
specifically, Orgalist supports the syntax of Org mode for numbered,
unnumbered, description items, checkboxes, and counter cookies.
(description "Orgalist writes and manages Org mode's plain lists in
non-Org buffers. More specifically, it supports the syntax of Org mode for
numbered, unnumbered, description items, checkboxes, and counter cookies.
The library also implements radio lists, i.e., lists written in Org
syntax later translated into the host format, e.g., LaTeX or HTML.")
The library also implements radio lists, i.e., lists written in Org syntax
later translated into the host format, e.g., LaTeX or HTML.")
(license license:gpl3+)))
(define-public emacs-writegood-mode
@ -9178,6 +9174,31 @@ (define-public emacs-helm-org-rifle
in Org buffers and displays matching entries.")
(license license:gpl3+)))
(define-public emacs-dired-git-info
;; Upstream has no proper release. The base version is extracted from the
;; "Version" keyword in the main file.
(let ((commit "91d57e3a4c5104c66a3abc18e281ee55e8979176")
(revision "0"))
(package
(name "emacs-dired-git-info")
(version (git-version "0.3.1" revision commit))
(source
(origin
(method git-fetch)
(uri
(git-reference
(url "https://github.com/clemera/dired-git-info")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32 "1dr4iv95s4barxxj56znqkl9z0lg5jw731jmjr01s6vn8ar69gik"))))
(build-system emacs-build-system)
(home-page "https://github.com/clemera/dired-git-info/")
(synopsis "Show git info in Emacs Dired")
(description "This Emacs package provides a minor mode which shows git
information inside the Dired buffer.")
(license license:gpl3+))))
(define-public emacs-dired-toggle-sudo
(package
(name "emacs-dired-toggle-sudo")
@ -9202,6 +9223,28 @@ (define-public emacs-dired-toggle-sudo
@code{sudo} privileges.")
(license license:wtfpl2)))
(define-public emacs-diredfl
(package
(name "emacs-diredfl")
(version "0.4")
(source
(origin
(method git-fetch)
(uri
(git-reference
(url "https://github.com/purcell/diredfl")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "1zb2lz7rp58zqvpniqcsmqabi7nqg2d8bfd0hgmq68bn2hd25b5z"))))
(build-system emacs-build-system)
(home-page "https://github.com/purcell/diredfl/")
(synopsis "Extra Emacs font lock rules for a more colourful Dired")
(description "This library enables additional font locking in Dired mode.
This is adapted from the extra font lock rules provided by Drew Adams' Dired+
package.")
(license license:gpl3+)))
(define-public emacs-memoize
(package
(name "emacs-memoize")

View file

@ -17,6 +17,7 @@
;;; Copyright © 2019 Sebastian Schott <sschott@mailbox.org>
;;; Copyright © 2020 Kei Kebreau <kkebreau@posteo.net>
;;; Copyright © 2020 Christopher Lemmer Webber <cwebber@dustycloud.org>
;;; Copyright © 2020 Tom Zander <tomz@freedommail.ch>
;;;
;;; This file is part of GNU Guix.
;;;
@ -1401,6 +1402,44 @@ (define-public bitcoin-unlimited
a Qt GUI.")
(license license:expat)))
(define-public fulcrum
(package
(name "fulcrum")
(version "1.0.5b")
(source
(origin
(method url-fetch)
(uri (string-append "https://gitlab.com/FloweeTheHub/fulcrum/-/archive/v"
version "/fulcrum-v" version ".tar.gz"))
(sha256
(base32 "1c1hkik8avill8ha33g76rk4b03j5ac8wiml69q4jav7a63ywgfy"))))
(build-system gnu-build-system)
(arguments
`(#:phases
(modify-phases %standard-phases
;; Call qmake instead of configure to create a Makefile.
(replace 'configure
(lambda _
(invoke
"qmake"
(string-append "PREFIX=" %output)
"features="))))))
(native-inputs
`(("qttools" ,qttools)))
(inputs
`(("python" ,python)
("qtbase" ,qtbase)
("rocksdb" ,rocksdb)
("zlib" ,zlib)))
(home-page "https://gitlab.com/FloweeTheHub/fulcrum/")
(synopsis "Fast and nimble SPV server for Bitcoin Cash")
(description
"Flowee Fulcrum is a server that is the back-end for @acronym{SPV,
Simplified Payment Verification} wallets, it provides the full API for those
walets in a fast and small server. The full data is stored in a full node,
like Flowee the Hub, which Fulcrum connects to over RPC.")
(license license:gpl3+)))
(define-public beancount
(package
(name "beancount")

View file

@ -398,61 +398,61 @@ (define-public bastet
(license license:gpl3+)))
(define-public cataclysm-dda
(let ((commit "9c732a5de48928691ab863d3ab275ca7b0e522fc"))
(package
(name "cataclysm-dda")
(version "0.D")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/CleverRaven/Cataclysm-DDA.git")
(commit commit)))
(sha256
(base32
"00zzhx1mh1qjq668cga5nbrxp2qk6b82j5ak65skhgnlr6ii4ysc"))
(file-name (git-file-name name version))))
(build-system gnu-build-system)
(arguments
'(#:make-flags (list (string-append "PREFIX=" (assoc-ref %outputs "out"))
"USE_HOME_DIR=1" "DYNAMIC_LINKING=1" "RELEASE=1"
"LOCALIZE=1" "LANGUAGES=all")
#:phases
(modify-phases %standard-phases
(delete 'configure)
(add-after 'build 'build-tiles
(lambda* (#:key make-flags outputs #:allow-other-keys)
;; Change prefix directory and enable tile graphics and sound.
(apply invoke "make" "TILES=1" "SOUND=1"
(string-append "PREFIX="
(assoc-ref outputs "tiles"))
(cdr make-flags))))
(add-after 'install 'install-tiles
(lambda* (#:key make-flags outputs #:allow-other-keys)
(apply invoke "make" "install" "TILES=1" "SOUND=1"
(string-append "PREFIX="
(assoc-ref outputs "tiles"))
(cdr make-flags)))))
;; TODO: Add libtap++ from https://github.com/cbab/libtappp as a native
;; input in order to support tests.
#:tests? #f))
(outputs '("out"
"tiles")) ; For tile graphics and sound support.
(native-inputs
`(("gettext" ,gettext-minimal)
("pkg-config" ,pkg-config)))
(inputs
`(("freetype" ,freetype)
("libogg" ,libogg)
("libvorbis" ,libvorbis)
("ncurses" ,ncurses)
("sdl2" ,sdl2)
("sdl2-image" ,sdl2-image)
("sdl2-ttf" ,sdl2-ttf)
("sdl2-mixer" ,sdl2-mixer)))
(home-page "https://cataclysmdda.org/")
(synopsis "Survival horror roguelike video game")
(description
"Cataclysm: Dark Days Ahead (or \"DDA\" for short) is a roguelike set
(package
(name "cataclysm-dda")
(version "0.E")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/CleverRaven/Cataclysm-DDA.git")
(commit version)))
(sha256
(base32 "0pbi0fw37zimzdklfj58s1ql0wlqq7dy6idkcsib3hn910ajaxan"))
(file-name (git-file-name name version))))
(build-system gnu-build-system)
(arguments
'(#:make-flags
(list (string-append "PREFIX=" (assoc-ref %outputs "out"))
"USE_HOME_DIR=1" "DYNAMIC_LINKING=1" "RELEASE=1"
"LOCALIZE=1" "LANGUAGES=all")
#:phases
(modify-phases %standard-phases
(delete 'configure)
(add-after 'build 'build-tiles
(lambda* (#:key make-flags outputs #:allow-other-keys)
;; Change prefix directory and enable tile graphics and sound.
(apply invoke "make" "TILES=1" "SOUND=1"
(string-append "PREFIX="
(assoc-ref outputs "tiles"))
(cdr make-flags))))
(add-after 'install 'install-tiles
(lambda* (#:key make-flags outputs #:allow-other-keys)
(apply invoke "make" "install" "TILES=1" "SOUND=1"
(string-append "PREFIX="
(assoc-ref outputs "tiles"))
(cdr make-flags)))))
;; TODO: Add libtap++ from https://github.com/cbab/libtappp as a native
;; input in order to support tests.
#:tests? #f))
(outputs '("out"
"tiles")) ;for tile graphics and sound support
(native-inputs
`(("gettext" ,gettext-minimal)
("pkg-config" ,pkg-config)))
(inputs
`(("freetype" ,freetype)
("libogg" ,libogg)
("libvorbis" ,libvorbis)
("ncurses" ,ncurses)
("sdl2" ,sdl2)
("sdl2-image" ,sdl2-image)
("sdl2-ttf" ,sdl2-ttf)
("sdl2-mixer" ,sdl2-mixer)))
(home-page "https://cataclysmdda.org/")
(synopsis "Survival horror roguelike video game")
(description
"Cataclysm: Dark Days Ahead (or \"DDA\" for short) is a roguelike set
in a post-apocalyptic world. Struggle to survive in a harsh, persistent,
procedurally generated world. Scavenge the remnants of a dead civilization
for food, equipment, or, if you are lucky, a vehicle with a full tank of gas
@ -460,7 +460,7 @@ (define-public cataclysm-dda
powerful monstrosities, from zombies to giant insects to killer robots and
things far stranger and deadlier, and against the others like yourself, that
want what you have.")
(license license:cc-by-sa3.0))))
(license license:cc-by-sa3.0)))
(define-public corsix-th
(package
@ -6066,7 +6066,7 @@ (define-public crispy-doom
(package
(inherit chocolate-doom)
(name "crispy-doom")
(version "5.7.1")
(version "5.7.2")
(source (origin
(method git-fetch)
(uri (git-reference
@ -6074,7 +6074,7 @@ (define-public crispy-doom
(commit (string-append "crispy-doom-" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1gqivy4pxasy7phyznixsagylf9f70bk33b0knpfzzlks6cc6zzj"))))
(base32 "002aqbgsksrgzqridwdlkrjincaxh0dkvwlrbb8d2f3kwk7lj4fq"))))
(native-inputs
(append
(package-native-inputs chocolate-doom)

View file

@ -20,6 +20,7 @@
;;; Copyright © 2019 Tanguy Le Carrour <tanguy@bioneland.org>
;;; Copyright © 2020 Jakub Kądziołka <kuba@kadziolka.net>
;;; Copyright © 2020 Nicolas Goaziou <mail@nicolasgoaziou.fr>
;;; Copyright © 2020 Raghav Gururajan <raghavgururajan@disroot.org>
;;;
;;; This file is part of GNU Guix.
;;;
@ -87,6 +88,61 @@ (define-module (gnu packages graphics)
#:use-module (guix packages)
#:use-module (guix utils))
(define-public fox
(package
(name "fox")
(version "1.6.57")
(source
(origin
(method url-fetch)
(uri
(string-append "https://fox-toolkit.org/ftp/fox-" version ".tar.gz"))
(sha256
(base32 "08w98m6wjadraw1pi13igzagly4b2nfa57kdqdnkjfhgkvg1bvv5"))))
(build-system gnu-build-system)
(arguments
`(#:phases
(modify-phases %standard-phases
(add-after 'unpack 'patch
(lambda _
(substitute* "configure"
(("-I/usr/include/freetype2")
(string-append "-I"
(string-append
(assoc-ref %build-inputs "freetype")
"/include/freetype2"))))
#t)))))
(native-inputs
`(("doxygen" ,doxygen)))
(inputs
`(("bzip2" ,lbzip2)
("freetype" ,freetype)
("gl" ,mesa)
("glu" ,glu)
("jpeg" ,libjpeg-turbo)
("png" ,libpng)
("tiff" ,libtiff)
("x11" ,libx11)
("xcursor" ,libxcursor)
("xext" ,libxext)
("xfixes" ,libxfixes)
("xft" ,libxft)
("xinput" ,libxi)
("xrandr" ,libxrandr)
("xrender" ,libxrender)
("xshm" ,libxshmfence)
("zlib" ,zlib)))
(synopsis "Widget Toolkit for building GUI")
(description"FOX (Free Objects for X) is a C++ based Toolkit for developing
Graphical User Interfaces easily and effectively. It offers a wide, and
growing, collection of Controls, and provides state of the art facilities such
as drag and drop, selection, as well as OpenGL widgets for 3D graphical
manipulation. FOX also implements icons, images, and user-convenience features
such as status line help, and tooltips. Tooltips may even be used for 3D
objects!")
(home-page "http://www.fox-toolkit.org")
(license license:lgpl2.1+)))
(define-public blender
(package
(name "blender")

View file

@ -1,6 +1,9 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2017, 2018, 2019 Arun Isaac <arunisaac@systemreboot.net>
;;; Copyright © 2019, 2020 Evan Straw <evan.straw99@gmail.com>
;;; Copyright © 2020 Guillaume Le Vaillant <glv@posteo.net>
;;; Copyright © 2020 Danny Milosavljevic <dannym@scratchpost.org>
;;; Copyright © 2020 Charlie Ritter <chewzerita@posteo.net>
;;;
;;; This file is part of GNU Guix.
;;;
@ -22,20 +25,43 @@ (define-module (gnu packages ham-radio)
#:use-module (guix packages)
#:use-module (guix download)
#:use-module (guix git-download)
#:use-module (gnu packages algebra)
#:use-module (gnu packages audio)
#:use-module (gnu packages autotools)
#:use-module (gnu packages base)
#:use-module (gnu packages bash)
#:use-module (gnu packages boost)
#:use-module (gnu packages check)
#:use-module (gnu packages documentation)
#:use-module (gnu packages ghostscript)
#:use-module (gnu packages glib)
#:use-module (gnu packages gstreamer)
#:use-module (gnu packages gtk)
#:use-module (gnu packages image)
#:use-module (gnu packages libusb)
#:use-module (gnu packages linux)
#:use-module (gnu packages logging)
#:use-module (gnu packages maths)
#:use-module (gnu packages multiprecision)
#:use-module (gnu packages networking)
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages pulseaudio)
#:use-module (gnu packages python)
#:use-module (gnu packages python-science)
#:use-module (gnu packages python-xyz)
#:use-module (gnu packages qt)
#:use-module (gnu packages sdr)
#:use-module (gnu packages sphinx)
#:use-module (gnu packages swig)
#:use-module (gnu packages tex)
#:use-module (gnu packages version-control)
#:use-module (gnu packages xml)
#:use-module (gnu packages xorg)
#: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 python))
#:use-module (guix build-system python)
#:use-module (guix build-system qt))
(define-public rtl-sdr
(package
@ -176,3 +202,283 @@ (define-public redsea
csdr, for example. It can also decode raw ASCII bitstream, the hex format
used by RDS Spy, and audio files containing @dfn{multiplex} signals (MPX).")
(license license:expat)))
(define-public gnuradio
(package
(name "gnuradio")
(version "3.8.0.0")
(source
(origin
(method url-fetch)
(uri (string-append "https://www.gnuradio.org/releases/gnuradio/"
"gnuradio-" version ".tar.xz"))
(sha256
(base32 "0aw55gf5549b0fz2qdi7vplcmaf92bj34h40s34b2ycnqasv900r"))))
(build-system cmake-build-system)
(native-inputs
`(("doxygen" ,doxygen)
("git" ,git-minimal)
("ghostscript" ,ghostscript)
("orc" ,orc)
("pkg-config" ,pkg-config)
("python" ,python)
("python-cheetah" ,python-cheetah)
("python-mako" ,python-mako)
("python-pyzmq" ,python-pyzmq)
("python-scipy" ,python-scipy)
("python-sphinx" ,python-sphinx)
("swig" ,swig)
("texlive" ,(texlive-union (list texlive-amsfonts
texlive-latex-amsmath
;; TODO: Add newunicodechar.
texlive-latex-graphics)))
("xorg-server" ,xorg-server-for-tests)))
(inputs
`(("alsa-lib" ,alsa-lib)
("boost" ,boost)
("cairo" ,cairo)
("codec2" ,codec2)
("cppzmq" ,cppzmq)
("fftwf" ,fftwf)
("gmp" ,gmp)
("gsl" ,gsl)
("gsm" ,gsm)
("gtk+" ,gtk+)
("jack" ,jack-1)
("log4cpp" ,log4cpp)
("pango" ,pango)
("portaudio" ,portaudio)
("python-click" ,python-click)
("python-click-plugins" ,python-click-plugins)
("python-lxml" ,python-lxml)
("python-numpy" ,python-numpy)
("python-pycairo" ,python-pycairo)
("python-pygobject" ,python-pygobject)
("python-pyqt" ,python-pyqt)
("python-pyyaml" ,python-pyyaml)
("qtbase" ,qtbase)
("qwt" ,qwt)
("zeromq" ,zeromq)))
(arguments
`(#:modules ((guix build cmake-build-system)
((guix build glib-or-gtk-build-system) #:prefix glib-or-gtk:)
((guix build python-build-system) #:prefix python:)
(guix build utils)
(ice-9 match))
#:imported-modules (,@%cmake-build-system-modules
(guix build glib-or-gtk-build-system)
(guix build python-build-system))
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'fix-paths
(lambda* (#:key inputs #:allow-other-keys)
(let ((qwt (assoc-ref inputs "qwt")))
(substitute* "cmake/Modules/FindQwt.cmake"
(("/usr/include")
(string-append qwt "/include"))
(("/usr/lib")
(string-append qwt "/lib"))
(("qwt6-\\$\\{QWT_QT_VERSION\\}")
"qwt")))
(substitute* "cmake/Modules/GrPython.cmake"
(("dist-packages")
"site-packages"))
(substitute* '("gr-vocoder/swig/vocoder_swig.i"
"gr-vocoder/include/gnuradio/vocoder/codec2.h"
"gr-vocoder/include/gnuradio/vocoder/freedv_api.h")
(("<codec2/")
"<"))
#t))
(add-before 'check 'set-test-environment
(lambda* (#:key inputs #:allow-other-keys)
(setenv "HOME" "/tmp")
(system (string-append (assoc-ref inputs "xorg-server")
"/bin/Xvfb :1 &"))
(setenv "DISPLAY" ":1")
#t))
(add-after 'install 'wrap-python
(assoc-ref python:%standard-phases 'wrap))
(add-after 'wrap-python 'wrap-glib-or-gtk
(assoc-ref glib-or-gtk:%standard-phases 'glib-or-gtk-wrap))
(add-after 'wrap-glib-or-gtk 'wrap-with-GI_TYPELIB_PATH
(lambda* (#:key inputs outputs #:allow-other-keys)
(let ((out (assoc-ref outputs "out"))
(paths (map (match-lambda
((output . directory)
(let ((girepodir (string-append
directory
"/lib/girepository-1.0")))
(if (file-exists? girepodir)
girepodir
#f))))
inputs)))
(wrap-program (string-append out "/bin/gnuradio-companion")
`("GI_TYPELIB_PATH" ":" prefix ,(filter identity paths))))
#t)))))
(synopsis "Toolkit for software-defined radios")
(description
"GNU Radio is a development toolkit that provides signal processing blocks
to implement software radios. It can be used with external RF hardware to
create software-defined radios, or without hardware in a simulation-like
environment.")
(home-page "https://www.gnuradio.org")
(license license:gpl3+)))
(define-public gnuradio-osmosdr
(package
(name "gnuradio-osmosdr")
(version "0.2.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://git.osmocom.org/gr-osmosdr")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1rdx7fa0xiq0qmgrrbby7z1bblmqhl9qh9jqpsznzxkx91f17ypd"))))
(build-system cmake-build-system)
(native-inputs
`(("doxygen" ,doxygen)
("git" ,git-minimal)
("pkg-config" ,pkg-config)
("python" ,python)
("python-mako" ,python-mako)
("python-six" ,python-six)
("swig" ,swig)))
(inputs
`(("boost" ,boost)
("fftwf" ,fftwf)
("gmp" ,gmp)
("gnuradio" ,gnuradio)
("log4cpp" ,log4cpp)
;; TODO: Add more drivers.
("rtl-sdr" ,rtl-sdr)))
(synopsis "GNU Radio block for interfacing with various radio hardware")
(description "This is a block for GNU Radio allowing to use a common API
to access different radio hardware.")
(home-page "https://osmocom.org/projects/gr-osmosdr/wiki/GrOsmoSDR")
(license license:gpl3+)))
(define-public libosmo-dsp
(package
(name "libosmo-dsp")
(version "0.4.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://git.osmocom.org/libosmo-dsp")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "00plihnpym1gkfpflah8il9463qxzm9kx2f07jyvbkszpj8viq5g"))))
(build-system gnu-build-system)
(native-inputs
`(("autoconf" ,autoconf)
("automake" ,automake)
("bash-minimal" ,bash-minimal)
("doxygen" ,doxygen)
("git" ,git-minimal)
("libtool" ,libtool)
("pkg-config" ,pkg-config)
("texlive" ,(texlive-union (list texlive-amsfonts
texlive-latex-amsmath
;; TODO: Add newunicodechar.
texlive-latex-graphics)))))
(inputs
`(("fftwf" ,fftwf)))
(arguments
`(#:phases
(modify-phases %standard-phases
(add-after 'unpack 'fix-paths
(lambda* (#:key inputs #:allow-other-keys)
(substitute* "git-version-gen"
(("/bin/sh")
(string-append (assoc-ref inputs "bash")
"/bin/bash")))
#t)))))
(synopsis "DSP primitives for SDR")
(description
"This a C-language library for common DSP (Digital Signal Processing)
primitives for SDR (Software Defined Radio).")
(home-page "https://osmocom.org/projects/libosmo-dsp")
(license license:gpl2+)))
(define-public gnuradio-iqbalance
(package
(name "gnuradio-iqbalance")
(version "0.38.1")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://git.osmocom.org/gr-iqbal")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0ksagwz05p3b0702q7ljq7013xmp0ijp30my9z6s3p7ja8dj42s3"))))
(build-system cmake-build-system)
(native-inputs
`(("doxygen" ,doxygen)
("pkg-config" ,pkg-config)
("python" ,python)
("python-numpy" ,python-numpy)
("python-six" ,python-six)
("swig" ,swig)))
(inputs
`(("boost" ,boost)
("fftwf" ,fftwf)
("gmp" ,gmp)
("gnuradio" ,gnuradio)
("libosmo-dsp" ,libosmo-dsp)
("log4cpp" ,log4cpp)))
(synopsis "GNU Radio block to correct IQ imbalance")
(description
"This is a GNU Radio block to correct IQ imbalance in quadrature
receivers. It's composed of two main block:
@itemize
@item Fix: Given a phase and amplitude error, it will correct a complex signal.
@item Optimize: Attempts to auto-detect the phase and amplitude error to feed
to the fix block above.
@end itemize")
(home-page "https://git.osmocom.org/gr-iqbal/")
(license license:gpl3+)))
(define-public gqrx
(package
(name "gqrx")
(version "2.12.1")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/csete/gqrx.git")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "00alf3q6y313xpx6p7v43vqsphd2x4am4q362lw21bcy9wc4jidw"))))
(build-system qt-build-system)
(native-inputs
`(("pkg-config" ,pkg-config)))
(inputs
`(("alsa-lib" ,alsa-lib)
("boost" ,boost)
("fftwf" ,fftwf)
("gmp" ,gmp)
("gnuradio" ,gnuradio)
("gnuradio-iqbalance" ,gnuradio-iqbalance)
("gnuradio-osmosdr" ,gnuradio-osmosdr)
("jack" ,jack-1)
("log4cpp" ,log4cpp)
("portaudio" ,portaudio)
("pulseaudio" ,pulseaudio)
("qtbase" ,qtbase)
("qtsvg" ,qtsvg)))
(arguments
`(#:tests? #f)) ; No tests
(synopsis "Software defined radio receiver")
(description "Gqrx is a software defined radio (SDR) receiver implemented
using GNU Radio and the Qt GUI toolkit.")
(home-page "https://gqrx.dk/")
(license license:gpl3+)))

View file

@ -746,7 +746,7 @@ (define-public shellcheck
("ghc-diff" ,ghc-diff)
("ghc-quickcheck" ,ghc-quickcheck)
("ghc-regex-tdfa" ,ghc-regex-tdfa)))
(home-page "https://github.com/koalaman/shellcheck")
(home-page "https://www.shellcheck.net/")
(synopsis "Static analysis for shell scripts")
(description "@code{shellcheck} provides static analysis for
@command{bash} and @command{sh} shell scripts.

View file

@ -9745,7 +9745,7 @@ (define-public ghc-regex-tdfa
(build-system haskell-build-system)
(inputs
`(("ghc-regex-base" ,ghc-regex-base)))
(home-page "https://github.com/ChrisKuklewicz/regex-tdfa")
(home-page "https://github.com/haskell-hvr/regex-tdfa")
(synopsis "POSIX extended regular expressions in Haskell.")
(description
"Regex-tdfa is a pure Haskell regular expression library implementing POSIX

View file

@ -14,6 +14,7 @@
;;; Copyright © 2019 Pierre Langlois <pierre.langlois@gmx.com>
;;; Copyright © 2020 Peng Mei Yu <pengmeiyu@riseup.net>
;;; Copyright © 2020 R Veera Kumar <vkor@vkten.in>
;;; Copyright © 2020 Pierre Neidhardt <mail@ambrevar.xyz>
;;;
;;; This file is part of GNU Guix.
;;;
@ -35,6 +36,7 @@ (define-module (gnu packages image-viewers)
#:use-module (guix download)
#:use-module (guix git-download)
#:use-module (guix packages)
#:use-module (guix utils)
#:use-module (guix build-system gnu)
#:use-module (guix build-system cmake)
#:use-module (guix build-system meson)
@ -419,44 +421,95 @@ (define-public luminance-hdr
(license license:gpl2+)))
;; CBR and RAR are currently unsupported, due to non-free dependencies.
;; For optional PDF support, you can install the mupdf package.
(define-public mcomix
(package
(name "mcomix")
(version "1.2.1")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://sourceforge/mcomix/MComix-" version
"/mcomix-" version ".tar.bz2"))
(sha256
(base32
"0fzsf9pklhfs1rzwzj64c0v30b74nk94p93h371rpg45qnfiahvy"))))
(build-system python-build-system)
(inputs
`(("p7zip" ,p7zip)
("python2-pillow" ,python2-pillow)
("python2-pygtk" ,python2-pygtk)))
(arguments
;; Python 2.5 or newer (Python 3 and up is not supported)
`(#:python ,python-2
#:tests? #f ; there are no tests
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'configure
(lambda* (#:key inputs #:allow-other-keys)
(let ((p7zip (assoc-ref inputs "p7zip")))
;; insert absolute path to 7z executable
(substitute* "mcomix/archive/sevenzip_external.py"
(("_7z_executable = -1")
(string-append "_7z_executable = u'" p7zip "/bin/7z'"))))
#t)))))
(home-page "https://sourceforge.net/p/mcomix/wiki/Home/")
(synopsis "Image viewer for comics")
(description "MComix is a customizable image viewer that specializes as
;; Official mcomix hasn't been updated since 2016, it's broken with
;; python-pillow 6+ and only supports Python 2. We use fork instead.
(let ((commit "fea55a7a9369569eefed72209eed830409c4af98"))
(package
(name "mcomix")
(version (git-version "1.2.1" "1" commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/multiSnow/mcomix3")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32
"05zl0dkjwbdcm2zlk4nz9w33amlqj8pbf32a8ymshc2356fqhhi5"))))
(build-system python-build-system)
(inputs
`(("p7zip" ,p7zip)
("python-pillow" ,python-pillow)
("python-pygobject" ,python-pygobject)
("python-pycairo" ,python-pycairo)))
(arguments
`(#:tests? #f ; FIXME: How do we run tests?
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'configure
(lambda* (#:key inputs #:allow-other-keys)
(let ((p7zip (assoc-ref inputs "p7zip")))
;; insert absolute path to 7z executable
(substitute* "mcomix/mcomix/archive/sevenzip_external.py"
(("_7z_executable = -1")
(string-append "_7z_executable = u'" p7zip "/bin/7z'"))))
#t))
(replace 'build
(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(pyver ,(version-major+minor (package-version python)))
(lib (string-append out "/lib/python" pyver)))
(invoke (which "python") "installer.py" "--srcdir=mcomix"
(string-append "--target=" lib))
(rename-file (string-append lib "/mcomix")
(string-append lib "/site-packages"))
#t)))
(replace 'install
(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(share (string-append out "/share"))
(bin (string-append out "/bin"))
(pyver ,(version-major+minor (package-version python)))
(lib (string-append out "/lib/python" pyver "/site-packages")))
(mkdir-p bin)
(rename-file (string-append lib "/mcomixstarter.py")
(string-append bin "/mcomix"))
(rename-file (string-append lib "/comicthumb.py")
(string-append bin "/comicthumb"))
(install-file "mime/mcomix.desktop"
(string-append share "/applications"))
(install-file "mime/mcomix.appdata.xml"
(string-append share "/metainfo"))
(install-file "mime/mcomix.xml"
(string-append share "/mime/packages"))
(install-file "mime/comicthumb.thumbnailer"
(string-append share "/thumbnailers"))
(install-file "man/mcomix.1" (string-append share "/man/man1"))
(install-file "man/comicthumb.1" (string-append share "/man/man1"))
(for-each
(lambda (size)
(install-file
(format #f "mcomix/mcomix/images/~sx~s/mcomix.png" size size)
(format #f "~a/icons/hicolor/~sx~s/apps/" share size size))
(for-each
(lambda (ext)
(install-file
(format #f "mime/icons/~sx~s/application-x-~a.png" size size ext)
(format #f "~a/icons/hicolor/~sx~s/mimetypes/"
share size size)))
'("cb7" "cbr" "cbt" "cbz")))
'(16 22 24 32 48))
#t))))))
(home-page "https://sourceforge.net/p/mcomix/wiki/Home/")
(synopsis "Image viewer for comics")
(description "MComix is a customizable image viewer that specializes as
a comic and manga reader. It supports a variety of container formats
including CBZ, CB7, CBT, LHA.")
(license license:gpl2+)))
including CBZ, CB7, CBT, LHA.
For PDF support, install the @emph{mupdf} package.")
(license license:gpl2+))))
(define-public qview
(package

View file

@ -53,7 +53,7 @@ (define-public akonadi
(patches (search-patches
"akonadi-paths.patch"
"akonadi-timestamps.patch"
"akonadi-Revert-Make-installation-properly-relo.patch"))))
"akonadi-not-relocatable.patch"))))
(build-system qt-build-system)
(native-inputs
`(("extra-cmake-modules" ,extra-cmake-modules)

View file

@ -369,18 +369,18 @@ (define (%upstream-linux-source version hash)
(sha256 hash)))
(define-public linux-libre-5.6-version "5.6.2")
(define-public linux-libre-5.6-version "5.6.3")
(define-public linux-libre-5.6-pristine-source
(let ((version linux-libre-5.6-version)
(hash (base32 "1fdmcx5fk9wq9yx6vvnw76nvdysbvm83cik1dj1d67lw6bc92k9d")))
(hash (base32 "1ajh1iw3bplm6ckcycg45wfmmqkvfiqmh6i3m1895dfapfd6h4qx")))
(make-linux-libre-source version
(%upstream-linux-source version hash)
deblob-scripts-5.6)))
(define-public linux-libre-5.4-version "5.4.30")
(define-public linux-libre-5.4-version "5.4.31")
(define-public linux-libre-5.4-pristine-source
(let ((version linux-libre-5.4-version)
(hash (base32 "1vwx6j87pkfyq68chng1hy0c85hpc2byabiv1pcikrmw07vpip8i")))
(hash (base32 "1svf4wf4j1vqhdpgx63ry4c99fc54d9nfi4d1xm7z209z3w86451")))
(make-linux-libre-source version
(%upstream-linux-source version hash)
deblob-scripts-5.4)))
@ -4391,7 +4391,7 @@ (define-public gpm
(define-public btrfs-progs
(package
(name "btrfs-progs")
(version "5.4.1")
(version "5.6")
(source (origin
(method url-fetch)
(uri (string-append "mirror://kernel.org/linux/kernel/"
@ -4399,7 +4399,7 @@ (define-public btrfs-progs
"btrfs-progs-v" version ".tar.xz"))
(sha256
(base32
"0scxg9p6z0wss92gmv5a8yxdmr8x449kb5v3bfnvs26n92r7zq7k"))))
"0srg276yccfmqz0skmmga3vbqx4wiqsk1l6h86n6ryhxa9viqcm1"))))
(build-system gnu-build-system)
(outputs '("out"
"static")) ; static versions of the binaries in "out"

View file

@ -26,6 +26,7 @@
;;; Copyright © 2019 David Wilson <david@daviwil.com>
;;; Copyright © 2019, 2020 Alexandros Theodotou <alex@zrythm.org>
;;; Copyright © 2020 Vincent Legoll <vincent.legoll@gmail.com>
;;; Copyright © 2020 Lars-Dominik Braun <lars@6xq.net>
;;;
;;; This file is part of GNU Guix.
;;;
@ -2671,7 +2672,7 @@ (define-public curseradio
(define-public pianobar
(package
(name "pianobar")
(version "2019.02.14")
(version "2020.04.05")
(source (origin
(method git-fetch)
(uri (git-reference
@ -2680,7 +2681,7 @@ (define-public pianobar
(file-name (git-file-name name version))
(sha256
(base32
"1bfabkj3m9kmhxl64w4azmi0xf7w52fmqfbw2ag28hbb5yy01k1m"))))
"1gq8kpks6nychqz4gf0rpy7mrhz5vjw48a60x56j6y9flmazmypw"))))
(build-system gnu-build-system)
(arguments
`(#:tests? #f ; no tests

View file

@ -30,13 +30,13 @@ (define-module (gnu packages nano)
(define-public nano
(package
(name "nano")
(version "4.9")
(version "4.9.2")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://gnu/nano/nano-" version ".tar.xz"))
(sha256
(base32 "19ik88b3g0d9xwav4hkai2h1acmjy5fdnh21gdc1mjq5s4lrff8f"))))
(base32 "1xifbn1xaklrrf7knxvqif0hy0wgnas7w0wfggay5kifjkm5x8nq"))))
(build-system gnu-build-system)
(inputs
`(("gettext" ,gettext-minimal)

View file

@ -4,7 +4,7 @@
;;; Copyright © 2015 Taylan Ulrich Bayırlı/Kammer <taylanbayirli@gmail.com>
;;; Copyright © 2015, 2018 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2016, 2017, 2018 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2018, 2019, 2020 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2019 Maxim Cournoyer <maxim.cournoyer@gmail.com>
;;;
;;; This file is part of GNU Guix.
@ -28,7 +28,9 @@ (define-module (gnu packages ntp)
#:use-module (gnu packages base)
#:use-module (gnu packages libevent)
#:use-module (gnu packages linux)
#:use-module (gnu packages nettle)
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages readline)
#:use-module (gnu packages tls)
#:use-module (guix build-system gnu)
#:use-module (guix download)
@ -38,6 +40,70 @@ (define-module (gnu packages ntp)
#:use-module (guix utils)
#:use-module (srfi srfi-1))
(define-public chrony
(package
(name "chrony")
(version "3.5")
(source
(origin
(method url-fetch)
(uri (string-append "https://download.tuxfamily.org/chrony/"
"chrony-" version ".tar.gz"))
(sha256
(base32 "1d9r2dhslll4kzdmxrj0qfgwq1b30d4l3s5cwr8yr93029dpj0jf"))))
(build-system gnu-build-system)
(arguments
`(#:modules ((srfi srfi-26)
(guix build utils)
(guix build gnu-build-system))
#:configure-flags
(list "--enable-scfilter"
"--with-sendmail=sendmail"
"--with-user=chrony")
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'stay-inside-out
;; Simply setting CHRONYVARDIR to something nonsensical at install
;; time would result in nonsense file names in man pages.
(lambda _
(substitute* "Makefile.in"
(("mkdir -p \\$\\(DESTDIR\\)\\$\\(CHRONYVARDIR\\)") ":"))
#t))
(add-after 'install 'install-more-documentation
(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(doc (string-append out "/share/doc/" ,name "-" ,version)))
(for-each (cut install-file <> doc)
(list "README" "FAQ"))
(copy-recursively "examples" (string-append doc "/examples"))
#t))))))
(native-inputs
`(("pkg-config" ,pkg-config)))
(inputs
`(("libcap" ,libcap)
("libseccomp" ,libseccomp)
("nettle" ,nettle)))
(home-page "https://chrony.tuxfamily.org/")
(synopsis "System clock synchronisation service that speaks NTP")
(description
"Chrony keeps your system time accurate. It synchronises your computer's
clock with @acronym{NTP, Network Time Protocol} servers, reference clocks such
as GPS receivers, or even manual input of the correct time from a wristwatch.
Chrony will determine the rate at which the computer gains or loses time, and
compensate for it. It can also operate as an NTPv4 (RFC 5905) server and peer
to tell time to other computers on the network.
It's designed to perform well even under adverse conditions: congested
networks, unreliable clocks drifting with changes in temperature, and devices
or virtual machines that are frequently turned off and connect to the Internet
for only a few minutes at a time.
Typical accuracy when synchronised over the Internet is several milliseconds.
On a local network this can reach tens of microseconds. With hardware
time-stamping or reference clock, sub-microsecond accuracy is possible.")
(license l:gpl2)))
(define-public ntp
(package
(name "ntp")
@ -103,7 +169,7 @@ (define-public openntpd
(source (origin
(method url-fetch)
(uri (string-append
"mirror://openbsd/OpenNTPD/" name "-" version ".tar.gz"))
"mirror://openbsd/OpenNTPD/openntpd-" version ".tar.gz"))
(sha256
(base32
"0fn12i4kzsi0zkr4qp3dp9bycmirnfapajqvdfx02zhr4hanj0kv"))))

View file

@ -1,14 +1,5 @@
From 360d44d67e7be46108bec982ff2e79b89f04a9a3 Mon Sep 17 00:00:00 2001
From: Mathieu Othacehe <m.othacehe@gmail.com>
Date: Thu, 15 Nov 2018 14:34:40 +0900
Subject: [PATCH] add runtime keymap switch support.
---
src/pty.c | 23 ++++++++++-
src/uterm_input.c | 2 +
src/uterm_input_internal.h | 5 +++
src/uterm_input_uxkb.c | 83 ++++++++++++++++++++++++++++++++++++++
4 files changed, 111 insertions(+), 2 deletions(-)
By Mathieu Othacehe <m.othacehe@gmail.com>.
Modified by Florian Pelz <pelzflorian@pelzflorian.de>.
diff --git a/src/pty.c b/src/pty.c
index 1443f4a..f64cb5b 100644
@ -124,7 +115,7 @@ index 04e6cc9..ec44459 100644
uint16_t key_state,
uint16_t code);
diff --git a/src/uterm_input_uxkb.c b/src/uterm_input_uxkb.c
index 925c755..4760972 100644
index 925c755..5d5c22e 100644
--- a/src/uterm_input_uxkb.c
+++ b/src/uterm_input_uxkb.c
@@ -31,6 +31,9 @@
@ -137,7 +128,7 @@ index 925c755..4760972 100644
#include <xkbcommon/xkbcommon.h>
#include "shl_hook.h"
#include "shl_llog.h"
@@ -178,6 +181,86 @@ static void timer_event(struct ev_timer *timer, uint64_t num, void *data)
@@ -178,6 +181,87 @@ static void timer_event(struct ev_timer *timer, uint64_t num, void *data)
shl_hook_call(dev->input->hook, dev->input, &dev->repeat_event);
}
@ -145,11 +136,11 @@ index 925c755..4760972 100644
+{
+ struct uterm_input_dev *dev = data;
+ char in;
+ char keymap[3][255];
+ char keymap[4][255];
+ int pos = 0;
+ int curr_keymap = 0;
+ int ret;
+ char *model, *layout, *variant;
+ char *model, *layout, *variant, *options;
+
+ if (!(mask & EV_READABLE))
+ return;
@ -159,6 +150,7 @@ index 925c755..4760972 100644
+ model = keymap[0];
+ layout = keymap[1];
+ variant = keymap[2];
+ options = keymap[3];
+
+ do {
+ ret = read(dev->rupdate_fd, &in, sizeof(in));
@ -175,7 +167,7 @@ index 925c755..4760972 100644
+
+ llog_info(dev->input, "HANDLER CALLED %s|%s|%s\n",
+ model, layout, variant);
+ uxkb_desc_init(dev->input, model, layout, variant, NULL, NULL);
+ uxkb_desc_init(dev->input, model, layout, variant, options, NULL);
+
+ dev->state = xkb_state_new(dev->input->keymap);
+ if (!dev->state) {
@ -224,6 +216,3 @@ index 925c755..4760972 100644
int uxkb_dev_init(struct uterm_input_dev *dev)
{
int ret;
--
2.17.1

View file

@ -195,9 +195,6 @@ (define-public python-scikit-image
"Scikit-image is a collection of algorithms for image processing.")
(license license:bsd-3)))
(define-public python2-scikit-image
(package-with-python2 python-scikit-image))
(define-public python-pandas
(package
(name "python-pandas")

View file

@ -8,7 +8,7 @@
;;; Copyright © 2015 Omar Radwan <toxemicsquire4@gmail.com>
;;; Copyright © 2015 Pierre-Antoine Rault <par@rigelk.eu>
;;; Copyright © 2015, 2016, 2017, 2018, 2019, 2020 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2015, 2016 Christopher Allan Webber <cwebber@dustycloud.org>
;;; Copyright © 2015, 2016, 2020 Christopher Allan Webber <cwebber@dustycloud.org>
;;; Copyright © 2015 Eric Dvorsak <eric@dvorsak.fr>
;;; Copyright © 2015, 2016 David Thompson <davet@gnu.org>
;;; Copyright © 2015, 2016, 2017, 2019 Leo Famulari <leo@famulari.name>
@ -982,8 +982,17 @@ (define-public python-serpent
Because only safe literals are encoded, it is safe to send serpent data to
other machines, such as over the network.")
(properties `((python2-variant . ,(delay python2-serpent))))
(license license:expat)))
(define-public python2-serpent
(let ((base (package-with-python2 (strip-python2-variant python-serpent))))
(package
(inherit base)
(propagated-inputs
`(("python-enum34" ,python2-enum34)
,@(package-propagated-inputs base))))))
(define-public python-setuptools
(package
(name "python-setuptools")
@ -6805,14 +6814,14 @@ (define-public python2-networkx
(define-public python-datrie
(package
(name "python-datrie")
(version "0.8")
(version "0.8.2")
(source
(origin
(method url-fetch)
(uri (pypi-uri "datrie" version))
(sha256
(base32
"0338r8xgmpy78556jhms0h6qkvyjr10p8bpgdvcpqzm9lrmxmmdx"))))
"0pbn32flkrpjiwfcknmj6398qa81ba783kbcvwan3kym73v0hnsj"))))
(build-system python-build-system)
(native-inputs
`(("python-cython" ,python-cython)
@ -17222,26 +17231,35 @@ (define-public python2-sortedcontainers
(define-public python-cloudpickle
(package
(name "python-cloudpickle")
(version "0.6.1")
(version "1.3.0")
(source
(origin
(method url-fetch)
(uri (pypi-uri "cloudpickle" version))
(sha256
(base32
"1wdw89mlm7fqa3fm3ymskx05jrys66n8m1z1a8s0mss0799ahsgi"))))
"0lx7gy9clp427qwcm7b23zdsldpr03gy3vxxhyi8fpbhwz859brq"))))
(build-system python-build-system)
;; FIXME: there are 5 errors in 122 tests:
;; ERROR: test_function_pickle_compat_0_4_0 (tests.cloudpickle_test.CloudPickleTest)
;; ERROR: test_function_pickle_compat_0_4_1 (tests.cloudpickle_test.CloudPickleTest)
;; ERROR: test_function_pickle_compat_0_4_0 (tests.cloudpickle_test.Protocol2CloudPickleTest)
;; ERROR: test_function_pickle_compat_0_4_1 (tests.cloudpickle_test.Protocol2CloudPickleTest)
;; ERROR: test_temp_file (tests.cloudpickle_file_test.CloudPickleFileTests)
;; TypeError: cannot serialize '_io.BufferedRandom' object
(arguments '(#:tests? #f))
(arguments
'(#:phases (modify-phases %standard-phases
(add-before 'check 'do-not-override-PYTHONPATH
(lambda _
;; Append to PYTHONPATH instead of overriding it so
;; that dependencies from Guix can be found.
(substitute* "tests/testutils.py"
(("env\\['PYTHONPATH'\\] = pythonpath")
"env['PYTHONPATH'] += os.pathsep + pythonpath"))
#t))
(replace 'check
(lambda* (#:key tests? #:allow-other-keys)
(if tests?
(invoke "pytest" "-s" "-vv")
(format #t "test suite not run~%"))
#t)))))
(native-inputs
`(("python-pytest" ,python-pytest)
("python-mock" ,python-mock)
`(;; For tests.
("python-psutil" ,python-psutil)
("python-pytest" ,python-pytest)
("python-tornado" ,python-tornado)))
(home-page "https://github.com/cloudpipe/cloudpickle")
(synopsis "Extended pickling support for Python objects")
@ -17251,10 +17269,19 @@ (define-public python-cloudpickle
is especially useful for cluster computing where Python expressions are
shipped over the network to execute on remote hosts, possibly close to the
data.")
(properties `((python2-variant . ,(delay python2-cloudpickle))))
(license license:bsd-3)))
(define-public python2-cloudpickle
(package-with-python2 python-cloudpickle))
(let ((base (package-with-python2 (strip-python2-variant python-cloudpickle))))
(package
(inherit base)
(native-inputs
`(("python-mock" ,python2-mock)
,@(package-native-inputs base)))
(propagated-inputs
`(("python-futures" ,python2-futures)
,@(package-propagated-inputs base))))))
(define-public python-locket
(package
@ -17365,13 +17392,13 @@ (define-public python-fsspec
(define-public python-dask
(package
(name "python-dask")
(version "2.9.0")
(version "2.14.0")
(source
(origin
(method url-fetch)
(uri (pypi-uri "dask" version))
(sha256
(base32 "1w1hqr8vyx6ygwflj2737dcy0mmgvrc0s602gnny8pzlcbs9m76b"))))
(base32 "031j0j26s0675v0isyps2dphm03330n7dy8ifdy70jgvf78d119q"))))
(build-system python-build-system)
(arguments
`(#:phases
@ -18836,6 +18863,29 @@ (define-public offlate
an upload option to send your work back to the platform.")
(license license:gpl3+)))
(define-public python-titlecase
(package
(name "python-titlecase")
(version "0.12.0")
(source
(origin
(method url-fetch)
(uri (pypi-uri "titlecase" version))
(sha256
(base32
"0486i99wf8ssa7sgn81fn6fv6i4rhhq6n751bc740b3hzfbpmpl4"))))
(build-system python-build-system)
(native-inputs
`(("python-nose" ,python-nose)))
(home-page "https://github.com/ppannuto/python-titlecase")
(synopsis "Capitalize strings similar to book titles")
(description
"Python-Titlecase is a Python port of John Gruber's titlecase.pl.
It capitalizes (predominantly English) strings in a way that is similar to
book titles, using the New York Times Manual of Style to leave certain words
lowercase.")
(license license:expat)))
(define-public python-pypng
(package
(name "python-pypng")
@ -19559,3 +19609,24 @@ (define-public python-pysaml2
This package was originally written to work in a WSGI environment, but
there are extensions that allow you to use it with other frameworks.")
(license license:asl2.0)))
(define-public python-click-plugins
(package
(name "python-click-plugins")
(version "1.1.1")
(source
(origin
(method url-fetch)
(uri (pypi-uri "click-plugins" version))
(sha256
(base32 "0jr6bxj67vg988vkm6nz8jj98v9lg46bn49lkhak3n598jbrkas6"))))
(build-system python-build-system)
(native-inputs
`(("python-pytest" ,python-pytest)))
(propagated-inputs
`(("python-click" ,python-click)))
(synopsis "Extension for Click to register external CLI commands")
(description "This package provides n extension module for Click to
register external CLI commands via setuptools entry-points.")
(home-page "https://github.com/click-contrib/click-plugins")
(license license:bsd-3)))

View file

@ -339,14 +339,12 @@ (define-public sdl-pango
"SDL_Pango-" version ".tar.gz"))
(sha256
(base32 "197baw1dsg0p4pljs5k0fshbyki00r4l49m1drlpqw6ggawx6xbz"))
(patches
(search-patches
"sdl-pango-api_additions.patch"
"sdl-pango-blit_overflow.patch"
"sdl-pango-fillrect_crash.patch"
"sdl-pango-fix-explicit-SDLPango_CopyFTBitmapTo.patch"
"sdl-pango-matrix_declarations.patch"
"sdl-pango-sans-serif.patch"))))
(patches (search-patches "sdl-pango-api_additions.patch"
"sdl-pango-blit_overflow.patch"
"sdl-pango-fillrect_crash.patch"
"sdl-pango-header-guard.patch"
"sdl-pango-matrix_declarations.patch"
"sdl-pango-sans-serif.patch"))))
(build-system gnu-build-system)
(arguments
`(#:configure-flags (list "--disable-static")

View file

@ -72,7 +72,7 @@ (define-module (gnu packages ssh)
(define-public libssh
(package
(name "libssh")
(version "0.9.3")
(version "0.9.4")
(source (origin
(method git-fetch)
(uri (git-reference
@ -80,7 +80,7 @@ (define-public libssh
(commit (string-append "libssh-" version))))
(sha256
(base32
"175i3xybg69d5lb078334v6dd3njm743kww8f67ix9w33969rmzf"))
"0qr4vi3k1wv69c95d9j26fiv78pzyksaq8ccd76b8nxar5z1fbj6"))
(file-name (git-file-name name version))))
(build-system cmake-build-system)
(outputs '("out" "debug"))
@ -415,10 +415,10 @@ (define-public mosh
(home-page "https://mosh.org/")
(synopsis "Remote shell tolerant to intermittent connectivity")
(description
"Remote terminal application that allows roaming, supports intermittent
connectivity, and provides intelligent local echo and line editing of user
keystrokes. Mosh is a replacement for SSH. It's more robust and responsive,
especially over Wi-Fi, cellular, and long-distance links.")
"Mosh is a remote terminal application that allows client roaming, supports
intermittent connectivity, and provides intelligent local echo and line editing
of user keystrokes. It's a replacement for SSH that's more robust and
responsive, especially over Wi-Fi, cellular, and long-distance links.")
(license license:gpl3+)))
(define-public et
@ -448,7 +448,7 @@ (define-public et
without interrupting the session. Unlike SSH sessions, ET sessions will
survive even network outages and IP changes. ET uses a custom protocol over
TCP, not the SSH protocol.")
(home-page "https://mistertea.github.io/EternalTCP/")
(home-page "https://eternalterminal.dev/")
(license license:asl2.0)))
(define-public dropbear

View file

@ -214,14 +214,14 @@ (define-public aalib
(define-public celluloid
(package
(name "celluloid")
(version "0.18")
(version "0.19")
(source
(origin
(method url-fetch)
(uri (string-append "https://github.com/celluloid-player/celluloid/releases"
"/download/v" version "/celluloid-" version ".tar.xz"))
(sha256
(base32 "0gmscx9zb8ppfjlnmgbcmhknhawa05sdhxi7dv5wjapjq0glq481"))))
(base32 "1s3qkism96gi44incvsb6rqg255qcvjvw61ya7nw30md0sapj4sl"))))
(build-system glib-or-gtk-build-system)
(native-inputs
`(("intltool" ,intltool)

View file

@ -854,7 +854,7 @@ (define-public xfce
("shared-mime-info" ,shared-mime-info)
("thunar" ,thunar)
("thunar-volman" ,thunar-volman)
("tumlber" ,tumbler)
("tumbler" ,tumbler)
("xfce4-appfinder" ,xfce4-appfinder)
("xfce4-panel" ,xfce4-panel)
("xfce4-power-manager" ,xfce4-power-manager)
@ -868,7 +868,7 @@ (define-public xfce
("xfce4-battery-plugin" ,xfce4-battery-plugin)
("xfce4-clipman-plugin" ,xfce4-clipman-plugin)
("xfce4-pulseaudio-plugin" ,xfce4-pulseaudio-plugin)
("xfce4-xkb-plugin" ,xfce4-xkb-plugin)))
("xfce4-xkb-plugin" ,xfce4-xkb-plugin)))
(native-search-paths
;; For finding panel plugins.
(package-native-search-paths xfce4-panel))

View file

@ -10,6 +10,7 @@
;;; Copyright © 2017, 2019 Christopher Baines <mail@cbaines.net>
;;; Copyright © 2019 Tim Gesthuizen <tim.gesthuizen@yahoo.de>
;;; Copyright © 2019 David Wilson <david@daviwil.com>
;;; Copyright © 2020 Tobias Geerinckx-Rice <me@tobias.gr>
;;;
;;; This file is part of GNU Guix.
;;;
@ -892,7 +893,7 @@ (define sane-service-type
(define-record-type* <gnome-desktop-configuration> gnome-desktop-configuration
make-gnome-desktop-configuration
gnome-desktop-configuration?
(gnome-package gnome-package (default gnome)))
(gnome gnome-package (default gnome)))
(define (gnome-polkit-settings config)
"Return the list of GNOME dependencies that provide polkit actions and

View file

@ -9,7 +9,7 @@
;;; Copyright © 2018 Pierre-Antoine Rouby <pierre-antoine.rouby@inria.fr>
;;; Copyright © 2017, 2018, 2019 Christopher Baines <mail@cbaines.net>
;;; Copyright © 2018 Marius Bakke <mbakke@fastmail.com>
;;; Copyright © 2019 Florian Pelz <pelzflorian@pelzflorian.de>
;;; Copyright © 2019, 2020 Florian Pelz <pelzflorian@pelzflorian.de>
;;; Copyright © 2020 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2020 Tobias Geerinckx-Rice <me@tobias.gr>
;;;
@ -652,8 +652,8 @@ (define (default-nginx-config config)
"user nginx nginx;\n"
"pid " run-directory "/pid;\n"
"error_log " log-directory "/error.log info;\n"
(map emit-global-directive global-directives)
(map emit-load-module modules)
(map emit-global-directive global-directives)
"http {\n"
" client_body_temp_path " run-directory "/client_body_temp;\n"
" proxy_temp_path " run-directory "/proxy_temp;\n"

View file

@ -158,7 +158,9 @@ (define* (expression->derivation-in-linux-vm name exp
(references-graphs #f)
(memory-size 256)
(disk-image-format "qcow2")
(disk-image-size 'guess))
(disk-image-size 'guess)
(substitutable? #t))
"Evaluate EXP in a QEMU virtual machine running LINUX with INITRD (a
derivation). The virtual machine runs with MEMORY-SIZE MiB of memory. In the
virtual machine, EXP has access to FILE-SYSTEMS, which, by default, includes a
@ -175,7 +177,10 @@ (define* (expression->derivation-in-linux-vm name exp
When REFERENCES-GRAPHS is true, it must be a list of file name/store path
pairs, as for `derivation'. The files containing the reference graphs are
made available under the /xchg CIFS share."
made available under the /xchg CIFS share.
SUBSTITUTABLE? determines whether the returned derivation should be marked as
substitutable."
(define user-builder
(program-file "builder-in-linux-vm" exp))
@ -257,7 +262,8 @@ (define builder
#:target target
#:env-vars env-vars
#:guile-for-build guile-for-build
#:references-graphs references-graphs)))
#:references-graphs references-graphs
#:substitutable? substitutable?)))
(define (has-guix-service-type? os)
"Return true if OS contains a service of the type GUIX-SERVICE-TYPE."
@ -277,7 +283,8 @@ (define* (iso9660-image #:key
bootloader
(register-closures? (has-guix-service-type? os))
(inputs '())
(grub-mkrescue-environment '()))
(grub-mkrescue-environment '())
(substitutable? #t))
"Return a bootable, stand-alone iso9660 image.
INPUTS is a list of inputs (as for packages)."
@ -348,6 +355,7 @@ (define schema
#:make-disk-image? #f
#:single-file-output? #t
#:references-graphs inputs
#:substitutable? substitutable?
;; Xorriso seems to be quite memory-hungry, so increase the VM's RAM size.
#:memory-size 512))
@ -367,7 +375,8 @@ (define* (qemu-image #:key
bootloader
(register-closures? (has-guix-service-type? os))
(inputs '())
copy-inputs?)
copy-inputs?
(substitutable? #t))
"Return a bootable, stand-alone QEMU image of type DISK-IMAGE-FORMAT (e.g.,
'qcow2' or 'raw'), with a root partition of type FILE-SYSTEM-TYPE.
Optionally, FILE-SYSTEM-LABEL can be specified as the volume name for the root
@ -495,7 +504,8 @@ (define schema
#:make-disk-image? #t
#:disk-image-size disk-image-size
#:disk-image-format disk-image-format
#:references-graphs inputs))
#:references-graphs inputs
#:substitutable? substitutable?))
(define* (system-docker-image os
#:key
@ -650,11 +660,15 @@ (define* (system-disk-image os
(name "disk-image")
(file-system-type "ext4")
(disk-image-size (* 900 (expt 2 20)))
(volatile? #t))
(volatile? #t)
(substitutable? #t))
"Return the derivation of a disk image of DISK-IMAGE-SIZE bytes of the
system described by OS. Said image can be copied on a USB stick as is. When
VOLATILE? is true, the root file system is made volatile; this is useful
to USB sticks meant to be read-only."
to USB sticks meant to be read-only.
SUBSTITUTABLE? determines whether the returned derivation should be marked as
substitutable."
(define normalize-label
;; ISO labels are all-caps (case-insensitive), but since
;; 'find-partition-by-label' is case-sensitive, make it all-caps here.
@ -723,7 +737,8 @@ (define file-systems-to-keep
#:inputs `(("system" ,os)
("bootcfg" ,bootcfg))
#:grub-mkrescue-environment
'(("MKRESCUE_SED_MODE" . "mbr_hfs")))
'(("MKRESCUE_SED_MODE" . "mbr_hfs"))
#:substitutable? substitutable?)
(qemu-image #:name name
#:os os
#:bootcfg-drv bootcfg
@ -736,7 +751,8 @@ (define file-systems-to-keep
#:file-system-uuid uuid
#:copy-inputs? #t
#:inputs `(("system" ,os)
("bootcfg" ,bootcfg))))))
("bootcfg" ,bootcfg))
#:substitutable? substitutable?))))
(define* (system-qemu-image os
#:key
@ -925,6 +941,7 @@ (define (virtfs-option fs)
'())
"-no-reboot"
"-nic" "user,model=virtio-net-pci"
"-object" "rng-random,filename=/dev/urandom,id=guixsd-vm-rng"
"-device" "virtio-rng-pci,rng=guixsd-vm-rng"

View file

@ -232,7 +232,9 @@ (define* (run-install target-os target-os-source
os (list target))
#:disk-image-size install-size
#:file-system-type
installation-disk-image-file-system-type)))
installation-disk-image-file-system-type
;; Don't provide substitutes; too big.
#:substitutable? #f)))
(define install
(with-imported-modules '((guix build utils)
(gnu build marionette))
@ -296,7 +298,8 @@ (define marionette
(exit #$(and gui-test
(gui-test #~marionette)))))))
(gexp->derivation "installation" install)))
(gexp->derivation "installation" install
#:substitutable? #f))) ;too big
(define* (qemu-command/writable-image image #:key (memory-size 256))
"Return as a monadic value the command to run QEMU on a writable copy of
@ -1122,6 +1125,8 @@ (define* (guided-installation-test name
#:os installation-os-for-gui-tests
#:install-size install-size
#:target-size target-size
#:installation-disk-image-file-system-type
"iso9660"
#:gui-test
(lambda (marionette)
(gui-test-program

View file

@ -205,7 +205,8 @@ (define marionette
;; Make sure the bridge is created.
(test-assert "br0 exists"
(marionette-eval
'(zero? (system* "ovs-vsctl" "br-exists" "br0"))
'(zero? (system* #$(file-append openvswitch "/bin/ovs-vsctl")
"br-exists" "br0"))
marionette))
;; Make sure eth0 is connected to the bridge.

View file

@ -531,7 +531,8 @@ (define tar
(string-append "tarbomb-"
(or name file-name))
#:system system
#:guile guile)))
#:guile guile))
(guile (package->derivation guile system)))
;; Take the tar bomb, and simply unpack it as a directory.
;; Use ungrafted tar/gzip so that the resulting tarball doesn't depend on
;; whether grafts are enabled.
@ -544,6 +545,8 @@ (define tar
(chdir #$output)
(invoke (string-append #$tar "/bin/tar")
"xf" #$drv)))
#:system system
#:guile-for-build guile
#:graft? #f
#:local-build? #t)))
@ -566,7 +569,8 @@ (define unzip
(string-append "zipbomb-"
(or name file-name))
#:system system
#:guile guile)))
#:guile guile))
(guile (package->derivation guile system)))
;; Take the zip bomb, and simply unpack it as a directory.
;; Use ungrafted unzip so that the resulting tarball doesn't depend on
;; whether grafts are enabled.
@ -578,6 +582,8 @@ (define unzip
(chdir #$output)
(invoke (string-append #$unzip "/bin/unzip")
#$drv)))
#:system system
#:guile-for-build guile
#:graft? #f
#:local-build? #t)))

View file

@ -7,7 +7,7 @@
;;; Copyright © 2016 Hartmut Goebel <h.goebel@crazy-compilers.com>
;;; Copyright © 2017 Alex Kost <alezost@gmail.com>
;;; Copyright © 2017 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2017, 2018 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2017, 2018, 2020 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2018, 2019 Arun Isaac <arunisaac@systemreboot.net>
;;;
;;; This file is part of GNU Guix.
@ -286,7 +286,8 @@ (define (package-input-intersection inputs-to-check input-names)
(define (check-inputs-should-be-native package)
;; Emit a warning if some inputs of PACKAGE are likely to belong to its
;; native inputs.
(let ((inputs (package-inputs package))
(let ((inputs (append (package-inputs package)
(package-propagated-inputs package)))
(input-names
'("pkg-config"
"autoconf"
@ -685,7 +686,7 @@ (define patches
;; Check whether we're reaching tar's maximum file name length.
(let ((prefix (string-length (%distro-directory)))
(margin (string-length "guix-0.13.0-10-123456789/"))
(margin (string-length "guix-2.0.0rc3-10000-1234567890/"))
(max 99))
(filter-map (match-lambda
((? string? patch)