diff options
-rw-r--r-- | gnu/local.mk | 2 | ||||
-rw-r--r-- | gnu/packages/benchmark.scm | 4 | ||||
-rw-r--r-- | gnu/packages/browser-extensions.scm | 4 | ||||
-rw-r--r-- | gnu/packages/calendar.scm | 5 | ||||
-rw-r--r-- | gnu/packages/commencement.scm | 13 | ||||
-rw-r--r-- | gnu/packages/cpp.scm | 4 | ||||
-rw-r--r-- | gnu/packages/emulators.scm | 154 | ||||
-rw-r--r-- | gnu/packages/engineering.scm | 12 | ||||
-rw-r--r-- | gnu/packages/fcitx5.scm | 29 | ||||
-rw-r--r-- | gnu/packages/gcc.scm | 21 | ||||
-rw-r--r-- | gnu/packages/guile-xyz.scm | 29 | ||||
-rw-r--r-- | gnu/packages/linux.scm | 236 | ||||
-rw-r--r-- | gnu/packages/mes.scm | 64 | ||||
-rw-r--r-- | gnu/packages/patches/nyacc-binary-literals.patch | 29 | ||||
-rw-r--r-- | gnu/packages/patches/zig-0.15-fix-runpath.patch | 122 | ||||
-rw-r--r-- | gnu/packages/photo.scm | 57 | ||||
-rw-r--r-- | gnu/packages/python-build.scm | 16 | ||||
-rw-r--r-- | gnu/packages/python-xyz.scm | 7 | ||||
-rw-r--r-- | gnu/packages/suckless.scm | 296 | ||||
-rw-r--r-- | gnu/packages/tor-browsers.scm | 46 | ||||
-rw-r--r-- | gnu/packages/zig.scm | 182 | ||||
-rw-r--r-- | gnu/services/dict.scm | 1 | ||||
-rw-r--r-- | po/packages/POTFILES.in | 1 |
23 files changed, 835 insertions, 499 deletions
diff --git a/gnu/local.mk b/gnu/local.mk index 241f6425ab..34bfbb0d28 100644 --- a/gnu/local.mk +++ b/gnu/local.mk @@ -1946,7 +1946,6 @@ dist_patch_DATA = \ %D%/packages/patches/nvi-assume-preserve-path.patch \ %D%/packages/patches/nvi-dbpagesize-binpower.patch \ %D%/packages/patches/nvi-db4.patch \ - %D%/packages/patches/nyacc-binary-literals.patch \ %D%/packages/patches/obs-modules-location.patch \ %D%/packages/patches/ocaml-ctypes-test-oo.patch \ %D%/packages/patches/ocaml-multiple-definitions.patch \ @@ -2510,6 +2509,7 @@ dist_patch_DATA = \ %D%/packages/patches/zig-0.14-fix-runpath.patch \ %D%/packages/patches/zig-0.14-use-baseline-cpu-by-default.patch \ %D%/packages/patches/zig-0.14-use-system-paths.patch \ + %D%/packages/patches/zig-0.15-fix-runpath.patch \ %D%/packages/patches/zsh-egrep-failing-test.patch \ %D%/packages/patches/zuo-bin-sh.patch \ %D%/packages/patches/zxing-cpp-1.2.0-gcc-14.patch \ diff --git a/gnu/packages/benchmark.scm b/gnu/packages/benchmark.scm index c20722245f..6f705e760c 100644 --- a/gnu/packages/benchmark.scm +++ b/gnu/packages/benchmark.scm @@ -233,7 +233,7 @@ This can give a much better understanding of the command's performance.") (define-public benchmark (package (name "benchmark") - (version "1.5.6") + (version "1.9.4") (source (origin (method git-fetch) (uri (git-reference @@ -242,7 +242,7 @@ This can give a much better understanding of the command's performance.") (file-name (git-file-name name version)) (sha256 (base32 - "030g4d8vpn2442dsap0qw86lsw7xfl36k0x0x9bn0vvm11qvjn8c")))) + "05b5sf0dmgr5s9dbvasg8rndh754kkc4chni6ynqa1h8m5q0kg1z")))) (build-system cmake-build-system) (native-inputs `(("googletest-source" ,(package-source googletest)) diff --git a/gnu/packages/browser-extensions.scm b/gnu/packages/browser-extensions.scm index 934466f951..5fc5d385d0 100644 --- a/gnu/packages/browser-extensions.scm +++ b/gnu/packages/browser-extensions.scm @@ -328,7 +328,7 @@ with the @uref{https://keepassxc.org, KeePassXC} password manager.") (define noscript (package (name "noscript") - (version "13.0.8") + (version "13.0.9") (source (origin (method url-fetch/zipbomb) (uri (string-append @@ -336,7 +336,7 @@ with the @uref{https://keepassxc.org, KeePassXC} password manager.") ".xpi")) (sha256 (base32 - "1p6jrz22jjzcqlbza2v8nix2sx9xjgl43vmm43hwrf9w13z8r5wx")))) + "1xbisx3xqak9aj7nb2lh94an6yfldsl6a2g2qc87vxi1zwdbcnjj")))) (build-system copy-build-system) (properties '((addon-id . "{73a6fe31-595d-460b-a920-fcc0f8843232}"))) (arguments diff --git a/gnu/packages/calendar.scm b/gnu/packages/calendar.scm index da8b558c6f..ae3047f13b 100644 --- a/gnu/packages/calendar.scm +++ b/gnu/packages/calendar.scm @@ -14,6 +14,7 @@ ;;; Copyright © 2022 Maxim Cournoyer <maxim.cournoyer@gmail.com> ;;; Copyright © 2025 Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org> ;;; Copyright © 2025 Sharlatan Hellseher <sharlatanus@gmail.com> +;;; Copyright © 2025 Ashish SHUKLA <ashish.is@lostca.se> ;;; ;;; This file is part of GNU Guix. ;;; @@ -278,7 +279,7 @@ command-line interface} and a @acronym{TUI, textual user interface} named (define-public remind (package (name "remind") - (version "5.0.5") + (version "6.0.1") (source (origin (method url-fetch) @@ -289,7 +290,7 @@ command-line interface} and a @acronym{TUI, textual user interface} named ".") ".tar.gz")) (sha256 - (base32 "0yc0lfrl0zzc1bn5fkigararg44bdryis7vjnm8vzs21as9r0dbz")))) + (base32 "01zhs8lgncpm1229s7b49fhnwwnxyyan845gb47ppkfn03vvc187")))) (properties `((output-synopsis "tcl" "graphical front-end to Remind calendar program"))) (build-system gnu-build-system) diff --git a/gnu/packages/commencement.scm b/gnu/packages/commencement.scm index 1971417a95..90cb365c42 100644 --- a/gnu/packages/commencement.scm +++ b/gnu/packages/commencement.scm @@ -3750,17 +3750,8 @@ is the GNU Compiler Collection.") ;; automatically "redirects" them to 'gcc-toolchain'. (deprecated-package "gcc" gcc-toolchain)) - -(define-public gdc-toolchain-10 - (package (inherit (make-gcc-toolchain gdc-10)) - (synopsis "Complete GCC tool chain for D lang development") - (description "This package provides a complete GCC tool chain for -D lang development to be installed in user profiles. This includes -gdc, as well as libc (headers and binaries, plus debugging symbols -in the @code{debug} output), and binutils."))) - -(define-public gdc-toolchain-11 - (package (inherit (make-gcc-toolchain gdc-11)) +(define-public gdc-toolchain + (package (inherit (make-gcc-toolchain gdc)) (synopsis "Complete GCC tool chain for D lang development") (description "This package provides a complete GCC tool chain for D lang development to be installed in user profiles. This includes diff --git a/gnu/packages/cpp.scm b/gnu/packages/cpp.scm index e060795da9..a12dcb9d91 100644 --- a/gnu/packages/cpp.scm +++ b/gnu/packages/cpp.scm @@ -2041,8 +2041,10 @@ other values of screen objects, by setting their values as the tween starting point and then, after each tween step, plugging back the result.") (license license:expat))) -;;; This older LTS release is kept for tensorflow. (define-public abseil-cpp-20200923.3 + ;; "guix refresh -l" shows no dependents of this package, but by input + ;; rewriting, grpc-1.16.1 depends on it; + ;; in turn this is an input to hyperledger-iroha and tensorflow. (package (name "abseil-cpp") (version "20200923.3") diff --git a/gnu/packages/emulators.scm b/gnu/packages/emulators.scm index bb0bd898e1..f86fcedd56 100644 --- a/gnu/packages/emulators.scm +++ b/gnu/packages/emulators.scm @@ -4352,72 +4352,96 @@ on a Commodore C64, C128 etc.") (license license:zlib))) (define-public flycast - (package - (name "flycast") - (version "2.4") - (source - (origin - (method git-fetch) - (uri (git-reference - (url "https://github.com/flyinghead/flycast") - (commit (string-append "v" version)) - ;; There are many bundled packages here included as git - ;; submodules. Removing many of them would require patching the - ;; source code and repository layout. - (recursive? #t))) - (file-name (git-file-name name version)) - (sha256 - (base32 "0ainy75gkrvilcm89hq6wq9md41w0mxgp6l27q5fzrxxykpjh6ym")) - (modules '((guix build utils))) - (snippet #~(begin - (substitute* "CMakeLists.txt" - (("add_subdirectory\\(core/deps/Vulkan-Headers\\)") - "find_package(VulkanHeaders)")) - (with-directory-excursion "core/deps" - (for-each delete-file-recursively - '("SDL" - "Spout" - "Syphon" - "Vulkan-Headers" - "breakpad" - "discord-rpc" - "libzip" - "oboe"))))))) - (build-system cmake-build-system) - (arguments - (list - #:tests? #f ; no test suite - #:configure-flags - #~(list "-DUSE_ALSA=ON" - "-DUSE_BREAKPAD=OFF" - "-DUSE_DX11=OFF" - "-DUSE_DX9=OFF" - ;; The USE_HOST_GLSLANG option is not implemented correctly. - ;; (see: https://github.com/flyinghead/flycast/issues/1843) - "-DUSE_HOST_GLSLANG=OFF" - "-DUSE_HOST_LIBZIP=ON" - "-DUSE_HOST_SDL=ON" - "-DUSE_LIBAO=ON" - "-DUSE_LUA=ON" - "-DUSE_PULSEAUDIO=ON" - "-DUSE_VULKAN=ON"))) - (inputs (list alsa-lib - ao - curl - glslang - libzip - lua - miniupnpc - pulseaudio - sdl2 - spirv-tools - vulkan-headers - pkg-config)) - (home-page "https://github.com/flyinghead/flycast") - (synopsis "Sega Dreamcast, Naomi, Naomi 2, and Atomiswave emulator") - (description "Flycast is a multi-platform Sega Dreamcast, Naomi, Naomi 2, + ;; Use a git snapshot as the latest 2.5 release is still on an older glslang + ;; version that doesn't build with GCC 14. + (let ((commit "33833cfd1ed2d94d907223442fdb8cdafd8d5d80") + (revision "0")) + (package + (name "flycast") + (version (git-version "2.5" revision commit)) + (source + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/flyinghead/flycast") + (commit commit) + ;; There are many bundled packages here included as git + ;; submodules, but removing many of them would require patching + ;; the source code and repository layout (see: <>). + (recursive? #t))) + (file-name (git-file-name name version)) + (sha256 + (base32 "16vwhw33zhq2b8mpg863cn7sz4f04wxjz2650jgqjv7i5lkdd1g9")) + (modules '((guix build utils))) + (snippet #~(begin + ;; TODO: Uncomment after our vulkan-headers + ;; are update to 1.3.261.0 or newer. + ;; (substitute* "CMakeLists.txt" + ;; (("add_subdirectory\\(core/deps/Vulkan-Headers\\)") + ;; "find_package(VulkanHeaders)")) + (with-directory-excursion "core/deps" + (for-each + delete-file-recursively + '("SDL" + "Spout" + "Syphon" + ;; TODO: Uncomment after our vulkan-headers + ;; are update to 1.3.261.0 or newer. + ;;"Vulkan-Headers" + "breakpad" + "discord-rpc" + ;; XXX: The libretro build requires the bundled + ;; libzip, which it uses to produce a + ;; static library. + ;;"libzip" + "oboe"))))))) + (build-system cmake-build-system) + (arguments + (list + #:tests? #f ;no test suite + #:configure-flags + #~(list "-DUSE_ALSA=ON" + "-DUSE_BREAKPAD=OFF" + "-DUSE_DX11=OFF" + "-DUSE_DX9=OFF" + ;; The USE_HOST_GLSLANG option is not implemented correctly. + ;; (see: https://github.com/flyinghead/flycast/issues/1843) + "-DUSE_HOST_GLSLANG=OFF" + "-DUSE_HOST_LIBZIP=ON" + "-DUSE_HOST_SDL=ON" + "-DUSE_LIBAO=ON" + "-DUSE_LIBCDIO=ON" + "-DUSE_LUA=ON" + "-DUSE_PULSEAUDIO=ON" + "-DUSE_VULKAN=ON"))) + (native-inputs (list pkg-config)) + (inputs (list alsa-lib + ao + curl + glslang + libcdio + libzip + lua + miniupnpc + pulseaudio + sdl2 + spirv-tools + ;; TODO: Uncomment after vulkan-headers + ;; is updated to 1.3.261.0 or newer. + ;;vulkan-headers + )) + (home-page "https://github.com/flyinghead/flycast") + (synopsis "Sega Dreamcast, Naomi, Naomi 2, and Atomiswave emulator") + (description "Flycast is a multi-platform Sega Dreamcast, Naomi, Naomi 2, and Atomiswave emulator derived from reicast.") - (license license:gpl2+))) + (license license:gpl2+)))) + +(define-public libretro-flycast + (package/inherit flycast + (name "libretro-flycast") + (arguments (substitute-keyword-arguments (package-arguments flycast) + ((#:configure-flags flags) + #~(cons "-DLIBRETRO=ON" #$flags)))))) (define-public freedisksysrom ;; There is no release; use the latest commit. diff --git a/gnu/packages/engineering.scm b/gnu/packages/engineering.scm index e77193ecf2..aa21eec21d 100644 --- a/gnu/packages/engineering.scm +++ b/gnu/packages/engineering.scm @@ -1308,7 +1308,7 @@ Emacs).") (define-public kicad (package (name "kicad") - (version "9.0.3") + (version "9.0.4") (source (origin (method git-fetch) (uri (git-reference @@ -1316,7 +1316,7 @@ Emacs).") (commit version))) (sha256 (base32 - "19rij2hz79rsmikdbygxzll2l7im5qi3i6phz4sdiagkc5k8b3rb")) + "0736hhf8rs4g8cyhy3xyamyr4iszlvf18a1hwfpcv6qxy0hcbdcv")) (file-name (git-file-name name version)))) (build-system cmake-build-system) (arguments @@ -1425,7 +1425,7 @@ electrical diagrams), gerbview (viewing Gerber files) and others.") (file-name (git-file-name name version)) (sha256 (base32 - "186nmy222m2k8snwk5i2f9igamflj9avfnhv5ksrbhx5wyrx7fy2")))) + "00cnras41sp5kpvaqqymygis08q5kmsix18bi8hlhhw6yk525vnp")))) (build-system cmake-build-system) (arguments `(#:configure-flags (list "-DBUILD_FORMATS=html") @@ -1456,7 +1456,7 @@ electrical diagrams), gerbview (viewing Gerber files) and others.") (file-name (git-file-name name version)) (sha256 (base32 - "0r9aimyrv7p4ykqnwb9ac3fd0dv11zmv2ll6qkmm5s875s35hhfl")))) + "0qm1zq8bq6r7l1pssb9isnm5a03kixf5p3x7670ap4xwligdn3wg")))) (build-system cmake-build-system) (arguments `(#:tests? #f)) ; no tests exist @@ -1485,7 +1485,7 @@ libraries.") (file-name (git-file-name name version)) (sha256 (base32 - "1ysnj0973y05nn016hxrghccfv65cas772i369xflay0sns8anqf")))) + "15kdg661pq79npwb4j28hllqrvwygsz5rblzbdishiikysrba8wl")))) (synopsis "Official KiCad footprint libraries") (description "This package contains the official KiCad footprint libraries."))) @@ -1502,7 +1502,7 @@ libraries.") (file-name (git-file-name name version)) (sha256 (base32 - "0njv4y31k62qhcx0xxcl94p34jgna8z4bs3hwjwzjfmp7ddl2dyx")))) + "0ngf0k5f0a073k5v4q78zk6gj6xjjxzbb6551qf9k9wy8bsmgr2k")))) (synopsis "Official KiCad 3D model libraries") (description "This package contains the official KiCad 3D model libraries."))) diff --git a/gnu/packages/fcitx5.scm b/gnu/packages/fcitx5.scm index 5648fa8f4a..55be426345 100644 --- a/gnu/packages/fcitx5.scm +++ b/gnu/packages/fcitx5.scm @@ -5,6 +5,7 @@ ;;; Copyright © 2022 dan <i@dan.games> ;;; Copyright © 2024 Zheng Junjie <873216071@qq.com> ;;; Copyright © 2024 Charles <charles@charje.net> +;;; Copyright © 2025 VnPower <vnpower@loang.net> ;;; ;;; This file is part of GNU Guix. ;;; @@ -28,6 +29,7 @@ #:use-module (guix git-download) #:use-module (guix build-system cmake) #:use-module (guix build-system copy) + #:use-module (guix build-system qt) #:use-module ((guix licenses) #:prefix license:) #:use-module (gnu packages anthy) #:use-module (gnu packages boost) @@ -413,6 +415,33 @@ the Anthy input method.") backend.") (license license:gpl3+))) +(define-public fcitx5-unikey + (package + (name "fcitx5-unikey") + (version "5.1.7") + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/fcitx/fcitx5-unikey") + (commit version))) + (sha256 + (base32 "0j82r63vn1rmjz2m92x6xksn548mmkiwcjkziqh6dp6aysxszvxx")) + (file-name (git-file-name name version)))) + (build-system qt-build-system) + (arguments + (list #:qtbase qtbase)) + (inputs + (list gettext-minimal + fcitx5 + fcitx5-qt)) + (native-inputs + (list extra-cmake-modules + pkg-config)) + (home-page "https://github.com/fcitx/fcitx5-unikey") + (synopsis "Unikey (Vietnamese Input Method) engine support for Fcitx5") + (description "This provides Unikey input method support for Fcitx5.") + (license license:gpl2+))) + (define-public fcitx5-chewing (package (name "fcitx5-chewing") diff --git a/gnu/packages/gcc.scm b/gnu/packages/gcc.scm index caeba83735..8ce59145ec 100644 --- a/gnu/packages/gcc.scm +++ b/gnu/packages/gcc.scm @@ -1285,12 +1285,7 @@ as the 'native-search-paths' field." "gfortran" '("fortran") %generic-search-paths))) -(define-public gdc-10 - (hidden-package - (custom-gcc gcc-10 "gdc" '("d") - %generic-search-paths))) - -(define-public gdc-11 +(define-public gdc-11 ;kept for bootstrapping (hidden-package (custom-gcc gcc-11 "gdc" '("d") %generic-search-paths))) @@ -1298,8 +1293,18 @@ as the 'native-search-paths' field." ;;; Alias tracking the latest GDC version. (define-public gdc (hidden-package - (custom-gcc gcc "gdc" '("d") - %generic-search-paths))) + (let ((base (custom-gcc gcc + "gdc" '("d") + %generic-search-paths))) + (package + (inherit base) + (native-inputs + (modify-inputs (package-native-inputs base) + ;; Since GCC 12, GDC is self-hosted, requiring a version of itself + ;; to build. + ;; XXX: GCC must be prepended as well to avoid an issue with the C++ + ;; headers ordering. + (prepend gcc gdc-11))))))) (define-public gm2 (hidden-package diff --git a/gnu/packages/guile-xyz.scm b/gnu/packages/guile-xyz.scm index fd5f137dab..1a7edd1e51 100644 --- a/gnu/packages/guile-xyz.scm +++ b/gnu/packages/guile-xyz.scm @@ -163,14 +163,14 @@ (define-public artanis (package (name "artanis") - (version "1.2.2") + (version "1.3.0") (source (origin (method url-fetch) (uri (string-append "mirror://gnu/artanis/artanis-" version ".tar.gz")) (sha256 (base32 - "013rs623075bbf824hf6jxng0kwbmg587l45fis9mmpq5168kspq")) + "16cwjyl0ykz6r7vvczrwaik6y4pc0fwc0hvwskfbgv9z71j2alzi")) (modules '((guix build utils))) (snippet '(begin @@ -6795,15 +6795,15 @@ tools.") (define-public guile-eris (package (name "guile-eris") - (version "1.0.0") + (version "1.2.0") (source (origin (method git-fetch) (uri (git-reference - (url "https://codeberg.org/eris/guile-eris.git") - (commit (string-append "v" version)))) + (url "https://codeberg.org/eris/guile-eris.git") + (commit (string-append "v" version)))) (file-name (git-file-name name version)) - (sha256 (base32 "0d4wbjwwaxk0zn5gjhl86qhvk1aisgzp1vnvy4xbvrv5ydqpgyqm")))) + (sha256 (base32 "03z9dr725kdj57gmkwnx6v6p8nkf0xbn359q2dnn4b29x3dxf39x")))) (build-system gnu-build-system) (arguments '()) (native-inputs @@ -6816,8 +6816,14 @@ tools.") guile-quickcheck)) (inputs (list guile-3.0)) (propagated-inputs - (list guile-sodium)) - (synopsis "Guile implementation of the Encoding for Robust Immutable Storage (ERIS)") + (list guile-sodium + guile-coap + guile-fibers + guile-sqlite3 + guile-zstd + guile-cbor)) + (synopsis "Guile implementation of the Encoding for Robust Immutable +Storage (ERIS)") (description "Guile-ERIS is a Guile implementation of the @url{http://purl.org/eris, Encoding for Robust Immutable Storage (ERIS)}. ERIS allows arbitrary content @@ -7009,9 +7015,12 @@ schedulers.") (("dynamic-link \"libyaml\"") (format #f "dynamic-link \"~a/lib/libyaml\"" (assoc-ref inputs "libyaml"))))))))) - (native-inputs (list gcc guile-3.0 nyacc)) + ;; guile-libyaml does not work with nyacc-2.02.2. See + ;; https://github.com/mwette/guile-libyaml/issues/7 for upstream bug + ;; report. Hence, we use the older nyacc-1.08.1. + (native-inputs (list gcc guile-3.0 nyacc-1.08.1)) (inputs (list libyaml)) - (propagated-inputs (list guile-bytestructures nyacc)) + (propagated-inputs (list guile-bytestructures nyacc-1.08.1)) (home-page "https://github.com/mwette/guile-libyaml") (synopsis "Guile wrapper for libyaml") (description diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm index 36cef84b14..ed8789be0e 100644 --- a/gnu/packages/linux.scm +++ b/gnu/packages/linux.scm @@ -34,7 +34,7 @@ ;;; Copyright © 2018 Vasile Dumitrascu <va511e@yahoo.com> ;;; Copyright © 2019 Tim Gesthuizen <tim.gesthuizen@yahoo.de> ;;; Copyright © 2019 mikadoZero <mikadozero@yandex.com> -;;; Copyright © 2019-2025 Maxim Cournoyer <maxim.cournoyer@gmail.com> +;;; Copyright © 2019-2025 Maxim Cournoyer <maxim@guixotic.coop> ;;; Copyright © 2019 Stefan Stefanović <stefanx2ovic@gmail.com> ;;; Copyright © 2019-2022 Brice Waegeneire <brice@waegenei.re> ;;; Copyright © 2019 Kei Kebreau <kkebreau@posteo.net> @@ -8103,124 +8103,128 @@ not as a replacement for it.") license:gpl3+)))) ; everything else (define-public hotspot - (package - (name "hotspot") - (version "1.5.1") - (source (origin - (method git-fetch) - (uri (git-reference - (url "https://github.com/KDAB/hotspot") - (commit (string-append "v" version)) - ;; Include the bundled perfparser and PrefixTickLabels - ;; libraries, which are to be used in source form. - (recursive? #t))) - (file-name (git-file-name name version)) - (sha256 - (base32 - "04k2rvf2lgi8hp7dzqzn65fcd2lsiylwr04d44q75j0wvgbjjv1v")))) - (build-system qt-build-system) - (arguments - (list - ;; As mentioned in the option help text, the KAuth helper cannot be - ;; installed to a custom prefix and the build fails with "file cannot - ;; create directory: /polkit-1/actions. Maybe need administrative" - ;; (see: https://bugs.kde.org/show_bug.cgi?id=363678). - #:configure-flags #~(list "-DINSTALL_KAUTH_HELPER=OFF" - "-DQT6_BUILD=ON") - #:qtbase qtbase - ;; The 'tst_models' and 'tst_callgraphgenerator' fail, with - ;; the later seemingly requiring sudo or access to the kernel - ;; trace points. - #:test-exclude - (string-append - "(" - (string-join - ;; The 'tst_models' expected output doesn't exactly - ;; match. - '("tst_models" - ;; The 'tst_callgraphgenerator' perf invocation - ;; fails when run in the build container. - "tst_callgraphgenerator" - ;; The 'tst_perfparser' test requires sudo/access - ;; to the kernel scheduler trace points. - "tst_perfparser") - "|") - ")") - #:phases - #~(modify-phases %standard-phases - (add-after 'unpack 'patch-perfparser - ;; XXX: This phase is copied from qt-creator: keep them in sync! - (lambda* (#:key inputs #:allow-other-keys) - ;; perfparser attempts to dynamically load the demangle - ;; libraries; use their absolute file name to avoid having to - ;; set LD_LIBRARY_PATH. - (let ((librustc_demangle.so - (with-exception-handler (lambda (ex) - (if (search-error? ex) - #f - (raise-exception ex))) - (lambda () - (search-input-file inputs "lib/librustc_demangle.so")) - #:unwind? #t))) - (substitute* "3rdparty/perfparser/app/demangler.cpp" - (("loadDemangleLib\\(QStringLiteral\\(\"rustc_demangle\")" - all) - (if librustc_demangle.so - (format #f "loadDemangleLib(QStringLiteral(~s)" - librustc_demangle.so) - all)) ;no rustc_demangle; leave unchanged - (("loadDemangleLib\\(QStringLiteral\\(\"d_demangle\")") - (format #f "loadDemangleLib(QStringLiteral(~s)" - (search-input-file inputs - "lib/libd_demangle.so"))))))) - (add-after 'unpack 'path-paths - (lambda* (#:key inputs #:allow-other-keys) - (substitute* "src/perfoutputwidgetkonsole.cpp" - (("\"tail\"") - (format #f "~s" (search-input-file inputs "bin/tail")))) - (substitute* "src/perfrecord.cpp" - (("\"perf( )?\"" _ space) - (string-append "\"" (search-input-file inputs "bin/perf") - (or space "") "\"")))))))) - (native-inputs - (list extra-cmake-modules - vulkan-headers)) - (inputs - (append - (list coreutils-minimal - d-demangler - elfutils - karchive - kconfig - kcoreaddons - kddockwidgets - kgraphviewer - ki18n - kio - kiconthemes - kitemmodels - kitemviews - knotifications - kparts - ksyntaxhighlighting - kwindowsystem - libxkbcommon - perf - qtdeclarative - qtsvg - solid - threadweaver - `(,zstd "lib")) - (if (supported-package? rust-rustc-demangle-capi-0.1) - (list rust-rustc-demangle-capi-0.1) - '()))) - (home-page "https://github.com/KDAB/hotspot") - (synopsis "Performance analysis GUI for Linux perf") - (description "Hotspot is a standalone GUI for performance data analysis. + ;; Use the latest git commit as it includes unreleased fixes for the test + ;; suite. + (let ((commit "5cec69301a3f34ada86ce9fe01a9538b04b3cf7c") + (revision "0")) + (package + (name "hotspot") + (version (git-version "1.5.1" revision commit)) + (source (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/KDAB/hotspot") + (commit commit) + ;; Include the bundled perfparser and PrefixTickLabels + ;; libraries, which are to be used in source form. + (recursive? #t))) + (file-name (git-file-name name version)) + (sha256 + (base32 + "115gskjdcb1q3mgrnv1qcdrhxabjzl1hhkpk1klk67ayicsk1ym6")))) + (build-system qt-build-system) + (arguments + (list + ;; As mentioned in the option help text, the KAuth helper cannot be + ;; installed to a custom prefix and the build fails with "file cannot + ;; create directory: /polkit-1/actions. Maybe need administrative" + ;; (see: https://bugs.kde.org/show_bug.cgi?id=363678). + #:configure-flags #~(list "-DINSTALL_KAUTH_HELPER=OFF" + "-DQT6_BUILD=ON") + #:qtbase qtbase + ;; The 'tst_models' and 'tst_callgraphgenerator' fail, with + ;; the later seemingly requiring sudo or access to the kernel + ;; trace points. + #:test-exclude + (string-append + "(" + (string-join + ;; The 'tst_models' expected output doesn't exactly + ;; match. + '("tst_models" + ;; The 'tst_callgraphgenerator' perf invocation + ;; fails when run in the build container. + "tst_callgraphgenerator" + ;; The 'tst_perfparser' test requires sudo/access + ;; to the kernel scheduler trace points. + "tst_perfparser") + "|") + ")") + #:phases + #~(modify-phases %standard-phases + (add-after 'unpack 'patch-perfparser + ;; XXX: This phase is copied from qt-creator: keep them in sync! + (lambda* (#:key inputs #:allow-other-keys) + ;; perfparser attempts to dynamically load the demangle + ;; libraries; use their absolute file name to avoid having to + ;; set LD_LIBRARY_PATH. + (let ((librustc_demangle.so + (with-exception-handler (lambda (ex) + (if (search-error? ex) + #f + (raise-exception ex))) + (lambda () + (search-input-file inputs "lib/librustc_demangle.so")) + #:unwind? #t))) + (substitute* "3rdparty/perfparser/app/demangler.cpp" + (("loadDemangleLib\\(QStringLiteral\\(\"rustc_demangle\")" + all) + (if librustc_demangle.so + (format #f "loadDemangleLib(QStringLiteral(~s)" + librustc_demangle.so) + all)) ;no rustc_demangle; leave unchanged + (("loadDemangleLib\\(QStringLiteral\\(\"d_demangle\")") + (format #f "loadDemangleLib(QStringLiteral(~s)" + (search-input-file inputs + "lib/libd_demangle.so"))))))) + (add-after 'unpack 'path-paths + (lambda* (#:key inputs #:allow-other-keys) + (substitute* "src/perfoutputwidgetkonsole.cpp" + (("\"tail\"") + (format #f "~s" (search-input-file inputs "bin/tail")))) + (substitute* "src/perfrecord.cpp" + (("\"perf( )?\"" _ space) + (string-append "\"" (search-input-file inputs "bin/perf") + (or space "") "\"")))))))) + (native-inputs + (list extra-cmake-modules + vulkan-headers)) + (inputs + (append + (list coreutils-minimal + d-demangler + elfutils + karchive + kconfig + kcoreaddons + kddockwidgets + kgraphviewer + ki18n + kio + kiconthemes + kitemmodels + kitemviews + knotifications + kparts + ksyntaxhighlighting + kwindowsystem + libxkbcommon + perf + qtdeclarative + qtsvg + solid + threadweaver + `(,zstd "lib")) + (if (supported-package? rust-rustc-demangle-capi-0.1) + (list rust-rustc-demangle-capi-0.1) + '()))) + (home-page "https://github.com/KDAB/hotspot") + (synopsis "Performance analysis GUI for Linux perf") + (description "Hotspot is a standalone GUI for performance data analysis. It aims to be similar to KCachegrind, but for data collected with @command{perf}, a profiler for use with the kernel Linux. Its main feature is graphically visualizing a @file{perf.data} file.") - (license (list license:gpl2+ license:gpl3+)))) ;dual licensed + (license (list license:gpl2+ license:gpl3+))))) ;dual licensed (define-public ecryptfs-utils (package diff --git a/gnu/packages/mes.scm b/gnu/packages/mes.scm index b11e6ec19c..43897862ef 100644 --- a/gnu/packages/mes.scm +++ b/gnu/packages/mes.scm @@ -6,6 +6,7 @@ ;;; Copyright © 2021 Xinglu Chen <public@yoctocell.xyz> ;;; Copyright © 2021 Arun Isaac <arunisaac@systemreboot.net> ;;; Copyright © 2025 Felix Lechner <felix.lechner@lease-up.com> +;;; Copyright © 2025 Andreas Enge <andreas@enge.fr> ;;; ;;; This file is part of GNU Guix. ;;; @@ -40,61 +41,9 @@ #:use-module (guix packages) #:use-module (guix utils)) -(define-public nyacc-0.86 - ;; Nyacc used for bootstrap. - (package - (name "nyacc") - (version "0.86.0") - (source (origin - (method url-fetch) - (uri (string-append "mirror://savannah/nyacc/" - name "-" version ".tar.gz")) - (patches (search-patches "nyacc-binary-literals.patch")) - (sha256 - (base32 - "0lkd9lyspvhxlfs0496gsllwinh62jk9wij6gpadvx9gwz6yavd9")))) - (build-system gnu-build-system) - (native-inputs (list guile-2.2)) - (synopsis "LALR(1) Parser Generator in Guile") - (description - "NYACC is an LALR(1) parser generator implemented in Guile. -The syntax and nomenclature should be considered not stable. It comes with -extensive examples, including parsers for the Javascript and C99 languages.") - (home-page "https://savannah.nongnu.org/projects/nyacc") - (license (list gpl3+ lgpl3+)))) - -(define-public nyacc-0.99 - (package - (inherit nyacc-0.86) - (version "0.99.0") - (source (origin - (method url-fetch) - (uri (string-append "mirror://savannah/nyacc/nyacc-" - version ".tar.gz")) - (sha256 - (base32 - "0hl5qxx19i4x1r0839sxm19ziqq65g4hy97yik81cc2yb9yvgyv3")) - (modules '((guix build utils))) - (snippet - '(begin - (substitute* (find-files "." "^Makefile\\.in$") - (("^SITE_SCM_DIR =.*") - "SITE_SCM_DIR = \ -@prefix@/share/guile/site/@GUILE_EFFECTIVE_VERSION@\n") - (("^SITE_SCM_GO_DIR =.*") - "SITE_SCM_GO_DIR = \ -@prefix@/lib/guile/@GUILE_EFFECTIVE_VERSION@/site-ccache\n") - (("^INFODIR =.*") - "INFODIR = @prefix@/share/info\n") - (("^DOCDIR =.*") - "DOCDIR = @prefix@/share/doc/$(PACKAGE_TARNAME)\n")) - #t)))) - (native-inputs (list pkg-config)) - (inputs (list guile-2.2)))) - (define-public nyacc-1.08.1 (package - (inherit nyacc-0.99) + (name "nyacc") (version "1.08.1") (source (origin (method url-fetch) @@ -109,17 +58,24 @@ extensive examples, including parsers for the Javascript and C99 languages.") (("GUILE_GLOBAL_SITE=\\$prefix.*") "GUILE_GLOBAL_SITE=\ $prefix/share/guile/site/$GUILE_EFFECTIVE_VERSION\n"))))) + (build-system gnu-build-system) + (native-inputs (list pkg-config)) (inputs (list guile-3.0)) (propagated-inputs (list guile-bytestructures)) + (home-page "https://savannah.nongnu.org/projects/nyacc") + (synopsis "LALR(1) Parser Generator in Guile") (description "@acronym{NYACC, Not Yet Another Compiler Compiler} is set of Guile modules for generating parsers and lexical analyzers. It provides sample parsers, pretty-printers using SXML trees as an intermediate representation, a decent C parser and an `FFI Helper' tool to help create Guile Scheme bindings for C-based libraries. It also provides (partially implemented) compilers based on these -parsers to allow execution with Guile as extension languages."))) +parsers to allow execution with Guile as extension languages.") + (license (list gpl3+ lgpl3+)))) (define-public nyacc-1.00.2 + ;; The source of this package is used for bootstrapping in + ;; commencement.scm. Otherwise it could be removed. (package (inherit nyacc-1.08.1) (version "1.00.2") diff --git a/gnu/packages/patches/nyacc-binary-literals.patch b/gnu/packages/patches/nyacc-binary-literals.patch deleted file mode 100644 index 8159d74032..0000000000 --- a/gnu/packages/patches/nyacc-binary-literals.patch +++ /dev/null @@ -1,29 +0,0 @@ -From 6a08014b77bf435f025ecdac08396580b85f159a Mon Sep 17 00:00:00 2001 -From: Jan Nieuwenhuizen <janneke@gnu.org> -Date: Sat, 8 Sep 2018 20:22:45 +0200 -Subject: [PATCH] fix binary literals. - ---- - module/nyacc/lex.scm | 3 ++- - 1 file changed, 2 insertions(+), 1 deletion(-) - -diff --git a/module/nyacc/lex.scm b/module/nyacc/lex.scm -index 2ec9895..b205212 100644 ---- a/module/nyacc/lex.scm -+++ b/module/nyacc/lex.scm -@@ -345,10 +345,11 @@ - ((char-numeric? ch) (iter chl '$fixed ba 1 ch)) - ((char=? #\. ch) (iter (cons ch chl) #f ba 15 (read-char))) - (else #f))) -- ((10) ;; allow x after 0 -+ ((10) ;; allow x, b after 0 - (cond - ((eof-object? ch) (iter chl ty ba 5 ch)) - ((char=? #\x ch) (iter (cons ch chl) ty 16 1 (read-char))) -+ ((char=? #\b ch) (iter (cons ch chl) ty 2 1 (read-char))) - (else (iter chl ty ba 1 ch)))) - ((15) ;; got `.' only - (cond --- -2.18.0 - diff --git a/gnu/packages/patches/zig-0.15-fix-runpath.patch b/gnu/packages/patches/zig-0.15-fix-runpath.patch new file mode 100644 index 0000000000..7216c97b57 --- /dev/null +++ b/gnu/packages/patches/zig-0.15-fix-runpath.patch @@ -0,0 +1,122 @@ +From d35c341322f6e84607350058007bd5be3d1d294a Mon Sep 17 00:00:00 2001 +From: Hilton Chain <hako@ultrarare.space> +Date: Fri, 29 Nov 2024 14:13:46 +0800 +Subject: [PATCH] Fix RUNPATH issue. + +Add needed libraries and libc to RUNPATH when CROSS_LIBRARY_PATH or LIBRARY_PATH +is set. +--- + lib/std/Build/Step/Compile.zig | 2 ++ + src/link/Elf.zig | 7 +++++++ + src/link/Lld.zig | 7 +++++++ + src/main.zig | 34 +++++++++++++++++++++++++++++++++- + 4 files changed, 49 insertions(+), 1 deletion(-) + +diff --git a/lib/std/Build/Step/Compile.zig b/lib/std/Build/Step/Compile.zig +index 79d3694c02..7f6bddbea6 100644 +--- a/lib/std/Build/Step/Compile.zig ++++ b/lib/std/Build/Step/Compile.zig +@@ -794,6 +794,8 @@ fn runPkgConfig(compile: *Compile, lib_name: []const u8) !PkgConfigResult { + try zig_cflags.append(arg); + } else if (mem.startsWith(u8, arg, wl_rpath_prefix)) { + try zig_cflags.appendSlice(&[_][]const u8{ "-rpath", arg[wl_rpath_prefix.len..] }); ++ } else if (mem.startsWith(u8, arg, "-Wl,-rpath=")) { ++ try zig_libs.appendSlice(&[_][]const u8{ "-L", arg["-Wl,-rpath=".len..] }); + } else if (b.debug_pkg_config) { + return compile.step.fail("unknown pkg-config flag '{s}'", .{arg}); + } +diff --git a/src/link/Elf.zig b/src/link/Elf.zig +index 99d0ad71b0..8017f4c088 100644 +--- a/src/link/Elf.zig ++++ b/src/link/Elf.zig +@@ -988,6 +988,13 @@ fn dumpArgvInit(self: *Elf, arena: Allocator) !void { + try argv.appendSlice(gpa, &.{ "-rpath", rpath }); + } + ++ if (std.zig.system.NativePaths.isGuix(arena) and comp.config.link_libc and comp.config.link_mode == .dynamic) { ++ if (self.base.comp.libc_installation) |libc_installation| { ++ try argv.append(gpa, "-rpath"); ++ try argv.append(gpa, libc_installation.crt_dir.?); ++ } ++ } ++ + try argv.appendSlice(gpa, &.{ + "-z", + try std.fmt.allocPrint(arena, "stack-size={d}", .{self.base.stack_size}), +diff --git a/src/link/Lld.zig b/src/link/Lld.zig +index 48872f7077..814f661692 100644 +--- a/src/link/Lld.zig ++++ b/src/link/Lld.zig +@@ -1071,6 +1071,13 @@ fn elfLink(lld: *Lld, arena: Allocator) !void { + } + } + ++ if (std.zig.system.NativePaths.isGuix(arena) and comp.config.link_libc and link_mode == .dynamic) { ++ if (comp.libc_installation) |libc_installation| { ++ try argv.append("-rpath"); ++ try argv.append(libc_installation.crt_dir.?); ++ } ++ } ++ + if (have_dynamic_linker and + (comp.config.link_libc or comp.root_mod.resolved_target.is_explicit_dynamic_linker)) + { +diff --git a/src/main.zig b/src/main.zig +index 02b1b8f84b..ddc4ae8014 100644 +--- a/src/main.zig ++++ b/src/main.zig +@@ -3910,7 +3910,7 @@ fn createModule( + create_module.want_native_include_dirs = true; + } + +- if (create_module.each_lib_rpath orelse resolved_target.is_native_os) { ++ if (create_module.each_lib_rpath orelse false) { + try create_module.rpath_list.ensureUnusedCapacity(arena, create_module.lib_directories.items.len); + for (create_module.lib_directories.items) |lib_directory| { + create_module.rpath_list.appendAssumeCapacity(lib_directory.path.?); +@@ -3982,6 +3982,28 @@ fn createModule( + else => {}, + }; + ++ if (std.zig.system.NativePaths.isGuix(arena)) { ++ for (create_module.link_inputs.items) |link_input| { ++ if (link_input.path()) |lib| { ++ const lib_name = lib.sub_path; ++ if (Compilation.classifyFileExt(lib_name) == .shared_library) { ++ if (fs.path.isAbsolute(lib_name)) { ++ const lib_dir_path = fs.path.dirname(lib_name).?; ++ try create_module.rpath_list.append(arena, lib_dir_path); ++ continue; ++ } ++ for (create_module.lib_directories.items) |lib_dir| { ++ const lib_dir_path = lib_dir.path.?; ++ if (try libPathExists(arena, lib_dir_path, lib_name)) { ++ try create_module.rpath_list.append(arena, lib_dir_path); ++ break; ++ } ++ } ++ } ++ } ++ } ++ } ++ + create_module.resolved_options = Compilation.Config.resolve(create_module.opts) catch |err| switch (err) { + error.WasiExecModelRequiresWasi => fatal("only WASI OS targets support execution model", .{}), + error.SharedMemoryIsWasmOnly => fatal("only WebAssembly CPU targets support shared memory", .{}), +@@ -7633,3 +7655,13 @@ fn addLibDirectoryWarn2( + .path = path, + }); + } ++ ++fn libPathExists(arena: Allocator, lib_dir_path: []const u8, lib_name: []const u8) !bool { ++ const lib_path = try std.fmt.allocPrint(arena, "{s}{s}{s}", .{ ++ lib_dir_path, ++ fs.path.sep_str, ++ lib_name, ++ }); ++ fs.cwd().access(lib_path, .{}) catch return false; ++ return true; ++} +-- +2.50.1 + diff --git a/gnu/packages/photo.scm b/gnu/packages/photo.scm index 33990bc2eb..98192f34ea 100644 --- a/gnu/packages/photo.scm +++ b/gnu/packages/photo.scm @@ -36,6 +36,7 @@ #:use-module (guix build-system gnu) #:use-module (guix build-system meson) #:use-module (guix build-system perl) + #:use-module (guix build-system pyproject) #:use-module (guix build-system python) #:use-module (guix gexp) #:use-module (guix download) @@ -514,17 +515,41 @@ scene to produce an image that looks much like a tone-mapped image.") (base32 "1lwf3cwldvh9qfmh3w7nqqildfmxx2i5f5bn0vr8y6qc5kh7a1s9")))) (build-system cmake-build-system) (arguments - `(,@(if (any (cute string-prefix? <> (or (%current-system) - (%current-target-system))) - '("x86_64" "i686")) - ;; SSE and SSE2 are supported only on Intel processors. - '() - '(#:configure-flags '("-DBUILD_FOR_SSE=OFF" "-DBUILD_FOR_SSE2=OFF"))) - #:tests? #f)) ; There are no tests to run. + (list + #:imported-modules `(,@%cmake-build-system-modules + ,@%pyproject-build-system-modules) + #:modules '((guix build cmake-build-system) + ((guix build pyproject-build-system) #:prefix py:) + (guix build utils)) + #:configure-flags + (if (any (cute string-prefix? <> (or (%current-system) + (%current-target-system))) + '("x86_64" "i686")) + ;; SSE and SSE2 are supported only on Intel processors. + #~'() + #~'("-DBUILD_FOR_SSE=OFF" "-DBUILD_FOR_SSE2=OFF")) + #:tests? #f ; There are no tests to run. + #:phases + #~(modify-phases %standard-phases + (add-after 'unpack 'fix-egg + (lambda _ + (substitute* "apps/CMakeLists.txt" + ;; Prevent creation of Python egg. + (("\\$\\{SETUP_PY\\} install") + "${SETUP_PY} install --single-version-externally-managed --root=/")))) + (add-after 'install 'python-wrap + (lambda* (#:key inputs outputs #:allow-other-keys) + (for-each (lambda (program) + (wrap-program (search-input-file outputs program) + `("GUIX_PYTHONPATH" ":" prefix + (,(getenv "GUIX_PYTHONPATH") + ,(py:site-packages inputs outputs))))) + (list "bin/lensfun-update-data" + "bin/lensfun-add-adapter"))))))) (native-inputs (list pkg-config)) (inputs - (list glib)) + (list bash-minimal glib python)) (home-page "https://lensfun.github.io/") (synopsis "Library to correct optical lens defects with a lens database") (description "Digital photographs are not ideal. Of course, the better is @@ -678,9 +703,19 @@ and enhance them.") (list #:tests? #f ;Tests are only examples #:configure-flags - #~(list "-DUSE_BUNDLED_LIBRAW=OFF" - "-DBINARY_PACKAGE_BUILD=ON") - #:build-type "Release")) ;Rawspeed fails on default 'RelWithDebInfo' + #~(list "-DUSE_BUNDLED_LIBRAW=OFF" + "-DBINARY_PACKAGE_BUILD=ON") + #:build-type "Release" ;Rawspeed fails on default 'RelWithDebInfo' + #:phases + #~(modify-phases %standard-phases + (add-after 'unpack 'libOpenCL-path + (lambda* (#:key inputs #:allow-other-keys) + ;; Statically link to libOpenCL. + (substitute* "./src/common/dlopencl.c" + (("\"libOpenCL\"") + (string-append "\"" + (search-input-file inputs "/lib/libOpenCL.so") + "\"")))))))) (native-inputs (list cmocka desktop-file-utils diff --git a/gnu/packages/python-build.scm b/gnu/packages/python-build.scm index b5ad5e7519..d3b31b05c7 100644 --- a/gnu/packages/python-build.scm +++ b/gnu/packages/python-build.scm @@ -4,7 +4,7 @@ ;;; Copyright © 2016 Leo Famulari <leo@famulari.name> ;;; Copyright © 2020, 2023 Marius Bakke <marius@gnu.org> ;;; Copyright © 2020 Tanguy Le Carrour <tanguy@bioneland.org> -;;; Copyright © 2018, 2021, 2022, 2023 Maxim Cournoyer <maxim.cournoyer@gmail.com> +;;; Copyright © 2018, 2021-2023, 2025 Maxim Cournoyer <maxim@guixotic.coop> ;;; Copyright © 2019 Vagrant Cascadian <vagrant@debian.org> ;;; Copyright © 2021 Tobias Geerinckx-Rice <me@tobias.gr> ;;; Copyright © 2020, 2021, 2022, 2023 Ricardo Wurmus <rekado@elephly.net> @@ -252,6 +252,20 @@ Included are implementations of: @end enumerate\n") (license license:psfl))) +(define-public python-typing-extensions-next + (package + (inherit python-typing-extensions) + (version "4.15.0") + (source + (origin + (method url-fetch) + (uri (pypi-uri "typing_extensions" version)) + (sha256 + (base32 "0rhlhs28jndgp9fghdhidn6g7xiwx8vvihxbxhlgl4ncfg8lishc")))) + (native-inputs + (modify-inputs (package-native-inputs python-typing-extensions) + (replace "python-flit-core" python-flit-core-next))))) + ;;; ;;; Python builder packages. diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm index 96cbe0b958..bedcd86954 100644 --- a/gnu/packages/python-xyz.scm +++ b/gnu/packages/python-xyz.scm @@ -6787,7 +6787,7 @@ palettes.") (propagated-inputs ;; Youtube-dl is a python package which is imported in the file ;; "backend_youtube_dl.py", therefore it needs to be propagated. - (list youtube-dl)) + (list yt-dlp)) (home-page "https://np1.github.io/pafy/") (synopsis "Retrieve YouTube content and metadata") (description @@ -8960,7 +8960,7 @@ ecosystem, but can naturally be used also by other projects.") (define-public python-robotframework (package (name "python-robotframework") - (version "7.2.2") + (version "7.3.2") (source (origin (method git-fetch) ; no tests in the PyPI archive @@ -8969,7 +8969,7 @@ ecosystem, but can naturally be used also by other projects.") (commit (string-append "v" version)))) (file-name (git-file-name name version)) (sha256 - (base32 "1a34dv5gpaiqbddblfnirp1ja2a1069n9nifasn4g26kcj69fpra")))) + (base32 "0azis3dj7lfiwrr5gr1gr78z5m05vvl8n20rw3bz93s05z94h5i7")))) (outputs '("out" "doc")) (build-system pyproject-build-system) (arguments @@ -9009,6 +9009,7 @@ ecosystem, but can naturally be used also by other projects.") python-jsonschema python-pygments python-rellu + python-typing-extensions-next python-setuptools `(,python "tk") ;used when building the HTML doc python-wheel)) diff --git a/gnu/packages/suckless.scm b/gnu/packages/suckless.scm index acbffe3bf9..f2f667ff5d 100644 --- a/gnu/packages/suckless.scm +++ b/gnu/packages/suckless.scm @@ -62,6 +62,7 @@ #:use-module (guix gexp) #:use-module (guix git-download) #:use-module ((guix licenses) #:prefix license:) + #:use-module (guix scripts) #:use-module (guix utils) #:use-module (guix packages)) @@ -78,14 +79,15 @@ (base32 "1mpfrvn122lnaqid1pi99ckpxd6x679b0w91pl003xmdwsfdbcly")))) (build-system gnu-build-system) (arguments - `(#:tests? #f ; no check target - #:make-flags - (list - (string-append "CC=" ,(cc-for-target)) - (string-append "PREFIX=" %output)) - #:phases - (modify-phases %standard-phases - (delete 'configure)))) ; no configure script + (list + #:tests? #f ; no check target + #:make-flags + #~(list + (string-append "CC=" #$(cc-for-target)) + (string-append "PREFIX=" #$output)) + #:phases + #~(modify-phases %standard-phases + (delete 'configure)))) ; no configure script (home-page "https://tools.suckless.org/scroll/") (synopsis "Scroll-back buffer program for st") (description "Scroll is a program that provides a scroll back buffer for @@ -95,37 +97,36 @@ terminal like @code{st}.") (define-public tabbed (package (name "tabbed") - (version "0.6") + (version "0.9") (source (origin (method url-fetch) (uri (string-append "https://dl.suckless.org/tools/tabbed-" version ".tar.gz")) (sha256 - (base32 "0hhwckyzvsj9aim2l6m69wmvl2n7gzd6b1ly8qjnlpgcrcxfllbn")))) + (base32 "1a0842lw666cnx5mx2xqqrad4ipvbz4wxad3pxpyc6blgd2qgkqa")))) (build-system gnu-build-system) (arguments - `(#:tests? #f ; no check target - #:phases - (modify-phases %standard-phases - (add-after 'unpack 'patch - (lambda* (#:key inputs outputs #:allow-other-keys) - (substitute* "config.mk" - (("/usr/local") - (assoc-ref outputs "out")) - (("/usr/X11R6") - (assoc-ref inputs "libx11")) - (("/usr/include/freetype2") - (string-append (assoc-ref inputs "freetype") - "/include/freetype2")) - (("CC = cc") - (string-append "CC = " ,(cc-for-target)))))) - (delete 'configure)))) ; no configure script + (list + #:tests? #f ; no check target + #:phases + #~(modify-phases %standard-phases + (add-after 'unpack 'patch + (lambda* (#:key inputs outputs #:allow-other-keys) + (substitute* "Makefile" + (("/usr/local") #$output) + (("/usr/X11R6") #$(this-package-input "libx11")) + (("/usr/include/freetype2") + (string-append #$(this-package-input "freetype") + "/include/freetype2")) + (("\\$\\{CC\\}") + (string-append #$(cc-for-target)))))) + (delete 'configure)))) ; no configure script (inputs - `(("fontconfig" ,fontconfig) - ("freetype" ,freetype) - ("libx11" ,libx11) - ("libxft" ,libxft))) + (list fontconfig + freetype + libx11 + libxft)) (home-page "https://tools.suckless.org/tabbed/") (synopsis "Tab interface for application supporting Xembed") (description "Tabbed is a generic tabbed frontend to xembed-aware @@ -212,12 +213,14 @@ It provides the following features: "0nncvzyipvkkd7zlgzwbjygp82frzs2hvbnk71gxf671np607y94")))) (build-system gnu-build-system) (arguments - `(#:tests? #f ; no check target - #:make-flags (list (string-append "CC=" ,(cc-for-target)) - (string-append "PREFIX=" %output)) - #:phases - (modify-phases %standard-phases - (delete 'configure)))) ; no configure script + (list + #:tests? #f ; no check target + #:make-flags + #~(list (string-append "CC=" #$(cc-for-target)) + (string-append "PREFIX=" #$output)) + #:phases + #~(modify-phases %standard-phases + (delete 'configure)))) ; no configure script (synopsis "Command line video editing utilities") (home-page "https://tools.suckless.org/blind/") (description @@ -228,53 +231,49 @@ a custom raw video format with a simple container.") (define-public dwm (package (name "dwm") - (version "6.5") + (version "6.6") + (synopsis "Dynamic Window Manager") (source (origin - (method url-fetch) - (uri (string-append "https://dl.suckless.org/dwm/dwm-" - version ".tar.gz")) - (sha256 - (base32 "0acpl05rg6rg6nrg3rv4kp388iqzp1n6dhin30a97yzjm6zrxmr1")))) + (method url-fetch) + (uri (string-append "https://dl.suckless.org/dwm/dwm-" + version ".tar.gz")) + (sha256 + (base32 + "18q0zjvzsvpm76p2x1xlw163d8wbq44z41n9w94prh46jdnjrz3w")))) (build-system gnu-build-system) (arguments - `(#:tests? #f - #:make-flags (list (string-append "FREETYPEINC=" - (assoc-ref %build-inputs "freetype") - "/include/freetype2")) - #:phases - (modify-phases %standard-phases - (replace 'configure - (lambda _ - (substitute* "Makefile" (("\\$\\{CC\\}") "gcc")) - #t)) - (replace 'install - (lambda* (#:key outputs #:allow-other-keys) - (let ((out (assoc-ref outputs "out"))) + (list + #:tests? #f + #:make-flags + #~(list + (string-append "FREETYPEINC=" + #$(this-package-input "freetype") + "/include/freetype2")) + #:phases + #~(modify-phases %standard-phases + (replace 'configure + (lambda _ + (substitute* "Makefile" (("\\$\\{CC\\}") #$(cc-for-target))))) + (replace 'install + (lambda _ (invoke "make" "install" - (string-append "DESTDIR=" out) "PREFIX=")))) - (add-after 'build 'install-xsession - (lambda* (#:key outputs #:allow-other-keys) - ;; Add a .desktop file to xsessions. - (let* ((output (assoc-ref outputs "out")) - (xsessions (string-append output "/share/xsessions"))) - (mkdir-p xsessions) - (with-output-to-file - (string-append xsessions "/dwm.desktop") - (lambda _ - (format #t - "[Desktop Entry]~@ - Name=dwm~@ - Comment=Dynamic Window Manager~@ - Exec=~a/bin/dwm~@ - TryExec=~@*~a/bin/dwm~@ - Icon=~@ - Type=Application~%" - output))) - #t)))))) + (string-append "DESTDIR=" #$output) "PREFIX="))) + (add-after 'build 'install-xsession + (lambda _ + ;; Add a .desktop file to xsessions. + (let ((apps (string-append #$output "/share/xsessions"))) + (mkdir-p apps) + (make-desktop-entry-file + (string-append apps "/dwm.desktop") + #:name "dwm" + #:generic-name #$synopsis + #:exec (string-append #$output "/bin/dwm %U") + #:comment + `(("en" ,#$synopsis) + (#f ,#$synopsis))))))))) (inputs (list freetype libx11 libxft libxinerama)) (home-page "https://dwm.suckless.org/") - (synopsis "Dynamic window manager") (description "dwm is a dynamic window manager for X. It manages windows in tiled, monocle and floating layouts. All of the layouts can be applied dynamically, @@ -284,25 +283,27 @@ optimising the environment for the application in use and the task performed.") (define-public dmenu (package (name "dmenu") - (version "5.3") + (version "5.4") (source (origin (method url-fetch) (uri (string-append "https://dl.suckless.org/tools/dmenu-" version ".tar.gz")) (sha256 (base32 - "0pvr6da1v7hmbnacpgxcxv1sakg1nckmw347xhwrhx1dzpk573qs")))) + "0lyldkxshbgh7alz7a50l167pk1d4lcb2rhhhvz81aj710mcxflg")))) (build-system gnu-build-system) (arguments - `(#:tests? #f ; no tests - #:make-flags - (list (string-append "CC=" ,(cc-for-target)) - (string-append "PREFIX=" %output) - (string-append "FREETYPEINC=" - (assoc-ref %build-inputs "freetype") - "/include/freetype2")) - #:phases - (modify-phases %standard-phases (delete 'configure)))) + (list + #:tests? #f ; no tests + #:make-flags + #~(list + (string-append "CC=" #$(cc-for-target)) + (string-append "PREFIX=" #$output) + (string-append "FREETYPEINC=" + #$(this-package-input "freetype") + "/include/freetype2")) + #:phases + #~(modify-phases %standard-phases (delete 'configure)))) (inputs (list freetype libxft libx11 libxinerama)) (home-page "https://tools.suckless.org/dmenu/") @@ -368,31 +369,31 @@ numbers of user-defined menu items efficiently.") (define-public st (package (name "st") - (version "0.9.2") + (version "0.9.3") (source (origin (method url-fetch) (uri (string-append "https://dl.suckless.org/st/st-" version ".tar.gz")) (sha256 - (base32 "0js9z5kn8hmpxzfmb2g6zsy28zkpg88j3wih5wixc89b8x7ms8bb")))) + (base32 "16v4dsjrsh5jwah38ygg8808zc536szwxj1qxm6kswgdrnmzxncy")))) (build-system gnu-build-system) (arguments - `(#:tests? #f ; no tests - #:make-flags - (list (string-append "CC=" ,(cc-for-target)) - (string-append "TERMINFO=" - (assoc-ref %outputs "out") - "/share/terminfo") - (string-append "PREFIX=" %output)) - #:phases - (modify-phases %standard-phases - (delete 'configure)))) + (list + #:tests? #f ;no tests + #:make-flags + #~(list + (string-append "CC=" #$(cc-for-target)) + (string-append "TERMINFO=" #$output "/share/terminfo") + (string-append "PREFIX=" #$output)) + #:phases + #~(modify-phases %standard-phases + (delete 'configure)))) (inputs - `(("libx11" ,libx11) - ("libxft" ,libxft) - ("fontconfig" ,fontconfig) - ("freetype" ,freetype))) + (list libx11 + libxft + fontconfig + freetype)) (native-inputs (list ncurses ;provides tic program pkg-config)) @@ -504,27 +505,27 @@ Vim bindings and Xresource compatibility.") (base32 "0mrj0kp01bwrgrn4v298g81h6zyq64ijsg790di68nm21f985rbj")))) (build-system glib-or-gtk-build-system) (arguments - `(#:tests? #f ; no tests - #:make-flags - (list (string-append "CC=" ,(cc-for-target)) - (string-append "PREFIX=" %output)) - #:phases - (modify-phases %standard-phases - (delete 'configure) - ;; Use the right file name for dmenu and xprop. - (add-before 'build 'set-dmenu-and-xprop-file-name - (lambda* (#:key inputs #:allow-other-keys) - (substitute* "config.def.h" - (("dmenu") (search-input-file inputs "/bin/dmenu")) - (("xprop") (search-input-file inputs "/bin/xprop"))) - #t))))) + (list + #:tests? #f ; no tests + #:make-flags + #~(list (string-append "CC=" #$(cc-for-target)) + (string-append "PREFIX=" #$output)) + #:phases + #~(modify-phases %standard-phases + (delete 'configure) + ;; Use the right file name for dmenu and xprop. + (add-before 'build 'set-dmenu-and-xprop-file-name + (lambda* (#:key inputs #:allow-other-keys) + (substitute* "config.def.h" + (("dmenu") (search-input-file inputs "/bin/dmenu")) + (("xprop") (search-input-file inputs "/bin/xprop")))))))) (inputs - `(("dmenu" ,dmenu) - ("gcr" ,gcr-3) - ("glib-networking" ,glib-networking) - ("gsettings-desktop-schemas" ,gsettings-desktop-schemas) - ("webkitgtk" ,webkitgtk-with-libsoup2) - ("xprop" ,xprop))) + (list dmenu + gcr-3 + glib-networking + gsettings-desktop-schemas + webkitgtk-with-libsoup2 + xprop)) (native-inputs (list pkg-config)) (home-page "https://surf.suckless.org/") @@ -550,30 +551,31 @@ point surf to another URI by setting its XProperties.") "0cxysz5lp25mgww73jl0mgip68x7iyvialyzdbriyaff269xxwvv")))) (build-system gnu-build-system) (arguments - `(#:phases (modify-phases %standard-phases - (delete 'configure) ;no configuration - (add-before 'build 'patch-farbfeld - (lambda* (#:key inputs #:allow-other-keys) - (substitute* "config.def.h" - (("2ff") (search-input-file inputs "/bin/2ff"))))) - (add-after 'install 'install-doc - (lambda* (#:key outputs #:allow-other-keys) - (let* ((out (assoc-ref outputs "out")) - (doc (string-append out "/share/doc/" ,name "-" - ,(package-version this-package)))) - (install-file "README.md" doc))))) - #:tests? #f ;no test suite - #:make-flags - (let ((pkg-config (lambda (flag) - (string-append "$(shell pkg-config " flag " " - "xft fontconfig x11 libpng)")))) - (list (string-append "CC=" - ,(cc-for-target)) - (string-append "PREFIX=" %output) - (string-append "INCS=-I. " - (pkg-config "--cflags")) - (string-append "LIBS=" - (pkg-config "--libs") " -lm"))))) + (list + #:phases + #~(modify-phases %standard-phases + (delete 'configure) ;no configuration + (add-before 'build 'patch-farbfeld + (lambda* (#:key inputs #:allow-other-keys) + (substitute* "config.def.h" + (("2ff") (search-input-file inputs "/bin/2ff"))))) + (add-after 'install 'install-doc + (lambda _ + (install-file "README.md" + (string-append + #$output "/share/doc/" + #$name + "-" + #$(package-version this-package)))))) + #:tests? #f ;no test suite + #:make-flags + #~(let ((pkg-config (lambda (flag) + (string-append "$(shell pkg-config " flag " " + "xft fontconfig x11 libpng)")))) + (list (string-append "CC=" #$(cc-for-target)) + (string-append "PREFIX=" #$output) + (string-append "INCS=-I. " (pkg-config "--cflags")) + (string-append "LIBS=" (pkg-config "--libs") " -lm"))))) (native-inputs (list pkg-config)) (inputs (list farbfeld libpng libx11 libxft fontconfig)) (synopsis "Plain-text presentation tool") diff --git a/gnu/packages/tor-browsers.scm b/gnu/packages/tor-browsers.scm index 116d25875a..12763a99ca 100644 --- a/gnu/packages/tor-browsers.scm +++ b/gnu/packages/tor-browsers.scm @@ -72,7 +72,6 @@ #:use-module (gnu packages python) #:use-module (gnu packages rust) #:use-module (gnu packages rust-apps) - #:use-module (gnu packages sqlite) #:use-module (gnu packages tor) #:use-module (gnu packages video) #:use-module (gnu packages xdisorg) @@ -116,16 +115,16 @@ Firefox locales.") ;; We copy the official build id, which is defined at ;; tor-browser-build/rbm.conf (browser_release_date). -(define %torbrowser-build-date "20250722101758") +(define %torbrowser-build-date "20250818110000") ;; To find the last version, look at https://www.torproject.org/download/. -(define %torbrowser-version "14.5.5") +(define %torbrowser-version "14.5.6") ;; To find the last Firefox version, browse ;; https://archive.torproject.org/tor-package-archive/torbrowser/<%torbrowser-version> ;; There should be only one archive that starts with ;; "src-firefox-tor-browser-". -(define %torbrowser-firefox-version "128.13.0esr-14.5-1-build2") +(define %torbrowser-firefox-version "128.14.0esr-14.5-1-build2") ;; See tor-browser-build/rbm.conf for the list. (define %torbrowser-locales (list "ar" "be" "bg" "ca" "cs" "da" "de" "el" "es-ES" "fa" @@ -140,11 +139,11 @@ Firefox locales.") (method git-fetch) (uri (git-reference (url "https://gitlab.torproject.org/tpo/translation.git") - (commit "8600afeb12fdae895c37618e1386c1a1ac2f5308"))) + (commit "9896e5765c90c763b97135fdda00a08cf08dbddd"))) (file-name "translation-base-browser") (sha256 (base32 - "1l190sqpbldnsrwqv8y3fbf7l3bf54b17bajswkaqpsgyci2wicy")))) + "06638lii8yx8smb192629i5zjp3aly80zvyd3hix12iivcvndqg4")))) ;; See tor-browser-build/projects/translation/config. (define torbrowser-translation-specific @@ -152,11 +151,11 @@ Firefox locales.") (method git-fetch) (uri (git-reference (url "https://gitlab.torproject.org/tpo/translation.git") - (commit "9fe8a13ee4c69f91cd545dc3c575ca8f4851d58e"))) + (commit "a58fb6a60d4d1328b7cffcc1e6ded5673f5e4360"))) (file-name "translation-tor-browser") (sha256 (base32 - "0n3wa1snadhr574rf01kqg18vh66hzv1h7lhwkdps7q9qj7mpgim")))) + "0qb0fjxinsd34pfgjzgpf6ry2wssc191yzxncvwrhi1bjlgjw73r")))) (define torbrowser-assets ;; This is a prebuilt Torbrowser from which we take the assets we need. @@ -172,7 +171,7 @@ Firefox locales.") version "/tor-browser-linux-x86_64-" version ".tar.xz")) (sha256 (base32 - "0gdzd3gm0qs7ypzdrcdqz6byp5lc9byvb3m4xj3sgdd44j0s34dc")))) + "1hk4hbs7hc5j6f6fiqgik0087b0yvwl54f6rm4jig2wg41cc44hr")))) (arguments (list #:install-plan @@ -213,7 +212,7 @@ Browser.") ".tar.xz")) (sha256 (base32 - "1pm0fi816hzafgv0z52h3n3x355hwjlxgzz89lpzncz9idf9lsqy")))) + "16hkibrlzgp430m045w13yl5ixxccyxlqk9qmzsgg0c5wkys6si4")))) (build-system mozilla-build-system) (inputs (list lyrebird @@ -226,11 +225,9 @@ Browser.") gdk-pixbuf glib gtk+ - ;; UNBUNDLE-ME! graphite2 cairo pango freetype - ;; UNBUNDLE-ME! harfbuzz libcanberra libgnome libjpeg-turbo @@ -254,9 +251,8 @@ Browser.") hunspell libnotify nspr - nss-rapid ; requires v. 3.101, so nss won't cut it for now. + nss shared-mime-info - sqlite eudev unzip zip @@ -352,12 +348,9 @@ Browser.") "--with-system-icu" "--with-system-nspr" "--with-system-nss" + "--with-system-ffi" - ;; UNBUNDLE-ME! "--with-system-harfbuzz" - ;; UNBUNDLE-ME! "--with-system-graphite2" "--enable-system-pixman" - "--enable-system-ffi" - ;; UNBUNDLE-ME! "--enable-system-sqlite" ) #:imported-modules %cargo-utils-modules ;for `generate-all-checksums' @@ -411,10 +404,7 @@ Browser.") "media/libvpx" ;; UNBUNDLE-ME! "media/libtremor" "media/libwebp" - ;; UNBUNDLE-ME! "gfx/harfbuzz" - ;; UNBUNDLE-ME! "gfx/graphite2" "js/src/ctypes/libffi" - ;; UNBUNDLE-ME! "db/sqlite3" ;; 800Mo of unused tests. "testing/web-platform" )))) @@ -800,17 +790,17 @@ attacks on the privacy of Tor users.") ;; We copy the official build id, which can be found there: ;; https://cdn.mullvad.net/browser/update_responses/update_1/release. -(define %mullvadbrowser-build-date "20250722101758") +(define %mullvadbrowser-build-date "20250818110000") ;; To find the last version, look at ;; https://mullvad.net/en/download/browser/linux. -(define %mullvadbrowser-version "14.5.5") +(define %mullvadbrowser-version "14.5.6") ;; To find the last Firefox version, browse ;; https://archive.torproject.org/tor-package-archive/mullvadbrowser/<%mullvadbrowser-version> ;; There should be only one archive that starts with ;; "src-firefox-mullvad-browser-". -(define %mullvadbrowser-firefox-version "128.13.0esr-14.5-1-build1") +(define %mullvadbrowser-firefox-version "128.14.0esr-14.5-1-build2") ;; See tor-browser-build/projects/translation/config. (define mullvadbrowser-translation-base @@ -818,11 +808,11 @@ attacks on the privacy of Tor users.") (method git-fetch) (uri (git-reference (url "https://gitlab.torproject.org/tpo/translation.git") - (commit "8600afeb12fdae895c37618e1386c1a1ac2f5308"))) + (commit "9896e5765c90c763b97135fdda00a08cf08dbddd"))) (file-name "translation-base-browser") (sha256 (base32 - "1l190sqpbldnsrwqv8y3fbf7l3bf54b17bajswkaqpsgyci2wicy")))) + "06638lii8yx8smb192629i5zjp3aly80zvyd3hix12iivcvndqg4")))) ;; See tor-browser-build/projects/translation/config. (define mullvadbrowser-translation-specific @@ -850,7 +840,7 @@ attacks on the privacy of Tor users.") version "/mullvad-browser-linux-x86_64-" version ".tar.xz")) (sha256 (base32 - "1z5g5l3bikpl2vlps641fpm2lps672ci0vx002blvssn55iv22iz")))) + "08wkx9f5l03la6ny1f0igxcmffrw80pl7i7c8lrh5095wnsxwim1")))) (arguments (list #:install-plan @@ -893,7 +883,7 @@ Mullvad Browser.") %mullvadbrowser-firefox-version ".tar.xz")) (sha256 (base32 - "1d8zs5mziig1vs385rqr8xmxyklf9aqbsk3lmqxc0p2ldgq6ygll")))) + "0djqmq1hw6mf8ww2yb3yga7hyqz9ims083sh5m0xi0yc9l4clmfg")))) (arguments (substitute-keyword-arguments (package-arguments mullvadbrowser-base) ((#:phases phases) diff --git a/gnu/packages/zig.scm b/gnu/packages/zig.scm index 6b3f66095c..82484d652d 100644 --- a/gnu/packages/zig.scm +++ b/gnu/packages/zig.scm @@ -1890,4 +1890,186 @@ toolchain. Among other features it provides (properties `((max-silent-time . 9600) ,@(clang-compiler-cpu-architectures "19"))))) + +;;; +;;; Bootstrap path for Zig 0.15. +;;; + +(define zig-0.14.0-687 + (let ((commit "cc047fdd959edb260f7a6e305ccad53f185ece66") + (revision "687") + (base zig-0.14)) + (package + (inherit base) + (name "zig") + (version (git-version "0.14.0" revision commit)) + (source (zig-source + version commit + "0wjswx1cvql8pxpdrglr3h24v5rffnq3llr0f08hj8g959f6ffvs")) + ;; zig2 + (arguments (package-arguments zig-0.10.0-851)) + (inputs + (modify-inputs (package-inputs base) + (replace "clang" clang-20) + (replace "lld" lld-20))) + (native-inputs + (modify-inputs (package-native-inputs base) + (replace "llvm" llvm-20) + (replace "zig" `(,base "zig1")))) + (properties `((max-silent-time . 9600) + ,@(clang-compiler-cpu-architectures "20")))))) + +(define zig-0.14.0-877 + (let ((commit "0adcfd60f4fcfd01c74a6477cbcef187ce06f533") + (revision "877") + (base zig-0.14.0-687)) + (package + (inherit base) + (name "zig") + (version (git-version "0.14.0" revision commit)) + (source (zig-source + version commit + "1yyar3cms02kzf4z20sbw09awqvz0kbm9fx8g0kgb8hp1f4blf3d")) + ;; zig1 + (arguments (package-arguments zig-0.10.0-747)) + (native-inputs + (modify-inputs (package-native-inputs base) + (replace "zig" `(,base "out"))))))) + +(define zig-0.14.0-930 + (let ((commit "40d11cc25a469dc6bb0f9fbba4d05e7210a23b3f") + (revision "930") + (base zig-0.14.0-877)) + (package + (inherit base) + (name "zig") + (version (git-version "0.14.0" revision commit)) + (source (zig-source + version commit + "06x6zi8hcl04gmql96vyms0zch94xi1all5s1kjsnbifixd99bgy")) + ;; zig2 + (arguments (package-arguments zig-0.10.0-851)) + (native-inputs + (modify-inputs (package-native-inputs base) + (replace "zig" `(,base "zig1"))))))) + +(define zig-0.14.0-934 + (let ((commit "4ba0e7d424a7c0af55c8085c659e9205560d3095") + (revision "934") + (base zig-0.14.0-930)) + (package + (inherit base) + (name "zig") + (version (git-version "0.14.0" revision commit)) + (source (zig-source + version commit + "17zaw7bk6wli6wpsr5zlpn1b39818h034l5bpnsxfslqqg09rsd8")) + ;; zig1 + (arguments (package-arguments zig-0.10.0-747)) + (native-inputs + (modify-inputs (package-native-inputs base) + (replace "zig" `(,base "out"))))))) + +(define zig-0.14.0-1091 + (let ((commit "87ce83d5a5854b63b7cef5c6209742ee1a524107") + (revision "1091") + (base zig-0.14.0-934)) + (package + (inherit base) + (name "zig") + (version (git-version "0.14.0" revision commit)) + (source (zig-source + version commit + "18irwcr63l1hf2g7vv9qajgllsp7qwzsv5ijm9x8l51agm6harf4")) + ;; zig2 + (arguments (package-arguments zig-0.10.0-851)) + (native-inputs + (modify-inputs (package-native-inputs base) + (replace "zig" `(,base "zig1"))))))) + +(define zig-0.14.0-1197 + (let ((commit "a023b9b22b6593ebd5a86736a4a9955840d1bfa1") + (revision "1197") + (base zig-0.14.0-1091)) + (package + (inherit base) + (name "zig") + (version (git-version "0.14.0" revision commit)) + (source (zig-source + version commit + "08c1m6kwq7cqg5s6j0ypp8ygvxj21da5is0w7y17sw27fjqrlhgr")) + ;; zig1 + (arguments (package-arguments zig-0.10.0-747)) + (native-inputs + (modify-inputs (package-native-inputs base) + (replace "zig" `(,base "out"))))))) + +(define zig-0.15-libc-abi-tools + (origin + (method git-fetch) + (uri (git-reference + (url "https://github.com/ziglang/libc-abi-tools") + (commit "21993a6036cc165485b20229589340dff9d4fc3c"))) + (file-name "libc-abi-tools") + (sha256 + (base32 "0miwb0zfgfmm4bh2bs7982wpk0wp5vj2mz10x9c3m8fw7zzcyvbh")) + (modules '((guix build utils))) + (snippet + #~(substitute* "netbsd/consolidate.zig" + ((".write_buffer = buffer") ".write_buffer = &buffer"))))) + +(define-public zig-0.15 + (package + (inherit zig-0.14) + (name "zig") + (version "0.15.1") + (source + (origin + (inherit (zig-source + version version + "1cp18plf0x5wip4rnxiqavaqnqxnqzhipb34in6zd3y7wihwjmj4")) + (patches + (search-patches + "zig-0.14-use-baseline-cpu-by-default.patch" + "zig-0.14-use-system-paths.patch" + "zig-0.15-fix-runpath.patch")))) + (arguments + (substitute-keyword-arguments (package-arguments zig-0.14) + ((#:phases phases '%standard-phases) + #~(modify-phases #$phases + (delete 'install-glibc-abilists) + ;; TODO: Remove newly-added abilists files in zig-source. + (add-before 'check 'install-abilists + (lambda* (#:key inputs native-inputs #:allow-other-keys) + (mkdir-p "/tmp/libc-abi-tools") + (with-directory-excursion "/tmp/libc-abi-tools" + (copy-recursively + (dirname (search-input-file + (or native-inputs inputs) "list.zig")) + ".") + (for-each make-file-writable (find-files ".")) + (for-each + (lambda (libc) + (with-directory-excursion libc + (invoke (string-append #$output "/bin/zig") + "run" "consolidate.zig") + (install-file + "abilists" + (string-append #$output "/lib/zig/libc/" libc)))) + '("freebsd" + "glibc" + "netbsd"))))))))) + (inputs + (modify-inputs (package-inputs zig-0.14) + (replace "clang" clang-20) + (replace "lld" lld-20))) + (native-inputs + (modify-inputs (package-native-inputs zig-0.14) + (delete "glibc-abi-tool") + (prepend zig-0.15-libc-abi-tools) + (replace "llvm" llvm-20) + (replace "zig" `(,zig-0.14.0-1197 "zig1")))) + (properties `((max-silent-time . 9600) + ,@(clang-compiler-cpu-architectures "20"))))) + (define-public zig zig-0.13) diff --git a/gnu/services/dict.scm b/gnu/services/dict.scm index fef8915439..c905d35a34 100644 --- a/gnu/services/dict.scm +++ b/gnu/services/dict.scm @@ -29,7 +29,6 @@ #:use-module (gnu services shepherd) #:use-module (gnu system shadow) #:use-module ((gnu packages admin) #:select (shadow)) - #:use-module (gnu packages dico) #:use-module (gnu packages dictionaries) #:autoload (gnu build linux-container) (%namespaces) #:autoload (gnu system file-systems) (file-system-mapping) diff --git a/po/packages/POTFILES.in b/po/packages/POTFILES.in index bb92184d32..4f22eb0f6b 100644 --- a/po/packages/POTFILES.in +++ b/po/packages/POTFILES.in @@ -110,7 +110,6 @@ gnu/packages/decker.scm gnu/packages/dejagnu.scm gnu/packages/dezyne.scm gnu/packages/dhall.scm -gnu/packages/dico.scm gnu/packages/dictd.scm gnu/packages/dictionaries.scm gnu/packages/diffoscope.scm |