me
/
guix
Archived
1
0
Fork 0

Merge branch 'master' into gnome-team

master
Liliana Marie Prikler 2024-02-03 14:39:49 +01:00
commit e6c847defb
No known key found for this signature in database
GPG Key ID: 442A84B8C70E2F87
164 changed files with 167525 additions and 91048 deletions

View File

@ -18,7 +18,7 @@
# Copyright © 2021 Chris Marusich <cmmarusich@gmail.com>
# Copyright © 2021 Andrew Tropin <andrew@trop.in>
# Copyright © 2023 Clément Lassieur <clement@lassieur.org>
# Copyright © 2023 Wilko Meyer <w@wmeyer.eu>
# Copyright © 2023, 2024 Wilko Meyer <w@wmeyer.eu>
#
# This file is part of GNU Guix.
#
@ -140,6 +140,7 @@ MODULES = \
guix/platforms/arm.scm \
guix/platforms/avr.scm \
guix/platforms/mips.scm \
guix/platforms/or1k.scm \
guix/platforms/powerpc.scm \
guix/platforms/riscv.scm \
guix/platforms/x86.scm \
@ -424,6 +425,10 @@ AUX_FILES = \
gnu/packages/aux-files/emacs/guix-emacs.el \
gnu/packages/aux-files/findclass.php \
gnu/packages/aux-files/guix.vim \
gnu/packages/aux-files/linux-libre/6.7-arm.conf \
gnu/packages/aux-files/linux-libre/6.7-arm64.conf \
gnu/packages/aux-files/linux-libre/6.7-i686.conf \
gnu/packages/aux-files/linux-libre/6.7-x86_64.conf \
gnu/packages/aux-files/linux-libre/6.6-arm.conf \
gnu/packages/aux-files/linux-libre/6.6-arm64.conf \
gnu/packages/aux-files/linux-libre/6.6-i686.conf \
@ -448,9 +453,6 @@ AUX_FILES = \
gnu/packages/aux-files/linux-libre/4.19-arm64.conf \
gnu/packages/aux-files/linux-libre/4.19-i686.conf \
gnu/packages/aux-files/linux-libre/4.19-x86_64.conf \
gnu/packages/aux-files/linux-libre/4.14-arm.conf \
gnu/packages/aux-files/linux-libre/4.14-i686.conf \
gnu/packages/aux-files/linux-libre/4.14-x86_64.conf \
gnu/packages/aux-files/pack-audit.c \
gnu/packages/aux-files/python/sanity-check.py \
gnu/packages/aux-files/python/sitecustomize.py \

View File

@ -2111,9 +2111,15 @@ they are ready to become a committer. Commit access should not be
thought of as a ``badge of honor'' but rather as a responsibility a
contributor is willing to take to help the project. It is expected from
all contributors, and even more so from committers, to help build
consensus and make decisions based on consensus. To learn what
consensus decision making means and understand its finer details, you
are encouraged to read
consensus and make decisions based on consensus. By using consensus, we
are committed to finding solutions that everyone can live with. It
implies that no decision is made against significant concerns and these
concerns are actively resolved with proposals that work for everyone. A
contributor (which may or may not have commit access) wishing to block a
proposal bears a special responsibility for finding alternatives,
proposing ideas/code or explain the rationale for the status quo to
resolve the deadlock. To learn what consensus decision making means and
understand its finer details, you are encouraged to read
@url{https://www.seedsforchange.org.uk/consensus}.
The following sections explain how to get commit access, how to be ready
@ -2328,7 +2334,7 @@ Perhaps the biggest action you can do to help GNU Guix grow as a project
is to review the work contributed by others. You do not need to be a
committer to do so; applying, reading the source, building, linting and
running other people's series and sharing your comments about your
experience will give some confidence to committers. Basically, you gmust
experience will give some confidence to committers. Basically, you must
ensure the check list found in the @ref{Submitting Patches} section has
been correctly followed. A reviewed patch series should give the best
chances for the proposed change to be merged faster, so if a change you

View File

@ -22,7 +22,7 @@
@set SUBSTITUTE-URLS https://@value{SUBSTITUTE-SERVER-1} https://@value{SUBSTITUTE-SERVER-2}
@copying
Copyright @copyright{} 2012-2023 Ludovic Courtès@*
Copyright @copyright{} 2012-2024 Ludovic Courtès@*
Copyright @copyright{} 2013, 2014, 2016 Andreas Enge@*
Copyright @copyright{} 2013 Nikita Karetnikov@*
Copyright @copyright{} 2014, 2015, 2016 Alex Kost@*
@ -43,7 +43,7 @@ Copyright @copyright{} 2016, 2017, 2018, 2019, 2020, 2021 Christopher Baines@*
Copyright @copyright{} 2017, 2018, 2019 Clément Lassieur@*
Copyright @copyright{} 2017, 2018, 2020, 2021, 2022 Mathieu Othacehe@*
Copyright @copyright{} 2017 Federico Beffa@*
Copyright @copyright{} 2017, 2018 Carlo Zancanaro@*
Copyright @copyright{} 2017, 2018, 2024 Carlo Zancanaro@*
Copyright @copyright{} 2017 Thomas Danckaert@*
Copyright @copyright{} 2017 humanitiesNerd@*
Copyright @copyright{} 2017, 2021 Christine Lemmer-Webber@*
@ -123,6 +123,7 @@ Copyright @copyright{} 2023 Foundation Devices, Inc.@*
Copyright @copyright{} 2023 Thomas Ieong@*
Copyright @copyright{} 2023 Saku Laesvuori@*
Copyright @copyright{} 2023 Graham James Addis@*
Copyright @copyright{} 2023 Tomas Volf@*
Permission is granted to copy, distribute and/or modify this document
under the terms of the GNU Free Documentation License, Version 1.3 or
@ -4354,7 +4355,7 @@ There are several such multiple-output packages in the GNU distribution.
Other conventional output names include @code{lib} for libraries and
possibly header files, @code{bin} for stand-alone programs, and
@code{debug} for debugging information (@pxref{Installing Debugging
Files}). The outputs of a packages are listed in the third column of
Files}). The outputs of a package are listed in the third column of
the output of @command{guix package --list-available} (@pxref{Invoking
guix package}).
@ -5002,7 +5003,8 @@ environment} command to spawn an environment in a container running
@command{guile} (@command{guix environment} has since been subsumed by
@command{guix shell}; @pxref{Invoking guix shell}). It's like driving a
DeLorean@footnote{If you don't know what a DeLorean is, consider
traveling back to the 1980's.}! The first @command{guix time-machine}
traveling back to the 1980's. (@uref{https://www.imdb.com/title/tt0088763/,
Back to the Future (1985)})}! The first @command{guix time-machine}
invocation can be expensive: it may have to download or even build a
large number of packages; the result is cached though and subsequent
commands targeting the same commit are almost instantaneous.
@ -7161,7 +7163,7 @@ What if the recipient of your pack does not have root privileges on
their machine, and thus cannot unpack it in the root file system? In
that case, you will want to use the @option{--relocatable} option (see
below). This option produces @dfn{relocatable binaries}, meaning they
they can be placed anywhere in the file system hierarchy: in the example
can be placed anywhere in the file system hierarchy: in the example
above, users can unpack your tarball in their home directory and
directly run @file{./opt/gnu/bin/guile}.
@ -10193,8 +10195,8 @@ It also generates font metrics (i.e., @file{.tfm} files) out of Metafont
files whenever possible. Likewise, it can also create TeX formats
(i.e., @file{.fmt} files) listed in the @code{#:create-formats}
argument, and generate a symbolic link from @file{bin/} directory to any
script located in located in @file{texmf-dist/scripts/}, provided its
file name is listed in @code{#:link-scripts} argument.
script located in @file{texmf-dist/scripts/}, provided its file name is
listed in @code{#:link-scripts} argument.
The build system adds @code{texlive-bin} from @code{(gnu packages tex)}
to the native inputs. It can be overridden with the
@ -13915,8 +13917,8 @@ happen because the daemon runs builds in containers where, unlike in our
environment above, network access is missing, @file{/bin/sh} does not
exist, etc. (@pxref{Build Environment Setup}).
In such cases, you may need to run inspect the build process from within
a container similar to the one the build daemon creates:
In such cases, you may need to inspect the build process from within a
container similar to the one the build daemon creates:
@example
$ guix build -K foo
@ -14019,6 +14021,9 @@ the certificates of X.509 authorities from the directory pointed to by
the @env{SSL_CERT_DIR} environment variable (@pxref{X.509
Certificates}), unless @option{--no-check-certificate} is used.
Alternatively, @command{guix download} can also retrieve a Git
repository, possibly a specific commit, tag, or branch.
The following options are available:
@table @code
@ -14043,6 +14048,26 @@ URL, which makes you vulnerable to ``man-in-the-middle'' attacks.
@itemx -o @var{file}
Save the downloaded file to @var{file} instead of adding it to the
store.
@item --git
@itemx -g
Checkout the Git repository at the latest commit on the default branch.
@item --commit=@var{commit-or-tag}
Checkout the Git repository at @var{commit-or-tag}.
@var{commit-or-tag} can be either a tag or a commit defined in the Git
repository.
@item --branch=@var{branch}
Checkout the Git repository at @var{branch}.
The repository will be checked out at the latest commit of @var{branch},
which must be a valid branch of the Git repository.
@item --recursive
@itemx -r
Recursively clone the Git repository.
@end table
@node Invoking guix hash
@ -14294,8 +14319,7 @@ should be checked closely. If Perl is available in the store, then the
@code{corelist} utility will be used to filter core modules out of the
list of dependencies.
The command command below imports metadata for the Acme::Boolean Perl
module:
The command below imports metadata for the Acme::Boolean Perl module:
@example
guix import cpan Acme::Boolean
@ -15688,7 +15712,7 @@ Coreutils}).
When the given packages are @emph{not} in the store, @command{guix size}
reports information based on the available substitutes
(@pxref{Substitutes}). This makes it possible it to profile disk usage of
(@pxref{Substitutes}). This makes it possible to profile the disk usage of
store items that are not even on disk, only available remotely.
You can also specify several package names:
@ -16720,6 +16744,20 @@ guix package}).
This option can be repeated several times, in which case the manifests
are concatenated.
@item --expression=@var{expr}
@itemx -e @var{expr}
Consider the package @var{expr} evaluates to.
A typical use case for this option is specifying a package that is
hidden and thus cannot be referred to in the usual way, as in this
example:
@example
guix weather -e '(@@@@ (gnu packages rust) rust-bootstrap)'
@end example
This option can be repeated.
@item --coverage[=@var{count}]
@itemx -c [@var{count}]
Report on substitute coverage for packages: list packages with at least
@ -16792,7 +16830,7 @@ ChildCommand: guix offload x86_64-linux 7200 1 28800
@end example
In this example we see that @command{guix-daemon} has three clients:
@command{guix environment}, @command{guix publish}, and the Cuirass continuous
@command{guix shell}, @command{guix publish}, and the Cuirass continuous
integration tool; their process identifier (PID) is given by the
@code{ClientPID} field. The @code{SessionPID} field gives the PID of the
@command{guix-daemon} sub-process of this particular session.
@ -16902,6 +16940,7 @@ The available targets are:
- i686-linux-gnu
- i686-w64-mingw32
- mips64el-linux-gnu
- or1k-elf
- powerpc-linux-gnu
- powerpc64le-linux-gnu
- riscv64-linux-gnu
@ -17992,6 +18031,30 @@ command from the package with the same name. It relies on the
@code{dm-crypt} Linux kernel module.
@end defvar
@deffn {Procedure} luks-device-mapping-with-options [#:key-file]
Return a @code{luks-device-mapping} object, which defines LUKS block
device encryption using the @command{cryptsetup} command from the
package with the same name. It relies on the @code{dm-crypt} Linux
kernel module.
If @code{key-file} is provided, unlocking is first attempted using that
key file. This has an advantage of not requiring a password entry, so
it can be used (for example) to unlock RAID arrays automatically on
boot. If key file unlock fails, password unlock is attempted as well.
Key file is not stored in the store and needs to be available at the
given location at the time of the unlock attempt.
@lisp
;; Following definition would be equivalent to running:
;; cryptsetup open --key-file /crypto.key /dev/sdb1 data
(mapped-device
(source "/dev/sdb1)
(target "data)
(type (luks-device-mapping-with-options
#:key-file "/crypto.key")))
@end lisp
@end deffn
@defvar raid-device-mapping
This defines a RAID device, which is assembled using the @code{mdadm}
command from the package with the same name. It requires a Linux kernel
@ -19966,7 +20029,7 @@ in users, including:
Special variation of @code{pam-mount} to mount @code{XDG_RUNTIME_DIR}
@end itemize
Here is example of switching from @code{mingetty-service-type} to
Here is an example of switching from @code{mingetty-service-type} to
@code{greetd-service-type}, and how different terminals could be:
@lisp
@ -20931,8 +20994,7 @@ package, which allows NetworkManager to manage VPNs @i{via} OpenVPN.
This is the service type to run @url{https://01.org/connman,Connman},
a network connection manager.
Its value must be an
@code{connman-configuration} record as in this example:
Its value must be a @code{connman-configuration} record as in this example:
@lisp
(service connman-service-type
@ -20959,9 +21021,214 @@ networks.
@item @code{disable-vpn?} (default: @code{#f})
When true, disable connman's vpn plugin.
@item @code{general-configuration} (default: @code{(connman-general-configuration)})
Configuration serialized to @file{main.conf} and passed as @option{--config}
to @command{connmand}.
@end table
@end deftp
@c %start of fragment
@deftp {Data Type} connman-general-configuration
Available @code{connman-general-configuration} fields are:
@table @asis
@item @code{input-request-timeout} (type: maybe-number)
Set input request timeout. Default is 120 seconds. The request for
inputs like passphrase will timeout after certain amount of time. Use
this setting to increase the value in case of different user interface
designs.
@item @code{browser-launch-timeout} (type: maybe-number)
Set browser launch timeout. Default is 300 seconds. The request for
launching a browser for portal pages will timeout after certain amount
of time. Use this setting to increase the value in case of different
user interface designs.
@item @code{background-scanning?} (type: maybe-boolean)
Enable background scanning. Default is true. If wifi is disconnected,
the background scanning will follow a simple back off mechanism from 3s
up to 5 minutes. Then, it will stay in 5 minutes unless user
specifically asks for scanning through a D-Bus call. If so, the
mechanism will start again from 3s. This feature activates also the
background scanning while being connected, which is required for roaming
on wifi. When @code{background-scanning?} is false, ConnMan will not
perform any scan regardless of wifi is connected or not, unless it is
requested by the user through a D-Bus call.
@item @code{use-gateways-as-timeservers?} (type: maybe-boolean)
Assume that service gateways also function as timeservers. Default is
false.
@item @code{fallback-timeservers} (type: maybe-list)
List of Fallback timeservers. These timeservers are used for NTP sync
when there are no timeservers set by the user or by the service, and
when @code{use-gateways-as-timeservers?} is @code{#f}. These can
contain a mixed combination of fully qualified domain names, IPv4 and
IPv6 addresses.
@item @code{fallback-nameservers} (type: maybe-list)
List of fallback nameservers appended to the list of nameservers given
by the service. The nameserver entries must be in numeric format, host
names are ignored.
@item @code{default-auto-connect-technologies} (type: maybe-list)
List of technologies that are marked autoconnectable by default. The
default value for this entry when empty is @code{"ethernet"},
@code{"wifi"}, @code{"cellular"}. Services that are automatically
connected must have been set up and saved to storage beforehand.
@item @code{default-favourite-technologies} (type: maybe-list)
List of technologies that are marked favorite by default. The default
value for this entry when empty is @code{"ethernet"}. Connects to
services from this technology even if not setup and saved to storage.
@item @code{always-connected-technologies} (type: maybe-list)
List of technologies which are always connected regardless of
preferred-technologies setting (@code{auto-connect?} @code{#t}). The
default value is empty and this feature is disabled unless explicitly
enabled.
@item @code{preferred-technologies} (type: maybe-list)
List of preferred technologies from the most preferred one to the least
preferred one. Services of the listed technology type will be tried one
by one in the order given, until one of them gets connected or they are
all tried. A service of a preferred technology type in state 'ready'
will get the default route when compared to another preferred type
further down the list with state 'ready' or with a non-preferred type; a
service of a preferred technology type in state 'online' will get the
default route when compared to either a non-preferred type or a
preferred type further down in the list.
@item @code{network-interface-blacklist} (type: maybe-list)
List of blacklisted network interfaces. Found interfaces will be
compared to the list and will not be handled by ConnMan, if their first
characters match any of the list entries. Default value is
@code{"vmnet"}, @code{"vboxnet"}, @code{"virbr"}, @code{"ifb"}.
@item @code{allow-hostname-updates?} (type: maybe-boolean)
Allow ConnMan to change the system hostname. This can happen for
example if we receive DHCP hostname option. Default value is @code{#t}.
@item @code{allow-domainname-updates?} (type: maybe-boolean)
Allow connman to change the system domainname. This can happen for
example if we receive DHCP domainname option. Default value is
@code{#t}.
@item @code{single-connected-technology?} (type: maybe-boolean)
Keep only a single connected technology at any time. When a new service
is connected by the user or a better one is found according to
preferred-technologies, the new service is kept connected and all the
other previously connected services are disconnected. With this setting
it does not matter whether the previously connected services are in
'online' or 'ready' states, the newly connected service is the only one
that will be kept connected. A service connected by the user will be
used until going out of network coverage. With this setting enabled
applications will notice more network breaks than normal. Note this
options can't be used with VPNs. Default value is @code{#f}.
@item @code{tethering-technologies} (type: maybe-list)
List of technologies that are allowed to enable tethering. The default
value is @code{"wifi"}, @code{"bluetooth"}, @code{"gadget"}. Only those
technologies listed here are used for tethering. If one wants to tether
ethernet, then add @code{"ethernet"} in the list. Note that if ethernet
tethering is enabled, then a DHCP server is started on all ethernet
interfaces. Tethered ethernet should never be connected to corporate or
home network as it will disrupt normal operation of these networks. Due
to this ethernet is not tethered by default. Do not activate ethernet
tethering unless you really know what you are doing.
@item @code{persistent-tethering-mode?} (type: maybe-boolean)
Restore earlier tethering status when returning from offline mode,
re-enabling a technology, and after restarts and reboots. Default value
is @code{#f}.
@item @code{enable-6to4?} (type: maybe-boolean)
Automatically enable anycast 6to4 if possible. This is not recommended,
as the use of 6to4 will generally lead to a severe degradation of
connection quality. See RFC6343. Default value is @code{#f} (as
recommended by RFC6343 section 4.1).
@item @code{vendor-class-id} (type: maybe-string)
Set DHCP option 60 (Vendor Class ID) to the given string. This option
can be used by DHCP servers to identify specific clients without having
to rely on MAC address ranges, etc.
@item @code{enable-online-check?} (type: maybe-boolean)
Enable or disable use of HTTP GET as an online status check. When a
service is in a READY state, and is selected as default, ConnMan will
issue an HTTP GET request to verify that end-to-end connectivity is
successful. Only then the service will be transitioned to ONLINE state.
If this setting is false, the default service will remain in READY
state. Default value is @code{#t}.
@item @code{online-check-ipv4-url} (type: maybe-string)
IPv4 URL used during the online status check. Please refer to the
README for more detailed information. Default value is
@uref{http://ipv4.connman.net/online/status.html}.
@item @code{online-check-ipv6-url} (type: maybe-string)
IPv6 URL used during the online status check. Please refer to the
README for more detailed information. Default value is
@uref{http://ipv6.connman.net/online/status.html}.
@item @code{online-check-initial-interval} (type: maybe-number)
Range of intervals between two online check requests. Please refer to
the README for more detailed information. Default value is @samp{1}.
@item @code{online-check-max-interval} (type: maybe-number)
Range of intervals between two online check requests. Please refer to
the README for more detailed information. Default value is @samp{1}.
@item @code{enable-online-to-ready-transition?} (type: maybe-boolean)
WARNING: This is an experimental feature. In addition to
@code{enable-online-check} setting, enable or disable use of HTTP GET to
detect the loss of end-to-end connectivity. If this setting is
@code{#f}, when the default service transitions to ONLINE state, the
HTTP GET request is no more called until next cycle, initiated by a
transition of the default service to DISCONNECT state. If this setting
is @code{#t}, the HTTP GET request keeps being called to guarantee that
end-to-end connectivity is still successful. If not, the default
service will transition to READY state, enabling another service to
become the default one, in replacement. Default value is @code{#f}.
@item @code{auto-connect-roaming-services?} (type: maybe-boolean)
Automatically connect roaming services. This is not recommended unless
you know you won't have any billing problem. Default value is
@code{#f}.
@item @code{address-conflict-detection?} (type: maybe-boolean)
Enable or disable the implementation of IPv4 address conflict detection
according to RFC5227. ConnMan will send probe ARP packets to see if an
IPv4 address is already in use before assigning the address to an
interface. If an address conflict occurs for a statically configured
address, an IPv4LL address will be chosen instead (according to
RFC3927). If an address conflict occurs for an address offered via
DHCP, ConnMan sends a DHCP DECLINE once and for the second conflict
resorts to finding an IPv4LL address. Default value is @code{#f}.
@item @code{localtime} (type: maybe-string)
Path to localtime file. Defaults to @file{/etc/localtime}.
@item @code{regulatory-domain-follows-timezone?} (type: maybe-boolean)
Enable regulatory domain to be changed along timezone changes. With
this option set to true each time the timezone changes the first present
ISO3166 country code is read from
@file{/usr/share/zoneinfo/zone1970.tab} and set as regulatory domain
value. Default value is @code{#f}.
@item @code{resolv-conf} (type: maybe-string)
Path to resolv.conf file. If the file does not exist, but intermediate
directories exist, it will be created. If this option is not set, it
tries to write into @file{/var/run/connman/resolv.conf} if it fails
(@file{/var/run/connman} does not exist or is not writeable). If you do
not want to update resolv.conf, you can set @file{/dev/null}.
@end table
@end deftp
@cindex WPA Supplicant
@defvar wpa-supplicant-service-type
This is the service type to run @url{https://w1.fi/wpa_supplicant/,WPA
@ -21160,7 +21427,7 @@ The WiFi channel to use.
@item @code{driver} (default: @code{"nl80211"})
The driver interface type. @code{"nl80211"} is used with all Linux
mac80211 drivers. Use @code{"none"} if building hostapd as a standalone
RADIUS server that does # not control any wireless/wired driver.
RADIUS server that does not control any wireless/wired driver.
@item @code{extra-settings} (default: @code{""})
Extra settings to append as-is to the hostapd configuration file. See
@ -22422,7 +22689,7 @@ private keys in it}. See the output of @code{yggdrasil -genconf} for a
quick overview of valid keys and their default values.
@item @code{autoconf?} (default: @code{#f})
Whether to use automatic mode. Enabling it makes Yggdrasil use adynamic IP
Whether to use automatic mode. Enabling it makes Yggdrasil use a dynamic IP
and peer with IPv6 neighbors.
@item @code{log-level} (default: @code{'info})
@ -24936,7 +25203,7 @@ List of possible UUIDs:
@code{671b10b5-42c0-4696-9227-eb28d1b049d6}: BlueZ Experimental Simultaneous Central and Peripheral,
@item
@code{"15c0a148-c273-11ea-b3de-0242ac130004}: BlueZ Experimental LL privacy,
@code{15c0a148-c273-11ea-b3de-0242ac130004}: BlueZ Experimental LL privacy,
@item
@code{330859bc-7506-492d-9370-9a6f0614037f}: BlueZ Experimental Bluetooth Quality Report,
@ -25566,6 +25833,9 @@ The @code{(gnu services databases)} module provides the following services.
@subsubheading PostgreSQL
@defvar postgresql-service-type
The service type for the PostgreSQL database server. Its value should
be a valid @code{postgresql-configuration} object, documented below.
The following example describes a PostgreSQL service with the default
configuration.
@ -25592,13 +25862,14 @@ sudo -u postgres -s /bin/sh
createuser --interactive
createdb $MY_USER_LOGIN # Replace appropriately.
@end example
@end defvar
@deftp {Data Type} postgresql-configuration
Data type representing the configuration for the
@code{postgresql-service-type}.
@table @asis
@item @code{postgresql}
@item @code{postgresql} (default: @code{postgresql-10})
PostgreSQL package to use for the service.
@item @code{port} (default: @code{5432})
@ -27899,7 +28170,7 @@ Prosodyctl will also help you to import certificates from the
them. See @url{https://prosody.im/doc/letsencrypt}.
@example
prosodyctl --root cert import /etc/letsencrypt/live
prosodyctl --root cert import /etc/certs
@end example
The available configuration parameters follow. Each parameter
@ -28365,10 +28636,11 @@ services:
@subsubheading Jami
@cindex jami, service
This section describes how to configure a Jami server that can be used
to host video (or audio) conferences, among other uses. The following
@defvar jami-service-type
The service type for running Jami as a service. It takes a
@code{jami-configuration} object as a value, documented below. This
section describes how to configure a Jami server that can be used to
host video (or audio) conferences, among other uses. The following
example demonstrates how to specify Jami account archives (backups) to
be provisioned automatically:
@ -28496,6 +28768,7 @@ Account_username: f3345f2775ddfe07a4b0d95daea111d15fbc1199
The remaining actions should be self-explanatory.
The complete set of available configuration options is detailed below.
@end defvar
@c TODO: Ideally, the following fragments would be auto-generated at
@c build time, so that they needn't be manually duplicated.
@ -28592,6 +28865,12 @@ account fingerprint for a registered username.
This section describes how to set up and run a
@uref{https://mumble.info, Mumble} server (formerly known as Murmur).
@defvar mumble-server-service-type
This is the service to run a Mumble server. It takes a
@code{mumble-server-configuration} object as its value, defined below.
@end defvar
@deftp {Data Type} mumble-server-configuration
The service type for the Mumble server. An example configuration can
look like this:
@ -28602,8 +28881,8 @@ look like this:
(welcome-text
"Welcome to this Mumble server running on Guix!")
(cert-required? #t) ;disallow text password logins
(ssl-cert "/etc/letsencrypt/live/mumble.example.com/fullchain.pem")
(ssl-key "/etc/letsencrypt/live/mumble.example.com/privkey.pem")))
(ssl-cert "/etc/certs/mumble.example.com/fullchain.pem")
(ssl-key "/etc/certs/mumble.example.com/privkey.pem")))
@end lisp
After reconfiguring your system, you can manually set the mumble-server
@ -28721,12 +29000,12 @@ Should logged ips be obfuscated to protect the privacy of users.
File name of the SSL/TLS certificate used for encrypted connections.
@lisp
(ssl-cert "/etc/letsencrypt/live/example.com/fullchain.pem")
(ssl-cert "/etc/certs/example.com/fullchain.pem")
@end lisp
@item @code{ssl-key} (default: @code{#f})
Filepath to the ssl private key used for encrypted connections.
@lisp
(ssl-key "/etc/letsencrypt/live/example.com/privkey.pem")
(ssl-key "/etc/certs/example.com/privkey.pem")
@end lisp
@item @code{ssl-dh-params} (default: @code{#f})
@ -31081,7 +31360,7 @@ the configuration.
(httpd-virtualhost
"*:80"
(list (string-join '("ServerName www.example.com"
"DocumentRoot /srv/http/www.example.com")
"DocumentRoot /srv/http/www.example.com")
"\n")))))
@end lisp
@end defvar
@ -32318,21 +32597,13 @@ A service type for the @code{certbot} Let's Encrypt client. Its value
must be a @code{certbot-configuration} record as in this example:
@lisp
(define %certbot-deploy-hook
(program-file "certbot-deploy-hook.scm"
(with-imported-modules '((gnu services herd))
#~(begin
(use-modules (gnu services herd))
(with-shepherd-action 'nginx ('reload) result result)))))
(service certbot-service-type
(certbot-configuration
(email "foo@@example.net")
(certificates
(list
(certificate-configuration
(domains '("example.net" "www.example.net"))
(deploy-hook %certbot-deploy-hook))
(domains '("example.net" "www.example.net")))
(certificate-configuration
(domains '("bar.example.net")))))))
@end lisp
@ -32446,12 +32717,18 @@ certificates and keys; the shell variable @code{$RENEWED_DOMAINS} will
contain a space-delimited list of renewed certificate domains (for
example, @samp{"example.com www.example.com"}.
@item @code{start-self-signed?} (default: @code{#t})
Whether to generate an initial self-signed certificate during system
activation. This option is particularly useful to allow @code{nginx} to
start before @code{certbot} has run, because @code{certbot} relies on
@code{nginx} running to perform HTTP challenges.
@end table
@end deftp
For each @code{certificate-configuration}, the certificate is saved to
@code{/etc/letsencrypt/live/@var{name}/fullchain.pem} and the key is
saved to @code{/etc/letsencrypt/live/@var{name}/privkey.pem}.
@code{/etc/certs/@var{name}/fullchain.pem} and the key is
saved to @code{/etc/certs/@var{name}/privkey.pem}.
@node DNS Services
@subsection DNS Services
@cindex DNS (domain name system)
@ -35159,6 +35436,7 @@ Owner of the @command{mympd} process.
The default @code{%mympd-user} is a system user with the name ``mympd'',
who is a part of the group @var{group} (see below).
@item @code{group} (default: @code{%mympd-group}) (type: user-group)
Owner group of the @command{mympd} process.
@ -37136,9 +37414,9 @@ serve the default @file{/srv/git} over HTTPS might be:
(listen '("443 ssl"))
(server-name "git.my-host.org")
(ssl-certificate
"/etc/letsencrypt/live/git.my-host.org/fullchain.pem")
"/etc/certs/git.my-host.org/fullchain.pem")
(ssl-certificate-key
"/etc/letsencrypt/live/git.my-host.org/privkey.pem")
"/etc/certs/git.my-host.org/privkey.pem")
(locations
(list
(git-http-nginx-location-configuration
@ -38263,9 +38541,9 @@ footers.
(nginx-server-block
(nginx-server-configuration
(ssl-certificate
"/etc/letsencrypt/live/myweb.site/fullchain.pem")
"/etc/certs/myweb.site/fullchain.pem")
(ssl-certificate-key
"/etc/letsencrypt/live/myweb.site/privkey.pem")
"/etc/certs/myweb.site/privkey.pem")
(listen '("443 ssl http2" "[::]:443 ssl http2"))
(locations
(list
@ -40268,7 +40546,7 @@ Backend to use to detect changes in the @code{log-path}. The default is
@file{/etc/fail2ban/jail.conf} file of the @code{fail2ban} package.
@item @code{max-retry} (type: maybe-integer)
The number of failures before a host get banned (e.g. @code{(max-retry
The number of failures before a host gets banned (e.g. @code{(max-retry
5)}).
@item @code{max-matches} (type: maybe-integer)
@ -41080,6 +41358,55 @@ This option in enabled by default. In some cases involving the
@code{u-boot} bootloader, where the device tree has already been loaded
in RAM, it can be handy to disable the option by setting it to
@code{#f}.
@item @code{extra-initrd} (default: @code{#f})
File name of an additional initrd to load during the boot. It may or
may not point to a file in the store, but the main use case is for
out-of-store files containing secrets.
In order to be able to provide decryption keys for the LUKS device, they
need to be available in the initial ram disk. However they cannot be
stored inside the usual initrd, since it is stored in the store and
being a world-readable (as files in the store are) is not a desired
property for a initrd containing decryption keys. You can therefore use
this field to instruct GRUB to also load a manually created initrd not
stored in the store.
For any use case not involving secrets, you should use regular initrd
(@pxref{operating-system Reference, @code{initrd}}) instead.
Suitable image can be created for example like this:
@example
echo /key-file.bin | cpio -oH newc >/key-file.cpio
chmod 0000 /key-file.cpio
@end example
After it is created, you can use it in this manner:
@lisp
;; Operating system with encrypted boot partition
(operating-system
...
(bootloader (bootloader-configuration
(bootloader grub-efi-bootloader)
(targets '("/boot/efi"))
;; Load the initrd with a key file
(extra-initrd "/key-file.cpio")))
(mapped-devices
(list (mapped-device
(source (uuid "12345678-1234-1234-1234-123456789abc"))
(target "my-root")
(type (luks-device-mapping-with-options
;; And use it to unlock the root device
#:key-file "/key-file.bin"))))))
@end lisp
Be careful when using this option, since pointing to a file that is not
readable by the grub while booting will cause the boot to fail and
require a manual edit of the initrd line in the grub menu.
Currently only supported by GRUB.
@end table
@end deftp
@ -41180,7 +41507,7 @@ Of course, these options can be combined:
'("console=com0" "noide")
@end lisp
+@item @code{multiboot-modules} (default: @code{'()})
@item @code{multiboot-modules} (default: @code{'()})
The list of commands for loading Multiboot modules. For example:
@lisp
@ -42849,6 +43176,15 @@ shepherd, The GNU Shepherd Manual}, for more info.
Whether to restart the service when it stops, for instance when the
underlying process dies.
@item @code{respawn-limit} (default: @code{#f})
Set a limit on how many times and how frequently a service may be
restarted by Shepherd before it is disabled. @xref{Defining
Services,,, shepherd, The GNU Shepherd Manual}, for details.
@item @code{respawn-delay} (default: @code{#f})
When true, this is the delay in seconds before restarting a failed
service.
@item @code{start}
@itemx @code{stop} (default: @code{#~(const #f)})
The @code{start} and @code{stop} fields refer to the Shepherd's
@ -43081,7 +43417,7 @@ A clause has the following form:
the generated record.
@var{type-decl} is either @code{@var{type}} for fields that require a
value to be set or @code{(@var{type} @var{default})} otherwise.
value to be set or @code{(@var{type} @var{default-value})} otherwise.
@var{type} is the type of the value corresponding to @var{field-name};
since Guile is untyped, a predicate
@ -43922,6 +44258,116 @@ to use alternative services to implement more advanced use cases like
read-only home. Feel free to experiment and share your results.
@end defvar
@cindex dot files in Guix Home
It is often the case that Guix Home users already have a setup for versioning
their user configuration files (also known as @emph{dot files}) in a single
directory, and some way of automatically deploy changes to their user home.
@cindex Stow-like dot file management
The @code{home-dotfiles-service-type} from @code{(gnu home services dotfiles)}
is designed to ease the way into using Guix Home for this kind of users,
allowing them to point the service to their dotfiles directory, which must
follow the layout suggested by
@uref{https://www.gnu.org/software/stow/, GNU Stow},
and have their dotfiles automatically deployed to their user home, without
migrating them to Guix native configurations.
The dotfiles directory layout is expected to be structured as follows. Please
keep in mind that it is advisable to keep your dotfiles directories under
version control, for example in the same repository where you'd track your
Guix Home configuration.
@example
~$ tree -a ./dotfiles/
dotfiles/
├── git
│ └── .gitconfig
├── gpg
│ └── .gnupg
│ ├── gpg-agent.conf
│ └── gpg.conf
├── guile
│ └── .guile
├── guix
│ └── .config
│ └── guix
│ └── channels.scm
├── nix
│ ├── .config
│ │ └── nixpkgs
│ │ └── config.nix
│ └── .nix-channels
├── tmux
│ └── .tmux.conf
└── vim
└── .vimrc
13 directories, 10 files
@end example
For an informal specification please refer to the Stow manual
(@pxref{Top,,, stow, Introduction}). A suitable configuration would then
be:
@lisp
(home-environment
;; @dots{}
(services
(service home-dotfiles-service-type
(home-dotfiles-configuration
(directories (list "./dotfiles"))))))
@end lisp
The expected home directory state would then be:
@example
.
├── .config
│ ├── guix
│ │ └── channels.scm
│ └── nixpkgs
│ └── config.nix
├── .gitconfig
├── .gnupg
│ ├── gpg-agent.conf
│ └── gpg.conf
├── .guile
├── .nix-channels
├── .tmux.conf
└── .vimrc
@end example
@defvar home-dotfiles-service-type
Return a service which is very similiar to @code{home-files-service-type}
(and actually extends it), but designed to ease the way into using Guix
Home for users that already track their dotfiles under some kind of version
control. This service allows users to point Guix Home to their dotfiles
directory and have their files automatically deployed to their home directory
just like Stow would, without migrating all of their dotfiles to Guix native
configurations.
@end defvar
@deftp {Data Type} home-dotfiles-configuration
Available @code{home-dotfiles-configuration} fields are:
@table @asis
@item @code{source-directory} (default: @code{(current-source-directory)})
The path where dotfile directories are resolved. By default dotfile directories
are resolved relative the source location where
@code{home-dotfiles-configuration} appears.
@item @code{directories} (type: list-of-strings)
The list of dotfiles directories where @code{home-dotfiles-service-type} will
look for application dotfiles.
@item @code{exclude} (default: @code{'(".*~" ".*\\.swp" "\\.git" "\\.gitignore")})
The list of file patterns @code{home-dotfiles-service-type} will exclude while
visiting each one of the @code{directories}.
@end table
@end deftp
@defvar home-xdg-configuration-files-service-type
The service is very similar to @code{home-files-service-type} (and
actually extends it), but used for defining files, which will go to
@ -44599,19 +45045,19 @@ running on this machine, then it @emph{may} take this file into account:
this is what @command{sshd} does by default, but be aware that it can
also be configured to ignore it.
@item @code{add-keys-to-agent} (default: @code{``no''})
@item @code{add-keys-to-agent} (default: @code{no})
This string specifies whether keys should be automatically added to a
running ssh-agent. If this option is set to @code{``yes''} and a key is
running ssh-agent. If this option is set to @code{yes} and a key is
loaded from a file, the key and its passphrase are added to the agent
with the default lifetime, as if by @code{ssh-add}. If this option is
set to @code{``ask''}, @code{ssh} will require confirmation. If this
option is set to @code{``confirm''}, each use of the key must be
confirmed. If this option is set to @code{``no''}, no keys are added to
set to @code{ask}, @code{ssh} will require confirmation. If this
option is set to @code{confirm}, each use of the key must be
confirmed. If this option is set to @code{no}, no keys are added to
the agent. Alternately, this option may be specified as a time interval
to specify the key's lifetime in @code{ssh-agent}, after which it will
automatically be removed. The argument must be @code{``no''},
@code{``yes''}, @code{``confirm''} (optionally followed by a time
interval), @code{``ask''} or a time interval.
automatically be removed. The argument must be @code{no},
@code{yes}, @code{confirm} (optionally followed by a time
interval), @code{ask} or a time interval.
@end table
@end deftp
@ -46128,6 +46574,11 @@ Platform targeting AVR CPUs without an operating system, with run-time support
from AVR Libc.
@end defvar
@defvar or1k-elf
Platform targeting OpenRISC 1000 CPU without an operating system and without a
C standard library.
@end defvar
@node System Images
@chapter Creating System Images
@ -46687,7 +47138,7 @@ missing.
@node Separate Debug Info
@section Separate Debug Info
The problem with debugging information is that is takes up a fair amount
The problem with debugging information is that it takes up a fair amount
of disk space. For example, debugging information for the GNU C Library
weighs in at more than 60 MiB@. Thus, as a user, keeping all the
debugging info of all the installed programs is usually not an option.
@ -47170,7 +47621,7 @@ traditional bootstrap of the rest of the Guix System.
@c ./pre-inst-env guix graph -e '(@@ (gnu packages commencement) gcc-core-mesboot0)' | sed -re 's,((bootstrap-seeds|guile-bootstrap).*shape =) box,\1 ellipse,' > doc/images/gcc-core-mesboot0-graph.dot
@image{images/gcc-core-mesboot0-graph,6in,,Dependency graph of gcc-core-mesboot0}
Work is ongoing to to bring these bootstraps to the @code{arm-linux} and
Work is ongoing to bring these bootstraps to the @code{arm-linux} and
@code{aarch64-linux} architectures and to the Hurd.
If you are interested, join us on @samp{#bootstrappable} on the Libera.Chat
@ -47341,7 +47792,7 @@ bootstrap GCC with a sequence of assemblers, interpreters, and compilers
of increasing complexity, which could be built from source starting from
a simple and auditable assembler.
Our first major achievement is the replacement of of GCC, the GNU C Library
Our first major achievement is the replacement of GCC, the GNU C Library
and Binutils by MesCC-Tools (a simple hex linker and macro assembler) and Mes
(@pxref{Top, GNU Mes Reference Manual,, mes, GNU Mes}, a Scheme interpreter
and C compiler in Scheme). Neither MesCC-Tools nor Mes can be fully

View File

@ -20,6 +20,7 @@
[b4]
attestation-check-dkim = off
attestation-policy = off
shazam-am-flags = --signoff --3way
linkmask = https://yhetil.org/guix/%s
linktrailermask = https://yhetil.org/guix/%s
midmask = https://yhetil.org/guix/%s

View File

@ -19,6 +19,7 @@
;; Copyright © 2021, 2023 Jonathan Brielmaier <jonathan.brielmaier@web.de>
;; Copyright © 2022 Thiago Jung Bauermann <bauermann@kolabnow.com>
;; Copyright © 2024 Oleg Pykhalov <go.wigust@gmail.com>
;; Copyright © 2024 Wilko Meyer <w@wmeyer.eu>
;;
;; Copying and distribution of this file, with or without modification, are
;; permitted in any medium without royalty provided the copyright notice and
@ -27,6 +28,18 @@
(channel-news
(version 0)
(entry (commit "10a193596368443f441077525ebbddf787d91e4b")
(title
(en "Linux-libre 4.14 removed due to end of upstream support")
(de "Linux-libre 4.14 wurde entfernt"))
(body
(en "The linux-libre 4.14 kernel series has reached the end of
its life, and is no longer supported upstream. For this
reason, it has been removed from GNU Guix.")
(de "Die @code{linux-libre} 4.14-Versionsreihe hat ihr
Supportende erreicht und wird nicht mehr unterstützt (end of life). Daher ist die
Versionsreihe aus GNU Guix entfernt worden.")))
(entry (commit "519e1e3eb88ec532fc83ebb742d9919269b57c87")
(title
(de "Neue Option @samp{--max-layers=N} für den Befehl @command{guix pack}")

View File

@ -299,10 +299,16 @@ asdf-build-system."
(define-team go
(team 'go
#:name "Go team"
#:scope (list "gnu/packages/golang.scm"
#:scope (list "gnu/packages/configuration-management.scm"
"gnu/packages/golang-check.scm"
"guix/build/go-build-system.scm"
"gnu/packages/golang-crypto.scm"
"gnu/packages/golang-web.scm"
"gnu/packages/golang-xyz.scm"
"gnu/packages/golang.scm"
"gnu/packages/syncthing.scm"
"gnu/packages/terraform.scm"
"guix/build-system/go.scm"
"guix/build/go-build-system.scm"
"guix/import/go.scm"
"guix/scripts/import/go.scm"
"tests/go.scm")))
@ -592,7 +598,7 @@ GLib/GIO, GTK, GStreamer and Webkit."
(define-member (person "Efraim Flashner"
"efraim@flashner.co.il")
embedded bootstrap julia rust science)
embedded bootstrap julia rust)
(define-member (person "jgart"
"jgart@dismail.de")
@ -706,6 +712,10 @@ GLib/GIO, GTK, GStreamer and Webkit."
"vivien@planete-kraus.eu")
gnome)
(define-member (person "Wilko Meyer"
"w@wmeyer.eu")
kernel)
(define (find-team name)
(or (hash-ref %teams (string->symbol name))

View File

@ -6,6 +6,7 @@
;;; Copyright © 2020 Jan (janneke) Nieuwenhuizen <janneke@gnu.org>
;;; Copyright © 2022 Josselin Poiret <dev@jpoiret.xyz>
;;; Copyright © 2022 Reza Alizadeh Majd <r.majd@pantherx.org>
;;; Copyright © 2024 Tomas Volf <~@wolfsden.cz>
;;;
;;; This file is part of GNU Guix.
;;;
@ -77,6 +78,7 @@
bootloader-configuration-serial-unit
bootloader-configuration-serial-speed
bootloader-configuration-device-tree-support?
bootloader-configuration-extra-initrd
%bootloaders
lookup-bootloader-by-name
@ -279,7 +281,9 @@ instead~%")))
(serial-speed bootloader-configuration-serial-speed
(default #f)) ;integer | #f
(device-tree-support? bootloader-configuration-device-tree-support?
(default #t))) ;boolean
(default #t)) ;boolean
(extra-initrd bootloader-configuration-extra-initrd
(default #f))) ;string | #f
(define-deprecated (bootloader-configuration-target config)
bootloader-configuration-targets

View File

@ -9,6 +9,7 @@
;;; Copyright © 2020 Stefan <stefan-guix@vodafonemail.de>
;;; Copyright © 2022 Karl Hallsby <karl@hallsby.com>
;;; Copyright © 2022 Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>
;;; Copyright © 2024 Tomas Volf <~@wolfsden.cz>
;;;
;;; This file is part of GNU Guix.
;;;
@ -386,7 +387,8 @@ when booting a root file system on a Btrfs subvolume."
store-directory-prefix))
(initrd (normalize-file (menu-entry-initrd entry)
device-mount-point
store-directory-prefix)))
store-directory-prefix))
(extra-initrd (bootloader-configuration-extra-initrd config)))
;; Here DEVICE is the store and DEVICE-MOUNT-POINT is its mount point.
;; Use the right file names for LINUX and INITRD in case
;; DEVICE-MOUNT-POINT is not "/", meaning that the store is on a
@ -397,11 +399,12 @@ when booting a root file system on a Btrfs subvolume."
#~(format port "menuentry ~s {
~a
linux ~a ~a
initrd ~a
initrd ~a ~a
}~%"
#$label
#$(grub-root-search device linux)
#$linux (string-join (list #$@arguments))
(or #$extra-initrd "")
#$initrd)))
(multiboot-kernel
(let* ((kernel (menu-entry-multiboot-kernel entry))

View File

@ -191,6 +191,7 @@ SYSTEM."
(define (pointless? target)
;; Return #t if it makes no sense to cross-build to TARGET from SYSTEM.
(or (string=? target "avr") ; Nothing for AVR at this time.
(string=? target "or1k-elf") ;; Nothing for or1k-elf at this time.
(match system
((or "x86_64-linux" "i686-linux")
(if (string-contains target "mingw")

View File

@ -37,6 +37,7 @@
#:use-module (guix memoization)
#:use-module (srfi srfi-1)
#:use-module (srfi srfi-9)
#:use-module (srfi srfi-34)
#:use-module (ice-9 match)
#:use-module (ice-9 vlist)

View File

@ -0,0 +1,117 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2024 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2024 Giacomo Leidi <goodoldpaul@autistici.org>
;;;
;;; This file is part of GNU Guix.
;;;
;;; GNU Guix is free software; you can redistribute it and/or modify it
;;; under the terms of the GNU General Public License as published by
;;; the Free Software Foundation; either version 3 of the License, or (at
;;; your option) any later version.
;;;
;;; GNU Guix is distributed in the hope that it will be useful, but
;;; WITHOUT ANY WARRANTY; without even the implied warranty of
;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
;;; GNU General Public License for more details.
;;;
;;; You should have received a copy of the GNU General Public License
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
(define-module (gnu home services dotfiles)
#:use-module (gnu home services)
#:use-module (gnu services)
#:autoload (guix build utils) (find-files)
#:use-module (guix gexp)
#:use-module (guix records)
#:use-module ((guix utils) #:select (current-source-directory))
#:use-module (srfi srfi-1)
#:use-module (ice-9 ftw)
#:use-module (ice-9 regex)
#:export (home-dotfiles-service-type
home-dotfiles-configuration
home-dotfiles-configuration?
home-dotfiles-configuration-source-directory
home-dotfiles-configuration-directories
home-dotfiles-configuration-excluded))
(define %home-dotfiles-excluded
'(".*~"
".*\\.swp"
"\\.git"
"\\.gitignore"))
(define-record-type* <home-dotfiles-configuration>
home-dotfiles-configuration make-home-dotfiles-configuration
home-dotfiles-configuration?
(source-directory home-dotfiles-configuration-source-directory
(default (current-source-directory))
(innate))
(directories home-dotfiles-configuration-directories ;list of strings
(default '()))
(excluded home-dotfiles-configuration-excluded ;list of strings
(default %home-dotfiles-excluded)))
(define (import-dotfiles directory files)
"Return a list of objects compatible with @code{home-files-service-type}'s
value. Each object is a pair where the first element is the relative path
of a file and the second is a gexp representing the file content. Objects are
generated by recursively visiting DIRECTORY and mapping its contents to the
user's home directory, excluding files that match any of the patterns in EXCLUDED."
(define (strip file)
(string-drop file (+ 1 (string-length directory))))
(define (format file)
;; Remove from FILE characters that cannot be used in the store.
(string-append
"home-dotfiles-"
(string-map (lambda (chr)
(if (and (char-set-contains? char-set:ascii chr)
(char-set-contains? char-set:graphic chr)
(not (memv chr '(#\. #\/ #\space))))
chr
#\-))
file)))
(map (lambda (file)
(let ((stripped (strip file)))
(list stripped
(local-file file (format stripped)
#:recursive? #t))))
files))
(define (home-dotfiles-configuration->files config)
"Return a list of objects compatible with @code{home-files-service-type}'s
value, generated following GNU Stow's algorithm for each of the
directories in CONFIG, excluding files that match any of the patterns configured."
(define excluded
(home-dotfiles-configuration-excluded config))
(define exclusion-rx
(make-regexp (string-append "^.*(" (string-join excluded "|") ")$")))
(define (directory-contents directory)
(find-files directory
(lambda (file stat)
(not (regexp-exec exclusion-rx
(basename file))))))
(define (resolve directory)
;; Resolve DIRECTORY relative to the 'source-directory' field of CONFIG.
(if (string-prefix? "/" directory)
directory
(in-vicinity (home-dotfiles-configuration-source-directory config)
directory)))
(append-map (lambda (directory)
(let* ((directory (resolve directory))
(contents (directory-contents directory)))
(import-dotfiles directory contents)))
(home-dotfiles-configuration-directories config)))
(define-public home-dotfiles-service-type
(service-type (name 'home-dotfiles)
(extensions
(list (service-extension home-files-service-type
home-dotfiles-configuration->files)))
(default-value (home-dotfiles-configuration))
(description "Files that will be put in the user's home directory
following GNU Stow's algorithm, and further processed during activation.")))

View File

@ -81,10 +81,7 @@ of fontconfig's fonts.conf file."
add-fontconfig-config-file)
(service-extension
home-run-on-change-service-type
regenerate-font-cache-gexp)
(service-extension
home-profile-service-type
(const (list fontconfig)))))
regenerate-font-cache-gexp)))
(compose concatenate)
(extend append)
(default-value '("~/.guix-home/profile/share/fonts"))

View File

@ -20,7 +20,7 @@
(define-module (gnu home services shells)
#:use-module (gnu services configuration)
#:autoload (gnu system shadow) (%default-bashrc)
#:autoload (gnu system shadow) (%default-bashrc %default-zprofile)
#:use-module (gnu home services utils)
#:use-module (gnu home services)
#:use-module (gnu packages shells)
@ -189,12 +189,8 @@ another process for example)."))
(define (zsh-file-zprofile config)
(mixed-text-file
"zprofile"
(plain-file-content %default-zprofile)
"\
# Set up the system, user profile, and related variables.
source /etc/profile
# Set up the home environment profile.
source ~/.profile
# It's only necessary if zsh is a login shell, otherwise profiles will
# be already sourced by bash
"

View File

@ -1,6 +1,6 @@
# GNU Guix --- Functional package management for GNU
# Copyright © 2012-2024 Ludovic Courtès <ludo@gnu.org>
# Copyright © 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2020, 2022, 2023 Andreas Enge <andreas@enge.fr>
# Copyright © 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2020, 2022, 2023, 2024 Andreas Enge <andreas@enge.fr>
# Copyright © 2016 Mathieu Lirzin <mthl@gnu.org>
# Copyright © 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2020, 2021 Mark H Weaver <mhw@netris.org>
# Copyright © 2016 Chris Marusich <cmmarusich@gmail.com>
@ -13,14 +13,14 @@
# Copyright © 2016-2023 Efraim Flashner <efraim@flashner.co.il>
# Copyright © 2016, 2017, 2018, 2019, 2020, 2021, 2022, 2023 Jan (janneke) Nieuwenhuizen <janneke@gnu.org>
# Copyright © 2017, 2018, 2019, 2020 Tobias Geerinckx-Rice <me@tobias.gr>
# Copyright © 2017, 2018, 2023 Clément Lassieur <clement@lassieur.org>
# Copyright © 2017, 2018, 2023, 2024 Clément Lassieur <clement@lassieur.org>
# Copyright © 2017, 2020 Mathieu Othacehe <m.othacehe@gmail.com>
# Copyright © 2017, 2018, 2019 Gábor Boskovits <boskovits@gmail.com>
# Copyright © 2018 Amirouche Boubekki <amirouche@hypermove.net>
# Copyright © 2018, 2019, 2020, 2021, 2022 Oleg Pykhalov <go.wigust@gmail.com>
# Copyright © 2018 Stefan Stefanović <stefanx2ovic@gmail.com>
# Copyright © 2018, 2020, 2021, 2022, 2023 Maxim Cournoyer <maxim.cournoyer@gmail.com>
# Copyright © 2019, 2020, 2021, 2022, 2044 Guillaume Le Vaillant <glv@posteo.net>
# Copyright © 2018, 2020, 2021, 2022, 2023, 2024 Maxim Cournoyer <maxim.cournoyer@gmail.com>
# Copyright © 2019, 2020, 2021, 2022, 2024 Guillaume Le Vaillant <glv@posteo.net>
# Copyright © 2019, 2020 John Soo <jsoo1@asu.edu>
# Copyright © 2019 Jonathan Brielmaier <jonathan.brielmaier@web.de>
# Copyright © 2019 Evan Straw <evan.straw99@gmail.com>
@ -97,6 +97,7 @@ GNU_SYSTEM_MODULES = \
%D%/home/services.scm \
%D%/home/services/desktop.scm \
%D%/home/services/dict.scm \
%D%/home/services/dotfiles.scm \
%D%/home/services/symlink-manager.scm \
%D%/home/services/fontutils.scm \
%D%/home/services/gnupg.scm \
@ -308,7 +309,9 @@ GNU_SYSTEM_MODULES = \
%D%/packages/gobby.scm \
%D%/packages/golang.scm \
%D%/packages/golang-check.scm \
%D%/packages/golang-crypto.scm \
%D%/packages/golang-web.scm \
%D%/packages/golang-xyz.scm \
%D%/packages/gperf.scm \
%D%/packages/gpodder.scm \
%D%/packages/gps.scm \
@ -544,6 +547,7 @@ GNU_SYSTEM_MODULES = \
%D%/packages/toys.scm \
%D%/packages/tryton.scm \
%D%/packages/qt.scm \
%D%/packages/quantum.scm \
%D%/packages/racket.scm \
%D%/packages/radio.scm \
%D%/packages/ragel.scm \
@ -630,6 +634,7 @@ GNU_SYSTEM_MODULES = \
%D%/packages/tls.scm \
%D%/packages/tmux.scm \
%D%/packages/toolkits.scm \
%D%/packages/tor-browsers.scm \
%D%/packages/tor.scm \
%D%/packages/tree-sitter.scm \
%D%/packages/tv.scm \
@ -1118,25 +1123,25 @@ dist_patch_DATA = \
%D%/packages/patches/emacs-deferred-fix-number-of-arguments.patch \
%D%/packages/patches/emacs-elpy-dup-test-name.patch \
%D%/packages/patches/emacs-exec-path.patch \
%D%/packages/patches/emacs-git-email-missing-parens.patch \
%D%/packages/patches/emacs-fix-scheme-indent-function.patch \
%D%/packages/patches/emacs-json-reformat-fix-tests.patch \
%D%/packages/patches/emacs-git-email-missing-parens.patch \
%D%/packages/patches/emacs-helpful-fix-tests.patch \
%D%/packages/patches/emacs-highlight-stages-add-gexp.patch \
%D%/packages/patches/emacs-json-reformat-fix-tests.patch \
%D%/packages/patches/emacs-kv-fix-tests.patch \
%D%/packages/patches/emacs-lispy-fix-thread-last-test.patch \
%D%/packages/patches/emacs-native-comp-driver-options.patch \
%D%/packages/patches/emacs-next-exec-path.patch \
%D%/packages/patches/emacs-next-native-comp-driver-options.patch \
%D%/packages/patches/emacs-pasp-mode-quote-file-names.patch \
%D%/packages/patches/emacs-pgtk-super-key-fix.patch \
%D%/packages/patches/emacs-polymode-fix-lexical-variable-error.patch \
%D%/packages/patches/emacs-shx-byte-compilation-test.patch \
%D%/packages/patches/emacs-telega-path-placeholder.patch \
%D%/packages/patches/emacs-telega-test-env.patch \
%D%/packages/patches/emacs-wordnut-require-adaptive-wrap.patch \
%D%/packages/patches/emacs-yasnippet-fix-empty-snippet-next.patch \
%D%/packages/patches/emacs-yasnippet-fix-tests.patch \
%D%/packages/patches/emacs-kv-fix-tests.patch \
%D%/packages/patches/emacs-pgtk-super-key-fix.patch \
%D%/packages/patches/emacs-xelb-ignore-length-element.patch \
%D%/packages/patches/emacs-yasnippet-fix-empty-snippet-next.patch \
%D%/packages/patches/enblend-enfuse-reproducible.patch \
%D%/packages/patches/enjarify-setup-py.patch \
%D%/packages/patches/enlightenment-fix-setuid-path.patch \
@ -1652,6 +1657,7 @@ dist_patch_DATA = \
%D%/packages/patches/lua-liblua-so.patch \
%D%/packages/patches/lua-5.4-pkgconfig.patch \
%D%/packages/patches/lua-5.4-liblua-so.patch \
%D%/packages/patches/lugaru-fix-sound.patch \
%D%/packages/patches/luit-posix.patch \
%D%/packages/patches/mactelnet-remove-init.patch \
%D%/packages/patches/mailutils-variable-lookup.patch \
@ -1719,7 +1725,6 @@ dist_patch_DATA = \
%D%/packages/patches/network-manager-meson.patch \
%D%/packages/patches/nginx-socket-cloexec.patch \
%D%/packages/patches/nnpack-system-libraries.patch \
%D%/packages/patches/notmuch-emacs-test-output.patch \
%D%/packages/patches/nsis-env-passthru.patch \
%D%/packages/patches/nss-getcwd-nonnull.patch \
%D%/packages/patches/nss-increase-test-timeout.patch \
@ -1761,6 +1766,7 @@ dist_patch_DATA = \
%D%/packages/patches/openjdk-15-xcursor-no-dynamic.patch \
%D%/packages/patches/openjdk-21-fix-rpath.patch \
%D%/packages/patches/openmpi-mtl-priorities.patch \
%D%/packages/patches/openssh-gcc-13-ppc64le-fzero-call-used-regs.patch \
%D%/packages/patches/openssh-trust-guix-store-directory.patch \
%D%/packages/patches/openresolv-restartcmd-guix.patch \
%D%/packages/patches/openrgb-unbundle-hueplusplus.patch \
@ -1802,6 +1808,7 @@ dist_patch_DATA = \
%D%/packages/patches/python-random2-getrandbits-test.patch \
%D%/packages/patches/python-poppler-qt5-fix-build.patch \
%D%/packages/patches/python-pyreadstat-link-libiconv.patch \
%D%/packages/patches/python-pyls-black-41.patch \
%D%/packages/patches/python-pypdf-annotate-tests-appropriately.patch \
%D%/packages/patches/python-pytorch2-system-libraries.patch \
%D%/packages/patches/python-sip-include-dirs.patch \
@ -1916,7 +1923,6 @@ dist_patch_DATA = \
%D%/packages/patches/python-piexif-fix-tests-with-pillow-7.2.patch \
%D%/packages/patches/python-pillow-CVE-2022-45199.patch \
%D%/packages/patches/python-pyfakefs-remove-bad-test.patch \
%D%/packages/patches/python-flint-includes.patch \
%D%/packages/patches/python-libxml2-utf8.patch \
%D%/packages/patches/python-memcached-syntax-warnings.patch \
%D%/packages/patches/python-mox3-python3.6-compat.patch \
@ -1932,6 +1938,7 @@ dist_patch_DATA = \
%D%/packages/patches/python-robotframework-atest.patch \
%D%/packages/patches/python-robotframework-source-date-epoch.patch \
%D%/packages/patches/python-robotframework-sshlibrary-rf5-compat.patch \
%D%/packages/patches/python-scikit-bio-1887.patch \
%D%/packages/patches/python-scikit-optimize-1148.patch \
%D%/packages/patches/python-scikit-optimize-1150.patch \
%D%/packages/patches/python-typing-inspect-fix.patch \
@ -1962,7 +1969,6 @@ dist_patch_DATA = \
%D%/packages/patches/qtwayland-cleanup-callbacks.patch \
%D%/packages/patches/ragel-char-signedness.patch \
%D%/packages/patches/randomjungle-disable-static-build.patch \
%D%/packages/patches/range-v3-build-with-gcc10.patch \
%D%/packages/patches/raptor2-heap-overflow.patch \
%D%/packages/patches/ratpoints-sturm_and_rp_private.patch \
%D%/packages/patches/ratpoison-shell.patch \
@ -1972,6 +1978,7 @@ dist_patch_DATA = \
%D%/packages/patches/renpy-use-system-fribidi.patch \
%D%/packages/patches/reposurgeon-add-missing-docbook-files.patch \
%D%/packages/patches/r-httpuv-1.6.6-unvendor-libuv.patch \
%D%/packages/patches/r-sapa-lapack.patch \
%D%/packages/patches/ri-li-modernize_cpp.patch \
%D%/packages/patches/ripperx-missing-file.patch \
%D%/packages/patches/rpcbind-CVE-2017-8779.patch \
@ -2009,6 +2016,7 @@ dist_patch_DATA = \
%D%/packages/patches/rust-wl-clipboard-rs-newer-wl.patch \
%D%/packages/patches/rw-igraph-0.10.patch \
%D%/packages/patches/rxvt-unicode-fix-cursor-position.patch \
%D%/packages/patches/s7-flint-3.patch \
%D%/packages/patches/sbc-fix-build-non-x86.patch \
%D%/packages/patches/sbcl-aserve-add-HTML-5-elements.patch \
%D%/packages/patches/sbcl-aserve-fix-rfe12668.patch \
@ -2101,8 +2109,8 @@ dist_patch_DATA = \
%D%/packages/patches/tuxpaint-stamps-path.patch \
%D%/packages/patches/twinkle-bcg729.patch \
%D%/packages/patches/u-boot-allow-disabling-openssl.patch \
%D%/packages/patches/u-boot-build-without-libcrypto.patch \
%D%/packages/patches/u-boot-nintendo-nes-serial.patch \
%D%/packages/patches/u-boot-patman-change-id.patch \
%D%/packages/patches/u-boot-rockchip-inno-usb.patch \
%D%/packages/patches/ucx-tcp-iface-ioctl.patch \
%D%/packages/patches/ultrastar-deluxe-no-freesans.patch \

View File

@ -12,7 +12,7 @@
;;; Copyright © 2020 Björn Höfling <bjoern.hoefling@bjoernhoefling.de>
;;; Copyright © 2020 Jakub Kądziołka <kuba@kadziolka.net>
;;; Copyright © 2020 Vincent Legoll <vincent.legoll@gmail.com>
;;; Copyright © 2020, 2021, 2023 Vinicius Monego <monego@posteo.net>
;;; Copyright © 2020, 2021, 2023, 2024 Vinicius Monego <monego@posteo.net>
;;; Copyright © 2021 Lars-Dominik Braun <ldb@leibniz-psychology.org>
;;; Copyright © 2022 Maxim Cournoyer <maxim.cournoyer@gmail.com>
;;;
@ -417,41 +417,20 @@ or text interfaces) or as a C++ library.")
(define-public flint
(package
(name "flint")
(version "2.9.0")
(version "3.0.1")
(source
(origin
(method url-fetch)
(uri (string-append "http://flintlib.org/flint-" version ".tar.gz"))
(uri (string-append "https://flintlib.org/flint-" version ".tar.gz"))
(sha256
(base32 "0sp79ixaawjzna79afrlwlx9hg55jxil03f1wq435j9k23ar1h1g"))))
(base32 "1d4lawfvmjd4n7rp4z9xkwwjjbrjhkmxnxw1xf0ki1isa001lcbv"))))
(build-system gnu-build-system)
(inputs
(list ntl))
(propagated-inputs
(list gmp mpfr)) ; header files from both are included by flint/arith.h
(arguments
`(#:parallel-tests? #f ; seems to be necessary on arm
#:phases
(modify-phases %standard-phases
(add-before 'configure 'newer-c++
(lambda _
(substitute* "configure"
(("-ansi") ""))
#t))
(replace 'configure
(lambda* (#:key inputs outputs #:allow-other-keys)
(let ((out (assoc-ref outputs "out"))
(gmp (assoc-ref inputs "gmp"))
(mpfr (assoc-ref inputs "mpfr"))
(ntl (assoc-ref inputs "ntl")))
;; Do not pass "--enable-fast-install", which makes the
;; homebrew configure process fail.
(invoke "./configure"
(string-append "--prefix=" out)
(string-append "--with-gmp=" gmp)
(string-append "--with-mpfr=" mpfr)
(string-append "--with-ntl=" ntl))
#t))))))
`(#:parallel-tests? #f)) ; seems to be necessary on arm
(synopsis "Fast library for number theory")
(description
"FLINT is a C library for number theory. It supports arithmetic
@ -470,52 +449,12 @@ fast arithmetic.")
'((release-monitoring-url . "http://flintlib.org/downloads.html")))))
(define-public arb
(package
(name "arb")
(version "2.23.0")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/fredrik-johansson/arb")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32
"1m9vskyf857gbm0cbh3z8c8m6cqkqa765wb9hqmsv7yzfmklzpvn"))))
(build-system gnu-build-system)
(propagated-inputs
(list flint)) ; flint.h is included by arf.h
(inputs
(list gmp mpfr))
(arguments
`(#:phases
(modify-phases %standard-phases
(replace 'configure
(lambda* (#:key inputs outputs #:allow-other-keys)
(let ((out (assoc-ref outputs "out"))
(flint (assoc-ref inputs "flint"))
(gmp (assoc-ref inputs "gmp"))
(mpfr (assoc-ref inputs "mpfr")))
;; Do not pass "--enable-fast-install", which makes the
;; homebrew configure process fail.
(invoke "./configure"
(string-append "--prefix=" out)
(string-append "--with-flint=" flint)
(string-append "--with-gmp=" gmp)
(string-append "--with-mpfr=" mpfr))))))))
(home-page "https://arblib.org")
(synopsis "Arbitrary precision floating-point ball arithmetic")
(description
"Arb is a C library for arbitrary-precision floating-point ball
arithmetic. It supports efficient high-precision computation with
polynomials, power series, matrices and special functions over the
real and complex numbers, with automatic, rigorous error control.")
(license license:lgpl2.1+)))
(deprecated-package "arb" flint))
(define-public python-flint
(package
(name "python-flint")
(version "0.3.0")
(version "0.5.0")
(source (origin
(method git-fetch)
(uri (git-reference
@ -524,15 +463,14 @@ real and complex numbers, with automatic, rigorous error control.")
(file-name (git-file-name name version))
(sha256
(base32
"1v0anazbj1cfi68nl2j6dbd31kgkc1563xmr0zk5xk3xj78569pw"))
(patches (search-patches "python-flint-includes.patch"))))
"10370kqik6q6vdqrqv3gbznsyaxbgqb3rbrff4alpw0sqr5s07c7"))))
(build-system python-build-system)
(native-inputs
(list python-cython))
(list python-cython-3))
(propagated-inputs
(list python-numpy))
(inputs
(list arb flint))
(list flint))
(synopsis "Python module wrapping ARB and FLINT")
(description
"Python-flint is a Python extension module wrapping FLINT
@ -592,12 +530,12 @@ matrices, and polynomials over the integers and over finite fields.")
(define-public singular
(package
(name "singular")
(version "4.2.1")
(version "4.3.2p10")
(source
(origin
(method url-fetch)
(uri
(string-append "http://www.mathematik.uni-kl.de/ftp/pub/Math/"
(string-append "https://www.singular.uni-kl.de/ftp/pub/Math/"
"Singular/SOURCES/"
(string-join
(string-split
@ -607,7 +545,7 @@ matrices, and polynomials over the integers and over finite fields.")
#\.) "-")
"/singular-" version ".tar.gz"))
(sha256 (base32
"13gy1gdng8zijwlr1fn5sixw53z0zf9czzlg0vh1dcc59zw6v998"))))
"1a2j2pkp73rb1xdd5623gkk1snwd85yimssnz86y0m79zvyckhi8"))))
(build-system gnu-build-system)
(native-inputs
(list doxygen graphviz perl))
@ -936,7 +874,7 @@ algorithms from the FORTRAN library MINPACK.")
(define-public symengine
(package
(name "symengine")
(version "0.11.1")
(version "0.11.2")
(source
(origin
(method git-fetch)
@ -945,7 +883,7 @@ algorithms from the FORTRAN library MINPACK.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "105rnnf33vx2n03wwv4962az7bfzgsn1gx6a6wyakmyrfdkb07jc"))))
(base32 "0j6vd72hjj9fnsw5iiykmkrw8vyjcyyycgib2zxlmlzi6sj4618b"))))
(build-system cmake-build-system)
(arguments
'(#:configure-flags

View File

@ -12,6 +12,7 @@
;;; Copyright © 2023 Iliya Tikhonenko <tikhonenko@mpe.mpg.de>
;;; Copyright © 2023 Andreas Enge <andreas@enge.fr>
;;; Copyright © 2023 Simon Tournier <zimon.toutoune@gmail.com>
;;; Copyright © 2024 Ricardo Wurmus <rekado@elephly.net>
;;;
;;; This file is part of GNU Guix.
;;;
@ -571,6 +572,17 @@ Main features:
;; Do not test examples
(("testspaths = astroML doc examples")
"testspaths = astroML"))))
(add-after 'unpack 'matplotlib-compatibility
(lambda _
(substitute* "astroML/plotting/tools.py"
(("^( *)ax.(lines|patches|tables|artists|images).clear.*" _ indent type)
(string-append indent "for art in ax." type ":\n"
indent " art.remove()\n")))))
;; See commit e1c779de1f0ce4cb499dbda6c23d14f76b98e430
(add-after 'unpack 'scipy-compatibility
(lambda _
(substitute* "astroML/dimensionality/iterative_pca.py"
(("sym_pos=True") "assume_a=\"pos\""))))
(add-before 'check 'pre-check
;; Some tests need this
(lambda _
@ -1215,57 +1227,56 @@ astronomical fields. SkyMaker is part of the
(base32 "0rz29v33n0x0k40hv3v79ym5ylch1v0pbph4i21809gz2al5p7dq"))))
(build-system gnu-build-system)
(arguments
`(#:make-flags
(list
(string-append
"SKRY_INCLUDE_PATH=" (assoc-ref %build-inputs "libskry") "/include")
(string-append
"SKRY_LIB_PATH=-L" (assoc-ref %build-inputs "libskry") "/lib")
(string-append
"LIBAV_INCLUDE_PATH=" (assoc-ref %build-inputs "ffmpeg") "/include"))
#:phases
(modify-phases %standard-phases
;; no configure and tests are provided
(delete 'configure)
(delete 'check)
(add-after 'unpack 'fix-paths
(lambda* (#:key outputs #:allow-other-keys)
(substitute* "src/main.cpp"
(("\"\\.\\.\", \"lang\"")
"\"../share/stackistry\", \"lang\""))
(substitute* "src/utils.cpp"
(("\"\\.\\.\", \"icons\"")
"\"../share/stackistry\", \"icons\""))
#t))
(replace 'install
;; The Makefile lacks an install target.
(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(bin (string-append out "/bin"))
(icons (string-append out "/share/stackistry/icons"))
(lang (string-append out "/share/stackistry/lang")))
(copy-recursively "bin" bin)
(copy-recursively "icons" icons)
(copy-recursively "lang" lang))
#t)))))
(list
#:tests? #f ; No test target
#:make-flags
#~(list
(string-append
"SKRY_INCLUDE_PATH=" #$(this-package-input "libskry") "/include")
(string-append
"SKRY_LIB_PATH=-L" #$(this-package-input "libskry") "/lib")
(string-append
"LIBAV_INCLUDE_PATH=" #$(this-package-input "ffmpeg") "/include"))
#:phases
#~(modify-phases %standard-phases
;; no configure and tests are provided
(delete 'configure)
(add-after 'unpack 'fix-paths
(lambda _
(substitute* "src/main.cpp"
(("\"\\.\\.\", \"lang\"")
"\"../share/stackistry\", \"lang\""))
(substitute* "src/utils.cpp"
(("\"\\.\\.\", \"icons\"")
"\"../share/stackistry\", \"icons\""))))
(replace 'install
;; The Makefile lacks an install target.
(lambda _
(let* ((out #$output)
(bin (string-append out "/bin"))
(icons (string-append out "/share/stackistry/icons"))
(lang (string-append out "/share/stackistry/lang")))
(copy-recursively "bin" bin)
(copy-recursively "icons" icons)
(copy-recursively "lang" lang)))))))
(native-inputs
(list pkg-config))
(inputs
(list gtkmm-3 libskry ffmpeg-4))
(home-page "https://github.com/GreatAttractor/stackistry")
(synopsis "Astronomical lucky imaging/image stacking tool")
(description
"Stackistry implements the lucky imaging principle of astronomical
(inputs
(list gtkmm-3 libskry ffmpeg-4))
(home-page "https://github.com/GreatAttractor/stackistry")
(synopsis "Astronomical lucky imaging/image stacking tool")
(description
"Stackistry implements the lucky imaging principle of astronomical
imaging: creating a high-quality still image out of a series of many (possibly
thousands) low quality ones (blurred, deformed, noisy). The resulting image
stack typically requires post-processing, including sharpening (e.g. via
deconvolution). Such post-processing is not performed by Stackistry.")
(license license:gpl3+)))
(license license:gpl3+)))
(define-public stellarium
(package
(name "stellarium")
(version "23.3")
(version "23.4")
(source
(origin
(method git-fetch)
@ -1274,7 +1285,7 @@ deconvolution). Such post-processing is not performed by Stackistry.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "15kl8kn5fmmppbm93w5ki7lpjn09lhyhn245v3jc335xifcwd2vd"))))
(base32 "11l3lql3cxj7s7q7n74qd4rhbjy374b4c0lpm0dr8s85mfrq6fmc"))))
(build-system cmake-build-system)
;; TODO: Complete documentation build and split into dedicated outputs.
(arguments
@ -1300,6 +1311,7 @@ deconvolution). Such post-processing is not performed by Stackistry.")
gpsd
indi
libnova
nlopt
openssl
qtbase-5
qtcharts
@ -1846,13 +1858,13 @@ attempting to maintain ISTP compliance
(define-public python-crds
(package
(name "python-crds")
(version "11.17.13")
(version "11.17.14")
(source (origin
(method url-fetch)
(uri (pypi-uri "crds" version))
(sha256
(base32
"0jcvyiq3z2kbd8g33gk5r99rvhn9i50lz7ngqibdafh390dz5zhc"))))
"1z9lrwrb07s9kn28nammjx75qb0ky7srd9i40dnkmm9zsaqz5jfm"))))
(build-system pyproject-build-system)
(arguments
(list
@ -1884,14 +1896,14 @@ attempting to maintain ISTP compliance
(description
"CRDS is a package used for working with astronomical reference files for
the HST and JWST telescopes. CRDS is useful for performing various operations
on reference files or reference file assignment rules. CRDS is used to assign,
check, and compare reference files and rules, and also to predict those datasets
which should potentially be reprocessed due to changes in reference files or
assignment rules. CRDS has versioned rules which define the assignment of
references for each type and instrument configuration. CRDS has web sites
corresponding to each project (http://hst-crds.stsci.edu or
https://jwst-crds.stsci.edu/) which record information about reference files and
provide related services.")
on reference files or reference file assignment rules. CRDS is used to
assign, check, and compare reference files and rules, and also to predict
those datasets which should potentially be reprocessed due to changes in
reference files or assignment rules. CRDS has versioned rules which define
the assignment of references for each type and instrument configuration. CRDS
has web sites corresponding to each project @url{http://hst-crds.stsci.edu} or
@url{https://jwst-crds.stsci.edu/} which record information about reference
files and provide related services.")
(license license:bsd-3)))
(define-public python-czml3
@ -1928,13 +1940,13 @@ Cesium.")
(define-public python-drms
(package
(name "python-drms")
(version "0.7.0")
(version "0.7.1")
(source
(origin
(method url-fetch)
(uri (pypi-uri "drms" version))
(sha256
(base32 "0smc39nndxqbznjcpnylsag1sc2ksfjhxh4dwiqbki8q6v5ahx84"))))
(base32 "01q00zwpbhik9lgbc42z6q791ybxc41rxgrj04fpcfkl3hcl0nyr"))))
(build-system pyproject-build-system)
(native-inputs
(list python-astropy
@ -1993,6 +2005,28 @@ mapping by using a Python callback. Switching to using an array allowed the
code to be greatly simplified.")
(license license:bsd-3)))
(define-public python-dust-extinction
(package
(name "python-dust-extinction")
(version "1.3")
(source
(origin
(method url-fetch)
(uri (pypi-uri "dust_extinction" version))
(sha256
(base32 "14zy6kyrfi4ash7qg1k3im1zzgr2r7rnaggzk0ar3jlfmsii743k"))))
(build-system pyproject-build-system)
(propagated-inputs
(list python-astropy python-scipy))
(native-inputs
(list python-pytest-astropy))
(home-page "http://dust-extinction.readthedocs.io/")
(synopsis "Interstellar Dust Extinction Models")
(description
"This package provides astronomical interstellar dust extinction curves
implemented using the astropy.modeling framework.")
(license license:bsd-3)))
(define-public python-ephem
(package
(name "python-ephem")
@ -2063,6 +2097,55 @@ of dates.")
the easy construction of interactive matplotlib widget based animations.")
(license license:bsd-3)))
(define-public python-ndcube
(package
(name "python-ndcube")
(version "2.2.0")
(source
(origin
(method url-fetch)
(uri (pypi-uri "ndcube" version))
(sha256
(base32 "1b3vbnm438j5jb48vilp145lq137fbrg1l4845rc55mz2p025x34"))))
(build-system pyproject-build-system)
(arguments
(list
#:phases
#~(modify-phases %standard-phases
(add-before 'check 'set-home-env
(lambda _
;; Tests require HOME to be set.
;; Permission denied: '/homeless-shelter'
(setenv "HOME" "/tmp"))))))
(propagated-inputs
(list python-astropy
python-gwcs
python-matplotlib
python-mpl-animators
python-numpy
python-reproject))
(native-inputs
(list python-dask
python-pytest
python-pytest-astropy
python-pytest-mpl
python-scipy
python-setuptools-scm
python-sunpy))
(home-page "https://docs.sunpy.org/projects/ndcube/")
(synopsis "Multi-dimensional contiguous and non-contiguous coordinate aware arrays")
(description
"@code{ndcube} is a package for manipulating, inspecting and visualizing
multi-dimensional contiguous and non-contiguous coordinate-aware data arrays.
It combines data, uncertainties, units, metadata, masking, and coordinate
transformations into classes with unified slicing and generic coordinate
transformations and plotting/animation capabilities. It is designed to handle
data of any number of dimensions and axis types (e.g. spatial, temporal,
spectral, etc.) whose relationship between the array elements and the real world
can be described by @acronym{WCS, World Coordinate System} translations.")
(license license:bsd-2)))
(define-public python-photutils
(package
(name "python-photutils")
@ -2140,9 +2223,24 @@ of astronomical sources.")
" and not test_czml_custom_packet"
" and not test_czml_ground_station"
" and not test_czml_groundtrack"
" and not test_czml_preamble"))
" and not test_czml_preamble"
;; This fails with "ufunc 'isfinite' not
;; supported for the input types"
" and not test_porkchop_plotting"))
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'matplotlib-compatibility
(lambda _
(substitute* "src/poliastro/plotting/static.py"
(("import numpy as np.*" m)
(string-append m "\
import itertools\n"))
(("( +)self._ax = ax.*" m indent)
(string-append m indent
"\
self.colors = itertools.cycle(plt.rcParams[\"axes.prop_cycle\"].by_key()[\"color\"])\n"))
(("color = next\\(self._ax._get_lines.prop_cycler\\)\\[\"color\"\\]")
"color = next(self.colors)"))))
;; NOTE: Tests take about 7-10 minutes to pass.
(add-before 'check 'prepare-test-environment
(lambda _
@ -2254,18 +2352,18 @@ interest, and which require portability between platforms or ease of scripting."
(define-public python-pyvo
(package
(name "python-pyvo")
(version "1.4.2")
(version "1.5")
(source
(origin
(method url-fetch)
(uri (pypi-uri "pyvo" version))
(sha256
(base32 "1jwmgpavw80mf9sigfz5p2cqh6vz5mvm11ziqmdp5zdccn42kzk6"))))
(base32 "1kyd4jbspldfpwwvwxfmhq2cxqp4kfbcsiyk4gjs0ib65idxdr45"))))
(build-system pyproject-build-system)
(native-inputs
(list python-pytest-astropy python-requests-mock python-setuptools-scm))
(propagated-inputs
(list python-astropy python-mimeparse python-pillow python-requests))
(list python-astropy python-pillow python-requests))
(home-page "https://github.com/astropy/pyvo")
(synopsis "Access Virtual Observatory data and services")
(description
@ -2412,13 +2510,13 @@ orbits described in TLE files.")
(define-public python-sunpy
(package
(name "python-sunpy")
(version "5.0.1")
(version "5.1.1")
(source
(origin
(method url-fetch)
(uri (pypi-uri "sunpy" version))
(sha256
(base32 "1r4phc91k527kvpa2jd1d417x97wqyrm3ydayr9hshwz1k5v5ngf"))))
(base32 "07rfdj4v29kcb718sgjfsagazvnl11r01ciqjvazr5x3yadfqrwk"))))
(build-system pyproject-build-system)
(arguments
(list
@ -2428,7 +2526,9 @@ orbits described in TLE files.")
;; It struggles to find python-opencsv package info with
;; 'importlib.metadata'
"not test_main_nonexisting_module"
" and not test_main_stdlib_module"))
" and not test_main_stdlib_module")
;; Requries SpicePy not packed in Guix yet.
"--ignore=sunpy/coordinates/tests/test_spice.py")
#:phases
#~(modify-phases %standard-phases
(add-before 'install 'writable-compiler
@ -2436,7 +2536,11 @@ orbits described in TLE files.")
(make-file-writable "sunpy/_compiler.c")))
(add-before 'check 'prepare-test-environment
(lambda _
(setenv "HOME" "/tmp"))))))
(setenv "HOME" "/tmp")
(call-with-output-file "pytest.ini"
(lambda (port)
(format port "[pytest]
python_files = test_*.py"))))))))
(native-inputs
(list opencv ; For tests, includes OpenCV-Python
python-aiohttp
@ -2473,6 +2577,7 @@ orbits described in TLE files.")
python-scikit-image
python-scipy
python-semantic-version
;; python-spiceypy ; Not packed yet in Guix, long jorney.
python-sqlalchemy
python-tqdm
python-zeep))
@ -2598,6 +2703,55 @@ of axis order, spatial projections, and spectral units that exist in the wild.
@end itemize")
(license license:bsd-3)))
(define-public python-specutils
(package
(name "python-specutils")
(version "1.12.0")
(source
(origin
(method url-fetch)
(uri (pypi-uri "specutils" version))
(sha256
(base32 "10nq00q71cyj0p74g3kyzb4hrwkbvhsd6m5zvxifc035rfnvc2qv"))))
(build-system pyproject-build-system)
(arguments
(list
;; Disabling test requiring access to download
;; <https://datacenter.iers.org/data/9/finals2000A.all>.
;; XXX: Check if test data may be packed as standalone package.
#:test-flags #~(list "-k" "not test_create_spectral_axis")
#:phases
#~(modify-phases %standard-phases
(add-before 'check 'set-home-env
(lambda _
;; Tests require HOME to be set.
;; Permission denied: '/homeless-shelter'
(setenv "HOME" "/tmp"))))))
(propagated-inputs
(list ;; python-stdatamodels ; cycle with python-synphot, optional.
python-asdf
python-asdf-astropy
python-gwcs
python-ndcube
python-numpy
python-scipy))
(native-inputs
(list python-matplotlib
python-pytest-astropy
python-semantic-version
python-setuptools-scm
python-spectral-cube))
(home-page "https://specutils.readthedocs.io/")
(synopsis "Package for spectroscopic astronomical data")
(description
"@code{specutils} is a Python package for representing, loading, manipulating,
and analyzing astronomical spectroscopic data. The generic data containers and
accompanying modules provide a toolbox that the astronomical community can use
to build more domain-specific packages. For more details about the underlying
principles,
see @url{https://github.com/astropy/astropy-APEs/blob/main/APE13.rst, APE13}.")
(license license:bsd-3)))
(define-public python-spherical-geometry
(package
(name "python-spherical-geometry")
@ -2747,13 +2901,13 @@ image processing functions: @code{xyxymatch}, @code{geomap}.")
(define-public python-stcal
(package
(name "python-stcal")
(version "1.4.4")
(version "1.5.2")
(source
(origin
(method url-fetch)
(uri (pypi-uri "stcal" version))
(sha256
(base32 "031ldihdmsdrwz4wl49bfk2bxmzbp1i3kidrw46xz936765zmnc0"))))
(base32 "0r1a9f476f8ivhrwbcny3rnj9s4plaps6p36c22w73g546d476b7"))))
(build-system pyproject-build-system)
(arguments
(list
@ -2768,16 +2922,19 @@ image processing functions: @code{xyxymatch}, @code{geomap}.")
(invoke "python" "setup.py" "build_ext" "--inplace"))))))
(propagated-inputs
(list opencv ;Provides OpenCV-Python
python-asdf-3.0
python-astropy
python-gwcs
python-numpy
python-scipy))
(native-inputs
(list python-cython
(list python-cython-3
python-psutil
python-pytest
python-pytest-cov
python-pytest-doctestplus
python-pytest-openfiles
python-semantic-version
python-setuptools-scm))
(home-page "https://github.com/spacetelescope/stcal")
(synopsis "STScI tools and algorithms used in calibration pipelines")
@ -2878,8 +3035,11 @@ implementing calibration pipeline software.")
python-numpy
python-scipy
python-synphot))
(native-inputs (list python-pytest python-pytest-astropy
python-pytest-astropy-header python-setuptools-scm))
(native-inputs (list python-pytest
python-pytest-astropy
python-pytest-astropy-header
python-semantic-version
python-setuptools-scm))
(home-page "https://github.com/spacetelescope/stsynphot_refactor")
(synopsis "Synthetic photometry using Astropy for HST and JWST")
(description
@ -2893,24 +3053,24 @@ packages for HST.")
(name "libnova")
(version "0.16")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://git.code.sf.net/p/libnova/libnova.git")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
"0icwylwkixihzni0kgl0j8dx3qhqvym6zv2hkw2dy6v9zvysrb1b"))))
(origin
(method git-fetch)
(uri (git-reference
(url "https://git.code.sf.net/p/libnova/libnova.git")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
"0icwylwkixihzni0kgl0j8dx3qhqvym6zv2hkw2dy6v9zvysrb1b"))))
(build-system gnu-build-system)
(arguments
`(#:phases
(modify-phases %standard-phases
(add-after 'unpack 'patch-git-version
(lambda _
(substitute* "./git-version-gen"
(("/bin/sh") (which "sh")))
#t)))))
(list
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'patch-git-version
(lambda _
(substitute* "./git-version-gen"
(("/bin/sh") (which "sh"))))))))
(native-inputs
(list autoconf automake libtool))
(synopsis "Celestial mechanics, astrometry and astrodynamics library")
@ -3018,23 +3178,30 @@ low quality ones")
(sha256
(base32 "1na3gyb3nzb5gdgccs1653j2gnz6w3v1mqzhyhkx3yqw8bs3q5x0"))))
(build-system gnu-build-system)
(supported-systems '("i686-linux" "x86_64-linux"
"armhf-linux" "aarch64-linux"))
(arguments
`(#:tests? #f
#:make-flags
(list
,(match (or (%current-target-system) (%current-system))
((or "aarch64-linux" "armhf-linux" "i686-linux" "x86_64-linux")
"OS_TARGET=linux")
(_ #f))
,(match (or (%current-target-system) (%current-system))
("i686-linux" "CPU_TARGET=i386")
("x86_64-linux" "CPU_TARGET=x86_64")
((or "armhf-linux" "aarch64-linux") "CPU_TARGET=armv7l")
(_ #f))
(string-append "PREFIX=" (assoc-ref %outputs "out")))
#:phases
(modify-phases %standard-phases
(delete 'configure))))
(list
#:tests? #f ; no tests provided
#:make-flags
#~(list
;; Keep OS detection for the case when Hurd would be suitable to try.
#$@(if (target-linux?) '("OS_TARGET=linux") '())
;; Enable buildtime CPU detection where supported,
;; and set a suitable CPU target variable.
#$@(match (or (%current-target-system)
(%current-system))
("i686-linux"
'("CPU_TARGET=i386"))
("x86_64-linux"
'("CPU_TARGET=x86_64"))
((or "armhf-linux" "aarch64-linux")
'("CPU_TARGET=armv7l"))
(_ '()))
(string-append "PREFIX=" #$output))
#:phases
#~(modify-phases %standard-phases
(delete 'configure))))
(home-page "https://github.com/pchev/libpasastro")
(synopsis "Interface to astronomy library for use from Pascal program")
(description
@ -3046,13 +3213,13 @@ standard astronomy libraries:
@item @code{libpasplan404.so}: Interface with Plan404 to compute planets position.
@item @code{libpaswcs.so}: Interface with libwcs to work with FITS WCS.
@item @code{libpasspice.so}: To work with NAIF/SPICE kernel.
@end itemize\n")
@end itemize")
(license license:gpl2+)))
(define-public libxisf
(package
(name "libxisf")
(version "0.2.10")
(version "0.2.11")
(source
(origin
(method git-fetch)
@ -3061,7 +3228,7 @@ standard astronomy libraries:
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0q5qipn8887yhrk9pmi4fksxxmqas3w2aw2p194yhzkjapxk2k9h"))))
(base32 "02lnlsdg7f6pbcfk9amzh2k42wsb19d97yp2jq122lzivx9inwn1"))))
(build-system cmake-build-system)
(arguments
(list #:configure-flags #~(list "-DUSE_BUNDLED_LIBS=OFF")))
@ -3168,6 +3335,8 @@ Mercator, Mollweide, Peters, polyconic, orthographic and rectangular.")
(license license:gpl2+)))
(define-public gpredict
;; The latest tag, 2.3, has no major difference with 2.2.1 and is dated for
;; 2018. Additionally, there is some activity on the master branch.
(package
(name "gpredict")
(version "2.2.1")
@ -3194,14 +3363,32 @@ Mercator, Mollweide, Peters, polyconic, orthographic and rectangular.")
(list gettext-minimal intltool pkg-config))
(inputs
(list curl glib goocanvas gtk+))
(home-page "http://gpredict.oz9aec.net/index.php")
(home-page "https://oz9aec.dk/gpredict/")
(synopsis "Satellite tracking and orbit prediction application")
(description
"Gpredict is a real-time satellite tracking and orbit prediction
application. It can track a large number of satellites and display their
position and other data in lists, tables, maps, and polar plots (radar view).
Gpredict can also predict the time of future passes for a satellite, and
provide you with detailed information about each pass.")
provide you with detailed information about each pass.
Some core features of Gpredict include:
@itemize
@item Tracking of a large number of satellites only limited by the physical
memory and processing power of the computer
@item Display the tracking data in lists, maps, polar plots and any
combination of these
@item Have many modules open at the same either in a notebook or in their own
windows. The modules can also run in full-screen mode
@item You can use many ground stations
@item Predict upcoming passes
@item Gpredict can run in real-time, simulated real-time (fast forward and
backward), and manual time control
@item Detailed information both the real time and non-real time modes
@item Doppler tuning of radios via Hamlib rigctld
@item Antenna rotator control via Hamlib rotctld
@end itemize")
(license license:gpl2+)))
(define-public sgp4
@ -3279,7 +3466,7 @@ floating-point (no compression, LZW- or ZIP-compressed), FITS 8-bit, 16-bit,
(define-public indi-2.0
(package
(name "indi")
(version "2.0.4")
(version "2.0.5")
(source
(origin
(method git-fetch)
@ -3288,7 +3475,7 @@ floating-point (no compression, LZW- or ZIP-compressed), FITS 8-bit, 16-bit,
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1pp72bqxrvdij47fqfrnyxwqw1w8prxvs1igjsazcw8ncbrdbbjc"))))
(base32 "1lmp5p1rsckb8j44g34wxpyjzzy2ff78llxyc84pv5xs9pay6p4z"))))
(build-system cmake-build-system)
(arguments
;; TODO: fix failing tests on aarch64-system.
@ -3767,14 +3954,15 @@ datetime object.")
(format port "[pytest]
python_files = test_*.py"))))))))
(propagated-inputs
(list ;; python-dust-extinction ; XXX: Not packed yet, optional.
;; python-specutils ; XXX: Not packed yet, optional.
python-astropy
(list python-astropy
python-dust-extinction
python-numpy
python-scipy))
python-scipy
python-specutils ))
(native-inputs
(list python-pytest
python-pytest-astropy
python-semantic-version
python-setuptools-scm))
(home-page "https://github.com/spacetelescope/synphot_refactor")
(synopsis "Synthetic photometry using Astropy")
@ -3787,13 +3975,13 @@ of the old packages.")
(define-public python-tweakwcs
(package
(name "python-tweakwcs")
(version "0.8.5")
(version "0.8.6")
(source (origin
(method url-fetch)
(uri (pypi-uri "tweakwcs" version))
(sha256
(base32
"15gc2rc2isx3va6wbn4k1hi5qh49gq15cgbb2qqkbznd7f7d5ifv"))))
"1j75i02xzd36gp7pf6gks6nmp4ivi9cbphya4l69py5p62iaab99"))))
(build-system pyproject-build-system)
(propagated-inputs (list python-astropy
python-gwcs
@ -4306,20 +4494,23 @@ astronomical images, especially when there is no WCS information available.")
(define-public python-skyfield
(package
(name "python-skyfield")
(version "1.46")
(version "1.47")
(source
(origin
(method url-fetch)
(uri (pypi-uri "skyfield" version))
(sha256
(base32 "1r4kpsh1pa4h3diyxy3gyapp0rykfjdqmn5w348a2ck2qkdlx997"))))
(base32 "0272pwk88csmrrl44fc4l52agd68pkg4zbmdhs7gliq5q9wf3hrs"))))
(build-system python-build-system)
(arguments
;; NOTE: (Sharlatan-20210207T163305+0000): tests depend on custom test
;; framework https://github.com/brandon-rhodes/assay
;; XXX: Tests depend on custom test framework
;; https://github.com/brandon-rhodes/assay
`(#:tests? #f))
(inputs
(list python-certifi python-jplephem python-numpy python-sgp4))
(propagated-inputs
(list python-certifi
python-jplephem
python-numpy
python-sgp4))
(home-page "https://rhodesmill.org/skyfield/")
(synopsis "Astronomy for Python")
(description

File diff suppressed because it is too large Load Diff

View File

@ -1,5 +1,5 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2016, 2017, 2019, 2020, 2021 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2016, 2017, 2019, 2020, 2021, 2024 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2019 Tobias Geerinckx-Rice <me@tobias.gr>
;;;
;;; This file is part of GNU Guix.
@ -18,6 +18,7 @@
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
(define-module (gnu packages axoloti)
#:use-module (guix gexp)
#:use-module (guix utils)
#:use-module (guix packages)
#:use-module (guix download)
@ -218,8 +219,9 @@ runtime.")
(name "axoloti-patcher")
(version (package-version axoloti-runtime))
(arguments
`(#:tests? #f ; no check target
#:modules ((guix build gnu-build-system)
(list
#:tests? #f ; no check target
#:modules '((guix build gnu-build-system)
((guix build ant-build-system) #:prefix ant:)
(guix build utils)
(srfi srfi-1)
@ -229,113 +231,109 @@ runtime.")
(sxml simple)
(sxml xpath)
(sxml transform))
#:imported-modules ((guix build ant-build-system)
#:imported-modules `((guix build ant-build-system)
,@%gnu-build-system-modules)
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'make-git-checkout-writable
(lambda _
(for-each make-file-writable (find-files "."))
#t))
(delete 'configure)
(replace 'build
(lambda* (#:key inputs #:allow-other-keys)
(setenv "JAVA_HOME" (assoc-ref inputs "icedtea"))
;; We want to use our own jar files instead of the pre-built
;; stuff in lib. So we replace the zipfileset tags in the
;; build.xml with new ones that reference our jars.
(let* ((build.xml (with-input-from-file "build.xml"
(lambda _
(xml->sxml #:trim-whitespace? #t))))
(jars (append-map (match-lambda
(((? (cut string-prefix? "java-" <>)
label) . directory)
(find-files directory "\\.jar$"))
(_ '()))
inputs))
(classpath (string-join jars ":"))
(fileset (map (lambda (jar)
`(zipfileset (@ (excludes "META-INF/*.SF")
(src ,jar))))
jars)))
(call-with-output-file "build.xml"
(lambda (port)
(sxml->xml
(pre-post-order
build.xml
`(;; Remove all zipfileset tags from the "jar" tree and
;; inject our own tags.
(jar . ,(lambda (tag . kids)
`(jar ,@(append-map
(filter (lambda (e)
(not (eq? 'zipfileset (car e)))))
kids)
,@fileset)))
;; Skip the "bundle" target (and the "-post-jar" target
;; that depends on it), because we don't need it and it
;; confuses sxml->xml.
(target . ,(lambda (tag . kids)
(let ((name ((sxpath '(name *text*))
(car kids))))
(if (or (member "bundle" name)
(member "-post-jar" name))
'() ; skip
`(,tag ,@kids)))))
(*default* . ,(lambda (tag . kids) `(,tag ,@kids)))
(*text* . ,(lambda (_ txt)
(match txt
;; Remove timestamp.
("${TODAY}" "(unknown)")
(_ txt))))))
port)))
#~(modify-phases %standard-phases
(delete 'configure)
(replace 'build
(lambda* (#:key inputs #:allow-other-keys)
(setenv "JAVA_HOME" (assoc-ref inputs "icedtea"))
;; We want to use our own jar files instead of the pre-built
;; stuff in lib. So we replace the zipfileset tags in the
;; build.xml with new ones that reference our jars.
(let* ((build.xml (with-input-from-file "build.xml"
(lambda _
(xml->sxml #:trim-whitespace? #t))))
(jars (append-map (match-lambda
(((? (cut string-prefix? "java-" <>)
label) . directory)
(find-files directory "\\.jar$"))
(_ '()))
inputs))
(classpath (string-join jars ":"))
(fileset (map (lambda (jar)
`(zipfileset (@ (excludes "META-INF/*.SF")
(src ,jar))))
jars)))
(call-with-output-file "build.xml"
(lambda (port)
(sxml->xml
(pre-post-order
build.xml
`( ;; Remove all zipfileset tags from the "jar" tree and
;; inject our own tags.
(jar . ,(lambda (tag . kids)
`(jar ,@(append-map
(filter (lambda (e)
(not (eq? 'zipfileset (car e)))))
kids)
,@fileset)))
;; Skip the "bundle" target (and the "-post-jar" target
;; that depends on it), because we don't need it and it
;; confuses sxml->xml.
(target . ,(lambda (tag . kids)
(let ((name ((sxpath '(name *text*))
(car kids))))
(if (or (member "bundle" name)
(member "-post-jar" name))
'() ; skip
`(,tag ,@kids)))))
(*default* . ,(lambda (tag . kids) `(,tag ,@kids)))
(*text* . ,(lambda (_ txt)
(match txt
;; Remove timestamp.
("${TODAY}" "(unknown)")
(_ txt))))))
port)))
;; Build it!
(invoke "ant"
(string-append "-Djavac.classpath=" classpath)
"-Dbuild.runtime=true"
"-Dbuild.time=01/01/1970 00:00:00"
"-Djavac.source=1.7"
"-Djavac.target=1.7"
(string-append "-Dtag.short.version="
,version)))))
(replace 'install
(lambda* (#:key inputs outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(share (string-append out "/share/axoloti/")))
(install-file "dist/Axoloti.jar" share)
;; Build it!
(invoke "ant"
(string-append "-Djavac.classpath=" classpath)
"-Dbuild.runtime=true"
"-Dbuild.time=01/01/1970 00:00:00"
"-Djavac.source=1.7"
"-Djavac.target=1.7"
(string-append "-Dtag.short.version="
#$version)))))
(replace 'install
(lambda* (#:key inputs #:allow-other-keys)
(let ((share (string-append #$output "/share/axoloti/")))
(install-file "dist/Axoloti.jar" share)
;; We do this to ensure that this package retains references to
;; other Java packages' jar files.
(install-file "build.xml" share)
;; We do this to ensure that this package retains references to
;; other Java packages' jar files.
(install-file "build.xml" share)
;; Create a launcher script
(mkdir (string-append out "/bin"))
(let ((target (string-append out "/bin/Axoloti")))
(with-output-to-file target
(lambda ()
(let* ((dir (string-append (assoc-ref outputs "out")
"/share/axoloti"))
(runtime (search-input-directory inputs
"share/axoloti"))
(toolchain (assoc-ref inputs "cross-toolchain"))
(includes (string-append
toolchain
"/arm-none-eabi/include/c++:"
toolchain
"/arm-none-eabi/include/c++/arm-none-eabi/armv7e-m")))
(display
(string-append "#!" (which "sh") "\n"
"export CROSS_CPATH=" includes "\n"
"export CROSS_CPLUS_INCLUDE_PATH=" includes "\n"
"export CROSS_LIBRARY_PATH="
toolchain "/arm-none-eabi/lib" "\n"
(which "java")
" -Daxoloti_release=" runtime
" -Daxoloti_runtime=" runtime
" -jar " dir "/Axoloti.jar")))))
(chmod target #o555)))))
(add-after 'install 'strip-jar-timestamps
(assoc-ref ant:%standard-phases 'strip-jar-timestamps)))))
;; Create a launcher script
(mkdir (string-append #$output "/bin"))
(let ((target (string-append #$output "/bin/Axoloti")))
(with-output-to-file target
(lambda ()
(let* ((dir (string-append #$output "/share/axoloti"))
(runtime (search-input-directory inputs
"share/axoloti"))
(toolchain (assoc-ref inputs "cross-toolchain"))
(includes (string-append
toolchain
"/arm-none-eabi/include/:"
toolchain
"/arm-none-eabi/include/c++:"
toolchain
"/arm-none-eabi/include/c++/arm-none-eabi/armv7e-m")))
(display
(string-append "#!" (which "sh") "\n"
"export CROSS_CPATH=" includes "\n"
"export CROSS_CPLUS_INCLUDE_PATH=" includes "\n"
"export CROSS_LIBRARY_PATH="
toolchain "/arm-none-eabi/lib" "\n"
(which "java")
" -Daxoloti_release=" runtime
" -Daxoloti_runtime=" runtime
" -jar " dir "/Axoloti.jar")))))
(chmod target #o555)))))
(add-after 'install 'strip-jar-timestamps
(assoc-ref ant:%standard-phases 'strip-jar-timestamps)))))
(inputs
`(("icedtea" ,icedtea "jdk")
("cross-toolchain" ,(make-arm-none-eabi-nano-toolchain-4.9))

View File

@ -71,6 +71,7 @@
#:use-module (gnu packages glib)
#:use-module (gnu packages gnupg)
#:use-module (gnu packages golang)
#:use-module (gnu packages golang-crypto)
#:use-module (gnu packages golang-web)
#:use-module (gnu packages gperf)
#:use-module (gnu packages gtk)

View File

@ -1551,8 +1551,8 @@ command.")
(define-public tzdata
(package
(name "tzdata")
;; This package should be kept in sync with python-pytz in (gnu packages
;; time).
;; This package should be kept in sync with python-pytz and python-tzdata
;; in (gnu packages time).
(version "2022a")
(source (origin
(method url-fetch)

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -1,5 +1,5 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2023 Artyom V. Poptsov <poptsov.artyom@gmail.com>
;;; Copyright © 2023, 2024 Artyom V. Poptsov <poptsov.artyom@gmail.com>
;;; Copyright © 2023 Adam Faiz <adam.faiz@disroot.org>
;;;
;;; This file is part of GNU Guix.
@ -19,30 +19,30 @@
(define-module (gnu packages books)
#:use-module ((guix licenses) #:prefix license:)
#:use-module (guix utils)
#:use-module (guix gexp)
#:use-module (guix build-system gnu)
#:use-module (guix download)
#:use-module (guix gexp)
#:use-module (guix git-download)
#:use-module (guix packages)
#:use-module (guix build-system gnu)
#:use-module (guix utils)
#:use-module (gnu packages)
#:use-module (gnu packages autotools)
#:use-module (gnu packages base)
#:use-module (gnu packages bash)
#:use-module (gnu packages music)
#:use-module (gnu packages fonts)
#:use-module (gnu packages fontutils)
#:use-module (gnu packages inkscape)
#:use-module (gnu packages music)
#:use-module (gnu packages perl)
#:use-module (gnu packages python-xyz)
#:use-module (gnu packages tex)
#:use-module (gnu packages texlive)
#:use-module (gnu packages version-control)
#:use-module (gnu packages fonts)
#:use-module (gnu packages fontutils))
#:use-module (gnu packages version-control))
(define-public book-sparc
(package
(name "book-sparc")
(version "1.1.0")
(version "2.0.0")
(source (origin
(method git-fetch)
(uri (git-reference
@ -50,7 +50,7 @@
(commit (string-append "v" version))))
(sha256
(base32
"0k1miyrnh5362qy50jzp5j3ww0c8hr7wk3y5kg6xlqgk9f8msvag"))
"0bn3a3m0kcjybyaz1a7pj8n48jh1cg4szwi9px3zjhhm5818wi7z"))
(file-name (git-file-name name version))
(modules '((guix build utils)))
(snippet
@ -81,6 +81,7 @@
texlive-bibtex
texlive-bibtexperllibs
texlive-bigfoot
texlive-chngcntr
texlive-circuitikz
texlive-collection-langcyrillic
texlive-fontspec

View File

@ -716,22 +716,26 @@ tree binary files. These are board description files used by Linux and BSD.")
;; https://lists.denx.de/pipermail/u-boot/2021-October/462728.html
(search-patch "u-boot-allow-disabling-openssl.patch"))
(define %u-boot-build-without-libcrypto-patch
;; Upstream commit to fix Amlogic builds in u-boot 2024.01.
(search-patch "u-boot-build-without-libcrypto.patch"))
(define u-boot
(package
(name "u-boot")
(version "2023.10")
(version "2024.01")
(source (origin
(patches
(list %u-boot-rockchip-inno-usb-patch
%u-boot-allow-disabling-openssl-patch
(search-patch "u-boot-patman-change-id.patch")))
%u-boot-build-without-libcrypto-patch
%u-boot-allow-disabling-openssl-patch))
(method url-fetch)
(uri (string-append
"https://ftp.denx.de/pub/u-boot/"
"u-boot-" version ".tar.bz2"))
(sha256
(base32
"0039rravvjq9yi41645fynycw4c869px024xfc0n212f05pnq3p0"))))
"1czmpszalc6b8cj9j7q6cxcy19lnijv3916w3dag6yr3xpqi35mr"))))
(build-system gnu-build-system)
(native-inputs
(list bison

View File

@ -1,5 +1,5 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2017, 2018 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2017, 2018, 2024 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2017 Corentin Bocquillon <corentin@nybble.fr>
;;; Copyright © 20172021 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2018 Fis Trivial <ybbs.daans@hotmail.com>
@ -346,13 +346,13 @@ resembles Python.")
(define-public meson-python
(package
(name "meson-python")
(version "0.12.1")
(version "0.15.0")
(source (origin
(method url-fetch)
(uri (pypi-uri "meson_python" version))
(sha256
(base32
"1hpjw9qj6ff8ixjs0pz7qysc8v57jxgaf5n1p6bqm9bh3mc3wnrx"))))
"0vyjhjabvm41hqijifk33idbdl62i76kfyf884f9rs29rpp77nzx"))))
(build-system pyproject-build-system)
(arguments
;; The project is configured to use itself to build ('mesonpy') and fails;
@ -361,13 +361,22 @@ resembles Python.")
#:test-flags #~(list "tests"
;; The test_pep518 tries to install
;; dependencies from the network using pip.
"-k" "not test_pep518")))
"-k" "not test_pep518")
#:phases
'(modify-phases %standard-phases
;; This additional top directory confuses setuptools. We could
;; work around this by overriding the detection of the project
;; directory, but deleting this directory is easier.
(add-after 'unpack 'delete-directory
(lambda _ (delete-file-recursively "LICENSES"))))))
(propagated-inputs
(list meson
ninja
python-colorama
python-pyproject-metadata
python-cython
python-pyproject-metadata-0.7
python-tomli
python-typing-extensions
python-wheel))
(native-inputs
(list python-pypa-build
@ -380,6 +389,7 @@ resembles Python.")
python-cython
python-gitpython
python-pytest
python-pytest-cov
python-pytest-mock))
(home-page "https://github.com/mesonbuild/meson-python")
(synopsis "Meson-based build backend for Python")

View File

@ -1390,7 +1390,7 @@ directory contents.")
(define-public libdispatch
(package
(name "libdispatch")
(version "5.7")
(version "5.9.2")
(source
(origin
(method git-fetch)
@ -1400,7 +1400,7 @@ directory contents.")
(file-name (git-file-name name version))
(sha256
(base32
"0skg1azbhbg7y0ql2a5sx6lmfip8l1rajqm95zzf9xv45n4dg9nn"))))
"02k90asz0yxrcmy67mmqqc68n8f16jf445l0n7jryb7nk30bgmm6"))))
(build-system cmake-build-system)
(arguments
(list #:phases

View File

@ -2,7 +2,7 @@
;;; Copyright © 2015 David Thompson <davet@gnu.org>
;;; Copyright © 2015, 2016, 2017 Leo Famulari <leo@famulari.name>
;;; Copyright © 2016 Kei Kebreau <kkebreau@posteo.net>
;;; Copyright © 2016, 2017, 2020, 2022, 2023 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2016, 2017, 2020, 2022-2024 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2016 Troy Sankey <sankeytms@gmail.com>
;;; Copyright © 2016, 2021 Stefan Reichoer <stefan@xsteve.at>
;;; Copyright © 2018, 2019, 2021 Tobias Geerinckx-Rice <me@tobias.gr>
@ -292,7 +292,11 @@ proper handling of holidays.")
version "/" name "-" version ".tar.bz2"))
(sha256
(base32
"0qkpq412p78znw8gckwcx3l0wcss9s0dgw1pvjb1ih2pxf6hm4rw"))))
"0qkpq412p78znw8gckwcx3l0wcss9s0dgw1pvjb1ih2pxf6hm4rw"))
(snippet
#~(begin (use-modules (guix build utils))
(substitute* "libhdate.pc.in"
(("prefix=/usr") "prefix=@prefix@"))))))
(build-system gnu-build-system)
(home-page "http://libhdate.sourceforge.net/")
(synopsis "Library to use Hebrew dates")

View File

@ -24,7 +24,7 @@
;;; Copyright © 2017, 2019 Mathieu Othacehe <m.othacehe@gmail.com>
;;; Copyright © 2017, 2019 Kei Kebreau <kkebreau@posteo.net>
;;; Copyright © 2017 Nikita <nikita@n0.is>
;;; Copyright © 2015, 2017, 2018, 2020, 2021, 2023 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2015, 2017, 2018, 2020, 2021, 2023, 2024 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2016-2022 Marius Bakke <marius@gnu.org>
;;; Copyright © 2017, 2018, 2020, 2021 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2018 Fis Trivial <ybbs.daans@hotmail.com>
@ -898,94 +898,6 @@ prevent common NGINX misconfigurations. It provides the @command{gixy}
command.")
(license license:mpl2.0))))
(define-public go-github.com-smartystreets-gunit
(package
(name "go-github.com-smartystreets-gunit")
(version "1.0.0")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/smartystreets/gunit")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32
"00m4zg0kdj49mnpmf9klb44ba71p966xsk6zknrzqgfc8119f35z"))))
(build-system go-build-system)
(arguments
'(;; TODO: This package depends on go-github.com-smartystreets-assertions
;; for running the tests, but go-github.com-smartystreets-assertions
;; depends on this package, so break this loop by not running the tests
;; for this package.
#:tests? #f
#:import-path "github.com/smartystreets/gunit"))
(synopsis "Testing tool for Go, in the style of xUnit")
(description
"@code{gunit} allows the test author to use a struct as the scope for a
group of related test cases, in the style of xUnit fixtures. This makes
extraction of setup/teardown behavior (as well as invoking the system under
test) much simpler.")
(home-page "https://github.com/smartystreets/gunit")
(license license:expat)))
(define-public go-github.com-smartystreets-assertions
(package
(name "go-github.com-smartystreets-assertions")
(version "1.13.0")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/smartystreets/assertions")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0flf3fb6fsw3bk1viva0fzrzw87djaj1mqvrx2gzg1ssn7xzfrzr"))))
(build-system go-build-system)
(arguments
(list
#:import-path "github.com/smartystreets/assertions"
#:phases
#~(modify-phases %standard-phases
(replace 'check
(lambda* (#:key inputs #:allow-other-keys #:rest args)
(unless
;; The tests fail when run with gccgo.
(false-if-exception (search-input-file inputs "/bin/gccgo"))
(apply (assoc-ref %standard-phases 'check) args)))))))
(native-inputs
(list go-github.com-smartystreets-gunit))
(synopsis "Assertions for testing with Go")
(description
"The @code{assertions} package provides convenient assertion functions
for writing tests in Go.")
(home-page "https://github.com/smartystreets/assertions")
(license license:expat)))
(define-public go-github.com-smartystreets-goconvey
(package
(name "go-github.com-smartystreets-goconvey")
(version "1.6.3")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/smartystreets/goconvey")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32
"1ph18rkl3ns3fgin5i4j54w5a69grrmf3apcsmnpdn1wlrbs3dxh"))))
(build-system go-build-system)
(arguments
'(#:import-path "github.com/smartystreets/goconvey"))
(propagated-inputs
(list go-github.com-jtolds-gls go-github.com-smartystreets-assertions))
(synopsis "Go testing tool with both a web and terminal user interface")
(description
"GoConvey is a testing tool for Go. It integrates with go test, can show
test coverage and has a web user interface that will refresh automatically.")
(home-page "https://github.com/smartystreets/goconvey")
(license license:expat)))
(define-public googletest
(package
(name "googletest")
@ -1227,14 +1139,14 @@ available via the @code{unittest.mock} module.")
(define-public python-nose2
(package
(name "python-nose2")
(version "0.11.0")
(version "0.14.0")
(source
(origin
(method url-fetch)
(uri (pypi-uri "nose2" version))
(sha256
(base32
"1scxwvwbgfdj41acma41xzdhcfdwjj9irj6sfifdbyf9dryqs83d"))))
"1936fkrxg672bhp9i32ivna7jbydl9dpbhyn5f3059xrl1qdfa2w"))))
(build-system python-build-system)
(arguments
(list #:phases
@ -1245,10 +1157,6 @@ available via the @code{unittest.mock} module.")
;; Tests require nose2 itself.
(setenv "PYTHONPATH" (getcwd))
(invoke (string-append #$output "/bin/nose2") "-v")))))))
(native-inputs
(list python-coverage))
(propagated-inputs
(list python-six))
(home-page "https://github.com/nose-devs/nose2")
(synopsis "Next generation of nicer testing for Python")
(description
@ -1480,6 +1388,27 @@ from a .env file before running tests.")
contacting the real http server.")
(license license:expat)))
(define-public python-pytest-nunit
(package
(name "python-pytest-nunit")
(version "1.0.4")
(source
(origin
(method url-fetch)
(uri (pypi-uri "pytest-nunit" version))
(sha256
(base32 "1gw3a33myq9yncjixs3kkcrr1xkjzvvf3xk6x955p3i79wlwkswx"))))
(build-system pyproject-build-system)
(arguments (list #:tests? #false)) ;no tests included
(propagated-inputs (list python-attrs python-pytest))
(native-inputs (list python-pytest python-pytest-cov python-xmlschema))
(home-page "https://github.com/pytest-dev/pytest-nunit")
(synopsis "Pytest plugin for generating NUnit3 test result XML output")
(description
"This package provides a pytest plugin for generating NUnit3 test result
XML output")
(license license:expat)))
(define-public python-pytest-param-files
(package
(name "python-pytest-param-files")

View File

@ -60,8 +60,8 @@
#:use-module ((guix search-paths) #:select ($SSL_CERT_DIR)))
(define-public cuirass
(let ((commit "bdc1f9f304a3f5931ec507dcfe0b91b185b70708")
(revision "1"))
(let ((commit "7bcd3d079f0ec45ac50f0dbc14eb4ec68c6a6b53")
(revision "2"))
(package
(name "cuirass")
(version (git-version "1.2.0" revision commit))
@ -74,7 +74,7 @@
(file-name (git-file-name name version))
(sha256
(base32
"031vv3rk7vzal611iq8sgq5yackp78kdpz8qn78j561pl9bip80n"))))
"0x92dsck8ryyqz5cbs6i11wdrsbagrl85jddzc52rmwzqzrig9j2"))))
(build-system gnu-build-system)
(arguments
(list #:modules `((guix build utils)

View File

@ -25,7 +25,7 @@
;;; Copyright © 2021 jgart <jgart@dismail.de>
;;; Copyright © 2021 Julien Lepiller <julien@lepiller.eu>
;;; Copyright © 2021 Disseminate Dissent <disseminatedissent@protonmail.com>
;;; Copyright © 2022, 2023 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2022-2024 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2022 muradm <mail@muradm.net>
;;; Copyright © 2022 Attila Lendvai <attila@lendvai.name>
;;; Copyright © 2022 Arun Isaac <arunisaac@systemreboot.net>
@ -187,45 +187,39 @@ development effort.")
(define-public range-v3
(package
(name "range-v3")
(version "0.11.0")
(version "0.12.0")
(source
(origin
(method git-fetch)
(uri
(git-reference
(url "https://github.com/ericniebler/range-v3.git")
(commit version)))
(file-name
(git-file-name name version))
(patches (search-patches "range-v3-build-with-gcc10.patch"))
(uri (git-reference
(url "https://github.com/ericniebler/range-v3.git")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "18230bg4rq9pmm5f8f65j444jpq56rld4fhmpham8q3vr1c1bdjh"))))
(base32 "0r85s5rmp5ixmik2y5y4w760pa38j1sg9hbr1fss2flibzvrf53d"))))
(build-system cmake-build-system)
(arguments
(list
#:configure-flags
#~(list "-DRANGES_NATIVE=OFF")))
(native-inputs
(list doxygen gcc-9 perl))
(inputs
(list boost))
#:configure-flags #~(list "-DRANGES_NATIVE=OFF")))
(native-inputs (list doxygen perl))
(inputs (list boost))
(synopsis "Range library for C++14/17/20")
(description "Range-v3 is an extension of the Standard Template Library that
(description
"Range-v3 is an extension of the Standard Template Library that
makes its iterators and algorithms more powerful by making them composable.
Unlike other range-like solutions which, seek to do away with iterators, in
range-v3 ranges are an abstraction layer on top of iterators.")
(home-page "https://github.com/ericniebler/range-v3/")
(license
(list
;; Elements of Programming
(license:x11-style "file:///LICENSE.txt")
;; SGI STL
license:sgifreeb2.0
;;; LibC++ (dual-licensed)
license:expat
license:ncsa
;; Others
license:boost1.0))))
(license (list
;; Elements of Programming
(license:x11-style "file:///LICENSE.txt")
;; SGI STL
license:sgifreeb2.0
;; LibC++ (dual-licensed)
license:expat
license:ncsa
;; Others
license:boost1.0))))
(define-public robin-hood-hashing
(package
@ -1628,7 +1622,7 @@ provides a number of utilities to make coding with expected cleaner.")
(define-public immer
(package
(name "immer")
(version "0.8.0")
(version "0.8.1")
(source (origin
(method git-fetch)
(uri (git-reference
@ -1636,19 +1630,12 @@ provides a number of utilities to make coding with expected cleaner.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "11km3l5h3rgsbj8yfyzk3fnx9na55l6zs2sxpx922yvlvs2blh27"))
(modules '((guix build utils)))
(snippet #~(begin
(delete-file "tools/include/doctest.h")
(delete-file "tools/include/catch.hpp")
(substitute* (find-files "test" "\\.[cih]pp")
(("<catch.hpp>") "<catch2/catch.hpp>")
(("<doctest.h>") "<doctest/doctest.h>"))
(substitute* (find-files "test/oss-fuzz" "\\.cpp")
;; someone used the wrong header :)
(("<fmt/printf.h>") "<fmt/ostream.h>"))))))
(base32 "03qkr42h0g6rivj3kq207gzgnv7hq88y69q16l2vg1lbvjcgca2g"))))
(build-system cmake-build-system)
(arguments (list #:test-target "check"))
(arguments (list #:test-target "check"
;; -Werror appears to report false positives.
;; See <https://github.com/arximboldi/immer/issues/223>.
#:configure-flags #~(list "-DDISABLE_WERROR=ON")))
(inputs (list boost libgc c-rrb))
(native-inputs (list catch2 doctest fmt pkg-config))
(home-page "https://sinusoid.es/immer")

File diff suppressed because it is too large Load Diff

View File

@ -64836,6 +64836,37 @@ It is automatically published using the compiler repository at
(license (list license:asl2.0
license:expat))))
(define-public rust-rustc-demangle-capi-0.1
(package
(name "rust-rustc-demangle-capi")
(version "0.1.0")
(source
(origin
(method url-fetch)
(uri (crate-uri "rustc-demangle-capi" version))
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32 "1s2g4z1yrh1sxl4qkmpd19ss3x2lr9115vbir7pnhgy63r1d63yv"))))
(build-system cargo-build-system)
(arguments
(list
#:cargo-inputs `(("rust-rustc-demangle" ,rust-rustc-demangle-0.1))
#:phases
#~(modify-phases %standard-phases
(add-after 'install 'install-c-library
(lambda _
(install-file
(car (find-files "." "^rustc_demangle\\.h$"))
(string-append #$output "/include"))
(install-file
(car (find-files "." "^librustc_demangle.so$"))
(string-append #$output "/lib")))))))
(home-page "https://github.com/alexcrichton/rustc-demangle")
(synopsis "C API for the @code{rustc-demangle} crate")
(description "This package provides a C API library for the
@code{rustc-demangle} crate.")
(license (list license:expat license:asl2.0))))
(define-public rust-rustc-hash-1
(package
(name "rust-rustc-hash")

View File

@ -745,7 +745,9 @@ returned."
"Returns PACKAGE that contains a cross-compilation tool chain for TARGET
with XBINUTILS, XGCC and LIBC (if exists for TARGET)."
(package
(name (string-append (package-name xgcc) "-toolchain"))
;; Using PACKAGE-NAME of XGCC is avoided here as there are platforms that
;; still need a toolchain but don't have a libc (e.g. or1k-elf).
(name (string-append "gcc-cross-" target "-toolchain"))
(version (package-version xgcc))
(source #f)
(build-system trivial-build-system)

View File

@ -38,5 +38,8 @@
(define-public gcc-cross-i686-w64-mingw32-toolchain
(cross-gcc-toolchain "i686-w64-mingw32"))
(define-public gcc-cross-or1k-elf-toolchain
(cross-gcc-toolchain "or1k-elf"))
(define-public gcc-cross-x86_64-w64-mingw32-toolchain
(cross-gcc-toolchain "x86_64-w64-mingw32"))

View File

@ -421,7 +421,7 @@ sugar and output formatting inspired from @code{httpie}.")
(define-public trurl
(package
(name "trurl")
(version "0.8")
(version "0.9")
(source
(origin
(method git-fetch)
@ -430,7 +430,7 @@ sugar and output formatting inspired from @code{httpie}.")
(commit (string-append name "-" version))))
(file-name (git-file-name name version))
(sha256
(base32 "19zdpjp01n7s7zgixq3irqfnx66dmqf8zyp0dlb6y7ga673lqwi8"))))
(base32 "10gsl0fdpybfcffmgf3qww7cpw3ifczl601042a2mqmwwrlx5zj7"))))
(build-system gnu-build-system)
(arguments
(list

View File

@ -28,7 +28,7 @@
;;; Copyright © 2017, 2018 Ben Woodcroft <donttrustben@gmail.com>
;;; Copyright © 2017 Rutger Helling <rhelling@mykolab.com>
;;; Copyright © 2017, 2018, 2019 Pierre Langlois <pierre.langlois@gmx.com>
;;; Copyright © 2015, 2017, 2018, 2019, 2021, 2022, 2023 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2015, 2017, 2018, 2019, 2021, 2022, 2023, 2024 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2017 Kristofer Buffington <kristoferbuffington@gmail.com>
;;; Copyright © 2018 Amirouche Boubekki <amirouche@hypermove.net>
;;; Copyright © 2018 Joshua Sierles, Nextjournal <joshua@nextjournal.com>
@ -578,6 +578,35 @@ the API, and provides features such as:
@end itemize")
(license license:bsd-3)))
(define-public python-prisma
(package
(name "python-prisma")
(version "0.12.0")
(source
(origin
(method url-fetch)
(uri (pypi-uri "prisma" version))
(sha256
(base32 "1y9m3bailnvid59dl4vx31vysaqbcg6gsppskyymaxg3m96808pc"))))
(build-system pyproject-build-system)
(propagated-inputs
(list python-cached-property
python-click
python-dotenv
python-httpx
python-jinja2
python-nodeenv
python-pydantic
python-strenum
python-tomlkit
python-typing-extensions))
(home-page "https://github.com/RobertCraigie/prisma-client-py")
(synopsis "Fully type-safe database client")
(description
"Prisma Client Python is an auto-generated and fully type-safe database
client.")
(license license:asl2.0)))
(define-public python-pylibmc
(package
(name "python-pylibmc")
@ -3763,7 +3792,7 @@ PickleShare.")
(define-public python-apsw
(package
(name "python-apsw")
(version "3.42.0.1")
(version "3.45.1.0")
;; The compressed release has fetching functionality disabled.
(source
(origin
@ -3773,11 +3802,11 @@ PickleShare.")
version "/apsw-" version ".zip"))
(sha256
(base32
"0dr7zymn45x2793cilr709rnwn9g1c4n4vzln57y2lhj7420ykic"))))
"1vfrzb414pbh5k0cgcqkp039jvla2galapn4a551zgh8xi70bnrp"))))
(build-system pyproject-build-system)
(native-inputs
(list python-cython unzip))
(inputs (list sqlite-next)) ;SQLite 3.42 required.
(list unzip))
(inputs (list sqlite-next)) ;SQLite 3.45.1 required.
(arguments
(list
#:phases
@ -5221,7 +5250,7 @@ mechanism of @code{dogpile}.")
(define-public datasette
(package
(name "datasette")
(version "0.64.2")
(version "1.0a7")
(source (origin
(method git-fetch) ;for tests
(uri (git-reference
@ -5230,7 +5259,7 @@ mechanism of @code{dogpile}.")
(file-name (git-file-name name version))
(sha256
(base32
"1c8ajdaraynrjvsb8xxxnkb7zgm5fwq60qczaz00n465ki80j4h3"))))
"1wwdx2xqkxygbww1nzpr6h702ims6zcxpjskh8fldn1kby591qgg"))))
(build-system pyproject-build-system)
(arguments
(list
@ -5269,6 +5298,7 @@ mechanism of @code{dogpile}.")
(list python-aiofiles
python-asgi-csrf
python-asgiref
python-asyncinject
python-click
python-click-default-group
python-httpx
@ -5280,6 +5310,7 @@ mechanism of @code{dogpile}.")
python-pint
python-pluggy
python-pyyaml
python-sqlite-utils
python-uvicorn))
(native-inputs
(list python-beautifulsoup4

View File

@ -1,5 +1,5 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2018, 2020-2023 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2018, 2020-2024 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2018, 2020 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2020 Marius Bakke <marius@gnu.org>
;;;
@ -87,7 +87,7 @@ contains the archive keys used for that.")
(define-public debian-ports-archive-keyring
(package
(name "debian-ports-archive-keyring")
(version "2023.02.01")
(version "2024.01.05")
(source
(origin
(method url-fetch)
@ -96,7 +96,7 @@ contains the archive keys used for that.")
"/debian-ports-archive-keyring_" version ".tar.xz"))
(sha256
(base32
"1xq7i6plgfbf4drqdmmk1yija48x11jmhnk2av3cajn2cdhkw73s"))))
"010yaxc6ngq4ygh7mjyz2bk3w8ialxzya1bqwc7knavaixz9gfpp"))))
(build-system gnu-build-system)
(arguments
'(#:tests? #f ; No test suite.
@ -189,7 +189,7 @@ contains the archive keys used for that.")
(define-public debootstrap
(package
(name "debootstrap")
(version "1.0.132")
(version "1.0.134")
(source
(origin
(method git-fetch)
@ -198,7 +198,7 @@ contains the archive keys used for that.")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "1l6mc3i2wqfhmhj85x9qiiqchqp9br6gg54hv1xs08h8xndmfchf"))))
(base32 "0k9gi6gn8qlqs81r2q1hx5wfyax3nvpkk450girdra7dh54iidr4"))))
(build-system gnu-build-system)
(arguments
(list
@ -210,9 +210,7 @@ contains the archive keys used for that.")
(let ((debian #$(this-package-input "debian-archive-keyring"))
(ubuntu #$(this-package-input "ubuntu-keyring")))
(substitute* "Makefile"
(("/usr") "")
(("-o root -g root") "")
(("chown root.*") "\n"))
(("/usr") ""))
(substitute* '("scripts/etch"
"scripts/potato"
"scripts/sarge"

View File

@ -50,6 +50,7 @@
#:use-module (gnu packages code)
#:use-module (gnu packages compression)
#:use-module (gnu packages flex)
#:use-module (gnu packages gcc)
#:use-module (gnu packages gdb)
#:use-module (gnu packages glib)
#:use-module (gnu packages gtk)
@ -59,6 +60,7 @@
#:use-module (gnu packages libusb)
#:use-module (gnu packages linux)
#:use-module (gnu packages llvm)
#:use-module (gnu packages multiprecision)
#:use-module (gnu packages ncurses)
#:use-module (gnu packages ninja)
#:use-module (gnu packages perl)
@ -459,6 +461,59 @@ server and embedded PowerPC, and S390 guests.")
;; Several tests fail on MIPS.
(supported-systems (delete "mips64el-linux" %supported-systems))))))
(define-public aflplusplus
(package
(inherit american-fuzzy-lop)
(name "aflplusplus")
(version "4.09c")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/AFLplusplus/AFLplusplus")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
"12bplpd8cifla6m9l130fd22ggzkhd1w5s1aifw1idpy3njhj129"))))
(arguments
(substitute-keyword-arguments (package-arguments american-fuzzy-lop)
((#:make-flags _ ''())
#~(list (string-append "PREFIX=" #$output)
(string-append "DOC_PATH=" #$output "/share/doc/"
#$(package-name this-package) "-"
#$(package-version this-package))
(string-append "CC=" #$(cc-for-target))))
((#:phases phases '%standard-phases)
#~(modify-phases #$phases
;; For GCC plugins.
(add-after 'unpack 'patch-gcc-path
(lambda* (#:key inputs #:allow-other-keys)
(substitute* "src/afl-cc.c"
(("alt_cc = \"gcc\";")
(format #f "alt_cc = \"~a\";"
(search-input-file inputs "bin/gcc")))
(("alt_cxx = \"g\\+\\+\";")
(format #f "alt_cxx = \"~a\";"
(search-input-file inputs "bin/g++"))))))))))
;; According to the Dockerfile, GCC 12 is producing compile errors for some
;; targets, so explicitly use GCC 11 here.
(inputs (list gcc-11 gmp python qemu))
(native-inputs (list gcc-11))
(home-page "https://aflplus.plus/")
(description
"AFLplusplus is a security-oriented fuzzer that employs a novel type of
compile-time instrumentation and genetic algorithms to automatically discover
clean, interesting test cases that trigger new internal states in the targeted
binary. This substantially improves the functional coverage for the fuzzed
code. The compact synthesized corpora produced by the tool are also useful for
seeding other, more labor- or resource-intensive testing regimes down the road.
It is a fork of American Fuzzy Lop fuzzer and features:
@itemize
@item A more recent qemu version.
@item More algorithms like collision-free coverage, enhanced laf-intel &
redqueen, AFLfast++ power schedules, MOpt mutators, unicorn_mode, etc.
@end itemize")))
(define-public stress-make
(let ((commit "97815bed8060de33952475b3498767c91f59ffd9")
(revision "2")) ;No official source distribution

View File

@ -74,7 +74,7 @@
(define-public diffoscope
(package
(name "diffoscope")
(version "253")
(version "255")
(source
(origin
(method git-fetch)
@ -83,7 +83,7 @@
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "1nvq0lv246rah0ryb2qd20yf3gfy0iwfi3335rg9c3gpz0ha4wnb"))))
(base32 "07mkmwp3ni2dh5w5q2vxkc588l5dabcly3jrd8ic62318si7d400"))))
(build-system python-build-system)
(arguments
(list
@ -305,7 +305,7 @@ them in detail for later analysis.")
(define-public trydiffoscope
(package
(name "trydiffoscope")
(version "67.0.1")
(version "67.0.6")
(source
(origin
(method git-fetch)
@ -315,7 +315,7 @@ them in detail for later analysis.")
(file-name (git-file-name name version))
(sha256
(base32
"03b66cjii7l2yiwffj6ym6mycd5drx7prfp4j2550281pias6mjh"))))
"0jzxgqraf727fvjcc9bgwz8zymjiix07x54xzqpvm52cv681nd9j"))))
(arguments
`(#:phases
(modify-phases %standard-phases

View File

@ -5,8 +5,8 @@
;;; Copyright © 2017 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2017, 2019, 2022 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2020 Guy Fleury Iteriteka <gfleury@disroot.org>
;;; Copyright © 2021-2023 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2021 Maxim Cournoyer <maxim.cournoyer@gmail.com>
;;; Copyright © 2021-2024 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2021, 2024 Maxim Cournoyer <maxim.cournoyer@gmail.com>
;;; Copyright © 2022 ( <paren@disroot.org>
;;; Copyright © 2022 Esther Flashner <esther@flashner.co.il>
;;;
@ -136,8 +136,7 @@ to a minimal test case.")
(string-append "my $gdc_dir = \""
(dirname (search-input-file inputs "/bin/gdc"))
"\";\n"))))))))
(inputs
(list gdc-11 perl))
(inputs (list gdc perl))
(home-page "https://github.com/D-Programming-GDC/gdmd")
(synopsis "DMD-like wrapper for GDC")
(description "This package provides a DMD-like wrapper for the
@ -192,8 +191,8 @@ to a minimal test case.")
("libedit" ,libedit)
("zlib" ,zlib)))
(native-inputs
`(("lld-wrapper" ,(make-lld-wrapper lld-14 #:lld-as-ld? #t))
("llvm" ,llvm-14)
`(("lld-wrapper" ,(make-lld-wrapper lld-15 #:lld-as-ld? #t))
("llvm" ,llvm-15)
("ldc" ,gdmd)
("ninja" ,ninja)
("python-wrapper" ,python-wrapper)
@ -356,9 +355,177 @@ integration tests...\n")
(append (delete "llvm"
(alist-replace "ldc" (list ldc-bootstrap)
(package-native-inputs ldc-bootstrap)))
`(("clang" ,clang-14) ;propagates llvm and clang-runtime
`(("clang" ,clang-15) ;propagates llvm and clang-runtime
("python-lit" ,python-lit))))))
;;; Bootstrap version of phobos that is built with GDC, using GDC's standard
;;; library.
(define dmd-bootstrap
(package
;; This package is purposefully named just "dmd" and not "dmd-bootstrap",
;; as the final dmd package rewrites references from this one to itself,
;; and their names must have the same length to avoid corrupting the
;; binary.
(name "dmd")
(version "2.106.1")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/dlang/dmd")
(commit (string-append "v" version))))
(file-name (git-file-name "dmd" version))
(sha256
(base32
"1bq4jws1vns2jjzfz7biyngrx9y5pvvgklymhrvb5kvbzky1ldmy"))))
(build-system gnu-build-system)
(arguments
(list
#:disallowed-references (list (gexp-input (canonical-package gcc)
"lib"))
;; Disable tests, as gdmd cannot cope with some arguments used such as
;; '-conf'.
#:tests? #f
#:test-target "test"
#:make-flags
#~(list (string-append "CC=" #$(cc-for-target))
;; XXX: Proceed despite conflicts from symbols provided by both
;; the source built and GDC.
"DFLAGS=-L--allow-multiple-definition"
"ENABLE_RELEASE=1"
(string-append "HOST_CXX=" #$(cxx-for-target))
"HOST_DMD=gdmd"
(string-append "INSTALL_DIR=" #$output)
;; Do not build the shared libphobos2.so library, to avoid
;; retaining a reference to gcc:lib.
"SHARED=0"
(string-append "SYSCONFDIR=" #$output "/etc")
"VERBOSE=1"
"-f" "posix.mak")
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'copy-phobos-source-and-chdir
;; Start with building phobos, which in turns will automatically
;; build druntime and dmd. A minimal dmd command is still
;; required to do so, which is why we need dmd-bootstrap-0.
(lambda _
(symlink "." "dmd") ;to please the build system expected layout
(copy-recursively
#$(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/dlang/phobos")
(commit (string-append "v" version))))
(file-name (git-file-name "phobos" version))
(sha256
(base32
"1yw7nb5d78cx9m7sfibv7rfc7wj3w0dw9mfk3d269qpfpnwzs4n9")))
"phobos")
(chdir "phobos")))
(add-after 'copy-phobos-source-and-chdir 'adjust-phobos-install-dirs
(lambda _
(substitute* "posix.mak"
;; Install to lib directory, not to e.g. 'linux/lib64'.
(("\\$\\(INSTALL_DIR)/\\$\\(OS)/\\$\\(lib_dir)")
(string-append #$output "/lib"))
;; Do not install license file, already done by the gnu build
;; system.
((".*\\$\\(INSTALL_DIR)/phobos-LICENSE.txt.*") ""))))
(delete 'configure)
(add-after 'install 'install-druntime
(lambda args
(chdir "../druntime")
(apply (assoc-ref %standard-phases 'install) args)
(chdir "..")))
(add-after 'install-druntime 'install-includes
(lambda _
;; Normalize the include files prefix to include/dmd.
(let ((include-dir (string-append #$output "/include/dmd")))
(mkdir-p include-dir)
(rename-file (string-append #$output "/src/phobos")
(string-append include-dir))
(copy-recursively "druntime/import" include-dir))
(delete-file-recursively (string-append #$output "/src"))))
(add-after 'install-druntime 'install-dmd
(assoc-ref %standard-phases 'install))
(add-after 'install-license-files 'refine-install-layout
(lambda _
(let* ((docdir (string-append #$output "/share/doc/"
(strip-store-file-name #$output)))
;; The dmd binary gets installed to
;; e.g. /linux/bin64/dmd.
(dmd (car (find-files #$output "^dmd$")))
(dmd.conf (car (find-files #$output "^dmd.conf$")))
(os-dir (dirname (dirname dmd))))
;; Move samples from root to the doc directory.
(rename-file (string-append #$output "/samples")
(string-append docdir "/samples"))
;; Remove duplicate license file.
(delete-file (string-append #$output
"/dmd-boostlicense.txt"))
;; Move dmd binary and dmd.conf.
(install-file dmd (string-append #$output "/bin"))
(install-file dmd.conf (string-append #$output "/etc"))
(delete-file-recursively os-dir))))
(add-after 'refine-install-layout 'patch-dmd.conf
(lambda* (#:key outputs #:allow-other-keys)
(substitute* (search-input-file outputs "etc/dmd.conf")
(("lib(32|64)")
"lib")
(("\\.\\./src/(phobos|druntime/import)")
"include/dmd")))))))
(native-inputs (list gdmd which))
(home-page "https://github.com/dlang/dmd")
(synopsis "Reference D Programming Language compiler")
(description "@acronym{DMD, Digital Mars D compiler} is the reference
compiler for the D programming language.")
;; As reported by upstream:
;; https://wiki.dlang.org/Compilers#Comparison
(supported-systems '("i686-linux" "x86_64-linux"))
(license license:boost1.0)))
;;; Second bootstrap of DMD, built using dmd-bootstrap, with its shared
;;; libraries preserved.
(define-public dmd
(package
(inherit dmd-bootstrap)
(arguments
(substitute-keyword-arguments
(strip-keyword-arguments
'(#:tests?) ;reinstate tests
(package-arguments dmd-bootstrap))
((#:disallowed-references _ ''())
(list dmd-bootstrap))
((#:modules _ ''())
'((guix build gnu-build-system)
(guix build utils)
(srfi srfi-1))) ;for fold
((#:make-flags flags ''())
#~(fold delete #$flags '("DFLAGS=-L--allow-multiple-definition"
"HOST_DMD=gdmd"
"SHARED=0")))
((#:phases phases '%standard-phases)
#~(modify-phases #$phases
(add-after 'patch-dmd.conf 'rewrite-references-to-bootstrap
;; DMD keeps references to include files used to build a
;; binary. Rewrite those of dmd-bootstrap to itself, to reduce
;; its closure size.
(lambda* (#:key native-inputs inputs outputs
#:allow-other-keys)
(let ((dmd (search-input-file outputs "bin/dmd"))
(dmd-bootstrap (dirname
(dirname
(search-input-file
(or native-inputs inputs)
"bin/dmd")))))
;; XXX: Use sed, as replace-store-references wouldn't
;; replace the references, while substitute* throws an
;; error.
(invoke "sed" "-i"
(format #f "s,~a,~a,g" dmd-bootstrap #$output)
dmd))))))))
(native-inputs (modify-inputs (package-native-inputs dmd-bootstrap)
(replace "gdmd" dmd-bootstrap)))))
(define-public dub
(package
(name "dub")
@ -453,3 +620,35 @@ needed.")
(synopsis "D binding and OO wrapper of GTK+")
(description "This package provides bindings to GTK+ for D.")
(license license:lgpl2.1)))
(define-public d-demangler
(package
(name "d-demangler")
(version "0.0.2")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/lievenhey/d_demangler")
(commit (string-append "version-" version))))
(file-name (git-file-name name version))
(sha256
(base32
"13lbbxlaa1mffjs57xchl1g6kyr5lxi0z5x7snyvym0knslxwx2g"))))
(build-system gnu-build-system)
(arguments
(list
#:tests? #f ;no test suite
#:make-flags #~(list (string-append "CC=" #$(cc-for-target))
"d_demangle")
#:phases #~(modify-phases %standard-phases
(delete 'configure)
(replace 'install
(lambda _
(install-file "libd_demangle.so"
(string-append #$output "/lib")))))))
(native-inputs (list dmd))
(home-page "https://github.com/lievenhey/d_demangler")
(synopsis "Utility to demangle D symbols")
(description "@command{d_demangle} is a small utility that can be used to
demangle D symbols. A shared library is also provided.")
(license license:gpl3+)))

File diff suppressed because it is too large Load Diff

View File

@ -9,7 +9,7 @@
;;; Copyright © 2016 David Thompson <dthompson2@worcester.edu>
;;; Copyright © 2016 Nikita <nikita@n0.is>
;;; Copyright © 2017 Marius Bakke <mbakke@fastmail.com>
;;; Copyright © 2017, 2019, 2020 Maxim Cournoyer <maxim.cournoyer@gmail.com>
;;; Copyright © 2017, 2019, 2020, 2023, 2024 Maxim Cournoyer <maxim.cournoyer@gmail.com>
;;; Copyright © 2017 Alex Vong <alexvong1995@gmail.com>
;;; Copyright © 2017, 2018 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2017, 2023 Janneke Nieuwenhuizen <janneke@gnu.org>
@ -59,6 +59,7 @@
#:use-module (gnu packages fontutils)
#:use-module (gnu packages freedesktop)
#:use-module (gnu packages fribidi)
#:use-module (gnu packages gawk)
#:use-module (gnu packages gcc)
#:use-module (gnu packages gd)
#:use-module (gnu packages gettext)
@ -157,13 +158,60 @@
(delete-file "configure"))))
(add-after 'unpack 'patch-program-file-names
(lambda* (#:key inputs #:allow-other-keys)
;; Substitute "sh" command.
(substitute* '("src/callproc.c"
"lisp/term.el"
"lisp/htmlfontify.el"
"lisp/mail/feedmail.el"
"lisp/obsolete/pgg-pgp.el"
"lisp/obsolete/pgg-pgp5.el"
"lisp/obsolete/terminal.el"
"lisp/org/ob-eval.el"
"lisp/textmodes/artist.el"
"lisp/progmodes/sh-script.el")
"lisp/progmodes/sh-script.el"
"lisp/textmodes/artist.el"
"lisp/htmlfontify.el"
"lisp/term.el")
(("\"/bin/sh\"")
(format #f "~s" (search-input-file inputs "/bin/sh"))))
(format #f "~s" (search-input-file inputs "bin/sh"))))
(substitute* '("lisp/gnus/mm-uu.el"
"lisp/gnus/nnrss.el"
"lisp/mail/blessmail.el")
(("\"#!/bin/sh\\\n\"")
(format #f "\"#!~a~%\"" (search-input-file inputs "bin/sh"))))
(substitute* '("lisp/jka-compr.el"
"lisp/man.el")
(("\"sh\"")
(format #f "~s" (search-input-file inputs "bin/sh"))))
;; Substitute "awk" command.
(substitute* '("lisp/gnus/nnspool.el"
"lisp/org/ob-awk.el"
"lisp/man.el")
(("\"awk\"")
(format #f "~s" (search-input-file inputs "bin/awk"))))
;; Substitute "find" command.
(substitute* '("lisp/gnus/gnus-search.el"
"lisp/obsolete/nnir.el"
"lisp/progmodes/executable.el"
"lisp/progmodes/grep.el"
"lisp/filecache.el"
"lisp/ldefs-boot.el"
"lisp/mpc.el")
(("\"find\"")
(format #f "~s" (search-input-file inputs "bin/find"))))
;; Substitute "sed" command.
(substitute* "lisp/org/ob-sed.el"
(("org-babel-sed-command \"sed\"")
(format #f "org-babel-sed-command ~s"
(search-input-file inputs "bin/sed"))))
(substitute* "lisp/man.el"
(("Man-sed-command \"sed\"")
(format #f "Man-sed-command ~s"
(search-input-file inputs "bin/sed"))))
(substitute* "lisp/doc-view.el"
(("\"(gs|dvipdf|ps2pdf|pdftotext)\"" all what)
(let ((replacement (false-if-exception
@ -254,7 +302,7 @@
(copy-file
(car (find-files "bin" "^emacs-([0-9]+\\.)+[0-9]+$"))
"bin/emacs")))))))
(inputs (list bash-minimal coreutils gzip ncurses))
(inputs (list bash-minimal coreutils findutils gawk gzip ncurses sed))
(native-inputs (list autoconf pkg-config texinfo))
(home-page "https://www.gnu.org/software/emacs/")
(synopsis "The extensible text editor (minimal build for byte-compilation)")
@ -281,7 +329,8 @@ languages.")
;; Most variants support tree-sitter, so let's include it here.
(search-path-specification
(variable "TREE_SITTER_GRAMMAR_PATH")
(files '("lib/tree-sitter")))))))
(files '("lib/tree-sitter")))))
(properties `((upstream-name . "emacs")))))
(define-public emacs-no-x
(package/inherit emacs-minimal

View File

@ -19,7 +19,7 @@
;;; Copyright © 2020, 2023 Marius Bakke <marius@gnu.org>
;;; Copyright © 2020, 2021 Ekaitz Zarraga <ekaitz@elenq.tech>
;;; Copyright © 2020 B. Wilson <elaexuotee@wilsonb.com>
;;; Copyright © 2020, 2021, 2022, 2023 Vinicius Monego <monego@posteo.net>
;;; Copyright © 2020, 2021, 2022, 2023, 2024 Vinicius Monego <monego@posteo.net>
;;; Copyright © 2020, 2021, 2023 Morgan Smith <Morgan.J.Smith@outlook.com>
;;; Copyright © 2021 qblade <qblade@protonmail.com>
;;; Copyright © 2021 Gerd Heber <gerd.heber@gmail.com>
@ -2006,7 +2006,7 @@ high-performance parallel differential evolution (DE) optimization algorithm.")
;; See <https://debbugs.gnu.org/cgi/bugreport.cgi?bug=27344#236>.
(package
(name "libngspice")
(version "41")
(version "42")
(source
(origin
(method url-fetch)
@ -2017,7 +2017,7 @@ high-performance parallel differential evolution (DE) optimization algorithm.")
"old-releases/" version
"/ngspice-" version ".tar.gz")))
(sha256
(base32 "1i78im03kx6vp5yml0fiwvqnic8qhczl1893n8zc6l1gblwikqhw"))))
(base32 "02p5ar1cqwn70dw5xzx5v3qhm1p1xgb1xpzs1ljklcxjda2f6zvk"))))
(build-system gnu-build-system)
(arguments
`(;; No tests for libngspice exist.
@ -2681,7 +2681,7 @@ measurement devices and test equipment via GPIB, RS232, Ethernet or USB.")
(define-public python-scikit-rf
(package
(name "python-scikit-rf")
(version "0.30.0")
(version "0.31.0")
(source (origin
(method git-fetch) ;PyPI misses some files required for tests
(uri (git-reference
@ -2689,7 +2689,7 @@ measurement devices and test equipment via GPIB, RS232, Ethernet or USB.")
(commit (string-append "v" version))))
(sha256
(base32
"1fbws80glrakd08xzhifna831yk0bd8b0cizhfcjkg4km2nyx65c"))
"1cidv2373lwxy26kbzg4slaqvn2gpq67mvijgp0rydfx6mm6a89i"))
(file-name (git-file-name name version))))
(build-system pyproject-build-system)
(propagated-inputs (list python-matplotlib

View File

@ -57,7 +57,7 @@
(define-public xcb-imdkit
(package
(name "xcb-imdkit")
(version "1.0.5")
(version "1.0.6")
(source
(origin
(method url-fetch)
@ -65,7 +65,7 @@
"https://download.fcitx-im.org/fcitx5/xcb-imdkit/xcb-imdkit-"
version ".tar.xz"))
(sha256
(base32 "1k03ix0r385lf56pyw653h3f2inkl774n9fh1wkb2m4jv4kcsgrp"))
(base32 "0c2j02fxfl651mghh0l1228j2i5cqydcfv4ihp6c2j7hv0zkawgf"))
(modules '((guix build utils)))
(snippet
'(begin
@ -88,7 +88,7 @@ client.")
(define-public fcitx5
(package
(name "fcitx5")
(version "5.1.5")
(version "5.1.7")
(source
(origin
(method url-fetch)
@ -96,7 +96,7 @@ client.")
"https://download.fcitx-im.org/fcitx5/fcitx5/fcitx5-"
version "_dict.tar.xz"))
(sha256
(base32 "108a8561wh01vl5gqp2rnmnrh9qq3v8md3410dw46lx705a1wy4r"))))
(base32 "1wnky24a8jy4nwairzbb00j0rnn8qr2105va3kpymnvh0cyh0rwa"))))
(arguments
(list #:configure-flags #~(list "-DUSE_SYSTEMD=OFF")))
(build-system cmake-build-system)
@ -114,6 +114,7 @@ client.")
("json-c" ,json-c)
("libevent" ,libevent)
("libuuid" ,util-linux "lib")
("libuv" ,libuv)
("libxcb" ,libxcb)
("libxkbcommon" ,libxkbcommon)
("libxkbfile" ,libxkbfile)
@ -139,7 +140,7 @@ client.")
(define-public fcitx5-lua
(package
(name "fcitx5-lua")
(version "5.0.11")
(version "5.0.12")
(source
(origin
(method url-fetch)
@ -147,7 +148,7 @@ client.")
"https://download.fcitx-im.org/fcitx5/fcitx5-lua/fcitx5-lua-"
version ".tar.xz"))
(sha256
(base32 "1hc1vhaycfp9bjvch7qrvza5gdimr30rvwavbwqd27lrh36910yc"))))
(base32 "00kh0qzpzkfsnfh55lrpjpi5zs82vwpc9pb1n6f61gpgpiqxh7z4"))))
(build-system cmake-build-system)
(arguments
(list
@ -165,14 +166,14 @@ client.")
(define-public libime
(package
(name "libime")
(version "1.1.3")
(version "1.1.5")
(source
(origin
(method url-fetch)
(uri (string-append "https://download.fcitx-im.org/fcitx5/libime/libime-"
version "_dict.tar.xz"))
(sha256
(base32 "0c1zn4bi71a84jh7x0fly3xqrsjm08ja3sglxrkfm9snk0x6ybhf"))))
(base32 "1bjm9axwwgjjf8pqlm8p4b11ky58d5x6sqfwzkpczs0wdvbd3xkd"))))
(build-system cmake-build-system)
(inputs
(list fcitx5 boost (list zstd "lib")))
@ -187,7 +188,7 @@ editors.")
(define-public fcitx5-gtk
(package
(name "fcitx5-gtk")
(version "5.1.0")
(version "5.1.1")
(source
(origin
(method url-fetch)
@ -195,7 +196,7 @@ editors.")
"/fcitx5-gtk/fcitx5-gtk-"
version ".tar.xz"))
(sha256
(base32 "0rc4iwqb7ydysm95qpncfd8kvyzk36cfxwg1h0cjn98v3fxjf8kw"))))
(base32 "04xhg3xrx3m2kb5kl6pcmpnjb01wjb3wdnx4inpis0r0w0nsgkfn"))))
(build-system cmake-build-system)
(arguments
(list
@ -305,7 +306,7 @@ IM module for GTK+3 applications.
(define-public fcitx5-qt
(package
(name "fcitx5-qt")
(version "5.1.3")
(version "5.1.4")
(source
(origin
(method url-fetch)
@ -313,7 +314,7 @@ IM module for GTK+3 applications.
"/fcitx5-qt/fcitx5-qt-"
version ".tar.xz"))
(sha256
(base32 "0wyzq91fcqhv655fjhzfjmlj0xr365sl5cjgck75xaj08gj3mw61"))))
(base32 "0jdisavns5k718vrnh2lmmyrnys101szbw107d200nfl4i26wllj"))))
(build-system cmake-build-system)
(arguments
`(#:configure-flags
@ -340,7 +341,7 @@ for Qt based application.")
(define-public fcitx5-anthy
(package
(name "fcitx5-anthy")
(version "5.1.2")
(version "5.1.3")
(source
(origin
(method url-fetch)
@ -348,7 +349,7 @@ for Qt based application.")
"/fcitx5-anthy/fcitx5-anthy-"
version ".tar.xz"))
(sha256
(base32 "0a1x1b7y5n1a9clb9j9mryhx2fnd5l5rwb74f38c0s93rxx8fhpf"))))
(base32 "0dnvglzw1liacadhl3dx8sfnrw8l3ch0z2bbcby5imxzkxxmiqm4"))))
(build-system cmake-build-system)
(arguments
`(#:tests? #f)) ;; no tests
@ -364,7 +365,7 @@ the Anthy input method.")
(define-public fcitx5-chinese-addons
(package
(name "fcitx5-chinese-addons")
(version "5.1.2")
(version "5.1.3")
(source
(origin
(method url-fetch)
@ -372,7 +373,7 @@ the Anthy input method.")
"/fcitx5-chinese-addons/fcitx5-chinese-addons-"
version "_dict.tar.xz"))
(sha256
(base32 "13na8qvz0vh43gmxa81jn96xpp6maz71ga039z6lqr069hzsx1vc"))))
(base32 "0300z1j0285936ia9ihslydxwgmsnb43gqqyq4xm1ixfp1l12hzs"))))
(build-system cmake-build-system)
(arguments
`(#:configure-flags
@ -428,7 +429,7 @@ including input methods previous bundled inside Fcitx 4:
(define-public fcitx5-configtool
(package
(name "fcitx5-configtool")
(version "5.1.2")
(version "5.1.3")
(source
(origin
(method url-fetch)
@ -436,7 +437,7 @@ including input methods previous bundled inside Fcitx 4:
"https://download.fcitx-im.org/fcitx5"
"/fcitx5-configtool/fcitx5-configtool-" version ".tar.xz"))
(sha256
(base32 "1k6101wjl5j9qb174j75g5nbvz7hvh0cj01w6b9n65pqcv4hsf6c"))))
(base32 "1pnwrj6kgha91djfvd2439nbhrmjargpw8ashhb91y5h3cdz7vhz"))))
(build-system cmake-build-system)
(arguments
`(#:configure-flags
@ -538,7 +539,7 @@ for Fcitx 5 with following color variants:
(define-public fcitx5-rime
(package
(name "fcitx5-rime")
(version "5.1.3")
(version "5.1.4")
(source (origin
(method url-fetch)
(uri (string-append "https://download.fcitx-im.org/fcitx5"
@ -546,7 +547,7 @@ for Fcitx 5 with following color variants:
".tar.xz"))
(sha256
(base32
"0cs3zq69fpasch6sq9yar2qw8403rxr2g4hjxn7mmshi1h1j6nm8"))))
"02rq3rcmc23qd9ravh0nf0hywkzwn3l9hb2ja74vmrf7x5cqic5m"))))
(build-system cmake-build-system)
(arguments
'(#:tests? #f ;no tests

View File

@ -72,6 +72,7 @@
#:use-module (gnu packages gnupg)
#:use-module (gnu packages golang)
#:use-module (gnu packages golang-check)
#:use-module (gnu packages golang-crypto)
#:use-module (gnu packages guile)
#:use-module (gnu packages jemalloc)
#:use-module (gnu packages kerberos)

View File

@ -1197,81 +1197,51 @@ such as:
;; Adding debug symbols causes the size to exceed limits.
#~(delete "DEBUG=1" #$flags)))))))
(define (make-crust-package platform)
(package
(name (string-append "crust-"
(string-replace-substring platform "_" "-")))
(version "0.5")
(source
(origin
(method git-fetch)
(uri (git-reference
;; There are only GitHub generated release snapshots.
(url "https://github.com/crust-firmware/crust")
(commit (string-append "v" version))))
(file-name (git-file-name "crust" version))
(sha256
(base32
"0xgbbhifg3miwd3yp6jq9kp7nqgz5gzy00w95vba45j8jk5vjvvz"))))
(build-system gnu-build-system)
(arguments
(list
#:tests? #f ;no test suite
#:make-flags
(let ((triplet-without-vendor
(and (%current-target-system)
;; TODO: Is there a use case for allowing this?
(not (target-avr?))
(match (string-split (nix-system->gnu-triplet
(%current-target-system)) #\-)
((arch vendor os ..1)
(string-join `(,arch ,@os) "-"))))))
#~(list "CROSS_COMPILE=or1k-elf-"
"V=1"
#$@(if triplet-without-vendor
;; We are cross-compiling the tools, intended to be
;; executable for the target system.
(list (string-append "HOSTAR=" triplet-without-vendor
"-ar")
(string-append "HOSTCC=" triplet-without-vendor
"-gcc"))
;; Not cross-compiling.
(list "HOSTAR=ar"
"HOSTCC=gcc"))
"LEX=flex"))
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'do-not-build-tests
(lambda _
;; Attempting to build the tools test binary on a non-aarch64
;; architecture fails with: "No cache cleaning implementation
;; available for this architecture". Avoid building it (see:
;; https://github.com/crust-firmware/crust/issues/182).
(substitute* "tools/Makefile"
(("tools-y \\+= test") ""))))
(delete 'configure)
(add-before 'build 'defconfig
(lambda* (#:key make-flags #:allow-other-keys)
(let ((config-name (string-append #$platform "_defconfig")))
(apply invoke "make" (cons config-name make-flags)))))
(replace 'install
(lambda _
(for-each (lambda (file)
(install-file file (string-append #$output
"/libexec")))
(find-files "." "(scp\\.bin|\\.config)$"))
(install-file "build/tools/load"
(string-append #$output "/bin")))))))
;; The firmware is cross-compiled using a "bare bones" compiler (no libc).
;; Use our own tool chain for that.
(native-inputs
(list bison
(cross-gcc "or1k-elf")
(cross-binutils "or1k-elf")
flex))
(home-page "https://github.com/crust-firmware/crust")
(synopsis "System control processor firmware for Allwinner sunxi boards")
(description "Crust improves battery life and thermal performance by
(define make-crust-firmware
(mlambda (platform)
(package
(name (string-append "crust-"
(string-replace-substring platform "_" "-")
"-firmware"))
(version "0.6")
(source
(origin
(method git-fetch)
(uri (git-reference
;; There are only GitHub generated release snapshots.
(url "https://github.com/crust-firmware/crust")
(commit (string-append "v" version))))
(file-name (git-file-name "crust" version))
(sha256
(base32
"1blq6bi2rmg4qqwwr07pamv28b50mwcsybhpn9bws8vbzxa43afd"))))
(build-system gnu-build-system)
(arguments
(list
#:target "or1k-elf"
#:tests? #f ;no test suite
#:make-flags #~'("CROSS_COMPILE=or1k-elf-"
"V=1"
"HOSTAR=ar"
"HOSTCC=gcc"
"LEX=flex")
#:phases
#~(modify-phases %standard-phases
(delete 'configure)
(add-before 'build 'defconfig
(lambda* (#:key make-flags #:allow-other-keys)
(let ((config-name (string-append #$platform "_defconfig")))
(apply invoke "make" (cons config-name make-flags)))))
(replace 'install
(lambda _
(for-each (lambda (file)
(install-file file (string-append #$output
"/libexec")))
(find-files "." "(scp\\.bin|\\.config)$")))))))
(native-inputs (list bison flex))
(home-page "https://github.com/crust-firmware/crust")
(synopsis "Firmware for Allwinner sunxi SoCs")
(description "Crust improves battery life and thermal performance by
implementing a deep sleep state. During deep sleep, the CPU cores, the DRAM
controller, and most onboard peripherals are powered down, reducing power
consumption by 80% or more compared to an idle device. On boards without a
@ -1280,8 +1250,75 @@ device. For this to work, Crust runs outside the main CPU and DRAM, on a
dedicated always-on microprocessor called a System Control Processor (SCP).
Crust is designed to run on a specific SCP implementation, Allwinner's
AR100.")
;; Most files are dual-licensed "BSD-3 OR GPL2", a few are GPL2 only.
(license (list license:bsd-3 license:gpl2))))
;; Most files are dual-licensed "BSD-3 OR GPL2", a few are GPL2 only.
(license (list license:bsd-3 license:gpl2)))))
(define make-crust-tools
(mlambda (platform firmware)
(package
(inherit firmware)
(name (string-append "crust-"
(string-replace-substring platform "_" "-")
"-tools"))
(arguments
(list #:make-flags
#~(list "V=1"
"LEX=flex"
(string-append "HOSTAR=" #$(ar-for-target))
(string-append "HOSTCC=" #$(cc-for-target)))
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'do-not-build-tests
(lambda _
;; Attempting to build the tools test binary on a
;; non-aarch64 architecture fails with: "No cache
;; cleaning implementation available for this
;; architecture". Avoid building it (see:
;; https://github.com/crust-firmware/crust/issues/182).
(substitute* "tools/Makefile"
(("tools-y \\+= test") ""))))
(replace 'configure
(lambda* (#:key inputs native-inputs #:allow-other-keys)
(copy-file (search-input-file inputs "/libexec/.config")
".config")))
(replace 'build
(lambda* (#:key make-flags parallel-build?
#:allow-other-keys)
(apply invoke "make" "tools"
`(,@(if parallel-build?
`("-j"
,(number->string (parallel-job-count)))
'())
,@make-flags))))
(replace 'install
(lambda _
(install-file "build/tools/load"
(string-append #$output "/bin")))))))
(synopsis "Firmware for Allwinner sunxi SoCs (tools)")
(inputs (list firmware)))))
(define make-crust-package
(mlambda (platform)
(let* ((firmware (make-crust-firmware platform))
(tools (make-crust-tools platform firmware)))
(package
(inherit firmware)
(name (string-append "crust-"
(string-replace-substring platform "_" "-")))
(source #f)
(build-system trivial-build-system)
(arguments
(list #:modules '((guix build union))
#:builder
#~(begin
(use-modules (ice-9 match)
(guix build union))
(match %build-inputs
(((names . directory) ...)
(union-build #$output directory))))))
(native-inputs '())
(inputs (list firmware tools))))))
(define-public crust-pinebook
(make-crust-package "pinebook"))

View File

@ -1344,7 +1344,7 @@ and multimedia programs in the Python language.")
(define-public python-pygame-sdl2
(let ((real-version "2.1.0")
(renpy-version "8.1.3"))
(renpy-version "8.2.0"))
(package
(inherit python-pygame)
(name "python-pygame-sdl2")
@ -1354,7 +1354,7 @@ and multimedia programs in the Python language.")
(method url-fetch)
(uri (string-append "https://www.renpy.org/dl/" renpy-version
"/pygame_sdl2-" version ".tar.gz"))
(sha256 (base32 "0qlprs9n3w254ilizqzvr6s01zx72gh7an0bgwxsq4hm22qypdws"))
(sha256 (base32 "17mc39c7ha83kzv2wmq61a15mn6p8wh2y33ixhf5sb4bvyr48mhy"))
(modules '((guix build utils)))
(snippet
'(begin
@ -1395,7 +1395,7 @@ developed mainly for Ren'py.")
(define-public python-renpy
(package
(name "python-renpy")
(version "8.1.3")
(version "8.2.0")
(source
(origin
(method url-fetch)
@ -1403,7 +1403,7 @@ developed mainly for Ren'py.")
"/renpy-" version "-source.tar.bz2"))
(sha256
(base32
"1g6fz5dxp7yxhgv6q4brzf5hpfqq3l1g3dfv3fsiwwn6mj0b01z2"))
"02v54qqjjigfqhdr50kzhkdvplk56bvprq65jl57kcs1qhvlf5s9"))
(modules '((guix build utils)))
(snippet
#~(begin
@ -3228,7 +3228,7 @@ progresses the level, or you may regenerate tiles as the world changes.")
(define-public raylib
(package
(name "raylib")
(version "4.5.0")
(version "5.0")
(source (origin
(method git-fetch)
(uri (git-reference
@ -3238,7 +3238,7 @@ progresses the level, or you may regenerate tiles as the world changes.")
;; TODO: Unbundle src/external
(sha256
(base32
"00y8fsa4g9fk93s3wihbxl929m84hw3fflr0h409s3i1kfmv7ajj"))))
"0327licmylwlh5iyzw35pq7ci2d15rp3jms5i9p0vfg1rlv2sjw0"))))
(build-system cmake-build-system)
(arguments
(list #:tests? #f ;no test

View File

@ -37,7 +37,7 @@
;;; Copyright © 2018 Benjamin Slade <slade@jnanam.net>
;;; Copyright © 2018 Alex Vong <alexvong1995@gmail.com>
;;; Copyright © 2019, 2020 Pierre Neidhardt <mail@ambrevar.xyz>
;;; Copyright © 2019, 2020 Oleg Pykhalov <go.wigust@gmail.com>
;;; Copyright © 2019, 2020, 2024 Oleg Pykhalov <go.wigust@gmail.com>
;;; Copyright © 2019 Pierre Langlois <pierre.langlois@gmx.com>
;;; Copyright © 2019 Julien Lepiller <julien@lepiller.eu>
;;; Copyright © 2019, 2020 Jesse Gibbons <jgibbons2357+guix@gmail.com>
@ -72,7 +72,7 @@
;;; Copyright © 2022 Roman Riabenko <roman@riabenko.com>
;;; Copyright © 2022, 2023 zamfofex <zamfofex@twdb.moe>
;;; Copyright © 2022 Gabriel Arazas <foo.dogsquared@gmail.com>
;;; Copyright © 2022 Maxim Cournoyer <maxim.cournoyer@gmail.com>
;;; Copyright © 2022, 2024 Maxim Cournoyer <maxim.cournoyer@gmail.com>
;;; Copyright © 2022 Hendursaga <hendursaga@aol.com>
;;; Copyright © 2022 Parnikkapore <poomklao@yahoo.com>
;;; Copyright © 2023 Zheng Junjie <873216071@qq.com>
@ -6230,6 +6230,106 @@ application that locks the keyboard and mouse and instead displays bright
colors, pictures, and sounds.")
(license license:gpl3+)))
(define-public moonlight-qt
(package
(name "moonlight-qt")
(version "5.0.1")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/moonlight-stream/moonlight-qt")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
"1g1y736vw36lmh2bjymsf4b4ypr76x9lqz7frzpj7sn0vb9y5315"))))
(build-system qt-build-system)
(arguments
(list
#:tests? #f ;no test suite
#:phases
#~(modify-phases %standard-phases
(replace 'configure
(lambda* _
(symlink (string-append
#$(this-package-input "sdl2-gamecontrollerdb")
"/share/sdl2/gamecontrollerdb.txt")
"app/SDL_GameControllerDB/gamecontrollerdb.txt")
;; Unbundle libraries.
(substitute* "moonlight-qt.pro"
((" moonlight-common-c.*\n") "")
((" qmdnsengine.*\n") "")
((" h264bitstream.*\n") "")
((" app \\\\") " app")
(("app.depends") "INCLUDEPATH +="))
(invoke "qmake" (string-append "PREFIX=" #$output)))))))
(native-inputs (list pkg-config qttools-5))
(inputs (list ffmpeg
h264bitstream
libva
libvdpau
moonlight-common
openssl
opus
qmdnsengine
qtbase-5
qtdeclarative-5
qtquickcontrols2-5
qtsvg-5
sdl2
sdl2-ttf
sdl2-gamecontrollerdb))
(synopsis "GameStream client")
(description
"Moonlight is an implementation of NVIDIA's GameStream, as used by the
NVIDIA Shield.")
(home-page "https://moonlight-stream.org")
(license license:gpl3+)))
(define-public moonlight-common
;; Used as submodule in https://github.com/moonlight-stream/moonlight
(let ((commit "5de4a5b85a28d8d639482a1a105c3a06eb67a2fd")
(revision "1"))
(package
(name "moonlight-common")
(version (git-version "5.0.1" revision commit))
(source (origin
(method git-fetch)
(uri (git-reference
(url
"https://github.com/moonlight-stream/moonlight-common-c")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32
"05jm0vhyb6pizd8yj89rp6ak7bf5j9w06rrmbxh8jccxwqjgll92"))))
(build-system cmake-build-system)
(arguments
(list #:tests? #f
#:phases #~(modify-phases %standard-phases
(add-after 'unpack 'use-system-enet-package
(lambda _
(substitute* "CMakeLists.txt"
(("add_subdirectory\\(enet\\)")
""))))
(replace 'install
(lambda* (#:key outputs source #:allow-other-keys)
(let* ((include (string-append #$output
"/include"))
(lib (string-append #$output "/lib")))
(mkdir-p include)
(mkdir-p lib)
(install-file (string-append source
"/src/Limelight.h") include)
(install-file "libmoonlight-common-c.so" lib)))))))
(native-inputs (list pkg-config))
(inputs (list enet-moonlight openssl qtbase-5))
(synopsis "GameStream protocol core implementation")
(description
"This package provides the GameStream core code for the protocol.")
(home-page "https://github.com/moonlight-stream/moonlight-common-c")
(license license:gpl3+))))
(define-public mrrescue
(package
(name "mrrescue")
@ -7099,27 +7199,26 @@ monsters in a quest to find the mystifyingly fabulous Orb of Zot.")
(version "1.2")
(source (origin
(method url-fetch)
(uri (string-append "https://bitbucket.org/osslugaru/lugaru/downloads/"
"lugaru-" version ".tar.xz"))
(uri (string-append "https://github.com/osslugaru/lugaru/releases"
"/download/" version
"/lugaru-" version ".tar.xz"))
(sha256
(base32
"15zgcshy22q51rm72zi6y9z7qlgnz5iw3gczjdlir4bqmxy4gspk"))))
(base32 "15zgcshy22q51rm72zi6y9z7qlgnz5iw3gczjdlir4bqmxy4gspk"))
(patches
(search-patches "lugaru-fix-sound.patch"))))
(build-system cmake-build-system)
(arguments
`(#:configure-flags
(list "-DSYSTEM_INSTALL=ON")
;; no test target
#:tests? #f))
(native-inputs
(list pkg-config))
(list #:configure-flags #~(list "-DSYSTEM_INSTALL=ON")
#:tests? #f)) ;no test suite
(native-inputs (list pkg-config))
(inputs
`(("sdl2" ,sdl2)
("glu" ,glu)
("libjpeg" ,libjpeg-turbo)
("libpng" ,libpng)
("openal" ,openal)
("vorbis" ,libvorbis)
("zlib" ,zlib)))
(list glu
libjpeg-turbo
libpng
libvorbis
openal
sdl2
zlib))
(home-page "https://osslugaru.gitlab.io")
(synopsis "Cross-platform third-person action game")
(description "Lugaru is a third-person action game. The main character,
@ -7128,7 +7227,7 @@ In his quest to find those responsible for slaughtering his village, he uncovers
a far-reaching conspiracy involving the corrupt leaders of the rabbit republic
and the starving wolves from a nearby den. Turner takes it upon himself to
fight against their plot and save his fellow rabbits from slavery.")
(license (list license:gpl2+ ; code
(license (list license:gpl2+ ; code
;; assets:
license:cc-by-sa3.0
license:cc-by-sa4.0))))
@ -11254,7 +11353,7 @@ play; it will look for them at @file{~/.local/share/fheroes2} folder.")
(define-public vcmi
(package
(name "vcmi")
(version "1.3.2")
(version "1.4.2")
(source (origin
(method git-fetch)
(uri (git-reference
@ -11263,7 +11362,7 @@ play; it will look for them at @file{~/.local/share/fheroes2} folder.")
(file-name (git-file-name name version))
(sha256
(base32
"1x1bzd89h0j4xci91d2v5aj5vgkx6vm12iml805wkia4hy1jp4ff"))
"039d9dvb2i4y1fj6q5py34r17fwb5jqxkjcg7j57asjk4w9b7i8b"))
(patches (search-patches "vcmi-disable-privacy-breach.patch"))))
(build-system cmake-build-system)
(arguments

View File

@ -1102,6 +1102,12 @@ as the 'native-search-paths' field."
"gfortran" '("fortran")
%generic-search-paths)))
(define-public gfortran-9
(hidden-package
(custom-gcc gcc-9
"gfortran" '("fortran")
%generic-search-paths)))
(define-public gfortran-7
(hidden-package
(custom-gcc gcc-7
@ -1118,6 +1124,12 @@ as the 'native-search-paths' field."
(custom-gcc gcc-11 "gdc" '("d")
%generic-search-paths)))
;;; Alias tracking the latest GDC version.
(define-public gdc
(hidden-package
(custom-gcc gcc "gdc" '("d")
%generic-search-paths)))
(define-public (make-libgccjit gcc)
(package
(inherit gcc)

View File

@ -3,7 +3,7 @@
;;; Copyright © 2016 Alex Griffin <a@ajgrf.com>
;;; Copyright © 2017, 2018 Björn Höfling <bjoern.hoefling@bjoernhoefling.de>
;;; Copyright © 20182021 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2018, 2023 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2018, 2023, 2024 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2018, 2019 Arun Isaac <arunisaac@systemreboot.net>
;;; Copyright © 2018 Joshua Sierles, Nextjournal <joshua@nextjournal.com>
;;; Copyright © 2018, 2019, 2020, 2021 Julien Lepiller <julien@lepiller.eu>
@ -14,10 +14,11 @@
;;; Copyright © 2020, 2022 Marius Bakke <marius@gnu.org>
;;; Copyright © 2020 Christopher Baines <mail@cbaines.net>
;;; Copyright © 2020, 2021, 2022, 2023 Felix Gruber <felgru@posteo.net>
;;; Copyright © 2021, 2023 Sharlatan Hellseher <sharlatanus@gmail.com>
;;; Copyright © 2021, 2023 Vinicius Monego <monego@posteo.net>
;;; Copyright © 2021, 2023, 2024 Sharlatan Hellseher <sharlatanus@gmail.com>
;;; Copyright © 2021, 2023, 2024 Vinicius Monego <monego@posteo.net>
;;; Copyright © 2021 Clément Lassieur <clement@lassieur.org>
;;; Copyright © 2021, 2022 Nikolay Korotkiy <sikmir@disroot.org>
;;; Copyright © 2022 Patrick Noll <patrick@patricknoll.com>
;;; Copyright © 2022 Roman Scherer <roman.scherer@burningswell.com>
;;; Copyright © 2022, 2023 Maxim Cournoyer <maxim.cournoyer@gmail.com>
;;; Copyright © 2022 Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>
@ -61,6 +62,7 @@
#:use-module (gnu packages audio)
#:use-module (gnu packages autotools)
#:use-module (gnu packages backup)
#:use-module (gnu packages base)
#:use-module (gnu packages bash)
#:use-module (gnu packages bison)
#:use-module (gnu packages boost)
@ -938,14 +940,14 @@ pyproj, Rtree, and Shapely.")
(define-public python-geopandas
(package
(name "python-geopandas")
(version "0.13.2")
(version "0.14.2")
(source
(origin
(method url-fetch)
(uri (pypi-uri "geopandas" version))
(sha256
(base32
"0s59jjk02l1zajz95n1c7fr3fyj44wzxn569q2y7f34042f6vdg5"))))
"1nycf79nzris058lz1fyg0byj874wxq33an3y74zvybnhdxxawbf"))))
(build-system pyproject-build-system)
(arguments
(list
@ -954,6 +956,8 @@ pyproj, Rtree, and Shapely.")
;; Test files are missing
"--ignore=geopandas/tests/test_overlay.py"
"--ignore=geopandas/io/tests/test_file.py"
;; Number of open figures changed during test
"-k" "not test_pandas_kind"
;; Disable tests that require internet access.
"-m" "not web")))
(propagated-inputs
@ -971,56 +975,106 @@ enables you to easily do operations in Python that would otherwise
require a spatial database such as PostGIS.")
(license license:bsd-3)))
(define-public python-ogr2osm
(package
(name "python-ogr2osm")
(version "1.2.0")
(source
(origin
(method git-fetch) ; no tests data in PyPi package
(uri
(git-reference
(url "https://github.com/roelderickx/ogr2osm/")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0hwqnx3cdqxmniydpj1v31kglq1xjsx41d8p10c9j4hg8kb43j80"))))
(build-system pyproject-build-system)
(arguments
(list
;; There are tests in git checkout but non of the examples taken from
;; GitHub Actions worked for me. Disabling them to be checked later
;; <https://github.com/roelderickx/ogr2osm/blob/main/.github/workflows/test.yml>.
#:phases
#~(modify-phases %standard-phases
(replace 'check
(lambda* (#:key tests? #:allow-other-keys)
(when tests?
;; TODO: Fix provided tests.
;; (invoke "cram" "test/basic_usage.t")
;; (invoke "cram" "test/osm_output.t")
;; (invoke "cram" "test/pbf_output.t")
;; Run simple tests to ensure that the command is working.
(invoke "ogr2osm" "--help")
(invoke
"ogr2osm" "-f" "test/shapefiles/basic_geometries.kml")))))))
(inputs
(list gdal))
(native-inputs
(list coreutils
diffutils
libxml2
python-cram
which))
(propagated-inputs
(list python-lxml
python-protobuf))
(home-page "https://github.com/roelderickx/ogr2osm")
(synopsis "Convert ogr-readable files like shapefiles into OSM or PDF formats")
(description
"@code{ogr2osm} is a tool for converting ogr-readable files into
@acronym{OSM, OpenStreetMap} format. It supports reading from OGR files like
shapefiles or PostgresSQL database and converts data into @code{osm} or
@code{osm.pbf} formats. A translation file can be used to manipulate the data
during conversion.")
(license license:expat)))
(define-public python-osmnx
(package
(name "python-osmnx")
(version "1.1.2")
(version "1.8.1")
(source
(origin
; Fetch from github as the pypi package is missing the tests dir.
;; Fetch from github as the pypi package is missing the tests dir.
(method git-fetch)
(uri (git-reference
(url "https://github.com/gboeing/osmnx")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1n8qjn184p5a2s3j6x6iyc1i7p3l3xnbqqxm6ajwgwv6j5fw1d5a"))))
(base32 "0n238n07pp5jw9cg8nqw9qhpkw8plzb5imz1gxbliw2l1idqyjcl"))))
(build-system pyproject-build-system)
(arguments
(list
#:test-flags
'(list "-k"
(string-append
;; The following tests require network access.
"not test_geocode_to_gdf"
" and not test_stats"
" and not test_osm_xml"
" and not test_elevation"
" and not test_routing"
" and not test_plots"
" and not test_find_nearest"
" and not test_api_endpoints"
" and not test_graph_save_load"
" and not test_graph_from_functions"
" and not test_geometries"))))
(propagated-inputs
(list python-folium
python-geopandas
python-matplotlib
python-networkx
python-numpy
python-pandas
python-pyproj
python-requests
python-rtree
python-shapely))
(native-inputs
(list python-numpy python-pytest))
#:test-flags '(list "-k"
(string-append
;; The following tests require network access.
"not test_stats"
" and not test_geocoder"
" and not test_osm_xml"
" and not test_elevation"
" and not test_routing"
" and not test_plots"
" and not test_find_nearest"
" and not test_api_endpoints"
" and not test_graph_save_load"
" and not test_graph_from_functions"
" and not test_features"))))
(propagated-inputs (list python-folium
python-geopandas
python-matplotlib
python-networkx
python-numpy
python-pandas
python-requests
python-shapely))
(native-inputs (list python-hatchling python-pytest))
(home-page "https://github.com/gboeing/osmnx")
(synopsis
"Retrieve, model, analyze, and visualize OpenStreetMap street networks")
"Retrieve, model, analyze, and visualize OpenStreetMap street networks")
(description
"OSMnx is a Python library that lets you download geospatial data
"OSMnx is a Python library that lets you download geospatial data
from OpenStreetMap and model, project, visualize, and analyze real-world
street networks and any other geospatial geometries. You can download
and model walkable, drivable, or bikeable urban networks with a single
@ -1269,15 +1323,7 @@ utilities for data translation and processing.")
(file-name (git-file-name name version))
(sha256
(base32 "0jsraqzq82pw19wvx84x7w5cs8agr44a9b5y0jjw540wim4xa73r"))))
(build-system python-build-system)
(arguments
`(#:phases
(modify-phases %standard-phases
(replace 'check
(lambda* (#:key tests? #:allow-other-keys)
(when tests?
;; This is the only test file.
(invoke "python" "-m" "pytest" "test_shapefile.py")))))))
(build-system pyproject-build-system)
(native-inputs
(list python-pytest python-pytest-runner))
(home-page "https://github.com/GeospatialPython/pyshp")
@ -1289,40 +1335,46 @@ utilities for data translation and processing.")
(define-public python-cartopy
(package
(name "python-cartopy")
;; This is a post-release fix that adds build_ext to setup.py.
(version "0.21.1")
(version "0.22.0")
(source
(origin
(method url-fetch)
(uri (pypi-uri "Cartopy" version))
(sha256
(base32 "02i5rjhvrsi3vgj8kfsdx77g1xl59jh2a671qqqj4n682abn9mc9"))))
(build-system python-build-system)
(base32 "0jdv92az0b7qxdvalh29kasw3knsl570cz7q3vql67ck400zj05k"))))
(build-system pyproject-build-system)
(arguments
`(#:phases
(modify-phases %standard-phases
(replace 'check
(lambda* (#:key inputs outputs tests? #:allow-other-keys)
(when tests?
(add-installed-pythonpath inputs outputs)
(invoke "python" "-m" "pytest" "--pyargs" "cartopy"
;; These tests require online data.
"-m" "not natural_earth and not network"
"-k"
(string-append
;; This one too but it's not marked as such.
"not test_gridliner_labels_bbox_style"
;; Those tests fail with proj 9.2.0
;; https://github.com/SciTools/cartopy/issues/2145
" and not test_epsg"
" and not test_default"
" and not test_eccentric_globe"
" and not test_ellipsoid_transform"
" and not test_eccentric_globe"))))))))
(list
#:test-flags
'(list
"--pyargs" "cartopy"
;; These tests require online data.
"-m" "not natural_earth and not network"
"-k"
(string-append
;; This one too but it's not marked as such.
"not test_gridliner_labels_bbox_style"
;; Accuracy problems
" and not test_single_spole"
" and not test_single_npole"
;; Incomplete shapefile definition
" and not test_gshhs"
" and not test_geometry"
" and not test_record"
" and not test_bounds"))
#:phases
'(modify-phases %standard-phases
;; We don't want to create an entrypoint for
;; tools/cartopy_feature_download.py, because that file is not
;; installed.
(add-after 'unpack 'remove-endpoint
(lambda _
(substitute* "pyproject.toml"
(("^feature_download = .*") "")))))))
(propagated-inputs
(list python-matplotlib
python-numpy
python-pykdtree
python-packaging
python-pyproj
python-pyshp
python-scipy
@ -1330,10 +1382,12 @@ utilities for data translation and processing.")
(inputs
(list geos))
(native-inputs
(list python-cython
python-flufl-lock
(list python-coveralls
python-cython
python-pytest
python-pytest-mpl))
python-pytest-cov
python-pytest-mpl
python-pytest-xdist))
(home-page "https://scitools.org.uk/cartopy/docs/latest/")
(synopsis "Cartographic library for visualisation")
(description
@ -1484,13 +1538,13 @@ to create databases that are optimized for rendering/tile/map-services.")
(define-public python-metpy
(package
(name "python-metpy")
(version "1.5.1")
(version "1.6.1")
(source (origin
(method url-fetch)
(uri (pypi-uri "MetPy" version))
(sha256
(base32
"1is6rradl97k04hf27dhzla4y4j98hibran3rbz6xh226q1r9vmb"))))
"1pzzanar797wkn6ljs47vni1fwli570d5qsiw1kpw0j1xymcmfsm"))))
(build-system pyproject-build-system)
(arguments
;; Too many of the tests in the files below require online data.
@ -1513,7 +1567,23 @@ to create databases that are optimized for rendering/tile/map-services.")
" and not test_zoom_xarray"
" and not test_parse_wpc_surface_bulletin"
" and not test_add_timestamp_xarray"
" and not test_parse_wpc_surface_bulletin_highres"))))
" and not test_parse_wpc_surface_bulletin_highres"))
#:phases
'(modify-phases %standard-phases
(add-after 'unpack 'fix-version-check
(lambda _
(substitute* "src/metpy/testing.py"
(("^( +)match = pattern.*" m indent)
(string-append indent "\
version_spec = re.sub('[()]', '', version_spec)\n" m)))))
;; The deprecation warning from python-future's use of imp breaks the
;; tests.
(add-after 'unpack 'hide-imp-deprecation-warnings
(lambda _
(substitute* "pyproject.toml"
(("\"ignore:numpy.ndarray size changed:RuntimeWarning\"," m)
(string-append m "
\"ignore:the imp module is deprecated\","))))))))
(propagated-inputs (list python-importlib-resources
python-matplotlib
python-numpy
@ -1524,8 +1594,8 @@ to create databases that are optimized for rendering/tile/map-services.")
python-scipy
python-traitlets
python-xarray))
(native-inputs (list python-cartopy python-netcdf4 python-pytest
python-pytest-mpl python-shapely))
(native-inputs (list python-netcdf4 python-packaging python-pytest
python-pytest-mpl))
(home-page "https://github.com/Unidata/MetPy")
(synopsis "Collection of tools to deal with weather data")
(description "MetPy is a collection of tools in Python for reading,
@ -2481,19 +2551,19 @@ track your position right from your laptop.")
"-DLICENSING_PROVIDER:BOOL=OFF"
"-DMapper_MANUAL_QTHELP:BOOL=OFF")))
(inputs
`(("clipper" ,clipper)
("cups" ,cups)
("curl" ,curl)
("gdal" ,gdal)
("proj" ,proj)
("qtbase" ,qtbase-5)
("qtimageformats" ,qtimageformats-5)
("qtlocation" ,qtlocation)
("qtsensors" ,qtsensors)
("zlib" ,zlib)))
(list clipper
cups
curl
gdal
proj
qtbase-5
qtimageformats-5
qtlocation
qtsensors
zlib))
(native-inputs
`(("doxygen" ,doxygen)
("qttools-5" ,qttools-5)))
(list doxygen
qttools-5))
(home-page "https://www.openorienteering.org/apps/mapper/")
(synopsis "OpenOrienteering Mapper (OOM)")
(description
@ -3064,15 +3134,8 @@ using third-party geocoders and other data sources.")
(sha256
(base32
"0inxyj5n4jzgg5xiadqx9sk83gdx5ff989l9s04smdzbd3b8c0c8"))))
(build-system python-build-system)
(build-system pyproject-build-system)
(native-inputs (list python-pytest python-numpy))
(arguments
(list #:phases
#~(modify-phases %standard-phases
(replace 'check
(lambda* (#:key tests? inputs #:allow-other-keys)
(when tests?
(invoke "pytest")))))))
(home-page "https://github.com/mapado/haversine")
(synopsis "Calculate the distance between 2 points on Earth")
(description "This package provides functions to calculate the

View File

@ -19,6 +19,7 @@
;;; Copyright © 2022 Petr Hodina <phodina@protonmail.com>
;;; Copyright © 2023 Kaelyn Takata <kaelyn.alexi@protonmail.com>
;;; Copyright © 2023, 2024 Zheng Junjie <873216071@qq.com>
;;; Copyright © 2024 Liliana Marie Prikler <liliana.prikler@gmail.com>
;;;
;;; This file is part of GNU Guix.
;;;
@ -39,6 +40,7 @@
#:use-module (gnu packages)
#:use-module (gnu packages autotools)
#:use-module (gnu packages bison)
#:use-module (gnu packages check)
#:use-module (gnu packages compression)
#:use-module (gnu packages documentation)
#:use-module (gnu packages elf)
@ -1217,3 +1219,84 @@ the glProgramViewportFlip before it was replaced with glProgramViewportInfo.")
"glmark2 is an OpenGL 2.0 and OpenGL ES 2.0 benchmark based on the
original glmark benchmark by Ben Smith.")
(license license:gpl3+)))
(define-public waffle
(package
(name "waffle")
(version "1.8.0")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://gitlab.freedesktop.org/mesa/waffle")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1mrw0arlrpm83cwaz7rnimkkjv3a134rcmi1h512y2g4yjzhnm8r"))
(modules '((ice-9 ftw)
(guix build utils)))
(snippet #~(with-directory-excursion "third_party"
(let ((keep '("." ".." "meson.build" "threads")))
(for-each (lambda (f)
(unless (member f keep)
(delete-file-recursively f)))
(scandir ".")))))))
(build-system meson-build-system)
(propagated-inputs (list mesa wayland))
(native-inputs (list cmocka pkg-config))
(home-page "https://waffle.freedesktop.org/")
(synopsis "Choose OpenGL API at runtime")
(description "Waffle is a library that allows one to defer selection of an
OpenGL API and a window system until runtime.")
(license license:bsd-2)))
(define-public piglit
(let ((revision "1")
(commit "814046fe6942eac660ee4a6cc5fcc54011a49945"))
(package
(name "piglit")
(version (git-version "0.0.0" revision commit))
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://gitlab.freedesktop.org/mesa/piglit")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32 "1bzaalcxskckfnwprw77sbbmfqi59by2j8imaq8ghnlzhlxv7mk7"))))
(build-system cmake-build-system)
(arguments
(list #:configure-flags #~(list "-DPIGLIT_SSE2=OFF")
;; Tests are not invoked through cmake. Instead, there are
;; pytest/tox-based tests for the framework, but they require
;; unpackaged plugins.
#:tests? #f
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'patch-source
(lambda* (#:key inputs #:allow-other-keys)
(substitute* (find-files "framework/" "\\.py$")
(("'wflinfo'")
(string-append "'"
(search-input-file inputs "/bin/wflinfo")
"'")))))
(add-after 'install 'wrap
(lambda* (#:key outputs #:allow-other-keys)
(wrap-script (string-append (assoc-ref outputs "out")
"/bin/piglit")
`("GUIX_PYTHONPATH" prefix
(,(getenv "GUIX_PYTHONPATH")))))))))
(inputs (list guile-3.0 ; for wrap-script
libxkbcommon
python python-lxml python-mako python-numpy
glslang vulkan-headers vulkan-loader
waffle))
(native-inputs (list pkg-config))
(home-page "https://piglit.freedesktop.org/")
(synopsis "Test OpenGL implementations")
(description "Piglit is a collection of automated tests for OpenGL and
OpenCL implementations.")
;; A mix of licenses for various tests
(license (list license:expat
license:bsd-3
license:gpl2+
license:gpl3+)))))

View File

@ -13,7 +13,7 @@
;;; Copyright © 2021, 2022 Vinicius Monego <monego@posteo.net>
;;; Copyright © 2021 Guillaume Le Vaillant <glv@posteo.net>
;;; Copyright © 2021 Songlin Jiang <hollowman@hollowman.ml>
;;; Copyright © 2021, 2022 Justin Veilleux <terramorpha@cock.li>
;;; Copyright © 2021, 2022, 2024 Justin Veilleux <terramorpha@cock.li>
;;; Copyright © 2021 Attila Lendvai <attila@lendvai.name>
;;; Copyright © 2021 Charles Jackson <charles.b.jackson@protonmail.com>
;;; Copyright © 2022 Eric Bavier <bavier@posteo.net>
@ -981,33 +981,33 @@ It uses ES6 syntax and claims to be more actively maintained than others.")
(define-public gnome-shell-extension-paperwm
(package
(name "gnome-shell-extension-paperwm")
(version "36.0")
(version "44.17.0")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/paperwm/PaperWM")
(commit version)))
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
"1ssnabwxrns36c61ppspjkr9i3qifv08pf2jpwl7cjv3pvyn4kly"))
"1d91k9qih81wckqf6554kf8grv6q61rkk4g776g0ijpmf35ljdin"))
(snippet
'(begin (delete-file "schemas/gschemas.compiled")))))
(build-system copy-build-system)
(arguments
'(#:install-plan
'(("." "share/gnome-shell/extensions/paperwm@hedning:matrix.org"
#:include-regexp ("\\.js(on)?$" "\\.css$" "\\.ui$" "\\.png$"
"\\.xml$" "\\.compiled$")))
#:phases
(modify-phases %standard-phases
(add-before 'install 'compile-schemas
(lambda _
(with-directory-excursion "schemas"
(invoke "make"))
#t)))))
(list
#:install-plan
#~'(("." "share/gnome-shell/extensions/paperwm@paperwm.github.com"
#:include-regexp ("\\.js(on)?$" "\\.css$" "\\.ui$" "\\.png$"
"\\.xml$" "\\.compiled$" "\\.svg$")))
#:phases
#~(modify-phases %standard-phases
(add-before 'install 'compile-schemas
(lambda _
(with-directory-excursion "schemas"
(invoke "make")))))))
(native-inputs
`(("glib:bin" ,glib "bin"))) ; for glib-compile-schemas
(list `(,glib "bin"))) ; for glib-compile-schemas
(home-page "https://github.com/paperwm/PaperWM")
(synopsis "Tiled scrollable window management for GNOME Shell")
(description "PaperWM is an experimental GNOME Shell extension providing

View File

@ -3394,7 +3394,7 @@ compiles to GTKBuilder XML.")
python-pycairo
python-pygobject
python-lxml
webkitgtk
webkitgtk-for-gtk3
webkitgtk))
(native-inputs
(list `(,glib "bin")

View File

@ -71,6 +71,7 @@
#:use-module (gnu packages swig)
#:use-module (gnu packages texinfo)
#:use-module (gnu packages tls)
#:use-module (gnu packages tor)
#:use-module (gnu packages web)
#:use-module (gnu packages xorg)
#:use-module (gnu packages xdisorg)
@ -1129,7 +1130,7 @@ files, to verify signatures, and to manage the private and public keys.")
perl-try-tiny
perl-type-tiny
perl-types-path-tiny
(@ (gnu packages tor) torsocks))) ;avoid dependency loop
torsocks))
(native-inputs
(list perl-file-which
perl-gnupg-interface

View File

@ -1,7 +1,7 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2013, 2015 Andreas Enge <andreas@enge.fr>
;;; Copyright © 2013-2022 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2014, 2015, 2016, 2017, 2018, 2019, 2020, 2021, 2022, 2023 Mark H Weaver <mhw@netris.org>
;;; Copyright © 2014-2024 Mark H Weaver <mhw@netris.org>
;;; Copyright © 2015 Sou Bunnbu <iyzsong@gmail.com>
;;; Copyright © 2016, 2017, 2018, 2019, 2021 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2016 Alex Griffin <a@ajgrf.com>
@ -548,9 +548,9 @@ variable defined below. It requires guile-json to be installed."
;; XXXX: Workaround 'snippet' limitations.
(define computed-origin-method (@@ (guix packages) computed-origin-method))
(define %icecat-base-version "115.6.0")
(define %icecat-base-version "115.7.0")
(define %icecat-version (string-append %icecat-base-version "-guix0-preview1"))
(define %icecat-build-id "20231219000000") ;must be of the form YYYYMMDDhhmmss
(define %icecat-build-id "20240123000000") ;must be of the form YYYYMMDDhhmmss
;; 'icecat-source' is a "computed" origin that generates an IceCat tarball
;; from the corresponding upstream Firefox ESR tarball, using the 'makeicecat'
@ -570,12 +570,12 @@ variable defined below. It requires guile-json to be installed."
"firefox-" upstream-firefox-version ".source.tar.xz"))
(sha256
(base32
"0rmw486yhkb1is1j2fy51djl5p5qggf2fhp2hgzfdj4s2bjydmv6"))))
"0ad4az0hiq7q9pnya1pyj75a732ag5bd4jp8mxg4izz97k6zzv8k"))))
;; The upstream-icecat-base-version may be older than the
;; %icecat-base-version.
(upstream-icecat-base-version "115.6.0")
(gnuzilla-commit "6a76a10682b6e63f562e4b9f26f3ef12f88bd839")
(upstream-icecat-base-version "115.7.0")
(gnuzilla-commit "dbe6da400cf4f28e5e893d0acb5022e23cf3afcf")
(gnuzilla-source
(origin
(method git-fetch)
@ -587,7 +587,7 @@ variable defined below. It requires guile-json to be installed."
(string-take gnuzilla-commit 8)))
(sha256
(base32
"15bvlz7c4d8mk10zc317rai91hd96wnchikcfdfxzl35zdnd315r"))))
"0j7wxiyqqwn8slr4cjwqya9jh912l0xjprld5hj79an0vnb7c21h"))))
;; 'search-patch' returns either a valid file name or #f, so wrap it
;; in 'assume-valid-file-name' to avoid 'local-file' warnings.

View File

@ -1,8 +1,10 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2018 Christopher Baines <mail@cbaines.net>
;;; Copyright © 2018 Pierre Neidhardt <mail@ambrevar.xyz>
;;; Copyright © 2018 Pierre-Antoine Rouby <pierre-antoine.rouby@inria.fr>
;;; Copyright © 2019 Brian Leung <bkleung89@gmail.com>
;;; Copyright © 2019 Leo Famulari <leo@famulari.name>
;;; Copyright © 2019 Vagrant Cascadian <vagrant@debian.org>
;;; Copyright © 2020 Jakub Kądziołka <kuba@kadziolka.net>
;;; Copyright © 2020 Joseph LaFreniere <joseph@lafreniere.xyz>
;;; Copyright © 2020 Oleg Pykhalov <go.wigust@gmail.com>
@ -42,46 +44,17 @@
;;; Commentary:
;;;
;;; Golang packages to unit-test, mock, assert, lint processes for Golang itself.
;;; Golang packages providing tools to unit-test, mock, assert, and lint
;;; processes for the Golang itself. They may provide executables and
;;; libraries, for which there are marked sections.
;;;
;;; Please: Try to add new module packages in alphabetic order.
;;;
;;; Code:
(define-public go-honnef-co-go-tools
(package
(name "go-honnef-co-go-tools")
(version "0.3.3")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/dominikh/go-tools")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
"099z04v7vvwwglnps315s9fmal68xvzlc1g8m26iqi980grbwn32"))))
(build-system go-build-system)
(arguments
`(#:import-path "honnef.co/go/tools"
#:tests? #f
;; Source-only package
#:phases (modify-phases %standard-phases
(delete 'build))))
(propagated-inputs
(list go-github-com-burntsushi-toml
go-github-com-kisielk-gotool
go-golang-org-x-exp
go-golang-org-x-mod
go-golang-org-x-tools))
(home-page "https://honnef.co/go/tools")
(synopsis "Staticcheck advanced Go linter")
(description
"Staticcheck is a state of the art linter for the Go programming language.
Using static analysis, it finds bugs and performance issues, offers
simplifications, and enforces style rules.")
(license license:expat)))
;;;
;;; Libraries:
;;;
(define-public go-github-com-alecthomas-assert
(let ((commit "405dbfeb8e38effee6e723317226e93fff912d06")
@ -175,6 +148,29 @@ simplifications, and enforces style rules.")
tests.")
(license license:expat)))
(define-public go-github-com-golangplus-testing
(package
(name "go-github-com-golangplus-testing")
(version "1.0.0")
(home-page "https://github.com/golangplus/testing")
(source
(origin
(method git-fetch)
(uri (git-reference
(url home-page)
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1a29m4zplf9m14k74lrb55dids2l17vx28sv0g3y3qcv1xygksiv"))))
(build-system go-build-system)
(arguments
'(#:import-path "github.com/golangplus/testing"))
(propagated-inputs
(list go-github-com-golangplus-fmt))
(synopsis "Additions to Go's standard testing package")
(description "This package provides additions to Go's stdlib testing.")
(license license:bsd-3)))
(define-public go-github-com-google-go-cmdtest
(let ((commit "55ab3332a786118933ddf71544aae14951ba9bc5")
(revision "0"))
@ -230,29 +226,6 @@ also update a file with new \"golden\" output that is deemed correct.")
values for the purpose of fuzz testing.")
(license license:asl2.0))))
(define-public go-github-com-golangplus-testing
(package
(name "go-github-com-golangplus-testing")
(version "1.0.0")
(home-page "https://github.com/golangplus/testing")
(source
(origin
(method git-fetch)
(uri (git-reference
(url home-page)
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1a29m4zplf9m14k74lrb55dids2l17vx28sv0g3y3qcv1xygksiv"))))
(build-system go-build-system)
(arguments
'(#:import-path "github.com/golangplus/testing"))
(propagated-inputs
(list go-github-com-golangplus-fmt))
(synopsis "Additions to Go's standard testing package")
(description "This package provides additions to Go's stdlib testing.")
(license license:bsd-3)))
(define-public go-github-com-jacobsa-oglematchers
(let ((commit "141901ea67cd4769c6800aa7bfdfc558fa22bda5")
(revision "0"))
@ -450,24 +423,22 @@ Features include:
such as readers and writers that fail after N consecutive reads/writes.")
(license license:expat)))
(define-public go-gopkg-in-check-v1
(define-public go-github.com-smartystreets-assertions
(package
(name "go-gopkg-in-check-v1")
(version "1.0.0-20201130134442-10cb98267c6c")
(name "go-github.com-smartystreets-assertions")
(version "1.13.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/go-check/check")
(commit (go-version->git-ref version))))
(url "https://github.com/smartystreets/assertions")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
"1jwxndf8rsyx0fgrp47d99rp55yzssmryb92jfj3yf7zd8rjjljn"))))
(sha256 (base32 "0flf3fb6fsw3bk1viva0fzrzw87djaj1mqvrx2gzg1ssn7xzfrzr"))))
(build-system go-build-system)
(arguments
(list
#:import-path "gopkg.in/check.v1"
#:import-path "github.com/smartystreets/assertions"
#:phases
#~(modify-phases %standard-phases
(replace 'check
@ -476,34 +447,66 @@ such as readers and writers that fail after N consecutive reads/writes.")
;; The tests fail when run with gccgo.
(false-if-exception (search-input-file inputs "/bin/gccgo"))
(apply (assoc-ref %standard-phases 'check) args)))))))
(propagated-inputs
(list go-github-com-kr-pretty))
(home-page "https://gopkg.in/check.v1")
(synopsis "Test framework for the Go language")
(description "This package provides a test library for the Go language.")
(license license:bsd-2)))
(native-inputs
(list go-github.com-smartystreets-gunit))
(home-page "https://github.com/smartystreets/assertions")
(synopsis "Assertions for testing with Go")
(description "The @code{assertions} package provides convenient assertion
functions for writing tests in Go.")
(license license:expat)))
(define-public go-gopkg-in-go-playground-assert-v1
(define-public go-github.com-smartystreets-goconvey
(package
(name "go-gopkg-in-go-playground-assert-v1")
(version "1.2.1")
(home-page "https://github.com/go-playground/assert")
(name "go-github.com-smartystreets-goconvey")
(version "1.6.3")
(source
(origin
(method git-fetch)
(uri (git-reference
(url home-page)
(commit (string-append "v" version))))
(url "https://github.com/smartystreets/goconvey")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "1h4amgykpa0djwi619llr3g55p75ia0mi184h9s5zdl8l4rhn9pm"))))
(base32 "1ph18rkl3ns3fgin5i4j54w5a69grrmf3apcsmnpdn1wlrbs3dxh"))))
(build-system go-build-system)
(arguments
'(#:import-path "gopkg.in/go-playground/assert.v1"))
(synopsis "Basic assertion library used alongside native Go testing")
(description
"This package provides basic assertions along with building blocks for
custom assertions to be used alongside native Go testing.")
'(#:import-path "github.com/smartystreets/goconvey"))
(propagated-inputs
(list go-github.com-jtolds-gls go-github.com-smartystreets-assertions))
(home-page "https://github.com/smartystreets/goconvey")
(synopsis "Go testing tool with both a web and terminal user interface")
(description "GoConvey is a testing tool for Go. It integrates with go
test, can show test coverage and has a web user interface that will refresh
automatically.")
(license license:expat)))
(define-public go-github.com-smartystreets-gunit
(package
(name "go-github.com-smartystreets-gunit")
(version "1.0.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/smartystreets/gunit")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "00m4zg0kdj49mnpmf9klb44ba71p966xsk6zknrzqgfc8119f35z"))))
(build-system go-build-system)
(arguments
'(;; TODO: This package depends on go-github.com-smartystreets-assertions
;; for running the tests, but go-github.com-smartystreets-assertions
;; depends on this package, so break this loop by not running the tests
;; for this package.
#:tests? #f
#:import-path "github.com/smartystreets/gunit"))
(home-page "https://github.com/smartystreets/gunit")
(synopsis "Testing tool for Go, in the style of xUnit")
(description "@code{gunit} allows the test author to use a struct as the
scope for a group of related test cases, in the style of xUnit fixtures. This
makes extraction of setup/teardown behavior (as well as invoking the system
under test) much simpler.")
(license license:expat)))
(define-public go-golang-org-sql-mock
@ -560,6 +563,169 @@ without requiring a real database connection.")
reformat the source code, it only prints out style mistakes.")
(license license:bsd-3))))
(define-public go-gopkg-in-check-v1
(package
(name "go-gopkg-in-check-v1")
(version "1.0.0-20201130134442-10cb98267c6c")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/go-check/check")
(commit (go-version->git-ref version))))
(file-name (git-file-name name version))
(sha256
(base32
"1jwxndf8rsyx0fgrp47d99rp55yzssmryb92jfj3yf7zd8rjjljn"))))
(build-system go-build-system)
(arguments
(list
#:import-path "gopkg.in/check.v1"
#:phases
#~(modify-phases %standard-phases
(replace 'check
(lambda* (#:key inputs #:allow-other-keys #:rest args)
(unless
;; The tests fail when run with gccgo.
(false-if-exception (search-input-file inputs "/bin/gccgo"))
(apply (assoc-ref %standard-phases 'check) args)))))))
(propagated-inputs
(list go-github-com-kr-pretty))
(home-page "https://gopkg.in/check.v1")
(synopsis "Test framework for the Go language")
(description "This package provides a test library for the Go language.")
(license license:bsd-2)))
(define-public go-gopkg-in-go-playground-assert-v1
(package
(name "go-gopkg-in-go-playground-assert-v1")
(version "1.2.1")
(home-page "https://github.com/go-playground/assert")
(source
(origin
(method git-fetch)
(uri (git-reference
(url home-page)
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1h4amgykpa0djwi619llr3g55p75ia0mi184h9s5zdl8l4rhn9pm"))))
(build-system go-build-system)
(arguments
'(#:import-path "gopkg.in/go-playground/assert.v1"))
(synopsis "Basic assertion library used alongside native Go testing")
(description
"This package provides basic assertions along with building blocks for
custom assertions to be used alongside native Go testing.")
(license license:expat)))
(define-public go-honnef-co-go-tools
(package
(name "go-honnef-co-go-tools")
(version "0.4.6")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/dominikh/go-tools")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
"0qikkhanmc0vrpgvs0c44y853n88m8qqsk08zry6mvm8f41pgjhi"))))
(build-system go-build-system)
(arguments
`(#:import-path "honnef.co/go/tools"
#:tests? #f
;; Source-only package
#:phases (modify-phases %standard-phases
(delete 'build))))
(propagated-inputs
(list go-github-com-burntsushi-toml
go-golang-org-x-exp
go-golang-org-x-mod
go-golang-org-x-tools))
(home-page "https://staticcheck.dev/")
(synopsis "Staticcheck advanced Go linter library")
(description
"This package provides the Go source code for the @code{go-staticcheck}
advanced Go linter.")
(license license:expat)))
;;;
;;; Executables:
;;;
(define-public go-keyify
(package
(inherit go-honnef-co-go-tools)
(name "go-keyify")
(arguments
`(#:go ,go-1.20
#:import-path "honnef.co/go/tools/cmd/keyify"
#:unpack-path "honnef.co/go/tools"
#:install-source? #f))
(synopsis "Transform an unkeyed struct literal into a keyed one in Go")
(description "This package turns unkeyed struct literals (@code{T{1, 2,
3}}) into keyed ones (@code{T{A: 1, B: 2, C: 3}}) in Go.")))
(define-public go-staticcheck
(package
(inherit go-honnef-co-go-tools)
(name "go-staticcheck")
(arguments
`(#:go ,go-1.20
#:import-path "honnef.co/go/tools/cmd/staticcheck"
#:unpack-path "honnef.co/go/tools"
#:install-source? #f))
(synopsis "Staticcheck advanced Go linter")
(description
"Staticcheck is a state of the art linter for the Go programming language.
Using static analysis, it finds bugs and performance issues, offers
simplifications, and enforces style rules.")))
(define-public go-structlayout
(package
(inherit go-honnef-co-go-tools)
(name "go-structlayout")
(arguments
`(#:go ,go-1.20
#:import-path "honnef.co/go/tools/cmd/structlayout"
#:unpack-path "honnef.co/go/tools"
#:install-source? #f))
(synopsis "Display the layout (field sizes and padding) of structs in Go")
(description "This package prints the layout of a struct in Go, which is
the byte offset and size of each field, respecting padding. This information
is printed in human-readable form by default, or as JSON with the @code{-json}
flag.")))
(define-public go-structlayout-optimize
(package
(inherit go-honnef-co-go-tools)
(name "go-structlayout-optimize")
(arguments
`(#:go ,go-1.20
#:import-path "honnef.co/go/tools/cmd/structlayout-optimize"
#:unpack-path "honnef.co/go/tools"
#:install-source? #f))
(synopsis "Reorder struct fields to minimize the amount of padding in Go")
(description "This package reads @code{go-structlayout} JSON on stdin and
reorders fields to minimize the amount of padding. It can emit JSON to feed
into @code{go-structlayout-pretty}.")))
(define-public go-structlayout-pretty
(package
(inherit go-honnef-co-go-tools)
(name "go-structlayout-pretty")
(arguments
`(#:go ,go-1.20
#:import-path "honnef.co/go/tools/cmd/structlayout-pretty"
#:unpack-path "honnef.co/go/tools"
#:install-source? #f))
(synopsis "Format the output of go-structlayout with ASCII art in Go")
(description "This package takes @code{go-structlayout}-like JSON and
prints an ASCII fraphic representing the memory layout.")))
;;;
;;; Avoid adding new packages to the end of this file. To reduce the chances
;;; of a merge conflict, place them above by existing packages with similar

File diff suppressed because it is too large Load Diff

View File

@ -21,7 +21,8 @@
;;; Copyright © 2023 Hilton Chain <hako@ultrarare.space>
;;; Copyright © 2023 Katherine Cox-Buday <cox.katherine.e@gmail.com>
;;; Copyright © 2023 Nicolas Graves <ngraves@ngraves.fr>
;;; Copyright © 2023 Artyom V. Poptsov <poptsov.artyom@gmail.com>
;;; Copyright © 2023 Thomas Ieong <th.ieong@free.fr>
;;; Copyright © 2023, 2024 Artyom V. Poptsov <poptsov.artyom@gmail.com>
;;;
;;; This file is part of GNU Guix.
;;;
@ -44,21 +45,30 @@
#:use-module (guix build-system go)
#:use-module (guix gexp)
#:use-module (guix git-download)
#:use-module (guix utils)
#:use-module (gnu packages)
#:use-module (gnu packages golang)
#:use-module (gnu packages golang-check)
#:use-module (gnu packages golang-crypto)
#:use-module (gnu packages golang-xyz)
#:use-module (gnu packages tls)
#:use-module (gnu packages web))
;;; Commentary:
;;;
;;; Golang modules (libraries) related to HTML, CSS, SCSS, JavaScript, JSON,
;;; Web-framework, REST-API or similar functionality.
;;; Web-framework, REST-API or similar functionality. They may provide
;;; executables and libraries, for which there are marked sections.
;;;
;;; Please: Try to add new module packages in alphabetic order.
;;;
;;; Code:
;;;
;;; Libraries:
;;;
(define-public go-cloud-google-com-go-compute-metadata
(package
(name "go-cloud-google-com-go-compute-metadata")
@ -576,6 +586,35 @@ logging system.")
decompose request handling into many smaller layers.")
(license license:expat)))
(define-public go-github-com-go-jose-go-jose-v3
(package
(name "go-github-com-go-jose-go-jose-v3")
(version "3.0.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/go-jose/go-jose")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1fnw0p49wc9gmd2xcji2x9jf97dgg9igagd5m6bmq3nw9jjfqdc5"))))
(build-system go-build-system)
(arguments
'( #:import-path "github.com/go-jose/go-jose/v3"))
(propagated-inputs
(list go-golang-org-x-crypto))
(native-inputs
(list go-github-com-google-go-cmp-cmp
go-github-com-stretchr-testify))
(home-page "https://github.com/go-jose/go-jose")
(synopsis "Implementation of JOSE standards (JWE, JWS, JWT) in Go")
(description
"This package provides a Golang implementation of the Javascript Object
Signing and Encryption set of standards. This includes support for JSON Web
Encryption, JSON Web Signature, and JSON Web Token standards.")
(license license:asl2.0)))
(define-public go-github-com-go-telegram-bot-api-telegram-bot-api
(package
(name "go-github-com-go-telegram-bot-api-telegram-bot-api")
@ -868,6 +907,34 @@ sessions, flash messages, custom backends, and more.")
protocol.")
(license license:bsd-2)))
(define-public go-github-com-gregjones-httpcache
(let ((commit "901d90724c7919163f472a9812253fb26761123d")
(revision "0"))
(package
(name "go-github-com-gregjones-httpcache")
(version (git-version "0.0.0" revision commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/gregjones/httpcache")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32 "05r0xq51vfb55di11m7iv19341d73f7in33vq1ihcqs1nffdwiq0"))))
(build-system go-build-system)
(arguments
'(#:import-path "github.com/gregjones/httpcache"))
(home-page "https://github.com/gregjones/httpcache")
(synopsis "Transport for @code{http.Client} that will cache responses")
(description
"Package @code{httpcache} provides a @code{http.RoundTripper}
implementation that works as a mostly @url{https://tools.ietf.org/html/rfc7234, RFC 7234}
compliant cache for HTTP responses. It is only suitable for use as a
\"private\" cache (i.e. for a web-browser or an API-client and not for a
shared proxy).")
(license license:expat))))
(define-public go-github-com-hjson-hjson-go
(package
(name "go-github-com-hjson-hjson-go")
@ -1119,6 +1186,31 @@ which produce colorized output using github.com/fatih/color.")
(description "OpenTracing-Go is a Go implementation of the OpenTracing API.")
(license license:asl2.0)))
(define-public go-github-com-pquerna-cachecontrol
(package
(name "go-github-com-pquerna-cachecontrol")
(version "0.2.0")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/pquerna/cachecontrol")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
"0d5zgv2w0sinh9m41pw3n015zzyabk7awgwwga7nmhjz452c9r5n"))))
(build-system go-build-system)
(arguments
(list #:import-path "github.com/pquerna/cachecontrol"))
(native-inputs
(list go-github-com-stretchr-testify))
(home-page "https://github.com/pquerna/cachecontrol")
(synopsis "Golang HTTP Cache-Control Parser and Interpretation")
(description
"This package implements RFC 7234 Hypertext Transfer Protocol (HTTP/1.1):
Caching.")
(license license:asl2.0)))
(define-public go-github-com-puerkitobio-goquery
(package
(name "go-github-com-puerkitobio-goquery")
@ -1460,6 +1552,29 @@ Signing and Encryption set of standards. This includes support for JSON Web
Encryption, JSON Web Signature, and JSON Web Token standards.")
(license license:asl2.0)))
;;;
;;; Executables:
;;;
(define-public go-minify
(package
(inherit go-github-com-tdewolff-minify-v2)
(name "go-minify")
(arguments
(substitute-keyword-arguments
(package-arguments go-github-com-tdewolff-minify-v2)
((#:install-source? _ #t) #f)
((#:import-path _ "github.com/tdewolff/minify/v2")
"github.com/tdewolff/minify/cmd/minify")))
(inputs
(list go-github-com-djherbis-atime
go-github-com-dustin-go-humanize
go-github-com-fsnotify-fsnotify
go-github-com-matryer-try
go-github-com-spf13-pflag))
(description "This package provides a CLI binary executible built from
go-github-com-tdewolff-minify-v2 source.")))
;;;
;;; Avoid adding new packages to the end of this file. To reduce the chances
;;; of a merge conflict, place them above by existing packages with similar

View File

@ -0,0 +1,97 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2023 Thomas Ieong <th.ieong@free.fr>
;;;
;;; This file is part of GNU Guix.
;;;
;;; GNU Guix is free software; you can redistribute it and/or modify it
;;; under the terms of the GNU General Public License as published by
;;; the Free Software Foundation; either version 3 of the License, or (at
;;; your option) any later version.
;;;
;;; GNU Guix is distributed in the hope that it will be useful, but
;;; WITHOUT ANY WARRANTY; without even the implied warranty of
;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
;;; GNU General Public License for more details.
;;;
;;; You should have received a copy of the GNU General Public License
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
(define-module (gnu packages golang-xyz)
#:use-module ((guix licenses) #:prefix license:)
#:use-module (guix build-system go)
#:use-module (guix gexp)
#:use-module (guix git-download)
#:use-module (guix packages)
#:use-module (guix utils)
#:use-module (gnu packages)
#:use-module (gnu packages golang-check))
;;; Commentary:
;;;
;;; Nomad Golang modules (libraries) are welcome here.
;;;
;;; Please: Try to add new module packages in alphabetic order.
;;;
;;; Code:
(define-public go-github-com-djherbis-atime
(package
(name "go-github-com-djherbis-atime")
(version "1.1.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/djherbis/atime")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0xsz55zpihd9wyrj6qvm3miqzb6x3mnp5apzs0dx1byndhb8adpq"))))
(build-system go-build-system)
(arguments
'(#:import-path "github.com/djherbis/atime"))
(home-page "https://github.com/djherbis/atime")
(synopsis "Access Times for files")
(description "Package atime provides a platform-independent way to get
atimes for files.")
(license license:expat)))
(define-public go-github-com-matryer-try
(package
(name "go-github-com-matryer-try")
(version "1")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/matryer/try")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "15f0m5ywihivnvwzcw0mh0sg27aky9rkywvxqszxka9q051qvsmy"))))
(build-system go-build-system)
(arguments
(list
#:import-path "github.com/matryer/try"
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'fix-tests
(lambda* (#:key import-path #:allow-other-keys)
(substitute* (string-append "src/" import-path
"/try_test.go")
(("var value string")
"")
(("value, err = SomeFunction\\(\\)")
"_, err = SomeFunction()")))))))
(native-inputs
(list go-github-com-cheekybits-is))
(home-page "https://github.com/matryer/try")
(synopsis "Simple idiomatic retry package for Go")
(description "This package provides an idiomatic Go retry module.")
(license license:expat)))
;;;
;;; Avoid adding new packages to the end of this file. To reduce the chances
;;; of a merge conflict, place them above by existing packages with similar
;;; functionality or similar names.
;;;

File diff suppressed because it is too large Load Diff

View File

@ -57,6 +57,8 @@
#:use-module (gnu packages graphics)
#:use-module (gnu packages graphviz)
#:use-module (gnu packages gtk)
#:use-module (gnu packages linux)
#:use-module (gnu packages machine-learning)
#:use-module (gnu packages maths)
#:use-module (gnu packages multiprecision)
#:use-module (gnu packages ncurses)
@ -64,6 +66,7 @@
#:use-module (gnu packages pretty-print)
#:use-module (gnu packages python)
#:use-module (gnu packages python-build)
#:use-module (gnu packages python-check)
#:use-module (gnu packages python-compression)
#:use-module (gnu packages python-science)
#:use-module (gnu packages python-web)
@ -426,6 +429,57 @@ algorithm for community detection in large networks.")
large networks.")
(license license:gpl3+)))
(define-public python-graphtools
(package
(name "python-graphtools")
(version "1.5.3")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/KrishnaswamyLab/graphtools")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1aaxhij4y5z2vvc34qnb5py6nw3ciz35a3z4lfr223f9kvfpqgak"))))
(build-system pyproject-build-system)
(arguments
(list
#:phases
'(modify-phases %standard-phases
(replace 'check
(lambda* (#:key tests? #:allow-other-keys)
(when tests?
;; Incompatibility with sklearn.
;; 'kNNLandmarkGraph' object has no attribute '_landmark_op'
(delete-file "test/test_landmark.py")
(setenv "LOKY_MAX_CPU_COUNT" "1")
(invoke "nose2" "-v")))))))
(propagated-inputs
(list python-deprecated
python-future
python-numpy
python-pygsp
python-scikit-learn
python-scipy
python-tasklogger))
(native-inputs
(list util-linux ;for lscpu
python-anndata
python-black
python-coverage
python-coveralls
python-nose
python-nose2
python-pandas
python-parameterized
python-igraph))
(home-page "https://github.com/KrishnaswamyLab/graphtools")
(synopsis "Tools for building and manipulating graphs in Python")
(description "This package provides tools for building and manipulating
graphs in Python.")
(license license:gpl3)))
(define-public python-louvain-igraph
(package
(name "python-louvain-igraph")
@ -468,6 +522,43 @@ millions of nodes (as long as they can fit in memory). The core function is
algorithm for a number of different methods.")
(license license:gpl3+)))
(define-public python-pygsp
(package
(name "python-pygsp")
(version "0.5.1")
(source
(origin
(method url-fetch)
(uri (pypi-uri "PyGSP" version))
(sha256
(base32 "002q4z3p3ka81rzhgi66qqmz1ccrg9hwch4bax7jsqixg64asx28"))))
(build-system pyproject-build-system)
(arguments
(list
#:test-flags
;; These all fail due to a type error in scipy.
'(list "-k" (string-append "not test_bunny"
" and not test_lowstretchtree"
" and not test_nngraph"
" and not test_plot_graphs"
" and not test_randomregular"))
#:phases
'(modify-phases %standard-phases
(add-after 'unpack 'disable-doctests
(lambda _
(substitute* "pygsp/tests/test_all.py"
(("def test_docstrings.*") "def _disabled_test_docstrings():\n")
(("return doctest.DocFileSuite.*") "return False\n")
(("suites.append\\(test_docstrings.*")
"")))))))
(propagated-inputs (list python-numpy python-scikit-image python-scipy))
(native-inputs (list python-coverage python-coveralls python-flake8))
(home-page "https://github.com/epfl-lts2/pygsp")
(synopsis "Graph Signal Processing in Python")
(description "The PyGSP is a Python package to ease signal processing on
graphs.")
(license license:bsd-3)))
(define-public faiss
(package
(name "faiss")
@ -727,7 +818,7 @@ transformed into common image formats for display or printing.")
(define-public python-graph-tool
(package
(name "python-graph-tool")
(version "2.58")
(version "2.59")
(source (origin
(method url-fetch)
(uri (string-append
@ -735,7 +826,7 @@ transformed into common image formats for display or printing.")
version ".tar.bz2"))
(sha256
(base32
"05vsk2600wn790hk7gr2f0609bzcslyhhv9x157n43vxy4y6r8vj"))))
"1bmck5fcihj9lr5kd8x624bdi9xhfc13pl4mwzv74jr5lz07kr6d"))))
(build-system gnu-build-system)
(arguments
`(#:imported-modules (,@%gnu-build-system-modules

View File

@ -16,7 +16,7 @@
;;; Copyright © 2017 Theodoros Foradis <theodoros@foradis.org>
;;; Copyright © 2017 Nikita <nikita@n0.is>
;;; Copyright © 2017, 2018, 2021 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2018, 2021, 2022, 2023 Maxim Cournoyer <maxim.cournoyer@gmail.com>
;;; Copyright © 2018, 2021, 2022, 2023, 2024 Maxim Cournoyer <maxim.cournoyer@gmail.com>
;;; Copyright © 2018, 2019, 2020, 2021, 2022, 2023 Arun Isaac <arunisaac@systemreboot.net>
;;; Copyright © 2018 Pierre-Antoine Rouby <pierre-antoine.rouby@inria.fr>
;;; Copyright © 2018 Eric Bavier <bavier@member.fsf.org>
@ -824,16 +824,26 @@ tables.")
#~(list "GUILE_AUTO_COMPILE=0")
#:phases
(if (target-x86-64?)
#~%standard-phases
#~(modify-phases %standard-phases
(add-before 'check 'disable-some-tests
(lambda _
;; This test can take more than an hour on some systems.
(substitute* "tests/basic.scm"
((".*spawn-fiber loop-to-1e4.*") ""))
;; These tests can take more than an hour and/or segfault.
(substitute* "Makefile"
(("tests/speedup.scm") ""))))))))
#~%standard-phases
#~(modify-phases %standard-phases
(add-before 'check 'disable-some-tests
(lambda _
;; This test can take more than an hour on some systems.
(substitute* "tests/basic.scm"
((".*spawn-fiber loop-to-1e4.*") ""))
;; These tests can take more than an hour and/or segfault.
(substitute* "Makefile"
(("tests/speedup.scm") ""))
(when #$(target-aarch64?)
;; The tests below have issues on aarch64 systems.
;; They pass on an Apple M1 but take a very long time
;; on a Hetzner aarch64 VM. Skip them.
(substitute* "tests/basic.scm"
((".*spawn-fiber-chain 5000000.*") ""))
(substitute* "tests/channels.scm"
((".*assert-run-fibers-terminates .*pingpong.*") "")))))))))
(native-inputs
(list texinfo pkg-config autoconf-2.71 automake libtool
guile-3.0 ;for 'guild compile
@ -2012,6 +2022,48 @@ convenient interface to SQL databases. This package implements the interface
for MySQL.")
(license license:gpl2+)))
(define-public guile-lmdb
(let ((commit "438143ca9ba157faec6f4c2740092c31c733fbfe")
(revision "0"))
(package
(name "guile-lmdb")
(version (git-version "0.0.1" revision commit))
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/aartaka/guile-lmdb")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32
"0p43c8ppbhzpi944in0z2jqr7acl8pm7s1x0p5f0idqda6n6f828"))))
(build-system guile-build-system)
(arguments
(list
#:source-directory "modules"
#:phases
#~(modify-phases %standard-phases
(add-before 'build 'substitute-lmdb-so
(lambda _
(let ((lmdb (string-append
#$(this-package-input "lmdb") "/lib/liblmdb.so")))
(substitute* "modules/lmdb/lmdb.scm"
(("liblmdb.so") lmdb))))))))
(native-inputs (list guile-3.0))
(inputs (list guile-3.0 lmdb))
(home-page "https://github.com/aartaka/guile-lmdb")
(synopsis "Bindings for Lightning Memory-Mapped Database in Guile")
(description "This package provides a Scheme wrapper around liblmdb.so.
Most names are the same as LMDB ones, except for prefix absence.
Several conveniences are added on top:
@itemize
@item @code{call-with-env-and-txn} and @code{call-with-cursor} wrappers.
@item @code{for-cursor} procedure for cursor iteration.
@item @code{val} and @code{stat} types.
@item Error signaling instead of integer return values.
@end itemize")
(license license:gpl3+))))
(define-public guile-config
(package
(name "guile-config")
@ -2051,90 +2103,74 @@ above command-line parameters.")
(replace "guile" guile-2.2)))))
(define-public guile-hall
(package
(name "guile-hall")
(version "0.4.1")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://gitlab.com/a-sassmannshausen/guile-hall")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "0yrrik1v1xbik5h5q7w2cxrx6gvkmcdm32dl36i7xqdq8pr8sh2d"))))
(build-system gnu-build-system)
(arguments
`(#:modules
((ice-9 match)
(ice-9 ftw)
,@%gnu-build-system-modules)
;; There are many unreleased bug fixes; use the latest commit for now.
(let ((commit "7558ba906d4281a5b825e3c1c87f2810312414b6")
(revision "1"))
(package
(name "guile-hall")
(version (git-version "0.4.1" revision commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://gitlab.com/a-sassmannshausen/guile-hall")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32 "0sqm6nyzc37p0xgjj21m9dar2iqik9gfwlcacp2v6y10lh2f1yps"))))
(build-system gnu-build-system)
(arguments
(list
#:modules `(((guix build guile-build-system)
#:select
(target-guile-effective-version))
,@%gnu-build-system-modules)
#:phases
(modify-phases
%standard-phases
(add-after 'install 'hall-wrap-binaries
(lambda* (#:key inputs outputs #:allow-other-keys)
(let* ((compiled-dir
(lambda (out version)
(string-append
out "/lib/guile/" version "/site-ccache")))
(uncompiled-dir
(lambda (out version)
(string-append
out "/share/guile/site"
(if (string-null? version) "" "/") version)))
(dep-path
(lambda (env modules path)
(list env ":" 'prefix
(cons modules
(map (lambda (input)
(string-append
(assoc-ref inputs input)
path))
,''("guile-config"))))))
(out (assoc-ref outputs "out"))
(bin (string-append out "/bin/"))
(site (uncompiled-dir out "")))
(match (scandir site)
(("." ".." version)
(for-each
(lambda (file)
(wrap-program
(string-append bin file)
(dep-path
"GUILE_LOAD_PATH"
(uncompiled-dir out version)
(uncompiled-dir "" version))
(dep-path
"GUILE_LOAD_COMPILED_PATH"
(compiled-dir out version)
(compiled-dir "" version))))
,''("hall"))
#t))))))))
(native-inputs
(list autoconf automake pkg-config texinfo))
(inputs (list guile-3.0))
(propagated-inputs
(list guile-config))
(synopsis "Guile project tooling")
(description
"Hall is a command-line application and a set of Guile libraries that
(with-imported-modules `((guix build guile-build-system)
,@%gnu-build-system-modules)
#~(modify-phases %standard-phases
(add-after 'install 'hall-wrap-binaries
(lambda* (#:key inputs #:allow-other-keys)
(let* ((version (target-guile-effective-version))
(site-ccache (string-append "/lib/guile/"
version "/site-ccache"))
(site (string-append "/share/guile/site/" version))
(dep-path
(lambda (env path)
(list env ":" 'prefix
(cons (string-append #$output path)
(map (lambda (input)
(string-append
(assoc-ref inputs input)
path))
(list "guile-config"
"guile-lib"))))))
(bin (string-append (ungexp output) "/bin/")))
(wrap-program (string-append bin "hall")
(dep-path "GUILE_LOAD_PATH" site)
(dep-path "GUILE_LOAD_COMPILED_PATH" site-ccache)))))))))
(native-inputs
(list autoconf
automake
gettext-minimal
guile-3.0
pkg-config
texinfo))
(inputs
(list bash-minimal
guile-3.0
guile-config
guile-lib))
(propagated-inputs
(list guile-config))
(synopsis "Guile project tooling")
(description
"Hall is a command-line application and a set of Guile libraries that
allow you to quickly create and publish Guile projects. It allows you to
transparently support the GNU build system, manage a project hierarchy &
provides tight coupling to Guix.")
(home-page "https://gitlab.com/a-sassmannshausen/guile-hall")
(license license:gpl3+)))
(define-public guile2.2-hall
(package
(inherit guile-hall)
(name "guile2.2-hall")
(inputs (modify-inputs (package-inputs guile-hall)
(replace "guile" guile-2.2)))
(propagated-inputs
`(("guile-config" ,guile2.2-config)
,@(alist-delete "guile-config"
(package-propagated-inputs guile-hall))))))
(home-page "https://gitlab.com/a-sassmannshausen/guile-hall")
(license license:gpl3+))))
(define-public guile-ics
(package
@ -3398,7 +3434,7 @@ from @code{tree-il}.")
(define-public guile-hoot
(package
(name "guile-hoot")
(version "0.2.0")
(version "0.3.0")
(source (origin
(method url-fetch)
(uri (string-append "https://spritely.institute/files/releases"
@ -3406,7 +3442,7 @@ from @code{tree-il}.")
version ".tar.gz"))
(sha256
(base32
"1byshh7092q2yzqwpi59j4xjsppvp1xqnqsv94yv541qfm0plnc2"))))
"1zgcp7xnx84gwdpxj0wga7xrcxcifp9fyp06b6d54gbxq4as8an1"))))
(build-system gnu-build-system)
(arguments
'(#:make-flags '("GUILE_AUTO_COMPILE=0"
@ -6013,7 +6049,7 @@ This module implements this interface by use of Guile's dynamic FFI.")
(define-public guile-goblins
(package
(name "guile-goblins")
(version "0.11.0")
(version "0.12.0")
(source
(origin
(method url-fetch)
@ -6022,7 +6058,7 @@ This module implements this interface by use of Guile's dynamic FFI.")
version ".tar.gz"))
(sha256
(base32
"1ic4f65kbziszi5cz1b7ypl6acph6kdq5pc3wasa1jns3gkzfl6l"))))
"1w1xf60i6an4fs2kr0cv7w01h2fhz1i23zp9w7nbmr32zqm8m59z"))))
(build-system gnu-build-system)
(arguments
(list #:make-flags
@ -6031,7 +6067,7 @@ This module implements this interface by use of Guile's dynamic FFI.")
(list pkg-config texinfo))
(inputs (list guile-3.0))
(propagated-inputs
(list guile-fibers guile-gcrypt))
(list guile-fibers guile-gcrypt guile-gnutls))
(home-page "https://spritely.institute/goblins")
(synopsis "Distributed programming environment for Guile")
(description

View File

@ -457,7 +457,7 @@ without requiring the source code to be rewritten.")
(define-public guile-next
(let ((version "3.0.9")
(revision "0")
(commit "d8df317bafcdd9fcfebb636433c4871f2fab28b2"))
(commit "fb1f5e28b1a575247fd16184b1c83b8838b09716"))
(package
(inherit guile-3.0)
(name "guile-next")
@ -471,7 +471,7 @@ without requiring the source code to be rewritten.")
(file-name (git-file-name name version))
(sha256
(base32
"0g294vnc5xkaq5vqh9hkh793mybkr17yqwh0fc46alnwxgpgjy5n"))))
"1lcc6sz0f3x253pr4a0fggsfkaxmxxw63cspfm2mjis6h82g6jxm"))))
(arguments
(substitute-keyword-arguments (package-arguments guile-3.0)
((#:phases phases '%standard-phases)
@ -488,7 +488,10 @@ without requiring the source code to be rewritten.")
(display #$version port)))))
(add-before 'check 'skip-failing-tests
(lambda _
(delete-file "test-suite/tests/version.test")))))))
(delete-file "test-suite/tests/version.test")))
#$@(if (target-hurd?)
#~((delete 'patch-posix-spawn-usage))
#~())))))
(native-inputs
(modify-inputs (package-native-inputs guile-3.0)
(prepend autoconf

View File

@ -64,7 +64,7 @@
(define-public haproxy
(package
(name "haproxy")
(version "2.7.6")
(version "2.9.0")
(source
(origin
(method url-fetch)
@ -72,7 +72,7 @@
(version-major+minor version)
"/src/haproxy-" version ".tar.gz"))
(sha256
(base32 "0kxpvrn6iaxhw2f2hrxblns6pnxmrds3vvs9h6nwbkrzvdykagqk"))))
(base32 "1aqfp1gslk4dfvrrzg51h0mn1j4n4in82z701bi7ycs63b6qm8gv"))))
(build-system gnu-build-system)
(arguments
(list
@ -110,7 +110,7 @@ realistic with today's hardware.")
(define-public libqb
(package
(name "libqb")
(version "2.0.7")
(version "2.0.8")
(source (origin
(method url-fetch)
(uri (string-append
@ -118,7 +118,7 @@ realistic with today's hardware.")
version "/libqb-" version ".tar.xz"))
(sha256
(base32
"0xd51wh7gdindh6fzi62r4xp9lkayggb1rqsprqmjkh1m71gnvin"))))
"1rifa94zrdr7d5gsy4yvkgqfx8f4yx4xr96hqvs05b5q43y329dl"))))
(build-system gnu-build-system)
(native-inputs (list pkg-config))
(inputs (list libxml2))
@ -137,7 +137,7 @@ applications.")
(define-public kronosnet
(package
(name "kronosnet")
(version "1.24")
(version "1.28")
(source (origin
(method git-fetch)
(uri (git-reference
@ -146,7 +146,7 @@ applications.")
(file-name (git-file-name name version))
(sha256
(base32
"1b8rz7f2h3scrq0xcqz58ckzsvv08g31j5jgy2v4i6w87r9c75lw"))))
"05kws374sj0p3yg918kf2l2jp518k0c9j5qgzb9gl327cwlbwkls"))))
(build-system gnu-build-system)
(arguments
;; XXX: Multiple tests failed. Tests
@ -197,7 +197,7 @@ applications.")
(define-public nsq
(package
(name "nsq")
(version "1.2.1")
(version "1.3.0")
(source
(origin
(method git-fetch)
@ -206,7 +206,7 @@ applications.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0ajqjwfn06zsmz21z9mkl4cblarypaf20228pqcd1293zl6y3ry8"))))
(base32 "1227ricbng8r5svnpr6hkmwjafa74jdp3ivijrk55qhw43rjk05a"))))
(build-system go-build-system)
(arguments
(list
@ -223,7 +223,9 @@ applications.")
(when tests?
(setenv "HOME" "/tmp")
(with-directory-excursion (string-append "src/" import-path)
(invoke #$@(if (target-x86?)
;; go test: -race is only supported on linux/amd64,
;; linux/ppc64le, linux/arm64
(invoke #$@(if (not target-x86-32?)
(list "go" "test" "-v" "-race" "./...")
(list "go" "test" "-v" "./...")))))))
(replace 'install
@ -280,7 +282,7 @@ instrumentation
(define-public corosync
(package
(name "corosync")
(version "3.1.6")
(version "3.1.8")
(source (origin
(method git-fetch)
(uri (git-reference
@ -289,7 +291,7 @@ instrumentation
(file-name (git-file-name name version))
(sha256
(base32
"03g3qnm5acmk7jry6kspvkssbiv8k39749bic2f0cj3ckkwy2li4"))))
"02imkif6lzhr8mwbwphdp4m6w987pqnrhai8zx06vpygiasx6cyp"))))
(build-system gnu-build-system)
(arguments
(list #:configure-flags #~'("--disable-static")
@ -329,7 +331,7 @@ lost.
(define-public pacemaker
(package
(name "pacemaker")
(version "2.1.4")
(version "2.1.7")
(source (origin
(method git-fetch)
(uri (git-reference
@ -338,7 +340,7 @@ lost.
(file-name (git-file-name name version))
(sha256
(base32
"04gfd7i3w0zbzv7vi7728lgbyjq7cbqpr7jsp501piwg3z5j4mvb"))))
"0vhimylbkwabi0hksgs66awn9iq3ik02k1n4xghxh81nhz7kjmdz"))))
(build-system gnu-build-system)
(arguments
(list #:configure-flags #~(list "--with-corosync" "--disable-static"

View File

@ -9,7 +9,7 @@
;;; Copyright © 2018 Lprndn <guix@lprndn.info>
;;; Copyright © 2019, 2021, 2023 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2020 Vincent Legoll <vincent.legoll@gmail.com>
;;; Copyright © 2020, 2021 Vinicius Monego <monego@posteo.net>
;;; Copyright © 2020, 2021, 2024 Vinicius Monego <monego@posteo.net>
;;; Copyright © 2020 Pierre Neidhardt <mail@ambrevar.xyz>
;;; Copyright © 2020 Brendan Tildesley <mail@brendan.scot>
;;; Copyright © 2021 Oleh Malyi <astroclubzp@gmail.com>
@ -832,14 +832,14 @@ due to its architecture which automatically parallelises the image workflows.")
(define-public gmic
(package
(name "gmic")
(version "3.0.0")
(version "3.3.3")
(source
(origin
(method url-fetch)
(uri (string-append "https://gmic.eu/files/source/gmic_"
version ".tar.gz"))
(sha256
(base32 "080inz0wisv3rhvbnzrgcs3j25wq86gybp68yi56gw6vwswnn19z"))))
(base32 "0pb474cdlxcp3m7gkxrfpnblag6r3wny7vih44gdyy2q8zb3ffch"))))
(build-system cmake-build-system)
(arguments
`(#:tests? #f ;there are no tests
@ -900,18 +900,6 @@ including 2D color images.")
(synopsis "Qt frontend for the G'MIC image processing framework")
(license license:gpl3+)))
(define-public gmic-qt-krita
(package
(inherit gmic-qt)
(name "gmic-qt-krita")
(arguments
(substitute-keyword-arguments (package-arguments gmic-qt)
((#:configure-flags flags)
'(list "-DGMIC_QT_HOST=krita" "-DENABLE_DYNAMIC_LINKING=ON"
(string-append "-DGMIC_LIB_PATH="
(assoc-ref %build-inputs "gmic") "/lib")))))
(synopsis "Krita plugin for the G'MIC image processing framework")))
(define-public gmic-qt-gimp
(package
(inherit gmic-qt)

View File

@ -36,7 +36,7 @@
;;; Copyright © 2022 ( <paren@disroot.org>
;;; Copyright © 2022-2023 Bruno Victal <mirai@makinata.eu>
;;; Copyright © 2023 Zheng Junjie <873216071@qq.com>
;;; Copyright © 2023 Nicolas Goaziou <mail@nicolasgoaziou.fr>
;;; Copyright © 2023-2024 Nicolas Goaziou <mail@nicolasgoaziou.fr>
;;; Copyright © 2023 Artyom V. Poptsov <poptsov.artyom@gmail.com>
;;;
;;; This file is part of GNU Guix.
@ -122,7 +122,7 @@
(define-public converseen
(package
(name "converseen")
(version "0.11.0.0")
(version "0.12.0.2")
(source (origin
(method git-fetch)
(uri (git-reference
@ -131,7 +131,7 @@
(file-name (git-file-name name version))
(sha256
(base32
"1imc0dbbrs96yv3mp6bs7whd14zvgdw7hmv87bz8lp7d739s74z4"))
"0gjg2ma8v8pwldny4j2ag92g5zrv5cz511mq44qr7akjsddq6q6p"))
(patches
(search-patches "converseen-hide-updates-checks.patch"
;; Remove links to sites relying on non-free
@ -141,6 +141,7 @@
(arguments
(list
#:tests? #false ;no tests
#:configure-flags #~(list "-DUSE_QT6=yes")
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'set-translations-location
@ -153,9 +154,9 @@
#$output
"/share/converseen/loc\")"))))))))
(native-inputs
(list pkg-config qttools-5))
(list pkg-config qttools))
(inputs
(list imagemagick qtbase-5))
(list imagemagick qtbase))
(home-page "https://converseen.fasterland.net/")
(synopsis "Batch image converter and resizer")
(description
@ -639,6 +640,32 @@ maximum quality factor.")
(license license:gpl3+)
(home-page "https://www.kokkonen.net/tjko/projects.html#jpegoptim")))
(define-public tgif
(package
(name "tgif")
(version "4.2.5")
(source
(origin
(method url-fetch)
(uri (string-append
"mirror://sourceforge/tgif/tgif/"
version "/tgif-QPL-" version ".tar.gz"))
(sha256
(base32 "1fk7qnqjmrr390bclwqrvlmh77bcl28hdn4vfdqydrpsrbzfj91g"))))
(build-system gnu-build-system)
(inputs
(list libx11
libxext
libxt
libxmu
zlib))
(home-page "http://bourbon.usc.edu/tgif/")
(synopsis "Xlib based interactive 2-D drawing tool")
(description
"Tgif (pronounced t-g-i-f) is an Xlib based interactive 2-D drawing tool
(using vector graphics) under X11.")
(license license:qpl)))
(define-public libicns
(package
(name "libicns")

View File

@ -4,7 +4,7 @@
;;; Copyright © 2019, 2020 Martin Becze <mjbecze@riseup.net>
;;; Copyright © 2020, 2021, 2022 Michael Rohleder <mike@rohleder.de>
;;; Copyright © 2022 Maxime Devos <maximedevos@telenet.be>
;;; Copyright © 2023 Artyom V. Poptsov <poptsov.artyom@gmail.com>
;;; Copyright © 2023, 2024 Artyom V. Poptsov <poptsov.artyom@gmail.com>
;;;
;;; This file is part of GNU Guix.
;;;
@ -30,6 +30,7 @@
#:use-module (guix build-system go)
#:use-module (gnu packages golang)
#:use-module (gnu packages golang-check)
#:use-module (gnu packages golang-crypto)
#:use-module (gnu packages golang-web)
#:use-module (gnu packages python)
#:use-module (gnu packages shells)
@ -223,7 +224,7 @@ written in Go.")
(define-public kubo
(package
(name "kubo")
(version "0.15.0")
(version "0.18.0")
(source
(origin
(method url-fetch/tarbomb)
@ -231,7 +232,7 @@ written in Go.")
"https://dist.ipfs.io/kubo/v" version
"/kubo-source.tar.gz"))
(sha256
(base32 "0ss5k8xnzn9qk977dni5ja89yygcysdw7r3mdk67cac2dpa9hhqs"))
(base32 "0fx5a974hyg29xvwwsmh3zz3nk3391ifyk3l0wl36xskfdqdwg5a"))
(file-name (string-append name "-" version "-source"))
(modules '((guix build utils)))
(snippet '(for-each delete-file-recursively
@ -286,6 +287,7 @@ written in Go.")
(list
#:unpack-path "github.com/ipfs/kubo"
#:import-path "github.com/ipfs/kubo/cmd/ipfs"
#:go go-1.18
#:phases
#~(modify-phases %standard-phases
;; https://github.com/ipfs/kubo/blob/master/docs/command-completion.md
@ -315,6 +317,7 @@ written in Go.")
go-github-com-google-uuid
go-github-com-golang-groupcache-lru
go-github-com-golang-snappy
go-github-com-gorilla-mux
go-github-com-gorilla-websocket
go-github-com-jackpal-go-nat-pmp
go-github-com-klauspost-compress
@ -361,7 +364,7 @@ written in Go.")
(list this-package)
'())
(list python-minimal-wrapper zsh)))
(home-page "https://ipfs.io")
(home-page "https://ipfs.tech")
(synopsis "Go implementation of IPFS, a peer-to-peer hypermedia protocol")
(description "IPFS is a global, versioned, peer-to-peer file system. It
combines good ideas from Git, BitTorrent, Kademlia, SFS, and the Web. It is

View File

@ -78,8 +78,8 @@
;;; When updating Jami, make sure that the patches used for ffmpeg-jami are up
;;; to date with those listed in
;;; <https://review.jami.net/plugins/gitiles/jami-daemon/+/refs/heads/master/contrib/src/ffmpeg/rules.mak>.
(define %jami-nightly-version "20231222.2")
(define %jami-daemon-commit "317b7317dcda4afb733ddb9bd5b450d4635941ae")
(define %jami-nightly-version "20240124.3")
(define %jami-daemon-commit "205904ed4dd736b8a0ea6c913ecb91d637b79867")
(define-public libjami
(package
@ -93,7 +93,7 @@
(file-name (git-file-name name version))
(sha256
(base32
"16qx50xz2mkw894irjsvql82iw7wpc5xncxpvw1nqd2sxhgfiq0i"))
"0knq84c5f11bgan0076mhi0kpc7l6wwxj41jpssdy0y1lfzgqd8a"))
(patches (search-patches
"libjami-ac-config-files.patch"
"jami-disable-integration-tests.patch"))))
@ -239,7 +239,7 @@ QSortFilterProxyModel conveniently exposed for QML.")
(file-name (git-file-name name version))
(sha256
(base32
"0ypbbyqmq6x9zq4sr550k38v8pg7yq685bmwqmigqzhqgfazcg97"))
"06q4cdizpix12yzjrnhdwqwybskhc58cissffdnf1zw5pbv0mqag"))
(patches (search-patches
"jami-libjami-headers-search.patch"
"jami-qml-tests-discovery.patch"

View File

@ -3405,9 +3405,10 @@ declaratively, to be used in other frameworks. Typical scenarios include
testing frameworks, mocking libraries and UI validation rules.")
(license license:bsd-2)))
(define java-hamcrest-parent-pom
(define-public java-hamcrest-parent-pom
(package
(inherit java-hamcrest-core)
(properties '((hidden? . #t)))
(name "java-hamcrest-parent-pom")
(propagated-inputs '())
(native-inputs '())
@ -4965,7 +4966,7 @@ transformations and analysis algorithms allow easily assembling custom
complex transformations and code analysis tools.")
(license license:bsd-3)))
(define java-org-ow2-parent-pom-1.3
(define-public java-org-ow2-parent-pom-1.3
(package
(name "java-org-ow2-parent-pom")
(version "1.3")
@ -4989,12 +4990,14 @@ complex transformations and code analysis tools.")
(synopsis "Ow2.org parent pom")
(description "This package contains the parent pom for projects from ow2.org,
including java-asm.")
(properties '((hidden? . #t)))
(license license:lgpl2.1+)))
(define java-asm-bootstrap
(define-public java-asm-bootstrap
(package
(inherit java-asm)
(name "java-asm-bootstrap")
(properties '((hidden? . #t)))
(arguments
(substitute-keyword-arguments (package-arguments java-asm)
((#:tests? _) #f)))

File diff suppressed because it is too large Load Diff

View File

@ -14,7 +14,7 @@
;;; Copyright © 2020, 2021, 2022, 2023 Zheng Junjie <873216071@qq.com>
;;; Copyright © 2021 Alexandros Theodotou <alex@zrythm.org>
;;; Copyright © 2021 la snesne <lasnesne@lagunposprasihopre.org>
;;; Copyright © 2021, 2022, 2023 Vinicius Monego <monego@posteo.net>
;;; Copyright © 2021, 2022, 2023, 2024 Vinicius Monego <monego@posteo.net>
;;; Copyright © 2022 Brendan Tildesley <mail@brendan.scot>
;;; Copyright © 2022 Petr Hodina <phodina@protonmail.com>
;;;
@ -1226,15 +1226,14 @@ communicate with each other. Here's a few things KDE Connect can do:
(define-public labplot
(package
(name "labplot")
(version "2.9.0")
(version "2.10.1")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://kde/stable/labplot"
"/" version "/labplot-"
version ".tar.xz"))
"/labplot-" version ".tar.xz"))
(sha256
(base32 "1wi19gj18yhrim1cb2dwgpnc2yvydm87h41fcg670ampy24i98z5"))))
(base32 "1vyslapcjmq7bra3hbbkwrcy6z0cn8z5z2bvzzgy1dng2waihvib"))))
(build-system qt-build-system)
(arguments
`(#:configure-flags
@ -1362,14 +1361,14 @@ timers for each task can be started, stopped, changed, or looped.")
(define-public kcachegrind
(package
(name "kcachegrind")
(version "23.04.3")
(version "23.08.4")
(source (origin
(method url-fetch)
(uri (string-append "mirror://kde/stable/release-service/" version
"/src/kcachegrind-" version ".tar.xz"))
(sha256
(base32
"175bag1mfidp7bdsjb3zinib76jy8h881rqxgmkn90gmv4fqy62b"))))
"011bsb9yxrjmazqs1s6fvzvga4mlhjpdvkifbxblqavwp3ipmwbw"))))
(build-system cmake-build-system)
(native-inputs
(list extra-cmake-modules perl python qttools-5 kdoctools))

View File

@ -4,6 +4,7 @@
;;; Copyright © 2020, 2021 Michael Rohleder <mike@rohleder.de>
;;; Copyright © 2021 Tanguy Le Carrour <tanguy@bioneland.org>
;;; Copyright © 2022 Felix Gruber <felgru@posteo.net>
;;; Copyright © 2024 Maxim Cournoyer <maxim.cournoyer@gmail.com>
;;;
;;; This file is part of GNU Guix.
;;;
@ -32,6 +33,7 @@
#:use-module (guix build-system python)
#:use-module (guix build-system pyproject)
#:use-module (guix download)
#:use-module (guix gexp)
#:use-module (guix git-download)
#:use-module (guix licenses)
#:use-module (guix packages))
@ -170,22 +172,28 @@ belonging to various licenses.")
(define-public reuse
(package
(name "reuse")
(version "1.1.2")
(version "3.0.1")
(source
(origin
(method url-fetch)
(uri (pypi-uri "reuse" version))
(sha256
(base32 "0ij2mpdnawjabnsy291157wzci9050dfclwib95phg7pnmd6xsw0"))))
(base32 "0vqawznn8zhh5m3hv51xjhkz0v4vbmsiz2z1smg52k4nmlly832r"))))
(build-system pyproject-build-system)
(native-inputs
(list python-poetry-core python-pytest))
(inputs
(list python-binaryornot
python-boolean.py
python-debian
python-jinja2
python-license-expression))
(arguments
;; Change directory before running the test suite to avoid having both
;; the local sources on GUIX_PYTHONPATH as well as the installed
;; libraries confusing Pytest (ImportPathMismatchError).
(list #:phases #~(modify-phases %standard-phases
(add-before 'check 'chdir
(lambda _
(chdir "/tmp"))))))
(native-inputs (list python-poetry-core python-pytest))
(inputs (list python-binaryornot
python-boolean.py
python-debian
python-jinja2
python-license-expression))
(home-page "https://reuse.software/")
(synopsis "Provide and verify copyright and licensing information")
(description

View File

@ -78,6 +78,8 @@
;;; Copyright © 2023 Foundation Devices, Inc. <hello@foundationdevices.com>
;;; Copyright © 2023, 2024 Wilko Meyer <w@wmeyer.eu>
;;; Copyright © 2023 Jaeme Sifat <jaeme@runbox.com>
;;; Copyright © 2024 Gabriel Wicki <gabriel@erlikon.ch>
;;; Copyright © 2024 Sharlatan Hellseher <sharlatanus@gmail.com>
;;;
;;; This file is part of GNU Guix.
;;;
@ -491,10 +493,27 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS."
"linux-" version ".tar.xz"))
(sha256 hash)))
;; The current "mainline" kernel.
(define-public linux-libre-6.7-version "6.7.2")
(define-public linux-libre-6.7-gnu-revision "gnu")
(define deblob-scripts-6.7
(linux-libre-deblob-scripts
linux-libre-6.7-version
linux-libre-6.7-gnu-revision
(base32 "0hwashmml56r74kgjb637b3ln2d7f9vgfl18sxvczyl84xlbcncj")
(base32 "1vb2pd0wdfl9p5qi8hj1i5xg1p4pyrp01iqhap9xbb2yai4l80j5")))
(define-public linux-libre-6.7-pristine-source
(let ((version linux-libre-6.7-version)
(hash (base32 "0wd6pxh7wy9bzjzwd0rdsdnghpr53qbs722fhg07bi19m8dy8kf3")))
(make-linux-libre-source version
(%upstream-linux-source version hash)
deblob-scripts-6.7)))
;; The current "stable" kernels. That is, the most recently released major
;; versions that are still supported upstream.
(define-public linux-libre-6.6-version "6.6.10")
(define-public linux-libre-6.6-version "6.6.14")
(define-public linux-libre-6.6-gnu-revision "gnu")
(define deblob-scripts-6.6
(linux-libre-deblob-scripts
@ -504,7 +523,7 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS."
(base32 "0kavbby960k7wg355p3hjb9v1c4gnk8dv3lkfhpz44ayhv7kihg5")))
(define-public linux-libre-6.6-pristine-source
(let ((version linux-libre-6.6-version)
(hash (base32 "0v2l0l90w7scv7bxkxxjgqnay0fjh678k9gdlgycgbh9q7j2grly")))
(hash (base32 "110mz8fjlg1j9wnhhq2ik5alayhf61adajd8jqmcsqprncnnpsgv")))
(make-linux-libre-source version
(%upstream-linux-source version hash)
deblob-scripts-6.6)))
@ -512,7 +531,7 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS."
;; The "longterm" kernels — the older releases with long-term upstream support.
;; Here are the support timelines:
;; <https://www.kernel.org/category/releases.html>
(define-public linux-libre-6.1-version "6.1.71")
(define-public linux-libre-6.1-version "6.1.75")
(define-public linux-libre-6.1-gnu-revision "gnu")
(define deblob-scripts-6.1
(linux-libre-deblob-scripts
@ -522,12 +541,12 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS."
(base32 "1jg2v1nxd6i5x536vmd1l14xhpzrcimpmjfipb1zkrwil102y25f")))
(define-public linux-libre-6.1-pristine-source
(let ((version linux-libre-6.1-version)
(hash (base32 "0hghnwsa282js9hy4krhdbgrb4khjzslr05zgvjx9zzragfp9xrd")))
(hash (base32 "0mis14ll6xmhw71vfpw1aahi5z207qysha7x316fq4qc6c899lbc")))
(make-linux-libre-source version
(%upstream-linux-source version hash)
deblob-scripts-6.1)))
(define-public linux-libre-5.15-version "5.15.146")
(define-public linux-libre-5.15-version "5.15.148")
(define-public linux-libre-5.15-gnu-revision "gnu")
(define deblob-scripts-5.15
(linux-libre-deblob-scripts
@ -537,71 +556,56 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS."
(base32 "14pw0yl0yxdgcdp01rpi91ylil9irwzxfq04kfvn3gg2abaq37bn")))
(define-public linux-libre-5.15-pristine-source
(let ((version linux-libre-5.15-version)
(hash (base32 "14nijbspmzd4r38l8cpl4vn9dhawzcfnhyc0gnaxl2m8l9gpm02s")))
(hash (base32 "1n75lrck581mppx84cds1a1l5vj05cdkp8ahpry7dx6rgz4pb1f4")))
(make-linux-libre-source version
(%upstream-linux-source version hash)
deblob-scripts-5.15)))
(define-public linux-libre-5.10-version "5.10.206")
(define-public linux-libre-5.10-version "5.10.209")
(define-public linux-libre-5.10-gnu-revision "gnu1")
(define deblob-scripts-5.10
(linux-libre-deblob-scripts
linux-libre-5.10-version
linux-libre-5.10-gnu-revision
(base32 "1b33rkn32b923025iiz4xzxiy8y5ii9j5qk4021mg575890rl4ch")
(base32 "0zmmqj5gyiy2q81f199c29b14isfiqbvl87y72k14yy0q5398276")))
(base32 "12csh2zyjrqzgqcv799gv8h4xaw1irxh2zqddn4jqp5p7psx4j5k")))
(define-public linux-libre-5.10-pristine-source
(let ((version linux-libre-5.10-version)
(hash (base32 "0ns8qxcrxj9i76b93xcghl002l8vbkg7ksd435sikig62qr62gf4")))
(hash (base32 "1mc8rssk5aypgb58jz6i2bbflfr6qh1kgqpam0k8fqvwcjnjzqj4")))
(make-linux-libre-source version
(%upstream-linux-source version hash)
deblob-scripts-5.10)))
(define-public linux-libre-5.4-version "5.4.266")
(define-public linux-libre-5.4-version "5.4.268")
(define-public linux-libre-5.4-gnu-revision "gnu1")
(define deblob-scripts-5.4
(linux-libre-deblob-scripts
linux-libre-5.4-version
linux-libre-5.4-gnu-revision
(base32 "0xg5cz82k2cb0ikxvwv1hp5c3h377jkb5sd6aszvsk7hnabhk62v")
(base32 "08wn4rjrmi8asmdkg92xbbm6v0sw44kackp69agbw57zy6fp2zys")))
(base32 "0x0xg0fcykpd117x3q0gim8jilhx922ashhckjvafxv2gk2zzjhj")))
(define-public linux-libre-5.4-pristine-source
(let ((version linux-libre-5.4-version)
(hash (base32 "1dmcn9i3nvf1gldm1a32gnl5ybwbk2lizb3wa4gc06g7dxz2y1ys")))
(hash (base32 "081695lgkdwlrp6gpp6pyflgh76zax1w52shys4s9zjnrfkarj5g")))
(make-linux-libre-source version
(%upstream-linux-source version hash)
deblob-scripts-5.4)))
(define-public linux-libre-4.19-version "4.19.304")
(define-public linux-libre-4.19-version "4.19.306")
(define-public linux-libre-4.19-gnu-revision "gnu1")
(define deblob-scripts-4.19
(linux-libre-deblob-scripts
linux-libre-4.19-version
linux-libre-4.19-gnu-revision
(base32 "0pjal2cc2f99cvw8r4icb4l24j41k48jkj6bqk7pcahzcgx33ycb")
(base32 "07j33w4pq319gaypfsym6v0i2xqc5jagm47nxyy2010zn8k6y8kd")))
(base32 "0fgkp3v7qgqpn7l1987xcwwlrmwsbscqnxfv06p8nkavrhymrv3c")))
(define-public linux-libre-4.19-pristine-source
(let ((version linux-libre-4.19-version)
(hash (base32 "165mljr8v1cf4vf4a4b44hx089rprkssvi2azq5wbxxg3basbind")))
(hash (base32 "06dy270xw4frnrc9p2qjh8chgp02fr5ll5g2b0lx9xqzlq7y86xr")))
(make-linux-libre-source version
(%upstream-linux-source version hash)
deblob-scripts-4.19)))
(define-public linux-libre-4.14-version "4.14.335")
(define-public linux-libre-4.14-gnu-revision "gnu1")
(define deblob-scripts-4.14
(linux-libre-deblob-scripts
linux-libre-4.14-version
linux-libre-4.14-gnu-revision
(base32 "1vbgykwzf7j0yjqcwn747cfhwj0rgw3s9h627q94wb9a19x9p0fr")
(base32 "1ir96bbhw77xw6lmsnh42gi130nnzjklpgfyd46pxmqckrpydcvx")))
(define-public linux-libre-4.14-pristine-source
(let ((version linux-libre-4.14-version)
(hash (base32 "0aa0xi1sn4rw9ichgmvxp0s9hsi6rfzhzd9wgbvzvc90md2qfs19")))
(make-linux-libre-source version
(%upstream-linux-source version hash)
deblob-scripts-4.14)))
(define %boot-logo-patch
;; Linux-Libre boot logo featuring Freedo and a gnu.
(origin
@ -630,6 +634,11 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS."
(patches (append (origin-patches source)
patches))))
(define-public linux-libre-6.7-source
(source-with-patches linux-libre-6.7-pristine-source
(list %boot-logo-patch
%linux-libre-arm-export-__sync_icache_dcache-patch)))
(define-public linux-libre-6.6-source
(source-with-patches linux-libre-6.6-pristine-source
(list %boot-logo-patch
@ -667,10 +676,6 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS."
(list %boot-logo-patch
%linux-libre-arm-export-__sync_icache_dcache-patch)))
(define-public linux-libre-4.14-source
(source-with-patches linux-libre-4.14-pristine-source
(list %boot-logo-patch)))
;;;
;;; Kernel headers.
@ -749,6 +754,11 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS."
(description "Headers of the Linux-Libre kernel.")
(license license:gpl2)))
(define-public linux-libre-headers-6.7
(make-linux-libre-headers* linux-libre-6.7-version
linux-libre-6.7-gnu-revision
linux-libre-6.7-source))
(define-public linux-libre-headers-6.6
(make-linux-libre-headers* linux-libre-6.6-version
linux-libre-6.6-gnu-revision
@ -779,11 +789,6 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS."
linux-libre-4.19-gnu-revision
linux-libre-4.19-source))
(define-public linux-libre-headers-4.14
(make-linux-libre-headers* linux-libre-4.14-version
linux-libre-4.14-gnu-revision
linux-libre-4.14-source))
;; The following package is used in the early bootstrap, and thus must be kept
;; stable and with minimal build requirements.
(define-public linux-libre-headers-5.15.49
@ -1107,6 +1112,14 @@ Linux kernel. It has been modified to remove all non-free binary blobs.")
(define-public linux-libre-source linux-libre-6.6-source)
(define-public linux-libre linux-libre-6.6)
(define-public linux-libre-6.7
(make-linux-libre* linux-libre-6.7-version
linux-libre-6.7-gnu-revision
linux-libre-6.7-source
'("x86_64-linux" "i686-linux" "armhf-linux"
"aarch64-linux" "powerpc64le-linux" "riscv64-linux")
#:configuration-file kernel-config))
(define-public linux-libre-6.1
(make-linux-libre* linux-libre-6.1-version
linux-libre-6.1-gnu-revision
@ -1147,14 +1160,6 @@ Linux kernel. It has been modified to remove all non-free binary blobs.")
"aarch64-linux" "powerpc64le-linux")
#:configuration-file kernel-config))
(define-public linux-libre-4.14
(make-linux-libre* linux-libre-4.14-version
linux-libre-4.14-gnu-revision
linux-libre-4.14-source
'("x86_64-linux" "i686-linux" "armhf-linux"
"powerpc64le-linux")
#:configuration-file kernel-config))
;; Linux-Libre-LTS points to the *newest* released long-term support version of
;; Linux-Libre.
;; Reference: <https://www.kernel.org/category/releases.html>
@ -1217,14 +1222,6 @@ Linux kernel. It has been modified to remove all non-free binary blobs.")
#:defconfig "multi_v7_defconfig"
#:extra-version "arm-generic"))
(define-public linux-libre-arm-generic-4.14
(make-linux-libre* linux-libre-4.14-version
linux-libre-4.14-gnu-revision
linux-libre-4.14-source
'("armhf-linux")
#:defconfig "multi_v7_defconfig"
#:extra-version "arm-generic"))
(define-public linux-libre-arm-omap2plus
(make-linux-libre* linux-libre-version
linux-libre-gnu-revision
@ -1241,14 +1238,6 @@ Linux kernel. It has been modified to remove all non-free binary blobs.")
#:defconfig "omap2plus_defconfig"
#:extra-version "arm-omap2plus"))
(define-public linux-libre-arm-omap2plus-4.14
(make-linux-libre* linux-libre-4.14-version
linux-libre-4.14-gnu-revision
linux-libre-4.14-source
'("armhf-linux")
#:defconfig "omap2plus_defconfig"
#:extra-version "arm-omap2plus"))
(define-public linux-libre-arm64-generic
(make-linux-libre* linux-libre-version
linux-libre-gnu-revision
@ -3634,7 +3623,7 @@ devices. It replaces @code{iwconfig}, which is deprecated.")
(inputs
(list kmod libnl ncurses pciutils zlib))
(home-page "https://01.org/powertop/")
(synopsis "Analyze power consumption on Intel-based laptops")
(synopsis "Analyze power consumption on x86-based laptops")
(description
"PowerTOP is a Linux tool to diagnose issues with power consumption and
power management. In addition to being a diagnostic tool, PowerTOP also has
@ -4431,25 +4420,36 @@ time.")
(define-public python-evdev
(package
(name "python-evdev")
(version "1.3.0")
(version "1.5.0")
(source
(origin
(method url-fetch)
(uri (pypi-uri "evdev" version))
(method git-fetch) ; no tests data in PyPi package
(uri (git-reference
(url "https://github.com/gvalkov/python-evdev")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0kb3636yaw9l8xi8s184w0r0n9ic5dw3b8hx048jf9fpzss4kimi"))))
(build-system python-build-system)
(base32 "1cbakix48zxivbznzb02w7sbxmqfaiaahhvjnjz4yif4vyrdyjli"))))
(build-system pyproject-build-system)
(arguments
`(#:tests? #f ;no rule for tests
#:phases
(modify-phases %standard-phases
(add-before 'build 'fix-hard-coded-directory
(lambda* (#:key inputs #:allow-other-keys)
(substitute* "setup.py"
(("/usr/include/linux")
(string-append
(assoc-ref inputs "kernel-headers") "/include/linux")))
#t)))))
(list
#:test-flags
;; Silent tests requiring access to /dev/uinput.
#~(list "-k" (string-append "not test_open"
" and not test_open_context"
" and not test_enable_events"
" and not test_abs_values"
" and not test_write"))
#:phases
#~(modify-phases %standard-phases
(add-before 'build 'fix-hard-coded-directory
(lambda* (#:key inputs #:allow-other-keys)
(substitute* "setup.py"
(("/usr/include/linux")
(string-append
(assoc-ref inputs "kernel-headers") "/include/linux"))))))))
(native-inputs
(list python-pytest))
(home-page "https://github.com/gvalkov/python-evdev")
(synopsis "Bindings to the Linux input handling subsystem")
(description
@ -8822,22 +8822,25 @@ framebuffer dump file (copy) to a PNG image.")
(define-public libcgroup
(package
(name "libcgroup")
(version "2.0.2")
(version "3.1.0")
(home-page "https://github.com/libcgroup/libcgroup")
(source
(origin
(method url-fetch)
(uri (string-append home-page "/releases/download/v"
version "/" name "-" version ".tar.gz"))
(uri (string-append
"https://github.com/libcgroup/libcgroup/releases/download/v"
version "/" name "-" version ".tar.gz"))
(sha256
(base32 "1y0c9ncsawamj77raiw6qkbm5cdsyvhjb2mvgma1kxmgw0r3pxlf"))))
(base32 "0n0jkvmagw14vgwx3j5b6vv5h25lasrg2a7xihq9h11ww2qw8vlp"))))
(build-system gnu-build-system)
(arguments
;; Tests are virtualized with lxc, it is not very feasible
;; to make them executable under guix build. Also, note that
;; origin is using source tarball release which is prepared
;; after testing.
`(#:tests? #f))
(list #:tests? #f
#:configure-flags
#~'("--disable-systemd")))
(native-inputs
(list bison flex))
(inputs

View File

@ -41,6 +41,7 @@
;;; Copyright © 2023 ykonai <mail@ykonai.net>
;;; Copyright © 2023 Gabriel Hondet <gabriel.hondet@cominety.net>
;;; Copyright © 2023 Raven Hallsby <karl@hallsby.com>
;;; Copyright © 2024 Michal Atlas <michal_atlas+git@posteo.net>
;;;
;;; This file is part of GNU Guix.
;;;
@ -87,6 +88,7 @@
#:use-module (gnu packages fontutils)
#:use-module (gnu packages freedesktop)
#:use-module (gnu packages game-development)
#:use-module (gnu packages gcc)
#:use-module (gnu packages gl)
#:use-module (gnu packages glib)
#:use-module (gnu packages gnome)
@ -1071,7 +1073,7 @@ options, e.g., by looking up an external key/value store
(define-public sbcl-command-line-args
(package
(name "sbcl-command-line-args")
(version "0.0.0")
(version "0.1.0")
(source
(origin
(method git-fetch)
@ -1080,12 +1082,13 @@ options, e.g., by looking up an external key/value store
(commit (string-append "v" version))))
(file-name (git-file-name "cl-command-line-args" version))
(sha256
(base32 "01p52zxr1b49c15ichlc3zadd1mrmwxzria53j949ayl2j6k8w1b"))))
(base32 "0ncw32qaak878xg68p42m2sh0qv19hg1va9wrh74d92v7cqz08kw"))))
(build-system asdf-build-system/sbcl)
(arguments
'(#:asd-systems '("whereiseveryone.command-line-args")))
(inputs
(list sbcl-alexandria
sbcl-charje.documentation
sbcl-cl-str
sbcl-serapeum
sbcl-trivia))
@ -10528,6 +10531,37 @@ for more information.")
(define-public ecl-documentation-utils-extensions
(sbcl-package->ecl-package sbcl-documentation-utils-extensions))
(define-public sbcl-charje.documentation
(package
(name "sbcl-charje.documentation")
(version "0.0.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://git.sr.ht/~charje/documentation")
(commit (string-append "v" version))))
(sha256
(base32
"149r9qdz5dyxsamhf5miaa9njr7kn7nc0ic448k133rs3nnwagqc"))
(file-name (git-file-name "cl-charje.documentation" version))))
(build-system asdf-build-system/sbcl)
(inputs
(list sbcl-alexandria))
(home-page "https://git.sr.ht/~charje/documentation")
(synopsis "Docstring parsing library for Common Lisp")
(description "Charje.documentation can used to parse Common Lisp
docstrings the charje way, or it can be used to create custom docstring
parsers. Docstring parsers are composed using mixin classes and
initialization methods.")
(license license:agpl3+)))
(define-public cl-charje.documentation
(sbcl-package->cl-source-package sbcl-charje.documentation))
(define-public ecl-charje.documentation
(sbcl-package->ecl-package sbcl-charje.documentation))
(define-public sbcl-staple
(let ((commit "0ee8e25fe6fe8fa83b2a6c93d4febd468c3eaa4e")
(revision "1"))
@ -10675,8 +10709,8 @@ functions for arrays and vectors. Originally from Plump.")
(sbcl-package->ecl-package sbcl-array-utils))
(define-public sbcl-lass
(let ((commit "a7a4452f6a670b8fb01a73d3007030d16bd1ec2c")
(revision "0"))
(let ((commit "1f2418dbf2d8d6f5892171057616b2ca9d6e5008")
(revision "1"))
(package
(name "sbcl-lass")
(version (git-version "0.6.0" revision commit))
@ -10689,7 +10723,7 @@ functions for arrays and vectors. Originally from Plump.")
(commit commit)))
(file-name (git-file-name "cl-lass" version))
(sha256
(base32 "06wds1qzj8s862pmmza1427n7gdpplqplxqnxyqkrr0hgxdl4xbf"))))
(base32 "1wax2kykc9ff0sk2linp9v8fcsm5ay6idpq365vivady9fh504r5"))))
(build-system asdf-build-system/sbcl)
(inputs
(list sbcl-cl-base64 sbcl-trivial-indent sbcl-trivial-mimes))
@ -17025,11 +17059,11 @@ latitude/longitude and MGRS.")
(sbcl-package->ecl-package sbcl-mgrs))
(define-public sbcl-maidenhead
(let ((commit "202671f39a4c90c18016123685705533d43ccde6")
(let ((commit "4b9c38e4845dda56ae7fb0355c5260c9ade0ac12")
(revision "1"))
(package
(name "sbcl-maidenhead")
(version (git-version "1.0" revision commit))
(version (git-version "1.1" revision commit))
(source
(origin
(method git-fetch)
@ -17038,7 +17072,7 @@ latitude/longitude and MGRS.")
(commit commit)))
(file-name (git-file-name "cl-maidenhead" version))
(sha256
(base32 "0bkw31jibx4sh2086jgsw4rvaz3i1dmycbwp203rjj78x7wz9743"))))
(base32 "10pcx2ngyj6lkfbg1b58lzcm02xl1a3smnad5lvvw30pbalwcq46"))))
(build-system asdf-build-system/sbcl)
(native-inputs
(list sbcl-fiveam))
@ -20540,6 +20574,312 @@ most modern systems and compilers.")
(define-public cl-3d-quaternions
(sbcl-package->cl-source-package sbcl-3d-quaternions))
(define-public sbcl-interface
(let ((commit "6d8bd74214053debcbc0b174d65ea73c271c1563")
(revision "0"))
(package
(name "sbcl-interface")
(version (git-version "0.0.0" revision commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/stylewarning/interface")
(commit commit)))
(file-name (git-file-name "cl-interface" version))
(sha256
(base32 "0h1bckhyig2znl6nrd3agjzz7knrm2kyh2vfyk7j60kzki9rpzxy"))))
(build-system asdf-build-system/sbcl)
(inputs (list sbcl-alexandria sbcl-global-vars))
(synopsis "System for defining interfaces")
(description
"This library contains an implementation of interfaces and
implementations. They're sometimes called protocols in other
languages. Broadly speaking, an @emph{interface} is some collection of
function @emph{prototypes} that a valid implementation must implement.")
(home-page "https://github.com/stylewarning/interface")
(license license:bsd-3))))
(define-public ecl-interface
(sbcl-package->ecl-package sbcl-interface))
(define-public cl-interface
(sbcl-package->cl-source-package sbcl-interface))
(define-public sbcl-cl-syslog
(let ((commit "d5d46f777f0735938e6f650cf17d814b88b70305")
(revision "0"))
(package
(name "sbcl-cl-syslog")
(version (git-version "0.2.4" revision commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/mmaul/cl-syslog")
(commit commit)))
(file-name (git-file-name "cl-syslog" version))
(sha256
(base32 "1qcz55jiqwk91b01hsahxnha884f6zf2883j2m51sqph0mvj69mh"))))
(build-system asdf-build-system/sbcl)
(inputs
(list sbcl-alexandria
sbcl-babel
sbcl-cffi
sbcl-global-vars
sbcl-local-time
sbcl-split-sequence
sbcl-usocket))
(arguments
(list #:tests? #f))
(synopsis "Common Lisp interface to local and remote Syslog facilities")
(description "@code{cl-syslog} is a Common Lisp library that provides
access to the syslog logging facility.")
(home-page "https://cl-syslog.common-lisp.dev/")
(license license:bsd-3))))
(define-public ecl-cl-syslog
(sbcl-package->ecl-package sbcl-cl-syslog))
(define-public cl-syslog
(sbcl-package->cl-source-package sbcl-cl-syslog))
(define-public sbcl-alexa
(package
(name "sbcl-alexa")
(version "2.1.1")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/quil-lang/alexa")
(commit (string-append "v" version))))
(file-name (git-file-name "cl-alexa" version))
(sha256
(base32 "1y9jyz9gfmd02h492kf7v3mmpbhc0yfh4ka2rzd1vczq6fl8qgqv"))))
(build-system asdf-build-system/sbcl)
(native-inputs (list sbcl-fiasco))
(inputs (list sbcl-alexandria sbcl-cl-ppcre))
(synopsis "Lexical Analyzer Generator for Common Lisp")
(description
"ALEXA is a tool similar to lex or flex for generating lexical analyzers.
Unlike tools like lex, however, ALEXA defines a domain-specific language
within your Lisp program, so you don't need to invoke a separate tool.")
(home-page "https://github.com/quil-lang/alexa")
(license license:bsd-3)))
(define-public ecl-alexa
(sbcl-package->ecl-package sbcl-alexa))
(define-public cl-alexa
(sbcl-package->cl-source-package sbcl-alexa))
(define-public sbcl-metering
(let ((commit "62dbaa5e8d29d2f213b881d740114941c2c3d1be")
(revision "0"))
(package
(name "sbcl-metering")
(version (git-version "3.2" revision commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://gitlab.common-lisp.net/dkochmanski/metering")
(commit commit)))
(file-name (git-file-name "cl-metering" version))
(sha256
(base32 "0jx3ypk8m815yp7208xkcxkvila847mvna25a2p22ihnj0ms9rn1"))))
(build-system asdf-build-system/sbcl)
(native-inputs (list sbcl-fiveam))
(synopsis "Common Lisp code profiling tool")
(description
"The Metering System is a portable Common Lisp code profiling tool.
It gathers timing and consing statistics for specified functions while
a program is running.")
(home-page "https://gitlab.common-lisp.net/dkochmanski/metering")
(license license:public-domain))))
(define-public ecl-metering
(sbcl-package->ecl-package sbcl-metering))
(define-public cl-metering
(sbcl-package->cl-source-package sbcl-metering))
(define-public sbcl-cl-grnm
(let ((commit "778a312e9eb3d3de7541457b516ea3d9055a15aa")
(revision "0"))
(package
(name "sbcl-cl-grnm")
(version (git-version "0.1.0" revision commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/quil-lang/cl-grnm")
(commit commit)))
(file-name (git-file-name "cl-grnm" version))
(sha256
(base32 "1hb5n37n3x2ylrghcqsia2g9a6f5wg24l659jiz4ncpi5bsv4m3s"))))
(build-system asdf-build-system/sbcl)
(synopsis "Common Lisp implementation of (grid restrained) Nelder-Mead")
(description
"These common lisp sources contain two variants of the Nelder-Mead
algorithm. The original algorithm and a provably convergent, reliable variant
by A. Bürmen et al, called the
@acronym{GRNMA, Grid Restrained Nelder Mead Algorithm}.")
(home-page "https://github.com/quil-lang/cl-grnm")
(license license:expat))))
(define-public ecl-cl-grnm
(sbcl-package->ecl-package sbcl-cl-grnm))
(define-public cl-grnm
(sbcl-package->cl-source-package sbcl-cl-grnm))
(define-public sbcl-priority-queue
(let ((commit "011b8d52ef7ba7f8e6bc26608eedef222b38aaa8")
(revision "0"))
(package
(name "sbcl-priority-queue")
(version (git-version "0.1" revision commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/dsorokin/priority-queue")
(commit commit)))
(file-name (git-file-name "cl-priority-queue" version))
(sha256
(base32 "0y5a1fid8xzzl58hfdj64n8mrzq0kr06a0lnmdjpgi0czc3x0jcy"))))
(build-system asdf-build-system/sbcl)
(synopsis "Priority queue for Common Lisp")
(description "This package provides a priority queue implemented with
an array-based heap.")
(home-page "https://github.com/dsorokin/priority-queue")
(license license:expat))))
(define-public ecl-priority-queue
(sbcl-package->ecl-package sbcl-priority-queue))
(define-public cl-priority-queue
(sbcl-package->cl-source-package sbcl-priority-queue))
(define-public sbcl-cl-messagepack
(let ((commit "8ff2060ed20677feef8ac01558690df0aeac30b6")
(revision "0"))
(package
(name "sbcl-cl-messagepack")
(version (git-version "0.0.0" revision commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/mbrezu/cl-messagepack")
(commit commit)))
(file-name (git-file-name "cl-messagepack" version))
(sha256
(base32 "1hjd1q18lz46k46afz94ljflp76mfr30d6z4jrsgd26y2lc4gchc"))))
(build-system asdf-build-system/sbcl)
(native-inputs (list sbcl-cl-json sbcl-fiveam))
(inputs (list sbcl-babel sbcl-closer-mop sbcl-flexi-streams))
(synopsis "Common Lisp implementation of MessagePack")
(description
"This is a Common Lisp implementation of the MessagePack
(@url{http://msgpack.org/}) serialization/deserialization format,
implemented according to
@url{http://wiki.msgpack.org/display/MSGPACK/Format+specification}.")
(home-page "https://github.com/mbrezu/cl-messagepack")
(license license:bsd-2))))
(define-public ecl-cl-messagepack
(sbcl-package->ecl-package sbcl-cl-messagepack))
(define-public cl-messagepack
(sbcl-package->cl-source-package sbcl-cl-messagepack))
(define-public sbcl-cl-permutation
(let ((commit "20c10e9ca56452d2fafc3ec0984dcdf78b4f4b19")
(revision "0"))
(package
(name "sbcl-cl-permutation")
(version (git-version "0.0.0" revision commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/stylewarning/cl-permutation")
(commit commit)))
(file-name (git-file-name "cl-permutation" version))
(sha256
(base32 "0i932g0k50y24hxizni6zfya4kcw77yk3b0llivm9g50s7fxj9dk"))))
(build-system asdf-build-system/sbcl)
(native-inputs (list sbcl-fiasco))
(inputs
(list sbcl-alexandria
sbcl-bordeaux-fft
sbcl-cl-algebraic-data-type
sbcl-cl-cont
sbcl-closer-mop
sbcl-iterate
sbcl-priority-queue))
(synopsis "Permutations and permutation groups in Common Lisp")
(description
"This is a Commin Lisp library for operating on permutations and
permutation groups.")
(home-page "https://github.com/stylewarning/cl-permutation")
(license license:bsd-3))))
(define-public ecl-cl-permutation
(sbcl-package->ecl-package sbcl-cl-permutation))
(define-public cl-permutation
(sbcl-package->cl-source-package sbcl-cl-permutation))
(define-public sbcl-magicl
(package
(name "sbcl-magicl")
(version "0.9.1")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/quil-lang/magicl")
(commit (string-append "v" version))))
(file-name (git-file-name "cl-magicl" version))
(sha256
(base32 "0x9p55qin399jhr5md88nij8fv78b64xjhww7ys364pkjnx8ak9v"))))
(build-system asdf-build-system/sbcl)
(native-inputs (list gfortran sbcl-fiasco))
(inputs
(list lapack
sbcl-alexandria
sbcl-abstract-classes
sbcl-cffi
sbcl-interface
sbcl-policy-cond
sbcl-static-vectors
sbcl-trivial-garbage))
(arguments
(list
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'fix-paths
(lambda* (#:key inputs #:allow-other-keys)
(substitute* "src/extensions/blas/load-libs.lisp"
(("libblas.so")
(search-input-file inputs "/lib/libblas.so")))
(substitute* "src/extensions/lapack/load-libs.lisp"
(("liblapack.so")
(search-input-file inputs "/lib/liblapack.so"))))))))
(synopsis "Matrix Algebra proGrams In Common Lisp")
(description
"This package provides matrix algebra functions for Common Lisp.")
(home-page "https://github.com/quil-lang/magicl")
(license license:bsd-3)))
(define-public cl-magicl
(sbcl-package->cl-source-package sbcl-magicl))
(define-public sbcl-messagebox
(let ((commit "ea3688d9a9954bee7079c0173bc7b3f327021e9f")
(revision "1"))

View File

@ -25,7 +25,8 @@
;;; Copyright © 2022 ( <paren@disroot.org>
;;; Copyright © 2023 Zheng Junjie <873216071@qq.com>
;;; Copyright © 2023 Yovan Naumovski <yovan@gorski.stream>
;;; Copyright © 2023 Andrew Kravchuk <awkravchuk@gmail.com.
;;; Copyright © 2023 Andrew Kravchuk <awkravchuk@gmail.com>
;;; Copyright © 2024 Andreas Enge <andreas@enge.fr>
;;;
;;; This file is part of GNU Guix.
;;;
@ -1488,12 +1489,12 @@ includes a compiler as well as an interpreter.")
(define-public s7-bootstrap
;; Need s7-bootstrap to build libc_s7.so (for the REPL) and run tests
(let ((commit "618de30e0f9851515724245e3ebbfa1be4de6906") ;no releases
(let ((commit "23a64facfac06c4bc23a7de8f04691c55f88bd40") ;no releases
(revision "0"))
(hidden-package
(package
(name "s7-bootstrap")
(version (git-version "23.3" revision commit))
(version (git-version "24.1" revision commit))
(source (origin
(method git-fetch)
(uri (git-reference
@ -1502,7 +1503,8 @@ includes a compiler as well as an interpreter.")
(file-name (git-file-name name version))
(sha256
(base32
"0kh1f49g24ppjpr16v1nc9lr7pvr5nzb82bpw8c6q8ll7pqalqaf"))))
"0fiw8lb7rswglixvn271la2q2hgwszrf2ckykhr6jjxdvmb9a7d0"))
(patches (search-patches "s7-flint-3.patch"))))
(build-system gnu-build-system)
(arguments
(list #:tests? #f ;no tests in bootstrap
@ -1533,7 +1535,7 @@ includes a compiler as well as an interpreter.")
(invoke #$(cc-for-target) "libarb_s7.c"
"-I." "-O2" "-g"
"-shared" "-o" "libarb_s7.so"
"-larb" "-lflint" "-lmpc" "-fPIC")
"-lflint" "-lmpc" "-fPIC")
(display "[BUILD] libnotcurses_s7.so\n")
(invoke #$(cc-for-target) "notcurses_s7.c"
"-I." "-O2" "-g"
@ -1572,7 +1574,7 @@ includes a compiler as well as an interpreter.")
(install-file "s7.c" share)
(install-file "s7.h" inc)
(install-file "s7.html" doc)))))))
(inputs (list arb flint mpc notcurses))
(inputs (list flint mpc notcurses))
(home-page "https://ccrma.stanford.edu/software/snd/snd/s7.html")
(synopsis "Scheme interpreter intended as an extension language")
(description

View File

@ -15,13 +15,15 @@
;;; Copyright © 2019 Brett Gilio <brettg@gnu.org>
;;; Copyright © 2020 Konrad Hinsen <konrad.hinsen@fastmail.net>
;;; Copyright © 2020 Edouard Klein <edk@beaver-labs.com>
;;; Copyright © 2020, 2021, 2022, 2023 Vinicius Monego <monego@posteo.net>
;;; Copyright © 2020, 2021, 2022, 2023, 2024 Vinicius Monego <monego@posteo.net>
;;; Copyright © 2020, 2021, 2022, 2023 Maxim Cournoyer <maxim.cournoyer@gmail.com>
;;; Copyright © 2022, 2023 Nicolas Graves <ngraves@ngraves.fr>
;;; Copyright © 2022 Kiran Shila <me@kiranshila.com>
;;; Copyright © 2023 zamfofex <zamfofex@twdb.moe>
;;; Copyright © 2023 Navid Afkhami <navid.afkhami@mdc-berlin.de>
;;; Copyright © 2023 Zheng Junjie <873216071@qq.com>
;;; Copyright © 2023 Troy Figiel <troy@troyfigiel.com>
;;; Copyright © 2024 Sharlatan Hellseher <sharlatanus@gmail.com>
;;;
;;; This file is part of GNU Guix.
;;;
@ -104,6 +106,7 @@
#:use-module (gnu packages python-science)
#:use-module (gnu packages python-web)
#:use-module (gnu packages python-xyz)
#:use-module (gnu packages rdf)
#:use-module (gnu packages regex)
#:use-module (gnu packages rpc)
#:use-module (gnu packages serialization)
@ -1613,7 +1616,7 @@ computing environments.")
(define-public python-scikit-learn
(package
(name "python-scikit-learn")
(version "1.2.2")
(version "1.3.2")
(source
(origin
(method git-fetch)
@ -1623,20 +1626,28 @@ computing environments.")
(file-name (git-file-name name version))
(sha256
(base32
"0x7gfzvcdadf8jnvpz8m373bi37bc6sndfbjh9lzmn3p39pwm2hl"))))
(build-system python-build-system)
"1hr024vcilbjwlwn32ppadri0ypnzjmkfxhkkw8gih0qjvcvjbs7"))))
(build-system pyproject-build-system)
(arguments
`(#:phases
(modify-phases %standard-phases
(list
#:test-flags
'(list "-m" "not network"
"-k" (string-append
;; This test tries to access the internet.
"not test_load_boston_alternative"
;; DID NOT RAISE <class 'ValueError'>
" and not test_singular_matrix"))
#:phases
'(modify-phases %standard-phases
(add-before 'build 'configure
(lambda _
(setenv "SKLEARN_BUILD_PARALLEL"
(number->string (parallel-job-count)))))
(add-after 'build 'build-ext
(lambda _ (invoke "python" "setup.py" "build_ext" "--inplace"
"-j" (number->string (parallel-job-count)))))
"-j" (number->string (parallel-job-count)))))
(replace 'check
(lambda* (#:key tests? #:allow-other-keys)
(lambda* (#:key tests? test-flags #:allow-other-keys)
(when tests?
;; Restrict OpenBLAS threads to prevent segfaults while testing!
(setenv "OPENBLAS_NUM_THREADS" "1")
@ -1647,14 +1658,11 @@ computing environments.")
;; Step out of the source directory to avoid interference;
;; we want to run the installed code with extensions etc.
(with-directory-excursion "/tmp"
(invoke "pytest" "-vv" "--pyargs" "sklearn"
"-m" "not network"
"-n" (number->string (parallel-job-count))
;; This test tries to access the internet.
"-k" "not test_load_boston_alternative"))))))))
(apply invoke "pytest" "--pyargs" "sklearn"
test-flags))))))))
(inputs (list openblas))
(native-inputs
(list python-cython
(list python-cython-0.29.35
python-pandas
python-pytest
python-pytest-xdist))
@ -1668,52 +1676,61 @@ data analysis.")
(license license:bsd-3)))
(define-public python-scikit-learn-extra
(package
(name "python-scikit-learn-extra")
(version "0.3.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/scikit-learn-contrib/scikit-learn-extra")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0yy6ka94ss88f3r7b6mpjf1l8lnv7aabhsg844pigfj8lfiv0wvl"))))
(build-system pyproject-build-system)
(arguments
(list #:phases
#~(modify-phases %standard-phases
(add-after 'build 'build-ext
(lambda _
(invoke "python" "setup.py" "build_ext"
"--inplace")))
(replace 'check
(lambda* (#:key tests? #:allow-other-keys)
(when tests?
;; Restrict OpenBLAS threads to prevent segfaults while testing!
(setenv "OPENBLAS_NUM_THREADS" "1")
;; This commit fixes an incompatibility with newer versions of scikit-learn
(let ((commit "0f95d8dda4c69f9de4fb002366041adcb1302f3b")
(revision "1"))
(package
(name "python-scikit-learn-extra")
(version (git-version "0.3.0" revision commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/scikit-learn-contrib/scikit-learn-extra")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32 "0a248sff1psfwzmngj465gzyisq20d83nzpwpq2cspxhih51m6j9"))))
(build-system pyproject-build-system)
(arguments
(list
#:test-flags
;; ignore tests that require network
'(list "--pyargs" "sklearn_extra"
"-k" "not test_build")
#:phases
#~(modify-phases %standard-phases
(add-after 'build 'build-ext
(lambda _
(invoke "python" "setup.py" "build_ext"
"--inplace")))
(replace 'check
(lambda* (#:key tests? test-flags #:allow-other-keys)
(when tests?
;; Restrict OpenBLAS threads to prevent segfaults while testing!
(setenv "OPENBLAS_NUM_THREADS" "1")
;; Some tests require write access to $HOME.
(setenv "HOME" "/tmp")
;; Some tests require write access to $HOME.
(setenv "HOME" "/tmp")
;; Step out of the source directory to avoid interference;
;; we want to run the installed code with extensions etc.
(with-directory-excursion "/tmp"
(invoke "pytest" "-vv" "--pyargs"
"sklearn_extra"
;; ignore tests that require network
"-k" "not test_build"))))))))
(propagated-inputs (list python-numpy python-scikit-learn python-scipy))
(native-inputs (list python-pytest python-pytest-cov python-cython))
(home-page "https://github.com/scikit-learn-contrib/scikit-learn-extra")
(synopsis "Set of tools for scikit-learn")
(description
"This package provides a Python module for machine learning that extends
;; Step out of the source directory to avoid interference;
;; we want to run the installed code with extensions etc.
(with-directory-excursion "/tmp"
(apply invoke "pytest" "-vv" test-flags))))))))
(propagated-inputs
(list python-numpy
python-scikit-learn
python-scipy
python-packaging))
(native-inputs (list python-pytest python-pytest-cov python-cython))
(home-page "https://github.com/scikit-learn-contrib/scikit-learn-extra")
(synopsis "Set of tools for scikit-learn")
(description
"This package provides a Python module for machine learning that extends
scikit-learn. It includes algorithms that are useful but do not satisfy the
scikit-learn inclusion criteria, for instance due to their novelty or lower
citation number.")
(license license:bsd-3)))
(license license:bsd-3))))
(define-public python-thinc
(package
@ -1776,73 +1793,6 @@ number of threads used in the threadpool-backed of common native libraries used
for scientific computing and data science (e.g. BLAS and OpenMP).")
(license license:bsd-3)))
(define-public python-tslearn
(package
(name "python-tslearn")
(version "0.6.2")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/tslearn-team/tslearn")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
"0l9l21jy78mhajdfwyx8rskw08597vg55ff22bjkv6xrjjr9g4ac"))))
(build-system pyproject-build-system)
(arguments
(list
#:test-flags
'(list "-k"
(string-append
;; This one fails because of a difference in accuracy.
"not test_all_estimators[LearningShapelets-LearningShapelets]"
;; XXX: It's embarrassing to disable these two, but the truth is
;; that there's only so much we can do to force this package to
;; work with Tensorflow 1.9. It's still worth having this
;; package, because it can be used without the Tensorflow
;; backend.
;; TypeError: cannot pickle '_thread.RLock' object
" and not test_shapelets"
;; TypeError: Expected binary or unicode string, got 2
" and not test_serialize_shapelets"))
#:phases
'(modify-phases %standard-phases
(add-after 'unpack 'compatibility
(lambda _
(substitute* "tslearn/tests/sklearn_patches.py"
(("_pairwise_estimator_convert_X")
"_enforce_estimator_tags_X")
(("pairwise_estimator_convert_X\\(([^,]+), ([^,\\)]+)" _ a b)
(string-append "pairwise_estimator_convert_X(" b ", " a)))
(substitute* "tslearn/tests/test_shapelets.py"
(("tf.optimizers.Adam")
"tf.keras.optimizers.Adam"))
(substitute* "tslearn/shapelets/shapelets.py"
(("tf.keras.utils.set_random_seed")
"tf.set_random_seed")
(("def __call__\\(self, shape, dtype=None\\):")
"def __call__(self, shape, dtype=None, partition_info=None):")
(("tf.math.is_finite")
"tf.is_finite")))))))
(propagated-inputs (list python-cesium
python-h5py
python-joblib
python-numba
python-numpy
python-pandas
python-scipy
python-scikit-learn
tensorflow
python-wheel))
(native-inputs (list python-pytest))
(home-page "https://github.com/tslearn-team/tslearn")
(synopsis "Machine learning toolkit for time series data")
(description "This is a Python library for time series data mining.
It provides tools for time series classification, clustering
and forecasting.")
(license license:bsd-2)))
(define-public python-imbalanced-learn
(package
(name "python-imbalanced-learn")
@ -1886,30 +1836,59 @@ techniques commonly used in datasets showing strong between-class imbalance.
It is compatible with @code{scikit-learn}.")
(license license:expat)))
(define-public python-hdbscan
(package
(name "python-hdbscan")
(version "0.8.33")
(source
(origin
(method url-fetch)
(uri (pypi-uri "hdbscan" version))
(sha256
(base32 "03gr70ys1zrnp15pxzhichvrdj5bj88p6p5k0wj8vx251rgvryjp"))))
(build-system pyproject-build-system)
(arguments
(list
#:phases
#~(modify-phases %standard-phases
(add-before 'check 'build-extensions
(lambda _
(invoke "python" "setup.py" "build_ext" "--inplace"))))))
(propagated-inputs (list python-joblib
python-numpy
python-scikit-learn
python-scipy))
(native-inputs (list python-cython
python-nose
python-pytest
python-pandas
python-networkx))
(home-page "https://github.com/scikit-learn-contrib/hdbscan")
(synopsis "High performance implementation of HDBSCAN clustering")
(description "HDBSCAN - Hierarchical Density-Based Spatial Clustering of
Applications with Noise. Performs DBSCAN over varying epsilon values and
integrates the result to find a clustering that gives the best stability over
epsilon. This allows HDBSCAN to find clusters of varying densities (unlike
DBSCAN), and be more robust to parameter selection. HDBSCAN is ideal for
exploratory data analysis; it's a fast and robust algorithm that you can trust
to return meaningful clusters (if there are any).")
(license license:bsd-3)))
(define-public python-pynndescent
(package
(name "python-pynndescent")
(version "0.5.10")
(version "0.5.11")
(source
(origin
(method url-fetch)
(uri (pypi-uri "pynndescent" version))
(sha256
(base32 "1bc8aa6jfw28y6sb0nvfdrfgh66a42bqb4znvpimzx9yq21wcpax"))))
(build-system python-build-system)
(arguments
`(#:phases
(modify-phases %standard-phases
(replace 'check
(lambda* (#:key inputs outputs tests? #:allow-other-keys)
(when tests?
(invoke "python" "-m" "pytest" "--pyargs" "pynndescent"
;; wminkowski no longer exists in scipy 1.8.0 (see:
;; https://github.com/lmcinnes/pynndescent/issues/177)
"-k" "not test_weighted_minkowski")))))))
(base32 "0l5dpdsk5vg7rpay81bncp04119hnl5z7zxjv63jrnm9spcwwi3g"))))
(build-system pyproject-build-system)
(native-inputs (list python-pytest))
(propagated-inputs
(list python-joblib
(list python-importlib-metadata
python-joblib
python-llvmlite
python-numba
python-scikit-learn
@ -1924,7 +1903,7 @@ for k-neighbor-graph construction and approximate nearest neighbor search.")
(define-public python-opentsne
(package
(name "python-opentsne")
(version "1.0.0")
(version "1.0.1")
(source
(origin
(method git-fetch) ; no tests in PyPI release
@ -1933,7 +1912,7 @@ for k-neighbor-graph construction and approximate nearest neighbor search.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "05qzpq1zjs42bl0z8girfwcj3nfxs1a99c5525vp3589sglk351g"))))
(base32 "0xjp0l4rxk1s685skbx50m3m9hwlj78w74qwgswnkmkk6f7c8dsi"))))
(build-system python-build-system)
(arguments
`(#:phases
@ -2002,16 +1981,14 @@ standard feature selection algorithms.")
(build-system pyproject-build-system)
(arguments
(list
#:phases
'(modify-phases %standard-phases
(add-after 'unpack 'disable-bad-tests
(lambda _
;; XXX This requires pytest lazy_fixture
(delete-file "tests/test_multilabel_classification.py")
;; Requires tensorflow
(delete-file "tests/test_frameworks.py")
#:test-flags
;; This test fails because the newer version of scikit learn returns one
;; more classification result than expected. This should be harmless.
'(list "-k" "not test_aux_inputs"
;; Requires Tensorflow
"--ignore=tests/test_frameworks.py"
;; Tries to download datasets from the internet at runtime.
(delete-file "tests/test_dataset.py"))))))
"--ignore=tests/test_dataset.py")))
(propagated-inputs
(list python-numpy
python-pandas
@ -2020,6 +1997,7 @@ standard feature selection algorithms.")
python-tqdm))
(native-inputs
(list python-pytest
python-pytest-lazy-fixture
python-pytorch
python-torchvision))
(home-page "https://cleanlab.ai")
@ -2277,13 +2255,13 @@ discrete, and conditional dimensions.")
(define-public python-deepxde
(package
(name "python-deepxde")
(version "1.10.0")
(version "1.10.1")
(source (origin
(method url-fetch)
(uri (pypi-uri "DeepXDE" version))
(sha256
(base32
"0fdxrjrm7l19yx6n8vaklxlhwzx0bw9n08vp8idikzdifybz5gij"))))
"1lgn4sa9bnmhsccddb9vjz7nsvdnccxqkvv7xssxmfb413dpg1mz"))))
(build-system pyproject-build-system)
(arguments
(list #:tests? #f ; there are no tests
@ -3481,57 +3459,79 @@ in a fast and accurate way.")
(inherit xgboost)
(name "python-xgboost")
(source (package-source xgboost))
(build-system python-build-system)
(build-system pyproject-build-system)
(arguments
`(#:phases
(modify-phases %standard-phases
(add-after 'unpack 'preparations
(lambda _
;; Move python-package content to parent directory to silence
;; some warnings about files not being found if we chdir.
(rename-file "python-package/xgboost" "xgboost")
(rename-file "python-package/README.rst" "README.rst")
(rename-file "python-package/setup.cfg" "setup.cfg")
(rename-file "python-package/setup.py" "setup.py")
;; Skip rebuilding libxgboost.so.
(substitute* "setup.py"
(("ext_modules=\\[CMakeExtension\\('libxgboost'\\)\\],") "")
(("'install_lib': InstallLib,") ""))))
(add-after 'install 'install-version-and-libxgboost
(lambda* (#:key inputs outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(pylib (string-append out "/lib/python"
,(version-major+minor
(package-version python))
"/site-packages"))
(xgbdir (string-append pylib "/xgboost"))
(version-file (string-append xgbdir "/VERSION"))
(libxgboost (string-append (assoc-ref inputs "xgboost")
"/lib/libxgboost.so")))
(with-output-to-file version-file
(lambda ()
(display ,(package-version xgboost))))
(mkdir-p (string-append xgbdir "/lib"))
(symlink libxgboost (string-append xgbdir "/lib"
"/libxgboost.so")))))
(replace 'check
;; Python-specific tests are located in tests/python.
(lambda* (#:key inputs outputs tests? #:allow-other-keys)
(when tests?
(add-installed-pythonpath inputs outputs)
(invoke "pytest" "tests/python"
;; FIXME: CLI tests fail with PermissionError.
"--ignore" "tests/python/test_cli.py" "-k"
(string-append
"not test_cli_regression_demo"
;; The tests below open a network connection.
" and not test_model_compatibility"
" and not test_get_group"
" and not test_cv_no_shuffle"
" and not test_cv"
" and not test_training"
;; "'['./runexp.sh']' returned non-zero exit status 1"
" and not test_cli_binary_classification"))))))))
(list
#:test-flags
'(list "tests/python"
;; FIXME: CLI tests fail with PermissionError.
"--ignore" "tests/python/test_cli.py"
"-k"
(string-append
"not test_cli_regression_demo"
;; These tests use the Boston dataset that has been
;; removed from scipy.
" and not test_sklearn_demo"
" and not test_sklearn_parallel_demo"
" and not test_predict_shape"
" and not test_num_parallel_tree"
" and not test_boston_housing_regression"
" and not test_boston_housing_rf_regression"
" and not test_parameter_tuning"
" and not test_regression_with_custom_objective"
" and not test_RFECV"
;; Pandas incompatibility? Says:
;; '_CalibratedClassifier' object has no attribute
;; 'base_estimator'
" and not test_pandas_input"
;; Accuracy problems?
" and not test_exact"
" and not test_approx"
" and not test_hist"
;; The tests below open a network connection.
" and not test_model_compatibility"
" and not test_get_group"
" and not test_cv_no_shuffle"
" and not test_cv"
" and not test_training"
;; "'['./runexp.sh']' returned non-zero exit status 1"
" and not test_cli_binary_classification"))
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'preparations
(lambda _
;; Move python-package content to parent directory to silence
;; some warnings about files not being found if we chdir.
(rename-file "python-package/xgboost" "xgboost")
(rename-file "python-package/README.rst" "README.rst")
(rename-file "python-package/setup.cfg" "setup.cfg")
(rename-file "python-package/setup.py" "setup.py")
;; Skip rebuilding libxgboost.so.
(substitute* "setup.py"
(("ext_modules=\\[CMakeExtension\\('libxgboost'\\)\\],") "")
(("'install_lib': InstallLib,") ""))
;; Remove bad dataset. This has been removed in scipy.
(substitute* "tests/python/testing.py"
(("TestDataset\\('boston', get_boston, 'reg:squarederror', 'rmse'\\),")
"")
(("datasets.load_boston")
"datasets.load_digits"))))
(add-after 'install 'install-version-and-libxgboost
(lambda* (#:key inputs #:allow-other-keys)
(let* ((pylib (string-append #$output "/lib/python"
#$(version-major+minor
(package-version python))
"/site-packages"))
(xgbdir (string-append pylib "/xgboost"))
(version-file (string-append xgbdir "/VERSION"))
(libxgboost (string-append (assoc-ref inputs "xgboost")
"/lib/libxgboost.so")))
(with-output-to-file version-file
(lambda ()
(display #$(package-version xgboost))))
(mkdir-p (string-append xgbdir "/lib"))
(symlink libxgboost (string-append xgbdir "/lib"
"/libxgboost.so"))))))))
(native-inputs
(list python-pandas python-pytest python-scikit-learn))
(inputs
@ -3861,46 +3861,26 @@ methodxs at scale on CPU or GPU.")
(define-public python-umap-learn
(package
(name "python-umap-learn")
(version "0.5.3")
(version "0.5.5")
(source
(origin
(method git-fetch) ;no tests in pypi release
(uri (git-reference
(url "https://github.com/lmcinnes/umap")
(commit version)))
(commit (string-append "release-" version))))
(file-name (git-file-name name version))
(sha256
(base32
"1315jkb0h1b579y9m59632f0nnpksilm01nxx46in0rq8zna8vsb"))))
(build-system python-build-system)
"0ijyiaqycynwj1383cxp519c765gjbg1f6fjwbvqj1gims710w3d"))))
(build-system pyproject-build-system)
(arguments
(list
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'numpy-compatibility
(lambda _
(substitute* "umap/tests/test_umap_metrics.py"
;; See commit a714b59bd9e2ca2e63312bc3491b2b037a42f2f2
(("sparse_binary_data.todense\\(\\),")
"np.asarray(sparse_binary_data.todense()),")
;; See commit c7d05683325589ad432a55e109cacb9d631cfaa9
(("sparse_spatial_data.todense\\(\\),")
"np.asarray(sparse_spatial_data.todense()),"))
;; See commit 949abd082524fce8c45dfb147bcd8e8ef49eade3
(substitute* "umap/tests/test_umap_ops.py"
(("np.random,") "None,"))))
;; Numba needs a writable dir to cache functions.
(add-before 'check 'set-numba-cache-dir
(lambda _
(setenv "NUMBA_CACHE_DIR" "/tmp")))
(replace 'check
(lambda* (#:key tests? #:allow-other-keys)
(when tests?
(setenv "HOME" "/tmp")
(invoke "pytest" "-vv" "umap"
;; This test can fail because trust may only be
;; 0.9679405204460967 >= 0.97
"-k" "not test_densmap_trustworthiness_on_iris_supervised")))))))
(setenv "NUMBA_CACHE_DIR" "/tmp"))))))
(native-inputs (list python-pytest))
(propagated-inputs
(list python-numba
@ -4244,6 +4224,86 @@ Note: currently this package does not provide GPU support.")
(replace "onnx" onnx-for-torch2)
(replace "onnx-optimizer" onnx-optimizer-for-torch2)))))
(define-public python-pytorch-geometric
(package
(name "python-pytorch-geometric")
(version "2.4.0")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/pyg-team/pytorch_geometric/")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32
"0hrs579asjsph16hyb4ablkbgfwd5j9y5s6ny7ahn3qrbkl2ji1g"))))
(build-system pyproject-build-system)
(arguments
(list
#:test-flags
;; Hangs with AttributeError: 'NoneType' object has no attribute 'rpc_async'
'(list "--ignore=test/distributed/test_rpc.py"
;; A message passing jinja template is missing
"--ignore=test/nn/conv/test_message_passing.py"
"--ignore=test/nn/test_sequential.py"
"--ignore=test/nn/models/test_basic_gnn.py"
;; These all fail with a size mismatch error such as
;; RuntimeError: shape '[-1, 2, 1, 1]' is invalid for input of size 3
"--ignore=test/explain/algorithm/test_captum_explainer.py"
"-k" (string-append
;; Permissions error
"not test_packaging"
;; This can fail due to accuracy problems
" and not test_gdc"
;; These refuse to be run on CPU and really want a GPU
" and not test_add_random_walk_pe"
" and not test_asap"
" and not test_two_hop"))
#:phases
'(modify-phases %standard-phases
(add-after 'unpack 'delete-top-level-directories
(lambda _
;; The presence of these directories confuses the pyproject build
;; system.
(for-each delete-file-recursively
'("conda" "docker" "graphgym")))))))
(propagated-inputs
(list onnx
python-captum
python-graphviz
python-h5py
python-jinja2
python-matplotlib
python-networkx
python-numba
python-numpy
python-opt-einsum
python-pandas
python-protobuf
python-psutil
python-pyparsing
python-pytorch-lightning
python-rdflib
python-requests
python-scikit-image
python-scikit-learn
python-scipy
python-statsmodels
python-sympy
python-tabulate
python-torchmetrics
python-tqdm))
(native-inputs
(list python-flit-core
python-pytest
python-pytest-cov))
(home-page "https://pyg.org")
(synopsis "Graph Neural Network library for PyTorch")
(description
"PyG is a library built upon PyTorch to easily write and train Graph
Neural Networks for a wide range of applications related to structured data.")
(license license:expat)))
(define-public python-lightning-cloud
(package
(name "python-lightning-cloud")
@ -4294,7 +4354,7 @@ Actions for the Lightning suite of libraries.")
(define-public python-captum
(package
(name "python-captum")
(version "0.6.0")
(version "0.7.0")
(source (origin
(method git-fetch)
(uri (git-reference
@ -4303,7 +4363,7 @@ Actions for the Lightning suite of libraries.")
(file-name (git-file-name name version))
(sha256
(base32
"1h4n91ivhjxm6wj0vgqpfss2dmq4sjcp0appd08cd5naisabjyb5"))))
"0bgfwnlsi50hbmknn7qljiy93fi6ggwz3k7yk9kj7s37mhzaylym"))))
(build-system pyproject-build-system)
(arguments
(list
@ -4313,7 +4373,8 @@ Actions for the Lightning suite of libraries.")
;; accuracy problems.
"not test_softmax_classification_batch_multi_target\
and not test_softmax_classification_batch_zero_baseline")))
(propagated-inputs (list python-matplotlib python-numpy python-pytorch))
(propagated-inputs
(list python-matplotlib python-numpy python-pytorch python-tqdm))
(native-inputs (list jupyter
python-annoy
python-black
@ -4827,24 +4888,23 @@ and Numpy.")
(file-name (git-file-name name version))
(sha256
(base32 "0n1vsih99pvswcaygdxkc6kq6r48ny130z6ca8pp3281396r2ykw"))))
(build-system python-build-system)
(build-system pyproject-build-system)
(arguments
`(#:phases
(modify-phases %standard-phases
(replace 'check
(lambda* (#:key tests? #:allow-other-keys)
(list
#:test-flags
'(list "-vv" "--stage=unit"
;; This tests features that are only implemented when non-free
;; software is available (Intel MKL or CUDA).
(for-each delete-file
(list "tests/distributions/test_spanning_tree.py"
"tests/infer/mcmc/test_mcmc_api.py"))
"--ignore=tests/distributions/test_spanning_tree.py"
"--ignore=tests/infer/mcmc/test_mcmc_api.py"
;; This test fails sometimes.
"--ignore=tests/optim/test_optim.py"
;; Four test_gamma_elbo tests fail with bad values for unknown
;; reasons.
(delete-file "tests/distributions/test_rejector.py")
;; This test fails sometimes.
(delete-file "tests/optim/test_optim.py")
(invoke "pytest" "-vv" "--stage=unit"))))))
"--ignore=tests/distributions/test_rejector.py"
;; This looks like a test system failure. All of these fail
;; because x is an array of functions, not an array of numbers.
"-k" "not test_sample")))
(propagated-inputs
(list python-numpy
python-opt-einsum

View File

@ -32,7 +32,7 @@
;;; Copyright © 2020 Vincent Legoll <vincent.legoll@gmail.com>
;;; Copyright © 2020 Justus Winter <justus@sequoia-pgp.org>
;;; Copyright © 2020 Eric Brown <ecbrown@ericcbrown.com>
;;; Copyright © 2020, 2021, 2022 Maxim Cournoyer <maxim.cournoyer@gmail.com>
;;; Copyright © 2020, 2021, 2022, 2024 Maxim Cournoyer <maxim.cournoyer@gmail.com>
;;; Copyright © 2020 Michael Rohleder <mike@rohleder.de>
;;; Copyright © 2020, 2021 Alexey Abramov <levenson@mmer.org>
;;; Copyright © 2020 Tim Gesthuizen <tim.gesthuizen@yahoo.de>
@ -109,6 +109,7 @@
#:use-module (gnu packages gnupg)
#:use-module (gnu packages golang)
#:use-module (gnu packages golang-check)
#:use-module (gnu packages golang-crypto)
#:use-module (gnu packages golang-web)
#:use-module (gnu packages groff)
#:use-module (gnu packages gsasl)
@ -1373,17 +1374,14 @@ invoking @command{notifymuch} from the post-new hook.")
(define-public notmuch
(package
(name "notmuch")
(version "0.37")
(version "0.38.2")
(source
(origin
(method url-fetch)
(uri (string-append "https://notmuchmail.org/releases/notmuch-"
version ".tar.xz"))
(sha256
(base32 "1xl64xh0ijfkx265lcj9cqv1wkzha8gsn9jn4fw4xgvqigr6sxhf"))
(patches
;; Output for some tests varies slightly in Emacs 29.
(search-patches "notmuch-emacs-test-output.patch"))))
(base32 "0zll3s39s065pl9228xpklkjklllkyb3bf1szh0fw0rbfkjfp0jj"))))
(build-system gnu-build-system)
(arguments
(list
@ -1440,6 +1438,7 @@ ing, and tagging large collections of email messages.")
(arguments
(list
#:exclude #~(cons* "make-deps.el" "rstdoc.el" %default-exclude)
#:include #~(cons* "notmuch-logo.svg" %default-include)
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'chdir
@ -4105,80 +4104,78 @@ It is a replacement for the @command{urlview} program.")
(license license:gpl2+)))
(define-public mumi
(let ((commit "2453a5a6686c035854e4d523b8faa8c47405bd76")
(revision "3"))
(package
(name "mumi")
(version (git-version "0.0.5" revision commit))
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://git.savannah.gnu.org/git/guix/mumi.git/")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32
"0dq87qn77c6qganhck048qxq5ghj3fh2v604f87hwv530lxifabr"))))
(build-system gnu-build-system)
(arguments
(list
#:modules '((guix build gnu-build-system)
((guix build guile-build-system)
#:select (target-guile-effective-version))
(guix build utils))
#:imported-modules `((guix build guile-build-system)
,@%gnu-build-system-modules)
(package
(name "mumi")
(version "0.0.8")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://git.savannah.gnu.org/git/guix/mumi.git/")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32
"1z556pxsz0zx95gd5b4hwkmwcvf3jyz7njkb3zwbhrwnpgygnbyl"))))
(build-system gnu-build-system)
(arguments
(list
#:modules '((guix build gnu-build-system)
((guix build guile-build-system)
#:select (target-guile-effective-version))
(guix build utils))
#:imported-modules `((guix build guile-build-system)
,@%gnu-build-system-modules)
#:configure-flags '(list "--localstatedir=/var")
#:configure-flags '(list "--localstatedir=/var")
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'install-picocss
(lambda* (#:key inputs #:allow-other-keys)
(let ((pico (dirname (search-input-file inputs "/scss/pico.scss"))))
(mkdir-p "assets/pico/scss")
(copy-recursively pico "assets/pico/scss"))))
(add-after 'install 'wrap-executable
(lambda _
(let* ((bin (string-append #$output "/bin"))
(version (target-guile-effective-version))
(scm (string-append #$output "/share/guile/site/" version))
(go (string-append #$output "/lib/guile/" version
"/site-ccache")))
(wrap-program (string-append bin "/mumi")
`("GUILE_LOAD_PATH" ":" prefix
(,scm ,(getenv "GUILE_LOAD_PATH")))
`("GUILE_LOAD_COMPILED_PATH" ":" prefix
(,go ,(getenv "GUILE_LOAD_COMPILED_PATH"))))))))))
(inputs
(list bash-minimal
guile-email
guile-fibers
guile-gcrypt
guile-gnutls
guile-json-4
guile-kolam
guile-redis
guile-syntax-highlight
guile-webutils
guile-xapian
guile-3.0
mailutils))
(native-inputs
(list autoconf automake pkg-config sassc
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/picocss/pico.git")
(commit "3052db4bd3439e236479dc0f98069f7d3b559486")))
(file-name (git-file-name "pico" "1.5.6"))
(sha256
(base32
"1gs1li48hqizx7lc4n2fdxn9i2v4vafkqpza7svvfpcamfz29jpi")))))
(home-page "https://git.savannah.gnu.org/cgit/guix/mumi.git/")
(synopsis "Debbugs web interface")
(description "Mumi is a Debbugs web interface.")
(license license:agpl3+))))
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'install-picocss
(lambda* (#:key inputs #:allow-other-keys)
(let ((pico (dirname (search-input-file inputs "/scss/pico.scss"))))
(mkdir-p "assets/pico/scss")
(copy-recursively pico "assets/pico/scss"))))
(add-after 'install 'wrap-executable
(lambda _
(let* ((bin (string-append #$output "/bin"))
(version (target-guile-effective-version))
(scm (string-append #$output "/share/guile/site/" version))
(go (string-append #$output "/lib/guile/" version
"/site-ccache")))
(wrap-program (string-append bin "/mumi")
`("GUILE_LOAD_PATH" ":" prefix
(,scm ,(getenv "GUILE_LOAD_PATH")))
`("GUILE_LOAD_COMPILED_PATH" ":" prefix
(,go ,(getenv "GUILE_LOAD_COMPILED_PATH"))))))))))
(inputs
(list bash-minimal
guile-email
guile-fibers
guile-gcrypt
guile-gnutls
guile-json-4
guile-kolam
guile-redis
guile-syntax-highlight
guile-webutils
guile-xapian
guile-3.0
mailutils))
(native-inputs
(list autoconf automake pkg-config sassc
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/picocss/pico.git")
(commit "3052db4bd3439e236479dc0f98069f7d3b559486")))
(file-name (git-file-name "pico" "1.5.6"))
(sha256
(base32
"1gs1li48hqizx7lc4n2fdxn9i2v4vafkqpza7svvfpcamfz29jpi")))))
(home-page "https://git.savannah.gnu.org/cgit/guix/mumi.git/")
(synopsis "Debbugs web interface")
(description "Mumi is a Debbugs web interface.")
(license license:agpl3+)))
(define-public ytnef
(package

View File

@ -5,7 +5,7 @@
;;; Copyright © 2014-2022 Eric Bavier <bavier@posteo.net>
;;; Copyright © 2014 Federico Beffa <beffa@fbengineering.ch>
;;; Copyright © 2014 Mathieu Lirzin <mathieu.lirzin@openmailbox.org>
;;; Copyright © 20152023 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 20152024 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2015 Sou Bunnbu <iyzsong@gmail.com>
;;; Copyright © 2015, 2018 Mark H Weaver <mhw@netris.org>
;;; Copyright © 2015-2023 Efraim Flashner <efraim@flashner.co.il>
@ -3637,14 +3637,16 @@ bindings to almost all functions of PETSc.")
(define-public python-kiwisolver
(package
(name "python-kiwisolver")
(version "1.0.1")
(version "1.4.5")
(source (origin
(method url-fetch)
(uri (pypi-uri "kiwisolver" version))
(sha256
(base32
"0y22ci86znwwwfhbmvbgdfnbi6lv5gv2xkdlxvjw7lml43ayafyf"))))
(build-system python-build-system)
"1v6nc0z9dg4am0bibji9pijci9f15z68mwrlv91a28pvawx5czp5"))))
(build-system pyproject-build-system)
(propagated-inputs (list python-typing-extensions))
(native-inputs (list python-cppy python-pytest python-setuptools-scm))
(home-page "https://github.com/nucleic/kiwi")
(synopsis "Fast implementation of the Cassowary constraint solver")
(description

View File

@ -1788,7 +1788,7 @@ music theorist Paul Nauert's quantization grids or Q-Grids, for short.")
python-pytest-cov
python-pytest-helpers-namespace))
(propagated-inputs
(list abjad jupyter))
(list abjad jupyter python-sphinx-autodoc-typehints))
(home-page "https://abjad.github.io")
(synopsis "Abjad IPython Extension")
(description

View File

@ -61,6 +61,7 @@
;;; Copyright © 2023 Yovan Naumovski <yovan@gorski.stream>
;;; Copyright © 2023 Zheng Junjie <873216071@qq.com>
;;; Copyright © 2023 Artyom V. Poptsov <poptsov.artyom@gmail.com>
;;; Copyright © 2024 Tomas Volf <~@wolfsden.cz>
;;;
;;; This file is part of GNU Guix.
;;;
@ -2623,6 +2624,45 @@ library remains flexible, portable, and easily embeddable.")
(home-page "http://enet.bespin.org")
(license license:expat)))
(define-public enet-moonlight
(let ((commit "4cde9cc3dcc5c30775a80da1de87f39f98672a31")
(revision "1"))
(package
(inherit enet)
(name "enet")
(version (git-version "1.3.17" revision commit))
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/cgutman/enet")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32
"07sr32jy989ja23fwg8bvrq2slgm7bhfw6v3xq7yczbw86c1dndv"))))
(build-system cmake-build-system)
(arguments
(list #:tests? #f ;no test suite
#:phases #~(modify-phases %standard-phases
(add-after 'unpack 'build-share-lib
(lambda* _
;; -DBUILD_SHARED_LIBS=ON not working
(substitute* "CMakeLists.txt"
(("STATIC")
"SHARED"))))
(replace 'install
(lambda* (#:key outputs source #:allow-other-keys)
(let* ((include (string-append #$output
"/include"))
(lib (string-append #$output "/lib")))
(mkdir-p include)
(mkdir-p lib)
(copy-recursively (string-append source
"/include")
include)
(install-file "libenet.so" lib)))))))
(native-inputs (list pkg-config)))))
(define-public sslh
(package
(name "sslh")
@ -3946,8 +3986,8 @@ A very simple IM client working over the DHT.
(define-public dhtnet
;; There is no tag nor release; use the latest available commit.
(let ((revision "0")
(commit "8b6e99fd34f150fde5f21f3a57e0e9f28174c70c"))
(let ((revision "1")
(commit "41848a2c770d7eb0940d731014b81643f85e0d07"))
(package
(name "dhtnet")
;; The base version is taken from the CMakeLists.txt file.
@ -3960,7 +4000,7 @@ A very simple IM client working over the DHT.
(file-name (git-file-name name version))
(sha256
(base32
"1yhygsimcl9j6hbww1b77am1kgbcriczslcrfb838nbfh18n1780"))))
"18v2pjrxfrd26p2z27s90marx7b593nz1xwi47lnp2ja7lm1pj4m"))))
(outputs (list "out" "debug"))
(build-system cmake-build-system)
(arguments
@ -3991,7 +4031,8 @@ A very simple IM client working over the DHT.
opendht
libupnp
pjproject-jami
readline))
readline
yaml-cpp))
(home-page "https://github.com/savoirfairelinux/dhtnet/")
(synopsis "OpenDHT network library for C++")
(description "The @code{dhtnet} is a C++ library providing abstractions
@ -4510,7 +4551,7 @@ network.")
(define-public ngtcp2
(package
(name "ngtcp2")
(version "1.0.1")
(version "1.1.0")
(source
(origin
(method url-fetch)
@ -4518,9 +4559,15 @@ network.")
"releases/download/v" version "/"
"ngtcp2-" version ".tar.xz"))
(sha256
(base32 "0l84hnj9n4bfxjizgmqsqbz71jx7m00a7l1z43fg5ls3apx9ij11"))))
(base32 "1pppl6s25hz91w6321g1q7dqvfy4vccz9mmc5r8sfdvdc95fngl0"))))
(build-system gnu-build-system)
(native-inputs (list cunit))
(arguments
(list
#:configure-flags
;; openssl package does not support QUIC interface, so just gnutls
#~(list "--with-gnutls")))
(native-inputs (list cunit pkg-config))
(inputs (list gnutls))
(home-page "https://nghttp2.org/ngtcp2/")
(synopsis "QUIC protocol implementation")
(description
@ -4531,7 +4578,7 @@ QUIC protocol.")
(define-public yggdrasil
(package
(name "yggdrasil")
(version "0.5.2")
(version "0.5.5")
(source
(origin
(method git-fetch)
@ -4542,7 +4589,7 @@ QUIC protocol.")
(recursive? #t)))
(file-name (git-file-name name version))
(sha256
(base32 "0ahgb94s30sq1wwyc8h53mjj3j43ifr0aanj8262rsm6rqk04kzq"))
(base32 "0yzgs4b0q945ygrqlc5hnmh78awl5p35azx83fz61bzfg20d52b4"))
(patches (search-patches "yggdrasil-extra-config.patch"))))
(build-system go-build-system)
(arguments

View File

@ -4,6 +4,7 @@
;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2020 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2022 Maxim Cournoyer <maxim.cournoyer@gmail.com>
;;; Copyright © 2024 Ricardo Wurmus <rekado@elephly.net>
;;;
;;; This file is part of GNU Guix.
;;;
@ -36,6 +37,7 @@
#:use-module (gnu packages gstreamer)
#:use-module (gnu packages image)
#:use-module (gnu packages python)
#:use-module (gnu packages python-build)
#:use-module (gnu packages python-crypto)
#:use-module (gnu packages python-web)
#:use-module (gnu packages python-xyz)
@ -150,7 +152,8 @@ in the @url{https://schema.org/Recipe} format.")
python-pygobject
python-requests
python-scrape-schema-recipe
python-sqlalchemy))
python-sqlalchemy
python-toml))
(home-page "https://thinkle.github.io/gourmet/")
(synopsis "Recipe organizer")
(description

View File

@ -1713,7 +1713,7 @@ full_split, cut, rcut, etc..")
;; where it says `mit'.
(license license:expat)))
(define dune-bootstrap
(define-public dune-bootstrap
(package
(name "dune")
(version "3.6.1")
@ -1745,12 +1745,13 @@ full_split, cut, rcut, etc..")
(description "Dune is a build system that was designed to simplify the
release of Jane Street packages. It reads metadata from @file{dune} files
following a very simple s-expression syntax.")
(properties '((hidden? . #t)))
(license license:expat)))
(define ocaml4.09-dune-bootstrap
(define-public ocaml4.09-dune-bootstrap
(package-with-ocaml4.09 dune-bootstrap))
(define ocaml5.0-dune-bootstrap
(define-public ocaml5.0-dune-bootstrap
(package-with-ocaml5.0 dune-bootstrap))
(define-public dune-configurator

View File

@ -971,8 +971,8 @@ transactions from C or Python.")
(license license:gpl2+)))
(define-public bffe
(let ((commit "722c37ec8a23835edfc85cba3d89868592a2ed2d")
(revision "2"))
(let ((commit "1c12da4e6f3c7d3ab557781769fb848354362748")
(revision "3"))
(package
(name "bffe")
(version (git-version "0" revision commit))
@ -983,7 +983,7 @@ transactions from C or Python.")
(commit commit)))
(sha256
(base32
"05i4awyirp440pk4vwa0sf46gi801zv839qm1i2z7jipm1xfwaxx"))
"0qa63mssv85g38m3bcblgp3yscywgz0hrg4lc84dxx99b07pmfc3"))
(file-name (string-append name "-" version "-checkout"))))
(build-system gnu-build-system)
(native-inputs
@ -1510,8 +1510,8 @@ environments.")
"0k9zkdyyzir3fvlbcfcqy17k28b51i20rpbjwlx2i1mwd2pw9cxc")))))))
(define-public guix-build-coordinator
(let ((commit "c4c4f5ae043562276b11c2bd1174d3e24bedcd6e")
(revision "94"))
(let ((commit "d9fa7947c25d0624c568f744ad2a2683a43e5644")
(revision "96"))
(package
(name "guix-build-coordinator")
(version (git-version "0" revision commit))
@ -1522,7 +1522,7 @@ environments.")
(commit commit)))
(sha256
(base32
"1212iskqlxgpyib1p7p1204a0kxmpxqyjv6q0pkypx6jg7f4lmjx"))
"1l4d0fvk2pg4n6d532xb50iqa7py6v68298l3xd5g50dxl1f4jwp"))
(file-name (string-append name "-" version "-checkout"))))
(build-system gnu-build-system)
(arguments

View File

@ -91,6 +91,7 @@
#:use-module (gnu packages gnome)
#:use-module (gnu packages gnupg)
#:use-module (gnu packages golang)
#:use-module (gnu packages golang-crypto)
#:use-module (gnu packages gtk)
#:use-module (gnu packages guile)
#:use-module (gnu packages kerberos)

View File

@ -2,10 +2,10 @@ Remove pointers to PayPal and Facebook.
Upstream status: Guix-specific, not forwarded upstream.
diff --git a/src/dialoginfo.cpp b/src/dialoginfo.cpp
index 3302f55..b64f414 100755
index 52dd628..b37c413 100755
--- a/src/dialoginfo.cpp
+++ b/src/dialoginfo.cpp
@@ -31,7 +31,6 @@ DialogInfo::DialogInfo(QWidget *parent) :
@@ -33,7 +33,6 @@ DialogInfo::DialogInfo(QWidget *parent) :
setupUi(this);
connect(pushClose, SIGNAL(clicked()), this, SLOT(close()));
@ -13,44 +13,99 @@ index 3302f55..b64f414 100755
QString appVersion;
QString magickVersion;
@@ -63,8 +62,3 @@ void DialogInfo::openFacebookPage()
QDesktopServices::openUrl(QUrl("https://www.facebook.com/converseen", QUrl::TolerantMode));
@@ -66,62 +65,4 @@ DialogInfo::DialogInfo(QWidget *parent) :
.arg(qtVersionStrTr)
.arg(QT_VERSION_STR);
labelQtVersion->setText(qt_versionString);
-
- // This section generates a Text + Png pixmap icon for the donazion button!
-
- QString donateText = tr("Make a Donation!");
- QString donateDescriptionText = tr("Donate using PayPal, Ko-Fi or Cryptocurrencies.");
-
- QString htmlDonationText = QString(R"(
- <style>
- table {
- border-collapse: collapse;
- }
- td {
- text-align: center;
- vertical-align: middle;
- padding: 5px;
- }
- </style>
-
- <table>
- <tr>
- <td><img src=':/Images/res/heart.png' width='52' height='52'></td>
- <td>
- <span style='font-weight: bold; font-size:18pt; text-align: center;'>%1</span><br />
- <span style='font-style: italic; font-size:8pt; text-align: center;'>%2</span>
- </td>
- </tr>
- </table>
- )")
- .arg(donateText, donateDescriptionText);
-
- QTextDocument donateHtmlText;
- donateHtmlText.setHtml(htmlDonationText);
-
- QPixmap pixmapDonationText(donateHtmlText.size().width(), donateHtmlText.size().height());
- pixmapDonationText.fill( Qt::transparent );
-
- QPainter painter( &pixmapDonationText );
- painter.setRenderHint(QPainter::Antialiasing, true);
-
- donateHtmlText.drawContents(&painter, pixmapDonationText.rect());
-
- QIcon donateButtonIcon(pixmapDonationText);
- pushDonatePayPal->setIcon(donateButtonIcon);
- pushDonatePayPal->setIconSize(pixmapDonationText.rect().size());
-
- adjustSize();
- this->resize(512, 800);
-}
-
-void DialogInfo::openFacebookPage()
-{
- QDesktopServices::openUrl(QUrl("https://www.facebook.com/converseen", QUrl::TolerantMode));
}
-
-void DialogInfo::on_pushDonatePayPal_clicked()
-{
- QDesktopServices::openUrl(QUrl("https://www.paypal.com/cgi-bin/webscr?cmd=_s-xclick&hosted_button_id=HQA6TBT5354FC", QUrl::TolerantMode));
- QDesktopServices::openUrl(QUrl("https://converseen.fasterland.net/donate/", QUrl::TolerantMode));
-}
-
diff --git a/src/dialoginfo.h b/src/dialoginfo.h
index 4c13776..f1b7ea3 100755
index 4d8ba15..ef6afa9 100755
--- a/src/dialoginfo.h
+++ b/src/dialoginfo.h
@@ -33,7 +33,6 @@ public:
@@ -32,8 +32,6 @@ public:
DialogInfo(QWidget *parent = 0);
private slots:
void openFacebookPage();
- void openFacebookPage();
- void on_pushDonatePayPal_clicked();
};
#endif // DIALOGINFO_H
diff --git a/src/mainwindowimpl.cpp b/src/mainwindowimpl.cpp
index 83a365f..9a44492 100755
index 71ddc2c..bd4294b 100755
--- a/src/mainwindowimpl.cpp
+++ b/src/mainwindowimpl.cpp
@@ -162,7 +162,6 @@ void MainWindowImpl::createActions()
@@ -163,7 +163,6 @@ void MainWindowImpl::createActions()
connect(actionConvert, SIGNAL(triggered()), this, SLOT(elabora()));
connect(actionInfo, SIGNAL(triggered()), this, SLOT(about()));
- connect(actionDonatePaypal, SIGNAL(triggered()), this, SLOT(openPaypalLink()));
connect(actionReportBug, SIGNAL(triggered()), this, SLOT(bugReport()));
}
connect(actionCheckForUpdates, SIGNAL(triggered()), this, SLOT(checkForUpdates()));
connect(actionHelp, SIGNAL(triggered()), this, SLOT(onlineHelp()));
diff --git a/ui/dialoginfo.ui b/ui/dialoginfo.ui
index b2c7788..20b9d9d 100755
index 2878670..0535a85 100755
--- a/ui/dialoginfo.ui
+++ b/ui/dialoginfo.ui
@@ -254,122 +254,6 @@ p, li { white-space: pre-wrap; }
@@ -273,146 +273,6 @@ p, li { white-space: pre-wrap; }
</layout>
</widget>
</item>
@ -69,25 +124,53 @@ index b2c7788..20b9d9d 100755
- <item>
- <layout class="QHBoxLayout" name="horizontalLayout_4">
- <item>
- <spacer name="horizontalSpacer_4">
- <property name="orientation">
- <enum>Qt::Horizontal</enum>
- </property>
- <property name="sizeHint" stdset="0">
- <size>
- <width>40</width>
- <height>20</height>
- </size>
- </property>
- </spacer>
- </item>
- <item>
- <widget class="QPushButton" name="pushDonatePayPal">
- <property name="cursor">
- <cursorShape>PointingHandCursor</cursorShape>
- </property>
- <property name="text">
- <string/>
- </property>
- <property name="icon">
- <iconset resource="../resources.qrc">
- <normaloff>:/Images/res/btn_donateCC_LG.png</normaloff>:/Images/res/btn_donateCC_LG.png</iconset>
- </property>
- <property name="iconSize">
- <size>
- <width>150</width>
- <height>50</height>
- </size>
- </property>
- <property name="autoDefault">
- <bool>false</bool>
- </property>
- <property name="flat">
- <bool>true</bool>
- </property>
- </widget>
- </item>
- <item>
- <spacer name="horizontalSpacer_5">
- <property name="orientation">
- <enum>Qt::Horizontal</enum>
- </property>
- <property name="sizeHint" stdset="0">
- <size>
- <width>40</width>
- <height>20</height>
- </size>
- </property>
- </spacer>
- </item>
- </layout>
- </item>
- </layout>
@ -141,6 +224,9 @@ index b2c7788..20b9d9d 100755
- <height>32</height>
- </size>
- </property>
- <property name="autoDefault">
- <bool>false</bool>
- </property>
- <property name="flat">
- <bool>true</bool>
- </property>
@ -162,35 +248,28 @@ index b2c7788..20b9d9d 100755
- </spacer>
- </item>
- </layout>
- </item>
- <item>
- <widget class="Line" name="line">
- <property name="orientation">
- <enum>Qt::Horizontal</enum>
- </property>
- </widget>
- </item>
<item>
<widget class="QLabel" name="label_2">
<property name="text">
<widget class="Line" name="line">
<property name="orientation">
diff --git a/ui/mainwindow.ui b/ui/mainwindow.ui
index 28df8cc..0ee7f37 100755
index 24bda6f..e8a072d 100755
--- a/ui/mainwindow.ui
+++ b/ui/mainwindow.ui
@@ -1334,18 +1334,6 @@ p, li { white-space: pre-wrap; }
<string>F1</string>
@@ -1408,18 +1408,6 @@ p, li { white-space: pre-wrap; }
<string>&amp;About</string>
</property>
</action>
- <action name="actionDonatePaypal">
- <property name="icon">
- <iconset resource="../resources.qrc">
- <normaloff>:/Images/res/paypal_mini.png</normaloff>:/Images/res/paypal_mini.png</iconset>
- <normaloff>:/Images/res/heart.png</normaloff>:/Images/res/heart.png</iconset>
- </property>
- <property name="text">
- <string>&amp;Donate via Paypal</string>
- <string>&amp;Donate!</string>
- </property>
- <property name="toolTip">
- <string>Donate via Paypal</string>
- <string>Donate via Paypal, Ko-Fi, Cryptocurrencies</string>
- </property>
- </action>
<action name="actionReportBug">

View File

@ -1,45 +1,46 @@
From 3f7b48195500cbbbbecd3cac2f5308c64004479b Mon Sep 17 00:00:00 2001
From d3252748b0f9036cb31f4697ebb5c6a494aceaca Mon Sep 17 00:00:00 2001
From: Giacomo Leidi <goodoldpaul@autistici.org>
Date: Sun, 29 Aug 2021 23:39:27 +0200
Date: Sun, 14 Jan 2024 12:05:49 +0100
Subject: [PATCH] Use system site dependencies.
Box was not unvendored because it appears to be heavily patched.
* Box was not unvendored because it appears to be heavily patched.
* Tomllib seems to be a backport from Python 3.11, as such it wasn't unvendored.
---
dynaconf/cli.py | 4 ++--
dynaconf/default_settings.py | 2 +-
dynaconf/loaders/env_loader.py | 2 +-
dynaconf/loaders/toml_loader.py | 2 +-
dynaconf/loaders/yaml_loader.py | 2 +-
dynaconf/utils/parse_conf.py | 2 +-
dynaconf/vendor/box/converters.py | 4 ++--
dynaconf/vendor/box/from_file.py | 4 ++--
dynaconf/vendor_src/box/converters.py | 4 ++--
dynaconf/vendor_src/box/from_file.py | 4 ++--
tests/test_cli.py | 2 +-
11 files changed, 16 insertions(+), 16 deletions(-)
dynaconf/cli.py | 4 ++--
dynaconf/default_settings.py | 2 +-
dynaconf/loaders/env_loader.py | 2 +-
dynaconf/loaders/toml_loader.py | 2 +-
dynaconf/loaders/yaml_loader.py | 2 +-
dynaconf/utils/inspect.py | 2 +-
dynaconf/utils/parse_conf.py | 2 +-
dynaconf/vendor/box/converters.py | 2 +-
dynaconf/vendor/box/from_file.py | 2 +-
tests/test_cli.py | 2 +-
tests/test_inspect.py | 2 +-
11 files changed, 12 insertions(+), 12 deletions(-)
diff --git a/dynaconf/cli.py b/dynaconf/cli.py
index 5bb8316..1341a95 100644
index c0fd489..5739e79 100644
--- a/dynaconf/cli.py
+++ b/dynaconf/cli.py
@@ -20,8 +20,8 @@ from dynaconf.utils.functional import empty
from dynaconf.utils.parse_conf import parse_conf_data
@@ -24,8 +24,8 @@ from dynaconf.utils.parse_conf import parse_conf_data
from dynaconf.utils.parse_conf import unparse_conf_data
from dynaconf.validator import ValidationError
from dynaconf.validator import Validator
-from dynaconf.vendor import click
-from dynaconf.vendor import toml
+import click
+import toml
from dynaconf.vendor import tomllib
CWD = Path.cwd()
diff --git a/dynaconf/default_settings.py b/dynaconf/default_settings.py
index 66601b0..9605fc5 100644
index 7e8c222..526b01e 100644
--- a/dynaconf/default_settings.py
+++ b/dynaconf/default_settings.py
@@ -8,7 +8,7 @@ from dynaconf.utils import upperfy
from dynaconf.utils import warn_deprecations
@@ -11,7 +11,7 @@ from dynaconf.utils import warn_deprecations
from dynaconf.utils.files import find_file
from dynaconf.utils.parse_conf import boolean_fix
from dynaconf.utils.parse_conf import parse_conf_data
-from dynaconf.vendor.dotenv import load_dotenv
+from dotenv import load_dotenv
@ -47,36 +48,36 @@ index 66601b0..9605fc5 100644
def try_renamed(key, value, older_key, current_key):
diff --git a/dynaconf/loaders/env_loader.py b/dynaconf/loaders/env_loader.py
index e7b13bd..b034c8a 100644
index a563b4e..91ac3ae 100644
--- a/dynaconf/loaders/env_loader.py
+++ b/dynaconf/loaders/env_loader.py
@@ -2,7 +2,7 @@ from os import environ
@@ -11,7 +11,7 @@ from dynaconf.utils.parse_conf import parse_conf_data
from dynaconf.utils import upperfy
from dynaconf.utils.parse_conf import parse_conf_data
-from dynaconf.vendor.dotenv import cli as dotenv_cli
+from dotenv import cli as dotenv_cli
DOTENV_IMPORTED = False
with suppress(ImportError, FileNotFoundError):
- from dynaconf.vendor.dotenv import cli as dotenv_cli
+ from dotenv import cli as dotenv_cli
DOTENV_IMPORTED = True
IDENTIFIER = "env"
diff --git a/dynaconf/loaders/toml_loader.py b/dynaconf/loaders/toml_loader.py
index 07b973f..d81d675 100644
index 42db7b3..ba0188b 100644
--- a/dynaconf/loaders/toml_loader.py
+++ b/dynaconf/loaders/toml_loader.py
@@ -5,7 +5,7 @@ from dynaconf import default_settings
@@ -7,7 +7,7 @@ from dynaconf import default_settings
from dynaconf.constants import TOML_EXTENSIONS
from dynaconf.loaders.base import BaseLoader
from dynaconf.utils import object_merge
-from dynaconf.vendor import toml
+import toml
-from dynaconf.vendor import toml # Backwards compatibility with uiri/toml
+import toml # Backwards compatibility with uiri/toml
from dynaconf.vendor import tomllib # New tomllib stdlib on py3.11
def load(obj, env=None, silent=True, key=None, filename=None):
diff --git a/dynaconf/loaders/yaml_loader.py b/dynaconf/loaders/yaml_loader.py
index 33c6532..3ef419a 100644
index 5721681..ab628c2 100644
--- a/dynaconf/loaders/yaml_loader.py
+++ b/dynaconf/loaders/yaml_loader.py
@@ -7,7 +7,7 @@ from dynaconf.constants import YAML_EXTENSIONS
@@ -10,7 +10,7 @@ from dynaconf.constants import YAML_EXTENSIONS
from dynaconf.loaders.base import BaseLoader
from dynaconf.utils import object_merge
from dynaconf.utils.parse_conf import try_to_encode
@ -85,95 +86,84 @@ index 33c6532..3ef419a 100644
# Add support for Dynaconf Lazy values to YAML dumper
yaml.SafeDumper.yaml_representers[
diff --git a/dynaconf/utils/inspect.py b/dynaconf/utils/inspect.py
index 21d724e..2933b8f 100644
--- a/dynaconf/utils/inspect.py
+++ b/dynaconf/utils/inspect.py
@@ -18,7 +18,7 @@ from dynaconf.loaders.base import SourceMetadata
from dynaconf.utils.boxing import DynaBox
from dynaconf.utils.functional import empty
from dynaconf.vendor.box.box_list import BoxList
-from dynaconf.vendor.ruamel.yaml import YAML
+from ruamel.yaml import YAML
if TYPE_CHECKING: # pragma: no cover
from dynaconf.base import LazySettings, Settings
diff --git a/dynaconf/utils/parse_conf.py b/dynaconf/utils/parse_conf.py
index c42b07a..01ccdae 100644
index 882110e..a262864 100644
--- a/dynaconf/utils/parse_conf.py
+++ b/dynaconf/utils/parse_conf.py
@@ -9,7 +9,7 @@ from dynaconf.utils import isnamedtupleinstance
from dynaconf.utils import multi_replace
@@ -12,7 +12,7 @@ from dynaconf.utils import multi_replace
from dynaconf.utils import recursively_evaluate_lazy_format
from dynaconf.utils.boxing import DynaBox
from dynaconf.utils.functional import empty
-from dynaconf.vendor import toml
+import toml
from dynaconf.vendor import tomllib
try:
from jinja2 import Environment
diff --git a/dynaconf/vendor/box/converters.py b/dynaconf/vendor/box/converters.py
index 93cdcfb..e34c7dc 100644
index 08694fe..4e84930 100644
--- a/dynaconf/vendor/box/converters.py
+++ b/dynaconf/vendor/box/converters.py
@@ -7,9 +7,9 @@ _B='utf-8'
_A=None
import csv,json,sys,warnings
from pathlib import Path
-import dynaconf.vendor.ruamel.yaml as yaml
+import ruamel.yaml as yaml
from dynaconf.vendor.box.exceptions import BoxError,BoxWarning
-from dynaconf.vendor import toml
+import toml
BOX_PARAMETERS='default_box','default_box_attr','conversion_box','frozen_box','camel_killer_box','box_safe_prefix','box_duplicates','ordered_box','default_box_none_transform','box_dots','modify_tuples_box','box_intact_types','box_recast'
def _exists(filename,create=_E):
A=filename;B=Path(A)
diff --git a/dynaconf/vendor/box/from_file.py b/dynaconf/vendor/box/from_file.py
index daa1137..d75940b 100644
--- a/dynaconf/vendor/box/from_file.py
+++ b/dynaconf/vendor/box/from_file.py
@@ -1,8 +1,8 @@
from json import JSONDecodeError
from pathlib import Path
from typing import Union
-from dynaconf.vendor.toml import TomlDecodeError
-from dynaconf.vendor.ruamel.yaml import YAMLError
+from toml import TomlDecodeError
+from ruamel.yaml import YAMLError
from .exceptions import BoxError
from .box import Box
from .box_list import BoxList
diff --git a/dynaconf/vendor_src/box/converters.py b/dynaconf/vendor_src/box/converters.py
index c9a2293..ae42bf6 100644
--- a/dynaconf/vendor_src/box/converters.py
+++ b/dynaconf/vendor_src/box/converters.py
@@ -9,9 +9,9 @@ import sys
@@ -9,7 +9,7 @@ import sys
import warnings
from pathlib import Path
-import dynaconf.vendor.ruamel.yaml as yaml
+import ruamel.yaml as yaml
from dynaconf.vendor.box.exceptions import BoxError, BoxWarning
-from dynaconf.vendor import toml
+import toml
from dynaconf.vendor import tomllib as toml
BOX_PARAMETERS = ('default_box', 'default_box_attr', 'conversion_box',
diff --git a/dynaconf/vendor_src/box/from_file.py b/dynaconf/vendor_src/box/from_file.py
index 2e2a6ad..3f76819 100644
--- a/dynaconf/vendor_src/box/from_file.py
+++ b/dynaconf/vendor_src/box/from_file.py
@@ -3,8 +3,8 @@
from json import JSONDecodeError
diff --git a/dynaconf/vendor/box/from_file.py b/dynaconf/vendor/box/from_file.py
index a82ac96..cd01f13 100644
--- a/dynaconf/vendor/box/from_file.py
+++ b/dynaconf/vendor/box/from_file.py
@@ -4,7 +4,7 @@ from json import JSONDecodeError
from pathlib import Path
from typing import Union
-from dynaconf.vendor.toml import TomlDecodeError
from dynaconf.vendor.tomllib import TOMLDecodeError
-from dynaconf.vendor.ruamel.yaml import YAMLError
+from toml import TomlDecodeError
+from ruamel.yaml import YAMLError
from .exceptions import BoxError
diff --git a/tests/test_cli.py b/tests/test_cli.py
index 6693701..df44409 100644
index c679ae5..9df5f7f 100644
--- a/tests/test_cli.py
+++ b/tests/test_cli.py
@@ -11,7 +11,7 @@ from dynaconf.cli import main
@@ -15,7 +15,7 @@ from dynaconf.cli import main
from dynaconf.cli import read_file_in_root_directory
from dynaconf.cli import WRITERS
from dynaconf.utils.files import read_file
-from dynaconf.vendor.click.testing import CliRunner
+from click.testing import CliRunner
settings = LazySettings(OPTION_FOR_TESTS=True, environments=True)
runner = CliRunner()
base-commit: ebf7b17cffd5e08b212948bd8036d580718d5bf8
diff --git a/tests/test_inspect.py b/tests/test_inspect.py
index 0819715..96638c1 100644
--- a/tests/test_inspect.py
+++ b/tests/test_inspect.py
@@ -18,7 +18,7 @@ from dynaconf.utils.inspect import inspect_settings
from dynaconf.utils.inspect import KeyNotFoundError
from dynaconf.utils.inspect import OutputFormatError
from dynaconf.validator import Validator
-from dynaconf.vendor.ruamel import yaml
+from ruamel import yaml
def create_file(filename: str, data: str) -> str:
--
2.32.0
2.41.0

View File

@ -0,0 +1,35 @@
From 6e8cb6f2175cd5c108de615a970a27877adfaea0 Mon Sep 17 00:00:00 2001
From: Maxim Cournoyer <maxim.cournoyer@gmail.com>
Date: Fri, 19 Jan 2024 10:49:51 -0500
Subject: [PATCH] tests: Fix byte-compilation test.
* test/shx-test.el (shx-test-unit-byte-compile): Simply assert on the
return value of byte-compile-file, which is non-nil when there are no
errors.
Fixes: <https://github.com/riscy/shx-for-emacs/issues/33>
---
test/shx-test.el | 4 +---
1 file changed, 1 insertion(+), 3 deletions(-)
diff --git a/test/shx-test.el b/test/shx-test.el
index e18cefb..ed5aee3 100644
--- a/test/shx-test.el
+++ b/test/shx-test.el
@@ -83,10 +83,8 @@ Example:
"Test byte-compilation against the shx.el file."
(ignore-errors (kill-buffer "*Compile-Log*"))
(let ((file (replace-regexp-in-string ".elc$" ".el" (symbol-file 'shx-mode))))
- (byte-compile-file file)
(shx-test-assert "shx.el passes byte-compilation"
- (with-current-buffer (get-buffer-create "*Compile-Log*")
- (<= (- (point-max) (point)) 3)))))
+ (byte-compile-file file))))
(defun shx-test-unit-declare-function ()
"Test `declare-function'."
base-commit: b99d16f36bc278d668d8428c4bc9af77064c336a
--
2.41.0

View File

@ -1,127 +0,0 @@
From 904a058fcf4e1f4985e03f8551eec282ca12ccb5 Mon Sep 17 00:00:00 2001
From: Philipp Stephani <phst@google.com>
Date: Mon, 6 Dec 2021 18:50:10 +0100
Subject: [PATCH] Unbreak unit tests under Emacs 28.
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
- Emacs 28 has a new mode lisp-data-mode for Lisp data.
- A test that was temporarily broken passes again.
- The default for org-adapt-indentation has changed.
- buffer-list may be called with arguments when native-comp is enabled.
2023-08-19 Liliana Marie Prikler <liliana.prikler@gmail.com>
* delete-numberless-inner-snippet-issue-562: Correct value in
looking-at.
---
yasnippet-tests.el | 45 ++++++++++++++++++++++++++++-----------------
1 file changed, 28 insertions(+), 17 deletions(-)
diff --git a/yasnippet-tests.el b/yasnippet-tests.el
index f7ca2bb..7618ab7 100644
--- a/yasnippet-tests.el
+++ b/yasnippet-tests.el
@@ -1,6 +1,6 @@
;;; yasnippet-tests.el --- some yasnippet tests -*- lexical-binding: t -*-
-;; Copyright (C) 2012-2015, 2017-2018 Free Software Foundation, Inc.
+;; Copyright (C) 2012-2015, 2017-2018, 2021 Free Software Foundation, Inc.
;; Author: João Távora <joaot@siscog.pt>
;; Keywords: emulations, convenience
@@ -289,7 +289,7 @@ attention to case differences."
(should (looking-at "testblable"))
(ert-simulate-command '(yas-next-field-or-maybe-expand))
(ert-simulate-command '(yas-skip-and-clear-field))
- (should (looking-at "ble"))
+ (should (looking-at "blable"))
(should (null (yas-active-snippets)))))
(ert-deftest delete-nested-simple-field-issue-824 ()
@@ -556,16 +556,19 @@ XXXXX ------------------------"))))
(yas-mock-insert "foo bar")
(ert-simulate-command '(yas-next-field))
(goto-char (point-min))
- (let ((expected (with-temp-buffer
- (insert (format (concat "* Test foo bar\n"
- " " org-property-format "\n"
- " " org-property-format "\n"
- " " org-property-format)
- ":PROPERTIES:" ""
- ":ID:" "foo bar-after"
- ":END:" ""))
- (delete-trailing-whitespace)
- (buffer-string))))
+ ;; The default value of `org-adapt-indentation' changed between Org-mode 9.4
+ ;; and 9.5, so force a specific value.
+ (let* ((org-adapt-indentation nil)
+ (expected (with-temp-buffer
+ (insert (format (concat "* Test foo bar\n"
+ org-property-format "\n"
+ org-property-format "\n"
+ org-property-format)
+ ":PROPERTIES:" ""
+ ":ID:" "foo bar-after"
+ ":END:" ""))
+ (delete-trailing-whitespace)
+ (buffer-string))))
;; Some org-mode versions leave trailing whitespace, some don't.
(delete-trailing-whitespace)
(should (equal expected (buffer-string))))))
@@ -1195,11 +1198,11 @@ hello ${1:$(when (stringp yas-text) (funcall func yas-text))} foo${1:$$(concat \
(let ((saved-sym (make-symbol "yas--buffer-list")))
`(let ((,saved-sym (symbol-function 'buffer-list)))
(cl-letf (((symbol-function 'buffer-list)
- (lambda ()
+ (lambda (&rest args)
(cl-remove-if (lambda (buf)
(with-current-buffer buf
(eq major-mode 'lisp-interaction-mode)))
- (funcall ,saved-sym)))))
+ (funcall ,saved-sym args)))))
,@body))))
@@ -1356,7 +1359,9 @@ hello ${1:$(when (stringp yas-text) (funcall func yas-text))} foo${1:$$(concat \
,@(if (fboundp 'prog-mode)
'(prog-mode))
emacs-lisp-mode
- lisp-interaction-mode))
+ lisp-interaction-mode
+ ;; `lisp-data-mode' doesn't exist prior to Emacs 28.
+ ,@(and (fboundp 'lisp-data-mode) '(lisp-data-mode))))
(observed (yas--modes-to-activate)))
(should (equal major-mode (car observed)))
(should (equal (sort expected #'string<) (sort observed #'string<))))))))
@@ -1384,7 +1389,11 @@ hello ${1:$(when (stringp yas-text) (funcall func yas-text))} foo${1:$$(concat \
'(prog-mode))
emacs-lisp-mode
and-also-this-one
- lisp-interaction-mode))
+ lisp-interaction-mode
+ ;; `lisp-data-mode' doesn't exist prior to
+ ;; Emacs 28.
+ ,@(and (fboundp 'lisp-data-mode)
+ '(lisp-data-mode))))
(observed (yas--modes-to-activate)))
(should (equal expected-first
(cl-subseq observed 0 (length expected-first))))
@@ -1657,9 +1666,11 @@ TODO: be meaner"
"Test expansion of snippets in org source blocks."
;; org 9+ no longer runs fontification for text-mode, so our hacks
;; don't work. Note that old ert doesn't have skipping, so we have
- ;; to expect failure instead.
+ ;; to expect failure instead. Starting with Org-mode 9.5 this seems
+ ;; to work again.
:expected-result (if (and (fboundp 'org-in-src-block-p)
- (version< (org-version) "9"))
+ (or (version< (org-version) "9")
+ (version<= "9.5" (org-version))))
:passed :failed)
(let ((text-mode-hook #'yas-minor-mode))
(do-yas-org-native-tab-in-source-block "text")))
--
2.37.2

View File

@ -0,0 +1,32 @@
From 3adfb088eed81fc2c9e40ac55018378d4975f469 Mon Sep 17 00:00:00 2001
From: Maxim Cournoyer <maxim.cournoyer@gmail.com>
Date: Sun, 28 Jan 2024 19:50:51 -0500
Subject: [PATCH] audio: Look extension from right, not left.
* Source/Audio/openal_wrapper.cpp (decode_to_pcm): Find extension from
the right (strrchr), not from the left, to avoid eagerly truncating a
file name.
Fixes: https://gitlab.com/osslugaru/lugaru/-/issues/124#note_1746570172
---
Source/Audio/openal_wrapper.cpp | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/Source/Audio/openal_wrapper.cpp b/Source/Audio/openal_wrapper.cpp
index cc4fc36..072fcb8 100644
--- a/Source/Audio/openal_wrapper.cpp
+++ b/Source/Audio/openal_wrapper.cpp
@@ -316,7 +316,7 @@ static void* decode_to_pcm(const char* _fname, ALenum& format, ALsizei& size, AL
// !!! FIXME: if it's not Ogg, we don't have a decoder. I'm lazy. :/
char* fname = (char*)alloca(strlen(_fname) + 16);
strcpy(fname, _fname);
- char* ptr = strchr(fname, '.');
+ char* ptr = strrchr(fname, '.');
if (ptr) {
*ptr = '\0';
}
base-commit: 6a58b62858d9c3c3630abf00bf43075f65a09d38
--
2.41.0

View File

@ -1,89 +0,0 @@
From e9e779ead4d703ad423e46c23abd0c9afd7d5ed2 Mon Sep 17 00:00:00 2001
From: Arjan Adriaanse <arjan@adriaan.se>
Date: Tue, 15 Aug 2023 00:00:05 +0200
Subject: [PATCH] test: fix expected output for Emacs 29
---
test/T453-emacs-reply.sh | 1 -
test/T454-emacs-dont-reply-names.sh | 9 +++------
.../notmuch-reply-duplicate-4 | 1 -
3 files changed, 3 insertions(+), 8 deletions(-)
diff --git a/test/T453-emacs-reply.sh b/test/T453-emacs-reply.sh
index 0a27d066..de400b85 100755
--- a/test/T453-emacs-reply.sh
+++ b/test/T453-emacs-reply.sh
@@ -17,7 +17,6 @@ cat <<EOF > EXPECTED
From: Notmuch Test Suite <test_suite@notmuchmail.org>
To: Antoine Beaupré <anarcat@orangeseeds.org>
Subject: Re: bug: "no top level messages" crash on Zen email loops
-In-Reply-To: <874llc2bkp.fsf@curie.anarc.at>
Fcc: MAIL_DIR/sent
--text follows this line--
Antoine Beaupré <anarcat@orangeseeds.org> writes:
diff --git a/test/T454-emacs-dont-reply-names.sh b/test/T454-emacs-dont-reply-names.sh
index 3a770177..9ed4f18b 100755
--- a/test/T454-emacs-dont-reply-names.sh
+++ b/test/T454-emacs-dont-reply-names.sh
@@ -17,13 +17,12 @@ test_emacs '(let ((message-dont-reply-to-names "notmuchmail\\|noreply\\|harvard"
(test-visible-output "OUTPUT-FULL.raw"))'
notmuch_dir_sanitize < OUTPUT-FULL.raw > OUTPUT-FULL
-head -6 OUTPUT-FULL > OUTPUT
+head -5 OUTPUT-FULL > OUTPUT
cat <<EOF > EXPECTED
From: Notmuch Test Suite <test_suite@notmuchmail.org>
To: Mikhail Gusarov <dottedmag@dottedmag.net>
Subject: Re: [notmuch] Working with Maildir storage?
-In-Reply-To: <20091117203301.GV3165@dottiness.seas.harvard.edu>
Fcc: MAIL_DIR/sent
--text follows this line--
EOF
@@ -38,14 +37,13 @@ test_emacs '(let ((message-dont-reply-to-names
(test-visible-output "OUTPUT-FULL-PRED.raw"))'
notmuch_dir_sanitize < OUTPUT-FULL-PRED.raw > OUTPUT-FULL-PRED
-head -7 OUTPUT-FULL-PRED > OUTPUT-PRED
+head -6 OUTPUT-FULL-PRED > OUTPUT-PRED
cat <<EOF > EXPECTED-PRED
From: Notmuch Test Suite <test_suite@notmuchmail.org>
To: Lars Kellogg-Stedman <lars@seas.harvard.edu>
Cc: notmuch@notmuchmail.org
Subject: Re: [notmuch] Working with Maildir storage?
-In-Reply-To: <20091117203301.GV3165@dottiness.seas.harvard.edu>
Fcc: MAIL_DIR/sent
--text follows this line--
EOF
@@ -59,14 +57,13 @@ test_emacs '(let ((message-dont-reply-to-names nil))
(test-visible-output "OUTPUT-FULL-NIL.raw"))'
notmuch_dir_sanitize < OUTPUT-FULL-NIL.raw > OUTPUT-FULL-NIL
-head -7 OUTPUT-FULL-NIL > OUTPUT-NIL
+head -6 OUTPUT-FULL-NIL > OUTPUT-NIL
cat <<EOF > EXPECTED-NIL
From: Notmuch Test Suite <test_suite@notmuchmail.org>
To: Lars Kellogg-Stedman <lars@seas.harvard.edu>, Mikhail Gusarov <dottedmag@dottedmag.net>
Cc: notmuch@notmuchmail.org
Subject: Re: [notmuch] Working with Maildir storage?
-In-Reply-To: <20091117203301.GV3165@dottiness.seas.harvard.edu>
Fcc: MAIL_DIR/sent
--text follows this line--
EOF
diff --git a/test/emacs-reply.expected-output/notmuch-reply-duplicate-4 b/test/emacs-reply.expected-output/notmuch-reply-duplicate-4
index 836f77b1..44b8c7a6 100644
--- a/test/emacs-reply.expected-output/notmuch-reply-duplicate-4
+++ b/test/emacs-reply.expected-output/notmuch-reply-duplicate-4
@@ -1,7 +1,6 @@
From: Notmuch Test Suite <test_suite@notmuchmail.org>
To: Sean Whitton <spwhitton@spwhitton.name>, 916811@bugs.debian.org, 916805@bugs.debian.org, 916807@bugs.debian.org, 916808@bugs.debian.org, 916809@bugs.debian.org, 916811@bugs.debian.org, 916867@bugs.debian.org, 916869@bugs.debian.org, 916872@bugs.debian.org, 916875@bugs.debian.org, 916876@bugs.debian.org
Subject: Re: [Pkg-emacsen-addons] Bug#916811: Increase severity to 'serious'
-In-Reply-To: <87r2ecrr6x.fsf@zephyr.silentflame.com>
Fcc: MAIL_DIR/sent
--text follows this line--
Sean Whitton <spwhitton@spwhitton.name> writes:
--
2.41.0

View File

@ -0,0 +1,61 @@
From 1036d77b34a5fa15e56f516b81b9928006848cbd Mon Sep 17 00:00:00 2001
From: Damien Miller <djm@mindrot.org>
Date: Fri, 22 Dec 2023 17:56:26 +1100
Subject: [PATCH] better detection of broken -fzero-call-used-regs
MIME-Version: 1.0
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: 8bit
gcc 13.2.0 on ppc64le refuses to compile some function, including
cipher.c:compression_alg_list() with an error:
> sorry, unimplemented: argument used is not supportedcw
> for -fzero-call-used-regs on this target
This extends the autoconf will-it-work test with a similarly-
structured function that seems to catch this.
Spotted/tested by Colin Watson; bz3645
---
Taken from upsteam, and for Guix by jackhill@jackhill.us
Thanks Marcel van der Boom for noticing: https://issues.guix.gnu.org/67948#2
m4/openssh.m4 | 12 +++++++++---
1 file changed, 9 insertions(+), 3 deletions(-)
diff --git a/m4/openssh.m4 b/m4/openssh.m4
index 5d4c56280..033df501c 100644
--- a/m4/openssh.m4
+++ b/m4/openssh.m4
@@ -20,18 +20,24 @@ char *f2(char *s, ...) {
va_end(args);
return strdup(ret);
}
+const char *f3(int s) {
+ return s ? "good" : "gooder";
+}
int main(int argc, char **argv) {
- (void)argv;
char b[256], *cp;
+ const char *s;
/* Some math to catch -ftrapv problems in the toolchain */
int i = 123 * argc, j = 456 + argc, k = 789 - argc;
float l = i * 2.1;
double m = l / 0.5;
long long int n = argc * 12345LL, o = 12345LL * (long long int)argc;
+ (void)argv;
f(1);
- snprintf(b, sizeof b, "%d %d %d %f %f %lld %lld\n", i,j,k,l,m,n,o);
+ s = f3(f(2));
+ snprintf(b, sizeof b, "%d %d %d %f %f %lld %lld %s\n", i,j,k,l,m,n,o,s);
if (write(1, b, 0) == -1) exit(0);
- cp = f2("%d %d %d %f %f %lld %lld\n", i,j,k,l,m,n,o);
+ cp = f2("%d %d %d %f %f %lld %lld %s\n", i,j,k,l,m,n,o,s);
+ if (write(1, cp, 0) == -1) exit(0);
free(cp);
/*
* Test fallthrough behaviour. clang 10's -Wimplicit-fallthrough does
--
2.41.0

View File

@ -1,131 +0,0 @@
The following patch, authored by Andreas Enge, looks for the flint include
files in the correct subdirectory.
diff -u -r python-flint-old/src/flint.pxd python-flint-new/src/flint.pxd
--- python-flint-old/src/flint.pxd 2019-03-19 10:26:11.055748626 +0100
+++ python-flint-new/src/flint.pxd 2019-03-19 10:35:23.269341203 +0100
@@ -27,7 +27,7 @@
ctypedef long fmpz_struct
-cdef extern from "flint.h":
+cdef extern from "flint/flint.h":
ctypedef void * flint_rand_t
void flint_randinit(flint_rand_t state)
void flint_randclear(flint_rand_t state)
@@ -35,7 +35,7 @@
long flint_get_num_threads()
void flint_cleanup()
-cdef extern from "nmod_vec.h":
+cdef extern from "flint/nmod_vec.h":
ctypedef struct nmod_t:
mp_limb_t n
mp_limb_t ninv
@@ -47,7 +47,7 @@
mp_limb_t nmod_mul(mp_limb_t a, mp_limb_t b, nmod_t mod)
mp_limb_t nmod_div(mp_limb_t a, mp_limb_t b, nmod_t mod)
-cdef extern from "nmod_poly.h":
+cdef extern from "flint/nmod_poly.h":
ctypedef struct nmod_poly_struct:
mp_ptr coeffs
long alloc
@@ -129,7 +129,7 @@
void nmod_poly_factor_init(nmod_poly_factor_t fac)
void nmod_poly_factor_clear(nmod_poly_factor_t fac)
-cdef extern from "nmod_mat.h":
+cdef extern from "flint/nmod_mat.h":
ctypedef struct nmod_mat_struct:
mp_limb_t * entries
long r
@@ -178,7 +178,7 @@
long nmod_mat_rref(nmod_mat_t A)
long nmod_mat_nullspace(nmod_mat_t X, nmod_mat_t A)
-cdef extern from "fmpz.h":
+cdef extern from "flint/fmpz.h":
ctypedef fmpz_struct fmpz_t[1]
int COEFF_IS_MPZ(fmpz_struct v)
void fmpz_init(fmpz_t op)
@@ -268,7 +268,7 @@
void fmpz_rfac_uiui(fmpz_t r, ulong x, ulong n)
void fmpz_primorial(fmpz_t res, ulong n)
-cdef extern from "fmpz_factor.h":
+cdef extern from "flint/fmpz_factor.h":
ctypedef struct fmpz_factor_struct:
int sign
fmpz_struct * p
@@ -280,7 +280,7 @@
void fmpz_factor_clear(fmpz_factor_t factor)
void fmpz_factor(fmpz_factor_t factor, fmpz_t n)
-cdef extern from "fmpz_poly.h":
+cdef extern from "flint/fmpz_poly.h":
ctypedef struct fmpz_poly_struct:
fmpz_struct * coeffs
long alloc
@@ -390,14 +390,14 @@
void fmpz_poly_cos_minpoly(fmpz_poly_t, ulong)
void fmpz_poly_swinnerton_dyer(fmpz_poly_t, ulong)
-cdef extern from "fmpz_poly_factor.h":
+cdef extern from "flint/fmpz_poly_factor.h":
void fmpz_poly_factor_init(fmpz_poly_factor_t fac)
void fmpz_poly_factor_clear(fmpz_poly_factor_t fac)
void fmpz_poly_factor_zassenhaus(fmpz_poly_factor_t fac, fmpz_poly_t G)
void fmpz_poly_factor(fmpz_poly_factor_t fac, fmpz_poly_t G)
void fmpz_poly_factor_squarefree(fmpz_poly_factor_t fac, fmpz_poly_t G)
-cdef extern from "fmpz_mat.h":
+cdef extern from "flint/fmpz_mat.h":
ctypedef struct fmpz_mat_struct:
fmpz_struct * entries
long r
@@ -448,7 +448,7 @@
void fmpz_mat_snf(fmpz_mat_t S, const fmpz_mat_t A)
int fmpz_mat_is_in_snf(const fmpz_mat_t A)
-cdef extern from "fmpz_lll.h":
+cdef extern from "flint/fmpz_lll.h":
ctypedef struct fmpz_lll_struct:
double delta
double eta
@@ -461,7 +461,7 @@
void fmpz_lll(fmpz_mat_t B, fmpz_mat_t U, const fmpz_lll_t fl)
-cdef extern from "fmpq.h":
+cdef extern from "flint/fmpq.h":
ctypedef struct fmpq_struct:
fmpz_struct num
fmpz_struct den
@@ -506,7 +506,7 @@
void fmpq_next_signed_minimal(fmpq_t res, fmpq_t x)
void fmpq_harmonic_ui(fmpq_t res, ulong n)
-cdef extern from "fmpq_poly.h":
+cdef extern from "flint/fmpq_poly.h":
ctypedef struct fmpq_poly_struct:
fmpz_struct * coeffs
fmpz_t den
@@ -620,7 +620,7 @@
void fmpq_poly_compose_series(fmpq_poly_t res, fmpq_poly_t poly1, fmpq_poly_t poly2, long n)
void fmpq_poly_revert_series(fmpq_poly_t res, fmpq_poly_t poly1, long n)
-cdef extern from "fmpq_mat.h":
+cdef extern from "flint/fmpq_mat.h":
ctypedef struct fmpq_mat_struct:
fmpq_struct * entries
long r
@@ -672,7 +672,7 @@
long fmpq_mat_rref(fmpq_mat_t B, fmpq_mat_t A)
void fmpq_mat_transpose(fmpq_mat_t B, fmpq_mat_t A)
-cdef extern from "arith.h":
+cdef extern from "flint/arith.h":
void arith_number_of_partitions(fmpz_t res, ulong n)
int arith_moebius_mu(fmpz_t n)
void arith_divisor_sigma(fmpz_t v, fmpz_t n, ulong k)

View File

@ -0,0 +1,45 @@
From ada6a999e4f5cca21a2133e449f4576dbe9a64d2 Mon Sep 17 00:00:00 2001
From: Isaac Dadzie <4581114+idadzie@users.noreply.github.com>
Date: Fri, 4 Feb 2022 21:18:37 +0000
Subject: [PATCH] Add support for black 22.1.0
Make changes to support black 22.1.0, which changed the return type
of 'find_project_root' to a tuple.
Resolves: #40
---
pyls_black/plugin.py | 8 +++++++-
setup.cfg | 2 +-
2 files changed, 8 insertions(+), 2 deletions(-)
diff --git a/pyls_black/plugin.py b/pyls_black/plugin.py
index dc5d482..e4f4d98 100644
--- a/pyls_black/plugin.py
+++ b/pyls_black/plugin.py
@@ -73,7 +73,13 @@ def load_config(filename: str) -> Dict:
root = black.find_project_root((filename,))
- pyproject_filename = root / "pyproject.toml"
+ # Note: find_project_root returns a tuple in 22.1.0+
+ try:
+ # Keeping this to not break backward compatibility.
+ pyproject_filename = root / "pyproject.toml"
+ except TypeError:
+ _root, _ = root
+ pyproject_filename = _root / "pyproject.toml"
if not pyproject_filename.is_file():
return defaults
diff --git a/setup.cfg b/setup.cfg
index 036cec2..57fbe4f 100644
--- a/setup.cfg
+++ b/setup.cfg
@@ -1,6 +1,6 @@
[metadata]
name = pyls-black
-version = 0.4.7
+version = 0.4.8
author = Rupert Bedford
author_email = rupert@rupertb.com
description = Black plugin for the Python Language Server

View File

@ -0,0 +1,109 @@
From 290da0472e3a0af01b242cd1d3dd6a24588db0e5 Mon Sep 17 00:00:00 2001
From: qiyunzhu <qiyunzhu@gmail.com>
Date: Sat, 4 Nov 2023 12:59:54 -0700
Subject: [PATCH 1/2] removed kulsinski
---
CHANGELOG.md | 6 ++++++
ci/aarch64.conda_requirements.txt | 2 +-
ci/conda_requirements.txt | 2 +-
setup.py | 2 +-
skbio/diversity/_driver.py | 2 --
5 files changed, 9 insertions(+), 5 deletions(-)
diff --git a/CHANGELOG.md b/CHANGELOG.md
index 0ce69c2c6..cd9adea6c 100644
--- a/CHANGELOG.md
+++ b/CHANGELOG.md
@@ -2,6 +2,12 @@
## Version 0.5.10
+### Features
+* SciPy 1.11+ is now supported.
+
+### Backward-incompatible changes [experimental]
+* Beta diversity metric `kulsinski` was removed. This was motivated by that SciPy replaced this distance metric with `kulczynski1` in version 1.11 (see SciPy issue [#2009](https://github.com/scipy/scipy/issues/2009)), and that both metrics do not return 0 on two identical vectors.
+
### Bug fixes
* Re-enabled OpenMP support, which has been mistakenly disabled in 0.5.8 ([#1874](https://github.com/biocore/scikit-bio/pull/1874))
diff --git a/ci/aarch64.conda_requirements.txt b/ci/aarch64.conda_requirements.txt
index a329bc666..3564f4c3c 100644
--- a/ci/aarch64.conda_requirements.txt
+++ b/ci/aarch64.conda_requirements.txt
@@ -5,5 +5,5 @@ matplotlib >= 1.4.3
natsort >= 4.0.3
numpy >= 1.9.2
pandas >= 1.5.0
-scipy <= 1.10.1
+scipy >= 1.9.0
h5py >= 3.6.0
diff --git a/ci/conda_requirements.txt b/ci/conda_requirements.txt
index 4402e4ebb..0f1bd715c 100644
--- a/ci/conda_requirements.txt
+++ b/ci/conda_requirements.txt
@@ -5,6 +5,6 @@ matplotlib >= 1.4.3
natsort >= 4.0.3
numpy >= 1.9.2
pandas >= 1.5.0
-scipy <= 1.10.1
+scipy >= 1.9.0
h5py >= 3.6.0
hdmedians >= 0.14.1
diff --git a/setup.py b/setup.py
index 36600e427..fa4d5e0a7 100644
--- a/setup.py
+++ b/setup.py
@@ -221,7 +221,7 @@ def check_bin(ccbin, source, allow_dash):
'natsort >= 4.0.3',
'numpy >= 1.9.2',
'pandas >= 1.5.0',
- 'scipy <= 1.10.1',
+ 'scipy >= 1.9.0',
'h5py >= 3.6.0',
'hdmedians >= 0.14.1',
],
diff --git a/skbio/diversity/_driver.py b/skbio/diversity/_driver.py
index 016020743..1a792efb6 100644
--- a/skbio/diversity/_driver.py
+++ b/skbio/diversity/_driver.py
@@ -296,7 +296,6 @@ def partial_beta_diversity(metric, counts, ids, id_pairs, validate=True,
"dice",
"hamming",
"jaccard",
- "kulsinski",
"mahalanobis",
"manhattan", # aliases to "cityblock" in beta_diversity
"matching",
@@ -314,7 +313,6 @@ def partial_beta_diversity(metric, counts, ids, id_pairs, validate=True,
_qualitative_beta_metrics = [
"dice",
"jaccard",
- "kulsinski",
"matching",
"rogerstanimoto",
"russellrao",
From 9dd9c6dd68a015f1159f884c57878b8a00fad14c Mon Sep 17 00:00:00 2001
From: Qiyun Zhu <qiyunzhu@gmail.com>
Date: Tue, 7 Nov 2023 22:42:10 -0700
Subject: [PATCH 2/2] fixing numpy exception
---
skbio/stats/tests/test_composition.py | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/skbio/stats/tests/test_composition.py b/skbio/stats/tests/test_composition.py
index 90921be5b..e720a594f 100644
--- a/skbio/stats/tests/test_composition.py
+++ b/skbio/stats/tests/test_composition.py
@@ -1222,7 +1222,7 @@ def test_ancom_fail_alpha(self):
ancom(self.table1, self.cats1, alpha=1.1)
def test_ancom_fail_multiple_groups(self):
- with self.assertRaises(TypeError):
+ with self.assertRaises((TypeError, np.AxisError)):
ancom(self.table4, self.cats4,
significance_test=scipy.stats.ttest_ind)

View File

@ -0,0 +1,23 @@
From 5eb1faf8ee2eac3057ef55c99dd3083242559b9e Mon Sep 17 00:00:00 2001
From: dbpercival <dbpercival@gmail.com>
Date: Sat, 8 Jul 2023 16:26:35 -0700
Subject: [PATCH] Update sapa_lapack.c
Stephen's suggested change
---
src/sapa_lapack.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/sapa_lapack.c b/src/sapa_lapack.c
index eff4851..a520e33 100644
--- a/src/sapa_lapack.c
+++ b/src/sapa_lapack.c
@@ -102,7 +102,7 @@ SEXP R_sapa_dpss(SEXP nsample, SEXP ntaper, SEXP bandwidth)
ISPLIT,
WORK1,
IWORK1,
- &INFO);
+ &INFO FCONE FCONE);
// if (INFO != 0)
// error(_("error code %d from LAPACK routine '%s'"), info, "dstebz");

View File

@ -1,122 +0,0 @@
From 0487cca29e352e8f16bbd91fda38e76e39a0ed28 Mon Sep 17 00:00:00 2001
From: Louis Dionne <ldionne.2@gmail.com>
Date: Tue, 15 Jun 2021 14:40:01 -0400
Subject: [PATCH] Work around broken integration with latest libc++. (#1635)
* Work around broken integration with latest libc++.
In newer versions of libc++, the base template of std::iterator_traits
provides a member typedef called __primary_template which is an alias
to the std::iterator_traits specialization itself. This fix works with
both the old version of libc++ and the new one.
Fixes issue #1633.
* Fix is_std_iterator_traits_specialized_v on MSVC
It used to pretend that std::iterator_traits<T*> is a user-defined
specialization, which isn't the case. This is due to MSVC's
iterator_traits<T*> specialization not posing as the base template.
---
include/std/detail/associated_types.hpp | 22 +++++++++++-----
test/CMakeLists.txt | 1 +
test/bug1633.cpp | 34 +++++++++++++++++++++++++
3 files changed, 51 insertions(+), 6 deletions(-)
create mode 100644 test/bug1633.cpp
diff --git a/include/std/detail/associated_types.hpp b/include/std/detail/associated_types.hpp
index b642166d4..449a3f91c 100644
--- a/include/std/detail/associated_types.hpp
+++ b/include/std/detail/associated_types.hpp
@@ -265,11 +265,22 @@ namespace ranges
template<typename I>
char is_std_iterator_traits_specialized_impl_(void *);
#elif defined(_LIBCPP_VERSION)
- template<typename I, bool B>
- char (
- &is_std_iterator_traits_specialized_impl_(std::__iterator_traits<I, B> *))[2];
+ // In older versions of libc++, the base template inherits from std::__iterator_traits<typename, bool>.
+ template<template<typename, bool> class IteratorTraitsBase, typename I, bool B>
+ char (&libcpp_iterator_traits_base_impl(IteratorTraitsBase<I, B> *))[2];
+ template<template<typename, bool> class IteratorTraitsBase, typename I>
+ char libcpp_iterator_traits_base_impl(void *);
+
+ // In newer versions, the base template has only one template parameter and provides the
+ // __primary_template typedef which aliases the iterator_traits specialization.
+ template<template<typename> class, typename I>
+ char (&libcpp_iterator_traits_base_impl(typename std::iterator_traits<I>::__primary_template *))[2];
+ template<template<typename> class, typename I>
+ char libcpp_iterator_traits_base_impl(void *);
+
template<typename I>
- char is_std_iterator_traits_specialized_impl_(void *);
+ auto is_std_iterator_traits_specialized_impl_(std::iterator_traits<I>* traits)
+ -> decltype(libcpp_iterator_traits_base_impl<std::__iterator_traits, I>(traits));
#elif defined(_MSVC_STL_VERSION)
template<typename I>
char (&is_std_iterator_traits_specialized_impl_(
@@ -287,14 +298,13 @@ namespace ranges
RANGES_INLINE_VAR constexpr bool is_std_iterator_traits_specialized_v =
1 == sizeof(is_std_iterator_traits_specialized_impl_<I>(
static_cast<std::iterator_traits<I> *>(nullptr)));
-
+#endif
// The standard iterator_traits<T *> specialization(s) do not count
// as user-specialized. This will no longer be necessary in C++20.
// This helps with `T volatile*` and `void *`.
template<typename T>
RANGES_INLINE_VAR constexpr bool is_std_iterator_traits_specialized_v<T *> =
false;
-#endif
} // namespace detail
/// \endcond
} // namespace ranges
diff --git a/test/CMakeLists.txt b/test/CMakeLists.txt
index 889f314af..2c2b7c09c 100644
--- a/test/CMakeLists.txt
+++ b/test/CMakeLists.txt
@@ -19,3 +19,4 @@ rv3_add_test(test.bug474 bug474 bug474.cpp)
rv3_add_test(test.bug566 bug566 bug566.cpp)
rv3_add_test(test.bug1322 bug1322 bug1322.cpp)
rv3_add_test(test.bug1335 bug1335 bug1335.cpp)
+rv3_add_test(test.bug1633 bug1633 bug1633.cpp)
diff --git a/test/bug1633.cpp b/test/bug1633.cpp
new file mode 100644
index 000000000..be52420ad
--- /dev/null
+++ b/test/bug1633.cpp
@@ -0,0 +1,34 @@
+// Range v3 library
+//
+// Use, modification and distribution is subject to the
+// Boost Software License, Version 1.0. (See accompanying
+// file LICENSE_1_0.txt or copy at
+// http://www.boost.org/LICENSE_1_0.txt)
+//
+// Project home: https://github.com/ericniebler/range-v3
+
+#include <cstddef>
+#include <iterator>
+#include <range/v3/iterator.hpp>
+
+struct X { };
+
+namespace std {
+ template<> struct iterator_traits<X> { };
+}
+
+struct Y {
+ using difference_type = std::ptrdiff_t;
+ using value_type = int;
+ using pointer = int*;
+ using reference = int&;
+ using iterator_category = std::forward_iterator_tag;
+};
+
+static_assert(ranges::detail::is_std_iterator_traits_specialized_v<X>, "");
+static_assert(!ranges::detail::is_std_iterator_traits_specialized_v<Y>, "");
+static_assert(!ranges::detail::is_std_iterator_traits_specialized_v<int*>, "");
+
+int main()
+{
+}

View File

@ -0,0 +1,31 @@
From bd54bd42c5933e4c571dcfd6a8afac8e52cf7366 Mon Sep 17 00:00:00 2001
From: Andreas Enge <andreas@enge.fr>
Date: Thu, 25 Jan 2024 12:13:18 +0100
Subject: [PATCH] Adapt libarb_s7.c to FLINT 3.
---
libarb_s7.c | 8 ++++----
1 file changed, 4 insertions(+), 4 deletions(-)
diff --git a/libarb_s7.c b/libarb_s7.c
index 7413ccc..d9e0084 100644
--- a/libarb_s7.c
+++ b/libarb_s7.c
@@ -6,10 +6,10 @@
#include <mpfr.h>
#include <mpc.h>
-#include <arb.h>
-#include <acb.h>
-#include <acb_hypgeom.h>
-#include <acb_elliptic.h>
+#include <flint/arb.h>
+#include <flint/acb.h>
+#include <flint/acb_hypgeom.h>
+#include <flint/acb_elliptic.h>
#define WITH_GMP 1
#include "s7.h"
--
2.41.0

Some files were not shown because too many files have changed in this diff Show More