summaryrefslogtreecommitdiff
path: root/gnu
diff options
context:
space:
mode:
Diffstat (limited to 'gnu')
-rw-r--r--gnu/local.mk2
-rw-r--r--gnu/packages/bioinformatics.scm144
-rw-r--r--gnu/packages/build-tools.scm10
-rw-r--r--gnu/packages/containers.scm8
-rw-r--r--gnu/packages/cpp.scm41
-rw-r--r--gnu/packages/cran.scm4
-rw-r--r--gnu/packages/databases.scm267
-rw-r--r--gnu/packages/dbm.scm6
-rw-r--r--gnu/packages/diffoscope.scm5
-rw-r--r--gnu/packages/emulators.scm83
-rw-r--r--gnu/packages/gcc.scm39
-rw-r--r--gnu/packages/gnome.scm42
-rw-r--r--gnu/packages/gnunet.scm4
-rw-r--r--gnu/packages/gnuzilla.scm6
-rw-r--r--gnu/packages/golang.scm21
-rw-r--r--gnu/packages/haskell-apps.scm24
-rw-r--r--gnu/packages/haskell-xyz.scm6
-rw-r--r--gnu/packages/icu4c.scm34
-rw-r--r--gnu/packages/kde-plasma.scm18
-rw-r--r--gnu/packages/libreoffice.scm4
-rw-r--r--gnu/packages/linux.scm5
-rw-r--r--gnu/packages/logging.scm19
-rw-r--r--gnu/packages/machine-learning.scm251
-rw-r--r--gnu/packages/mail.scm25
-rw-r--r--gnu/packages/messaging.scm8
-rw-r--r--gnu/packages/pantheon.scm6
-rw-r--r--gnu/packages/patches/pcsxr-find-harfbuzz.patch21
-rw-r--r--gnu/packages/patches/pcsxr-fix-definitions.patch137
-rw-r--r--gnu/packages/prolog.scm4
-rw-r--r--gnu/packages/protobuf.scm11
-rw-r--r--gnu/packages/python-xyz.scm253
-rw-r--r--gnu/packages/rocm.scm28
-rw-r--r--gnu/packages/rpc.scm88
-rw-r--r--gnu/packages/scheme.scm242
-rw-r--r--gnu/packages/skribilo.scm1
-rw-r--r--gnu/packages/tbb.scm14
-rw-r--r--gnu/packages/text-editors.scm4
-rw-r--r--gnu/packages/video.scm46
-rw-r--r--gnu/packages/virtualization.scm68
-rw-r--r--gnu/packages/vnc.scm230
-rw-r--r--gnu/packages/vpn.scm4
-rw-r--r--gnu/packages/web.scm13
-rw-r--r--gnu/packages/wm.scm4
-rw-r--r--gnu/packages/xorg.scm256
-rw-r--r--gnu/services/linux.scm2
-rw-r--r--gnu/services/vnc.scm1
46 files changed, 1086 insertions, 1423 deletions
diff --git a/gnu/local.mk b/gnu/local.mk
index 7aa3f046a7..bd568cc095 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -2036,6 +2036,8 @@ dist_patch_DATA = \
%D%/packages/patches/pango-skip-libthai-test.patch \
%D%/packages/patches/password-store-tree-compat.patch \
%D%/packages/patches/pciutils-hurd64.patch \
+ %D%/packages/patches/pcsxr-find-harfbuzz.patch \
+ %D%/packages/patches/pcsxr-fix-definitions.patch \
%D%/packages/patches/pdl-2.019-glut-bitmap-fonts.patch \
%D%/packages/patches/pdl-2.100-reproducibility.patch \
%D%/packages/patches/petri-foo-0.1.87-fix-recent-file-not-exist.patch \
diff --git a/gnu/packages/bioinformatics.scm b/gnu/packages/bioinformatics.scm
index 4ca7998cc7..8dffc86c00 100644
--- a/gnu/packages/bioinformatics.scm
+++ b/gnu/packages/bioinformatics.scm
@@ -12324,7 +12324,7 @@ of these reads to align data quickly through a hash-based indexing scheme.")
(define-public sortmerna
(package
(name "sortmerna")
- (version "4.3.4")
+ (version "4.3.7")
(source
(origin
(method git-fetch)
@@ -12334,7 +12334,7 @@ of these reads to align data quickly through a hash-based indexing scheme.")
(file-name (git-file-name name version))
(sha256
(base32
- "0f8jfc8vsq6llhbb92p9yv7nbp566yqwfcmq3g2hw0n7d8hyl3a8"))))
+ "14p3zi6ysnrs2l33r5mc0fr0la2jnnxmqdcif02fppln8w31j753"))))
(build-system cmake-build-system)
(outputs '("out" ;for binaries
"db")) ;for sequence databases
@@ -12359,6 +12359,11 @@ of these reads to align data quickly through a hash-based indexing scheme.")
"/include"))
#:phases
'(modify-phases %standard-phases
+ (add-after 'unpack 'fix-includes
+ (lambda _
+ (substitute* "src/sortmerna/kseq_load.cpp"
+ (("#include <iostream>" all)
+ (string-append all "\n#include <cstdint>")))))
(add-after 'unpack 'find-concurrentqueue-headers
(lambda* (#:key inputs #:allow-other-keys)
;; Ensure that headers can be found
@@ -20392,141 +20397,6 @@ includes operations like compartment, insulation or peak calling.")
the HiCExplorer and pyGenomeTracks packages.")
(license license:gpl3+)))
-(define-public python-hicexplorer
- (package
- (name "python-hicexplorer")
- (version "3.7.4")
- (source
- (origin
- ;; The latest version is not available on Pypi.
- (method git-fetch)
- (uri (git-reference
- (url "https://github.com/deeptools/HiCExplorer")
- (commit version)))
- (file-name (git-file-name name version))
- (sha256
- (base32
- "1cjr9l0vcngd0f4dmar388ri1ah1bqybnn53jc85xwh07wfacq7l"))))
- (build-system pyproject-build-system)
- (arguments
- (list
- #:test-flags
- '(list "hicexplorer/test/general/"
- "--ignore" "hicexplorer/test/general/test_hicTADClassifier.py"
- "--ignore" "hicexplorer/test/general/test_hicTrainTADClassifier.py"
- "-k"
- (string-append
- ;; Unknown chromosome: ChrX
- "not test_build_matrix_restrictionCutFile_two"
- ;; fixture 'keepSelfLigation' not found
- " and not test_build_matrix_restrictionCutFile_six"
- ;; ValueError: object dtype is not supported by sparse matrices
- " and not test_hic_transfer_obs_exp_perChromosome"
-
- ;; No KR balancing available
- " and not test_correct_matrix_KR_partial_cool"
- " and not test_correct_matrix_KR_cool"
- " and not test_correct_matrix_KR_H5"))
- #:phases
- #~(modify-phases %standard-phases
- ;; See https://github.com/deeptools/Knight-Ruiz-Matrix-balancing-algorithm/issues/23
- (add-after 'unpack 'remove-dependency-on-krbalancing
- (lambda _
- (substitute* "hicexplorer/hicCorrectMatrix.py"
- (("from krbalancing import.*") "")
- (("( *)assert\\(args.correctionMethod == 'KR'\\)" m indent)
- (string-append m "\n"
- indent "log.error('krbalancing not available')\n"
- indent "exit(1)")))
- (substitute* "setup.py"
- (("\"krbalancing >= 0.0.5\",") ""))
- (substitute* "requirements.txt"
- (("krbalancing >= 0.0.5") ""))))
- (add-after 'unpack 'fix-references
- (lambda _
- (let ((site (string-append #$output "/lib/python"
- #$(version-major+minor
- (package-version python))
- "/site-packages")))
- (substitute* "hicexplorer/lib/tadClassifier.py"
- (("model_location = site.getsitepackages\\(\\)\\[0\\]")
- (string-append "model_location = \"" site "\""))))
- (substitute* "hicexplorer/hicFindRestSite.py"
- (("subprocess.check_output\\(\\[\"cat\"")
- (string-append "subprocess.check_output([\""
- (which "cat") "\""))
- (("cmd = 'sort -k1")
- (string-append "cmd = '" (which "sort") " -k1")))))
- ;; The tests aim to detect available memory and run more tests when
- ;; there is more available memory. Let's run them deterministically
- ;; instead and don't run any tests that require more than 1GB of
- ;; RAM.
- (add-after 'unpack 'run-only-low-mem-tests
- (lambda _
- (with-directory-excursion "hicexplorer/test"
- (substitute* '("trivial_runs/test_hicBuildMatrix_trivial_runs_2.py"
- "trivial_runs/test_hicAggregateContacts_trivial_runs_five.py"
- "trivial_runs/test_hicAggregateContacts_trivial_runs_four.py"
- "trivial_runs/test_hicAggregateContacts_trivial_runs.py"
- "trivial_runs/test_hicAggregateContacts_trivial_runs_two_1.py"
- "trivial_runs/test_hicBuildMatrix_trivial_runs.py"
- "trivial_runs/test_hicAggregateContacts_trivial_runs_two_3.py"
- "trivial_runs/test_hicAggregateContacts_trivial_runs_three.py"
- "trivial_runs/test_hicAggregateContacts_trivial_runs_two.py"
- "trivial_runs/test_hicAggregateContacts_trivial_runs_two_2.py"
- "trivial_runs/test_hicAggregateContacts_trivial_runs_six.py"
- "general/test_hicDifferentialTAD.py"
- "general/test_hicDetectLoops.py"
- "general/test_hicPlotMatrix.py"
- "general/test_hicHyperoptDetectLoops.py"
- "general/test_hicCreateThresholdFile.py"
- "general/test_hicMergeDomains.py"
- "general/test_hicHyperoptDetectLoopsHiCCUPS.py"
- "general/test_hicAggregateContacts.py"
- "general/test_hicInterIntraTAD.py")
- (("^memory =.*") "memory = 1\n"))))))))
- (propagated-inputs
- (list python-biopython
- python-cleanlab
- python-cooler
- python-fit-nbinom
- python-future
- python-graphviz
- python-hic2cool
- python-hicmatrix
- python-hyperopt
- python-imbalanced-learn
- python-intervaltree
- python-ipykernel
- python-jinja2
- python-matplotlib
- python-numpy
- python-pandas
- python-psutil
- python-pybedtools
- python-pybigwig
- python-pygenometracks
- python-pysam
- python-scikit-learn
- python-scipy
- python-tables
- python-tqdm
- python-unidecode))
- (native-inputs
- (list graphviz)) ;for hicexplorer/test/test_compute_function.py
- (home-page "https://hicexplorer.readthedocs.io")
- (synopsis "Process, analyze and visualize Hi-C data")
- (description
- "HiCExplorer is a powerful and easy to use set of tools to process,
-normalize and visualize Hi-C data. HiCExplorer facilitates the creation of
-contact matrices, correction of contacts, TAD detection, A/B compartments,
-merging, reordering or chromosomes, conversion from different formats
-including cooler and detection of long-range contacts. Moreover, it allows
-the visualization of multiple contact matrices along with other types of data
-like genes, compartments, ChIP-seq coverage tracks (and in general any type of
-genomic scores), long range contacts and the visualization of viewpoints.")
- (license license:gpl3)))
-
(define-public python-pygenometracks
(package
(name "python-pygenometracks")
diff --git a/gnu/packages/build-tools.scm b/gnu/packages/build-tools.scm
index 7121cec4d4..170d32f3e3 100644
--- a/gnu/packages/build-tools.scm
+++ b/gnu/packages/build-tools.scm
@@ -129,7 +129,7 @@ makes a few sacrifices to acquire fast full and incremental build times.")
(define-public bear
(package
(name "bear")
- (version "3.1.4")
+ (version "3.1.6")
(source
(origin
(method git-fetch)
@@ -138,7 +138,7 @@ makes a few sacrifices to acquire fast full and incremental build times.")
(commit version)))
(file-name (git-file-name name version))
(sha256
- (base32 "1x99d2cycgxay62cz2ypjjkmjgrbdvz5d3pg4fyv0gnq2srnlcnm"))))
+ (base32 "0pnrsnwvsqby0vgb33zsrjznb7l82ji7i4aigk32hg3rl674qqvx"))))
(build-system cmake-build-system)
(arguments
`(#:phases (modify-phases %standard-phases
@@ -157,15 +157,15 @@ makes a few sacrifices to acquire fast full and incremental build times.")
(invoke "ctest")))))))
(inputs
`(("c-ares" ,c-ares)
- ("fmt" ,fmt-8)
+ ("fmt" ,fmt-9)
("grpc" ,grpc)
("nlohmann-json" ,nlohmann-json)
("protobuf" ,protobuf)
("python" ,python-wrapper)
("re2" ,re2)
- ("spdlog" ,spdlog-1.10)))
+ ("spdlog" ,spdlog-1.13)))
(native-inputs
- `(("abseil-cpp" ,abseil-cpp-cxxstd11)
+ `(("abseil-cpp" ,abseil-cpp)
("googletest" ,googletest)
("openssl" ,openssl)
("pkg-config" ,pkg-config)
diff --git a/gnu/packages/containers.scm b/gnu/packages/containers.scm
index 1a2aa6b75d..eb1f3b3b53 100644
--- a/gnu/packages/containers.scm
+++ b/gnu/packages/containers.scm
@@ -285,7 +285,7 @@ contents, and discovering ways to shrink the size of Docker/OCI image.")
(define-public libslirp
(package
(name "libslirp")
- (version "4.7.0")
+ (version "4.9.1")
(source
(origin
(method git-fetch)
@@ -293,7 +293,7 @@ contents, and discovering ways to shrink the size of Docker/OCI image.")
(url "https://gitlab.freedesktop.org/slirp/libslirp")
(commit (string-append "v" version))))
(sha256
- (base32 "0dny8187a8qh6akaa37aa9b5pjxx88f02wh6achp4mygff0ipxba"))
+ (base32 "1jlqda5k5wm0ql0fymkr3dbf1d71gxcj7896r8mz8s1i264gg8rh"))
(file-name (git-file-name name version))))
(build-system meson-build-system)
(propagated-inputs
@@ -311,7 +311,7 @@ containers or various tools.")
(define-public slirp4netns
(package
(name "slirp4netns")
- (version "1.3.2")
+ (version "1.3.3")
(source
(origin
(method git-fetch)
@@ -319,7 +319,7 @@ containers or various tools.")
(url "https://github.com/rootless-containers/slirp4netns")
(commit (string-append "v" version))))
(sha256
- (base32 "13lw48b89583smblp2d4kxb1j23k2qx3i2j5zi91sxwnnn4ndks2"))
+ (base32 "165z1ccsb8w901965rlzcrbln17l1jdg9k7vsiamlx0q06v24b96"))
(file-name (git-file-name name version))))
(build-system gnu-build-system)
(arguments
diff --git a/gnu/packages/cpp.scm b/gnu/packages/cpp.scm
index 3832b67aec..aac96f96a7 100644
--- a/gnu/packages/cpp.scm
+++ b/gnu/packages/cpp.scm
@@ -2096,29 +2096,6 @@ augment the C++ standard library. The Abseil library code is collected from
Google's C++ code base.")
(license license:asl2.0)))
-;; This is for grpc-for-python-grpcio; keep this in sync with its actual
-;; requirements.
-(define-public abseil-cpp-20211102.0
- (let ((base abseil-cpp-20200923.3))
- (package
- (inherit base)
- (name "abseil-cpp")
- (version "20211102.0")
- (source (origin
- (method git-fetch)
- (uri (git-reference
- (url "https://github.com/abseil/abseil-cpp")
- (commit "215105818dfde3174fe799600bb0f3cae233d0bf")))
- (file-name (git-file-name name version))
- (sha256
- (base32
- "028vlxpmh65kb7s0cpba38qcwk1abyn5br0ffhvvjjh97vld69di"))))
- (arguments
- (substitute-keyword-arguments (package-arguments base)
- ((#:tests? _ #false) #false)
- ((#:configure-flags flags)
- #~(cons* "-DCMAKE_CXX_STANDARD=11" #$flags)))))))
-
(define-public abseil-cpp-20220623
(let ((base abseil-cpp-20200923.3))
(package
@@ -2202,6 +2179,15 @@ Google's C++ code base.")
#~(cons* "-DCMAKE_POSITION_INDEPENDENT_CODE=ON"
(delete "-DBUILD_SHARED_LIBS=ON" #$flags)))))))))
+(define-public abseil-cpp-cxxstd17
+ (abseil-cpp-for-c++-standard abseil-cpp 17)) ;XXX: the default with GCC 11?
+
+(define-public abseil-cpp-cxxstd11
+ (abseil-cpp-for-c++-standard abseil-cpp-20220623 11)) ;last version on C++11
+
+(define-public static-abseil-cpp
+ (make-static-abseil-cpp abseil-cpp))
+
(define-public miniaudio
(package
(name "miniaudio")
@@ -2262,15 +2248,6 @@ Google's C++ code base.")
made up of a single source file and has no external dependencies.")
(license license:expat)))
-(define-public abseil-cpp-cxxstd17
- (abseil-cpp-for-c++-standard abseil-cpp 17)) ;XXX: the default with GCC 11?
-
-(define-public abseil-cpp-cxxstd11
- (abseil-cpp-for-c++-standard abseil-cpp-20220623 11)) ;last version on C++11
-
-(define-public static-abseil-cpp
- (make-static-abseil-cpp abseil-cpp))
-
(define-public pegtl
(package
(name "pegtl")
diff --git a/gnu/packages/cran.scm b/gnu/packages/cran.scm
index 48adf3aaac..64b7d820b4 100644
--- a/gnu/packages/cran.scm
+++ b/gnu/packages/cran.scm
@@ -37779,14 +37779,14 @@ colored by the number of neighboring points. This is useful to visualize the
(define-public r-arrow
(package
(name "r-arrow")
- (version "20.0.0.2")
+ (version "21.0.0")
(source
(origin
(method url-fetch)
(uri (cran-uri "arrow" version))
(sha256
(base32
- "19xnz3df1r9n01dbsf05xkw6q5w8vipzkkb5bpx7jlcp38jnp8zn"))))
+ "1ipwcgzbzr5xb1ff0ikwxdfhbniqdjmvi4505cmb0divg9p50946"))))
(properties
`((upstream-name . "arrow")
(updater-ignored-native-inputs . ("r-duckdb"))
diff --git a/gnu/packages/databases.scm b/gnu/packages/databases.scm
index 2bfa37ea90..f262aaf95b 100644
--- a/gnu/packages/databases.scm
+++ b/gnu/packages/databases.scm
@@ -309,41 +309,37 @@ ElasticSearch server")
(define-public firebird
(package
(name "firebird")
- (version "3.0.12")
+ (version "3.0.13")
(source
- (let ((revision "33787-0"))
- (origin
- (method url-fetch)
- (uri (string-append "https://github.com/FirebirdSQL/"
- "firebird/releases/download/v"
- version "/"
- "Firebird-" version "." revision ".tar.bz2"))
- (sha256
- (base32 "07w109k237slwyhgyxma9r5my0dkvksc7ykpw0a4h7gpv06vzcl5"))
- (patches (search-patches "firebird-riscv64-support-pt1.patch"
- "firebird-riscv64-support-pt2.patch"))
- (modules '((guix build utils)))
- (snippet
- `(begin
- (for-each
- delete-file-recursively
- (list "extern/btyacc/test" ; TODO: package and remove entirely
- "extern/editline"
- "extern/icu"
- "extern/libtommath"
- "extern/zlib"
- "src/include/firebird/impl/boost"
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/FirebirdSQL/firebird")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "0h697y53vk7yvlifr35vjl3vkv8m5ny7j05r70qnqcvjy0axqbdn"))
+ (patches (search-patches "firebird-riscv64-support-pt1.patch"
+ "firebird-riscv64-support-pt2.patch"))
+ (modules '((guix build utils)))
+ (snippet
+ `(begin
+ (for-each
+ delete-file-recursively
+ (list "extern/btyacc/test" ; TODO: package and remove entirely
+ "extern/editline"
+ "extern/icu"
+ "extern/libtommath"
+ "extern/zlib"
+ "src/include/firebird/impl/boost"
- ;; Missing licence.
- "builds/install/arch-specific/solaris"
- "extern/SfIO"
- "src/msgs/templates.sql"
+ ;; Missing licence.
+ "builds/install/arch-specific/solaris"
+ "extern/SfIO"
+ "src/msgs/templates.sql"
- ;; Generated files missing sources.
- "doc/Firebird-3-QuickStart.pdf"
- (string-append "doc/Firebird-" ,version
- "-ReleaseNotes.pdf")
- "doc/README.SecureRemotePassword.html")))))))
+ ;; Generated files missing sources.
+ "doc/README.SecureRemotePassword.html"))))))
(build-system gnu-build-system)
(outputs (list "debug" "out"))
(arguments
@@ -445,13 +441,11 @@ ElasticSearch server")
(list "include/firebird/impl"
"lib/firebird/plugins/udr")))))))))
(native-inputs
- (if (target-riscv64?)
- (list autoconf automake libtool)
- '()))
+ (list autoconf automake libtool))
(inputs
(list boost
editline
- icu4c-71
+ icu4c-77
libtommath
ncurses
zlib))
@@ -1316,17 +1310,16 @@ as a drop-in replacement of MySQL.")
(define-public mariadb-connector-c
(package
(name "mariadb-connector-c")
- (version "3.1.13")
+ (version "3.4.5")
(source
(origin
(method url-fetch)
(uri (string-append
- "https://downloads.mariadb.org/f/connector-c-" version
- "/mariadb-connector-c-" version "-src.tar.gz"
- "/from/https%3A//mirrors.ukfast.co.uk/sites/mariadb/?serve"))
+ "https://downloads.mariadb.org/rest-api/connector-c/"
+ version "/mariadb-connector-c-" version "-src.tar.gz"))
(file-name (string-append name "-" version ".tar.gz"))
(sha256
- (base32 "0xb8fiissblxb319y5ifqqp86zblwis789ipb753pcb4zpnsaw82"))))
+ (base32 "18y1x985pnvvirmwfka81ygsvl7isc52mj9c9hvc69fb2qw1jzmi"))))
(inputs
(list openssl))
(build-system cmake-build-system)
@@ -1996,7 +1989,7 @@ including field and record folding.")
(define-public rocksdb
(package
(name "rocksdb")
- (version "6.26.1")
+ (version "10.4.2")
(source (origin
(method git-fetch)
(uri (git-reference
@@ -2005,7 +1998,7 @@ including field and record folding.")
(file-name (git-file-name name version))
(sha256
(base32
- "0mylma106w93kxhj89g9y1ccdq7m9m94wrmv5nyr17yc1zsk87sg"))
+ "1cgr33qv639fyx067sg8nsy8mnfac9xgmmw2qwi2bcmir777ma4q"))
(modules '((guix build utils)))
(snippet
'(begin
@@ -5171,7 +5164,7 @@ with integrated support for finding required rows quickly.")
(define-public apache-arrow
(package
(name "apache-arrow")
- (version "20.0.0")
+ (version "21.0.0")
(source
(origin
(method git-fetch)
@@ -5181,7 +5174,7 @@ with integrated support for finding required rows quickly.")
(file-name (git-file-name name version))
(sha256
(base32
- "1n96m8fbpg8azbwm6hx3adbc2sa070k1zh0lj18yqlw2nqmdslr4"))))
+ "0lxywrjfwhiznsldpv5bd6g357za5ng64jvy943kp0ndckh5l4g9"))))
(build-system cmake-build-system)
(arguments
(list
@@ -5425,132 +5418,6 @@ language-bindings for structure manipulation. It also provides IPC and common
algorithm implementations.")
(license license:asl2.0)))
-(define-public apache-arrow-0.16
- (package
- (name "apache-arrow")
- (version "0.16.0")
- (source
- (origin
- (method git-fetch)
- (uri (git-reference
- (url "https://github.com/apache/arrow")
- (commit (string-append "apache-arrow-" version))))
- (file-name (git-file-name name version))
- (sha256
- (base32
- "15bplqy5708bxy1mynzjkd3d2g8v2wd36z8l0ap8yyyq54l3gdvy"))))
- (build-system cmake-build-system)
- (arguments
- `(#:tests? #f
- #:phases
- (modify-phases %standard-phases
- (add-before 'configure 'enter-source-directory
- (lambda _
- (chdir "cpp")
- (substitute* "src/parquet/CMakeLists.txt"
- ((" parquet_constants.cpp") "")
- (("set\\(THRIFT_OUTPUT_FILES \\$\\{THRIFT_OUTPUT_FILES\\}.*") "")
- ((".*\"\\$\\{THRIFT_OUTPUT_DIR\\}/parquet_constants.cpp\"\\).*") ""))))
- (add-after 'unpack 'set-env
- (lambda _
- (setenv "BOOST_ROOT" (assoc-ref %build-inputs "boost"))
- (setenv "BROTLI_HOME" (assoc-ref %build-inputs "brotli"))
- (setenv "FLATBUFFERS_HOME" (assoc-ref %build-inputs "flatbuffers"))
- (setenv "RAPIDJSON_HOME" (assoc-ref %build-inputs "rapidjson")))))
- #:build-type "Release"
- #:configure-flags
- (list "-DARROW_PYTHON=ON"
- "-DARROW_GLOG=ON"
- "-DARROW_SSE42=OFF"
- "-DARROW_BOOST_USE_SHARED=ON"
- ;; Parquet options
- "-DARROW_PARQUET=ON"
-
- ;; The maintainers disallow using system versions of
- ;; jemalloc:
- ;; https://issues.apache.org/jira/browse/ARROW-3507. This
- ;; is unfortunate because jemalloc increases performance:
- ;; https://arrow.apache.org/blog/2018/07/20/jemalloc/.
- "-DARROW_JEMALLOC=OFF"
-
- ;; The CMake option ARROW_DEPENDENCY_SOURCE is a global
- ;; option that instructs the build system how to resolve
- ;; each dependency. SYSTEM = Finding the dependency in
- ;; system paths using CMake's built-in find_package
- ;; function, or using pkg-config for packages that do not
- ;; have this feature
- "-DARROW_DEPENDENCY_SOURCE=SYSTEM"
-
- ;; Split output into its component packages.
- (string-append "-DCMAKE_INSTALL_PREFIX="
- (assoc-ref %outputs "out"))
- (string-append "-DCMAKE_INSTALL_RPATH="
- (assoc-ref %outputs "out")
- "/lib")
- (string-append "-DCMAKE_INSTALL_BINDIR="
- (assoc-ref %outputs "out")
- "/bin")
- (string-append "-DCMAKE_INSTALL_INCLUDEDIR="
- (assoc-ref %outputs "include")
- "/share/include")
-
-
- "-DARROW_WITH_SNAPPY=ON"
- "-DARROW_WITH_ZLIB=ON"
- "-DARROW_WITH_ZSTD=ON"
- "-DARROW_WITH_LZ4=ON"
- "-DARROW_COMPUTE=ON"
- "-DARROW_CSV=ON"
- "-DARROW_DATASET=ON"
- "-DARROW_FILESYSTEM=ON"
- "-DARROW_HDFS=ON"
- "-DARROW_JSON=ON"
- ;; Arrow Python C++ integration library (required for
- ;; building pyarrow). This library must be built against
- ;; the same Python version for which you are building
- ;; pyarrow. NumPy must also be installed. Enabling this
- ;; option also enables ARROW_COMPUTE, ARROW_CSV,
- ;; ARROW_DATASET, ARROW_FILESYSTEM, ARROW_HDFS, and
- ;; ARROW_JSON.
- "-DARROW_PYTHON=ON"
-
- ;; Building the tests forces on all the
- ;; optional features and the use of static
- ;; libraries.
- "-DARROW_BUILD_TESTS=OFF"
- "-DBENCHMARK_ENABLE_GTEST_TESTS=OFF"
- ;;"-DBENCHMARK_ENABLE_TESTING=OFF"
- "-DARROW_BUILD_STATIC=OFF")))
- (inputs
- `(("boost" ,boost)
- ("brotli" ,brotli)
- ("double-conversion" ,double-conversion)
- ("snappy" ,snappy)
- ("gflags" ,gflags)
- ("glog" ,glog)
- ("apache-thrift" ,apache-thrift "lib")
- ("protobuf" ,protobuf)
- ("rapidjson" ,rapidjson)
- ("zlib" ,zlib)
- ("bzip2" ,bzip2)
- ("lz4" ,lz4)
- ("zstd" ,zstd "lib")
- ("re2" ,re2)
- ("grpc" ,grpc)
- ("python-3" ,python)
- ("python-numpy" ,python-numpy)))
- (native-inputs
- (list pkg-config apache-thrift))
- (outputs '("out" "include"))
- (home-page "https://arrow.apache.org/")
- (synopsis "Columnar in-memory analytics")
- (description "Apache Arrow is a columnar in-memory analytics layer
-designed to accelerate big data. It houses a set of canonical in-memory
-representations of flat and hierarchical data along with multiple
-language-bindings for structure manipulation. It also provides IPC and common
-algorithm implementations.")
- (license license:asl2.0)))
-
(define-public python-pyarrow
(package
(inherit apache-arrow)
@@ -5619,64 +5486,6 @@ implementation, along with tools for interoperability with pandas, NumPy, and
other traditional Python scientific computing packages.")
(license license:asl2.0)))
-(define-public python-pyarrow-0.16
- (package
- (inherit apache-arrow-0.16)
- (name "python-pyarrow")
- (build-system python-build-system)
- (arguments
- '(#:tests? #f ; XXX There are no tests in the "python" directory
- #:phases
- (modify-phases %standard-phases
- (delete 'build) ; XXX the build is performed again during the install phase
- (add-after 'unpack 'enter-source-directory
- (lambda _ (chdir "python")))
- (add-after 'unpack 'make-git-checkout-writable
- (lambda _
- (for-each make-file-writable (find-files "."))))
- (add-before 'install 'patch-cmake-variables
- (lambda* (#:key inputs #:allow-other-keys)
- ;; Replace cmake locations with hardcoded guix links for the
- ;; underlying C++ library and headers. This is a pretty awful
- ;; hack.
- (substitute* "cmake_modules/FindParquet.cmake"
- (("# Licensed to the Apache Software Foundation" m)
- (string-append "set(PARQUET_INCLUDE_DIR \""
- (assoc-ref inputs "apache-arrow:include")
- "/share/include\")\n" m))
- (("find_package_handle_standard_args" m)
- (string-append "set(PARQUET_LIB_DIR \""
- (assoc-ref inputs "apache-arrow:lib")
- "/lib\")\n" m)))))
- (add-before 'install 'patch-parquet-library
- (lambda _
- (substitute* "CMakeLists.txt"
- (("parquet_shared") "parquet"))))
- (add-before 'install 'set-PYARROW_WITH_PARQUET
- (lambda _
- (setenv "PYARROW_WITH_PARQUET" "1"))))))
- (propagated-inputs
- `(("apache-arrow:lib" ,apache-arrow-0.16)
- ("apache-arrow:include" ,apache-arrow-0.16 "include")
- ("python-numpy" ,python-numpy)
- ("python-pandas" ,python-pandas)
- ("python-six" ,python-six)))
- (native-inputs
- (list cmake-minimal
- pkg-config
- python-cython
- python-pytest
- python-pytest-runner
- python-setuptools-scm))
- (outputs '("out"))
- (home-page "https://arrow.apache.org/docs/python/")
- (synopsis "Python bindings for Apache Arrow")
- (description
- "This library provides a Pythonic API wrapper for the reference Arrow C++
-implementation, along with tools for interoperability with pandas, NumPy, and
-other traditional Python scientific computing packages.")
- (license license:asl2.0)))
-
(define-public python-fastparquet
(package
(name "python-fastparquet")
diff --git a/gnu/packages/dbm.scm b/gnu/packages/dbm.scm
index da5db84b41..97b2bded46 100644
--- a/gnu/packages/dbm.scm
+++ b/gnu/packages/dbm.scm
@@ -1,7 +1,7 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2012, 2013, 2014, 2016, 2020 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2013, 2015, 2025 Andreas Enge <andreas@enge.fr>
-;;; Copyright © 2016, 2017, 2018, 2020, 2021 Efraim Flashner <efraim@flashner.co.il>
+;;; Copyright © 2016-2018, 2020, 2021, 2025 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2017, 2018 Marius Bakke <mbakke@fastmail.com>
;;; Copyright © 2018 Mark H Weaver <mhw@netris.org>
;;; Copyright © 2020 Jakub Kądziołka <kuba@kadziolka.net>
@@ -91,7 +91,9 @@
#:out-of-source? #true
#:configure-flags
#~(list
- "CFLAGS=-g -O2 -Wno-error=implicit-function-declaration"
+ #$@(if (target-ppc64le?)
+ #~("CFLAGS=-g -O2 -Wno-error=implicit-function-declaration -fpermissive")
+ #~("CFLAGS=-g -O2 -Wno-error=implicit-function-declaration"))
;; Remove 7 MiB of .a files.
"--disable-static"
diff --git a/gnu/packages/diffoscope.scm b/gnu/packages/diffoscope.scm
index 4d1121f476..a5b371a099 100644
--- a/gnu/packages/diffoscope.scm
+++ b/gnu/packages/diffoscope.scm
@@ -78,7 +78,7 @@
(define-public diffoscope
(package
(name "diffoscope")
- (version "302")
+ (version "303")
(source
(origin
(method git-fetch)
@@ -87,7 +87,7 @@
(commit version)))
(file-name (git-file-name name version))
(sha256
- (base32 "1h7qkmy8q2l864f4vlpxclxljh7dqr51pwvwra5lfr92bjcy5mdr"))))
+ (base32 "1asrhbba9jrk7vibr89s03sy0kac0bhh9ddp0gy45zffhhflnxb5"))))
(build-system pyproject-build-system)
(arguments
(list
@@ -210,6 +210,7 @@
html2text
imagemagick
libarchive
+ libcaca
llvm
lz4
lzip
diff --git a/gnu/packages/emulators.scm b/gnu/packages/emulators.scm
index 130b2e0877..7c8202dd71 100644
--- a/gnu/packages/emulators.scm
+++ b/gnu/packages/emulators.scm
@@ -3571,59 +3571,58 @@ assembler, and debugger for the Intel 8085 microprocessor.
(define-public pcsxr
;; No release since 2017.
- (let ((commit "6484236cb0281e8040ff6c8078c87899a3407534"))
+ (let ((commit "666604321bf2d3dd5e5f58b534cfce41e72ad7d1")
+ (revision "1"))
(package
(name "pcsxr")
- ;; Version is tagged here: https://github.com/frealgagu/PCSX-Reloaded
- (version "1.9.95")
+ ;; From CMakeLists.txt.
+ (version (git-version "1.9.94" revision commit))
(source
(origin
(method git-fetch)
(uri (git-reference
- (url "https://github.com/pcsxr/PCSX-Reloaded")
+ (url "https://github.com/MaddTheSane/PCSX-Reloaded")
(commit commit)))
+ (patches (search-patches "pcsxr-find-harfbuzz.patch"
+ "pcsxr-fix-definitions.patch"))
(sha256
- (base32
- "138mayp7zi9v4l3lm5f6xxkds619w1fgg769zm8s45c84jbz7dza"))
+ (base32 "0lcypcawnipm02m3wnjsrm9r10llabncx78ramk7iw03a646dngj"))
(file-name (git-file-name name commit))))
(build-system cmake-build-system)
(arguments
- `(#:tests? #f ;no "test" target
- #:configure-flags
- (list "-DSND_BACKEND=pulse"
- "-DENABLE_CCDDA='ON'"
- "-DUSE_LIBARCHIVE='ON'"
- "-DUSE_LIBCDIO='ON'")
- #:phases
- (modify-phases %standard-phases
- (add-after 'unpack 'cd-subdir
- (lambda _ (chdir "pcsxr") #t))
- (add-before 'configure 'fix-cdio-lookup
- (lambda* (#:key inputs #:allow-other-keys)
- (substitute* "cmake/FindCdio.cmake"
- (("/usr/include/cdio")
- (search-input-directory inputs "/include/cdio")))))
- (add-after 'install 'wrap-program
- (lambda* (#:key inputs outputs #:allow-other-keys)
- (wrap-program (string-append (assoc-ref outputs "out")
- "/bin/pcsxr")
- ;; For GtkFileChooserDialog.
- `("GSETTINGS_SCHEMA_DIR" =
- (,(string-append (assoc-ref inputs "gtk+")
- "/share/glib-2.0/schemas")))))))))
- (native-inputs
- (list pkg-config intltool
- `(,glib "bin")))
- (inputs
- (list bash-minimal
- libcdio
- sdl2
- gtk+
- ffmpeg-4
- libxv
- libarchive
- pulseaudio))
- (home-page "https://archive.codeplex.com/?p=pcsxr")
+ (list
+ #:tests? #f ;no "test" target
+ #:configure-flags
+ #~(list "-DSND_BACKEND=pulse"
+ "-DENABLE_CCDDA='ON'"
+ "-DUSE_LIBARCHIVE='ON'"
+ "-DUSE_LIBCDIO='ON'"
+ "-DCMAKE_C_FLAGS=-Wno-incompatible-pointer-types")
+ #:phases
+ #~(modify-phases %standard-phases
+ (add-before 'configure 'fix-cdio-lookup
+ (lambda* (#:key inputs #:allow-other-keys)
+ (substitute* "cmake/FindCdio.cmake"
+ (("/usr/include/cdio")
+ (search-input-directory inputs "/include/cdio")))))
+ (add-after 'install 'wrap-program
+ (lambda* (#:key inputs #:allow-other-keys)
+ (wrap-program (string-append #$output "/bin/pcsxr")
+ ;; For GtkFileChooserDialog.
+ `("GSETTINGS_SCHEMA_DIR" =
+ (,(string-append (assoc-ref inputs "gtk+")
+ "/share/glib-2.0/schemas")))))))))
+ (native-inputs (list pkg-config intltool
+ `(,glib "bin")))
+ (inputs (list bash-minimal
+ libcdio
+ sdl2
+ gtk+
+ ffmpeg-4
+ libxv
+ libarchive
+ pulseaudio))
+ (home-page "https://github.com/MaddTheSane/PCSX-Reloaded")
(synopsis "PlayStation emulator")
(description
"A PlayStation emulator based on PCSX-df Project with bugfixes and
diff --git a/gnu/packages/gcc.scm b/gnu/packages/gcc.scm
index e0231f88fe..aa1454ca96 100644
--- a/gnu/packages/gcc.scm
+++ b/gnu/packages/gcc.scm
@@ -675,11 +675,32 @@ Go. It also includes runtime support libraries for these languages.")
(define %gcc-13-x86_64-micro-architectures
(append %gcc-12-x86_64-micro-architectures
- '("graniterapids"))) ;Intel
+ '("graniterapids" ;Intel
+ "lujiazui")))
+
+(define %gcc-14-aarch64-micro-architectures
+ (append %gcc-13-aarch64-micro-architectures
+ '("armv9.4-a")))
+
+(define %gcc-14-ppc64le-micro-architectures
+ (append %gcc-10-ppc64le-micro-architectures
+ '("power11")))
(define %gcc-14-x86_64-micro-architectures
(append %gcc-13-x86_64-micro-architectures
- '("znver5"))) ;AMD
+ '("znver5" ;AMD
+ "yongfeng")))
+
+(define %gcc-15-aarch64-micro-architectures
+ (append %gcc-14-aarch64-micro-architectures
+ '("armv9.5-a")))
+
+(define %gcc-15-x86_64-micro-architectures
+ (append
+ (fold delete %gcc-14-x86_64-micro-architectures
+ '("knm" "knl"))
+ '("diamondrapids" ;Intel
+ "shijidadao")))
(define-public gcc-7
(package
@@ -887,10 +908,10 @@ It also includes runtime support libraries for these languages.")
(("\\.\\./lib64") "../lib"))))))))
(properties
`((compiler-cpu-architectures
- ("aarch64" ,@%gcc-13-aarch64-micro-architectures)
+ ("aarch64" ,@%gcc-14-aarch64-micro-architectures)
("armhf" ,@%gcc-13-armhf-micro-architectures)
- ("i686" ,@%gcc-13-x86_64-micro-architectures)
- ("powerpc64le" ,@%gcc-10-ppc64le-micro-architectures)
+ ("i686" ,@%gcc-14-x86_64-micro-architectures)
+ ("powerpc64le" ,@%gcc-14-ppc64le-micro-architectures)
("x86_64" ,@%gcc-14-x86_64-micro-architectures))
,@(package-properties gcc-11)))))
@@ -932,11 +953,11 @@ It also includes runtime support libraries for these languages.")
(string-append lib "/include"))))))))))))
(properties
`((compiler-cpu-architectures
- ("aarch64" ,@%gcc-13-aarch64-micro-architectures)
+ ("aarch64" ,@%gcc-15-aarch64-micro-architectures)
("armhf" ,@%gcc-13-armhf-micro-architectures)
- ("i686" ,@%gcc-13-x86_64-micro-architectures)
- ("powerpc64le" ,@%gcc-10-ppc64le-micro-architectures)
- ("x86_64" ,@%gcc-14-x86_64-micro-architectures))
+ ("i686" ,@%gcc-15-x86_64-micro-architectures)
+ ("powerpc64le" ,@%gcc-14-ppc64le-micro-architectures)
+ ("x86_64" ,@%gcc-15-x86_64-micro-architectures))
,@(package-properties gcc-11)))))
diff --git a/gnu/packages/gnome.scm b/gnu/packages/gnome.scm
index e2af4d567b..506578fb11 100644
--- a/gnu/packages/gnome.scm
+++ b/gnu/packages/gnome.scm
@@ -5991,16 +5991,6 @@ coordinates) using the Nominatim service. geocode-glib caches requests for
faster results and to avoid unnecessary server load.")
(license license:lgpl2.0+)))
-(define-public geocode-glib-with-libsoup2
- (package
- (inherit geocode-glib)
- (name "geocode-glib-with-libsoup2")
- (arguments (substitute-keyword-arguments (package-arguments geocode-glib)
- ((#:configure-flags flags ''())
- #~(delete "-Dsoup2=false" #$flags))))
- (inputs (modify-inputs (package-inputs geocode-glib)
- (replace "libsoup" libsoup-minimal-2)))))
-
(define-public upower
(package
(name "upower")
@@ -8518,30 +8508,6 @@ contacts, tasks, and calendar information. It was originally developed for
Evolution (hence the name), but is now used by other packages as well.")
(license license:lgpl2.0)))
-;;; This version can be used for projects with dependencies stuck on libsoup2.
-(define-public evolution-data-server-3.44
- (package
- (inherit evolution-data-server)
- (name "evolution-data-server")
- (version "3.44.4")
- (source
- (origin
- (method url-fetch)
- (uri (string-append "mirror://gnome/sources/" name "/"
- (version-major+minor version) "/"
- name "-" version ".tar.xz"))
- (sha256
- (base32 "1sxjrjr31wqbp9g4pf6dwj8rc4mi7c5fbfd489ha92ym7246bin0"))))
- (inputs
- (modify-inputs (package-inputs evolution-data-server)
- (replace "gnome-online-accounts" gnome-online-accounts-3.44)
- (replace "libgweather4" libgweather)
- (replace "webkitgtk-for-gtk3" webkitgtk-with-libsoup2)))
- (propagated-inputs
- (modify-inputs (package-propagated-inputs evolution-data-server)
- (delete "gtk")
- (replace "libsoup" libsoup-minimal-2)))))
-
(define-public caribou
(package
(name "caribou")
@@ -11299,14 +11265,6 @@ compiled.")
(home-page "https://wiki.gnome.org/Projects/Folks")
(license license:lgpl2.1+)))
-(define-public folks-with-libsoup2
- (package
- (inherit folks)
- (name "folks-with-libsoup2")
- (inputs
- (modify-inputs (package-inputs folks)
- (replace "evolution-data-server" evolution-data-server-3.44)))))
-
(define-public gfbgraph
(package
(name "gfbgraph")
diff --git a/gnu/packages/gnunet.scm b/gnu/packages/gnunet.scm
index d2ec53ac48..013e974dfa 100644
--- a/gnu/packages/gnunet.scm
+++ b/gnu/packages/gnunet.scm
@@ -165,14 +165,14 @@ tool to extract metadata from a file and print the results.")
(define-public libmicrohttpd
(package
(name "libmicrohttpd")
- (version "1.0.1")
+ (version "1.0.2")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnu/libmicrohttpd/libmicrohttpd-"
version ".tar.gz"))
(sha256
(base32
- "151bi13xx8dz5c9v33chp6ch5q8wmbxb9z7l37g4vqsdkgy0k7m8"))))
+ "1ix843yqhcl8d5gh5652pw2scx4p5n836ca80ymms5rl136lycnz"))))
(build-system gnu-build-system)
(arguments
(list #:configure-flags
diff --git a/gnu/packages/gnuzilla.scm b/gnu/packages/gnuzilla.scm
index 7e5ebef0e9..13de000920 100644
--- a/gnu/packages/gnuzilla.scm
+++ b/gnu/packages/gnuzilla.scm
@@ -3,7 +3,7 @@
;;; Copyright © 2013-2022 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2014-2025 Mark H Weaver <mhw@netris.org>
;;; Copyright © 2015 Sou Bunnbu <iyzsong@gmail.com>
-;;; Copyright © 2016-2019, 2021, 2024 Efraim Flashner <efraim@flashner.co.il>
+;;; Copyright © 2016-2019, 2021, 2024, 2025 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2016 Alex Griffin <a@ajgrf.com>
;;; Copyright © 2017, 2023 Clément Lassieur <clement@lassieur.org>
;;; Copyright © 2017, 2018 Nikita <nikita@n0.is>
@@ -931,8 +931,8 @@ variable defined below. It requires guile-json to be installed."
rust
`(,rust "cargo")
rust-cbindgen
- llvm-17
- clang-17
+ llvm-20
+ clang-20
perl
node-lts
python-wrapper
diff --git a/gnu/packages/golang.scm b/gnu/packages/golang.scm
index 3f79d9862e..eb04e2eb86 100644
--- a/gnu/packages/golang.scm
+++ b/gnu/packages/golang.scm
@@ -1,5 +1,5 @@
;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2016-2024 Efraim Flashner <efraim@flashner.co.il>
+;;; Copyright © 2016-2025 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2016 Matthew Jordan <matthewjordandevops@yandex.com>
;;; Copyright © 2016 Andy Wingo <wingo@igalia.com>
;;; Copyright © 2016, 2019, 2021 Ludovic Courtès <ludo@gnu.org>
@@ -1012,6 +1012,17 @@ in the style of communicating sequential processes (@dfn{CSP}).")
;; as the bootstrap toolchain.
(alist-replace "go" (list go-1.21) (package-native-inputs go-1.21)))))
+(define %go-1.23-arm64-micro-architectures
+ ;; https://go.dev/wiki/MinimumRequirements#arm64
+ ;; Allowed values are v8.{0-9} and v9.{0-5}. This may be followed by an option
+ ;; specifying extensions implemented by target hardware. Valid options are
+ ;; ,lse and ,crypto.
+ ;; Match Guix's specifications and then rewrite in (guix transformations).
+ (append (map (lambda (suffix) (string-append "armv8" suffix "-a"))
+ '("" ".1" ".2" ".3" ".4" ".5" ".6" ".7" ".8" ".9"))
+ (map (lambda (suffix) (string-append "armv9" suffix "-a"))
+ '("" ".1" ".2" ".3" ".4" ".5"))))
+
(define-public go-1.23
(package
(inherit go-1.22)
@@ -1025,7 +1036,13 @@ in the style of communicating sequential processes (@dfn{CSP}).")
(commit (string-append "go" version))))
(file-name (git-file-name name version))
(sha256
- (base32 "06c5cjjqk95p16cb6p8fgqqsddc1a1kj3w2m0na5v91gvwxbd0pq"))))))
+ (base32 "06c5cjjqk95p16cb6p8fgqqsddc1a1kj3w2m0na5v91gvwxbd0pq"))))
+ (properties
+ `((compiler-cpu-architectures
+ ("aarch64" ,@%go-1.23-arm64-micro-architectures)
+ ("armhf" ,@%go-1.17-arm-micro-architectures)
+ ("powerpc64le" ,@%go-1.17-powerpc64le-micro-architectures)
+ ("x86_64" ,@%go-1.18-x86_64-micro-architectures))))))
(define-public go-1.24
(package
diff --git a/gnu/packages/haskell-apps.scm b/gnu/packages/haskell-apps.scm
index e626509067..5a1f654652 100644
--- a/gnu/packages/haskell-apps.scm
+++ b/gnu/packages/haskell-apps.scm
@@ -888,32 +888,20 @@ is programmed in Haskell.")
(define-public scroll
(package
(name "scroll")
- (version "1.20180421")
+ (version "1.20250228.2")
(source
(origin
(method url-fetch)
(uri (hackage-uri "scroll" version))
(sha256
(base32
- "0apzrvf99rskj4dbmn57jjxrsf19j436s8a09m950df5aws3a0wj"))))
+ "1p1741zqsxg017d08ym1clzqcdlai487wb6q12m1q7dr6i8c0gfj"))))
(build-system haskell-build-system)
- (properties '((upstream-name . "scroll")))
- (arguments
- '(#:phases
- (modify-phases %standard-phases
- (add-after 'install 'touch-static-output
- (lambda* (#:key outputs #:allow-other-keys)
- ;; The Haskell build system adds a "static" output by
- ;; default, and there is no way to override this until
- ;; <https://issues.guix.gnu.org/41569> is fixed. Without
- ;; this phase, the daemon complains because we do not
- ;; create the "static" output.
- (with-output-to-file (assoc-ref outputs "static")
- (lambda ()
- (display "static output not used\n")))
- #t)))))
+ (properties '((upstream-name . "scroll")
+ (updater-extra-inputs "ghc-base-compat")))
(inputs
- (list ghc-case-insensitive
+ (list ghc-base-compat
+ ghc-case-insensitive
ghc-data-default
ghc-ifelse
ghc-monad-loops
diff --git a/gnu/packages/haskell-xyz.scm b/gnu/packages/haskell-xyz.scm
index 6b8cce3cfc..fd7519b957 100644
--- a/gnu/packages/haskell-xyz.scm
+++ b/gnu/packages/haskell-xyz.scm
@@ -5,7 +5,7 @@
;;; Copyright © 2015, 2019 Eric Bavier <bavier@member.fsf.org>
;;; Copyright © 2016, 2018, 2019, 2021 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2016, 2017 Nikita <nikita@n0.is>
-;;; Copyright © 2016, 2019, 2023 Efraim Flashner <efraim@flashner.co.il>
+;;; Copyright © 2016, 2019, 2023, 2025 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2015, 2016, 2017, 2018, 2019 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2016, 2017 David Craven <david@craven.ch>
;;; Copyright © 2017 Danny Milosavljevic <dannym@scratchpost.org>
@@ -7901,7 +7901,9 @@ between 2 and 3 times faster than the Mersenne Twister.")
"lib/UI/NCurses/Enums.chs"
"lib/UI/NCurses/Panel.chs")
(("<ncursesw/") "<"))
- #t)))
+ ;; KEY_EVENT doesn't appear in our ncurses.h
+ (substitute* "lib/UI/NCurses/Enums.chs"
+ ((".*KEY_EVENT.*") "")))))
#:cabal-revision
("1"
"1wfdy716s5p1sqp2gsg43x8wch2dxg0vmbbndlb2h3d8c9jzxnca")))
diff --git a/gnu/packages/icu4c.scm b/gnu/packages/icu4c.scm
index 952d550892..f473527449 100644
--- a/gnu/packages/icu4c.scm
+++ b/gnu/packages/icu4c.scm
@@ -124,7 +124,7 @@
globalisation support for software applications. This package contains the
C/C++ part.")
(license x11)
- (home-page "http://site.icu-project.org/")))
+ (home-page "https://icu.unicode.org/")))
(define-public icu4c icu4c-73)
@@ -164,41 +164,17 @@ C/C++ part.")
(base32
"0gjg1zrnqk4vmidqgqx4xbz05898px212gnff8242is7zrmv9b6z"))))))
-(define-public icu4c-70
+(define-public icu4c-77
(package
(inherit icu4c)
- (version "70.1")
- (source (origin
- (method url-fetch)
- (uri (icu4c-uri version))
- (sha256
- (base32
- "1m9zgkaf5lyh65nyc6n0n5bs2f5k53nnj1ih6nskpwbvq4l5884d"))))
- (arguments
- (if (target-riscv64?)
- (substitute-keyword-arguments (package-arguments icu4c)
- ((#:phases phases)
- #~(modify-phases #$phases
- (replace 'disable-failing-test
- ;; It is unknown why these tests are failing.
- (lambda _
- (substitute* "source/test/cintltst/ucptrietest.c"
- ((".*addTest.*") ""))
- (substitute* "source/test/intltest/numbertest_api.cpp"
- (("(TESTCASE_AUTO\\(unitUsage\\));" all)
- (string-append "//" all))))))))
- (package-arguments icu4c)))))
-
-(define-public icu4c-69
- (package
- (inherit icu4c)
- (version "69.1")
+ (name "icu4c")
+ (version "77.1")
(source (origin
(method url-fetch)
(uri (icu4c-uri version))
(sha256
(base32
- "0icps0avkwy5df3wwc5kybxcg63hcgk4phdh9g244g0xrmx7pfjc"))))))
+ "0qa0yapkypywhzx8ai1p27125h9v1qy89f7v3w1kjz1jfwgl73jq"))))))
(define-public icu4c-build-root
(package
diff --git a/gnu/packages/kde-plasma.scm b/gnu/packages/kde-plasma.scm
index d1926c3426..097207a089 100644
--- a/gnu/packages/kde-plasma.scm
+++ b/gnu/packages/kde-plasma.scm
@@ -72,6 +72,7 @@
#:use-module (gnu packages libusb)
#:use-module (gnu packages lsof)
#:use-module (gnu packages networking)
+ #:use-module (gnu packages markup)
#:use-module (gnu packages maths)
#:use-module (gnu packages messaging)
#:use-module (gnu packages multiprecision)
@@ -271,6 +272,7 @@ Breeze is the default theme for the KDE Plasma desktop.")
(build-system qt-build-system)
(arguments
(list #:qtbase qtbase
+ #:test-exclude "flatpaktest"
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'remove-qmlmodule-required
@@ -282,13 +284,12 @@ Breeze is the default theme for the KDE Plasma desktop.")
(lambda _
(setenv "LDFLAGS" (string-append "-Wl,-rpath=" #$output
"/lib/plasma-discover"))))
- (replace 'check
+ (add-before 'check 'check-setup
(lambda* (#:key tests? #:allow-other-keys)
(when tests?
(setenv "XDG_DATA_DIRS"
(string-append (getcwd)
- ":" (getenv "XDG_DATA_DIRS")))
- (invoke "ctest" "-E" "knsbackendtest")))))))
+ ":" (getenv "XDG_DATA_DIRS")))))))))
(native-inputs (list extra-cmake-modules pkg-config))
(inputs (list appstream-qt6
attica
@@ -314,14 +315,17 @@ Breeze is the default theme for the KDE Plasma desktop.")
kdeclarative
kcmutils
kidletime
+ libostree ; required by flatpak
+ markdown
packagekit-qt6
purpose
+ qcoro-qt6
qt5compat
qtdeclarative
qtsvg
+ qtwebview
qcoro-qt6))
;; -- The following features have been disabled:
- ;; * Ostree, Library to manage ostree repository. Required to build the rpm-ostree backend
;; * RpmOstree, rpm-ostree binary to manage the system. Required to build the rpm-ostree backend
;;
;; -- The following OPTIONAL packages have not been found:
@@ -1955,7 +1959,8 @@ on QtMultimedia and @command{yt-dlp}.")
kstatusnotifieritem
qtdeclarative))
(propagated-inputs (list plasma-workspace))
- (arguments (list #:qtbase qtbase))
+ (arguments (list #:tests? #f ; no tests
+ #:qtbase qtbase))
(home-page "https://invent.kde.org/plasma/plasma-browser-integration")
(synopsis "Integrate browsers into the Plasma Desktop")
(description
@@ -3125,7 +3130,8 @@ of a Plasma shell.")
plasma-workspace
qtdeclarative
qtwebengine))
- (arguments (list #:qtbase qtbase))
+ (arguments (list #:qtbase qtbase
+ #:tests? #f)) ; no tests
(synopsis "Control center to configure Plasma Desktop")
(description "This package provides configuration UI for Plasma Desktop.")
(home-page "https://invent.kde.org/plasma/systemsettings")
diff --git a/gnu/packages/libreoffice.scm b/gnu/packages/libreoffice.scm
index 8e2db6861f..1a5881e912 100644
--- a/gnu/packages/libreoffice.scm
+++ b/gnu/packages/libreoffice.scm
@@ -893,7 +893,7 @@ commonly called @code{ftoa} or @code{dtoa}.")
(define-public libreoffice
(package
(name "libreoffice")
- (version "25.2.3.2") ;keep in sync with hunspell dictionaries
+ (version "25.2.5.2") ;keep in sync with hunspell dictionaries
(source
(origin
(method url-fetch)
@@ -906,7 +906,7 @@ commonly called @code{ftoa} or @code{dtoa}.")
"https://downloadarchive.documentfoundation.org/libreoffice/old/"
version "/src/libreoffice-" version ".tar.xz")))
(sha256
- (base32 "1pysqa31by4rhghnfyz8xbygqn6d6fjqm2py1apxkw3xa8g4cm7a"))))
+ (base32 "0fdkn9lf2q5d7kminsbcn1g2ih2ilaw2jnyarsns4jczch4v57wc"))))
(build-system glib-or-gtk-build-system)
(arguments
(list
diff --git a/gnu/packages/linux.scm b/gnu/packages/linux.scm
index 8dc546ad69..9668e078a8 100644
--- a/gnu/packages/linux.scm
+++ b/gnu/packages/linux.scm
@@ -4258,7 +4258,10 @@ that the Ethernet protocol is much simpler than the IP protocol.")
(string-append "HDRDIR=" out "/include")
(string-append "SBINDIR=" out "/sbin")
(string-append "CONFDIR=" out "/etc")
- (string-append "MANDIR=" out "/share/man")))
+ (string-append "MANDIR=" out "/share/man")
+ #$@(if (target-ppc64le?)
+ '("CCOPTS=-O2 -pipe -Wno-incompatible-pointer-types")
+ '())))
#:phases
#~(modify-phases %standard-phases
(replace 'configure
diff --git a/gnu/packages/logging.scm b/gnu/packages/logging.scm
index ff43859814..e6d456c8f6 100644
--- a/gnu/packages/logging.scm
+++ b/gnu/packages/logging.scm
@@ -357,25 +357,6 @@ library.")
(modify-inputs (package-propagated-inputs spdlog-1.15)
(replace "fmt" fmt-9)))))
-(define-public spdlog-1.10
- (package
- (inherit spdlog-1.15)
- (version "1.10.0")
- (source
- (origin
- (method git-fetch)
- (uri (git-reference
- (url "https://github.com/gabime/spdlog")
- (commit (string-append "v" version))))
- (file-name (git-file-name "spdlog" version))
- (sha256
- (base32 "02xz017ba9fssm1rp1fcfld7h79awbr6fqai9dxaqp02akp3davk"))
- (modules '((guix build utils)))
- (snippet #~(delete-file-recursively "include/spdlog/fmt/bundled"))))
- (propagated-inputs
- (modify-inputs (package-propagated-inputs spdlog-1.15)
- (replace "fmt" fmt-8)))))
-
;; Update when changing the pinned version of fmt.
(define-public spdlog spdlog-1.13)
diff --git a/gnu/packages/machine-learning.scm b/gnu/packages/machine-learning.scm
index 061cb934a4..2b6955b406 100644
--- a/gnu/packages/machine-learning.scm
+++ b/gnu/packages/machine-learning.scm
@@ -2289,50 +2289,6 @@ number of threads used in the threadpool-backed of common native libraries used
for scientific computing and data science (e.g. BLAS and OpenMP).")
(license license:bsd-3)))
-(define-public python-imbalanced-learn
- (package
- (name "python-imbalanced-learn")
- (version "0.12.2")
- (source
- (origin
- (method url-fetch)
- (uri (pypi-uri "imbalanced-learn" version))
- (sha256
- (base32 "1hgncab4g4xry7yl6wwsj1wmfnxbsajx6qmycvr28wdhvk75c358"))))
- (build-system pyproject-build-system)
- (arguments
- (list
- #:test-flags '(list "-k"
- ;; Although we cannot satify the Tensorflow and Keras requirements
- ;; (python-keras >= 2.4.3 and tensorflow >= 2.4.3), all tests
- ;; besides these pass.
- "not balanced_batch_generator and not BalancedBatchGenerator")
- #:phases '(modify-phases %standard-phases
- (add-after 'unpack 'unbreak-tests
- (lambda _
- ;; Some tests require a home directory
- (setenv "HOME"
- (getcwd)))))))
- (propagated-inputs (list python-joblib python-numpy python-scikit-learn
- python-scipy python-threadpoolctl))
- (native-inputs (list python-black
- python-flake8
- python-keras
- python-mypy
- python-pandas
- python-pytest
- python-pytest-cov
- python-setuptools
- python-wheel
- tensorflow))
- (home-page "https://github.com/scikit-learn-contrib/imbalanced-learn")
- (synopsis "Toolbox for imbalanced dataset in machine learning")
- (description
- "This is a Python package offering a number of re-sampling
-techniques commonly used in datasets showing strong between-class imbalance.
-It is compatible with @code{scikit-learn}.")
- (license license:expat)))
-
(define-public python-hdbscan
(package
(name "python-hdbscan")
@@ -4148,213 +4104,6 @@ any function). It currently contains the interface and IO code from the Shap
project, and it will potentially also do the same for the Lime project.")
(license license:expat)))
-(define-public python-keras-applications
- (package
- (name "python-keras-applications")
- (version "1.0.8")
- (source
- (origin
- (method url-fetch)
- (uri (pypi-uri "Keras_Applications" version))
- (sha256
- (base32
- "1rcz31ca4axa6kzhjx4lwqxbg4wvlljkj8qj9a7p9sfd5fhzjyam"))))
- (build-system python-build-system)
- ;; The tests require Keras, but this package is needed to build Keras.
- (arguments '(#:tests? #f))
- (propagated-inputs
- (list python-h5py python-numpy))
- (native-inputs
- (list python-pytest python-pytest-cov
- python-pytest-xdist))
- (home-page "https://github.com/keras-team/keras-applications")
- (synopsis "Reference implementations of popular deep learning models")
- (description
- "This package provides reference implementations of popular deep learning
-models for use with the Keras deep learning framework.")
- (license license:expat)))
-
-(define-public python-keras-preprocessing
- (package
- (name "python-keras-preprocessing")
- (version "1.1.0")
- (source
- (origin
- (method url-fetch)
- (uri (pypi-uri "Keras_Preprocessing" version))
- (sha256
- (base32
- "1r98nm4k1svsqjyaqkfk23i31bl1kcfcyp7094yyj3c43phfp3as"))))
- (build-system python-build-system)
- (propagated-inputs
- (list python-numpy python-six))
- (native-inputs
- (list python-pandas
- python-pillow
- python-pytest
- python-pytest-cov
- python-pytest-xdist
- tensorflow))
- (home-page "https://github.com/keras-team/keras-preprocessing/")
- (synopsis "Data preprocessing and augmentation for deep learning models")
- (description
- "Keras Preprocessing is the data preprocessing and data augmentation
-module of the Keras deep learning library. It provides utilities for working
-with image data, text data, and sequence data.")
- (license license:expat)))
-
-(define-public python-keras
- (package
- (name "python-keras")
- (version "2.3.1")
- (source
- (origin
- (method url-fetch)
- (uri (pypi-uri "Keras" version))
- (sha256
- (base32
- "1k68xd8n2y9ldijggjc8nn4d6d1axw0p98gfb0fmm8h641vl679j"))
- (modules '((guix build utils)))
- (snippet
- '(substitute* '("keras/callbacks/callbacks.py"
- "keras/engine/training_utils.py"
- "keras/engine/training.py"
- "keras/engine/training_generator.py"
- "keras/utils/generic_utils.py")
- (("from collections import Iterable")
- "from collections.abc import Iterable")
- (("collections.Container")
- "collections.abc.Container")
- (("collections.Mapping")
- "collections.abc.Mapping")
- (("collections.Sequence")
- "collections.abc.Sequence")))))
- (build-system python-build-system)
- (arguments
- `(#:phases
- (modify-phases %standard-phases
- (add-after 'unpack 'tf-compatibility
- (lambda _
- (substitute* "keras/backend/tensorflow_backend.py"
- (("^get_graph = .*")
- "get_graph = tf.get_default_graph")
- (("tf.compat.v1.nn.fused_batch_norm")
- "tf.nn.fused_batch_norm")
- ;; categorical_crossentropy does not support axis
- (("from_logits=from_logits, axis=axis")
- "from_logits=from_logits")
- ;; dropout accepts a level number, not a named rate argument.
- (("dropout\\(x, rate=level,")
- "dropout(x, level,")
- (("return x.shape.rank")
- "return len(x.shape)"))))
- (add-after 'unpack 'hdf5-compatibility
- (lambda _
- ;; The truth value of an array with more than one element is ambiguous.
- (substitute* "tests/keras/utils/io_utils_test.py"
- ((" *assert .* == \\[b'(asd|efg).*") ""))
- (substitute* "tests/test_model_saving.py"
- (("h5py.File\\('does not matter',")
- "h5py.File('does not matter', 'w',"))
- (substitute* "keras/utils/io_utils.py"
- (("h5py.File\\('in-memory-h5py', driver='core', backing_store=False\\)")
- "h5py.File('in-memory-h5py', 'w', driver='core', backing_store=False)")
- (("h5file.fid.get_file_image")
- "h5file.id.get_file_image"))
- (substitute* "keras/engine/saving.py"
- (("\\.decode\\('utf-?8'\\)") ""))))
- (add-after 'unpack 'delete-unavailable-backends
- (lambda _
- (delete-file "keras/backend/theano_backend.py")
- (delete-file "keras/backend/cntk_backend.py")))
- (replace 'check
- (lambda* (#:key tests? #:allow-other-keys)
- (when tests?
- ;; These tests attempt to download data files from the internet.
- (delete-file "tests/integration_tests/test_datasets.py")
- (delete-file "tests/integration_tests/imagenet_utils_test.py")
- (invoke "python" "-m" "pytest" "tests"
- "-p" "no:pep8"
- ;; FIXME: python-build-system lacks PARALLEL-TESTS?
- "-n" (number->string (parallel-job-count))
- ;; This one uses the theano backend that we don't have.
- "--ignore=tests/test_api.py"
- "--ignore=tests/keras/backend/backend_test.py"
- ;; Our Tensorflow version does not have the coder ops library.
- "--ignore=tests/keras/callbacks/callbacks_test.py"
- ;; ...nor do we have tensorboard
- "--ignore=tests/keras/callbacks/tensorboard_test.py"
- "-k"
- (string-append
- ;; See https://github.com/keras-team/keras/pull/7033
- "not test_TimeDistributed_learning_phase "
- ;; XXX fails because no closure is provided
- "and not test_func_dump_and_load_backwards_compat "
- ;; XXX real bug? These are all tests that fail due to
- ;; shape mismatch, e.g. "got logits shape [12,3] and
- ;; labels shape [9]"
- "and not test_model_with_crossentropy_losses_channels_first "
- "and not test_masking_correctness_output_size_not_equal_to_first_state_size "
- "and not test_convolutional_recurrent "
- "and not test_axis "
-
- ;; XXX fails because of 3/15 values have unexpected differences.
- "and not test_masking_correctness_output_not_equal_to_first_state "
- ;; XXX fails because of a difference of about 0.1
- "and not test_sample_weighted "
- ;; XXX fails because of a difference of about 0.3
- "and not test_scalar_weighted "
- ;; XXX fails because of a difference of about 0.2
- "and not test_unweighted "
-
- ;; XXX I cannot reproduce this in an interactive
- ;; Python session, because l2_norm works just fine.
- "and not test_weighted " ;TestCosineSimilarity
- "and not test_config " ;TestCosineSimilarity
-
- ;; The following test fails only in the build
- ;; container; skip it.
- "and not test_selu "
- ;; The following test was found flaky and removed in
- ;; recent versions.
- "and not test_stateful_metrics"))))))))
- (propagated-inputs
- (list python-h5py
- python-keras-applications
- python-keras-preprocessing
- python-numpy
- python-pydot
- python-pyyaml
- python-scipy
- python-six
- tensorflow
- graphviz))
- (native-inputs
- (list python-flaky
- python-markdown
- python-pandas
- python-pytest
- python-pytest-cov
- python-pytest-timeout
- python-pytest-xdist
- python-pyux
- python-sphinx
- python-requests))
- (home-page "https://keras.io/")
- (synopsis "High-level deep learning framework")
- (description "Keras is a high-level neural networks API, written in Python
-and capable of running on top of TensorFlow. It was developed with a focus on
-enabling fast experimentation. Use Keras if you need a deep learning library
-that:
-@itemize
-@item Allows for easy and fast prototyping (through user friendliness,
- modularity, and extensibility).
-@item Supports both convolutional networks and recurrent networks, as well as
- combinations of the two.
-@item Runs seamlessly on CPU and GPU.
-@end itemize\n")
- (license license:expat)))
-
(define-public gloo
(let ((version "0.0.0") ; no proper version tag
(commit "81925d1c674c34f0dc34dd9a0f2151c1b6f701eb")
diff --git a/gnu/packages/mail.scm b/gnu/packages/mail.scm
index d5731926a9..9dcc4660d0 100644
--- a/gnu/packages/mail.scm
+++ b/gnu/packages/mail.scm
@@ -113,6 +113,7 @@
#:use-module (gnu packages fontutils)
#:use-module (gnu packages freedesktop)
#:use-module (gnu packages gawk)
+ #:use-module (gnu packages gcc)
#:use-module (gnu packages gdb)
#:use-module (gnu packages gettext)
#:use-module (gnu packages ghostscript)
@@ -1228,6 +1229,12 @@ and corrections. It is based on a Bayesian filter.")
#:tests? #f
#:phases
#~(modify-phases %standard-phases
+ ;; See: https://github.com/OfflineIMAP/offlineimap3/pull/205.
+ (add-after 'unpack 'fix-issue-205
+ (lambda _
+ (substitute* "offlineimap/localeval.py"
+ (("import importlib.util\n")
+ "import importlib.util\nimport importlib.machinery\n"))))
(add-after 'build 'build-documentation
(lambda _
(substitute* "docs/Makefile"
@@ -4830,7 +4837,7 @@ on RFC 3501 and original @code{imaplib} module.")
(define-public rspamd
(package
(name "rspamd")
- (version "3.6")
+ (version "3.12.1")
(source
(origin
(method git-fetch)
@@ -4838,16 +4845,26 @@ on RFC 3501 and original @code{imaplib} module.")
(url "https://github.com/rspamd/rspamd")
(commit version)))
(sha256
- (base32 "1ra18c3wczbdqrg9p69k04smjskjkdpxcfff9ff4yi7pmqjaxr8s"))
+ (base32 "0li75dqqy0irrvv2jddmll2adf15cywif982ijj034hldg9162bc"))
(file-name (git-file-name name version))))
(build-system cmake-build-system)
(arguments
- '(#:configure-flags '("-DENABLE_LUAJIT=ON"
- "-DLOCAL_CONFDIR=/etc/rspamd")))
+ (list #:configure-flags #~(list "-DENABLE_LUAJIT=ON"
+ "-DLOCAL_CONFDIR=/etc/rspamd")
+ #:phases
+ #~(modify-phases %standard-phases
+ (replace 'check
+ (lambda* (#:key tests? #:allow-other-keys)
+ (when tests?
+ (invoke "make" "run-test"
+ "-j" (number->string (parallel-job-count)))))))))
(inputs
(list file
glib
icu4c
+ libarchive
+ libbfd
+ libiberty
libsodium
luajit
openssl
diff --git a/gnu/packages/messaging.scm b/gnu/packages/messaging.scm
index 8a32f2a75a..df35fc8229 100644
--- a/gnu/packages/messaging.scm
+++ b/gnu/packages/messaging.scm
@@ -2905,7 +2905,7 @@ validating international phone numbers.")
(define-public chatty
(package
(name "chatty")
- (version "0.6.7")
+ (version "0.7.3")
(source (origin
(method git-fetch)
(uri (git-reference
@@ -2920,7 +2920,7 @@ validating international phone numbers.")
(file-name (git-file-name name version))
(sha256
(base32
- "11q07vjrrjf3k00kk41vm79brpq0qigz7l328br3g0li979kz32v"))))
+ "0d6z0mgl1xx384ph5lw3p5rpg3w1ninzyxjjjas3z8i7fyk47inf"))))
(build-system meson-build-system)
(arguments
'(#:glib-or-gtk? #t
@@ -2947,7 +2947,7 @@ validating international phone numbers.")
xorg-server-for-tests))
(inputs
(list feedbackd
- folks-with-libsoup2
+ folks
gnome-desktop
gsettings-desktop-schemas
gspell
@@ -2962,7 +2962,7 @@ validating international phone numbers.")
purple-mm-sms
sqlite))
(propagated-inputs
- (list adwaita-icon-theme evolution-data-server-3.44))
+ (list adwaita-icon-theme evolution-data-server))
(synopsis "Mobile client for XMPP and SMS messaging")
(description "Chatty is a chat program for XMPP and SMS. It works on mobile
as well as on desktop platforms. It's based on libpurple and ModemManager.")
diff --git a/gnu/packages/pantheon.scm b/gnu/packages/pantheon.scm
index 2e4fa08d5a..b17197a858 100644
--- a/gnu/packages/pantheon.scm
+++ b/gnu/packages/pantheon.scm
@@ -173,10 +173,10 @@ desktop.")
(symlink bin link)))))))
(inputs
(list clutter
- evolution-data-server-3.44
- folks-with-libsoup2
+ evolution-data-server
+ folks
geoclue
- geocode-glib-with-libsoup2
+ geocode-glib
granite-6
glib
gtk
diff --git a/gnu/packages/patches/pcsxr-find-harfbuzz.patch b/gnu/packages/patches/pcsxr-find-harfbuzz.patch
new file mode 100644
index 0000000000..69932d719e
--- /dev/null
+++ b/gnu/packages/patches/pcsxr-find-harfbuzz.patch
@@ -0,0 +1,21 @@
+The .cmake files this project includes don't play well with harfbuzz's internal .cmake file.
+This patch works around the issues present in the project's CMake configuration.
+
+diff --git a/cmake/FindPango.cmake b/cmake/FindPango.cmake
+index 2a7da99d..c08fbaab 100644
+--- a/cmake/FindPango.cmake
++++ b/cmake/FindPango.cmake
+@@ -74,6 +74,13 @@ foreach(pango_dep ${Pango_DEPS})
+ set_property (TARGET "${Pango}" APPEND PROPERTY INTERFACE_LINK_LIBRARIES "${${pango_dep}}")
+ endforeach(pango_dep)
+
++if(NOT HARFBUZZ_INCLUDE_DIR)
++find_package(harfbuzz)
++endif()
++
++list(APPEND Pango_INCLUDE_DIRS ${HARFBUZZ_INCLUDE_DIR})
++set_property (TARGET "${Pango}" APPEND PROPERTY INTERFACE_LINK_LIBRARIES "harfbuzz::harfbuzz")
++
+ include(FindPackageHandleStandardArgs)
+ find_package_handle_standard_args(Pango
+ REQUIRED_VARS
diff --git a/gnu/packages/patches/pcsxr-fix-definitions.patch b/gnu/packages/patches/pcsxr-fix-definitions.patch
new file mode 100644
index 0000000000..8ec389ec09
--- /dev/null
+++ b/gnu/packages/patches/pcsxr-fix-definitions.patch
@@ -0,0 +1,137 @@
+There are a lot of global variable definitions that aren't valid on modern compilers. According to upstream's Dockerfile,
+this project is meant to compile with GCC 6! So there are some declarations that need to be changed.
+
+diff --git a/gui/Linux.h b/gui/Linux.h
+index 2a939050..99404d93 100644
+--- a/gui/Linux.h
++++ b/gui/Linux.h
+@@ -44,8 +44,8 @@
+
+ extern gboolean UseGui;
+ extern int StatesC;
+-char cfgfile[MAXPATHLEN]; /* ADB Comment this out - make a local var, or at least use gchar funcs */
+-char cfgfile_basename[MAXPATHLEN]; /* ADB Comment this out - make a local var, or at least use gchar funcs */
++extern char cfgfile[MAXPATHLEN]; /* ADB Comment this out - make a local var, or at least use gchar funcs */
++extern char cfgfile_basename[MAXPATHLEN]; /* ADB Comment this out - make a local var, or at least use gchar funcs */
+
+ int LoadConfig();
+ void SaveConfig();
+diff --git a/gui/LnxMain.c b/gui/LnxMain.c
+index d6dd9316..02002bc1 100644
+--- a/gui/LnxMain.c
++++ b/gui/LnxMain.c
+@@ -49,6 +49,9 @@ enum {
+
+ gboolean UseGui = TRUE;
+
++char cfgfile[MAXPATHLEN] = {0};
++char cfgfile_basename[MAXPATHLEN] = {0};
++
+ static void CreateMemcard(char *filename, char *conf_mcd) {
+ gchar *mcd;
+ struct stat buf;
+diff --git a/plugins/bladesio1/sio1.c b/plugins/bladesio1/sio1.c
+index 17ac4b65..c6fd585a 100644
+--- a/plugins/bladesio1/sio1.c
++++ b/plugins/bladesio1/sio1.c
+@@ -55,8 +55,6 @@ static const unsigned char build = 1;
+
+ static void (CALLBACK *irqCallback)(void) = 0;
+
+-Settings settings;
+-
+ /* sio status flags.
+ */
+ enum {
+diff --git a/plugins/dfinput/pad.h b/plugins/dfinput/pad.h
+index 8337fe7e..6d44851d 100644
+--- a/plugins/dfinput/pad.h
++++ b/plugins/dfinput/pad.h
+@@ -151,7 +151,7 @@ typedef struct tagKeyDef {
+ enum { ANALOG_XP = 0, ANALOG_XM, ANALOG_YP, ANALOG_YM };
+
+ #if SDL_VERSION_ATLEAST(2,0,0)
+-SDL_GameControllerButton controllerMap[DKEY_TOTAL];
++extern SDL_GameControllerButton controllerMap[DKEY_TOTAL];
+ #endif
+
+ typedef struct tagPadDef {
+diff --git a/plugins/dfnet/cfg.c b/plugins/dfnet/cfg.c
+index 921efbe3..1057426a 100644
+--- a/plugins/dfnet/cfg.c
++++ b/plugins/dfnet/cfg.c
+@@ -11,6 +11,8 @@
+
+ #include "dfnet.h"
+
++Config conf;
++
+ #define CFG_FILENAME "dfnet.cfg"
+
+ void SaveConf() {
+diff --git a/plugins/dfnet/dfnet.c b/plugins/dfnet/dfnet.c
+index 6c6ec5f9..ddc92169 100644
+--- a/plugins/dfnet/dfnet.c
++++ b/plugins/dfnet/dfnet.c
+@@ -24,6 +24,9 @@ const unsigned char build = 3; // increase that with each version
+
+ static char *libraryName = N_("Socket Driver");
+
++fd_set rset;
++fd_set wset;
++
+ unsigned long CALLBACK PSEgetLibType(void) {
+ return PSE_LT_NET;
+ }
+diff --git a/plugins/dfnet/dfnet.h b/plugins/dfnet/dfnet.h
+index 937814f5..e2699ad3 100644
+--- a/plugins/dfnet/dfnet.h
++++ b/plugins/dfnet/dfnet.h
+@@ -56,7 +56,7 @@ __private_extern char* PLUGLOC(char* toloc);
+
+ typedef void* HWND;
+
+-struct timeval tm;
++extern struct timeval tm;
+
+ #define CALLBACK
+
+@@ -70,24 +70,24 @@ typedef struct {
+ char ipAddress[32];
+ } Config;
+
+-Config conf;
++extern Config conf;
+
+ void LoadConf(void);
+ void SaveConf(void);
+
+-int sock;
+-char *PadSendData;
+-char *PadRecvData;
+-char PadSendSize;
+-char PadRecvSize;
+-char PadSize[2];
+-int PadCount;
+-int PadCountMax;
+-int PadInit;
+-int Ping;
+-volatile int WaitCancel;
+-fd_set rset;
+-fd_set wset;
++extern int sock;
++extern char *PadSendData;
++extern char *PadRecvData;
++extern char PadSendSize;
++extern char PadRecvSize;
++extern char PadSize[2];
++extern int PadCount;
++extern int PadCountMax;
++extern int PadInit;
++extern int Ping;
++extern volatile int WaitCancel;
++extern fd_set rset;
++extern fd_set wset;
+
+ long sockInit(void);
+ long sockShutdown(void);
diff --git a/gnu/packages/prolog.scm b/gnu/packages/prolog.scm
index cf6700543c..8bf5cb7459 100644
--- a/gnu/packages/prolog.scm
+++ b/gnu/packages/prolog.scm
@@ -185,7 +185,7 @@ it.")
(define-public trealla
(package
(name "trealla")
- (version "2.79.22")
+ (version "2.80.10")
(source
(origin
(method git-fetch)
@@ -194,7 +194,7 @@ it.")
(url "https://github.com/trealla-prolog/trealla")
(commit (string-append "v" version))))
(sha256
- (base32 "1fhk9lsj71a3l5j0dvn2qjmj85r2ixianjqlf5j5s4d7h08amm2y"))
+ (base32 "1m4qm5ymjb2579kwsz9hzclpvh7im3f2vz5fg7828r2ap1dlfwlr"))
(file-name (git-file-name name version))))
(build-system gnu-build-system)
(native-inputs
diff --git a/gnu/packages/protobuf.scm b/gnu/packages/protobuf.scm
index 6ac17d3733..765836cf65 100644
--- a/gnu/packages/protobuf.scm
+++ b/gnu/packages/protobuf.scm
@@ -465,6 +465,17 @@ from protobuf specification files.")
mechanism for serializing structured data.")
(license license:bsd-3)))
+(define-public python-protobuf-4
+ (package/inherit python-protobuf-5
+ (name "python-protobuf")
+ (version "4.21.6")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "protobuf" version))
+ (sha256
+ (base32 "1pabwidv12r73fy0jlslpgi60zd1lbx9rjnb23kgdm8wcsjl043b"))))))
+
(define-public python-protobuf
(package
(name "python-protobuf")
diff --git a/gnu/packages/python-xyz.scm b/gnu/packages/python-xyz.scm
index e24cd2288f..e7b3b98c96 100644
--- a/gnu/packages/python-xyz.scm
+++ b/gnu/packages/python-xyz.scm
@@ -885,6 +885,24 @@ comparison operators, as defined in the original
processes, in parallel, in the console, with an interactive TUI.")
(license license:expat)))
+(define-public python-orderly-set
+ (package
+ (name "python-orderly-set")
+ (version "5.5.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "orderly_set" version))
+ (sha256
+ (base32 "1kp64m0nabhhb0zxr4f8idrmniraahnfwq41gx7adbyqwk48awg8"))))
+ (build-system pyproject-build-system)
+ (native-inputs (list python-flit-core python-pytest))
+ (home-page "https://github.com/seperman/orderly-set")
+ (synopsis "Multiple implementations of Ordered Set")
+ (description "Orderly Set is a package containing multiple implementations
+of Ordered Set.")
+ (license license:expat)))
+
(define-public python-pastel
(package
(name "python-pastel")
@@ -931,6 +949,42 @@ your terminal.")
edit distance algorithm for Python in Cython for high performance.")
(license license:bsd-3)))
+(define-public python-safety-schemas
+ (package
+ (name "python-safety-schemas")
+ (version "0.0.14")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "safety_schemas" version))
+ (sha256
+ (base32 "0smgszbd3nb7jh61cgpycqhcvfwwdyaai5amw8mmf6g9b5x3z5a9"))))
+ (build-system pyproject-build-system)
+ (arguments
+ (list
+ #:test-flags
+ #~(list "-k" (string-join
+ ;; These tests are failing for unknown reasons.
+ ;; (AssertionError).
+ (list "not test_model[ConfigModel-ConfigModel]"
+ "test_model[MetadataModel-MetadataModel]"
+ "test_model[PolicyFileModel-PolicyFileModel]"
+ "test_model[ProjectModel-ProjectModel]"
+ "test_model[ReportModel-ReportModel]")
+ " and not "))))
+ (propagated-inputs (list python-dparse
+ python-packaging
+ python-pydantic-2
+ python-ruamel.yaml
+ python-typing-extensions))
+ (native-inputs (list python-deepdiff python-hatchling python-pytest))
+ ;; Source code is not yet published outside of PyPI:
+ ;; https://github.com/pyupio/safety/issues/494
+ (home-page "https://pypi.org/project/safety-schemas/")
+ (synopsis "Schemas for Safety tools")
+ (description "This package contains models and schemas used by Safety.")
+ (license license:expat)))
+
(define-public python-senf
(package
(name "python-senf")
@@ -23131,23 +23185,16 @@ implementation has been adapted, improved, and fixed from Molten.")
(define-public python-shellingham
(package
(name "python-shellingham")
- (version "1.5.1")
+ (version "1.5.4")
(source
(origin
(method url-fetch)
(uri (pypi-uri "shellingham" version))
(sha256
- (base32 "0iawv24xx6vhwbhqlxyyg901f8pf6abqyfg0711v1bvlipx83g21"))))
- (build-system python-build-system)
- (arguments
- '(#:phases
- (modify-phases %standard-phases
- (replace 'check
- (lambda* (#:key tests? #:allow-other-keys)
- (when tests?
- (invoke "python" "-m" "pytest" "-v")))))))
+ (base32 "1ph46hv920ha9clwxgrllbrphh0ww4v4pjmkbb9mnzj8kmrs1g4d"))))
+ (build-system pyproject-build-system)
(native-inputs
- (list python-pytest python-pytest-mock))
+ (list python-pytest python-pytest-mock python-setuptools python-wheel))
(home-page "https://github.com/sarugaku/shellingham")
(synopsis "Tool to detect surrounding shell")
(description
@@ -24695,28 +24742,28 @@ JSON) codec.")
(define-public python-nltk
(package
(name "python-nltk")
- (version "3.6.2")
- (source (origin
- (method url-fetch)
- (uri (pypi-uri "nltk" version ".zip"))
- (sha256
- (base32
- "1sq32lwgij9h8rsksymnxxr7bqfw3vgx5ijw4azbj6k2xnmmdmap"))))
- (build-system python-build-system)
+ (version "3.9.1")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "nltk" version))
+ (sha256
+ (base32 "0s78gayd45vl1wvpa0a44ydij6ybb7xfar8jz2j8kgg47nyjglc7"))))
+ (build-system pyproject-build-system)
(arguments
- '(;; The tests require some extra resources to be downloaded.
- ;; TODO Try packaging these resources.
- #:tests? #f))
- (propagated-inputs
- (list python-click python-joblib python-regex python-tqdm))
- (native-inputs
- (list unzip))
- (home-page "http://nltk.org/")
+ ;; Tests require some extra resources to be downloaded.
+ ;; TODO Try packaging these resources.
+ '(#:tests? #f))
+ (propagated-inputs (list python-click python-joblib python-regex
+ python-tqdm))
+ (native-inputs (list python-setuptools python-wheel))
+ (home-page "https://www.nltk.org/")
(synopsis "Natural Language Toolkit")
- (description "It provides interfaces to over 50 corpora and lexical
- resources such as WordNet, along with a suite of text processing libraries
- for classification, tokenization, stemming, tagging, parsing, and semantic
- reasoning, wrappers for natural language processing libraries.")
+ (description
+ "NLTK provides interfaces to over 50 corpora and lexical resources such as
+WordNet, along with a suite of text processing libraries for classification,
+tokenization, stemming, tagging, parsing, and semantic reasoning, wrappers for
+natural language processing libraries.")
(license license:asl2.0)))
(define-public python-pymongo
@@ -28647,35 +28694,21 @@ source bytes using the UTF-8 encoding and then rewrites Python 3.6 style
(define-public python-typer
(package
(name "python-typer")
- (version "0.6.1")
+ (version "0.16.0")
(source
(origin
(method git-fetch)
(uri (git-reference
- (url "https://github.com/tiangolo/typer")
+ (url "https://github.com/fastapi/typer")
(commit version)))
(file-name (git-file-name name version))
(sha256
- (base32 "1knv353qhkl2imav3jfp6bgq47m8wkkqhq1dzmqg2sv8rsy7zgl7"))))
+ (base32 "1axd3840b2vipfp9l36cnh5ipbsladizmjadgsnpnk502qily7sq"))))
(build-system pyproject-build-system)
(arguments
(list
- #:test-flags
- '(let ((disabled-tests (list "test_show_completion"
- "test_install_completion")))
- (list "-k" (string-append "not "
- (string-join disabled-tests
- " and not "))))
#:phases
#~(modify-phases %standard-phases
- ;; Unfortunately, this doesn't seem to be enough to fix these two
- ;; tests, but we'll patch this anyway.
- (add-after 'unpack 'patch-shell-reference
- (lambda _
- (substitute* "tests/test_completion/test_completion.py"
- (("\"bash\"") (string-append "\"" (which "bash") "\""))
- (("\"/bin/bash\"")
- (string-append "\"" (which "bash") "\"")))))
(add-before 'check 'pre-check
(lambda* (#:key tests? #:allow-other-keys)
(when tests?
@@ -28683,12 +28716,14 @@ source bytes using the UTF-8 encoding and then rewrites Python 3.6 style
;; This is for completion tests
(with-output-to-file "/tmp/.bashrc"
(lambda _ (display "# dummy")))))))))
- (propagated-inputs
- (list python-click))
- (native-inputs
- (list python-coverage python-flit python-pytest python-rich
- python-shellingham))
- (home-page "https://github.com/tiangolo/typer")
+ (propagated-inputs (list python-click
+ python-rich
+ python-shellingham
+ python-typing-extensions))
+ (native-inputs (list python-coverage ; this is required in tests
+ python-pdm-backend
+ python-pytest))
+ (home-page "https://github.com/fastapi/typer")
(synopsis "Typer builds CLI based on Python type hints")
(description
"Typer is a library for building CLI applications. It's based on Python
@@ -34286,19 +34321,16 @@ dates in almost any string formats commonly found on web pages.")
(define-public python-dparse
(package
(name "python-dparse")
- (version "0.5.1")
+ (version "0.6.4")
(source
- (origin
- (method url-fetch)
- (uri (pypi-uri "dparse" version))
- (sha256
- (base32
- "0rzkg3nymsbwdjc0ms2bsajkda02jipwyp3xk97qj71f21lz3dd1"))))
- (build-system python-build-system)
- (native-inputs
- (list python-pytest))
- (propagated-inputs
- (list python-packaging python-pyyaml python-toml))
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "dparse" version))
+ (sha256
+ (base32 "06i069hij4i53hikrsv332h2ibwfchr42b68hii6rhzdwcwrrclh"))))
+ (build-system pyproject-build-system)
+ (native-inputs (list python-hatchling python-pytest))
+ (propagated-inputs (list python-packaging python-toml))
(home-page "https://github.com/pyupio/dparse")
(synopsis "Parser for Python dependency files")
(description "This package provides a parser for Python dependency files.")
@@ -34333,31 +34365,55 @@ facility for filtering those results.")
(define-public python-safety
(package
(name "python-safety")
- (version "1.9.0")
+ (version "3.6.0")
(source
- (origin
- (method url-fetch)
- (uri (pypi-uri "safety" version))
- (sha256
- (base32
- "1j801xsxfzavjbzhhc934awvnk1b7jc0qsw3jp3ys0241mlj1gr3"))))
- (build-system python-build-system)
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "safety" version))
+ (sha256
+ (base32 "1qzplv044yfr8w41h0qmjc8lj2admk029azsqbax70wzd4kzh858"))))
+ (build-system pyproject-build-system)
(arguments
- `(#:phases
- (modify-phases %standard-phases
- (add-after 'unpack 'disable-tests
- (lambda _
- (substitute* "tests/test_safety.py"
- ;; requires network
- (("def test_check_live") "def _test_check_live"))
- #t)))))
- (propagated-inputs
- (list python-click python-dparse python-packaging python-requests))
+ (list
+ #:test-flags
+ #~(list "-k" (string-join
+ ;; test_announcements fails with AssertionError.
+ (list "not test_announcements_if_is_not_tty"
+ ;; Tests below need a network connection.
+ "test_check_live"
+ "test_check_live_cached"
+ "test_get_packages_licenses_without_api_key")
+ " and not "))
+ #:phases #~(modify-phases %standard-phases
+ (add-before 'check 'set-home ; some tests run mkdir
+ (lambda _
+ (setenv "HOME" "/tmp"))))))
+ (native-inputs (list nss-certs-for-test python-hatchling python-pytest))
+ (propagated-inputs (list python-authlib
+ python-click
+ python-dparse
+ python-filelock
+ python-httpx
+ python-jinja2
+ python-marshmallow
+ python-nltk
+ python-packaging
+ python-psutil
+ python-pydantic-2
+ python-requests
+ python-ruamel.yaml
+ python-safety-schemas
+ python-tenacity
+ python-tomli
+ python-tomlkit
+ python-typer
+ python-typing-extensions))
(home-page "https://github.com/pyupio/safety")
(synopsis "Check installed dependencies for known vulnerabilities")
- (description "Safety checks installed dependencies for known vulnerabilities.
+ (description
+ "Safety checks installed dependencies for known vulnerabilities.
By default it uses the open Python vulnerability database Safety DB.")
- (license license:expat)))
+ (license license:expat)))
(define-public python-pypandoc
(package
@@ -38807,26 +38863,31 @@ object, which can be useful if you want to force your objects into a table.")
(define-public python-deepdiff
(package
(name "python-deepdiff")
- (version "6.3.0")
+ (version "8.5.0")
(source (origin
(method url-fetch)
(uri (pypi-uri "deepdiff" version))
(sha256
(base32
- "0i5nnb3nppi2vgbhiakpxiagyhx7l1f50hzcl8fcgica4bkz2fva"))))
+ "1l8wvirgif61cqwsqzd3kf8slzlrjnffmqxnrfwxak4dz8lkbpd4"))))
(build-system pyproject-build-system)
- (propagated-inputs (list python-ordered-set))
+ (arguments
+ ;; Ignore Polars test (not packaged).
+ (list #:test-flags #~(list "-k" "not test_polars")))
+ (propagated-inputs (list python-click ; for CLI
+ python-pyyaml ; for CLI
+ python-orderly-set
+ python-orjson)) ; for optimization
(native-inputs
- (list python-click
- python-dateutil
+ (list python-flit-core
python-jsonpickle
- python-mock
python-numpy
+ python-pandas
+ python-pydantic-2
python-pytest
- python-pyyaml
- python-setuptools
- python-wheel
- python-toml))
+ python-pytest-benchmark
+ python-pytz
+ python-tomli-w))
(home-page "https://github.com/seperman/deepdiff")
(synopsis "Deep difference and search of any Python object/data")
(description
diff --git a/gnu/packages/rocm.scm b/gnu/packages/rocm.scm
index cd320dcf81..b65ac28b06 100644
--- a/gnu/packages/rocm.scm
+++ b/gnu/packages/rocm.scm
@@ -46,7 +46,7 @@
(origin
(method git-fetch)
(uri (git-reference
- (url "https://github.com/RadeonOpenCompute/llvm-project.git")
+ (url "https://github.com/ROCm/llvm-project/")
(commit (string-append "rocm-" %rocm-version))))
(file-name (git-file-name "llvm-for-rocm" %rocm-version))
(sha256
@@ -60,7 +60,7 @@
(source (origin
(method git-fetch)
(uri (git-reference
- (url "https://github.com/RadeonOpenCompute/rocm-cmake.git")
+ (url "https://github.com/ROCm/rocm-cmake/")
(commit (string-append "rocm-" version))))
(file-name (git-file-name name version))
(sha256
@@ -69,7 +69,7 @@
(build-system cmake-build-system)
(arguments `(#:tests? #f)) ; Tests try to use git commit
(native-inputs (list git))
- (home-page "https://github.com/ROCm/rocm-cmake")
+ (home-page "https://rocm.docs.amd.com/projects/ROCmCMakeBuildTools/")
(synopsis "ROCm cmake modules")
(description "ROCm cmake modules provides cmake modules for common build
tasks needed for the ROCM software stack.")
@@ -82,17 +82,19 @@ tasks needed for the ROCM software stack.")
(source %rocm-llvm-origin)
(build-system cmake-build-system)
(arguments
- `(#:build-type "Release"
- #:configure-flags
- (list "-DCMAKE_SKIP_BUILD_RPATH=FALSE"
- "-DCMAKE_BUILD_WITH_INSTALL_RPATH=FALSE")
- #:phases
- (modify-phases %standard-phases
- (add-after 'unpack 'chdir
- (lambda _
- (chdir "amd/device-libs"))))))
+ (list
+ #:tests? #f ; Not sure how to run them.
+ #:build-type "Release"
+ #:configure-flags
+ #~(list "-DCMAKE_SKIP_BUILD_RPATH=FALSE"
+ "-DCMAKE_BUILD_WITH_INSTALL_RPATH=FALSE")
+ #:phases
+ #~(modify-phases %standard-phases
+ (add-after 'unpack 'chdir
+ (lambda _
+ (chdir "amd/device-libs"))))))
(inputs (list llvm-for-rocm))
- (home-page "https://github.com/ROCm/ROCm-Device-Libs")
+ (home-page "https://github.com/ROCm/llvm-project/")
(synopsis "ROCm Device libraries")
(description "AMD-specific device-side language runtime libraries, namely
oclc, ocml, ockl, opencl, hip and hc.")
diff --git a/gnu/packages/rpc.scm b/gnu/packages/rpc.scm
index c083074cc7..36c937dcef 100644
--- a/gnu/packages/rpc.scm
+++ b/gnu/packages/rpc.scm
@@ -49,10 +49,21 @@
#:use-module (gnu packages tls)
#:use-module (srfi srfi-1))
+;; XXX: Starting from version 1.47.5, opencensus-proto is required.
+;; The package is already deprecated upstream, so it's probably not
+;; worth it spending time packaging it in Guix, just inject the source
+;; instead, to also avoid us a recursive git fetch.
+(define opencensus-proto-for-grpc-source
+ (origin
+ (method url-fetch)
+ (uri "https://github.com/census-instrumentation/opencensus-proto/archive/v0.3.0.tar.gz")
+ (sha256
+ (base32 "1c3jfl1zgjhhqyqii1wils2k05akkvrw50xmf0q0rs2r885kzqdp"))))
+
(define-public grpc
(package
(name "grpc")
- (version "1.34.0")
+ (version "1.52.2")
(outputs '("out" "static"))
(source (origin
(method git-fetch)
@@ -62,7 +73,7 @@
(file-name (git-file-name name version))
(sha256
(base32
- "1fs407hnlnm0b8sncjwys9rc7ia5nb7wxrpx39nq3pzzfs1lv3vq"))))
+ "09165p6rh5xvcnnwnmy22lwdfchgjg39y02rwj6zg4rzfps8cb43"))))
(build-system cmake-build-system)
(arguments
(list
@@ -80,6 +91,11 @@
"-DCMAKE_VERBOSE_MAKEFILE=ON")
#:phases
#~(modify-phases %standard-phases
+ (add-after 'unpack 'unpack-third-party
+ (lambda _
+ (mkdir-p "third_party/opencensus-proto/src")
+ (invoke "tar" "xvf" #+opencensus-proto-for-grpc-source
+ "-C" "third_party/opencensus-proto/src")))
(add-before 'configure 'configure-shared
(lambda* (#:key configure-flags #:allow-other-keys)
(mkdir "../build-shared")
@@ -125,24 +141,6 @@ mile of distributed computing to connect devices, mobile applications and
browsers to backend services.")
(license license:asl2.0)))
-(define-public grpc-for-python-grpcio
- (package
- (inherit grpc)
- (name "grpc")
- (version "1.47.0")
- (source (origin
- (method git-fetch)
- (uri (git-reference
- (url "https://github.com/grpc/grpc")
- (commit (string-append "v" version))
- (recursive? #true)))
- (file-name (git-file-name name version))
- (sha256
- (base32
- "1nl2d92f3576m69991d7gwyk1giavm04fagr612yjh90rni01ikw"))))
- (inputs
- (list abseil-cpp-20211102.0 c-ares/cmake openssl re2 zlib))))
-
;; Some packages require this older version.
(define-public grpc-1.16.1
(package
@@ -200,14 +198,13 @@ type information of gRPC.")
(define-public python-grpcio
(package
(name "python-grpcio")
- (version "1.47.0")
+ (version "1.52.0")
(source
(origin
(method url-fetch)
(uri (pypi-uri "grpcio" version))
(sha256
- (base32
- "00gqhz0b1sqnfx6zy7h5z41b6mpsq57r1f3p95xradcvmdgskfsx"))
+ (base32 "1nsgm8q4yahzdab4m3irffdw9zklq4kb7f8hki1ayfgw54ysim55"))
(modules '((guix build utils) (ice-9 ftw)))
(snippet
'(begin
@@ -252,7 +249,7 @@ type information of gRPC.")
(substitute* '("setup.py" "src/python/grpcio/commands.py")
(("'cc'") "'gcc'")))))))
(inputs
- (list abseil-cpp-20211102.0 c-ares grpc-for-python-grpcio openssl re2 zlib))
+ (list abseil-cpp-cxxstd11 c-ares grpc openssl re2 zlib))
(native-inputs
(list python-cython python-setuptools python-wheel))
(propagated-inputs
@@ -266,29 +263,32 @@ with the HTTP/2-based RPC framework gRPC.")
(define-public python-grpcio-tools
(package
(name "python-grpcio-tools")
- (version "1.47.0")
- (source (origin
- (method url-fetch)
- (uri (pypi-uri "grpcio-tools" version))
- (modules '((guix build utils)))
- (snippet
- ;; This file is auto-generated.
- '(delete-file "grpc_tools/_protoc_compiler.cpp"))
- (sha256
- (base32
- "0g3xwv55lvf5w64zb44dipwqz7729cbqc7rib77ddqab91w56jzn"))))
- (build-system python-build-system)
+ (version "1.52.0")
+ (source
+ (origin
+ (method url-fetch)
+ (uri (pypi-uri "grpcio-tools" version))
+ (modules '((guix build utils)))
+ (snippet
+ ;; This file is auto-generated.
+ '(delete-file "grpc_tools/_protoc_compiler.cpp"))
+ (sha256
+ (base32 "0m5xwhz3l0n3b1bzjncynwflnc5iyv4xrjq046ppcck4rpj9fgn0"))))
+ (build-system pyproject-build-system)
(arguments
- (list #:phases #~(modify-phases %standard-phases
- (add-after 'unpack 'configure
- (lambda _
- (setenv "GRPC_PYTHON_BUILD_WITH_CYTHON" "1"))))))
- (native-inputs (list python-cython))
- (propagated-inputs (list python-grpcio python-protobuf))
+ (list
+ #:phases
+ #~(modify-phases %standard-phases
+ (add-after 'unpack 'configure
+ (lambda _
+ (setenv "GRPC_PYTHON_BUILD_WITH_CYTHON" "1"))))))
+ (native-inputs (list python-cython python-setuptools python-wheel))
+ (propagated-inputs (list python-grpcio python-protobuf-4))
(home-page "https://grpc.io")
(synopsis "Protobuf code generator for gRPC")
- (description "The gRPC tools for Python provide a special plugin for
-generating server and client code from @file{.proto} service definitions.")
+ (description
+ "The gRPC tools for Python provide a special plugin for generating server
+and client code from @file{.proto} service definitions.")
(license license:asl2.0)))
(define-public apache-thrift
diff --git a/gnu/packages/scheme.scm b/gnu/packages/scheme.scm
index aec39961d9..ae7cf5fb27 100644
--- a/gnu/packages/scheme.scm
+++ b/gnu/packages/scheme.scm
@@ -105,152 +105,116 @@
#:use-module (srfi srfi-1)
#:use-module (ice-9 match))
-(define (mit-scheme-source-directory system version)
- (string-append "mit-scheme-"
- (if (or (string-prefix? "x86_64" system)
- (string-prefix? "i686" system))
- ""
- "c-")
- version))
-
(define-public mit-scheme
(package
(name "mit-scheme")
- (version "11.2")
- (source #f) ; see below
+ (version "12.1")
+ (source #f) ; See below.
(outputs '("out" "doc"))
(build-system gnu-build-system)
(arguments
- `(#:modules ((guix build gnu-build-system)
- (guix build utils)
- (srfi srfi-1))
- #:phases
- (modify-phases %standard-phases
- (replace 'unpack
- (lambda* (#:key inputs #:allow-other-keys)
- (invoke "tar" "xzvf"
- (assoc-ref inputs "source"))
- (chdir ,(mit-scheme-source-directory (%current-system)
- version))
- ;; Delete these dangling symlinks since they break
- ;; `patch-shebangs'.
- (for-each delete-file
- (find-files "src/compiler" "^make\\."))
- (chdir "src")
- #t))
- (add-after 'unpack 'patch-/bin/sh
- (lambda _
- (setenv "CONFIG_SHELL" (which "sh"))
- (substitute* '("../tests/ffi/autogen.sh"
- "../tests/ffi/autobuild.sh"
- "../tests/ffi/test-ffi.sh"
- "../tests/runtime/test-process.scm"
- "runtime/unxprm.scm")
- (("/bin/sh") (which "sh"))
- (("\\./autogen\\.sh")
- (string-append (which "sh") " autogen.sh"))
- (("\\./configure")
- (string-append (which "sh") " configure")))
- #t))
- ;; disable array-parameter warnings that become errors while
- ;; compiling microcode target
- (add-before 'configure 'set-flags
- (lambda* (#:key inputs #:allow-other-keys)
- (setenv "CFLAGS" "-Wno-array-parameter")
- (setenv "CPPFLAGS" "-Wno-array-parameter")))
- (replace 'build
- (lambda* (#:key system outputs #:allow-other-keys)
- (let ((out (assoc-ref outputs "out")))
- (if (or (string-prefix? "x86_64" system)
- (string-prefix? "i686" system))
- (invoke "make" "compile-microcode")
- (invoke "./etc/make-liarc.sh"
- (string-append "--prefix=" out)))
- #t)))
- (add-after 'configure 'configure-doc
- (lambda* (#:key outputs inputs #:allow-other-keys)
- (with-directory-excursion "../doc"
- (let* ((out (assoc-ref outputs "out"))
- (bash (assoc-ref inputs "bash"))
- (bin/sh (string-append bash "/bin/sh")))
- (invoke bin/sh "./configure"
- (string-append "--prefix=" out)
- (string-append "SHELL=" bin/sh))
- #t))))
- (add-after 'build 'build-doc
- (lambda* _
- (with-directory-excursion "../doc"
- (invoke "make"))
- #t))
- (add-after 'install 'install-doc
- (lambda* (#:key outputs #:allow-other-keys)
- (let* ((out (assoc-ref outputs "out"))
- (doc (assoc-ref outputs "doc"))
- (old-doc-dir (string-append out "/share/doc"))
- (new-doc/mit-scheme-dir
- (string-append doc "/share/doc/" ,name "-" ,version)))
- (with-directory-excursion "../doc"
- (for-each (lambda (target)
- (invoke "make" target))
- '("install-info-gz" "install-man"
- "install-html" "install-pdf")))
- (mkdir-p new-doc/mit-scheme-dir)
- (copy-recursively
- (string-append old-doc-dir "/" ,name)
- new-doc/mit-scheme-dir)
- (delete-file-recursively old-doc-dir)
- #t))))))
+ (list
+ ;; XXX: Some makefile dependencies are probably wrong, leading to
+ ;; missing files when building in parallel.
+ #:parallel-build? #f
+ #:make-flags #~(list "compile-microcode")
+ #:phases
+ #~(modify-phases %standard-phases
+ ;; MIT/GNU Scheme is not bootstrappable, so it's recommended to
+ ;; compile from the architecture-specific tarballs, which contain
+ ;; pre-built binaries. It leads to more efficient code than when
+ ;; building the tarball that contains generated C code instead of
+ ;; those binaries.
+ (replace 'unpack
+ (lambda* (#:key inputs #:allow-other-keys)
+ ((assoc-ref %standard-phases 'unpack)
+ #:inputs inputs
+ #:source
+ #+(origin
+ (method url-fetch)
+ (uri
+ (string-append
+ "mirror://gnu/mit-scheme/stable.pkg/" version
+ "/mit-scheme-"
+ (cond
+ ((target-x86-64?)
+ (string-append version "-x86-64"))
+ ((target-aarch64?)
+ (string-append version "-aarch64le"))
+ (else
+ ;; XXX: According to the manual, it should exist, but
+ ;; seems dropped/forgotten starting from version 10.1.
+ (string-append "c-" version)))
+ ".tar.gz"))
+ (sha256
+ (cond
+ ((target-x86-64?)
+ (base32
+ "035f92vni0vqmgj9hq2i7vwasz7crx52wll4823vhfkm1qdv5ywc"))
+ ((target-aarch64?)
+ (base32
+ "12ra9bc93x8g07impbd8jr6djjzwpb9qvh9zhxvvrba3332zx3vh"))
+ (else
+ (base32 "\
+aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"))))))
+ (chdir "src")))
+ (add-after 'unpack 'patch-/bin/sh
+ (lambda* (#:key inputs native-inputs #:allow-other-keys)
+ (let ((sh (search-input-file (or native-inputs inputs)
+ "bin/sh")))
+ (setenv "CONFIG_SHELL" sh)
+ (substitute* '("../tests/ffi/autogen.sh"
+ "../tests/ffi/autobuild.sh"
+ "../tests/ffi/test-ffi.sh"
+ "../tests/runtime/test-process.scm"
+ "runtime/unxprm.scm")
+ (("/bin/sh")
+ sh)
+ (("\\./autogen\\.sh")
+ (string-append sh " autogen.sh"))
+ (("\\./configure")
+ (string-append sh " configure"))))))
+ (add-after 'configure 'configure-doc
+ (lambda* (#:key inputs native-inputs #:allow-other-keys)
+ (with-directory-excursion "../doc"
+ (let* ((sh (search-input-file (or native-inputs inputs)
+ "bin/sh")))
+ (mkdir-p #$output:doc)
+ (invoke sh "./configure"
+ (string-append "SHELL=" sh)
+ (string-append "--prefix=" #$output:doc)
+ (string-append "--docdir=" #$output:doc
+ "/share/doc/" #$name "-" #$version))))))
+ (add-after 'build 'build-doc
+ (lambda _
+ (with-directory-excursion "../doc"
+ (invoke "make" "install"))))
+ (add-after 'install 'fixup-install
+ (lambda _
+ (let ((share (string-append #$output "/share"))
+ (dest (string-append #$output:doc "/share/info/")))
+ (for-each
+ (lambda (file) (install-file file dest))
+ (find-files share "\\.info\\.gz$"))
+ (delete-file-recursively share))))
+ (add-before 'check 'disable-slow-tests
+ (lambda* (#:key inputs native-inputs #:allow-other-keys)
+ (setenv "FAST" "y")
+ (setenv "SHELL" (search-input-file (or native-inputs inputs)
+ "bin/sh")))))))
(native-inputs
- `(;; Autoconf, Automake, and Libtool are necessary for the FFI tests.
- ("autoconf" ,autoconf)
- ("automake" ,automake)
- ("libtool" ,libtool)
- ("texlive" ,(texlive-local-tree
- (list texlive-epsf
- texlive-texinfo)))
- ("texinfo" ,texinfo)
- ("ghostscript" ,ghostscript)
- ("m4" ,m4)))
- (inputs
- `(("libx11" ,libx11)
- ("ncurses" ,ncurses)
-
- ("source"
-
- ;; MIT/GNU Scheme is not bootstrappable, so it's recommended to
- ;; compile from the architecture-specific tarballs, which contain
- ;; pre-built binaries. It leads to more efficient code than when
- ;; building the tarball that contains generated C code instead of
- ;; those binaries.
- ,(origin
- (method url-fetch)
- (uri (string-append "mirror://gnu/mit-scheme/stable.pkg/"
- version "/mit-scheme-"
- (match (%current-system)
- ("x86_64-linux"
- (string-append version "-x86-64"))
- ("aarch64-linux"
- (string-append version "-aarch64le"))
- (_
- (string-append "c-" version)))
- ".tar.gz"))
- (sha256
- (match (%current-system)
- ("x86_64-linux"
- (base32
- "17822hs9y07vcviv2af17p3va7qh79dird49nj50bwi9rz64ia3w"))
- ("aarch64-linux"
- (base32
- "11maixldk20wqb5js5p4imq221zz9nf27649v9pqkdf8fv7rnrs9"))
- (_
- (base32
- "aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa"))))))))
-
- ;; Fails to build on MIPS, see <http://bugs.gnu.org/18221>.
- ;; Also, the portable C version of MIT/GNU Scheme did not work in time for
- ;; release in version 10.1.
- (supported-systems '("x86_64-linux" "i686-linux"))
-
+ ;; XXX: Autoconf, Automake, and Libtool are necessary for the FFI tests.
+ (list bash-minimal
+ autoconf
+ automake
+ libtool
+ (texlive-local-tree (list texlive-epsf texlive-texinfo))
+ texinfo
+ ghostscript
+ m4))
+ (inputs (list libx11 ncurses))
+ ;; XXX: Fails to build on MIPS, see <http://bugs.gnu.org/18221>.
+ (supported-systems '("x86_64-linux" "aarch64-linux"))
(home-page "https://www.gnu.org/software/mit-scheme/")
(synopsis "Scheme implementation with integrated editor and debugger")
(description
diff --git a/gnu/packages/skribilo.scm b/gnu/packages/skribilo.scm
index 32132371a5..be72a39d33 100644
--- a/gnu/packages/skribilo.scm
+++ b/gnu/packages/skribilo.scm
@@ -78,7 +78,6 @@
(inputs (list guile-3.0
imagemagick
ghostscript ; for 'convert'
- ploticus
lout))
;; The 'skribilo' command needs them, and for people using Skribilo as a
diff --git a/gnu/packages/tbb.scm b/gnu/packages/tbb.scm
index 5fdc41553b..47f8d4a09a 100644
--- a/gnu/packages/tbb.scm
+++ b/gnu/packages/tbb.scm
@@ -40,7 +40,7 @@
(source (origin
(method git-fetch)
(uri (git-reference
- (url "https://github.com/oneapi-src/oneTBB")
+ (url "https://github.com/uxlfoundation/oneTBB/")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
@@ -79,14 +79,14 @@
((".*test_multifunction_node.*") "")
((".*test_async_node.*") ""))))))
(else '())))))
- (home-page "https://www.threadingbuildingblocks.org")
+ (home-page "https://uxlfoundation.github.io/oneTBB/")
(synopsis "C++ library for parallel programming")
(description
- "Threading Building Blocks (TBB) is a C++ runtime library that abstracts
-the low-level threading details necessary for optimal multi-core performance.
-It uses common C++ templates and coding style to eliminate tedious threading
-implementation work. It provides parallel loop constructs, asynchronous
-tasks, synchronization primitives, atomic operations, and more.")
+ "@acronym{TBB, Threading Building Blocks} is a C++ runtime library that
+abstracts the low-level threading details necessary for optimal multi-core
+performance. It uses common C++ templates and coding style to eliminate
+tedious threading implementation work. It provides parallel loop constructs,
+asynchronous tasks, synchronization primitives, atomic operations, and more.")
(license asl2.0)))
(define-public python-tbb
diff --git a/gnu/packages/text-editors.scm b/gnu/packages/text-editors.scm
index e1c69ceb60..baf526b4fe 100644
--- a/gnu/packages/text-editors.scm
+++ b/gnu/packages/text-editors.scm
@@ -959,7 +959,7 @@ Wordstar-, EMACS-, Pico, Nedit or vi-like key bindings. e3 can be used on
(define-public mg
(package
(name "mg")
- (version "20240709")
+ (version "20250523")
(source (origin
(method git-fetch)
(uri (git-reference
@@ -968,7 +968,7 @@ Wordstar-, EMACS-, Pico, Nedit or vi-like key bindings. e3 can be used on
(file-name (git-file-name name version))
(sha256
(base32
- "02q3976glcih0icqvfz2fxrc723si57q080ba4ali5hw4wwggnk4"))
+ "1a08jvljmysangmwzv9ga84iy0s7afr7vb1gabivrxagkb5j70f5"))
(modules '((guix build utils)))
(snippet '(begin
(substitute* "GNUmakefile"
diff --git a/gnu/packages/video.scm b/gnu/packages/video.scm
index cbdb31e3fe..ab4c76a11a 100644
--- a/gnu/packages/video.scm
+++ b/gnu/packages/video.scm
@@ -72,6 +72,7 @@
;;; Copyright © 2024 aurtzy <aurtzy@gmail.com>
;;; Copyright © 2025 Formbi <formbi@protonmail.com>
;;; Copyright © 2025 Sharlatan Hellseher <sharlatanus@gmail.ccom>
+;;; Copyright © 2025 VnPower <vnpower@loang.net>
;;;
;;; This file is part of GNU Guix.
;;;
@@ -3016,6 +3017,31 @@ To load this plugin, specify the following option when starting mpv:
@file{$HOME/.config/mpv/scripts}.")
(license license:expat)))
+(define-public mpvpaper
+ (package
+ (name "mpvpaper")
+ (version "1.8")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/GhostNaN/mpvpaper")
+ (commit version)))
+ (sha256
+ (base32 "0pzc6f5r85qd0dgp6aa6pp8ba2m7ghzd3pc4xnqnarh2bx55jf95"))
+ (file-name (git-file-name name version))))
+ (build-system meson-build-system)
+ (inputs
+ (list mpv libdisplay-info wlroots))
+ (native-inputs
+ (list pkg-config cmake-minimal))
+ (home-page "https://github.com/GhostNaN/mpvpaper")
+ (synopsis
+ "Video wallpaper program for wlroots-based wayland compositors")
+ (description "The mpvpaper package provides a wallpaper program for
+wlroots-based wayland compositors, allowing you to play videos as your
+wallpaper using mpv.")
+ (license license:gpl3)))
+
(define-public libvpx
(package
(name "libvpx")
@@ -3231,7 +3257,7 @@ YouTube.com and many more sites.")
(define-public yt-dlp
(package
(name "yt-dlp")
- (version "2025.06.30")
+ (version "2025.07.21")
(source
(origin
(method git-fetch)
@@ -3243,7 +3269,7 @@ YouTube.com and many more sites.")
(snippet '(substitute* "pyproject.toml"
(("^.*Programming Language :: Python :: 3\\.13.*$") "")))
(sha256
- (base32 "14pk2rk5vm9469ghkvciaz74fihbl8dfi27qj6xnxv71hpm5w03p"))))
+ (base32 "051y9pb2imdrpi065d9l2xfmd68l22ahbz90z81yqv7kv84j9mal"))))
(build-system pyproject-build-system)
(arguments
`(#:tests? ,(not (%current-target-system))
@@ -3277,7 +3303,17 @@ YouTube.com and many more sites.")
(replace 'check
(lambda* (#:key tests? test-flags #:allow-other-keys)
(when tests?
- (apply invoke "pytest" "-k" "not download" test-flags)))))))
+ (apply invoke "pytest"
+ "-k"
+ (string-append
+ "not download"
+ ;; TestHTTPRequestHandler tests are disabled due to
+ ;; https://github.com/yt-dlp/yt-dlp/issues/13927
+ " and not "
+ "test_incompleteread"
+ " and not "
+ "test_partial_read_then_full_read")
+ test-flags)))))))
(inputs (list ffmpeg python-brotli
python-certifi
python-mutagen
@@ -5914,7 +5950,7 @@ It counts more than 100 plugins.")
(define-public motion
(package
(name "motion")
- (version "4.5.1")
+ (version "4.7.0")
(home-page "https://motion-project.github.io/")
(source (origin
(method git-fetch)
@@ -5923,7 +5959,7 @@ It counts more than 100 plugins.")
(commit (string-append "release-" version))))
(sha256
(base32
- "09j919bba75d05rkqpib5rcmn1ff5nvn4ss8yy4fi6iz0lnacffx"))
+ "1pwsl1v0aqh5k5608siy0614lyf5bscy9a47ha8i5vqsbqxy4s3c"))
(file-name (git-file-name name version))))
(build-system gnu-build-system)
(native-inputs
diff --git a/gnu/packages/virtualization.scm b/gnu/packages/virtualization.scm
index 143c884198..0b9a07d271 100644
--- a/gnu/packages/virtualization.scm
+++ b/gnu/packages/virtualization.scm
@@ -169,6 +169,8 @@
#:use-module (gnu packages tls)
#:use-module (gnu packages web)
#:use-module (gnu packages wget)
+ #:use-module (gnu packages vnc)
+ #:use-module (gnu packages wxwidgets)
#:use-module (gnu packages xdisorg)
#:use-module (gnu packages xml)
#:use-module (gnu packages xorg)
@@ -2659,28 +2661,54 @@ by default and can be made read-only.")
(define-public bochs
(package
(name "bochs")
- (version "2.8")
- (source
- (origin
- (method url-fetch)
- (uri (string-append "https://sourceforge.net/projects/bochs/files/bochs/"
- version "/bochs-" version ".tar.gz"))
- (sha256
- (base32 "0n80v8wjd9i3rhc51sq7n7xw2paz7g1scsrmkxx1yhfqyypi6nx8"))))
+ (version "3.0")
+ (source (origin
+ (method url-fetch)
+ (uri (string-append "mirror://sourceforge/bochs/bochs/" version
+ "/bochs-" version ".tar.gz"))
+ (sha256
+ (base32
+ "1al1fx8dbb0ny7a4wbngnz8pqav0nl6rhakb434jqnpka4mm8vyb"))))
(build-system gnu-build-system)
(arguments
- `(#:tests? #f)) ; no tests exist
- (inputs
- (list libxrandr))
- (home-page "https://bochs.sourceforge.net/")
- (synopsis "Emulator for x86 PC")
- (description
- "Bochs is an emulator which can emulate Intel x86 CPU, common I/O
-devices, and a custom BIOS. It can also be compiled to emulate many different
-x86 CPUs, from early 386 to the most recent x86-64 Intel and AMD processors.
-Bochs can run most Operating Systems inside the emulation including Linux,
-DOS or Microsoft Windows.")
- (license license:lgpl2.0+)))
+ (list #:tests? #f ;no test suite
+ #:configure-flags
+ ;; Enable support for more modern machine emulation not enabled by
+ ;; default.
+ #~(list "--enable-x86-64"
+ "--enable-smp"
+ "--enable-all-optimizations"
+ "--enable-readline"
+ "--enable-avx"
+ "--enable-evex"
+ "--enable-amx"
+ "--enable-vmx=2"
+ "--enable-svm"
+ "--enable-protection-keys"
+ "--enable-cet"
+ "--enable-es1370"
+ "--enable-sb16"
+ "--enable-uintr"
+ "--enable-3dnow"
+ "--enable-usb"
+ "--enable-usb-ohci"
+ "--enable-usb-ehci"
+ "--enable-usb-xhci"
+ "--enable-pnic"
+ "--enable-e1000"
+ "--enable-using-libslirp"
+ "--with-vncsrv")))
+ (native-inputs (list pkg-config))
+ (inputs (list libslirp libx11 libvnc readline wxwidgets))
+ (home-page "https://bochs.sourceforge.io/")
+ (synopsis "IA-32 (x86) PC emulator")
+ (description "Bochs is a highly portable IA-32 (x86) PC emulator written
+in C++. It includes emulation of the Intel x86 CPU, common I/O devices, and a
+custom BIOS. Bochs can be compiled to emulate many different x86 CPUs, from
+early 386 to the most recent x86-64 Intel and AMD processors. Bochs is
+capable of running most operating systems inside the emulation including
+GNU/Linux, DOS or Microsoft Windows.")
+ (license license:lgpl2.1+)))
(define-public xen
(package
diff --git a/gnu/packages/vnc.scm b/gnu/packages/vnc.scm
index c7883d1bbc..e260a17437 100644
--- a/gnu/packages/vnc.scm
+++ b/gnu/packages/vnc.scm
@@ -1,5 +1,4 @@
;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2019 Todor Kondić <tk.code@protonmail.com>
;;; Copyright © 2020 Oleg Pykhalov <go.wigust@gmail.com>
;;; Copyright © 2020 Hartmut Goebel <h.goebel@crazy-compilers.com>
;;; Copyright © 2020 Marius Bakke <marius@gnu.org>
@@ -174,235 +173,6 @@
RDP, VNC, SPICE, NX, XDMCP, SSH and EXEC network protocols are supported.")
(license license:gpl2+)))
-(define-public tigervnc-client
- (package
- (name "tigervnc-client")
- (version "1.14.1")
- (source
- (origin
- (method git-fetch)
- (uri (git-reference
- (url "https://github.com/TigerVNC/tigervnc")
- (commit (string-append "v" version))))
- (sha256
- (base32 "1n6slj7i93gvf0ji4mb3azycv3c4wqzfd7zlx9260b79jv8jvsln"))
- (file-name (git-file-name name version))))
- (build-system cmake-build-system)
- (arguments
- '(#:tests? #f ; tests that do exists are not automated
- #:phases (modify-phases %standard-phases
- (replace 'install
- (lambda* (#:key outputs #:allow-other-keys)
- (with-directory-excursion "vncviewer"
- (invoke "make" "install")))))))
- (native-inputs
- (list autoconf gettext-minimal automake))
- (inputs
- (list zlib
- gnutls
- libjpeg-turbo
- ;;ffmpeg ;TODO: add this for h264 encoding
- fltk-1.3
- linux-pam
- libx11
- libxext
- libxtst
- libxrandr
- libxdamage
- pixman))
- (home-page "https://tigervnc.org/")
- (synopsis "High-performance VNC remote desktop client")
- (description "TigerVNC implements a @acronym{VNC, Virtual Network Computing}
-client and server. @dfn{VNC} is a remote display system that lets you view and
-interact with a virtual desktop environment running on another computer on the
-network. Client and server may be running on different operating systems and
-architectures.
-
-TigerVNC uses a variant of Tight encoding that is greatly accelerated by the use
-of the libjpeg-turbo JPEG codec and performs fast enough to run even 3D or video
-applications. It also provides extensions for advanced authentication methods
-and @acronym{TLS, Transport-Level Security} encryption.
-
-This package installs only the VNC client (@command{vncviewer}), the application
-used to connect to VNC servers such as the tigervnc-server package.")
- (license license:gpl2)))
-
-(define %tigervnc-client-source (package-source tigervnc-client))
-
-;; A VNC server is, in fact, an X server so it seems like a good idea to build
-;; on the work already done for xorg-server package. This is not entirely
-;; compatible with the recommendation in BUILDING.txt where the client is
-;; built first, then the source code of the X server is copied into a subdir
-;; of the build directory, patched with VNC additions and then build and
-;; installed as Xvnc. The procedure was turned around, where TigerVNC code is
-;; downloaded and built inside the Guix X server build dir. Also, the VNC
-;; patching process for the X server is automated in a straightforward manner.
-(define-public tigervnc-server
- (package
- (inherit xorg-server)
- (name "tigervnc-server")
- (version (package-version tigervnc-client))
- (source
- (origin
- (inherit (package-source xorg-server))
- (modules '((guix build utils)))
- (snippet
- #~(begin
- ;; Copy the VNC extension into the xorg-server sources.
- (copy-recursively #$(file-append %tigervnc-client-source
- "/unix/xserver")
- ".")
- ;; Include a full copy of tigervnc-client sources, so that the
- ;; complete sources involved are available and can be edited during
- ;; the build.
- (copy-recursively #$%tigervnc-client-source "tigervnc-client")
- ;; Adjust the VNC extension build system files so that it refers
- ;; to it.
- (substitute* "hw/vnc/Makefile.am"
- (("(TIGERVNC_SRCDIR=).*" _ head)
- (string-append head "$(CURDIR)/../../tigervnc-client\n"))
- (("(TIGERVNC_BUILDDIR=).*" _ head)
- (string-append head
- "$(CURDIR)/../../tigervnc-client/build\n")))
- ;; Ensure the Autotools build system gets re-bootstrapped.
- (delete-file "configure")))
- ;; Patch the xorg-server build system so that it builds the VNC
- ;; extension.
- (patches (cons (file-append %tigervnc-client-source
- "/unix/xserver21.patch")
- (origin-patches (package-source xorg-server))))
- (file-name (string-append name "-" version ".tar.xz"))))
- (arguments
- (substitute-keyword-arguments
- (package-arguments xorg-server)
- ((#:tests? #f #f)
- #f)
- ((#:configure-flags flags)
- #~(cons* "--with-pic" ; taken from BUILDING.txt
- "--without-dtrace"
- "--disable-static"
- "--disable-dri2"
- "--disable-xinerama"
- "--disable-xvfb"
- "--disable-xnest"
- "--disable-xorg"
- "--disable-dmx"
- "--disable-xwin"
- "--disable-xephyr"
- "--disable-kdrive"
- "--disable-config-hal"
- "--disable-config-udev"
- "--disable-dri2"
- "--enable-glx"
- (delete "--enable-xephyr" #$flags)))
- ((#:modules modules)
- `(append '((ice-9 ftw)
- (ice-9 match)
- (guix build utils)
- (guix build gnu-build-system))
- modules))
- ((#:phases phases)
- #~(modify-phases #$phases
- (add-after 'unpack 'adjust-pam-config
- (lambda _
- (substitute* "tigervnc-client/unix/vncserver/tigervnc.pam"
- (("pam_systemd.so")
- "pam_elogind.so"))))
- (add-after 'unpack 'patch-paths
- (lambda* (#:key inputs #:allow-other-keys)
- (substitute* "tigervnc-client/unix/vncserver/vncserver.in"
- (("`mcookie`")
- (format #f "`~a`" (search-input-file inputs "bin/mcookie")))
- ;; Adjust the places where the vncserver script looks for
- ;; X11 fonts.
- (("'/usr/share/X11/fonts'" all)
- (format #f "'~a', '~a', ~a"
- "/run/current-system/profile/share/fonts/X11"
- (string-append #$(this-package-input "font-alias")
- "share/fonts/X11")
- all))
- ;; Adjust the location where .desktop files will be saved.
- (("/usr/share/xsessions")
- "/run/current-system/profile/share/xsessions")
- ;; Do not require a system-provided Xsession shell script.
- ;; Guix System has none, causing the for loop to iterate
- ;; over an empty list.
- (("\"/etc/X11/xinit/Xsession\", \"/etc/X11/Xsession\"")
- "()")
- (("if \\(not defined \\$Xsession)")
- "if (0)")
- (("@cmd, \\$Xsession,")
- "@cmd,"))))
- (add-before 'build 'build-tigervnc
- (lambda* (#:key parallel-build? #:allow-other-keys)
- (mkdir-p "tigervnc-client/build")
- (with-directory-excursion "tigervnc-client/build"
- (invoke "cmake" "-G" "Unix Makefiles"
- (string-append "-DCMAKE_INSTALL_PREFIX=" #$output)
- "..")
- (invoke "make" "-j" (number->string (if parallel-build?
- (parallel-job-count)
- 1))))))
- (replace 'build
- (lambda* (#:key parallel-build? #:allow-other-keys)
- (invoke "make" "-j" (number->string (if parallel-build?
- (parallel-job-count)
- 1)))))
- (add-before 'install 'install-tigervnc-aux
- (lambda _
- (invoke "make" "-C" "tigervnc-client/build/unix" "install")))
- (replace 'install
- (lambda _
- (invoke "make" "install")))
- (add-after 'install 'wrap-vncserver
- (lambda* (#:key inputs outputs #:allow-other-keys)
- (wrap-script (search-input-file outputs "libexec/vncserver")
- (list "PATH" 'prefix
- (map (lambda (p)
- (dirname (search-input-file inputs p)))
- '("bin/uname"
- "bin/xauth"
- "bin/xinit"))))))))))
- (native-inputs
- (modify-inputs (append (package-native-inputs xorg-server)
- (package-native-inputs tigervnc-client))
- (append %tigervnc-client-source
- autoconf
- automake
- libtool
- gettext-minimal
- font-util
- cmake-minimal
- perl)))
- (inputs
- (modify-inputs (append (package-inputs xorg-server)
- (package-inputs tigervnc-client))
- (prepend coreutils
- font-alias
- guile-3.0
- perl
- util-linux
- xauth
- xinit)))
- (propagated-inputs
- (modify-inputs (package-propagated-inputs xorg-server)
- (prepend xauth)))
- (synopsis "High-performance VNC remote desktop server based on Xorg")
- (description "TigerVNC implements a @acronym{VNC, Virtual Network Computing}
-client and server. @dfn{VNC} is a remote display system that lets you view and
-interact with a virtual desktop environment running on another computer on the
-network. Client and server may be running on different operating systems and
-architectures.
-
-TigerVNC uses a variant of Tight encoding that is greatly accelerated by the use
-of the libjpeg-turbo JPEG codec and performs fast enough to run even 3D or video
-applications. It also provides extensions for advanced authentication methods
-and @acronym{TLS, Transport-Level Security} encryption.
-
-This package installs the VNC server. Permitted users can log into a graphical
-session on the machine where the server is running, using a VNC client such as
-the tigervnc-client package.")))
-
(define-public turbovnc
(package
(name "turbovnc")
diff --git a/gnu/packages/vpn.scm b/gnu/packages/vpn.scm
index 58a4c758a4..e511423525 100644
--- a/gnu/packages/vpn.scm
+++ b/gnu/packages/vpn.scm
@@ -22,7 +22,7 @@
;;; Copyright © 2022 Lu hui <luhux76@gmail.com>
;;; Copyright © 2022, 2023 Maxim Cournoyer <maxim.cournoyer@gmail.com>
;;; Copyright © 2022 Jean-Pierre De Jesus DIAZ <me@jeandudey.tech>
-;;; Copyright © 2022 Arun Isaac <arunisaac@systemreboot.net>
+;;; Copyright © 2022, 2025 Arun Isaac <arunisaac@systemreboot.net>
;;; Copyright © 2024 Allan Adair <allan@adair.no>
;;; Copyright © 2025 Janneke Nieuwenhuizen <janneke@gnu.org>
;;;
@@ -811,7 +811,7 @@ others.")
python-attrs
python-colorama
python-keyring
- python-lxml
+ python-lxml-4.9
python-prompt-toolkit
python-requests
python-pyqt
diff --git a/gnu/packages/web.scm b/gnu/packages/web.scm
index 947fb6f800..8c1f887a29 100644
--- a/gnu/packages/web.scm
+++ b/gnu/packages/web.scm
@@ -9694,6 +9694,7 @@ It contains the code shared by all Kiwix ports.")
(build-system qt-build-system)
(arguments
(list
+ #:qtbase qtbase
#:tests? #f ; no tests
#:modules '((guix build qt-build-system)
((guix build gnu-build-system) #:prefix gnu:)
@@ -9715,17 +9716,17 @@ It contains the code shared by all Kiwix ports.")
libmicrohttpd
libzim
pugixml
- qtbase-5
- qtdeclarative-5
- qtwebchannel-5
- qtwebengine-5
- qtwayland-5
+ qtbase
+ qtdeclarative
+ qtwebchannel
+ qtwebengine
+ qtwayland
xapian
zlib
`(,zstd "lib")))
(native-inputs
(list pkg-config
- qtbase-5))
+ qtbase))
(home-page "https://wiki.kiwix.org/wiki/Software")
(synopsis "Viewer and manager of ZIM files")
(description "Kiwix Desktop allows you to enjoy a lot of different content
diff --git a/gnu/packages/wm.scm b/gnu/packages/wm.scm
index 92f86c25f8..80adb463ec 100644
--- a/gnu/packages/wm.scm
+++ b/gnu/packages/wm.scm
@@ -2327,7 +2327,7 @@ corners, shadows, inactive window dimming, etc.")
(define-public swaylock
(package
(name "swaylock")
- (version "1.8.0")
+ (version "1.8.3")
(source
(origin
(method git-fetch)
@@ -2336,7 +2336,7 @@ corners, shadows, inactive window dimming, etc.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
- (base32 "1n4m5nk2jj4f0p11760zdd51ncsb469d06hm0f5487v01p3igq6p"))))
+ (base32 "01zwlfpf3s8wd8gl2sjfch1z66mqx9n2plgbdang7plqc3r01474"))))
(build-system meson-build-system)
(inputs (append (if (%current-target-system)
(list wayland-protocols)
diff --git a/gnu/packages/xorg.scm b/gnu/packages/xorg.scm
index d1678fa2f8..4de513599d 100644
--- a/gnu/packages/xorg.scm
+++ b/gnu/packages/xorg.scm
@@ -14,17 +14,18 @@
;;; Copyright © 2017-2022 Marius Bakke <marius@gnu.org>
;;; Copyright © 2017, 2018, 2019 Rutger Helling <rhelling@mykolab.com>
;;; Copyright © 2017, 2020 Arun Isaac <arunisaac@systemreboot.net>
-;;; Copyright © 2018–2022 Tobias Geerinckx-Rice <me@tobias.gr>
+;;; Copyright © 2018–2022, 2024 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2018 Kei Kebreau <kkebreau@posteo.net>
;;; Copyright © 2018, 2020, 2022 Oleg Pykhalov <go.wigust@gmail.com>
;;; Copyright © 2018 Benjamin Slade <slade@jnanam.net>
;;; Copyright © 2019 nee <nee@cock.li>
;;; Copyright © 2019 Yoshinori Arai <kumagusu08@gmail.com>
;;; Copyright © 2019 Mathieu Othacehe <m.othacehe@gmail.com>
+;;; Copyright © 2019 Todor Kondić <tk.code@protonmail.com>
;;; Copyright © 2020 Liliana Marie Prikler <liliana.prikler@gmail.com>
;;; Copyright © 2020 Florian Pelz <pelzflorian@pelzflorian.de>
;;; Copyright © 2020, 2021 Michael Rohleder <mike@rohleder.de>
-;;; Copyright © 2020, 2021, 2022, 2023 Maxim Cournoyer <maxim.cournoyer@gmail.com>
+;;; Copyright © 2020-2023, 2025 Maxim Cournoyer <maxim@guixotic.coop>
;;; Copyright © 2020 Jean-Baptiste Note <jean-baptiste.note@m4x.org>
;;; Copyright © 2021 Matthew James Kraai <kraai@ftbfs.org>
;;; Copyright © 2021 Nicolò Balzarotti <nicolo@nixo.xyz>
@@ -65,6 +66,7 @@
#:use-module (guix packages)
#:use-module (guix download)
#:use-module (guix git-download)
+ #:use-module (guix build-system cmake)
#:use-module (guix build-system copy)
#:use-module (guix build-system gnu)
#:use-module (guix build-system haskell)
@@ -81,11 +83,13 @@
#:use-module (gnu packages bash)
#:use-module (gnu packages bison)
#:use-module (gnu packages check)
+ #:use-module (gnu packages cmake)
#:use-module (gnu packages cups)
#:use-module (gnu packages compression)
#:use-module (gnu packages digest)
#:use-module (gnu packages emacs)
#:use-module (gnu packages flex)
+ #:use-module (gnu packages fltk)
#:use-module (gnu packages fonts)
#:use-module (gnu packages fontutils)
#:use-module (gnu packages freedesktop)
@@ -95,6 +99,7 @@
#:use-module (gnu packages gnupg)
#:use-module (gnu packages gperf)
#:use-module (gnu packages gtk)
+ #:use-module (gnu packages guile)
#:use-module (gnu packages haskell)
#:use-module (gnu packages haskell-apps)
#:use-module (gnu packages haskell-check)
@@ -108,6 +113,7 @@
#:use-module (gnu packages llvm)
#:use-module (gnu packages m4)
#:use-module (gnu packages ncurses)
+ #:use-module (gnu packages nettle)
#:use-module (gnu packages onc-rpc)
#:use-module (gnu packages pciutils)
#:use-module (gnu packages perl)
@@ -121,7 +127,9 @@
#:use-module (gnu packages python-xyz)
#:use-module (gnu packages qt)
#:use-module (gnu packages spice)
+ #:use-module (gnu packages tls)
#:use-module (gnu packages video)
+ #:use-module (gnu packages vnc)
#:use-module (gnu packages xiph)
#:use-module (gnu packages xml)
#:use-module (gnu packages xdisorg))
@@ -5363,6 +5371,250 @@ draggable titlebars and borders.")
(package
(inherit xorg-server))))
+;;; XXX: Not really at home, but unless we break the inheritance between
+;;; tigervnc-server and xorg-server, it must live here to avoid cyclic module
+;;; dependencies.
+(define-public tigervnc-client
+ ;; The latest version doesn't build with GCC 14 when enabling ffmpeg
+ ;; support; pick the latest commit from the master branch.
+ (let ((commit "83e9c55d4c6a4a989d056a6ed9613bde74bcc50b")
+ (revision "0"))
+ (package
+ (name "tigervnc-client")
+ (version (git-version "1.15.0" revision commit))
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/TigerVNC/tigervnc")
+ (commit commit)))
+ (sha256
+ (base32 "1gqa5lbin4qb2k6iapd4hjxk85byaj6zs8vx0az30i7v18jib1c6"))
+ (file-name (git-file-name name version))))
+ (build-system cmake-build-system)
+ (arguments
+ (list
+ #:phases
+ #~(modify-phases %standard-phases
+ (replace 'check
+ (lambda* (#:key parallel-tests? tests? #:allow-other-keys)
+ (when tests?
+ (invoke "ctest" "-j" (if parallel-tests?
+ (number->string (parallel-job-count))
+ "1")
+ "--test-dir" "tests/unit/"))))
+ (replace 'install
+ (lambda _
+ (with-directory-excursion "vncviewer"
+ (invoke "make" "install")))))))
+ (native-inputs (list appstream gettext-minimal googletest))
+ (inputs
+ (list ffmpeg
+ fltk-1.3
+ gnutls
+ libjpeg-turbo
+ libx11
+ libxdamage
+ libxext
+ libxrandr
+ libxtst
+ linux-pam
+ nettle
+ pixman
+ zlib))
+ (home-page "https://tigervnc.org/")
+ (synopsis "High-performance VNC remote desktop client")
+ (description "TigerVNC implements a @acronym{VNC, Virtual Network Computing}
+client and server. @dfn{VNC} is a remote display system that lets you view and
+interact with a virtual desktop environment running on another computer on the
+network. Client and server may be running on different operating systems and
+architectures.
+
+TigerVNC uses a variant of Tight encoding that is greatly accelerated by the use
+of the libjpeg-turbo JPEG codec and performs fast enough to run even 3D or video
+applications. It also provides extensions for advanced authentication methods
+and @acronym{TLS, Transport-Level Security} encryption.
+
+This package installs only the VNC client (@command{vncviewer}), the application
+used to connect to VNC servers such as the tigervnc-server package.")
+ (license license:gpl2+))))
+
+(define %tigervnc-client-source (package-source tigervnc-client))
+
+;; A VNC server is, in fact, an X server so it seems like a good idea to build
+;; on the work already done for xorg-server package. This is not entirely
+;; compatible with the recommendation in BUILDING.txt where the client is
+;; built first, then the source code of the X server is copied into a subdir
+;; of the build directory, patched with VNC additions and then build and
+;; installed as Xvnc. The procedure was turned around, where TigerVNC code is
+;; downloaded and built inside the Guix X server build dir. Also, the VNC
+;; patching process for the X server is automated in a straightforward manner.
+(define-public tigervnc-server
+ (package
+ (inherit xorg-server)
+ (name "tigervnc-server")
+ (version (package-version tigervnc-client))
+ (source
+ (origin
+ (inherit (package-source xorg-server))
+ (modules '((guix build utils)))
+ (snippet
+ #~(begin
+ ;; Copy the VNC extension into the xorg-server sources.
+ (copy-recursively #$(file-append %tigervnc-client-source
+ "/unix/xserver")
+ ".")
+ ;; Include a full copy of tigervnc-client sources, so that the
+ ;; complete sources involved are available and can be edited during
+ ;; the build.
+ (copy-recursively #$%tigervnc-client-source "tigervnc-client")
+ ;; Adjust the VNC extension build system files so that it refers
+ ;; to it.
+ (substitute* "hw/vnc/Makefile.am"
+ (("(TIGERVNC_SRCDIR=).*" _ head)
+ (string-append head "$(CURDIR)/../../tigervnc-client\n"))
+ (("(TIGERVNC_BUILDDIR=).*" _ head)
+ (string-append head
+ "$(CURDIR)/../../tigervnc-client/build\n")))
+ ;; Ensure the Autotools build system gets re-bootstrapped.
+ (delete-file "configure")))
+ ;; Patch the xorg-server build system so that it builds the VNC
+ ;; extension.
+ (patches (cons (file-append %tigervnc-client-source
+ "/unix/xserver21.patch")
+ (origin-patches (package-source xorg-server))))
+ (file-name (string-append name "-" version ".tar.xz"))))
+ (arguments
+ (substitute-keyword-arguments
+ (package-arguments xorg-server)
+ ((#:tests? #f #f)
+ #f)
+ ((#:configure-flags flags)
+ #~(cons* "--with-pic" ; taken from BUILDING.txt
+ "--without-dtrace"
+ "--disable-static"
+ "--disable-dri2"
+ "--disable-xinerama"
+ "--disable-xvfb"
+ "--disable-xnest"
+ "--disable-xorg"
+ "--disable-dmx"
+ "--disable-xwin"
+ "--disable-xephyr"
+ "--disable-kdrive"
+ "--disable-config-hal"
+ "--disable-config-udev"
+ "--disable-dri2"
+ "--enable-glx"
+ (delete "--enable-xephyr" #$flags)))
+ ((#:modules modules)
+ `(append '((ice-9 ftw)
+ (ice-9 match)
+ (guix build utils)
+ (guix build gnu-build-system))
+ modules))
+ ((#:phases phases)
+ #~(modify-phases #$phases
+ (add-after 'unpack 'adjust-pam-config
+ (lambda _
+ (substitute* "tigervnc-client/unix/vncserver/tigervnc.pam"
+ (("pam_systemd.so")
+ "pam_elogind.so"))))
+ (add-after 'unpack 'patch-paths
+ (lambda* (#:key inputs #:allow-other-keys)
+ (substitute* "tigervnc-client/unix/vncserver/vncserver.in"
+ (("`mcookie`")
+ (format #f "`~a`" (search-input-file inputs "bin/mcookie")))
+ ;; Adjust the places where the vncserver script looks for
+ ;; X11 fonts.
+ (("'/usr/share/X11/fonts'" all)
+ (format #f "'~a', '~a', ~a"
+ "/run/current-system/profile/share/fonts/X11"
+ (string-append #$(this-package-input "font-alias")
+ "share/fonts/X11")
+ all))
+ ;; Adjust the location where .desktop files will be saved.
+ (("/usr/share/xsessions")
+ "/run/current-system/profile/share/xsessions")
+ ;; Do not require a system-provided Xsession shell script.
+ ;; Guix System has none, causing the for loop to iterate
+ ;; over an empty list.
+ (("\"/etc/X11/xinit/Xsession\", \"/etc/X11/Xsession\"")
+ "()")
+ (("if \\(not defined \\$Xsession)")
+ "if (0)")
+ (("@cmd, \\$Xsession,")
+ "@cmd,"))))
+ (add-before 'build 'build-tigervnc
+ (lambda* (#:key parallel-build? #:allow-other-keys)
+ (mkdir-p "tigervnc-client/build")
+ (with-directory-excursion "tigervnc-client/build"
+ (invoke "cmake" "-G" "Unix Makefiles"
+ (string-append "-DCMAKE_INSTALL_PREFIX=" #$output)
+ "..")
+ (invoke "make" "-j" (number->string (if parallel-build?
+ (parallel-job-count)
+ 1))))))
+ (replace 'build
+ (lambda* (#:key parallel-build? #:allow-other-keys)
+ (invoke "make" "-j" (number->string (if parallel-build?
+ (parallel-job-count)
+ 1)))))
+ (add-before 'install 'install-tigervnc-aux
+ (lambda _
+ (invoke "make" "-C" "tigervnc-client/build/unix" "install")))
+ (replace 'install
+ (lambda _
+ (invoke "make" "install")))
+ (add-after 'install 'wrap-vncserver
+ (lambda* (#:key inputs outputs #:allow-other-keys)
+ (wrap-script (search-input-file outputs "libexec/vncserver")
+ (list "PATH" 'prefix
+ (map (lambda (p)
+ (dirname (search-input-file inputs p)))
+ '("bin/uname"
+ "bin/xauth"
+ "bin/xinit"))))))))))
+ (native-inputs
+ (modify-inputs (append (package-native-inputs xorg-server)
+ (package-native-inputs tigervnc-client))
+ (append (package-source tigervnc-client)
+ autoconf
+ automake
+ libtool
+ gettext-minimal
+ font-util
+ cmake
+ perl)))
+ (inputs
+ (modify-inputs (append (package-inputs xorg-server)
+ (package-inputs tigervnc-client))
+ (prepend coreutils
+ font-alias
+ guile-3.0
+ perl
+ util-linux
+ xauth
+ xinit)))
+ (propagated-inputs
+ (modify-inputs (package-propagated-inputs xorg-server)
+ (prepend xauth)))
+ (synopsis "High-performance VNC remote desktop server based on Xorg")
+ (description "TigerVNC implements a @acronym{VNC, Virtual Network Computing}
+client and server. @dfn{VNC} is a remote display system that lets you view and
+interact with a virtual desktop environment running on another computer on the
+network. Client and server may be running on different operating systems and
+architectures.
+
+TigerVNC uses a variant of Tight encoding that is greatly accelerated by the use
+of the libjpeg-turbo JPEG codec and performs fast enough to run even 3D or video
+applications. It also provides extensions for advanced authentication methods
+and @acronym{TLS, Transport-Level Security} encryption.
+
+This package installs the VNC server. Permitted users can log into a graphical
+session on the machine where the server is running, using a VNC client such as
+the tigervnc-client package.")))
+
(define-public eglexternalplatform
(package
(name "eglexternalplatform")
diff --git a/gnu/services/linux.scm b/gnu/services/linux.scm
index 80c35717a9..a0720f7073 100644
--- a/gnu/services/linux.scm
+++ b/gnu/services/linux.scm
@@ -705,6 +705,8 @@ placed in a udev rules file."
(provision (list (string->symbol name)))
;; Make sure the homes are already present
(requirement requirement)
+ (modules `((ice-9 match)
+ ,@%default-modules))
(stop
#~(lambda args
(match (quote #$policy)
diff --git a/gnu/services/vnc.scm b/gnu/services/vnc.scm
index 0b18830d2b..2cfa4d90e5 100644
--- a/gnu/services/vnc.scm
+++ b/gnu/services/vnc.scm
@@ -19,6 +19,7 @@
(define-module (gnu services vnc)
#:use-module (gnu packages admin)
#:use-module (gnu packages vnc)
+ #:use-module (gnu packages xorg)
#:use-module ((gnu services) #:hide (delete))
#:use-module (gnu system shadow)
#:use-module (gnu services configuration)