Archived
1
0
Fork 0

Merge remote-tracking branch 'origin/master' into staging

Conflicts:
	gnu/packages/gnuzilla.scm
	gnu/packages/graphics.scm
	gnu/packages/gstreamer.scm
	gnu/packages/gtk.scm
	gnu/packages/kde-frameworks.scm
	gnu/packages/video.scm
This commit is contained in:
Efraim Flashner 2022-10-12 14:33:56 +03:00
commit 322917aeb8
No known key found for this signature in database
GPG key ID: 41AAE7DCCA3D8351
185 changed files with 164064 additions and 196401 deletions

1
NEWS
View file

@ -43,6 +43,7 @@ Please send Guix bug reports to bug-guix@gnu.org.
** Distribution
*** The installation script can now enable local substitute servers discovery
*** The installation script can now customize the Bash prompt for Guix
*** More control over boot-time file system checks and repairs
*** XFS file systems can be created by the installer and mounted by label/UUID
*** New interface for declaring swap space

View file

@ -1341,12 +1341,25 @@ guix pull --url=/path/to/your/checkout --profile=/tmp/guix.master
When posting a patch to the mailing list, use @samp{[PATCH] @dots{}} as
a subject, if your patch is to be applied on a branch other than
@code{master}, say @code{core-updates}, specify it in the subject like
@samp{[PATCH core-updates] @dots{}}. You may use your email client or
the @command{git send-email} command (@pxref{Sending a Patch Series}).
We prefer to get patches in plain text messages, either inline or as
MIME attachments. You are advised to pay attention if your email client
changes anything like line breaks or indentation which could potentially
break the patches.
@samp{[PATCH core-updates] @dots{}}.
@quotation Tip
To add a prefix to the subject of your patch, you may use the
@option{--subject-prefix} option of the @command{git format-patch} or
@command{git send-email} commands, for example:
@example
git send-email --subject-prefix='PATCH core-updates' \
--to=guix-patches@@gnu.org -1
@end example
For more information, run @samp{man git-format-patch} and @samp{man
git-send-email}.
@end quotation
You may use your email client or the @command{git send-email} command
(@pxref{Sending a Patch Series}). We prefer to get patches in plain
text messages, either inline or as MIME attachments. You are advised to
pay attention if your email client changes anything like line breaks or
indentation which could potentially break the patches.
Expect some delay when you submit your very first patch to
@email{guix-patches@@gnu.org}. You have to wait until you get an

View file

@ -107,6 +107,7 @@ Copyright @copyright{} 2022 Karl Hallsby@*
Copyright @copyright{} 2022 Justin Veilleux@*
Copyright @copyright{} 2022 Reily Siegel@*
Copyright @copyright{} 2022 Simon Streit@*
Copyright @copyright{} 2022 (@*
Permission is granted to copy, distribute and/or modify this document
under the terms of the GNU Free Documentation License, Version 1.3 or
@ -1590,7 +1591,7 @@ effectively running @code{guix-daemon} executable is upgraded.
@node Invoking guix-daemon
@section Invoking @command{guix-daemon}
@cindex @command{guix-daemon}
The @command{guix-daemon} program implements all the functionality to
access the store. This includes launching build processes, running the
garbage collector, querying the availability of a build result, etc. It
@ -2939,11 +2940,12 @@ chroot /mnt /bin/sh
@end example
@item
Source your @var{user} profile to setup the environment, where
@var{user} is the user name used for the Guix System you are attempting
to repair:
Source the system profile as well as your @var{user} profile to setup
the environment, where @var{user} is the user name used for the Guix
System you are attempting to repair:
@example sh
source /var/guix/profiles/system/profile/etc/profile
source /home/@var{user}/.guix-profile/etc/profile
@end example
@ -3314,6 +3316,7 @@ retaining precise @dfn{provenance tracking} of the software.
@cindex package installation
@cindex package removal
@cindex profile
@cindex @command{guix package}
The @command{guix package} command is the tool that allows users to
install, upgrade, and remove packages, as well as rolling back to
previous configurations. These operations work on a user
@ -4307,6 +4310,7 @@ guix package}).
@cindex garbage collector
@cindex disk space
@cindex @command{guix gc}
Packages that are installed, but not used, may be @dfn{garbage-collected}.
The @command{guix gc} command allows users to explicitly run the garbage
collector to reclaim space from the @file{/gnu/store} directory. It is
@ -4952,6 +4956,7 @@ declaration, and so on.
@cindex reproducibility
@cindex replicating Guix
@cindex @command{guix describe}
Often you may want to answer questions like: ``Which revision of Guix am I
using?'' or ``Which channels am I using?'' This is useful information in many
situations: if you want to @emph{replicate} an environment on a different
@ -5047,6 +5052,8 @@ Display information about @var{profile}.
@cindex @command{guix archive}
@cindex archive
@cindex exporting files from the store
@cindex importing files to the store
The @command{guix archive} command allows users to @dfn{export} files
from the store into a single archive, and to later @dfn{import} them on
a machine that runs Guix.
@ -5805,6 +5812,7 @@ easily distributed to users who do not run Guix.
@cindex reproducible build environments
@cindex development environments
@cindex @command{guix environment}
@cindex @command{guix shell}
@cindex environment, package build environment
The purpose of @command{guix shell} is to make it easy to create one-off
software environments, without changing one's profile. It is typically
@ -6235,6 +6243,8 @@ package transformation options (@pxref{Package Transformation Options}).
@node Invoking guix environment
@section Invoking @command{guix environment}
@cindex @command{guix environment}
The purpose of @command{guix environment} is to assist in creating
development environments.
@ -6614,6 +6624,8 @@ transformation options (@pxref{Package Transformation Options}).
@node Invoking guix pack
@section Invoking @command{guix pack}
@cindex @command{guix pack}
Occasionally you want to pass software to people who are not (yet!)
lucky enough to be using Guix. You'd tell them to run @command{guix
package -i @var{something}}, but that's not possible in this case. This
@ -7032,6 +7044,8 @@ for Fortran development. For other languages, please use
@node Invoking guix git authenticate
@section Invoking @command{guix git authenticate}
@cindex @command{guix git authenticate}
The @command{guix git authenticate} command authenticates a Git checkout
following the same rule as for channels (@pxref{channel-authentication,
channel authentication}). That is, starting from a given commit, it
@ -11797,6 +11811,7 @@ replaced with some arbitrary object -- currently the list
@node Invoking guix repl
@section Invoking @command{guix repl}
@cindex @command{guix repl}
@cindex REPL, read-eval-print loop, script
The @command{guix repl} command makes it easier to program Guix in Guile
by launching a Guile @dfn{read-eval-print loop} (REPL) for interactive
@ -12364,14 +12379,15 @@ one provided by the distribution. The example below downloads
the @code{ed} package:
@example
guix build ed --with-source=mirror://gnu/ed/ed-1.7.tar.gz
guix build ed --with-source=mirror://gnu/ed/ed-1.4.tar.gz
@end example
As a developer, @option{--with-source} makes it easy to test release
candidates:
candidates, and even to test their impact on packages that depend on
them:
@example
guix build guile --with-source=../guile-2.0.9.219-e1bb7.tar.xz
guix build elogind --with-source=@dots{}/shepherd-0.9.0rc1.tar.gz
@end example
@dots{} or to build from a checkout in a pristine environment:
@ -13238,7 +13254,7 @@ guix import gem rails
You can also ask for a specific version:
@example
guix import gem @@7.0.4
guix import gem rails@@7.0.4
@end example
@table @code
@ -14101,6 +14117,11 @@ otherwise.
@node Invoking guix style
@section Invoking @command{guix style}
@cindex @command{guix style}
@cindex styling rules
@cindex lint, code style
@cindex format, code style
@cindex format conventions
The @command{guix style} command helps users and packagers alike style
their package definitions and configuration files according to the
latest fashionable trends. It can either reformat whole files, with the
@ -15339,6 +15360,7 @@ information about mismatches.
@node Invoking guix copy
@section Invoking @command{guix copy}
@cindex @command{guix copy}
@cindex copy, of store items, over SSH
@cindex SSH, copy of store items
@cindex sharing store items across machines
@ -15456,6 +15478,7 @@ must be PID 1 of the container or one of its child processes.
@node Invoking guix weather
@section Invoking @command{guix weather}
@cindex @command{guix weather}
Occasionally you're grumpy because substitutes are lacking and you end
up building packages by yourself (@pxref{Substitutes}). The
@command{guix weather} command reports on substitute availability on the
@ -15586,6 +15609,7 @@ Display the list of store items for which substitutes are missing.
@node Invoking guix processes
@section Invoking @command{guix processes}
@cindex @command{guix processes}
The @command{guix processes} command can be useful to developers and system
administrators, especially on multi-user machines and on build farms: it lists
the current sessions (connections to the daemon), as well as information about
@ -16289,7 +16313,7 @@ The default set includes core utilities and it is good practice to
install non-core utilities in user profiles (@pxref{Invoking guix
package}).
@item @code{timezone}
@item @code{timezone} (default: @code{"Etc/UTC"})
A timezone identifying string---e.g., @code{"Europe/Paris"}.
You can run the @command{tzselect} command to find out which timezone
@ -17530,6 +17554,7 @@ declaration.
* Web Services:: Web servers.
* Certificate Services:: TLS certificates via Let's Encrypt.
* DNS Services:: DNS daemons.
* VNC Services:: VNC daemons.
* VPN Services:: VPN daemons.
* Network File System:: NFS related services.
* Samba Services:: Samba services.
@ -18656,6 +18681,81 @@ are set right after mentioned variables, so that they can be overriden.
@end table
@end deftp
@deftp {Data Type} greetd-wlgreet-session
Generic configuration record for the wlgreet greetd greeter.
@table @asis
@item @code{wlgreet} (default: @code{wlgreet})
The package with the @command{/bin/wlgreet} command.
@item @code{command} (default: @code{(file-append sway "/bin/sway")})
Command to be started by @command{/bin/wlgreet} on successful login.
@item @code{command-args} (default: @code{'()})
Command arguments to pass to command.
@item @code{output-mode} (default: @code{"all"})
Option to use for @code{outputMode} in the TOML configuration file.
@item @code{scale} (default: @code{1})
Option to use for @code{scale} in the TOML configuration file.
@item @code{background} (default: @code{'(0 0 0 0.9)})
RGBA list to use as the background colour of the login prompt.
@item @code{headline} (default: @code{'(1 1 1 1)})
RGBA list to use as the headline colour of the UI popup.
@item @code{prompt} (default: @code{'(1 1 1 1)})
RGBA list to use as the prompt colour of the UI popup.
@item @code{prompt-error} (default: @code{'(1 1 1 1)})
RGBA list to use as the error colour of the UI popup.
@item @code{border} (default: @code{'(1 1 1 1)})
RGBA list to use as the border colour of the UI popup.
@item @code{extra-env} (default: @code{'()})
Extra environment variables to set on login.
@end table
@end deftp
@deftp {Data Type} greetd-wlgreet-sway-session
Sway-specific configuration record for the wlgreet greetd greeter.
@table @asis
@item @code{wlgreet-session} (default: @code{(greetd-wlgreet-session)})
A @code{greetd-wlgreet-session} record for generic wlgreet configuration,
on top of the Sway-specific @code{greetd-wlgreet-sway-session}.
@item @code{sway} (default: @code{sway})
The package providing the @command{/bin/sway} command.
@item @code{sway-configuration} (default: #f)
File-like object providing an additional Sway configuration file to be
prepended to the mandatory part of the configuration.
@end table
Here is an example of a greetd configuration that uses wlgreet and Sway:
@lisp
(greetd-configuration
;; We need to give the greeter user these permissions, otherwise
;; Sway will crash on launch.
(greeter-supplementary-groups (list "video" "input" "seat"))
(terminals
(list (greetd-terminal-configuration
(terminal-vt "1")
(terminal-switch #t)
(default-session-command
(greetd-wlgreet-sway-session
(sway-configuration
(local-file "sway-greetd.conf"))))))))
@end lisp
@end deftp
@node Scheduled Job Execution
@subsection Scheduled Job Execution
@ -19175,8 +19275,8 @@ This is the data type representing a network route.
@table @asis
@item @code{destination}
The route destination (a string), either an IP address or
@code{"default"} to denote the default route.
The route destination (a string), either an IP address and network mask
or @code{"default"} to denote the default route.
@item @code{source} (default: @code{#f})
The route source.
@ -19227,10 +19327,26 @@ the user mode network stack,,, QEMU, QEMU Documentation}).
@cindex DHCP, networking service
@defvr {Scheme Variable} dhcp-client-service-type
This is the type of services that run @var{dhcp}, a Dynamic Host Configuration
Protocol (DHCP) client, on all the non-loopback network interfaces. Its value
is the DHCP client package to use, @code{isc-dhcp} by default.
Protocol (DHCP) client.
@end defvr
@deftp {Data Type} dhcp-client-configuration
Data type representing the configuration of the DHCP client service.
@table @asis
@item @code{package} (default: @code{isc-dhcp})
DHCP client package to use.
@item @code{interfaces} (default: @code{'all})
Either @code{'all} or the list of interface names that the DHCP client
should listen on---e.g., @code{'("eno1")}.
When set to @code{'all}, the DHCP client listens on all the available
non-loopback interfaces that can be activated. Otherwise the DHCP
client listens only on the specified interfaces.
@end table
@end deftp
@cindex NetworkManager
@defvr {Scheme Variable} network-manager-service-type
@ -19460,7 +19576,7 @@ For example:
The package that provides the DHCP daemon. This package is expected to
provide the daemon at @file{sbin/dhcpd} relative to its output
directory. The default package is the
@uref{https://www.isc.org/products/DHCP, ISC's DHCP server}.
@uref{https://www.isc.org/dhcp/, ISC's DHCP server}.
@item @code{config-file} (default: @code{#f})
The configuration file to use. This is required. It will be passed to
@code{dhcpd} via its @code{-cf} option. This may be any ``file-like''
@ -21022,6 +21138,7 @@ started by the @dfn{login manager}, by default the GNOME Display Manager (GDM).
@cindex GDM
@cindex GNOME, login manager
@anchor{gdm}
GDM of course allows users to log in into window managers and desktop
environments other than GNOME; for those using GNOME, GDM is required for
features such as automatic screen locking.
@ -21067,6 +21184,12 @@ When @code{auto-login?} is false, GDM presents a log-in screen.
When @code{auto-login?} is true, GDM logs in directly as
@code{default-user}.
@item @code{auto-suspend?} (default @code{#t})
When true, GDM will automatically suspend to RAM when nobody is
physically connected. When a machine is used via remote desktop or SSH,
this should be set to false to avoid GDM interrupting remote sessions or
rendering the machine unavailable.
@item @code{debug?} (default: @code{#f})
When true, GDM writes debug messages to its log.
@ -21079,6 +21202,12 @@ Configuration of the Xorg graphical server.
@item @code{x-session} (default: @code{(xinitrc)})
Script to run before starting a X session.
@item @code{xdmcp?} (default: @code{#f})
When true, enable the X Display Manager Control Protocol (XDMCP). This
should only be enabled in trusted environments, as the protocol is not
secure. When enabled, GDM listens for XDMCP queries on the UDP port
177.
@item @code{dbus-daemon} (default: @code{dbus-daemon-wrapper})
File name of the @code{dbus-daemon} executable.
@ -21311,6 +21440,7 @@ Relogin after logout.
@cindex lightdm, graphical login manager
@cindex display manager, lightdm
@anchor{lightdm}
@defvr {Scheme Variable} lightdm-service-type
This is the type of the service to run the
@url{https://github.com/canonical/lightdm,LightDM display manager}. Its
@ -21514,10 +21644,11 @@ Extra configuration values to append to the seat configuration section.
@cindex Xorg, configuration
@deftp {Data Type} xorg-configuration
This data type represents the configuration of the Xorg graphical display
server. Note that there is no Xorg service; instead, the X server is started
by a ``display manager'' such as GDM, SDDM, and SLiM@. Thus, the configuration
of these display managers aggregates an @code{xorg-configuration} record.
This data type represents the configuration of the Xorg graphical
display server. Note that there is no Xorg service; instead, the X
server is started by a ``display manager'' such as GDM, SDDM, LightDM or
SLiM@. Thus, the configuration of these display managers aggregates an
@code{xorg-configuration} record.
@table @asis
@item @code{modules} (default: @code{%default-xorg-modules})
@ -30784,6 +30915,157 @@ Defaults to @samp{()}.
@c %end of fragment
@node VNC Services
@subsection VNC Services
@cindex VNC (virtual network computing)
@cindex XDMCP (x display manager control protocol)
The @code{(gnu services vnc)} module provides services related to
@dfn{Virtual Network Computing} (VNC), which makes it possible to
locally use graphical Xorg applications running on a remote machine.
Combined with a graphical manager that supports the @dfn{X Display
Manager Control Protocol}, such as GDM (@pxref{gdm}) or LightDM
(@pxref{lightdm}), it is possible to remote an entire desktop for a
multi-user environment.
@subsubheading Xvnc
Xvnc is a VNC server that spawns its own X window server; which means it
can run on headless servers. The Xvnc implementations provided by the
@code{tigervnc-server} and @code{turbovnc} aim to be fast and efficient.
@defvar {Scheme Variable} xvnc-service-type
The @code{xvnc-server-type} service can be configured via the
@code{xvnc-configuration} record, documented below. A second virtual
display could be made available on a remote machine for via the
following configuration:
@end defvar
@lisp
(service xvnc-service-type (xvnc-configuration (display-number 10)
@end lisp
As a demonstration, the @command{xclock} command could then be started
on the remote machine on display number 10, and it could be display
locally via the @command{vncviewer} command:
@example
# Start xclock on the remote machine.
ssh -L5910:localhost:5910 -- guix shell xclock -- env DISPLAY=:10 xclock
# Access it via VNC.
guix shell tigervnc-client -- vncviewer localhost:5910
@end example
The following configuration combines XDMCP and Inetd to allow multiple
users to concurrently use the remote system, login in graphically via
the GDM display manager:
@lisp
(operating-system
[...]
(services (cons*
[...]
(service xvnc-service-type (xvnc-configuration
(display-number 5)
(localhost? #f)
(xdmcp? #t)
(inetd? #t)))
(modify-services %desktop-services
(gdm-service-type config => (gdm-configuration
(inherit config)
(auto-suspend? #f)
(xdmcp? #t)))))))
@end lisp
A remote user could then connect to it by using the @command{vncviewer}
command or a compatible VNC client and start a desktop session of their
choosing:
@example
vncviewer remote-host:5905
@end example
@quotation Warning
Unless your machine is in a controlled environment, for security
reasons, the @code{localhost?} configuration of the
@code{xvnc-configuration} record should be left to its default @code{#t}
value and exposed via a secure means such as an SSH port forward. The
XDMCP port, UDP 177 should also be blocked from the outside by a
firewall, as it is not a secure protocol and can expose login
credentials in clear.
@end quotation
@c Use (configuration->documentation 'xvnc-configuration) to regenerate
@c the documentation.
@c %start of fragment
@deftp {Data Type} xvnc-configuration
Available @code{xvnc-configuration} fields are:
@table @asis
@item @code{xvnc} (default: @code{tigervnc-server}) (type: file-like)
The package that provides the Xvnc binary.
@item @code{display-number} (default: @code{0}) (type: number)
The display number used by Xvnc. You should set this to a number not
already used a Xorg server.
@item @code{geometry} (default: @code{"1024x768"}) (type: string)
The size of the desktop to be created.
@item @code{depth} (default: @code{24}) (type: color-depth)
The pixel depth in bits of the desktop to be created. Accepted values
are 16, 24 or 32.
@item @code{port} (type: maybe-port)
The port on which to listen for connections from viewers. When left
unspecified, it defaults to 5900 plus the display number.
@item @code{ipv4?} (default: @code{#t}) (type: boolean)
Use IPv4 for incoming and outgoing connections.
@item @code{ipv6?} (default: @code{#t}) (type: boolean)
Use IPv6 for incoming and outgoing connections.
@item @code{password-file} (type: maybe-string)
The password file to use, if any. Refer to vncpasswd(1) to learn how to
generate such a file.
@item @code{xdmcp?} (default: @code{#f}) (type: boolean)
Query the XDMCP server for a session. This enables users to log in a
desktop session from the login manager screen. For a multiple users
scenario, you'll want to enable the @code{inetd?} option as well, so
that each connection to the VNC server is handled separately rather than
shared.
@item @code{inetd?} (default: @code{#f}) (type: boolean)
Use an Inetd-style service, which runs the Xvnc server on demand.
@item @code{frame-rate} (default: @code{60}) (type: number)
The maximum number of updates per second sent to each client.
@item @code{security-types} (default: @code{("None")}) (type: security-types)
The allowed security schemes to use for incoming connections. The
default is "None", which is safe given that Xvnc is configured to
authenticate the user via the display manager, and only for local
connections. Accepted values are any of the following: ("None"
"VncAuth" "Plain" "TLSNone" "TLSVnc" "TLSPlain" "X509None" "X509Vnc")
@item @code{localhost?} (default: @code{#t}) (type: boolean)
Only allow connections from the same machine. It is set to #true by
default for security, which means SSH or another secure means should be
used to expose the remote port.
@item @code{log-level} (default: @code{30}) (type: log-level)
The log level, a number between 0 and 100, 100 meaning most verbose
output. The log messages are output to syslog.
@item @code{extra-options} (default: @code{()}) (type: strings)
This can be used to provide extra Xvnc options not exposed via this
<xvnc-configuration> record.
@end table
@end deftp
@c %end of fragment
@node VPN Services
@subsection VPN Services
@ -35658,6 +35940,9 @@ will use the current system it's running on as the default.
@item @code{max-parallel-builds} (default: @code{1})
The number of builds to perform in parallel.
@item @code{max-allocated-builds} (default: @code{#f})
The maximum number of builds this agent can be allocated.
@item @code{max-1min-load-average} (default: @code{#f})
Load average value to look at when considering starting new builds, if
the 1 minute load average exceeds this value, the agent will wait before
@ -37790,8 +38075,9 @@ like
@end lisp
@node Invoking guix system
@section Invoking @code{guix system}
@section Invoking @command{guix system}
@cindex @command{guix system}
Once you have written an operating system declaration as seen in the
previous section, it can be @dfn{instantiated} using the @command{guix
system} command. The synopsis is:
@ -38436,8 +38722,9 @@ Again, the default output format is Dot/Graphviz, but you can pass
@end table
@node Invoking guix deploy
@section Invoking @code{guix deploy}
@section Invoking @command{guix deploy}
@cindex @command{guix deploy}
We've already seen @code{operating-system} declarations used to manage a
machine's configuration locally. Suppose you need to configure multiple
machines, though---perhaps you're managing a service on the web that's
@ -40152,12 +40439,13 @@ services)}.
@menu
* Essential Home Services:: Environment variables, packages, on-* scripts.
* Shells: Shells Home Services. POSIX shells, Bash, Zsh.
* Mcron: Mcron Home Service. Scheduled User's Job Execution.
* Shepherd: Shepherd Home Service. Managing User's Daemons.
* SSH: Secure Shell. Setting up the secure shell client.
* Desktop: Desktop Home Services. Services for graphical environments.
* Guix: Guix Home Services. Services for Guix.
* Shells: Shells Home Services. POSIX shells, Bash, Zsh.
* Mcron: Mcron Home Service. Scheduled User's Job Execution.
* Power Management: Power Management Home Services. Services for battery power.
* Shepherd: Shepherd Home Service. Managing User's Daemons.
* SSH: Secure Shell. Setting up the secure shell client.
* Desktop: Desktop Home Services. Services for graphical environments.
* Guix: Guix Home Services. Services for Guix.
@end menu
@c In addition to that Home Services can provide
@ -40605,6 +40893,82 @@ specifications,, mcron, GNU@tie{}mcron}).
@end table
@end deftp
@node Power Management Home Services
@subsection Power Management Home Services
@cindex power management
The @code{(gnu home services pm)} module provides home services
pertaining to battery power.
@defvr {Scheme Variable} home-batsignal-service-type
Service for @code{batsignal}, a program that monitors battery levels
and warns the user through desktop notifications when their battery
is getting low. You can also configure a command to be run when the
battery level passes a point deemed ``dangerous''. This service is
configured with the @code{home-batsignal-configuration} record.
@end defvr
@deftp {Data Type} home-batsignal-configuration
Data type representing the configuration for batsignal.
@table @asis
@item @code{warning-level} (default: @code{15})
The battery level to send a warning message at.
@item @code{warning-message} (default: @code{#f})
The message to send as a notification when the battery level reaches
the @code{warning-level}. Setting to @code{#f} uses the default
message.
@item @code{critical-level} (default: @code{5})
The battery level to send a critical message at.
@item @code{critical-message} (default: @code{#f})
The message to send as a notification when the battery level reaches
the @code{critical-level}. Setting to @code{#f} uses the default
message.
@item @code{danger-level} (default: @code{2})
The battery level to run the @code{danger-command} at.
@item @code{danger-command} (default: @code{#f})
The command to run when the battery level reaches the @code{danger-level}.
Setting to @code{#f} disables running the command entirely.
@item @code{full-level} (default: @code{#f})
The battery level to send a full message at. Setting to @code{#f}
disables sending the full message entirely.
@item @code{full-message} (default: @code{#f})
The message to send as a notification when the battery level reaches
the @code{full-level}. Setting to @code{#f} uses the default message.
@item @code{batteries} (default: @code{'()})
The batteries to monitor. Setting to @code{'()} tries to find batteries
automatically.
@item @code{poll-delay} (default: @code{60})
The time in seconds to wait before checking the batteries again.
@item @code{icon} (default: @code{#f})
A file-like object to use as the icon for battery notifications. Setting
to @code{#f} disables notification icons entirely.
@item @code{notifications?} (default: @code{#t})
Whether to send any notifications.
@item @code{notifications-expire?} (default: @code{#f})
Whether notifications sent expire after a time.
@item @code{notification-command} (default: @code{#f})
Command to use to send messages. Setting to @code{#f} sends a notification
through @code{libnotify}.
@item @code{ignore-missing?} (default: @code{#f})
Whether to ignore missing battery errors.
@end table
@end deftp
@node Shepherd Home Service
@subsection Managing User Daemons
@ -40931,7 +41295,9 @@ A typical extension for adding a channel might look like this:
@end defvr
@node Invoking guix home
@section Invoking @code{guix home}
@section Invoking @command{guix home}
@cindex @command{guix home}
Once you have written a home environment declaration (@pxref{Declaring
the Home Environment,,,,}, it can be @dfn{instantiated} using the

View file

@ -9,7 +9,7 @@
# Copyright © 2020 Daniel Brooks <db48x@db48x.net>
# Copyright © 2021 Jakub Kądziołka <kuba@kadziolka.net>
# Copyright © 2021 Chris Marusich <cmmarusich@gmail.com>
# Copyright © 2021 Maxim Cournoyer <maxim.cournoyer@gmail.com>
# Copyright © 2021, 2022 Maxim Cournoyer <maxim.cournoyer@gmail.com>
#
# This file is part of GNU Guix.
#
@ -92,17 +92,20 @@ _debug()
fi
}
# Return true if user answered yes, false otherwise.
die()
{
_err "${ERR}$*"
exit 1
}
# Return true if user answered yes, false otherwise. The prompt is
# yes-biased, that is, when the user simply enter newline, it is equivalent to
# answering "yes".
# $1: The prompt question.
prompt_yes_no() {
while true; do
read -rp "$1 " yn
case $yn in
[Yy]*) return 0;;
[Nn]*) return 1;;
*) _msg "Please answer yes or no."
esac
done
local -l yn
read -rp "$1 [Y/n]" yn
[[ ! $yn || $yn = y || $yn = yes ]] || return 1
}
chk_require()
@ -137,7 +140,7 @@ chk_gpg_keyring()
if ! gpg --dry-run --list-keys "$gpg_key_id" >/dev/null 2>&1; then
if prompt_yes_no "${INF}The following OpenPGP public key is \
required to verify the Guix binary signature: $gpg_key_id.
Would you like me to fetch it for you? (yes/no)"; then
Would you like me to fetch it for you?"; then
wget "https://sv.gnu.org/people/viewgpg.php?user_id=$user_id" \
--no-verbose -O- | gpg --import -
else
@ -220,8 +223,7 @@ chk_sys_arch()
local arch=powerpc64le
;;
*)
_err "${ERR}Unsupported CPU type: ${arch}"
exit 1
die "Unsupported CPU type: ${arch}"
esac
case "$os" in
@ -229,8 +231,7 @@ chk_sys_arch()
local os=linux
;;
*)
_err "${ERR}Your operation system (${os}) is not supported."
exit 1
die "Your operation system (${os}) is not supported."
esac
ARCH_OS="${arch}-${os}"
@ -254,7 +255,7 @@ chk_sys_nscd()
configure_substitute_discovery() {
if grep -q -- '--discover=no' "$1" && \
prompt_yes_no "Would you like the Guix daemon to automatically \
discover substitute servers on the local network? (yes/no)"; then
discover substitute servers on the local network?"; then
sed -i 's/--discover=no/--discover=yes/' "$1"
fi
}
@ -285,8 +286,7 @@ guix_get_bin_list()
if [[ "${#bin_ver_ls}" -ne "0" ]]; then
_msg "${PAS}Release for your system: ${default_ver}"
else
_err "${ERR}Could not obtain list of Guix releases."
exit 1
die "Could not obtain list of Guix releases."
fi
# Use default to download according to the list and local ARCH_OS.
@ -311,8 +311,7 @@ guix_get_bin()
"${url}/${bin_ver}.tar.xz" "${url}/${bin_ver}.tar.xz.sig"; then
_msg "${PAS}download completed."
else
_err "${ERR}could not download ${url}/${bin_ver}.tar.xz."
exit 1
die "could not download ${url}/${bin_ver}.tar.xz."
fi
pushd "${dl_path}" >/dev/null
@ -320,8 +319,7 @@ guix_get_bin()
_msg "${PAS}Signature is valid."
popd >/dev/null
else
_err "${ERR}could not verify the signature."
exit 1
die "could not verify the signature."
fi
}
@ -333,8 +331,7 @@ sys_create_store()
_debug "--- [ ${FUNCNAME[0]} ] ---"
if [[ -e "/var/guix" || -e "/gnu" ]]; then
_err "${ERR}A previous Guix installation was found. Refusing to overwrite."
exit 1
die "A previous Guix installation was found. Refusing to overwrite."
fi
cd "$tmp_path"
@ -490,7 +487,7 @@ sys_enable_guix_daemon()
sys_authorize_build_farms()
{ # authorize the public key of the build farm
if prompt_yes_no "Permit downloading pre-built package binaries from the \
project's build farm? (yes/no)"; then
project's build farm?"; then
guix archive --authorize \
< ~root/.config/guix/current/share/guix/ci.guix.gnu.org.pub \
&& _msg "${PAS}Authorized public key for ci.guix.gnu.org"
@ -557,6 +554,24 @@ sys_create_shell_completion()
_msg "${PAS}installed shell completion"
}
sys_customize_bashrc()
{
prompt_yes_no "Customize users Bash shell prompt for Guix?" || return
for bashrc in /home/*/.bashrc /root/.bashrc; do
test -f "$bashrc" || continue
grep -Fq '$GUIX_ENVIRONMENT' "$bashrc" && continue
cp "${bashrc}" "${bashrc}.bak"
echo '
# Automatically added by the Guix install script.
if [ -n "$GUIX_ENVIRONMENT" ]; then
if [[ $PS1 =~ (.*)"\\$" ]]; then
PS1="${BASH_REMATCH[1]} [env]\\\$ "
fi
fi
' >> "$bashrc"
done
_msg "${PAS}Bash shell prompt successfully customized for Guix"
}
welcome()
{
@ -626,6 +641,7 @@ main()
sys_authorize_build_farms
sys_create_init_profile
sys_create_shell_completion
sys_customize_bashrc
_msg "${INF}cleaning up ${tmp_path}"
rm -r "${tmp_path}"

View file

@ -25,6 +25,48 @@
(channel-news
(version 0)
(entry (commit "28ade1bab207974cce6a014e7187968511fc5526")
(title
(en "@option{--with-source} is now recursive")
(de "@option{--with-source} ist jetzt rekursiv")
(fr "@option{--with-source} est dorénavant récursive")
(pt "@option{--with-source} agora é recursiva"))
(body
(en "The @option{--with-source} package transformation option now
uses the specified source for all matching packages, including dependencies.
This option is useful for all package maintainers, developers, and, in
general, all users who want Guix to facilitate their rights to modify their
software and share their changes.
Run @command{info \"(guix) Package Transformation Options\"} for more
info.")
(de "Die Paketumwandlungsoption @option{--with-source} wird jetzt den
angegebenen Quellcode für sämtliche passende Pakete benutzen, Abhängigkeiten
eingeschlossen. Die Option hilft Paketbetreuern, Entwicklern und allgemein allen
Nutzern, die Guix benutzen, das Recht, ihre Software anzupassen und
Änderungen zu teilen, leichter auszuüben.
Führen Sie für mehr Informationen @command{info \"(guix.de)
Paketumwandlungsoptionen\"} aus.")
(fr "L'option de transformation de paquet @option{--with-source}
s'applique désormais à tous les paquets correspondant, y compris les
dépendances. Cette option est utile pour les personnes qui maintiennent un
logiciel, en développent un ou, plus généralement, pour toute personne qui
souhaite que Guix facilite l'exercice de ses droits à modifier le logiciel et
à partager ses changements.
Lancer @command{info \"(guix.fr) Options de transformation de paquets\"} pour
plus d'informations.")
(pt "A opção de transformação de pacote @option{--with-source} agora
usa a fonte especificada para todos os pacotes correspondentes, incluindo
dependências. Essa opção é útil para todos os mantenedores de pacotes,
desenvolvedores e usuários em geral que querem que o Guix facilite seu direito
de modificar seu software e compartilhar suas mudanças.
Execute @command{info \"(guix) Package Transformation Options\"} para mais
informações.")))
(entry (commit "a13f5ead0265cf0fe11e60150547c09dfc8c45b0")
(title
(en "Guix System image creation is now documented")

View file

@ -2,117 +2,154 @@
text-mode :when (and (fboundp 'git-commit-mode) (git-commit-mode))
(add\
"gnu: Add "
(p
(with-temp-buffer
(magit-git-wash #'magit-diff-wash-diffs
"diff" "--staged")
(goto-char (point-min))
(when (re-search-forward "\\+(define-public \\(\\S-+\\)" nil 'noerror)
(match-string-no-properties 1)))
var ) "." n n
"* " (car (magit-staged-files)) " (" (s var ) "): New variable.")
(add\ "gnu: Add "
(p (with-temp-buffer
(magit-git-wash #'magit-diff-wash-diffs
"diff" "--staged")
(goto-char (point-min))
(when (re-search-forward "\\+(define-public \\(\\S-+\\)"
nil 'noerror)
(match-string-no-properties 1)))
var)
"." n n
"* " (car (magit-staged-files)) " (" (s var ) "): New variable.")
(remove\
"gnu: Remove "
(p (with-temp-buffer
(magit-git-wash #'magit-diff-wash-diffs
"diff" "--staged")
(goto-char (point-min))
(when (re-search-forward "\\-(define-public \\(\\S-+\\)" nil 'noerror)
(match-string-no-properties 1)))
var) "." n n
"* " (car (magit-staged-files)) " (" (s var) "): Delete variable.")
(remove\ "gnu: Remove "
(p (with-temp-buffer
(magit-git-wash #'magit-diff-wash-diffs
"diff" "--staged")
(goto-char (point-min))
(when (re-search-forward "\\-(define-public \\(\\S-+\\)"
nil 'noerror)
(match-string-no-properties 1)))
var)
"." n n
"* " (car (magit-staged-files)) " (" (s var) "): Delete variable.")
(rename\
"gnu: "
(p (with-temp-buffer
(magit-git-wash #'magit-diff-wash-diffs
"diff" "--staged")
(beginning-of-buffer)
(when (search-forward "-(define-public " nil 'noerror)
(thing-at-point 'sexp 'no-properties)))
prev-var)
": Rename package to "
(p (with-temp-buffer
(magit-git-wash #'magit-diff-wash-diffs
"diff" "--staged")
(beginning-of-buffer)
(when (search-forward "+(define-public " nil 'noerror)
(thing-at-point 'sexp 'no-properties)))
new-var) "." n n
"* " (car (magit-staged-files)) " (" (s prev-var) "): Define in terms of" n
"'deprecated-package'." n
"(" (s new-var) "): New variable, formerly known as \"" (s prev-var) "\".")
(rename\ "gnu: "
(p (with-temp-buffer
(magit-git-wash #'magit-diff-wash-diffs
"diff" "--staged")
(beginning-of-buffer)
(when (search-forward "-(define-public " nil 'noerror)
(thing-at-point 'sexp 'no-properties)))
prev-var)
": Rename package to "
(p (with-temp-buffer
(magit-git-wash #'magit-diff-wash-diffs
"diff" "--staged")
(beginning-of-buffer)
(when (search-forward "+(define-public " nil 'noerror)
(thing-at-point 'sexp 'no-properties)))
new-var)
"." n n
"* " (car (magit-staged-files)) " (" (s prev-var) "): "
"Define in terms of" n
"'deprecated-package'." n
"(" (s new-var) "): New variable, formerly known as \""
(s prev-var) "\".")
(update\
"gnu: "
(p (with-temp-buffer
(magit-git-wash #'magit-diff-wash-diffs
"diff" "--staged")
(goto-char (point-min))
(when (re-search-forward "^[ ]*(define-public \\(\\S-+\\)" nil 'noerror)
(match-string-no-properties 1)))
var)
": Update to "
(p (with-temp-buffer
(magit-git-wash #'magit-diff-wash-diffs
"diff" "--staged")
(goto-char (point-min))
(search-forward "name" nil 'noerror)
(search-forward "+" nil 'noerror) ; first change
(when (and (search-forward "version " nil 'noerror)
(looking-at-p "\""))
(let ((end (save-excursion (search-forward "\")" nil 'noerror))))
(when end
(forward-char)
(buffer-substring-no-properties (point) (- end 2))))))
version) "." n n
"* " (car (magit-staged-files)) " (" (s var) "): Update to " (s version) "."
(mapconcat (lambda (file) (concat "* " file)) (cdr (magit-staged-files))) n)
(update\ "gnu: "
(p (with-temp-buffer
(magit-git-wash #'magit-diff-wash-diffs
"diff" "--staged")
(goto-char (point-min))
(when (re-search-forward "^[ ]*(define-public \\(\\S-+\\)"
nil 'noerror)
(match-string-no-properties 1)))
var)
": Update to "
(p (with-temp-buffer
(magit-git-wash #'magit-diff-wash-diffs
"diff" "--staged")
(goto-char (point-min))
(search-forward "name" nil 'noerror)
(search-forward "+" nil 'noerror) ; first change
(when (and (search-forward "version " nil 'noerror)
(looking-at-p "\""))
(let ((end (save-excursion (search-forward "\")"
nil 'noerror))))
(when end
(forward-char)
(buffer-substring-no-properties (point) (- end 2))))))
version)
"." n n
"* " (car (magit-staged-files)) " (" (s var) "): "
"Update to " (s version) "." n
(mapconcat (lambda (file) (concat "* " file))
(cdr (magit-staged-files))
"\n"))
(addcl\
"gnu: Add cl-"
(p (replace-regexp-in-string
"^cl-" "" (with-temp-buffer
(magit-git-wash #'magit-diff-wash-diffs
"diff" "--staged")
(beginning-of-buffer)
(when (search-forward "+(define-public " nil 'noerror)
(replace-regexp-in-string
"^sbcl-" ""
(thing-at-point 'sexp 'no-properties)))))
var) "." n n
"* " (car (magit-staged-files))
" (cl-" (s var) ", ecl-" (s var) ", sbcl-" (s var) "): New variables.")
(addcl\ "gnu: Add cl-"
(p (replace-regexp-in-string
"^cl-" "" (with-temp-buffer
(magit-git-wash #'magit-diff-wash-diffs
"diff" "--staged")
(beginning-of-buffer)
(when (search-forward "+(define-public " nil 'noerror)
(replace-regexp-in-string
"^sbcl-" ""
(thing-at-point 'sexp 'no-properties)))))
var)
"." n n
"* " (car (magit-staged-files))
" (cl-" (s var)
", ecl-" (s var)
", sbcl-" (s var) "): New variables.")
(https\
"gnu: "
(p (with-temp-buffer
(magit-git-wash #'magit-diff-wash-diffs
"diff" "--staged")
(goto-char (point-min))
(when (re-search-forward "^[ ]*(define-public \\(\\S-+\\)" nil 'noerror)
(match-string-no-properties 1)))
var)
": Use HTTPS home page." n n
"* " (car (magit-staged-files)) " (" (s var) ")[home-page]: Use HTTPS." n
(mapconcat (lambda (file) (concat "* " file)) (cdr (magit-staged-files))) n)
(https\ "gnu: "
(p (with-temp-buffer
(magit-git-wash #'magit-diff-wash-diffs
"diff" "--staged")
(goto-char (point-min))
(when (re-search-forward "^[ ]*(define-public \\(\\S-+\\)"
nil 'noerror)
(match-string-no-properties 1)))
var)
": Use HTTPS home page." n n
"* " (car (magit-staged-files)) " (" (s var) ")[home-page]: Use HTTPS."
n
(mapconcat (lambda (file) (concat "* " file))
(cdr (magit-staged-files))
"\n"))
(move\
"gnu: "
(p (with-temp-buffer
(magit-git-wash #'magit-diff-wash-diffs
"diff" "--staged")
(goto-char (point-min))
(when (re-search-forward "\\-(define-public \\(\\S-+\\)" nil 'noerror)
(match-string-no-properties 1)))
var)
": Move to "
(concat "("
(string-replace "\.scm" ""
(string-replace "/" " " (car (magit-staged-files))))
").") n
n "* " (car (magit-staged-files)) " (" (s var) "): Move from here…"
n "* " (cadr (magit-staged-files)) " (" (s var) "): …to here.")
(move\ "gnu: "
(p (with-temp-buffer
(magit-git-wash #'magit-diff-wash-diffs
"diff" "--staged")
(goto-char (point-min))
(when (re-search-forward "\\-(define-public \\(\\S-+\\)"
nil 'noerror)
(match-string-no-properties 1)))
var)
": Move to ("
(p (with-temp-buffer
(magit-git-wash #'magit-diff-wash-diffs
"diff" "--staged")
(goto-char (point-min))
(when (and
(re-search-forward "\\+(define-public \\(\\S-+\\)"
nil 'noerror)
(re-search-backward "modified[ ]*\\(\\S-+\\)"
nil 'noerror))
(string-replace
"\.scm" ""
(string-replace "/" " "
(match-string-no-properties 1)))))
new-module)
")." n
n
"* " (p (with-temp-buffer
(magit-git-wash #'magit-diff-wash-diffs
"diff" "--staged")
(goto-char (point-min))
(when (and
(re-search-forward "\\-(define-public \\(\\S-+\\)"
nil 'noerror)
(re-search-backward "modified[ ]*\\(\\S-+\\)"
nil 'noerror))
(match-string-no-properties 1)))
source)
" (" (s var) "): Move from here…" n
"* " (concat (string-replace " " "/" new-module) ".scm")
" (" (s var) "): …to here.")

View file

@ -354,7 +354,8 @@ asdf-build-system."
(define-team translations
(team 'translations
#:name "Translations"
#:scope (list (make-regexp "^po/"))))
#:scope (list "etc/news.scm"
(make-regexp "^po/"))))
(define-team installer
(team 'installer

View file

@ -22,6 +22,7 @@
#:use-module (srfi srfi-9)
#:use-module (srfi srfi-26)
#:use-module (srfi srfi-64)
#:use-module (srfi srfi-71)
#:use-module (rnrs io ports)
#:use-module (ice-9 match)
#:use-module (ice-9 popen)
@ -33,7 +34,6 @@
wait-for-tcp-port
wait-for-unix-socket
marionette-control
marionette-screen-text
wait-for-screen-text
%qwerty-us-keystrokes
marionette-type
@ -312,40 +312,61 @@ Monitor\")."
(define* (marionette-screen-text marionette #:key (ocr "ocrad"))
"Take a screenshot of MARIONETTE, perform optical character
recognition (OCR), and return the text read from the screen as a string. Do
this by invoking OCR, which should be the file name of GNU Ocrad's
@command{ocrad} or Tesseract OCR's @command{tesseract} command."
recognition (OCR), and return the text read from the screen as a string, along
the screen dump image used. Do this by invoking OCR, which should be the file
name of GNU Ocrad's@command{ocrad} or Tesseract OCR's @command{tesseract}
command. The screen dump image returned as the second value should be deleted
if it is not needed."
(define image (string-append (tmpnam) ".ppm"))
;; Use the QEMU Monitor to save an image of the screen to the host.
(marionette-control (string-append "screendump " image) marionette)
;; Process it via the OCR.
(cond
((string-contains ocr "ocrad")
(invoke-ocrad-ocr image #:ocrad ocr))
(values (invoke-ocrad-ocr image #:ocrad ocr) image))
((string-contains ocr "tesseract")
(invoke-tesseract-ocr image #:tesseract ocr))
(values (invoke-tesseract-ocr image #:tesseract ocr) image))
(else (error "unsupported ocr command"))))
(define* (wait-for-screen-text marionette predicate
#:key
(ocr "ocrad")
(timeout 30))
(timeout 30)
pre-action
post-action)
"Wait for TIMEOUT seconds or until the screen text on MARIONETTE matches
PREDICATE, whichever comes first. Raise an error when TIMEOUT is exceeded."
PREDICATE, whichever comes first. Raise an error when TIMEOUT is exceeded.
The error contains the recognized text along the preserved file name of the
screen dump, which is relative to the current working directory. If
PRE-ACTION is provided, it should be a thunk to call before each OCR attempt.
Likewise for POST-ACTION, except it runs at the end of a successful OCR."
(define start
(car (gettimeofday)))
(define end
(+ start timeout))
(let loop ((last-text #f))
(let loop ((last-text #f)
(last-screendump #f))
(if (> (car (gettimeofday)) end)
(error "'wait-for-screen-text' timeout" 'ocr-text: last-text)
(let ((text (marionette-screen-text marionette #:ocr ocr)))
(or (predicate text)
(begin
(sleep 1)
(loop text)))))))
(let ((screendump-backup (string-drop last-screendump 5)))
;; Move the file from /tmp/fileXXXXXX.pmm to the current working
;; directory, so that it is preserved in the test derivation output.
(copy-file last-screendump screendump-backup)
(delete-file last-screendump)
(error "'wait-for-screen-text' timeout"
'ocr-text: last-text
'screendump: screendump-backup))
(let* ((_ (and (procedure? pre-action) (pre-action)))
(text screendump (marionette-screen-text marionette #:ocr ocr))
(_ (and (procedure? post-action) (post-action)))
(result (predicate text)))
(cond (result
(delete-file screendump)
result)
(else
(sleep 1)
(loop text screendump)))))))
(define %qwerty-us-keystrokes
;; Maps "special" characters to their keystrokes.
@ -367,8 +388,10 @@ PREDICATE, whichever comes first. Raise an error when TIMEOUT is exceeded."
(#\> . "shift-dot")
(#\. . "dot")
(#\, . "comma")
(#\: . "shift-semicolon")
(#\; . "semicolon")
(#\' . "apostrophe")
(#\! . "shift-1")
(#\" . "shift-apostrophe")
(#\` . "grave_accent")
(#\bs . "backspace")

View file

@ -38,6 +38,7 @@
#:use-module ((guix licenses)
#:select (gpl3+ license? license-name))
#:use-module ((guix utils) #:select (%current-system))
#:use-module ((guix scripts system) #:select (read-operating-system))
#:use-module ((guix scripts pack)
#:select (self-contained-tarball))
#:use-module (gnu bootloader)

145
gnu/home/services/pm.scm Normal file
View file

@ -0,0 +1,145 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2022 ( <paren@disroot.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 pm)
#:use-module (guix gexp)
#:use-module (guix packages)
#:use-module (guix records)
#:use-module (gnu home services)
#:use-module (gnu home services shepherd)
#:use-module (gnu packages monitoring)
#:use-module (gnu services shepherd)
#:export (home-batsignal-configuration
home-batsignal-service-type))
;;;
;;; batsignal
;;;
;;; Daemon for running commands and displaying notifications on
;;; battery events.
;;;
(define-record-type* <home-batsignal-configuration>
home-batsignal-configuration make-home-batsignal-configuration
home-batsignal-configuration?
(warning-level batsignal-warning-level ;integer
(default 15))
(warning-message batsignal-warning-message ;string | #f
(default #f))
(critical-level batsignal-critical-level ;integer
(default 5))
(critical-message batsignal-critical-message ;string | #f
(default #f))
(danger-level batsignal-danger-level ;integer
(default 2))
(danger-command batsignal-danger-command ;file-like | string | #f
(default #f))
(full-level batsignal-full-level ;integer | #f
(default #f))
(full-message batsignal-full-message ;string | #f
(default #f))
(batteries batsignal-batteries ;list of string
(default '()))
(poll-delay batsignal-poll-delay ;integer
(default 60))
(icon batsignal-icon ;file-like | #f
(default #f))
(notifications? batsignal-notifications? ;boolean
(default #t))
(notifications-expire? batsignal-notifications-expire? ;boolean
(default #f))
(notification-command batsignal-notification-command ;string | #f
(default #f))
(ignore-missing? batsignal-ignore-missing? ;boolean
(default #f)))
(define (home-batsignal-shepherd-services config)
(let ((warning-level (batsignal-warning-level config))
(warning-message (batsignal-warning-message config))
(critical-level (batsignal-critical-level config))
(critical-message (batsignal-critical-message config))
(danger-level (batsignal-danger-level config))
(danger-command (batsignal-danger-command config))
(full-level (batsignal-full-level config))
(full-message (batsignal-full-message config))
(batteries (batsignal-batteries config))
(poll-delay (batsignal-poll-delay config))
(icon (batsignal-icon config))
(notifications? (batsignal-notifications? config))
(notifications-expire? (batsignal-notifications-expire? config))
(notification-command (batsignal-notification-command config))
(ignore-missing? (batsignal-ignore-missing? config)))
(list (shepherd-service
(provision '(batsignal))
(documentation "Run the batsignal battery-watching daemon.")
(start #~(make-forkexec-constructor
(append (list #$(file-append batsignal "/bin/batsignal")
"-w" (number->string #$warning-level)
"-c" (number->string #$critical-level)
"-d" (number->string #$danger-level)
"-m" (number->string #$poll-delay))
(if #$warning-message
(list "-W" #$warning-message)
(list))
(if #$critical-message
(list "-C" #$critical-message)
(list))
(if #$danger-command
(list "-D" #$danger-command)
(list))
(if #$full-level
(list "-f" (number->string #$full-level))
(list))
(if #$full-message
(list "-F" #$full-message)
(list))
(if (null? (list #$@batteries))
(list)
(list "-n" (string-join (list #$@batteries) ",")))
(if #$icon
(list "-I" #$icon)
(list))
(if #$notifications?
(list)
(list "-N"))
(if #$notifications-expire?
(list "-e")
(list))
(if #$notification-command
(list "-M" #$notification-command)
(list))
(if #$ignore-missing?
(list "-i")
(list)))
#:log-file (string-append
(or (getenv "XDG_LOG_HOME")
(format #f "~a/.local/var/log"
(getenv "HOME")))
"/batsignal.log")))
(stop #~(make-kill-destructor))))))
(define home-batsignal-service-type
(service-type
(name 'home-batsignal)
(extensions
(list (service-extension home-shepherd-service-type
home-batsignal-shepherd-services)))
(default-value (home-batsignal-configuration))
(description
"Run batsignal, a battery watching and notification daemon.")))

View file

@ -54,6 +54,7 @@
# Copyright © 2022 muradm <mail@muradm.net>
# Copyright © 2022 Hilton Chain <hako@ultrarare.space>
# Copyright © 2022 Alex Griffin <a@ajgrf.com>
# Copyright © 2022 ( <paren@disroot.org>
#
# This file is part of GNU Guix.
#
@ -89,6 +90,7 @@ GNU_SYSTEM_MODULES = \
%D%/home/services/symlink-manager.scm \
%D%/home/services/fontutils.scm \
%D%/home/services/guix.scm \
%D%/home/services/pm.scm \
%D%/home/services/shells.scm \
%D%/home/services/shepherd.scm \
%D%/home/services/ssh.scm \
@ -145,6 +147,7 @@ GNU_SYSTEM_MODULES = \
%D%/packages/browser-extensions.scm \
%D%/packages/build-tools.scm \
%D%/packages/busybox.scm \
%D%/packages/bqn.scm \
%D%/packages/c.scm \
%D%/packages/calcurse.scm \
%D%/packages/ccache.scm \
@ -309,6 +312,7 @@ GNU_SYSTEM_MODULES = \
%D%/packages/haxe.scm \
%D%/packages/heads.scm \
%D%/packages/hexedit.scm \
%D%/packages/high-availability.scm \
%D%/packages/hugs.scm \
%D%/packages/hunspell.scm \
%D%/packages/hurd.scm \
@ -692,6 +696,7 @@ GNU_SYSTEM_MODULES = \
%D%/services/sysctl.scm \
%D%/services/telephony.scm \
%D%/services/version-control.scm \
%D%/services/vnc.scm \
%D%/services/vpn.scm \
%D%/services/web.scm \
%D%/services/xorg.scm \
@ -773,6 +778,7 @@ GNU_SYSTEM_MODULES = \
%D%/tests/telephony.scm \
%D%/tests/version-control.scm \
%D%/tests/virtualization.scm \
%D%/tests/vnc.scm \
%D%/tests/web.scm
INSTALLER_MODULES = \
@ -1184,6 +1190,7 @@ dist_patch_DATA = \
%D%/packages/patches/ghostscript-no-header-id.patch \
%D%/packages/patches/ghostscript-no-header-uuid.patch \
%D%/packages/patches/ghostscript-no-header-creationdate.patch \
%D%/packages/patches/giac-pari-gp-anyarg.patch \
%D%/packages/patches/giara-fix-login.patch \
%D%/packages/patches/glib-appinfo-watch.patch \
%D%/packages/patches/glib-networking-gnutls-binding.patch \
@ -1309,7 +1316,6 @@ dist_patch_DATA = \
%D%/packages/patches/i7z-gcc-10.patch \
%D%/packages/patches/icecat-makeicecat.patch \
%D%/packages/patches/icecat-avoid-bundled-libraries.patch \
%D%/packages/patches/icecat-use-older-reveal-hidden-html.patch \
%D%/packages/patches/icecat-use-system-graphite2+harfbuzz.patch \
%D%/packages/patches/icecat-use-system-media-libs.patch \
%D%/packages/patches/icedtea-7-hotspot-aarch64-use-c++98.patch\
@ -1612,6 +1618,7 @@ dist_patch_DATA = \
%D%/packages/patches/ppsspp-disable-upgrade-and-gold.patch \
%D%/packages/patches/pthreadpool-system-libraries.patch \
%D%/packages/patches/python-chai-drop-python2.patch \
%D%/packages/patches/python-louvain-fix-test.patch \
%D%/packages/patches/python-random2-getrandbits-test.patch \
%D%/packages/patches/python-poppler-qt5-fix-build.patch \
%D%/packages/patches/python-w3lib-fix-test-failure.patch \
@ -1646,7 +1653,6 @@ dist_patch_DATA = \
%D%/packages/patches/phoronix-test-suite-fsdg.patch \
%D%/packages/patches/php-bug-74093-test.patch \
%D%/packages/patches/php-curl-compat.patch \
%D%/packages/patches/picard-fix-id3-rename-test.patch \
%D%/packages/patches/picprog-non-intel-support.patch \
%D%/packages/patches/pidgin-add-search-path.patch \
%D%/packages/patches/pinball-system-ltdl.patch \
@ -1670,7 +1676,6 @@ dist_patch_DATA = \
%D%/packages/patches/psm-disable-memory-stats.patch \
%D%/packages/patches/psm-ldflags.patch \
%D%/packages/patches/psm-repro.patch \
%D%/packages/patches/public-inbox-fix-spawn-test.patch \
%D%/packages/patches/pulseaudio-fix-mult-test.patch \
%D%/packages/patches/pulseaudio-longer-test-timeout.patch \
%D%/packages/patches/pulseview-qt515-compat.patch \
@ -1815,8 +1820,6 @@ dist_patch_DATA = \
%D%/packages/patches/scalapack-gcc-10-compilation.patch \
%D%/packages/patches/scheme48-tests.patch \
%D%/packages/patches/scons-test-environment.patch \
%D%/packages/patches/scotch-build-parallelism.patch \
%D%/packages/patches/scotch-integer-declarations.patch \
%D%/packages/patches/screen-hurd-path-max.patch \
%D%/packages/patches/sdl-libx11-1.6.patch \
%D%/packages/patches/seed-webkit.patch \

View file

@ -53,6 +53,7 @@
;;; Copyright © 2022 Roman Riabenko <roman@riabenko.com>
;;; Copyright © 2022 Petr Hodina <phodina@protonmail.com>
;;; Copyright © 2022 Andreas Rammhold <andreas@rammhold.de>
;;; Copyright © 2022 ( <paren@disroot.org>
;;;
;;; This file is part of GNU Guix.
;;;
@ -99,6 +100,7 @@
#:use-module (gnu packages c)
#:use-module (gnu packages check)
#:use-module (gnu packages compression)
#:use-module (gnu packages crates-graphics)
#:use-module (gnu packages crates-io)
#:use-module (gnu packages cross-base)
#:use-module (gnu packages crypto)
@ -109,6 +111,7 @@
#:use-module (gnu packages elf)
#:use-module (gnu packages file)
#:use-module (gnu packages flex)
#:use-module (gnu packages fonts)
#:use-module (gnu packages freedesktop)
#:use-module (gnu packages gawk)
#:use-module (gnu packages gettext)
@ -5224,6 +5227,74 @@ greetd-pam-mount is used in configuration of greetd to provide
auto-(mounting/unmounting) of XDG_RUNTIME_DIR in the way that it will not
interfere with default pam-mount configuration.")))
(define-public wlgreet
(package
(name "wlgreet")
(version "0.4")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://git.sr.ht/~kennylevinsen/wlgreet")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32
"00grp63n9nrgqls3knxfv9wjbc7p0jwr7i2vzxy750dz85gi2kzn"))))
(build-system cargo-build-system)
(arguments
(list #:cargo-inputs
`(("rust-chrono" ,rust-chrono-0.4)
("rust-getopts" ,rust-getopts-0.2)
("rust-greetd-ipc" ,rust-greetd-ipc-0.8)
("rust-lazy-static" ,rust-lazy-static-1)
("rust-memmap2" ,rust-memmap2-0.3)
("rust-nix" ,rust-nix-0.15)
("rust-os-pipe" ,rust-os-pipe-0.8)
("rust-rusttype" ,rust-rusttype-0.7)
("rust-serde" ,rust-serde-1)
("rust-smithay-client-toolkit"
,rust-smithay-client-toolkit-0.15)
("rust-toml" ,rust-toml-0.5)
("rust-wayland-client" ,rust-wayland-client-0.29)
("rust-wayland-protocols" ,rust-wayland-protocols-0.29)
("rust-xml-rs" ,rust-xml-rs-0.8))
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'remove-bundled-fonts
(lambda _
(delete-file-recursively "fonts")))
(add-after 'remove-bundled-fonts 'fix-font-references
(lambda* (#:key inputs #:allow-other-keys)
(substitute* "src/draw.rs"
(("\\.\\./fonts/dejavu/DejaVuSansMono\\.ttf" _)
(search-input-file
inputs
"share/fonts/truetype/DejaVuSansMono.ttf"))
(("\\.\\./fonts/Roboto-Regular\\.ttf" _)
(search-input-file
inputs
"share/fonts/truetype/Roboto-Regular.ttf")))))
(add-after 'configure 'fix-library-references
(lambda* (#:key inputs vendor-dir #:allow-other-keys)
(substitute* (find-files vendor-dir "\\.rs$")
(("lib(wayland-.*|xkbcommon)\\.so" so-file)
(search-input-file
inputs
(string-append "lib/" so-file)))))))))
(inputs
(list font-dejavu
font-google-roboto
libxkbcommon
wayland))
(home-page "https://git.sr.ht/~kennylevinsen/wlgreet")
(synopsis "Bare-bones Wayland-based greeter for @command{greetd}")
(description
"@command{wlgreet} provides a @command{greetd} greeter
that runs on a Wayland compositor such as @command{sway}. It
is implemented with pure Wayland APIs, so it does not depend
on a GUI toolkit.")
(license license:gpl3)))
(define-public libseat
(package
(name "libseat")

View file

@ -14,6 +14,7 @@
;;; Copyright © 2020 Vincent Legoll <vincent.legoll@gmail.com>
;;; Copyright © 2020, 2021 Vinicius Monego <monego@posteo.net>
;;; Copyright © 2021 Lars-Dominik Braun <ldb@leibniz-psychology.org>
;;; Copyright © 2022 Maxim Cournoyer <maxim.cournoyer@gmail.com>
;;;
;;; This file is part of GNU Guix.
;;;
@ -106,24 +107,26 @@ multiplication routines such as ToomCook and the FFT.")
(define-public gf2x
(package
(name "gf2x")
(version "1.2")
(source (origin
(method url-fetch)
(uri (string-append
"https://gforge.inria.fr/frs/download.php/file/36934/gf2x-"
version ".tar.gz"))
(sha256
(base32
"0d6vh1mxskvv3bxl6byp7gxxw3zzpkldrxnyajhnl05m0gx7yhk1"))))
(build-system gnu-build-system)
(synopsis "Arithmetic of polynomials over binary finite fields")
(description
"The gf2x library provides arithmetic of polynomials over finite fields
(name "gf2x")
(version "1.3.0")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://gitlab.inria.fr/gf2x/gf2x")
(commit (string-append name "-" version))))
(file-name (git-file-name name version))
(sha256
(base32
"04g5jg0i4vz46b4w2dvbmahwzi3k6b8g515mfw7im1inc78s14id"))))
(build-system gnu-build-system)
(native-inputs (list autoconf automake libtool))
(synopsis "Arithmetic of polynomials over binary finite fields")
(description
"The gf2x library provides arithmetic of polynomials over finite fields
of characteristic 2. It implements the multiplication, squaring and
greatest common divisor operations.")
(license license:gpl3+)
(home-page "https://gforge.inria.fr/projects/gf2x/")))
(home-page "https://gitlab.inria.fr/gf2x/gf2x")
(license license:gpl3+)))
(define-public cm
(package
@ -336,7 +339,12 @@ precision.")
"~parisse/debian/dists/stable/main/source/"
"giac_" version ".tar.gz"))
(sha256
(base32 "1zh7bf0ag4vbyyj5n8lbvy2ivp0kshms40ra5lq1ff035rpx230j"))))
(base32 "1zh7bf0ag4vbyyj5n8lbvy2ivp0kshms40ra5lq1ff035rpx230j"))
(patches
;; Patch borrowed from Sage math team. Giac 1.9.0-21 does not build
;; since Pari-GP 2.15 upgrade. Reported upstream here:
;; <https://xcas.univ-grenoble-alpes.fr/forum/viewtopic.php?f=3&t=2800>.
(search-patches "giac-pari-gp-anyarg.patch"))))
(build-system gnu-build-system)
(arguments
(list
@ -352,9 +360,10 @@ precision.")
(find-files "doc" "^Makefile"))
(("/bin/cp") (which "cp")))))
(add-after 'unpack 'disable-failing-test
;; FIXME: Test failing. Not sure why.
;; FIXME: Tests failing. Not sure why.
(lambda _
(substitute* "check/Makefile.in"
(("chk_fhan4") "")
(("chk_fhan11") ""))))
(add-after 'install 'fix-doc
(lambda _
@ -629,35 +638,42 @@ geometry and singularity theory.")
(define-public gmp-ecm
(package
(name "gmp-ecm")
(version "7.0.4")
(source (origin
(method url-fetch)
(uri
(let ((hash "00c4c691a1ef8605b65bdf794a71539d"))
(string-append "https://gitlab.inria.fr/zimmerma/ecm/"
"uploads/" hash "/ecm-" version
".tar.gz")))
(sha256 (base32
"0hxs24c2m3mh0nq1zz63z3sb7dhy1rilg2s1igwwcb26x3pb7xqc"))))
(build-system gnu-build-system)
(inputs
(list gmp))
(arguments
`(#:configure-flags '("--enable-shared"
;; Disable specific assembly routines, which depend
;; on the subarchitecture of the build machine,
;; and use gmp instead.
"--disable-asm-redc")))
(synopsis "Integer factorization library using the elliptic curve method")
(description
"GMP-ECM factors integers using the elliptic curve method (ECM) as well
(name "gmp-ecm")
(version "7.0.5")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://gitlab.inria.fr/zimmerma/ecm")
(commit (string-append "git-" version))))
(file-name (git-file-name name version))
(sha256
(base32
"013sfsd5kyh7phhf4namcdndpcp2jnibzxf10f4g89qabr8av63m"))))
(build-system gnu-build-system)
(inputs
(list gmp))
(arguments
(list
#:configure-flags #~(list "--enable-shared"
;; Disable specific assembly routines, which
;; depend on the subarchitecture of the build
;; machine, and use gmp instead.
"--disable-asm-redc")
#:phases #~(modify-phases %standard-phases
(add-after 'unpack 'patch-paths
(lambda _
(substitute* "test.ecm"
(("/bin/rm") (which "rm"))))))))
(native-inputs (list autoconf automake libtool))
(synopsis "Integer factorization library using the elliptic curve method")
(description
"GMP-ECM factors integers using the elliptic curve method (ECM) as well
as the P-1 and P+1 algorithms. It provides a library and a stand-alone
binary.")
;; Most files are under lgpl3+, but some are under gpl3+ or gpl2+,
;; so the combined work is under gpl3+.
(license license:gpl3+)
(home-page "http://ecm.gforge.inria.fr/")))
(home-page "https://gitlab.inria.fr/zimmerma/ecm")
;; Most files are under lgpl3+, but some are under gpl3+ or gpl2+, so the
;; combined work is under gpl3+.
(license license:gpl3+)))
(define-public bc
(package
@ -1393,42 +1409,45 @@ objects.")
(define-public gappa
(package
(name "gappa")
(version "1.4.0")
(source (origin
(method url-fetch)
(uri (string-append "https://gappa.gitlabpages.inria.fr/releases/"
"gappa-" version ".tar.gz"))
(sha256
(base32
"12x42z901pr05ldmparqdi8sq9s7fxbavhzk2dbq3l6hy247dwbb"))))
(build-system gnu-build-system)
(inputs
(list boost gmp mpfr))
(arguments
`(#:phases
(modify-phases %standard-phases
(add-after 'unpack 'patch-remake-shell
(lambda _
(substitute* "remake.cpp"
(("/bin/sh") (which "sh")))
#t))
(replace 'build
(lambda _ (invoke "./remake" "-s" "-d")))
(replace 'install
(lambda _ (invoke "./remake" "-s" "-d" "install")))
(replace 'check
(lambda _ (invoke "./remake" "check"))))))
(home-page "http://gappa.gforge.inria.fr/")
(synopsis "Proof generator for arithmetic properties")
(description "Gappa is a tool intended to help verifying and formally
(name "gappa")
(version "1.4.1")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://gitlab.inria.fr/gappa/gappa")
(commit (string-append name "-" version))))
(file-name (git-file-name name version))
(sha256
(base32
"0vfggzilc0gicrhqypmlx30ccrdkmyg22zzn46988c28xi9rcicj"))))
(build-system gnu-build-system)
(arguments
(list #:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'patch-remake-shell
(lambda _
(substitute* "remake.cpp"
(("/bin/sh") (which "sh")))))
(replace 'build
(lambda _ (invoke "./remake" "-s" "-d")))
(replace 'install
(lambda _ (invoke "./remake" "-s" "-d" "install")))
(replace 'check
(lambda* (#:key tests? #:allow-other-keys)
(when tests?
(invoke "./remake" "check")))))))
(native-inputs (list autoconf automake bison flex libtool))
(inputs (list boost gmp mpfr))
(home-page "https://gitlab.inria.fr/gappa/gappa")
(synopsis "Proof generator for arithmetic properties")
(description "Gappa is a tool intended to help verifying and formally
proving properties on numerical programs dealing with floating-point or
fixed-point arithmetic. It has been used to write robust floating-point
filters for CGAL and it is used to certify elementary functions in CRlibm.
While Gappa is intended to be used directly, it can also act as a backend
prover for the Why3 software verification platform or as an automatic tactic
for the Coq proof assistant.")
(license (list license:gpl3+ license:cecill)))) ; either/or
(license (list license:gpl3+ license:cecill)))) ; either/or
(define-public givaro
(package

View file

@ -591,6 +591,50 @@ large scale galaxy-survey data, it can perform reasonably well on moderately
crowded star fields.")
(license license:gpl3+)))
(define-public splash
(package
(name "splash")
(version "3.5.1")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/danieljprice/splash")
(commit (string-append "v" version))))
(sha256
(base32
"12s3w96wzd4zpxw4adzhalkr57fgdk7cjp6bj596jnd87pz3rhyd"))
(file-name (git-file-name name version))))
(build-system gnu-build-system)
(arguments
;; FIXME: Tests failed
;; Issue submited upstream https://github.com/danieljprice/splash/issues/67
;;
;; make: *** No rule to make target 'test_interpolate3D.o', needed by 'test1'. Stop.
;;
(list #:tests? #f
#:parallel-build? #f ;parallel build fails
#:make-flags #~(list "SYSTEM=gfortran" "PREFIX="
(string-append "GIZA_DIR="
#$(this-package-input "giza"))
(string-append "DESTDIR="
#$output))
#:phases #~(modify-phases %standard-phases
(delete 'configure)
(add-before 'install 'create-install-dirrectories
(lambda _
(mkdir-p (string-append #$output "/bin")))))))
(native-inputs (list gfortran pkg-config perl python-wrapper))
(inputs (list cairo cfitsio giza))
(home-page "https://users.monash.edu.au/~dprice/splash/")
(synopsis
"Astrophysical visualisation tool for smoothed particle hydrodynamics")
(description
"SPLASH is visualisation tool for Smoothed Particle Hydrodynamics (SPH)
simulations in one, two and three dimensions, developed mainly for
astrophysics. It uses a command-line menu but data can be manipulated
interactively in the plotting window.")
(license license:gpl2+)))
(define-public skymaker
(package
(name "skymaker")

View file

@ -366,7 +366,12 @@ Linux kernel.")
"07857vdkak306d9s5g6fhmjyxk7vijzjhkmqb15s7ihfxx9lx8xb"))))
(build-system cmake-build-system)
(arguments
'(#:tests? #f)) ; no check target
'(#:tests? #f ;no check target
;; XXX: Building with '-fsanitize=undefined' leads to embedded C++ STL
;; header file names in libgme.so, meaning that libgme retains a
;; reference to GCC. Disable UBSAN to avoid that.
#:configure-flags '("-DENABLE_UBSAN=OFF")))
(home-page "https://bitbucket.org/mpyne/game-music-emu")
(synopsis "Video game music file playback library")
(description
@ -1400,7 +1405,7 @@ object library.")
(define-public csound
(package
(name "csound")
(version "6.14.0")
(version "6.16.2")
(source
(origin
(method git-fetch)
@ -1409,7 +1414,7 @@ object library.")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "1sr9knfhbm2m0wpkjq2l5n471vnl51wy4p6j4m95zqybimzb4s2j"))))
(base32 "1lgasyk8j4cl9178vci1dph63nks3cgwhf8y1d04z9dc8gg15dyn"))))
(build-system cmake-build-system)
(native-inputs
(list bison flex gettext-minimal zlib))

View file

@ -1091,14 +1091,14 @@ interactive mode.")
(define-public btrbk
(package
(name "btrbk")
(version "0.32.2")
(version "0.32.4")
(source (origin
(method url-fetch)
(uri (string-append "https://digint.ch/download/btrbk/releases/"
"btrbk-" version ".tar.xz"))
(sha256
(base32
"0gi0j09fm4pgw3dq0z27lkpyvrs3ssyqg9b46v5ba794z63w753z"))))
"1nl6cbzqkc2srwi1428vijq69rp5cdx7484zcx61ph0rnhg9srfc"))))
(build-system gnu-build-system)
(arguments
(list

View file

@ -483,8 +483,7 @@ you to call routines in shared libraries from within Bash.")
(lambda _
(substitute* "ble.pp"
(("PATH=/bin:/usr/bin readlink")
(search-input-file %build-inputs
"/bin/readlink")))))
"readlink"))))
(delete 'configure) ;no configure
(add-before 'check 'use-LANG-for-tests
(lambda _

View file

@ -2370,14 +2370,14 @@ used visualizations.")
(define-public r-dearseq
(package
(name "r-dearseq")
(version "1.8.1")
(version "1.8.4")
(source
(origin
(method url-fetch)
(uri (bioconductor-uri "dearseq" version))
(sha256
(base32
"1f144k5gsclcmsnlsbisr2mivk91dbkci83wx1kznw6i15p4cpj1"))))
"1zsqsgf243gq1k57mw11d6apzccnq531mwg2wzw9mjrs1m0jsfzl"))))
(build-system r-build-system)
(propagated-inputs
(list r-compquadform
@ -3279,14 +3279,14 @@ used by @code{ensembldb}, @code{Organism.dplyr}, and other packages.")
(define-public r-annotationforge
(package
(name "r-annotationforge")
(version "1.38.0")
(version "1.38.1")
(source
(origin
(method url-fetch)
(uri (bioconductor-uri "AnnotationForge" version))
(sha256
(base32
"18rcfadxdaggyjj3rj17nbvgddlqs6zlr5jmq9a02kin59czvzz8"))))
"0lcr79a3570h7zg4z691gxg2vlyqnars5811q0clzinbmq7b4x3v"))))
(properties
`((upstream-name . "AnnotationForge")))
(build-system r-build-system)
@ -3566,13 +3566,13 @@ objects.")
(define-public r-biostrings
(package
(name "r-biostrings")
(version "2.64.0")
(version "2.64.1")
(source (origin
(method url-fetch)
(uri (bioconductor-uri "Biostrings" version))
(sha256
(base32
"1sz52hz89l9w2y2bvyis7kczslk1xnskls9l2bn1s3dhnjzdzhg8"))))
"1wk8nlmp6f6fsjrcb4fb48s3ay38yywwad748i6lfkkcw2pdfw33"))))
(properties
`((upstream-name . "Biostrings")))
(build-system r-build-system)
@ -3698,13 +3698,13 @@ analysis.")
(define-public r-chipseeker
(package
(name "r-chipseeker")
(version "1.32.0")
(version "1.32.1")
(source (origin
(method url-fetch)
(uri (bioconductor-uri "ChIPseeker" version))
(sha256
(base32
"001f85nk4myk9vgs05inlj2dfby4802p1iyzkfqg332yk52gsbl7"))))
"0l2514wvlc8q7n1zjzfrghdg372sp73z39204bkif3g6pdkcvbcf"))))
(build-system r-build-system)
(native-inputs
(list r-knitr))
@ -3718,6 +3718,7 @@ analysis.")
r-genomicranges
r-genomicfeatures
r-ggplot2
r-ggvenndiagram
r-gplots
r-gtools
r-dplyr
@ -3770,14 +3771,14 @@ experiments.")
(define-public r-complexheatmap
(package
(name "r-complexheatmap")
(version "2.12.0")
(version "2.12.1")
(source
(origin
(method url-fetch)
(uri (bioconductor-uri "ComplexHeatmap" version))
(sha256
(base32
"15b49vlkl89prcw70mlw066z0gxhs26x8dpfn6qr3gz7hihygs65"))))
"0b4p3ijhdcydfp0j58xlb5dn7d3m2x420n91rl9diqpg4r2gl0s8"))))
(properties
`((upstream-name . "ComplexHeatmap")))
(build-system r-build-system)
@ -4210,14 +4211,14 @@ microarrays or GRanges for sequencing data.")
(define-public r-gage
(package
(name "r-gage")
(version "2.46.0")
(version "2.46.1")
(source
(origin
(method url-fetch)
(uri (bioconductor-uri "gage" version))
(sha256
(base32
"03hx188h98qrbpjlf8v9sg2vqyfv49rp4c18ir11pg6hwqqrxh7b"))))
"01y04jcy7a9fksyhj0nq37n1inkrpqf4qv117lflvipbx0dsw4gl"))))
(build-system r-build-system)
(propagated-inputs
(list r-annotationdbi r-go-db r-graph r-keggrest))
@ -4328,13 +4329,13 @@ genomic intervals. In addition, it can use BAM or BigWig files as input.")
(define-public r-genomeinfodb
(package
(name "r-genomeinfodb")
(version "1.32.3")
(version "1.32.4")
(source (origin
(method url-fetch)
(uri (bioconductor-uri "GenomeInfoDb" version))
(sha256
(base32
"17nwcq2ivj3bdibdywfyjq4n6z0djispbh9ahqa55sp31ksq41xh"))))
"0z2bqr0zrl3r2kcqs72ny8p1psf8w1sgbr7qjjknxdv1qp8m2j7v"))))
(properties
`((upstream-name . "GenomeInfoDb")))
(build-system r-build-system)
@ -4388,13 +4389,13 @@ alignments.")
(define-public r-genomicfeatures
(package
(name "r-genomicfeatures")
(version "1.48.3")
(version "1.48.4")
(source (origin
(method url-fetch)
(uri (bioconductor-uri "GenomicFeatures" version))
(sha256
(base32
"0f14p1ma2y8l60p9sxmh5j0axws9by1cznczb2jxipphpb4slpl1"))))
"15kn5lmdqp7rsh2zlixj7ashsqnv50bs36hapw36qbaz9vgvim4v"))))
(properties
`((upstream-name . "GenomicFeatures")))
(build-system r-build-system)
@ -4692,13 +4693,13 @@ Binomial data via estimation of latent structure in the natural parameter.")
(define-public r-limma
(package
(name "r-limma")
(version "3.52.2")
(version "3.52.4")
(source (origin
(method url-fetch)
(uri (bioconductor-uri "limma" version))
(sha256
(base32
"0m8p8pqmf48f2zdf3qs66hmychbc58g2hfg1wyxzsv180m6xkk65"))))
"14xy3qyra2crz31sxgz768mhnhhvcpfhfcigf4xsii643lqcz75h"))))
(build-system r-build-system)
(home-page "http://bioinf.wehi.edu.au/limma")
(synopsis "Package for linear models for microarray and RNA-seq data")
@ -6568,13 +6569,13 @@ libraries for systems that do not have these available via other means.")
(define-public r-zellkonverter
(package
(name "r-zellkonverter")
(version "1.6.3")
(version "1.6.5")
(source
(origin
(method url-fetch)
(uri (bioconductor-uri "zellkonverter" version))
(sha256
(base32 "0l6v7a2zyxpq2w3vm85z439ldi3ld3pkc3wx95a1vxzbr31cpdzz"))))
(base32 "0rxpjkisjj1xjchjjm72k8za5hn48wbdahmbllljvxm5ii6k36k6"))))
(properties `((upstream-name . "zellkonverter")))
(build-system r-build-system)
(propagated-inputs
@ -6805,14 +6806,14 @@ signal in the input, that lead to spurious peaks during peak calling.")
(define-public r-diffbind
(package
(name "r-diffbind")
(version "3.6.1")
(version "3.6.4")
(source
(origin
(method url-fetch)
(uri (bioconductor-uri "DiffBind" version))
(sha256
(base32
"0izlk8vmmal4dj0bjxhgzr25arfa9zgdv06rm70w7ylr0gl84pzr"))))
"035xczcir4q7yj6x9m3yq3dpvbfas9la925avni8147cwhybagqr"))))
(properties `((upstream-name . "DiffBind")))
(build-system r-build-system)
(propagated-inputs
@ -7667,14 +7668,14 @@ achieved for all methods using the BiocParallel framework.")
(define-public r-scaledmatrix
(package
(name "r-scaledmatrix")
(version "1.4.0")
(version "1.4.1")
(source
(origin
(method url-fetch)
(uri (bioconductor-uri "ScaledMatrix" version))
(sha256
(base32
"0p6065mbn77hphpjfchz3r3raspl127f11n39mwh9bih4zg375cl"))))
"05gxr41nb1jqhv357rfha4062kszvrmkr36mhkjsf7kgnzf0p8hz"))))
(properties `((upstream-name . "ScaledMatrix")))
(build-system r-build-system)
(propagated-inputs
@ -7693,14 +7694,14 @@ multiplication.")
(define-public r-treeio
(package
(name "r-treeio")
(version "1.20.0")
(version "1.20.2")
(source
(origin
(method url-fetch)
(uri (bioconductor-uri "treeio" version))
(sha256
(base32
"1hc5m0b2qqxrh3z0inny2jizrpn9d4yn9pn3k1h18xb4ggyijyla"))))
"1jymbyl82n88ckw0nkbj72rvlxbk5m7xmcmq3fyi885z7aasc0x1"))))
(properties `((upstream-name . "treeio")))
(build-system r-build-system)
(propagated-inputs
@ -7725,14 +7726,14 @@ platform for merging tree with associated data and converting file formats.")
(define-public r-ggtree
(package
(name "r-ggtree")
(version "3.4.0")
(version "3.4.4")
(source
(origin
(method url-fetch)
(uri (bioconductor-uri "ggtree" version))
(sha256
(base32
"033r748npv0l72yb9sk6lqnj0l7cd36ykf788145qv8ck5i2gyk4"))))
"0h1qlhn4rj7jgd9vrja7lykaglyfvnzwkghvsqj1mvp4niwli7y5"))))
(properties `((upstream-name . "ggtree")))
(build-system r-build-system)
(propagated-inputs
@ -8215,14 +8216,14 @@ interactive exploration of results.")
(define-public r-residualmatrix
(package
(name "r-residualmatrix")
(version "1.6.0")
(version "1.6.1")
(source
(origin
(method url-fetch)
(uri (bioconductor-uri "ResidualMatrix" version))
(sha256
(base32
"1pjr3gva0jwj2pgqr4k4nl1ir1153hhrk1d400r30w0di472hns4"))))
"1530706c7b53h9m8smgnaj63rgdbm3hd09n7jwy6zc0y6qcffckd"))))
(properties
`((upstream-name . "ResidualMatrix")))
(build-system r-build-system)
@ -9349,14 +9350,14 @@ to multiple hypothesis correction.")
(define-public r-dose
(package
(name "r-dose")
(version "3.22.0")
(version "3.22.1")
(source
(origin
(method url-fetch)
(uri (bioconductor-uri "DOSE" version))
(sha256
(base32
"11lg4ql0bi54p2wg3z1dw9rwqai37khgcqbs4cb7zf67ml8jadwp"))))
"1mch26kddrhhzgi4bssnyy7bvdhprrncmvxl6zn1cq7g07p5765i"))))
(properties `((upstream-name . "DOSE")))
(build-system r-build-system)
(propagated-inputs
@ -9384,14 +9385,14 @@ data.")
(define-public r-enrichplot
(package
(name "r-enrichplot")
(version "1.16.1")
(version "1.16.2")
(source
(origin
(method url-fetch)
(uri (bioconductor-uri "enrichplot" version))
(sha256
(base32
"17ln1wbkq8sp7jw0dpkccj5qcsl382sgd7zic04dk99z9ag3mh02"))))
"0qh7bci3rn6y2fl45izrdb62jcm6j0zxxg4pyp4mvvgjvka5lnss"))))
(build-system r-build-system)
(propagated-inputs
(list r-aplot
@ -9806,14 +9807,14 @@ fitting a three-component normal mixture on z-scores.")
(define-public r-rgadem
(package
(name "r-rgadem")
(version "2.44.0")
(version "2.44.1")
(source
(origin
(method url-fetch)
(uri (bioconductor-uri "rGADEM" version))
(sha256
(base32
"013xdwz0c3n0n9hxf8kkx570qry961pgdjsp023531pl5ww2ing4"))))
"052z9iavnmkaz9jzz7ycpb8z7qqq3s5k6a04icrwl00wff7zqa2q"))))
(properties `((upstream-name . "rGADEM")))
(build-system r-build-system)
(propagated-inputs
@ -11501,14 +11502,14 @@ annotations.")
(define-public r-rsubread
(package
(name "r-rsubread")
(version "2.10.4")
(version "2.10.5")
(source
(origin
(method url-fetch)
(uri (bioconductor-uri "Rsubread" version))
(sha256
(base32
"155h25gbagqns7wpriil17li0jkdd1z1pcz0dlnikdqj4saf97rl"))))
"0n9qqbkj2lgxkia6kfpfz06wbc1lvw24qyvn88f48zw5nh0rsrs2"))))
(properties `((upstream-name . "Rsubread")))
(build-system r-build-system)
(inputs (list zlib))
@ -11703,14 +11704,14 @@ change point detection.")
(define-public r-ncdfflow
(package
(name "r-ncdfflow")
(version "2.42.0")
(version "2.42.1")
(source
(origin
(method url-fetch)
(uri (bioconductor-uri "ncdfFlow" version))
(sha256
(base32
"18ba8rygcd1ys150pk38r4w5lxwm6sl76zkd294yg847dygsqa4m"))))
"0759xvkp22dnbhq5wpgvpk8p61w0d50r5jrbh9n7sj8sga4lvvv7"))))
(properties `((upstream-name . "ncdfFlow")))
(build-system r-build-system)
(propagated-inputs
@ -11734,14 +11735,14 @@ manipulation of flow cytometry data.")
(define-public r-ggcyto
(package
(name "r-ggcyto")
(version "1.24.0")
(version "1.24.1")
(source
(origin
(method url-fetch)
(uri (bioconductor-uri "ggcyto" version))
(sha256
(base32
"0sycyvdpa77mykzr709a7padh6478zmnzapibbq90qkc7bxnj359"))))
"1cw60x78vqzjmgb5xd3sxyz6zwdaffp3byk34z8d4b3wkh530325"))))
(properties `((upstream-name . "ggcyto")))
(build-system r-build-system)
(propagated-inputs
@ -11771,14 +11772,14 @@ statistics to the plot.")
(define-public r-flowviz
(package
(name "r-flowviz")
(version "1.60.0")
(version "1.60.2")
(source
(origin
(method url-fetch)
(uri (bioconductor-uri "flowViz" version))
(sha256
(base32
"175ygncrv6q6mb8pahixs89m9wm6hdpzx489gc9s8lgad2vrvz8f"))))
"08rwzc26jns0wwjsqqmf60bpxsckr5x8skdn9iwl8grp81npcc95"))))
(properties `((upstream-name . "flowViz")))
(build-system r-build-system)
(propagated-inputs
@ -11919,14 +11920,14 @@ matches the flowJo analysis.")
(define-public r-flowstats
(package
(name "r-flowstats")
(version "4.8.0")
(version "4.8.2")
(source
(origin
(method url-fetch)
(uri (bioconductor-uri "flowStats" version))
(sha256
(base32
"1jbc92ah2mlpnd7v3k0207v4qz3rg9g9yy6r6y0s0cc5nifdyhwj"))))
"1x01gg5ifxh3wp0cp5a23lr9v6l9q5qg8145q2pgn904jkx5wldc"))))
(properties `((upstream-name . "flowStats")))
(build-system r-build-system)
(propagated-inputs
@ -11957,14 +11958,14 @@ package.")
(define-public r-opencyto
(package
(name "r-opencyto")
(version "2.8.0")
(version "2.8.4")
(source
(origin
(method url-fetch)
(uri (bioconductor-uri "openCyto" version))
(sha256
(base32
"1nz5fra0jf70jwyfbcz5ksnz5xb62vfnfwfasr0zwwvjvmmvrs1y"))))
"0fa3hbbrjw458dhmxdjypcjgyxmphp9kdr3r62qqf803i4wsxfk0"))))
(properties `((upstream-name . "openCyto")))
(build-system r-build-system)
(propagated-inputs
@ -12001,14 +12002,14 @@ sequential way to mimic the manual gating strategy.")
(define-public r-cytoml
(package
(name "r-cytoml")
(version "2.8.0")
(version "2.8.1")
(source
(origin
(method url-fetch)
(uri (bioconductor-uri "CytoML" version))
(sha256
(base32
"0vp7advfh1d8596hjpzayasjhga4mx0l104sgz2asscbrjm4v7rr"))))
"01yzdljpyq92bv318b5qs29f190226zwbqjnckvxmbb0k8m7s5hw"))))
(properties `((upstream-name . "CytoML")))
(build-system r-build-system)
(inputs
@ -13760,13 +13761,13 @@ monograph.")
(define-public r-bioccheck
(package
(name "r-bioccheck")
(version "1.32.0")
(version "1.32.1")
(source (origin
(method url-fetch)
(uri (bioconductor-uri "BiocCheck" version))
(sha256
(base32
"1k1gxzmxx26hmwdxgagv93mv4jwyygkk8703ds6nvryzhqffzkbc"))))
"0bq4xrz1spp0bmbccxydkw6yw03by5dysz85mn152ab6xixm52lw"))))
(properties
`((upstream-name . "BiocCheck")))
(build-system r-build-system)
@ -13835,13 +13836,13 @@ functionality.")
(define-public r-biocviews
(package
(name "r-biocviews")
(version "1.64.0")
(version "1.64.1")
(source (origin
(method url-fetch)
(uri (bioconductor-uri "biocViews" version))
(sha256
(base32
"1lahla53awdqiglfiygbxg5pkzfabym7n5abgyp1nvqsvsj0g126"))))
"0ixcx9qqpmwmnhml3klk5z075km8g2l4q0iqc1dbniga87qgyl38"))))
(properties
`((upstream-name . "biocViews")))
(build-system r-build-system)
@ -14031,14 +14032,14 @@ gene selection, testing relationships, and so on.")
(define-public r-biocpkgtools
(package
(name "r-biocpkgtools")
(version "1.14.0")
(version "1.14.1")
(source
(origin
(method url-fetch)
(uri (bioconductor-uri "BiocPkgTools" version))
(sha256
(base32
"1v0824vmg49q9lh0igdyniryyknw6vmh462rn25kmg9hdna0w99h"))))
"0akryshjdn227a8ir8r0lb59v060h58rhy5vjmdxax8p81ajzxkd"))))
(properties `((upstream-name . "BiocPkgTools")))
(build-system r-build-system)
(propagated-inputs
@ -14577,14 +14578,14 @@ provided.")
(define-public r-hdf5array
(package
(name "r-hdf5array")
(version "1.24.1")
(version "1.24.2")
(source
(origin
(method url-fetch)
(uri (bioconductor-uri "HDF5Array" version))
(sha256
(base32
"1r1lg7k60qgb489xkypd4gvm1fmdlihvylb5va6xj58ipndbfday"))))
"1dzx5463ig3ag72a47slc4jbq5id11w77cj0zgzr85h0dbxklrr9"))))
(properties `((upstream-name . "HDF5Array")))
(build-system r-build-system)
(inputs
@ -14978,14 +14979,14 @@ cell types to infer the cell of origin of each single cell independently.")
(define-public r-scuttle
(package
(name "r-scuttle")
(version "1.6.2")
(version "1.6.3")
(source
(origin
(method url-fetch)
(uri (bioconductor-uri "scuttle" version))
(sha256
(base32
"0nnmq3wf436xaw4arc4y3ldvn6ilsg52xzbccmid0icb8z3y2kzn"))))
"1w1jy5fqkp2d03lp84d49fsksnl0pcg0wgqyd49d5k1mipdw4671"))))
(properties `((upstream-name . "scuttle")))
(build-system r-build-system)
(propagated-inputs
@ -15055,14 +15056,14 @@ quality control.")
(define-public r-scran
(package
(name "r-scran")
(version "1.24.0")
(version "1.24.1")
(source
(origin
(method url-fetch)
(uri (bioconductor-uri "scran" version))
(sha256
(base32
"0xg7dl35915a65pmzkxdacsm4iqf97ayljdjljcvqx1ycmn7x68w"))))
"1a6vlq8i5gh7zxm6igmy75187pkx42z28qjag50m49xy5valw3ni"))))
(build-system r-build-system)
(propagated-inputs
(list r-beachmat
@ -15123,14 +15124,14 @@ data in the column sparse format.")
(define-public r-delayedmatrixstats
(package
(name "r-delayedmatrixstats")
(version "1.18.0")
(version "1.18.1")
(source
(origin
(method url-fetch)
(uri (bioconductor-uri "DelayedMatrixStats" version))
(sha256
(base32
"1qlwv69c0r2w3zkmsr8r7w6sr3hf1ha0sfcrsjx4ks8f0ww7aqsv"))))
"1kq643fmfzq1qjvpj3kc092ahc3qamqgx53layqsyvz5mil55jjv"))))
(properties
`((upstream-name . "DelayedMatrixStats")))
(build-system r-build-system)
@ -15805,13 +15806,13 @@ other functional sequencing data.")
(define-public r-pathview
(package
(name "r-pathview")
(version "1.36.0")
(version "1.36.1")
(source
(origin
(method url-fetch)
(uri (bioconductor-uri "pathview" version))
(sha256
(base32 "1472k107f21cflbx2fip92g8gl9wlwxgwfvgvl73ma0y0jzs0qdq"))))
(base32 "11g4zhy4qfq0gmy588334f7s2w1acs2dz9kimax5ya2b8jjibk71"))))
(properties `((upstream-name . "pathview")))
(build-system r-build-system)
(propagated-inputs
@ -16054,14 +16055,14 @@ real numbers.")
(define-public r-bgeecall
(package
(name "r-bgeecall")
(version "1.12.1")
(version "1.12.2")
(source
(origin
(method url-fetch)
(uri (bioconductor-uri "BgeeCall" version))
(sha256
(base32
"1g12cms66zb45p347h3b358vjhnq76galvwqwq86xby4hnwpdzkh"))))
"0l6smwy55mm4clb71l4bpch3bayyyf87nq1asbrv6s6fd22mmwil"))))
(properties `((upstream-name . "BgeeCall")))
(build-system r-build-system)
(propagated-inputs
@ -16243,14 +16244,14 @@ package, primarily for creation of the underlying Conda instance.")
(define-public r-basilisk
(package
(name "r-basilisk")
(version "1.8.0")
(version "1.8.1")
(source
(origin
(method url-fetch)
(uri (bioconductor-uri "basilisk" version))
(sha256
(base32
"1p90wq8a9wrpqpgmcy4zgh5skdw65gg2gsb3lnx78zk9khq0yyzh"))))
"134xix2iq5l7783dng2jjklxd3m5lh4snb7bjhslrs2r1j3p8jpk"))))
(properties `((upstream-name . "basilisk")))
(build-system r-build-system)
(propagated-inputs
@ -16303,14 +16304,14 @@ Bioconductor-friendly.")
(define-public r-biocdockermanager
(package
(name "r-biocdockermanager")
(version "1.8.0")
(version "1.8.1")
(source
(origin
(method url-fetch)
(uri (bioconductor-uri "BiocDockerManager" version))
(sha256
(base32
"0kl6r8ad728a8dvqx0safj7v5gj1rxxcdiw44jkr1pd5ddv0xbi6"))))
"0a4dcga18bw5mvzmsml28bf4zclz32pp9iflnbvps7pdxvhmmg9d"))))
(properties
`((upstream-name . "BiocDockerManager")))
(build-system r-build-system)
@ -16333,14 +16334,14 @@ the Bioconductor project.")
(define-public r-biodb
(package
(name "r-biodb")
(version "1.4.0")
(version "1.4.2")
(source
(origin
(method url-fetch)
(uri (bioconductor-uri "biodb" version))
(sha256
(base32
"02i0n29bp9d9p1ibslxca5m37qsgny2hlgg7d364lf7kc6y2bqni"))))
"0f3clqmrpaawhjjyb4x5mnbhsam56r0av05b5cl5p4waylp8qbs1"))))
(properties `((upstream-name . "biodb")))
(build-system r-build-system)
(propagated-inputs
@ -16474,32 +16475,32 @@ using aCGH or sequencing.")
(define-public r-bionero
(package
(name "r-bionero")
(version "1.4.0")
(version "1.4.2")
(source
(origin
(method url-fetch)
(uri (bioconductor-uri "BioNERO" version))
(sha256
(base32
"1nyzjbl0gcwvbj2nxfwykirikf8j3rsx5ny45bqjbcb4r23k65kj"))))
"0dsznfnhidbmf52rv8l26f1ms2k9yy4q4c6cf3x8ylc79c1sjrcp"))))
(properties `((upstream-name . "BioNERO")))
(build-system r-build-system)
(propagated-inputs
(list r-biocparallel
r-complexheatmap
r-deseq2
r-dynamictreecut
r-genie3
r-ggnetwork
r-ggnewscale
r-ggplot2
r-ggpubr
r-ggrepel
r-igraph
r-intergraph
r-matrixstats
r-minet
r-netrep
r-networkd3
r-patchwork
r-rcolorbrewer
r-reshape2
r-summarizedexperiment
@ -16742,6 +16743,43 @@ ensemble machine learning for the estimation of nuisance functions.")
visualizing bisulfite sequencing data.")
(license license:artistic2.0)))
(define-public r-dada2
(package
(name "r-dada2")
(version "1.24.0")
(source (origin
(method url-fetch)
(uri (bioconductor-uri "dada2" version))
(sha256
(base32
"0nvjnmcjh0i660y8s3rh9b3zl163wxdx7qm2n36m6vf0iy987l4x"))))
(properties `((upstream-name . "dada2")))
(build-system r-build-system)
(propagated-inputs
(list r-biocgenerics
r-biostrings
r-ggplot2
r-iranges
r-rcpp
r-rcppparallel
r-reshape2
r-shortread
r-xvector))
(native-inputs (list r-knitr))
(home-page "https://benjjneb.github.io/dada2/")
(synopsis
"Accurate, high-resolution sample inference from amplicon sequencing data")
(description
"The dada2 package infers exact @dfn{amplicon sequence variants} (ASVs)
from high-throughput amplicon sequencing data, replacing the coarser and less
accurate OTU clustering approach. The dada2 pipeline takes as input
demultiplexed fastq files, and outputs the sequence variants and their
sample-wise abundances after removing substitution and chimera errors.
Taxonomic classification is available via a native implementation of the RDP
naive Bayesian classifier, and species-level assignment to 16S rRNA gene
fragments by exact matching.")
(license license:lgpl2.0)))
(define-public r-dmrseq
(package
(name "r-dmrseq")
@ -17009,14 +17047,14 @@ embeddings and functions to build new reference.")
(define-public r-tximeta
(package
(name "r-tximeta")
(version "1.14.0")
(version "1.14.1")
(source
(origin
(method url-fetch)
(uri (bioconductor-uri "tximeta" version))
(sha256
(base32
"1vq7x1sf5h8iwdalalbrybxzbq47s2ymb75himj5wkv77mgcivfl"))))
"0hxq5lkrdiz0a3xpl88adrv4m55jr6g46a5m9pamc0w4bxddirr8"))))
(properties `((upstream-name . "tximeta")))
(build-system r-build-system)
(propagated-inputs

View file

@ -1656,7 +1656,27 @@ package provides command line tools using the Bio++ library.")
;; Remove useless msbuild directory
(delete-file-recursively
"c++/src/build-system/project_tree_builder/msbuild")
#t))))
;; Build reproducibly.
;; Do not record the kernel version
(substitute* "c++/src/build-system/configure"
(("kver=.*") "kver=\"\""))
;; Do not generate random numbers.
(substitute* "c++/scripts/common/impl/define_random_macros.sh"
(("#define NCBI_RANDOM_VALUE_MAX 0xffffffffu" m)
(string-append m "
#define NCBI_RANDOM_VALUE_0 2845495105u
#define NCBI_RANDOM_VALUE_1 2158634051u
#define NCBI_RANDOM_VALUE_2 4072202242u
#define NCBI_RANDOM_VALUE_3 902228395u
#define NCBI_RANDOM_VALUE_4 1353323915u
#define NCBI_RANDOM_VALUE_5 574823513u
#define NCBI_RANDOM_VALUE_6 4119501261u
#define NCBI_RANDOM_VALUE_7 2477640938u
#define NCBI_RANDOM_VALUE_8 2776595395u
#define NCBI_RANDOM_VALUE_9 270550684u
"))
(("cksum") "cksum >/dev/null"))))))
(build-system gnu-build-system)
(arguments
`(;; There are two(!) tests for this massive library, and both fail with
@ -2409,26 +2429,27 @@ are not included due to their size.")
(define-public cd-hit
(package
(name "cd-hit")
(version "4.6.8")
(version "4.8.1")
(source (origin
(method url-fetch)
(uri (string-append "https://github.com/weizhongli/cdhit"
"/releases/download/V" version
"/cd-hit-v" version
"-2017-0621-source.tar.gz"))
"-2019-0228.tar.gz"))
(sha256
(base32
"1b4mwm2520ixjbw57sil20f9iixzw4bkdqqwgg1fc3pzm6rz4zmn"))))
"1phmfhgcpyfd6kj7jwzw976613lcpv1wc2pzfdfaxla062x2s5r6"))))
(build-system gnu-build-system)
(arguments
`(#:tests? #f ; there are no tests
#:make-flags
;; Executables are copied directly to the PREFIX.
,#~(list (string-append "PREFIX=" #$output "/bin")
;; Support longer sequences (e.g. Pacbio sequences)
"MAX_SEQ=60000000")
#:phases
(modify-phases %standard-phases
(list
#:tests? #f ; there are no tests
#:make-flags
;; Executables are copied directly to the PREFIX.
#~(list (string-append "PREFIX=" #$output "/bin")
;; Support longer sequences (e.g. Pacbio sequences)
"MAX_SEQ=60000000")
#:phases
'(modify-phases %standard-phases
;; No "configure" script
(delete 'configure)
;; Remove sources of non-determinism
@ -2438,15 +2459,13 @@ are not included due to their size.")
((" \\(built on \" __DATE__ \"\\)") ""))
(substitute* "cdhit-common.c++"
(("__DATE__") "\"0\"")
(("\", %s, \" __TIME__ \"\\\\n\", date") ""))
#t))
(("\", %s, \" __TIME__ \"\\\\n\", date") ""))))
;; The "install" target does not create the target directory.
(add-before 'install 'create-target-dir
(lambda* (#:key outputs #:allow-other-keys)
(mkdir-p (string-append (assoc-ref outputs "out") "/bin"))
#t)))))
(mkdir-p (string-append (assoc-ref outputs "out") "/bin")))))))
(inputs
(list perl))
(list perl zlib))
(home-page "http://weizhongli-lab.org/cd-hit/")
(synopsis "Cluster and compare protein or nucleotide sequences")
(description
@ -2457,6 +2476,26 @@ databases.")
;; version 2 (GPLv2)."
(license license:gpl2)))
(define-public cd-hit-auxtools
(package
(inherit cd-hit)
(name "cd-hit-auxtools")
(arguments
(list
#:tests? #f ; there are no tests
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'chdir (lambda _ (chdir "cd-hit-auxtools")))
;; No "configure" script
(delete 'configure)
;; There is no install target.
(replace 'install
(lambda _
(for-each (lambda (file)
(install-file file (string-append #$output "/bin")))
'("cd-hit-dup" "cd-hit-lap" "read-linker")))))))
(inputs '())))
(define-public clipper
(package
(name "clipper")
@ -4825,7 +4864,7 @@ data.")
(define-public kaiju
(package
(name "kaiju")
(version "1.6.3")
(version "1.9.0")
(source (origin
(method git-fetch)
(uri (git-reference
@ -4834,24 +4873,45 @@ data.")
(file-name (git-file-name name version))
(sha256
(base32
"119pzi0ddzv9mjg4wwa6han0cwr3k3ssn7kirvsjfcq05mi5ka0x"))))
"1hfmadkfs6jjd7l3byly5xxb0ifm3dm1wis11sjbqfcv6l89snmg"))))
(build-system gnu-build-system)
(arguments
`(#:tests? #f ; There are no tests.
#:phases
(modify-phases %standard-phases
(delete 'configure)
(add-before 'build 'move-to-src-dir
(lambda _ (chdir "src") #t))
(replace 'install
(lambda* (#:key inputs outputs #:allow-other-keys)
(let ((bin (string-append (assoc-ref outputs "out") "/bin")))
(mkdir-p bin)
(chdir "..")
(copy-recursively "bin" bin))
#t)))))
(list
#:tests? #f ; There are no tests.
#:phases
#~(modify-phases %standard-phases
(delete 'configure)
(add-before 'build 'move-to-src-dir
(lambda _ (chdir "src")))
(replace 'install
(lambda _
(let ((bin (string-append #$output "/bin")))
(mkdir-p bin)
(copy-recursively "../bin" bin)
(let ((path (search-path-as-list '("bin")
'#$(match (package-inputs this-package)
(((_ pkg) ...) pkg)))))
(for-each (lambda (script)
(let ((exe (string-append bin "/" script)))
(chmod exe #o555)
(wrap-script exe
#:guile #$(file-append guile-3.0 "/bin/guile")
`("PATH" ":" prefix ,path))))
(list "kaiju-convertMAR.py"
"kaiju-gbk2faa.pl"
"kaiju-makedb")))))))))
(inputs
(list perl zlib))
(list bzip2
coreutils
curl
gawk
guile-3.0 ;for wrap-script
gzip
perl
python-wrapper
tar
wget
zlib))
(home-page "http://kaiju.binf.ku.dk/")
(synopsis "Fast and sensitive taxonomic classification for metagenomics")
(description "Kaiju is a program for sensitive taxonomic classification
@ -6236,7 +6296,7 @@ accessed/downloaded on demand across HTTP.")
(origin
(method url-fetch)
(uri (string-append
"http://pngu.mgh.harvard.edu/~purcell/plink/dist/plink-"
"https://zzz.bwh.harvard.edu/plink/dist/plink-"
version "-src.zip"))
(sha256
(base32 "0as8gxm4pjyc8dxmm1sl873rrd7wn5qs0l29nqfnl31x8i467xaa"))
@ -8444,6 +8504,46 @@ BLAST, KEGG, GenBank, MEDLINE and GO.")
;; (LGPLv2.1+) and scripts in samples (which have GPL2 and GPL2+)
(license (list license:ruby license:lgpl2.1+ license:gpl2+ ))))
(define-public centrifuge
(package
(name "centrifuge")
(version "1.0.4")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/DaehwanKimLab/centrifuge.git")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
"167610gbz1rrh6ir3j7jcmhzg3x5msn7x7a3dpv7wmwdndnnqvg0"))))
(build-system gnu-build-system)
(arguments
(list
#:tests? #false ; no check target
#:make-flags
#~(list (string-append "prefix=" #$output))
#:phases
'(modify-phases %standard-phases
(delete 'configure))))
(inputs (list python-wrapper))
(native-inputs
(list pandoc perl ;for documentation
which))
(home-page "https://github.com/DaehwanKimLab/centrifuge/")
(synopsis "Classifier for metagenomic sequences")
(description "Centrifuge is a microbial classification engine that enables
rapid, accurate and sensitive labeling of reads and quantification of species
on desktop computers. The system uses an indexing scheme based on the
@dfn{Burrows-Wheeler transform} (BWT) and the @dfn{Ferragina-Manzini} (FM)
index, optimized specifically for the metagenomic classification problem.
Centrifuge requires a relatively small index (4.7 GB for all complete
bacterial and viral genomes plus the human genome) and classifies sequences at
very high speed, allowing it to process the millions of reads from a typical
high-throughput DNA sequencing run within a few minutes.")
(license license:gpl3+)))
(define-public bio-vcf
(package
(name "bio-vcf")
@ -10236,7 +10336,7 @@ The following file formats are supported:
(define-public salmon
(package
(name "salmon")
(version "1.6.0")
(version "1.9.0")
(source (origin
(method git-fetch)
(uri (git-reference
@ -10245,104 +10345,112 @@ The following file formats are supported:
(file-name (git-file-name name version))
(sha256
(base32
"1wb5wl0rc77svbwq6zvak5h7pf9acw3di0vz5i3gqyhg5l6qd736"))
"1370ry3jpj05gplzyny44mqg77a29a6gp8ijmjz135d2igf956r8"))
(modules '((guix build utils)))
(snippet
;; Delete bundled headers for eigen3.
'(delete-file-recursively "include/eigen3/"))))
(build-system cmake-build-system)
(arguments
`(#:configure-flags
,#~(list (string-append "-Dlibgff_DIR="
#$(this-package-input "libgff") "/lib")
"-DCMAKE_CXX_FLAGS=\"-DHAVE_NUMERIC_LIMITS128=1\""
"-Dlibgff_FOUND=TRUE"
"-DTBB_FOUND=TRUE"
#$(string-append "-DTBB_VERSION=" (package-version tbb-2020))
"-DTBB_LIBRARIES=tbb -ltbbmalloc"
"-DFETCHED_PUFFERFISH=TRUE"
"-DUSE_SHARED_LIBS=TRUE")
(list
#:configure-flags
#~(list (string-append "-Dlibgff_DIR="
#$(this-package-input "libgff") "/lib")
"-DCMAKE_CXX_FLAGS=\"-DHAVE_NUMERIC_LIMITS128=1\""
"-Dlibgff_FOUND=TRUE"
"-DTBB_FOUND=TRUE"
#$(string-append "-DTBB_VERSION=" (package-version tbb))
"-DFETCHED_PUFFERFISH=TRUE"
"-DUSE_SHARED_LIBS=TRUE")
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'prepare-pufferfish
(lambda* (#:key inputs #:allow-other-keys)
(copy-recursively (assoc-ref inputs "pufferfish")
"external/pufferfish")
;; This test isn't working correctly, so compilation aborts.
(substitute* "external/pufferfish/include/string_view.hpp"
(("#if __has_include\\(<string_view>\\)")
"#if 0"))
(let ((headers "external/install/pufferfish/include/pufferfish")
(source "external/install/src/pufferfish"))
(mkdir-p headers)
(mkdir-p source)
(for-each (lambda (file)
(install-file (string-append "external/pufferfish/include/" file)
headers))
(list "ProgOpts.hpp" "BooPHF.hpp" "SpinLock.hpp"
"Kmer.hpp" "CanonicalKmer.hpp" "string_view.hpp"
"CanonicalKmerIterator.hpp"
"PufferfishBaseIndex.hpp"
"PufferfishIndex.hpp"
"PufferfishSparseIndex.hpp"
"PufferfishLossyIndex.hpp"
"PufferfishTypes.hpp"
"rank9b.hpp" "rank9sel.hpp" "macros.hpp"
"select.hpp" "Util.hpp"
"PairedAlignmentFormatter.hpp"
"SelectiveAlignmentUtils.hpp"
"PuffAligner.hpp" "MemCollector.hpp"
"MemChainer.hpp" "CommonTypes.hpp"
"SAMWriter.hpp" "PufferfishConfig.hpp"
"BulkChunk.hpp" "BinWriter.hpp"))
(for-each (lambda (dir)
(copy-recursively
(string-append "external/pufferfish/include/" dir)
(string-append headers "/" dir)))
(list "libdivide"
"ksw2pp"
"compact_vector"
"metro"
"chobo"
"sparsepp"
"simde"
"tsl"))
(copy-recursively
(string-append "external/pufferfish/src/metro/")
(string-append source "/metro"))
(install-file
(string-append "external/pufferfish/src/rank9b.cpp")
source)
'(modify-phases %standard-phases
(add-after 'unpack 'prepare-pufferfish
(lambda* (#:key inputs #:allow-other-keys)
(copy-recursively (assoc-ref inputs "pufferfish")
"external/pufferfish")
;; This test isn't working correctly, so compilation aborts.
(substitute* "external/pufferfish/include/string_view.hpp"
(("#if __has_include\\(<string_view>\\)")
"#if 0"))
(let ((headers "external/install/pufferfish/include/pufferfish")
(source "external/install/src/pufferfish"))
(mkdir-p headers)
(mkdir-p source)
(for-each (lambda (file)
(install-file (string-append "external/pufferfish/include/" file)
headers))
(list "ProgOpts.hpp" "BooPHF.hpp" "SpinLock.hpp"
"Kmer.hpp" "CanonicalKmer.hpp" "string_view.hpp"
"CanonicalKmerIterator.hpp"
"PufferfishBaseIndex.hpp"
"PufferfishIndex.hpp"
"PufferfishSparseIndex.hpp"
"PufferfishLossyIndex.hpp"
"PufferfishTypes.hpp"
"rank9b.hpp" "rank9sel.hpp" "macros.hpp"
"select.hpp" "Util.hpp"
"PairedAlignmentFormatter.hpp"
"SelectiveAlignmentUtils.hpp"
"PuffAligner.hpp" "MemCollector.hpp"
"MemChainer.hpp" "CommonTypes.hpp"
"SAMWriter.hpp" "PufferfishConfig.hpp"
"BulkChunk.hpp" "BinWriter.hpp"))
;; Do not complain about not having built libtbb
(substitute* "external/pufferfish/external/twopaco/CMakeLists.txt"
(("add_dependencies.*") "")))))
(add-after 'unpack 'do-not-phone-home
(lambda _
(substitute* "src/Salmon.cpp"
(("getVersionMessage\\(\\)") "\"\""))))
(add-after 'unpack 'use-system-libraries
(lambda* (#:key inputs #:allow-other-keys)
;; Ensure that all headers can be found
(setenv "CPLUS_INCLUDE_PATH"
(string-append (or (getenv "CPLUS_INCLUDE_PATH") "")
":"
(getcwd) "/external/install/pufferfish/include:"
(assoc-ref inputs "eigen")
"/include/eigen3"))))
(add-after 'unpack 'fix-error-message-in-tests
(lambda _
(substitute* "cmake/TestSalmonQuasi.cmake"
(("SALMON_QUASI_INDEX_COMMAND")
"SALMON_QUASI_INDEX_CMD")))))))
(for-each (lambda (dir)
(copy-recursively
(string-append "external/pufferfish/include/" dir)
(string-append headers "/" dir)))
(list "libdivide"
"ksw2pp"
"compact_vector"
"itlib"
"metro"
"chobo"
"sparsepp"
"simde"
"tsl"))
(copy-recursively
(string-append "external/pufferfish/src/metro/")
(string-append source "/metro"))
(install-file
(string-append "external/pufferfish/src/rank9b.cpp")
source)
;; Do not complain about not having built libtbb
(substitute* "external/pufferfish/external/twopaco/CMakeLists.txt"
(("add_dependencies.*") "")))))
(add-after 'unpack 'do-not-phone-home
(lambda _
(substitute* "src/Salmon.cpp"
(("getVersionMessage\\(\\)") "\"\""))))
(add-after 'unpack 'use-system-libraries
(lambda* (#:key inputs #:allow-other-keys)
;; Ensure that all headers can be found
(setenv "CPLUS_INCLUDE_PATH"
(string-append (or (getenv "CPLUS_INCLUDE_PATH") "")
":"
(getcwd) "/external/install/pufferfish/include:"
(assoc-ref inputs "eigen")
"/include/eigen3"))))
(add-after 'unpack 'fix-error-message-in-tests
(lambda _
(substitute* "cmake/TestSalmonQuasi.cmake"
(("SALMON_QUASI_INDEX_COMMAND")
"SALMON_QUASI_INDEX_CMD")))))))
(inputs
`(("boost" ,boost)
("bzip2" ,bzip2)
("cereal" ,cereal-1.3.0)
("curl" ,curl)
("eigen" ,eigen)
("jemalloc" ,jemalloc)
("libgff" ,libgff)
(list boost
bzip2
cereal-1.3.0
curl
eigen
jemalloc
libgff
tbb
libstadenio-for-salmon
xz
zlib))
(native-inputs
`(("pkg-config" ,pkg-config)
("pufferfish" ,(origin
(method git-fetch)
(uri (git-reference
@ -10351,13 +10459,7 @@ The following file formats are supported:
(file-name (git-file-name "pufferfish" version))
(sha256
(base32
"0jakgpbanl6cs23x3g26iab54p7zylcf9v8vc32ps57smp8wql52"))))
("tbb" ,tbb-2020)
("libstadenio-for-salmon" ,libstadenio-for-salmon)
("xz" ,xz)
("zlib" ,zlib)))
(native-inputs
(list pkg-config))
"048a006mc2d0h78ym58mv67hl1pj480ilc5ifq0rlzfdyyfs1b8i"))))))
(home-page "https://github.com/COMBINE-lab/salmon")
(synopsis "Quantification from RNA-seq reads using lightweight alignments")
(description "Salmon is a program to produce highly-accurate,
@ -11304,7 +11406,7 @@ based methods.")
(define-public pigx-sars-cov-2
(package
(name "pigx-sars-cov-2")
(version "0.0.7")
(version "0.0.8")
(source (origin
(method url-fetch)
(uri (string-append "https://github.com/BIMSBbioinfo/pigx_sars-cov-2"
@ -11312,24 +11414,51 @@ based methods.")
"/pigx_sars-cov-2-" version ".tar.gz"))
(sha256
(base32
"1bqm03ypf7l8lrkjkydxzn7vy0qlps3v9c5cpz2wb008zw44bi3k"))))
"1yf1y25asnhxz80dajs54wrhr0wyi9fldk7lxsnqrh7gpqp2dvcs"))))
(build-system gnu-build-system)
(arguments
`(#:tests? #f ;requires huge kraken database
#:phases
(modify-phases %standard-phases
(add-before 'bootstrap 'autoreconf
(lambda _
;; https://github.com/BIMSBbioinfo/pigx_sars-cov-2/issues/123
(substitute* "m4/ax_r_package.m4"
(("if\\(is.na\\(packageDescription\\(\"PKG\"\\)\\)\\)")
"if(system.file(package=\"PKG\") == \"\")"))
(invoke "autoreconf" "-vif")))
(list
#:phases
'(modify-phases %standard-phases
(add-after 'unpack 'unpack-databases
(lambda* (#:key inputs #:allow-other-keys)
;; The tests need to be able to write caches to HOME.
;; They also default to reading the databases from there.
(setenv "HOME" "/tmp")
;; Unpack the three databases in the expected location.
(let ((root "/tmp/.local/share/pigx/databases")
(use-underscore (lambda (c) (if (equal? c #\-) #\_ c))))
(for-each (lambda (db)
(let ((where (string-append root "/"
(string-map use-underscore db))))
(mkdir-p where)
(invoke "tar" "-C" where
"-xf" (assoc-ref inputs db))))
'("kraken-db" "krona-db" "vep-db")))))
(add-before 'configure 'set-PYTHONPATH
(lambda _
(setenv "PYTHONPATH" (getenv "GUIX_PYTHONPATH")))))))
(native-inputs
(list automake autoconf))
(let ((bimsb-origin
(lambda (name hash)
(origin
(method url-fetch)
(uri
(string-append "https://bimsbstatic.mdc-berlin.de/akalin/AAkalin_pathogenomics"
"/databases_small-20221006/" name))
(sha256 (base32 hash))))))
`(("kraken-db"
,(bimsb-origin
"kraken_db.tar.gz"
"0sdm4xh5npg6c3y2pz8xgphim4qpglm8wdid6rlaaqsn6iikv0mz"))
("krona-db"
,(bimsb-origin
"krona_db.tar.gz"
"1rwy4gd3vw1gdjldrgf44c1xaa3vq8i3pgisjhrac81yx63x8f2h"))
("vep-db"
,(bimsb-origin
"vep_db.tar.gz"
"0d8hhi43zsw3wqm7gd0z0gpcdsc6h6ra0imn87hifl9a64jxqzxz")))))
(inputs
(list bash-minimal
bedtools
@ -11345,10 +11474,16 @@ based methods.")
python-pyyaml
python-wrapper
r-base64url
r-data-table
r-deconvr
r-dplyr
r-dt
r-ggplot2
r-htmltools
r-jsonlite
r-knitr
r-magrittr
r-mass
r-minimal
r-plotly
r-qpcr
@ -16229,6 +16364,38 @@ BigWig files, as well as efficient region coverage summary over intervals from
both types of files.")
(license license:expat)))
(define-public megahit
(package
(name "megahit")
(version "1.2.9")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/voutcn/megahit.git")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
"1r5d9nkdmgjsbrpj43q9hy3s8jwsabaz3ji561v18hy47v58923c"))))
(build-system cmake-build-system)
(arguments
(list
#:test-target "simple_test"
#:phases
'(modify-phases %standard-phases
(add-after 'unpack 'fix-tests
(lambda _
(substitute* "src/megahit"
(("os.path.join\\(script_path, '..'\\)")
"os.path.join(script_path, '../source')")))))))
(inputs (list python-wrapper zlib))
(home-page "https://www.ncbi.nlm.nih.gov/pubmed/25609793")
(synopsis "Meta-genome assembler")
(description "Megahit is a fast and memory-efficient NGS assembler. It is
optimized for metagenomes, but also works well on generic single genome
assembly (small or mammalian size) and single-cell assembly.")
(license license:gpl3)))
(define-public mudskipper
(package
(name "mudskipper")

View file

@ -14,6 +14,7 @@
;;; Copyright © 2020 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2021 qblade <qblade@protonmail.com>
;;; Copyright © 2021 Maxim Cournoyer <maxim.cournoyer@gmail.com>
;;; Copyright © 2022 Juliana Sims <jtsims@protonmail.com>
;;;
;;; This file is part of GNU Guix.
;;;
@ -763,3 +764,35 @@ Build has features such as:
@item Extensible language/compiler framework.
@end itemize")
(license license:gpl2+)))
(define-public genie
(let ((commit "b139103697bbb62db895e4cc7bfe202bcff4ff25")
(revision "0"))
(package
(name "genie")
(version (git-version "1167" revision commit))
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/bkaradzic/genie")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32
"16plshzkyjjzpfcxnwjskrs7i4gg0qn92h2k0rbfl4a79fgmwvwv"))))
(build-system gnu-build-system)
(arguments
(list #:phases #~(modify-phases %standard-phases
(delete 'configure)
(replace 'install
(lambda _
(install-file "bin/linux/genie"
(string-append #$output "/bin")))))
#:tests? #f)) ;no tests
(home-page "https://github.com/bkaradzic/genie")
(synopsis "Project generator")
(description
"GENie generates projects from Lua scripts, making it easy to apply the
same settings to multiple projects. It supports generating projects using GNU
Makefiles, JSON Compilation Database, and experimentally Ninja.")
(license license:bsd-3))))

View file

@ -319,7 +319,7 @@
;; run the Blink performance tests, just remove everything to save ~70MiB.
'("third_party/blink/perf_tests"))
(define %chromium-version "106.0.5249.61")
(define %chromium-version "106.0.5249.103")
(define %ungoogled-revision (string-append %chromium-version "-1"))
(define %debian-revision "debian/102.0.5005.61-1")
(define %arch-revision "6afedb08139b97089ce8ef720ece5cd14c83948c")
@ -332,7 +332,7 @@
(file-name (git-file-name "ungoogled-chromium" %ungoogled-revision))
(sha256
(base32
"0mz3f4f2q72zl6m9vxxx084z0a1kfmsqf7fcir5bka85ap2klpjl"))))
"00acfq9hsdjqqlxddr9lr45l4372mpqxj717qpf78z8iyrccjm23"))))
(define %debian-origin
(origin
@ -516,7 +516,7 @@
%chromium-version ".tar.xz"))
(sha256
(base32
"15qljfg8w124yp65srp1rz3ywrlqhzqzkhimn1h9xz0jkf9cnypj"))
"0k2f3hc6mdmwzw9zzwcv6pnpibdz47a3xxkhfcvdki5gbag6cpr2"))
(modules '((guix build utils)))
(snippet (force ungoogled-chromium-snippet))))
(build-system gnu-build-system)

View file

@ -21328,6 +21328,33 @@ using a lasso (L1) penalty. Facilities are provided for estimates along a
path of values for the regularization parameter.")
(license license:gpl2)))
(define-public r-gldex
(package
(name "r-gldex")
(version "2.0.0.9")
(source (origin
(method url-fetch)
(uri (cran-uri "GLDEX" version))
(sha256
(base32
"1g0wg6z4ba1n6p2nw3kr734wlgmq0aw1a4spr6xw6djj7idsfi61"))))
(properties `((upstream-name . "GLDEX")))
(build-system r-build-system)
(propagated-inputs (list r-cluster r-spacefillr))
(home-page "https://cran.r-project.org/package=GLDEX")
(synopsis "Fitting single and mixture of generalised lambda distributions")
(description
"@code{GLDEX} offers fitting algorithms corresponding to two major
objectives. One is to provide a smoothing device to fit distributions to data
using the weighted and unweighted discretised approach based on the bin width
of the histogram. The other is to provide a definitive fit to the data set
using the maximum likelihood and quantile matching estimation. Other methods
such as moment matching, starship method, and L moment matching are also
provided. Diagnostics on goodness of fit can be done via qqplots, KS-resample
tests and comparing mean, variance, skewness and kurtosis of the data with the
fitted distribution.")
(license license:gpl3+)))
(define-public r-rhpcblasctl
(package
(name "r-rhpcblasctl")
@ -34733,6 +34760,30 @@ analyses.")
for rendering equations in the HTML help files.")
(license (list license:asl2.0 license:gpl3))))
(define-public r-spacefillr
(package
(name "r-spacefillr")
(version "0.3.0")
(source (origin
(method url-fetch)
(uri (cran-uri "spacefillr" version))
(sha256
(base32
"0c4yasc1zizjmhd2ciyz86lg76fsrxvl19yjkb2fmkda9rmnc0bf"))))
(properties `((upstream-name . "spacefillr")))
(build-system r-build-system)
(propagated-inputs (list r-rcpp))
(home-page "https://github.com/tylermorganwall/spacefillr")
(synopsis "Space-Filling Random and Quasi-Random Sequences")
(description
"@code{spacefillr} enables generation of random and quasi-random
space-filling sequences. It supports the following sequences: Halton, Sobol,
Owen-scrambled Sobol, Owen-scrambled Sobol with errors distributed as blue
noise, progressive jittered, progressive multi-jittered (PMJ), PMJ with blue
noise, PMJ02, and PMJ02 with blue noise. The package also includes a C++
API.")
(license license:expat)))
(define-public r-spacetime
(package
(name "r-spacetime")

View file

@ -28,6 +28,7 @@
;;; Copyright © 2022 Marius Bakke <marius@gnu.org>
;;; Copyright © 2022 Evgenii Lepikhin <e.lepikhin@corp.mail.ru>
;;; Copyright © 2022 Gabriel Arazas <foo.dogsquared@gmail.com>
;;; Copyright © 2022 ( <paren@disroot.org>
;;;
;;; This file is part of GNU Guix.
;;;
@ -2929,7 +2930,7 @@ escape codes.")
(define-public rust-anyhow-1
(package
(name "rust-anyhow")
(version "1.0.46")
(version "1.0.65")
(source
(origin
(method url-fetch)
@ -2938,12 +2939,15 @@ escape codes.")
(string-append name "-" version ".tar.gz"))
(sha256
(base32
"0w0zm1bqk5kbk834r4xszlzqiln4vw5k1lnlswyjkh24khi2ia1s"))))
"00jnbylbji1wxvgpk6fcpcxyh4firn223w0lpdvxm1117r71l5lq"))))
(build-system cargo-build-system)
(arguments
`(#:cargo-development-inputs
`(#:cargo-inputs
(("rust-backtrace" ,rust-backtrace-0.3))
#:cargo-development-inputs
(("rust-futures" ,rust-futures-0.3)
("rust-rustversion" ,rust-rustversion-1)
("rust-syn" ,rust-syn-1)
("rust-thiserror" ,rust-thiserror-1)
("rust-trybuild" ,rust-trybuild-1))))
(home-page "https://github.com/dtolnay/anyhow")
@ -17070,6 +17074,59 @@ type.")
the Debug trait manually.")
(license license:expat)))
(define-public rust-debugger-test-0.1
(package
(name "rust-debugger-test")
(version "0.1.5")
(source (origin
(method url-fetch)
(uri (crate-uri "debugger-test" version))
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32
"182j5sk71yhbn7f5qkx509bdcjz83n1nshpfgfa8dfrgb5gvanyr"))))
(build-system cargo-build-system)
(arguments
`(#:cargo-inputs
(("rust-anyhow" ,rust-anyhow-1)
("rust-log" ,rust-log-0.4)
("rust-quote" ,rust-quote-1)
("rust-syn" ,rust-syn-1))
#:cargo-development-inputs
(("rust-debugger-test-parser" ,rust-debugger-test-parser-0.1)
("rust-regex" ,rust-regex-1))))
(home-page "https://github.com/microsoft/rust_debugger_test")
(synopsis "Proc macro for writing tests with a debugger")
(description
"This package provides a proc macro for writing tests that launch a
debugger and run commands while verifying the output.")
(license (list license:expat license:asl2.0))))
(define-public rust-debugger-test-parser-0.1
(package
(name "rust-debugger-test-parser")
(version "0.1.3")
(source (origin
(method url-fetch)
(uri (crate-uri "debugger-test-parser" version))
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32
"0xcyxw0si7j4h701aksdd08j8jmrzc58833g66wm4xvp592kdrgb"))))
(build-system cargo-build-system)
(arguments
`(#:cargo-inputs
(("rust-anyhow" ,rust-anyhow-1)
("rust-log" ,rust-log-0.4)
("rust-regex" ,rust-regex-1))))
(home-page
"https://github.com/microsoft/rust_debugger_test/debugger_test_parser")
(synopsis "Library for parsing debugger output")
(description
"This package provides a library for parsing the output of a debugger and
verifying the contents.")
(license (list license:expat license:asl2.0))))
(define-public rust-decimal-2
(package
(name "rust-decimal")
@ -18658,17 +18715,17 @@ other data.")
#:cargo-development-inputs
(("rust-bencher" ,rust-bencher-0.1))))))
(define-public rust-dirs-3
(define-public rust-dirs-4
(package
(name "rust-dirs")
(version "3.0.1")
(version "4.0.0")
(source
(origin
(method url-fetch)
(uri (crate-uri "dirs" version))
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32 "1zxrb3anxsh80mnp2il7awccv0s5gvy7djn6gis18nbm0bnraa8l"))))
(base32 "0n8020zl4f0frfnzvgb9agvk4a14i1kjz4daqnxkgslndwmaffna"))))
(build-system cargo-build-system)
(arguments
`(#:cargo-inputs
@ -18680,6 +18737,19 @@ other data.")
standard locations of directories for config, cache and other data.")
(license (list license:expat license:asl2.0))))
(define-public rust-dirs-3
(package
(inherit rust-dirs-4)
(name "rust-dirs")
(version "3.0.2")
(source
(origin
(method url-fetch)
(uri (crate-uri "dirs" version))
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32 "028kqy0vrbfgrk1yc1flq2fqh8snyg17qlygawm0r79w211s1fih"))))))
(define-public rust-dirs-2
(package
(inherit rust-dirs-3)
@ -21955,14 +22025,14 @@ floats.")
(define-public rust-fastrand-1
(package
(name "rust-fastrand")
(version "1.6.0")
(version "1.8.0")
(source
(origin
(method url-fetch)
(uri (crate-uri "fastrand" version))
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32 "1ci4fcwfwkkpwd8b0zgxgvp4qf84cl53ivnp1r6cr40bd8xh97bp"))))
(base32 "16b4z2rig7zmyxw1hsiydv89h9wcshilds13dfpc919kmb7hg957"))))
(build-system cargo-build-system)
(arguments
`(#:cargo-inputs
@ -23210,19 +23280,18 @@ implementation that is more efficient for smaller hash keys.")
(define-public rust-form-urlencoded-1
(package
(name "rust-form-urlencoded")
(version "1.0.0")
(version "1.1.0")
(source
(origin
(method url-fetch)
(uri (crate-uri "form_urlencoded" version))
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32 "005yi1319k5bz8g5ylbdiakq5jp5jh90yy6k357zm11fr4aqvrpc"))))
(base32 "1y3bwavygjzv7b0yqsjqk33yi6wz25b7q2aaq9h54vqmc7qq9hx9"))))
(build-system cargo-build-system)
(arguments
`(#:cargo-inputs
(("rust-matches" ,rust-matches-0.1)
("rust-percent-encoding" ,rust-percent-encoding-2))))
(("rust-percent-encoding" ,rust-percent-encoding-2))))
(home-page "https://github.com/servo/rust-url")
(synopsis "Parser and serializer for the urlencoded syntax")
(description
@ -26364,6 +26433,32 @@ and loading crate.")
loading crate.")
(license license:expat)))
(define-public rust-greetd-ipc-0.8
(package
(name "rust-greetd-ipc")
(version "0.8.0")
(source (origin
(method url-fetch)
(uri (crate-uri "greetd-ipc" version))
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32
"1dscriv3adjyaxfaax3cmqrzx6q2vwwchbh86dhll783wjc4ivw0"))))
(build-system cargo-build-system)
(arguments
(list #:cargo-inputs
`(("rust-async-trait" ,rust-async-trait-0.1)
("rust-serde" ,rust-serde-1)
("rust-serde-json" ,rust-serde-json-1)
("rust-thiserror" ,rust-thiserror-1)
("rust-tokio" ,rust-tokio-1))))
(home-page "https://kl.wtf/projects/greetd")
(synopsis "@command{greetd} IPC protocol library for Rust")
(description
"This package provides library that helps you use the
@command{greetd} JSON-based IPC protocol from Rust.")
(license license:gpl3)))
(define-public rust-grep-0.2
(package
(name "rust-grep")
@ -29207,8 +29302,36 @@ with hyper.")
"Utility for applying case rules to Rust identifiers.")
(license (list license:expat license:asl2.0))))
(define-public rust-idna-0.3
(package
(name "rust-idna")
(version "0.3.0")
(source
(origin
(method url-fetch)
(uri (crate-uri "idna" version))
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32 "1rh9f9jls0jy3g8rh2bfpjhvvhh4q80348jc4jr2s844133xykg1"))))
(build-system cargo-build-system)
(arguments
`(#:cargo-inputs
(("rust-unicode-bidi" ,rust-unicode-bidi-0.3)
("rust-unicode-normalization" ,rust-unicode-normalization-0.1))
#:cargo-development-inputs
(("rust-assert-matches" ,rust-assert-matches-1)
("rust-bencher" ,rust-bencher-0.1)
("rust-serde-json" ,rust-serde-json-1)
("rust-tester" ,rust-tester-0.9))))
(home-page "https://github.com/servo/rust-url/")
(synopsis "Internationalizing Domain Names in Applications and Punycode")
(description
"IDNA (Internationalizing Domain Names in Applications) and Punycode.")
(license (list license:expat license:asl2.0))))
(define-public rust-idna-0.2
(package
(inherit rust-idna-0.3)
(name "rust-idna")
(version "0.2.3")
(source
@ -29218,18 +29341,12 @@ with hyper.")
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32 "1y7ca2w5qp9msgl57n03zqp78gq1bk2crqzg6kv7a542mdphm2j1"))))
(build-system cargo-build-system)
(arguments
`(#:skip-build? #t
#:cargo-inputs
(("rust-matches" ,rust-matches-0.1)
("rust-unicode-bidi" ,rust-unicode-bidi-0.3)
("rust-unicode-normalization" ,rust-unicode-normalization-0.1))))
(home-page "https://github.com/servo/rust-url/")
(synopsis "Internationalizing Domain Names in Applications and Punycode")
(description
"IDNA (Internationalizing Domain Names in Applications) and Punycode.")
(license (list license:expat license:asl2.0))))
("rust-unicode-normalization" ,rust-unicode-normalization-0.1))))))
(define-public rust-idna-0.1
(package
@ -32082,14 +32199,14 @@ nor a system allocator.")
(define-public rust-lexopt-0.2
(package
(name "rust-lexopt")
(version "0.2.0")
(version "0.2.1")
(source
(origin
(method url-fetch)
(uri (crate-uri "lexopt" version))
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32 "0w1adb1qwp9rkznq37qvwh01ckxpwcywb6ki9mlw03filyp16xfy"))))
(base32 "1s7k6hra9p9xilhl852qi1a7c2gis59qf4yl1ca5pbxf5bkfk3j7"))))
(build-system cargo-build-system)
(home-page "https://github.com/blyxxyz/lexopt")
(synopsis "Minimalist pedantic command line parser")
@ -40768,7 +40885,7 @@ other crates to create safe wrappers around Oniguruma.")
(define-public rust-once-cell-1
(package
(name "rust-once-cell")
(version "1.13.0")
(version "1.15.0")
(source
(origin
(method url-fetch)
@ -40776,11 +40893,11 @@ other crates to create safe wrappers around Oniguruma.")
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32
"1qfqvgnwfzzwxd13ybvplzshaqwnjnna9ghcn0zgijaq0zixp9hq"))))
"1q9r8c0ls1qgjp89p4rd36sjv4671pz6710c106ajwcv2c2asbg8"))))
(build-system cargo-build-system)
(arguments
`(#:cargo-inputs
(("rust-atomic-polyfill" ,rust-atomic-polyfill-0.1)
(("rust-atomic-polyfill" ,rust-atomic-polyfill-1)
("rust-parking-lot-core" ,rust-parking-lot-core-0.9))
#:cargo-development-inputs
(("rust-crossbeam-utils" ,rust-crossbeam-utils-0.8)
@ -41377,10 +41494,27 @@ under its new name.")
"04yjs1hf88jjm17g8a2lr7ibxyyg460rzbgcw9f1yzihq833y8zv"))))
(native-inputs (list))))
(define-public rust-os-pipe-0.5
(define-public rust-os-pipe-0.8
(package
(inherit rust-os-pipe-0.9)
(name "rust-os-pipe")
(version "0.8.2")
(source (origin
(method url-fetch)
(uri (crate-uri "os-pipe" version))
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32
"049ax8shxik7mm68r2nf7xnrcq3z3p7hz54sbrcxwywxqsjdzs41"))))
(arguments
(list #:cargo-inputs
`(("rust-nix" ,rust-nix-0.15)
("rust-winapi" ,rust-winapi-0.3))))))
(define-public rust-os-pipe-0.5
(package
(inherit rust-os-pipe-0.8)
(name "rust-os-pipe")
(version "0.5.1")
(source
(origin
@ -43458,7 +43592,7 @@ implementation suitable for use with cryptographic private keys.")
(define-public rust-percent-encoding-2
(package
(name "rust-percent-encoding")
(version "2.1.0")
(version "2.2.0")
(source
(origin
(method url-fetch)
@ -43466,7 +43600,7 @@ implementation suitable for use with cryptographic private keys.")
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32
"0bp3zrsk3kr47fbpipyczidbbx4g54lzxdm77ni1i3qws10mdzfl"))))
"13nrpp6r1f4k14viksga3094krcrxgv4b42kqbriy63k7ln5g327"))))
(build-system cargo-build-system)
(home-page "https://github.com/servo/rust-url/")
(synopsis "Percent encoding and decoding")
@ -48375,7 +48509,7 @@ and Petrick's method, an algorithm to automatically minimize boolean expressions
(define-public rust-quote-1
(package
(name "rust-quote")
(version "1.0.9")
(version "1.0.21")
(source
(origin
(method url-fetch)
@ -48383,7 +48517,7 @@ and Petrick's method, an algorithm to automatically minimize boolean expressions
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32
"19rjmfqzk26rxbgxy5j2ckqc2v12sw2xw8l4gi8bzpn2bmsbkl63"))))
"0yai5cyd9h95n7hkwjcx8ig3yv0hindmz5gm60g9dmm7fzrlir5v"))))
(build-system cargo-build-system)
(arguments
`(#:cargo-inputs
@ -53835,7 +53969,7 @@ font rendering.")
(define-public rust-rustversion-1
(package
(name "rust-rustversion")
(version "1.0.2")
(version "1.0.9")
(source
(origin
(method url-fetch)
@ -53844,13 +53978,11 @@ font rendering.")
(string-append name "-" version ".tar.gz"))
(sha256
(base32
"1xkr1g792w728py2qpg2zj0vfviv2xzmxkkd9w6035l9d5ss3fxk"))))
"1a6nlrrnfbacn5pzg3m3311anhngcxs8kbvsbynh71ngni47wiwp"))))
(build-system cargo-build-system)
(arguments
`(#:cargo-inputs
(("rust-proc-macro2" ,rust-proc-macro2-1)
("rust-quote" ,rust-quote-1)
("rust-syn" ,rust-syn-1))))
`(#:cargo-development-inputs
(("rust-trybuild" ,rust-trybuild-1))))
(home-page "https://github.com/dtolnay/rustversion")
(synopsis "Conditional compilation according to rustc compiler version")
(description
@ -64781,8 +64913,39 @@ one body with different resource input parameters. A test is generated for
each resource matching the specific resource location pattern.")
(license license:asl2.0)))
(define-public rust-tester-0.9
(package
(name "rust-tester")
(version "0.9.0")
(source
(origin
(method url-fetch)
(uri (crate-uri "tester" version))
(file-name
(string-append name "-" version ".tar.gz"))
(sha256
(base32
"1svnlmaynfvfqmy7zjvbh2xwzdxxz50cyxbjlliz45a6iw6x2f86"))))
(build-system cargo-build-system)
(arguments
`(#:cargo-inputs
(("rust-cfg-if" ,rust-cfg-if-1)
("rust-getopts" ,rust-getopts-0.2)
("rust-libc" ,rust-libc-0.2)
("rust-num-cpus" ,rust-num-cpus-1)
("rust-term" ,rust-term-0.7))))
(home-page
"https://github.com/messense/rustc-test")
(synopsis
"Fork of Rust's test crate")
(description
"This package provides a fork of Rust's test crate that doesn't require
unstable language features.")
(license (list license:expat license:asl2.0))))
(define-public rust-tester-0.5
(package
(inherit rust-tester-0.9)
(name "rust-tester")
(version "0.5.0")
(source
@ -64794,21 +64957,12 @@ each resource matching the specific resource location pattern.")
(sha256
(base32
"1xkgapz2i4j977f6kh1zp6sa5llbhy5vbnr6kfj8czsrdjr2r0ay"))))
(build-system cargo-build-system)
(arguments
`(#:skip-build? #t
#:cargo-inputs
(("rust-getopts" ,rust-getopts-0.2)
("rust-libc" ,rust-libc-0.2)
("rust-term" ,rust-term-0.4))))
(home-page
"https://github.com/messense/rustc-test")
(synopsis
"Fork of Rust's test crate")
(description
"This package provides a fork of Rust's test crate that doesn't require
unstable language features.")
(license (list license:expat license:asl2.0))))
("rust-term" ,rust-term-0.4))))))
(define-public rust-text-size-1
(package
@ -70547,7 +70701,7 @@ boundaries according to Unicode Standard Annex #29 rules.")
(define-public rust-unicode-width-0.1
(package
(name "rust-unicode-width")
(version "0.1.9")
(version "0.1.10")
(source
(origin
(method url-fetch)
@ -70555,7 +70709,7 @@ boundaries according to Unicode Standard Annex #29 rules.")
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32
"0wq9wl69wlp6zwlxp660g9p4hm5gk91chwk14dp1gl9bxba45mry"))))
"12vc3wv0qwg8rzcgb9bhaf5119dlmd6lmkhbfy1zfls6n7jx3vf0"))))
(build-system cargo-build-system)
(arguments
`(#:cargo-inputs
@ -70966,7 +71120,7 @@ type-safe zero-cost dimensional analysis.")
(define-public rust-url-2
(package
(name "rust-url")
(version "2.2.2")
(version "2.3.1")
(source
(origin
(method url-fetch)
@ -70975,19 +71129,18 @@ type-safe zero-cost dimensional analysis.")
(string-append name "-" version ".tar.gz"))
(sha256
(base32
"132pzpvfvpw33gjlzqd55n5iag9qddzffq8qbp1myfykna1w61x5"))))
"0hs67jw257y0a7mj2p9wi0n61x8fc2vgwxg37y62nxkmmscwfs0d"))))
(build-system cargo-build-system)
(arguments
`(#:skip-build? #t
#:cargo-inputs
`(#:cargo-inputs
(("rust-form-urlencoded" ,rust-form-urlencoded-1)
("rust-idna" ,rust-idna-0.2)
("rust-matches" ,rust-matches-0.1)
("rust-idna" ,rust-idna-0.3)
("rust-percent-encoding" ,rust-percent-encoding-2)
("rust-serde" ,rust-serde-1))
#:cargo-development-inputs
(("rust-bencher" ,rust-bencher-0.1)
("rust-rustc-test" ,rust-rustc-test-0.3)
("rust-debugger-test" ,rust-debugger-test-0.1)
("rust-debugger-test-parser" ,rust-debugger-test-parser-0.1)
("rust-serde-json" ,rust-serde-json-1))))
(home-page "https://github.com/servo/rust-url")
(synopsis "URL library for Rust, based on the WHATWG URL Standard")
@ -74131,16 +74284,16 @@ extended attributes.")
(define-public rust-xdg-2
(package
(name "rust-xdg")
(version "2.4.0")
(version "2.4.1")
(source
(origin
(method url-fetch)
(uri (crate-uri "xdg" version))
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32 "00sqvl6v0sjdrrmyk2671sshnjlbjdwgb1lw0f3jchbhijazw8rs"))))
(base32 "1xl81zfx5fsc5n06h77s0fvrslzhh2piabfz0c1lqk5xbkdq6i8c"))))
(build-system cargo-build-system)
(arguments `(#:cargo-inputs (("rust-dirs" ,rust-dirs-3))))
(arguments `(#:cargo-inputs (("rust-dirs" ,rust-dirs-4))))
(home-page "https://github.com/whitequark/rust-xdg")
(synopsis "Store and retrieve files according to XDG specification")
(description

View file

@ -7,6 +7,7 @@
;;; Copyright © 2020 Jakub Kądziołka <kuba@kadziolka.net>
;;; Copyright © 2021 Leo Le Bouter <lle-bout@zaclys.net>
;;; Copyright © 2021 Maxime Devos <maximedevos@telenet.be>
;;; Copyright © 2021 LuHui <luhux76@gmail.com>
;;;
;;; This file is part of GNU Guix.
;;;
@ -65,7 +66,8 @@
;; for "--build", but not for "--host", so update config.sub.
,@(if (and (%current-target-system)
(or (target-ppc64le? (%current-target-system))
(target-aarch64? (%current-target-system))))
(target-aarch64? (%current-target-system))
(target-riscv64? (%current-target-system))))
`((add-after 'unpack 'update-config.sub
(lambda* (#:key native-inputs #:allow-other-keys)
(delete-file "dist/config.sub")
@ -118,7 +120,8 @@
(native-inputs
(if (and (%current-target-system)
(or (target-ppc64le? (%current-target-system))
(target-aarch64? (%current-target-system))))
(target-aarch64? (%current-target-system))
(target-riscv64? (%current-target-system))))
`(("config" ,config)) ; for config.sub
'()))
(synopsis "Berkeley database")

View file

@ -582,7 +582,7 @@ a pen-tablet display and a beamer.")
(define-public fet
(package
(name "fet")
(version "6.5.7")
(version "6.6.2")
(source
(origin
(method url-fetch)
@ -591,7 +591,7 @@ a pen-tablet display and a beamer.")
(list (string-append directory base)
(string-append directory "old/" base))))
(sha256
(base32 "08j5i3dlp290fz142ljn68j8ssi5f3kabs0dd75ig33kms30hjs7"))))
(base32 "0w3fp367r8gx35qmfcx9v8z2lrwfm0fjqbadyk3lhwf28gb1csxr"))))
(build-system gnu-build-system)
(arguments
(list
@ -1065,15 +1065,36 @@ machine, and more.")
(arguments
`(#:import-path "github.com/exercism/cli/exercism"
#:unpack-path "github.com/exercism/cli"
#:install-source? #f))
#:install-source? #f
#:phases
(modify-phases %standard-phases
(add-after 'install 'install-completions
(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(bash (string-append out "/etc/bash_completion.d/exercism"))
(fish (string-append
out "/share/fish/vendor_completions.d/exercism.fish"))
(zsh (string-append out "/share/zsh/site-functions/_exercism")))
(mkdir-p (dirname bash))
(with-output-to-file bash
(lambda ()
(invoke (string-append out "/bin/exercism") "completion" "bash")))
(mkdir-p (dirname fish))
(with-output-to-file fish
(lambda ()
(invoke (string-append out "/bin/exercism") "completion" "fish")))
(mkdir-p (dirname zsh))
(with-output-to-file zsh
(lambda ()
(invoke (string-append out "/bin/exercism") "completion" "zsh")))))))))
(inputs
`(("github.com/blang/semver" ,go-github-com-blang-semver)
("github.com/spf13/cobra" ,go-github-com-spf13-cobra)
("github.com/spf13/pflag" ,go-github-com-spf13-pflag)
("github.com/spf13/viper" ,go-github-com-spf13-viper)
("golang.org/x/net" ,go-golang-org-x-net)
("golang.org/x/text" ,go-golang-org-x-text)))
(home-page "https://exercism.io")
(list go-github-com-blang-semver
go-github-com-spf13-cobra
go-github-com-spf13-pflag
go-github-com-spf13-viper
go-golang-org-x-net
go-golang-org-x-text))
(home-page "https://exercism.org/")
(synopsis "Mentored learning for programming languages")
(description "Commandline client for exercism.io, a free service providing
mentored learning for programming languages.")

View file

@ -1798,35 +1798,33 @@ programs.")
(license license:gpl3+))))
(define-public emacs-dante
(let ((commit "38b589417294c7ea44bf65b73b8046d950f9531b")
(revision "1"))
(package
(name "emacs-dante")
(version (git-version "1.6" revision commit))
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/jyp/dante")
(commit commit)))
(sha256
(base32
"1mnmn635552zlwd4zr68jbvdjipl6gi4mi6wiyck28fsmq8kw96h"))
(file-name (git-file-name name version))))
(build-system emacs-build-system)
(propagated-inputs
(list emacs-dash
emacs-f
emacs-flycheck
emacs-haskell-mode
emacs-s
emacs-company
emacs-lcr))
(home-page "https://github.com/jyp/dante")
(synopsis "Minor mode for interactive Haskell")
(description
"This package provides a minor mode for Haskell development that
(package
(name "emacs-dante")
(version "1.7")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/jyp/dante")
(commit version)))
(sha256
(base32
"0q7hackvaplh1f645ngd76f2ls5mvg93xicr3rkxr07hd36yihag"))
(file-name (git-file-name name version))))
(build-system emacs-build-system)
(propagated-inputs
(list emacs-company
emacs-dash
emacs-f
emacs-flycheck
emacs-haskell-mode
emacs-lcr
emacs-s))
(home-page "https://github.com/jyp/dante")
(synopsis "Minor mode for interactive Haskell")
(description
"This package provides a minor mode for Haskell development that
supports type hints, definition-jumping, completion, and more.")
(license license:gpl3+))))
(license license:gpl3+)))
(define-public emacs-flycheck
(package
@ -2481,14 +2479,14 @@ incrementally confined in Isearch manner.")
(define emacs-emms-print-metadata
(package
(name "emacs-emms-print-metadata")
(version "11")
(version "12")
(source
(origin
(method url-fetch)
(uri (string-append "https://elpa.gnu.org/packages/"
"emms-" version ".tar"))
(sha256
(base32 "000lqhsafyh1n293ksnlyavxv1pzl5pazds4sgxjcqd45lyn55ii"))))
(base32 "048ijrpw6s4k7zr78fzc3ksjjri6mnyp6c47h5lp5nw5gvm4np7a"))))
(build-system gnu-build-system)
(arguments
(list
@ -3026,23 +3024,27 @@ links.")
(base32 "1p918y24vcn2pdliaymd210xp9fvhd4a1srqbv2lfiqrh59yjidx"))))
(build-system emacs-build-system)
(arguments
`(#:phases
(modify-phases %standard-phases
(add-before 'install 'make-info
(lambda _
(with-directory-excursion "docs"
(invoke "make" "info"))))
(add-after 'install 'install-info
(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(info (string-append out "/share/info")))
(install-file "docs/_build/texinfo/agel.info" info)))))))
(list
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'substitute-ag-path
(lambda* (#:key inputs #:allow-other-keys)
(make-file-writable "ag.el")
(emacs-substitute-variables "ag.el"
("ag-executable" (search-input-file inputs "/bin/ag")))))
(add-before 'install 'make-info
(lambda _
(with-directory-excursion "docs"
(invoke "make" "info"))))
(add-after 'install 'install-info
(lambda _
(install-file "docs/_build/texinfo/agel.info"
(string-append #$output "/share/info")))))))
(inputs (list the-silver-searcher)) ; 'ag' executable
(native-inputs
(list python-sphinx texinfo))
(propagated-inputs
(list emacs-dash
emacs-s
the-silver-searcher)) ;'ag' executable
(list emacs-dash emacs-s))
(home-page "https://github.com/Wilfred/ag.el")
(synopsis "Front-end for ag (the-silver-searcher) for Emacs")
(description "This package provides the ability to use the silver
@ -3085,7 +3087,7 @@ while paused.")
(package
(name "emacs-async")
(home-page "https://github.com/jwiegley/emacs-async")
(version "1.9.6")
(version "1.9.7")
(source (origin
(method git-fetch)
(uri (git-reference
@ -3094,7 +3096,7 @@ while paused.")
(file-name (git-file-name name version))
(sha256
(base32
"1q480ss2jgijdpy6pa4xrjni9pf5q6dwf8hv052fhdpi55bmfdn2"))))
"18pysi1pf6hbv6w0nq50j5xclvgd006iqqijh44wck9hxhdwyfr1"))))
(build-system emacs-build-system)
(synopsis "Asynchronous processing in Emacs")
(description
@ -4185,20 +4187,20 @@ type, for example: packages, buffers, files, etc.")
(license license:gpl3+)))
(define-public emacs-guix
(let ((commit "c9aef52121b458297e70bb50f49f7276b4a8d759")
(revision "5"))
(let ((commit "cf5b7a402ea503c3dcda85a86b9a6c6dd01896e0")
(revision "6"))
(package
(name "emacs-guix")
(version (git-version "0.5.2" revision commit))
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://gitlab.com/emacs-guix/emacs-guix.git")
(url "https://git.savannah.gnu.org/git/guix/emacs-guix.git")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32
"00xdxadbi9fxpfp60zah9190rcz3w08vl1blbhmaiy7c1hd2gi39"))))
"0wxiipgv91rlk9bhspx370rykywi52rxg5m1f7680vzs3ckc7nyd"))))
(build-system gnu-build-system)
(arguments
(list
@ -4220,9 +4222,8 @@ type, for example: packages, buffers, files, etc.")
(native-inputs
(list autoconf automake emacs-minimal pkg-config texinfo))
(inputs
`(("guile"
,@(assoc-ref (package-native-inputs guix) "guile"))
("guix" ,guix)))
(list (lookup-package-input guix "guile")
guix))
(propagated-inputs
(list emacs-bui
emacs-dash
@ -4231,7 +4232,7 @@ type, for example: packages, buffers, files, etc.")
emacs-geiser-guile
emacs-magit-popup
guile-gcrypt))
(home-page "https://emacs-guix.gitlab.io/website/")
(home-page "https://guix.gnu.org")
(synopsis "Emacs interface for GNU Guix")
(description
"Emacs-Guix provides a visual interface, tools and features for the GNU
@ -7102,14 +7103,14 @@ by a query, so both a link can refer to several mails.")
(define-public emacs-debbugs
(package
(name "emacs-debbugs")
(version "0.33")
(version "0.34")
(source
(origin
(method url-fetch)
(uri (string-append "https://elpa.gnu.org/packages/debbugs-"
version ".tar"))
(sha256
(base32 "1s4p3jf9yrm8pn5pljpkrw05n2p9v6fpl141rh1df7f7l0w80qbk"))))
(base32 "06nxia4myhysiw12vsflgllrp9nyhmjnybrrcl1vyf4pw0fc6yrx"))))
(build-system emacs-build-system)
(arguments '(#:include '("\\.el$" "\\.wsdl$" "\\.info$")))
(propagated-inputs
@ -8238,7 +8239,7 @@ for compilation, debugging, documentation lookup, and so on.")
(define-public emacs-popup
(package
(name "emacs-popup")
(version "0.5.8")
(version "0.5.9")
(source
(origin
(method git-fetch)
@ -8247,7 +8248,7 @@ for compilation, debugging, documentation lookup, and so on.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0qrsz4z9q2bfq9xv4n94mvyslm232v2ql9r1fjycx7rnmpqggiwl"))))
(base32 "13ww7hld5pa32myj9krr6prmc99s7hnpsw8mw9krpxffykkblj2f"))))
(build-system emacs-build-system)
(home-page "https://github.com/auto-complete/popup-el")
(synopsis "Visual Popup User Interface for Emacs")
@ -8455,6 +8456,91 @@ the locations of docstrings, arguments, and functions.")
"This package provides a Company backend for Python.")
(license license:gpl3+)))
(define-public emacs-elquery
(package
(name "emacs-elquery")
(version "1.1.0")
(source
(origin
(method git-fetch)
(uri
(git-reference
(url "https://github.com/AdamNiederer/elquery")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "035zjzmd7yfw0rsjpaklc2wwiqw6brkjadch9x8n8n2gjyxg05mn"))))
(build-system emacs-build-system)
(arguments
(list
#:emacs emacs-no-x
#:tests? #t
#:test-command #~(list "ert-runner")
#:phases #~(modify-phases %standard-phases
(add-after 'unpack 'fix-native-compilation
(lambda _
(substitute* "elquery.el"
(("\\(1- \\(/ length \\(match-data\\)\\) 2\\)")
"(1- (/ (length (match-data)) 2))"))))
(add-before 'check 'disable-failing-tests
(lambda _
(substitute* "test/elquery-test.el"
(("\\(ert-deftest elquery--write-test .*" all)
(string-append all "(skip-unless nil)\n"))))))))
(native-inputs
(list emacs-ert-runner emacs-undercover))
(propagated-inputs
(list emacs-dash))
(home-page "https://github.com/AdamNiederer/elquery/")
(synopsis "Read and manipulate HTML in Emacs")
(description
"Elquery is a library that lets you parse, query, set, and format HTML using
Emacs Lisp. It implements most of the @code{querySelector} API, and can get
and set HTML attributes.")
(license license:gpl3+)))
(define-public emacs-cov
;; XXX: Upstream made no release nor any tag so far.
(let ((commit "cd3e1995c596cc227124db9537792d8329ffb696")
(revision "0"))
(package
(name "emacs-cov")
(version (git-version "0.1.0" revision commit))
(source
(origin
(method git-fetch)
(uri
(git-reference
(url "https://github.com/AdamNiederer/cov")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32 "1gyc0si60czhgrkm7kink1p1zj1h5j5nzif4ivm5bg78l28skmpm"))))
(build-system emacs-build-system)
(arguments
(list
#:emacs emacs-no-x ;for libxml
#:tests? #t
#:test-command #~(list "ert-runner")
#:phases
#~(modify-phases %standard-phases
(add-before 'check 'disable-failing-tests
(lambda _
(substitute* "test/cov-test.el"
(("\\(ert-deftest cov--load-coverage-test-mtime-check .*" all)
(string-append all "(skip-unless nil)\n"))))))))
(native-inputs
(list emacs-ert-runner emacs-mocker emacs-undercover))
(propagated-inputs
(list emacs-elquery emacs-f emacs-s))
(home-page "https://github.com/AdamNiederer/cov/")
(synopsis "Emacs extension for displaying coverage data")
(description
"Cov shows code coverage data for your program in Emacs. It supports
currently @code{gcov}, @code{lcov}, @code{coverage.py}, and @code{clover}
output, as well as the Coveralls format produced by Undercover.")
(license license:gpl3+))))
(define-public emacs-puppet-mode
(package
(name "emacs-puppet-mode")
@ -8511,6 +8597,29 @@ linting of manifests and integration with Puppet Debugger.")
(description "This package provides an Emacs major mode for writing Purescript.")
(license license:gpl3+))))
(define-public emacs-new-purescript-mode
(let ((commit "9f7bb73e26340fcd2ea1946dbad165f0406eb3e1")
(revision "0"))
(package
(name "emacs-new-purescript-mode")
(version (git-version "0.0.1" revision commit))
(source
(origin
(method git-fetch)
(uri
(git-reference
(url "https://github.com/justinwoo/new-purescript-mode")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32 "0b3499df0gfz8yrdxz9dpgwal21h50sciigwz25ri1hwv1c1i7k0"))))
(build-system emacs-build-system)
(home-page "https://github.com/justinwoo/new-purescript-mode/")
(synopsis "Simple PureScript mode for cheap syntax highlighting")
(description "New PureScript mode is a simple PureScript Emacs mode that
just provides syntax highlighting.")
(license license:expat))))
(define-public emacs-god-mode
(package
(name "emacs-god-mode")
@ -8754,7 +8863,7 @@ cards created in Org mode.")
(define-public emacs-org-mime
(package
(name "emacs-org-mime")
(version "0.3.1")
(version "0.3.2")
(source
(origin
(method git-fetch)
@ -8763,7 +8872,7 @@ cards created in Org mode.")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "17380kpf08j5ai30nn5iks0k3x8sm3kmz8lkyr1v0qvpr5a8s70b"))))
(base32 "1w5z9irzk918mj75z5m0j2h8mms8v27x50kp7r3b01wblf0jd2zc"))))
(build-system emacs-build-system)
(home-page "https://github.com/org-mime/org-mime")
(synopsis "Send HTML email using Org mode HTML export")
@ -10437,11 +10546,12 @@ matched.")
"18crb4zh2pjf0cmv3b913m9vfng27girjwfqc3mk7vqd1r5a49yk"))))
(build-system emacs-build-system)
(propagated-inputs
(list emacs-ivy emacs-password-store password-store))
(list emacs-ivy emacs-password-store))
(home-page "https://github.com/ecraven/ivy-pass")
(synopsis "Ivy interface for password store (pass)")
(description "This package provides an Ivy interface for working with
the password store @code{pass}.")
(synopsis "Ivy interface to the @code{pass} password store")
(description
"This package provides an Ivy interface for working with the password
store (@code{pass}) in Emacs.")
(license license:gpl3))))
(define-public emacs-ivy-yasnippet
@ -12443,7 +12553,7 @@ ack, ag, helm and pt.")
(define-public emacs-helm
(package
(name "emacs-helm")
(version "3.8.7")
(version "3.8.8")
(source
(origin
(method git-fetch)
@ -12452,7 +12562,7 @@ ack, ag, helm and pt.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1a8zkp00ahb84ww5072naxwllzbjhi7ccarkk2d7xsykn5lig54c"))))
(base32 "1i8hbdp5sg99h3imqydk4wd7mqsa04113yavk5sx1wgc17jm1l42"))))
(build-system emacs-build-system)
(propagated-inputs
(list emacs-async emacs-popup))
@ -15762,14 +15872,14 @@ the center of the screen and not at the bottom.")
(define-public emacs-posframe
(package
(name "emacs-posframe")
(version "1.1.7")
(version "1.1.8")
(source
(origin
(method url-fetch)
(uri (string-append "https://elpa.gnu.org/packages/"
"posframe-" version ".tar"))
(sha256
(base32 "13i2wxx079gfq0vbq0iwmsig5b7x4aspd1q02yqc79846f1dsx4w"))))
(base32 "0560f05c2rh6jkdba4yq9qbazfz6qbdrymqm5zcihvz7cy019dzm"))))
(build-system emacs-build-system)
;; emacs-minimal does not include the function font-info.
(arguments
@ -16321,15 +16431,25 @@ Emacs.")
(define-public emacs-eglot
(package
(name "emacs-eglot")
(version "1.8")
(version "1.9")
(source
(origin
(method url-fetch)
(uri (string-append "https://elpa.gnu.org/packages/"
"eglot-" version ".tar"))
(method git-fetch)
(uri (git-reference
(url "https://github.com/joaotavora/eglot")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "1n04jnf3wwpxafrzfd02l53wf90brjc8p835f84k0n0rjxin99k5"))))
(base32
"1mx2b7ljwvmfl5d0w9m7i1i900198lsdx1cpi8n7wq58h5df88p9"))))
(build-system emacs-build-system)
(arguments
(list
#:tests? #t
#:test-command #~(list "emacs" "--batch"
"-l" "eglot.el"
"-l" "eglot-tests.el"
"-f" "ert-run-tests-batch-and-exit")))
(propagated-inputs
(list emacs-eldoc emacs-jsonrpc emacs-project))
(home-page "https://github.com/joaotavora/eglot")
@ -17018,7 +17138,7 @@ which avoids some of the issues with using Emacss built-in Url library.")
(define-public emacs-ement
(package
(name "emacs-ement")
(version "0.2.1")
(version "0.3.1")
(source
(origin
(method git-fetch)
@ -17027,7 +17147,7 @@ which avoids some of the issues with using Emacss built-in Url library.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0kfh0vlsz4qnx4vwkwhkxawk5cpxgnvkar72wha9cxj8s6j51vx0"))))
(base32 "1ap4zxn2ba8bvmzm77aa4bnxgb1hnz5cymcim9jzy7b67bgapmy7"))))
(build-system emacs-build-system)
(arguments
`(#:emacs ,emacs)) ;need libxml support
@ -17087,7 +17207,7 @@ editing RPM spec files.")
(define-public emacs-lcr
(package
(name "emacs-lcr")
(version "1.1")
(version "1.3")
(source
(origin
(method git-fetch)
@ -17096,7 +17216,7 @@ editing RPM spec files.")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "0mc55icihxqpf8b05990q1lc2nj2792wcgyr73xsiqx0963sjaj8"))))
(base32 "1xhrjvlx3vbjkwx31w18y854hk15qf7h5ccg8yb3jdxl0pm9f41f"))))
(build-system emacs-build-system)
(propagated-inputs
(list emacs-dash))
@ -17505,7 +17625,7 @@ groups.")
(define-public emacs-taxy-magit-section
(package
(name "emacs-taxy-magit-section")
(version "0.10")
(version "0.11")
(source (origin
(method url-fetch)
(uri (string-append
@ -17513,7 +17633,7 @@ groups.")
".tar"))
(sha256
(base32
"1g58nvpb04ldhn5qnjw2q5idrv6vhlfa0qmb46cvis6bkz46cxkw"))))
"058z95c0z2hxplr5pfgph1cdq68zcrkmwx1wqyd5fy4a5h43yknq"))))
(build-system emacs-build-system)
(propagated-inputs (list emacs-magit emacs-taxy))
(home-page "https://github.com/alphapapa/taxy.el")
@ -18357,7 +18477,7 @@ from @code{groovy-mode} for editing Jenkins declarative pipeline files.")
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/ieure/scratch-el")
(url "https://codeberg.org/emacs-weirdware/scratch")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
@ -18376,7 +18496,7 @@ from @code{groovy-mode} for editing Jenkins declarative pipeline files.")
(string-append (assoc-ref outputs "out")
"/share/info"))
#t)))))
(home-page "https://github.com/ieure/scratch-el/")
(home-page "https://codeberg.org/emacs-weirdware/scratch")
(synopsis "Create scratch buffers with the same mode as current buffer")
(description "Scratch is an extension to Emacs that enables one to create
scratch buffers that are in the same mode as the current buffer. This is
@ -18446,7 +18566,7 @@ the format.")
(define-public emacs-nov-el
(package
(name "emacs-nov-el")
(version "0.3.4")
(version "0.4.0")
(source
(origin
(method git-fetch)
@ -18456,18 +18576,18 @@ the format.")
(file-name (git-file-name name version))
(sha256
(base32
"0va9xjrq30cv5kb59a4rq5mcm83ggnv774r8spmskff3hj8012wf"))))
"10507fdfx02wb3j7g34w4ii8rgnjbmriq63ir6x1agf38s3i9p52"))))
(build-system emacs-build-system)
(arguments
`(#:emacs ,emacs ;need libxml
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'embed-path-to-unzip
(lambda _
(substitute* "nov.el"
(("\\(executable-find \"unzip\"\\)")
(string-append "\"" (which "unzip") "\"")))
#t)))))
(list
#:emacs emacs ;need libxml
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'embed-path-to-unzip
(lambda _
(substitute* "nov.el"
(("\\(executable-find \"unzip\"\\)")
(string-append "\"" (which "unzip") "\""))))))))
(propagated-inputs
(list emacs-dash emacs-esxml))
(inputs
@ -18808,30 +18928,37 @@ close, copy, cut, paste, undo, redo.")
(uri (git-reference
(url "git://git.zx2c4.com/password-store")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32
"0ni62f4pq96g0i0q66bch1dl9k4zqwhg7xaf746k3gbbqxcdh3vi"))
(file-name (git-file-name name version))))
"0ni62f4pq96g0i0q66bch1dl9k4zqwhg7xaf746k3gbbqxcdh3vi"))))
(build-system emacs-build-system)
(arguments
`(#:phases
(modify-phases %standard-phases
(add-after 'unpack 'extract-el-file
(lambda _
(copy-file "contrib/emacs/password-store.el" "password-store.el")
(delete-file-recursively "contrib")
(delete-file-recursively "man")
(delete-file-recursively "src")
(delete-file-recursively "tests"))))))
(list #:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'extract-el-file
(lambda _
(copy-file "contrib/emacs/password-store.el"
"password-store.el")
(delete-file-recursively "contrib")
(delete-file-recursively "man")
(delete-file-recursively "src")
(delete-file-recursively "tests")))
(add-after 'extract-el-file 'patch-executables
(lambda* (#:key inputs #:allow-other-keys)
(emacs-substitute-variables "password-store.el"
("password-store-executable"
(search-input-file inputs "/bin/pass"))))))))
(inputs
(list password-store))
(propagated-inputs
(list emacs-auth-source-pass emacs-s emacs-with-editor
password-store))
(list emacs-auth-source-pass emacs-s emacs-with-editor))
(home-page "https://git.zx2c4.com/password-store/tree/contrib/emacs")
(synopsis "Password store (pass) support for Emacs")
(description
"This package provides functions for working with pass (\"the
standard Unix password manager\").")
(license license:gpl2+))))
(license license:gpl3+))))
(define-public emacs-password-store-otp
(package
@ -18971,24 +19098,27 @@ match and total match information in the mode-line in various search modes.")
(license license:gpl3+)))
(define-public emacs-pg
(let ((commit "4f6516ec3946d95dcef49abb6703cc89ecb5183d"))
(package
(name "emacs-pg")
(version (git-version "0.1" "1" commit))
(source (origin
(method git-fetch)
(uri (git-reference (url "https://github.com/cbbrowne/pg.el")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32
"1zh7v4nnpzvbi8yj1ynlqlawk5bmlxi6s80b5f2y7hkdqb5q26k0"))))
(build-system emacs-build-system)
(home-page "https://github.com/cbbrowne/pg.el")
(synopsis "Emacs Lisp interface for PostgreSQL")
(description
"This package provides an Emacs Lisp interface for PostgreSQL.")
(license license:gpl3+))))
(package
(name "emacs-pg")
(version "0.16")
(source (origin
(method git-fetch)
(uri (git-reference (url "https://github.com/emarsden/pg-el")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
"1jdnslpgdm16klaga02p33g7c8bjzg164kxz3jd7gs5v9gqa6ppz"))))
(build-system emacs-build-system)
(home-page "https://github.com/emarsden/pg-el")
(synopsis "Emacs Lisp interface for PostgreSQL")
(description
"This module lets you access the PostgreSQL object-relational DBMS from
Emacs, using its socket-level frontend/backend protocol. The module is
capable of automatic type coercions from a range of SQL types to the
equivalent Emacs Lisp type. This is a low level API, and won't be useful to
end users.")
(license license:gpl2+)))
(define-public emacs-finalize
(package
@ -19526,6 +19656,35 @@ tables of contents.")
timestamps by providing a @code{ts} struct.")
(license license:gpl3+)))
(define-public emacs-circadian
(package
(name "emacs-circadian")
(version "0.3.2")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/guidoschmidt/circadian.el")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "0wpsykmai3idz0bgfl07hwl9nr4x9sgprvqgw8jln4dz2wf5gdic"))))
(arguments
(list
#:tests? #t
#:test-command #~(list "ert-runner")))
(build-system emacs-build-system)
(native-inputs
(list emacs-el-mock emacs-ert-runner))
(home-page "https://github.com/guidoschmidt/circadian.el")
(synopsis "Theme-switching for Emacs based on daytime")
(description "Circadian may reduce eye strain by automatically switching
between light and dark themes based on daytime. It is inspired by color
temperature shifting tools and brightness adaption software.")
;; The LICENSE file is expat, but the sole ".el" file is explicitly GPL3+.
(license (list license:gpl3+
license:expat))))
(define-public emacs-peg
(package
(name "emacs-peg")
@ -21236,7 +21395,7 @@ powerful Org contents.")
(define-public emacs-org-re-reveal
(package
(name "emacs-org-re-reveal")
(version "3.15.0")
(version "3.16.1")
(source
(origin
(method git-fetch)
@ -21245,7 +21404,7 @@ powerful Org contents.")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "0mn7qn80289gizvnxyjjs00b7qmlf0692kai7qgzgfj6i87pjc38"))))
(base32 "1jzr7xlzinhfb0197anbkrr5zrs13f7kyznr5q3zyxdndhg6a53n"))))
(build-system emacs-build-system)
(propagated-inputs
(list emacs-htmlize emacs-org))
@ -26065,8 +26224,8 @@ the standard @code{Dockerfile} file format.")
(license license:asl2.0)))
(define-public emacs-lsp-mode
(let ((commit "4aafe25e03ab7470b8d3c1cb326affa3c5e9930e")
(revision "0"))
(let ((commit "26c4d3e54ad2956623e64132312fe864274d346f")
(revision "1"))
(package
(name "emacs-lsp-mode")
(version (git-version "8.0.1" revision commit))
@ -26078,7 +26237,7 @@ the standard @code{Dockerfile} file format.")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32 "01csz4vr3fg1q2py45mxj5j8bkvckn3daam1jafb2gg9gjc9bp7z"))))
(base32 "0klnik69b5y6s2q00vyshxymlg7k4x9x6m7wpsf7z9w12qn27alx"))))
(build-system emacs-build-system)
(arguments
`(#:emacs ,emacs ;need libxml support
@ -27905,14 +28064,14 @@ well as an option for visually flashing evaluated s-expressions.")
(define-public emacs-tramp
(package
(name "emacs-tramp")
(version "2.5.3.2")
(version "2.5.3.3")
(source
(origin
(method url-fetch)
(uri (string-append "https://elpa.gnu.org/packages/"
"tramp-" version ".tar"))
(sha256
(base32 "1jcicb9f7c1nmaqg20yy2j4wd0qfch4llc26ga7q3ckhx41pvbiw"))))
(base32 "05w04qwk1lk50fzwl6fxyf6pb1jd2lx4as99zm1dpa858jab6w4a"))))
(build-system emacs-build-system)
(arguments
(list
@ -29254,36 +29413,39 @@ Emacs that integrate with major modes like Org-mode.")
(license license:expat)))
(define-public emacs-modus-themes
(package
(name "emacs-modus-themes")
(version "2.6.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://git.sr.ht/~protesilaos/modus-themes")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "1zl1gd3jlkanjmlsxmwhqaiwyblp6kzznfjnw9cq8ah2390y9n1c"))))
(native-inputs (list texinfo))
(build-system emacs-build-system)
(arguments
(list
#:phases
#~(modify-phases %standard-phases
(add-after 'install 'makeinfo
(lambda _
(invoke "emacs"
"--batch"
"--eval=(require 'ox-texinfo)"
"--eval=(find-file \"doc/modus-themes.org\")"
"--eval=(org-texinfo-export-to-info)")
(install-file "doc/modus-themes.info" (string-append #$output "/share/info")))))))
(home-page "https://protesilaos.com/modus-themes/")
(synopsis "Accessible themes (WCAG AAA)")
(description
"The Modus themes are designed for accessible readability. They conform
;; XXX: Upstream did not tag latest version bump, so we use the commit
;; matching that bump.
(let ((commit "0b42e595fb8c1753039277ab0b068d0f4f107edf"))
(package
(name "emacs-modus-themes")
(version "2.7.1")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://git.sr.ht/~protesilaos/modus-themes")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32 "0iy1psfkhqf9a47pabl1w108niw2d4xnfvlcql2j58qlv5k9h1z7"))))
(native-inputs (list texinfo))
(build-system emacs-build-system)
(arguments
(list
#:phases
#~(modify-phases %standard-phases
(add-after 'install 'makeinfo
(lambda _
(invoke "emacs"
"--batch"
"--eval=(require 'ox-texinfo)"
"--eval=(find-file \"doc/modus-themes.org\")"
"--eval=(org-texinfo-export-to-info)")
(install-file "doc/modus-themes.info" (string-append #$output "/share/info")))))))
(home-page "https://protesilaos.com/modus-themes/")
(synopsis "Accessible themes (WCAG AAA)")
(description
"The Modus themes are designed for accessible readability. They conform
with the highest standard for color contrast between any given combination of
background and foreground values. This corresponds to the WCAG AAA standard,
which specifies a minimum rate of distance in relative luminance of 7:1.
@ -29292,8 +29454,8 @@ Modus Operandi (modus-operandi) is a light theme, while Modus
Vivendi (modus-vivendi) is dark. Each themes color palette is designed to
meet the needs of the numerous interfaces that are possible in the Emacs
computing environment.")
(license (list license:gpl3+
license:fdl1.3+)))) ; GFDLv1.3+ for the manual
(license (list license:gpl3+
license:fdl1.3+))))) ; GFDLv1.3+ for the manual
(define-public emacs-punpun-theme
(let ((commit "7026684cd568cb691af3ced5de14c375fe6f5a1a")
@ -29685,7 +29847,7 @@ other @code{helm-type-file} sources such as @code{helm-locate}.")
(lambda _ (chdir ".."))))
#:test-target "test"))
(inputs
(list tdlib libappindicator))
(list tdlib-1.8.0 libappindicator))
(native-inputs
(list python pkg-config))
(home-page "https://zevlg.github.io/telega.el/")

View file

@ -773,7 +773,7 @@ and Game Boy Color games.")
(define-public sameboy
(package
(name "sameboy")
(version "0.15.5")
(version "0.15.6")
(source
(origin
(method git-fetch)
@ -782,7 +782,7 @@ and Game Boy Color games.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0ly9x6cch0wdcnsp0qmrdl6r2h8805jp8hwji3fwswj8rlhxkpa7"))))
(base32 "0a2fcsnv7ykj4kk2vpq9jjn8yjrx34n5s186rqvgj3dzm8w6xijs"))))
(build-system gnu-build-system)
(native-inputs
(list rgbds pkg-config))

View file

@ -1192,7 +1192,7 @@ with the included @command{xfstests-check} helper.")
(define-public zfs
(package
(name "zfs")
(version "2.1.5")
(version "2.1.6")
(outputs '("out" "module" "src"))
(source
(origin
@ -1201,7 +1201,7 @@ with the included @command{xfstests-check} helper.")
"/download/zfs-" version
"/zfs-" version ".tar.gz"))
(sha256
(base32 "0371j5k28cymqngfl76dfxzggvdf8n0ssij37350gzs4bhg084qr"))))
(base32 "0ymxkms1gwf731x61sj54rnnp029724zhywkxd4164yjz0a90cqm"))))
(build-system linux-module-build-system)
(arguments
(list
@ -1457,7 +1457,13 @@ On Guix System, you will need to invoke the included shell scripts as
"mount"))))
(substitute* '("libfuse/util/mount.mergerfs.c")
(("/bin/sh" command)
(string-append (assoc-ref inputs "bash-minimal") command))))))))
(string-append (assoc-ref inputs "bash-minimal") command))
;; mount.mergerfs tries to execute `mergerfs`, which cannot be found
;; without an absolute path. Hard-coding the path is fine, since we dont
;; link mount.mergerfs to mount.fuse anyway.
(("add_arg\\(&command, type\\);")
(string-append "add_arg(&command, \"" (assoc-ref outputs "out")
"/bin/mergerfs\");"))))))))
;; Mergerfs bundles a heavily modified copy of fuse.
(inputs
(list bash-minimal util-linux))

View file

@ -707,7 +707,7 @@ blockchain.")
;; the system's dynamically linked library.
(package
(name "monero")
(version "0.18.1.1")
(version "0.18.1.2")
(source
(origin
(method git-fetch)
@ -725,7 +725,7 @@ blockchain.")
delete-file-recursively
'("external/miniupnp" "external/rapidjson"))))
(sha256
(base32 "050rf4c1i42d0vhcb3hqrrndr2l45w1qg4h62cagk0nmq5va6xj7"))))
(base32 "033hfc98gv28x05gc1ln6dmyc45cki4qdylmz35wh4dchyr74pf9"))))
(build-system cmake-build-system)
(native-inputs
(list doxygen
@ -812,7 +812,7 @@ the Monero command line client and daemon.")
(define-public monero-gui
(package
(name "monero-gui")
(version "0.18.1.1")
(version "0.18.1.2")
(source
(origin
(method git-fetch)
@ -828,7 +828,7 @@ the Monero command line client and daemon.")
;; See the 'extract-monero-sources' phase.
(delete-file-recursively "monero")))
(sha256
(base32 "0zh0sf7acr1a4s5kmp9fpjd2wr78qv74z1xhkwrkkn9ainp4qfaz"))))
(base32 "1lwlkqj8liflk0jfzmlclm1xca0x3z8v3kcbzd671rgismm8v332"))))
(build-system qt-build-system)
(native-inputs
`(,@(package-native-inputs monero)

View file

@ -918,6 +918,50 @@ all languages with a consistent look and aesthetic. Its goal is to properly
display all Unicode symbols.")
(license license:silofl1.1)))
(define-public font-google-noto-sans-cjk
(package
(name "font-google-noto-sans-cjk")
(version "2.004")
(source
(origin
(method url-fetch)
(uri (string-append
"https://github.com/googlefonts/noto-cjk/releases/download/Sans"
version "/03_NotoSansCJK-OTC.zip"))
(file-name (string-append name "-" version ".zip"))
(sha256
(base32 "1v9yda7r98g4a3pk0y3cjbgc1i2lv4ax0f0v6aqasfzz4ldlx3sj"))))
(build-system font-build-system)
(home-page "https://www.google.com/get/noto/")
(synopsis "Fonts to cover all languages")
(description "Google Noto Fonts is a family of fonts designed to support
all languages with a consistent look and aesthetic. Its goal is to properly
display all Unicode symbols. This package provides the Sans Serif variant of
CJK fonts.")
(license license:silofl1.1)))
(define-public font-google-noto-serif-cjk
(package
(name "font-google-noto-serif-cjk")
(version "2.001")
(source
(origin
(method url-fetch)
(uri (string-append
"https://github.com/googlefonts/noto-cjk/releases/download/Serif"
version "/04_NotoSerifCJKOTC.zip"))
(file-name (string-append name "-" version ".zip"))
(sha256
(base32 "1l6r3sz2s0vcyfx6ria7wqcq45zp40gxgg97lh8hpmajhzw301ig"))))
(build-system font-build-system)
(home-page "https://www.google.com/get/noto/")
(synopsis "Fonts to cover all languages")
(description "Google Noto Fonts is a family of fonts designed to support
all languages with a consistent look and aesthetic. Its goal is to properly
display all Unicode symbols. This package provides the Serif variant of CJK
fonts.")
(license license:silofl1.1)))
(define-public font-google-roboto
(package
(name "font-google-roboto")
@ -2708,6 +2752,27 @@ This package contains the following outputs:
")
(license license:gpl2)))
(define-public font-arphic-ukai
(package
(name "font-arphic-ukai")
(version "0.2.20080216.2")
(source (origin
(method url-fetch)
(uri (string-append "http://deb.debian.org/debian/pool/main"
"/f/fonts-arphic-ukai/fonts-arphic-ukai_"
version ".orig.tar.bz2"))
(sha256
(base32
"1lp3i9m6x5wrqjkh1a8vpyhmsrhvsa2znj2mx13qfkwza5rqv5ml"))))
(build-system font-build-system)
(home-page "https://www.freedesktop.org/wiki/Software/CJKUnifonts/")
(synopsis "Truetype fonts for Taiwanese and Hakka")
(description
"This package provides a set of Truetype fonts, which contain all
characters necessary to display Taiwanese and Hakka.")
(license (license:fsdg-compatible
"https://www.freedesktop.org/wiki/Arphic_Public_License/"))))
(define-public font-atui-feather
(let ((version "0")
(commit "c51fe7cedbcf2cbf4f1b993cef5d8def612dec1d")

View file

@ -6,6 +6,7 @@
;;; Copyright © 2020 Vinicius Monego <monego@posteo.net>
;;; Copyright © 2021 Andrew Miloradovsky <andrew@interpretmath.pw>
;;; Copyright © 2022 Christian Gelinek <cgelinek@radlogic.com.au>
;;; Copyright © 2022 jgart <jgart@dismail.de>
;;;
;;; This file is part of GNU Guix.
;;;
@ -24,6 +25,7 @@
(define-module (gnu packages fpga)
#:use-module ((guix licenses) #:prefix license:)
#:use-module (guix gexp)
#:use-module (guix packages)
#:use-module (guix download)
#:use-module (guix git-download)
@ -352,7 +354,7 @@ FOSS FPGA place and route tool.")
(define-public gtkwave
(package
(name "gtkwave")
(version "3.3.111")
(version "3.3.113")
(source
(origin
(method url-fetch)
@ -362,23 +364,20 @@ FOSS FPGA place and route tool.")
(string-append "http://gtkwave.sourceforge.net/"
"gtkwave-" version ".tar.gz")))
(sha256
(base32 "15n2gv2hd7h23cci95ij7yr71fkxppb209sfdsmmngh3fik09rpn"))))
(base32 "1zqkfchmns5x90qxa8kg39bfhax3vxf1mrdz3lhyb9fz1gp4difn"))))
(build-system gnu-build-system)
(native-inputs
(list gperf pkg-config))
(inputs
`(("tcl" ,tcl)
("tk" ,tk)
("gtk+-2" ,gtk+-2)))
(list tcl tk gtk+-2))
(arguments
`(#:configure-flags
(list (string-append "--with-tcl="
(assoc-ref %build-inputs "tcl")
"/lib")
(string-append "--with-tk="
(assoc-ref %build-inputs "tk")
"/lib"))))
(list #:configure-flags
#~(list (string-append "--with-tcl="
(assoc-ref %build-inputs "tcl")
"/lib")
(string-append "--with-tk="
(assoc-ref %build-inputs "tk")
"/lib"))))
(synopsis "Waveform viewer for FPGA simulator trace files")
(description "This package is a waveform viewer for FPGA
simulator trace files (@dfn{FST}).")

View file

@ -3,7 +3,7 @@
;;; Copyright © 2015 Sou Bunnbu <iyzsong@gmail.com>
;;; Copyright © 2015, 2017 Andy Wingo <wingo@pobox.com>
;;; Copyright © 2015-2017, 2019, 2021-2022 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2015, 2017, 2018, 2019, 2021 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2015, 2017, 2018, 2019, 2021, 2022 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2015 David Hashe <david.hashe@dhashe.com>
;;; Copyright © 2016, 2017, 2019, 2021, 2022 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2016 Kei Kebreau <kkebreau@posteo.net>
@ -1165,66 +1165,67 @@ protocol either in Wayland core, or some other protocol in wayland-protocols.")
(define-public weston
(package
(name "weston")
(version "9.0.0")
(version "10.0.2")
(source (origin
(method url-fetch)
(uri (string-append
"https://wayland.freedesktop.org/releases/"
"weston-" version ".tar.xz"))
"https://gitlab.freedesktop.org/wayland/weston/-/releases/"
version "/downloads/weston-" version ".tar.xz"))
(sha256
(base32
"1zlql0xgiqc3pvgbpnnvj4xvpd91pwva8qf83xfb23if377ddxaw"))))
"1rs92p7sfkw9lqlkfnqh5af19ym3x8l3hp3yfv117m7qv6h6qr49"))))
(build-system meson-build-system)
(native-inputs
(list mscgen pkg-config xorg-server))
(list mscgen pkg-config python-3 xorg-server))
(inputs
`(("cairo" ,cairo-xcb)
("colord" ,colord)
("dbus" ,dbus)
("elogind" ,elogind)
("freerdp" ,freerdp)
("glib" ,glib)
("gstreamer" ,gstreamer)
("gst-plugins-base" ,gst-plugins-base)
("lcms" ,lcms)
("libdrm" ,libdrm)
("libevdev" ,libevdev)
("libinput" ,libinput-minimal)
("libjpeg" ,libjpeg-turbo)
("libpng" ,libpng)
("libunwind" ,libunwind)
("libva" ,libva)
("libwebp" ,libwebp)
("libx11" ,libx11)
("libxcb" ,libxcb)
("libxcursor" ,libxcursor)
("libxml2" ,libxml2)
("mesa" ,mesa)
("mtdev" ,mtdev)
("linux-pam" ,linux-pam)
("pango" ,pango)
("pipewire" ,pipewire)
("wayland-protocols" ,wayland-protocols)
("xorg-server-xwayland" ,xorg-server-xwayland)))
(list cairo-xcb
colord
dbus
elogind
freerdp
glib
gstreamer
gst-plugins-base
lcms
libdrm
libevdev
libinput-minimal
libjpeg-turbo
libpng
libunwind
libva
libwebp
libx11
libxcb
libxcursor
libxml2
mesa
mtdev
linux-pam
pango
pipewire-0.3
wayland-protocols-next
xorg-server-xwayland))
(propagated-inputs
(list libxkbcommon pixman wayland))
(arguments
`(#:configure-flags
(list
;; Otherwise, the RUNPATH will lack the final path component.
(string-append "-Dc_link_args=-Wl,-rpath="
(assoc-ref %outputs "out") "/lib:"
(assoc-ref %outputs "out") "/lib/weston:"
(assoc-ref %outputs "out") "/lib/libweston-"
,(version-major (package-version this-package)))
"-Dbackend-default=auto"
"-Dsystemd=false"
(string-append "-Dxwayland-path="
(assoc-ref %build-inputs "xorg-server-xwayland")
"/bin/Xwayland"))
#:parallel-tests? #f ; Parallel tests cause failures.
#:phases
(modify-phases %standard-phases
(list
#:configure-flags
#~(list
;; Otherwise, the RUNPATH will lack the final path component.
(string-append "-Dc_link_args=-Wl,-rpath="
#$output "/lib:"
#$output "/lib/weston:"
#$output "/lib/libweston-"
#$(version-major (package-version this-package)))
"-Dbackend-default=auto"
"-Dsystemd=false"
(string-append "-Dxwayland-path="
#$(this-package-input "xorg-server-xwayland")
"/bin/Xwayland"))
#:parallel-tests? #f ; Parallel tests cause failures.
#:phases
'(modify-phases %standard-phases
(add-before 'configure 'use-elogind
(lambda _
;; Use elogind instead of systemd
@ -1233,23 +1234,19 @@ protocol either in Wayland core, or some other protocol in wayland-protocols.")
(substitute* '("libweston/launcher-logind.c"
"libweston/weston-launch.c")
(("#include <systemd/sd-login.h>")
"#include <elogind/sd-login.h>"))
#t))
"#include <elogind/sd-login.h>"))))
(add-after 'configure 'patch-confdefs.h
(lambda _
(system "echo \"#define HAVE_SYSTEMD_LOGIN_209 1\" >> confdefs.h")
#t))
(system "echo \"#define HAVE_SYSTEMD_LOGIN_209 1\" >> confdefs.h")))
(add-before 'check 'setup
(lambda _
(setenv "HOME" (getcwd))
(setenv "XDG_RUNTIME_DIR" (getcwd))
#t))
(setenv "XDG_RUNTIME_DIR" (getcwd))))
(add-before 'check 'start-xorg-server
(lambda* (#:key inputs #:allow-other-keys)
;; The test suite requires a running X server.
(system "Xvfb :1 &")
(setenv "DISPLAY" ":1")
#t)))))
(setenv "DISPLAY" ":1"))))))
(home-page "https://wayland.freedesktop.org")
(synopsis "Reference implementation of a Wayland compositor")
(description "Weston is the reference implementation of a Wayland

View file

@ -1210,7 +1210,7 @@ to create fully featured games and multimedia programs in the python language.")
(define-public python-pygame-sdl2
(let ((real-version "2.1.0")
(renpy-version "8.0.0"))
(renpy-version "8.0.3"))
(package
(inherit python-pygame)
(name "python-pygame-sdl2")
@ -1220,7 +1220,7 @@ to create fully featured games 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 "0majf64pdfba5byjlv41pgsdmwvy09hw3m7143jz3kc1wjd2gaw8"))
(sha256 (base32 "1nq78mybkvshshdjy5bly6nfq6dnwll648ng62fwmksxpni17486"))
(modules '((guix build utils)))
(snippet
'(begin
@ -1261,13 +1261,13 @@ developed mainly for Ren'py.")
(define-public python-renpy
(package
(name "python-renpy")
(version "8.0.0")
(version "8.0.3")
(source
(origin
(method url-fetch)
(uri (string-append "https://www.renpy.org/dl/" version
"/renpy-" version "-source.tar.bz2"))
(sha256 (base32 "09z3r16j4cxddkb50ghmi4xp0s05s15q4pzdmfajy85ignwqhjdi"))
(sha256 (base32 "1b49y60pi6304fg06lw5gajzrgg9w80swpfkn6pw0lxbr6djgjgn"))
(modules '((guix build utils)))
(patches
(search-patches

View file

@ -1555,7 +1555,7 @@ Joy-Con controllers.")
(define-public julius
(package
(name "julius")
(version "1.6.0")
(version "1.7.0")
(source
(origin
(method git-fetch)
@ -1564,7 +1564,7 @@ Joy-Con controllers.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0nfdn8n6ywhm69ckz9a1chl5xxiqyaj3l337wadsbppnpscjihrc"))
(base32 "0w7kmgz9ya0ck9cxhsyralarg7y6ydx4plmh33r4mkxkamlr7493"))
;; Remove unused bundled libraries.
(modules '((guix build utils)))
(snippet
@ -1589,7 +1589,7 @@ does not include game data.")
(package
(inherit julius)
(name "augustus")
(version "2.0.1")
(version "3.2.0")
(source
(origin
(method git-fetch)
@ -1598,17 +1598,19 @@ does not include game data.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0czazw8mc3fbvdazs2nzvgxd1dpzjc8z5fwiv89vv4nd7laz3jkj"))
(base32 "0d1k5279imc17mk3lxn8amc4ljgcj4v6x6lj2w3bph1z0a7a4bim"))
;; Remove unused bundled libraries.
(modules '((guix build utils)))
(snippet
'(begin
(with-directory-excursion "ext"
(for-each delete-file-recursively '("dirent" "png" "SDL2" "zlib")))
#t))))
(for-each delete-file-recursively
'("dirent" "expat" "png" "SDL2" "zlib")))))))
(arguments
;; No tests. See https://github.com/Keriew/augustus/issues/82.
`(#:tests? #f))
(inputs (modify-inputs (package-inputs julius)
(prepend expat)))
(home-page "https://github.com/Keriew/augustus")
(synopsis "Re-implementation of Caesar III game engine with gameplay changes")
(description
@ -6938,7 +6940,7 @@ at their peak of economic growth and military prowess.
(define-public open-adventure
(package
(name "open-adventure")
(version "1.9")
(version "1.11")
(source
(origin
(method git-fetch)
@ -6947,40 +6949,39 @@ at their peak of economic growth and military prowess.
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "123svzy7xczdklx6plbafp22yv9bcvwfibjk0jv2c9i22dfsr07f"))))
(base32 "1n0fzrdlbc6px88qr574ww2q85xk43bv09jpmsskzv1l2cncwm37"))))
(build-system gnu-build-system)
(arguments
`(#:make-flags (list "CC=gcc")
#:phases
(modify-phases %standard-phases
(delete 'configure) ;no configure script
(add-before 'build 'use-echo
(lambda _
(substitute* "tests/Makefile"
(("/bin/echo") (which "echo")))
#t))
(add-after 'build 'build-manpage
(lambda _
;; This target is missing a dependency
(substitute* "Makefile"
((".adoc.6:" line)
(string-append line " advent.adoc")))
(invoke "make" ".adoc.6")))
;; There is no install target.
(replace 'install
(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(bin (string-append out "/bin"))
(man (string-append out "/share/man/man6")))
(install-file "advent" bin)
(install-file "advent.6" man))
#t)))))
(list
#:make-flags #~(list (string-append "CC=" #$(cc-for-target)))
#:parallel-tests? #f ;some tests fail non-deterministically
#:phases
#~(modify-phases %standard-phases
(delete 'configure) ;no configure script
(add-before 'build 'use-echo
(lambda _
(substitute* (list "tests/Makefile" "tests/tapview")
(("/bin/echo") (which "echo")))))
(add-after 'build 'build-manpage
(lambda _
;; This target is missing a dependency
(substitute* "Makefile"
((".adoc.6:" line)
(string-append line " advent.adoc")))
(invoke "make" ".adoc.6")))
;; There is no install target.
(replace 'install
(lambda _
(let ((bin (string-append #$output "/bin"))
(man (string-append #$output "/share/man/man6")))
(install-file "advent" bin)
(install-file "advent.6" man)))))))
(native-inputs
`(("asciidoc" ,asciidoc)
("libedit" ,libedit)
("pkg-config" ,pkg-config)
("python" ,python-wrapper)
("python-pyyaml" ,python-pyyaml)))
(list asciidoc
libedit
pkg-config
python-pyyaml
python-wrapper))
(home-page "https://gitlab.com/esr/open-adventure")
(synopsis "Colossal Cave Adventure")
(description

View file

@ -1242,7 +1242,6 @@ provides the GNU compiler for the Go programming language."))
(version "0.23")
(source (origin
(method url-fetch)
;; Used to be at isl.gforge.inria.fr.
(uri (list (string-append "mirror://sourceforge/libisl/isl-"
version ".tar.bz2")
(string-append %gcc-infrastructure

View file

@ -255,7 +255,7 @@ topology functions.")
(define-public gnome-maps
(package
(name "gnome-maps")
(version "43.rc") ;for libsoup 3 support
(version "43.0") ;for libsoup 3 support
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnome/sources/" name "/"
@ -263,27 +263,33 @@ topology functions.")
name "-" version ".tar.xz"))
(sha256
(base32
"16a3j896fwxgnvrmx27jnrvhxzh3v22paaq87ad57yp8wkq946il"))))
"1r1l6ajs6zz316m8zac5r0l3qgdv616xh376bfn2fflcnz7wys08"))))
(build-system meson-build-system)
(arguments
(list
#:glib-or-gtk? #t
#:meson meson-0.63
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'skip-gtk-update-icon-cache
;; Don't create 'icon-theme.cache'.
(add-after 'unpack 'skip-cache-and-database-updates
(lambda _
(substitute* "meson_post_install.py"
(("gtk-update-icon-cache") "true"))))
(add-after 'unpack 'patch-dbus-service
(lambda _
(substitute* "data/org.gnome.Maps.service.in"
(("@pkgdatadir@/org.gnome.Maps")
(string-append #$output "/bin/gnome-maps")))))
(substitute* "meson.build"
(("([a-z_]*): true" all option)
(cond ; cond rather than match saves an import
((member option '("gtk_update_icon_cache"
"update_desktop_database"))
(string-append option ": false"))
(else all))))))
(add-after 'install 'wrap
(lambda _
(wrap-program (string-append #$output "/bin/gnome-maps")
`("GI_TYPELIB_PATH" ":" prefix (,(getenv "GI_TYPELIB_PATH")))))))))
(let ((gi-typelib-path (getenv "GI_TYPELIB_PATH")))
(substitute* (string-append #$output "/share/gnome-maps/"
"org.gnome.Maps")
(("imports\\.package\\.init" all)
(string-append "'" gi-typelib-path "'.split(':').forEach("
"path => imports.gi.GIRepository.Repository."
"prepend_search_path(path));\n"
all)))))))))
(native-inputs
(list gettext-minimal
`(,glib "bin")
@ -307,7 +313,7 @@ topology functions.")
libhandy
librsvg
libsecret
libshumate
libshumate
libsoup
libxml2
pango-next ;TODO: remove when it's the default

View file

@ -44,7 +44,7 @@
;;; Copyright © 2019 David Wilson <david@daviwil.com>
;;; Copyright © 2019, 2020 Raghav Gururajan <raghavgururajan@disroot.org>
;;; Copyright © 2019, 2020 Jonathan Brielmaier <jonathan.brielmaier@web.de>
;;; Copyright © 2019, 2020, 2021 Liliana Marie Prikler <liliana.prikler@gmail.com>
;;; Copyright © 2019-2022 Liliana Marie Prikler <liliana.prikler@gmail.com>
;;; Copyright © 2020 Oleg Pykhalov <go.wigust@gmail.com>
;;; Copyright © 2020 Pierre Neidhardt <mail@ambrevar.xyz>
;;; Copyright © 2020 raingloom <raingloom@riseup.net>
@ -1763,7 +1763,11 @@ client devices can handle.")
"0h095a26w3sgbspsf7wzz8ddg62j3jb9ckrrv41k7cdp0k2dkhsg"))))
(build-system meson-build-system)
(arguments
`(#:configure-flags (list "-Dlibnma_gtk4=true")
;; GTK 4.x depends on Rust (indirectly) so pull it only on platforms
;; where it is supported.
`(#:configure-flags ,(if (supported-package? gtk)
`(list "-Dlibnma_gtk4=true")
`(list "-Dlibnma_gtk4=false"))
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'patch-docbook-xml
@ -1782,7 +1786,7 @@ client devices can handle.")
vala))
(inputs
(list gcr
gtk
(if (supported-package? gtk) gtk gtk+)
iso-codes
mobile-broadband-provider-info
network-manager))
@ -3276,6 +3280,25 @@ the GNOME desktop environment.")
(base32
"0hj7f4xhwjc4x32r3lswwclbw37fw3spy806g4plkmym25hz4ydy"))))
(build-system meson-build-system)
(arguments
(list
#:imported-modules
`(,@%meson-build-system-modules
(guix build python-build-system))
#:modules
`((guix build meson-build-system)
((guix build python-build-system) #:prefix python:)
(guix build utils))
#:phases
#~(modify-phases %standard-phases
(add-after 'wrap 'wrap-python
(assoc-ref python:%standard-phases 'wrap))
(add-after 'wrap-python 'wrap-gi
(lambda* (#:key outputs #:allow-other-keys)
(let ((out (assoc-ref outputs "out"))
(gi-typelib-path (getenv "GI_TYPELIB_PATH")))
(wrap-program (string-append out "/bin/blueprint-compiler")
`("GI_TYPELIB_PATH" ":" suffix (,gi-typelib-path)))))))))
(native-inputs (list gtk python-pygobject python))
(inputs (list python))
(synopsis "Template markup language")
@ -4719,33 +4742,39 @@ and RDP protocols.")
(base32
"0cs5nayg080y8pb9b7qccm1ni8wkicdmqp1jsgc22110r6j24zyg"))))
(build-system meson-build-system)
(arguments
(list
#:glib-or-gtk? #t
;; Configure sysconfdir to /etc so that gconf profiles can be written
;; there and loaded without having to set GCONF_PROFILE, which cannot be
;; safely set globally (as a gconf profile is a per-user thing).
#:configure-flags #~(list "--sysconfdir=/etc"
"-Dgtk_doc=true")
#:phases #~(modify-phases %standard-phases
(add-after 'unpack 'increase-test-timeout
(lambda _
;; On big-memory systems, the engine test may take
;; much longer than the default of 30 seconds.
(substitute* "tests/meson.build"
(("test\\(unit_test\\[0\\], exe" all)
(string-append all ", timeout: 300"))))))))
(native-inputs
(list bash-completion
libxslt ;for xsltproc
libxml2 ;for XML_CATALOG_FILES
docbook-xml-4.2
docbook-xsl
`(,glib "bin")
gtk-doc/stable
pkg-config
python
vala))
(inputs
(list gtk+
dbus))
(propagated-inputs
;; In Requires of dconf.pc.
(list glib))
(inputs
(list gtk+ dbus))
(native-inputs
`(("bash-completion" ,bash-completion)
("libxslt" ,libxslt) ;for xsltproc
("libxml2" ,libxml2) ;for XML_CATALOG_FILES
("docbook-xml" ,docbook-xml-4.2)
("docbook-xsl" ,docbook-xsl)
("glib:bin" ,glib "bin")
("gtk-doc" ,gtk-doc/stable)
("pkg-config" ,pkg-config)
("python" ,python)
("vala" ,vala)))
(arguments
`(#:glib-or-gtk? #t
#:configure-flags '("-Dgtk_doc=true")
#:phases (modify-phases %standard-phases
(add-after 'unpack 'increase-test-timeout
(lambda _
;; On big-memory systems, the engine test may take
;; much longer than the default of 30 seconds.
(substitute* "tests/meson.build"
(("test\\(unit_test\\[0\\], exe" all)
(string-append all ", timeout: 300"))))))))
(home-page "https://developer.gnome.org/dconf/")
(synopsis "Low-level GNOME configuration system")
(description "Dconf is a low-level configuration system. Its main purpose
@ -4976,7 +5005,10 @@ libxml to ease remote use of the RESTful API.")
(arguments (substitute-keyword-arguments (package-arguments rest)
((#:tests? _ #f) #t)
((#:configure-flags _)
#~(list))
;; Do not build the optional 'librest-demo' program as it
;; depends on gtksourceview and libadwaita and thus,
;; indirectly, on Rust.
#~(list "-Dexamples=false"))
((#:phases phases '%standard-phases)
#~(modify-phases #$phases
(add-after 'unpack 'disable-problematic-tests
@ -4993,7 +5025,7 @@ libxml to ease remote use of the RESTful API.")
(append gettext-minimal
gi-docgen
gsettings-desktop-schemas)))
(inputs (list gtksourceview json-glib libadwaita))
(inputs (list json-glib))
(propagated-inputs
(modify-inputs (package-propagated-inputs rest)
(replace "libsoup" libsoup)
@ -5806,7 +5838,19 @@ faster results and to avoid unnecessary server load.")
;; If not specified, udev will try putting history information
;; in /gnu/store.
"-Dhistorydir=/var/lib/upower"
(string-append "-Dudevrulesdir=" #$output "/bin/udev/rules.d"))))
(string-append "-Dudevrulesdir=" #$output "/bin/udev/rules.d"))
#:phases (if (target-x86-32?)
#~(modify-phases %standard-phases
(add-after 'unpack 'adjust-test-for-excess-precision
(lambda _
;; Address test failure caused by excess precision
;; on i686:
;; <https://gitlab.freedesktop.org/upower/upower/-/issues/214>.
(substitute* "src/linux/integration-test.py"
(("assertEqual(.*)40\\.0" _ middle)
(string-append
"assertAlmostEqual" middle "40.0"))))))
#~%standard-phases)))
(native-inputs
(list `(,glib "bin") ; for gdbus-codegen
gobject-introspection
@ -6904,7 +6948,7 @@ supports image conversion, rotation, and slideshows.")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnome/sources/eog-plugins/"
(version-major+minor version) "/"
(version-major version) "/"
"eog-plugins-" version ".tar.xz"))
(sha256
(base32
@ -8855,7 +8899,10 @@ library.")
"gdm_session_set_environment_variable "
"(self, \"" name "\","
"g_getenv (\"" name "\"));\n"))
propagate)))))
propagate)))
;; This is used by remote sessions, such as when using VNC.
(("\\(GDMCONFDIR \"/Xsession \\\\\"%s\\\\\"\", command)")
"(\"%s \\\"%s\\\"\", g_getenv (\"GDM_X_SESSION\"), command)")))
;; Find the configuration file using an environment variable.
(substitute* '("common/gdm-settings.c")
(("GDM_CUSTOM_CONF")
@ -10399,9 +10446,12 @@ desktop. It supports multiple calendars, month, week and year view.")
libpeas
libportal
python-pygobject
evolution-data-server
gnome-online-accounts
gsettings-desktop-schemas))
(propagated-inputs
;; This is so that the Guix System D-Bus service can find the Evolution
;; Data Server schemas.
(list evolution-data-server))
(home-page "https://wiki.gnome.org/Apps/Todo")
(synopsis "GNOME's ToDo Application")
(description "GNOME To Do is a simplistic personal task manager designed
@ -13010,7 +13060,7 @@ profiler via Sysprof, debugging support, and more.")
(define-public komikku
(package
(name "komikku")
(version "0.41.0")
(version "1.1.0")
(source
(origin
(method git-fetch)
@ -13020,32 +13070,38 @@ profiler via Sysprof, debugging support, and more.")
(file-name (git-file-name name version))
(sha256
(base32
"17r059srxrx26w40swy47pdpyigyjdczp8550g4rfh86qs3ld4il"))))
"0ik3dwyq3r44d0h7r7x8j2sah9fhzilyvds1d6bbgbccqxzw4lnh"))))
(build-system meson-build-system)
(arguments
`(#:glib-or-gtk? #t
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'patch-sources
(lambda _
(substitute* "komikku/utils.py"
(("from komikku\\.servers import get_servers_list")
;; code following that line should migrate old databases
;; but the line itself results in an import error
"return data_dir_path"))))
(add-after 'unpack 'skip-gtk-update-icon-cache
(lambda _
(substitute* "meson_post_install.py"
(("gtk-update-icon-cache") (which "true")))))
(add-after 'glib-or-gtk-wrap 'python-and-gi-wrap
(lambda* (#:key outputs #:allow-other-keys)
(wrap-program (search-input-file outputs "bin/komikku")
`("GUIX_PYTHONPATH" = (,(getenv "GUIX_PYTHONPATH")))
`("GI_TYPELIB_PATH" = (,(getenv "GI_TYPELIB_PATH")))))))))
(list
#:glib-or-gtk? #t
#:meson meson-0.63
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'patch-sources
(lambda _
(substitute* "komikku/utils.py"
(("from komikku\\.servers import get_servers_list")
;; code following that line should migrate old databases
;; but the line itself results in an import error
"return data_dir_path"))))
(add-after 'unpack 'skip-gtk-update-icon-cache
(lambda _
(substitute* "meson.build"
(("([a-z_]*): true" all option)
(cond ; cond rather than match saves an import
((string=? option "gtk_update_icon_cache")
(string-append option ": false"))
(else all))))))
(add-after 'glib-or-gtk-wrap 'python-and-gi-wrap
(lambda* (#:key outputs #:allow-other-keys)
(wrap-program (search-input-file outputs "bin/komikku")
`("GUIX_PYTHONPATH" = (,(getenv "GUIX_PYTHONPATH")))
`("GI_TYPELIB_PATH" = (,(getenv "GI_TYPELIB_PATH")))))))))
(inputs
(list bash-minimal
gtk+
libhandy
gtk
libadwaita
libnotify
libsecret
python
@ -13063,7 +13119,7 @@ profiler via Sysprof, debugging support, and more.")
python-pygobject
python-requests
python-unidecode
webkitgtk-with-libsoup2))
webkitgtk-next))
(native-inputs
(list desktop-file-utils
gettext-minimal
@ -13241,7 +13297,7 @@ Document Analysis and Recognition program.")
(define-public libadwaita
(package
(name "libadwaita")
(version "1.2.rc")
(version "1.2.0")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnome/sources/libadwaita/"
@ -13249,7 +13305,7 @@ Document Analysis and Recognition program.")
"libadwaita-" version ".tar.xz"))
(sha256
(base32
"1syg7fkpcsw0q6fy3g79myb9m9bvrnh3rjrm6g4bfg1pnlqf1w22"))))
"0326qs0zhfi6zv52p90axnicmv0qb2l2hwpyv60pk9lvwcdkwbrj"))))
(build-system meson-build-system)
(arguments
`(#:phases

View file

@ -1243,224 +1243,224 @@ standards of the IceCat project.")
(cpe-version . ,(first (string-split version #\-)))))))
;; Update this together with icecat!
(define %icedove-build-id "20220920000000") ;must be of the form YYYYMMDDhhmmss
(define %icedove-build-id "20220928000000") ;must be of the form YYYYMMDDhhmmss
(define-public icedove
(package
(name "icedove")
(version "102.3.0")
(version "102.3.1")
(source icecat-source)
(properties
`((cpe-name . "thunderbird_esr")))
(build-system gnu-build-system)
(arguments
`(#:tests? #f ; no check target
#:imported-modules ,%cargo-utils-modules ;for `generate-all-checksums'
#:modules ((guix build utils) ;find-files
(list
#:tests? #f ;no check target
#:imported-modules %cargo-utils-modules ;for `generate-all-checksums'
#:modules `((guix build utils) ;find-files
(sxml simple)
(ice-9 regex)
,@%gnu-build-system-modules)
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'prepare-thunderbird-sources
(lambda* (#:key inputs #:allow-other-keys)
(mkdir "comm")
(copy-recursively (assoc-ref inputs "thunderbird-sources")
"comm")
(delete-file "sourcestamp.txt")))
(add-after 'patch-source-shebangs 'patch-cargo-checksums
(lambda _
(use-modules (guix build cargo-utils))
(let ((null-hash "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934ca495991b7852b855"))
(for-each (lambda (file)
(format #t "patching checksums in ~a~%" file)
(substitute* file
(("^checksum = \".*\"")
(string-append "checksum = \"" null-hash "\""))))
(find-files "." "Cargo.lock$"))
(for-each generate-all-checksums
'("third_party/rust"
"toolkit/library/rust")))))
(add-after 'patch-cargo-checksums 'remove-cargo-frozen-flag
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'prepare-thunderbird-sources
(lambda* (#:key inputs #:allow-other-keys)
(mkdir "comm")
(copy-recursively (assoc-ref inputs "thunderbird-sources")
"comm")
(delete-file "sourcestamp.txt")))
(add-after 'patch-source-shebangs 'patch-cargo-checksums
(lambda _
(use-modules (guix build cargo-utils))
(let ((null-hash "e3b0c44298fc1c149afbf4c8996fb92427ae41e4649b934\
ca495991b7852b855"))
(for-each (lambda (file)
(format #t "patching checksums in ~a~%" file)
(substitute* file
(("^checksum = \".*\"")
(string-append "checksum = \"" null-hash "\""))))
(find-files "." "Cargo.lock$"))
(for-each generate-all-checksums
'("third_party/rust"
"toolkit/library/rust")))))
(add-after 'patch-cargo-checksums 'remove-cargo-frozen-flag
(lambda _
;; Remove --frozen flag from cargo invokation, otherwise it'll
;; complain that it's not able to change Cargo.lock.
;; https://bugzilla.mozilla.org/show_bug.cgi?id=1726373
(substitute* "build/RunCbindgen.py"
(("\"--frozen\",") ""))))
;; Fixes issue where each installation directory generates its own profile.
;; See e.g. https://trac.torproject.org/projects/tor/ticket/31457
(add-after 'patch-source-shebangs 'fix-profile-setting
(lambda _
(substitute* "comm/mail/moz.configure"
(("MOZ_DEDICATED_PROFILES, True")
"MOZ_DEDICATED_PROFILES, False"))))
(add-after 'prepare-thunderbird-sources 'rename-to-icedove
(lambda _
(substitute* "comm/mail/confvars.sh"
(("MOZ_APP_NAME=thunderbird")
"MOZ_APP_NAME=icedove")
(("MOZ_UPDATER=1")
"MOZ_UPDATER=0"))
;; Remove branding to comply with Mozilla's trademark policy
(with-directory-excursion "comm/mail/branding/nightly"
(delete-file "content/about-wordmark.svg")
(call-with-output-file "content/about-wordmark.svg"
(lambda (port)
(sxml->xml '(svg (@ (xmlns "http://www.w3.org/2000/svg")
(viewBox "0 0 789.1 90.78")
(width "333")
(height "48")
(fill "#fff"))
(text (@ (x "400") (y "70")
(text-anchor "middle")
(font-size "90"))
"Icedove Daily"))
port)))
(substitute* '("locales/en-US/brand.properties"
"locales/en-US/brand.ftl"
"locales/en-US/brand.dtd"
"configure.sh")
(("Thunderbird") "Icedove")
(("mozilla.org") "guix.gnu.org")))
;; Remove other mentions of Thunderbird in user-visible text.
(with-directory-excursion "comm/mail/base/content"
(substitute* '("overrides/app-license-name.html")
(("Thunderbird") "Icedove")))
(with-directory-excursion "comm/mail/components/"
(substitute* '("MailGlue.jsm"
"extensions/schemas/addressBook.json"
"extensions/schemas/tabs.json"
"extensions/schemas/cloudFile.json"
"extensions/schemas/chrome_settings_overrides.json"
"extensions/schemas/windows.json"
"extensions/parent/ext-mail.js"
"im/messages/mail/Info.plist"
"enterprisepolicies/moz.build"
"enterprisepolicies/helpers/moz.build"
"enterprisepolicies/schemas/moz.build")
(("Thunderbird") "Icedove")))
(substitute* '("comm/mailnews/base/prefs/content/accountUtils.js"
"comm/mail/base/content/customizeToolbar.js"
"comm/suite/components/customizeToolbar.js")
(("AppConstants.MOZ_APP_NAME (.)= \"thunderbird" _ e)
(format #f "AppConstants.MOZ_APP_NAME ~a= \"icedove" e)))
;; Fixes issue where each installation directory generates its own
;; profile (see:
;; https://trac.torproject.org/projects/tor/ticket/31457).
(add-after 'patch-source-shebangs 'fix-profile-setting
(lambda _
(substitute* "comm/mail/moz.configure"
(("MOZ_DEDICATED_PROFILES, True")
"MOZ_DEDICATED_PROFILES, False"))))
(add-after 'prepare-thunderbird-sources 'rename-to-icedove
(lambda _
(substitute* "comm/mail/confvars.sh"
(("MOZ_APP_NAME=thunderbird")
"MOZ_APP_NAME=icedove")
(("MOZ_UPDATER=1")
"MOZ_UPDATER=0"))
;; Remove branding to comply with Mozilla's trademark policy
(with-directory-excursion "comm/mail/branding/nightly"
(delete-file "content/about-wordmark.svg")
(call-with-output-file "content/about-wordmark.svg"
(lambda (port)
(sxml->xml '(svg (@ (xmlns "http://www.w3.org/2000/svg")
(viewBox "0 0 789.1 90.78")
(width "333")
(height "48")
(fill "#fff"))
(text (@ (x "400") (y "70")
(text-anchor "middle")
(font-size "90"))
"Icedove Daily"))
port)))
(substitute* '("locales/en-US/brand.properties"
"locales/en-US/brand.ftl"
"locales/en-US/brand.dtd"
"configure.sh")
(("Thunderbird") "Icedove")
(("mozilla.org") "guix.gnu.org")))
;; Remove other mentions of Thunderbird in user-visible text.
(with-directory-excursion "comm/mail/base/content"
(substitute* '("overrides/app-license-name.html")
(("Thunderbird") "Icedove")))
(with-directory-excursion "comm/mail/components/"
(substitute* '("MailGlue.jsm"
"extensions/schemas/addressBook.json"
"extensions/schemas/tabs.json"
"extensions/schemas/cloudFile.json"
"extensions/schemas/chrome_settings_overrides.json"
"extensions/schemas/windows.json"
"extensions/parent/ext-mail.js"
"im/messages/mail/Info.plist"
"enterprisepolicies/moz.build"
"enterprisepolicies/helpers/moz.build"
"enterprisepolicies/schemas/moz.build")
(("Thunderbird") "Icedove")))
(substitute* '("comm/mailnews/base/prefs/content/accountUtils.js"
"comm/mail/base/content/customizeToolbar.js"
"comm/suite/components/customizeToolbar.js")
(("AppConstants.MOZ_APP_NAME (.)= \"thunderbird" _ e)
(format #f "AppConstants.MOZ_APP_NAME ~a= \"icedove" e)))
;; Override addon URLs and settings
(substitute* "comm/mail/app/profile/all-thunderbird.js"
(("(pref\\(\"extensions.webservice.discoverURL\").*" _ m)
(string-append m ", \"https://directory.fsf.org/wiki/Icedove\");"))
(("(pref\\(\"extensions.getAddons.search.url\").*" _ m)
(string-append m ", \"https://guix.gnu.org/packages\");"))
(("(pref\\(\"extensions.update.enabled\").*" _ m)
(string-append m ", false);"))
(("(pref\\(\"extensions.systemAddon.update.enabled\").*" _ m)
(string-append m ", false);"))
(("(pref\\(\"lightweightThemes.update.enabled\").*" _ m)
(string-append m ", false);")))))
(add-after 'build 'neutralize-store-references
(lambda _
;; Mangle the store references to compilers & other build tools in
;; about:buildconfig, reducing Icedove's closure significant.
;; The resulting files are saved in lib/thunderbird/omni.ja
(substitute*
;; Use find because the path "obj-x86_64-pc-linux-gnu" contains
;; the architecture and the system -> more complicated.
(find-files "." "buildconfig.html")
(((format #f "(~a/)([0-9a-df-np-sv-z]{32})"
(regexp-quote (%store-directory)))
_ store hash)
(string-append store
(string-take hash 8)
"<!-- Guix: not a runtime dependency -->"
(string-drop hash 8))))))
(delete 'bootstrap)
(replace 'configure
(lambda* (#:key inputs outputs configure-flags #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(bash (which "bash"))
(abs-srcdir (getcwd))
(srcdir (string-append "../" (basename abs-srcdir)))
(flags `(,(string-append "--prefix=" out)
,@configure-flags))
(mozconfig (string-append (getcwd) "/.mozconfig")))
(setenv "SHELL" bash)
(setenv "CONFIG_SHELL" bash)
(setenv "QA_CONFIGURE_OPTIONS" ".*")
(setenv "MOZBUILD_STATE_PATH"
(string-append (getcwd) "/mach_state"))
(setenv "MOZCONFIG"
(string-append (getcwd) "/.mozconfig"))
;; Override addon URLs and settings
(substitute* "comm/mail/app/profile/all-thunderbird.js"
(("(pref\\(\"extensions.webservice.discoverURL\").*" _ m)
(string-append m ", \"https://directory.fsf.org/wiki/Icedove\");"))
(("(pref\\(\"extensions.getAddons.search.url\").*" _ m)
(string-append m ", \"https://guix.gnu.org/packages\");"))
(("(pref\\(\"extensions.update.enabled\").*" _ m)
(string-append m ", false);"))
(("(pref\\(\"extensions.systemAddon.update.enabled\").*" _ m)
(string-append m ", false);"))
(("(pref\\(\"lightweightThemes.update.enabled\").*" _ m)
(string-append m ", false);")))))
(add-after 'build 'neutralize-store-references
(lambda _
;; Mangle the store references to compilers & other build tools in
;; about:buildconfig, reducing Icedove's closure significant.
;; The resulting files are saved in lib/thunderbird/omni.ja
(substitute*
;; Use find because the path "obj-x86_64-pc-linux-gnu" contains
;; the architecture and the system -> more complicated.
(find-files "." "buildconfig.html")
(((format #f "(~a/)([0-9a-df-np-sv-z]{32})"
(regexp-quote (%store-directory)))
_ store hash)
(string-append store
(string-take hash 8)
"<!-- Guix: not a runtime dependency -->"
(string-drop hash 8))))))
(delete 'bootstrap)
(replace 'configure
(lambda* (#:key inputs configure-flags #:allow-other-keys)
(let* ((bash (which "bash"))
(abs-srcdir (getcwd))
(srcdir (string-append "../" (basename abs-srcdir)))
(flags `(,(string-append "--prefix=" #$output)
,@configure-flags))
(mozconfig (string-append (getcwd) "/.mozconfig")))
(setenv "SHELL" bash)
(setenv "CONFIG_SHELL" bash)
(setenv "QA_CONFIGURE_OPTIONS" ".*")
(setenv "MOZBUILD_STATE_PATH"
(string-append (getcwd) "/mach_state"))
(setenv "MOZCONFIG"
(string-append (getcwd) "/.mozconfig"))
(setenv "AR" "llvm-ar")
(setenv "NM" "llvm-nm")
(setenv "CC" "clang")
(setenv "CXX" "clang++")
(setenv "AR" "llvm-ar")
(setenv "NM" "llvm-nm")
(setenv "CC" "clang")
(setenv "CXX" "clang++")
(setenv "MOZ_NOSPAM" "1")
(setenv "MACH_USE_SYSTEM_PYTHON" "1")
(setenv "PYTHON"
(search-input-file inputs "/bin/python"))
(setenv "MOZ_BUILD_DATE" ,%icedove-build-id) ; avoid timestamp
(setenv "MOZ_APP_NAME" "icedove")
(setenv "LDFLAGS" (string-append "-Wl,-rpath="
(assoc-ref outputs "out")
"/lib/icedove"))
(mkdir-p (string-append (getcwd) "/builddir"))
(with-output-to-file mozconfig
(lambda ()
(display
(string-append
"ac_add_options --disable-crashreporter\n"
"ac_add_options --disable-debug\n"
"ac_add_options --disable-debug-symbols\n"
"ac_add_options --disable-elf-hack\n"
"ac_add_options --disable-jit\n"
"ac_add_options --disable-necko-wifi\n"
"ac_add_options --disable-official-branding\n"
"ac_add_options --disable-tests\n"
"ac_add_options --disable-updater\n"
"ac_add_options --disable-webrtc\n"
"ac_add_options --enable-application=comm/mail\n"
"ac_add_options --enable-default-toolkit=\"cairo-gtk3\"\n"
"ac_add_options --enable-optimize\n"
"ac_add_options --enable-pulseaudio\n"
"ac_add_options --enable-release\n"
"ac_add_options --enable-strip\n"
"ac_add_options --enable-system-ffi\n"
"ac_add_options --enable-system-pixman\n"
"ac_add_options --prefix=" out "\n"
"ac_add_options --with-clang-path=" (assoc-ref %build-inputs "clang") "/bin/clang\n"
"ac_add_options --with-distribution-id=org.gnu\n"
"ac_add_options --with-libclang-path=" (assoc-ref %build-inputs "clang") "/lib\n"
"ac_add_options --with-system-bz2\n"
"ac_add_options --with-system-icu\n"
"ac_add_options --with-system-jpeg\n"
"ac_add_options --with-system-libevent\n"
"ac_add_options --with-system-nspr\n"
;"ac_add_options --with-system-nss\n"
"ac_add_options --with-system-zlib\n"
"ac_add_options --without-wasm-sandboxed-libraries\n"
"mk_add_options MOZ_MAKE_FLAGS=-j"
(number->string (parallel-job-count)) "\n"))))
(display (getcwd))
(newline)
(display "mach configure")
(invoke "./mach" "configure"))))
(replace 'build
(lambda _ (invoke "./mach" "build")))
(replace 'install
(lambda _ (invoke "./mach" "install")))
;; Thunderbird doesn't provide any .desktop file.
;; See https://bugzilla.mozilla.org/show_bug.cgi?id=1637575
(add-after 'install 'install-desktop-file
(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(apps (string-append out "/share/applications")))
(mkdir-p apps)
(with-output-to-file (string-append apps "/icedove.desktop")
(lambda _
(format #t
"[Desktop Entry]~@
(setenv "MOZ_NOSPAM" "1")
(setenv "MACH_USE_SYSTEM_PYTHON" "1")
(setenv "PYTHON"
(search-input-file inputs "/bin/python"))
(setenv "MOZ_BUILD_DATE" #$%icedove-build-id) ; avoid timestamp
(setenv "MOZ_APP_NAME" "icedove")
(setenv "LDFLAGS" (string-append "-Wl,-rpath=" #$output
"/lib/icedove"))
(mkdir-p (string-append (getcwd) "/builddir"))
(with-output-to-file mozconfig
(lambda ()
(display
(string-append
"ac_add_options --disable-crashreporter\n"
"ac_add_options --disable-debug\n"
"ac_add_options --disable-debug-symbols\n"
"ac_add_options --disable-elf-hack\n"
"ac_add_options --disable-jit\n"
"ac_add_options --disable-necko-wifi\n"
"ac_add_options --disable-official-branding\n"
"ac_add_options --disable-tests\n"
"ac_add_options --disable-updater\n"
"ac_add_options --disable-webrtc\n"
"ac_add_options --enable-application=comm/mail\n"
"ac_add_options --enable-default-toolkit=\"cairo-gtk3\"\n"
"ac_add_options --enable-optimize\n"
"ac_add_options --enable-pulseaudio\n"
"ac_add_options --enable-release\n"
"ac_add_options --enable-strip\n"
"ac_add_options --enable-system-ffi\n"
"ac_add_options --enable-system-pixman\n"
"ac_add_options --prefix=" #$output "\n"
"ac_add_options --with-clang-path=" (assoc-ref %build-inputs "clang") "/bin/clang\n"
"ac_add_options --with-distribution-id=org.gnu\n"
"ac_add_options --with-libclang-path=" (assoc-ref %build-inputs "clang") "/lib\n"
"ac_add_options --with-system-bz2\n"
"ac_add_options --with-system-icu\n"
"ac_add_options --with-system-jpeg\n"
"ac_add_options --with-system-libevent\n"
"ac_add_options --with-system-nspr\n"
;"ac_add_options --with-system-nss\n"
"ac_add_options --with-system-zlib\n"
"ac_add_options --without-wasm-sandboxed-libraries\n"
"mk_add_options MOZ_MAKE_FLAGS=-j"
(number->string (parallel-job-count)) "\n"))))
(display (getcwd))
(newline)
(display "mach configure")
(invoke "./mach" "configure"))))
(replace 'build
(lambda _ (invoke "./mach" "build")))
(replace 'install
(lambda _ (invoke "./mach" "install")))
;; Thunderbird doesn't provide any .desktop file.
;; See https://bugzilla.mozilla.org/show_bug.cgi?id=1637575
(add-after 'install 'install-desktop-file
(lambda _
(let ((apps (string-append #$output "/share/applications")))
(mkdir-p apps)
(with-output-to-file (string-append apps "/icedove.desktop")
(lambda _
(format #t
"[Desktop Entry]~@
Name=Icedove~@
Exec=~a/bin/icedove~@
Icon=icedove~@
@ -1474,20 +1474,19 @@ standards of the IceCat project.")
[Desktop Action ComposeMessage]~@
Name=Write new message~@
Exec=~@*~a/bin/icedove -compose~%"
out))))))
(add-after 'install 'wrap-program
(lambda* (#:key inputs outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(lib (string-append out "/lib"))
(gtk (assoc-ref inputs "gtk+"))
(gtk-share (string-append gtk "/share"))
(pulseaudio (assoc-ref inputs "pulseaudio"))
(pulseaudio-lib (string-append pulseaudio "/lib"))
(eudev (assoc-ref inputs "eudev"))
(eudev-lib (string-append eudev "/lib")))
(wrap-program (car (find-files lib "^icedove$"))
`("XDG_DATA_DIRS" prefix (,gtk-share))
`("LD_LIBRARY_PATH" prefix (,pulseaudio-lib ,eudev-lib)))))))))
#$output))))))
(add-after 'install 'wrap-program
(lambda* (#:key inputs #:allow-other-keys)
(let* ((lib (string-append #$output "/lib"))
(gtk #$(this-package-input "gtk+"))
(gtk-share (string-append gtk "/share"))
(pulseaudio #$(this-package-input "pulseaudio"))
(pulseaudio-lib (string-append pulseaudio "/lib"))
(eudev #$(this-package-input "eudev"))
(eudev-lib (string-append eudev "/lib")))
(wrap-program (car (find-files lib "^icedove$"))
`("XDG_DATA_DIRS" prefix (,gtk-share))
`("LD_LIBRARY_PATH" prefix (,pulseaudio-lib ,eudev-lib)))))))))
(inputs
(list alsa-lib
bzip2
@ -1534,7 +1533,7 @@ standards of the IceCat project.")
;; in the Thunderbird release tarball. We don't use the release
;; tarball because it duplicates the Icecat sources and only adds the
;; "comm" directory, which is provided by this repository.
,(let ((changeset "04f60827c1b53ab86121c7d122d3a8216219ff9f"))
,(let ((changeset "07a17b101f904a686bbdf798ba2e820079a8323f"))
(origin
(method hg-fetch)
(uri (hg-reference

View file

@ -35,6 +35,7 @@
;;; Copyright © 2021 Lu Hui <luhux76@gmail.com>
;;; Copyright © 2022 Pier-Hugues Pellerin <phpellerin@gmail.com>
;;; Copyright © 2022 muradm <mail@muradm.net>
;;; Copyright © 2022 Dhruvin Gandhi <contact@dhruvin.dev>
;;;
;;; This file is part of GNU Guix.
;;;
@ -841,6 +842,49 @@ in the style of communicating sequential processes (@dfn{CSP}).")
(alist-replace "go" (list go-1.16) (package-native-inputs go-1.16))
(package-native-inputs go-1.16)))))
(define-public go-1.18
(package
(inherit go-1.17)
(name "go")
(version "1.18.6")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/golang/go")
(commit (string-append "go" version))))
(file-name (git-file-name name version))
(sha256
(base32
"1s2xwgd3mfbjdf7ls9gyj7n1lbqc4276qkr3znyq9694isj1ak20"))))))
(define-public go-1.19
(package
(inherit go-1.18)
(name "go")
(version "1.19.1")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/golang/go")
(commit (string-append "go" version))))
(file-name (git-file-name name version))
(sha256
(base32
"1gah4zhbkgbwrrryfmzdv2qwi1rgxk10q2r3hnlcb1dybf9c1i1w"))))
(arguments
(substitute-keyword-arguments (package-arguments go-1.18)
((#:phases phases)
#~(modify-phases #$phases
(replace 'install-doc-files
(lambda _
(for-each (lambda (file)
(install-file file (string-append
#$output "/share/doc/go")))
'("CONTRIBUTING.md" "PATENTS" "README.md"
"SECURITY.md"))))))))))
(define-public go go-1.17)
(define make-go-std
@ -880,6 +924,8 @@ in the style of communicating sequential processes (@dfn{CSP}).")
(define-public go-std-1.14 (make-go-std go-1.14))
(define-public go-std-1.16 (make-go-std go-1.16))
(define-public go-std-1.17 (make-go-std go-1.17))
(define-public go-std-1.18 (make-go-std go-1.18))
(define-public go-std-1.19 (make-go-std go-1.19))
(define-public go-0xacab-org-leap-shapeshifter
(let ((commit "0aa6226582efb8e563540ec1d3c5cfcd19200474")
@ -3584,7 +3630,7 @@ middleware for Go web applications and services.")
(define-public go-github-com-spf13-cobra
(package
(name "go-github-com-spf13-cobra")
(version "1.4.0")
(version "1.5.0")
(source
(origin
(method git-fetch)
@ -3594,7 +3640,7 @@ middleware for Go web applications and services.")
(file-name (git-file-name name version))
(sha256
(base32
"0ijhnk9pcks1v1cxri4kf6v1h26ym3jikmkgv4fdfrmm7sqgva13"))))
"0qavvyljh509w5xb46lfkak670szp6v4jswwar1hx13cpid8gk5d"))))
(build-system go-build-system)
(arguments
`(#:import-path "github.com/spf13/cobra"))
@ -6036,6 +6082,29 @@ network protocol.")
(home-page "https://github.com/lucas-clemente/quic-go")
(license license:expat)))
(define-public go-github-com-lunixbochs-vtclean
(package
(name "go-github-com-lunixbochs-vtclean")
(version "1.0.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/lunixbochs/vtclean")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0jqn33l1kzy4dk66zbvxz7rlgkgg34s9mhc8z0lrz0i88466zhd8"))))
(build-system go-build-system)
(arguments (list #:import-path "github.com/lunixbochs/vtclean"))
(home-page "https://github.com/lunixbochs/vtclean")
(synopsis "Filter out terminal escape sequences")
(description
"The @code{vtclean} provides the @command{vtclean} command and a library
designed to clean up raw terminal output by stripping escape sequences,
optionally preserving color.")
(license license:expat)))
(define-public go-github-com-francoispqt-gojay
(package
(name "go-github-com-francoispqt-gojay")
@ -7780,6 +7849,33 @@ file system operations.")
extensions.")
(license license:expat))))
(define-public go-github-com-juju-ansiterm
(package
(name "go-github-com-juju-ansiterm")
(version "0.0.0-20210929141451-8b71cc96ebdc")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/juju/ansiterm")
(commit (go-version->git-ref version))))
(file-name (git-file-name name version))
(sha256
(base32 "05mk7mlvg11dd6b0j0wlq547ghbmx2ywwrlbcb4kddpg7qaqp1va"))))
(build-system go-build-system)
(arguments (list #:import-path "github.com/juju/ansiterm"))
(propagated-inputs
(list go-gopkg-in-check-v1
go-github-com-mattn-go-isatty
go-github-com-mattn-go-colorable
go-github-com-lunixbochs-vtclean))
(home-page "https://github.com/juju/ansiterm")
(synopsis "Writer to output ANSI escape codes for color and styles")
(description
"The ansiterm package provides a writer to output the ANSI escape codes
for color and styles.")
(license license:lgpl3)))
(define-public go-github-com-kevinburke-ssh-config
(package
(name "go-github-com-kevinburke-ssh-config")
@ -9916,6 +10012,50 @@ kubernetes-sigs/yaml is a permanent fork of
@url{https://github.com/ghodss/yaml,ghodss/yaml}.")
(license (list license:expat license:bsd-3))))
(define-public go-git-sr-ht-emersion-go-scfg
(package
(name "go-git-sr-ht-emersion-go-scfg")
(version "0.0.0-20211215104734-c2c7a15d6c99")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://git.sr.ht/~emersion/go-scfg")
(commit (go-version->git-ref version))))
(file-name (git-file-name name version))
(sha256
(base32 "02gn8hz8zfv8y0krysx2wv951gw8hmhdfqf1ysidwm7i293365w4"))))
(build-system go-build-system)
(arguments (list #:import-path "git.sr.ht/~emersion/go-scfg"))
(propagated-inputs
(list go-github-com-google-shlex
go-github-com-davecgh-go-spew))
(home-page "https://git.sr.ht/~emersion/go-scfg")
(synopsis "Go library for simple configuration file format")
(description "Package go-scfg parses scfg files.")
(license license:expat)))
(define-public go-git-sr-ht-emersion-gqlclient
(package
(name "go-git-sr-ht-emersion-gqlclient")
(version "0.0.0-20220202181617-4e6e9c763dd2")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://git.sr.ht/~emersion/gqlclient")
(commit (go-version->git-ref version))))
(file-name (git-file-name name version))
(sha256
(base32 "1d9hmaz7yy02bk455gmaav818xi49sw69jyx6dxzymv6ln7r1cv1"))))
(build-system go-build-system)
(arguments (list #:import-path "git.sr.ht/~emersion/gqlclient"))
(home-page "https://git.sr.ht/~emersion/gqlclient")
(synopsis "GraphQL client and code generator")
(description
"This package provides a GraphQL client and code generator for Go.")
(license license:expat)))
(define-public go-github-com-google-go-jsonnet
(package
(name "go-github-com-google-go-jsonnet")
@ -9945,6 +10085,28 @@ production-ready implementation, compatible with the original Jsonnet C++
implementation.")
(license license:asl2.0)))
(define-public go-github-com-google-shlex
(package
(name "go-github-com-google-shlex")
(version "0.0.0-20191202100458-e7afc7fbc510")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/google/shlex")
(commit (go-version->git-ref version))))
(file-name (git-file-name name version))
(sha256
(base32 "14z8hqyik910wk2qwnzgz8mjsmiamxa0pj55ahbv0jx6j3dgvzfm"))))
(build-system go-build-system)
(arguments (list #:import-path "github.com/google/shlex"))
(home-page "https://github.com/google/shlex")
(synopsis "Simple lexer for Go")
(description
"@code{shlex} implements a simple lexer which splits input into tokens
using shell-style rules for quoting and commenting.")
(license license:asl2.0)))
(define-public go-github-com-gorilla-websocket
(package
(name "go-github-com-gorilla-websocket")

View file

@ -290,6 +290,7 @@ subplots, multiple-axes, polar charts, and bubble charts.")
(origin
(method url-fetch)
(uri (pypi-uri "python-louvain" version))
(patches (search-patches "python-louvain-fix-test.patch"))
(sha256
(base32 "0sx53l555rwq0z7if8agirjgw4ddp8r9b949wwz8vlig03sjvfmp"))))
(build-system python-build-system)

View file

@ -192,36 +192,36 @@ framebuffer graphics, audio output and input event.")
(native-inputs
(list autoconf automake libtool perl pkg-config))
(inputs
`(("alsa" ,alsa-lib)
("ffmpeg" ,ffmpeg)
("freetype" ,freetype)
("glu" ,glu)
("gstreamer" ,gstreamer)
("imlib2" ,imlib2)
("jasper" ,jasper)
("jpeg" ,libjpeg-turbo)
("libcddb" ,libcddb)
("libdrm" ,libdrm)
("libtimidity" ,libtimidity)
("mad" ,libmad)
("mng" ,libmng)
("mpeg2" ,libmpeg2)
("mpeg3" ,libmpeg3)
("opengl" ,mesa)
("png" ,libpng)
("sdl" ,sdl)
("svg" ,(librsvg-for-system))
("tiff" ,libtiff)
("tslib" ,tslib)
("vdpau" ,libvdpau)
("vorbisfile" ,libvorbis)
("wayland" ,wayland)
("webp" ,libwebp)
("x11" ,libx11)
("xcomposite" ,libxcomposite)
("xext" ,libxext)
("xproto" ,xorgproto)
("zlib" ,zlib)))
(list alsa-lib
ffmpeg
freetype
glu
gstreamer
imlib2
jasper
libjpeg-turbo
libcddb
libdrm
libtimidity
libmad
libmng
libmpeg2
libmpeg3
mesa
libpng
sdl
(librsvg-for-system)
libtiff
tslib
libvdpau
libvorbis
wayland
libwebp
libx11
libxcomposite
libxext
xorgproto
zlib))
(propagated-inputs
(list flux))
(synopsis "DFB Graphics Library")
@ -1118,29 +1118,53 @@ graphics.")
(package
(name "openexr")
(version "3.1.3")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/AcademySoftwareFoundation/openexr")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0c9vla0kbsbbhkk42jlbf94nzfb1anqh7dy9b0b3nna1qr6v4bh6"))))
(source (origin
(method git-fetch)
(uri (git-reference
(url
"https://github.com/AcademySoftwareFoundation/openexr")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
"0c9vla0kbsbbhkk42jlbf94nzfb1anqh7dy9b0b3nna1qr6v4bh6"))))
(build-system cmake-build-system)
(arguments
'(#:phases
(modify-phases %standard-phases
;; /var/tmp does not exist in the Guix build environment
(add-after 'unpack 'patch-test-directory
(lambda _
(substitute* '("src/test/OpenEXRUtilTest/tmpDir.h"
"src/test/OpenEXRFuzzTest/tmpDir.h"
"src/test/OpenEXRTest/tmpDir.h"
"src/test/OpenEXRCoreTest/main.cpp")
(("/var/tmp") "/tmp")))))))
(inputs
(list imath zlib))
(list #:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'patch-test-directory
(lambda _
(substitute* (list
"src/test/OpenEXRUtilTest/tmpDir.h"
"src/test/OpenEXRFuzzTest/tmpDir.h"
"src/test/OpenEXRTest/tmpDir.h"
"src/test/OpenEXRCoreTest/main.cpp")
(("/var/tmp")
"/tmp"))))
#$@(if (target-64bit?)
#~()
#~((add-after 'patch-test-directory 'disable-broken-tests
(lambda _
;; Disable tests that fail at least on i686-linux.
(substitute* '("src/test/OpenEXRCoreTest/main.cpp"
"src/test/OpenEXRTest/main.cpp")
(("TEST \\(testCompression, \"basic\"\\);")
"")
(("TEST\\( testNoCompression, \"core_compression\" \\);")
"")
(("TEST\\( testRLECompression, \"core_compression\" \\);")
"")
(("TEST\\( testZIPCompression, \"core_compression\" \\);")
"")
(("TEST\\( testZIPSCompression, \"core_compression\" \\);")
"")
(("TEST\\( testB44Compression, \"core_compression\" \\);")
"")
(("TEST\\( testB44ACompression, \"core_compression\" \\);")
"")
(("TEST \\(testOptimizedInterleavePatterns, \"basic\"\\);")
"")))))))))
(inputs (list imath zlib))
(home-page "https://www.openexr.com/")
(synopsis "High-dynamic-range file format library")
(description
@ -2202,6 +2226,75 @@ Features include:
")
(license license:gpl3+)))
(define-public discregrid
(let ((commit "4c27e1cc88be828c6ac5b8a05759ac7e01cf79e9")
(revision "0"))
(package
(name "discregrid")
(version (git-version "0.0.0" revision commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/InteractiveComputerGraphics/Discregrid")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32 "01cwfpw19rc9k5glx9dhnqpihd0is28a9b53qvzp5kgjmdq2v1p0"))
(modules '((guix build utils)))
(snippet
#~(begin
(delete-file-recursively "extern/cxxopts")
(substitute* '("cmd/discrete_field_to_bitmap/main.cpp"
"cmd/generate_density_map/main.cpp"
"cmd/generate_sdf/main.cpp")
(("^#include <cxxopts/cxxopts\\.hpp>")
"#include <cxxopts.hpp>"))))))
(build-system cmake-build-system)
(outputs '("out" "bin"))
(arguments
(list #:tests? #f ; No tests
#:configure-flags
#~(list (string-append "-DCMAKE_INSTALL_BINDIR="
#$output:bin "/bin")
;; Bespoke version of BUILD_SHARED_LIBS.
"-DBUILD_AS_SHARED_LIBS=ON")
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'patch-cmake
(lambda _
(let ((port (open-file "cmd/CMakeLists.txt" "a")))
(display "install(TARGETS
DiscreteFieldToBitmap
GenerateDensityMap
GenerateSDF)
"
port)
(close-port port)))))))
(inputs
(list cxxopts eigen))
(home-page "https://github.com/InteractiveComputerGraphics/Discregrid")
(synopsis "Discretize functions on regular grids")
(description "Discregrid is a C++ library for the parallel discretization
of (preferably smooth) functions on regular grids. It generates a (cubic)
polynomial discretization given a box-shaped domain, a grid resolution, and a
3D scalar field. The library can also serialize and deserialize the generated
discrete grid, and compute and discretize the signed distance field
corresponding to a triangle mesh. The following programs are included with
Discregrid:
@itemize
@item @code{GenerateSDF}: Computes a discrete (cubic) signed distance field
from a triangle mesh in OBJ format.
@item @code{DiscreteFieldToBitmap}: Generates an image in bitmap format of a
two-dimensional slice of a previously computed discretization.
@item @code{GenerateDensityMap}: Generates a density map from a previously
generated discrete signed distance field using the cubic spline kernel.
@end itemize")
(license license:expat))))
(define-public mmg
(package
(name "mmg")
@ -2280,7 +2373,8 @@ Features include:
;; TODO: Fix failing LaTeX invocation (which results in equations
;; being inserted literally into PNGs rather than being typeset).
;;texlive-tiny
))
perl)) ;used to generate Fortran headers
(inputs
(list scotch))
(home-page "http://www.mmgtools.org/")

View file

@ -31,6 +31,7 @@
;;; Copyright © 2021 Wamm K. D. <jaft.r@outlook.com>
;;; Copyright © 2022 Zhu Zihao <all_but_last@163.com>
;;; Copyright © 2022 Benjamin Slade <slade@lambda-y.net>
;;; Copyright © 2022 Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>
;;;
;;; This file is part of GNU Guix.
;;;
@ -1181,7 +1182,7 @@ application suites.")
(define-public gtk
(package
(name "gtk")
(version "4.8.0")
(version "4.8.1")
(source
(origin
(method url-fetch)
@ -1189,7 +1190,7 @@ application suites.")
(version-major+minor version) "/"
name "-" version ".tar.xz"))
(sha256
(base32 "0zxxvjnbmaahvm9lwm007dzgc0yl8qamkp1467c5kqyi6ws21mn8"))
(base32 "1za2nyqqs2lrbss61gfw17qba2f0w6a119m1xk4d0fx2k3gdis2w"))
(patches
(search-patches "gtk4-respect-GUIX_GTK4_PATH.patch"))))
(build-system meson-build-system)

View file

@ -4500,15 +4500,15 @@ tools.")
(define-public guile-eris
(package
(name "guile-eris")
(version "0.2.0")
(version "1.0.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://inqlab.net/git/eris.git")
(url "https://codeberg.org/eris/guile-eris.git")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256 (base32 "1ijglmwkdy1l87gj429qfjis0v8b1zlxhbyfhx5za8664h68nqka"))))
(sha256 (base32 "0d4wbjwwaxk0zn5gjhl86qhvk1aisgzp1vnvy4xbvrv5ydqpgyqm"))))
(build-system gnu-build-system)
(arguments '())
(native-inputs
@ -4517,17 +4517,18 @@ tools.")
pkg-config
texinfo
;; test dependency
guile-srfi-180))
guile-srfi-180
guile-quickcheck))
(inputs (list guile-3.0))
(propagated-inputs
(list guile-sodium))
(synopsis "Guile implementation of the Encoding for Robust Immutable Storage (ERIS)")
(description
"Guile-ERIS is the reference implementation of the Encoding for Robust
Immutable Storage (ERIS). ERIS allows arbitrary content to be encoded into
uniformly sized, encrypted blocks that can be reassembled using a short
read-capability.")
(home-page "https://inqlab.net/git/eris.git")
"Guile-ERIS is a Guile implementation of the @url{http://purl.org/eris,
Encoding for Robust Immutable Storage (ERIS)}. ERIS allows arbitrary content
to be encoded into uniformly sized, encrypted blocks that can be reassembled
using a short read-capability.")
(home-page "https://codeberg.org/eris/guile-eris")
(license license:gpl3+)))
(define-public guile-r6rs-protobuf

View file

@ -56,6 +56,7 @@
#:use-module (gnu packages gnome)
#:use-module (gnu packages gtk)
#:use-module (gnu packages guile)
#:use-module (gnu packages high-availability)
#:use-module (gnu packages libusb)
#:use-module (gnu packages linux)
#:use-module (gnu packages lxqt)
@ -1117,33 +1118,6 @@ supported by the Linux kernel.")
as the Pinebook Pro.")
(license license:gpl2+))))
(define-public libqb
(package
(name "libqb")
;; NOTE: We are using a Release Candidate version (for 2.0) here because
;; of the linker issues with the previous release.
(version "1.9.1")
(source (origin
(method url-fetch)
(uri (string-append
"https://github.com/ClusterLabs/libqb/releases/download/v"
version "/libqb-" version ".tar.xz"))
(sha256
(base32
"008vvw504kh40br5v2xkqavnp9vpmjvf768faqzv1d00fd53ingn"))))
(build-system gnu-build-system)
(native-inputs
(list pkg-config libxml2))
(home-page "https://clusterlabs.github.io/libqb/")
(synopsis "Library providing high performance logging, tracing, ipc, and poll")
(description "Libqb is a library with the primary purpose of providing
high-performance, reusable features for client-server architecture, such as
logging, tracing, inter-process communication (IPC), and polling. Libqb is
not intended to be an all-encompassing library, but instead provide focused
APIs that are highly tuned for maximum performance for client-server
applications.")
(license license:lgpl2.1)))
(define-public usbguard
(package
(name "usbguard")

View file

@ -12,6 +12,7 @@
;;; Copyright © 2020, 2022 Kyle Meyer <kyle@kyleam.com>
;;; Copyright © 2020 Alexandru-Sergiu Marton <brown121407@member.fsf.org>
;;; Copyright © 2020 Giacomo Leidi <goodoldpaul@autistici.org>
;;; Copyright © 2022 Alice Brenon <alice.brenon@ens-lyon.fr>
;;;
;;; This file is part of GNU Guix.
;;;
@ -1541,6 +1542,26 @@ derivations of regular expressions.")
introduces a more general approach for processing XML with Haskell.")
(license license:expat)))
(define-public ghc-hxt-xpath
(package
(name "ghc-hxt-xpath")
(version "9.1.2.2")
(source (origin
(method url-fetch)
(uri (hackage-uri "hxt-xpath" version))
(sha256
(base32
"0wlq9s01icalnvjkkilx5zaqp3ff4v5limj1xy8i18qpzjspqdsh"))))
(build-system haskell-build-system)
(inputs (list ghc-hxt))
(home-page "https://github.com/UweSchmidt/hxt")
(synopsis "The XPath modules for HXT.")
(description
"This extension for the Haskell XML Toolbox defines data types to
represent XPath, navigation trees and primitives to select and edit subtrees
from them. Some primitives have both a functional and an arrow interface.")
(license license:expat)))
(define-public ghc-http-common
(package
(name "ghc-http-common")

View file

@ -935,6 +935,42 @@ interactive environment for the functional language Haskell.")
(define-public ghc-8 ghc-8.10)
(define-public ghc-9.0
(package
(inherit ghc-8.10)
(name "ghc-next")
(version "9.0.2")
(source (origin
(method url-fetch)
(uri (string-append "https://www.haskell.org/ghc/dist/" version
"/ghc-" version "-src.tar.xz"))
(sha256
(base32
"15wii8can2r3dcl6jjmd50h2jvn7rlmn05zb74d2scj6cfwl43hl"))))
(native-inputs
`(;; GHC 9.0.2 must be built with GHC >= 8.8
("ghc-bootstrap" ,ghc-8.10)
("ghc-testsuite"
,(origin
(method url-fetch)
(uri (string-append
"https://www.haskell.org/ghc/dist/"
version "/ghc-" version "-testsuite.tar.xz"))
(sha256
(base32
"1m5fzhr4gjn9ni8gxx7ag3fkbw1rspjzgv39mnfb0nkm5mw70v3s"))))
,@(filter (match-lambda
(("ghc-bootstrap" . _) #f)
(("ghc-testsuite" . _) #f)
(_ #t))
(package-native-inputs ghc-8.10))))
(native-search-paths
(list (search-path-specification
(variable "GHC_PACKAGE_PATH")
(files (list (string-append "lib/ghc-" version)))
(file-pattern ".*\\.conf\\.d$")
(file-type 'directory))))))
(define-public ghc ghc-8)
;;; haskell.scm ends here

View file

@ -0,0 +1,242 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2022 Sharlatan Hellseher <sharlatanus@gmail.com>
;;;
;;; This file is part of GNU Guix.
;;;
;;; This program 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.
;;;
;;; This program 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 this program. If not, see <http://www.gnu.org/licenses/>.
;;; Commentary:
;; This module provides package definitions related for High Availability (HA)
;; software, which come as foundation to create clusterization and load
;; balancing of services.
;;; Code:
(define-module (gnu packages high-availability)
#:use-module (gnu packages autotools)
#:use-module (gnu packages check)
#:use-module (gnu packages compression)
#:use-module (gnu packages documentation)
#:use-module (gnu packages gcc)
#:use-module (gnu packages gettext)
#:use-module (gnu packages glib)
#:use-module (gnu packages hardware)
#:use-module (gnu packages linux)
#:use-module (gnu packages networking)
#:use-module (gnu packages nss)
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages python)
#:use-module (gnu packages rsync)
#:use-module (gnu packages tls)
#:use-module (gnu packages valgrind)
#:use-module (gnu packages version-control)
#:use-module (gnu packages xml)
#:use-module (gnu packages)
#:use-module (guix build-system gnu)
#:use-module (guix gexp)
#:use-module (guix download)
#:use-module (guix git-download)
#:use-module (guix packages)
#:use-module ((guix licenses)
#:prefix license:))
(define-public libqb
(package
(name "libqb")
(version "2.0.6")
(source (origin
(method url-fetch)
(uri (string-append
"https://github.com/ClusterLabs/libqb/releases/download/v"
version "/libqb-" version ".tar.xz"))
(sha256
(base32
"071k916vz9ppyb69rpk792fzjs3nf3chakn10i496scgiqh49rzi"))))
(build-system gnu-build-system)
(native-inputs (list autoconf automake libtool libxml2 pkg-config))
(home-page "https://clusterlabs.github.io/libqb/")
(synopsis
"Library providing high performance logging, tracing, ipc, and poll")
(description
"Libqb is a library with the primary purpose of providing
high-performance, reusable features for client-server architecture, such as
logging, tracing, inter-process communication (IPC), and polling. Libqb is
not intended to be an all-encompassing library, but instead provide focused
APIs that are highly tuned for maximum performance for client-server
applications.")
(license license:lgpl2.1)))
(define-public kronosnet
(package
(name "kronosnet")
(version "1.24")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/kronosnet/kronosnet")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
"1b8rz7f2h3scrq0xcqz58ckzsvv08g31j5jgy2v4i6w87r9c75lw"))))
(build-system gnu-build-system)
(arguments
;; XXX: Multiple tests failed. Tests
;; require very complex environment and for some of them root privileges to
;; set network configuration. It has it's own CI based on Jenkis
;; https://ci.kronosnet.org/.
(list #:tests? #f
#:configure-flags #~'("--disable-static")
#:phases #~(modify-phases %standard-phases
(add-before 'bootstrap 'fix-version-gen
(lambda _
(call-with-output-file ".tarball-version"
(lambda (port)
(display #$version port))))))))
(native-inputs (list autoconf
automake
doxygen
libtool
net-tools
pkg-config))
(inputs (list lksctp-tools
libnl
libqb
libxml2
lz4
lzo
nss
nspr
openssl
xz
zlib
`(,zstd "lib")))
(home-page "https://kronosnet.org/")
(synopsis "Network abstraction layer designed for High Availability")
(description
"Kronosnet, often referred to as @code{knet}, is a network
abstraction layer designed for High Availability use cases, where redundancy,
security, fault tolerance and fast fail-over are the core requirements of
your application.
Kronosnet is the new underlying network protocol for Linux HA components
(Corosync), that features ability to use multiple links between nodes,
active/active and active/passive link failover policies, automatic link
recovery, FIPS compliant encryption (nss and/or openssl), automatic PMTUd and
in general better performances compared to the old network protocol.")
(license (list license:gpl2+ license:lgpl2.1+))))
(define-public corosync
(package
(name "corosync")
(version "3.1.6")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/corosync/corosync")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
"03g3qnm5acmk7jry6kspvkssbiv8k39749bic2f0cj3ckkwy2li4"))))
(build-system gnu-build-system)
(arguments
(list #:configure-flags #~'("--disable-static")
#:phases #~(modify-phases %standard-phases
(add-before 'bootstrap 'fix-version-gen
(lambda _
(call-with-output-file ".tarball-version"
(lambda (port)
(display #$version port))))))))
(native-inputs (list autoconf automake libtool pkg-config))
(inputs (list kronosnet libqb))
(home-page "https://corosync.github.io/corosync/")
(synopsis
"Group communication system for implementing High Availability in applications")
(description
"The Corosync Cluster Engine is a Group Communication System with additional
features for implementing high availability within applications. The project
provides four C Application Programming Interface features:
@itemize
@item A closed process group communication model with extended virtual synchrony
guarantees for creating replicated state machines.
@item A simple availability manager that restarts the application process when
it has failed.
@item A configuration and statistics in-memory database that provide the ability
to set, retrieve, and receive change notifications of information.
@item A quorum system that notifies applications when quorum is achieved or
lost.
@end itemize")
(license (list license:bsd-0 license:gpl3+))))
(define-public pacemaker
(package
(name "pacemaker")
(version "2.1.4")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/ClusterLabs/pacemaker")
(commit (string-append "Pacemaker-" version))))
(file-name (git-file-name name version))
(sha256
(base32
"04gfd7i3w0zbzv7vi7728lgbyjq7cbqpr7jsp501piwg3z5j4mvb"))))
(build-system gnu-build-system)
(arguments
(list #:configure-flags #~(list "--with-corosync" "--disable-static"
(string-append "--with-initdir="
#$output "/etc/init.d")
(string-append "--with-ocfdir="
#$output "/lib"))))
(native-inputs (list autoconf
automake
cmocka
gettext-minimal
libtool
pkg-config
rsync
util-linux
valgrind))
(inputs (list dbus
corosync
glib
gnutls
libqb
libxml2
libxslt
python
`(,util-linux "lib")))
(home-page "https://www.clusterlabs.org/pacemaker/")
(synopsis "Scalable High-Availability cluster resource manager")
(description
"Pacemaker is a high-availability cluster resource manager.
It achieves maximum availability for your cluster services (a.k.a. resources) by
detecting and recovering from node- and resource-level failures by making use of
the messaging and membership capabilities provided by Corosync.
It can do this for clusters of practically any size and comes with a powerful
dependency model that allows the administrator to accurately express the
relationships (both ordering and location) between the cluster resources.
Virtually anything that can be scripted can be managed as part of a Pacemaker cluster.")
(license (list license:cc-by4.0 license:gpl2+ license:lgpl2.1+))))

View file

@ -67,9 +67,10 @@
#:use-module (gnu packages textutils)
#:use-module (gnu packages unicode)
#:use-module (gnu packages xorg)
#:use-module (gnu packages xdisorg))
#:use-module (gnu packages xdisorg)
#:use-module (srfi srfi-1))
(define-public ibus
(define-public ibus-minimal
(package
(name "ibus")
(version "1.5.27")
@ -233,7 +234,17 @@
input method user interface. It comes with multilingual input support. It
may also simplify input method development.")
(home-page "https://github.com/ibus/ibus/wiki")
(license lgpl2.1+)))
(license lgpl2.1+)
(properties '((hidden? . #t)))))
(define-public ibus
(package/inherit ibus-minimal
(arguments (substitute-keyword-arguments (package-arguments ibus-minimal)
((#:configure-flags flags)
#~(cons* "--enable-gtk4" #$flags))))
(inputs (modify-inputs (package-inputs ibus-minimal)
(prepend gtk pango-next)))
(properties (alist-delete 'hidden? (package-properties ibus-minimal)))))
(define-public ibus-libpinyin
(package

View file

@ -730,7 +730,7 @@ replace the other outdated Graphviz tools.")
(native-inputs
(list extra-cmake-modules pkg-config))
(inputs
(list qtbase-5 qtwayland qtx11extras plasma-wayland-protocols wayland))
(list qtbase-5 qtwayland-5 qtx11extras plasma-wayland-protocols wayland))
(home-page "https://community.kde.org/Frameworks")
(synopsis "Utilities for graphical user interfaces")
(description "The KDE GUI addons provide utilities for graphical user
@ -1051,7 +1051,7 @@ protocols used in KDE Plasma.")
(native-inputs
(list extra-cmake-modules pkg-config))
(inputs
(list qtbase-5 plasma-wayland-protocols qtwayland wayland wayland-protocols))
(list qtbase-5 plasma-wayland-protocols qtwayland-5 wayland wayland-protocols))
(arguments
`(#:phases
(modify-phases %standard-phases

View file

@ -179,7 +179,7 @@ call it if it is not associated to a terminal.")
(list libxkbcommon
qtbase-5
qtdeclarative-5
qtwayland
qtwayland-5
wayland
wayland-protocols))
(home-page "https://invent.kde.org/plasma/layer-shell-qt")
@ -270,7 +270,7 @@ call it if it is not associated to a terminal.")
dbus))
(inputs
(list kwayland libxrandr plasma-wayland-protocols
qtbase-5 qtwayland wayland qtx11extras))
qtbase-5 qtwayland-5 wayland qtx11extras))
(arguments
'(#:tests? #f)) ; FIXME: 55% tests passed, 5 tests failed out of 11
(home-page "https://community.kde.org/Solid/Projects/ScreenManagement")
@ -355,7 +355,7 @@ with a ksysguardd daemon, which may also run on a remote system.")
(inputs
(list plasma-wayland-protocols
qtbase-5
qtwayland
qtwayland-5
kwayland
wayland
wayland-protocols-next))

View file

@ -273,7 +273,7 @@ This package is part of the KDE base applications module.")
pipewire-0.3
plasma-wayland-protocols
qtbase-5
qtwayland
qtwayland-5
qtx11extras
wayland
xcb-util-image

View file

@ -751,7 +751,7 @@ different notification systems.")
qtquickcontrols-5
qtquickcontrols2-5
qtx11extras
qtwayland
qtwayland-5
wayland))
(home-page "https://community.kde.org/KDEConnect")
(synopsis "Enable your devices to communicate with each other")
@ -902,6 +902,33 @@ charts.")
partitions, floppy and CD drives, etc.) along with information on their
capacity, free space, type and mount point. It also allows you to mount and
unmount drives and view them in a file manager.")
(license license:gpl2+)))
(define-public ktimer
(package
(name "ktimer")
(version "20.12.0")
(source (origin
(method url-fetch)
(uri (string-append "mirror://kde/stable/release-service/" version
"/src/ktimer-" version ".tar.xz"))
(sha256
(base32
"12fz5v5ky03h18jl75fnq1zagjq8qzi1s1q7phjz5d1rbhwc57ls"))))
(build-system qt-build-system)
(native-inputs
(list extra-cmake-modules
kdoctools))
(inputs
(list kdbusaddons
ki18n
kio
knotifications))
(home-page "https://kde.org/applications/utilities/ktimer")
(synopsis "Countdown Launcher")
(description "KTimer is a little tool to execute programs after some time.
It allows you to enter several tasks and to set a timer for each of them. The
timers for each task can be started, stopped, changed, or looped.")
(license license:gpl2+)))
(define-public kcachegrind

View file

@ -5,6 +5,7 @@
;;; Copyright © 2019 Alex Vong <alexvong1995@gmail.com>
;;; Copyright © 2020 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2020 Julien Lepiller <julien@lepiller.eu>
;;; Copyright © 2022 Milran <milranmike@protonmail.com>
;;;
;;; This file is part of GNU Guix.
;;;
@ -923,3 +924,31 @@ noun phrases, verb phrases, etc.).")
analysis (pitch, formant, intensity, ...), speech synthesis, labelling, segmenting
and manipulation.")
(license license:gpl2+)))
(define-public libskk
(package
(name "libskk")
(version "1.0.5")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/ueno/libskk")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32
"0y279pcgs3jrsi9vzx086xhz9jbz23dqqijp4agygc9ackp9sxy5"))))
(build-system gnu-build-system)
(native-inputs (list autoconf
automake
gettext-minimal
gobject-introspection
libtool
pkg-config
vala))
(inputs (list libgee json-glib libxkbcommon))
(home-page "https://github.com/ueno/libskk")
(synopsis "Dealing with Japanese kana-to-kanji conversion")
(description
"libskk is a library to deal with Japanese kana-to-kanji conversion method.")
(license license:gpl3+)))

View file

@ -1,6 +1,7 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2013, 2014, 2020 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2021 Maxime Devos <maximedevos@telenet.be>
;;; Copyright © 2022 LuHui <luhux76@gmail.com>
;;;
;;; This file is part of GNU Guix.
;;;
@ -49,7 +50,8 @@
(file-name (string-append name "-" version ".tar.gz"))))
(build-system gnu-build-system)
(native-inputs
(if (and=> (%current-target-system) target-aarch64?)
(if (or (and=> (%current-target-system) target-aarch64?)
(and=> (%current-target-system) target-riscv64?))
`(("config" ,config)) ; for config.sub
'()))
(arguments
@ -66,7 +68,8 @@
;; Hurd's console client.
"--localstatedir=/var"))
'())
,@(if (and=> (%current-target-system) target-aarch64?)
,@(if (or (and=> (%current-target-system) target-aarch64?)
(and=> (%current-target-system) target-riscv64?))
`(#:phases
(modify-phases %standard-phases
(add-before 'configure 'update-config.sub

View file

@ -1067,6 +1067,126 @@ converting QuarkXPress file format. It supports versions 3.1 to 4.1.")
(sha256
(base32 "14g9873x8m5yakpq7v9f7lhc5fkxh6yhjhgh0pm30cqmxsqhsglv"))))
(build-system glib-or-gtk-build-system)
(arguments
(list
#:tests? #f ; Building the tests already fails.
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'insert-external-tarballs
(lambda _
(mkdir-p "external/tarballs")
(copy-file #$dtoa "external/tarballs/dtoa-20180411.tgz")))
(add-before 'configure 'prepare-src
(lambda* (#:key inputs #:allow-other-keys)
(substitute*
(list "sysui/CustomTarget_share.mk"
"solenv/gbuild/gbuild.mk"
"solenv/gbuild/platform/unxgcc.mk")
(("/bin/sh") (which "sh")))
;; Use store references for strictly necessary commands,
;; but not for optional tools like gdb and valgrind.
(for-each (lambda (command)
(substitute* "desktop/scripts/soffice.sh"
(((format #f "~a " command))
(format #f "~a " (which command)))))
(list "dirname" "grep" "uname"))
;; GPGME++ headers are installed in a gpgme++ subdirectory, but
;; configure is hardcoded to use FHS directories.
(substitute* "configure"
(("GPGMEPP_CFLAGS=-I/usr/include/gpgme\\+\\+")
(string-append "GPGMEPP_CFLAGS=-I"
(search-input-directory inputs
"include/gpgme++"))))
;; /usr/bin/xdg-open doesn't exist on Guix System.
(substitute* '("shell/source/unix/exec/shellexec.cxx"
"shell/source/unix/misc/senddoc.sh")
(("/usr/bin/xdg-open")
(search-input-file inputs "/bin/xdg-open")))))
(add-after 'install 'reset-zip-timestamps
(lambda _
(for-each (lambda (file)
(invoke "ziptime" file))
;; So many different extensions for .zip files.
(find-files #$output "\\.(bau|dat|otp|ott|zip)$"))))
(add-after 'install 'bin-and-desktop-install
;; Create 'soffice' and 'libreoffice' symlinks to the executable
;; script.
(lambda _
(let ((out #$output))
(define (symlink-output src dst)
(mkdir-p (dirname (string-append out dst)))
(symlink (string-append out src) (string-append out dst)))
(define (install src dst)
(let ((dst (string-append out dst)))
(mkdir-p (dirname dst))
(copy-file src dst)))
(define (install-desktop-file app)
(let ((src (string-append "/lib/libreoffice/share/xdg/"
app ".desktop"))
(dst (string-append "/share/applications/libreoffice-"
app ".desktop")))
(substitute* (string-append out src)
(("Exec=libreoffice[0-9]+\\.[0-9]+ ")
(string-append "Exec=" out "/bin/libreoffice "))
(("Icon=libreoffice.*")
(string-append "Icon=" app "\n"))
(("LibreOffice [0-9]+\\.[0-9]+")
"LibreOffice"))
(symlink-output src dst)))
(define (install-appdata app)
(install-file (string-append
"sysui/desktop/appstream-appdata/"
"libreoffice-" app ".appdata.xml")
(string-append out "/share/appdata")))
(symlink-output "/lib/libreoffice/program/soffice"
"/bin/soffice")
(symlink-output "/lib/libreoffice/program/soffice"
"/bin/libreoffice")
(install
"workdir/CustomTarget/sysui/share/libreoffice/openoffice.org.xml"
"/share/mime/packages/libreoffice.xml")
(for-each install-desktop-file
'("base" "calc" "draw" "impress" "writer"
"math" "startcenter"))
(for-each install-appdata
'("base" "calc" "draw" "impress" "writer"))
(mkdir-p (string-append out "/share/icons/hicolor"))
(copy-recursively "sysui/desktop/icons/hicolor"
(string-append out "/share/icons/hicolor"))))))
#:configure-flags
#~(list
"--enable-release-build"
"--with-vendor=GNU Guix"
;; Avoid using all cpu cores by default
(format #f "--with-parallelism=~d" (parallel-job-count))
"--disable-fetch-external" ; disable downloads
"--with-system-libs" ; enable all --with-system-* flags
(string-append "--with-boost-libdir="
(dirname
(search-input-file %build-inputs
"lib/libboost_system.so")))
;; Avoid a dependency on ucpp.
"--with-idlc-cpp=cpp"
;; The fonts require an external tarball (crosextrafonts).
;; They should not be needed when system fonts are available.
"--without-fonts"
;; With java, the build fails since sac.jar is missing.
"--without-java"
;; FIXME: Enable once the corresponding inputs are packaged.
"--disable-coinmp"
"--disable-skia"
;; This could (Debian does this) be a separate output containing only
;; program/libfirebird_sdbclo.so, if there's a way to point to it.
"--enable-firebird-sdbc"
;; XXX: PDFium support requires fetching an external tarball and
;; patching the build scripts to work with GCC5. Try enabling this
;; when our default compiler is >=GCC 6.
"--disable-pdfium"
"--without-doxygen"
"--enable-build-opensymbol")))
(native-inputs
(list bison
cppunit
@ -1152,134 +1272,14 @@ converting QuarkXPress file format. It supports versions 3.1 to 4.1.")
xmlsec-nss
zip
zxing-cpp))
(arguments
(list
#:tests? #f ; Building the tests already fails.
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'insert-external-tarballs
(lambda _
(mkdir-p "external/tarballs")
(copy-file #$dtoa "external/tarballs/dtoa-20180411.tgz")))
(add-before 'configure 'prepare-src
(lambda* (#:key inputs #:allow-other-keys)
(substitute*
(list "sysui/CustomTarget_share.mk"
"solenv/gbuild/gbuild.mk"
"solenv/gbuild/platform/unxgcc.mk")
(("/bin/sh") (which "sh")))
;; Use store references for strictly necessary commands,
;; but not for optional tools like gdb and valgrind.
(for-each (lambda (command)
(substitute* "desktop/scripts/soffice.sh"
(((format #f "~a " command))
(format #f "~a " (which command)))))
(list "dirname" "grep" "uname"))
;; GPGME++ headers are installed in a gpgme++ subdirectory, but
;; configure is hardcoded to use FHS directories.
(substitute* "configure"
(("GPGMEPP_CFLAGS=-I/usr/include/gpgme\\+\\+")
(string-append "GPGMEPP_CFLAGS=-I"
(search-input-directory inputs
"include/gpgme++"))))
;; /usr/bin/xdg-open doesn't exist on Guix System.
(substitute* '("shell/source/unix/exec/shellexec.cxx"
"shell/source/unix/misc/senddoc.sh")
(("/usr/bin/xdg-open")
(search-input-file inputs "/bin/xdg-open")))))
(add-after 'install 'reset-zip-timestamps
(lambda _
(for-each (lambda (file)
(invoke "ziptime" file))
;; So many different extensions for .zip files.
(find-files #$output "\\.(bau|dat|otp|ott|zip)$"))))
(add-after 'install 'bin-and-desktop-install
;; Create 'soffice' and 'libreoffice' symlinks to the executable
;; script.
(lambda _
(let ((out #$output))
(define (symlink-output src dst)
(mkdir-p (dirname (string-append out dst)))
(symlink (string-append out src) (string-append out dst)))
(define (install src dst)
(let ((dst (string-append out dst)))
(mkdir-p (dirname dst))
(copy-file src dst)))
(define (install-desktop-file app)
(let ((src (string-append "/lib/libreoffice/share/xdg/"
app ".desktop"))
(dst (string-append "/share/applications/libreoffice-"
app ".desktop")))
(substitute* (string-append out src)
(("Exec=libreoffice[0-9]+\\.[0-9]+ ")
(string-append "Exec=" out "/bin/libreoffice "))
(("Icon=libreoffice.*")
(string-append "Icon=" app "\n"))
(("LibreOffice [0-9]+\\.[0-9]+")
"LibreOffice"))
(symlink-output src dst)))
(define (install-appdata app)
(install-file (string-append
"sysui/desktop/appstream-appdata/"
"libreoffice-" app ".appdata.xml")
(string-append out "/share/appdata")))
(symlink-output "/lib/libreoffice/program/soffice"
"/bin/soffice")
(symlink-output "/lib/libreoffice/program/soffice"
"/bin/libreoffice")
(install
"workdir/CustomTarget/sysui/share/libreoffice/openoffice.org.xml"
"/share/mime/packages/libreoffice.xml")
(for-each install-desktop-file
'("base" "calc" "draw" "impress" "writer"
"math" "startcenter"))
(for-each install-appdata
'("base" "calc" "draw" "impress" "writer"))
(mkdir-p (string-append out "/share/icons/hicolor"))
(copy-recursively "sysui/desktop/icons/hicolor"
(string-append out "/share/icons/hicolor"))))))
#:configure-flags
#~(list
"--enable-release-build"
"--with-vendor=GNU Guix"
;; Avoid using all cpu cores by default
(format #f "--with-parallelism=~d" (parallel-job-count))
"--disable-fetch-external" ; disable downloads
"--with-system-libs" ; enable all --with-system-* flags
(string-append "--with-boost-libdir="
(dirname
(search-input-file %build-inputs
"lib/libboost_system.so")))
;; Avoid a dependency on ucpp.
"--with-idlc-cpp=cpp"
;; The fonts require an external tarball (crosextrafonts).
;; They should not be needed when system fonts are available.
"--without-fonts"
;; With java, the build fails since sac.jar is missing.
"--without-java"
;; FIXME: Enable once the corresponding inputs are packaged.
"--disable-coinmp"
"--disable-skia"
;; This could (Debian does this) be a separate output containing only
;; program/libfirebird_sdbclo.so, if there's a way to point to it.
"--enable-firebird-sdbc"
;; XXX: PDFium support requires fetching an external tarball and
;; patching the build scripts to work with GCC5. Try enabling this
;; when our default compiler is >=GCC 6.
"--disable-pdfium"
"--without-doxygen"
"--enable-build-opensymbol")))
(home-page "https://www.libreoffice.org/")
(synopsis "Office suite")
(description "LibreOffice is a comprehensive office suite. It contains
(home-page "https://www.libreoffice.org/")
(synopsis "Office suite")
(description "LibreOffice is a comprehensive office suite. It contains
a number of components: Writer, a word processor; Calc, a spreadsheet
application; Impress, a presentation engine; Draw, a drawing and
flowcharting application; Base, a database and database frontend;
Math for editing mathematics.")
(properties
'((release-monitoring-url
. "https://www.libreoffice.org/download/download-libreoffice/")))
(license license:mpl2.0)))
(properties
'((release-monitoring-url
. "https://www.libreoffice.org/download/download-libreoffice/")))
(license license:mpl2.0)))

View file

@ -354,7 +354,7 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS."
;; The current "stable" kernels. That is, the most recently released major
;; versions that are still supported upstream.
(define-public linux-libre-5.19-version "5.19.11")
(define-public linux-libre-5.19-version "5.19.14")
(define-public linux-libre-5.19-gnu-revision "gnu")
(define deblob-scripts-5.19
(linux-libre-deblob-scripts
@ -364,7 +364,7 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS."
(base32 "092myqjixvy1k3ylcj0hfc4whfxapjvxsxm4gk30a3jv5dnh7mly")))
(define-public linux-libre-5.19-pristine-source
(let ((version linux-libre-5.19-version)
(hash (base32 "0wyrwdqm4dypx2jbb7d8c3b7fl7q5j434d6g9x2v6sw01gwx4m2m")))
(hash (base32 "1h8srn3fw4vw61qi0xxlk9fq0fqq4wl7fbrzz7sivdd8qkhjgv8x")))
(make-linux-libre-source version
(%upstream-linux-source version hash)
deblob-scripts-5.19)))
@ -373,7 +373,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-5.15-version "5.15.70")
(define-public linux-libre-5.15-version "5.15.72")
(define-public linux-libre-5.15-gnu-revision "gnu")
(define deblob-scripts-5.15
(linux-libre-deblob-scripts
@ -383,12 +383,12 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS."
(base32 "048r4synfax2ajyzlmp672b68yshxwlfccdah2vz1kh88rqfmgsc")))
(define-public linux-libre-5.15-pristine-source
(let ((version linux-libre-5.15-version)
(hash (base32 "0xhdjz7aqq13pkh1yr7ax3msqdb2xvrcpj464wibn1rl4pq2cz0s")))
(hash (base32 "1aq75z2spa1jvxv9m89gsaxza29n25k8j1f0pg9yj6j7bcxk5430")))
(make-linux-libre-source version
(%upstream-linux-source version hash)
deblob-scripts-5.15)))
(define-public linux-libre-5.10-version "5.10.145")
(define-public linux-libre-5.10-version "5.10.147")
(define-public linux-libre-5.10-gnu-revision "gnu1")
(define deblob-scripts-5.10
(linux-libre-deblob-scripts
@ -398,12 +398,12 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS."
(base32 "1981axxswghza3iadp94q54y8w30h9w9vyq4cbjiiv9alvbv0pb8")))
(define-public linux-libre-5.10-pristine-source
(let ((version linux-libre-5.10-version)
(hash (base32 "0qdcqmwvc70hfgj8hb8ccwmnvwl41dvdffqrmyg3cyblwprr0ngw")))
(hash (base32 "16pdpjmvrdml7am7s2kydrif1l7f4aq0wh4ak0xh3dby16zkl9c5")))
(make-linux-libre-source version
(%upstream-linux-source version hash)
deblob-scripts-5.10)))
(define-public linux-libre-5.4-version "5.4.214")
(define-public linux-libre-5.4-version "5.4.217")
(define-public linux-libre-5.4-gnu-revision "gnu1")
(define deblob-scripts-5.4
(linux-libre-deblob-scripts
@ -413,12 +413,12 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS."
(base32 "1vnjbdyssa7dwyjl9kg35alwvf7yh597cl74yr1wy2gk5bc9paw6")))
(define-public linux-libre-5.4-pristine-source
(let ((version linux-libre-5.4-version)
(hash (base32 "1ny57g5agk8sq6cbp2crjiay5bfkwqy32i4a5yw7x0lch2s7kg4s")))
(hash (base32 "0qrfrk0g1dky5apg8gdxczj2ir0g0z41zmdmbwwcxkxjz76jdf1b")))
(make-linux-libre-source version
(%upstream-linux-source version hash)
deblob-scripts-5.4)))
(define-public linux-libre-4.19-version "4.19.259")
(define-public linux-libre-4.19-version "4.19.261")
(define-public linux-libre-4.19-gnu-revision "gnu1")
(define deblob-scripts-4.19
(linux-libre-deblob-scripts
@ -428,12 +428,12 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS."
(base32 "00i91lx938nqlgy63hiricqd0fnbbf26vgya9c5lb7m1f4x324im")))
(define-public linux-libre-4.19-pristine-source
(let ((version linux-libre-4.19-version)
(hash (base32 "1ska6v95zjjj44h53gi34rnbsrm4507jwxi3kklnky6d0aykiy1z")))
(hash (base32 "1cicb3zydpka9yjx875hbh305bsdvni2kp674pkvaw04pnc35hxy")))
(make-linux-libre-source version
(%upstream-linux-source version hash)
deblob-scripts-4.19)))
(define-public linux-libre-4.14-version "4.14.294")
(define-public linux-libre-4.14-version "4.14.295")
(define-public linux-libre-4.14-gnu-revision "gnu1")
(define deblob-scripts-4.14
(linux-libre-deblob-scripts
@ -443,12 +443,12 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS."
(base32 "00i91lx938nqlgy63hiricqd0fnbbf26vgya9c5lb7m1f4x324im")))
(define-public linux-libre-4.14-pristine-source
(let ((version linux-libre-4.14-version)
(hash (base32 "069i11hv4fhwc9dirqbag1g1k3fn21wzpfggah4f1a41whf98apy")))
(hash (base32 "0svalywqmrhav63vw0ns06c25sgyvzwfngljpham3nm7jjxbkk32")))
(make-linux-libre-source version
(%upstream-linux-source version hash)
deblob-scripts-4.14)))
(define-public linux-libre-4.9-version "4.9.329")
(define-public linux-libre-4.9-version "4.9.330")
(define-public linux-libre-4.9-gnu-revision "gnu1")
(define deblob-scripts-4.9
(linux-libre-deblob-scripts
@ -458,7 +458,7 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS."
(base32 "0bib3641dbcqdkx3anna3caxnsg3nw9cnmhcklq0s93g3m57041h")))
(define-public linux-libre-4.9-pristine-source
(let ((version linux-libre-4.9-version)
(hash (base32 "168hy7vhgw2sfknflhhf6ykhkp4xs8v0igii6ivjlvs3dmwm21sj")))
(hash (base32 "0psrl8fcbp1bsanjmllic503dlyhkj8bjzfc20p2ksahlhv1j0mz")))
(make-linux-libre-source version
(%upstream-linux-source version hash)
deblob-scripts-4.9)))
@ -696,6 +696,10 @@ for ARCH and optionally VARIANT, or #f if there is no such configuration."
("CONFIG_PROC_PID_CPUSET" . #t)
;; Allow disk encryption by default
("CONFIG_DM_CRYPT" . m)
;; Support zram on all kernel configs
("CONFIG_ZSWAP" . #t)
("CONFIG_ZSMALLOC" . #t)
("CONFIG_ZRAM" . m)
;; Modules required for initrd:
("CONFIG_NET_9P" . m)
("CONFIG_NET_9P_VIRTIO" . m)

View file

@ -4141,7 +4141,7 @@ Git and exports them in maildir format or to an MDA through a pipe.")
(define-public public-inbox
(package
(name "public-inbox")
(version "1.8.0")
(version "1.9.0")
(source
(origin (method git-fetch)
(uri (git-reference
@ -4149,9 +4149,8 @@ Git and exports them in maildir format or to an MDA through a pipe.")
(commit (string-append "v" version))))
(sha256
(base32
"0xni1l54v1z3p0zb52807maay0yqabp8jgf5iras5zmhgjyk3swz"))
(file-name (git-file-name name version))
(patches (search-patches "public-inbox-fix-spawn-test.patch"))))
"0cgvxg0f32nvb3079x46gjkfis4bc98s6nx6kl8rm90kmb1kxkx9"))
(file-name (git-file-name name version))))
(build-system perl-build-system)
(arguments
`(#:imported-modules (,@%perl-build-system-modules
@ -4227,33 +4226,39 @@ Git and exports them in maildir format or to an MDA through a pipe.")
(list ;; For testing.
lsof openssl tini))
(inputs
(list bash-minimal
curl
git
perl-dbd-sqlite
perl-dbi
perl-email-address-xs
perl-email-mime-contenttype
perl-email-mime
perl-email-simple
perl-net-server
perl-plack-middleware-deflater
perl-plack-middleware-reverseproxy
perl-plack
perl-search-xapian
perl-socket-msghdr
perl-timedate
perl-uri-escape
perl-inline-c
perl-parse-recdescent
perl-linux-inotify2
;; FIXME: Perl modules are unable to find the config file for highlight
;; https://issues.guix.gnu.org/48033#4
;; ("highlight" ,highlight)
;; For testing.
perl-ipc-run
perl-xml-feed
xapian))
(append
(if (not (target-64bit?))
;; Required by test t/pop3d.t, otherwise fails with
;; “sizeof(off_t)=8 requires File::FcntlLock”.
(list perl-file-fcntllock)
'())
(list bash-minimal
curl
git
perl-dbd-sqlite
perl-dbi
perl-email-address-xs
perl-email-mime-contenttype
perl-email-mime
perl-email-simple
perl-net-server
perl-plack-middleware-deflater
perl-plack-middleware-reverseproxy
perl-plack
perl-search-xapian
perl-socket-msghdr
perl-timedate
perl-uri-escape
perl-inline-c
perl-parse-recdescent
perl-linux-inotify2
;; FIXME: Perl modules are unable to find the config file for highlight
;; https://issues.guix.gnu.org/48033#4
;; ("highlight" ,highlight)
;; For testing.
perl-ipc-run
perl-xml-feed
xapian)))
(home-page "https://public-inbox.org/README.html")
(synopsis "Archive mailing lists in Git repositories")
(description

View file

@ -368,13 +368,13 @@ programming language.")
(define-public units
(package
(name "units")
(version "2.21")
(version "2.22")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnu/units/units-" version
".tar.gz"))
(sha256 (base32
"1bybhqs4yrly9myb5maz3kdmf8k4fhk2m1d5cbcryn40z6lq0gkc"))))
"0j2q2a9sgldqwcifsnb7qagsmp8fvj91vfh6v4k7gzi1fwhf24sx"))))
(build-system gnu-build-system)
(inputs
`(("readline" ,readline)

View file

@ -1,7 +1,7 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2020 Alex ter Weele <alex.ter.weele@gmail.com>
;;; Copyright © 2020 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2020, 2021 Michael Rohleder <mike@rohleder.de>
;;; Copyright © 2020, 2021, 2022 Michael Rohleder <mike@rohleder.de>
;;; Copyright © 2020 Giacomo Leidi <goodoldpaul@autistici.org>
;;; Copyright © 2022 Aleksandr Vityazev <avityazev@posteo.org>
;;; Copyright © 2022 Morgan Smith <Morgan.J.Smith@outlook.com>
@ -158,13 +158,13 @@ homeserver and generally help bootstrap the ecosystem.")
(define-public python-matrix-nio
(package
(name "python-matrix-nio")
(version "0.18.7")
(version "0.20.0")
(source
(origin
(method url-fetch)
(uri (pypi-uri "matrix-nio" version))
(sha256
(base32 "0cw4y6dx8n8hynxqlzzkj8p34nfbc2xryvmkr5yhmja31y4rks4k"))))
(base32 "1ycrp48b15nm2d3w3qpzps21czl3gbikadl10sncbzr9wdwn44g4"))))
(build-system python-build-system)
(arguments
`(#:phases
@ -191,6 +191,7 @@ homeserver and generally help bootstrap the ecosystem.")
("python-hpack" ,python-hpack)
("python-faker" ,python-faker)
("python-pytest-aiohttp" ,python-pytest-aiohttp)
("python-pytest-asyncio" ,python-pytest-asyncio)
("python-aioresponses" ,python-aioresponses)
("python-pytest-benchmark" ,python-pytest-benchmark)
("python-toml" ,python-toml)
@ -206,7 +207,7 @@ homeserver and generally help bootstrap the ecosystem.")
(file-name (git-file-name name version))
(sha256
(base32
"152prkndk53pfxm4in4xak4hwzyaxlbp6wv2zbk2xpzgyy9bvn3s"))))))
"10j8g3ns3v1ghdn262dxg50ayaczdp1hj97pj4ydw02bncqhddpd"))))))
(propagated-inputs
(list python-aiofiles
python-aiohttp
@ -216,7 +217,7 @@ homeserver and generally help bootstrap the ecosystem.")
python-future
python-h11
python-h2
python-jsonschema
python-jsonschema-next
python-logbook
python-olm
python-peewee
@ -234,7 +235,7 @@ fledged batteries-included asyncio layer using aiohttp.")
(define-public pantalaimon
(package
(name "pantalaimon")
(version "0.10.3")
(version "0.10.5")
(source
(origin
(method git-fetch)
@ -244,7 +245,7 @@ fledged batteries-included asyncio layer using aiohttp.")
(file-name (git-file-name name version))
(sha256
(base32
"153d8083lj3qqirbv5q1d3igzd61a5kyzfk7xmv29sd3jbs8ysm9"))))
"16ask8v00654q307c55q5gnm8hrj40gibpab5zl52v4i0bgl9j68"))))
(build-system python-build-system)
(arguments
`(#:phases

View file

@ -98,14 +98,14 @@ extensive examples, including parsers for the Javascript and C99 languages.")
(define-public nyacc
(package
(inherit nyacc-0.99)
(version "1.07.0")
(version "1.07.4")
(source (origin
(method url-fetch)
(uri (string-append "mirror://savannah/nyacc/nyacc-"
version ".tar.gz"))
(sha256
(base32
"01qb6h6bk684z8xda5d71q5f5l2z3q9jjz36if3jbpjc7b8dxjap"))
"1kr3b88sx0g9zy52algxqpvnkjm76qdyld7pasbbajkph2zhcj92"))
(modules '((guix build utils)))
(snippet
'(substitute* "configure"

View file

@ -36,6 +36,7 @@
;;; Copyright © 2022 Jai Vetrivelan <jaivetrivelan@gmail.com>
;;; Copyright © 2022 Jack Hill <jackhill@jackhill.us>
;;; Copyright © 2022 Maxim Cournoyer <maxim.cournoyer@gmail.com>
;;; Copyright © 2022 Giovanni Biscuolo <g@xelera.eu>
;;;
;;; This file is part of GNU Guix.
;;;
@ -2126,7 +2127,7 @@ is also scriptable and extensible via Guile.")
(define-public libstrophe
(package
(name "libstrophe")
(version "0.12.0")
(version "0.12.2")
(source
(origin
(method git-fetch)
@ -2135,7 +2136,7 @@ is also scriptable and extensible via Guile.")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "1apply301lxyjax2677bd5mc0a3233nm5qb7fiqpawq2n7vh17v0"))))
(base32 "1ispq6sf7pq02irrqfga4i1xhrg1pg0f86qvvnix15clm8i1agld"))))
(build-system gnu-build-system)
(arguments
(list #:configure-flags '(list "--disable-static")
@ -2167,7 +2168,7 @@ are both supported).")
(define-public profanity
(package
(name "profanity")
(version "0.12.1")
(version "0.13.0")
(source
(origin
(method url-fetch)
@ -2176,7 +2177,7 @@ are both supported).")
version ".tar.gz"))
(sha256
(base32
"0vihmlzxr6n3y6v0vdzzxh5p1i09p0hx6sd1b2pnpcgkgcg4hi73"))))
"14n45zwc6fxjargqhwqan8fyb7x0ql0hmw56rbjkjfkhpba2qmks"))))
(build-system glib-or-gtk-build-system)
(arguments
`(#:configure-flags
@ -2311,7 +2312,7 @@ notifications, and Python scripting support.")
(define-public libqmatrixclient
(package
(name "libqmatrixclient")
(version "0.5.3.2")
(version "0.6.11")
(source
(origin
(method git-fetch)
@ -2320,7 +2321,7 @@ notifications, and Python scripting support.")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "0gkwr3yw6k2m0j8cc085b5p2q788rf5nhp1p5hc5d55pc7mci2qs"))))
(base32 "072d3irpdd0p4w77s5pp0baqf74hk7vqggw7ic7i42lzjdwp3yql"))))
(build-system cmake-build-system)
(inputs
(list qtbase-5 qtmultimedia-5))
@ -2482,7 +2483,7 @@ notification, emojis, E2E encryption, and voip calls.")
(define-public quaternion
(package
(name "quaternion")
(version "0.0.9.4f")
(version "0.0.95.1")
(outputs '("out" "debug"))
(source
(origin
@ -2492,12 +2493,13 @@ notification, emojis, E2E encryption, and voip calls.")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "1q9ddz4rs02a0w3lwrsjnh59khv38cq9f0kv09vnwvazvayn87ck"))))
(base32 "10mzcr4rpyq5bl3h8wzxxlk8rdz7slhiq863xs77bmsq2pzf6lp8"))))
(build-system qt-build-system)
(inputs
(list libqmatrixclient
qtbase-5
qtdeclarative-5
qtgraphicaleffects
qtmultimedia-5
qtquickcontrols-5
qtquickcontrols2-5
@ -2685,6 +2687,20 @@ support for high performance Telegram Bot creation.")
(home-page "https://core.telegram.org/tdlib")
(license license:boost1.0)))
(define-public tdlib-1.8.0
(package
(inherit tdlib)
(name "tdlib-1.8.0")
(version "1.8.0")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/tdlib/td")
(commit (string-append "v" version))))
(sha256
(base32
"19psqpyh9a2kzfdhgqkirpif4x8pzy89phvi59dq155y30a3661q"))))))
(define-public purple-mm-sms
(package
(name "purple-mm-sms")
@ -3382,7 +3398,7 @@ Weechat communicate over the Matrix protocol.")
(define-public weechat-wee-slack
(package
(name "weechat-wee-slack")
(version "2.8.0")
(version "2.9.0")
(source
(origin
(method git-fetch)
@ -3392,7 +3408,7 @@ Weechat communicate over the Matrix protocol.")
(file-name (git-file-name name version))
(sha256
(base32
"0xfklr0gsc9jgxfyrrb2j756lclz9g8imcb0pk0xgyj8mhsw23zk"))))
"01h9n6a39sgpczvjywvxb5z5vz3jb3h2xx2vspjkkz06gzwniijq"))))
(build-system python-build-system)
(arguments
`(#:phases

View file

@ -8,6 +8,7 @@
;;; Copyright © 2018 Eric Bavier <bavier@member.fsf.org>
;;; Copyright © 2018, 2019, 2021 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2021 Vinicius Monego <monego@posteo.net>
;;; Copyright © 2022 Maxim Cournoyer <maxim.cournoyer@gmail.com>
;;;
;;; This file is part of GNU Guix.
;;;
@ -28,11 +29,15 @@
#:use-module (guix licenses)
#:use-module (gnu packages)
#:use-module (gnu packages autotools)
#:use-module (gnu packages bison)
#:use-module (gnu packages flex)
#:use-module (gnu packages m4)
#:use-module (gnu packages gcc)
#:use-module (gnu packages texinfo)
#:use-module (guix packages)
#:use-module (guix download)
#:use-module (guix gexp)
#:use-module (guix git-download)
#:use-module (guix packages)
#:use-module (guix utils)
#:use-module (guix build-system gnu))
@ -156,32 +161,44 @@ precision and correctly rounds the results.")
(home-page "http://www.multiprecision.org/mpc/")))
(define-public mpfi
(package
(name "mpfi")
(version "1.5.4")
(source
(origin
(method url-fetch)
(uri (string-append "https://gforge.inria.fr/frs/download.php"
"/latestfile/181/mpfi-" version ".tgz"))
(sha256
(base32 "0mismr1ll3wp788dq2n22s5irm0dziy75byyfdwz22kjbmckhf9v"))))
(build-system gnu-build-system)
(arguments
`(#:tests? #f ;tests are broken in this release
#:configure-flags '("--enable-static=no")))
(native-inputs
`(("automake" ,automake)
("autoreconf" ,autoconf)
("libtool" ,libtool)
("texinfo" ,texinfo)))
(propagated-inputs
(list gmp ; <mpfi.h> refers to both
mpfr))
(home-page "https://gforge.inria.fr/projects/mpfi/")
(synopsis "C library for arbitrary-precision interval arithmetic")
(description
"@acronym{MPFI, Multiple Precision Floating-point Interval} is a portable C
;; The last release, 1.5.4, lacks source files such as div_ext.c and others
;; (see: https://gitlab.inria.fr/mpfi/mpfi/-/issues/21721). Use the latest
;; commit until a new release is made.
(let ((commit "b9825348f1e723ab0988105599b34f1f9cd5ff3e")
(revision "1"))
(package
(name "mpfi")
(version (git-version "1.5.4" revision commit))
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://gitlab.inria.fr/mpfi/mpfi")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32
"141pa2ym1azka25bwkx2w1mf6wdcn155ncc45dr5bj5dycw2hj0m"))))
(build-system gnu-build-system)
(arguments
(list #:configure-flags #~(list "--enable-static=no")
#:phases #~(modify-phases %standard-phases
(add-after 'unpack 'chdir
(lambda _
(chdir "mpfi")))
(add-after 'unpack 'disable-problematic-tests
(lambda _
;; XXX: The tdiv_ext and trec_sqrt tests
;; segfaults (not reported upstream; accounts on
;; their gitlab apparently require to be
;; manually created).
(setenv "XFAIL_TESTS" "tdiv_ext trec_sqrt"))))))
(native-inputs (list automake autoconf libtool texinfo))
(propagated-inputs
(list gmp mpfr)) ;<mpfi.h> refers to both
(home-page "https://gitlab.inria.fr/mpfi/mpfi")
(synopsis "C library for arbitrary-precision interval arithmetic")
(description
"@acronym{MPFI, Multiple Precision Floating-point Interval} is a portable C
library for arbitrary-precision interval arithmetic, with intervals represented
using MPFR reliable floating-point numbers. It's based on the @acronym{GMP, GNU
Multiple Precision Arithmetic} and GNU@tie{}@acronym{MPFR, Multiple Precision
@ -190,7 +207,7 @@ Floating-Point Reliably} libraries.
The purpose of arbitrary-precision interval arithmetic is to get results that
are both guaranteed, thanks to interval computation, and accurate, thanks to
multiple-precision arithmetic.")
(license lgpl2.1+)))
(license lgpl2.1+))))
(define-public irram
(package

View file

@ -3524,7 +3524,7 @@ event-based scripts for scrobbling, notifications, etc.")
(define-public picard
(package
(name "picard")
(version "2.4.4")
(version "2.8.3")
(source (origin
(method url-fetch)
(uri (string-append
@ -3532,30 +3532,35 @@ event-based scripts for scrobbling, notifications, etc.")
"picard/picard-" version ".tar.gz"))
(sha256
(base32
"1c5l7i43jaj3s4wklc0cba6nn2x9cmpcggk4q4h9m1bci2xilsiy"))
(patches (search-patches "picard-fix-id3-rename-test.patch"))))
"0h4yk1y4k23hkfk7k2in27rd34ani857m0vvn7xa8vxizz951dka"))))
(build-system python-build-system)
(arguments
'(#:use-setuptools? #f
#:configure-flags
(list "--root=/"
;; Don't phone home or show Check for Update… in the Help menu.
"--disable-autoupdate")
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'patch-source
(lambda* (#:key inputs #:allow-other-keys)
(substitute* "picard/const/__init__.py"
(("pyfpcalc")
(string-append
"pyfpcalc', '"
(assoc-ref inputs "chromaprint") "/bin/fpcalc")))
#t)))))
(list
#:use-setuptools? #f
#:configure-flags
#~(list "--root=/"
;; Don't phone home or show Check for Update… in the Help menu.
"--disable-autoupdate")
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'patch-source
(lambda* (#:key inputs #:allow-other-keys)
(substitute* "picard/const/__init__.py"
(("pyfpcalc")
(string-append
"pyfpcalc', '"
(assoc-ref inputs "chromaprint") "/bin/fpcalc"))))))))
(native-inputs
`(("gettext" ,gettext-minimal)
("python-dateutil" ,python-dateutil)))
(list gettext-minimal python-dateutil))
(inputs
(list chromaprint python-discid python-pyqt python-mutagen))
(list chromaprint
python-discid
python-pyqt-without-qtwebkit
python-mutagen
python-fasteners
python-pyyaml
python-markdown
python-pyjwt))
(home-page "https://picard.musicbrainz.org/")
(synopsis "Graphical music tagging application")
(description
@ -6784,7 +6789,9 @@ streaming audio server.")
"--ignore=tests/test_browsers_iradio.py"
;; broken upstream
"--disable-warnings"
"--ignore=tests/quality")
"--ignore=tests/quality"
;; missing legacy icons in adwaita-icon-theme
"--ignore=tests/plugin/test_trayicon.py")
(format #t "test suite not run~%"))))
(add-after 'install 'glib-or-gtk-wrap ; ensure icons loaded
(assoc-ref glib-or-gtk:%standard-phases 'glib-or-gtk-wrap))

View file

@ -40,6 +40,7 @@
;;; Copyright © 2020 Jesse Dowell <jessedowell@gmail.com>
;;; Copyright © 2020 Hamzeh Nasajpour <h.nasajpour@pantherx.org>
;;; Copyright © 2020, 2022 Michael Rohleder <mike@rohleder.de>
;;; Copyright © 2021 Fakhri Sajadi <f.sajadi@pantherx.org>
;;; Copyright © 2021 Hartmut Goebel <h.goebel@crazy-compilers.com>
;;; Copyright © 2021 Justin Veilleux <terramorpha@cock.li>
;;; Copyright © 2021 Vinicius Monego <monego@posteo.net>
@ -48,9 +49,11 @@
;;; Copyright © 2021 Guillaume Le Vaillant <glv@posteo.net>
;;; Copyright © 2021 Maxime Devos <maximedevos@telenet.be>
;;; Copyright © 2022 Simon South <simon@simonsouth.net>
;;; Copyright © 2022 Pavel Shlyak <p.shlyak@pantherx.org>
;;; Copyright © 2022 Pierre Langlois <pierre.langlois@gmx.com>
;;; Copyright © 2022 Petr Hodina <phodina@protonmail.com>
;;; Copyright © 2022 Manolis Fragkiskos Ragkousis <manolis837@gmail.com>
;;; Copyright © 2022 Reza Alizadeh Majd <r.majd@pantherx.org>
;;;
;;; This file is part of GNU Guix.
;;;
@ -80,6 +83,7 @@
#:use-module (guix build-system meson)
#:use-module (guix build-system perl)
#:use-module (guix build-system python)
#:use-module (guix build-system qt)
#:use-module (guix build-system trivial)
#:use-module (guix utils)
#:use-module (gnu packages)
@ -115,6 +119,7 @@
#:use-module (gnu packages gstreamer)
#:use-module (gnu packages gtk)
#:use-module (gnu packages image)
#:use-module (gnu packages kde-frameworks)
#:use-module (gnu packages libevent)
#:use-module (gnu packages libidn)
#:use-module (gnu packages libusb)
@ -973,6 +978,33 @@ tasks.")
(home-page "https://github.com/blueman-project/blueman")
(license license:gpl3+)))
(define-public nm-tray
(package
(name "nm-tray")
(version "0.5.0")
(home-page "https://github.com/palinek/nm-tray")
(source (origin
(method git-fetch)
(uri (git-reference
(url home-page)
(commit version)))
(sha256
(base32
"14i8sl0hrnyidlvqnxza0v4018f7p685ksn8419i2w7f9yqpvpiw"))
(file-name (git-file-name name version))))
(build-system qt-build-system)
(arguments
(list #:tests? #f)) ;There are no tests upstream
(inputs (list qtbase-5 networkmanager-qt))
(native-inputs (list qttools-5 pkg-config))
(synopsis
"NetworkManager front-end with information icon residing in system tray")
(description
"nm-tray is a network connection management tool (NetworkManager
front-end) with an information icon residing in the system tray. Unlike
nm-applet, which is part of GNOME, this application is desktop-unaware.")
(license license:gpl2+)))
;; The gnu.org home for this GNU project is a directory listing with 1.6.0 as
;; the latest version. The author's git repository, mentioned in the 1.6.0
;; README and otherwise legit-looking, contains a proper 1.7.0 release tarball
@ -1728,27 +1760,29 @@ of the same name.")
(define-public wireshark
(package
(name "wireshark")
(version "3.6.7")
(version "4.0.0")
(source
(origin
(method url-fetch)
(uri (string-append "https://www.wireshark.org/download/src/wireshark-"
version ".tar.xz"))
(sha256
(base32 "1idpxnh8vrvan3g0ymaa24bd4iyxi19xrr76sdrrpxx2r8shmqfc"))))
(base32 "1vddvizywy6kfxg0i3m0627f675i7sdp7k3ld9sjlp78hppjbh9x"))))
(build-system cmake-build-system)
(arguments
`(#:phases
(modify-phases %standard-phases
(add-after 'unpack 'remove-failing-test
;; Skip test suite failing with "Program reassemble_test is not
;; available" and alike errors. Also skip test suite failing with
;; "AssertionError: Program extcap/sdjournal is not available"
;; error.'
(lambda _
(substitute* "CMakeLists.txt"
(("suite_unittests" all) (string-append "# " all))
(("suite_extcaps" all) (string-append "# " all))))))
(replace 'check
(lambda* (#:key tests? #:allow-other-keys)
;; Skip test suite failing with "Program reassemble_test is not
;; available" and alike errors. Also skip test suite failing
;; with "AssertionError: Program extcap/sdjournal is not
;; available" error.'
(when tests?
(invoke "ctest"
"-E"
(string-join (list "suite_unittests" "suite_extcaps")
"|"))))))
;; Build process chokes during `validate-runpath' phase.
;;
;; Errors are like the following:
@ -1777,6 +1811,7 @@ of the same name.")
mit-krb5
`(,nghttp2 "lib")
minizip
pcre2
qtbase-5
qtmultimedia-5
qtsvg-5
@ -2010,7 +2045,7 @@ TCP connection, TLS handshake and so on) in the terminal.")
'(#:configure-flags
;; disable -march=native in build for reproducibility; see
;; https://wiki.squid-cache.org/KnowledgeBase/IllegalInstructionError
(list "--disable-arch-native")
(list "--disable-arch-native" "--with-openssl")
#:phases
(modify-phases %standard-phases
(add-before 'build 'fix-true-path

View file

@ -468,7 +468,7 @@ depend: $(STDLIB_MLIS) $(STDLIB_DEPS)"))
(define-public ocamlbuild
(package
(name "ocamlbuild")
(version "0.14.1")
(version "0.14.2")
(source
(origin
(method git-fetch)
@ -477,7 +477,7 @@ depend: $(STDLIB_MLIS) $(STDLIB_DEPS)"))
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "00ma0g6ajll9awp2bp303bawac8ync4k9w2a6vix0k4nw3003gb4"))))
(base32 "16q8s22msyfq66i1sbz99wj04a9x9ad95x458ixxacxsv0qqh2j0"))))
(build-system ocaml-build-system)
(arguments
`(#:make-flags
@ -648,11 +648,14 @@ underlying solvers like Cplex, Gurobi, Lpsolver, Glpk, CbC, SCIP or WBO.")
(name "ocaml-dose3")
(version "5.0.1")
(source (origin
(method url-fetch)
(uri "https://gforge.inria.fr/frs/download.php/file/36063/dose3-5.0.1.tar.gz")
(method git-fetch)
(uri (git-reference
(url "https://gitlab.com/irill/dose3")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32
"00yvyfm4j423zqndvgc1ycnmiffaa2l9ab40cyg23pf51qmzk2jm"))
"0dxkw37gj8z45kd0dnrlfgpj8yycq0dphs8kjm9kvq9xc8rikxp3"))
(patches
(search-patches
"ocaml-dose3-add-unix-dependency.patch"
@ -1081,7 +1084,7 @@ the OCaml core distribution.")
(define-public emacs-tuareg
(package
(name "emacs-tuareg")
(version "3.0.0")
(version "3.0.1")
(source
(origin
(method git-fetch)
@ -1090,7 +1093,7 @@ the OCaml core distribution.")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "115vm0hq4xkwfd3w0j8xqhkdgcirlxpnwzwxv02c27583hj056is"))))
(base32 "1p3xpk78i8ywgdmc59w05wjjy9dg6gm5gicm08szmrlnx08v2ihm"))))
(build-system gnu-build-system)
(arguments
(list
@ -2503,7 +2506,7 @@ simple (yet expressive) query language to select the tests to run.")
(define-public ocaml-ppx-tools
(package
(name "ocaml-ppx-tools")
(version "6.5")
(version "6.6")
(source
(origin
(method git-fetch)
@ -2513,7 +2516,7 @@ simple (yet expressive) query language to select the tests to run.")
(file-name (git-file-name name version))
(sha256
(base32
"0fwibah2hgllrnbdrmfqil5gr5raf6pb5h2zx6zs1h3d4ykvy8k8"))))
"1ms2i063cwsm8wcw7jixz3qx2f2prrmf0k44gbksvsgqvm1rl6s2"))))
(build-system dune-build-system)
(arguments
;; No tests
@ -4489,6 +4492,7 @@ sensitive completion, colors, and more.")
(build-system dune-build-system)
(arguments
`(#:test-target "tests"))
(properties `((upstream-name . "ANSITerminal")))
(home-page "https://github.com/Chris00/ANSITerminal")
(synopsis
"Basic control of ANSI compliant terminals and the windows shell")
@ -5046,39 +5050,6 @@ yojson package. The program @code{atdgen} can be used to derive OCaml-JSON
serializers and deserializers from type definitions.")
(license license:bsd-3)))
(define-public ocaml-craml
(package
(name "ocaml-craml")
(version "1.0.0")
(home-page "https://github.com/realworldocaml/craml")
(source
(origin
(method git-fetch)
(uri (git-reference
(url (string-append home-page ".git"))
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32
"197xjp4vmzdymf2ndinw271ihpf45h04mx8gqj8ypspxdr5fj1a5"))))
(build-system dune-build-system)
(arguments
`(#:phases
(modify-phases %standard-phases
(add-before 'build 'upgrade
(lambda _
(invoke "dune" "upgrade")
#t)))))
(inputs
(list ocaml-fmt ocaml-astring ocaml-logs ocaml-cmdliner))
(synopsis
"CRAM-testing framework for testing command line applications")
(description "CRAM is a is functional testing framework for command line
applications. @code{craml} is freely inspired by the
Mercurial's @code{https://www.selenic.com/blog/?p=663, unified test
format}. @code{craml} is released as a single binary (called @code{craml}).")
(license license:isc)))
(define-public ocaml-merlin-lib
(package
(name "ocaml-merlin-lib")
@ -7860,7 +7831,7 @@ convenience functions for vectors and matrices.")
(define-public ocaml-cairo2
(package
(name "ocaml-cairo2")
(version "0.6.3")
(version "0.6.4")
(source (origin
(method git-fetch)
(uri (git-reference
@ -7869,7 +7840,7 @@ convenience functions for vectors and matrices.")
(file-name (git-file-name name version))
(sha256
(base32
"1m0wh0s0sqjfa3mgq99lwk0dsg0bwxipaz93hq18m0lz5fqxib1m"))))
"06ag9b88ihhr7yd3s9l0ac7ysig02fmlmsswybbsvz71ni0mb105"))))
(build-system dune-build-system)
(arguments
`(#:test-target "tests"))
@ -8180,7 +8151,7 @@ selection of character properties of the Unicode character database.")
(define-public ocaml-uuseg
(package
(name "ocaml-uuseg")
(version "14.0.0")
(version "15.0.0")
(source
(origin
(method url-fetch)
@ -8188,7 +8159,7 @@ selection of character properties of the Unicode character database.")
"uuseg-" version ".tbz"))
(sha256
(base32
"1g9zyzjkhqxgbb9mh3cgaawscwdazv6y8kdqvmy6yhnimmfqv25p"))))
"1qz130wlmnvb6j7kpvgjlqmdm2jqid4wb1dmrsls4hdm4rp7gk5b"))))
(build-system ocaml-build-system)
(arguments
'(#:build-flags '("build" "--tests" "true")

View file

@ -165,8 +165,8 @@
;; Note: the 'update-guix-package.scm' script expects this definition to
;; start precisely like this.
(let ((version "1.3.0")
(commit "9e4632081ff31bf0d1715edd66f514614c6dc4bb")
(revision 29))
(commit "31708431c53524f05e6a0c9fed920cb773e7dd21")
(revision 31))
(package
(name "guix")
@ -182,7 +182,7 @@
(commit commit)))
(sha256
(base32
"1x32l8szclv8zlwdjr8yfidxxm4n7dgm6j7xypmx5mg5pkakyan5"))
"1j8qq6zgr20d1gi4n5dmvd9afd3d0k2h86ypajfyaa6bxpfj5i1r"))
(file-name (string-append "guix-" version "-checkout"))))
(build-system gnu-build-system)
(arguments
@ -1366,8 +1366,8 @@ environments.")
"0k9zkdyyzir3fvlbcfcqy17k28b51i20rpbjwlx2i1mwd2pw9cxc")))))))
(define-public guix-build-coordinator
(let ((commit "31b3ab65da2d9a02f0453d12a81816b25c8ad75d")
(revision "60"))
(let ((commit "2cd06f2cf8a20f719aa3823eeffac8c39b768504")
(revision "62"))
(package
(name "guix-build-coordinator")
(version (git-version "0" revision commit))
@ -1378,7 +1378,7 @@ environments.")
(commit commit)))
(sha256
(base32
"1hh1qy3xqpani3zfbm3wi4zw7f8cnbfjk4q1z7ynailadlfrkblk"))
"0jy7scw1vwgpz54yjzhw0kavws8f54xk287axmfd0dqqvbbb164l"))
(file-name (string-append name "-" version "-checkout"))))
(build-system gnu-build-system)
(arguments

View file

@ -36,6 +36,7 @@
;;; Copyright © 2021 David Dashyan <mail@davie.li>
;;; Copyright © 2022 Maxim Cournoyer <maxim.cournoyer@gmail.com>
;;; Copyright © 2022 Maxime Devos <maximedevos@telenet.be>
;;; Copyright © 2022 ( <paren@disroot.org>
;;;
;;; This file is part of GNU Guix.
;;;
@ -58,6 +59,7 @@
#:use-module (guix build-system cmake)
#:use-module (guix build-system gnu)
#:use-module (guix build-system go)
#:use-module (guix build-system python)
#:use-module (guix build-system trivial)
#:use-module (guix download)
#:use-module (guix gexp)
@ -80,6 +82,7 @@
#:use-module (gnu packages freedesktop)
#:use-module (gnu packages gettext)
#:use-module (gnu packages glib)
#:use-module (gnu packages gnome)
#:use-module (gnu packages gnupg)
#:use-module (gnu packages golang)
#:use-module (gnu packages gtk)
@ -109,8 +112,7 @@
#:use-module (gnu packages wxwidgets)
#:use-module (gnu packages xdisorg)
#:use-module (gnu packages xorg)
#:use-module (gnu packages xml)
#:use-module (guix build-system python))
#:use-module (gnu packages xml))
(define-public pwgen
(package
@ -757,7 +759,7 @@ using password-store through rofi interface:
(define-public tessen
(package
(name "tessen")
(version "2.1.0")
(version "2.1.2")
(source (origin
(method git-fetch)
(uri (git-reference
@ -766,7 +768,7 @@ using password-store through rofi interface:
(file-name (git-file-name name version))
(sha256
(base32
"1ddsjhzp1qy3jfhxlrzcxgp0gza234yc0sdlngwa3xdj0wr40zs0"))))
"01jaxakq847k3v2wid8fzhcmq8mraxz0q1j87s1jv75l1gy4qiij"))))
(build-system gnu-build-system)
(arguments
(list #:tests?
@ -776,13 +778,17 @@ using password-store through rofi interface:
(add-after 'unpack 'patch-wtype-path
(lambda* (#:key inputs #:allow-other-keys)
(substitute* "tessen"
(("wtype") (search-input-file inputs "/bin/wtype")))))
(("notify-send") (search-input-file inputs
"/bin/notify-send"))
(("wl-copy") (search-input-file inputs "/bin/wl-copy"))
(("wtype") (search-input-file inputs "/bin/wtype"))
(("xdg-open") (search-input-file inputs "/bin/xdg-open")))))
(delete 'configure)) ;no configure script
#:make-flags
#~(list (string-append "PREFIX="
#$output))))
(native-inputs (list scdoc))
(inputs (list wtype))
(inputs (list libnotify wl-clipboard wtype xdg-utils))
(home-page "https://github.com/ayushnix/tessen")
(synopsis "Frontend for password-store and gopass")
(description "Tessen is a bash script that can autotype and copy data
@ -863,6 +869,39 @@ also install the browser extension for GNU IceCat or ungoogled-chromium
separately.")
(license license:isc)))
(define-public cpass
(package
(name "cpass")
(version "0.9.4")
(source (origin
(method url-fetch)
(uri (pypi-uri "cpass" version))
(sha256
(base32
"1zp3a8mgqxn916fzj1v2yhgnl7v6s0vnd0qcghqs3qq648qmlwr5"))))
(build-system python-build-system)
(arguments
(list #:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'patch-pass-refs
(lambda* (#:key inputs #:allow-other-keys)
(substitute* "cpass.py"
(("'pass'")
(string-append "'"
(search-input-file inputs
"bin/pass")
"'"))
(("\\.password_store")
".password-store")))))))
(inputs (list password-store))
(propagated-inputs (list python-urwid))
(home-page "https://github.com/OliverLew/cpass")
(synopsis "Textual interface for @command{pass}")
(description
"@command{cpass} is a terminal user interface for @command{pass}.
It supports both vim-like keybindings and the mouse.")
(license license:expat)))
(define-public argon2
(package
(name "argon2")

View file

@ -0,0 +1,28 @@
From 041d16b521d8231e5b441015f08bb386f9d2a51c Mon Sep 17 00:00:00 2001
From: Vincent Delecroix <20100.delecroix@gmail.com*>
Date: Thu, 15 Sep 2022 12:11:01 +0200
Subject: ANYARG giac patch
---
diff --git a/src/pari.cc b/src/pari.cc
index 76ce8e1..50d08ab 100644
--- a/src/pari.cc
+++ b/src/pari.cc
@@ -40,6 +40,13 @@ using namespace std;
#ifdef HAVE_LIBPARI
+// Anyarg disappeared from PARI 2.15.0
+#ifdef __cplusplus
+# define ANYARG ...
+#else
+# define ANYARG
+#endif
+
#ifdef HAVE_PTHREAD_H
#include <pthread.h>
#endif
--
cgit v1.0-1-gd88e

View file

@ -1,70 +0,0 @@
From 2e8618d22568b6e00892a17303d437dd700eca98 Mon Sep 17 00:00:00 2001
From: Mark H Weaver <mhw@netris.org>
Date: Tue, 5 May 2020 21:27:41 -0400
Subject: [PATCH] Revert "Update Reveal hidden HTML."
I prefer the user interface of the old version.
This reverts commit f6e3adb6b2344ee2c7bb453a305fd2d6fb4c194c.
---
.../passive_improve_css.js | 23 ++++++++++++++-----
1 file changed, 17 insertions(+), 6 deletions(-)
diff --git a/data/extensions/SubmitMe@0xbeef.coffee/passive_improve_css.js b/data/extensions/SubmitMe@0xbeef.coffee/passive_improve_css.js
index 7692990..ca57982 100644
--- a/data/extensions/SubmitMe@0xbeef.coffee/passive_improve_css.js
+++ b/data/extensions/SubmitMe@0xbeef.coffee/passive_improve_css.js
@@ -10,6 +10,8 @@ THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLI
*/
+var bad = [];
+
function escapeHTML (unsafe_str) {
return unsafe_str
.replace(/&/g, '&amp;')
@@ -20,9 +22,14 @@ function escapeHTML (unsafe_str) {
.replace(/\//g, '&#x2F;')
}
+function dounhide(){
+ for(var i = 0; i < bad.length; i++){
+ bad[i].remove();
+ }
+}
+
console.log("passive_improve_css.js");
function reveal_css(){
- var bad = [];
var elements = document.getElementsByTagName("style");
for(var i = 0; i < elements.length; i++){
@@ -41,16 +48,20 @@ function reveal_css(){
}
}
- if(bad.length > 0 && window.confirm("Hidden HTML detected, would you like to reveal it?")){
- for(var i = 0; i < bad.length; i++){
- bad[i].remove();
- }
+ if(bad.length > 0){
+ const insertedDiv = document.createElement('div');
+ insertedDiv.innerHTML= '<p id="unhide" class="button white" style="text-decoration:none!important; color:#000!important; font-size:1em !important; font-family:\'sans-serif\'!important; font-weight:normal !important; background-color:transparent!important; margin:0!important; padding:0!important; font-size:10px!important; line-height:1!important"' +
+ 'alt="Click to reveal hidden elements in this page">' +
+ '<span>Reveal hidden elements</span>' +
+ '</a>';
+ insertedDiv.style="position:fixed; bottom:1em; right:1em; opacity:0.8; z-index: 2147483647 !important; border-radius: 3px !important; background-color: #fff !important; padding: 0.5em !important; box-shadow: 0 0 3px grey !important; font-color:#bbb!important; cursor: pointer!important;";
+ insertedDiv.addEventListener("click", dounhide, false);
+ document.body.insertBefore(insertedDiv, document.body.firstChild);
}
}
reveal_css();
-
/*
var a = document.getElementsByTagName("style")[2];
var btn = document.createElement("style"); // Create a <button> element
--
2.26.2

View file

@ -1,11 +0,0 @@
Index: b/test/formats/test_id3.py
===================================================================
--- a/test/formats/test_id3.py
+++ b/test/formats/test_id3.py
@@ -266,5 +266,5 @@
def test_rename_txxx_tags(self):
file_path = os.path.join('test', 'data', 'test-id3-rename-tags.mp3')
- filename = self.copy_file_tmp(file_path, 'mp3')
+ filename = self.copy_file_tmp(file_path, '.mp3')
raw_metadata = load_raw(filename)
self.assertIn('TXXX:Artists', raw_metadata)

View file

@ -1,43 +0,0 @@
From 5593489d9c3ce22b1942f35c7ebb0e06fcf2bfa8 Mon Sep 17 00:00:00 2001
From: Thiago Jung Bauermann <bauermann@kolabnow.com>
Date: Fri, 10 Jun 2022 12:39:18 -0300
Subject: [PATCH] t/spawn: Find invalid PID to try to join its process group
In the container used to build packages of the GNU Guix distribution, PID 1
runs as the same user as the test so this spawn that should fail actually
succeeds.
Fix the problem by going through different PIDs and picking one that
either doesn't exist or we aren't allowed to signal.
---
This patch is taken from the public-inbox repository and will appear in the
release after v1.8.
t/spawn.t | 13 ++++++++++++-
1 file changed, 12 insertions(+), 1 deletion(-)
diff --git a/t/spawn.t b/t/spawn.t
index 6168c1f6171c..5fc99a2a101c 100644
--- a/t/spawn.t
+++ b/t/spawn.t
@@ -24,7 +24,18 @@ SKIP: {
is(waitpid($pid, 0), $pid, 'waitpid succeeds on spawned process');
is($?, 0, 'true exited successfully');
pipe(my ($r, $w)) or BAIL_OUT;
- $pid = eval { spawn(['true'], undef, { pgid => 1, 2 => $w }) };
+
+ # Find invalid PID to try to join its process group.
+ my $wrong_pgid = 1;
+ for (my $i=0x7fffffff; $i >= 2; $i--) {
+ if (kill(0, $i) == 0) {
+ $wrong_pgid = $i;
+ last;
+ }
+ }
+
+ # Test spawn behavior when it can't join the requested process group.
+ $pid = eval { spawn(['true'], undef, { pgid => $wrong_pgid, 2 => $w }) };
close $w;
my $err = do { local $/; <$r> };
# diag "$err ($@)";

View file

@ -0,0 +1,15 @@
https://github.com/taynaud/python-louvain/commit/638804ae636dc65306900ef6518ca0a1c9202566.diff
diff --git a/test_community.py b/test_community.py
index 1ee1976..566a4b1 100644
--- a/test_community.py
+++ b/test_community.py
@@ -203,7 +203,7 @@ def test_karate(self):
self.assertAlmostEqual(co.modularity(part, graph),
co.modularity(part_weight,
graph,
- "test_weight"), places=2)
+ "test_weight"), places=1)
part_res_low = co.best_partition(graph, resolution=0.1)
self.assertTrue(

View file

@ -1,39 +0,0 @@
Fixes make with -j, otherwise scotch.h may not be generated by the time make
tries to compile library_graph_diam.o et al.
Reported upstream at
https://gforge.inria.fr/tracker/index.php?func=detail&aid=21651&group_id=248&atid=1081
diff --git a/src/libscotch/Makefile b/src/libscotch/Makefile
index 9898894..b0ee14c 100644
--- a/src/libscotch/Makefile
+++ b/src/libscotch/Makefile
@@ -2229,6 +2229,28 @@ library_graph_color_f$(OBJ) : library_graph_color_f.c \
common.h \
scotch.h
+library_graph_diam$(OBJ) : library_graph_diam.c \
+ module.h \
+ common.h \
+ graph.h \
+ scotch.h
+
+library_graph_diam_f$(OBJ) : library_graph_diam.c \
+ module.h \
+ common.h \
+ scotch.h
+
+library_graph_induce$(OBJ) : library_graph_diam.c \
+ module.h \
+ common.h \
+ graph.h \
+ scotch.h
+
+library_graph_induce_f$(OBJ) : library_graph_diam.c \
+ module.h \
+ common.h \
+ scotch.h
+
library_graph_io_chac$(OBJ) : library_graph_io_chac.c \
module.h \
common.h \

View file

@ -1,37 +0,0 @@
diff --git a/src/libscotch/library.h b/src/libscotch/library.h
index 1891c19..ecc0533 100644
--- a/src/libscotch/library.h
+++ b/src/libscotch/library.h
@@ -67,6 +67,8 @@
/*+ Integer type. +*/
+#include <stdint.h>
+
typedef DUMMYIDX SCOTCH_Idx;
typedef DUMMYINT SCOTCH_Num;
diff --git a/src/libscotchmetis/library_metis.h b/src/libscotchmetis/library_metis.h
index e6767e1..04e71c3 100644
--- a/src/libscotchmetis/library_metis.h
+++ b/src/libscotchmetis/library_metis.h
@@ -99,6 +99,7 @@ typedef enum {
*/
#ifndef SCOTCH_H /* In case "scotch.h" not included before */
+#include <stdint.h>
typedef DUMMYINT SCOTCH_Num;
#endif /* SCOTCH_H */
diff --git a/src/libscotchmetis/library_parmetis.h b/src/libscotchmetis/library_parmetis.h
index 6d2f0b0..3c803fc 100644
--- a/src/libscotchmetis/library_parmetis.h
+++ b/src/libscotchmetis/library_parmetis.h
@@ -106,6 +106,7 @@ typedef enum {
*/
#ifndef SCOTCH_H /* In case "scotch.h" not included before */
+#include <stdint.h>
typedef DUMMYINT SCOTCH_Num;
#endif /* SCOTCH_H */

View file

@ -2,7 +2,7 @@ Allow running sss_analyze without Python modules for systemd.
Upstream PR: https://github.com/SSSD/sssd/pull/6125
diff --git a/src/tools/analyzer/modules/request.py b/src/tools/analyzer/modules/request.py
index b96a23c05..28ac2f194 100644
index b9fe3caf8..51ec3a151 100644
--- a/src/tools/analyzer/modules/request.py
+++ b/src/tools/analyzer/modules/request.py
@@ -1,8 +1,6 @@
@ -14,7 +14,7 @@ index b96a23c05..28ac2f194 100644
from sssd.parser import SubparsersAction
from sssd.parser import Option
@@ -77,8 +75,10 @@ class RequestAnalyzer:
@@ -76,8 +74,10 @@ class RequestAnalyzer:
Instantiated source object
"""
if args.source == "journald":
@ -25,7 +25,7 @@ index b96a23c05..28ac2f194 100644
source = Files(args.logdir)
return source
@@ -143,7 +143,7 @@ class RequestAnalyzer:
@@ -142,7 +142,7 @@ class RequestAnalyzer:
self.consumed_logs.append(line.rstrip(line[-1]))
else:
# files source includes newline
@ -34,12 +34,12 @@ index b96a23c05..28ac2f194 100644
print(line, end='')
else:
print(line)
@@ -225,7 +225,7 @@ class RequestAnalyzer:
source.set_component(component, False)
self.done = ""
for line in self.matched_line(source, patterns):
- if isinstance(source, Journald):
+ if type(source).__name__ == 'Journald':
print(line)
else:
self.print_formatted(line, args.verbose)
@@ -240,7 +240,7 @@ class RequestAnalyzer:
self.print_formatted_verbose(source, patterns)
else:
for line in self.matched_line(source, patterns):
- if isinstance(source, Journald):
+ if type(source).__name__ == 'Journald':
print(line)
else:
self.print_formatted(line)

View file

@ -18,7 +18,7 @@
;;; Copyright © 2019 Ben Sturmfels <ben@sturm.com.au>
;;; Copyright © 2019,2020 Hartmut Goebel <h.goebel@crazy-compilers.com>
;;; Copyright © 2020-2022 Nicolas Goaziou <mail@nicolasgoaziou.fr>
;;; Copyright © 2020 Michael Rohleder <mike@rohleder.de>
;;; Copyright © 2020, 2022 Michael Rohleder <mike@rohleder.de>
;;; Copyright © 2020 Timotej Lazar <timotej.lazar@araneo.si>
;;; Copyright © 2020, 2022 Maxim Cournoyer <maxim.cournoyer@gmail.com>
;;; Copyright © 2021 Maxime Devos <maximedevos@telenet.be>
@ -112,7 +112,7 @@
(define-public extractpdfmark
(package
(name "extractpdfmark")
(version "1.1.0")
(version "1.1.1")
(source
(origin
(method git-fetch)
@ -121,21 +121,21 @@
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "14aa6zly53j8gx5d32caiabk2j4b102xha0v9149yahz6kbn5b80"))))
(base32 "0yzc3ajgdfb4ssxp49g2vrki45kl144j39bg0wdn6h9dc14kzmx4"))))
(build-system gnu-build-system)
(arguments
`(#:phases
(modify-phases %standard-phases
(add-before 'check 'start-xorg-server
;; The test suite wants to write to /homeless-shelter
(lambda _ (setenv "HOME" (getcwd)))))))
(list #:phases
#~(modify-phases %standard-phases
(add-before 'check 'set-home
;; The test suite wants to write to /homeless-shelter
(lambda _ (setenv "HOME" (getcwd)))))))
(native-inputs
`(("autoconf" ,autoconf)
("automake" ,automake)
("gettext" ,gettext-minimal)
("ghostscript" ,ghostscript)
("pkg-config" ,pkg-config)
("texlive" ,texlive-tiny)))
(list autoconf
automake
gettext-minimal
ghostscript
pkg-config
texlive-tiny))
(inputs
(list poppler))
(home-page "https://github.com/trueroad/extractpdfmark")
@ -727,24 +727,36 @@ extracting content or merging files.")
(define-public python-pydyf
(package
(name "python-pydyf")
(version "0.1.2")
(version "0.3.0")
(source
(origin
(method url-fetch)
(uri (pypi-uri "pydyf" version))
(sha256
(base32 "0b30g3hhxw1bg18r9ax85i1dkg8vy1y1wzas0bg0bxblh7j5sbqy"))))
(base32 "18q43g5d9455msipcgd5fvnh8m4a2rz189slzfg80yycjw66rshs"))))
(build-system python-build-system)
(arguments
(list
#:phases
#~(modify-phases %standard-phases
(replace 'build
(lambda _
(invoke "python" "-m" "build" "--wheel" "--no-isolation" ".")))
(replace 'install
(lambda _
(let ((whl (car (find-files "dist" "\\.whl$"))))
(invoke "pip" "--no-cache-dir" "--no-input"
"install" "--no-deps" "--prefix" #$output whl))))
(replace 'check
(lambda* (#:key tests? #:allow-other-keys)
(when tests?
(invoke "pytest" "-vv" "-c" "/dev/null")))))))
(propagated-inputs (list python-pillow))
(native-inputs (list ghostscript python-pytest))
(native-inputs
(list ghostscript
python-flit-core
python-pypa-build
python-pytest))
(home-page "https://github.com/CourtBouillon/pydyf")
(synopsis "Low-level PDF generator")
(description "@code{pydyf} is a low-level PDF generator written in Python
@ -1276,7 +1288,7 @@ manage or manipulate PDFs.")
(define-public pdfarranger
(package
(name "pdfarranger")
(version "1.8.2")
(version "1.9.1")
(source
(origin
(method git-fetch)
@ -1285,19 +1297,19 @@ manage or manipulate PDFs.")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "18bpnnwjx72d5ps06dr89mkixiwzc9hf5gr75k8qcnrkshl038v2"))))
(base32 "1s0ysg8kfbrvwcr80vrsx7150ixa9v7pb4xm49s97nkiq5k69hal"))))
(build-system python-build-system)
(arguments
'(#:tests? #f ;no tests
#:phases
(modify-phases %standard-phases
(add-after 'install 'wrap-for-typelib
(lambda* (#:key inputs outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(program (string-append out "/bin/pdfarranger")))
(wrap-program program
`("GI_TYPELIB_PATH" ":" prefix
(,(getenv "GI_TYPELIB_PATH"))))))))))
(list
#:tests? #f ;no tests
#:phases
#~(modify-phases %standard-phases
(add-after 'install 'wrap-for-typelib
(lambda _
(let ((program (string-append #$output "/bin/pdfarranger")))
(wrap-program program
`("GI_TYPELIB_PATH" ":" prefix
(,(getenv "GI_TYPELIB_PATH"))))))))))
(native-inputs
(list intltool python-distutils-extra))
(inputs

View file

@ -11641,6 +11641,28 @@ method calls. Furthermore, a partial sequence can be created and held, and
used as the head of many different sequences.")
(license license:perl-license)))
(define-public perl-file-fcntllock
(package
(name "perl-file-fcntllock")
(version "0.22")
(source (origin
(method url-fetch)
(uri (string-append
"mirror://cpan/authors/id/J/JT/JTT/File-FcntlLock-" version
".tar.gz"))
(sha256
(base32
"1pxwknq4lw0wqpkh8pf18qsjf9g503vx6a5184vvffprzwpbp6ls"))))
(build-system perl-build-system)
(home-page "https://metacpan.org/release/File-FcntlLock")
(synopsis "File locking with fcntl(2)")
(description "File locking in Perl is usually done using the @code{flock}
function. Unfortunately, this only allows locks on whole files and is often
implemented in terms of the @code{flock(2)} system function which has some
shortcomings (especially concerning locks on remotely mounted file systems)
and slightly different behaviour than @code{fcntl(2)}.")
(license license:perl-license)))
(define-public perl-font-ttf
(package
(name "perl-font-ttf")

View file

@ -1246,13 +1246,13 @@ been constructed to maintain extensive documentation on how to use
(define-public python-pyotp
(package
(name "python-pyotp")
(version "2.4.1")
(version "2.7.0")
(source
(origin
(method url-fetch)
(uri (pypi-uri "pyotp" version))
(sha256
(base32 "0jsqfmx9i7j8z81r4zazv76xzy1fcq8v9s2r4kvx7ajfndq3z2h3"))))
(base32 "1dbcgpf576kmrpkx3ly8jq4g5g22r9n1rra55c1xqxyzl2mrz66f"))))
(build-system python-build-system)
(home-page "https://github.com/pyauth/pyotp")
(synopsis "Python One Time Password Library")
@ -1760,3 +1760,33 @@ supply a handful of python functions as methods to a class.")
(description "This package provides a Python ECDSA library, optimized for
speed but without C extensions.")
(license license:expat)))
(define-public python-zxcvbn
(package
(name "python-zxcvbn")
(version "4.4.28")
(source (origin
(method git-fetch) ;for tests
(uri (git-reference
(url "https://github.com/dwolfhub/zxcvbn-python")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
"0xzlsqc9h0llfy19w4m39jgfcnvzqviv8jhgwn3r75kip97i5mvs"))))
(build-system python-build-system)
(home-page "https://github.com/dwolfhub/zxcvbn-python")
(synopsis "Realistic password strength estimator Python library")
(description "This is a Python implementation of the @code{zxcvbn} library
created at Dropbox. The original library, written for JavaScript, can be
found @url{https://github.com/dropbox/zxcvbn, here}. This port includes
features such as:
@enumerate
@item Accepts user data to be added to the dictionaries that are tested
against (name, birthdate, etc.)
@item Gives a score to the password, from 0 (terrible) to 4 (great).
@item Provides feedback on the password and ways to improve it.
@item Returns time estimates on how long it would take to guess the password
in different situations.
@end enumerate")
(license license:expat)))

View file

@ -56,6 +56,8 @@
;;; Copyright © 2022 Nicolas Graves <ngraves@ngraves.fr>
;;; Copyright © 2022 Tomasz Jeneralczyk <tj@schwi.pl>
;;; Copyright © 2022 msimonin <matthieu.simonin@inria.fr>
;;; Copyright © 2022 Michael Rohleder <mike@rohleder.de>
;;; Copyright © 2022 Baptiste Strazzulla <bstrazzull@hotmail.fr>
;;;
;;; This file is part of GNU Guix.
;;;
@ -432,14 +434,14 @@ Callback Hell.
(define-public python-aiohttp-socks
(package
(name "python-aiohttp-socks")
(version "0.6.0")
(version "0.7.1")
(source
(origin
(method url-fetch)
(uri (pypi-uri "aiohttp_socks" version))
(sha256
(base32
"04w010bvi719ifpc3sshav95k10hf9nq8czn9yglkj206yxcypdr"))))
"06il43dv6qm858af841vq9qadw6h7qsfs06nnwagmwqyi72cl592"))))
(build-system python-build-system)
(propagated-inputs
(list python-aiohttp python-attrs python-socks))
@ -563,13 +565,13 @@ WSGI. This package includes libraries for implementing ASGI servers.")
(define-public python-aws-sam-translator
(package
(name "python-aws-sam-translator")
(version "1.40.0")
(version "1.51.0")
(source (origin
(method url-fetch)
(uri (pypi-uri "aws-sam-translator" version))
(sha256
(base32
"1hq5ggbzcq4k3ks439hki493w4sasgaxns6j5x57xsj822acalmf"))))
"1ywzchc3nk13xh593j7b14qp3y0fdx7cfbdhnm34p39av66xffac"))))
(build-system python-build-system)
(arguments
`(;; XXX: Tests are not distributed with the PyPI archive, and would
@ -710,7 +712,7 @@ decode and default on encode.
(define-public python-cfn-lint
(package
(name "python-cfn-lint")
(version "0.54.3")
(version "0.65.0")
(home-page "https://github.com/aws-cloudformation/cfn-lint")
(source (origin
(method git-fetch)
@ -720,11 +722,16 @@ decode and default on encode.
(file-name (git-file-name name version))
(sha256
(base32
"106qf19n2k6sdjkb4006aidibd24qqiw901c1613xgjpnyw4dyl6"))))
"1rfacp39jssrbchrzb49vwrqyzhx5v7jfcgngqnb9r7qfs4bwi3w"))))
(build-system python-build-system)
(arguments
`(#:phases
(modify-phases %standard-phases
(add-after 'unpack 'skip-network-test
(lambda _
;; This test requires networking.
(substitute* "test/unit/module/formatters/test_formatters.py"
(("def test_sarif_formatter") "def _test_sarif_formatter"))))
(replace 'check
(lambda* (#:key inputs outputs tests? #:allow-other-keys)
(when tests?
@ -744,11 +751,14 @@ decode and default on encode.
(list python-pydot python-mock))
(propagated-inputs
(list python-aws-sam-translator
python-importlib-resources
python-jschema-to-python
python-jsonpatch
python-jsonschema
python-junit-xml
python-networkx
python-pyyaml
python-sarif-om
python-six))
(synopsis "Validate CloudFormation templates")
(description
@ -757,6 +767,45 @@ the CloudFormation spec and additional checks. Includes checking valid values
for resource properties and best practices.")
(license license:expat)))
(define-public python-jschema-to-python
(package
(name "python-jschema-to-python")
(version "1.2.3")
(source (origin
(method url-fetch)
(uri (pypi-uri "jschema_to_python" version))
(sha256
(base32
"14cvaiwm56g0v6p7zviikaa5i9ln3yqy910jmp60hirhbpz19zvn"))))
(build-system python-build-system)
(propagated-inputs (list python-attrs python-jsonpickle python-pbr))
(native-inputs (list python-pytest))
(home-page "https://github.com/microsoft/jschema-to-python")
(synopsis "Generate Python classes from a JSON schema.")
(description "This package generates source code for Python classes from a
@url{http://jschema.org,JSchema} JSON schema.")
(license license:expat)))
(define-public python-sarif-om
(package
(name "python-sarif-om")
(version "1.0.4")
(source (origin
(method url-fetch)
(uri (pypi-uri "sarif_om" version))
(sha256
(base32
"167gb8xjm0310km3w1s12bqldbv7zyklkr4j5900vq4361ml2pyd"))))
(build-system python-build-system)
(propagated-inputs (list python-attrs))
(native-inputs (list python-pbr))
(home-page "https://github.com/microsoft/sarif-python-om")
(synopsis "Python implementation of the SARIF 2.1.0 object model.")
(description "This module contains classes for the object model defined
by the @url{https://sarifweb.azurewebsites.net,Static Analysis Results
Interchange Format (SARIF)} file format.")
(license license:expat)))
(define-public python-falcon
(package
(name "python-falcon")
@ -3214,6 +3263,26 @@ supports url redirection and retries, and also gzip and deflate decoding.")
Amazon Web Services (AWS) API.")
(license license:asl2.0)))
(define-public awscli-2
(package
(inherit awscli)
(name "awscli")
(version "2.2.0")
(source
(origin
(method url-fetch)
(uri (pypi-uri (string-append name "v2") version))
(sha256
(base32
"0g1icsy2l4n540gnhliypy830dfp08hpfc3rk12dlxgc9v3ra4wl"))))
(arguments
;; FIXME: The 'pypi' release does not contain tests.
'(#:tests? #f))
(inputs
(list python-importlib-resources
python-executor))))
(define-public python-wsgiproxy2
(package
(name "python-wsgiproxy2")
@ -6561,14 +6630,14 @@ your code non-blocking and speedy.")
(define-public python-socks
(package
(name "python-socks")
(version "1.2.4")
(version "2.0.3")
(source
(origin
(method url-fetch)
(uri (pypi-uri "python-socks" version))
(sha256
(base32
"1n6xb18jy41ybgkmamakg6psp3qididd45qknxiggngaiibz43kx"))))
"12msk06c0glljcrx1byd78xgv05lxw81vknqwhn8ccs7an7cmag3"))))
(build-system python-build-system)
(arguments
`(#:tests? #f ; tests not included
@ -6577,8 +6646,7 @@ your code non-blocking and speedy.")
(replace 'check
(lambda* (#:key tests? #:allow-other-keys)
(when tests?
(invoke "pytest" "tests/" "-s"))
#t)))))
(invoke "pytest" "tests/" "-s")))))))
(propagated-inputs
(list python-async-timeout python-curio python-trio))
(native-inputs

View file

@ -130,6 +130,7 @@
;;; Copyright © 2022 Tomasz Jeneralczyk <tj@schwi.pl>
;;; Copyright © 2022 Mathieu Laparie <mlaparie@disr.it>
;;; Copyright © 2022 Garek Dyszel <garekdyszel@disroot.org>
;;; Copyright © 2022 Baptiste Strazzulla <bstrazzull@hotmail.fr>
;;;
;;; This file is part of GNU Guix.
;;;
@ -554,6 +555,37 @@ decorators, including variants of the Python standard library's
@code{lru_cache} function decorator.")
(license license:expat)))
(define-public python-cobib
(package
(name "python-cobib")
(version "3.5.2")
(source (origin
(method url-fetch)
(uri (pypi-uri "cobib" version))
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32
"16nbrbvascbf6cb7yvn9q793dy8zx703pqrmk3mswib9a19mnx3n"))))
(build-system python-build-system)
(propagated-inputs
(list python-beautifulsoup4
python-bibtexparser
python-pylatexenc
python-requests
python-requests-oauthlib
python-ruamel.yaml))
(native-inputs
(list python-future
python-pyte
python-pytest))
(home-page "https://gitlab.com/mrossinek/cobib")
(synopsis "Terminal-based bibliography management tool")
(description
"@command{cobib} is a command-line based bibliography management tool.
It uses a plain-text database, a location-independent library, and features
git integration, command-line support, and a curses-based TUI.")
(license license:expat)))
(define-public python-colorful
(package
(name "python-colorful")
@ -1619,6 +1651,25 @@ concepts.")
approximate nearest neighbor search with Python bindings.")
(license license:asl2.0)))
(define-public python-pylatexenc
(package
(name "python-pylatexenc")
(version "2.10")
(source (origin
(method url-fetch)
(uri (pypi-uri "pylatexenc" version))
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32
"1ls09z47b5md71gkxcj7fd87ynpvv2walgp2w6z31p26xf2gvn1x"))))
(build-system python-build-system)
(home-page "https://github.com/phfaist/pylatexenc")
(synopsis "LaTeX parser for Unicode/LaTeX conversion")
(description
"@code{python-pylatexenc} is a LaTeX parser providing LaTeX-to-Unicode and
Unicode-to-LaTeX conversion.")
(license license:expat)))
(define-public python-pyls-black
(package
(name "python-pyls-black")
@ -7278,6 +7329,30 @@ buffer transformation, compression, and decompression functions for use in the
tifffile, czifile, and other scientific image input/output modules.")
(license license:bsd-3)))
(define-public python-property-manager
(package
(name "python-property-manager")
(version "3.0")
(source
(origin
(method url-fetch)
(uri (pypi-uri "property-manager" version))
(sha256
(base32 "0m3w4spr8f39xnm65naw29ncal4r453kn7ndqb63rwbsmslnvrwk"))))
(build-system python-build-system)
(native-inputs
(list python-pytest-cov))
(propagated-inputs
(list python-verboselogs
python-humanfriendly
python-coloredlogs))
(home-page "https://github.com/xolox/python-property-manager")
(synopsis "Useful property variants for Python programming")
(description "The @code{property-manager} package defines several custom
property variants for Python programming including required properties,
writable properties, cached properties, etc.")
(license license:expat))) ; MIT license
(define-public python-executing
(package
(name "python-executing")
@ -7299,6 +7374,32 @@ tifffile, czifile, and other scientific image input/output modules.")
currently doing, particularly the AST node being executed.")
(license license:expat)))
(define-public python-executor
(package
(name "python-executor")
(version "23.2")
(source
(origin
(method url-fetch)
(uri (pypi-uri "executor" version))
(sha256
(base32 "0g83yr54j0vcwhy6h7n0jsd7q0q630kwa6v9kqzlzrm9xj6c3ip1"))))
(build-system python-build-system)
(arguments
`(#:tests? #f)) ; TODO: tests require root/sudo
(propagated-inputs
(list python-six
python-property-manager
python-fasteners
python-virtualenv))
(home-page "https://github.com/xolox/python-executor")
(synopsis "Programmer friendly subprocess wrapper")
(description "The @code{executor} package is a simple wrapper for Pythons
subprocess module that makes it very easy to handle subprocesses on UNIX
systems with proper escaping of arguments and error checking currently doing,
particularly the AST node being executed.")
(license license:expat))) ; MIT license
(define-public python-roifile
(package
(name "python-roifile")
@ -9479,13 +9580,13 @@ interfaces in an easy and portable manner.")
(define-public python-networkx
(package
(name "python-networkx")
(version "2.6.2")
(version "2.8.6")
(source
(origin
(method url-fetch)
(uri (pypi-uri "networkx" version))
(sha256
(base32 "1fqrq7gc0nn4rd4zqibw96cap75vb5nlixapkajwawp71jaz21i3"))))
(base32 "19h18f5j79l7kmwm5cvm75fadjgmkzw5m3pyvb9cnq0860q7faxx"))))
(build-system python-build-system)
(arguments
'(#:phases (modify-phases %standard-phases
@ -11198,6 +11299,23 @@ checksums. It implement more than a hundred checksum routines.")
blocks or callables with two context managers and two decorators.")
(license license:expat)))
(define-public python-timeout-decorator
(package
(name "python-timeout-decorator")
(version "0.5.0")
(source (origin
(method url-fetch)
(uri (pypi-uri "timeout-decorator" version))
(sha256
(base32
"1mxk2qyydhzncm93z08kvj5ssxq3fr2n7pkrrji28nqwvdc2ybva"))))
(build-system python-build-system)
(home-page "https://github.com/pnpnpn/timeout-decorator")
(synopsis "Timeout decorator")
(description "This package provides a decorator that raises an error
when an operation takes longer than expected.")
(license license:expat)))
(define-public python-straight-plugin
(package
(name "python-straight-plugin")
@ -15957,6 +16075,49 @@ is made as zipfile like as possible.")
syntax highlighting, markdown and more to the terminal.")
(license license:expat)))
(define-public python-textual
(package
(name "python-textual")
(version "0.1.18")
(source (origin
(method url-fetch)
(uri (pypi-uri "textual" version))
(sha256
(base32
"08yg5a51hz1axfj5hx28hx31gq5apcj6vpkkmawmiplisa73z25j"))))
(build-system python-build-system)
(arguments
(let ((tests
;; The release on pypi comes without tests. We can't build
;; from this checkout, though, because installation requires
;; an invocation of poetry.
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/Textualize/textual")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
"0b3ycwqhp21mg9fvmadgxhgbvkwq6fd784l2xcmvy77rravrnnax")))))
(list #:phases
#~(modify-phases %standard-phases
(replace 'check
(lambda* (#:key tests? #:allow-other-keys)
(when tests?
(copy-recursively #$(file-append tests "/tests")
"tests")
(invoke "python" "-m" "pytest" "-vv"))))))))
(propagated-inputs
(list python-rich python-typing-extensions))
(native-inputs
(list python-pytest))
(home-page "https://github.com/Textualize/textual")
(synopsis "Build text user interfaces in Python")
(description "Textual is a @acronym{TUI, Text User Interface} framework
for Python inspired by modern web development.")
(license license:expat)))
(define-public python-magic
(package
(name "python-magic")
@ -24237,7 +24398,7 @@ time-or-computationally-expensive properties quick and easy and works in Python
(define-public python-folium
(package
(name "python-folium")
(version "0.12.1")
(version "0.13.0")
(source
(origin
;; PyPI has a ".whl" file but not a proper source release.
@ -24248,7 +24409,7 @@ time-or-computationally-expensive properties quick and easy and works in Python
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1q05pzca3wfwgnbg03l3bagnhh348yx68w4aa91rg3g8zlviwjz1"))))
(base32 "00adpdi1890zzzg7ffp04hmx59igdcdpyqa129vnmwqh54b5a006"))))
(build-system python-build-system)
(propagated-inputs
(list python-branca python-jinja2 python-numpy python-requests))
@ -27931,6 +28092,38 @@ characteristics. These measures are basically linear regressions based on the
number of words, syllables, and sentences.")
(license license:asl2.0)))
(define-public python-readability-lxml
(package
(name "python-readability-lxml")
(version "0.8.1")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/buriy/python-readability")
(commit (string-append "v" version))))
(sha256
(base32
"13nfy2v0pbbf62jn9qwgi489gg97hbb22q6w3f78mnvjxd2m19rh"))
(snippet
#~(begin (delete-file "readability/compat/two.py")))))
(build-system python-build-system)
(arguments
(list
#:phases
#~(modify-phases %standard-phases
(replace 'check
(lambda* (#:key tests? #:allow-other-keys)
(when tests?
(invoke "python" "-m" "pytest" "-v" "tests/")))))))
(propagated-inputs (list python-chardet python-cssselect python-lxml))
(native-inputs (list python-timeout-decorator python-pytest))
(home-page "http://github.com/buriy/python-readability")
(synopsis "HTML to text parser")
(description
"This package provides classes and function that strip gratuitous markup
from web pages to make them easier to read.")
(license license:asl2.0)))
(define-public python-listparser
(package
(name "python-listparser")

View file

@ -220,7 +220,7 @@ window managers, that don't provide Qt integration by themselves.")
(list cmake-shared extra-cmake-modules pkg-config))
(inputs
`(("qtbase" ,qtbase-5)
("qtwayland" ,qtwayland)
("qtwayland" ,qtwayland-5)
("wayland" ,wayland)
("xkbcommon" ,libxkbcommon)))
(synopsis "Material Decoration for Qt")
@ -1448,7 +1448,7 @@ record media, and manage a collection of media content. It also contains a
set of plugins for interacting with pulseaudio and GStreamer.")
(license (package-license qtbase))))
(define-public qtwayland
(define-public qtwayland-5
(package (inherit qtsvg-5)
(name "qtwayland")
(version "5.15.5")
@ -1496,6 +1496,56 @@ set of plugins for interacting with pulseaudio and GStreamer.")
(description "The Qt Wayland module provides the QtWayland client and
compositor libraries.")))
(define-public qtwayland
(package
(name "qtwayland")
(version "6.3.1")
(source
(origin
(method url-fetch)
(uri (qt-urls name version))
(sha256
(base32 "1w60p1did7awdlzq5k8vnq2ncpskb07cpvz31cbv99bjs6igw53g"))))
(build-system cmake-build-system)
(arguments
(list #:configure-flags #~(list "-DQT_BUILD_TESTS=ON")
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'disable-failing-tests
(lambda _
;; FIXME: tst_seatv4::animatedCursor() fails here.
;; See also: <https://bugreports.qt.io/browse/QTBUG-78317>
(substitute* "tests/auto/client/seatv4/tst_seatv4.cpp"
(((string-append
"QVERIFY\\(!cursorSurface\\(\\)->"
"m_waitingFrameCallbacks\\.empty\\(\\)\\);")) "")
(("QTRY_COMPARE\\(bufferSpy\\.count\\(\\), 1\\);") ""))))
(add-before 'check 'set-test-environment
(lambda _
;; Do not fail just because /etc/machine-id is missing.
(setenv "DBUS_FATAL_WARNINGS" "0")
;; Make Qt render "offscreen", required for tests.
(setenv "QT_QPA_PLATFORM" "offscreen"))))))
(native-inputs (list glib perl pkg-config qtdeclarative))
(inputs
(list fontconfig
freetype
libx11
libxcomposite
libxext
libxkbcommon
libxrender
mesa
mtdev
qtbase
vulkan-headers
wayland))
(synopsis "Qt Wayland module")
(description "The Qt Wayland module provides the QtWayland client and
compositor libraries.")
(home-page (package-home-page qtbase))
(license (package-license qtbase))))
(define-public qtserialport
(package (inherit qtsvg-5)
(name "qtserialport")

View file

@ -11,6 +11,7 @@
;;; Copyright © 2022 Jai Vetrivelan <jaivetrivelan@gmail.com>
;;; Copyright © 2022 Sheng Yang <styang@fastmail.com>
;;; Copyright © 2022 Greg Hogan <code@greghogan.com>
;;; Copyright © 2022 Ryan Tolboom <ryan@using.tech>
;;;
;;; This file is part of GNU Guix.
;;;
@ -89,6 +90,7 @@
#:use-module (gnu packages readline)
#:use-module (gnu packages ruby)
#:use-module (gnu packages sdl)
#:use-module (gnu packages serialization)
#:use-module (gnu packages sphinx)
#:use-module (gnu packages swig)
#:use-module (gnu packages tcl)
@ -1642,7 +1644,7 @@ modes:
(define-public nanovna-saver
(package
(name "nanovna-saver")
(version "0.3.9")
(version "0.5.3")
(source
(origin
(method git-fetch)
@ -1651,7 +1653,7 @@ modes:
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1h5k402wjlj7xjniggwf0x7a5srlgglc2x4hy6lz6c30zwa7z8fm"))))
(base32 "1h0wzva8j7fqnpf0qy42bw9rdclgq3jdq902ajvd9v5iqcqs78n0"))))
(build-system python-build-system)
(native-inputs
(list python-cython))
@ -2668,3 +2670,40 @@ the navigation message, computation of observables and, finally, computation of
position fixes) the signals of the BeiDou, Galileo, GLONASS and GPS Global
Navigation Satellite System.")
(license license:gpl3+)))
(define-public qdmr
(package
(name "qdmr")
(version "0.10.3")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/hmatuschek/qdmr")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
"037vkwk974zrwacxafslkb3mbw9258v9sdpwdvb23msjzbc3snrn"))))
(build-system cmake-build-system)
(arguments
(list #:tests? #f ;no tests
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'patch-paths
(lambda _
(substitute* "lib/CMakeLists.txt"
(("(DESTINATION \")/etc/udev/" _ directive)
(string-append directive #$output "/lib/udev/"))))))))
(inputs (list libusb qtbase-5 qtlocation qtserialport yaml-cpp))
(native-inputs (list qttools-5))
(home-page "https://dm3mat.darc.de/qdmr/")
(synopsis "GUI application and command line tool to program DMR radios")
(description
"qdmr is a graphical user interface (GUI) application that allows one to
program several types of DMR radios. It is comparable to the Customer
Programming Software (CPS) bundled with these radios but aims to be a more
universal tool.
To install the qdmr udev rules, you must extend @code{udev-service-type} with this
package. E.g.: @code{(udev-rules-service 'qdmr qdmr)}")
(license license:gpl3+)))

View file

@ -2,6 +2,7 @@
;;; Copyright © 2013, 2014, 2019 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2015 Mathieu Lirzin <mthl@openmailbox.org>
;;; Copyright © 2017 Mathieu Othacehe <m.othacehe@gmail.com>
;;; Copyright © 2022 Maxim Cournoyer <maxim.cournoyer@gmail.com>
;;;
;;; This file is part of GNU Guix.
;;;
@ -19,8 +20,9 @@
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
(define-module (gnu packages ratpoison)
#:use-module (guix packages)
#:use-module (guix download)
#:use-module (guix gexp)
#:use-module (guix packages)
#:use-module (guix build-system gnu)
#:use-module ((guix licenses) #:select (gpl2+))
#:use-module (gnu packages)
@ -44,42 +46,48 @@
(patches (search-patches "ratpoison-shell.patch"))))
(build-system gnu-build-system)
(arguments
`(#:modules ((ice-9 format)
(list
#:modules `((ice-9 format)
,@%gnu-build-system-modules)
#:phases
(modify-phases %standard-phases
(add-after 'install 'install-xsession
(lambda* (#:key outputs #:allow-other-keys)
;; Add a .desktop file to xsessions.
(let* ((output (assoc-ref outputs "out"))
(xsessions (string-append output "/share/xsessions")))
(mkdir-p xsessions)
(call-with-output-file (string-append xsessions
"/ratpoison.desktop")
(lambda (port)
(format port
"[Desktop Entry]~@
;; Specify the absolute location of xterm, as the user experience sucks
;; when no terminal is available (can't consult help with 'C-t ?', for
;; example).
#:configure-flags #~(list (string-append "--with-xterm="
#$(this-package-input "xterm")))
#:phases
#~(modify-phases %standard-phases
(add-after 'install 'install-xsession
(lambda _
;; Add a .desktop file to xsessions.
(let ((xsessions (string-append #$output "/share/xsessions")))
(mkdir-p xsessions)
(call-with-output-file (string-append xsessions
"/ratpoison.desktop")
(lambda (port)
(format port
"[Desktop Entry]~@
Name=ratpoison~@
Comment=Tiling window manager: say goodbye to the rodent!~@
Exec=~a/bin/ratpoison~@
TryExec=~@*~a/bin/ratpoison~@
Type=Application~%"
output)))
#t))))))
#$output)))))))))
(inputs
`(("fontconfig" ,fontconfig)
("freetype" ,freetype)
("libXft" ,libxft)
("libXi" ,libxi)
("libxrandr" ,libxrandr)
("libXpm" ,libxpm)
("libXt" ,libxt)
("libXtst" ,libxtst)
("libX11" ,libx11)
("readline" ,readline)
("xorgproto" ,xorgproto)))
(list fontconfig
freetype
libxft
libxi
libxrandr
libxpm
libxt
libxtst
libx11
readline
xorgproto
xterm))
(native-inputs
(list perl pkg-config))
(list perl
pkg-config))
(home-page "https://www.nongnu.org/ratpoison/")
(synopsis "Simple mouse-free tiling window manager")
(description

View file

@ -148,13 +148,27 @@ joystick, and graphics hardware.")
eudev ;for discovering input devices
fcitx ;helps with CJK input
glib
ibus
ibus-minimal
libxkbcommon
libxcursor ;enables X11 cursor support
wayland
wayland-protocols)))
(license license:bsd-3)))
(define-public sdl2-2.0
(package
(inherit sdl2)
(name "sdl2")
(version "2.0.14")
(source (origin
(method url-fetch)
(uri
(string-append "https://libsdl.org/release/SDL2-"
version ".tar.gz"))
(sha256
(base32
"1g1jahknv5r4yhh1xq5sf0md20ybdw1zh1i15lry26sq39bmn8fq"))))))
(define-public libmikmod
(package
(name "libmikmod")

View file

@ -42,6 +42,7 @@
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages python)
#:use-module (gnu packages python-xyz)
#:use-module (gnu packages qt)
#:use-module (gnu packages swig)
#:use-module (gnu packages xml))
@ -305,16 +306,16 @@ based on required access.")
(define-public python-setools
(package
(name "python-setools")
(version "4.1.1")
(version "4.4.0")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/TresysTechnology/setools")
(url "https://github.com/SELinuxProject/setools")
(commit version)))
(file-name (string-append name "-" version "-checkout"))
(sha256
(base32
"0459xxly6zzqc5azcwk3rbbcxvj60dq08f8z6xr05y7dsbb16cg6"))))
"1qvd5j6zwq4fmlahg45swjplhif2z89x7s6pnp07gvcp2fbqdsh5"))))
(build-system python-build-system)
(arguments
`(#:tests? #f ; the test target causes a rebuild
@ -339,10 +340,10 @@ based on required access.")
(propagated-inputs
(list python-networkx))
(inputs
(list libsepol libselinux))
(list libsepol libselinux python-pyqt))
(native-inputs
(list bison flex swig))
(home-page "https://github.com/TresysTechnology/setools")
(list bison flex python-cython swig))
(home-page "https://github.com/SELinuxProject/setools")
(synopsis "Tools for SELinux policy analysis")
(description "SETools is a collection of graphical tools, command-line
tools, and libraries designed to facilitate SELinux policy analysis.")

View file

@ -154,7 +154,7 @@ fundamental object types for C.")
(define-public sssd
(package
(name "sssd")
(version "2.7.3")
(version "2.7.4")
(source
(origin
(method git-fetch)
@ -163,7 +163,7 @@ fundamental object types for C.")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "18kcg82gcf5wgmaq5w9fszv9sg3d93yqm39p1npr8kw8b9203n4r"))
(base32 "1946pfwyv1ci0m4flrhwkksq42p14n7kcng6fbq6sy4lcn5g3yml"))
(patches (search-patches "sssd-optional-systemd.patch"
"sssd-system-directories.patch"))))
(build-system gnu-build-system)

View file

@ -12,7 +12,7 @@
;;; Copyright © 2017 Alex Kost <alezost@gmail.com>
;;; Copyright © 2018 Alex Branham <alex.branham@gmail.com>
;;; Copyright © 2020 Tim Howes <timhowes@lavabit.com>
;;; Copyright © 2021 Maxim Cournoyer <maxim.cournoyer@gmail.com>
;;; Copyright © 2021, 2022 Maxim Cournoyer <maxim.cournoyer@gmail.com>
;;; Copyright © 2021 Bonface Munyoki Kilyungi <me@bonfacemunyoki.com>
;;; Copyright © 2021 Lars-Dominik Braun <lars@6xq.net>
;;; Copyright © 2021 Frank Pursel <frank.pursel@gmail.com>
@ -73,6 +73,7 @@
#:use-module (gnu packages maths)
#:use-module (gnu packages multiprecision)
#:use-module (gnu packages ncurses)
#:use-module (gnu packages ocaml)
#:use-module (gnu packages pcre)
#:use-module (gnu packages perl)
#:use-module (gnu packages pkg-config)
@ -83,6 +84,7 @@
#:use-module (gnu packages shells)
#:use-module (gnu packages sphinx)
#:use-module (gnu packages ssh)
#:use-module (gnu packages swig)
#:use-module (gnu packages tcl)
#:use-module (gnu packages tex)
#:use-module (gnu packages texinfo)
@ -4407,31 +4409,55 @@ from within R.")
(define-public r-spams
(package
(name "r-spams")
(version "2.6-2017-03-22")
(source
(origin
(method url-fetch)
;; Use the Latest version link for a stable URI across releases.
(uri (string-append "https://gforge.inria.fr/frs/download.php/"
"latestfile/4531/spams-R-v" version ".tar.gz"))
(sha256
(base32
"13z2293jixf1r9g8dyy856xrhvpjr2ln2n9smn6644126r9hmhkx"))))
(version "2.6.1")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://gitlab.inria.fr/thoth/spams-devel")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
"0qvj87fw4sm54c7dvhxjgmgvnyyrrz9fk6dqp3ak0gwgb42gqh60"))))
(build-system r-build-system)
(arguments
`(#:phases
(modify-phases %standard-phases
(add-after 'unpack 'chdir
(lambda _ (chdir "spams") #t))
;; Don't tune for the building machine.
(add-after 'chdir 'no-mtune
(lambda _
(substitute* "src/Makevars"
(("-mtune=native") ""))
#t)))))
(list
#:phases
#~(modify-phases %standard-phases
(add-after 'patch-generated-file-shebangs 'patch-paths
(lambda _
(substitute* (cons* "swig/setRelease"
"swig/R/docmatlab2R"
"swig/R/mkdist"
(find-files "." "(^mk|\\.sh$)"))
(("/bin/pwd") "pwd")
(("/bin/rm") "rm"))))
(add-after 'patch-paths 'mkdist
(lambda _
(chdir "swig/R")
(setenv "TEXINPUTS" (string-append (getcwd) "/../../doc:"))
(substitute* "mkdist"
(("^SWIG=.*")
(string-append "SWIG=" (which "swig")))
(("^../mkdoc") "")) ;requires texlive-aeguill
(invoke "./mkdist")
(chdir "dist/spams-R/spams")))
;; Don't tune for the building machine.
(add-after 'mkdist 'no-mtune
(lambda _
(substitute* "src/Makevars"
(("-mtune=native") "")))))))
(native-inputs
(list hevea
perl
swig
;;texlive-aeguill ;;FIXME: package me!
texlive-base
texlive-jknappen))
(propagated-inputs
(list r-lattice r-matrix))
(home-page "https://spams-devel.gforge.inria.fr")
(list r-lattice
r-matrix))
(home-page "https://gitlab.inria.fr/thoth/spams-devel/")
(synopsis "Toolbox for solving sparse estimation problems")
(description "SPAMS (SPArse Modeling Software) is an optimization toolbox
for solving various sparse estimation problems. It includes tools for the

View file

@ -4,6 +4,7 @@
;;; Copyright © 2020 Vinicius Monego <monego@posteo.net>
;;; Copyright © 2021 Felix Gruber <felgru@posteo.net>
;;; Copyright © 2022 Luis Felipe López Acevedo <luis.felipe.la@protonmail.com>
;;; Copyright © 2022 Liliana Marie Prikler <liliana.prikler@gmail.com>
;;;
;;; This file is part of GNU Guix.
;;;
@ -26,6 +27,7 @@
#:use-module (guix git-download)
#:use-module (guix packages)
#:use-module (guix utils)
#:use-module (guix gexp)
#:use-module (guix build-system cargo)
#:use-module (guix build-system glib-or-gtk)
#:use-module (guix build-system gnu)
@ -35,7 +37,10 @@
#:use-module (gnu packages)
#:use-module (gnu packages autotools)
#:use-module (gnu packages base)
#:use-module (gnu packages bash)
#:use-module (gnu packages build-tools)
#:use-module (gnu packages check)
#:use-module (gnu packages cmake)
#:use-module (gnu packages crates-io)
#:use-module (gnu packages curl)
#:use-module (gnu packages documentation)
@ -48,6 +53,7 @@
#:use-module (gnu packages kde-frameworks)
#:use-module (gnu packages ncurses)
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages pretty-print)
#:use-module (gnu packages python)
#:use-module (gnu packages python-check)
#:use-module (gnu packages python-xyz)
@ -218,14 +224,14 @@ cards.")
(define-public newsboat
(package
(name "newsboat")
(version "2.26")
(version "2.29")
(source
(origin
(method url-fetch)
(uri (string-append "https://newsboat.org/releases/" version
"/newsboat-" version ".tar.xz"))
(sha256
(base32 "061w86jffyi49m4d9n974a3pd1svbw3azmh0qx8h2v7h0178791l"))))
(base32 "0szx4pivkaja8v399m6v7ycp1xprm4cz7n5z929g4j191hg81f8q"))))
(build-system cargo-build-system)
(native-inputs
`(("gettext" ,gettext-minimal)
@ -252,6 +258,7 @@ cards.")
("rust-chrono" ,rust-chrono-0.4)
("rust-curl-sys" ,rust-curl-sys-0.4)
("rust-cxx" ,rust-cxx-1)
("rust-cxx-build" ,rust-cxx-build-1)
("rust-fastrand" ,rust-fastrand-1)
("rust-gettext-rs" ,rust-gettext-rs-0.7)
("rust-lexopt" ,rust-lexopt-0.2)
@ -265,8 +272,7 @@ cards.")
("rust-unicode-width" ,rust-unicode-width-0.1)
("rust-xdg" ,rust-xdg-2))
#:cargo-development-inputs
(("rust-cxx-build" ,rust-cxx-build-1)
("rust-tempfile" ,rust-tempfile-3)
(("rust-tempfile" ,rust-tempfile-3)
("rust-proptest" ,rust-proptest-1)
("rust-section-testing" ,rust-section-testing-0.0))
#:phases
@ -491,67 +497,93 @@ a simple interface that makes it easy to organize and browse feeds.")
(license (list license:expat
license:gpl3+)))) ; tuir/packages/praw
(define-public syndication-domination
(let ((revision "1")
(commit "f64caabd6f46be14fdb92085971a7f2d6fa5e61e"))
(package
(name "syndication-domination")
(version (git-version "0.0" revision commit))
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://gitlab.com/gabmus/syndication-domination")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32 "1i0llzzm3lc2kw7rjhb46c7wlknsb6r9bdrf61chi2pk6hpjyscv"))))
(build-system meson-build-system)
(arguments
(list #:meson meson-0.63))
(inputs (list fmt tidy-html pybind11 python pugixml))
(native-inputs (list cmake pkg-config)) ; need cmake to find pybind11
(home-page "https://gitlab.com/gabmus/syndication-domination")
(synopsis "RSS/Atom feed parser")
(description "This package provides an experimental RSS/Atom feed
parser. It is \"not fit for use at this point\", but gfeeds uses it anyway.")
(license license:agpl3))))
(define-public gfeeds
(package
(name "gfeeds")
(version "0.16.2")
(version "1.0.3")
(source (origin
(method url-fetch)
(uri
(string-append
"https://gitlab.gnome.org/World/gfeeds/-/archive/" version
"/gfeeds-" version ".tar.bz2"))
(method git-fetch)
(uri (git-reference
(url "https://gitlab.gnome.org/World/gfeeds")
(commit version)))
(sha256
(base32
"05gwwzqfz29m477imd5vh84jfla1wnklwpc2sdxnqli72wg08fli"))))
"1lkvhff7pl1y4brqsix6sar5yl8flyhfp3w96fx0klhk3586bvhg"))))
(build-system meson-build-system)
(arguments
`(#:phases
(modify-phases %standard-phases
(add-after 'unpack 'patch-mpv-path
(lambda* (#:key inputs #:allow-other-keys)
(substitute* "gfeeds/confManager.py"
(("mpv") (search-input-file inputs "/bin/mpv")))
#t))
(add-after 'unpack 'patch-webkit2-version
(lambda* (#:key inputs #:allow-other-keys)
(substitute* "bin/gfeeds.in"
(("gi\\.require_version\\('WebKit2', '4\\.0'\\)")
"gi.require_version('WebKit2', '4.1')"))))
(add-after 'install 'wrap-gfeeds
(lambda* (#:key outputs #:allow-other-keys)
(wrap-program (string-append
(assoc-ref outputs "out") "/bin/gfeeds")
`("PYTHONPATH" ":" prefix (,(getenv "GUIX_PYTHONPATH")))
`("GI_TYPELIB_PATH" ":" prefix (,(getenv "GI_TYPELIB_PATH")))
`("XDG_DATA_DIRS" ":" prefix (,(getenv "XDG_DATA_DIRS"))))
#t)))))
(list
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'patch-mpv-path
(lambda* (#:key inputs #:allow-other-keys)
(substitute* "gfeeds/confManager.py"
(("mpv") (search-input-file inputs "/bin/mpv")))))
(add-after 'unpack 'skip-icon-cache
(lambda _
(substitute* "meson_post_install.py"
(("gtk-update-icon-cache") "true"))))
(add-after 'install 'wrap-gfeeds
(lambda* (#:key outputs #:allow-other-keys)
(wrap-program (string-append
(assoc-ref outputs "out") "/bin/gfeeds")
`("PYTHONPATH" ":" prefix (,(getenv "GUIX_PYTHONPATH")))
`("GI_TYPELIB_PATH" ":" prefix (,(getenv "GI_TYPELIB_PATH")))
`("XDG_DATA_DIRS" ":" prefix (,(getenv "XDG_DATA_DIRS")))))))))
(native-inputs
`(("glib:bin" ,glib "bin")
("gobject-introspection" ,gobject-introspection)
("gtk+:bin" ,gtk+ "bin")
("pkg-config" ,pkg-config)))
(list `(,glib "bin")
blueprint-compiler
gobject-introspection
pkg-config))
(inputs
(list glib
(list bash-minimal
glib
gsettings-desktop-schemas
gtk+
gtk
hicolor-icon-theme
libhandy
libadwaita
mpv
python
python-beautifulsoup4
python-dateutil
python-feedparser
python-html5lib
python-humanize
python-listparser
python-lxml
python-magic
python-pillow
python-pygments
python-pygobject
python-pytz
python-readability
python-readability-lxml
python-requests
webkitgtk
python-pygobject))
syndication-domination
webkitgtk-next))
(home-page "https://gfeeds.gabmus.org/")
(synopsis "Easy-to-use GTK+ RSS/Atom feed reader")
(description "Feeds is an RSS/Atom feed reader made with GTK+

View file

@ -502,7 +502,7 @@ Telegram project, for its use in telegram desktop client.")
qtbase-5
qtimageformats
qtsvg-5
qtwayland
qtwayland-5
range-v3
rlottie-for-telegram-desktop
rnnoise

View file

@ -640,7 +640,7 @@ should be thread-safe.")
(define-public libvterm
(package
(name "libvterm")
(version "0.1.4")
(version "0.3")
(source
(origin
(method url-fetch)
@ -648,7 +648,7 @@ should be thread-safe.")
"libvterm-" version ".tar.gz"))
(sha256
(base32
"1pfkhbbihd2kvaza707vl2nvk7bxaawmb37wf9v6d72mjng38w5w"))))
"0n1k923ii618ffkbifi8a89ag8c6m9l49z8dj01dyay551k0vsv1"))))
(build-system gnu-build-system)
(arguments
`(#:make-flags

View file

@ -6562,6 +6562,26 @@ Adobe's basic set.")
;; No license version specified.
(license license:gpl3+)))
(define-public texlive-zhspacing
(package
(inherit
(simple-texlive-package "texlive-zhspacing"
(list "doc/generic/zhspacing/"
"tex/context/third/zhspacing/"
"tex/generic/zhspacing/"
"tex/xelatex/zhspacing/")
(base32
"02hwa7yjwb6wxkkib83mjdbara5zcsixbp5xlawri8n9ah54vxjm")
#:trivial? #t))
(home-page "https://ctan.org/macros/xetex/generic/zhspacing")
(synopsis "Spacing for mixed CJK-English documents in XeTeX")
(description
"The package manages spacing in a CJK document; between consecutive Chinese
letters, spaces are ignored, but a consistent space is inserted between Chinese
text and English (or mathematics). The package may be used by any document
format under XeTeX.")
(license license:lppl1.3+)))
(define-public texlive-zref
(package
(inherit (simple-texlive-package
@ -6781,6 +6801,23 @@ splines, and filled circles and ellipses. The package uses @code{tpic}
provides means for easy customization of the list of notes.")
(license license:lppl1.3c+)))
(define-public texlive-endnotes
(package
(inherit (simple-texlive-package
"texlive-endnotes"
(list "doc/latex/endnotes/"
"tex/latex/endnotes/")
(base32
"1s7j5sg8fbhifng0gfqnghbvalbbh0p7j9v06r660w089364ypwz")
#:trivial? #t))
(home-page "https://www.ctan.org/pkg/endnotes")
(synopsis "Deal with endnotesings in strings")
(description
"Accumulates notes (using the @code{\\endnote} command, which can be used
as a replacement for @code{\\footnote}), and places them at the end of
the section, chapter or document.")
(license license:lppl1.0+)))
(define-public texlive-enumitem
(package
(inherit
@ -11090,6 +11127,20 @@ and selecting references used in a publication.")
(base32
"08jn8piyaad4zln33c0gikyhdkcsk2s3ms9l992riq2hbpbm9lcf")
#:trivial? #t))
(propagated-inputs (list texlive-apacite
texlive-babel
texlive-booktabs
texlive-endnotes
texlive-etoolbox
texlive-generic-xstring
texlive-latex-draftwatermark
texlive-latex-fancyhdr
texlive-latex-float
texlive-latex-graphics
texlive-lm
texlive-substr
texlive-times
texlive-tools))
(home-page "https://www.ctan.org/pkg/apa6")
(synopsis "Format documents in APA style (6th edition)")
(description "The class formats documents in APA style (6th
@ -11103,6 +11154,28 @@ The class is a development of the apa class (which is no longer
maintained).")
(license license:lppl1.3c+)))
(define-public texlive-apacite
(package
(inherit (simple-texlive-package
"texlive-apacite"
(list "tex/latex/apacite/")
(base32
"0bcfpcmflhvxwzmdj8dgf43mzaywx2asahp52nqn3wwvq64bqym6")
#:trivial? #t))
(propagated-inputs (list texlive-latex-natbib
texlive-tools))
(home-page "https://www.ctan.org/pkg/apacite")
(synopsis "Citation style following the rules of the APA")
(description "Apacite provides a BibTeX style and a LaTeX package which
are designed to match the requirements of the American Psychological
Associations style for citations. The package follows the 6th edition
of the APA manual, and is designed to work with the apa6 class. A test
document is provided. The package is compatible with chapterbib and
(to some extent) with hyperref (for limits of compatibility, see the
documentation). The package also includes a means of generating an author
index for a document.")
(license license:lppl1.3+)))
(define-public texlive-endfloat
(package
(inherit (simple-texlive-package
@ -11875,6 +11948,49 @@ syllable. The package itself does not support UTF-8 input in ordinary
(PDF)LaTeX; some UTF-8 support is offered by package @code{soulutf8}.")
(license license:lppl))))
(define-public texlive-generic-xstring
(let ((template (simple-texlive-package
"texlive-generic-xstring"
(list "/doc/generic/xstring/"
"/tex/generic/xstring/")
(base32
"1azpq855kq1l4686bjp8haxim5c8wycz1b6lcg5q7x8kb4g9sppn")
#:trivial? #t)))
(package
(inherit template)
(home-page "http://www.ctan.org/pkg/xstring")
(synopsis "String manipulation for (La)TeX")
(description
"@code{xstring} package provides macros for manipulating strings --
testing a string's contents, extracting substrings, substitution of substrings
and providing numbers such as string length, position of, or number of
recurrences of, a substring. The package works equally in Plain TeX and LaTeX
(though e-TeX is always required). The strings to be processed may contain
(expandable) macros.")
(license license:lppl1.3c))))
(define-public texlive-substr
(package
(inherit (simple-texlive-package
"texlive-substr"
(list "doc/latex/substr/"
"tex/latex/substr/")
(base32
"0kfd4kq5yrg65f2mpric1cs1xr416wgj9bdixpibgjsdg5fb73sw")
#:trivial? #t))
(home-page "https://www.ctan.org/pkg/substr")
(synopsis "Deal with substrings in strings")
(description
"The package provides commands to deal with substrings of strings. Macros
are provided to:
@itemize
@item determine if one string is a substring of another,
@item return the parts of a string before or after a substring, and
@item count the number of occurrences of a substring.
@end itemize")
(license license:lppl1.0+)))
(define-public texlive-latex-totcount
(package
(inherit (simple-texlive-package

View file

@ -19,6 +19,7 @@
;;; Copyright © 2021 Calum Irwin <calumirwin1@gmail.com>
;;; Copyright © 2022 Luis Henrique Gomes Higino <luishenriquegh2701@gmail.com>
;;; Copyright © 2022 Foo Chuan Wei <chuanwei.foo@hotmail.com>
;;; Copyright © 2022 zamfofex <zamfofex@twdb.moe>
;;;
;;; This file is part of GNU Guix.
;;;
@ -45,6 +46,7 @@
#:use-module (guix build-system cmake)
#:use-module (guix build-system gnu)
#:use-module (guix build-system glib-or-gtk)
#:use-module (guix build-system meson)
#:use-module (guix build-system python)
#:use-module ((guix licenses) #:prefix license:)
#:use-module (gnu packages)
@ -62,6 +64,7 @@
#:use-module (gnu packages freedesktop)
#:use-module (gnu packages gettext)
#:use-module (gnu packages glib)
#:use-module (gnu packages graphics)
#:use-module (gnu packages gtk)
#:use-module (gnu packages guile)
#:use-module (gnu packages haskell-xyz)
@ -81,6 +84,7 @@
#:use-module (gnu packages qt)
#:use-module (gnu packages regex)
#:use-module (gnu packages ruby)
#:use-module (gnu packages sdl)
#:use-module (gnu packages sqlite)
#:use-module (gnu packages terminals)
#:use-module (gnu packages texinfo)
@ -1260,3 +1264,39 @@ scriptable rc file, macros, search and replace (PCRE), window
splitting, multiple cursors, and integration with various shell
commands.")
(license license:asl2.0)))
(define-public lite-xl
(package
(name "lite-xl")
(version "2.0.5")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/lite-xl/lite-xl")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
"0l2i9mvbkc4kqkwk2p17zd1rlm5v41acdyp2xivi53p2hkj4x6pf"))
(modules '((guix build utils)))
(snippet '(substitute* "meson.build"
(("dependency\\('lua5\\.2',")
"dependency('lua-5.2',")))))
(build-system meson-build-system)
(inputs (list agg
freetype
lua-5.2
pcre2
reproc
sdl2))
(native-inputs (list pkg-config))
(home-page "https://lite-xl.com")
(synopsis "Lightweight text editor written in Lua")
(description
"Lite XL is derived from lite. It is a lightweight text editor written
mostly in Lua. It aims to provide something practical, pretty, small and fast
easy to modify and extend, or to use without doing either.
The aim of Lite XL compared to lite is to be more user-friendly, improve the
quality of font rendering, and reduce CPU usage.")
(license license:expat)))

View file

@ -45,6 +45,7 @@
;;; Copyright © 2021 Foo Chuan Wei <chuanwei.foo@hotmail.com>
;;; Copyright © 2022 Jai Vetrivelan <jaivetrivelan@gmail.com>
;;; Copyright © 2022 Maxime Devos <maximedevos@telenet.be>
;;; Copyright © 2022 Dhruvin Gandhi <contact@dhruvin.dev>
;;;
;;; This file is part of GNU Guix.
;;;
@ -104,6 +105,7 @@
#:use-module (gnu packages image)
#:use-module (gnu packages linux)
#:use-module (gnu packages mail)
#:use-module (gnu packages man)
#:use-module (gnu packages maths)
#:use-module (gnu packages nano)
#:use-module (gnu packages ncurses)
@ -221,14 +223,14 @@ Python 3.3 and later, rather than on Python 2.")
(define-public git
(package
(name "git")
(version "2.37.3")
(version "2.38.0")
(source (origin
(method url-fetch)
(uri (string-append "mirror://kernel.org/software/scm/git/git-"
version ".tar.xz"))
(sha256
(base32
"0yp8hdj0w18jhmmdflzz74z418cw95i08pc22yycyn8nyvbl2il1"))))
"02ij201lyipv1w2zkcq4ng2bga2xkw58xnkbs1wdw50qdgiasglj"))))
(build-system gnu-build-system)
(native-inputs
`(("native-perl" ,perl)
@ -248,7 +250,7 @@ Python 3.3 and later, rather than on Python 2.")
version ".tar.xz"))
(sha256
(base32
"053lj9wy8y2yr5jzpb0af4w50gz3ckhgc15wqx7is4z6k9a76lww"))))
"1qyn6rhwblshz0hp0kdc8lk22c1fv8avfr44sia0vzlbd82xj828"))))
;; For subtree documentation.
("asciidoc" ,asciidoc)
("docbook-xsl" ,docbook-xsl)
@ -1497,89 +1499,85 @@ also walk each side of a merge and test those changes individually.")
(base32 "05xw1pmagvkrbzga5pgl3xk9qyc6b5x73f842454f3w9ijspa8zy"))))
(build-system gnu-build-system)
(arguments
'(#:tests? #f ; no tests
#:phases (modify-phases %standard-phases
(delete 'configure)
(delete 'build)
(add-before 'install 'patch-scripts
(lambda* (#:key inputs #:allow-other-keys)
(let ((perl (search-input-file inputs "/bin/perl")))
;; This seems to take care of every shell script that
;; invokes Perl.
(substitute* (find-files ".")
((" perl -")
(string-append " " perl " -")))
(list #:tests? #f ; no tests
#:phases
#~(modify-phases %standard-phases
(delete 'configure)
(delete 'build)
(add-before 'install 'patch-scripts
(lambda* _
;; This seems to take care of every shell script that
;; invokes Perl.
(substitute* (find-files ".")
((" perl -")
(string-append " " #$perl "/bin/perl" " -")))
(substitute* (find-files "src/triggers" ".*")
((" sed ")
(string-append " " (which "sed") " ")))
(substitute* (find-files "src/triggers" ".*")
((" sed ")
(string-append " " #$sed "/bin/sed" " ")))
(substitute*
'("src/triggers/post-compile/update-gitweb-access-list"
"src/triggers/post-compile/ssh-authkeys-split"
"src/triggers/upstream")
((" grep ")
(string-append " " (which "grep") " ")))
(substitute*
'("src/triggers/post-compile/update-gitweb-access-list"
"src/triggers/post-compile/ssh-authkeys-split"
"src/triggers/upstream")
((" grep ")
(string-append " " #$grep "/bin/grep" " ")))
;; Avoid references to the store in authorized_keys.
;; This works because gitolite-shell is in the PATH.
(substitute* "src/triggers/post-compile/ssh-authkeys"
(("\\$glshell \\$user")
"gitolite-shell $user")))))
(add-before 'install 'patch-source
(lambda* (#:key inputs #:allow-other-keys)
;; Gitolite uses cat to test the readability of the
;; pubkey
(substitute* "src/lib/Gitolite/Setup.pm"
(("\"cat ")
(string-append "\"" (which "cat") " "))
(("\"ssh-keygen")
(string-append "\"" (which "ssh-keygen"))))
;; Avoid references to the store in authorized_keys.
;; This works because gitolite-shell is in the PATH.
(substitute* "src/triggers/post-compile/ssh-authkeys"
(("\\$glshell \\$user")
"gitolite-shell $user"))))
(add-before 'install 'patch-source
(lambda* _
;; Gitolite uses cat to test the readability of the
;; pubkey
(substitute* "src/lib/Gitolite/Setup.pm"
(("\"cat ")
(string-append "\"" #$coreutils "/bin/cat" " "))
(("\"ssh-keygen")
(string-append "\"" #$openssh "/bin/ssh-keygen")))
(substitute* '("src/lib/Gitolite/Hooks/PostUpdate.pm"
"src/lib/Gitolite/Hooks/Update.pm")
(("/usr/bin/perl")
(search-input-file inputs "/bin/perl")))
(substitute* '("src/lib/Gitolite/Hooks/PostUpdate.pm"
"src/lib/Gitolite/Hooks/Update.pm")
(("/usr/bin/perl")
(string-append #$perl "/bin/perl")))
(substitute* "src/lib/Gitolite/Common.pm"
(("\"ssh-keygen")
(string-append "\"" (which "ssh-keygen")))
(("\"logger\"")
(string-append "\""
(assoc-ref inputs "inetutils")
"/bin/logger\"")))
(substitute* "src/lib/Gitolite/Common.pm"
(("\"ssh-keygen")
(string-append "\"" #$openssh "/bin/ssh-keygen"))
(("\"logger\"")
(string-append "\"" #$inetutils "/bin/logger\"")))
(substitute* "src/lib/Gitolite/Cache.pm"
(("/usr/sbin/redis-server") "redis-server"))
(substitute* "src/lib/Gitolite/Cache.pm"
(("/usr/sbin/redis-server") "redis-server"))
(substitute* "src/commands/svnserve"
(("/usr/bin/svnserve") "svnserve"))))
(replace 'install
(lambda* (#:key outputs #:allow-other-keys)
(let* ((output (assoc-ref outputs "out"))
(sharedir (string-append output "/share/gitolite"))
(bindir (string-append output "/bin")))
(mkdir-p sharedir)
(mkdir-p bindir)
(invoke "./install" "-to" sharedir)
;; Create symlinks for executable scripts in /bin.
(for-each (lambda (script)
(symlink (string-append sharedir "/" script)
(string-append bindir "/" script)))
'("gitolite" "gitolite-shell")))))
(add-after 'install 'wrap-scripts
(lambda* (#:key inputs outputs #:allow-other-keys)
(let ((out (assoc-ref outputs "out"))
(coreutils (assoc-ref inputs "coreutils"))
(findutils (assoc-ref inputs "findutils"))
(git (assoc-ref inputs "git")))
(for-each (lambda (file-name)
(wrap-program (string-append out file-name)
`("PATH" ":" prefix
,(map (lambda (dir)
(string-append dir "/bin"))
(list out coreutils findutils git)))))
'("/bin/gitolite" "/bin/gitolite-shell"))))))))
(substitute* "src/commands/svnserve"
(("/usr/bin/svnserve") "svnserve"))))
(replace 'install
(lambda* _
(let* ((sharedir (string-append #$output "/share/gitolite"))
(bindir (string-append #$output "/bin")))
(mkdir-p sharedir)
(mkdir-p bindir)
(invoke "./install" "-to" sharedir)
;; Create symlinks for executable scripts in /bin.
(for-each (lambda (script)
(symlink (string-append sharedir "/" script)
(string-append bindir "/" script)))
'("gitolite" "gitolite-shell")))))
(add-after 'install 'wrap-scripts
(lambda* _
(for-each (lambda (file-name)
(wrap-program (string-append #$output file-name)
`("PATH" ":" prefix
,(map (lambda (dir)
(string-append dir "/bin"))
(list #$output
#$coreutils
#$findutils
#$git)))))
'("/bin/gitolite" "/bin/gitolite-shell")))))))
(inputs
(list bash-minimal coreutils findutils git inetutils openssh perl))
(home-page "https://gitolite.com")
@ -3460,3 +3458,69 @@ Git project instead of @command{git filter-branch}.")
"Gitlint is a Git commit message linter written in Python: it checks your
commit messages for style.")
(license license:expat)))
(define-public hut
(package
(name "hut")
(version "0.2.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://git.sr.ht/~emersion/hut")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0ybngrwwmkm00dlkdhvkfcvcjhp5xzs8fh90zqr0h12ssqx9pll3"))))
(build-system go-build-system)
(arguments
(list
#:import-path "git.sr.ht/~emersion/hut"
#:phases
#~(modify-phases %standard-phases
(replace 'build
(lambda* (#:key import-path #:allow-other-keys)
(with-directory-excursion (string-append "src/" import-path)
;; The flags are copied from (guix build go-build-system).
(setenv "CGO_LDFLAGS" "-s -w")
(invoke "make" "all" "GOFLAGS=-v -x"))))
(replace 'install
(lambda* (#:key import-path #:allow-other-keys)
(with-directory-excursion (string-append "src/" import-path)
(invoke "make" "install"
(string-append "PREFIX=" #$output))))))))
(native-inputs
(list scdoc))
(inputs
(list go-git-sr-ht-emersion-go-scfg
go-git-sr-ht-emersion-gqlclient
go-github-com-juju-ansiterm
go-github-com-spf13-cobra
go-golang-org-x-oauth2
go-golang-org-x-term))
(home-page "https://git.sr.ht/~emersion/hut")
(synopsis "CLI tool for sr.ht")
(description "@command{hut} is a CLI tool for
@uref{https://sr.ht/~sircmpwn/sourcehut/, sr.ht}. It helps you interact with
sr.ht's public services:
@table @asis
@item builds
submit and manage build jobs
@item git
create, and manage git repositories and artifacts
@item hg
list Mercurial repositories
@item lists
manage mailing lists and patches
@item meta
manage PGP, and SSH keys
@item pages
publish and manage hosted websites
@item paste
create and manage pastes
@item todo
create and manage trackers, tickets
@item graphql
interact with GraphQL APIs directly
@end table")
(license license:agpl3)))

View file

@ -786,12 +786,18 @@ old-fashioned output methods with powerful ascii-art renderer.")
(sha256
(base32 "0ns9xh582c8kajw4v2x5ap5jfiba3gxywqc2klc0v6fc3id1gqii"))))
(build-system meson-build-system)
(arguments
(list
#:glib-or-gtk? #t
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'disable-postinstall-script
(lambda _
(setenv "DESTDIR" "/"))))))
(native-inputs
(list
desktop-file-utils ; for update-desktop-database
intltool
`(,glib "bin") ; for glib-compile-resources
`(,gtk "bin") ; for gtk-update-icon-cache
pkg-config
python-wrapper)) ; for generate-authors.py
(inputs
@ -1774,6 +1780,8 @@ audio/video codec library.")
(sha256
(base32
"14xadxm1yaamp216nq09xwasxg5g133v86dbb33mdg5di1zrlhdg"))))
(inputs (modify-inputs (package-inputs ffmpeg-5)
(replace "sdl2" sdl2-2.0)))
(arguments
(substitute-keyword-arguments (package-arguments ffmpeg-5)
((#:configure-flags flags ''())
@ -3387,7 +3395,7 @@ be used for realtime video capture via Linux-specific APIs.")
qtbase-5
qtsvg-5
qtx11extras
qtwayland
qtwayland-5
speexdsp
v4l-utils
wayland
@ -5287,6 +5295,12 @@ result in several formats:
(substitute* "Cargo.toml"
;; Allow using more recent versions of
(("~3.1.2") "~3"))))
(add-after 'configure 'force-rust-edition-2018
(lambda* (#:key vendor-dir #:allow-other-keys)
;; Force all the dependencies to not be higher than edition 2018.
(with-fluids ((%default-port-encoding #f))
(substitute* (find-files vendor-dir "Cargo.toml")
(("edition = \\\"2021\\\"") "edition = \"2018\"")))))
(replace 'build
(lambda* (#:key outputs #:allow-other-keys)
(let ((out (assoc-ref outputs "out")))

View file

@ -77,7 +77,7 @@
(define-public vim
(package
(name "vim")
(version "9.0.0594")
(version "9.0.0719")
(source (origin
(method git-fetch)
(uri (git-reference
@ -86,7 +86,7 @@
(file-name (git-file-name name version))
(sha256
(base32
"0rb1385pwz75z342b4915gp8212xipp38z9qlaxdqdy3x5m16lcp"))))
"1fmy2yf83w9429dp3hyx2l24mffjqmaxqcabdyyjcvmgx7zp3bii"))))
(build-system gnu-build-system)
(arguments
`(#:test-target "test"
@ -99,6 +99,7 @@
"src/testdir/test_filetype.vim"
"src/testdir/test_normal.vim"
"src/testdir/test_popupwin.vim"
"src/testdir/test_prompt_buffer.vim"
"src/testdir/test_shell.vim"
"src/testdir/test_suspend.vim"
"src/testdir/test_terminal.vim"
@ -125,6 +126,9 @@
;; actions. The path of the bash binary is shown, which results in
;; a difference being detected. Patching the expected result is
;; non-trivial due to the special format used, so skip the test.
(substitute* "src/testdir/test_messages.vim"
((".*Test_echo_verbose_system.*" line)
(string-append line "return\n")))
(substitute* "src/testdir/test_terminal.vim"
((".*Test_open_term_from_cmd.*" line)
(string-append line "return\n"))
@ -685,7 +689,7 @@ are detected, the user is notified.")))
(define-public neovim
(package
(name "neovim")
(version "0.7.2")
(version "0.8.0")
(source (origin
(method git-fetch)
(uri (git-reference
@ -694,7 +698,7 @@ are detected, the user is notified.")))
(file-name (git-file-name name version))
(sha256
(base32
"1jn4i4ral79ys06i50bimylm515sfh41z503gj50a74h1ylg0z4w"))))
"0hkd49wkxfi6k1xa92hdd4b9z356r32hbpr78z1cigcln1wr0z7j"))))
(build-system cmake-build-system)
(arguments
(list #:modules

View file

@ -25,6 +25,7 @@
(define-module (gnu packages vnc)
#:use-module (guix build-system cmake)
#:use-module (guix download)
#:use-module (guix gexp)
#:use-module (guix git-download)
#:use-module ((guix licenses) #:prefix license:)
#:use-module (guix gexp)
@ -207,61 +208,74 @@ and TLS encryption. This package installs only the VNC client, the
application which is needed to connect to VNC servers.")
(license license:gpl2))))
;; A VNC server is, in fact, an X server so it seems like a good idea
;; to build on the work already done for xorg-server package. This is
;; not entirely compatible with the recommendation in BUILDING.txt
;; where the client is built first, then the source code of the X
;; server is copied into a subdir of the build directory, patched with
;; VNC additions and then build and installed as Xvnc. The procedure
;; was turned around, where TigerVNC code is downloaded and built
;; inside the Guix X server build dir. Also, the VNC patching process
;; for the X server is automated in a straightforward manner.
(define %tigervnc-client-source (package-source tigervnc-client))
;; A VNC server is, in fact, an X server so it seems like a good idea to build
;; on the work already done for xorg-server package. This is not entirely
;; compatible with the recommendation in BUILDING.txt where the client is
;; built first, then the source code of the X server is copied into a subdir
;; of the build directory, patched with VNC additions and then build and
;; installed as Xvnc. The procedure was turned around, where TigerVNC code is
;; downloaded and built inside the Guix X server build dir. Also, the VNC
;; patching process for the X server is automated in a straightforward manner.
(define-public tigervnc-server
(package
(inherit xorg-server)
(name "tigervnc-server")
(version (package-version tigervnc-client))
(native-inputs
`(("tigervnc-src" ,(package-source tigervnc-client))
("autoconf" ,autoconf)
("automake" ,automake)
("libtool" ,libtool)
("gettext-minimal" ,gettext-minimal)
("font-util" ,font-util)
("cmake" ,cmake)
("perl" ,perl)
,@(package-native-inputs tigervnc-client)
,@(package-inputs tigervnc-client)
,@(package-native-inputs xorg-server)))
(inputs
(modify-inputs (package-inputs xorg-server)
(prepend perl coreutils xauth)))
(propagated-inputs
(modify-inputs (package-propagated-inputs xorg-server)
(prepend xauth)))
(source
(origin
(inherit (package-source xorg-server))
(modules '((guix build utils)))
(snippet
#~(begin
;; Copy the VNC extension into the xorg-server sources.
(copy-recursively #$(file-append %tigervnc-client-source
"/unix/xserver")
".")
;; Include a full copy of tigervnc-client sources, so that the
;; complete sources involved are available and can be edited during
;; the build.
(copy-recursively #$%tigervnc-client-source "tigervnc-client")
;; Adjust the VNC extension build system files so that it refers
;; to it.
(substitute* "hw/vnc/Makefile.am"
(("(TIGERVNC_SRCDIR=).*" _ head)
(string-append head "$(CURDIR)/../../tigervnc-client\n"))
(("(TIGERVNC_BUILDDIR=).*" _ head)
(string-append head
"$(CURDIR)/../../tigervnc-client/build\n")))
;; Ensure the Autotools build system gets re-bootstrapped.
(delete-file "configure")))
;; Patch the xorg-server build system so that it builds the VNC
;; extension.
(patches (cons (file-append %tigervnc-client-source
"/unix/xserver21.1.1.patch")
(origin-patches (package-source xorg-server))))
(file-name (string-append name "-" version ".tar.xz"))))
(arguments
(substitute-keyword-arguments
(package-arguments xorg-server)
((#:tests? #f #f)
#f)
((#:configure-flags flags)
`(append '("--with-pic" ; Taken from BUILDING.txt
"--without-dtrace"
"--disable-static"
"--disable-dri2"
"--disable-xinerama"
"--disable-xvfb"
"--disable-xnest"
"--disable-xorg"
"--disable-dmx"
"--disable-xwin"
"--disable-xephyr"
"--disable-kdrive"
;; "--disable-config-dbus" ; This was a warning.
"--disable-config-hal"
"--disable-config-udev"
"--disable-dri2"
;; "--enable-install-libxf86config" ; This, too, was a warning.
"--enable-glx")
(delete "--enable-xephyr" ,flags)))
#~(cons* "--with-pic" ; Taken from BUILDING.txt
"--without-dtrace"
"--disable-static"
"--disable-dri2"
"--disable-xinerama"
"--disable-xvfb"
"--disable-xnest"
"--disable-xorg"
"--disable-dmx"
"--disable-xwin"
"--disable-xephyr"
"--disable-kdrive"
"--disable-config-hal"
"--disable-config-udev"
"--disable-dri2"
"--enable-glx"
(delete "--enable-xephyr" #$flags)))
((#:modules modules)
`(append '((ice-9 ftw)
(ice-9 match)
@ -269,55 +283,91 @@ application which is needed to connect to VNC servers.")
(guix build gnu-build-system))
modules))
((#:phases phases)
`(modify-phases ,phases
(delete 'check) ;)
(add-after 'unpack 'copy-tvnc-xserver
(lambda _
(let*
((tvnc-src (assoc-ref %build-inputs "tigervnc-src"))
(tvnc-xserver (string-append tvnc-src "/unix/xserver")))
(copy-recursively tvnc-xserver "."))))
(add-after 'copy-tvnc-xserver 'patch-xserver
(lambda _
(invoke "patch" "-p1" "-i"
(string-append (assoc-ref %build-inputs "tigervnc-src")
"/unix/xserver21.1.1.patch"))
(invoke "autoreconf" "-fiv")))
(add-before 'build 'build-tigervnc
(lambda _
(let* ((out (assoc-ref %outputs "out"))
(tvnc-src (assoc-ref %build-inputs "tigervnc-src"))
(tvnc-build (string-append (getcwd) "/tigervnc-build")))
(mkdir-p tvnc-build)
(with-directory-excursion tvnc-build
(invoke "cmake" "-G" "Unix Makefiles"
(string-append "-DCMAKE_INSTALL_PREFIX=" out)
tvnc-src)
(invoke "make" "-j" (number->string (parallel-job-count)))))))
(replace 'build
(lambda _
(let* ((tvnc-src (assoc-ref %build-inputs "tigervnc-src"))
(tvnc-build (string-append (getcwd) "/tigervnc-build"))
(srcarg (string-append "TIGERVNC_SRCDIR=" tvnc-src))
(buildarg (string-append "TIGERVNC_BUILDDIR=" tvnc-build)))
(invoke "make" srcarg buildarg "-j"
(number->string (parallel-job-count))))))
(add-before 'install 'install-tigervnc-aux
(lambda _
(let* ((out (assoc-ref %outputs 'out))
(tvnc-src (assoc-ref %build-inputs "tigervnc-src"))
(tvnc-build (string-append (getcwd) "/tigervnc-build"))
(srcarg (string-append "TIGERVNC_SRCDIR=" tvnc-src))
(buildarg (string-append "TIGERVNC_BUILDDIR=" tvnc-build)))
(with-directory-excursion (string-append tvnc-build "/unix")
(invoke "make" srcarg buildarg "install")))))
(replace 'install
(lambda* _
(let* ((tvnc-src (assoc-ref %build-inputs "tigervnc-src"))
(tvnc-build (string-append (getcwd) "/tigervnc-build"))
(srcarg (string-append "TIGERVNC_SRCDIR=" tvnc-src))
(buildarg (string-append "TIGERVNC_BUILDDIR=" tvnc-build)))
(invoke "make" "install" srcarg buildarg))))))))
#~(modify-phases #$phases
(add-after 'unpack 'adjust-pam-config
(lambda _
(substitute* "tigervnc-client/unix/vncserver/tigervnc.pam"
(("pam_systemd.so")
"pam_elogind.so"))))
(add-after 'unpack 'patch-paths
(lambda* (#:key inputs #:allow-other-keys)
(substitute* "tigervnc-client/unix/vncserver/vncserver.in"
(("`mcookie`")
(format #f "`~a`" (search-input-file inputs "bin/mcookie")))
;; Adjust the places where the vncserver script looks for
;; X11 fonts.
(("'/usr/share/X11/fonts'" all)
(format #f "'~a', '~a', ~a"
"/run/current-system/profile/share/fonts/X11"
(string-append #$(this-package-input "font-alias")
"share/fonts/X11")
all))
;; Adjust the location used to locate of the .desktop files.
(("/usr/share/xsessions")
"/run/current-system/profile/share/xsessions")
;; Do not require a system-provided Xsession shell script,
;; as Guix System has none. This causes the foreach loop to
;; iterate an empty list (disabled).
(("\"/etc/X11/xinit/Xsession\", \"/etc/X11/Xsession\"")
"()")
(("if \\(not defined \\$Xsession)")
"if (0)")
(("@cmd, \\$Xsession,")
"@cmd,"))))
(add-before 'build 'build-tigervnc
(lambda* (#:key parallel-build? #:allow-other-keys)
(mkdir-p "tigervnc-client/build")
(with-directory-excursion "tigervnc-client/build"
(invoke "cmake" "-G" "Unix Makefiles"
(string-append "-DCMAKE_INSTALL_PREFIX=" #$output)
"..")
(invoke "make" "-j" (number->string (if parallel-build?
(parallel-job-count)
1))))))
(replace 'build
(lambda* (#:key parallel-build? #:allow-other-keys)
(invoke "make" "-j" (number->string (if parallel-build?
(parallel-job-count)
1)))))
(add-before 'install 'install-tigervnc-aux
(lambda _
(invoke "make" "-C" "tigervnc-client/build/unix" "install")))
(replace 'install
(lambda _
(invoke "make" "install")))
(add-after 'install 'wrap-vncserver
(lambda* (#:key inputs outputs #:allow-other-keys)
(wrap-script (search-input-file outputs "libexec/vncserver")
(list "PATH" 'prefix
(map (lambda (p)
(dirname (search-input-file inputs p)))
'("bin/uname"
"bin/xauth"
"bin/xinit"))))))))))
(native-inputs
(modify-inputs (append (package-native-inputs xorg-server)
(package-native-inputs tigervnc-client))
(append %tigervnc-client-source
autoconf
automake
libtool
gettext-minimal
font-util
cmake
perl)))
(inputs
(modify-inputs (append (package-inputs xorg-server)
(package-inputs tigervnc-client))
(prepend coreutils
font-alias
guile-3.0
perl
util-linux
xauth
xinit)))
(propagated-inputs
(modify-inputs (package-propagated-inputs xorg-server)
(prepend xauth)))
(description "TigerVNC is a client/server implementation of VNC (Virtual
Network Computing). It provides enough performance to run even 3D and video
applications. It also provides extensions for advanced authentication methods

View file

@ -58,6 +58,7 @@
;;; Copyright © 2022 cage <cage-dev@twistfold.it>
;;; Copyright © 2022 Pradana Aumars <paumars@courrier.dev>
;;; Copyright © 2022 Petr Hodina <phodina@protonmail.com>
;;; Copyright © 2022 jgart <jgart@dismail.de>
;;;
;;; This file is part of GNU Guix.
;;;
@ -8184,6 +8185,33 @@ provided by a TLS reverse proxy (e.g. tlstunnel, hitch or stunnel).")
;; to account for "vendor names".
(properties '((lint-hidden-cve . ("CVE-2019-15520")))))))
(define-public go-webring
(let ((commit "6786a27b0c57df75323217453369c83a4d9f4dea")
(revision "0"))
(package
(name "go-webring")
(version (git-version "20220426" revision commit))
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://git.sr.ht/~amolith/go-webring")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32
"1xra0mapdmda8n0z6zsgcqppdzvxc47p0fahsdyig5qmpk89ar8l"))))
(build-system go-build-system)
(arguments
(list #:import-path "git.sr.ht/~amolith/go-webring"
#:install-source? #f))
(inputs (list go-github-com-spf13-pflag))
(home-page "https://git.sr.ht/~amolith/go-webring")
(synopsis "Simple webring implementation")
(description
"@code{go--webring} provides a simple webring implementation as used by
the Fediring.")
(license (list license:cc0 license:bsd-2)))))
(define-public archivebox
(package
(name "archivebox")

View file

@ -283,14 +283,14 @@ propagated by default) such as @code{gst-plugins-good} and
(package
(inherit webkitgtk)
(name "webkitgtk")
(version "2.37.91") ;webkit2gtk5
(version "2.38.0") ;webkit2gtk5
(source (origin
(inherit (package-source webkitgtk))
(method url-fetch)
(uri (string-append "https://www.webkitgtk.org/releases/"
name "-" version ".tar.xz"))
(sha256
(base32 "0r2d1dbx6s8bad011dkmx7j34gcxlz9bs14pip1qn7n1rhgxb3qi"))))
(base32 "1g8gpi1scbmbcywkfjr2srxdq9r63s94d7v01fdk5qdnldsn7kpr"))))
(build-system cmake-build-system)
(arguments
(substitute-keyword-arguments (package-arguments webkitgtk)

View file

@ -57,6 +57,7 @@
;;; Copyright © 2022 muradm <mail@muradm.net>
;;; Copyright © 2022 Elais Player <elais@fastmail.com>
;;; Copyright © 2022 Trevor Richards <trev@trevdev.ca>
;;; Copyright © 2022 Fredrik Salomonsson <plattfot@posteo.net>
;;;
;;; This file is part of GNU Guix.
;;;
@ -1753,6 +1754,34 @@ display a clock or apply image manipulation techniques to the background image."
Wlroots based compositors.")
(license license:expat))) ; MIT license
(define-public waybar-cpu-histogram
(package
(name "waybar-cpu-histogram")
(version "0.4.2")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://git.sr.ht/~plattfot/waybar-cpu-histogram")
(commit (string-append version))))
(sha256
(base32
"001pyf1jdmf2478plnggd7dkfi688qwi89db2jwfp4zza3640na6"))
(file-name (git-file-name name version))))
(build-system meson-build-system)
(native-inputs
(list pkg-config))
(inputs
(list jsoncpp
fmt))
(synopsis "CPU histogram for waybar")
(description
"Custom module for waybar to show CPU usage as a histogram. A compact way
to see how many cores are active, compared to having a bar for each
core/thread.")
(home-page "https://github.com/plattfot/cpu-histogram/")
(license license:expat)))
(define-public wlr-randr
(package
(name "wlr-randr")

View file

@ -2437,7 +2437,7 @@ binary to setuid-binaries:
(define-public wl-clipboard
(package
(name "wl-clipboard")
(version "2.0.0")
(version "2.1.0")
(source
(origin
(method git-fetch)
@ -2446,20 +2446,25 @@ binary to setuid-binaries:
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0c4w87ipsw09aii34szj9p0xfy0m00wyjpll0gb0aqmwa60p0c5d"))))
(base32 "1g6hcsn4klapvz3bw0k8syixwyyi4cl1c7vbc6f1a2hjpcf4pawn"))))
(build-system meson-build-system)
(arguments
`(#:phases
(modify-phases %standard-phases
(add-after 'unpack 'patch-file-names
(lambda* (#:key inputs #:allow-other-keys)
(substitute* (find-files "src" "\\.c$")
(("\"(cat|rm)\"" _ command)
(string-append "\"" (assoc-ref inputs "coreutils")
"/bin/" command "\""))
(("\"xdg-mime\"")
(string-append "\"" (assoc-ref inputs "xdg-utils")
"/bin/xdg-mime\""))))))))
(list #:configure-flags
#~(list (string-append "-Dzshcompletiondir=" #$output
"/share/zsh/site-functions")
(string-append "-Dfishcompletiondir=" #$output
"/share/fish/completions"))
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'patch-file-names
(lambda* (#:key inputs #:allow-other-keys)
(substitute* (find-files "src" "\\.c$")
(("\"(cat|rm)\"" _ command)
(string-append "\"" (assoc-ref inputs "coreutils")
"/bin/" command "\""))
(("\"xdg-mime\"")
(string-append "\"" (assoc-ref inputs "xdg-utils")
"/bin/xdg-mime\""))))))))
(native-inputs
(list pkg-config))
(inputs

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