summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--gnu/local.mk4
-rw-r--r--gnu/packages/admin.scm12
-rw-r--r--gnu/packages/bdw-gc.scm5
-rw-r--r--gnu/packages/bioconductor.scm10
-rw-r--r--gnu/packages/build-tools.scm101
-rw-r--r--gnu/packages/direct-connect.scm2
-rw-r--r--gnu/packages/disk.scm1
-rw-r--r--gnu/packages/education.scm4
-rw-r--r--gnu/packages/emacs-xyz.scm183
-rw-r--r--gnu/packages/game-development.scm1
-rw-r--r--gnu/packages/geo.scm6
-rw-r--r--gnu/packages/gnome.scm81
-rw-r--r--gnu/packages/gps.scm1
-rw-r--r--gnu/packages/gtk.scm1
-rw-r--r--gnu/packages/image.scm1
-rw-r--r--gnu/packages/installers.scm2
-rw-r--r--gnu/packages/libffi.scm20
-rw-r--r--gnu/packages/patches/gnome-shell-polkit-autocleanup.patch50
-rw-r--r--gnu/packages/patches/scons-test-environment.patch57
-rw-r--r--gnu/packages/python-xyz.scm45
-rw-r--r--gnu/packages/qt.scm2
-rw-r--r--gnu/packages/samba.scm7
-rw-r--r--gnu/packages/web.scm4
-rw-r--r--gnu/packages/webkit.scm7
-rw-r--r--gnu/packages/wm.scm11
-rw-r--r--gnu/packages/xdisorg.scm1
-rw-r--r--guix/build-system/scons.scm4
27 files changed, 472 insertions, 151 deletions
diff --git a/gnu/local.mk b/gnu/local.mk
index 68d2a3dc8c..c433cf7d98 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -1210,7 +1210,8 @@ dist_patch_DATA = \
%D%/packages/patches/gnome-online-miners-tracker-3.patch \
%D%/packages/patches/gnome-screenshot-meson-0.60.patch \
%D%/packages/patches/gnome-settings-daemon-gc.patch \
- %D%/packages/patches/gnome-session-support-elogind.patch \
+ %D%/packages/patches/gnome-session-support-elogind.patch \
+ %D%/packages/patches/gnome-shell-polkit-autocleanup.patch \
%D%/packages/patches/gnome-todo-libportal.patch \
%D%/packages/patches/gnome-tweaks-search-paths.patch \
%D%/packages/patches/gnupg-CVE-2022-34903.patch \
@@ -1799,6 +1800,7 @@ dist_patch_DATA = \
%D%/packages/patches/sbcl-png-fix-sbcl-compatibility.patch \
%D%/packages/patches/scalapack-gcc-10-compilation.patch \
%D%/packages/patches/scheme48-tests.patch \
+ %D%/packages/patches/scons-test-environment.patch \
%D%/packages/patches/scotch-build-parallelism.patch \
%D%/packages/patches/scotch-integer-declarations.patch \
%D%/packages/patches/screen-hurd-path-max.patch \
diff --git a/gnu/packages/admin.scm b/gnu/packages/admin.scm
index a4c5189222..b35d50ff56 100644
--- a/gnu/packages/admin.scm
+++ b/gnu/packages/admin.scm
@@ -1723,12 +1723,12 @@ over ssh connections.")
(substitute* "Makefile"
((".*/service/realmd-.*") "")))))))
(native-inputs
- `(("autoconf" ,autoconf)
- ("automake" ,automake)
- ("glib-bin" ,glib "bin")
- ("intltool" ,intltool)
- ("pkg-config" ,pkg-config)
- ("python" ,python)))
+ (list autoconf
+ automake
+ `(,glib "bin")
+ intltool
+ pkg-config
+ python))
(inputs
(list glib mit-krb5 openldap polkit))
(synopsis "DBus service for network authentication")
diff --git a/gnu/packages/bdw-gc.scm b/gnu/packages/bdw-gc.scm
index c812248e86..4dd559ef79 100644
--- a/gnu/packages/bdw-gc.scm
+++ b/gnu/packages/bdw-gc.scm
@@ -135,6 +135,11 @@ C or C++ programs, though that is not its primary goal.")
(base32
"0glzah695wsf6c27hs5wwlw4mnq1vfivdshz1rb8pq7w4mp5dazh"))))
(build-system gnu-build-system)
+ (arguments
+ `(,@(if (target-riscv64?)
+ `(#:configure-flags
+ (list "CFLAGS_EXTRA=-latomic"))
+ '())))
(outputs '("out" "debug"))
(synopsis "Accessing hardware atomic memory update operations")
(description
diff --git a/gnu/packages/bioconductor.scm b/gnu/packages/bioconductor.scm
index facfb75abf..7aee0c55c3 100644
--- a/gnu/packages/bioconductor.scm
+++ b/gnu/packages/bioconductor.scm
@@ -3,7 +3,7 @@
;;; Copyright © 2016, 2017, 2018, 2020, 2021 Roel Janssen <roel@gnu.org>
;;; Copyright © 2016 Pjotr Prins <pjotr.guix@thebird.nl>
;;; Copyright © 2016 Ben Woodcroft <donttrustben@gmail.com>
-;;; Copyright © 2017 Efraim Flashner <efraim@flashner.co.il>
+;;; Copyright © 2017, 2022 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2017, 2018, 2019, 2020, 2021 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2019, 2020, 2021, 2022 Simon Tournier <zimon.toutoune@gmail.com>
;;; Copyright © 2020 Peter Lo <peterloleungyau@gmail.com>
@@ -2756,13 +2756,13 @@ over-abundant or less-abundant as compared to that of normal cells.")
(define-public r-iranges
(package
(name "r-iranges")
- (version "2.30.0")
+ (version "2.30.1")
(source (origin
(method url-fetch)
(uri (bioconductor-uri "IRanges" version))
(sha256
(base32
- "0hfx5n0b4pqrrc1w2dik596803ly8ffnxfs768iy5l5kr8wwyc8k"))))
+ "1r01c9lczkchgd9hbxxd6wrd5avhy52mfqjck7l9avjq1jimvzv3"))))
(properties
`((upstream-name . "IRanges")))
(build-system r-build-system)
@@ -4328,13 +4328,13 @@ genomic intervals. In addition, it can use BAM or BigWig files as input.")
(define-public r-genomeinfodb
(package
(name "r-genomeinfodb")
- (version "1.32.2")
+ (version "1.32.3")
(source (origin
(method url-fetch)
(uri (bioconductor-uri "GenomeInfoDb" version))
(sha256
(base32
- "1n37bwb2fqmdgqbn19rgsd2qn8vbdhv6khdwjr7v12bwabcbx9xh"))))
+ "17nwcq2ivj3bdibdywfyjq4n6z0djispbh9ahqa55sp31ksq41xh"))))
(properties
`((upstream-name . "GenomeInfoDb")))
(build-system r-build-system)
diff --git a/gnu/packages/build-tools.scm b/gnu/packages/build-tools.scm
index 38a7ee2783..5c9d5409cb 100644
--- a/gnu/packages/build-tools.scm
+++ b/gnu/packages/build-tools.scm
@@ -34,6 +34,7 @@
#:use-module ((guix licenses) #:prefix license:)
#:use-module (guix utils)
#:use-module (guix packages)
+ #:use-module (guix gexp)
#:use-module (guix download)
#:use-module (guix git-download)
#:use-module (guix build-system cmake)
@@ -53,6 +54,7 @@
#:use-module (gnu packages pretty-print)
#:use-module (gnu packages protobuf)
#:use-module (gnu packages python)
+ #:use-module (gnu packages python-build)
#:use-module (gnu packages python-crypto)
#:use-module (gnu packages python-web)
#:use-module (gnu packages python-xyz)
@@ -384,6 +386,105 @@ other lower-level build files.")
scripted definition of a software project and outputs @file{Makefile}s or
other lower-level build files.")))
+(define-public scons
+ (package
+ (name "scons")
+ (version "4.4.0")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/SCons/scons")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (patches (search-patches "scons-test-environment.patch"))
+ (sha256
+ (base32
+ "1czswx1fj2j48rspkrvarkr43k0vii9rsmz054c9yby1dq362fgr"))))
+ (build-system python-build-system)
+ (arguments
+ (list
+ #:modules (append %python-build-system-modules
+ '((ice-9 ftw) (srfi srfi-26)))
+ #:phases
+ #~(modify-phases (@ (guix build python-build-system) %standard-phases)
+ (add-after 'unpack 'adjust-hard-coded-paths
+ (lambda _
+ (substitute* "SCons/Script/Main.py"
+ (("/usr/share/scons")
+ (string-append #$output "/share/scons")))))
+ (add-before 'build 'bootstrap
+ (lambda _
+ ;; XXX: Otherwise setup.py bdist_wheel fails.
+ (setenv "PYTHONPATH" (getenv "GUIX_PYTHONPATH"))
+ (invoke "python" "scripts/scons.py")))
+ (replace 'check
+ (lambda* (#:key tests? #:allow-other-keys)
+ (when tests?
+ (invoke "python" "runtest.py" "--all" "--unit-only"))))
+ (add-after 'install 'move-manuals
+ (lambda _
+ ;; XXX: For some reason manuals get installed to the top-level
+ ;; #$output directory.
+ (with-directory-excursion #$output
+ (let ((man1 (string-append #$output "/share/man/man1"))
+ (stray-manuals (scandir "."
+ (cut string-suffix? ".1" <>))))
+ (mkdir-p man1)
+ (for-each (lambda (manual)
+ (link manual (string-append man1 "/" manual))
+ (delete-file manual))
+ stray-manuals))))))))
+ (native-inputs
+ ;; TODO: Add 'fop' when available in Guix to generate manuals.
+ (list python-wheel
+ ;;For tests.
+ python-psutil))
+ (home-page "https://scons.org/")
+ (synopsis "Software construction tool written in Python")
+ (description
+ "SCons is a software construction tool. Think of SCons as an improved,
+cross-platform substitute for the classic Make utility with integrated
+functionality similar to autoconf/automake and compiler caches such as ccache.
+In short, SCons is an easier, more reliable and faster way to build
+software.")
+ (license license:x11)))
+
+(define-public scons-3
+ (package
+ (inherit scons)
+ (version "3.0.4")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/SCons/scons")
+ (commit version)))
+ (file-name (git-file-name "scons" version))
+ (sha256
+ (base32
+ "1xy8jrwz87y589ihcld4hv7wn122sjbz914xn8h50ww77wbhk8hn"))))
+ (arguments
+ `(#:use-setuptools? #f ; still relies on distutils
+ #:tests? #f ; no 'python setup.py test' command
+ #:phases
+ (modify-phases %standard-phases
+ (add-before 'build 'bootstrap
+ (lambda _
+ (substitute* "src/engine/SCons/compat/__init__.py"
+ (("sys.modules\\[new\\] = imp.load_module\\(old, \\*imp.find_module\\(old\\)\\)")
+ "sys.modules[new] = __import__(old)"))
+ (substitute* "src/engine/SCons/Platform/__init__.py"
+ (("mod = imp.load_module\\(full_name, file, path, desc\\)")
+ "mod = __import__(full_name)"))
+ (invoke "python" "bootstrap.py" "build/scons" "DEVELOPER=guix")
+ (chdir "build/scons")
+ #t)))))
+ (native-inputs '())))
+
+(define-public scons-python2
+ (package
+ (inherit (package-with-python2 scons-3))
+ (name "scons-python2")))
+
(define-public tup
(package
(name "tup")
diff --git a/gnu/packages/direct-connect.scm b/gnu/packages/direct-connect.scm
index d342537122..4898c7a038 100644
--- a/gnu/packages/direct-connect.scm
+++ b/gnu/packages/direct-connect.scm
@@ -25,12 +25,12 @@
#:use-module (guix download)
#:use-module (gnu packages)
#:use-module (gnu packages boost)
+ #:use-module (gnu packages build-tools)
#:use-module (gnu packages compression)
#:use-module (gnu packages gettext)
#:use-module (gnu packages gnome)
#:use-module (gnu packages gtk)
#:use-module (gnu packages pkg-config)
- #:use-module (gnu packages python-xyz)
#:use-module (gnu packages tls)
#:use-module (gnu packages version-control))
diff --git a/gnu/packages/disk.scm b/gnu/packages/disk.scm
index 69c02347c3..60605417a9 100644
--- a/gnu/packages/disk.scm
+++ b/gnu/packages/disk.scm
@@ -45,6 +45,7 @@
#:use-module (gnu packages autotools)
#:use-module (gnu packages base)
#:use-module (gnu packages bash)
+ #:use-module (gnu packages build-tools)
#:use-module (gnu packages c)
#:use-module (gnu packages check)
#:use-module (gnu packages compression)
diff --git a/gnu/packages/education.scm b/gnu/packages/education.scm
index c5666fb02e..980088a670 100644
--- a/gnu/packages/education.scm
+++ b/gnu/packages/education.scm
@@ -579,7 +579,7 @@ a pen-tablet display and a beamer.")
(define-public fet
(package
(name "fet")
- (version "6.5.3")
+ (version "6.5.7")
(source
(origin
(method url-fetch)
@@ -588,7 +588,7 @@ a pen-tablet display and a beamer.")
(list (string-append directory base)
(string-append directory "old/" base))))
(sha256
- (base32 "030njv53azzw6fn2d5mkxn7hyvyb45yss2y49wxb8bgj3ayv1rgp"))))
+ (base32 "08j5i3dlp290fz142ljn68j8ssi5f3kabs0dd75ig33kms30hjs7"))))
(build-system gnu-build-system)
(arguments
(list
diff --git a/gnu/packages/emacs-xyz.scm b/gnu/packages/emacs-xyz.scm
index 379c5fb22c..c35912a26b 100644
--- a/gnu/packages/emacs-xyz.scm
+++ b/gnu/packages/emacs-xyz.scm
@@ -16,7 +16,7 @@
;;; Copyright © 2016, 2019 Alex Griffin <a@ajgrf.com>
;;; Copyright © 2016-2022 Nicolas Goaziou <mail@nicolasgoaziou.fr>
;;; Copyright © 2016, 2017, 2018 Alex Vong <alexvong1995@gmail.com>
-;;; Copyright © 2016, 2017, 2018, 2019, 2020, 2021 Arun Isaac <arunisaac@systemreboot.net>
+;;; Copyright © 2016-2022 Arun Isaac <arunisaac@systemreboot.net>
;;; Copyright © 2017 Christopher Baines <mail@cbaines.net>
;;; Copyright © 2017, 2018, 2019, 2020, 2022 Mathieu Othacehe <m.othacehe@gmail.com>
;;; Copyright © 2017, 2018, 2019, 2020, 2021, 2022 Clément Lassieur <clement@lassieur.org>
@@ -1993,6 +1993,41 @@ directly.")
Distributed @acronym{Source Control Management, SCM} system.")
(license license:gpl3+))))
+(define-public emacs-alarm-clock
+ (package
+ (name "emacs-alarm-clock")
+ (version "1.0.1")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/wlemuel/alarm-clock")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "11afq6lnlqdzbll015fx3031bslwfaz5362qgk2ipgqlk872559h"))))
+ (build-system emacs-build-system)
+ (arguments
+ (list #:include #~(cons "alarm.mp3" %default-include)
+ #:phases
+ #~(modify-phases %standard-phases
+ (add-after 'unpack 'configure
+ (lambda* (#:key inputs #:allow-other-keys)
+ (let ((mpg123 (search-input-file inputs "/bin/mpg123"))
+ (notify-send
+ (search-input-file inputs "/bin/notify-send")))
+ (substitute* "alarm-clock.el"
+ (("\"mpg123\"") (string-append "\"" mpg123 "\""))
+ (("notify-send") notify-send))))))))
+ (inputs
+ (list libnotify mpg123))
+ (propagated-inputs
+ (list emacs-f))
+ (home-page "https://github.com/wlemuel/alarm-clock")
+ (synopsis "Alarm clock for Emacs")
+ (description "Alarm Clock provides an alarm clock for Emacs.")
+ (license license:gpl3+)))
+
(define-public emacs-anaphora
(package
(name "emacs-anaphora")
@@ -2922,14 +2957,14 @@ as a library for other Emacs packages.")
(define-public emacs-auctex
(package
(name "emacs-auctex")
- (version "13.1.3")
+ (version "13.1.4")
(source
(origin
(method url-fetch)
(uri (string-append "https://elpa.gnu.org/packages/"
"auctex-" version ".tar"))
(sha256
- (base32 "0v9rxwz6ngnwrgvzgdki861s136gq30lqhy2gcd9q0a36gb6zhwk"))))
+ (base32 "1r9qysnfdbiblq3c95rgsh7vgy3k4qabnj0vicqhdkca0cl2b2bj"))))
(build-system emacs-build-system)
;; We use 'emacs' because AUCTeX requires dbus at compile time
;; ('emacs-minimal' does not provide dbus).
@@ -6611,14 +6646,14 @@ user.")
(define-public emacs-subed
(package
(name "emacs-subed")
- (version "1.0.3")
+ (version "1.0.7")
(source (origin
(method url-fetch)
(uri (string-append "https://elpa.nongnu.org/nongnu/subed-"
version ".tar"))
(sha256
(base32
- "0wibakmp1lhfyr6sifb7f3jcqp2s5sy0z37ad9n1n9rhj5q8yhzg"))))
+ "0js48yar8xgj3wjmlkv3k5208q1zvv74sg4lhk6asiy4cq3pqjia"))))
(arguments
(list
#:tests? #t
@@ -9232,6 +9267,31 @@ replaced with the directory you choose.")
and present results either as single emails or full trees.")
(license license:gpl3+)))
+(define-public emacs-consult-org-roam
+ (let* ((commit "9572c5bc194a583dc9e86ea7d2751959d86b5c78")
+ (revision "0"))
+ (package
+ (name "emacs-consult-org-roam")
+ (version (git-version "0.1" revision commit))
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/jgru/consult-org-roam")
+ (commit commit)))
+ (sha256
+ (base32
+ "0c2hjd2gw77h77487fzdqfybg0ricsvlnwwfxai9baawz37bcn7q"))))
+ (build-system emacs-build-system)
+ (propagated-inputs (list emacs-consult emacs-org-roam))
+ (home-page "https://github.com/jgru/consult-org-roam")
+ (synopsis "Consult integration for Org Roam")
+ (description
+ "This is a set of functions to use Org Roam with Consult. This
+packages replaces Org Roam's own completing read functions with equivalent
+versions utilizing Consult's internal API.")
+ (license license:gpl3+))))
+
(define-public emacs-consult-eglot
(package
(name "emacs-consult-eglot")
@@ -10272,8 +10332,8 @@ state and will work even without lispy being enabled.")
(define-public emacs-lpy
;; There is no proper release/tag.
- (let ((commit "076ce9acb68f6ac1b39127b634a91ffd865d13d8")
- (revision "4"))
+ (let ((commit "ce78a4613458790cc785c1687af7eed8f0d8d66c")
+ (revision "5"))
(package
(name "emacs-lpy")
(version (git-version "0.1.0" revision commit))
@@ -10285,7 +10345,7 @@ state and will work even without lispy being enabled.")
(commit commit)))
(sha256
(base32
- "10sab50wmr3zn7jgzx93201ymhmacqacn3m2qllsqkfw2gpsi6dn"))
+ "1vxrjy6k030hcbclblgcaaw7h6k17kl3n9zla08527525c0gma01"))
(file-name (git-file-name name version))))
(propagated-inputs
(list emacs-zoutline emacs-lispy))
@@ -12148,7 +12208,7 @@ target will call @code{compile} on it.")
(define-public emacs-cider
(package
(name "emacs-cider")
- (version "1.4.1")
+ (version "1.5.0")
(source
(origin
(method git-fetch)
@@ -12157,11 +12217,19 @@ target will call @code{compile} on it.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
- (base32 "08635ln514nrglx6qyhaq1x7y7lw4mcd659ba8zs071yjiariarm"))))
+ (base32 "1ih902n8p3pl1apprprkyrlnrp2dxli86y5k09zahy9mglfz2z5n"))))
(build-system emacs-build-system)
(arguments
'(#:exclude ;don't exclude 'cider-test.el'
- '("^\\.dir-locals\\.el$" "^test/")))
+ '("^\\.dir-locals\\.el$" "^test/")
+ #:phases
+ ;; XXX: file "test/cider-tests.el" contains a bogus "/bin/command"
+ ;; string, and `patch-el-files' phase chokes on it (even though the
+ ;; file is excluded from installation). Remove the phase altogether
+ ;; since there is no "/bin/executable" to replace in the code base
+ ;; anyway.
+ (modify-phases %standard-phases
+ (delete 'patch-el-files))))
(propagated-inputs
(list emacs-clojure-mode
emacs-parseedn
@@ -13224,7 +13292,7 @@ programming and reproducible research.")
(define-public emacs-org-contrib
(package
(name "emacs-org-contrib")
- (version "0.3")
+ (version "0.4")
(source
(origin
(method git-fetch)
@@ -13233,16 +13301,7 @@ programming and reproducible research.")
(commit (string-append "release_" version))))
(file-name (git-file-name name version))
(sha256
- (base32 "17aca4mc3gbdh6nhlcaa5ymh1yy76nwysrvy9sfcqkzvd5lgagzc"))
- ;; XXX: ob-sclang.el is packaged separately to avoid the dependency on
- ;; SuperCollider and qtwebengine-5. This will be unnecessary in 0.4+
- ;; release as the file is going to be removed from the repository.
-
- ;; XXX: org-contacts.el is now maintained in a separate repository and
- ;; will soon be removed from org-contrib
- (modules '((guix build utils)))
- (snippet '(begin (delete-file "lisp/ob-sclang.el")
- (delete-file "lisp/org-contacts.el")))))
+ (base32 "06b1rpywj596nnnap6pj6fnmcq8fcc4i30zv7qsvs3ryxciw01fb"))))
(build-system emacs-build-system)
(arguments
`(#:phases
@@ -13253,8 +13312,7 @@ programming and reproducible research.")
(native-inputs
(list emacs-cider))
(propagated-inputs
- (list emacs-arduino-mode ;XXX: remove after 0.4+ release.
- emacs-org))
+ (list emacs-org))
(home-page "https://git.sr.ht/~bzg/org-contrib")
(synopsis "Unmaintained add-ons for Org mode")
(description
@@ -13858,6 +13916,27 @@ files in Emacs. Files of this type (e.g., @file{BUILD.gn} or @file{*.gni})
are common in Chromium-derived projects.")
(license license:bsd-3)))
+(define-public emacs-drag-stuff
+ (package
+ (name "emacs-drag-stuff")
+ (version "0.3.0")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/rejeep/drag-stuff")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "1jrr59iazih3imkl9ja1lbni9v3xv6b8gmqs015g2mxhlql35jka"))))
+ (build-system emacs-build-system)
+ (home-page "https://github.com/rejeep/drag-stuff")
+ (synopsis "Drag stuff around in Emacs")
+ (description
+"Drag Stuff is a minor mode for Emacs that makes it possible to drag
+stuff (words, region, lines) around in Emacs.")
+ (license license:gpl3+)))
+
(define-public emacs-bazel
;; From 2021-11-21.
;; No releases available.
@@ -16844,7 +16923,7 @@ groups.")
(define-public emacs-taxy-magit-section
(package
(name "emacs-taxy-magit-section")
- (version "0.9.1")
+ (version "0.10")
(source (origin
(method url-fetch)
(uri (string-append
@@ -16852,7 +16931,7 @@ groups.")
".tar"))
(sha256
(base32
- "0ybkz5nqjdrg2z9bfd07xg4k49hrl26vsrwz2vqpfbsqqg5vr4pr"))))
+ "1g58nvpb04ldhn5qnjw2q5idrv6vhlfa0qmb46cvis6bkz46cxkw"))))
(build-system emacs-build-system)
(propagated-inputs (list emacs-magit emacs-taxy))
(home-page "https://github.com/alphapapa/taxy.el")
@@ -24370,37 +24449,27 @@ other frame parameters.")
(license license:gpl3+)))
(define-public emacs-arduino-mode
- (let ((commit "23ae47c9f28f559e70b790b471f20310e163a39b")
- (revision "1")) ;no release yet
+ (let ((commit "652c6a328fa8f2db06534d5f231c6b6933be3edc")
+ (revision "0"))
(package
(name "emacs-arduino-mode")
- (version (git-version "0" revision commit))
+ (version (git-version "1.3.0" revision commit))
(source
(origin
(method git-fetch)
(uri (git-reference
- (url "https://github.com/stardiviner/arduino-mode")
+ (url "https://repo.or.cz/arduino-mode")
(commit commit)))
(sha256
- (base32 "08vnbz9gpah1l93fzfd87aawrhcnh2v1kyfxgsn88pdwg8awz8rx"))
+ (base32 "16izwrk1dfsa14kylfhsxdwkx76g0jdk0znl1z7cypxh5q9ijy1x"))
(file-name (git-file-name name version))))
(build-system emacs-build-system)
- (arguments
- `(#:phases
- (modify-phases %standard-phases
- ;; Emacs complains that "defmethod" and "defgeneric" are obsolete
- ;; macros when compiling. Substitute them with the recommended
- ;; macros "cl-defmethod" and "cl-defgeneric", respectively.
- (add-after 'unpack 'fix-obsolete
- (lambda _
- (substitute* "ede-arduino.el"
- (("defmethod") "cl-defmethod")
- (("defgeneric") "cl-defgeneric")))))))
(inputs
(list emacs-flycheck emacs-spinner))
(synopsis "Emacs major mode for editing Arduino sketches")
- (description "Emacs major mode for editing Arduino sketches.")
- (home-page "https://github.com/stardiviner/arduino-mode")
+ (description "This package provides an Emacs major mode for editing
+Arduino sketches and Org Babel support.")
+ (home-page "https://repo.or.cz/arduino-mode")
(license license:gpl3+))))
(define-public emacs-annalist
@@ -30311,6 +30380,28 @@ conversion program}, a Japanese input method on Emacs.")
conversion program}, a Japanese input method on Emacs. This package adds
support for the Nicola keyboard layout to it.")))
+(define-public emacs-tamil99
+ (package
+ (name "emacs-tamil99")
+ (version "0.1.1")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://git.systemreboot.net/tamil99/")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "0f9s3b6fd42j21922qkxfr3j83a7qym73nynph86w87vkis40zqw"))))
+ (build-system emacs-build-system)
+ (home-page "https://git.systemreboot.net/tamil99/about/")
+ (synopsis "Tamil99 input method for Emacs")
+ (description "This package implements the @code{tamil99} input method for
+Emacs. Tamil99 is a keyboard layout and input method that is specifically
+designed for the Tamil language. Vowels and vowel modifiers are input with
+your left hand, and consonants are input with your right hand.")
+ (license license:gpl3+)))
+
(define-public emacs-objed
(package
(name "emacs-objed")
@@ -31020,7 +31111,7 @@ web development.")
(define-public emacs-iter2
(package
(name "emacs-iter2")
- (version "1.2")
+ (version "1.3")
(source
(origin
(method git-fetch)
@@ -31029,7 +31120,7 @@ web development.")
(commit version)))
(file-name (git-file-name name version))
(sha256
- (base32 "1jzd9kzxf3ncw40d55r1apw0cpk4i1a3s5p85mg9n20553cb6lhj"))))
+ (base32 "1hsg5q1acghb0xz2pv5g20zg5j32wikp47b62if8afq767rkc5f3"))))
(build-system emacs-build-system)
(home-page "https://github.com/doublep/iter2")
(synopsis "Reimplementation of Elisp generators")
diff --git a/gnu/packages/game-development.scm b/gnu/packages/game-development.scm
index 661e1c0e07..b3a54798d4 100644
--- a/gnu/packages/game-development.scm
+++ b/gnu/packages/game-development.scm
@@ -63,6 +63,7 @@
#:use-module (gnu packages base)
#:use-module (gnu packages bash)
#:use-module (gnu packages boost)
+ #:use-module (gnu packages build-tools)
#:use-module (gnu packages compression)
#:use-module (gnu packages check)
#:use-module (gnu packages curl)
diff --git a/gnu/packages/geo.scm b/gnu/packages/geo.scm
index 66c97d3d6a..83bb4d9cb0 100644
--- a/gnu/packages/geo.scm
+++ b/gnu/packages/geo.scm
@@ -253,7 +253,7 @@ topology functions.")
(define-public gnome-maps
(package
(name "gnome-maps")
- (version "41.2")
+ (version "42.2")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnome/sources/" name "/"
@@ -261,7 +261,7 @@ topology functions.")
name "-" version ".tar.xz"))
(sha256
(base32
- "037xmkmcmcw87vb1c1s3y225m8757k331cvk1m8cshf6mx61p0l1"))))
+ "1cb9s2zz1zib3f33c035lmgshpl679isbzdd3alrx4yclw61nvay"))))
(build-system meson-build-system)
(arguments
`(#:glib-or-gtk? #t
@@ -318,7 +318,7 @@ topology functions.")
("libhandy" ,libhandy)
("libsecret" ,libsecret)
("libsoup" ,libsoup-minimal-2)
- ("libgweather" ,libgweather)
+ ("libgweather" ,libgweather4)
("libxml2" ,libxml2)
("librsvg" ,librsvg)
("glib-networking" ,glib-networking)
diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm
index 44effe2b2b..fe20a9fa20 100644
--- a/gnu/packages/gnome.scm
+++ b/gnu/packages/gnome.scm
@@ -5538,27 +5538,24 @@ service via the system message bus.")
"1rkf4yv43qcahyx7bismdv6z2vh5azdnm1fqfmnzrada9cm8ykna"))))
(build-system meson-build-system)
(arguments
- `(#:tests? #f ; one of two tests requires network access
- #:configure-flags
- `(,(string-append "-Dzoneinfo_dir="
- (assoc-ref %build-inputs "tzdata")
- "/share/zoneinfo"))))
+ (list
+ #:tests? #f ;one of two tests requires network access
+ #:configure-flags
+ #~(list (string-append "-Dzoneinfo_dir="
+ (search-input-directory %build-inputs
+ "share/zoneinfo")))))
(native-inputs
- `(("glib:bin" ,glib "bin") ; for glib-mkenums
- ("gobject-introspection" ,gobject-introspection)
- ("pkg-config" ,pkg-config)
- ("python" ,python)
- ("vala" ,vala)
- ("intltool" ,intltool)
- ("python-pygobject" ,python-pygobject)))
+ (list gettext-minimal
+ `(,glib "bin") ;for glib-mkenums
+ gobject-introspection
+ pkg-config
+ python
+ vala
+ python-pygobject))
(propagated-inputs
;; gweather-3.0.pc refers to GTK+, GDK-Pixbuf, GLib/GObject, libxml, and
;; libsoup.
- `(("gtk+" ,gtk+)
- ("gdk-pixbuf" ,gdk-pixbuf)
- ("libxml2" ,libxml2)
- ("libsoup" ,libsoup-minimal-2)
- ("geocode-glib" ,geocode-glib)))
+ (list gtk+ gdk-pixbuf libxml2 libsoup-minimal-2 geocode-glib))
(inputs
(list tzdata))
(home-page "https://wiki.gnome.org/action/show/Projects/LibGWeather")
@@ -5568,6 +5565,55 @@ service via the system message bus.")
services for numerous locations.")
(license license:gpl2+)))
+;; libgweather no longer follows the GNOME version, and recommends changing
+;; the package name in distributions to avoid accidental downgrades. See
+;; <https://discourse.gnome.org/t/changes-in-libgweather-for-gnome-42/7770/2>.
+;; TODO: how to prevent the updater from picking version 40?
+(define-public libgweather4
+ (package
+ (inherit libgweather)
+ (name "libgweather4")
+ (version "4.0.0")
+ (source (origin
+ (method url-fetch)
+ (uri (string-append "mirror://gnome/sources/libgweather/"
+ (version-major+minor version) "/"
+ "libgweather-" version ".tar.xz"))
+ (sha256
+ (base32
+ "0k43mr7vmcg14lkwjk6p9wwy3zlw23wkfpkfcy6b8wkg3f0483a4"))))
+ (arguments
+ (list
+ ;; FIXME: multiple tests fails as such:
+ ;; "GLib-GIO-FATAL-ERROR: Settings schema 'org.gnome.system.proxy'
+ ;; is not installed"
+ #:tests? #f
+ #:configure-flags
+ #~(list (string-append "-Dzoneinfo_dir="
+ (search-input-directory %build-inputs
+ "share/zoneinfo"))
+ ;; TODO: Requires 'gi-docgen'.
+ "-Dgtk_doc=false")
+ #:phases
+ #~(modify-phases %standard-phases
+ (add-before 'check 'pre-check
+ (lambda _
+ (setenv "HOME" "/tmp"))))))
+ (native-inputs
+ (list gettext-minimal
+ `(,glib "bin") ;for glib-mkenums
+ gobject-introspection
+ pkg-config
+ python
+ vala
+ python-pygobject))
+ ;; TODO: It would be good to make the package respect TZDIR instead
+ ;; of using a "hard coded" version of tzdata.
+ (inputs (list tzdata))
+ (propagated-inputs
+ ;; gweather4.pc refers to all of these.
+ (list glib libxml2 libsoup-minimal-2 geocode-glib))))
+
(define-public gnome-settings-daemon
(package
(name "gnome-settings-daemon")
@@ -8671,6 +8717,7 @@ properties, screen resolution, and other GNOME parameters.")
(uri (string-append "mirror://gnome/sources/" name "/"
(version-major version) "/"
name "-" version ".tar.xz"))
+ (patches (search-patches "gnome-shell-polkit-autocleanup.patch"))
(sha256
(base32
"0ragmcln210zvzhc2br33yprbkj9drjzd7inp5sdxra0a7l73yaj"))))
diff --git a/gnu/packages/gps.scm b/gnu/packages/gps.scm
index e528807de7..91e0ee12ac 100644
--- a/gnu/packages/gps.scm
+++ b/gnu/packages/gps.scm
@@ -34,6 +34,7 @@
#:use-module (gnu packages)
#:use-module (gnu packages algebra)
#:use-module (gnu packages base)
+ #:use-module (gnu packages build-tools)
#:use-module (gnu packages compression)
#:use-module (gnu packages docbook)
#:use-module (gnu packages glib)
diff --git a/gnu/packages/gtk.scm b/gnu/packages/gtk.scm
index 5eda60aa30..c3ef7085a5 100644
--- a/gnu/packages/gtk.scm
+++ b/gnu/packages/gtk.scm
@@ -69,7 +69,6 @@
#:use-module (gnu packages base)
#:use-module (gnu packages bash)
#:use-module (gnu packages boost)
- #:use-module (gnu packages build-tools)
#:use-module (gnu packages texinfo)
#:use-module (gnu packages check)
#:use-module (gnu packages compression)
diff --git a/gnu/packages/image.scm b/gnu/packages/image.scm
index 752b7f80ca..557a89aa6b 100644
--- a/gnu/packages/image.scm
+++ b/gnu/packages/image.scm
@@ -58,6 +58,7 @@
#:use-module (gnu packages base)
#:use-module (gnu packages bash)
#:use-module (gnu packages boost)
+ #:use-module (gnu packages build-tools)
#:use-module (gnu packages check)
#:use-module (gnu packages cmake)
#:use-module (gnu packages cpp)
diff --git a/gnu/packages/installers.scm b/gnu/packages/installers.scm
index 30cd0e4e6c..79738598cb 100644
--- a/gnu/packages/installers.scm
+++ b/gnu/packages/installers.scm
@@ -19,9 +19,9 @@
(define-module (gnu packages installers)
#:use-module ((guix licenses) #:prefix license:)
#:use-module (gnu packages)
+ #:use-module (gnu packages build-tools)
#:use-module (gnu packages compression)
#:use-module (gnu packages cross-base)
- #:use-module (gnu packages python-xyz)
#:use-module (guix packages)
#:use-module (guix download)
#:use-module (guix build-system scons)
diff --git a/gnu/packages/libffi.scm b/gnu/packages/libffi.scm
index f09a43db37..6d16e6a03b 100644
--- a/gnu/packages/libffi.scm
+++ b/gnu/packages/libffi.scm
@@ -171,28 +171,22 @@ project.")
(define-public ruby-ffi
(package
(name "ruby-ffi")
- (version "1.12.2")
+ (version "1.15.5")
(source (origin
;; Pull from git because the RubyGems release bundles LibFFI,
;; and comes with a gemspec that makes it difficult to unbundle.
(method git-fetch)
(uri (git-reference
(url "https://github.com/ffi/ffi")
- (commit version)))
+ (commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
- "1cvqsbjr2gfjgqggq9kdx90qhhzr7qkyr9wmxdsfsik6cnxnnpmd"))))
+ "1qk55s1zwpdjykwkj9l37m71i5n228i7f8bg3ply3ks9py16m7s6"))))
(build-system ruby-build-system)
(arguments
`(#:phases
(modify-phases %standard-phases
- (add-after 'unpack 'do-not-depend-on-ccache
- (lambda _
- (substitute* "spec/ffi/fixtures/GNUmakefile"
- (("^CCACHE := .*")
- ""))
- #t))
(replace 'replace-git-ls-files
(lambda _
;; Do not try to execute git, or include the (un)bundled LibFFI.
@@ -202,9 +196,10 @@ project.")
(("lfs \\+?= .*")
"lfs = []\n"))
(substitute* "Rakefile"
+ (("git .*ls-files -z")
+ "find * -type f -print0 | sort -z")
(("LIBFFI_GIT_FILES = .*")
- "LIBFFI_GIT_FILES = []\n"))
- #t))
+ "LIBFFI_GIT_FILES = []\n"))))
(replace 'build
(lambda _
;; Tests depend on the native extensions, so we build it
@@ -223,8 +218,7 @@ project.")
(setenv "MAKE" "make")
(setenv "CC" "gcc")
(invoke "rspec" "spec"))
- (format #t "test suite not run~%"))
- #t)))))
+ (format #t "test suite not run~%")))))))
(native-inputs
(list ruby-rake-compiler ruby-rspec ruby-rubygems-tasks))
(inputs
diff --git a/gnu/packages/patches/gnome-shell-polkit-autocleanup.patch b/gnu/packages/patches/gnome-shell-polkit-autocleanup.patch
new file mode 100644
index 0000000000..08968b83a1
--- /dev/null
+++ b/gnu/packages/patches/gnome-shell-polkit-autocleanup.patch
@@ -0,0 +1,50 @@
+Don't redefine G_DEFINE_AUTOPTR_CLEANUP_FUNC when available in polkit.
+
+Taken from upstream:
+
+ https://gitlab.gnome.org/GNOME/gnome-shell/-/commit/1d0a08b5e25fea7b0e792ec9798e68a7c5606a75
+
+diff --git a/config.h.meson b/config.h.meson
+index b93fda8727..ff355d3062 100644
+--- a/config.h.meson
++++ b/config.h.meson
+@@ -33,3 +33,6 @@
+
+ /* Define if fdwalk is available in libc */
+ #mesondefine HAVE_FDWALK
++
++/* Define if polkit defines autocleanup functions */
++#mesondefine HAVE_POLKIT_AUTOCLEANUP
+diff --git a/meson.build b/meson.build
+index 42ec01c566..778a34c6ef 100644
+--- a/meson.build
++++ b/meson.build
+@@ -169,6 +169,13 @@ cdata.set('HAVE_FDWALK',
+ cc.has_function('fdwalk')
+ )
+
++polkit_has_autocleanup = cc.compiles(
++ '#define POLKIT_AGENT_I_KNOW_API_IS_SUBJECT_TO_CHANGE
++ #include <polkitagent/polkitagent.h>
++ void main(void) { g_autoptr(PolkitAgentListener) agent = NULL; }',
++ dependencies: polkit_dep)
++cdata.set('HAVE_POLKIT_AUTOCLEANUP', polkit_has_autocleanup)
++
+ buildtype = get_option('buildtype')
+ if buildtype != 'plain'
+ all_warnings = [
+diff --git a/src/shell-polkit-authentication-agent.h b/src/shell-polkit-authentication-agent.h
+index 55b46af110..4f14749563 100644
+--- a/src/shell-polkit-authentication-agent.h
++++ b/src/shell-polkit-authentication-agent.h
+@@ -14,8 +14,10 @@
+
+ G_BEGIN_DECLS
+
++#ifndef HAVE_POLKIT_AUTOCLEANUP
+ /* Polkit doesn't have g_autoptr support, thus we have to manually set the autoptr function here */
+ G_DEFINE_AUTOPTR_CLEANUP_FUNC (PolkitAgentListener, g_object_unref)
++#endif
+
+ #define SHELL_TYPE_POLKIT_AUTHENTICATION_AGENT (shell_polkit_authentication_agent_get_type())
+
diff --git a/gnu/packages/patches/scons-test-environment.patch b/gnu/packages/patches/scons-test-environment.patch
new file mode 100644
index 0000000000..be5b61b2d4
--- /dev/null
+++ b/gnu/packages/patches/scons-test-environment.patch
@@ -0,0 +1,57 @@
+Inherit essential environment variables in tests.
+
+Note: it could be better to generalize this in SCons/Platform/posix.py
+instead of just patching the tests.
+
+diff --git a/SCons/ActionTests.py b/SCons/ActionTests.py
+--- a/SCons/ActionTests.py
++++ b/SCons/ActionTests.py
+@@ -98,6 +98,7 @@ outfile2 = test.workpath('outfile2')
+ pipe_file = test.workpath('pipe.out')
+
+ scons_env = SCons.Environment.Environment()
++scons_env['ENV']['PATH'] += os.environ['PATH']
+
+ # Capture all the stuff the Actions will print,
+ # so it doesn't clutter the output.
+@@ -1090,6 +1091,8 @@ class CommandActionTestCase(unittest.TestCase):
+ except AttributeError:
+ env = Environment()
+
++ env = Environment(ENV={'PATH': os.environ['PATH']})
++
+ cmd1 = r'%s %s %s xyzzy' % (_python_, act_py, outfile)
+
+ act = SCons.Action.CommandAction(cmd1)
+@@ -1884,7 +1887,7 @@ class ListActionTestCase(unittest.TestCase):
+ f.write("class2b\n")
+
+ act = SCons.Action.ListAction([cmd2, function2, class2a(), class2b])
+- r = act([], [], Environment(out=outfile))
++ r = act([], [], Environment(out=outfile, ENV={'PATH' : os.getenv('PATH')}))
+ assert isinstance(r.status, class2b), r.status
+ c = test.read(outfile, 'r')
+ assert c == "act.py: 'syzygy'\nfunction2\nclass2a\nclass2b\n", c
+@@ -1948,7 +1951,7 @@ class LazyActionTestCase(unittest.TestCase):
+ a([], [], env=Environment(BAR=f, s=self))
+ assert self.test == 1, self.test
+ cmd = r'%s %s %s lazy' % (_python_, act_py, outfile)
+- a([], [], env=Environment(BAR=cmd, s=self))
++ a([], [], env=Environment(BAR=cmd, s=self, ENV={'PATH' : os.getenv('PATH')}))
+ c = test.read(outfile, 'r')
+ assert c == "act.py: 'lazy'\n", c
+
+diff --git a/SCons/SConfTests.py b/SCons/SConfTests.py
+--- a/SCons/SConfTests.py
++++ b/SCons/SConfTests.py
+@@ -71,7 +71,9 @@ class SConfTestCase(unittest.TestCase):
+ # and we need a new environment, cause references may point to
+ # old modules (well, at least this is safe ...)
+ self.scons_env = self.Environment.Environment()
+- self.scons_env.AppendENVPath('PATH', os.environ['PATH'])
++ # Inherit the OS environment to get essential variables.
++ inherited_env = os.environ.copy()
++ self.scons_env['ENV'] = inherited_env
+
+ # we want to do some autodetection here
+ # this stuff works with
diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index ca7b1074b1..73d2954d23 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -3047,51 +3047,6 @@ user configuration files. It does not have support for serializing into YAML
and is not compatible with JSON.")
(license license:expat)))
-(define-public scons
- (package
- (name "scons")
- (version "3.0.4")
- (source (origin
- (method git-fetch)
- (uri (git-reference
- (url "https://github.com/SCons/scons")
- (commit version)))
- (file-name (git-file-name name version))
- (sha256
- (base32
- "1xy8jrwz87y589ihcld4hv7wn122sjbz914xn8h50ww77wbhk8hn"))))
- (build-system python-build-system)
- (arguments
- `(#:use-setuptools? #f ; still relies on distutils
- #:tests? #f ; no 'python setup.py test' command
- #:phases
- (modify-phases %standard-phases
- (add-before 'build 'bootstrap
- (lambda _
- (substitute* "src/engine/SCons/compat/__init__.py"
- (("sys.modules\\[new\\] = imp.load_module\\(old, \\*imp.find_module\\(old\\)\\)")
- "sys.modules[new] = __import__(old)"))
- (substitute* "src/engine/SCons/Platform/__init__.py"
- (("mod = imp.load_module\\(full_name, file, path, desc\\)")
- "mod = __import__(full_name)"))
- (invoke "python" "bootstrap.py" "build/scons" "DEVELOPER=guix")
- (chdir "build/scons")
- #t)))))
- (home-page "https://scons.org/")
- (synopsis "Software construction tool written in Python")
- (description
- "SCons is a software construction tool. Think of SCons as an improved,
-cross-platform substitute for the classic Make utility with integrated
-functionality similar to autoconf/automake and compiler caches such as ccache.
-In short, SCons is an easier, more reliable and faster way to build
-software.")
- (license license:x11)))
-
-(define-public scons-python2
- (package
- (inherit (package-with-python2 scons))
- (name "scons-python2")))
-
(define-public python-exceptiongroup
(package
(name "python-exceptiongroup")
diff --git a/gnu/packages/qt.scm b/gnu/packages/qt.scm
index cc41338b74..5a1d3f22c8 100644
--- a/gnu/packages/qt.scm
+++ b/gnu/packages/qt.scm
@@ -2831,7 +2831,7 @@ linux/libcurl_wrapper.h"
(file-type 'regular)
(separator #f)
(variable "QTWEBENGINEPROCESS_PATH")
- (files '("lib/qt5/libexec/QtWebEngineProcess")))))
+ (files '("lib/qt6/libexec/QtWebEngineProcess")))))
(home-page "https://wiki.qt.io/QtWebEngine")
(synopsis "Qt WebEngine module")
(description "The Qt WebEngine module provides support for web
diff --git a/gnu/packages/samba.scm b/gnu/packages/samba.scm
index f6ead57cc1..360c06d216 100644
--- a/gnu/packages/samba.scm
+++ b/gnu/packages/samba.scm
@@ -12,6 +12,7 @@
;;; Copyright © 2020, 2022 Maxim Cournoyer <maxim.cournoyer@gmail.com>
;;; Copyright © 2022 Jean-Pierre De Jesus DIAZ <me@jeandudey.tech>
;;; Copyright © 2022 Guillaume Le Vaillant <glv@posteo.net>
+;;; Copyright © 2022 Maxime Devos <maximedevos@telenet.be>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -185,14 +186,16 @@ external dependencies.")
(define-public samba
(package
(name "samba")
- (version "4.16.2")
+ (version "4.16.4")
(source
+ ;; For updaters: the current PGP fingerprint is
+ ;; 81F5E2832BD2545A1897B713AA99442FB680B620.
(origin
(method url-fetch)
(uri (string-append "https://download.samba.org/pub/samba/stable/"
"samba-" version ".tar.gz"))
(sha256
- (base32 "1745gx36gyd7353a94w4lrgksbmms0502kj9gg63il9zbdns1dx0"))))
+ (base32 "0bvhqinxwpbwp4ayhd9q8ga0w89gnkl1m3nrwpj1fnhjzd4ghclm"))))
(build-system gnu-build-system)
(arguments
(list
diff --git a/gnu/packages/web.scm b/gnu/packages/web.scm
index 49afdbd54a..b687e4e3e7 100644
--- a/gnu/packages/web.scm
+++ b/gnu/packages/web.scm
@@ -107,6 +107,7 @@
#:use-module (gnu packages bison)
#:use-module (gnu packages bittorrent)
#:use-module (gnu packages boost)
+ #:use-module (gnu packages build-tools)
#:use-module (gnu packages check)
#:use-module (gnu packages compression)
#:use-module (gnu packages cpp)
@@ -1943,7 +1944,8 @@ from streaming URLs. It is a command-line wrapper for the libquvi library.")
;;("gss" ,gss)
zlib))
(arguments
- `(#:scons-flags (list (string-append "APR=" (assoc-ref %build-inputs "apr"))
+ `(#:scons ,scons-3 ;TODO: remove in the next rebuild cycle
+ #:scons-flags (list (string-append "APR=" (assoc-ref %build-inputs "apr"))
(string-append "APU=" (assoc-ref %build-inputs "apr-util"))
(string-append "OPENSSL=" (assoc-ref %build-inputs "openssl"))
;; (string-append "GSSAPI=" (assoc-ref %build-inputs "gss"))
diff --git a/gnu/packages/webkit.scm b/gnu/packages/webkit.scm
index d9e84b95a3..1af610b17f 100644
--- a/gnu/packages/webkit.scm
+++ b/gnu/packages/webkit.scm
@@ -7,6 +7,7 @@
;;; Copyright © 2018 Pierre Neidhardt <mail@ambrevar.xyz>
;;; Copyright © 2019 Marius Bakke <mbakke@fastmail.com>
;;; Copyright © 2021, 2022 Maxim Cournoyer <maxim.cournoyer@gmail.com>
+;;; Copyright © 2022 Efraim Flashner <efraim@flashner.co.il>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -123,7 +124,7 @@ the WPE-flavored port of WebKit.")
engine that uses Wayland for graphics output.")
(license license:bsd-2)))
-(define %webkit-version "2.36.4")
+(define %webkit-version "2.36.7")
(define-public webkitgtk
(package
@@ -134,7 +135,7 @@ engine that uses Wayland for graphics output.")
(uri (string-append "https://www.webkitgtk.org/releases/"
name "-" version ".tar.xz"))
(sha256
- (base32 "1a72w9md2xvb82rd2sk3c7pqrvr28rqa8i4yq5ldjyd4hlgvxgmn"))
+ (base32 "0hqpfgzbb7lzdih9aw86rmkljm8ynv8zw3b72z88211gngr0q9hc"))
(patches (search-patches
"webkitgtk-adjust-bubblewrap-paths.patch"))))
(build-system cmake-build-system)
@@ -302,7 +303,7 @@ propagated by default) such as @code{gst-plugins-good} and
(uri (string-append "https://wpewebkit.org/releases/"
name "-" version ".tar.xz"))
(sha256
- (base32 "08f0sz4d5bpgrgvkgby3fri3wk5474f66gvp3y39laflypnknyih"))))
+ (base32 "1jcm5fjzn1k9l87qwqgmvd5qriwpv3vgs632zc6asqn5zxr7sx7k"))))
(arguments
(substitute-keyword-arguments (package-arguments webkitgtk)
((#:configure-flags flags)
diff --git a/gnu/packages/wm.scm b/gnu/packages/wm.scm
index 7ea6840689..5084d194a6 100644
--- a/gnu/packages/wm.scm
+++ b/gnu/packages/wm.scm
@@ -579,7 +579,16 @@ subscribe to events.")
(assoc-ref inputs "pango") "/lib/libpango-1.0.so.0\")\n"))
(("^pangocairo = ffi.dlopen.*")
(string-append "pangocairo = ffi.dlopen(\""
- (assoc-ref inputs "pango") "/lib/libpangocairo-1.0.so.0\")\n"))))))))
+ (assoc-ref inputs "pango") "/lib/libpangocairo-1.0.so.0\")\n")))))
+ (add-after 'install 'install-xsession
+ (lambda* (#:key outputs #:allow-other-keys)
+ (let* ((out (assoc-ref outputs "out"))
+ (xsessions (string-append out "/share/xsessions"))
+ (qtile (string-append out "/bin/qtile start")))
+ (mkdir-p xsessions)
+ (copy-file "resources/qtile.desktop" (string-append xsessions "/qtile.desktop"))
+ (substitute* (string-append xsessions "/qtile.desktop")
+ (("qtile start") qtile))))))))
(inputs
(list glib pango pulseaudio))
(propagated-inputs
diff --git a/gnu/packages/xdisorg.scm b/gnu/packages/xdisorg.scm
index 8360708445..7be995a438 100644
--- a/gnu/packages/xdisorg.scm
+++ b/gnu/packages/xdisorg.scm
@@ -93,6 +93,7 @@
#:use-module (gnu packages base)
#:use-module (gnu packages bash)
#:use-module (gnu packages bison)
+ #:use-module (gnu packages build-tools)
#:use-module (gnu packages check)
#:use-module (gnu packages compression)
#:use-module (gnu packages documentation)
diff --git a/guix/build-system/scons.scm b/guix/build-system/scons.scm
index 74901b3478..e38213e8e0 100644
--- a/guix/build-system/scons.scm
+++ b/guix/build-system/scons.scm
@@ -45,8 +45,8 @@
(define (default-scons)
"Return the default SCons package."
;; Lazily resolve the binding to avoid a circular dependency.
- (let ((python (resolve-interface '(gnu packages python-xyz))))
- (module-ref python 'scons)))
+ (let ((build-tools (resolve-interface '(gnu packages build-tools))))
+ (module-ref build-tools 'scons)))
(define* (lower name
#:key source inputs native-inputs outputs system target