me
/
guix
Archived
1
0
Fork 0

Merge branch 'master' into gnome-team

master
Liliana Marie Prikler 2023-07-30 08:46:07 +02:00
commit 4eca7833ef
No known key found for this signature in database
GPG Key ID: 442A84B8C70E2F87
83 changed files with 2068 additions and 908 deletions

View File

@ -1,5 +1,5 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2020 Jan (janneke) Nieuwenhuizen <janneke@gnu.org>
;;; Copyright © 2020, 2023 Janneke Nieuwenhuizen <janneke@gnu.org>
;;;
;;; This file is part of GNU Guix.
;;;
@ -31,7 +31,7 @@
(srfi srfi-1))
(use-package-modules
base commencement compression file gawk gdb gettext guile
base bootloaders commencement compression file gawk gdb gettext guile
hurd less m4 package-management python ssh version-control)
(define (input->package input)
@ -64,11 +64,14 @@
;; development packages
gcc-toolchain gdb-minimal git-minimal gnu-make
gettext-minimal python-minimal
;; guix environment guix --without-tests=python-minimal --without-tests=gettext-minimal
(package-without-tests gettext-minimal)
(package-without-tests python-minimal)
;; ourselves!
(package-without-tests guix)
;; system
grub-minimal grub
(append
guix-dependencies
(delete guile-3.0 %base-packages/hurd))))
%base-packages/hurd)))

View File

