diff options
Diffstat (limited to 'gnu/packages')
26 files changed, 660 insertions, 848 deletions
diff --git a/gnu/packages/bdw-gc.scm b/gnu/packages/bdw-gc.scm index 2698d56da0..c812248e86 100644 --- a/gnu/packages/bdw-gc.scm +++ b/gnu/packages/bdw-gc.scm @@ -4,6 +4,7 @@ ;;; Copyright © 2016, 2018 Leo Famulari <leo@famulari.name> ;;; Copyright © 2017 Rene Saavedra <rennes@openmailbox.org> ;;; Copyright © 2019, 2020 Marius Bakke <mbakke@fastmail.com> +;;; Copyright © 2022 Efraim Flashner <efraim@flashner.co.il> ;;; ;;; This file is part of GNU Guix. ;;; @@ -124,7 +125,7 @@ C or C++ programs, though that is not its primary goal.") (define-public libatomic-ops (package (name "libatomic-ops") - (version "7.6.10") + (version "7.6.12") (source (origin (method url-fetch) (uri (string-append @@ -132,7 +133,7 @@ C or C++ programs, though that is not its primary goal.") version "/libatomic_ops-" version ".tar.gz")) (sha256 (base32 - "1bwry043f62pc4mgdd37zx3fif19qyrs8f5bw7qxlmkzh5hdyzjq")))) + "0glzah695wsf6c27hs5wwlw4mnq1vfivdshz1rb8pq7w4mp5dazh")))) (build-system gnu-build-system) (outputs '("out" "debug")) (synopsis "Accessing hardware atomic memory update operations") diff --git a/gnu/packages/calendar.scm b/gnu/packages/calendar.scm index 0267a6dcf7..715d158241 100644 --- a/gnu/packages/calendar.scm +++ b/gnu/packages/calendar.scm @@ -119,7 +119,7 @@ the <tz.h> library for handling time zones and leap seconds.") (define-public libical (package (name "libical") - (version "3.0.10") + (version "3.0.14") (source (origin (method url-fetch) (uri (string-append @@ -127,7 +127,7 @@ the <tz.h> library for handling time zones and leap seconds.") version "/libical-" version ".tar.gz")) (sha256 (base32 - "1d1nqcfilb4k8bc5x85fhnd26l1ski58wpk2nmds6mlxrzkb6czr")))) + "13ycghsi4iv8mnm0xv97bs0x6qvfhdxkw20n3yhcc7bg6n0bg122")))) (build-system cmake-build-system) (arguments '(#:tests? #f ; test suite appears broken @@ -143,8 +143,7 @@ the <tz.h> library for handling time zones and leap seconds.") (substitute* "doc/reference/libical-glib/libical-glib-docs.sgml.in" (("http://www.oasis-open.org/docbook/xml/4.3/") (string-append (assoc-ref inputs "docbook-xml") - "/xml/dtd/docbook/"))) - #t)) + "/xml/dtd/docbook/"))))) (add-before 'configure 'patch-paths (lambda* (#:key inputs #:allow-other-keys) ;; TODO: libical 3.1.0 supports using TZDIR instead of a hard-coded @@ -156,8 +155,7 @@ the <tz.h> library for handling time zones and leap seconds.") (string-append "\"" tzdata "/share/zoneinfo\"")) (("\\\"/usr/lib/zoneinfo\\\",") "") (("\\\"/etc/zoneinfo\\\",") "") - (("\\\"/usr/share/lib/zoneinfo\\\"") ""))) - #t))))) + (("\\\"/usr/share/lib/zoneinfo\\\"") "")))))))) (native-inputs (list docbook-xml-4.3 gobject-introspection diff --git a/gnu/packages/certs.scm b/gnu/packages/certs.scm index 53fb027563..b184a434d4 100644 --- a/gnu/packages/certs.scm +++ b/gnu/packages/certs.scm @@ -131,7 +131,7 @@ that was originally contributed to Debian.") ;; XXX We used to refer to the nss package here, but that eventually caused ;; module cycles. The below is a quick copy-paste job that must be kept in ;; sync manually. Surely there's a better way…? - (version "3.71") + (version "3.80") (source (origin (method url-fetch) (uri (let ((version-with-underscores @@ -142,7 +142,7 @@ that was originally contributed to Debian.") "nss-" version ".tar.gz"))) (sha256 (base32 - "0ly2l3dv6z5hlxs72h5x6796ni3x1bq60saavaf42ddgv4ax7b4r")) + "0sjbg248kfabv9av2jwkr28fqgj4zjm2nqh9nc16p6p2qz91zgy0")) ;; Create nss.pc and nss-config. (patches (search-patches "nss-3.56-pkgconfig.patch" "nss-getcwd-nonnull.patch" diff --git a/gnu/packages/databases.scm b/gnu/packages/databases.scm index 32c36fe337..43a62cf116 100644 --- a/gnu/packages/databases.scm +++ b/gnu/packages/databases.scm @@ -1250,39 +1250,13 @@ pictures, sounds, or video.") (package (inherit postgresql-14) (version "13.6") - (replacement postgresql-13/replacement) (source (origin (inherit (package-source postgresql-14)) (uri (string-append "https://ftp.postgresql.org/pub/source/v" version "/postgresql-" version ".tar.bz2")) (sha256 (base32 - "1z37ix80hb2bqa2smh1hbj9r507ypnl3pil43gkqznnlv6ipzz5s")) - (patches (search-patches "postgresql-riscv-spinlocks.patch")))))) - -;; The merge of commit ... -;; 781dd2de230e3 gnu: postgresql-13: Fix building on riscv64-linux. -;; ... in ... -;; 49b350fafc2c3 Merge branch 'master' into staging. -;; ... lost the inherited patch from postgresql-14, causing problems such as ... -;; 05fef7bfc6005 gnu: timescaledb: Adjust test preparation to PostgreSQL 13.6. -;; -;; While at it, remove the RISC-V spinlock patch, which has been upstreamed -;; in a different form (so the old patch still applies). -;; TODO: Remove in the next rebuild cycle. -(define postgresql-13/replacement - (package - (inherit postgresql-13) - (version "13.7") - (source - (origin - (inherit (package-source postgresql-13)) - (uri (string-append "https://ftp.postgresql.org/pub/source/v" - version "/postgresql-" version ".tar.bz2")) - (sha256 - (base32 - "16b3ljid7zd1v5l4l4pmwihx43wi8p9izidkjfii8dnqygs5p40v")) - (patches (search-patches "postgresql-disable-resolve_symlinks.patch")))))) + "1z37ix80hb2bqa2smh1hbj9r507ypnl3pil43gkqznnlv6ipzz5s")))))) (define-public postgresql-11 (package @@ -1295,9 +1269,7 @@ pictures, sounds, or video.") version "/postgresql-" version ".tar.bz2")) (sha256 (base32 - "1983a7y4y6zhbgh0qcdfkf99445j1zm5q1ncrbkrx555y08y3n9d")) - (patches (search-patches - "postgresql-disable-resolve_symlinks.patch")))) + "1983a7y4y6zhbgh0qcdfkf99445j1zm5q1ncrbkrx555y08y3n9d")))) (native-inputs (modify-inputs (package-native-inputs postgresql-13) (replace "docbook-xml" docbook-xml-4.2))))) diff --git a/gnu/packages/freedesktop.scm b/gnu/packages/freedesktop.scm index 4d06235771..e17cc51f02 100644 --- a/gnu/packages/freedesktop.scm +++ b/gnu/packages/freedesktop.scm @@ -483,14 +483,14 @@ freedesktop.org project.") ;; Updating this will rebuild over 700 packages through libinput-minimal. (package (name "libinput") - (version "1.19.2") + (version "1.19.4") (source (origin (method url-fetch) (uri (string-append "https://freedesktop.org/software/libinput/" "libinput-" version ".tar.xz")) (sha256 (base32 - "10xqk05mkvsyxfxpn3vwkwb7j22d38wlbg1l1k37f6pfyc59zhqg")))) + "0h5lz54rrl48bhi3vki6s08m6rn2h62rlf08dhgchdm9nmqaaczz")))) (build-system meson-build-system) (arguments `(#:configure-flags '("-Ddocumentation=false") diff --git a/gnu/packages/gl.scm b/gnu/packages/gl.scm index c740c087dd..66db679342 100644 --- a/gnu/packages/gl.scm +++ b/gnu/packages/gl.scm @@ -68,6 +68,7 @@ #:use-module (guix build-system waf) #:use-module ((guix licenses) #:prefix license:) #:use-module (guix packages) + #:use-module (guix gexp) #:use-module (guix utils) #:use-module (ice-9 match) #:use-module ((srfi srfi-1) #:hide (zip))) @@ -75,15 +76,22 @@ (define-public glu (package (name "glu") - (version "9.0.1") + (version "9.0.2") (source (origin - (method url-fetch) - (uri (string-append "ftp://ftp.freedesktop.org/pub/mesa/glu/glu-" - version ".tar.gz")) + (method git-fetch) + (uri (git-reference + (url "https://gitlab.freedesktop.org/mesa/glu") + (commit (string-append "glu-" version)))) + (file-name (git-file-name name version)) (sha256 (base32 - "1xqhk9bn10nbvffw3r4p4rjslwz1l7gaycc0x2pqkr2irp7q9x7n")))) + "1khxfidyglpx4yd8f3xvrj05ah823cz1ygcszhcaa4w7h9kd1lbr")))) (build-system gnu-build-system) + (native-inputs + (list pkg-config + autoconf + automake + libtool)) (propagated-inputs (list mesa)) ; according to glu.pc (home-page "http://www.opengl.org/archives/resources/faq/technical/glu.htm") @@ -104,16 +112,15 @@ as ASCII text.") (define-public freeglut (package (name "freeglut") - (version "3.2.1") + (version "3.2.2") (source (origin (method url-fetch) (uri (string-append - "mirror://sourceforge/freeglut/freeglut/" - version "/freeglut-" version ".tar.gz")) - (patches (search-patches "freeglut-gcc-compat.patch")) + "https://github.com/FreeGLUTProject/freeglut/releases" + "/download/v" version "/freeglut-" version ".tar.gz")) (sha256 (base32 - "0s6sk49q8ijgbsrrryb7dzqx2fa744jhx1wck5cz5jia2010w06l")))) + "0l3s57zw51fy3mn5qfdm4z775kfhflgxppanaxmskfzh5l44m565")))) (build-system cmake-build-system) (arguments '(#:tests? #f ;no test target @@ -249,14 +256,14 @@ also known as DXTn or DXTC) for Mesa.") (package (inherit libva) (name "libva-without-mesa") - (inputs `(,@(fold alist-delete (package-inputs libva) - '("mesa" "wayland")))) + (inputs (fold alist-delete (package-inputs libva) + '("mesa" "wayland"))) (arguments (strip-keyword-arguments '(#:make-flags) (substitute-keyword-arguments (package-arguments libva) ((#:configure-flags flags) - '(list "--disable-glx" "--disable-egl")))))))) + '(list "--disable-glx")))))))) (define-public mesa (package @@ -717,37 +724,31 @@ OpenGL graphics API.") (define-public libepoxy (package (name "libepoxy") - (version "1.5.5") + (version "1.5.10") + (home-page "https://github.com/anholt/libepoxy") (source (origin - (method url-fetch) - (uri (string-append - "https://github.com/anholt/libepoxy/releases/download/" - version "/libepoxy-" version ".tar.xz")) + (method git-fetch) + (uri (git-reference (url home-page) (commit version))) + (file-name (git-file-name name version)) (sha256 (base32 - "0mh5bdgqfd8m4wj6jlvn4ac94sgfa8r6ish75ciwrhdw47dn65i6")))) + "0jw02bzdwynyrwsn5rhcacv92h9xx928j3xp436f8gdnwlyb5641")))) (arguments - `(#:phases - (modify-phases %standard-phases - (delete 'bootstrap) - (add-before - 'configure 'patch-paths - (lambda* (#:key inputs #:allow-other-keys) - (let ((python (assoc-ref inputs "python")) - (mesa (assoc-ref inputs "mesa"))) - (substitute* "src/gen_dispatch.py" - (("/usr/bin/env python") python)) - (substitute* (find-files "." "\\.[ch]$") - (("libGL.so.1") (string-append mesa "/lib/libGL.so.1")) - (("libEGL.so.1") (string-append mesa "/lib/libEGL.so.1"))) - #t)))))) + (list + #:phases + #~(modify-phases %standard-phases + (add-before 'configure 'patch-paths + (lambda* (#:key inputs #:allow-other-keys) + (let ((mesa (dirname (search-input-file inputs "lib/libGL.so")))) + (substitute* (find-files "." "\\.[ch]$") + (("libGL.so.1") (string-append mesa "/libGL.so.1")) + (("libEGL.so.1") (string-append mesa "/libEGL.so.1"))))))))) (build-system meson-build-system) (native-inputs (list pkg-config python)) (propagated-inputs ;; epoxy.pc: 'Requires.private: gl egl' (list mesa)) - (home-page "https://github.com/anholt/libepoxy/") (synopsis "Library for handling OpenGL function pointer management") (description "A library for handling OpenGL function pointer management.") diff --git a/gnu/packages/gnuzilla.scm b/gnu/packages/gnuzilla.scm index 7d8c531de3..4579a3f8a6 100644 --- a/gnu/packages/gnuzilla.scm +++ b/gnu/packages/gnuzilla.scm @@ -126,10 +126,6 @@ "--enable-hardening" "--enable-optimize" "--enable-release" - ;; FIXME: rust-simd is disabled otherwise the build fails with - ;; "error: `[u32; 64]` is forbidden as the type of a const generic - ;; parameter". - "--disable-rust-simd" "--enable-readline" "--enable-shared-js" "--with-system-icu" @@ -224,8 +220,7 @@ (native-inputs (list autoconf-2.13 automake - ;; TODO(staging): Use the default LLVM in the next rebuild cycle. - llvm-9 ;for llvm-objdump + llvm ;for llvm-objdump perl pkg-config python-3 diff --git a/gnu/packages/image.scm b/gnu/packages/image.scm index d52d57b3b1..ea510142f8 100644 --- a/gnu/packages/image.scm +++ b/gnu/packages/image.scm @@ -1270,7 +1270,7 @@ language bindings to VIGRA.") (define-public libwebp (package (name "libwebp") - (version "1.2.0") + (version "1.2.2") (source (origin ;; No tarballs are provided for >0.6.1. @@ -1281,14 +1281,14 @@ language bindings to VIGRA.") (file-name (git-file-name name version)) (sha256 (base32 - "1rgblphsd56033w7lpkrzl7m5w0fi7wavxri1ayzlg8fhpmmqp4k")))) + "1khqkm5j9aiii9jfsbxzzyz3x33sifzcx537cyjyb3a2g2rl969k")))) (build-system gnu-build-system) (inputs - `(("freeglut" ,freeglut) - ("giflib" ,giflib) - ("libjpeg" ,libjpeg-turbo) - ("libpng" ,libpng) - ("libtiff" ,libtiff))) + (list freeglut + giflib + libjpeg-turbo + libpng + libtiff)) (native-inputs (list autoconf automake libtool)) (arguments @@ -1323,9 +1323,7 @@ channels.") (build-system gnu-build-system) (propagated-inputs ;; These are all in the 'Libs.private' field of libmng.pc. - `(("lcms" ,lcms) - ("libjpeg" ,libjpeg-turbo) - ("zlib" ,zlib))) + (list lcms libjpeg-turbo zlib)) (home-page "https://www.libmng.com/") (synopsis "Library for handling MNG files") (description diff --git a/gnu/packages/iso-codes.scm b/gnu/packages/iso-codes.scm index f8775c5eaa..95ab9ca44f 100644 --- a/gnu/packages/iso-codes.scm +++ b/gnu/packages/iso-codes.scm @@ -46,19 +46,8 @@ (base32 "1q6x9c5x4x0x4q11iygldsmxdyzhz1mb4n8im76glwsgqsqyjs80")))) (build-system gnu-build-system) - ;; TODO(staging): Unconditionally move inputs to native-inputs. (native-inputs - (if (%current-target-system) - `(("python" ,python-wrapper) - ("perl" ,perl) - ("gettext" ,gettext-minimal)) - '())) - (inputs - `(,@(if (%current-target-system) - '() - `(("gettext" ,gettext-minimal) - ("perl" ,perl) - ("python" ,python-wrapper))))) + (list gettext-minimal perl python-wrapper)) (synopsis "Various ISO standards") (description "This package provides lists of various ISO standards (e.g. country, diff --git a/gnu/packages/libffi.scm b/gnu/packages/libffi.scm index 701feeb773..f09a43db37 100644 --- a/gnu/packages/libffi.scm +++ b/gnu/packages/libffi.scm @@ -82,13 +82,13 @@ conversions for values passed between the two languages.") (define-public python-cffi (package (name "python-cffi") - (version "1.14.4") + (version "1.15.1") (source (origin (method url-fetch) (uri (pypi-uri "cffi" version)) (sha256 - (base32 "0v080s7vlrjz9z823x2yh36yc8drwpvvir6w8wfkkzd7k2z5qihs")))) + (base32 "1y9lr651svbzf1m03s4lqbnbv2byx8f6f0ml7hjm24vvlfwvy06l")))) (build-system python-build-system) (inputs (list libffi)) @@ -118,9 +118,8 @@ conversions for values passed between the two languages.") ;; using find_library or the like with their name fail when the ;; resolved .so object is a linker script rather than an ELF ;; binary (this is a limitation of the ctype library of Python). - (let* ((glibc (assoc-ref inputs "libc")) - (libm (string-append glibc "/lib/libm.so.6")) - (libc (string-append glibc "/lib/libc.so.6"))) + (let ((libm (search-input-file inputs "lib/libm.so.6")) + (libc (search-input-file inputs "lib/libc.so.6"))) (substitute* '("testing/cffi0/test_function.py" "testing/cffi0/test_parsing.py" "testing/cffi0/test_unicode_literals.py" @@ -140,18 +139,6 @@ conversions for values passed between the two languages.") (description "Foreign Function Interface for Python calling C code.") (license expat))) -;; TODO(staging): Merge with the above. -(define-public python-cffi-1.15 - (package - (inherit python-cffi) - (version "1.15.0") - (source - (origin - (method url-fetch) - (uri (pypi-uri "cffi" version)) - (sha256 - (base32 "0m3rz2pqfmyfagx0bhj2jlbr2h58j3wr3cyv1agxkhlnm1k0s3wj")))))) - (define-public python-cffi-documentation (package (name "python-cffi-documentation") diff --git a/gnu/packages/libunwind.scm b/gnu/packages/libunwind.scm index 9eaf26fca8..8b9f800711 100644 --- a/gnu/packages/libunwind.scm +++ b/gnu/packages/libunwind.scm @@ -2,6 +2,8 @@ ;;; Copyright © 2013, 2014 Ludovic Courtès <ludo@gnu.org> ;;; Copyright © 2015 Mark H Weaver <mhw@netris.org> ;;; Copyright © 2019 Tobias Geerinckx-Rice <me@tobias.gr> +;;; Copyright © 2022 Efraim Flashner <efraim@flashner.co.il> +;;; Copyright © 2022 Marius Bakke <marius@gnu.org> ;;; ;;; This file is part of GNU Guix. ;;; @@ -28,20 +30,20 @@ (define-public libunwind (package (name "libunwind") - (version "1.5.0") + (version "1.6.2") (source (origin (method url-fetch) (uri (string-append "mirror://savannah/libunwind/libunwind-" version ".tar.gz")) (sha256 (base32 - "05qhzcg1xag3l5m3c805np6k342gc0f3g087b7g16jidv59pccwh")))) + "0xj9g6a9q7v7zz6lymf3f6011synibgawi4wi384bywid5kfqsja")))) (build-system gnu-build-system) (arguments - ;; FIXME: As of glibc 2.25, we get 1 out of 34 test failures (2 are - ;; expected to fail). - ;; Report them upstream. - '(#:tests? #f)) + '(#:make-flags + ;; Two tests are failing with newer toolchains: + ;; https://github.com/libunwind/libunwind/issues/363 + '("XFAIL_TESTS=run-coredump-unwind run-coredump-unwind-mdi"))) (home-page "https://www.nongnu.org/libunwind") (synopsis "Determining the call chain of a program") (description diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm index c519e1d58c..3efbb1e2d0 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -5406,7 +5406,7 @@ Bluetooth audio output devices like headphones or loudspeakers.") (define-public bluez (package (name "bluez") - (version "5.61") + (version "5.64") (source (origin (method url-fetch) (uri (string-append @@ -5414,53 +5414,49 @@ Bluetooth audio output devices like headphones or loudspeakers.") version ".tar.xz")) (sha256 (base32 - "0fs2kjsdhylxniqhii63i85fjszbqbz3iddwmgz4nmbr472xdbw3")))) + "0d6yl7l5zrlx5w3y503k72m9xsydx6gi1c65icchq1xknrjpwhxf")))) (build-system gnu-build-system) (arguments - `(#:configure-flags - (let ((out (assoc-ref %outputs "out"))) - (list "--sysconfdir=/etc" - "--localstatedir=/var" - "--enable-library" - "--disable-systemd" - ;; TODO: is this needed? Not installed by default since 5.55. - "--enable-hid2hci" - ;; Install dbus/udev files to the correct location. - (string-append "--with-dbusconfdir=" out "/etc") - (string-append "--with-udevdir=" out "/lib/udev"))) - #:phases - (modify-phases %standard-phases - ;; Test unit/test-gatt fails unpredictably. Seems to be a timing - ;; issue (discussion on upstream mailing list: - ;; https://marc.info/?t=149578476300002&r=1&w=2) - (add-before 'check 'skip-wonky-test + (list + #:configure-flags + #~(list "--sysconfdir=/etc" + "--localstatedir=/var" + "--enable-library" + "--disable-systemd" + ;; TODO: is this needed? Not installed by default since 5.55. + "--enable-hid2hci" + ;; Install dbus/udev files to the correct location. + (string-append "--with-dbusconfdir=" #$output "/etc") + (string-append "--with-udevdir=" #$output "/lib/udev")) + #:phases + #~(modify-phases %standard-phases + ;; Test unit/test-gatt fails unpredictably. Seems to be a timing + ;; issue (discussion on upstream mailing list: + ;; https://marc.info/?t=149578476300002&r=1&w=2) + (add-before 'check 'skip-wonky-test (lambda _ (substitute* "unit/test-gatt.c" - (("tester_init\\(&argc, &argv\\);") "return 77;")) - #t)) - (add-after 'install 'post-install - (lambda* (#:key inputs outputs #:allow-other-keys) - (let* ((out (assoc-ref outputs "out")) - (servicedir (string-append out "/share/dbus-1/services")) - (service "obexd/src/org.bluez.obex.service") - (rule (string-append - out "/lib/udev/rules.d/97-hid2hci.rules"))) - ;; Install the obex dbus service file. - (substitute* service - (("/bin/false") - (string-append out "/libexec/bluetooth/obexd"))) - (install-file service servicedir) - ;; Fix paths in the udev rule. - (substitute* rule - (("hid2hci --method") - (string-append out "/lib/udev/hid2hci --method")) - (("/sbin/udevadm") - (search-input-file inputs "/bin/udevadm"))) - #t)))))) + (("tester_init\\(&argc, &argv\\);") "return 77;")))) + (add-after 'install 'post-install + (lambda* (#:key inputs outputs #:allow-other-keys) + (let* ((out #$output) + (servicedir (string-append out "/share/dbus-1/services")) + (service "obexd/src/org.bluez.obex.service") + (rule (string-append + out "/lib/udev/rules.d/97-hid2hci.rules"))) + ;; Install the obex dbus service file. + (substitute* service + (("/bin/false") + (string-append out "/libexec/bluetooth/obexd"))) + (install-file service servicedir) + ;; Fix paths in the udev rule. + (substitute* rule + (("hid2hci --method") + (string-append out "/lib/udev/hid2hci --method")) + (("/sbin/udevadm") + (search-input-file inputs "/bin/udevadm"))))))))) (native-inputs - `(("pkg-config" ,pkg-config) - ("rst2man" ,python-docutils) - ("gettext" ,gettext-minimal))) + (list pkg-config python-docutils gettext-minimal)) (inputs (list glib dbus eudev libical readline)) (home-page "http://www.bluez.org/") diff --git a/gnu/packages/nss.scm b/gnu/packages/nss.scm index 5e719ad5b8..23bd2cb2a7 100644 --- a/gnu/packages/nss.scm +++ b/gnu/packages/nss.scm @@ -40,52 +40,52 @@ (define-public nspr (package (name "nspr") - (version "4.31") + (version "4.34") (source (origin - (method url-fetch) - (uri (string-append - "https://ftp.mozilla.org/pub/mozilla.org/nspr/releases/v" - version "/src/nspr-" version ".tar.gz")) - (sha256 - (base32 - "1j5b2m8cjlhnnv8sq34587avaagkqvh521w4f95miwgvsn3xlaap")))) + (method url-fetch) + (uri (string-append + "https://ftp.mozilla.org/pub/mozilla.org/nspr/releases/v" + version "/src/nspr-" version ".tar.gz")) + (sha256 + (base32 + "177rxcf3lglabs7sgwcvf72ww4v56qa71lc495wl13sxs4f03vxy")))) (build-system gnu-build-system) (inputs - ;; For 'compile-et.pl' and 'nspr-config'. - (list perl ;for 'compile-et.pl' - bash-minimal)) ;for 'nspr-config' + (list perl ;for 'compile-et.pl' + bash-minimal)) ;for 'nspr-config' (native-inputs (list perl)) (arguments - `(;; Prevent the 'native' perl from sneaking into the closure. - ;; XXX it would be nice to do the same for 'bash-minimal', - ;; but using 'canonical-package' causes loops. - ,@(if (%current-target-system) - `(#:disallowed-references - (,(gexp-input (this-package-native-input "perl") #:native? #t))) - '()) - #:tests? #f ; no check target - #:configure-flags - (list "--disable-static" - "--enable-64bit" - (string-append "LDFLAGS=-Wl,-rpath=" - (assoc-ref %outputs "out") "/lib") - ;; Mozilla deviates from Autotools conventions - ;; due to historical reasons. Adjust to Mozilla conventions, - ;; otherwise the Makefile will try to use TARGET-gcc - ;; as a ‘native’ compiler. - ,@(if (%current-target-system) - `(,(string-append "--host=" - (nix-system->gnu-triplet (%current-system))) - ,(string-append "--target=" (%current-target-system))) - '())) - ;; Use fixed timestamps for reproducibility. - #:make-flags '("SH_DATE='1970-01-01 00:00:01'" - ;; This is epoch 1 in microseconds. - "SH_NOW=100000") - #:phases (modify-phases %standard-phases - (add-before 'configure 'chdir - (lambda _ (chdir "nspr") #t))))) + (list + ;; Prevent the 'native' perl from sneaking into the closure. + ;; XXX it would be nice to do the same for 'bash-minimal', + ;; but using 'canonical-package' causes loops. + #:disallowed-references + (if (%current-target-system) + (list (gexp-input (this-package-native-input "perl") #:native? #t)) + #f) + #:tests? #f ;no check target + #:configure-flags + #~(list "--disable-static" + "--enable-64bit" + (string-append "LDFLAGS=-Wl,-rpath=" + (assoc-ref %outputs "out") "/lib") + ;; Mozilla deviates from Autotools conventions + ;; due to historical reasons. Adjust to Mozilla conventions, + ;; otherwise the Makefile will try to use TARGET-gcc + ;; as a ‘native’ compiler. + #$@(if (%current-target-system) + #~((string-append "--host=" + #$(nix-system->gnu-triplet (%current-system))) + (string-append "--target=" #$(%current-target-system))) + #~())) + ;; Use fixed timestamps for reproducibility. + #:make-flags #~'("SH_DATE='1970-01-01 00:00:01'" + ;; This is epoch 1 in microseconds. + "SH_NOW=100000") + #:phases #~(modify-phases %standard-phases + (add-before 'configure 'chdir + (lambda _ (chdir "nspr") #t))))) (home-page "https://developer.mozilla.org/en-US/docs/Mozilla/Projects/NSPR") (synopsis "Netscape API for system level and libc-like functions") @@ -112,7 +112,7 @@ in the Mozilla clients.") (name "nss") ;; Also update and test the nss-certs package, which duplicates version and ;; source to avoid a top-level variable reference & module cycle. - (version "3.72") + (version "3.80") (source (origin (method url-fetch) (uri (let ((version-with-underscores @@ -123,7 +123,7 @@ in the Mozilla clients.") "nss-" version ".tar.gz"))) (sha256 (base32 - "0bnh683nij6s0gvjcgwhyw5d3yx9fpm42pxj5bm97r0ky6ghm9kf")) + "0sjbg248kfabv9av2jwkr28fqgj4zjm2nqh9nc16p6p2qz91zgy0")) ;; Create nss.pc and nss-config. (patches (search-patches "nss-3.56-pkgconfig.patch" "nss-getcwd-nonnull.patch" @@ -137,82 +137,84 @@ in the Mozilla clients.") (build-system gnu-build-system) (outputs '("out" "bin")) (arguments - `(#:make-flags - (let* ((out (assoc-ref %outputs "out")) - (nspr (string-append (assoc-ref %build-inputs "nspr"))) - (rpath (string-append "-Wl,-rpath=" out "/lib/nss"))) - (list "-C" "nss" (string-append "PREFIX=" out) - "NSDISTMODE=copy" - "NSS_USE_SYSTEM_SQLITE=1" - ;; The gtests fail to compile on riscv64. - ;; Skipping them doesn't affect the test suite. - ,@(if (target-riscv64?) - `("NSS_DISABLE_GTESTS=1") - '()) - (string-append "NSPR_INCLUDE_DIR=" nspr "/include/nspr") - ;; Add $out/lib/nss to RPATH. - (string-append "RPATH=" rpath) - (string-append "LDFLAGS=" rpath))) - #:modules ((guix build gnu-build-system) + (list + #:make-flags + #~(let ((rpath (string-append "-Wl,-rpath=" #$output "/lib/nss"))) + (list "-C" "nss" + (string-append "PREFIX=" #$output) + "NSDISTMODE=copy" + "NSS_USE_SYSTEM_SQLITE=1" + ;; The gtests fail to compile on riscv64. + ;; Skipping them doesn't affect the test suite. + #$@(if (target-riscv64?) + #~("NSS_DISABLE_GTESTS=1") + #~()) + (string-append "NSPR_INCLUDE_DIR=" + (search-input-directory %build-inputs + "include/nspr")) + ;; Add $out/lib/nss to RPATH. + (string-append "RPATH=" rpath) + (string-append "LDFLAGS=" rpath))) + #:modules '((guix build gnu-build-system) (guix build utils) (ice-9 ftw) (ice-9 match) (srfi srfi-26)) - #:tests? ,(not (or (%current-target-system) - ;; Tests take more than 30 hours on riscv64-linux. - (target-riscv64?))) - #:phases - (modify-phases %standard-phases - (replace 'configure - (lambda _ - (setenv "CC" ,(cc-for-target)) - ;; Tells NSS to build for the 64-bit ABI if we are 64-bit system. - ,@(if (target-64bit?) - `((setenv "USE_64" "1")) - '()))) - (replace 'check - (lambda* (#:key tests? #:allow-other-keys) - (if tests? - (begin - ;; Use 127.0.0.1 instead of $HOST.$DOMSUF as HOSTADDR for - ;; testing. The latter requires a working DNS or /etc/hosts. - (setenv "DOMSUF" "localdomain") - (setenv "USE_IP" "TRUE") - (setenv "IP_ADDRESS" "127.0.0.1") + #:tests? (not (or (%current-target-system) + ;; Tests take more than 30 hours on riscv64-linux. + (target-riscv64?))) + #:phases + #~(modify-phases %standard-phases + (replace 'configure + (lambda _ + (setenv "CC" #$(cc-for-target)) + ;; Tells NSS to build for the 64-bit ABI if we are 64-bit system. + #$@(if (target-64bit?) + #~((setenv "USE_64" "1")) + #~()))) + (replace 'check + (lambda* (#:key tests? #:allow-other-keys) + (if tests? + (begin + ;; Use 127.0.0.1 instead of $HOST.$DOMSUF as HOSTADDR for + ;; testing. The latter requires a working DNS or /etc/hosts. + (setenv "DOMSUF" "localdomain") + (setenv "USE_IP" "TRUE") + (setenv "IP_ADDRESS" "127.0.0.1") - ;; The "PayPalEE.cert" certificate expires every six months, - ;; leading to test failures: - ;; <https://bugzilla.mozilla.org/show_bug.cgi?id=609734>. To - ;; work around that, set the time to roughly the release date. - (invoke "faketime" "2021-09-30" "./nss/tests/all.sh")) - (format #t "test suite not run~%")))) - (replace 'install - (lambda* (#:key outputs #:allow-other-keys) - (let* ((out (assoc-ref outputs "out")) - (bin (string-append (assoc-ref outputs "bin") "/bin")) - (inc (string-append out "/include/nss")) - (lib (string-append out "/lib/nss")) - (obj (match (scandir "dist" (cut string-suffix? "OBJ" <>)) - ((obj) (string-append "dist/" obj))))) - ;; Install nss-config to $out/bin. - (install-file (string-append obj "/bin/nss-config") - (string-append out "/bin")) - (delete-file (string-append obj "/bin/nss-config")) - ;; Install nss.pc to $out/lib/pkgconfig. - (install-file (string-append obj "/lib/pkgconfig/nss.pc") - (string-append out "/lib/pkgconfig")) - (delete-file (string-append obj "/lib/pkgconfig/nss.pc")) - (rmdir (string-append obj "/lib/pkgconfig")) - ;; Install other files. - (copy-recursively "dist/public/nss" inc) - (copy-recursively (string-append obj "/bin") bin) - (copy-recursively (string-append obj "/lib") lib))))))) + ;; The "PayPalEE.cert" certificate expires every six months, + ;; leading to test failures: + ;; <https://bugzilla.mozilla.org/show_bug.cgi?id=609734>. To + ;; work around that, set the time to roughly the release date. + (invoke "faketime" "2022-06-01" "./nss/tests/all.sh")) + (format #t "test suite not run~%")))) + (replace 'install + (lambda* (#:key outputs #:allow-other-keys) + (let* ((out (assoc-ref outputs "out")) + (bin (string-append (assoc-ref outputs "bin") "/bin")) + (inc (string-append out "/include/nss")) + (lib (string-append out "/lib/nss")) + (obj (match (scandir "dist" (cut string-suffix? "OBJ" <>)) + ((obj) (string-append "dist/" obj))))) + ;; Install nss-config to $out/bin. + (install-file (string-append obj "/bin/nss-config") + (string-append out "/bin")) + (delete-file (string-append obj "/bin/nss-config")) + ;; Install nss.pc to $out/lib/pkgconfig. + (install-file (string-append obj "/lib/pkgconfig/nss.pc") + (string-append out "/lib/pkgconfig")) + (delete-file (string-append obj "/lib/pkgconfig/nss.pc")) + (rmdir (string-append obj "/lib/pkgconfig")) + ;; Install other files. + (copy-recursively "dist/public/nss" inc) + (copy-recursively (string-append obj "/bin") bin) + (copy-recursively (string-append obj "/lib") lib))))))) (inputs (list sqlite zlib)) (propagated-inputs - (list nspr)) ;required by nss.pc. + (list nspr)) ;required by nss.pc. (native-inputs - (list perl libfaketime)) ;for tests + (list perl libfaketime)) ;for tests ;; The NSS test suite takes around 48 hours on Loongson 3A (MIPS) when ;; another build is happening concurrently on the same machine. diff --git a/gnu/packages/patches/freeglut-gcc-compat.patch b/gnu/packages/patches/freeglut-gcc-compat.patch deleted file mode 100644 index 126bbd89f4..0000000000 --- a/gnu/packages/patches/freeglut-gcc-compat.patch +++ /dev/null @@ -1,53 +0,0 @@ -Fix build failure with GCC 10. - -Taken from upstream: -https://github.com/dcnieho/FreeGLUT/commit/b9998bbc1e1c329f6bf69c24606a2be7a4973b8c - -diff --git a/src/fg_gl2.c b/src/fg_gl2.c ---- a/src/fg_gl2.c -+++ b/src/fg_gl2.c -@@ -27,6 +27,20 @@ - #include "fg_internal.h" - #include "fg_gl2.h" - -+#ifndef GL_ES_VERSION_2_0 -+/* GLES2 has the corresponding entry points built-in, and these fgh-prefixed -+ * names are defined in fg_gl2.h header to reference them, for any other case, -+ * define them as function pointers here. -+ */ -+FGH_PFNGLGENBUFFERSPROC fghGenBuffers; -+FGH_PFNGLDELETEBUFFERSPROC fghDeleteBuffers; -+FGH_PFNGLBINDBUFFERPROC fghBindBuffer; -+FGH_PFNGLBUFFERDATAPROC fghBufferData; -+FGH_PFNGLENABLEVERTEXATTRIBARRAYPROC fghEnableVertexAttribArray; -+FGH_PFNGLDISABLEVERTEXATTRIBARRAYPROC fghDisableVertexAttribArray; -+FGH_PFNGLVERTEXATTRIBPOINTERPROC fghVertexAttribPointer; -+#endif -+ - void FGAPIENTRY glutSetVertexAttribCoord3(GLint attrib) { - if (fgStructure.CurrentWindow != NULL) - fgStructure.CurrentWindow->Window.attribute_v_coord = attrib; -diff --git a/src/fg_gl2.h b/src/fg_gl2.h ---- a/src/fg_gl2.h -+++ b/src/fg_gl2.h -@@ -67,13 +67,13 @@ typedef void (APIENTRY *FGH_PFNGLENABLEVERTEXATTRIBARRAYPROC) (GLuint index); - typedef void (APIENTRY *FGH_PFNGLDISABLEVERTEXATTRIBARRAYPROC) (GLuint); - typedef void (APIENTRY *FGH_PFNGLVERTEXATTRIBPOINTERPROC) (GLuint index, GLint size, GLenum type, GLboolean normalized, GLsizei stride, const GLvoid *pointer); - --FGH_PFNGLGENBUFFERSPROC fghGenBuffers; --FGH_PFNGLDELETEBUFFERSPROC fghDeleteBuffers; --FGH_PFNGLBINDBUFFERPROC fghBindBuffer; --FGH_PFNGLBUFFERDATAPROC fghBufferData; --FGH_PFNGLENABLEVERTEXATTRIBARRAYPROC fghEnableVertexAttribArray; --FGH_PFNGLDISABLEVERTEXATTRIBARRAYPROC fghDisableVertexAttribArray; --FGH_PFNGLVERTEXATTRIBPOINTERPROC fghVertexAttribPointer; -+extern FGH_PFNGLGENBUFFERSPROC fghGenBuffers; -+extern FGH_PFNGLDELETEBUFFERSPROC fghDeleteBuffers; -+extern FGH_PFNGLBINDBUFFERPROC fghBindBuffer; -+extern FGH_PFNGLBUFFERDATAPROC fghBufferData; -+extern FGH_PFNGLENABLEVERTEXATTRIBARRAYPROC fghEnableVertexAttribArray; -+extern FGH_PFNGLDISABLEVERTEXATTRIBARRAYPROC fghDisableVertexAttribArray; -+extern FGH_PFNGLVERTEXATTRIBPOINTERPROC fghVertexAttribPointer; - - # endif - diff --git a/gnu/packages/patches/mrustc-riscv64-support.patch b/gnu/packages/patches/mrustc-riscv64-support.patch new file mode 100644 index 0000000000..6312116585 --- /dev/null +++ b/gnu/packages/patches/mrustc-riscv64-support.patch @@ -0,0 +1,48 @@ +Patch sent upstream for review: +https://github.com/thepowersgang/mrustc/pull/276 + +diff --git a/src/trans/target.cpp b/src/trans/target.cpp +index 420a2870..4d5eefb3 100644 +--- a/src/trans/target.cpp ++++ b/src/trans/target.cpp +@@ -65,6 +65,13 @@ const TargetArch ARCH_POWERPC64LE = { + { /*atomic(u8)=*/true, true, true, true, true }, + TargetArch::Alignments(2, 4, 8, 16, 4, 8, 8) + }; ++// This is a guess ++const TargetArch ARCH_RISCV64 = { ++ "riscv64", ++ 64, false, ++ { /*atomic(u8)=*/true, true, true, true, true }, ++ TargetArch::Alignments(2, 4, 8, 16, 4, 8, 8) ++}; + TargetSpec g_target; + + +@@ -455,6 +462,13 @@ namespace + ARCH_POWERPC64LE + }; + } ++ else if(target_name == "riscv64-unknown-linux-gnu") ++ { ++ return TargetSpec { ++ "unix", "linux", "gnu", {CodegenMode::Gnu11, false, "riscv64-unknown-linux-gnu", BACKEND_C_OPTS_GNU}, ++ ARCH_RISCV64 ++ }; ++ } + else if(target_name == "i586-pc-windows-gnu") + { + return TargetSpec { +diff --git a/tools/common/target_detect.h b/tools/common/target_detect.h +index a052da6b..42fea91a 100644 +--- a/tools/common/target_detect.h ++++ b/tools/common/target_detect.h +@@ -34,6 +34,8 @@ + # define DEFAULT_TARGET_NAME "powerpc64-unknown-linux-gnu" + # elif defined(__powerpc64__) && defined(__LITTLE_ENDIAN__) + # define DEFAULT_TARGET_NAME "powerpc64le-unknown-linux-gnu" ++# elif defined(__riscv) && __riscv_xlen == 64 ++# define DEFAULT_TARGET_NAME "riscv64-unknown-linux-gnu" + # else + # warning "Unable to detect a suitable default target (linux-gnu)" + # endif diff --git a/gnu/packages/patches/postgresql-riscv-spinlocks.patch b/gnu/packages/patches/postgresql-riscv-spinlocks.patch deleted file mode 100644 index 984a573642..0000000000 --- a/gnu/packages/patches/postgresql-riscv-spinlocks.patch +++ /dev/null @@ -1,41 +0,0 @@ -https://www.postgresql.org/message-id/dea97b6d-f55f-1f6d-9109-504aa7dfa421@gentoo.org - -The attached patch adds native spinlock support to PostgreSQL on RISC-V -systems. As suspected by Richard W.M. Jones of Red Hat back in 2016, the -__sync_lock_test_and_set() approach applied on arm and arm64 works here -as well. - - -Tested against PostgreSQL 13.3 on a physical rv64gc system (BeagleV -Starlight beta board) - builds and installs fine, all tests pass. From -what I can see in gcc documentation this should in theory work on rv32 -(and possibly rv128) as well, therefore the patch as it stands covers -all RISC-V systems (i.e. doesn't check the value of __risc_xlen) - but I -haven't confirmed this experimentally. - ---- a/src/include/storage/s_lock.h -+++ b/src/include/storage/s_lock.h -@@ -315,12 +315,12 @@ - #endif /* __ia64__ || __ia64 */ - - /* -- * On ARM and ARM64, we use __sync_lock_test_and_set(int *, int) if available. -+ * On ARM, ARM64 and RISC-V, we use __sync_lock_test_and_set(int *, int) if available. - * - * We use the int-width variant of the builtin because it works on more chips - * than other widths. - */ --#if defined(__arm__) || defined(__arm) || defined(__aarch64__) || defined(__aarch64) -+#if defined(__arm__) || defined(__arm) || defined(__aarch64__) || defined(__aarch64) || defined(__riscv) - #ifdef HAVE_GCC__SYNC_INT32_TAS - #define HAS_TEST_AND_SET - -@@ -337,7 +337,7 @@ - #define S_UNLOCK(lock) __sync_lock_release(lock) - - #endif /* HAVE_GCC__SYNC_INT32_TAS */ --#endif /* __arm__ || __arm || __aarch64__ || __aarch64 */ -+#endif /* __arm__ || __arm || __aarch64__ || __aarch64 || __riscv */ - - - /* S/390 and S/390x Linux (32- and 64-bit zSeries) */ diff --git a/gnu/packages/patches/rustc-1.39.0-src.patch b/gnu/packages/patches/rustc-1.39.0-src.patch deleted file mode 100644 index 7859bd44d5..0000000000 --- a/gnu/packages/patches/rustc-1.39.0-src.patch +++ /dev/null @@ -1,99 +0,0 @@ -# This modified patch is to disable the hunk applying to LLVM, unbundled in Guix. - -# Add mrustc slice length intrinsics ---- src/libcore/intrinsics.rs -+++ src/libcore/intrinsics.rs -@@ -685,4 +685,8 @@ - pub fn min_align_of_val<T: ?Sized>(_: &T) -> usize; - -+ /// Obtain the length of a slice pointer -+ #[cfg(rust_compiler="mrustc")] -+ pub fn mrustc_slice_len<T>(pointer: *const [T]) -> usize; -+ - /// Gets a static string slice containing the name of a type. - pub fn type_name<T: ?Sized>() -> &'static str; - ---- src/libcore/slice/mod.rs -+++ src/libcore/slice/mod.rs -@@ -68,5 +68,8 @@ - pub const fn len(&self) -> usize { -- unsafe { -- crate::ptr::Repr { rust: self }.raw.len -- } -+ #[cfg(not(rust_compiler="mrustc"))] -+ #[cfg_attr(not(bootstrap), allow_internal_unstable(const_fn_union))] -+ const fn len_inner<T>(s: &[T]) -> usize { unsafe { crate::ptr::Repr { rust: s }.raw.len } }; -+ #[cfg(rust_compiler="mrustc")] -+ const fn len_inner<T>(s: &[T]) -> usize { unsafe { crate::intrinsics::mrustc_slice_len(s) } } -+ len_inner(self) - } -# -# Static-link rustc_codegen_llvm so the generated rustc is standalone -# > Note: Interacts with `rustc-1.39.0-overrides.toml` -# ---- src/librustc_interface/util.rs -+++ src/librustc_interface/util.rs -@@ -421,2 +421,4 @@ - pub fn get_codegen_sysroot(backend_name: &str) -> fn() -> Box<dyn CodegenBackend> { -+ #[cfg(rust_compiler="mrustc")] -+ { if(backend_name == "llvm") { extern "Rust" { fn __rustc_codegen_backend() -> Box<dyn CodegenBackend>; } return || unsafe { __rustc_codegen_backend() } } } - // For now we only allow this function to be called once as it'll dlopen a -# Disable most architecture intrinsics ---- src/stdarch/crates/std_detect/src/detect/mod.rs -+++ src/stdarch/crates/std_detect/src/detect/mod.rs -@@ -74,4 +74,7 @@ - // this run-time detection logic is never called. - #[path = "os/other.rs"] - mod os; -+ } else if #[cfg(rust_compiler="mrustc")] { -+ #[path = "os/other.rs"] -+ mod os; - } else if #[cfg(any(target_arch = "x86", target_arch = "x86_64"))] { ---- vendor/ppv-lite86/src/lib.rs -+++ vendor/ppv-lite86/src/lib.rs -@@ -12,10 +12,10 @@ --#[cfg(all(feature = "simd", target_arch = "x86_64", not(miri)))] -+#[cfg(all(feature = "simd", target_arch = "x86_64", not(miri), not(rust_compiler="mrustc")))] - pub mod x86_64; --#[cfg(all(feature = "simd", target_arch = "x86_64", not(miri)))] -+#[cfg(all(feature = "simd", target_arch = "x86_64", not(miri), not(rust_compiler="mrustc")))] - use self::x86_64 as arch; - --#[cfg(any(miri, not(all(feature = "simd", any(target_arch = "x86_64")))))] -+#[cfg(any(miri, rust_compiler="mrustc", not(all(feature = "simd", any(target_arch = "x86_64")))))] - pub mod generic; --#[cfg(any(miri, not(all(feature = "simd", any(target_arch = "x86_64")))))] -+#[cfg(any(miri, rust_compiler="mrustc", not(all(feature = "simd", any(target_arch = "x86_64")))))] - use self::generic as arch; - -# diff --git a/llvm/include/llvm/Demangle/MicrosoftDemangleNodes.h b/llvm/include/llvm/Demangle/MicrosoftDemangleNodes.h -# index da9d9d5bfdc0..3d47471f0ef0 100644 -# --- src/llvm-project/llvm/include/llvm/Demangle/MicrosoftDemangleNodes.h -# +++ src/llvm-project/llvm/include/llvm/Demangle/MicrosoftDemangleNodes.h -# @@ -16,6 +16,8 @@ -# #include "llvm/Demangle/DemangleConfig.h" -# #include "llvm/Demangle/StringView.h" -# #include <array> -# +#include <cstdint> -# +#include <string> - -# namespace llvm { -# namespace itanium_demangle { -## -## gcc (used by mrustc) has 16-byte uint128_t alignment, while rustc uses 8 -## -#--- src/libsyntax/ast.rs -#+++ src/libsyntax/ast.rs -#@@ -986,2 +986,2 @@ -#-#[cfg(target_arch = "x86_64")] -#-static_assert_size!(Expr, 96); -#+//#[cfg(target_arch = "x86_64")] -#+//static_assert_size!(Expr, 96); -#--- src/librustc/ty/sty.rs -#+++ src/librustc/ty/sty.rs -#@@ -2258,2 +2258,2 @@ -#-#[cfg(target_arch = "x86_64")] -#-static_assert_size!(Const<'_>, 40); -#+//#[cfg(target_arch = "x86_64")] -#+//static_assert_size!(Const<'_>, 40); - diff --git a/gnu/packages/patches/rustc-1.54.0-src.patch b/gnu/packages/patches/rustc-1.54.0-src.patch new file mode 100644 index 0000000000..d075dce39b --- /dev/null +++ b/gnu/packages/patches/rustc-1.54.0-src.patch @@ -0,0 +1,117 @@ +# mrustc is much better at enum packing, so causes almost all of these to be smaller by one pointer +--- compiler/rustc_ast/src/ast.rs ++++ compiler/rustc_ast/src/ast.rs +@@ -1075,7 +1075,7 @@ pub struct Expr { + } + + // `Expr` is used a lot. Make sure it doesn't unintentionally get bigger. +-#[cfg(all(target_arch = "x86_64", target_pointer_width = "64"))] ++#[cfg(all(not(rust_compiler = "mrustc"), target_arch = "x86_64", target_pointer_width = "64"))] + rustc_data_structures::static_assert_size!(Expr, 104); + + impl Expr { +@@ -2779,7 +2779,7 @@ pub enum AssocItemKind { + MacCall(MacCall), + } + +-#[cfg(all(target_arch = "x86_64", target_pointer_width = "64"))] ++#[cfg(all(not(rust_compiler = "mrustc"), target_arch = "x86_64", target_pointer_width = "64"))] + rustc_data_structures::static_assert_size!(AssocItemKind, 72); + + impl AssocItemKind { +@@ -2831,7 +2831,7 @@ pub enum ForeignItemKind { + MacCall(MacCall), + } + +-#[cfg(all(target_arch = "x86_64", target_pointer_width = "64"))] ++#[cfg(all(not(rust_compiler="mrustc"),target_arch = "x86_64", target_pointer_width = "64"))] + rustc_data_structures::static_assert_size!(ForeignItemKind, 72); + + impl From<ForeignItemKind> for ItemKind { +--- compiler/rustc_hir/src/hir.rs ++++ compiler/rustc_hir/src/hir.rs +@@ -3050,3 +3050,3 @@ + // Some nodes are used a lot. Make sure they don't unintentionally get bigger. +-#[cfg(all(target_arch = "x86_64", target_pointer_width = "64"))] ++#[cfg(all(not(rust_compiler="mrustc"),target_arch = "x86_64", target_pointer_width = "64"))] + mod size_asserts { +--- compiler/rustc_middle/src/mir/interpret/error.rs ++++ compiler/rustc_middle/src/mir/interpret/error.rs +@@ -452,2 +452,2 @@ +-#[cfg(all(target_arch = "x86_64", target_pointer_width = "64"))] ++#[cfg(all(not(rust_compiler="mrustc"), target_arch = "x86_64", target_pointer_width = "64"))] + static_assert_size!(InterpError<'_>, 64); +--- compiler/rustc_middle/src/mir/mod.rs ++++ compiler/rustc_middle/src/mir/mod.rs +@@ -2203,2 +2203,2 @@ +-#[cfg(target_arch = "x86_64")] ++#[cfg(all(not(rust_compiler="mrustc"), target_arch = "x86_64"))] + static_assert_size!(AggregateKind<'_>, 48); +--- compiler/rustc_middle/src/thir.rs ++++ compiler/rustc_middle/src/thir.rs +@@ -147,2 +147,2 @@ +-#[cfg(all(target_arch = "x86_64", target_pointer_width = "64"))] ++#[cfg(all(not(rust_compiler="mrustc"), target_arch = "x86_64", target_pointer_width = "64"))] + rustc_data_structures::static_assert_size!(Expr<'_>, 144); +--- compiler/rustc_mir/src/interpret/place.rs ++++ compiler/rustc_mir/src/interpret/place.rs +@@ -91,2 +91,2 @@ +-#[cfg(all(target_arch = "x86_64", target_pointer_width = "64"))] ++#[cfg(all(not(rust_compiler = "mrustc"), target_arch = "x86_64", target_pointer_width = "64"))] + rustc_data_structures::static_assert_size!(Place, 64); +@@ -100,2 +100,2 @@ +-#[cfg(all(target_arch = "x86_64", target_pointer_width = "64"))] ++#[cfg(all(not(rust_compiler = "mrustc"), target_arch = "x86_64", target_pointer_width = "64"))] + rustc_data_structures::static_assert_size!(PlaceTy<'_>, 80); +--- compiler/rustc_mir/src/interpret/operand.rs ++++ compiler/rustc_mir/src/interpret/operand.rs +@@ -35,2 +35,2 @@ +-#[cfg(all(target_arch = "x86_64", target_pointer_width = "64"))] ++#[cfg(all(not(rust_compiler = "mrustc"), target_arch = "x86_64", target_pointer_width = "64"))] + rustc_data_structures::static_assert_size!(Immediate, 56); +@@ -90,2 +90,2 @@ +-#[cfg(all(target_arch = "x86_64", target_pointer_width = "64"))] ++#[cfg(all(not(rust_compiler = "mrustc"), target_arch = "x86_64", target_pointer_width = "64"))] + rustc_data_structures::static_assert_size!(ImmTy<'_>, 72); + +# +# Disable crc32fast's use of stdarch +# +--- vendor/crc32fast/src/specialized/mod.rs ++++ vendor/crc32fast/src/specialized/mod.rs +@@ -1,5 +1,6 @@ + cfg_if! { + if #[cfg(all( ++ not(rust_compiler = "mrustc"), + crc32fast_stdarchx86, + any(target_arch = "x86", target_arch = "x86_64") + ))] { + +# +# Disable std_detect's detection logic (use the same logic as miri) +# +--- library/stdarch/crates/std_detect/src/detect/mod.rs ++++ library/stdarch/crates/std_detect/src/detect/mod.rs +@@ -88,2 +88,2 @@ + cfg_if! { +- if #[cfg(miri)] { ++ if #[cfg(any(miri, rust_compiler = "mrustc"))] { + +# PPV-Lite also needs to know that we're pretending to be miri +--- vendor/ppv-lite86/src/lib.rs ++++ vendor/ppv-lite86/src/lib.rs +@@ -12,9 +12,9 @@ +-#[cfg(all(feature = "simd", target_arch = "x86_64", not(miri)))] ++#[cfg(all(feature = "simd", target_arch = "x86_64", not(miri), not(rust_compiler = "mrustc")))] + pub mod x86_64; +-#[cfg(all(feature = "simd", target_arch = "x86_64", not(miri)))] ++#[cfg(all(feature = "simd", target_arch = "x86_64", not(miri), not(rust_compiler = "mrustc")))] + use self::x86_64 as arch; + +-#[cfg(any(miri, not(all(feature = "simd", any(target_arch = "x86_64")))))] ++#[cfg(any(miri, rust_compiler = "mrustc", not(all(feature = "simd", any(target_arch = "x86_64")))))] + pub mod generic; +-#[cfg(any(miri, not(all(feature = "simd", any(target_arch = "x86_64")))))] ++#[cfg(any(miri, rust_compiler = "mrustc", not(all(feature = "simd", any(target_arch = "x86_64")))))] + use self::generic as arch; + diff --git a/gnu/packages/polkit.scm b/gnu/packages/polkit.scm index a75608cd43..9a3703b196 100644 --- a/gnu/packages/polkit.scm +++ b/gnu/packages/polkit.scm @@ -9,6 +9,7 @@ ;;; Copyright © 2018 Ricardo Wurmus <rekado@elephly.net> ;;; Copyright © 2021 Morgan Smith <Morgan.J.Smith@outlook.com> ;;; Copyright © 2021 Maxim Cournoyer <maxim.cournoyer@gmail.com> +;;; Copyright © 2022 Jean-Pierre De Jesus DIAZ <me@jeandudey.tech> ;;; ;;; This file is part of GNU Guix. ;;; @@ -119,10 +120,11 @@ (("@INTROSPECTION_TYPELIBDIR@") (string-append out "/lib/girepository-1.0/")))))) (add-after 'unpack 'fix-manpage-generation - (lambda* (#:key inputs #:allow-other-keys) - (let ((xsldoc (string-append (assoc-ref inputs "docbook-xsl") - "/xml/xsl/docbook-xsl-" - ,(package-version docbook-xsl)))) + (lambda* (#:key inputs native-inputs #:allow-other-keys) + (let ((xsldoc (string-append + (assoc-ref (or native-inputs inputs) "docbook-xsl") + "/xml/xsl/docbook-xsl-" + ,(package-version docbook-xsl)))) (substitute* '("docs/man/Makefile.am" "docs/man/Makefile.in") (("http://docbook.sourceforge.net/release/xsl/current") xsldoc))))) diff --git a/gnu/packages/python-crypto.scm b/gnu/packages/python-crypto.scm index f4e01198f5..4c3602ab54 100644 --- a/gnu/packages/python-crypto.scm +++ b/gnu/packages/python-crypto.scm @@ -422,13 +422,13 @@ for example, for recording or replaying web content.") (define-public python-certifi (package (name "python-certifi") - (version "2021.10.8") + (version "2022.6.15") (source (origin (method url-fetch) (uri (pypi-uri "certifi" version)) (sha256 (base32 - "0wl8ln7acd797i1q7mmb430l6hqwhmk4bd37x8ycw02b3my4x23q")))) + "03c2l11lgljx0kz17cvdc4hlc3p1594ajdih9zq0a4dig285mj44")))) (build-system python-build-system) (arguments '(#:tests? #f)) ;no tests (home-page "https://certifi.io/") diff --git a/gnu/packages/python-web.scm b/gnu/packages/python-web.scm index 7c5e5651c8..3239086dc3 100644 --- a/gnu/packages/python-web.scm +++ b/gnu/packages/python-web.scm @@ -2782,13 +2782,13 @@ APIs.") (define-public python-requests (package (name "python-requests") - (version "2.27.1") + (version "2.28.1") (source (origin (method url-fetch) (uri (pypi-uri "requests" version)) (sha256 (base32 - "0qcsbi919d689xqlgyhw9zkppp1fs6k09wwffa3ri6d8smpwbmv8")))) + "10vrr7bijzrypvms3g2sgz8vya7f9ymmcv423ikampgy0aqrjmbw")))) (build-system python-build-system) (propagated-inputs (list python-certifi @@ -3113,14 +3113,14 @@ addon for removing tracking fields from URLs.") (define-public python-urllib3 (package (name "python-urllib3") - (version "1.26.8") + (version "1.26.9") (source (origin (method url-fetch) (uri (pypi-uri "urllib3" version)) (sha256 (base32 - "0g18xk7gfm88gr4bp3f58vgvsbzwps3sq2kqhv5xyz9ylvck6z0f")))) + "13j4mkk6vgix4bixfqk3fhydsl3r5f61z94ss4fmwsl0fxjg3fma")))) (build-system python-build-system) (arguments `(#:tests? #f)) (propagated-inputs diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index 11f709f7b5..fcac915282 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -1304,14 +1304,14 @@ by @code{binstar}, @code{binstar-build}, and @code{chalmers}.") (define-public python-babel (package (name "python-babel") - (version "2.9.0") + (version "2.10.3") (source (origin (method url-fetch) (uri (pypi-uri "Babel" version)) (sha256 (base32 - "018yg7g2pa6vjixx1nx41cfispgfi0azzp0a1chlycbj8jsil0ys")))) + "0l9cvfmsz0hlvcinxaf6xf2f02ldgw3xq9i1fc7lk5zf24vma53n")))) (build-system python-build-system) (native-inputs (list python-freezegun python-pytest tzdata-for-tests)) @@ -6999,13 +6999,13 @@ retrieve text and metadata from PDFs as well as merge entire files together.") (define-public python-pillow (package (name "python-pillow") - (version "9.0.0") + (version "9.2.0") (source (origin (method url-fetch) (uri (pypi-uri "Pillow" version)) (sha256 (base32 - "0gjry0yqryd2678sm47jhdnbghzxn5wk8pgyaqwr4qi7x5ijjvpf")) + "011wgm1mssjchpva9wsi2a07im9czyjvik137xlp5f0g7vykdrkm")) (modules '((guix build utils))) (snippet '(begin (delete-file-recursively "src/thirdparty"))))) @@ -13498,14 +13498,14 @@ simulation, statistical modeling, machine learning and much more.") (define-public python-chardet (package (name "python-chardet") - (version "4.0.0") + (version "5.0.0") (source (origin (method url-fetch) (uri (pypi-uri "chardet" version)) (sha256 (base32 - "1ykr04qyhgpc0h5b7dhqw4g92b1xv7ki2ky910mhy4mlbnhm6vqd")))) + "1amqmz8731ly6f9rkbk09w4jqgmmgyxykd1bawhgrdbqzlmxys03")))) (native-inputs (list python-pytest)) (build-system python-build-system) @@ -13514,7 +13514,10 @@ simulation, statistical modeling, machine learning and much more.") #~(modify-phases %standard-phases (replace 'check (lambda _ - (invoke "pytest" "-vv"))) + (invoke "pytest" "-vv" "-k" + ;; Disable test that fails sporadically: + ;; https://github.com/chardet/chardet/issues/256 + "not test_detect_all_and_detect_one_should_agree"))) ;; This package provides a 'chardetect' executable that only ;; depends on Python, so customize the wrap phase to avoid ;; adding pytest and friends in order to save size. @@ -13542,13 +13545,13 @@ automatically detect a wide range of file encodings.") (define-public python-charset-normalizer (package (name "python-charset-normalizer") - (version "2.0.11") + (version "2.1.0") (source (origin (method url-fetch) (uri (pypi-uri "charset-normalizer" version)) (sha256 - (base32 "071pi2kd222rjjrjdllffqv3iz4bfaj93a9bfs65907fd6fqlfcq")))) + (base32 "04zlajr77f6c7ai59l46as1idi0jjgbvj72lh4v5wfpz2s070pjp")))) (build-system python-build-system) (arguments (list #:phases @@ -19007,15 +19010,12 @@ from the header, as well as section details and data available.") (build-system python-build-system) (arguments `(#:phases (modify-phases %standard-phases - ,@(if (target-riscv64?) - ;; TODO: Remove the conditional on staging. - `((add-after 'unpack 'remove-test-hypothesis-deadlines - (lambda _ - (substitute* "tests/test_make.py" - (("assume, given") "assume, given, settings") - (("( +)@given" all spaces) - (string-append spaces "@settings(deadline=None)\n" all)))))) - '()) + (add-after 'unpack 'remove-test-hypothesis-deadlines + (lambda _ + (substitute* "tests/test_make.py" + (("assume, given") "assume, given, settings") + (("( +)@given" all spaces) + (string-append spaces "@settings(deadline=None)\n" all))))) (replace 'check (lambda* (#:key tests? #:allow-other-keys) (when tests? diff --git a/gnu/packages/qt.scm b/gnu/packages/qt.scm index ae68317492..beba03936a 100644 --- a/gnu/packages/qt.scm +++ b/gnu/packages/qt.scm @@ -88,6 +88,7 @@ #:use-module (gnu packages markup) #:use-module (gnu packages networking) #:use-module (gnu packages ninja) + #:use-module (gnu packages node) #:use-module (gnu packages nss) #:use-module (gnu packages pciutils) #:use-module (gnu packages pcre) @@ -281,28 +282,32 @@ system, and the core design of Django is reused in Grantlee.") ;; the layout differs between them. (list (string-append "https://download.qt.io/official_releases/qt/" (version-major+minor version) "/" version + "/submodules/" component "-everywhere-opensource-src-" + version ".tar.xz") + (string-append "https://download.qt.io/official_releases/qt/" + (version-major+minor version) "/" version "/submodules/" component "-everywhere-src-" version ".tar.xz") (string-append "https://download.qt.io/archive/qt/" (version-major+minor version) "/" version - "/submodules/" component "-everywhere-src-" + "/submodules/" component "-everywhere-opensource-src-" version ".tar.xz") (let ((directory (string-append "qt5" (string-drop component 2)))) (string-append "http://sources.buildroot.net/" directory "/" - component "-everywhere-src-" version ".tar.xz")) + component "-everywhere-opensource-src-" version ".tar.xz")) (string-append "https://distfiles.macports.org/qt5/" - component "-everywhere-src-" version ".tar.xz"))) + component "-everywhere-opensource-src-" version ".tar.xz"))) (define-public qtbase-5 (package (name "qtbase") - (version "5.15.2") + (version "5.15.5") (source (origin (method url-fetch) (uri (qt5-urls name version)) (sha256 (base32 - "1y70libf2x52lpbqvhz10lpk7nyl1ajjwzjxly9pjdpfj4jsv7wh")) + "1p2fa94m1y8qzhdfi2d7dck93qh1lgsinibwl1wy92bwmacwfhhc")) ;; Use TZDIR to avoid depending on package "tzdata". (patches (search-patches "qtbase-use-TZDIR.patch" "qtbase-moc-ignore-gcc-macro.patch" @@ -356,8 +361,7 @@ system, and the core design of Django is reused in Grantlee.") ("nss" ,nss) ("openssl" ,openssl) ("pcre2" ,pcre2) - ;; TODO: Switch to 'postgres' in the next rebuild cycle. - ("postgresql" ,postgresql-13) + ("postgresql" ,postgresql) ("pulseaudio" ,pulseaudio) ("sqlite" ,sqlite) ("unixodbc" ,unixodbc) @@ -710,13 +714,13 @@ developers using C++ or QML, a CSS & JavaScript like language.") (define-public qtsvg (package (inherit qtbase-5) (name "qtsvg") - (version "5.15.2") + (version "5.15.5") (source (origin (method url-fetch) (uri (qt5-urls name version)) (sha256 (base32 - "0pjqrdmd1991x9h4rl8sf81pkd89hfd5h1a2gp3fjw96pk0w5hwb")))) + "0cdhmhxngv4y7kl5vbcii4l4anbz0hj7dvhlddy1agyl19j9xky4")))) (propagated-inputs `()) (native-inputs (list perl)) (inputs @@ -761,8 +765,7 @@ HostLibraries=lib [EffectiveSourcePaths] HostPrefix=~a HostData=lib/qt5 -" out out qtbase))) - #t))) +" out out qtbase)))))) (replace 'configure (lambda* (#:key inputs outputs #:allow-other-keys) ;; Valid QT_BUILD_PARTS variables are: @@ -771,8 +774,7 @@ HostData=lib/qt5 (add-before 'check 'set-display (lambda _ ;; make Qt render "offscreen", required for tests - (setenv "QT_QPA_PLATFORM" "offscreen") - #t))))) + (setenv "QT_QPA_PLATFORM" "offscreen")))))) (synopsis "Qt module for displaying SVGs") (description "The QtSvg module provides classes for displaying the contents of SVG files."))) @@ -780,28 +782,17 @@ HostData=lib/qt5 (define-public qtimageformats (package (inherit qtsvg) (name "qtimageformats") - (version "5.15.2") + (version "5.15.5") (source (origin (method url-fetch) (uri (qt5-urls name version)) (sha256 (base32 - "1msk8a0z8rr16hkp2fnv668vf6wayiydqgc2mcklaa04rv3qb0mz")) + "1xjb2z2h1ajw7z9cwq8djpdvjwalpnmirwcwrlbjqv5r4ghmi82a")) (modules '((guix build utils))) (snippet '(begin - (delete-file-recursively "src/3rdparty") - #t)))) - (arguments - (substitute-keyword-arguments (package-arguments qtsvg) - ((#:phases phases) - `(modify-phases ,phases - (add-after 'unpack 'fix-build - (lambda _ - (substitute* "src/plugins/imageformats/jp2/qjp2handler.cpp" - (("^#include <jasper/jasper.h>") - "#include <jasper/jasper.h>\n#include <QtCore/qmath.h>")) - #t)))))) + (delete-file-recursively "src/3rdparty"))))) (native-inputs `()) (inputs (list jasper @@ -818,13 +809,13 @@ support for MNG, TGA, TIFF and WBMP image formats."))) (define-public qtx11extras (package (inherit qtsvg) (name "qtx11extras") - (version "5.15.2") + (version "5.15.5") (source (origin (method url-fetch) (uri (qt5-urls name version)) (sha256 (base32 - "0gkfzj195v9flwljnqpdz3a532618yn4h2577nlsai56x4p7053h")))) + "0wxsrnnkkn68myy211rfz98brs7j3qmx3hmy097vh5avgsmw11bn")))) (arguments (substitute-keyword-arguments (package-arguments qtsvg) ((#:tests? _ #f) #f))) ; TODO: Enable the tests @@ -838,23 +829,24 @@ from within Qt 5."))) (define-public qtxmlpatterns (package (inherit qtsvg) (name "qtxmlpatterns") - (version "5.15.2") + (version "5.15.5") (source (origin (method url-fetch) (uri (qt5-urls name version)) (sha256 (base32 - "1ypj5jpa31rlx8yfw3y9jia212lfnxvnqkvygs6ihjf3lxi23skn")))) + "065vj1gk5i4cg0f9spksyb9ps4px0vssx262y77aakvw408vfmq5")))) (arguments (substitute-keyword-arguments (package-arguments qtsvg) - ((#:tests? _ #f) #f) ; TODO: Enable the tests ((#:phases phases) `(modify-phases ,phases (add-after 'unpack 'disable-network-tests (lambda _ (substitute* "tests/auto/auto.pro" (("qxmlquery") "# qxmlquery") - (("xmlpatterns ") "# xmlpatterns")) - #t)))))) + (("xmlpatterns ") "# xmlpatterns")))) + (add-after 'unpack 'skip-qquickxmllistmodel-test + (lambda _ (substitute* "tests/auto/auto.pro" + ((".*qquickxmllistmodel.*") "")))))))) (native-inputs (list perl qtdeclarative)) (inputs (list qtbase-5)) (synopsis "Qt XML patterns module") @@ -865,13 +857,13 @@ xmlpatternsvalidator."))) (define-public qtdeclarative (package (inherit qtsvg) (name "qtdeclarative") - (version "5.15.2") + (version "5.15.5") (source (origin (method url-fetch) (uri (qt5-urls name version)) (sha256 (base32 - "0lancdn7y0lrlmyn5cbdm0izd5yprvd5n77nhkb7a3wl2sbx0066")))) + "0ji5131g7h2mrgxw1wxc5mcvmsn3fbw64j28gzpa25gv3vcnkhaw")))) (arguments (substitute-keyword-arguments (package-arguments qtsvg) ((#:tests? _ #f) #f) ;TODO: Enable the tests @@ -884,8 +876,7 @@ xmlpatternsvalidator."))) ;; is provided by qtdeclarative. (substitute* "lib/cmake/Qt5QuickCompiler/Qt5QuickCompilerConfig.cmake" - (("\\$\\{_qt5Core_install_prefix\\}") out))) - #t)))))) + (("\\$\\{_qt5Core_install_prefix\\}") out))))))))) (native-inputs (list perl pkg-config @@ -905,13 +896,13 @@ with JavaScript and C++."))) (define-public qtconnectivity (package (inherit qtsvg) (name "qtconnectivity") - (version "5.15.2") + (version "5.15.5") (source (origin (method url-fetch) (uri (qt5-urls name version)) (sha256 (base32 - "185zci61ip1wpjrygcw2m6v55lvninc0b8y2p3jh6qgpf5w35003")))) + "0b2dnxw1rjbp1srhgns148cwl99f50mx29588dal3avv0f73s597")))) (native-inputs (list perl pkg-config qtdeclarative)) (inputs @@ -923,13 +914,13 @@ with Bluetooth and NFC."))) (define-public qtwebsockets (package (inherit qtsvg) (name "qtwebsockets") - (version "5.15.2") + (version "5.15.5") (source (origin (method url-fetch) (uri (qt5-urls name version)) (sha256 (base32 - "0gr399fn5n8j3m9d3vv01vcbr1cb7pw043j04cnnxzrlvn2jvd50")))) + "0f120rfqnmlffjhrm5jbpipk1qsbzp1a2v3q8gz94hz6n9dqpav6")))) (arguments (substitute-keyword-arguments (package-arguments qtsvg) ((#:tests? _ #f) #f))) ; TODO: Enable the tests @@ -946,13 +937,13 @@ consume data received from the server, or both."))) (define-public qtsensors (package (inherit qtsvg) (name "qtsensors") - (version "5.15.2") + (version "5.15.5") (source (origin (method url-fetch) (uri (qt5-urls name version)) (sha256 (base32 - "0fa81r7bn1mf9ynwsx524a55dx1q0jb4vda6j48ssb4lx7wi201z")))) + "0zlhm4js02niibb23rw87wf4ik0gy4ai08fwprnwy7zf4rm1ss3d")))) (arguments (substitute-keyword-arguments (package-arguments qtsvg) ((#:parallel-tests? _ #f) #f) ; can lead to race condition @@ -961,9 +952,8 @@ consume data received from the server, or both."))) (add-after 'unpack 'fix-tests (lambda _ (substitute* "tests/auto/qsensorgestures_gestures/tst_sensorgestures_gestures.cpp" - (("2000") "5000") ;lengthen test timeout - (("QTest::newRow(\"twist\") << \"twist\"") "")) ;failing test - #t)))))) + (("2000") "5000") ;lengthen test timeout + (("QTest::newRow(\"twist\") << \"twist\"") "")))))))) ;failing test (native-inputs (list perl qtdeclarative)) (inputs (list qtbase-5)) @@ -975,13 +965,13 @@ recognition API for devices."))) (define-public qtmultimedia (package (inherit qtsvg) (name "qtmultimedia") - (version "5.15.2") + (version "5.15.5") (source (origin (method url-fetch) (uri (qt5-urls name version)) (sha256 (base32 - "1xbd6kc7i0iablqdkvfrajpi32cbq7j6ajbfyyyalcai1s0mhdqc")) + "0q76iy1frcgm85mid17lh4p6gnn04n19n6zklgpv4w3md1ng97xw")) (modules '((guix build utils))) (snippet '(begin @@ -989,8 +979,7 @@ recognition API for devices."))) "examples/multimedia/spectrum/3rdparty") ;; We also prevent the spectrum example from being built. (substitute* "examples/multimedia/multimedia.pro" - (("spectrum") "#")) - #t)))) + (("spectrum") "#")))))) (arguments (substitute-keyword-arguments (package-arguments qtsvg) ((#:phases phases) @@ -1020,13 +1009,13 @@ set of plugins for interacting with pulseaudio and GStreamer."))) (define-public qtwayland (package (inherit qtsvg) (name "qtwayland") - (version "5.15.2") + (version "5.15.5") (source (origin (method url-fetch) (uri (qt5-urls name version)) (sha256 (base32 - "1ddfx4nak16xx0zh1kl836zxvpbixmmjyplsmfmg65pqkwi34dqr")))) + "0yy8qf9kn15iqsxi2r7jbcsc0vsdyfz7bbxmfn4i9qmz1yvg0jgr")))) (arguments (substitute-keyword-arguments (package-arguments qtsvg) ((#:phases phases) @@ -1040,13 +1029,11 @@ set of plugins for interacting with pulseaudio and GStreamer."))) "m_waitingFrameCallbacks\\.empty\\(\\)\\);")) "") (("QTRY_COMPARE\\(bufferSpy\\.count\\(\\), 1\\);") - "")) - #t)) + "")))) (add-before 'check 'set-test-environment (lambda _ ;; Do not fail just because /etc/machine-id is missing. - (setenv "DBUS_FATAL_WARNINGS" "0") - #t)))))) + (setenv "DBUS_FATAL_WARNINGS" "0"))))))) (native-inputs (list glib perl pkg-config qtdeclarative)) (inputs @@ -1069,13 +1056,13 @@ compositor libraries."))) (define-public qtserialport (package (inherit qtsvg) (name "qtserialport") - (version "5.15.2") + (version "5.15.5") (source (origin (method url-fetch) (uri (qt5-urls name version)) (sha256 (base32 - "17gp5qzg4wdg8qlxk2p3mh8x1vk33rf33wic3fy0cws193bmkiar")))) + "0xg2djwhrj5jqamawlp75g70nmwbp2ph2hh1pm45s36jkxm0k7al")))) (native-inputs (list perl)) (inputs (list qtbase-5 eudev)) @@ -1090,8 +1077,7 @@ compositor libraries."))) ;; otherwise the lib will be searched in LD_LIBRARY_PATH which ;; typically is not set in guix. (("^\\s*(udevLibrary->setFileNameAndVersion\\(QStringLiteral\\(\")(udev\"\\),\\s*[0-9]+\\);)" _ a b) - (string-append a (assoc-ref inputs "eudev") "/lib/lib" b))) - #t)))))) + (string-append a (assoc-ref inputs "eudev") "/lib/lib" b))))))))) (synopsis "Qt Serial Port module") (description "The Qt Serial Port module provides the library for interacting with serial ports from within Qt."))) @@ -1099,13 +1085,13 @@ interacting with serial ports from within Qt."))) (define-public qtserialbus (package (inherit qtsvg) (name "qtserialbus") - (version "5.15.2") + (version "5.15.5") (source (origin (method url-fetch) (uri (qt5-urls name version)) (sha256 (base32 - "125x6756fjpldqy6wbw6cg7ngjh2016aiq92bchh719z1mf7xsxf")))) + "180gm1jvqfn0h3251zafdd1wd3af00phwaa5qljsbrj6s6ywj79j")))) (arguments (substitute-keyword-arguments (package-arguments qtsvg) ((#:phases phases '%standard-phases) @@ -1117,8 +1103,7 @@ interacting with serial ports from within Qt."))) "/lib/libsocketcan.so"))) (substitute* "src/plugins/canbus/socketcan/libsocketcan.cpp" (("QStringLiteral\\(\"socketcan\"\\)") - (format #f "QStringLiteral(~s)" libcansocket.so))) - #t))))))) + (format #f "QStringLiteral(~s)" libcansocket.so)))))))))) (inputs (list libsocketcan qtbase-5 qtserialport)) (synopsis "Qt Serial Bus module") @@ -1129,13 +1114,13 @@ and others."))) (define-public qtwebchannel (package (inherit qtsvg) (name "qtwebchannel") - (version "5.15.2") + (version "5.15.5") (source (origin (method url-fetch) (uri (qt5-urls name version)) (sha256 (base32 - "1h9y634phvvk557mhmf9z4lmxr41rl8x9mqy2lzp31mk8ffffzqj")))) + "1w8mcpdqlphgg3a6yfq18liwlj2nkwrafv0n80h242x5l2mk3ljf")))) (native-inputs (list perl qtdeclarative qtwebsockets)) (inputs (list qtbase-5)) @@ -1148,21 +1133,20 @@ popular web engines, Qt WebKit 2 and Qt WebEngine."))) (define-public qtwebglplugin (package (inherit qtsvg) (name "qtwebglplugin") - (version "5.15.2") + (version "5.15.5") (source (origin (method url-fetch) (uri (qt5-urls name version)) (sha256 (base32 - "0ihlnhv8ldkqz82v3j7j22lrhk17b6ghra8sx85y2agd2ysq5rw1")))) + "1m0p4ssykw07lbip2qyv6w34f8ng13bxb63j0w446f5w0492nn9f")))) (arguments (substitute-keyword-arguments (package-arguments qtsvg) ((#:phases phases) `(modify-phases ,phases (add-after 'unpack 'disable-network-tests (lambda _ (substitute* "tests/plugins/platforms/platforms.pro" - (("webgl") "# webgl")) - #t)))))) + (("webgl") "# webgl")))))))) (native-inputs '()) (inputs (list mesa qtbase-5 qtdeclarative qtwebsockets zlib)) @@ -1177,13 +1161,13 @@ OpenGL ES 2.0 and can be used in HTML5 canvas elements"))) (define-public qtwebview (package (inherit qtsvg) (name "qtwebview") - (version "5.15.2") + (version "5.15.5") (source (origin (method url-fetch) (uri (qt5-urls name version)) (sha256 (base32 - "1rw1wibmbxlj6xc86qs3y8h42al1vczqiksyxzaylxs9gqb4d7xy")))) + "0arwaky3jy5ql3z4d8f7k7diidzb1kncdans7pn50hsa1bzacfal")))) (native-inputs (list perl)) (inputs @@ -1196,19 +1180,21 @@ native APIs where it makes sense."))) (define-public qtlocation (package (inherit qtsvg) (name "qtlocation") - (version "5.15.2") + (version "5.15.5") (source (origin (method url-fetch) - (uri (string-append "https://download.qt.io/official_releases/qt/" - (version-major+minor version) "/" version - "/submodules/" name "-everywhere-src-" - version ".tar.xz")) + (uri (qt5-urls name version)) (sha256 (base32 - "184jychnlfhplpwc5cdcsapwljgwvzk5qpf3val4kpq8w44wnkwq")))) + "0mlhhhcxx3gpr9kh04c6fljxcj50c2j21r0wb9f7d7nk4flip7b2")))) (arguments (substitute-keyword-arguments (package-arguments qtsvg) - ((#:tests? _ #f) #f))) ; TODO: Enable the tests + ((#:tests? _ #f) #f) ; TODO: Enable the tests + ((#:phases phases) + `(modify-phases ,phases + (add-before 'check 'pre-check + (lambda _ + (setenv "HOME" "/tmp"))))))) (native-inputs (list perl qtdeclarative qtquickcontrols qtserialport)) (inputs @@ -1220,13 +1206,13 @@ positioning and geolocation plugins."))) (define-public qttools (package (inherit qtsvg) (name "qttools") - (version "5.15.2") + (version "5.15.5") (source (origin (method url-fetch) (uri (qt5-urls name version)) (sha256 (base32 - "1k618f7v6jaj0ygy8d7jvgb8zjr47sn55kiskbdkkizp3z7d12f1")))) + "0v7wkzq9i8w3qrw0z8al7lb6clr57lfisyb1fm9cnhi73fvph1vd")))) (arguments (substitute-keyword-arguments (package-arguments qtsvg) ((#:tests? _ #f) #f))) ; TODO: Enable the tests @@ -1242,13 +1228,13 @@ that helps in Qt development."))) (define-public qtscript (package (inherit qtsvg) (name "qtscript") - (version "5.15.2") + (version "5.15.5") (source (origin (method url-fetch) (uri (qt5-urls name version)) (sha256 (base32 - "0gk74hk488k9ldacxbxcranr3arf8ifqg8kz9nm1rgdgd59p36d2")) + "17yk0p8ci47xlfpllc17arlycng47wrnnskimskzz85bspabc8pm")) (patches (search-patches "qtscript-disable-tests.patch")))) (native-inputs (list perl qttools)) @@ -1262,13 +1248,13 @@ ECMAScript and Qt."))) (define-public qtquickcontrols (package (inherit qtsvg) (name "qtquickcontrols") - (version "5.15.2") + (version "5.15.5") (source (origin (method url-fetch) (uri (qt5-urls name version)) (sha256 (base32 - "1dczakl868mg0lnwpf082jjc5976ycn879li1vqlgw5ihirzp4y3")))) + "0mjw25wcgd2bvjz9rr4qjydb423c63615rcx1vws4jmydqdihssr")))) (arguments (substitute-keyword-arguments (package-arguments qtsvg) ((#:tests? _ #f) #f))) ; TODO: Enable the tests @@ -1282,13 +1268,13 @@ can be used to build complete interfaces in Qt Quick."))) (define-public qtquickcontrols2 (package (inherit qtsvg) (name "qtquickcontrols2") - (version "5.15.2") + (version "5.15.5") (source (origin (method url-fetch) (uri (qt5-urls name version)) (sha256 (base32 - "06c9vrwvbjmzapmfa25y34lgjkzg57xxbm92nr6wkv5qykjnq6v7")))) + "1cxg4ml07k1zcyi5m4lx06sz8f5l67isb5vhk7nakxm0wnn7p8y4")))) (arguments (substitute-keyword-arguments (package-arguments qtsvg) ((#:tests? _ #f) #f))) ; TODO: Enable the tests @@ -1303,13 +1289,13 @@ not available."))) (define-public qtgraphicaleffects (package (inherit qtsvg) (name "qtgraphicaleffects") - (version "5.15.2") + (version "5.15.5") (source (origin (method url-fetch) (uri (qt5-urls name version)) (sha256 (base32 - "1r6zfc0qga2ax155js7c8y5rx6vgayf582s921j09mb797v6g3gc")))) + "0xznn5zqp6xrqfgl54l8cig9asqf9m2hz0p3ga514rh8spmdazr3")))) (arguments (substitute-keyword-arguments (package-arguments qtsvg) ((#:tests? _ #f) #f))) ; TODO: Enable the tests @@ -1326,13 +1312,13 @@ coloring, and many more."))) (define-public qtgamepad (package (inherit qtsvg) (name "qtgamepad") - (version "5.15.2") + (version "5.15.5") (source (origin (method url-fetch) (uri (qt5-urls name version)) (sha256 (base32 - "0p07bg93fdfn4gr2kv38qgnws5znhswajrxdfs8xc9l3i7vi2xn7")))) + "0wa4d8f025hlp4bmdzdy5wcahm9wjg6bkwig8dpw9nrsj3idz5b0")))) (native-inputs (list perl pkg-config)) (inputs @@ -1352,21 +1338,23 @@ and mobile applications targeting TV-like form factors."))) (define-public qtscxml (package (inherit qtsvg) (name "qtscxml") - (version "5.15.2") + (version "5.15.5") (source (origin (method url-fetch) (uri (qt5-urls name version)) (sha256 (base32 - "1p5771b9hnpchfcdgy0zkhwg09a6xq88934aggp0rij1k85mkfb0")) + "0xf5mqsrw16h8xjglymgfc8qg2qa5bi4fgdl4j3dkhvvpr7vrphp")) (modules '((guix build utils))) (snippet '(begin (delete-file-recursively "tests/3rdparty") ;; the scion test refers to the bundled 3rd party test code. (substitute* "tests/auto/auto.pro" - (("scion") "#")) - #t)))) + (("scion") "#")))))) + (arguments + (substitute-keyword-arguments (package-arguments qtsvg) + ((#:tests? _ #f) #f))) ; TODO: Enable the tests (inputs (list qtbase-5 qtdeclarative)) (synopsis "Qt SCXML module") @@ -1379,13 +1367,13 @@ also contains functionality to support data models and executable content."))) (define-public qtpurchasing (package (inherit qtsvg) (name "qtpurchasing") - (version "5.15.2") + (version "5.15.5") (source (origin (method url-fetch) (uri (qt5-urls name version)) (sha256 (base32 - "09rjx53519dfk4qj2gbn3vlxyriasyb747wpg1p11y7jkwqhs4l7")))) + "04z6mwzn73gg56hgs7gividinfgndx4kmcnp7w6h3wamrdlkfdx7")))) (inputs (list qtbase-5 qtdeclarative)) (synopsis "Qt Purchasing module") @@ -1395,16 +1383,22 @@ purchasing goods and services."))) (define-public qtcharts (package (inherit qtsvg) (name "qtcharts") - (version "5.15.2") + (version "5.15.5") (source (origin (method url-fetch) (uri (qt5-urls name version)) (sha256 (base32 - "049x7z8zcp9jixmdv2fjscy2ggpd6za9hkdbb2bqp2mxjm0hwxg0")))) + "0y051i1837bfybkf8cm7cx8k5wjmbi47pxawaaz6wm0hd2z5b4qi")))) (arguments (substitute-keyword-arguments (package-arguments qtsvg) - ((#:tests? _ #f) #f))) ; TODO: Enable the tests + ((#:phases phases) + `(modify-phases ,phases + (add-after 'unpack 'remove-failing-test + (lambda _ + (substitute* "tests/auto/auto.pro" + (("qml") "# qml") + (("qml-qtquicktest") "# qml-qtquicktest")))))))) (inputs (list qtbase-5 qtdeclarative)) (synopsis "Qt Charts module") @@ -1418,13 +1412,13 @@ selecting one of the charts themes.") (define-public qtdatavis3d (package (inherit qtsvg) (name "qtdatavis3d") - (version "5.15.2") + (version "5.15.5") (source (origin (method url-fetch) (uri (qt5-urls name version)) (sha256 (base32 - "1zdn3vm0nfy9ny7c783aabp3mhlnqhi9fw2rljn7ibbksmsnasi2")))) + "0sczwqlc36jdywf7bqxz0hm6mr7fn8p1fsnc33jliiqzn9yrg77x")))) (arguments (substitute-keyword-arguments (package-arguments qtsvg) ((#:tests? _ #f) #f))) ; TODO: Enable the tests @@ -1441,23 +1435,13 @@ customized by using themes or by adding custom items and labels to them.") (define-public qtnetworkauth (package (inherit qtsvg) (name "qtnetworkauth") - (version "5.15.2") + (version "5.15.5") (source (origin (method url-fetch) (uri (qt5-urls name version)) (sha256 (base32 - "11fdgacv4syr8bff2vdw7rb0dg1gcqpdf37hm3pn31d6z91frhpw")))) - (arguments - (substitute-keyword-arguments (package-arguments qtsvg) - ((#:phases phases) - `(modify-phases ,phases - (add-after 'unpack 'remove-failing-test - (lambda _ - ;; These tests can't find their test data. - (substitute* "tests/auto/auto.pro" - (("oauth1 ") "# oauth1 ")) - #t)))))) + "0c7mz715rlpg0cqgs6s0aszmslyamkhnpamc1iij6i571sj5j2f1")))) (inputs (list qtbase-5)) (synopsis "Qt Network Authorization module") @@ -1467,13 +1451,13 @@ implementation of OAuth and OAuth2 authenticathon methods for Qt."))) (define-public qtremoteobjects (package (inherit qtsvg) (name "qtremoteobjects") - (version "5.15.2") + (version "5.15.5") (source (origin (method url-fetch) (uri (qt5-urls name version)) (sha256 (base32 - "1hngbp0vkr35rpsrac7b9vx6f360v8v2g0fffzm590l8j2ybd0b7")))) + "1m0xcqlbxsfn0cd4ajin1h3i4l51dajmkw91v0r4a61xi14i0kks")))) (arguments (substitute-keyword-arguments (package-arguments qtsvg) ((#:phases phases) @@ -1487,8 +1471,7 @@ implementation of OAuth and OAuth2 authenticathon methods for Qt."))) ;; disable failing tests: they need network (substitute* "tests/auto/auto.pro" (("integration_multiprocess proxy_multiprocess integration_external restart") - "integration_multiprocess")) - #t)))))) + "integration_multiprocess")))))))) (inputs (list qtbase-5 qtdeclarative)) (synopsis "Qt Remote Objects module") @@ -1500,14 +1483,13 @@ processes or computers."))) (define-public qtspeech (package (inherit qtsvg) (name "qtspeech") - (version "5.15.2") + (version "5.15.5") (source (origin (method url-fetch) (uri (qt5-urls name version)) (sha256 (base32 - "1xc3x3ghnhgchsg1kgj156yg69wn4rwjx8r28i1jd05hxjggn468")))) - + "0xskp9dzjy5nqszygk8gwvjyiylgynx5sq3nk2vi3zwgfdh5jpm4")))) (arguments (substitute-keyword-arguments (package-arguments qtsvg) ((#:tests? _ #f) #f))) ; TODO: Enable the tests @@ -1556,14 +1538,14 @@ using the Enchant spell-checking library.") (package (inherit qtsvg) (name "qtwebengine") - (version (package-version qtbase-5)) + (version "5.15.5") (source (origin (method url-fetch) (uri (qt5-urls name version)) (sha256 (base32 - "1q4idxdm81sx102xc12ixj0xpfx52d6vwvs3jpapnkyq8c7cmby8")) + "0zahr9w6rqdxwh2whsgk3fhcszs7wa9j95lq4sqi8xzin2wcgl17")) (modules '((ice-9 ftw) (ice-9 match) (srfi srfi-1) @@ -1599,6 +1581,13 @@ using the Enchant spell-checking library.") "third_party/boringssl/src/third_party/fiat" "third_party/breakpad" "third_party/brotli" + "third_party/catapult/common/py_vulcanize/py_vulcanize" + "third_party/catapult/common/py_vulcanize/third_party" + "third_party/catapult/third_party/beautifulsoup4" + "third_party/catapult/third_party/html5lib-python" + "third_party/catapult/third_party/polymer/components" + "third_party/catapult/tracing" + "third_party/catapult/tracing/third_party" "third_party/ced" "third_party/cld_3" "third_party/closure_compiler" @@ -1609,10 +1598,8 @@ using the Enchant spell-checking library.") "third_party/dav1d" "third_party/dawn" "third_party/devtools-frontend" - "third_party/devtools-frontend/src/front_end/third_party/fabricjs" - "third_party/devtools-frontend/src/front_end/third_party/lighthouse" - "third_party/devtools-frontend/src/front_end/third_party/wasmparser" - "third_party/devtools-frontend/src/third_party/axe-core" + "third_party/devtools-frontend/src/front_end/third_party" + "third_party/devtools-frontend/src/third_party/typescript" "third_party/emoji-segmenter" "third_party/ffmpeg" "third_party/googletest" @@ -1627,6 +1614,7 @@ using the Enchant spell-checking library.") "third_party/khronos" "third_party/leveldatabase" "third_party/libaddressinput" + "third_party/libavif" "third_party/libgifcodec" "third_party/libjingle_xmpp" "third_party/libjpeg_turbo" @@ -1640,6 +1628,7 @@ using the Enchant spell-checking library.") "third_party/libxml" "third_party/libxslt" "third_party/libyuv" + "third_party/lottie" "third_party/lss" "third_party/mako" "third_party/markupsafe" @@ -1647,6 +1636,7 @@ using the Enchant spell-checking library.") "third_party/metrics_proto" "third_party/modp_b64" "third_party/nasm" + "third_party/node" "third_party/one_euro_filter" "third_party/openh264/src/codec/api/svc" "third_party/opus" @@ -1671,15 +1661,16 @@ using the Enchant spell-checking library.") "third_party/skia/include/third_party/skcms/skcms.h" "third_party/skia/include/third_party/vulkan" "third_party/skia/third_party/skcms" - "third_party/skia/third_party/vulkanmemoryallocator" "third_party/smhasher" "third_party/snappy" "third_party/sqlite" "third_party/usb_ids" "third_party/usrsctp" + "third_party/vulkan_memory_allocator" "third_party/web-animations-js" "third_party/webrtc" - "third_party/webrtc/common_audio/third_party/fft4g" + "third_party/webrtc/common_audio/third_party/ooura/fft_size_128" + "third_party/webrtc/common_audio/third_party/ooura/fft_size_256" "third_party/webrtc/common_audio/third_party/spl_sqrt_floor" "third_party/webrtc/modules/third_party/fft" "third_party/webrtc/modules/third_party/g711" @@ -1690,7 +1681,7 @@ using the Enchant spell-checking library.") "third_party/widevine/cdm/widevine_cdm_common.h" "third_party/widevine/cdm/widevine_cdm_version.h" "third_party/woff2" - "third_party/yasm" + "third_party/xcbproto" "third_party/zlib" "url/third_party/mozilla" "v8/src/third_party/utf8-decoder" @@ -1763,16 +1754,19 @@ using the Enchant spell-checking library.") ;; Use relative header locations instead of hard coded ones. (substitute* - "base/third_party/dynamic_annotations/dynamic_annotations.c" + "base/third_party/dynamic_annotations/dynamic_annotations.c" (("base/third_party/valgrind") "valgrind")) (substitute* - "third_party/breakpad/breakpad/src/common/linux/libcurl_wrapper.h" + '("third_party/breakpad/breakpad/src/common/linux/http_upload.cc" + "third_party/breakpad/breakpad/src/common/linux/libcurl_wrapper.h") (("third_party/curl") "curl")) (substitute* - '("components/viz/common/gpu/vulkan_context_provider.h" - "components/viz/common/resources/resource_format_utils_vulkan.h" - "gpu/config/gpu_util.cc") - (("third_party/vulkan/include/") + '("components/viz/common/gpu/vulkan_context_provider.h" + "components/viz/common/resources/resource_format_utils.h" + "gpu/config/gpu_info_collector_win.cc" + "gpu/config/gpu_util.cc" + "gpu/config/vulkan_info.h") + (("third_party/vulkan_headers/include/") "")) ;; Replace Google Analytics bundle with an empty file and hope @@ -1792,6 +1786,7 @@ using the Enchant spell-checking library.") flex gperf ninja + node perl pkg-config python2-six @@ -1819,6 +1814,7 @@ using the Enchant spell-checking library.") libxcb libxcomposite libxcursor + libxkbfile libxi libxkbcommon ;; FIXME: libxml2 needs to built with icu support though it links to @@ -2052,7 +2048,7 @@ module provides support functions to the automatically generated code.") (define-public python-pyqt (package (name "python-pyqt") - (version "5.15.2") + (version "5.15.5") (source (origin (method url-fetch) @@ -2065,7 +2061,7 @@ module provides support functions to the automatically generated code.") (file-name (string-append "PyQt5-" version ".tar.gz")) (sha256 (base32 - "1z74295i69cha52llsqffzhb5zz7qnbjc64h8qg21l91jgf0harp")) + "0aya963kkmbwfwmpd0p6k85y4g7wl5zarjqxxfgir403zalbf4dl")) (patches (search-patches "pyqt-configure.patch")))) (build-system gnu-build-system) (native-inputs @@ -2143,14 +2139,14 @@ contain over 620 classes.") (define-public python-pyqt5-sip (package (name "python-pyqt5-sip") - (version "12.8.1") + (version "12.10.1") (source (origin (method url-fetch) (uri (pypi-uri "PyQt5_sip" version)) (sha256 (base32 - "1gg032ys4pccwkdzmdryadc9a4lq85nr05pag9swrsdykbdl9s9h")))) + "09771b6fdn0rx34l5a0wzcd899yd57zxp5sw3bsqhd25biwhiq4p")))) (build-system python-build-system) (arguments `(#:tests? #f)) ;; No test code. @@ -2162,7 +2158,7 @@ contain over 620 classes.") (define-public python-pyqtwebengine (package (name "python-pyqtwebengine") - (version "5.15.2") + (version "5.15.5") (source (origin (method url-fetch) @@ -2174,7 +2170,7 @@ contain over 620 classes.") "/PyQtWebEngine-" version ".tar.gz"))) (sha256 (base32 - "0d56ak71r14w4f9r96vaj34qcn2rbln3s6ildvvyc707fjkzwwjd")))) + "0hdr0g0rzlhsnylhfk826pq1lw8p9dqcr8yma2wy9dgjrj6n0ixb")))) (build-system gnu-build-system) (native-inputs (list python python-sip @@ -2820,7 +2816,7 @@ color-related widgets.") (define-public python-shiboken-2 (package (name "python-shiboken-2") - (version "5.15.2") + (version "5.15.5") (source (origin (method url-fetch) (uri (string-append "https://download.qt.io/official_releases" @@ -2829,7 +2825,7 @@ color-related widgets.") version ".tar.xz")) (sha256 (base32 - "060ljj1nzyp4zfz2vasbv2i7gs5rfkkjwxxbisd0fdw01d5m01mk")))) + "0cwvw6695215498rsbm2xzkwaxdr3w7zfvy4kc62c01k6pxs881r")))) (build-system cmake-build-system) (inputs (list clang-toolchain diff --git a/gnu/packages/rust.scm b/gnu/packages/rust.scm index 67dc5cdaf3..25472fefb0 100644 --- a/gnu/packages/rust.scm +++ b/gnu/packages/rust.scm @@ -4,7 +4,7 @@ ;;; Copyright © 2016 Nikita <nikita@n0.is> ;;; Copyright © 2017 Ben Woodcroft <donttrustben@gmail.com> ;;; Copyright © 2017, 2018 Nikolai Merinov <nikolai.merinov@member.fsf.org> -;;; Copyright © 2017, 2019, 2020, 2021 Efraim Flashner <efraim@flashner.co.il> +;;; Copyright © 2017, 2019-2022 Efraim Flashner <efraim@flashner.co.il> ;;; Copyright © 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr> ;;; Copyright © 2018 Danny Milosavljevic <dannym+a@scratchpost.org> ;;; Copyright © 2019 Ivan Petkov <ivanppetkov@gmail.com> @@ -99,6 +99,7 @@ ("armhf-linux" "armv7-unknown-linux-gnueabihf") ("aarch64-linux" "aarch64-unknown-linux-gnu") ("mips64el-linux" "mips64el-unknown-linux-gnuabi64") + ("riscv64-linux" "riscv64gc-unknown-linux-gnu") (_ (nix-system->gnu-triplet system)))) (define* (rust-uri version #:key (dist "static")) @@ -136,25 +137,26 @@ (file-name (git-file-name name (git-version version revision commit))) (sha256 (base32 - "0f7kh4n2663sn0z3xib8gzw0s97qpvwag40g2vs3bfjlrbpgi9z0"))))) + "0f7kh4n2663sn0z3xib8gzw0s97qpvwag40g2vs3bfjlrbpgi9z0")) + (patches (search-patches "mrustc-riscv64-support.patch"))))) -;;; Rust 1.39 is special in that it is built with mrustc, which shortens the +;;; Rust 1.54 is special in that it is built with mrustc, which shortens the ;;; bootstrap path. -(define rust-1.39 +(define rust-bootstrap (package (name "rust") - (version "1.39.0") + (version "1.54.0") (source (origin (method url-fetch) (uri (rust-uri version)) - (sha256 (base32 "0mwkc1bnil2cfyf6nglpvbn2y0zfbv44zfhsd5qg4c9rm6vgd8dl")) + (sha256 (base32 "0xk9dhfff16caambmwij67zgshd8v9djw6ha0fnnanlv7rii31dc")) (modules '((guix build utils))) - (snippet '(for-each delete-file-recursively - '("src/llvm-emscripten" - "src/llvm-project" - "vendor/jemalloc-sys/jemalloc"))) - (patches (search-patches "rustc-1.39.0-src.patch")) + (snippet + '(begin + (for-each delete-file-recursively + '("src/llvm-project")))) + (patches (search-patches "rustc-1.54.0-src.patch")) (patch-flags '("-p0")))) ;default is -p1 (outputs '("out" "cargo")) (properties '((timeout . 72000) ;20 hours @@ -162,12 +164,19 @@ (build-system gnu-build-system) (inputs `(("libcurl" ,curl) - ("libssh2" ,libssh2) - ("llvm" ,llvm-9) + ("llvm" ,llvm) ("openssl" ,openssl) ("zlib" ,zlib))) (native-inputs `(("bison" ,bison) + ;; A compiler bug in gcc 10/11/12/13 prevents us from using gcc-10.4. See: + ;; https://github.com/thepowersgang/mrustc/issues/266 + ;; https://gcc.gnu.org/bugzilla/show_bug.cgi?id=105860 + ("gcc" ,gcc-9) + ;; TODO: STARTFILE_PREFIX_SPEC is fixed on gcc<10 on core-updates. + ,@(if (target-riscv64?) + `(("gcc:lib" ,gcc-9 "lib")) + '()) ("flex" ,flex) ("pkg-config" ,pkg-config) ;; Required for the libstd sources. @@ -206,25 +215,24 @@ ;; to be at this location, and it simplifies things to make it ;; so. (symlink (getcwd) - (string-append "../mrustc/rustc-" ,version "-src")))) + (string-append "../mrustc/rustc-" ,version "-src")) + (with-output-to-file "dl-version" + (lambda _ + (format #t "~a~%" + ,version))))) (add-after 'setup-mrustc-sources 'patch-makefiles ;; This disables building the (unbundled) LLVM. (lambda* (#:key inputs parallel-build? #:allow-other-keys) - (let ((llvm (assoc-ref inputs "llvm")) - (job-spec (format #f "-j~a" - (if parallel-build? - (number->string (parallel-job-count)) - "1")))) + (let ((llvm (assoc-ref inputs "llvm"))) (with-directory-excursion "../mrustc" (substitute* '("minicargo.mk" "run_rustc/Makefile") ;; Use the system-provided LLVM. (("LLVM_CONFIG := .*") - (string-append "LLVM_CONFIG := " llvm "/bin/llvm-config\n")) - (("\\$\\(LLVM_CONFIG\\): .*") - "$(LLVM_CONFIG):\n") - (("\\$Vcd \\$\\(RUSTCSRC\\)build && \\$\\(MAKE\\).*") - "true\n")) + (string-append "LLVM_CONFIG := " llvm "/bin/llvm-config\n"))) + (substitute* "minicargo.mk" + ;; Do not try to fetch sources from the Internet. + (("@curl.*") "")) (substitute* "Makefile" ;; Patch date and git obtained version information. ((" -D VERSION_GIT_FULLHASH=.*") @@ -269,9 +277,6 @@ (setenv "CXX" "g++") ;; The Guix LLVM package installs only shared libraries. (setenv "LLVM_LINK_SHARED" "1") - ;; This is a workaround for - ;; https://github.com/thepowersgang/mrustc/issues/138. - (setenv "LIBSSH2_SYS_USE_PKG_CONFIG" "yes") ;; rustc still insists on having 'cc' on PATH in some places ;; (e.g. when building the 'test' library crate). (mkdir-p "/tmp/bin") @@ -283,22 +288,36 @@ (let* ((src-root (getcwd)) (job-count (if parallel-build? (parallel-job-count) - 1)) - (job-spec (string-append "-j" (number->string job-count)))) + 1))) ;; Adapted from: - ;; https://github.com/dtolnay/bootstrap/blob/master/build.sh. + ;; https://github.com/dtolnay/bootstrap/blob/master/build-1.54.0.sh. (chdir "../mrustc") - (setenv "MINICARGO_FLAGS" job-spec) + ;; Use PARLEVEL since both minicargo and mrustc use it + ;; to set the level of parallelism. + (setenv "PARLEVEL" (number->string job-count)) (setenv "CARGO_BUILD_JOBS" (number->string job-count)) + (display "Building mrustc...\n") + (apply invoke "make" make-flags) + + ;; This doesn't seem to build anything, but it + ;; sets additional minicargo flags. + (display "Building RUSTCSRC...\n") + (apply invoke "make" "RUSTCSRC" make-flags) + + ;; This probably doesn't need to be called explicitly. + (display "Building LIBS...\n") + (apply invoke "make" "-f" "minicargo.mk" "LIBS" make-flags) + (display "Building rustc...\n") (apply invoke "make" "-f" "minicargo.mk" "output/rustc" - job-spec make-flags) + make-flags) + (display "Building cargo...\n") (apply invoke "make" "-f" "minicargo.mk" "output/cargo" - job-spec make-flags) + make-flags) + + ;; This one isn't listed in the build script. (display "Rebuilding stdlib with rustc...\n") - ;; Note: invoking make with -j would cause a compiler error - ;; (unexpected panic). (apply invoke "make" "-C" "run_rustc" make-flags)))) (replace 'install (lambda* (#:key inputs outputs #:allow-other-keys) @@ -324,42 +343,38 @@ safety and thread safety guarantees.") (home-page "https://github.com/thepowersgang/mrustc") - ;; So far mrustc is (x86_64|aarch64)-only. It may support i686 soon: + ;; The intermediate generated code is known to be inefficient and + ;; therefore the build process needs 8GB of RAM while building. + ;; It may support i686 soon: ;; <https://github.com/thepowersgang/mrustc/issues/78>. - (supported-systems '("x86_64-linux" "aarch64-linux")) + (supported-systems '("x86_64-linux" "aarch64-linux" "riscv64-linux")) ;; Dual licensed. (license (list license:asl2.0 license:expat)))) -(define rust-1.40 +(define rust-1.55 (package (name "rust") - (version "1.40.0") + (version "1.55.0") (source (origin (method url-fetch) (uri (rust-uri version)) - (sha256 (base32 "1ba9llwhqm49w7sz3z0gqscj039m53ky9wxzhaj11z6yg1ah15yx")) + (sha256 (base32 "07l28f7grdmi65naq71pbmvdd61hwcpi40ry7kp7dy7m233rldxj")) (modules '((guix build utils))) - ;; llvm-emscripten is no longer bundled, as that codegen backend got - ;; removed. - (snippet '(for-each delete-file-recursively - '("src/llvm-project" - "vendor/jemalloc-sys/jemalloc"))))) + (snippet + '(begin + (for-each delete-file-recursively + '("src/llvm-project" + "vendor/tikv-jemalloc-sys/jemalloc")) + ;; Add support for riscv64-linux. + (substitute* "vendor/tikv-jemallocator/src/lib.rs" + ((" target_arch = \"s390x\"," all) + (string-append all "\n target_arch = \"riscv64\","))))))) (outputs '("out" "cargo")) (properties '((timeout . 72000) ;20 hours (max-silent-time . 18000))) ;5 hours (for armel) (build-system gnu-build-system) - ;; Rust 1.40 does not ship rustc-internal libraries by default (see - ;; rustc-dev-split). This means that librustc_driver.so is no longer - ;; available in lib/rustlib/$target/lib, which is the directory - ;; included in the runpath of librustc_codegen_llvm-llvm.so. This is - ;; detected by our validate-runpath phase as an error, but it is - ;; harmless as the codegen backend is loaded by librustc_driver.so - ;; itself, which must at that point have been already loaded. As such, - ;; we skip validating the runpath for Rust 1.40. Rust 1.41 stopped - ;; putting the codegen backend in a separate library, which makes this - ;; workaround only necessary for this release. (arguments `(#:validate-runpath? #f ;; Only the final Rust is tested, not the intermediate bootstrap ones, @@ -380,24 +395,16 @@ safety and thread safety guarantees.") (setenv "CC" (search-input-file inputs "/bin/gcc")) ;; The Guix LLVM package installs only shared libraries. (setenv "LLVM_LINK_SHARED" "1"))) + (add-after 'unpack 'set-linker-locale-to-utf8 + (lambda _ + (substitute* (find-files "." "^linker.rs$") + (("linker.env\\(\"LC_ALL\", \"C\"\\);") + "linker.env(\"LC_ALL\", \"en_US.UTF-8\");")))) (add-after 'unpack 'add-cc-shim-to-path (lambda _ (mkdir-p "/tmp/bin") (symlink (which "gcc") "/tmp/bin/cc") (setenv "PATH" (string-append "/tmp/bin:" (getenv "PATH"))))) - (add-after 'unpack 'neuter-tidy - ;; We often need to patch tests with various Guix-specific paths. - ;; This often increases the line length and makes tidy, rustc's - ;; style checker, complain. We could insert additional newlines or - ;; add an "// ignore-tidy-linelength" comment, but as an ignore - ;; comment must be used, both approaches are fragile due to - ;; upstream formatting changes. As such, disable running the - ;; linter during tests, since it's intended for rustc developers - ;; anyway. - (lambda _ - (substitute* "src/bootstrap/builder.rs" - ((".*::Tidy,.*") - "")))) (replace 'configure (lambda* (#:key inputs outputs #:allow-other-keys) (let* ((out (assoc-ref outputs "out")) @@ -443,13 +450,14 @@ ar = \"" binutils "/bin/ar" "\" [dist] ") port)))))) (replace 'build + ;; The standard library source location moved in this release. (lambda* (#:key parallel-build? #:allow-other-keys) (let ((job-spec (string-append "-j" (if parallel-build? (number->string (parallel-job-count)) "1")))) (invoke "./x.py" job-spec "build" "--stage=1" - "src/libstd" + "library/std" "src/tools/cargo")))) (replace 'install (lambda* (#:key outputs #:allow-other-keys) @@ -490,12 +498,12 @@ ar = \"" binutils "/bin/ar" "\" `(("cmake" ,cmake-minimal) ("pkg-config" ,pkg-config) ; For "cargo" ("python" ,python-wrapper) - ("rustc-bootstrap" ,rust-1.39) - ("cargo-bootstrap" ,rust-1.39 "cargo") + ("rustc-bootstrap" ,rust-bootstrap) + ("cargo-bootstrap" ,rust-bootstrap "cargo") ("which" ,which))) (inputs `(("jemalloc" ,jemalloc) - ("llvm" ,llvm-9) + ("llvm" ,llvm) ("openssl" ,openssl) ("libssh2" ,libssh2) ; For "cargo" ("libcurl" ,curl))) ; For "cargo" @@ -519,10 +527,10 @@ safety and thread safety guarantees.") ;; Dual licensed. (license (list license:asl2.0 license:expat)))) -(define rust-1.41 +(define rust-1.56 (let ((base-rust (rust-bootstrapped-package - rust-1.40 "1.41.1" - "0ws5x0fxv57fyllsa6025h3q6j9v3m8nb3syl4x0hgkddq0kvj9q"))) + rust-1.55 "1.56.1" + "04cmqx7nn63hzz7z27b2b0dj2qx18rck9ifvip43s6dampx8v2f3"))) (package (inherit base-rust) (arguments @@ -539,110 +547,6 @@ safety and thread safety guarantees.") (string-append name "\"" ,%cargo-reference-hash "\""))) (generate-all-checksums "vendor")))))))))) -(define rust-1.42 - (rust-bootstrapped-package - rust-1.41 "1.42.0" "0x9lxs82may6c0iln0b908cxyn1cv7h03n5cmbx3j1bas4qzks6j")) - -(define rust-1.43 - (rust-bootstrapped-package - rust-1.42 "1.43.0" "18akhk0wz1my6y9vhardriy2ysc482z0fnjdcgs9gy59kmnarxkm")) - -;; This version requires llvm <= 11. -(define rust-1.44 - (rust-bootstrapped-package - rust-1.43 "1.44.1" - "0ww4z2v3gxgn3zddqzwqya1gln04p91ykbrflnpdbmcd575n8bky")) - -(define rust-1.45 - (let ((base-rust (rust-bootstrapped-package - rust-1.44 "1.45.2" - "0273a1g3f59plyi1n0azf21qjzwml1yqdnj5z472crz37qggr8xp"))) - (package - (inherit base-rust) - (arguments - (substitute-keyword-arguments (package-arguments base-rust) - ((#:phases phases) - `(modify-phases ,phases - (add-after 'unpack 'set-linker-locale-to-utf8 - (lambda _ - (substitute* (find-files "." "^linker.rs$") - (("linker.env\\(\"LC_ALL\", \"C\"\\);") - "linker.env(\"LC_ALL\", \"en_US.UTF-8\");"))))))))))) - -(define rust-1.46 - (rust-bootstrapped-package - rust-1.45 "1.46.0" "0a17jby2pd050s24cy4dfc0gzvgcl585v3vvyfilniyvjrqknsid")) - -(define rust-1.47 - (let ((base-rust (rust-bootstrapped-package - rust-1.46 "1.47.0" - "07fqd2vp7cf1ka3hr207dnnz93ymxml4935vp74g4is79h3dz19i"))) - (package/inherit base-rust - (arguments - (substitute-keyword-arguments (package-arguments base-rust) - ((#:phases phases) - `(modify-phases ,phases - (replace 'build - ;; The standard library source location moved in this release. - (lambda* (#:key parallel-build? #:allow-other-keys) - (let ((job-spec (string-append - "-j" (if parallel-build? - (number->string (parallel-job-count)) - "1")))) - (invoke "./x.py" job-spec "build" "--stage=1" - "library/std" - "src/tools/cargo"))))))))))) - -(define rust-1.48 - (rust-bootstrapped-package - rust-1.47 "1.48.0" "0fz4gbb5hp5qalrl9lcl8yw4kk7ai7wx511jb28nypbxninkwxhf")) - -(define rust-1.49 - (rust-bootstrapped-package - rust-1.48 "1.49.0" "0yf7kll517398dgqsr7m3gldzj0iwsp3ggzxrayckpqzvylfy2mm")) - -(define rust-1.50 - (rust-bootstrapped-package - rust-1.49 "1.50.0" "0pjs7j62maiyvkmhp9zrxl528g2n0fphp4rq6ap7aqdv0a6qz5wm")) - -(define rust-1.51 - (rust-bootstrapped-package - rust-1.50 "1.51.0" "0ixqkqglv3isxbvl4ldr4byrkx692wghsz3fasy1pn5kr2prnsvs")) - -;;; The LLVM requiriment has been bumped to version 10 in Rust 1.52. Use the -;;; latest available. -(define rust-1.52 - (let ((base-rust (rust-bootstrapped-package - rust-1.51 "1.52.1" - "165zs3xzp9dravybwslqs1qhn35agp6wacmzpymqg3qfdni26vrs"))) - (package - (inherit base-rust) - (inputs (alist-replace "llvm" (list llvm-12) - (package-inputs base-rust)))))) - -(define rust-1.53 - (rust-bootstrapped-package - rust-1.52 "1.53.0" "1f95p259dfp5ca118bg107rj3rqwlswy65dxn3hg8sqgl4wwmxsw")) - -(define rust-1.54 - (let ((base-rust - (rust-bootstrapped-package - rust-1.53 - "1.54.0" "0xk9dhfff16caambmwij67zgshd8v9djw6ha0fnnanlv7rii31dc"))) - (package/inherit base-rust - (source - (origin - (inherit (package-source base-rust)) - (snippet '(delete-file-recursively "src/llvm-project"))))))) - -(define rust-1.55 - (rust-bootstrapped-package - rust-1.54 "1.55.0" "07l28f7grdmi65naq71pbmvdd61hwcpi40ry7kp7dy7m233rldxj")) - -(define rust-1.56 - (rust-bootstrapped-package - rust-1.55 "1.56.1" "04cmqx7nn63hzz7z27b2b0dj2qx18rck9ifvip43s6dampx8v2f3")) - (define rust-1.57 (let ((base-rust (rust-bootstrapped-package diff --git a/gnu/packages/sphinx.scm b/gnu/packages/sphinx.scm index bbb070ddf6..c68cc9c1b7 100644 --- a/gnu/packages/sphinx.scm +++ b/gnu/packages/sphinx.scm @@ -62,17 +62,17 @@ (define-public python-sphinx (package (name "python-sphinx") - (version "4.5.0") + (version "5.0.2") (source (origin (method url-fetch) (uri (pypi-uri "Sphinx" version)) (sha256 (base32 - "1rp28jryxwy24y8vpacclqihbizyi6b1s6id86pibvm46ybcmy3v")))) + "1c67w48509k07pa1q3rp93lpchy8hp6h5iqrc3r20msnly79g3mi")))) (build-system python-build-system) (arguments - `(#:phases + '(#:phases (modify-phases %standard-phases (replace 'check (lambda* (#:key tests? #:allow-other-keys) diff --git a/gnu/packages/video.scm b/gnu/packages/video.scm index 4118d8465e..68ab7c7143 100644 --- a/gnu/packages/video.scm +++ b/gnu/packages/video.scm @@ -1481,14 +1481,14 @@ quality and performance.") (define-public libva (package (name "libva") - (version "2.13.0") + (version "2.15.0") (source (origin (method url-fetch) (uri (string-append "https://github.com/intel/libva/releases/download/" version "/libva-" version ".tar.bz2")) (sha256 - (base32 "0q6l193x9whd80sjd5mx8cb7c0fcljb19nhfpla5h49nkzrq7lzs")))) + (base32 "1jhy8qzfp4ydbxs9qd9km7k5wq8r4s2vq20r1q07lgld8l4x93i5")))) (build-system gnu-build-system) (native-inputs (list pkg-config)) @@ -1500,27 +1500,24 @@ quality and performance.") mesa wayland)) (arguments - `(#:phases - (modify-phases %standard-phases - (add-before - 'build 'fix-dlopen-paths - (lambda* (#:key outputs #:allow-other-keys) - (let ((out (assoc-ref outputs "out"))) + (list + ;; Most drivers are in mesa's $prefix/lib/dri, so use that. (Can be + ;; overridden at run-time via LIBVA_DRIVERS_PATH.) + #:configure-flags + #~(list (string-append "--with-drivers-path=" + (search-input-directory %build-inputs "lib/dri"))) + ;; However, we can't write to mesa's store directory, so override the + ;; following make variable to install the dummy driver to libva's + ;; $prefix/lib/dri directory. + #:make-flags + #~(list (string-append "dummy_drv_video_ladir=" #$output "/lib/dri")) + #:phases + #~(modify-phases %standard-phases + (add-before 'build 'fix-dlopen-paths + (lambda _ (substitute* "va/drm/va_drm_auth_x11.c" (("\"libva-x11\\.so\\.%d\"") - (string-append "\"" out "/lib/libva-x11.so.%d\""))) - #t)))) - ;; Most drivers are in mesa's $prefix/lib/dri, so use that. (Can be - ;; overridden at run-time via LIBVA_DRIVERS_PATH.) - #:configure-flags - (list (string-append "--with-drivers-path=" - (assoc-ref %build-inputs "mesa") "/lib/dri")) - ;; However, we can't write to mesa's store directory, so override the - ;; following make variable to install the dummy driver to libva's - ;; $prefix/lib/dri directory. - #:make-flags - (list (string-append "dummy_drv_video_ladir=" - (assoc-ref %outputs "out") "/lib/dri")))) + (string-append "\"" #$output "/lib/libva-x11.so.%d\"")))))))) (home-page "https://www.freedesktop.org/wiki/Software/vaapi/") (synopsis "Video acceleration library") (description "The main motivation for VA-API (Video Acceleration API) is |