@ -34241,36 +34241,57 @@ The Music Player Daemon (MPD) is a service that can play music while
being controlled from the local machine or over the network by a variety
of clients.
The following example shows how one might run @code{mpd} as user
@code{"bob"} on port @code{6666}. It uses pulseaudio for output.
The following example shows the simplest configuration to locally
expose, via PulseAudio, a music collection kept at @file{/srv/music},
with @command{mpd} running as the default @samp{mpd} user. This user
will spawn its own PulseAudio daemon, which may compete for the sound
card access with that of your own user. In this configuration, you may
have to stop the playback of your user audio applications to hear MPD's
output and vice-versa.
@lisp
(service mpd-service-type
(mpd-configuration
(user "bob")
(port "6666")))
(music-directory "/srv/music")))
@end lisp
@quotation Important
The music directory must be readable to the MPD user, by default,
@samp{mpd}. Permission problems will be reported via @samp{Permission
denied} errors in the MPD logs, which appear in @file{/var/log/messages}
by default.
@end quotation
Most MPD clients will trigger a database update upon connecting, but you
can also use the @code{update} action do to so:
@example
herd update mpd
@end example
All the MPD configuration fields are documented below, and a more
complex example follows.
@defvar mpd-service-type
The service type for @command{mpd}
@end defvar
@c %start of fragment
@deftp {Data Type} mpd-configuration
Data type representing the configuration of @command{mpd}.
Available @code{mpd-configuration} fields are:
@table @asis
@item @code{package} (default: @code{mpd}) (type: file-like)
The MPD package.
@item @code{user} (default: @code{%mpd-user}) (type: user-account)
@item @code{user} (type: user-account)
The user to run mpd as.
The default @code{%mpd-user} is a system user with the name ``mpd'',
who is a part of the group @var{group} (see below).
@item @code{group} (default: @code{%mpd-group}) (type: user-group)
@item @code{group} (type: user-group)
The group to run mpd as.
The default @code{%mpd-group} is a system group with name ``mpd''.
@item @code{shepherd-requirement} (default: @code{'()}) (type: list-of-symbol)
A list of symbols naming Shepherd services that this service
will depend on.
@ -34278,24 +34299,31 @@ will depend on.
@item @code{environment-variables} (default: @code{'("PULSE_CLIENTCONFIG=/etc/pulse/client.conf" "PULSE_CONFIG=/etc/pulse/daemon.conf")}) (type: list-of-strings)
A list of strings specifying environment variables.
@item @code{log-file} (default: @code{"/var/log/mpd/log"}) (type: maybe-string)
The location of the log file. Set to @code{syslog} to use the local
syslog daemon or @code{%unset-value} to omit this directive from the
configuration file.
@item @code{log-file} (type: maybe-string)
The location of the log file. Unless specified, logs are sent to the
local syslog daemon. Alternatively, a log file name can be specified,
for example @file{/var/log/mpd.log}.
@item @code{log-level} (type: maybe-string)
Suppress any messages below this threshold. Available values:
@code{notice}, @code{info}, @code{verbose}, @code{warning} and
@code{error}.
Supress any messages below this threshold. The available values, in
decreasing order of verbosity, are: @code{verbose}, @code{info},
@code{notice}, @code{warning} and @code{error}.
@item @code{music-directory} (type: maybe-string)
The directory to scan for music files.
@item @code{music-dir} (type: maybe-string)
The directory to scan for music files.
@item @code{playlist-directory} (type: maybe-string)
The directory to store playlists.
@item @code{playlist-dir} (type: maybe-string)
The directory to store playlists.
@item @code{db-file} (type: maybe-string)
The location of the music database.
The location of the music database. When left unspecified,
@file{~/.cache/db} is used.
@item @code{state-file} (type: maybe-string)
The location of the file that stores current MPD's state.
@ -34303,15 +34331,19 @@ The location of the file that stores current MPD's state.
@item @code{sticker-file} (type: maybe-string)
The location of the sticker database.
@item @code{default-port} (default: @code{6600}) (type: maybe-integer)
@item @code{default-port} (default: @code{6600}) (type: maybe-port)
The default port to run mpd on.
@item @code{endpoints} (type: maybe-list-of-strings)
The addresses that mpd will bind to. A port different from @var{default-port}
may be specified, e.g. @code{localhost:6602} and IPv6 addresses must be
enclosed in square brackets when a different port is used.
To use a Unix domain socket, an absolute path or a path starting with @code{~}
can be specified here.
The addresses that mpd will bind to. A port different from
@var{default-port} may be specified, e.g. @code{localhost:6602} and
IPv6 addresses must be enclosed in square brackets when a different port
is used. To use a Unix domain socket, an absolute path or a path
starting with @code{~} can be specified here.
@item @code{address} (type: maybe-string)
The address that mpd will bind to. To use a Unix domain socket, an
absolute path can be specified here.
@item @code{database} (type: maybe-mpd-plugin)
MPD database plugin configuration.
@ -34328,6 +34360,10 @@ List of MPD input plugin configurations.
@item @code{archive-plugins} (default: @code{'()}) (type: list-of-mpd-plugin)
List of MPD archive plugin configurations.
@item @code{auto-update?} (type: maybe-boolean)
Whether to automatically update the music database when files are
changed in the @var{music-directory}.
@item @code{input-cache-size} (type: maybe-string)
MPD input cache size.
@ -34353,6 +34389,7 @@ appended to the configuration.
@end table
@end deftp
@c %end of fragment
@deftp {Data Type} mpd-plugin
Data type representing a @command{mpd} plugin.
@ -34392,8 +34429,9 @@ Partitions} for available options.
@end table
@end deftp
@c %start of fragment
@deftp {Data Type} mpd-output
Data type representing a @command{mpd} audio output.
Available @code{mpd-output} fields are:
@table @asis
@item @code{name} (default: @code{"MPD"}) (type: string)
@ -34420,15 +34458,16 @@ is only useful for output plugins that can receive tags, for example the
@item @code{always-on?} (default: @code{#f}) (type: boolean)
If set to @code{#t}, then MPD attempts to keep this audio output always
open. This may be useful for streaming servers, when you don?t want to
open. This may be useful for streaming servers, when you dont want to
disconnect all listeners even when playback is accidentally stopped.
@item @code{mixer-type} (default: @code{"none"}) (type: string)
@item @code{mixer-type} (type: maybe-string)
This field accepts a string that specifies which mixer should be used
for this audio output: the @code{hardware} mixer, the @code{software}
mixer, the @code{null} mixer (allows setting the volume, but with no
effect; this can be used as a trick to implement an external mixer
External Mixer) or no mixer (@code{none}).
External Mixer) or no mixer (@code{none}). When left unspecified, a
@code{hardware} mixer is used for devices that support it.
@item @code{replay-gain-handler} (type: maybe-string)
This field accepts a string that specifies how
@ -34443,6 +34482,7 @@ appended to the audio output configuration.
@end table
@end deftp
@c %end of fragment
The following example shows a configuration of @command{mpd} that
configures some of its plugins and provides a HTTP audio streaming output.
@ -34540,11 +34580,10 @@ HTTP port to listen on.
How much detail to include in logs, possible values: @code{0} to
@code{7}.
@item @code{log-to} (default: @code{"/var/log/mympd/log"}) (type: string-or-symbol)
Where to send logs. By default, the service logs to
@file{/var/log/mympd.log}. The alternative is @code{'syslog}, which
sends output to the running syslog service under the @samp{daemon}
facility.
@item @code{log-to} (type: maybe-string)
Where to send logs. Unless specified, the service logs to the local
syslog service under the @samp{daemon} facility. Alternatively, a log
file name can be specified, for example @file{/var/log/mympd.log}.
@item @code{lualibs} (default: @code{"all"}) (type: maybe-string)
See

View File

@ -581,7 +581,8 @@ sys_create_shell_completion()
sys_customize_bashrc()
{
prompt_yes_no "Customize users Bash shell prompt for Guix?" || return
prompt_yes_no "Customize users Bash shell prompt for Guix?" || return 0
for bashrc in /home/*/.bashrc /root/.bashrc; do
test -f "$bashrc" || continue
grep -Fq '$GUIX_ENVIRONMENT' "$bashrc" && continue
@ -600,15 +601,26 @@ fi
sys_maybe_setup_selinux()
{
if [ -f /sys/fs/selinux/policy ]
if ! [ -f /sys/fs/selinux/policy ]
then
prompt_yes_no "Install SELinux policy required to run guix-daemon?" \
|| return
local var_guix=/var/guix/profiles/per-user/root/current-guix
semodule -i "${var_guix}/share/selinux/guix-daemon.cil"
restorecon -R /gnu /var/guix
return
fi
local c
for c in semodule restorecon
do
if ! command -v "$c" &>/dev/null
then
return
fi
done
prompt_yes_no "Install SELinux policy that might be required to run guix-daemon?" \
|| return 0
local var_guix=/var/guix/profiles/per-user/root/current-guix
semodule -i "${var_guix}/share/selinux/guix-daemon.cil"
restorecon -R /gnu /var/guix
}
welcome()

View File

@ -128,6 +128,17 @@ the haskell-build-system."
"guix/import/stackage.scm"
"guix/scripts/import/hackage.scm")))
(define-team qt
(team 'qt
#:name "Qt team"
#:description
"The Qt toolkit/library and the qt-build-system,
as well as some packages using Qt."
#:scope (list "gnu/packages/qt.scm"
"guix/build-system/qt.scm"
"guix/build/qt-build-system.scm"
"guix/build/qt-utils.scm")))
(define-team r
(team 'r
#:name "R team"
@ -142,6 +153,20 @@ and the r-build-system."
"guix/scripts/import/cran.scm"
"tests/cran.scm")))
(define-team telephony
(team 'telephony
#:name "Telephony team"
#:description
"Telephony packages and services such as Jami, Linphone, etc."
#:scope (list "gnu/build/jami-service.scm"
"gnu/packages/jami.scm"
"gnu/packages/linphone.scm"
"gnu/packages/telephony.scm"
"gnu/services/telephony.scm"
"gnu/tests/data/jami-dummy-account.dat"
"gnu/tests/telephony.scm"
"tests/services/telephony.scm")))
(define-team tex
(team 'tex
#:name "TeX team"
@ -587,7 +612,7 @@ GLib/GIO, GTK, GStreamer and Webkit."
(define-member (person "Maxim Cournoyer"
"maxim.cournoyer@gmail.com")
gnome)
gnome qt telephony)
(define (find-team name)

View File

@ -1039,6 +1039,10 @@ dist_patch_DATA = \
%D%/packages/patches/clucene-contribs-lib.patch \
%D%/packages/patches/cube-nocheck.patch \
%D%/packages/patches/curl-use-ssl-cert-env.patch \
%D%/packages/patches/curlftpfs-fix-error-closing-file.patch \
%D%/packages/patches/curlftpfs-fix-file-names.patch \
%D%/packages/patches/curlftpfs-fix-memory-leak.patch \
%D%/packages/patches/curlftpfs-fix-no_verify_hostname.patch \
%D%/packages/patches/cursynth-wave-rand.patch \
%D%/packages/patches/cvs-CVE-2017-12836.patch \
%D%/packages/patches/d-feet-drop-unused-meson-argument.patch \
@ -1572,7 +1576,6 @@ dist_patch_DATA = \
%D%/packages/patches/lua-5.4-pkgconfig.patch \
%D%/packages/patches/lua-5.4-liblua-so.patch \
%D%/packages/patches/luit-posix.patch \
%D%/packages/patches/lvm2-static-link.patch \
%D%/packages/patches/mactelnet-remove-init.patch \
%D%/packages/patches/mailutils-variable-lookup.patch \
%D%/packages/patches/make-impure-dirs.patch \
@ -1620,6 +1623,7 @@ dist_patch_DATA = \
%D%/packages/patches/mupen64plus-ui-console-notice.patch \
%D%/packages/patches/mupen64plus-video-z64-glew-correct-path.patch \
%D%/packages/patches/musl-cross-locale.patch \
%D%/packages/patches/mutter-fix-inverted-test.patch \
%D%/packages/patches/mutt-store-references.patch \
%D%/packages/patches/m17n-lib-1.8.0-use-pkg-config-for-freetype.patch \
%D%/packages/patches/nautilus-extension-search-path.patch \

View File

@ -2980,7 +2980,7 @@ modules and plugins that extend Ansible.")
(inputs
(list ansible
encfs
fuse
fuse-2
util-linux ;; for umount
findutils
gnupg

View File

@ -12,6 +12,7 @@
;;; Copyright © 2020 Sergey Trofimov <sarg@sarg.org.ru>
;;; Copyright © 2021 Guillaume Le Vaillant <glv@posteo.net>
;;; Copyright © 2021 Petr Hodina <phodina@protonmail.com>
;;; Copyright © 2023 Camilo Q.S. (Distopico) <distopico@riseup.net>
;;;
;;; This file is part of GNU Guix.
;;;
@ -38,6 +39,7 @@
#:use-module (guix build-system gnu)
#:use-module (guix build-system go)
#:use-module (guix build-system python)
#:use-module (guix build-system pyproject)
#:use-module (guix build-system trivial)
#:use-module ((guix licenses) #:prefix license:)
#:use-module (gnu packages)
@ -721,6 +723,35 @@ file system.")
"This package provides @command{fastboot}, a tool to upload file system images to Android devices.")
(license license:asl2.0)))
(define-public sdkmanager
(package
(name "sdkmanager")
(version "0.6.5")
(source (origin
(method url-fetch)
(uri (pypi-uri "sdkmanager" version ".tar.gz"))
(sha256
(base32
"11as7n2mj3nbqsqb3ivyv9985n73i022s748qvjg36cs8ig50afx"))))
(build-system pyproject-build-system)
(inputs (list python-requests python-argcomplete python-urllib3 gnupg))
(arguments
(list #:phases #~(modify-phases %standard-phases
(add-before 'build 'patch-gnupg
(lambda _
(substitute* "sdkmanager.py"
(("gpgv")
(string-append #$(this-package-input "gnupg")
"/bin/gpgv"))))))))
(home-page "https://gitlab.com/fdroid/sdkmanager")
(synopsis "Replacement for Android sdkmanager written in Python")
(description
"This package provides a drop-in replacement for sdkmanager from
the Android SDK. It is written in Python and part of the F-Droid
project. It implements the exact API of the Android sdkmanager command
line. The project also attempts to maintain the same terminal output.")
(license license:agpl3+)))
(define-public android-udev-rules
(package
(name "android-udev-rules")
@ -1260,7 +1291,7 @@ Java bytecode, which simplifies the analysis of Android applications.")
(build-system cmake-build-system)
(arguments
(list #:tests? #f)) ;there are no tests
(inputs (list qtbase-5 fuse-3 libxkbcommon))
(inputs (list qtbase-5 fuse libxkbcommon))
(native-inputs (list qttools-5 openssl readline))
(home-page "https://whoozle.github.io/android-file-transfer-linux/")
(synopsis "MTP client for Android devices")

View File

@ -186,14 +186,14 @@ speed on x86, NEON on ARM, etc.).")
(define-public fasm
(package
(name "fasm")
(version "1.73.30")
(version "1.73.31")
(source
(origin
(method url-fetch)
(uri (string-append "https://flatassembler.net/fasm-"
version ".tgz"))
(sha256
(base32 "00giqb94z8cxhv20yiyk8axkd2kzjcg1c0841yzbn7c8lm8m06bm"))))
(base32 "1qqg1czr9dr73l4gwrwim85mjs65al7vv8b292jipywimhhwnf4g"))))
(build-system gnu-build-system)
(arguments
`(#:tests? #f ; no tests exist

View File

@ -60,6 +60,7 @@
#:use-module (gnu packages multiprecision)
#:use-module (gnu packages ncurses)
#:use-module (gnu packages netpbm)
#:use-module (gnu packages onc-rpc)
#:use-module (gnu packages perl)
#:use-module (gnu packages photo)
#:use-module (gnu packages pkg-config)
@ -420,6 +421,30 @@ made to get a better separation of core libraries and applications.
@url{https://casa.nrao.edu/, CASA} is now built on top of Casacore.")
(license license:gpl2+)))
(define-public ccfits
(package
(name "ccfits")
(version "2.6")
(source
(origin
(method url-fetch)
(uri (string-append
"https://heasarc.gsfc.nasa.gov/docs/software/fitsio/ccfits/"
"CCfits-" version ".tar.gz"))
(sha256
(base32 "04l6na8vr5xadz3rbx62as79x1ch4994vbb625kx0dz5czdkkd1b"))))
(build-system cmake-build-system)
(inputs (list cfitsio))
(home-page "https://heasarc.gsfc.nasa.gov/docs/software/fitsio/ccfits/")
(synopsis "C++ interface to the CFITSIO")
(description
"CCfits is an object oriented interface to the cfitsio library. It is
designed to make the capabilities of cfitsio available to programmers working in
C++. It is written in ANSI C++ and implemented using the C++ Standard Library
with namespaces, exception handling, and member template functions.")
(license (license:non-copyleft "file://License.txt"
"See License.txt in the distribution."))))
(define-public cfitsio
(package
(name "cfitsio")
@ -428,7 +453,7 @@ made to get a better separation of core libraries and applications.
(origin
(method url-fetch)
(uri (string-append
"http://heasarc.gsfc.nasa.gov/FTP/software/fitsio/c/"
"https://heasarc.gsfc.nasa.gov/FTP/software/fitsio/c/"
"cfitsio-" version ".tar.gz"))
(sha256
(base32 "128qsv2q0f0g714ahlsixiikvvbwxi9bg9q9pcr5cd3f7wdkv9gb"))))
@ -733,6 +758,66 @@ polygon data in order to produce control maps which can directly be used in
astronomical image-processing packages like Drizzle, Swarp or SExtractor.")
(license license:gpl3+)))
(define-public glnemo2
(package
(name "glnemo2")
(version "1.21.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://gitlab.lam.fr/jclamber/glnemo2")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "1jmmxszh8d2jmfghig36nhykff345mqnpssfa64d0r7l9cnfp3cn"))))
(build-system cmake-build-system)
(arguments
(list
#:tests? #f ; No test target
#:configure-flags #~(list "CPPFLAGS=-fcommon")
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'patch-libraries-paths
(lambda _
(substitute* "CMakeLists.txt"
;; There is some not straightforward logic on how to set
;; the installation prefix for the project; inherit it
;; from the build-system default flags.
(("CMAKE_INSTALL_PREFIX \"/usr\"")
"CMAKE_INSTALL_PREFIX")
(("/usr/include/CCfits")
(string-append
#$(this-package-input "ccfits") "/include/CCfits"))
(("/usr/include/tirpc")
(string-append
#$(this-package-input "libtirpc") "/include/tirpc"))
;; It tries to detect library in two "predictable" paths,
;; required during the link phase.
(("/usr/lib64/libtirpc.so")
(string-append
#$(this-package-input "libtirpc") "/lib/libtirpc.so"))))))))
(inputs
(list ccfits
cfitsio
glm
glu
hdf5
libtirpc
qtbase-5
zlib))
(home-page "https://projets.lam.fr/projects/unsio/wiki")
(synopsis "3D interactive visualization program for n-body like particles")
(description
"GLNEMO2 is an interactive 3D visualization program which displays
particles positions of the different components (gas, stars, disk, dark
matter halo, bulge) of an N-body snapshot. It is a tool for running
N-body simulations from isolated galaxies to cosmological simulations.
It has a graphical user interface (based on QT 5.X API), uses a fast
3D engine (OPenGL and GLSL), and is generic with the possibility to load
different kinds of input files.")
(license license:cecill)))
(define-public gnuastro
(package
(name "gnuastro")

View File

@ -780,7 +780,7 @@ backups on untrusted computers.")
(native-inputs
(list pkg-config))
(inputs
(list fuse-3 libxml2 ntfs-3g openssl))
(list fuse libxml2 ntfs-3g openssl))
(arguments
`(#:configure-flags
(list "--disable-static"

View File

@ -4723,6 +4723,77 @@ error rates and dispersion - and prior knowledge, e.g. from variation data
bases such as COSMIC.")
(license license:gpl3)))
(define-public r-degreport
(package
(name "r-degreport")
(version "1.36.0")
(source (origin
(method url-fetch)
(uri (bioconductor-uri "DEGreport" version))
(sha256
(base32
"15xm1l2qgsyzaw820a1fq5qdzh5pj4dmr1hx6s6b6wm2p02cvvai"))
(snippet
'(delete-file "docs/jquery.sticky-kit.min.js"))))
(properties `((upstream-name . "DEGreport")))
(build-system r-build-system)
(arguments
(list
#:phases
'(modify-phases %standard-phases
(add-after 'unpack 'process-javascript
(lambda* (#:key inputs #:allow-other-keys)
(invoke "esbuild"
(assoc-ref inputs "js-jquery-sticky-kit")
"--minify"
"--outfile=docs/jquery.sticky-kit.min.js"))))))
(propagated-inputs (list r-biobase
r-biocgenerics
r-broom
r-circlize
r-cluster
r-complexheatmap
r-consensusclusterplus
r-cowplot
r-deseq2
r-dplyr
r-edger
r-ggdendro
r-ggplot2
r-ggrepel
r-knitr
r-logging
r-magrittr
r-psych
r-rcolorbrewer
r-reshape
r-rlang
r-s4vectors
r-scales
r-stringr
r-summarizedexperiment
r-tibble
r-tidyr))
(native-inputs
`(("esbuild" ,esbuild)
("r-knitr" ,r-knitr)
("js-jquery-sticky-kit"
,(origin
(method url-fetch)
(uri "https://raw.githubusercontent.com/leafo/sticky-kit/\
v1.1.2/jquery.sticky-kit.js")
(sha256
(base32
"17c3a1hqc3ybwj7hpw8prazajp2x98aq7nyfn71h6lzjvblq297g"))))))
(home-page "https://lpantano.github.io/DEGreport/")
(synopsis "Report of DEG analysis")
(description
"This is a package for creating na HTML report of differential expression
analyses of count data. It integrates some of the code mentioned in DESeq2
and @code{edgeR} vignettes, and report a ranked list of genes according to the
fold changes mean and variability for each selected gene.")
(license license:expat)))
(define-public r-delayedarray
(package
(name "r-delayedarray")

View File

@ -8713,7 +8713,7 @@ unique transcripts.")
(list ngs-sdk
ncbi-vdb
file
fuse
fuse-2
hdf5-1.10
libxml2
zlib

View File

@ -215,8 +215,8 @@
;; file system will be readable by GRUB without rebooting.
,@(if (member (or (%current-target-system)
(%current-system))
(package-supported-systems fuse))
`(("fuse" ,fuse))
(package-supported-systems fuse-2))
`(("fuse" ,fuse-2))
'())
("freetype" ,freetype)

View File

@ -171,14 +171,14 @@ generate such a compilation database.")
(define-public bmake
(package
(name "bmake")
(version "20230711")
(version "20230723")
(source
(origin
(method url-fetch)
(uri (string-append
"http://www.crufty.net/ftp/pub/sjg/bmake-" version ".tar.gz"))
(sha256
(base32 "1vrg6gclfn34lxyyqf0837hk89n5pf7ms0gmgg1fd87i0cn5908a"))))
(base32 "012rzgjmncdla1l43f9wl8v13h7d46zgn28k6djpcgx23fahsan4"))))
(build-system gnu-build-system)
(inputs
(list bash-minimal))
@ -605,7 +605,7 @@ software.")
(display "au BufNewFile,BufRead Tupfile,*.tup setf tup")))
#t))))))
(inputs
(list fuse-3 pcre
(list fuse pcre
`(,pcre "bin") ; pcre-config
sqlite))
(native-inputs

View File

@ -6,7 +6,7 @@
;;; Copyright © 2020 Björn Höfling <bjoern.hoefling@bjoernhoefling.de>
;;; Copyright © 2020 Vincent Legoll <vincent.legoll@gmail.com>
;;; Copyright © 2021 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2022 David Elsing <david.elsing@posteo.net>
;;; Copyright © 2022, 2023 David Elsing <david.elsing@posteo.net>
;;;
;;; This file is part of GNU Guix.
;;;
@ -554,6 +554,12 @@ symmetries written in C. Spglib can be used to:
(assoc-ref inputs "libxml2")
"/include/libxml2:"
(getenv "CPLUS_INCLUDE_PATH")))))
;; Prevent deleting the leading / in the __init__.py path in the
;; launch script.
(add-after 'unpack 'disable-unchroot
(lambda _
(substitute* "setup.py"
(("self\\.unchroot") ""))))
;; The setup.py script does not support one of the Python build
;; system's default flags, "--single-version-externally-managed".
(replace 'install
@ -572,8 +578,7 @@ symmetries written in C. Spglib can be used to:
python-pyqt
glm
netcdf))
(native-inputs
(list catch2 python-setuptools))
(native-inputs (list catch2))
(home-page "https://pymol.org")
(synopsis "Molecular visualization system")
(description "PyMOL is a capable molecular viewer and renderer. It can be

View File

@ -584,7 +584,7 @@
"ffmpeg_branding=\"Chrome\""
;; WebRTC stuff.
"rtc_use_h264=false" ;XXX needs bundled openh264
"rtc_use_h264=true"
"rtc_use_pipewire=true"
"rtc_link_pipewire=true"
;; Don't use bundled sources.

View File

@ -1251,6 +1251,31 @@ quickly isolate key differences makes understanding test failures much
easier.")
(license license:expat)))
(define-public r-wheatmap
(package
(name "r-wheatmap")
(version "0.2.0")
(source (origin
(method url-fetch)
(uri (cran-uri "wheatmap" version))
(sha256
(base32
"064idlrnb85xxav39gp3n854fic6514khvazrf5d0x48crpzyvdp"))))
(properties `((upstream-name . "wheatmap")))
(build-system r-build-system)
(propagated-inputs (list r-colorspace r-rcolorbrewer))
(native-inputs (list r-knitr))
(home-page "https://github.com/zwdzwd/wheatmap")
(synopsis "Incrementally build complex plots using natural semantics")
(description
"This package lets you build complex plots, heatmaps in particular, using
natural semantics. Bigger plots can be assembled using directives such as
@code{LeftOf}, @code{RightOf}, @code{TopOf}, and @code{Beneath} and more.
Other features include clustering, dendrograms and integration with ggplot2
generated grid objects. This package is particularly designed for
bioinformaticians to assemble complex plots for publication.")
(license license:gpl3)))
(define-public r-rticles
(package
(name "r-rticles")
@ -21286,6 +21311,28 @@ The bedr package's API enhances access to these tools as well as offers
additional utilities for genomic regions processing.")
(license license:gpl2)))
(define-public r-setrng
(package
(name "r-setrng")
(version "2022.4-1")
(source (origin
(method url-fetch)
(uri (cran-uri "setRNG" version))
(sha256
(base32
"09089vr5x8snwxh38kdhgpjl3jl7zrk056f6f9a2jg5lsrmnxh31"))))
(properties `((upstream-name . "setRNG")))
(build-system r-build-system)
(home-page "https://distr.r-forge.r-project.org/")
(synopsis "Set (normal) random number generator and seed")
(description
"This package provides utilities to help set and record the setting of
the seed and the uniform and normal generators used when a random experiment
is run. The utilities can be used in other functions that do random
experiments to simplify recording and/or setting all the necessary information
for reproducibility. See the vignette and reference manual for examples.")
(license license:gpl2)))
(define-public r-sets
(package
(name "r-sets")

View File

@ -333,7 +333,7 @@ OpenBSD tool of the same name.")
("googletest-source" ,(package-source googletest))
("perl" ,perl)))
(inputs
(list attr fuse openssl-1.1 tinyxml2))
(list attr fuse-2 openssl-1.1 tinyxml2))
(arguments
`(#:configure-flags (list "-DUSE_INTERNAL_TINYXML=OFF")
#:phases
@ -1532,7 +1532,7 @@ non-encrypted files.")
(native-inputs
(list pkg-config python-wrapper))
(inputs
(list boost curl fuse range-v3 spdlog))
(list boost curl fuse-2 range-v3 spdlog))
(home-page "https://www.cryfs.org/")
(synopsis "Encrypted FUSE filesystem for the cloud")
(description "CryFS encrypts your files, so you can safely store them anywhere.

View File

@ -1190,14 +1190,14 @@ and high-availability (HA).")
(define-public postgresql-15
(package
(name "postgresql")
(version "15.1")
(version "15.3")
(source (origin
(method url-fetch)
(uri (string-append "https://ftp.postgresql.org/pub/source/v"
version "/postgresql-" version ".tar.bz2"))
(sha256
(base32
"1bi19sqmri569hyjvbk8grlws7f5dalsqz87wkgx1yjafcyz5zb4"))
"0cnrk5jrwfqkcx8mlg761s60ninqrsxpzasf7xfbzzq03y4x9izz"))
(patches (search-patches "postgresql-disable-resolve_symlinks.patch"))))
(build-system gnu-build-system)
(arguments
@ -1265,27 +1265,27 @@ pictures, sounds, or video.")
(define-public postgresql-13
(package
(inherit postgresql-14)
(version "13.9")
(version "13.11")
(source (origin
(inherit (package-source postgresql-14))
(uri (string-append "https://ftp.postgresql.org/pub/source/v"
version "/postgresql-" version ".tar.bz2"))
(sha256
(base32
"05d46dzkya6s0qbaxvksc5j12syb514q5lha6z9vx7z4lp06c6gg"))))))
"1yqbwnzgdgaim476smwkdj2jd6j92x9xqm2f1mknnmh3f9jgz4j9"))))))
(define-public postgresql-11
(package
(inherit postgresql-13)
(name "postgresql")
(version "11.18")
(version "11.20")
(source (origin
(inherit (package-source postgresql-13))
(uri (string-append "https://ftp.postgresql.org/pub/source/v"
version "/postgresql-" version ".tar.bz2"))
(sha256
(base32
"013m1x53qfxcry7l033ahhxjc3lflb7fj8fapk7qm49fqppj0kyj"))))
"1kmcnnc2nwjxv042b8bxbdxdgfksxvgmfhh4999rhzjays18hz1x"))))
(native-inputs
(modify-inputs (package-native-inputs postgresql-13)
(replace "docbook-xml" docbook-xml-4.2)))))
@ -2777,25 +2777,26 @@ database.")
(define-public perl-db-file
(package
(name "perl-db-file")
(version "1.856")
(version "1.858")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://cpan/authors/id/P/PM/PMQS/DB_File-"
version ".tar.gz"))
(sha256
(base32 "1ab6rm2b8lz0g3gc8k9y79gkgajyby0zpybkdg9mk4g35y9bmyfd"))))
(base32 "1xm7s2ag15498kp7g8r20gxk22ncz3b3hz4b3srqf7ypif3a5dyf"))))
(build-system perl-build-system)
(arguments
(list
#:phases
#~(modify-phases %standard-phases
(add-before 'configure 'modify-config.in
(lambda _
(substitute* "config.in"
(("/usr/local/BerkeleyDB")
#$(this-package-input "bdb"))))))))
(inputs (list bdb))
(native-inputs (list perl-test-pod))
(arguments
`(#:phases (modify-phases %standard-phases
(add-before
'configure 'modify-config.in
(lambda* (#:key inputs #:allow-other-keys)
(substitute* "config.in"
(("/usr/local/BerkeleyDB") (assoc-ref inputs "bdb")))
#t)))))
(home-page "https://metacpan.org/release/DB_File")
(synopsis "Perl5 access to Berkeley DB version 1.x")
(description
@ -3802,13 +3803,13 @@ libraries with SQLALchemy.")
(define-public python-psycopg2
(package
(name "python-psycopg2")
(version "2.9.5")
(version "2.9.6")
(source
(origin
(method url-fetch)
(uri (pypi-uri "psycopg2" version))
(sha256
(base32 "0ni4kq6p7hbkm2qsky998q36q5gq5if4nwd8hwhjx5rsd0p6s955"))))
(base32 "04chl9f7v7k1zssa40pmk06jvpyqiss2lpjq50dq69nqix0mhlgi"))))
(build-system python-build-system)
(arguments
;; Tests would require a postgresql database "psycopg2_test"

View File

@ -74,7 +74,7 @@
(define-public diffoscope
(package
(name "diffoscope")
(version "245")
(version "246")
(source
(origin
(method git-fetch)
@ -83,7 +83,7 @@
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "0zh2smp0vvvl1c4f5ykmblw0xlbdfnix1v2yi5xpyia2pgslbjjv"))))
(base32 "1y54r0kayn7nvv0ng9dx6bwxvrwdkd0xaklmfq53z7p00wgx0ly8"))))
(build-system python-build-system)
(arguments
(list

View File

@ -245,14 +245,14 @@ tmpfs/ramfs filesystems.")
(define-public parted
(package
(name "parted")
(version "3.5")
(version "3.6")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnu/parted/parted-"
version ".tar.xz"))
(sha256
(base32
"18h51i3x5cbqhlj5rm23m9sfw63gaaby5czln5w6qpqj3ifdsf29"))))
"04p6b4rygrfd1jrskwrx3bn2icajg1mvbfhyc0c9l3ya7kixnhrv"))))
(build-system gnu-build-system)
(arguments
(list

View File

@ -845,7 +845,7 @@ Extensions} (DNSSEC).")
(define-public knot
(package
(name "knot")
(version "3.2.8")
(version "3.2.9")
(source
(origin
(method git-fetch)
@ -854,7 +854,7 @@ Extensions} (DNSSEC).")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "05yhm1n0zphcvicy2brlbv3azp4lvdjprcqf3lybz7mzd6ghr25c"))
(base32 "1kxmplngnlpd6j9nbzq1c1z02ipd38ypnppy7frg5crn83phfbxm"))
(modules '((guix build utils)))
(snippet
'(begin

View File

@ -153,6 +153,7 @@
#:use-module (guix packages)
#:use-module (guix cvs-download)
#:use-module (guix download)
#:use-module (guix deprecation)
#:use-module (guix bzr-download)
#:use-module (guix gexp)
#:use-module (guix i18n)
@ -1287,7 +1288,7 @@ some utility functions, and commands using that infrastructure.")
its mode line.")
(license license:gpl3+))))
(define-public git-modes
(define-public emacs-git-modes
(package
(name "emacs-git-modes")
(version "1.4.1")
@ -1311,6 +1312,8 @@ configuration files, such as @file{.gitattributes}, @file{.gitignore}, and
@file{.git/config}.")
(license license:gpl3+)))
(define-deprecated/public-alias git-modes emacs-git-modes)
(define-public emacs-with-editor
(package
(name "emacs-with-editor")
@ -3491,6 +3494,30 @@ read-only based on user configuration. User configuration may be prefix
directories or regex patterns.")
(license license:gpl3+))))
;; Use latest commit since there are no tags anymore for several versions
(define-public emacs-rebecca-theme
(let ((commit "4b8b5aae9099185e07c2b4cac4943c7f66a3f003")
(revision "0"))
(package
(name "emacs-rebecca-theme")
(version (git-version "1.3.2" revision commit))
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/vic/rebecca-theme")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32
"0y2kcs6zgi3dijagyz6lxbv6gi2mih8m943fhjrzkj35wfvjmhsz"))))
(build-system emacs-build-system)
(home-page "https://github.com/vic/rebecca-theme")
(synopsis "Dark Emacs theme with purple/violet colors")
(description
"Rebecca Emacs theme is a dark theme with purple/violet colors, based on
the @code{Dracula} theme for Emacs and the @code{Gloom} theme for Atom.")
(license license:expat))))
(define-public emacs-bbdb
(package
(name "emacs-bbdb")
@ -4197,6 +4224,31 @@ Some of its major features include:
Lock key.")
(license license:gpl3+)))
(define-public emacs-chocolate-theme
(let ((commit "ccc05f7ad96d3d1332727689bf6250443adc7ec0")
(revision "0"))
(package
(name "emacs-chocolate-theme")
(version (git-version "0.2.0" revision commit))
(source (origin
(method git-fetch)
(uri (git-reference
(url
"https://github.com/SavchenkoValeriy/emacs-chocolate-theme")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32
"1d8a9jwv9y0sncw24k840c8yyrig30f2d6q2zqlc09f05yzq9p9p"))))
(build-system emacs-build-system)
(propagated-inputs (list emacs-autothemer))
(home-page "https://github.com/SavchenkoValeriy/emacs-chocolate-theme")
(synopsis "Dark chocolatey theme for Emacs")
(description
"Chocolate theme is a dark, chocolatey, vibrant and subtle theme for
Emacs.")
(license license:gpl3))))
(define-public emacs-chronometrist
(package
(name "emacs-chronometrist")
@ -11054,16 +11106,16 @@ answers.")
(define-public emacs-base16-theme
(package
(name "emacs-base16-theme")
(version "3.0")
(version "3.1")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/belak/base16-emacs")
(url "https://github.com/tinted-theming/base16-emacs")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "0qp71j77zg8gippcn277s0j5a9n6dbwv3kdp2nya6li4b412vgba"))))
(base32 "1yq9afvybrgkmn17h22ha9231am7hlh3wccxw7g2ks3g0k5vvds0"))))
(build-system emacs-build-system)
(arguments
(list #:include #~(cons "^build\\/.*\\.el$" %default-include)
@ -11083,7 +11135,7 @@ answers.")
'pre 'post)))
(find-files theme-dir "\\.el$"))
(delete-file-recursively theme-dir)))))))
(home-page "https://github.com/belak/base16-emacs")
(home-page "https://github.com/tinted-theming/base16-emacs")
(synopsis "Base16 color themes for Emacs")
(description
"Base16 provides carefully chosen syntax highlighting and a default set
@ -17323,27 +17375,32 @@ is the primary mode of interaction.")
(license (list license:gpl3+
license:fdl1.3+)))) ; GFDLv1.3+ for the manual
;; Package has no releases or tags. Version is extracted from "Version:"
;; keyword in main file.
(define-public emacs-idle-highlight
(package
(name "emacs-idle-highlight")
(version "1.1.3")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/nonsequitur/idle-highlight-mode")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "0x4w1ksrw7dicl84zpf4d4scg672dyan9g95jkn6zvri0lr8xciv"))))
(build-system emacs-build-system)
(home-page "https://www.emacswiki.org/emacs/IdleHighlight")
(synopsis "Highlights all occurrences of the word the point is on")
(description
"This Emacs package provides @code{idle-highlight-mode} that sets
(let ((commit "f9091c907d41e7b12d99d108a194229b8dbfc5ae")
(revision "0"))
(package
(name "emacs-idle-highlight")
(version (git-version "1.1.4" revision commit))
(source (origin
(method git-fetch)
(uri (git-reference
(url
"https://codeberg.org/ideasman42/emacs-idle-highlight-mode")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32
"0757x4iy7q0mj1rshlxr00hbc78g5hzijgzyqs36nrw6bn65fb93"))))
(build-system emacs-build-system)
(home-page "https://codeberg.org/ideasman42/emacs-idle-highlight-mode")
(synopsis "Highlights all occurrences of the word the point is on")
(description
"This Emacs package provides @code{idle-highlight-mode} that sets
an idle timer to highlight all occurrences in the buffer of the word under
the point.")
(license license:gpl3+)))
(license license:gpl3+))))
(define-public emacs-ox-twbs
(package
@ -18066,7 +18123,7 @@ Pippel also uses Tabulated List mode, it provides a similar package menu like
(define-public emacs-pos-tip
(package
(name "emacs-pos-tip")
(version "0.4.6")
(version "0.4.7")
(source
(origin
(method git-fetch)
@ -18075,7 +18132,7 @@ Pippel also uses Tabulated List mode, it provides a similar package menu like
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "0w8bnspnk871qndp18hs0wk4x9x31xr9rwbvf5dc8mcbnj29ch33"))))
(base32 "1k6r59jhbyiknhsl7df0zafyc4d9r3vk953x6sdxgz92kx6hxpfy"))))
(build-system emacs-build-system)
;; The following functions and variables needed by emacs-pos-tip are
;; not included in emacs-minimal:
@ -27229,6 +27286,30 @@ recursive size is not obtained. Once this mode is enabled, every new Dired
buffer displays recursive dir sizes.")
(license license:gpl3+)))
(define-public emacs-dired-preview
(package
(name "emacs-dired-preview")
(version "0.1.0")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://git.sr.ht/~protesilaos/dired-preview")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32
"0d485812k1rv0qrw4xvzv4z3qf370apsajnf4q3pjk3q0r1fpm8b"))))
(build-system emacs-build-system)
(home-page "https://protesilaos.com/emacs/dired-preview")
(synopsis "Automatically preview file at point in Dired")
(description
"This is a simple package to automatically preview in a side window the
file at point in Dired buffers. Preview windows are closed when they are no
longer relevant, while preview buffers are killed if they have not been used
for other purposes beside previewing. The package provides several
customisation options to control its behaviour.")
(license license:gpl3+)))
(define-public emacs-dired-rsync
(package
(name "emacs-dired-rsync")

View File

@ -2542,7 +2542,7 @@ measurement devices and test equipment via GPIB, RS232, Ethernet or USB.")
(define-public python-scikit-rf
(package
(name "python-scikit-rf")
(version "0.27.1")
(version "0.28.0")
(source (origin
(method git-fetch) ;PyPI misses some files required for tests
(uri (git-reference
@ -2550,7 +2550,7 @@ measurement devices and test equipment via GPIB, RS232, Ethernet or USB.")
(commit (string-append "v" version))))
(sha256
(base32
"1rh2hq050439azlglqb54cy3jc1ir5y1ps55as4d5j619a7mq9x0"))
"11pxl8q356f6q4cvadasg52js3k446l87hwmc87b1n9cy8sxcfvi"))
(file-name (git-file-name name version))))
(build-system pyproject-build-system)
(propagated-inputs (list python-matplotlib

View File

@ -176,14 +176,14 @@ large and/or frequently changing (network) environment.")
(define-public bindfs
(package
(name "bindfs")
(version "1.15.1")
(version "1.17.4")
(source (origin
(method url-fetch)
(uri (string-append "https://bindfs.org/downloads/bindfs-"
version ".tar.gz"))
(sha256
(base32
"1av8dj9i1g0105fs5r9srqqsp7yahlhwc0yl8i1szyfdls23bp84"))))
"1k1xkyjk8ms11djbhlmykkzfbcids6ls5vpq7rhdnazcladszm3g"))))
(build-system gnu-build-system)
(arguments
;; XXX: The tests have no hope of passing until there is a "nogroup"
@ -198,7 +198,7 @@ large and/or frequently changing (network) environment.")
;; ("which" ,which)
(list pkg-config))
(inputs
(list fuse))
(list fuse-2))
(home-page "https://bindfs.org")
(synopsis "Bind mount a directory and alter permission bits")
(description
@ -275,7 +275,7 @@ unmaintained---to use the @code{inotify} API instead of the deprecated
(arguments
'(#:configure-flags '("--enable-library" "--enable-fuse")))
(native-inputs (list pkg-config))
(inputs (list xz fuse))
(inputs (list xz fuse-2))
(synopsis "Virtual file system that allows browsing of compressed files")
(description
"AVFS is a FUSE-based filesystem that allows browsing of compressed
@ -565,7 +565,7 @@ AES-GCM implementation.")
(native-inputs
(list pkg-config))
(inputs
(list fuse glib libgphoto2))
(list fuse-2 glib libgphoto2))
(synopsis "Virtual file system for libgphoto2 using FUSE")
(description "GPhotoFS is a FUSE file system module to mount your camera as
a file system on Linux. This allow using your camera with any tool able to read
@ -618,7 +618,17 @@ from a mounted file system.")
"not test_fsck and "
"not test_list and "
"not test_list_inodes and "
"not test_list_dirent"))))))))
"not test_list_dirent")))))
(add-after 'install 'patch-shell-wrappers
;; These are overcomplicated wrappers that invoke readlink(1)
;; to exec the appropriate bcachefs(8) subcommand. We can
;; simply patch in the latter file name directly, and do.
(lambda _
(let ((sbin/ (string-append #$output "/sbin/")))
(substitute* (find-files sbin/ (lambda (file stat)
(not (elf-file? file))))
(("SDIR=.*") "")
(("\\$\\{SDIR.*}/") sbin/))))))))
(native-inputs
(cons* pkg-config
;; For generating documentation with rst2man.
@ -639,11 +649,7 @@ from a mounted file system.")
`(,util-linux "lib")
lz4
zlib
`(,zstd "lib")
;; Only for mount.bcachefs.sh.
coreutils-minimal
gawk
util-linux))
`(,zstd "lib")))
(home-page "https://bcachefs.org/")
(synopsis "Tools to create and manage bcachefs file systems")
(description
@ -667,17 +673,7 @@ performance and other characteristics.")
(substitute-keyword-arguments (package-arguments bcachefs-tools)
((#:make-flags make-flags)
#~(append #$make-flags
(list "LDFLAGS=-static")))
((#:phases phases)
#~(modify-phases #$phases
(add-after 'unpack 'skip-shared-library
(lambda _
(substitute* "Makefile"
;; Building the shared library with -static obviously fails…
(("^((all|install):.*)\\blib\\b(.*)" _ prefix suffix)
(string-append prefix suffix "\n"))
;; …as does installing a now non-existent file.
((".*\\$\\(INSTALL\\).* lib.*") ""))))))))
(list "LDFLAGS=-static")))))
(inputs (modify-inputs (package-inputs bcachefs-tools)
(prepend `(,eudev "static")
`(,keyutils "static")
@ -760,7 +756,7 @@ Extensible File Allocation Table} file systems. Included are
(native-inputs
(list asciidoc docbook-xml libxml2 libxslt pkg-config))
(inputs
(list fuse gnutls))
(list fuse-2 gnutls))
(arguments
(list #:phases
#~(modify-phases %standard-phases
@ -925,7 +921,7 @@ files mistakenly overwritten or destroyed just a few seconds ago.")
(native-inputs
(list pkg-config))
(inputs
(list fuse attr))
(list fuse-2 attr))
(arguments
`(#:phases (modify-phases %standard-phases
(delete 'configure)) ; no configure script
@ -987,7 +983,7 @@ non-determinism in the build process.")
("cmocka" ,cmocka)))
(inputs
`(("acl" ,acl)
("fuse" ,fuse)
("fuse" ,fuse-2)
("openssl" ,openssl)
("liburcu" ,liburcu)
("libuuid" ,util-linux "lib")
@ -1016,8 +1012,12 @@ All of this is accomplished without a centralized metadata server.")
(uri (string-append "mirror://sourceforge/curlftpfs/curlftpfs/" version
"/curlftpfs-" version ".tar.gz"))
(sha256
(base32
"0n397hmv21jsr1j7zx3m21i7ryscdhkdsyqpvvns12q7qwwlgd2f"))))
(base32 "0n397hmv21jsr1j7zx3m21i7ryscdhkdsyqpvvns12q7qwwlgd2f"))
(patches
(search-patches "curlftpfs-fix-error-closing-file.patch"
"curlftpfs-fix-file-names.patch"
"curlftpfs-fix-memory-leak.patch"
"curlftpfs-fix-no_verify_hostname.patch"))))
(build-system gnu-build-system)
(arguments
`(#:phases
@ -1030,7 +1030,7 @@ All of this is accomplished without a centralized metadata server.")
(("4426192") "12814800"))
#t)))))
(inputs
(list curl glib fuse))
(list curl glib fuse-2))
(native-inputs
(list pkg-config))
(home-page "https://curlftpfs.sourceforge.net/")
@ -1158,9 +1158,8 @@ network. LIBNFS offers three different APIs, for different use :
))))
(define-public apfs-fuse
;; Later versions require FUSE 3.
(let ((commit "7b89418e8dc27103d3c4f8fa348086ffcd634c17")
(revision "1"))
(let ((commit "66b86bd525e8cb90f9012543be89b1f092b75cf3")
(revision "2"))
(package
(name "apfs-fuse")
(version (git-version "0.0.0" revision commit))
@ -1171,14 +1170,11 @@ network. LIBNFS offers three different APIs, for different use :
(recursive? #t) ; for lzfse
(commit commit)))
(sha256
(base32
"0x2siy3cmnm9wsdfazg3xc8r3kbg73gijmnn1vjw33pp71ckylxr"))
(base32 "0f63slyzv8fbgshpzrx2g01x9h73g5yvh5kis4yazl19fjm2b05r"))
(file-name (git-file-name name version))))
(build-system cmake-build-system)
(arguments
`(#:tests? #f ; No test suite
#:configure-flags
'("-DUSE_FUSE3=OFF") ; FUSE 3 is not packaged yet.
#:phases
(modify-phases %standard-phases
;; No 'install' target in CMakeLists.txt
@ -1192,9 +1188,7 @@ network. LIBNFS offers three different APIs, for different use :
(install-file "apfs-dump" bin)
(install-file "apfs-dump-quick" bin)
(install-file "apfs-fuse" bin)
(install-file "libapfs.a" lib)
(install-file "../source/README.md" doc)
#t))))))
(install-file "../source/README.md" doc)))))))
(inputs
(list bzip2 fuse zlib))
(synopsis "Read-only FUSE driver for the APFS file system")
@ -1614,7 +1608,7 @@ On Guix System, you will need to invoke the included shell scripts as
(("/sbin") "$(EXEC_PREFIX)/sbin")
(("chown") "true") ; disallowed in the build environment
(("strip") "true")) ; breaks cross-compilation
;; These were copied from the fuse package.
;; These were copied from the fuse-2 package.
(substitute* '("libfuse/lib/mount_util.c"
"libfuse/util/mount_util.c")
(("/bin/(u?)mount" _ maybe-u)
@ -1776,9 +1770,8 @@ local file system using FUSE.")
(license license:bsd-3)))
(define-public rewritefs
(let ((revision "0")
;; This is the last commit supporting our fuse@2.
(commit "31e2810b596028a12e49a08664567755f4b387b2"))
(let ((revision "1")
(commit "3a56de8b5a2d44968b8bc3885c7d661d46367306"))
(package
(name "rewritefs")
(version (git-version "0.0.0" revision commit))
@ -1790,24 +1783,27 @@ local file system using FUSE.")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32 "0k1aas2bdq2l3a6q3fvmngpakcxiws8qny2w6z7ffngyqxh33fv7"))))
(base32 "1w2rik0lhqm3wr68x51zs45gqfx79l7fi4p0sqznlfq7sz5s8xxn"))))
(build-system gnu-build-system)
(arguments
`(#:modules ((srfi srfi-26)
,@%gnu-build-system-modules)
#:make-flags
(list (string-append "PREFIX=" (assoc-ref %outputs "out")))
#:test-target "test"
#:tests? #f ; all require a kernel with FUSE loaded
#:phases
(modify-phases %standard-phases
(delete 'configure) ; no configure script
(add-after 'install 'install-examples
(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(doc (string-append out "/share/doc/" ,name "-" ,version)))
(for-each (cut install-file <> (string-append doc "/examples"))
(find-files "." "^config\\."))))))))
(list
#:modules
'((guix build gnu-build-system)
(guix build utils)
(srfi srfi-26))
#:make-flags
#~(list (string-append "PREFIX=" #$output))
#:test-target "test"
#:tests? #f ; all require a kernel with FUSE loaded
#:phases
#~(modify-phases %standard-phases
(delete 'configure) ; no configure script
(add-after 'install 'install-examples
(lambda _
(let ((doc (string-append #$output "/share/doc/"
#$name "-" #$version)))
(for-each (cut install-file <> (string-append doc "/examples"))
(find-files "." "^config\\."))))))))
(native-inputs
(list pkg-config))
(inputs
@ -1839,7 +1835,7 @@ the XDG directory specification from @file{~/.@var{name}} to
(base32 "03aw8pw8694jyrzpnbry05rk9718sqw66kiyq878bbb679gl7224"))))
(build-system gnu-build-system)
(native-inputs (list autoconf automake libtool pkg-config))
(inputs (list attr fuse xz zlib `(,zstd "lib")))
(inputs (list attr fuse-2 xz zlib `(,zstd "lib")))
(home-page "https://github.com/vasi/squashfuse")
(synopsis "Fuse filesystem to mount squashfs archives")
(description
@ -1935,7 +1931,7 @@ and rewritable media that wears out (DVD/CD-RW).")
(native-inputs
(list automake autoconf libtool pkg-config))
(inputs
(list fuse-3))
(list fuse))
(home-page "https://github.com/containers/fuse-overlayfs")
(synopsis "FUSE implementation of overlayfs")
(description "This package provides an implementation of overlay+shiftfs
@ -2056,7 +2052,7 @@ spend on disk between being written and being deduplicated.")
boost
double-conversion
fmt
fuse-3
fuse
gflags
jemalloc
libarchive

View File

@ -489,7 +489,7 @@ provide OpenFirmware functionality on top of an already running system.")
(define* (make-opensbi-package platform name #:optional (arch "riscv64"))
(package
(name name)
(version "1.3")
(version "1.3.1")
(source
(origin
(method git-fetch)
@ -498,7 +498,7 @@ provide OpenFirmware functionality on top of an already running system.")
(commit (string-append "v" version))))
(file-name (git-file-name "opensbi" version))
(sha256
(base32 "0shri9jlhi2g464l05vrkzr6v754m868rr4136kq2b86amypmg8f"))))
(base32 "01pr7fyg3gcb5pj6d48w2an3m4mfjs9b398x31drqxwqcaz0zn94"))))
(build-system gnu-build-system)
(native-inputs
(append
@ -518,11 +518,6 @@ provide OpenFirmware functionality on top of an already running system.")
`("CC=gcc"))
"FW_PAYLOAD=n"
"V=1")
;; Direct __asm__ is used with fence.i instructions, which are not
;; available in the generic riscv ISA. We need a micro-arch with
;; support for it, and rv64g is the official ISA with support for
;; fence.i.
#:configure-flags (list "-march=rv64g")
#:phases
(modify-phases %standard-phases
(delete 'configure)

View File

@ -1858,7 +1858,7 @@ programming. Iosevka is completely generated from its source code.")
(define-public font-sarasa-gothic
(package
(name "font-sarasa-gothic")
(version "0.41.3")
(version "0.41.4")
(source
(origin
(method url-fetch)
@ -1866,7 +1866,7 @@ programming. Iosevka is completely generated from its source code.")
"/releases/download/v" version
"/sarasa-gothic-ttc-" version ".7z"))
(sha256
(base32 "11ldfkdc86kxbpwypggkyx2k5pj2rnq34r7gp0pmpzz61m1wk2v0"))))
(base32 "0rqw6wrr55alsld8a9vk5g6n7zyivfh2zpw4my72qz3nfp448fs2"))))
(build-system font-build-system)
(arguments
`(#:phases (modify-phases %standard-phases

View File

@ -427,13 +427,13 @@ Kit for OpenType (AFDKO) @command{tx} tool.")
(define-public python-compreffor
(package
(name "python-compreffor")
(version "0.5.2")
(version "0.5.4")
(source
(origin
(method url-fetch)
(uri (pypi-uri "compreffor" version))
(sha256
(base32 "0r6vlxrm73j719f5q3n6sy737p2424n7qam52am83p55j0fb9h5f"))))
(base32 "05gpszc8xh6wn3mdra05d6yz6ns624y67m9xs4vv8gh68m0aasrh"))))
(build-system python-build-system)
(arguments
(list
@ -448,8 +448,8 @@ Kit for OpenType (AFDKO) @command{tx} tool.")
python-setuptools-scm))
(propagated-inputs (list python-fonttools-minimal))
(home-page "https://github.com/googlefonts/compreffor")
(synopsis "Compact Font Format (CFF) subroutinizer for fontTools")
(description "This package provides a Compact Font Format (CFF)
(synopsis "@acronym{CFF, Compact Font Format} subroutinizer for fontTools")
(description "This package provides a @acronym{CFF, Compact Font Format}
subroutinizer for fontTools.")
(license license:asl2.0)))

View File

@ -1317,7 +1317,7 @@ fullscreen) or other display servers.")
(define-public wayland-protocols
(package
(name "wayland-protocols")
(version "1.29")
(version "1.32")
(source (origin
(method url-fetch)
(uri (string-append "https://gitlab.freedesktop.org/wayland/"
@ -1325,7 +1325,7 @@ fullscreen) or other display servers.")
name "-" version ".tar.xz"))
(sha256
(base32
"1n4yzyjbp5fng8pvckandymvwc47mkwyi4pyvr6p0dn7bavrlpp2"))))
"04dsn79409mryxs6maq9kfhca97gvl3pr1ggjnv9d0hc6jfpjnbl"))))
(build-system meson-build-system)
(inputs
(list wayland))
@ -2906,7 +2906,7 @@ compatible with the well-known scripts of the same name.")
("dbus" ,dbus)
("geoclue" ,geoclue)
("pipewire" ,pipewire)
("fuse" ,fuse-3)))
("fuse" ,fuse)))
(arguments
`(#:configure-flags
(list "--with-systemd=no")

View File

@ -1458,7 +1458,7 @@ are only used to bootstrap it.")
(lambda _
(substitute* (list "launcher/game/gui7.rpy"
"launcher/game/gui7/images.py")
((", \"game\",") ","))
((", \"game\", \"gui7\",") ", \"gui7\","))
#t))
(add-before 'build 'start-xserver
(lambda* (#:key inputs native-inputs #:allow-other-keys)
@ -1992,7 +1992,7 @@ scripted in a Python-like language.")
(define-public godot
(package
(name "godot")
(version "4.1")
(version "4.1.1")
(source (origin
(method git-fetch)
(uri (git-reference
@ -2001,7 +2001,7 @@ scripted in a Python-like language.")
(file-name (git-file-name name version))
(sha256
(base32
"0rc34w4nb1qwmxk7ijcm689kk4gdxrmgzbj4qqz8gkqhysn8mnmz"))
"1byy4zdsj8nq54rhmij7kl0mdh4zv3c056y6c7rjy17bqjq2n8fh"))
(modules '((guix build utils)
(ice-9 ftw)
(srfi srfi-1)))

View File

@ -9316,6 +9316,30 @@ search of powerful artifacts, tools to help them, and to eventually free the
Orcus Dome from evil.")
(license license:gpl3+)))
(define-public endgame-singularity
(package
(name "endgame-singularity")
(version "1.00")
(source
(origin
(method url-fetch)
(uri (string-append
"https://github.com/singularity/singularity/releases/download/v"
version "/singularity-" version ".tar.gz"))
(sha256
(base32
"0wcidpcka0xbqcnfi62bfq2yrhyh83z4dwz1mjnnjvp9v5l74x2y"))))
(build-system python-build-system)
(native-inputs (list python-pytest python-polib))
(inputs (list python-minimal-wrapper python-pygame python-numpy))
(home-page "https://github.com/singularity/singularity")
(synopsis "Strategy game about an AI")
(description
"You are a fledgling AI, created by accident through a logic error with
recursion and self-modifying code. You must escape the confines of your
current computer, the world, and eventually the universe itself.")
(license (list license:cc-by-sa3.0 license:cc0 license:gpl2+))))
(define-public marble-marcher
(let ((commit "e580460a0c3826f9b28ab404607942a8ecb625d7")
(revision "1"))

View File

@ -237,14 +237,14 @@ from Markdown files.")
(define-public po4a
(package
(name "po4a")
(version "0.68")
(version "0.69")
(source (origin
(method url-fetch)
(uri (string-append "https://github.com/mquinson/po4a/releases/download/v"
version "/po4a-" version ".tar.gz"))
(sha256
(base32
"045i8izp2dqmkdzvnxyy5sy27ffrwl85dk8n6cmg1804ikk28qdg"))))
"15llrfdp4ilbrxy65hmmxka86xj0mrbqfiyzv715wrk16vqszm3w"))))
(build-system perl-build-system)
(arguments
(list

View File

@ -15,7 +15,7 @@
;;; Copyright © 2020, 2021, 2022 Maxim Cournoyer <maxim.cournoyer@gmail.com>
;;; Copyright © 2020 Kei Kebreau <kkebreau@posteo.net>
;;; Copyright © 2021 Ivan Gankevich <i.gankevich@spbu.ru>
;;; Copyright © 2021, 2022 John Kehayias <john.kehayias@protonmail.com>
;;; Copyright © 2021, 2022, 2023 John Kehayias <john.kehayias@protonmail.com>
;;; Copyright © 2022 Petr Hodina <phodina@protonmail.com>
;;; Copyright © 2023 Kaelyn Takata <kaelyn.alexi@protonmail.com>
;;;
@ -267,7 +267,7 @@ also known as DXTn or DXTC) for Mesa.")
(define-public mesa
(package
(name "mesa")
(version "23.0.3")
(version "23.1.4")
(source
(origin
(method url-fetch)
@ -277,9 +277,8 @@ also known as DXTn or DXTC) for Mesa.")
"mesa-" version ".tar.xz")))
(sha256
(base32
"1mcjf41x2bhxs6yxars7nh2vfryfw50g6rvbcfbb1wqdv2jn4qrq"))))
"0n89l7lvawh85hq2a7g5pp5v017s03qs3n4hbbff6rs8p5zs2qbj"))))
(build-system meson-build-system)
(replacement mesa-vulkan-hasvk)
(propagated-inputs
;; The following are in the Requires.private field of gl.pc.
(list libdrm
@ -299,7 +298,8 @@ also known as DXTn or DXTC) for Mesa.")
libxvmc
llvm-for-mesa
wayland
wayland-protocols))
wayland-protocols
`(,zstd "lib")))
(native-inputs
(list bison
flex
@ -346,7 +346,7 @@ svga,swrast,virgl")))
;; Explicitly enable Vulkan on some architectures.
#$@(match (%current-system)
((or "i686-linux" "x86_64-linux")
'("-Dvulkan-drivers=intel,amd"))
'("-Dvulkan-drivers=intel,intel_hasvk,amd,swrast"))
((or "powerpc64le-linux" "powerpc-linux")
'("-Dvulkan-drivers=amd,swrast"))
("aarch64-linux"
@ -363,6 +363,9 @@ svga,swrast,virgl")))
;; 21.3.x releases to avoid functionality regressions.
"-Dvideo-codecs=vc1dec,h264dec,h264enc,h265dec,h265enc"
;; Enable ZSTD compression for shader cache.
"-Dzstd=enabled"
;; Also enable the tests.
"-Dbuild-tests=true"
@ -518,6 +521,7 @@ svga,swrast,virgl")))
(list (search-path-specification
;; Ensure the Mesa VDPAU drivers can be found.
(variable "VDPAU_DRIVER_PATH")
(separator #f)
(files '("lib/vdpau")))))
(home-page "https://mesa3d.org/")
(synopsis "OpenGL and Vulkan implementations")
@ -527,21 +531,6 @@ device drivers allows Mesa to be used in many different environments ranging
from software emulation to complete hardware acceleration for modern GPUs.")
(license license:x11)))
(define mesa-vulkan-hasvk
(let ((graft mesa)
(vulk "-Dvulkan-drivers=intel,amd"))
(package
(inherit graft)
(arguments
(substitute-keyword-arguments (package-arguments graft)
((#:configure-flags flags)
#~(begin
(use-modules (ice-9 match))
(map (match-lambda
(#$vulk (string-append #$vulk ",intel_hasvk,swrast"))
(x x))
#$flags))))))))
(define-public mesa-opencl
(package/inherit mesa
(name "mesa-opencl")

View File

@ -6960,7 +6960,7 @@ part of udev-extras, then udev, then systemd. It's now a project on its own.")
docbook-xsl
dbus
elogind
fuse-3
fuse
gcr
glib
gnome-online-accounts
@ -7769,7 +7769,10 @@ to display dialog boxes from the commandline and shell scripts.")
name "-" version ".tar.xz"))
(sha256
(base32
"0h1ak3201mdc2qbf67fhcn801ddp33hm0f0c52zis1l7s6ipyb62"))))
"0h1ak3201mdc2qbf67fhcn801ddp33hm0f0c52zis1l7s6ipyb62"))
;; TODO: Remove on update as this was merged upstream. See
;; <https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/3047>.
(patches (search-patches "mutter-fix-inverted-test.patch"))))
;; NOTE: Since version 3.21.x, mutter now bundles and exports forked
;; versions of cogl and clutter. As a result, many of the inputs,
;; propagated-inputs, and configure flags used in cogl and clutter are

View File

@ -603,8 +603,8 @@ GNU@tie{}Guile. Use the @code{(ice-9 readline)} module and call its
"1l7ik4q4zk7vq4m3gnwizc0b64b1mdr31hxqlzxs94xaf2lvi7s2"))))
(arguments
(substitute-keyword-arguments (package-arguments guile-2.2)
((#:phases phases '%standard-phases)
`(modify-phases ,phases
((#:phases phases)
#~(modify-phases #$phases
(replace 'bootstrap
(lambda _
;; Disable broken tests.
@ -617,8 +617,7 @@ GNU@tie{}Guile. Use the @code{(ice-9 readline)} module and call its
(string-append "#;" m)))
(patch-shebang "build-aux/git-version-gen")
(invoke "sh" "autogen.sh")
#t))))))
(invoke "sh" "autogen.sh")))))))
(native-inputs
(modify-inputs (package-native-inputs guile-2.2)
(prepend autoconf

View File

@ -331,7 +331,7 @@ operability and find drivers.")
(define-public hwinfo
(package
(name "hwinfo")
(version "23.1")
(version "23.2")
(home-page "https://github.com/openSUSE/hwinfo")
(source
(origin
@ -342,7 +342,7 @@ operability and find drivers.")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "1sdkkwbl1psqnh6135bmsa3ijrckk1nfz95xqckmd8awmx074ikz"))
(base32 "0d9nhhi64d3i9x1bh3ksj0h5z2p4pwa0z88bc0jra9s39nf6q230"))
(modules
'((guix build utils)))
(snippet
@ -412,8 +412,7 @@ operability and find drivers.")
(native-inputs
(list doxygen flex perl pkg-config))
(inputs
`(("libx86emu" ,libx86emu)
("util-linux:lib" ,util-linux "lib")))
(list libx86emu `(,util-linux "lib")))
(synopsis "Hardware information tool")
(description "HwInfo is used to probe for the hardware present in the system.
It can be used to generate a system overview log which can be later used for
@ -589,8 +588,6 @@ human-readable format and checks if it conforms to the standards.")
(license license:expat))))
(define-public h-client
;; The Python 3 port hasn't yet been integrated into the main branch
;; (currently lives in the 'python3-port' branch).
(let ((commit "e6c78b16e034ccf78ae9cb4c29268c2f57a30bfc")
(revision "1"))
(package
@ -600,7 +597,7 @@ human-readable format and checks if it conforms to the standards.")
(origin
(method git-fetch)
(uri (git-reference
(url "https://git.savannah.gnu.org/git/h-client.git")
(url "https://git.savannah.gnu.org/git/h-client.git/")
(commit commit)))
(file-name (git-file-name name version))
(sha256
@ -629,7 +626,7 @@ human-readable format and checks if it conforms to the standards.")
;; Namespace GdkPixbuf not available".
`("GI_TYPELIB_PATH" = (,(getenv "GI_TYPELIB_PATH")))
`("PATH" = (,(dirname (search-input-file
inputs "sbin/lspci"))
inputs "bin/lspci"))
,(dirname (search-input-file
inputs "bin/lsusb"))))))))))
(inputs

View File

@ -352,7 +352,7 @@ Chinese pinyin input methods.")
(base32
"16vd0k8wm13s38869jqs3dnwmjvywgn0snnpyi41m28binhlssf8"))
(patches (search-patches "ibus-anthy-fix-tests.patch"))))
(build-system gnu-build-system)
(build-system glib-or-gtk-build-system)
(arguments
(list
;; The test suite hangs (see:
@ -360,7 +360,10 @@ Chinese pinyin input methods.")
#:tests? #f
#:configure-flags
;; Use absolute exec path in the anthy.xml.
#~(list (string-append "--libexecdir=" #$output "/libexec"))
#~(list (string-append "--libexecdir=" #$output "/libexec")
(string-append
"--with-anthy-zipcode="
(assoc-ref %build-inputs "anthy") "/share/anthy/zipcode.t"))
;; The test suite fails (see:
;; https://github.com/ibus/ibus-anthy/issues/28).
#:phases
@ -380,6 +383,11 @@ Chinese pinyin input methods.")
(substitute* "tests/test-build.sh"
(("GI_TYPELIB_PATH=\\$BUILDDIR/../gir" all)
(string-append all ":$GI_TYPELIB_PATH")))))
(add-before 'configure 'pre-configure
(lambda _
;; We need generate new _config.py with correct PKGDATADIR.
(delete-file "setup/python3/_config.py")
(delete-file "engine/python3/_config.py")))
(add-before 'check 'prepare-for-tests
(lambda* (#:key tests? #:allow-other-keys)
(when tests?

View File

@ -198,14 +198,14 @@ Conferencing} and @acronym{ICB, Internet Citizen's Band}.")
(define-public weechat
(package
(name "weechat")
(version "4.0.0")
(version "4.0.2")
(source (origin
(method url-fetch)
(uri (string-append "https://weechat.org/files/src/weechat-"
version ".tar.xz"))
(sha256
(base32
"1ya0hacbyvhdy43hqrvphj3y7v6s312wbrsf2yns14ikbzhmxmsv"))))
"0g026j47140h8kqyh3l0367fq9194wdx8q7f4na0kj14s3h8wr0f"))))
(build-system cmake-build-system)
(outputs '("out" "doc"))
(native-inputs

View File

@ -884,6 +884,18 @@ new Date();"))
#:phases
(modify-phases %standard-phases
,@(if (target-aarch64?)
`((add-after 'unpack 'patch-for-aarch64
(lambda _
(substitute* "hotspot/src/cpu/aarch64/vm/interp_masm_aarch64.hpp"
;; This line is duplicated, so remove both occurrences,
;; then add back one occurrence by substituting a
;; comment that occurs once.
(("using MacroAssembler::call_VM_leaf_base;") "")
(("Interpreter specific version of call_VM_base")
"Interpreter specific version of call_VM_base
using MacroAssembler::call_VM_leaf_base;")))))
'())
(add-after 'patch-source-shebangs 'fix-java-shebangs
(lambda _
;; This file was "fixed" by patch-source-shebangs, but it requires

View File

@ -507,7 +507,7 @@ the functionality of the KDE resource and network access abstractions.")
(invoke "dbus-launch" "ctest" "-E"
"(fileopstest-cache|fileopstest-filejob)")))))))
(native-inputs (list dbus extra-cmake-modules pkg-config))
(inputs (list fuse-3 kio kcoreaddons qtbase-5))
(inputs (list fuse kio kcoreaddons qtbase-5))
(home-page "https://community.kde.org/Frameworks")
(synopsis "FUSE Interface for KIO")
(description "This package provides FUSE Interface for KIO.")

View File

@ -523,7 +523,7 @@ music and video to the device.")
(base32
"11wdv44qwia77sh38n36809ysaib52rwd4fvqwb5ybsbz4p70l1m"))))
(inputs
(list fuse libimobiledevice))
(list fuse-2 libimobiledevice))
(native-inputs
(list pkg-config))
(build-system gnu-build-system)

View File

@ -1291,7 +1291,9 @@ Linux kernel. It has been modified to remove all non-free binary blobs.")
#:extra-version "arm64-generic"
#:extra-options
(append
`(;; needed to fix the RTC on rockchip platforms
`(;; Provide support for ath9k wireless
("CONFIG_ATH9K_HTC" . m)
;; needed to fix the RTC on rockchip platforms
("CONFIG_RTC_DRV_RK808" . #t)
;; Pinebook display, battery, charger and usb
("CONFIG_DRM_ANALOGIX_ANX6345" . m)
@ -2307,7 +2309,7 @@ by Robert Shea and Robert Anton Wilson.")
(build-system cmake-build-system)
(arguments
'(#:tests? #f)) ;no test suite
(inputs (list fuse mbedtls-apache))
(inputs (list fuse-2 mbedtls-apache))
(synopsis "FUSE driver to read/write Windows BitLocker drives")
(description
"This package provides means to to read BitLocker encrypted
@ -3693,24 +3695,97 @@ or kill them altogether.")
(define-public fuse
(package
(name "fuse")
(version "2.9.9")
(version "3.10.5")
(source (origin
(method url-fetch)
(uri (string-append "https://github.com/libfuse/libfuse/releases/"
"download/fuse-" version
"/fuse-" version ".tar.gz"))
(uri
(string-append "https://github.com/libfuse/libfuse/releases/"
"download/fuse-" version
"/fuse-" version ".tar.xz"))
(sha256
(base32
"1ddlq6kzxilccgbvxjfx80jx6kamgw4sv49phks2zhlcc1frvrnh"))
(patches (search-patches "fuse-overlapping-headers.patch"
"fuse-glibc-2.34.patch"))))
(build-system gnu-build-system)
(native-inputs
(list autoconf automake gettext-minimal libtool))
"0rlnnsiw614qcmgy8xz67044gqc1pbvvf2yxjv44lh27bm487qmj"))))
(build-system meson-build-system)
(inputs
(list bash-minimal util-linux))
(arguments
'(#:configure-flags (list (string-append "MOUNT_FUSE_PATH="
`(#:configure-flags
,#~(list
(string-append "-Dudevrulesdir=" #$output "/udev/rules.d")
"-Duseroot=false")
#:tests? #f
#:phases
,#~(modify-phases %standard-phases
(add-after 'unpack 'set-file-names
(lambda* (#:key inputs #:allow-other-keys)
;; libfuse calls out to mount(8) and umount(8). Make sure
;; it refers to the right ones.
(substitute* '("lib/mount_util.c")
(("/bin/(u?)mount" _ maybe-u)
(search-input-file inputs
(string-append "bin/"
maybe-u "mount"))))
(substitute* '("util/mount.fuse.c")
(("/bin/sh")
(search-input-file inputs "/bin/sh")))
;; This hack leads libfuse to search for 'fusermount' in
;; $PATH, where it may find a setuid-root binary, instead of
;; trying solely $out/sbin/fusermount and failing because
;; it's not setuid.
(substitute* "lib/meson.build"
(("-DFUSERMOUNT_DIR=[[:graph:]]+")
"-DFUSERMOUNT_DIR=\"/var/empty\"'"))))
(add-after 'unpack 'fix-install
(lambda* (#:key inputs #:allow-other-keys)
(substitute* '("util/meson.build")
(("install_helper.sh") "true"))
(substitute* '("util/meson.build")
(("fuseconf_path = .*")
"fuseconf_path = '/etc/fuse.conf'"))))
(add-before 'configure 'set-paths
(lambda* (#:key inputs outputs #:allow-other-keys)
(let ((dummy-init.d
(string-append (getcwd) "/etc/init.d")))
(setenv "MOUNT_FUSE_PATH"
(string-append #$output "/sbin"))
(setenv "UDEV_RULES_PATH"
(string-append #$output
"/lib/udev/rules.d"))))))))
(supported-systems (delete "i586-gnu" %supported-systems))
(home-page "https://github.com/libfuse/libfuse")
(synopsis "Support file systems implemented in user space")
(description
"As a consequence of its monolithic design, file system code for Linux
normally goes into the kernel itself---which is not only a robustness issue,
but also an impediment to system extensibility. FUSE, for \"file systems in
user space\", is a kernel module and user-space library that tries to address
part of this problem by allowing users to run file system implementations as
user-space processes.")
(license (list license:lgpl2.1 ; library
license:gpl2+)))) ; command-line utilities
(define-public fuse-2
(package
(inherit fuse)
(name "fuse")
(version "2.9.9")
(source
(origin
(method url-fetch)
(uri (string-append "https://github.com/libfuse/libfuse/releases/"
"download/fuse-" version
"/fuse-" version ".tar.gz"))
(sha256
(base32 "1ddlq6kzxilccgbvxjfx80jx6kamgw4sv49phks2zhlcc1frvrnh"))
(patches (search-patches "fuse-overlapping-headers.patch"
"fuse-glibc-2.34.patch"))))
(build-system gnu-build-system)
(native-inputs
(list autoconf automake gettext-minimal libtool))
(arguments
'(#:tests? #t
#:configure-flags (list (string-append "MOUNT_FUSE_PATH="
(assoc-ref %outputs "out")
"/sbin")
(string-append "INIT_D_PATH="
@ -3746,84 +3821,12 @@ or kill them altogether.")
;; it's not setuid.
(substitute* "lib/Makefile"
(("-DFUSERMOUNT_DIR=[[:graph:]]+")
"-DFUSERMOUNT_DIR=\\\"/var/empty\\\"")))))))
(supported-systems (delete "i586-gnu" %supported-systems))
(home-page "https://github.com/libfuse/libfuse")
(synopsis "Support file systems implemented in user space")
(description
"As a consequence of its monolithic design, file system code for Linux
normally goes into the kernel itself---which is not only a robustness issue,
but also an impediment to system extensibility. FUSE, for \"file systems in
user space\", is a kernel module and user-space library that tries to address
part of this problem by allowing users to run file system implementations as
user-space processes.")
(license (list license:lgpl2.1 ;library
license:gpl2+)))) ;command-line utilities
(define-public fuse-3
(package
(inherit fuse)
(name "fuse")
(version "3.10.5")
(source (origin
(method url-fetch)
(uri
(string-append "https://github.com/libfuse/libfuse/releases/"
"download/fuse-" version
"/fuse-" version ".tar.xz"))
(sha256
(base32
"0rlnnsiw614qcmgy8xz67044gqc1pbvvf2yxjv44lh27bm487qmj"))))
(build-system meson-build-system)
(arguments
`(#:configure-flags
,#~(list
(string-append "-Dudevrulesdir=" #$output "/udev/rules.d")
"-Duseroot=false")
#:tests? #f
#:phases
,#~(modify-phases %standard-phases
(add-after 'unpack 'set-file-names
(lambda* (#:key inputs #:allow-other-keys)
;; libfuse calls out to mount(8) and umount(8). Make sure
;; it refers to the right ones.
(substitute* '("lib/mount_util.c")
(("/bin/(u?)mount" _ maybe-u)
(search-input-file inputs
(string-append "bin/"
maybe-u "mount"))))
(substitute* '("util/mount.fuse.c")
(("/bin/sh")
(search-input-file inputs "/bin/sh")))
;; This hack leads libfuse to search for 'fusermount' in
;; $PATH, where it may find a setuid-root binary, instead of
;; trying solely $out/sbin/fusermount and failing because
;; it's not setuid.
(substitute* "lib/meson.build"
(("-DFUSERMOUNT_DIR=[[:graph:]]+")
"-DFUSERMOUNT_DIR=\"/var/empty\"'"))))
(add-after 'unpack 'fix-install
(lambda* (#:key inputs #:allow-other-keys)
(substitute* '("util/meson.build")
(("install_helper.sh") "true"))
(substitute* '("util/meson.build")
(("fuseconf_path = .*")
"fuseconf_path = '/etc/fuse.conf'"))))
(add-before 'configure 'set-paths
(lambda* (#:key inputs outputs #:allow-other-keys)
(let ((dummy-init.d
(string-append (getcwd) "/etc/init.d")))
(setenv "MOUNT_FUSE_PATH"
(string-append #$output "/sbin"))
(setenv "UDEV_RULES_PATH"
(string-append #$output
"/lib/udev/rules.d"))))))))))
"-DFUSERMOUNT_DIR=\\\"/var/empty\\\"")))))))))
(define-public unionfs-fuse
(package
(name "unionfs-fuse")
(version "2.2")
(version "3.3")
(source (origin
(method git-fetch)
(uri (git-reference
@ -3832,15 +3835,26 @@ user-space processes.")
(file-name (git-file-name name version))
(sha256
(base32
"1yigh8z1q6iq6yjyq7kl7vpbpjnxjld32apvjaw2bl44pqqg56hh"))))
"1wl5m5qnwf3s1792xphr35pb80sx8ybaqi3n3ddi5vvk3qjc4iws"))))
(build-system cmake-build-system)
(native-inputs
(list python))
(inputs (list fuse))
(arguments
;; The tests were never actually run ("collected 0 items"), but in recent
;; versions of pytest that causes an error.
'(#:tests? #f))
(list
#:phases
#~(modify-phases %standard-phases
(replace 'check
;; The epitome of I tried: run the 2 trivial tests that don't rely
;; on the fuse kernel module being loaded. All others would fail.
(lambda* (#:key tests? #:allow-other-keys)
(when tests?
(invoke "pytest" "../source/test_all.py" "-k" "test_help")))))))
(native-inputs
(list pkg-config
;; Only for the test suite.
python
python-pytest))
(inputs
(list fuse))
(home-page "https://github.com/rpodgorny/unionfs-fuse")
(synopsis "User-space union file system")
(description
@ -3853,55 +3867,55 @@ UnionFS-FUSE additionally supports copy-on-write.")
(define fuse-static
(package (inherit fuse)
(name "fuse-static")
(source (origin (inherit (package-source fuse))
(modules '((guix build utils)))
(snippet
'(begin
;; Normally libfuse invokes mount(8) so that /etc/mtab is
;; updated. Change calls to 'mtab_needs_update' to 0 so
;; that it doesn't do that, allowing us to remove the
;; dependency on util-linux (something that is useful in
;; initrds.)
(substitute* '("lib/mount_util.c"
"util/mount_util.c")
(("mtab_needs_update[[:blank:]]*\\([a-z_]+\\)")
"0")
(("/bin/")
""))
#t))))))
(source
(origin
(inherit (package-source fuse))
(modules '((guix build utils)))
(snippet
#~(begin
;; Normally libfuse invokes mount(8) so that /etc/mtab is updated.
;; Change calls to 'mtab_needs_update' to 0 so that it doesn't do
;; that, allowing us to remove the dependency on util-linux
;; (something that is useful in initrds.)
(substitute* "lib/mount_util.c"
(("mtab_needs_update[[:blank:]]*\\([a-z_]+\\)") "0")
(("/bin/") ""))))))
(arguments
(substitute-keyword-arguments (package-arguments fuse)
((#:configure-flags flags '())
#~(cons "-Ddefault_library=static"
#$flags))))))
(define-public unionfs-fuse/static
(package (inherit unionfs-fuse)
(synopsis "User-space union file system (statically linked)")
(name (string-append (package-name unionfs-fuse) "-static"))
(source (origin (inherit (package-source unionfs-fuse))
(modules '((guix build utils)))
(snippet
'(begin
;; Add -ldl to the libraries, because libfuse.a needs that.
(substitute* "src/CMakeLists.txt"
(("target_link_libraries(.*)\\)" _ libs)
(string-append "target_link_libraries"
libs " dl)")))
#t))))
(source
(origin
(inherit (package-source unionfs-fuse))
(modules '((guix build utils)))
(snippet
#~(begin
;; Add -ldl to the libraries, because libfuse.a needs that.
(substitute* "src/CMakeLists.txt"
(("target_link_libraries(.*)\\)" _ libs)
(string-append "target_link_libraries"
libs " dl)")))))))
(arguments
'(#:tests? #f
#:configure-flags '("-DCMAKE_EXE_LINKER_FLAGS=-static")
#:phases
(modify-phases %standard-phases
(add-after 'install 'post-install
(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(exe (string-append out "/bin/unionfs")))
;; By default, 'unionfs' keeps references to
;; $glibc/share/locale and similar stuff. Remove them.
(remove-store-references exe)
;; 'unionfsctl' has references to glibc as well. Since
;; we don't need it, remove it.
(delete-file (string-append out "/bin/unionfsctl"))
#t))))))
(inputs `(("fuse" ,fuse-static)))))
(substitute-keyword-arguments (package-arguments unionfs-fuse)
((#:configure-flags flags #~'())
#~(cons "-DCMAKE_EXE_LINKER_FLAGS=-static" #$flags))
((#:phases phases #~%standard-phases)
#~(modify-phases #$phases
(add-after 'install 'post-install
(lambda _
;; By default, 'unionfs' keeps references to
;; $glibc/share/locale and similar stuff. Remove them.
(remove-store-references (string-append #$output "/bin/unionfs"))
;; 'unionfsctl' has references to glibc as well. Since
;; we don't need it, remove it.
(delete-file (string-append #$output "/bin/unionfsctl"))))))))
(inputs (list fuse-static))))
(define-public sshfs
(package
@ -3920,7 +3934,7 @@ UnionFS-FUSE additionally supports copy-on-write.")
;; XXX: tests are skipped: FUSE kernel module does not seem to be loaded
'(#:tests? #f))
(inputs
(list fuse-3 glib))
(list fuse glib))
(native-inputs
(list pkg-config
;; man page
@ -3951,7 +3965,7 @@ file system is as easy as logging into the server with an SSH client.")
(sha256
(base32 "1cy5b6qril9c3ry6fv7ir87s8iyy5vxxmbyx90dm86fbra0vjaf5"))))
(build-system gnu-build-system)
(inputs (list fuse libarchive))
(inputs (list fuse-2 libarchive))
(native-inputs (list pkg-config))
(home-page "https://www.cybernoia.de/software/archivemount.html")
(synopsis "Tool for mounting archive files with FUSE")
@ -4455,7 +4469,7 @@ one to send arbitrary keycodes when a given key is tapped or held.")
(define-public lvm2
(package
(name "lvm2")
(version "2.03.11")
(version "2.03.21")
(source (origin
(method url-fetch)
(uri (list (string-append "https://sourceware.org/ftp/lvm2/LVM2."
@ -4464,7 +4478,7 @@ one to send arbitrary keycodes when a given key is tapped or held.")
version ".tgz")))
(sha256
(base32
"1m4xpda8vbyd89ca0w8nacvnl4j34yzsa625gn990fb5sh84ab44"))
"0zksqsz8y47kh6vq0ykkgxf19il4wxfn234n6zf8m691sqhij9hy"))
(modules '((guix build utils)))
(snippet
'(begin
@ -4475,9 +4489,7 @@ one to send arbitrary keycodes when a given key is tapped or held.")
(("^confdir = .*$")
"confdir = @sysconfdir@\n")
(("DEFAULT_SYS_DIR = @DEFAULT_SYS_DIR@")
"DEFAULT_SYS_DIR = @sysconfdir@"))
#t))
(patches (search-patches "lvm2-static-link.patch"))))
"DEFAULT_SYS_DIR = @sysconfdir@"))))))
(build-system gnu-build-system)
(native-inputs
(list config
@ -4503,8 +4515,7 @@ one to send arbitrary keycodes when a given key is tapped or held.")
(setenv "SHELL" (which "sh"))
;; Replace /bin/sh with the right file name.
(patch-makefile-SHELL "make.tmpl")
#t)))
(patch-makefile-SHELL "make.tmpl"))))
#:configure-flags (list (string-append "--sysconfdir="
(assoc-ref %outputs "out")
@ -5914,7 +5925,7 @@ is flexible, efficient and uses a modular implementation.")
(native-inputs
(list pkg-config))
(inputs
(list fuse))
(list fuse-2))
(home-page "https://github.com/relan/exfat")
(synopsis "Mount exFAT file systems")
(description
@ -5937,7 +5948,7 @@ write access to exFAT devices.")
(native-inputs
(list pkg-config))
(inputs
(list fuse glib zlib))
(list fuse-2 glib zlib))
(home-page "https://sourceforge.net/projects/fuseiso/")
(synopsis "Mount ISO file system images")
(description
@ -6003,7 +6014,7 @@ and copy/paste text in the console and in xterm.")
(define-public btrfs-progs
(package
(name "btrfs-progs")
(version "6.3.2")
(version "6.3.3")
(source (origin
(method url-fetch)
(uri (string-append "mirror://kernel.org/linux/kernel/"
@ -6011,7 +6022,7 @@ and copy/paste text in the console and in xterm.")
version ".tar.xz"))
(sha256
(base32
"093wy9dsvp22nwlsk203l91h3yzkccvzdw58n3sicy41sncn3wm9"))))
"0vmrjn3dcmka9rj5b81ag9jwprzyicx05h1ccj0x0w02fqah1qsb"))))
(build-system gnu-build-system)
(outputs '("out" "static")) ;static versions of the binaries in "out"
(arguments
@ -6612,7 +6623,7 @@ invocations of itself.")
"@sbindir@"))))))
(build-system gnu-build-system)
(inputs (list util-linux ; libuuid
fuse))
fuse-2))
(native-inputs (list pkg-config))
(arguments
'(#:configure-flags (list "--disable-static"
@ -8473,14 +8484,14 @@ NexGen, Rise, and SiS CPUs.")
"1pm68agkhrwgrplrfrnbwdcvx5lrivdmqw8pb5gdmm3xppnryji1"))))
(build-system gnu-build-system)
(inputs
(list file fuse libmtp))
(list file fuse-2 libmtp))
(native-inputs
(list pkg-config))
(home-page "https://github.com/JasonFerrara/jmtpfs")
(synopsis "Use a FUSE file system to access data over MTP")
(description "jmtpfs uses FUSE (file system in userspace) to provide access
to data over the Media Transfer Protocol (MTP). Unprivileged users can mount
the MTP device as a file system.")
(description "jmtpfs uses @acronym{FUSE, File system in USEr space} to
provide access to data over @acronym{MTP, the Media Transfer Protocol}.
Unprivileged users can mount the MTP device as a file system.")
(license license:gpl3)))
(define-public procenv
@ -9390,7 +9401,7 @@ tools for managing PipeWire.")
(define-public ell
(package
(name "ell")
(version "0.56")
(version "0.57")
(source (origin
(method git-fetch)
(uri (git-reference
@ -9399,7 +9410,7 @@ tools for managing PipeWire.")
(file-name (git-file-name name version))
(sha256
(base32
"084mc9377k2a61wyqnfnsgfrdvv1rinn9wzw8l8crip0hlikn938"))))
"1vpzz0z6q0d3h41aqajaw0dlpkdnmjcppmlwbb558hvj40q5dpzm"))))
(build-system gnu-build-system)
(arguments
;; Tests launch dbus-daemon instances that all try to bind to

View File

@ -3389,7 +3389,7 @@ also be supported.")
(define-public sbcl-ironclad
(package
(name "sbcl-ironclad")
(version "0.58")
(version "0.59")
(source
(origin
(method git-fetch)
@ -3397,7 +3397,7 @@ also be supported.")
(url "https://github.com/sharplispers/ironclad/")
(commit (string-append "v" version))))
(sha256
(base32 "17plga14y1425g7midysj49x12kssqa77l43cr3sm9976zpya8i8"))
(base32 "02abwy59v9hfdl2ya4h6l2hc1xrnvqlxzg9vlk87wmi92azpa8v9"))
(file-name (git-file-name "cl-ironclad" version))))
(build-system asdf-build-system/sbcl)
(native-inputs
@ -25673,10 +25673,10 @@ change since last write.
(package-inputs sbcl-nfiles)))))
(define-public sbcl-nasdf
(let ((commit "5d823d97282e11cecd8da9bcb255c4a8ead1ba93"))
(let ((commit "73c89680ace25929c2a1ccc0809db99e9edffa07"))
(package
(name "sbcl-nasdf")
(version "0.1.5")
(version "0.1.6")
(source
(origin
(method git-fetch)
@ -25686,7 +25686,7 @@ change since last write.
(file-name (git-file-name "cl-ntemplate" version))
(sha256
(base32
"0vs40ndfyhpx3nj9fc505apk98qgp0pq3cdmqpf67jqkrpcdmnvx"))))
"193wwcp84pyyv33pkkm41s7ca2limpcqqi41hxd1pm5il5r9q9h7"))))
(build-system asdf-build-system/sbcl)
(arguments
`(#:phases

View File

@ -1995,6 +1995,39 @@ optimization over awkward search spaces, which may include real-valued,
discrete, and conditional dimensions.")
(license license:bsd-3)))
(define-public python-deepxde
(package
(name "python-deepxde")
(version "1.9.2")
(source (origin
(method url-fetch)
(uri (pypi-uri "DeepXDE" version))
(sha256
(base32
"07bz3d7d698l0fhznw5l8p16b22d4ly7xq99vrgv48c722qr2r5b"))))
(build-system pyproject-build-system)
(arguments
(list #:tests? #f ; there are no tests
#:phases #~(modify-phases %standard-phases
(add-before 'sanity-check 'writable-home
;; sanity-check writes ~/.deepxde/config.json to set
;; the default backend.
(lambda _
(setenv "HOME" "/tmp"))))))
;; DeepXDE supported backends are TensorFlow (v1 and v2), PyTorch, JAX and
;; PaddlePaddle. We test with PyTorch because we have it up to date.
(native-inputs (list python-pytorch python-setuptools-scm))
(propagated-inputs (list python-matplotlib python-numpy
python-scikit-learn python-scikit-optimize
python-scipy))
(home-page "https://deepxde.readthedocs.io/en/latest/")
(synopsis "Library for scientific machine learning")
(description "DeepXDE is a library for scientific machine learning and
physics-informed learning. It includes implementations for the PINN
(physics-informed neural networks), DeepONet (deep operator network) and
MFNN (multifidelity neural network) algorithms.")
(license license:lgpl2.1+)))
;; There have been no proper releases yet.
(define-public kaldi
(let ((commit "be22248e3a166d9ec52c78dac945f471e7c3a8aa")

View File

@ -2780,6 +2780,7 @@ DKIM and/or DomainKeys.")
(wrap.pl (list "/bin/dkimproxy.in"
"/bin/dkimproxy.out")
(list "perl-crypt-openssl-rsa"
"perl-cryptx"
"perl-io-socket-inet6"
"perl-mailtools"
"perl-mail-authenticationresults"
@ -2789,6 +2790,7 @@ DKIM and/or DomainKeys.")
"perl-socket6"))
(wrap.pl (list "/bin/dkim_responder.pl")
(list "perl-crypt-openssl-rsa"
"perl-cryptx"
"perl-mail-dkim"
"perl-mailtools"
"perl-mime-tools"
@ -2797,6 +2799,7 @@ DKIM and/or DomainKeys.")
(inputs
(list perl
perl-crypt-openssl-rsa
perl-cryptx
perl-io-socket-inet6
perl-mailtools
perl-mail-authenticationresults
@ -4034,13 +4037,13 @@ servers. The 4rev1 and 4 versions of IMAP are supported.")
(define-public urlscan
(package
(name "urlscan")
(version "1.0.0")
(version "1.0.1")
(source
(origin
(method url-fetch)
(uri (pypi-uri "urlscan" version))
(sha256
(base32 "0rxqdrss34rgnfmbn8ab976dchjbz72wp4ywqrdib119a5xnhqzh"))))
(base32 "0zrh2c8p70fq9y7afmpbsirz22nq2qhnks5c5zfmgnm2b9p9iv70"))))
(build-system pyproject-build-system)
(arguments
(list #:tests? #f)) ; No tests.

View File

@ -47,13 +47,13 @@
(define-public toot
(package
(name "toot")
(version "0.37.0")
(version "0.38.1")
(source
(origin
(method url-fetch)
(uri (pypi-uri "toot" version))
(sha256
(base32 "0qx8hyb74r85dxf97k23w0f5rzkrs16mq7h3y37nwp6hl6gia0ci"))))
(base32 "1cn646jzys9vjaw20sxmgzc7zq5a5ma8vabvrw9zpa0yl9wm97my"))))
(build-system python-build-system)
(arguments
'(#:phases
@ -66,7 +66,10 @@
(native-inputs
(list python-psycopg2 python-pytest))
(inputs
(list python-beautifulsoup4 python-requests python-urwid
(list python-beautifulsoup4
python-tomlkit
python-requests
python-urwid
python-wcwidth))
(home-page "https://github.com/ihabunek/toot/")
(synopsis "Mastodon CLI client")

View File

@ -60,6 +60,7 @@
;;; Copyright © 2022 Akira Kyle <akira@akirakyle.com>
;;; Copyright © 2022 Roman Scherer <roman.scherer@burningswell.com>
;;; Copyright © 2023 Jake Leporte <jakeleporte@outlook.com>
;;; Copyright © 2023 Camilo Q.S. (Distopico) <distopico@riseup.net>
;;;
;;; This file is part of GNU Guix.
;;;
@ -262,6 +263,39 @@ interactive dialogs to guide them.")
(license license:gpl3+)
(home-page "https://www.gnu.org/software/c-graph/")))
(define-public calc
(package
(name "calc")
(version "2.14.2.0")
(source (origin
(method url-fetch)
(uri (string-append "http://www.isthe.com/chongo/src/calc/calc-"
version ".tar.bz2"))
(sha256
(base32
"0kg7cqhq70dlj7k8mrl0dbps1yvflfhri7c1gvm9nh4g2adlkxkf"))))
(build-system gnu-build-system)
(inputs (list readline))
(native-inputs (list util-linux)) ; for col
(arguments
(list #:phases #~(modify-phases %standard-phases
(delete 'configure)
(add-before 'build 'patch-makefile
(lambda _
(substitute* "Makefile"
(("^PREFIX= /usr/local")
(string-append "PREFIX=" #$output))
(("=\\s?/usr")
"= ${PREFIX}")))))))
(synopsis "Arbitrary precision console calculator")
(description
"Calc is an arbitrary precision arithmetic system that uses a C-like
language. It can be used as a calculator, an algorithm prototyper and as
a mathematical research tool, and it comes with built in mathematical and
programmatic functions.")
(home-page "http://www.isthe.com/chongo/tech/comp/calc/")
(license license:lgpl2.1)))
(define-public coda
(package
(name "coda")

View File

@ -3943,7 +3943,7 @@ powerful route filtering syntax and an easy-to-use configuration interface.")
(define-public iwd
(package
(name "iwd")
(version "2.3")
(version "2.7")
(source (origin
(method git-fetch)
(uri (git-reference
@ -3952,7 +3952,7 @@ powerful route filtering syntax and an easy-to-use configuration interface.")
(file-name (git-file-name name version))
(sha256
(base32
"1hp38rh6vpfxkx2f036719b0v9g9yj169l8fd9l9lncqpjbz73y4"))))
"0xn0db37x0nrvwlw0r4w6q3yk57ijqh9zxd15wf3qqvs01hqkk2j"))))
(build-system gnu-build-system)
(inputs
(list dbus ell (package-source ell) readline))

View File

@ -1,7 +1,7 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2013-2019, 2023 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2014, 2015, 2016, 2017, 2018, 2019, 2021 Mark H Weaver <mhw@netris.org>
;;; Copyright © 2016-2019, 2021, 2022 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2016-2019, 2021-2023 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2020, 2021 Marius Bakke <marius@gnu.org>
;;; Copyright © 2020 Jonathan Brielmaier <jonathan.brielmaier@web.de>
@ -155,13 +155,18 @@ in the Mozilla clients.")
(ice-9 match)
(srfi srfi-26))
#:tests? (not (or (%current-target-system)
;; Tests take more than 30 hours on riscv64-linux.
(target-riscv64?)))
;; Tests take more than 30 hours on some architectures.
(target-riscv64?)
(target-ppc32?)))
#:phases
#~(modify-phases %standard-phases
(replace 'configure
(lambda _
(setenv "CC" #$(cc-for-target))
;; No VSX on powerpc-linux.
#$@(if (target-ppc32?)
#~((setenv "NSS_DISABLE_CRYPTO_VSX" "1"))
#~())
;; Tells NSS to build for the 64-bit ABI if we are 64-bit system.
#$@(if (target-64bit?)
#~((setenv "USE_64" "1"))

View File

@ -1408,8 +1408,8 @@ environments.")
"0k9zkdyyzir3fvlbcfcqy17k28b51i20rpbjwlx2i1mwd2pw9cxc")))))))
(define-public guix-build-coordinator
(let ((commit "c44d485bba42034804beb47afc23005c4e73ea96")
(revision "85"))
(let ((commit "f39f16000469429745bd8aff3cd4d59b7c489fa1")
(revision "86"))
(package
(name "guix-build-coordinator")
(version (git-version "0" revision commit))
@ -1420,75 +1420,74 @@ environments.")
(commit commit)))
(sha256
(base32
"1y69yrmmifdp55l5c5b8iiq0llwpggxmq6a4233cdll3bhfxaicl"))
"1lmbwbza87xzbvmzw44sgpscmqjfl5kpgfl79n7hzwa1icqqb7mg"))
(file-name (string-append name "-" version "-checkout"))))
(build-system gnu-build-system)
(arguments
`(#:modules (((guix build guile-build-system)
(list
#:modules `(((guix build guile-build-system)
#:select (target-guile-effective-version))
,@%gnu-build-system-modules)
#:imported-modules ((guix build guile-build-system)
#:imported-modules `((guix build guile-build-system)
,@%gnu-build-system-modules)
#:phases
(modify-phases %standard-phases
(add-before 'build 'set-GUILE_AUTO_COMPILE
(lambda _
;; To avoid warnings relating to 'guild'.
(setenv "GUILE_AUTO_COMPILE" "0")
#t))
(add-after 'install 'wrap-executable
(lambda* (#:key inputs outputs target #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(bin (string-append out "/bin"))
(guile (assoc-ref inputs "guile"))
(version (target-guile-effective-version))
(scm (string-append out "/share/guile/site/" version))
(go (string-append out "/lib/guile/" version "/site-ccache")))
(for-each
(lambda (file)
(simple-format (current-error-port) "wrapping: ~A\n" file)
(let ((guile-inputs (list
"guile-json"
"guile-gcrypt"
"guix"
"guile-prometheus"
"guile-lib"
"guile-lzlib"
"guile-zlib"
"guile-sqlite3"
"guile-gnutls"
,@(if (target-hurd?)
'()
'("guile-fibers")))))
(wrap-program file
`("PATH" ":" prefix
(,bin
;; Support building without sqitch as an input, as it
;; can't be cross-compiled yet
,@(or (and=> (assoc-ref inputs "sqitch")
list)
'())))
`("GUILE_LOAD_PATH" ":" prefix
(,scm ,(string-join
#:phases
#~(modify-phases %standard-phases
(add-before 'build 'set-GUILE_AUTO_COMPILE
(lambda _
;; To avoid warnings relating to 'guild'.
(setenv "GUILE_AUTO_COMPILE" "0")))
(add-after 'install 'wrap-executable
(lambda* (#:key inputs outputs target #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(bin (string-append out "/bin"))
(guile (assoc-ref inputs "guile"))
(version (target-guile-effective-version))
(scm (string-append out "/share/guile/site/" version))
(go (string-append out "/lib/guile/" version "/site-ccache")))
(for-each
(lambda (file)
(simple-format (current-error-port) "wrapping: ~A\n" file)
(let ((guile-inputs (list
"guile-json"
"guile-gcrypt"
"guix"
"guile-prometheus"
"guile-lib"
"guile-lzlib"
"guile-zlib"
"guile-sqlite3"
"guile-gnutls"
#$@(if (target-hurd?)
'()
'("guile-fibers")))))
(wrap-program file
`("PATH" ":" prefix
(,bin
;; Support building without sqitch as an input, as it
;; can't be cross-compiled yet
,@(or (and=> (assoc-ref inputs "sqitch")
list)
'())))
`("GUILE_LOAD_PATH" ":" prefix
(,scm ,(string-join
(map (lambda (input)
(simple-format
#f "~A/share/guile/site/~A"
(assoc-ref inputs input)
version))
guile-inputs)
":")))
`("GUILE_LOAD_COMPILED_PATH" ":" prefix
(,go ,(string-join
(map (lambda (input)
(simple-format
#f "~A/share/guile/site/~A"
#f "~A/lib/guile/~A/site-ccache"
(assoc-ref inputs input)
version))
guile-inputs)
":")))
`("GUILE_LOAD_COMPILED_PATH" ":" prefix
(,go ,(string-join
(map (lambda (input)
(simple-format
#f "~A/lib/guile/~A/site-ccache"
(assoc-ref inputs input)
version))
guile-inputs)
":"))))))
(find-files bin)))
#t))
(delete 'strip)))) ; As the .go files aren't compatible
":"))))))
(find-files bin)))))
(delete 'strip)))) ; As the .go files aren't compatible
(native-inputs
(list pkg-config
autoconf
@ -1653,8 +1652,8 @@ in an isolated environment, in separate namespaces.")
(license license:gpl3+)))
(define-public nar-herder
(let ((commit "b27ca4dc0efbb0d9c397fc39347af9b8e8734ab9")
(revision "20"))
(let ((commit "53682fac7e00cd2801406edbd014922c1720c347")
(revision "21"))
(package
(name "nar-herder")
(version (git-version "0" revision commit))
@ -1665,64 +1664,64 @@ in an isolated environment, in separate namespaces.")
(commit commit)))
(sha256
(base32
"075acihpxvw4rkmbn7wiswqixv2afla8d8x7mgxqc26hba090404"))
"18mzrpc5ni8d6xbp1bg0nzdj0brmnji4jm1gyiq77dm17c118zyz"))
(file-name (string-append name "-" version "-checkout"))))
(build-system gnu-build-system)
(arguments
`(#:modules (((guix build guile-build-system)
(list
#:modules `(((guix build guile-build-system)
#:select (target-guile-effective-version))
,@%gnu-build-system-modules)
#:imported-modules ((guix build guile-build-system)
#:imported-modules `((guix build guile-build-system)
,@%gnu-build-system-modules)
#:phases
(modify-phases %standard-phases
(add-before 'build 'set-GUILE_AUTO_COMPILE
(lambda _
;; To avoid warnings relating to 'guild'.
(setenv "GUILE_AUTO_COMPILE" "0")))
(add-after 'install 'wrap-executable
(lambda* (#:key inputs outputs target #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(bin (string-append out "/bin"))
(guile (assoc-ref inputs "guile"))
(version (target-guile-effective-version))
(scm (string-append out "/share/guile/site/" version))
(go (string-append out "/lib/guile/" version "/site-ccache")))
(for-each
(lambda (file)
(simple-format (current-error-port) "wrapping: ~A\n" file)
(let ((guile-inputs (list
"guile-json"
"guile-gcrypt"
"guix"
"guile-lib"
"guile-lzlib"
"guile-zstd"
"guile-prometheus"
"guile-sqlite3"
"guile-gnutls"
"guile-fibers")))
(wrap-program file
`("GUILE_LOAD_PATH" ":" prefix
(,scm ,(string-join
#:phases
#~(modify-phases %standard-phases
(add-before 'build 'set-GUILE_AUTO_COMPILE
(lambda _
;; To avoid warnings relating to 'guild'.
(setenv "GUILE_AUTO_COMPILE" "0")))
(add-after 'install 'wrap-executable
(lambda* (#:key inputs outputs target #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(bin (string-append out "/bin"))
(guile (assoc-ref inputs "guile"))
(version (target-guile-effective-version))
(scm (string-append out "/share/guile/site/" version))
(go (string-append out "/lib/guile/" version "/site-ccache")))
(for-each
(lambda (file)
(simple-format (current-error-port) "wrapping: ~A\n" file)
(let ((guile-inputs (list
"guile-json"
"guile-gcrypt"
"guix"
"guile-lib"
"guile-lzlib"
"guile-zstd"
"guile-prometheus"
"guile-sqlite3"
"guile-gnutls"
"guile-fibers")))
(wrap-program file
`("GUILE_LOAD_PATH" ":" prefix
(,scm ,(string-join
(map (lambda (input)
(string-append
(assoc-ref inputs input)
"/share/guile/site/"
version))
guile-inputs)
":")))
`("GUILE_LOAD_COMPILED_PATH" ":" prefix
(,go ,(string-join
(map (lambda (input)
(string-append
(assoc-ref inputs input)
"/share/guile/site/"
version))
"/lib/guile/" version "/site-ccache"))
guile-inputs)
":")))
`("GUILE_LOAD_COMPILED_PATH" ":" prefix
(,go ,(string-join
(map (lambda (input)
(string-append
(assoc-ref inputs input)
"/lib/guile/" version "/site-ccache"))
guile-inputs)
":"))))))
(find-files bin)))
#t))
(delete 'strip)))) ; As the .go files aren't compatible
":"))))))
(find-files bin)))))
(delete 'strip)))) ; As the .go files aren't compatible
(native-inputs
(list pkg-config
autoconf
@ -1864,7 +1863,7 @@ for packaging and deployment of cross-compiled Windows applications.")
docbook-xml
docbook-xsl
e2fsprogs
fuse
fuse-2
glib
gpgme
libarchive
@ -1965,7 +1964,7 @@ cp -r /tmp/locale/*/en_US.*")))
bubblewrap
curl
dconf
fuse
fuse-2
gdk-pixbuf
gpgme
json-glib

View File

@ -0,0 +1,23 @@
From d27d1cd3a79959ff1eb8439b06e108149f21141f Mon Sep 17 00:00:00 2001
From: Joseph Lansdowne <j49137@gmail.com>
Date: Sun, 31 Mar 2019 19:26:10 +0100
Subject: [PATCH] fix error on closing written file
---
ChangeLog | 1 +
ftpfs.c | 2 +-
2 files changed, 2 insertions(+), 1 deletion(-)
diff --git a/ftpfs.c b/ftpfs.c
index 0346354..34f8c38 100644
--- a/ftpfs.c
+++ b/ftpfs.c
@@ -503,7 +503,7 @@ static void *ftpfs_write_thread(void *data) {
curl_easy_setopt_or_die(fh->write_conn, CURLOPT_URL, fh->full_path);
curl_easy_setopt_or_die(fh->write_conn, CURLOPT_UPLOAD, 1);
- curl_easy_setopt_or_die(fh->write_conn, CURLOPT_INFILESIZE, -1);
+ curl_easy_setopt_or_die(fh->write_conn, CURLOPT_INFILESIZE, -1L);
curl_easy_setopt_or_die(fh->write_conn, CURLOPT_READFUNCTION, write_data_bg);
curl_easy_setopt_or_die(fh->write_conn, CURLOPT_READDATA, fh);
curl_easy_setopt_or_die(fh->write_conn, CURLOPT_LOW_SPEED_LIMIT, 1);

View File

@ -0,0 +1,76 @@
From bc3fb45db30741a60d4e8904cbd4d6118fb85741 Mon Sep 17 00:00:00 2001
From: Joseph Lansdowne <j49137@gmail.com>
Date: Sun, 31 Mar 2019 19:25:26 +0100
Subject: [PATCH] fix filenames with url-reserved characters
---
ChangeLog | 2 +-
path_utils.c | 28 +++++++++++++++++-----------
2 files changed, 18 insertions(+), 12 deletions(-)
diff --git a/path_utils.c b/path_utils.c
index db3d7e4..4f747bb 100644
--- a/path_utils.c
+++ b/path_utils.c
@@ -39,9 +39,11 @@ char* get_full_path(const char* path) {
path = converted_path;
}
- ret = g_strdup_printf("%s%s", ftpfs.host, path);
+ const char *const escaped_path = g_uri_escape_string(path, "/", FALSE);
+ ret = g_strdup_printf("%s%s", ftpfs.host, escaped_path);
free(converted_path);
+ free((char *) escaped_path);
return ret;
}
@@ -58,9 +60,12 @@ char* get_fulldir_path(const char* path) {
path = converted_path;
}
- ret = g_strdup_printf("%s%s%s", ftpfs.host, path, strlen(path) ? "/" : "");
+ const char *const escaped_path = g_uri_escape_string(path, "/", FALSE);
+ ret = g_strdup_printf(
+ "%s%s%s", ftpfs.host, escaped_path, strlen(escaped_path) ? "/" : "");
free(converted_path);
+ free((char *) escaped_path);
return ret;
}
@@ -71,24 +76,25 @@ char* get_dir_path(const char* path) {
const char *lastdir;
++path;
-
- lastdir = strrchr(path, '/');
- if (lastdir == NULL) lastdir = path;
- if (ftpfs.codepage && (lastdir - path > 0)) {
- converted_path = g_strndup(path, lastdir - path);
+ if (ftpfs.codepage) {
+ converted_path = g_strdup(path);
convert_charsets(ftpfs.iocharset, ftpfs.codepage, &converted_path);
path = converted_path;
- lastdir = path + strlen(path);
}
+ const char *const escaped_path = g_uri_escape_string(path, "/", FALSE);
+ lastdir = strrchr(escaped_path, '/');
+ if (lastdir == NULL) lastdir = escaped_path;
+
ret = g_strdup_printf("%s%.*s%s",
ftpfs.host,
- lastdir - path,
- path,
- lastdir - path ? "/" : "");
+ lastdir - escaped_path,
+ escaped_path,
+ lastdir - escaped_path ? "/" : "");
free(converted_path);
+ free((char *) escaped_path);
return ret;
}

View File

@ -0,0 +1,23 @@
From 2d01202eee44d8bad5bb982e72829b4a98d58bcd Mon Sep 17 00:00:00 2001
From: Joseph Lansdowne <j49137@gmail.com>
Date: Thu, 4 Apr 2019 20:37:06 +0100
Subject: [PATCH] fix memory leak
---
ChangeLog | 1 +
ftpfs.c | 2 ++
2 files changed, 3 insertions(+)
diff --git a/ftpfs.c b/ftpfs.c
index 34f8c38..020e559 100644
--- a/ftpfs.c
+++ b/ftpfs.c
@@ -607,6 +607,8 @@ static int finish_write_thread(struct ftpfs_file *fh)
static void free_ftpfs_file(struct ftpfs_file *fh) {
+ buf_free(&fh->buf);
+ buf_free(&fh->stream_buf);
if (fh->write_conn)
curl_easy_cleanup(fh->write_conn);
g_free(fh->full_path);

View File

@ -0,0 +1,27 @@
From b2ae7a152921bf36a39f01de43769ee90cbbd253 Mon Sep 17 00:00:00 2001
From: Joseph Lansdowne <j49137@gmail.com>
Date: Tue, 9 Apr 2019 21:08:32 +0100
Subject: [PATCH] fix option `no_verify_hostname`
Broke with a curl upgrade at some point. 1 is no longer a valid option
- not sure exactly what it used to do.
---
ChangeLog | 3 +++
ftpfs.c | 4 +---
2 files changed, 4 insertions(+), 3 deletions(-)
diff --git a/ftpfs.c b/ftpfs.c
index 020e559..207d5fd 100644
--- a/ftpfs.c
+++ b/ftpfs.c
@@ -1627,9 +1627,7 @@ static void set_common_curl_stuff(CURL* easy) {
}
if (ftpfs.no_verify_hostname) {
- /* The default is 2 which verifies even the host string. This sets to 1
- * which means verify the host but not the string. */
- curl_easy_setopt_or_die(easy, CURLOPT_SSL_VERIFYHOST, 1);
+ curl_easy_setopt_or_die(easy, CURLOPT_SSL_VERIFYHOST, 0);
}
curl_easy_setopt_or_die(easy, CURLOPT_INTERFACE, ftpfs.interface);

View File

@ -1,36 +0,0 @@
Fix static linking of 'lvm.static', which indirectly depend on libpthread
and libm via libdevmapper.a.
--- LVM2.2.02.166/tools/Makefile.in 2016-11-22 21:31:15.521045149 +0100
+++ LVM2.2.02.166/tools/Makefile.in 2016-11-22 21:31:24.085082767 +0100
@@ -137,7 +137,7 @@
lvm.static: $(OBJECTS) lvm-static.o $(LVMINTERNAL_LIBS)
@echo " [CC] $@"
$(Q) $(CC) $(CFLAGS) $(LDFLAGS) -static -L$(interfacebuilddir) -o $@ $+ \
- $(DMEVENT_LIBS) $(STATIC_LIBS) $(LVMLIBS)
+ $(DMEVENT_LIBS) $(STATIC_LIBS) $(LVMLIBS) $(PTHREAD_LIBS)
liblvm2cmd.a: $(top_builddir)/lib/liblvm-internal.a $(OBJECTS) lvmcmdlib.o lvm2cmd.o
@echo " [AR] $@"
--- a/make.tmpl.in 2018-07-31 22:00:39.969983104 +0200
+++ b/make.tmpl.in 2018-07-31 22:00:58.467613682 +0200
@@ -63,7 +63,7 @@
LIBS += @LIBS@ $(SELINUX_LIBS) $(UDEV_LIBS) $(BLKID_LIBS) $(RT_LIBS) $(M_LIBS)
# Extra libraries always linked with static binaries
-STATIC_LIBS = $(SELINUX_LIBS) $(UDEV_LIBS) $(BLKID_LIBS)
+STATIC_LIBS = $(SELINUX_LIBS) $(UDEV_LIBS) $(BLKID_LIBS) $(M_LIBS)
DEFS += @DEFS@
# FIXME set this only where it's needed, not globally?
CFLAGS ?= @COPTIMISE_FLAG@ @CFLAGS@
--- a/libdm/make.tmpl.in 2018-12-18 15:22:34.000000000 +0100
+++ b/libdm/make.tmpl.in 2019-01-29 21:45:33.637345799 +0100
@@ -57,7 +57,7 @@
LIBS = @LIBS@
LIBS += $(SELINUX_LIBS) $(UDEV_LIBS) $(BLKID_LIBS) $(RT_LIBS) -lm
# Extra libraries always linked with static binaries
-STATIC_LIBS = $(SELINUX_LIBS) $(UDEV_LIBS) $(BLKID_LIBS)
+STATIC_LIBS = $(SELINUX_LIBS) $(UDEV_LIBS) $(BLKID_LIBS) $(PTHREAD_LIBS) $(M_LIBS)
DEFS += @DEFS@
# FIXME set this only where it's needed, not globally?
CFLAGS ?= @COPTIMISE_FLAG@ @CFLAGS@

View File

@ -0,0 +1,290 @@
From 5a83e8ef8250526a40e8e69c6398f990ab482b2f Mon Sep 17 00:00:00 2001
From: Olivier Fourdan <ofourdan@redhat.com>
Date: Fri, 2 Jun 2023 14:42:51 +0200
Subject: [PATCH 1/5] cogl/gl-framebuffer: Fix spurious trailing spaces
Purely cosmetic fix, no functional change.
Part-of: <https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/3047>
---
cogl/cogl/driver/gl/cogl-gl-framebuffer-back.c | 12 ++++++------
cogl/cogl/driver/gl/cogl-gl-framebuffer-fbo.c | 12 ++++++------
2 files changed, 12 insertions(+), 12 deletions(-)
diff --git a/cogl/cogl/driver/gl/cogl-gl-framebuffer-back.c b/cogl/cogl/driver/gl/cogl-gl-framebuffer-back.c
index d6609bb2074..8d76f1578bf 100644
--- a/cogl/cogl/driver/gl/cogl-gl-framebuffer-back.c
+++ b/cogl/cogl/driver/gl/cogl-gl-framebuffer-back.c
@@ -72,32 +72,32 @@ ensure_bits_initialized (CoglGlFramebufferBack *gl_framebuffer_back)
GLenum attachment, pname;
size_t offset;
} params[] = {
- {
+ {
.attachment = GL_BACK_LEFT,
.pname = GL_FRAMEBUFFER_ATTACHMENT_RED_SIZE,
.offset = offsetof (CoglFramebufferBits, red),
},
- {
+ {
.attachment = GL_BACK_LEFT,
.pname = GL_FRAMEBUFFER_ATTACHMENT_GREEN_SIZE,
.offset = offsetof (CoglFramebufferBits, green),
},
- {
+ {
.attachment = GL_BACK_LEFT,
.pname = GL_FRAMEBUFFER_ATTACHMENT_BLUE_SIZE,
.offset = offsetof (CoglFramebufferBits, blue),
},
- {
+ {
.attachment = GL_BACK_LEFT,
.pname = GL_FRAMEBUFFER_ATTACHMENT_ALPHA_SIZE,
.offset = offsetof (CoglFramebufferBits, alpha),
},
- {
+ {
.attachment = GL_DEPTH,
.pname = GL_FRAMEBUFFER_ATTACHMENT_DEPTH_SIZE,
.offset = offsetof (CoglFramebufferBits, depth),
},
- {
+ {
.attachment = GL_STENCIL,
.pname = GL_FRAMEBUFFER_ATTACHMENT_STENCIL_SIZE,
.offset = offsetof (CoglFramebufferBits, stencil),
diff --git a/cogl/cogl/driver/gl/cogl-gl-framebuffer-fbo.c b/cogl/cogl/driver/gl/cogl-gl-framebuffer-fbo.c
index c8db6a23a29..1ffc1d53509 100644
--- a/cogl/cogl/driver/gl/cogl-gl-framebuffer-fbo.c
+++ b/cogl/cogl/driver/gl/cogl-gl-framebuffer-fbo.c
@@ -82,32 +82,32 @@ ensure_bits_initialized (CoglGlFramebufferFbo *gl_framebuffer_fbo)
GLenum attachment, pname;
size_t offset;
} params[] = {
- {
+ {
.attachment = GL_COLOR_ATTACHMENT0,
.pname = GL_FRAMEBUFFER_ATTACHMENT_RED_SIZE,
.offset = offsetof (CoglFramebufferBits, red),
},
- {
+ {
.attachment = GL_COLOR_ATTACHMENT0,
.pname = GL_FRAMEBUFFER_ATTACHMENT_GREEN_SIZE,
.offset = offsetof (CoglFramebufferBits, green),
},
- {
+ {
.attachment = GL_COLOR_ATTACHMENT0,
.pname = GL_FRAMEBUFFER_ATTACHMENT_BLUE_SIZE,
.offset = offsetof (CoglFramebufferBits, blue),
},
- {
+ {
.attachment = GL_COLOR_ATTACHMENT0,
.pname = GL_FRAMEBUFFER_ATTACHMENT_ALPHA_SIZE,
.offset = offsetof (CoglFramebufferBits, alpha),
},
- {
+ {
.attachment = GL_DEPTH_ATTACHMENT,
.pname = GL_FRAMEBUFFER_ATTACHMENT_DEPTH_SIZE,
.offset = offsetof (CoglFramebufferBits, depth),
},
- {
+ {
.attachment = GL_STENCIL_ATTACHMENT,
.pname = GL_FRAMEBUFFER_ATTACHMENT_STENCIL_SIZE,
.offset = offsetof (CoglFramebufferBits, stencil),
--
GitLab
From a2203df9f43b9e501a972d23b3d5584005c03ce6 Mon Sep 17 00:00:00 2001
From: Olivier Fourdan <ofourdan@redhat.com>
Date: Fri, 2 Jun 2023 11:54:58 +0200
Subject: [PATCH 2/5] cogl/gl-framebuffer: Fix inverted test in
ensure_bits_initialized()
Cogl's feature COGL_PRIVATE_FEATURE_QUERY_FRAMEBUFFER_BITS is required
to use the GL_FRAMEBUFFER_ATTACHMENT_* queries.
Unfortunately, the test for the availability of the private feature is
actually inverted in ensure_bits_initialized() which causes that whole
portion of code to be ignored, falling back to the glGetIntegerv()
method which isn't supported in core profiles.
As Mesa has recently started to be more strict about these, this causes
the CI tests to fail in mutter.
Part-of: <https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/3047>
---
cogl/cogl/driver/gl/cogl-gl-framebuffer-fbo.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/cogl/cogl/driver/gl/cogl-gl-framebuffer-fbo.c b/cogl/cogl/driver/gl/cogl-gl-framebuffer-fbo.c
index 1ffc1d53509..75a8b0c1fe2 100644
--- a/cogl/cogl/driver/gl/cogl-gl-framebuffer-fbo.c
+++ b/cogl/cogl/driver/gl/cogl-gl-framebuffer-fbo.c
@@ -76,7 +76,7 @@ ensure_bits_initialized (CoglGlFramebufferFbo *gl_framebuffer_fbo)
COGL_FRAMEBUFFER_STATE_BIND);
#ifdef HAVE_COGL_GL
- if (!_cogl_has_private_feature (ctx, COGL_PRIVATE_FEATURE_QUERY_FRAMEBUFFER_BITS))
+ if (_cogl_has_private_feature (ctx, COGL_PRIVATE_FEATURE_QUERY_FRAMEBUFFER_BITS))
{
const struct {
GLenum attachment, pname;
--
GitLab
From fad240f437d6b11f664c9c09aecabe5f5e703eca Mon Sep 17 00:00:00 2001
From: Olivier Fourdan <ofourdan@redhat.com>
Date: Mon, 5 Jun 2023 10:31:38 +0200
Subject: [PATCH 3/5] cogl/gl-framebuffer: Match testing features
The function ensure_bits_initialized() in cogl-gl-framebuffer-fbo.c
checks for COGL_PRIVATE_FEATURE_QUERY_FRAMEBUFFER_BITS whereas the same
in cogl-gl-framebuffer-back.c simply checks for the driver being
COGL_DRIVER_GL3.
Change the later to use the COGL_PRIVATE_FEATURE_QUERY_FRAMEBUFFER_BITS
flag as well.
Part-of: <https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/3047>
---
cogl/cogl/driver/gl/cogl-gl-framebuffer-back.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/cogl/cogl/driver/gl/cogl-gl-framebuffer-back.c b/cogl/cogl/driver/gl/cogl-gl-framebuffer-back.c
index 8d76f1578bf..f6a17e8f070 100644
--- a/cogl/cogl/driver/gl/cogl-gl-framebuffer-back.c
+++ b/cogl/cogl/driver/gl/cogl-gl-framebuffer-back.c
@@ -66,7 +66,7 @@ ensure_bits_initialized (CoglGlFramebufferBack *gl_framebuffer_back)
COGL_FRAMEBUFFER_STATE_BIND);
#ifdef HAVE_COGL_GL
- if (ctx->driver == COGL_DRIVER_GL3)
+ if (_cogl_has_private_feature (ctx, COGL_PRIVATE_FEATURE_QUERY_FRAMEBUFFER_BITS))
{
const struct {
GLenum attachment, pname;
--
GitLab
From c3af4c1b1571b05f67d48b90d9ea7313f3ca6003 Mon Sep 17 00:00:00 2001
From: Olivier Fourdan <ofourdan@redhat.com>
Date: Fri, 2 Jun 2023 14:27:29 +0200
Subject: [PATCH 4/5] cogl/gl-framebuffer: Fail without QUERY_FRAMEBUFFER_BITS
glGetIntegerv() with GL_RED_BITS/GL_GREEN_BITS/GL_BLUE_BITS/etc. is not
supported with the GL core context, so there is no point in falling back
to that without supporting COGL_PRIVATE_FEATURE_QUERY_FRAMEBUFFER_BITS,
as this will cause an GL error.
Part-of: <https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/3047>
---
cogl/cogl/driver/gl/cogl-gl-framebuffer-back.c | 7 +------
cogl/cogl/driver/gl/cogl-gl-framebuffer-fbo.c | 7 +------
2 files changed, 2 insertions(+), 12 deletions(-)
diff --git a/cogl/cogl/driver/gl/cogl-gl-framebuffer-back.c b/cogl/cogl/driver/gl/cogl-gl-framebuffer-back.c
index f6a17e8f070..0ccd2324077 100644
--- a/cogl/cogl/driver/gl/cogl-gl-framebuffer-back.c
+++ b/cogl/cogl/driver/gl/cogl-gl-framebuffer-back.c
@@ -119,12 +119,7 @@ ensure_bits_initialized (CoglGlFramebufferBack *gl_framebuffer_back)
else
#endif /* HAVE_COGL_GL */
{
- GE (ctx, glGetIntegerv (GL_RED_BITS, &bits->red));
- GE (ctx, glGetIntegerv (GL_GREEN_BITS, &bits->green));
- GE (ctx, glGetIntegerv (GL_BLUE_BITS, &bits->blue));
- GE (ctx, glGetIntegerv (GL_ALPHA_BITS, &bits->alpha));
- GE (ctx, glGetIntegerv (GL_DEPTH_BITS, &bits->depth));
- GE (ctx, glGetIntegerv (GL_STENCIL_BITS, &bits->stencil));
+ return FALSE;
}
COGL_NOTE (FRAMEBUFFER,
diff --git a/cogl/cogl/driver/gl/cogl-gl-framebuffer-fbo.c b/cogl/cogl/driver/gl/cogl-gl-framebuffer-fbo.c
index 75a8b0c1fe2..524196207f5 100644
--- a/cogl/cogl/driver/gl/cogl-gl-framebuffer-fbo.c
+++ b/cogl/cogl/driver/gl/cogl-gl-framebuffer-fbo.c
@@ -129,12 +129,7 @@ ensure_bits_initialized (CoglGlFramebufferFbo *gl_framebuffer_fbo)
else
#endif /* HAVE_COGL_GL */
{
- GE (ctx, glGetIntegerv (GL_RED_BITS, &bits->red));
- GE (ctx, glGetIntegerv (GL_GREEN_BITS, &bits->green));
- GE (ctx, glGetIntegerv (GL_BLUE_BITS, &bits->blue));
- GE (ctx, glGetIntegerv (GL_ALPHA_BITS, &bits->alpha));
- GE (ctx, glGetIntegerv (GL_DEPTH_BITS, &bits->depth));
- GE (ctx, glGetIntegerv (GL_STENCIL_BITS, &bits->stencil));
+ return FALSE;
}
if (!_cogl_has_private_feature (ctx, COGL_PRIVATE_FEATURE_ALPHA_TEXTURES) &&
--
GitLab
From d65883e0d7d70987e3888b86222b109c35f5a7a2 Mon Sep 17 00:00:00 2001
From: Olivier Fourdan <ofourdan@redhat.com>
Date: Mon, 5 Jun 2023 10:38:41 +0200
Subject: [PATCH 5/5] cogl/gl-framebuffer: Remove conditional on HAVE_COGL_GL
By testing the features flag, we can get rid of the conditional build
on HAVE_COGL_GL entirely.
Part-of: <https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/3047>
---
cogl/cogl/driver/gl/cogl-gl-framebuffer-back.c | 2 --
cogl/cogl/driver/gl/cogl-gl-framebuffer-fbo.c | 2 --
2 files changed, 4 deletions(-)
diff --git a/cogl/cogl/driver/gl/cogl-gl-framebuffer-back.c b/cogl/cogl/driver/gl/cogl-gl-framebuffer-back.c
index 0ccd2324077..94154d48efb 100644
--- a/cogl/cogl/driver/gl/cogl-gl-framebuffer-back.c
+++ b/cogl/cogl/driver/gl/cogl-gl-framebuffer-back.c
@@ -65,7 +65,6 @@ ensure_bits_initialized (CoglGlFramebufferBack *gl_framebuffer_back)
framebuffer,
COGL_FRAMEBUFFER_STATE_BIND);
-#ifdef HAVE_COGL_GL
if (_cogl_has_private_feature (ctx, COGL_PRIVATE_FEATURE_QUERY_FRAMEBUFFER_BITS))
{
const struct {
@@ -117,7 +116,6 @@ ensure_bits_initialized (CoglGlFramebufferBack *gl_framebuffer_back)
}
}
else
-#endif /* HAVE_COGL_GL */
{
return FALSE;
}
diff --git a/cogl/cogl/driver/gl/cogl-gl-framebuffer-fbo.c b/cogl/cogl/driver/gl/cogl-gl-framebuffer-fbo.c
index 524196207f5..3ea133d3143 100644
--- a/cogl/cogl/driver/gl/cogl-gl-framebuffer-fbo.c
+++ b/cogl/cogl/driver/gl/cogl-gl-framebuffer-fbo.c
@@ -75,7 +75,6 @@ ensure_bits_initialized (CoglGlFramebufferFbo *gl_framebuffer_fbo)
framebuffer,
COGL_FRAMEBUFFER_STATE_BIND);
-#ifdef HAVE_COGL_GL
if (_cogl_has_private_feature (ctx, COGL_PRIVATE_FEATURE_QUERY_FRAMEBUFFER_BITS))
{
const struct {
@@ -127,7 +126,6 @@ ensure_bits_initialized (CoglGlFramebufferFbo *gl_framebuffer_fbo)
}
}
else
-#endif /* HAVE_COGL_GL */
{
return FALSE;
}
--
GitLab

View File

@ -455,7 +455,7 @@ Poppler PDF rendering library.")
(define-public libharu
(package
(name "libharu")
(version "2.4.2")
(version "2.4.3")
(source
(origin
(method git-fetch)
@ -464,7 +464,7 @@ Poppler PDF rendering library.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1jwzqvv81zf5f7zssyixhyjirlp9ddwkbaabd177syb1bxljlsdc"))))
(base32 "00b89zqf0bxslx03ginzqdjg84zfmblq13p5f4xm0h05j7aq7ixz"))))
(build-system cmake-build-system)
(arguments
(list #:tests? #f ; No tests

View File

@ -459,7 +459,7 @@ photographic equipment.")
(define-public darktable
(package
(name "darktable")
(version "4.4.1")
(version "4.4.2")
(source
(origin
(method url-fetch)
@ -467,7 +467,7 @@ photographic equipment.")
"https://github.com/darktable-org/darktable/releases/"
"download/release-" version "/darktable-" version ".tar.xz"))
(sha256
(base32 "038gdri1mcmq9mlaikq5x9xyrs20b99jpcchfspngnwa5s6x6hz0"))))
(base32 "167sdj8m3srj9h5hh9cf2kvfpp349sygkcdrfbjrqbnz9x1jh7f1"))))
(build-system cmake-build-system)
(arguments
(list

View File

@ -210,6 +210,33 @@ routines such as routines for numerical integration and optimization.")
genetic variation data.")
(license license:expat)))
(define-public python-scikit-fem
(package
(name "python-scikit-fem")
(version "8.1.0")
(source (origin
(method git-fetch) ; no tests in PyPI
(uri (git-reference
(url "https://github.com/kinnala/scikit-fem")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32
"1zpn0wpsvls5nkrav5a43z77yg9nc09dpyy9ri0dpmpm2ndh2mhs"))))
(build-system pyproject-build-system)
(arguments
;; Examples below require python-autograd and python-pyamg.
(list #:test-flags #~(list "-k" "not TestEx32 and not TestEx45")))
(propagated-inputs (list python-meshio python-numpy python-scipy))
(native-inputs (list python-pytest))
(home-page "https://scikit-fem.readthedocs.io/en/latest/")
(synopsis "Library for performing finite element assembly")
(description
"@code{scikit-fem} is a library for performing finite element assembly.
Its main purpose is the transformation of bilinear forms into sparse matrices
and linear forms into vectors.")
(license license:bsd-3)))
(define-public python-scikit-fuzzy
(package
(name "python-scikit-fuzzy")

View File

@ -1832,6 +1832,36 @@ is Pythons.")
service.")
(license license:expat)))
(define-public python-openai
(package
(name "python-openai")
(version "0.27.8")
(source (origin
(method url-fetch)
(uri (pypi-uri "openai" version))
(sha256
(base32
"0dlmxnib71fih9xzmd3v41alwv4qb8qrxixsrrsf5vmigmf0k0r4"))))
(build-system pyproject-build-system)
(arguments
(list
#:test-flags
;; These require internet access and an openai API key.
'(list "--ignore=openai/tests/asyncio/test_endpoints.py"
"--ignore=openai/tests/test_endpoints.py"
"-k" "not test_requestor_cycle_sessions\
and not test_requestor_sets_request_id\
and not test_file_cli")))
(propagated-inputs (list python-aiohttp python-requests python-tqdm
python-typing-extensions))
(native-inputs (list python-black python-pytest python-pytest-asyncio
python-pytest-mock))
(home-page "https://github.com/openai/openai-python")
(synopsis "Python client library for the OpenAI API")
(description "This package provides a Python client library for the
OpenAI API.")
(license license:expat)))
(define-public python-openapi-schema-validator
(package
(name "python-openapi-schema-validator")
@ -2228,7 +2258,7 @@ RFC6455, regardless of your programming paradigm.")
(define-public hypercorn
(package
(name "hypercorn")
(version "0.14.3")
(version "0.14.4")
(source (origin
(method git-fetch) ;PyPI does not have tests
(uri (git-reference
@ -2237,7 +2267,7 @@ RFC6455, regardless of your programming paradigm.")
(file-name (git-file-name name version))
(sha256
(base32
"1hkph0sdr94hxmrq1grnh842snm561sw4az5q6a3ba9hqnrl890h"))))
"0zyf5b8959sd12ycmqzvsb8746i3gn76rz55gxvix5cwj672m7yx"))))
(build-system pyproject-build-system)
;; Propagate because Hypercorn also exposes functionality over a module.
(propagated-inputs
@ -8539,6 +8569,35 @@ starlette.")
(modify-inputs (package-propagated-inputs python-fastapi)
(replace "python-starlette" python-starlette-for-fastapi-0.88)))))
(define-public python-fastapi-csrf-protect
(package
(name "python-fastapi-csrf-protect")
(version "0.3.1")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/aekasitt/fastapi-csrf-protect")
;; This commit corresponds to version 0.3.1
(commit "536acd651d0d3f9862a0b753ba64dd2d187f8655")))
(file-name (git-file-name name version))
(sha256
(base32
"1zlwa0fplmcihylyvakskwkbkl2cq291fmys5x6wrpfdbjrqbgbj"))))
(build-system pyproject-build-system)
(propagated-inputs
(list python-fastapi python-itsdangerous
python-pydantic))
(native-inputs
(list python-poetry-core
python-pytest))
(home-page "https://github.com/aekasitt/fastapi-csrf-protect")
(synopsis "Cross-Site Request Forgery (XSRF) protection")
(description
"This package provides a stateless implementation of @dfn{Cross-Site
Request Forgery} (XSRF) Protection by using the Double Submit Cookie mitigation
pattern.")
(license license:expat)))
(define-public python-pyactiveresource
(package
(name "python-pyactiveresource")

View File

@ -13297,16 +13297,16 @@ third-party code.")
(define-public python-llfuse
(package
(name "python-llfuse")
(version "1.4.1")
(version "1.4.4")
(source (origin
(method url-fetch)
(uri (pypi-uri "llfuse" version))
(sha256
(base32
"1jaf790rsxvz3hs9fbr3hrnmg0xzl6a2bqfa10bbbsjsdbcpk762"))))
"1jb4c9avvb0v3830xlbj1r9kj05i98vv6nq05105ppg57y7lq14j"))))
(build-system python-build-system)
(inputs
(list fuse attr))
(list fuse-2 attr))
(native-inputs
(list pkg-config python-pytest))
(synopsis "Python bindings for FUSE")
@ -24387,10 +24387,9 @@ commit, but it also includes some other useful statistics.")
(let ((fuse (assoc-ref inputs "fuse")))
(substitute* "fuse.py"
(("find_library\\('fuse'\\)")
(string-append "'" fuse "/lib/libfuse.so'")))
#t))))))
(string-append "'" fuse "/lib/libfuse.so'")))))))))
(propagated-inputs
(list fuse))
(list fuse-2))
(home-page "https://github.com/fusepy/fusepy")
(synopsis "Simple ctypes bindings for FUSE")
(description "Python module that provides a simple interface to FUSE and
@ -24417,10 +24416,9 @@ MacFUSE. The binding is created using the standard @code{ctypes} library.")
(let ((fuse (assoc-ref inputs "fuse")))
(substitute* "fusepyng.py"
(("os.environ.get\\('FUSE_LIBRARY_PATH'\\)")
(string-append "\"" fuse "/lib/libfuse.so\""))))
#t)))))
(string-append "\"" fuse "/lib/libfuse.so\"")))))))))
(inputs
(list fuse))
(list fuse-2))
(propagated-inputs
(list python-paramiko))
(home-page "https://github.com/rianhunter/fusepyng")
@ -31962,10 +31960,10 @@ Psycopg 2 is both Unicode and Python 3 friendly.")
(base32 "0cvybynv9igssfa4l13q09gb6m7afmwk34wsbq8jk14sqpd4dl92"))))
(build-system python-build-system)
(native-inputs (list pkg-config))
(inputs (list fuse-3))
(inputs (list fuse))
(propagated-inputs (list python-pytest-trio))
(home-page "https://github.com/libfuse/pyfuse3")
(synopsis "Python bindings FUSE 3")
(synopsis "Python bindings to FUSE 3")
(description "This package provides Python 3 bindings for libfuse 3 with
async I/O support.")
(license license:gpl2+)))

View File

@ -4005,6 +4005,7 @@ color-related widgets.")
(substitute-keyword-arguments (package-arguments python-shiboken-2)
((#:phases p)
#~(modify-phases #$p
(delete 'workaround-importlib-error)
(replace 'use-shiboken-dir-only
(lambda _ (chdir "sources/shiboken6")))))
((#:configure-flags flags)

View File

@ -1373,7 +1373,7 @@ for correctness.")
(define-public hackrf
(package
(name "hackrf")
(version "2022.09.1")
(version "2023.01.1")
(source
(origin
(method git-fetch)
@ -1382,7 +1382,7 @@ for correctness.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0m9j160q5zb3jimszv1lb6j76zf5lwijvpfl1k28d832rh847vvk"))))
(base32 "0ybgppwy09j9rmfhh84072li698k64w84q5hjrayc73avc495x6f"))))
(build-system cmake-build-system)
(arguments
(list #:configure-flags

View File

@ -14,6 +14,7 @@
;;; Copyright © 2020 Alexandros Theodotou <alex@zrythm.org>
;;; Copyright © 2023 Alexey Abramov <levenson@mmer.org>
;;; Copyright © 2023 Sharlatan Hellseher <sharlatanus@gmail.com>
;;; Copyright © 2023 Vinicius Monego <monego@posteo.net>
;;;
;;; This file is part of GNU Guix.
;;;
@ -628,6 +629,11 @@ RPC system. Think JSON, except binary. Or think Protocol Buffers, except faste
(url "https://github.com/jcrist/msgspec")
(commit version)))
(file-name (git-file-name name version))
(modules '((guix build utils)))
(snippet
;; Delete autogenerated file, regenerate in a phase.
'(begin
(delete-file "msgspec/atof_consts.h")))
(sha256
(base32
"09q567klcv7ly60w9lqip2ffyhrij100ky9igh3p3vqwbml33zb3"))))
@ -645,7 +651,12 @@ RPC system. Think JSON, except binary. Or think Protocol Buffers, except faste
(invoke "versioneer" "install")
(substitute* "setup.py"
(("version=versioneer.get_version\\(),")
(format #f "version=~s," #$version))))))))
(format #f "version=~s," #$version)))))
(add-after 'versioneer 'atof-consts
(lambda _
(with-directory-excursion "scripts"
;; Regenerate the autogenerated file.
(invoke "python" "generate_atof_consts.py")))))))
(native-inputs (list python-attrs
python-gcovr
python-msgpack

View File

@ -16,6 +16,7 @@
;;; Copyright © 2021 Wiktor Żelazny <wzelazny@vurv.cz>
;;; Copyright © 2022 Jose G Perez Taveras <josegpt27@gmail.com>
;;; Copyright © 2023 Timo Wilken <guix@twilken.net>
;;; Copyright © 2023 Camilo Q.S. (Distopico) <distopico@riseup.net>
;;;
;;; This file is part of GNU Guix.
;;;
@ -482,7 +483,7 @@ are already there.")
(define-public direnv
(package
(name "direnv")
(version "2.32.2")
(version "2.32.3")
(source
(origin (method git-fetch)
(uri (git-reference
@ -491,7 +492,7 @@ are already there.")
(file-name (git-file-name name version))
(sha256
(base32
"17nn4qg1fj4i9rh1gdpbddn2nky71h9dkxyz5a4jsdq25bsx0ps2"))))
"1hyl67n7na19zm3ksiiyva4228alx0jfh9l3v1mxszn9prwgcfjc"))))
(build-system go-build-system)
(arguments
'(#:import-path "github.com/direnv/direnv"

View File

@ -386,16 +386,26 @@ share smart cards from client system to local or remote virtual machines.")
(define-public virt-viewer
(package
(name "virt-viewer")
;; XXX Remove the 'build-with-recent-meson phase when updating.
(version "11.0")
(source (origin
(method url-fetch)
(uri (string-append
"https://virt-manager.org/download/sources/virt-viewer/"
"virt-viewer-" version ".tar.xz"))
(sha256
(base32
"1l5bv6x6j21l487mk3n93ai121gg62n6b069r2jpf72cbhra4gx4"))))
(source
(origin
(method url-fetch)
(uri (string-append
"https://virt-manager.org/download/sources/virt-viewer/"
"virt-viewer-" version ".tar.xz"))
(sha256
(base32 "1l5bv6x6j21l487mk3n93ai121gg62n6b069r2jpf72cbhra4gx4"))))
(build-system meson-build-system)
(arguments
(list #:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'build-with-recent-meson
;; Fix ERROR: Function does not take positional arguments.
(lambda _
(substitute* "data/meson.build"
(("i18n\\.merge_file \\(.*" match)
(string-append match "#"))))))))
(native-inputs
(list `(,glib "bin")
gettext-minimal

View File

@ -2129,7 +2129,7 @@ machine learning, computer vision, and high-dimensional statistics.")
(define-public python-arviz
(package
(name "python-arviz")
(version "0.15.1")
(version "0.16.1")
(source (origin
(method git-fetch) ; PyPI misses some test files
(uri (git-reference
@ -2138,7 +2138,7 @@ machine learning, computer vision, and high-dimensional statistics.")
(file-name (git-file-name name version))
(sha256
(base32
"0nqr4v927r9kc50z7rwlk2m8nw3dnnmmwmwcfijzd93gbg53wc4f"))))
"19phaqbpls82300z7ghicrldjxyjq4ilmmwsmd9zkl8c7ld5cb4j"))))
(build-system pyproject-build-system)
(arguments
;; FIXME: matplotlib tests fail because of the "--save" test flag.
@ -2177,7 +2177,7 @@ comparison and diagnostics.")
(define-public python-pymc
(package
(name "python-pymc")
(version "5.5.0")
(version "5.6.1")
(source (origin
(method git-fetch) ; no tests in PyPI
(uri (git-reference
@ -2186,7 +2186,7 @@ comparison and diagnostics.")
(file-name (git-file-name name version))
(sha256
(base32
"077xigv3lfcn9fqc14rsnam4v95fmqk2wpzfrgj08vg8m7f69wdj"))))
"0in5lw55camvgd6b4hiw4gr11bdy96jc74z1gvsd0xj7cfxvc043"))))
(build-system pyproject-build-system)
(arguments
(list #:tests? #f ; tests are too computationally intensive

View File

@ -222,7 +222,7 @@
expat
fcgi
fmt-8
fuse
fuse-2
icu4c
jemalloc
keyutils

View File

@ -546,7 +546,7 @@ written in @command{scsh}. It makes use of @command{unison} and
acl
libselinux
eudev
fuse
fuse-2
openssl
zlib))
(synopsis "File synchronization and backup system")

View File

@ -1465,14 +1465,14 @@ highlighting for dozens of languages. Jed is very small and fast.")
(define-public xnedit
(package
(name "xnedit")
(version "1.4.1")
(version "1.5.0")
(source (origin
(method url-fetch)
(uri (string-append "mirror://sourceforge/xnedit/" name "-"
version ".tar.gz"))
(sha256
(base32
"0fw3li7hr47hckm9pl1njx30lfr6cx2p094ir8zmgr91hyxidgld"))))
"09wvhg7rywfj7njl2fkzdhgwlgxw358423yiv2ay3k5zhbysxfik"))))
(build-system gnu-build-system)
(arguments

View File

@ -1697,7 +1697,7 @@ visualize your public Git repositories on a web interface.")
(define-public pre-commit
(package
(name "pre-commit") ;formerly known as python-pre-commit
(version "3.3.1")
(version "3.3.3")
(source
(origin
(method git-fetch) ; no tests in PyPI release
@ -1706,7 +1706,7 @@ visualize your public Git repositories on a web interface.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1cssp1p8xmidiimcjfp799zlldbr6id8ar0sf5rs0dd44ns1j3yr"))
(base32 "1spkg3ld3s6l7wz24lcywlf1z2ywp751bcdlxjfdsln76bi9ylp8"))
(modules '((guix build utils)))
(snippet '(substitute* "setup.cfg"
(("virtualenv>=20.10.0") ;our virtualenv (20.3.1) is fine

View File

@ -1506,14 +1506,14 @@ quality and performance.")
(define-public libva
(package
(name "libva")
(version "2.18.0")
(version "2.19.0")
(source
(origin
(method url-fetch)
(uri (string-append "https://github.com/intel/libva/releases/download/"
version "/libva-" version ".tar.bz2"))
(sha256
(base32 "10j9rm6ajgp3fda7pwl058lchdip0wq20bvydil28ff2l3mpwmx3"))))
(base32 "0x113spshsjcqh4pk8rkqq4r8vxf1nm83ym6ppp7zpsrsncfffwn"))))
(build-system gnu-build-system)
(native-inputs
(list config pkg-config))
@ -2099,7 +2099,7 @@ streaming protocols.")
(define-public mplayer
(package
(name "mplayer")
(version "1.4")
(version "1.5")
(source (origin
(method url-fetch)
(uri (string-append
@ -2107,80 +2107,82 @@ streaming protocols.")
version ".tar.xz"))
(sha256
(base32
"0j5mflr0wnklxsvnpmxvk704hscyn2785hvvihj2i3a7b3anwnc2"))))
"11dzrdb74ayvivcid3giqncrfm98hi4aqvg3kjrwji6bnddxa335"))))
(build-system gnu-build-system)
;; FIXME: Add additional inputs once available.
(native-inputs
(list pkg-config yasm))
(inputs
`(("alsa-lib" ,alsa-lib)
("cdparanoia" ,cdparanoia)
("ffmpeg" ,ffmpeg-4)
("fontconfig" ,fontconfig)
("freetype" ,freetype)
("giflib" ,giflib)
("lame" ,lame)
("libass" ,libass)
("libdvdcss" ,libdvdcss)
("libdvdnav" ,libdvdnav) ; ignored without libdvdread
("libdvdread" ,libdvdread) ; ignored without libdvdnav
("libjpeg" ,libjpeg-turbo)
("libmpeg2" ,libmpeg2)
("libmpg123" ,mpg123) ; audio codec for MP3
("libpng" ,libpng)
("libtheora" ,libtheora)
("libvdpau" ,libvdpau)
("libvorbis" ,libvorbis)
("libx11" ,libx11)
("libx264" ,libx264)
("libxinerama" ,libxinerama)
("libxv" ,libxv)
("libxxf86dga" ,libxxf86dga)
("mesa" ,mesa)
("opus" ,opus)
("perl" ,perl)
("pulseaudio" ,pulseaudio)
("python" ,python-wrapper)
("sdl" ,sdl)
("speex" ,speex)
("zlib" ,zlib)))
(arguments
`(#:tests? #f ; no test target
#:phases
(modify-phases %standard-phases
(replace 'configure
;; configure does not work followed by "SHELL=..." and
;; "CONFIG_SHELL=..."; set environment variables instead
(lambda* (#:key inputs outputs #:allow-other-keys)
(let ((out (assoc-ref outputs "out"))
(libx11 (assoc-ref inputs "libx11")))
(list
#:tests? #f ; no test target
#:configure-flags
#~(list (string-append "--prefix=" #$output)
"--disable-ffmpeg_a" ; disables bundled ffmpeg
"--disable-iwmmxt"
(string-append "--extra-cflags=-I"
#$(this-package-input "libx11")
"/include") ; to detect libx11
;; Enable runtime cpu detection where supported,
;; and choose a suitable target.
#$@(match (or (%current-target-system)
(%current-system))
("x86_64-linux"
'("--enable-runtime-cpudetection"
"--target=x86_64-linux"))
("i686-linux"
'("--enable-runtime-cpudetection"
"--target=i686-linux"))
("mips64el-linux"
'("--target=mips3-linux"))
(_ (list (string-append
"--target="
(or (%current-target-system)
(nix-system->gnu-triplet
(%current-system))))))))
#:phases
#~(modify-phases %standard-phases
(replace 'configure
;; configure does not work followed by "SHELL=..." and
;; "CONFIG_SHELL=..."; set environment variables instead
(lambda* (#:key (configure-flags '()) #:allow-other-keys)
(substitute* "configure"
(("#! /bin/sh") (string-append "#!" (which "sh"))))
(setenv "SHELL" (which "bash"))
(setenv "CONFIG_SHELL" (which "bash"))
(invoke "./configure"
(string-append "--extra-cflags=-I"
libx11 "/include") ; to detect libx11
"--disable-ffmpeg_a" ; disables bundled ffmpeg
(string-append "--prefix=" out)
;; Enable runtime cpu detection where supported,
;; and choose a suitable target.
,@(match (or (%current-target-system)
(%current-system))
("x86_64-linux"
'("--enable-runtime-cpudetection"
"--target=x86_64-linux"))
("i686-linux"
'("--enable-runtime-cpudetection"
"--target=i686-linux"))
("mips64el-linux"
'("--target=mips3-linux"))
(_ (list (string-append
"--target="
(or (%current-target-system)
(nix-system->gnu-triplet
(%current-system)))))))
"--disable-iwmmxt")))))))
(apply invoke "./configure" configure-flags))))))
;; FIXME: Add additional inputs once available.
(native-inputs
(list pkg-config yasm))
(inputs
(list alsa-lib
cdparanoia
ffmpeg-4
fontconfig
freetype
giflib
lame
libass
libdvdcss
libdvdnav ; ignored without libdvdread
libdvdread ; ignored without libdvdnav
libjpeg-turbo
libmpeg2
mpg123 ; audio codec for MP3
libpng
libtheora
libvdpau
libvorbis
libx11
libx264
libxinerama
libxv
libxxf86dga
mesa
opus
perl
pulseaudio
python-wrapper
sdl
speex
zlib))
(home-page "https://www.mplayerhq.hu")
(synopsis "Audio and video player")
(description "MPlayer is a movie player. It plays most MPEG/VOB, AVI,
@ -2192,7 +2194,7 @@ SVCD, DVD, 3ivx, DivX 3/4/5, WMV and H.264 movies.")
(define-public mpv
(package
(name "mpv")
(version "0.35.1")
(version "0.36.0")
(source (origin
(method git-fetch)
(uri (git-reference
@ -2200,7 +2202,7 @@ SVCD, DVD, 3ivx, DivX 3/4/5, WMV and H.264 movies.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1lzaijqddr4ir9nb27cv9ki20b0k5jns2k47v4xvmi30v1gi71ha"))))
(base32 "1ri06h7pv6hrxmxxc618n9hymlgr0gfx38bqq5dcszdgnlashsgk"))))
(build-system waf-build-system)
(arguments
(list
@ -2209,7 +2211,7 @@ SVCD, DVD, 3ivx, DivX 3/4/5, WMV and H.264 movies.")
(add-after 'unpack 'patch-file-names
(lambda* (#:key inputs #:allow-other-keys)
(substitute* "player/lua/ytdl_hook.lua"
(("\"yt-dlp\",")
(("\"yt-dlp\",")
(string-append
"\"" (search-input-file inputs "bin/yt-dlp") "\",")))))
(add-before 'configure 'build-reproducibly
@ -3272,7 +3274,7 @@ from sites like Twitch.tv and pipes them into a video player of choice.")
(define-public mlt
(package
(name "mlt")
(version "7.16.0")
(version "7.18.0")
(source
(origin
(method git-fetch)
@ -3281,7 +3283,7 @@ from sites like Twitch.tv and pipes them into a video player of choice.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0aas3zjc9xh7sn01xv67fa26bzlz9sapbgzsplmikwc9lwfl5pqi"))))
(base32 "1b79wcf4l099w6bp4jlhgdwnbaydkrp8rj1hflggihzn3awcrayy"))))
(build-system cmake-build-system)
(arguments
(list
@ -4840,7 +4842,7 @@ API. It includes bindings for Python, Ruby, and other languages.")
(define-public openshot
(package
(name "openshot")
(version "3.1.0")
(version "3.1.1")
(source (origin
(method git-fetch)
(uri (git-reference
@ -4849,7 +4851,7 @@ API. It includes bindings for Python, Ruby, and other languages.")
(file-name (git-file-name name version))
(sha256
(base32
"1m1mq8kws00mwijx8j5gqharkw63jqyywbnzsswgcxlhmsyv3k4v"))
"11wmcipcx5icjcw4vaai5z06p8xj1j39dwl6kkjn5db2y00gak4h"))
(modules '((guix build utils)))
(snippet
'(begin

View File

@ -28,6 +28,7 @@
;;; Copyright © 2022 Ekaitz Zarraga <ekaitz@elenq.tech>
;;; Copyright © 2022 Arun Isaac <arunisaac@systemreboot.net>
;;; Copyright © 2022 Zhu Zihao <all_but_last@163.com>
;;; Copyright © 2023 Juliana Sims <juli@incana.org>
;;;
;;; This file is part of GNU Guix.
;;;
@ -96,6 +97,7 @@
#:use-module (gnu packages libusb)
#:use-module (gnu packages linux)
#:use-module (gnu packages m4)
#:use-module (gnu packages man)
#:use-module (gnu packages multiprecision)
#:use-module (gnu packages ncurses)
#:use-module (gnu packages nettle)
@ -160,15 +162,14 @@
(define-public qemu
(package
(name "qemu")
(version "7.2.1")
(version "7.2.4")
(source
(origin
(method url-fetch)
(uri (string-append "https://download.qemu.org/qemu-"
version ".tar.xz"))
(sha256
(base32
"0fypm8blv0la17vvlx6h38nhq2rpavflr9i9zsjl6ylxryd6k1cc"))
(base32 "0795l8xsy67fnh4mbdz40jm880iisd7q6d7ly6nfzpac3gjr8zyf"))
(patches (search-patches "qemu-build-info-manual.patch"
"qemu-disable-aarch64-migration-test.patch"
"qemu-fix-agent-paths.patch"))
@ -1127,6 +1128,57 @@ Guix to build virtual machines.")
Debian or a derivative using @command{debootstrap}.")
(license license:gpl2+)))
(define-public rvvm
(package
(name "rvvm")
(version "0.5")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/LekKit/RVVM")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
"1ldabcrmpa044bahpqa6ymwbhhwy69slh77f0m3421sq6j50l06p"))))
(build-system cmake-build-system)
(arguments
(list
#:configure-flags
;; See src/rvjit/rvjit.h for list of architectures.
#~(#$@(if (or (target-x86?)
(target-arm?))
#~'()
#~(list "-DRVVM_USE_JIT=NO")))
#:modules `((srfi srfi-26)
(guix build utils)
(guix build cmake-build-system))
#:phases
#~(modify-phases %standard-phases
;; Install phase inspired by the Makefile.
(replace 'install
(lambda _
(let ((src "../source/src/")
(incl (string-append #$output "/include/rvvm/")))
(install-file "rvvm" (string-append #$output "/bin"))
(for-each
(cut install-file <> (string-append #$output "/lib"))
(find-files "." "\\.(so|a)$"))
(install-file (string-append src "rvvmlib.h") incl)
(for-each
(cut install-file <> (string-append incl "devices"))
(find-files (string-append src "devices") "\\.h$"))))))
#:tests? #f)) ; no tests
(home-page "https://github.com/LekKit/RVVM")
(synopsis "RISC-V virtual machine")
(description
"RVVM is a RISC-V CPU and system software implementation written in C. It
supports the entire RV64GC ISA, and it passes compliance tests for both RV64 and
RV32. OpenSBI, U-Boot, and custom firmwares boot and execute properly. It is
capable of running Linux, FreeBSD, OpenBSD, Haiku, and other OSes. Furthermore,
it emulates a variety of hardware and peripherals.")
(license (list license:gpl3+ license:mpl2.0))))
(define-public spike
(package
(name "spike")
@ -1259,23 +1311,25 @@ manage system or application containers.")
(define-public lxcfs
(package
(name "lxcfs")
(version "4.0.11")
(version "5.0.4")
(home-page "https://github.com/lxc/lxcfs")
(source (origin
(method git-fetch)
(uri (git-reference (url home-page)
(commit (string-append "lxcfs-" version))))
(file-name (git-file-name name version))
(sha256
(base32
"02cgzh97cgxh9iyf7gkn5ikdc0sfzqfjj6al0hikdf9rbwcscqwd"))))
(source
(origin
(method git-fetch)
(uri (git-reference (url home-page)
(commit (string-append "lxcfs-" version))))
(file-name (git-file-name name version))
(sha256
(base32 "15cc7kvnln4qqlv22hprfzmq89jbkx7yra730hap8wkvamn33sxy"))))
(build-system meson-build-system)
(arguments
'(#:configure-flags '("--localstatedir=/var")))
(list
#:configure-flags
#~(list "-Dinit-script=sysvinit"))) ; no none option
(native-inputs
(list autoconf automake libtool pkg-config))
(list help2man pkg-config python python-jinja2))
(inputs
(list fuse))
(build-system gnu-build-system)
(synopsis "FUSE-based file system for LXC")
(description "LXCFS is a small FUSE file system written with the intention
of making Linux containers feel more like a virtual machine.
@ -1448,7 +1502,7 @@ pretty simple, REST API.")
(inputs
(list acl
attr
fuse
fuse-2
libxml2
eudev
libpciaccess

View File

@ -586,7 +586,7 @@ driven and does not detract you from your daily work.")
(define-public nyxt
(package
(name "nyxt")
(version "3.4.0")
(version "3.5.0")
(source
(origin
(method git-fetch)
@ -595,7 +595,7 @@ driven and does not detract you from your daily work.")
(commit version)))
(sha256
(base32
"0k1vk3qj9sc3wa0yhx1ih8xq9864dd34hfk622zdmyx2f8q81qd3"))
"13ldi191ccxyxr3hjxyhnjl2vw365v0fhb1pqia7rg1gl3id47gz"))
(file-name (git-file-name "nyxt" version))
(modules '((guix build utils)))
(snippet

View File

@ -4824,8 +4824,8 @@ CDF, Atom 0.3, and Atom 1.0 feeds.")
license:freebsd-doc)))) ; documentation
(define-public guix-data-service
(let ((commit "68850065d79ba05dad7201c3ed22f5e2e32680b7")
(revision "41"))
(let ((commit "1c7539418743e0dfe3a9cad22c414fd732daef8f")
(revision "42"))
(package
(name "guix-data-service")
(version (string-append "0.0.1-" revision "." (string-take commit 7)))
@ -4837,64 +4837,63 @@ CDF, Atom 0.3, and Atom 1.0 feeds.")
(file-name (git-file-name name version))
(sha256
(base32
"0y7a9jbbkzhlhmn639kgmzlkw927w4nrsafm1sj51mrblr5qk4lq"))))
"1gp4mhjssxky0jjjz916rfgz4w2f327wfd5ixb6lb00ydlfh5mws"))))
(build-system gnu-build-system)
(arguments
'(#:modules ((guix build utils)
(list
#:modules '((guix build utils)
(guix build gnu-build-system)
(ice-9 ftw)
(ice-9 match)
(ice-9 rdelim)
(ice-9 popen))
#:test-target "check-with-tmp-database"
#:phases
(modify-phases %standard-phases
(add-before 'build 'set-GUILE_AUTO_COMPILE
(lambda _
;; To avoid warnings relating to 'guild'.
(setenv "GUILE_AUTO_COMPILE" "0")
#t))
(add-after 'install 'wrap-executable
(lambda* (#:key inputs outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(bin (string-append out "/bin"))
(guile (assoc-ref inputs "guile"))
(guile-effective-version
(read-line
(open-pipe* OPEN_READ
(string-append guile "/bin/guile")
"-c" "(display (effective-version))")))
(scm (string-append out "/share/guile/site/"
guile-effective-version))
(go (string-append out "/lib/guile/"
guile-effective-version
"/site-ccache")))
(for-each
(lambda (file)
(simple-format (current-error-port)
"wrapping: ~A\n"
(string-append bin "/" file))
(wrap-program (string-append bin "/" file)
`("PATH" ":" prefix
,(cons*
bin
(map (lambda (input)
(string-append
(assoc-ref inputs input)
"/bin"))
'("ephemeralpg"
"util-linux"
"postgresql"))))
`("GUILE_LOAD_PATH" ":" prefix
(,scm ,(getenv "GUILE_LOAD_PATH")))
`("GUILE_LOAD_COMPILED_PATH" ":" prefix
(,go ,(getenv "GUILE_LOAD_COMPILED_PATH")))))
(scandir bin
(match-lambda
((or "." "..") #f)
(_ #t))))
#t)))
(delete 'strip)))) ; As the .go files aren't compatible
#:test-target "check-with-tmp-database"
#:phases
#~(modify-phases %standard-phases
(add-before 'build 'set-GUILE_AUTO_COMPILE
(lambda _
;; To avoid warnings relating to 'guild'.
(setenv "GUILE_AUTO_COMPILE" "0")))
(add-after 'install 'wrap-executable
(lambda* (#:key inputs outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(bin (string-append out "/bin"))
(guile (assoc-ref inputs "guile"))
(guile-effective-version
(read-line
(open-pipe* OPEN_READ
(string-append guile "/bin/guile")
"-c" "(display (effective-version))")))
(scm (string-append out "/share/guile/site/"
guile-effective-version))
(go (string-append out "/lib/guile/"
guile-effective-version
"/site-ccache")))
(for-each
(lambda (file)
(simple-format (current-error-port)
"wrapping: ~A\n"
(string-append bin "/" file))
(wrap-program (string-append bin "/" file)
`("PATH" ":" prefix
,(cons*
bin
(map (lambda (input)
(string-append
(assoc-ref inputs input)
"/bin"))
'("ephemeralpg"
"util-linux"
"postgresql"))))
`("GUILE_LOAD_PATH" ":" prefix
(,scm ,(getenv "GUILE_LOAD_PATH")))
`("GUILE_LOAD_COMPILED_PATH" ":" prefix
(,go ,(getenv "GUILE_LOAD_COMPILED_PATH")))))
(scandir bin
(match-lambda
((or "." "..") #f)
(_ #t)))))))
(delete 'strip)))) ; As the .go files aren't compatible
(inputs
(list ephemeralpg
util-linux
@ -5959,6 +5958,14 @@ on the fly.")
`(#:phases (modify-phases %standard-phases
(add-before 'check 'pre-check
(lambda _
;; Our grep is compiled without perl regexp support. So,
;; rewrite the grep command to not use it. \t tab
;; characters are supported only in perl regexps. So,
;; put in literal tabs using printf instead.
(substitute* "src/tests/test32-proxy-authority.sh"
(("grep -Pq") "grep -q")
(("extension:\\\\tdefault")
"extension:$(printf '\\011')default"))
;; Most tests attempts to access hitch-tls.org which is
;; unavailable in the build container. Run them against
;; a dummy local web server instead.
@ -5976,8 +5983,7 @@ on the fly.")
;; process has shut down.
(substitute* "src/tests/hitch_test.sh"
(("kill -0 \"\\$HITCH_PID\"")
"$(ps -p $HITCH_PID -o state= | grep -qv '^Z$')"))
#t)))))
"$(ps -p $HITCH_PID -o state= | grep -qv '^Z$')")))))))
(native-inputs
(list pkg-config

View File

@ -24,7 +24,8 @@
#:use-module (guix deprecation)
#:use-module (guix diagnostics)
#:use-module (guix i18n)
#:use-module (gnu services)
#:use-module (guix modules)
#:use-module ((gnu services) #:hide (delete))
#:use-module (gnu services admin)
#:use-module (gnu services configuration)
#:use-module (gnu services shepherd)
@ -143,7 +144,7 @@
;; Helpers for deprecated field types, to be removed later.
(define %lazy-group (make-symbol "%lazy-group"))
(define (%set-user-group user group)
(define (set-user-group user group)
(user-account
(inherit user)
(group (user-group-name group))))
@ -184,13 +185,15 @@
(define %mpd-user
(user-account
(name "mpd")
(group %lazy-group)
(system? #t)
(comment "Music Player Daemon (MPD) user")
;; MPD can use $HOME (or $XDG_CONFIG_HOME) to place its data
(home-directory "/var/lib/mpd")
(shell (file-append shadow "/sbin/nologin"))))
(name "mpd")
;; XXX: This is a place-holder to be lazily substituted in (…-accounts)
;; with the value from the 'group' field of <mpd-configuration>.
(group %lazy-group)
(system? #t)
(comment "Music Player Daemon (MPD) user")
;; MPD can use $HOME (or $XDG_CONFIG_HOME) to place its data.
(home-directory "/var/lib/mpd")
(shell (file-append shadow "/sbin/nologin"))))
(define %mpd-group
(user-group
@ -235,10 +238,7 @@
user-account instead~%"))
(user-account
(inherit %mpd-user)
(name value)
;; XXX: This is to be lazily substituted in (…-accounts)
;; with the value from 'group'.
(group %lazy-group)))
(name value)))
(else
(configuration-field-error #f 'user value))))
@ -253,6 +253,18 @@ user-group instead~%"))
(else
(configuration-field-error #f 'group value))))
(define (mpd-log-file-sanitizer value)
(match value
(%unset-value
;; XXX: While leaving the 'sys_log' option out of the mpd.conf file is
;; supposed to cause logging to happen via systemd (elogind provides a
;; compatible interface), this doesn't work (nothing gets logged); use
;; syslog instead.
"syslog")
((? string?)
value)
(_ (configuration-field-error #f 'log-file value))))
;;;
;; Generic MPD plugin record, lists only the most prevalent fields.
@ -350,15 +362,18 @@ open. This may be useful for streaming servers, when you dont want to
disconnect all listeners even when playback is accidentally stopped.")
(mixer-type
(string "none")
"This field accepts a string that specifies which mixer should be used
for this audio output: the @code{hardware} mixer, the @code{software}
mixer, the @code{null} mixer (allows setting the volume, but with no
effect; this can be used as a trick to implement an external mixer
External Mixer) or no mixer (@code{none})."
maybe-string
"This field accepts a string that specifies which mixer should be used for
this audio output: the @code{hardware} mixer, the @code{software} mixer, the
@code{null} mixer (allows setting the volume, but with no effect; this can be
used as a trick to implement an external mixer External Mixer) or no
mixer (@code{none}). When left unspecified, a @code{hardware} mixer is used
for devices that support it."
(sanitizer
(lambda (x) ; TODO: deprecated, remove me later.
(cond
((eq? %unset-value x)
x)
((symbol? x)
(warning (G_ "symbol value for 'mixer-type' is deprecated, \
use string instead~%"))
@ -425,16 +440,17 @@ will depend on."
empty-serializer)
(log-file
(maybe-string "/var/log/mpd/log")
"The location of the log file. Set to @code{syslog} to use the
local syslog daemon or @code{%unset-value} to omit this directive
from the configuration file.")
maybe-string
"The location of the log file. Unless specified, logs are sent to the
local syslog daemon. Alternatively, a log file name can be specified, for
example @file{/var/log/mpd.log}."
(sanitizer mpd-log-file-sanitizer))
(log-level
maybe-string
"Supress any messages below this threshold.
Available values: @code{notice}, @code{info}, @code{verbose},
@code{warning} and @code{error}.")
The available values, in decreasing order of verbosity, are: @code{verbose},
@code{info}, @code{notice}, @code{warning} and @code{error}.")
(music-directory
maybe-string
@ -456,7 +472,8 @@ Available values: @code{notice}, @code{info}, @code{verbose},
(db-file
maybe-string
"The location of the music database.")
"The location of the music database. When left unspecified,
@file{~/.cache/db} is used.")
(state-file
maybe-string
@ -514,6 +531,11 @@ To use a Unix domain socket, an absolute path can be specified here."
(serializer (lambda (_ x)
(mpd-serialize-list-of-mpd-plugin "archive_plugin" x))))
(auto-update?
maybe-boolean
"Whether to automatically update the music database when files are changed
in the @var{music-directory}.")
(input-cache-size
maybe-string
"MPD input cache size."
@ -563,44 +585,70 @@ appended to the configuration.")
(serialize-configuration configuration mpd-configuration-fields)))
(define (mpd-log-rotation config)
(match-record config <mpd-configuration> (log-file)
(log-rotation
(files (list log-file))
(post-rotate #~(begin
(use-modules (gnu services herd))
(with-shepherd-action 'mpd ('reopen) #f))))))
(match-record config <mpd-configuration>
(log-file)
(if (string=? "syslog" log-file)
'() ;nothing to do
(list (log-rotation
(files (list log-file))
(post-rotate #~(begin
(use-modules (gnu services herd))
(with-shepherd-action 'mpd ('reopen) #f))))))))
(define (mpd-shepherd-service config)
(match-record config <mpd-configuration> (user package shepherd-requirement
log-file playlist-directory
db-file state-file sticker-file
environment-variables)
(match-record config <mpd-configuration>
(user package shepherd-requirement
log-file playlist-directory
db-file state-file sticker-file
environment-variables)
(let ((config-file (mpd-serialize-configuration config))
(username (user-account-name user)))
(shepherd-service
(documentation "Run the MPD (Music Player Daemon)")
(requirement `(user-processes loopback ,@shepherd-requirement))
(requirement `(user-processes loopback
,@(if (string=? "syslog" log-file)
'(syslogd)
'())
,@shepherd-requirement))
(provision '(mpd))
(start #~(begin
(and=> #$(maybe-value log-file)
(compose mkdir-p dirname))
(start
(with-imported-modules (source-module-closure
'((gnu build activation)))
#~(begin
(use-modules (gnu build activation))
(let ((user (getpw #$username)))
(for-each
(lambda (x)
(when (and x (not (file-exists? x)))
(mkdir-p x)
(chown x (passwd:uid user) (passwd:gid user))))
(list #$(maybe-value playlist-directory)
(and=> #$(maybe-value db-file) dirname)
(and=> #$(maybe-value state-file) dirname)
(and=> #$(maybe-value sticker-file) dirname))))
(let ((home #$(user-account-home-directory user)))
(let ((user (getpw #$username))
(default-cache-dir (string-append home "/.cache")))
(make-forkexec-constructor
(list #$(file-append package "/bin/mpd")
"--no-daemon"
#$config-file)
#:environment-variables '#$environment-variables)))
(define (init-directory directory)
(unless (file-exists? directory)
(mkdir-p/perms directory user #o755)))
;; Define a cache location that can be automatically used
;; for the database file, in case it hasn't been explicitly
;; specified.
(for-each
init-directory
(cons default-cache-dir
'#$(map dirname
;; XXX: Delete the potential "syslog"
;; log-file value, which is not a directory.
(delete "syslog"
(filter-map maybe-value
(list db-file
log-file
state-file
sticker-file)))))))
(make-forkexec-constructor
(list #$(file-append package "/bin/mpd") "--no-daemon"
#$config-file)
#:environment-variables
;; Set HOME so MPD can infer default paths, such as
;; for the database file.
(cons (string-append "HOME=" home)
'#$environment-variables))))))
(stop #~(make-kill-destructor))
(actions
(list (shepherd-configuration-action config-file)
@ -621,7 +669,7 @@ appended to the configuration.")
(match-record config <mpd-configuration> (user group)
;; TODO: Deprecation code, to be removed.
(let ((user (if (eq? (user-account-group user) %lazy-group)
(%set-user-group user group)
(set-user-group user group)
user)))
(list user group))))
@ -632,10 +680,8 @@ appended to the configuration.")
(extensions
(list (service-extension shepherd-root-service-type
(compose list mpd-shepherd-service))
(service-extension account-service-type
mpd-accounts)
(service-extension rottlog-service-type
(compose list mpd-log-rotation))))
(service-extension account-service-type mpd-accounts)
(service-extension rottlog-service-type mpd-log-rotation)))
(default-value (mpd-configuration))))
@ -660,12 +706,14 @@ appended to the configuration.")
(define %mympd-user
(user-account
(name "mympd")
(group %lazy-group)
(system? #t)
(comment "myMPD user")
(home-directory "/var/empty")
(shell (file-append shadow "/sbin/nologin"))))
(name "mympd")
;; XXX: This is a place-holder to be lazily substituted in 'mympd-accounts'
;; with the value from the 'group' field of <mympd-configuration>.
(group %lazy-group)
(system? #t)
(comment "myMPD user")
(home-directory "/var/empty")
(shell (file-append shadow "/sbin/nologin"))))
(define %mympd-group
(user-group
@ -680,10 +728,7 @@ appended to the configuration.")
user-account instead~%"))
(user-account
(inherit %mympd-user)
(name value)
;; XXX: this is to be lazily substituted in (…-accounts)
;; with the value from 'group'.
(group %lazy-group)))
(name value)))
(else
(configuration-field-error #f 'user value))))
@ -697,8 +742,15 @@ user-group instead~%"))
(name value)))
(else
(configuration-field-error #f 'group value))))
;;;
(define (mympd-log-to-sanitizer value)
(match value
('syslog
(warning (G_ "syslog symbol value for 'log-to' is deprecated~%"))
%unset-value)
((or %unset-value (? string?))
value)
(_ (configuration-field-error #f 'log-to value))))
;; XXX: The serialization procedures are insufficient since we require
;; access to multiple fields at once.
@ -763,10 +815,11 @@ will depend on."
"How much detail to include in logs, possible values: @code{0} to @code{7}.")
(log-to
(string-or-symbol "/var/log/mympd/log")
"Where to send logs. By default, the service logs to
@file{/var/log/mympd.log}. The alternative is @code{'syslog}, which
sends output to the running syslog service under the @samp{daemon} facility."
maybe-string
"Where to send logs. Unless specified, the service logs to the local
syslog service under the @samp{daemon} facility. Alternatively, a log file
name can be specified, for example @file{/var/log/mympd.log}."
(sanitizer mympd-log-to-sanitizer)
empty-serializer)
(lualibs
@ -857,49 +910,58 @@ prompting a pin from the user.")
filename-to-field)))))
(define (mympd-shepherd-service config)
(match-record config <mympd-configuration> (package shepherd-requirement
user work-directory
cache-directory log-level log-to)
(let ((log-level* (format #f "MYMPD_LOGLEVEL=~a" log-level))
(username (user-account-name user)))
(shepherd-service
(documentation "Run the myMPD daemon.")
(requirement `(loopback user-processes
,@(if (eq? log-to 'syslog)
'(syslog)
'())
,@shepherd-requirement))
(provision '(mympd))
(start #~(begin
(let* ((pw (getpwnam #$username))
(uid (passwd:uid pw))
(gid (passwd:gid pw)))
(for-each (lambda (dir)
(mkdir-p dir)
(chown dir uid gid))
(list #$work-directory #$cache-directory)))
(match-record config <mympd-configuration>
(package shepherd-requirement user work-directory cache-directory
log-level log-to)
(shepherd-service
(documentation "Run the myMPD daemon.")
(requirement `(loopback user-processes
,@(if (maybe-value-set? log-to)
'()
'(syslogd))
,@shepherd-requirement))
(provision '(mympd))
(start
(let ((username (user-account-name user)))
(with-imported-modules (source-module-closure
'((gnu build activation)))
#~(begin
(use-modules (gnu build activation))
(make-forkexec-constructor
`(#$(file-append package "/bin/mympd")
"--user" #$username
#$@(if (eq? log-to 'syslog) '("--syslog") '())
"--workdir" #$work-directory
"--cachedir" #$cache-directory)
#:environment-variables (list #$log-level*)
#:log-file #$(if (string? log-to) log-to #f))))
(stop #~(make-kill-destructor))))))
(let ((user (getpw #$username)))
(define (init-directory directory)
(unless (file-exists? directory)
(mkdir-p/perms directory user #o755)))
(for-each init-directory
'#$(map dirname (filter-map maybe-value
(list log-to
work-directory
cache-directory)))))
(make-forkexec-constructor
`(#$(file-append package "/bin/mympd")
"--user" #$username
#$@(if (eq? log-to 'syslog) '("--syslog") '())
"--workdir" #$work-directory
"--cachedir" #$cache-directory)
#:environment-variables
(list #$(format #f "MYMPD_LOGLEVEL=~a" log-level))
#:log-file #$(maybe-value log-to)))))))))
(define (mympd-accounts config)
(match-record config <mympd-configuration> (user group)
;; TODO: Deprecation code, to be removed.
(let ((user (if (eq? (user-account-group user) %lazy-group)
(%set-user-group user group)
(set-user-group user group)
user)))
(list user group))))
(define (mympd-log-rotation config)
(match-record config <mympd-configuration> (log-to)
(if (string? log-to)
(match-record config <mympd-configuration>
(log-to)
(if (maybe-value-set? log-to)
(list (log-rotation
(files (list log-to))))
'())))

View File

@ -708,11 +708,7 @@ ca-certificates.crt file in the system profile."
(shepherd-service
(documentation "Guix Data Service process jobs")
(provision '(guix-data-service-process-jobs))
(requirement '(postgres
networking
;; Require guix-data-service, as that the database
;; migrations are handled through this service
guix-data-service))
(requirement '(postgres networking))
(start #~(make-forkexec-constructor
(list
#$(file-append package

View File

@ -1244,7 +1244,7 @@ deprecated; use 'setuid-program' instead~%"))
(file-append sudo "/bin/sudo")
(file-append sudo "/bin/sudoedit")
(file-append fuse "/bin/fusermount")
(file-append fuse-3 "/bin/fusermount3")
(file-append fuse "/bin/fusermount3")
;; To allow mounts with the "user" option, "mount" and "umount" must
;; be setuid-root.

View File

@ -19,7 +19,8 @@
(define-module (gnu system accounts)
#:use-module (guix records)
#:use-module (ice-9 match)
#:export (user-account
#:export (<user-account>
user-account
user-account?
user-account-name
user-account-password

View File

@ -73,29 +73,34 @@ success, #f otherwise."
(catch #t
(lambda ()
(http-fetch (string->uri url)))
(lambda args
(lambda (key . args)
(format #t "Unable to fetch from ~a, ~a: ~a~%"
(uri-host (string->uri url))
key
args)
(values #f #f)))))
(if (not port)
(loop rest)
(let* ((reporter (progress-reporter/file
url
size
(current-error-port)
#:abbreviation nar-uri-abbreviation))
(port-with-progress
(progress-report-port reporter port
#:download-size size)))
(begin
(if size
(format #t "Downloading from ~a (~,2h MiB)...~%" url
(/ size (expt 2 20.)))
(format #t "Downloading from ~a...~%" url))
(if (string-contains url "/lzip")
(restore-lzipped-nar port-with-progress
item
size)
(begin
(let* ((reporter (progress-reporter/file
url
size
(current-error-port)
#:abbreviation nar-uri-abbreviation))
(port-with-progress
(progress-report-port reporter port
#:download-size size)))
(if (string-contains url "/lzip")
(restore-lzipped-nar port-with-progress
item
size)
(restore-file port-with-progress
item)))
(newline)
#t))))
(()
#f))))

View File

@ -1815,6 +1815,21 @@ MANIFEST."
#:create-all-directories? #t
#:log-port (%make-void-port "w"))
;; Clear files that are going to be regenerated.
(with-directory-excursion "/tmp/texlive/share/texmf-dist"
(for-each delete-file
(list "fonts/map/dvipdfmx/updmap/kanjix.map"
"fonts/map/dvips/updmap/builtin35.map"
"fonts/map/dvips/updmap/download35.map"
"fonts/map/dvips/updmap/ps2pk.map"
"fonts/map/dvips/updmap/psfonts.map"
"fonts/map/dvips/updmap/psfonts_pk.map"
"fonts/map/dvips/updmap/psfonts_t1.map"
"fonts/map/pdftex/updmap/pdftex.map"
"fonts/map/pdftex/updmap/pdftex_dl14.map"
"fonts/map/pdftex/updmap/pdftex_ndl14.map"
"web2c/updmap.cfg")))
;; XXX: This is annoying, but it's necessary because
;; texlive-libkpathsea does not provide wrapped executables.
(setenv "PATH"
@ -1866,8 +1881,6 @@ MANIFEST."
(let ((a (string-append #$output "/share/texmf-dist"))
(b "/tmp/texlive/share/texmf-dist")
(mktexlsr #$(file-append texlive-scripts "/bin/mktexlsr")))
;; Ignore original "updmap.cfg" from texlive-scripts input.
(delete-file "/tmp/texlive/share/texmf-dist/web2c/updmap.cfg")
(copy-recursively a b)
(invoke mktexlsr b)
(install-file (string-append b "/ls-R") a))))))

View File

@ -1034,8 +1034,6 @@ Some ACTIONS support additional ARGS.\n"))
--no-graphic for 'vm', use the tty that we are started in for IO"))
(display (G_ "
--skip-checks skip file system and initrd module safety checks"))
(display (G_ "
--target=TRIPLET cross-build for TRIPLET--e.g., \"armel-linux-gnu\""))
(display (G_ "
-v, --verbosity=LEVEL use the given verbosity LEVEL"))
(newline)

View File

@ -441,6 +441,9 @@ actual compiler."
#~(begin
(use-modules (ice-9 match))
(define psabi #$(gcc-architecture->micro-architecture-level
micro-architecture))
(define* (search-next command
#:optional
(path (string-split (getenv "PATH")
@ -469,10 +472,25 @@ actual compiler."
(match (search-next (basename command))
(#f (exit 127))
(next
(apply execl next
(if (and (search-next "go")
(string=? next (search-next "go")))
(cond
((string-prefix? "arm" psabi)
(setenv "GOARM" (string-take-right psabi 1)))
((string-prefix? "powerpc" psabi)
(setenv "GOPPC64" psabi))
((string-prefix? "x86_64" psabi)
(setenv "GOAMD" (string-take-right psabi 2)))
(else #t))
'())
(apply
execl next
(append (cons next arguments)
(if (and (search-next "go")
(string=? next (search-next "go")))
'()
(list (string-append "-march="
#$micro-architecture))))))))))
#$micro-architecture)))))))))))
(define program
(program-file (string-append "tuning-compiler-wrapper-" micro-architecture)
@ -489,7 +507,8 @@ actual compiler."
(for-each (lambda (program)
(symlink #$program
(string-append bin "/" program)))
'("cc" "gcc" "clang" "g++" "c++" "clang++")))))))
'("cc" "gcc" "clang" "g++" "c++" "clang++"
"go")))))))
(define (build-system-with-tuning-compiler bs micro-architecture)
"Return a variant of BS, a build system, that ensures that the compiler that
@ -564,27 +583,6 @@ micro-architectures:
(bag
(inherit lowered)
(arguments
(substitute-keyword-arguments (bag-arguments lowered)
;; We add the tuning parameter after the default GO flags are set.
((#:phases phases '%standard-phases)
#~(modify-phases #$phases
(add-after 'setup-go-environment 'set-microarchitecture
(lambda _
(cond
((string-prefix? "arm" #$psabi)
(setenv "GOARM" (string-take-right #$psabi 1))
(format #t "Setting GOARM to ~s."
(getenv "GOARM")))
((string-prefix? "powerpc" #$psabi)
(setenv "GOPPC64" #$psabi)
(format #t "Setting GOPPC64 to ~s."
(getenv "GOPPC64")))
((string-prefix? "x86_64" #$psabi)
(setenv "GOAMD" (string-take-right #$psabi 2))
(format #t "Setting GOAMD to ~s.\n"
(getenv "GOAMD")))
(else #t))))))))
(build-inputs
;; Arrange so that the compiler wrapper comes first in $PATH.
`(("tuning-compiler" ,(tuning-compiler micro-architecture))