Merge remote-tracking branch 'origin/master' into core-updates

This commit is contained in:
Mathieu Othacehe 2020-08-26 18:35:14 +02:00
commit 17dddeeee5
No known key found for this signature in database
GPG Key ID: 8354763531769CA6
359 changed files with 106084 additions and 8179 deletions

View File

@ -40,6 +40,7 @@
(eval . (put 'with-writable-file 'scheme-indent-function 1))
(eval . (put 'package 'scheme-indent-function 0))
(eval . (put 'package/inherit 'scheme-indent-function 1))
(eval . (put 'origin 'scheme-indent-function 0))
(eval . (put 'build-system 'scheme-indent-function 0))
(eval . (put 'bag 'scheme-indent-function 0))

View File

@ -109,8 +109,6 @@ MODULES = \
guix/cache.scm \
guix/cve.scm \
guix/workers.scm \
guix/zlib.scm \
guix/lzlib.scm \
guix/build-system.scm \
guix/build-system/android-ndk.scm \
guix/build-system/ant.scm \
@ -333,6 +331,14 @@ dist_noinst_DATA = \
AUX_FILES = \
gnu/packages/aux-files/chromium/master-preferences.json \
gnu/packages/aux-files/emacs/guix-emacs.el \
gnu/packages/aux-files/linux-libre/5.8-arm.conf \
gnu/packages/aux-files/linux-libre/5.8-arm64.conf \
gnu/packages/aux-files/linux-libre/5.8-i686.conf \
gnu/packages/aux-files/linux-libre/5.8-x86_64.conf \
gnu/packages/aux-files/linux-libre/5.7-arm.conf \
gnu/packages/aux-files/linux-libre/5.7-arm64.conf \
gnu/packages/aux-files/linux-libre/5.7-i686.conf \
gnu/packages/aux-files/linux-libre/5.7-x86_64.conf \
gnu/packages/aux-files/linux-libre/5.4-arm.conf \
gnu/packages/aux-files/linux-libre/5.4-arm64.conf \
gnu/packages/aux-files/linux-libre/5.4-i686.conf \
@ -423,11 +429,11 @@ SCM_TESTS = \
tests/import-utils.scm \
tests/inferior.scm \
tests/lint.scm \
tests/lzlib.scm \
tests/modules.scm \
tests/monads.scm \
tests/nar.scm \
tests/networking.scm \
tests/offload.scm \
tests/opam.scm \
tests/openpgp.scm \
tests/packages.scm \
@ -462,8 +468,7 @@ SCM_TESTS = \
tests/upstream.scm \
tests/utils.scm \
tests/uuid.scm \
tests/workers.scm \
tests/zlib.scm
tests/workers.scm
SH_TESTS = \
tests/guix-build.sh \
@ -649,11 +654,10 @@ commit_v1_0_0 = 6298c3ffd9654d3231a6f25390b056483e8f407c
channel_intro_commit = 9edb3f66fd807b096b48283debdcddccfea34bad
channel_intro_signer = BBB0 2DDF 2CEA F6A8 0D1D E643 A2A0 6DF2 A33A 54FA
# Authenticate the current Git checkout by checking signatures on every commit
# starting from $(commit_v1_0_0).
authenticate: guix/openpgp.go guix/git-authenticate.go guix/git.go
# Authenticate the current Git checkout by checking signatures on every commit.
authenticate:
$(AM_V_at)echo "Authenticating Git checkout..." ; \
"$(top_builddir)/pre-inst-env" guix git authenticate \
guix git authenticate \
--cache-key=channels/guix --stats \
"$(channel_intro_commit)" "$(channel_intro_signer)"

View File

@ -71,7 +71,7 @@
(variables rest ...))))))
(variables %localstatedir %storedir %sysconfdir %system)))
(define* (make-config.scm #:key zlib gzip xz bzip2
(define* (make-config.scm #:key gzip xz bzip2
(package-name "GNU Guix")
(package-version "0")
(bug-report-address "bug-guix@gnu.org")
@ -133,11 +133,7 @@
(define %bzip2
#+(and bzip2 (file-append bzip2 "/bin/bzip2")))
(define %xz
#+(and xz (file-append xz "/bin/xz")))
(define %libz
#+(and zlib
(file-append zlib "/lib/libz")))))))
#+(and xz (file-append xz "/bin/xz")))))))
;;;

View File

@ -141,6 +141,18 @@ if test "x$guix_cv_have_recent_guile_gcrypt" != "xyes"; then
AC_MSG_ERROR([A recent Guile-Gcrypt could not be found; please install it.])
fi
dnl Check for Guile-zlib.
GUILE_MODULE_AVAILABLE([have_guile_zlib], [(zlib)])
if test "x$have_guile_zlib" != "xyes"; then
AC_MSG_ERROR([Guile-zlib is missing; please install it.])
fi
dnl Check for Guile-lzlib.
GUILE_MODULE_AVAILABLE([have_guile_lzlib], [(lzlib)])
if test "x$have_guile_lzlib" != "xyes"; then
AC_MSG_ERROR([Guile-lzlib is missing; please install it.])
fi
dnl Guile-newt is used by the graphical installer.
GUILE_MODULE_AVAILABLE([have_guile_newt], [(newt)])
@ -245,27 +257,6 @@ esac
AC_SUBST([LIBGCRYPT_PREFIX])
AC_SUBST([LIBGCRYPT_LIBDIR])
dnl Library name of zlib suitable for 'dynamic-link'.
GUIX_LIBZ_LIBDIR([libz_libdir])
if test "x$libz_libdir" = "x"; then
LIBZ="libz"
else
LIBZ="$libz_libdir/libz"
fi
AC_MSG_CHECKING([for zlib's shared library name])
AC_MSG_RESULT([$LIBZ])
AC_SUBST([LIBZ])
dnl Library name of lzlib suitable for 'dynamic-link'.
GUIX_LIBLZ_FILE_NAME([LIBLZ])
if test "x$LIBLZ" = "x"; then
LIBLZ="liblz"
else
# Strip the .so or .so.1 extension since that's what 'dynamic-link' expects.
LIBLZ="`echo $LIBLZ | sed -es'/\.so\(\.[[0-9.]]\+\)\?//g'`"
fi
AC_SUBST([LIBLZ])
dnl Check for Guile-SSH, for the (guix ssh) module.
GUIX_CHECK_GUILE_SSH
AM_CONDITIONAL([HAVE_GUILE_SSH],

View File

@ -64,6 +64,7 @@ Translation Project}.
* Packaging:: Packaging tutorials
* System Configuration:: Customizing the GNU System
* Advanced package management:: Power to the users!
* Environment management:: Control environment
* Acknowledgments:: Thanks!
* GNU Free Documentation License:: The license of this document.
@ -2268,6 +2269,130 @@ mkdir -p "$GUIX_EXTRA_PROFILES/my-project"
It's safe to delete the Guix channel profile you've just installed with the
channel specification, the project profile does not depend on it.
@c *********************************************************************
@node Environment management
@chapter Environment management
Guix provides multiple tools to manage environment. This chapter
demonstrate such utilities.
@menu
* Guix environment via direnv:: Setup Guix environment with direnv
@end menu
@node Guix environment via direnv
@section Guix environment via direnv
Guix provides a @samp{direnv} package, which could extend shell after
directory change. This tool could be used to prepare a pure Guix
environment.
The following example provides a shell function for @file{~/.direnvrc}
file, which could be used from Guix Git repository in
@file{~/src/guix/.envrc} file to setup a build environment similar to
described in @pxref{Building from Git,,, guix, GNU Guix Reference
Manual}.
Create a @file{~/.direnvrc} with a Bash code:
@example
# Thanks <https://github.com/direnv/direnv/issues/73#issuecomment-152284914>
export_function()
@{
local name=$1
local alias_dir=$PWD/.direnv/aliases
mkdir -p "$alias_dir"
PATH_add "$alias_dir"
local target="$alias_dir/$name"
if declare -f "$name" >/dev/null; then
echo "#!$SHELL" > "$target"
declare -f "$name" >> "$target" 2>/dev/null
# Notice that we add shell variables to the function trigger.
echo "$name \$*" >> "$target"
chmod +x "$target"
fi
@}
use_guix()
@{
# Set GitHub token.
export GUIX_GITHUB_TOKEN="xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx"
# Unset 'GUIX_PACKAGE_PATH'.
export GUIX_PACKAGE_PATH=""
# Recreate a garbage collector root.
gcroots="$HOME/.config/guix/gcroots"
mkdir -p "$gcroots"
gcroot="$gcroots/guix"
if [ -L "$gcroot" ]
then
rm -v "$gcroot"
fi
# Miscellaneous packages.
PACKAGES_MAINTENANCE=(
direnv
git
git:send-email
git-cal
gnupg
guile-colorized
guile-readline
less
ncurses
openssh
xdot
)
# Environment packages.
PACKAGES=(help2man guile-sqlite3 guile-gcrypt)
# Thanks <https://lists.gnu.org/archive/html/guix-devel/2016-09/msg00859.html>
eval "$(guix environment --search-paths --root="$gcroot" --pure guix --ad-hoc $@{PACKAGES[@@]@} $@{PACKAGES_MAINTENANCE[@@]@} "$@@")"
# Predefine configure flags.
configure()
@{
./configure --localstatedir=/var --prefix=
@}
export_function configure
# Run make and optionally build something.
build()
@{
make -j 2
if [ $# -gt 0 ]
then
./pre-inst-env guix build "$@@"
fi
@}
export_function build
# Predefine push Git command.
push()
@{
git push --set-upstream origin
@}
export_function push
clear # Clean up the screen.
git-cal --author='Your Name' # Show contributions calendar.
# Show commands help.
echo "
build build a package or just a project if no argument provided
configure run ./configure with predefined parameters
push push to upstream Git repository
"
@}
@end example
Every project containing @file{.envrc} with a string @code{use guix}
will have predefined environment variables and procedures.
Run @command{direnv allow} to setup the environment for the first time.
@c *********************************************************************
@node Acknowledgments
@chapter Acknowledgments

View File

@ -778,12 +778,13 @@ Guile,, gnutls-guile, GnuTLS-Guile});
@item
@uref{https://notabug.org/guile-sqlite3/guile-sqlite3, Guile-SQLite3}, version 0.1.0
or later;
@item @uref{https://notabug.org/guile-zlib/guile-zlib, Guile-zlib};
@item @uref{https://notabug.org/guile-lzlib/guile-lzlib, Guile-lzlib};
@item
@c FIXME: Specify a version number once a release has been made.
@uref{https://gitlab.com/guile-git/guile-git, Guile-Git}, from August
2017 or later;
@item @uref{https://savannah.nongnu.org/projects/guile-json/, Guile-JSON} 3.x;
@item @url{https://zlib.net, zlib};
@item @url{https://www.gnu.org/software/make/, GNU Make}.
@end itemize
@ -1042,29 +1043,31 @@ When desired, the build daemon can @dfn{offload} derivation builds to
other machines running Guix, using the @code{offload} @dfn{build
hook}@footnote{This feature is available only when
@uref{https://github.com/artyom-poptsov/guile-ssh, Guile-SSH} is
present.}. When that
feature is enabled, a list of user-specified build machines is read from
@file{/etc/guix/machines.scm}; every time a build is requested, for
instance via @code{guix build}, the daemon attempts to offload it to one
of the machines that satisfy the constraints of the derivation, in
particular its system type---e.g., @file{x86_64-linux}. Missing
prerequisites for the build are copied over SSH to the target machine,
which then proceeds with the build; upon success the output(s) of the
build are copied back to the initial machine.
present.}. When that feature is enabled, a list of user-specified build
machines is read from @file{/etc/guix/machines.scm}; every time a build
is requested, for instance via @code{guix build}, the daemon attempts to
offload it to one of the machines that satisfy the constraints of the
derivation, in particular its system types---e.g., @code{x86_64-linux}.
A single machine can have multiple system types, either because its
architecture natively supports it, via emulation (@pxref{Transparent
Emulation with QEMU}), or both. Missing prerequisites for the build are
copied over SSH to the target machine, which then proceeds with the
build; upon success the output(s) of the build are copied back to the
initial machine.
The @file{/etc/guix/machines.scm} file typically looks like this:
@lisp
(list (build-machine
(name "eightysix.example.org")
(system "x86_64-linux")
(systems (list "x86_64-linux" "i686-linux"))
(host-key "ssh-ed25519 AAAAC3Nza@dots{}")
(user "bob")
(speed 2.)) ;incredibly fast!
(build-machine
(name "armeight.example.org")
(system "aarch64-linux")
(systems (list "aarch64-linux"))
(host-key "ssh-rsa AAAAB3Nza@dots{}")
(user "alice")
(private-key
@ -1074,8 +1077,8 @@ The @file{/etc/guix/machines.scm} file typically looks like this:
@noindent
In the example above we specify a list of two build machines, one for
the @code{x86_64} architecture and one for the @code{aarch64}
architecture.
the @code{x86_64} and @code{i686} architectures and one for the
@code{aarch64} architecture.
In fact, this file is---not surprisingly!---a Scheme file that is
evaluated when the @code{offload} hook is started. Its return value
@ -1095,8 +1098,9 @@ builds. The important fields are:
@item name
The host name of the remote machine.
@item system
The system type of the remote machine---e.g., @code{"x86_64-linux"}.
@item systems
The system types the remote machine supports---e.g., @code{(list
"x86_64-linux" "i686-linux")}.
@item user
The user account to use when connecting to the remote machine over SSH.
@ -4245,10 +4249,28 @@ time-machine}, the command looks up the introductory commit and verifies
that it is signed by the specified OpenPGP key. From then on, it
authenticates commits according to the rule above.
To summarize, as the author of a channel, there are two things you have
Additionally, your channel must provide all the OpenPGP keys that were
ever mentioned in @file{.guix-authorizations}, stored as @file{.key}
files, which can be either binary or ``ASCII-armored''. By default,
those @file{.key} files are searched for in the branch named
@code{keyring} but you can specify a different branch name in
@code{.guix-channel} like so:
@lisp
(channel
(version 0)
(keyring-reference "my-keyring-branch"))
@end lisp
To summarize, as the author of a channel, there are three things you have
to do to allow users to authenticate your code:
@enumerate
@item
Export the OpenPGP keys of past and present committers with @command{gpg
--export} and store them in @file{.key} files, by default in a branch
named @code{keyring} (we recommend making it an @dfn{orphan branch}).
@item
Introduce an initial @file{.guix-authorizations} in the channel's
repository. Do that in a signed commit (@pxref{Commit Access}, for
@ -4340,6 +4362,12 @@ something like this:
(body (en "Don't miss the @@code@{hello@} package!"))))
@end lisp
While the news file is using the Scheme syntax, avoid naming it with a
@file{.scm} extension or else it will get picked up when building the
channel and yield an error since it is not a valid module.
Alternatively, you can move the channel module to a subdirectory and
store the news file in another directory.
The file consists of a list of @dfn{news entries}. Each entry is
associated with a commit or tag: it describes changes made in this
commit, possibly in preceding commits as well. Users see entries only
@ -4358,7 +4386,7 @@ you write news entries in English first, the command below creates a PO
file containing the strings to translate:
@example
xgettext -o news.po -l scheme -ken etc/news.scm
xgettext -o news.po -l scheme -ken etc/news.txt
@end example
To sum up, yes, you could use your channel as a blog. But beware, this
@ -4379,7 +4407,7 @@ say, on another machine, by providing a channel specification in
(list (channel
(name 'guix)
(url "https://git.savannah.gnu.org/git/guix.git")
(commit "d894ab8e9bfabcefa6c49d9ba2e834dd5a73a300"))
(commit "6298c3ffd9654d3231a6f25390b056483e8f407c"))
(channel
(name 'my-personal-packages)
(url "https://example.org/personal-packages.git")
@ -11927,7 +11955,7 @@ If the @code{users} list lacks a user account with UID@tie{}0, a
``root'' account with UID@tie{}0 is automatically added.
@item @code{skeletons} (default: @code{(default-skeletons)})
A list target file name/file-like object tuples (@pxref{G-Expressions,
A list of target file name/file-like object tuples (@pxref{G-Expressions,
file-like objects}). These are the skeleton files that will be added to
the home directory of newly-created user accounts.
@ -11945,8 +11973,15 @@ A string denoting the contents of the @file{/etc/issue} file, which is
displayed when users log in on a text console.
@item @code{packages} (default: @code{%base-packages})
The set of packages installed in the global profile, which is accessible
at @file{/run/current-system/profile}.
A list of packages to be installed in the global profile, which is accessible
at @file{/run/current-system/profile}. Each element is either a package
variable or a package/output tuple. Here's a simple example of both:
@lisp
(cons* git ; the default "out" output
(list git "send-email") ; another output of git
%base-packages) ; the default set
@end lisp
The default set includes core utilities and it is good practice to
install non-core utilities in user profiles (@pxref{Invoking guix
@ -12148,6 +12183,12 @@ errors before being mounted.
@item @code{create-mount-point?} (default: @code{#f})
When true, the mount point is created if it does not exist yet.
@item @code{mount-may-fail?} (default: @code{#f})
When true, this indicates that mounting this file system can fail but
that should not be considered an error. This is useful in unusual
cases; an example of this is @code{efivarfs}, a file system that can
only be mounted on EFI/UEFI systems.
@item @code{dependencies} (default: @code{'()})
This is a list of @code{<file-system>} or @code{<mapped-device>} objects
representing file systems that must be mounted or mapped devices that
@ -12915,6 +12956,7 @@ declaration.
* Scheduled Job Execution:: The mcron service.
* Log Rotation:: The rottlog service.
* Networking Services:: Network setup, SSH daemon, etc.
* Unattended Upgrades:: Automated system upgrades.
* X Window:: Graphical display.
* Printing Services:: Local and remote printer support.
* Desktop Services:: D-Bus and desktop services.
@ -15131,7 +15173,7 @@ a positive integer, ports @var{n} and @var{n}+1 are used for
monitoring the connection, such that port @var{n} is the base
monitoring port and @code{n+1} is the echo port. When set to
@code{"@var{n}:@var{m}"} where @var{n} and @var{m} are positive
integers, the ports @var{n} and @var{n}+1 are used for monitoring the
integers, the ports @var{n} and @var{m} are used for monitoring the
connection, such that port @var{n} is the base monitoring port and
@var{m} is the echo port.
@ -15287,6 +15329,140 @@ Use this to add additional options and manage shared secrets out-of-band.
@end table
@end deftp
@node Unattended Upgrades
@subsection Unattended Upgrades
@cindex unattended upgrades
@cindex upgrades, unattended
Guix provides a service to perform @emph{unattended upgrades}:
periodically, the system automatically reconfigures itself from the
latest Guix. Guix System has several properties that make unattended
upgrades safe:
@itemize
@item
upgrades are transactional (either the upgrade succeeds or it fails, but
you cannot end up with an ``in-between'' system state);
@item
the upgrade log is kept---you can view it with @command{guix system
list-generations}---and you can roll back to any previous generation,
should the upgraded system fail to behave as intended;
@item
channel code is authenticated so you know you can only run genuine code
(@pxref{Channels});
@item
@command{guix system reconfigure} prevents downgrades, which makes it
immune to @dfn{downgrade attacks}.
@end itemize
To set up unattended upgrades, add an instance of
@code{unattended-upgrade-service-type} like the one below to the list of
your operating system services:
@lisp
(service unattended-upgrade-service-type)
@end lisp
The defaults above set up weekly upgrades: every Sunday at midnight.
You do not need to provide the operating system configuration file: it
uses @file{/run/current-system/configuration.scm}, which ensures it
always uses your latest configuration---@pxref{provenance-service-type},
for more information about this file.
There are several things that can be configured, in particular the
periodicity and services (daemons) to be restarted upon completion.
When the upgrade is successful, the service takes care of deleting
system generations older that some threshold, as per @command{guix
system delete-generations}. See the reference below for details.
To ensure that upgrades are actually happening, you can run
@command{guix system describe}. To investigate upgrade failures, visit
the unattended upgrade log file (see below).
@defvr {Scheme Variable} unattended-upgrade-service-type
This is the service type for unattended upgrades. It sets up an mcron
job (@pxref{Scheduled Job Execution}) that runs @command{guix system
reconfigure} from the latest version of the specified channels.
Its value must be a @code{unattended-upgrade-configuration} record (see
below).
@end defvr
@deftp {Data Type} unattended-upgrade-configuration
This data type represents the configuration of the unattended upgrade
service. The following fields are available:
@table @asis
@item @code{schedule} (default: @code{"30 01 * * 0"})
This is the schedule of upgrades, expressed as a gexp containing an
mcron job schedule (@pxref{Guile Syntax, mcron job specifications,,
mcron, GNU@tie{}mcron}).
@item @code{channels} (default: @code{#~%default-channels})
This gexp specifies the channels to use for the upgrade
(@pxref{Channels}). By default, the tip of the official @code{guix}
channel is used.
@item @code{operating-system-file} (default: @code{"/run/current-system/configuration.scm"})
This field specifies the operating system configuration file to use.
The default is to reuse the config file of the current configuration.
There are cases, though, where referring to
@file{/run/current-system/configuration.scm} is not enough, for instance
because that file refers to extra files (SSH public keys, extra
configuration files, etc.) @i{via} @code{local-file} and similar
constructs. For those cases, we recommend something along these lines:
@lisp
(unattended-upgrade-configuration
(operating-system-file
(file-append (local-file "." "config-dir" #:recursive? #t)
"/config.scm")))
@end lisp
The effect here is to import all of the current directory into the
store, and to refer to @file{config.scm} within that directory.
Therefore, uses of @code{local-file} within @file{config.scm} will work
as expected. @xref{G-Expressions}, for information about
@code{local-file} and @code{file-append}.
@item @code{services-to-restart} (default: @code{'(mcron)})
This field specifies the Shepherd services to restart when the upgrade
completes.
Those services are restarted right away upon completion, as with
@command{herd restart}, which ensures that the latest version is
running---remember that by default @command{guix system reconfigure}
only restarts services that are not currently running, which is
conservative: it minimizes disruption but leaves outdated services
running.
By default, the @code{mcron} service is restarted. This ensures that
the latest version of the unattended upgrade job will be used next time.
@item @code{system-expiration} (default: @code{(* 3 30 24 3600)})
This is the expiration time in seconds for system generations. System
generations older that this amount of time are deleted with
@command{guix system delete-generations} when an upgrade completes.
@quotation Note
The unattended upgrade service does not run the garbage collector. You
will probably want to set up your own mcron job to run @command{guix gc}
periodically.
@end quotation
@item @code{maximum-duration} (default: @code{3600})
Maximum duration in seconds for the upgrade; past that time, the upgrade
aborts.
This is primarily useful to ensure the upgrade does not end up
rebuilding or re-downloading ``the world''.
@item @code{log-file} (default: @code{"/var/log/unattended-upgrade.log"})
File where unattended upgrades are logged.
@end table
@end deftp
@node X Window
@subsection X Window
@ -17131,6 +17307,24 @@ The PostgreSQL daemon loads its runtime configuration from @var{config-file},
creates a database cluster with @var{locale} as the default
locale, stored in @var{data-directory}. It then listens on @var{port}.
If the services fails to start, it may be due to an incompatible
cluster already present in @var{data-directory}. Adjust it (or, if you
don't need the cluster anymore, delete @var{data-directory}), then
restart the service.
Peer authentication is used by default and the @code{postgres} user
account has no shell, which prevents the direct execution of @code{psql}
commands as this user. To use @code{psql}, you can temporarily log in
as @code{postgres} using a shell, create a PostgreSQL superuser with the
same name as one of the system users and then create the associated
database.
@example
sudo -u postgres -s /bin/sh
createuser --interactive
createdb $MY_USER_LOGIN # Replace appropriately.
@end example
@cindex postgresql extension-packages
Additional extensions are loaded from packages listed in
@var{extension-packages}. Extensions are available at runtime. For instance,
@ -23497,17 +23691,17 @@ source is detected. More information can be found at
@uref{https://linrunner.de/en/tlp/tlp.html, TLP home page}.
@deffn {Scheme Variable} tlp-service-type
The service type for the TLP tool. Its value should be a valid
TLP configuration (see below). To use the default settings, simply
write:
The service type for the TLP tool. The default settings are optimised
for battery life on most systems, but you can tweak them to your heart's
content by adding a valid @code{tlp-configuration}:
@lisp
(service tlp-service-type)
(service tlp-service-type
(tlp-configuration
(cpu-scaling-governor-on-ac (list "performance"))
(sched-powersave-on-bat? #t)))
@end lisp
@end deffn
By default TLP does not need much configuration but most TLP parameters
can be tweaked using @code{tlp-configuration}.
Each parameter definition is preceded by its type; for example,
@samp{boolean foo} indicates that the @code{foo} parameter
should be specified as a boolean. Types starting with
@ -24841,7 +25035,7 @@ Maximum number of backup files to keep.
Defaults to @samp{3}
@end deftypevr
@node Transparent Emulation with QEMU
@subsubheading Transparent Emulation with QEMU
@cindex emulation
@ -25444,7 +25638,7 @@ When true, the daemon performs additional logging for debugging purposes.
@defvr {Scheme Variable} ganeti-luxid-service-type
@command{ganeti-luxid} is a daemon used to answer queries related to the
configuration and the current live state of a Ganeti cluster. Additionally,
it is the authorative daemon for the Ganeti job queue. Jobs can be
it is the authoritative daemon for the Ganeti job queue. Jobs can be
submitted via this daemon and it schedules and starts them.
It takes a @code{ganeti-luxid-configuration} object.
@ -27136,6 +27330,51 @@ parameters, can be done as follow:
@end lisp
@end deffn
@cindex zram
@cindex compressed swap
@cindex Compressed RAM-based block devices
@subsubheading Zram Device Service
The Zram device service provides a compressed swap device in system
memory. The Linux Kernel documentation has more information about
@uref{https://www.kernel.org/doc/html/latest/admin-guide/blockdev/zram.html,zram}
devices.
@deffn {Scheme Variable} zram-device-service-type
This service creates the zram block device, formats it as swap and
enables it as a swap device. The service's value is a
@code{zram-device-configuration} record.
@deftp {Data Type} zram-device-configuration
This is the data type representing the configuration for the zram-device
service.
@table @asis
@item @code{size} (default @var{"1G"})
This is the amount of space you wish to provide for the zram device. It
accepts a string and can be a number of bytes or use a suffix, eg.:
@var{"512M"} or @var{1024000}.
@item @code{compression-algorithm} (default @var{'lzo})
This is the compression algorithm you wish to use. It is difficult to
list all the possible compression options, but common ones supported by
Guix's Linux Libre Kernel include @var{'lzo}, @var{'lz4} and @var{'zstd}.
@item @code{memory-limit} (default @var{0})
This is the maximum amount of memory which the zram device can use.
Setting it to '0' disables the limit. While it is generally expected
that compression will be 2:1, it is possible that uncompressable data
can be written to swap and this is a method to limit how much memory can
be used. It accepts a string and can be a number of bytes or use a
suffix, eg.: @var{"2G"}.
@item @code{priority} (default @var{-1})
This is the priority of the swap device created from the zram device.
@code{swapon} accepts values between -1 and 32767, with higher values
indicating higher priority. Higher priority swap will generally be used
first.
@end table
@end deftp
@end deffn
@node Hurd Services
@subsection Hurd Services
@ -27455,6 +27694,9 @@ Enable or disable the use of the Docker user-land networking proxy.
@item @code{debug?} (default @code{#f})
Enable or disable debug output.
@item @code{enable-iptables?} (default @code{#t})
Enable or disable the addition of iptables rules.
@end table
@end deftp
@ -27489,10 +27731,12 @@ Network access
@command{auditctl} from the @code{audit} package can be used in order
to add or remove events to be tracked (until the next reboot).
In order to permanently track events, put the command line arguments
of auditctl into @file{/etc/audit/audit.rules}.
of auditctl into a file called @code{audit.rules} in the configuration
directory (see below).
@command{aureport} from the @code{audit} package can be used in order
to view a report of all recorded events.
The audit daemon usually logs into the directory @file{/var/log/audit}.
The audit daemon by default logs into the file
@file{/var/log/audit.log}.
@end defvr
@ -27504,6 +27748,11 @@ This is the data type representing the configuration of auditd.
@item @code{audit} (default: @code{audit})
The audit package to use.
@item @code{configuration-directory} (default: @code{%default-auditd-configuration-directory})
The directory containing the configuration file for the audit package, which
must be named @code{auditd.conf}, and optionally some audit rules to
instantiate on startup.
@end table
@end deftp
@ -27626,6 +27875,9 @@ This is a list of strings or objects appended to the
This is a list of strings or objects appended to the configuration file.
It is used to pass extra text to be added verbatim to the configuration
file.
@item @code{extra-options} (default: @code{'()})
Extra command line options for @code{nix-service-type}.
@end table
@end deftp
@ -29019,6 +29271,16 @@ When @code{host-key} is @code{#f}, the server is authenticated against
the @file{~/.ssh/known_hosts} file, just like the OpenSSH @command{ssh}
client does.
@item @code{allow-downgrades?} (default: @code{#f})
Whether to allow potential downgrades.
Like @command{guix system reconfigure}, @command{guix deploy} compares
the channel commits currently deployed on the remote host (as returned
by @command{guix system describe}) to those currently in use (as
returned by @command{guix describe}) to determine whether commits
currently in use are descendants of those deployed. When this is not
the case and @code{allow-downgrades?} is false, it raises an error.
This ensures you do not accidentally downgrade remote machines.
@end table
@end deftp
@ -29604,6 +29866,7 @@ extend it by passing it lists of packages to add to the system profile.
@end defvr
@cindex provenance tracking, of the operating system
@anchor{provenance-service-type}
@defvr {Scheme Variable} provenance-service-type
This is the type of the service that records @dfn{provenance meta-data}
in the system itself. It creates several files under

View File

@ -4,6 +4,7 @@
;; Copyright © 2017 Alex Kost <alezost@gmail.com>
;; Copyright © 2017 Ludovic Courtès <ludo@gnu.org>
;; Copyright © 2020 Maxim Cournoyer <maxim.cournoyer@gmail.com>
;; Copyright © 2020 Tobias Geerinckx-Rice <me@tobias.gr>
;; This file is part of GNU Guix.
@ -93,7 +94,7 @@
;; Indent the definition of PACKAGE-NAME in FILE-NAME.
(find-file file-name)
(goto-char (point-min))
(if (re-search-forward (concat "^(define\\(-public\\) +"
(if (re-search-forward (concat "^(define\\(\\|-public\\) +"
package-name)
nil t)
(let ((indent-tabs-mode nil))

10
gnu.scm
View File

@ -1,5 +1,5 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2014, 2015, 2016, 2017, 2019 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2014, 2015, 2016, 2017, 2019, 2020 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2015 Joshua S. Grant <jgrant@parenthetical.io>
;;; Copyright © 2017 Mathieu Othacehe <m.othacehe@gmail.com>
;;;
@ -20,7 +20,7 @@
(define-module (gnu)
#:use-module (guix i18n)
#:use-module (guix utils)
#:use-module (guix diagnostics)
#:use-module (srfi srfi-34)
#:use-module (srfi srfi-35)
#:use-module (ice-9 match)
@ -78,10 +78,8 @@
(raise
(apply
make-compound-condition
(condition
(&message
(message (format #f (G_ "module ~a not found")
module))))
(formatted-message (G_ "module ~a not found")
module)
(condition
(&error-location (location location)))
(or (and=> (make-hint module) list)

View File

@ -476,6 +476,42 @@ not valid header was found."
(let ((uuid (sub-bytevector header 168 36)))
(string->uuid (utf8->string uuid))))
;;;
;;; NTFS file systems.
;;;
;; Taken from <linux-libre>/fs/ntfs/layout.h
(define-syntax %ntfs-endianness
;; Endianness of NTFS file systems.
(identifier-syntax (endianness little)))
(define (ntfs-superblock? sblock)
"Return #t when SBLOCK is a NTFS superblock."
(bytevector=? (sub-bytevector sblock 3 8)
(string->utf8 "NTFS ")))
(define (read-ntfs-superblock device)
"Return the raw contents of DEVICE's NTFS superblock as a bytevector, or #f
if DEVICE does not contain a NTFS file system."
(read-superblock device 0 511 ntfs-superblock?))
(define (ntfs-superblock-uuid sblock)
"Return the UUID of NTFS superblock SBLOCK as a 8-byte bytevector."
(sub-bytevector sblock 72 8))
;; TODO: Add ntfs-superblock-volume-name. The partition label is not stored
;; in the BOOT SECTOR like the UUID, but in the MASTER FILE TABLE, which seems
;; way harder to access.
(define (check-ntfs-file-system device)
"Return the health of a NTFS file system on DEVICE."
(match (status:exit-val
(system* "ntfsfix" device))
(0 'pass)
(_ 'fatal-error)))
;;;
;;; Partition lookup.
@ -585,7 +621,9 @@ partition field reader that returned a value."
(partition-field-reader read-jfs-superblock
jfs-superblock-uuid)
(partition-field-reader read-f2fs-superblock
f2fs-superblock-uuid)))
f2fs-superblock-uuid)
(partition-field-reader read-ntfs-superblock
ntfs-superblock-uuid)))
(define read-partition-label
(cut read-partition-field <> %partition-label-readers))
@ -684,6 +722,7 @@ were found."
((string-suffix? "fat" type) check-fat-file-system)
((string-prefix? "jfs" type) check-jfs-file-system)
((string-prefix? "f2fs" type) check-f2fs-file-system)
((string-prefix? "ntfs" type) check-ntfs-file-system)
((string-prefix? "nfs" type) (const 'pass))
(else #f)))
@ -775,26 +814,33 @@ corresponds to the symbols listed in FLAGS."
(when (file-system-check? fs)
(check-file-system source type))
;; Create the mount point. Most of the time this is a directory, but
;; in the case of a bind mount, a regular file or socket may be needed.
(if (and (= MS_BIND (logand flags MS_BIND))
(not (file-is-directory? source)))
(unless (file-exists? mount-point)
(mkdir-p (dirname mount-point))
(call-with-output-file mount-point (const #t)))
(mkdir-p mount-point))
(catch 'system-error
(lambda ()
;; Create the mount point. Most of the time this is a directory, but
;; in the case of a bind mount, a regular file or socket may be
;; needed.
(if (and (= MS_BIND (logand flags MS_BIND))
(not (file-is-directory? source)))
(unless (file-exists? mount-point)
(mkdir-p (dirname mount-point))
(call-with-output-file mount-point (const #t)))
(mkdir-p mount-point))
(cond
((string-prefix? "nfs" type)
(mount-nfs source mount-point type flags options))
(else
(mount source mount-point type flags options)))
(cond
((string-prefix? "nfs" type)
(mount-nfs source mount-point type flags options))
(else
(mount source mount-point type flags options)))
;; For read-only bind mounts, an extra remount is needed, as per
;; <http://lwn.net/Articles/281157/>, which still applies to Linux 4.0.
(when (and (= MS_BIND (logand flags MS_BIND))
(= MS_RDONLY (logand flags MS_RDONLY)))
(let ((flags (logior MS_BIND MS_REMOUNT MS_RDONLY)))
(mount source mount-point type flags #f)))))
;; For read-only bind mounts, an extra remount is needed, as per
;; <http://lwn.net/Articles/281157/>, which still applies to Linux
;; 4.0.
(when (and (= MS_BIND (logand flags MS_BIND))
(= MS_RDONLY (logand flags MS_RDONLY)))
(let ((flags (logior MS_BIND MS_REMOUNT MS_RDONLY)))
(mount source mount-point type flags #f))))
(lambda args
(or (file-system-mount-may-fail? fs)
(apply throw args))))))
;;; file-systems.scm ends here

View File

@ -24,6 +24,7 @@
#:use-module (guix build syscalls)
#:use-module ((guix build utils) #:select (find-files invoke))
#:use-module (guix build union)
#:autoload (zlib) (call-with-gzip-input-port)
#:use-module (rnrs io ports)
#:use-module (rnrs bytevectors)
#:use-module (srfi srfi-1)
@ -94,10 +95,28 @@ string list."
(cons (string->symbol (string-take str =))
(string-drop str (+ 1 =)))))
;; Matches kernel modules, without compression, with GZIP compression or with
;; XZ compression.
(define module-regex "\\.ko(\\.gz|\\.xz)?$")
(define (modinfo-section-contents file)
"Return the contents of the '.modinfo' section of FILE as a list of
key/value pairs.."
(let* ((bv (call-with-input-file file get-bytevector-all))
(define (get-bytevector file)
(cond
((string-suffix? ".ko.gz" file)
(let ((port (open-file file "r0")))
(dynamic-wind
(lambda ()
#t)
(lambda ()
(call-with-gzip-input-port port get-bytevector-all))
(lambda ()
(close-port port)))))
(else
(call-with-input-file file get-bytevector-all))))
(let* ((bv (get-bytevector file))
(elf (parse-elf bv))
(section (elf-section-by-name elf ".modinfo"))
(modinfo (section-contents elf section)))
@ -110,7 +129,7 @@ key/value pairs.."
(define (module-formal-name file)
"Return the module name of FILE as it appears in its info section. Usually
the module name is the same as the base name of FILE, modulo hyphens and minus
the \".ko\" extension."
the \".ko[.gz|.xz]\" extension."
(match (assq 'name (modinfo-section-contents file))
(('name . name) name)
(#f #f)))
@ -171,14 +190,25 @@ modules that can be postloaded, of the soft dependencies of module FILE."
(_ #f))
(modinfo-section-contents file))))
(define dot-ko
(cut string-append <> ".ko"))
(define (strip-extension filename)
(let ((extension (string-index filename #\.)))
(if extension
(string-take filename extension)
filename)))
(define (ensure-dot-ko name)
"Return NAME with a '.ko' prefix appended, unless it already has it."
(if (string-suffix? ".ko" name)
(define (dot-ko name compression)
(let ((suffix (match compression
('xz ".ko.xz")
('gzip ".ko.gz")
(else ".ko"))))
(string-append name suffix)))
(define (ensure-dot-ko name compression)
"Return NAME with a '.ko[.gz|.xz]' suffix appended, unless it already has
it."
(if (string-contains name ".ko")
name
(dot-ko name)))
(dot-ko name compression)))
(define (normalize-module-name module)
"Return the \"canonical\" name for MODULE, replacing hyphens with
@ -191,9 +221,9 @@ underscores."
module))
(define (file-name->module-name file)
"Return the module name corresponding to FILE, stripping the trailing '.ko'
and normalizing it."
(normalize-module-name (basename file ".ko")))
"Return the module name corresponding to FILE, stripping the trailing
'.ko[.gz|.xz]' and normalizing it."
(normalize-module-name (strip-extension (basename file))))
(define (find-module-file directory module)
"Lookup module NAME under DIRECTORY, and return its absolute file name.
@ -208,19 +238,19 @@ whereas file names often, but not always, use hyphens. Examples:
;; List of possible file names. XXX: It would of course be cleaner to
;; have a database that maps module names to file names and vice versa,
;; but everyone seems to be doing hacks like this one. Oh well!
(map ensure-dot-ko
(delete-duplicates
(list module
(normalize-module-name module)
(string-map (lambda (chr) ;converse of 'normalize-module-name'
(case chr
((#\_) #\-)
(else chr)))
module)))))
(delete-duplicates
(list module
(normalize-module-name module)
(string-map (lambda (chr) ;converse of 'normalize-module-name'
(case chr
((#\_) #\-)
(else chr)))
module))))
(match (find-files directory
(lambda (file stat)
(member (basename file) names)))
(member (strip-extension
(basename file)) names)))
((file)
file)
(()
@ -290,8 +320,8 @@ not a file name."
(recursive? #t)
(lookup-module dot-ko)
(black-list (module-black-list)))
"Load Linux module from FILE, the name of a '.ko' file; return true on
success, false otherwise. When RECURSIVE? is true, load its dependencies
"Load Linux module from FILE, the name of a '.ko[.gz|.xz]' file; return true
on success, false otherwise. When RECURSIVE? is true, load its dependencies
first (à la 'modprobe'.) The actual files containing modules depended on are
obtained by calling LOOKUP-MODULE with the module name. Modules whose name
appears in BLACK-LIST are not loaded."
@ -523,16 +553,29 @@ are required to access DEVICE."
;;; Module databases.
;;;
(define (module-name->file-name/guess directory name)
(define* (module-name->file-name/guess directory name
#:key compression)
"Guess the file name corresponding to NAME, a module name. That doesn't
always work because sometimes underscores in NAME map to hyphens (e.g.,
\"input-leds.ko\"), sometimes not (e.g., \"mac_hid.ko\")."
(string-append directory "/" (ensure-dot-ko name)))
\"input-leds.ko\"), sometimes not (e.g., \"mac_hid.ko\"). If the module is
compressed then COMPRESSED can be set to 'xz or 'gzip, depending on the
compression type."
(string-append directory "/" (ensure-dot-ko name compression)))
(define (module-name-lookup directory)
"Return a one argument procedure that takes a module name (e.g.,
\"input_leds\") and returns its absolute file name (e.g.,
\"/.../input-leds.ko\")."
(define (guess-file-name name)
(let ((names (list
(module-name->file-name/guess directory name)
(module-name->file-name/guess directory name
#:compression 'xz)
(module-name->file-name/guess directory name
#:compression 'gzip))))
(or (find file-exists? names)
(first names))))
(catch 'system-error
(lambda ()
(define mapping
@ -541,23 +584,23 @@ always work because sometimes underscores in NAME map to hyphens (e.g.,
(lambda (name)
(or (assoc-ref mapping name)
(module-name->file-name/guess directory name))))
(guess-file-name name))))
(lambda args
(if (= ENOENT (system-error-errno args))
(cut module-name->file-name/guess directory <>)
(cut guess-file-name <>)
(apply throw args)))))
(define (write-module-name-database directory)
"Write a database that maps \"module names\" as they appear in the relevant
ELF section of '.ko' files, to actual file names. This format is
ELF section of '.ko[.gz|.xz]' files, to actual file names. This format is
Guix-specific. It aims to deal with inconsistent naming, in particular
hyphens vs. underscores."
(define mapping
(map (lambda (file)
(match (module-formal-name file)
(#f (cons (basename file ".ko") file))
(#f (cons (strip-extension (basename file)) file))
(name (cons name file))))
(find-files directory "\\.ko$")))
(find-files directory module-regex)))
(call-with-output-file (string-append directory "/modules.name")
(lambda (port)
@ -569,12 +612,12 @@ hyphens vs. underscores."
(pretty-print mapping port))))
(define (write-module-alias-database directory)
"Traverse the '.ko' files in DIRECTORY and create the corresponding
"Traverse the '.ko[.gz|.xz]' files in DIRECTORY and create the corresponding
'modules.alias' file."
(define aliases
(map (lambda (file)
(cons (file-name->module-name file) (module-aliases file)))
(find-files directory "\\.ko$")))
(find-files directory module-regex)))
(call-with-output-file (string-append directory "/modules.alias")
(lambda (port)
@ -616,7 +659,7 @@ are found, return a tuple (DEVNAME TYPE MAJOR MINOR), otherwise return #f."
(char-set-complement (char-set #\-)))
(define (write-module-device-database directory)
"Traverse the '.ko' files in DIRECTORY and create the corresponding
"Traverse the '.ko[.gz|.xz]' files in DIRECTORY and create the corresponding
'modules.devname' file. This file contains information about modules that can
be loaded on-demand, such as file system modules."
(define aliases
@ -624,7 +667,7 @@ be loaded on-demand, such as file system modules."
(match (aliases->device-tuple (module-aliases file))
(#f #f)
(tuple (cons (file-name->module-name file) tuple))))
(find-files directory "\\.ko$")))
(find-files directory module-regex)))
(call-with-output-file (string-append directory "/modules.devname")
(lambda (port)

View File

@ -318,8 +318,10 @@ selected keymap."
cryptsetup
dosfstools ;mkfs.fat
e2fsprogs ;mkfs.ext4
lvm2-static ;dmsetup
btrfs-progs
jfsutils ;jfs_mkfs
ntfs-3g ;mkfs.ntfs
kbd ;chvt
guix ;guix system init call
util-linux ;mkwap

View File

@ -121,7 +121,7 @@ Be careful, all data on the disk will be lost.")
(run-listbox-selection-page
#:info-text (G_ "Please select the file-system type for this partition.")
#:title (G_ "File-system type")
#:listbox-items '(ext4 btrfs fat16 fat32 jfs swap)
#:listbox-items '(ext4 btrfs fat16 fat32 jfs ntfs swap)
#:listbox-item->text user-fs-type-name
#:sort-listbox-items? #f
#:button-text (G_ "Exit")

View File

@ -222,7 +222,8 @@ inferior to MAX-SIZE, #f otherwise."
((btrfs) "btrfs")
((fat16) "fat16")
((fat32) "fat32")
((jfs) "jfs")
((jfs) "jfs")
((ntfs) "ntfs")
((swap) "linux-swap")))
(define (user-fs-type->mount-type fs-type)
@ -232,7 +233,8 @@ inferior to MAX-SIZE, #f otherwise."
((btrfs) "btrfs")
((fat16) "fat")
((fat32) "vfat")
((jfs) "jfs")))
((jfs) "jfs")
((ntfs) "ntfs")))
(define (partition-filesystem-user-type partition)
"Return the filesystem type of PARTITION, to be stored in the FS-TYPE field
@ -246,6 +248,7 @@ of <user-partition> record."
((string=? name "fat16") 'fat16)
((string=? name "fat32") 'fat32)
((string=? name "jfs") 'jfs)
((string=? name "ntfs") 'ntfs)
((or (string=? name "swsusp")
(string=? name "linux-swap(v0)")
(string=? name "linux-swap(v1)"))
@ -327,6 +330,11 @@ fail. See rereadpt function in wipefs.c of util-linux for an explanation."
(device-sync device)
(device-close device))
(define (remove-logical-devices)
"Remove all active logical devices."
(with-null-output-ports
(invoke "dmsetup" "remove_all")))
(define (non-install-devices)
"Return all the available devices, except the busy one, allegedly the
install device. DEVICE-IS-BUSY? is a parted call, checking if the device is
@ -1040,6 +1048,11 @@ bit bucket."
(with-null-output-ports
(invoke "jfs_mkfs" "-f" partition)))
(define (create-ntfs-file-system partition)
"Create a JFS file-system for PARTITION file-name."
(with-null-output-ports
(invoke "mkfs.ntfs" "-F" "-f" partition)))
(define (create-swap-partition partition)
"Set up swap area on PARTITION file-name."
(with-null-output-ports
@ -1117,6 +1130,10 @@ NEED-FORMATING? field set to #t."
(and need-formatting?
(not (eq? type 'extended))
(create-jfs-file-system file-name)))
((ntfs)
(and need-formatting?
(not (eq? type 'extended))
(create-ntfs-file-system file-name)))
((swap)
(create-swap-partition file-name))
(else
@ -1328,6 +1345,9 @@ USER-PARTITIONS, or return nothing."
(define (init-parted)
"Initialize libparted support."
(probe-all-devices!)
;; Remove all logical devices, otherwise "device-is-busy?" will report true
;; on all devices containaing active logical volumes.
(remove-logical-devices)
(exception-set-handler (lambda (exception)
EXCEPTION-OPTION-UNHANDLED)))

View File

@ -132,6 +132,7 @@ GNU_SYSTEM_MODULES = \
%D%/packages/commencement.scm \
%D%/packages/compression.scm \
%D%/packages/compton.scm \
%D%/packages/configuration-management.scm \
%D%/packages/conky.scm \
%D%/packages/connman.scm \
%D%/packages/convmv.scm \
@ -388,6 +389,7 @@ GNU_SYSTEM_MODULES = \
%D%/packages/networking.scm \
%D%/packages/nfs.scm \
%D%/packages/nickle.scm \
%D%/packages/nicotine.scm \
%D%/packages/nim.scm \
%D%/packages/ninja.scm \
%D%/packages/node.scm \
@ -405,6 +407,7 @@ GNU_SYSTEM_MODULES = \
%D%/packages/openbox.scm \
%D%/packages/opencog.scm \
%D%/packages/openldap.scm \
%D%/packages/openpgp.scm \
%D%/packages/openstack.scm \
%D%/packages/orpheus.scm \
%D%/packages/ots.scm \
@ -822,8 +825,13 @@ dist_patch_DATA = \
%D%/packages/patches/binutils-mingw-w64-timestamp.patch \
%D%/packages/patches/binutils-mingw-w64-deterministic.patch \
%D%/packages/patches/bitcoin-core-python-compat.patch \
%D%/packages/patches/blender-2.79-gcc8.patch \
%D%/packages/patches/blender-2.79-gcc9.patch \
%D%/packages/patches/blender-2.79-newer-ffmpeg.patch \
%D%/packages/patches/blender-2.79-oiio2.patch \
%D%/packages/patches/blender-2.79-python-3.7-fix.patch \
%D%/packages/patches/blender-2.79-python-3.8-fix.patch \
%D%/packages/patches/bpftrace-disable-bfd-disasm.patch \
%D%/packages/patches/busybox-1.31.1-fix-build-with-glibc-2.31.patch \
%D%/packages/patches/byobu-writable-status.patch \
%D%/packages/patches/calibre-no-updates-dialog.patch \
@ -848,6 +856,7 @@ dist_patch_DATA = \
%D%/packages/patches/clang-runtime-asan-build-fixes.patch \
%D%/packages/patches/clang-runtime-esan-build-fixes.patch \
%D%/packages/patches/clang-runtime-9-libsanitizer-mode-field.patch \
%D%/packages/patches/clang-runtime-3.5-libsanitizer-mode-field.patch \
%D%/packages/patches/clang-runtime-3.9-libsanitizer-mode-field.patch \
%D%/packages/patches/clang-runtime-3.8-libsanitizer-mode-field.patch \
%D%/packages/patches/classpath-aarch64-support.patch \
@ -879,9 +888,11 @@ dist_patch_DATA = \
%D%/packages/patches/dbus-CVE-2020-12049.patch \
%D%/packages/patches/dbus-c++-gcc-compat.patch \
%D%/packages/patches/dbus-c++-threading-mutex.patch \
%D%/packages/patches/dbxfs-remove-sentry-sdk.patch \
%D%/packages/patches/dconf-meson-0.52.patch \
%D%/packages/patches/debops-constants-for-external-program-names.patch \
%D%/packages/patches/debops-debops-defaults-fall-back-to-less.patch \
%D%/packages/patches/dee-vapi.patch \
%D%/packages/patches/desmume-gcc6-fixes.patch \
%D%/packages/patches/desmume-gcc7-fixes.patch \
%D%/packages/patches/dfu-programmer-fix-libusb.patch \
@ -912,6 +923,7 @@ dist_patch_DATA = \
%D%/packages/patches/emacs-exec-path.patch \
%D%/packages/patches/emacs-exwm-fix-fullscreen-states.patch \
%D%/packages/patches/emacs-fix-scheme-indent-function.patch \
%D%/packages/patches/emacs-ignore-empty-xim-styles.patch \
%D%/packages/patches/emacs-json-reformat-fix-tests.patch \
%D%/packages/patches/emacs-highlight-stages-add-gexp.patch \
%D%/packages/patches/emacs-hyperbole-toggle-messaging.patch \
@ -952,6 +964,7 @@ dist_patch_DATA = \
%D%/packages/patches/foomatic-filters-CVE-2015-8327.patch \
%D%/packages/patches/foomatic-filters-CVE-2015-8560.patch \
%D%/packages/patches/fontconfig-hurd-path-max.patch \
%D%/packages/patches/freedink-engine-fix-sdl-hints.patch \
%D%/packages/patches/freeimage-unbundle.patch \
%D%/packages/patches/fuse-overlapping-headers.patch \
%D%/packages/patches/ganeti-deterministic-manual.patch \
@ -1016,14 +1029,6 @@ dist_patch_DATA = \
%D%/packages/patches/ghostscript-no-header-uuid.patch \
%D%/packages/patches/ghostscript-no-header-creationdate.patch \
%D%/packages/patches/glib-tests-timer.patch \
%D%/packages/patches/glibc-CVE-2015-5180.patch \
%D%/packages/patches/glibc-CVE-2015-7547.patch \
%D%/packages/patches/glibc-CVE-2016-3075.patch \
%D%/packages/patches/glibc-CVE-2016-3706.patch \
%D%/packages/patches/glibc-CVE-2016-4429.patch \
%D%/packages/patches/glibc-CVE-2017-1000366-pt1.patch \
%D%/packages/patches/glibc-CVE-2017-1000366-pt2.patch \
%D%/packages/patches/glibc-CVE-2017-1000366-pt3.patch \
%D%/packages/patches/glibc-CVE-2018-11236.patch \
%D%/packages/patches/glibc-CVE-2018-11237.patch \
%D%/packages/patches/glibc-CVE-2019-7309.patch \
@ -1045,9 +1050,7 @@ dist_patch_DATA = \
%D%/packages/patches/glibc-ldd-x86_64.patch \
%D%/packages/patches/glibc-locales.patch \
%D%/packages/patches/glibc-locales-2.28.patch \
%D%/packages/patches/glibc-o-largefile.patch \
%D%/packages/patches/glibc-reinstate-prlimit64-fallback.patch \
%D%/packages/patches/glibc-vectorized-strcspn-guards.patch \
%D%/packages/patches/glibc-versioned-locpath.patch \
%D%/packages/patches/glibc-2.27-git-fixes.patch \
%D%/packages/patches/glibc-2.28-git-fixes.patch \
@ -1102,6 +1105,7 @@ dist_patch_DATA = \
%D%/packages/patches/gtk3-respect-GUIX_GTK3_IM_MODULE_FILE.patch \
%D%/packages/patches/gtkglext-disable-disable-deprecated.patch \
%D%/packages/patches/gtksourceview-2-add-default-directory.patch \
%D%/packages/patches/gvfs-add-support-for-libplist-2.2.patch \
%D%/packages/patches/gzdoom-search-in-installed-share.patch \
%D%/packages/patches/gzdoom-find-system-libgme.patch \
%D%/packages/patches/hdf4-architectures.patch \
@ -1140,6 +1144,9 @@ dist_patch_DATA = \
%D%/packages/patches/iputils-libcap-compat.patch \
%D%/packages/patches/irrlicht-use-system-libs.patch \
%D%/packages/patches/isl-0.11.1-aarch64-support.patch \
%D%/packages/patches/json-c-CVE-2020-12762.patch \
%D%/packages/patches/json-c-0.13-CVE-2020-12762.patch \
%D%/packages/patches/json-c-0.12-CVE-2020-12762.patch \
%D%/packages/patches/jacal-fix-texinfo.patch \
%D%/packages/patches/jamvm-2.0.0-disable-branch-patching.patch \
%D%/packages/patches/jamvm-arm.patch \
@ -1193,9 +1200,9 @@ dist_patch_DATA = \
%D%/packages/patches/lcms-CVE-2018-16435.patch \
%D%/packages/patches/ldc-bootstrap-disable-tests.patch \
%D%/packages/patches/ldc-disable-phobos-tests.patch \
%D%/packages/patches/ldns-drill-examples.patch \
%D%/packages/patches/leela-zero-gtest.patch \
%D%/packages/patches/less-hurd-path-max.patch \
%D%/packages/patches/lib2geom-enable-assertions.patch \
%D%/packages/patches/lib2geom-fix-tests.patch \
%D%/packages/patches/liba52-enable-pic.patch \
%D%/packages/patches/liba52-link-with-libm.patch \
@ -1206,13 +1213,16 @@ dist_patch_DATA = \
%D%/packages/patches/libbonobo-activation-test-race.patch \
%D%/packages/patches/libcanberra-sound-theme-freedesktop.patch \
%D%/packages/patches/libdrm-realpath-virtio.patch \
%D%/packages/patches/libextractor-exiv2.patch \
%D%/packages/patches/libgeotiff-adapt-test-script-for-proj-6.2.patch \
%D%/packages/patches/libgit2-mtime-0.patch \
%D%/packages/patches/libgnome-encoding.patch \
%D%/packages/patches/libgnomeui-utf8.patch \
%D%/packages/patches/libjxr-fix-function-signature.patch \
%D%/packages/patches/libjxr-fix-typos.patch \
%D%/packages/patches/liblouisutdml-fix-tests.patch \
%D%/packages/patches/libofa-ftbfs-1.diff \
%D%/packages/patches/libofa-curl.diff \
%D%/packages/patches/libofa-ftbfs-2.diff \
%D%/packages/patches/libotr-test-auth-fix.patch \
%D%/packages/patches/libksieve-Fix-missing-link-libraries.patch \
%D%/packages/patches/libmad-armv7-thumb-pt1.patch \
@ -1226,6 +1236,7 @@ dist_patch_DATA = \
%D%/packages/patches/libmygpo-qt-fix-qt-5.11.patch \
%D%/packages/patches/libmygpo-qt-missing-qt5-modules.patch \
%D%/packages/patches/libqalculate-3.8.0-libcurl-ssl-fix.patch \
%D%/packages/patches/libquicktime-ffmpeg.patch \
%D%/packages/patches/libsndfile-armhf-type-checks.patch \
%D%/packages/patches/libsndfile-CVE-2017-8361-8363-8365.patch \
%D%/packages/patches/libsndfile-CVE-2017-8362.patch \
@ -1272,7 +1283,6 @@ dist_patch_DATA = \
%D%/packages/patches/lua-liblua-so.patch \
%D%/packages/patches/luajit-no_ldconfig.patch \
%D%/packages/patches/luit-posix.patch \
%D%/packages/patches/luminance-hdr-qt-printer.patch \
%D%/packages/patches/lvm2-static-link.patch \
%D%/packages/patches/make-impure-dirs.patch \
%D%/packages/patches/mariadb-client-test-32bit.patch \
@ -1286,6 +1296,7 @@ dist_patch_DATA = \
%D%/packages/patches/mcrypt-CVE-2012-4426.patch \
%D%/packages/patches/mcrypt-CVE-2012-4527.patch \
%D%/packages/patches/libmemcached-build-with-gcc7.patch \
%D%/packages/patches/libmhash-hmac-fix-uaf.patch \
%D%/packages/patches/mediastreamer2-srtp2.patch \
%D%/packages/patches/mesa-skip-disk-cache-test.patch \
%D%/packages/patches/mescc-tools-boot.patch \
@ -1331,6 +1342,7 @@ dist_patch_DATA = \
%D%/packages/patches/netsurf-system-utf8proc.patch \
%D%/packages/patches/netsurf-y2038-tests.patch \
%D%/packages/patches/netsurf-longer-test-timeout.patch \
%D%/packages/patches/nfs4-acl-tools-0.3.7-fixpaths.patch \
%D%/packages/patches/ngircd-handle-zombies.patch \
%D%/packages/patches/network-manager-plugin-path.patch \
%D%/packages/patches/nsis-env-passthru.patch \
@ -1352,9 +1364,9 @@ dist_patch_DATA = \
%D%/packages/patches/ocaml-dose3-dont-make-printconf.patch \
%D%/packages/patches/ocaml-dose3-Install-mli-cmx-etc.patch \
%D%/packages/patches/omake-fix-non-determinism.patch \
%D%/packages/patches/ola-readdir-r.patch \
%D%/packages/patches/openbabel-fix-crash-on-nwchem-output.patch \
%D%/packages/patches/opencascade-oce-glibc-2.26.patch \
%D%/packages/patches/opencv-fix-build-of-grfmt_jpeg2000.cpp.patch \
%D%/packages/patches/opencv-rgbd-aarch64-test-fix.patch \
%D%/packages/patches/opendht-fix-jami.patch \
%D%/packages/patches/openfoam-4.1-cleanup.patch \
@ -1364,6 +1376,7 @@ dist_patch_DATA = \
%D%/packages/patches/openssh-hurd.patch \
%D%/packages/patches/openresolv-restartcmd-guix.patch \
%D%/packages/patches/openscad-parser-boost-1.72.patch \
%D%/packages/patches/opensles-add-license-file.patch \
%D%/packages/patches/openssl-runpath.patch \
%D%/packages/patches/openssl-1.1-c-rehash-in.patch \
%D%/packages/patches/openssl-c-rehash-in.patch \
@ -1414,10 +1427,13 @@ dist_patch_DATA = \
%D%/packages/patches/pingus-boost-headers.patch \
%D%/packages/patches/pingus-sdl-libs-config.patch \
%D%/packages/patches/pixman-CVE-2016-5296.patch \
%D%/packages/patches/pjproject-correct-the-cflags-field.patch \
%D%/packages/patches/pjproject-fix-pkg-config-ldflags.patch \
%D%/packages/patches/plink-1.07-unclobber-i.patch \
%D%/packages/patches/plink-endian-detection.patch \
%D%/packages/patches/plib-CVE-2011-4620.patch \
%D%/packages/patches/plib-CVE-2012-4552.patch \
%D%/packages/patches/plotutils-spline-test.patch \
%D%/packages/patches/podofo-cmake-3.12.patch \
%D%/packages/patches/portaudio-audacity-compat.patch \
%D%/packages/patches/portmidi-modular-build.patch \
@ -1451,7 +1467,6 @@ dist_patch_DATA = \
%D%/packages/patches/python-CVE-2018-14647.patch \
%D%/packages/patches/python-aiohttp-3.6.2-no-warning-fail.patch \
%D%/packages/patches/python-aionotify-0.2.0-py3.8.patch \
%D%/packages/patches/python-alembic-exceptions-cause.patch \
%D%/packages/patches/python-argcomplete-1.11.1-fish31.patch \
%D%/packages/patches/python-axolotl-AES-fix.patch \
%D%/packages/patches/python-cairocffi-dlopen-path.patch \
@ -1464,11 +1479,11 @@ dist_patch_DATA = \
%D%/packages/patches/python-pep8-stdlib-tokenize-compat.patch \
%D%/packages/patches/python-pyfakefs-remove-bad-test.patch \
%D%/packages/patches/python-flint-includes.patch \
%D%/packages/patches/python-jedi-sort-project-test.patch \
%D%/packages/patches/python-libxml2-utf8.patch \
%D%/packages/patches/python-memcached-syntax-warnings.patch \
%D%/packages/patches/python-mox3-python3.6-compat.patch \
%D%/packages/patches/python-testtools.patch \
%D%/packages/patches/python-onnx-use-system-googletest.patch \
%D%/packages/patches/python-packaging-test-arch.patch \
%D%/packages/patches/python2-parameterized-docstring-test.patch \
%D%/packages/patches/python-paste-remove-timing-test.patch \
@ -1478,7 +1493,6 @@ dist_patch_DATA = \
%D%/packages/patches/python-pygpgme-fix-pinentry-tests.patch \
%D%/packages/patches/python-robotframework-honor-source-date-epoch.patch \
%D%/packages/patches/python-shouldbe-0.1.2-cpy3.8.patch \
%D%/packages/patches/python-slugify-depend-on-unidecode.patch \
%D%/packages/patches/python2-subprocess32-disable-input-test.patch \
%D%/packages/patches/python-tinycss2-flake8-compat.patch \
%D%/packages/patches/python-unittest2-python3-compat.patch \
@ -1489,6 +1503,7 @@ dist_patch_DATA = \
%D%/packages/patches/qrcodegen-cpp-make-install.patch \
%D%/packages/patches/qt4-ldflags.patch \
%D%/packages/patches/qtbase-absolute-runpath.patch \
%D%/packages/patches/qtbase-fix-krita-deadlock.patch \
%D%/packages/patches/qtbase-moc-ignore-gcc-macro.patch \
%D%/packages/patches/qtbase-use-TZDIR.patch \
%D%/packages/patches/qtscript-disable-tests.patch \
@ -1512,7 +1527,11 @@ dist_patch_DATA = \
%D%/packages/patches/rpcbind-CVE-2017-8779.patch \
%D%/packages/patches/rtags-separate-rct.patch \
%D%/packages/patches/racket-store-checksum-override.patch \
%D%/packages/patches/remake-impure-dirs.patch \
%D%/packages/patches/retroarch-disable-online-updater.patch \
%D%/packages/patches/rnp-add-version.cmake.patch \
%D%/packages/patches/rnp-disable-ruby-rnp-tests.patch \
%D%/packages/patches/rnp-unbundle-googletest.patch \
%D%/packages/patches/ruby-rack-ignore-failing-test.patch \
%D%/packages/patches/ruby-rubocop-break-dependency-cycle.patch\
%D%/packages/patches/ruby-sanitize-system-libxml.patch \
@ -1536,6 +1555,7 @@ dist_patch_DATA = \
%D%/packages/patches/screen-hurd-path-max.patch \
%D%/packages/patches/scribus-1.5.5-poppler-0.86-build-fix.patch \
%D%/packages/patches/sdl-libx11-1.6.patch \
%D%/packages/patches/seed-webkit.patch \
%D%/packages/patches/seq24-rename-mutex.patch \
%D%/packages/patches/sharutils-CVE-2018-1000097.patch \
%D%/packages/patches/shadow-hurd-pctrl.patch \
@ -1548,6 +1568,7 @@ dist_patch_DATA = \
%D%/packages/patches/slim-display.patch \
%D%/packages/patches/snappy-add-O2-flag-in-CmakeLists.txt.patch \
%D%/packages/patches/sooperlooper-build-with-wx-30.patch \
%D%/packages/patches/sphinxbase-fix-doxygen.patch \
%D%/packages/patches/sssd-fix-samba.patch \
%D%/packages/patches/steghide-fixes.patch \
%D%/packages/patches/suitesparse-mongoose-cmake.patch \
@ -1586,6 +1607,7 @@ dist_patch_DATA = \
%D%/packages/patches/tipp10-fix-compiling.patch \
%D%/packages/patches/tipp10-remove-license-code.patch \
%D%/packages/patches/tk-find-library.patch \
%D%/packages/patches/transcode-ffmpeg.patch \
%D%/packages/patches/ttf2eot-cstddef.patch \
%D%/packages/patches/ttfautohint-source-date-epoch.patch \
%D%/packages/patches/tomb-fix-errors-on-open.patch \
@ -1596,6 +1618,7 @@ dist_patch_DATA = \
%D%/packages/patches/ucx-tcp-iface-ioctl.patch \
%D%/packages/patches/udiskie-no-appindicator.patch \
%D%/packages/patches/ungoogled-chromium-system-nspr.patch \
%D%/packages/patches/unknown-horizons-python-3.8-distro.patch \
%D%/packages/patches/unzip-CVE-2014-8139.patch \
%D%/packages/patches/unzip-CVE-2014-8140.patch \
%D%/packages/patches/unzip-CVE-2014-8141.patch \
@ -1629,6 +1652,7 @@ dist_patch_DATA = \
%D%/packages/patches/warsow-qfusion-fix-bool-return-type.patch \
%D%/packages/patches/weasyprint-library-paths.patch \
%D%/packages/patches/webkitgtk-share-store.patch \
%D%/packages/patches/webkitgtk-bind-all-fonts.patch \
%D%/packages/patches/websocketpp-fix-for-cmake-3.15.patch \
%D%/packages/patches/wicd-bitrate-none-fix.patch \
%D%/packages/patches/wicd-get-selected-profile-fix.patch \
@ -1642,7 +1666,6 @@ dist_patch_DATA = \
%D%/packages/patches/wordnet-CVE-2008-3908-pt2.patch \
%D%/packages/patches/x265-arm-flags.patch \
%D%/packages/patches/xf86-video-ark-remove-mibstore.patch \
%D%/packages/patches/xf86-video-geode-glibc-2.20.patch \
%D%/packages/patches/xf86-video-mach64-glibc-2.20.patch \
%D%/packages/patches/xf86-video-savage-xorg-compat.patch \
%D%/packages/patches/xf86-video-siliconmotion-fix-ftbfs.patch \
@ -1651,6 +1674,7 @@ dist_patch_DATA = \
%D%/packages/patches/xf86-video-voodoo-pcitag.patch \
%D%/packages/patches/xfce4-panel-plugins.patch \
%D%/packages/patches/xfce4-settings-defaults.patch \
%D%/packages/patches/xorg-server-CVE-2020-14347.patch \
%D%/packages/patches/xplanet-1.3.1-cxx11-eof.patch \
%D%/packages/patches/xplanet-1.3.1-libdisplay_DisplayOutput.cpp.patch \
%D%/packages/patches/xplanet-1.3.1-libimage_gif.c.patch \

View File

@ -23,7 +23,7 @@
#:use-module (guix monads)
#:use-module (guix records)
#:use-module (guix store)
#:use-module ((guix utils) #:select (source-properties->location))
#:use-module ((guix diagnostics) #:select (source-properties->location))
#:use-module (srfi srfi-35)
#:export (environment-type
environment-type?

View File

@ -26,6 +26,7 @@
#:use-module (guix base32)
#:use-module (guix derivations)
#:use-module (guix i18n)
#:use-module ((guix diagnostics) #:select (formatted-message))
#:use-module (guix import json)
#:use-module (guix monads)
#:use-module (guix records)
@ -414,9 +415,7 @@ one procured from https://cloud.digitalocean.com/account/api/tokens.")))))))
(let ((config (machine-configuration machine))
(environment (environment-type-name (machine-environment machine))))
(unless (and config (digital-ocean-configuration? config))
(raise (condition
(&message
(message (format #f (G_ "unsupported machine configuration '~a'
(raise (formatted-message (G_ "unsupported machine configuration '~a' \
for environment of type '~a'")
config
environment))))))))
environment)))))

View File

@ -24,6 +24,7 @@
#:use-module (gnu system)
#:use-module (gnu system file-systems)
#:use-module (gnu system uuid)
#:use-module ((gnu services) #:select (sexp->system-provenance))
#:use-module (guix diagnostics)
#:use-module (guix gexp)
#:use-module (guix i18n)
@ -55,6 +56,7 @@
machine-ssh-configuration-host-name
machine-ssh-configuration-build-locally?
machine-ssh-configuration-authorize?
machine-ssh-configuration-allow-downgrades?
machine-ssh-configuration-port
machine-ssh-configuration-user
machine-ssh-configuration-host-key
@ -83,6 +85,8 @@
(default #t))
(authorize? machine-ssh-configuration-authorize? ; boolean
(default #t))
(allow-downgrades? machine-ssh-configuration-allow-downgrades? ; boolean
(default #f))
(port machine-ssh-configuration-port ; integer
(default 22))
(user machine-ssh-configuration-user ; string
@ -179,11 +183,9 @@ exist on the machine."
(lambda args
(system-error-errno args)))))
(when (number? errno)
(raise (condition
(&message
(message (format #f (G_ "device '~a' not found: ~a")
(raise (formatted-message (G_ "device '~a' not found: ~a")
(file-system-device fs)
(strerror errno)))))))))
(strerror errno))))))
(define (check-labeled-file-system fs)
(define remote-exp
@ -196,11 +198,9 @@ exist on the machine."
(remote-let ((result remote-exp))
(unless result
(raise (condition
(&message
(message (format #f (G_ "no file system with label '~a'")
(raise (formatted-message (G_ "no file system with label '~a'")
(file-system-label->string
(file-system-device fs))))))))))
(file-system-device fs)))))))
(define (check-uuid-file-system fs)
(define remote-exp
@ -217,10 +217,8 @@ exist on the machine."
(remote-let ((result remote-exp))
(unless result
(raise (condition
(&message
(message (format #f (G_ "no file system with UUID '~a'")
(uuid->string (file-system-device fs))))))))))
(raise (formatted-message (G_ "no file system with UUID '~a'")
(uuid->string (file-system-device fs)))))))
(append (map check-literal-file-system
(filter (lambda (fs)
@ -277,6 +275,27 @@ not available in the initrd."
(map missing-modules file-systems))
(define* (machine-check-forward-update machine)
"Check whether we are making a forward update for MACHINE. Depending on its
'allow-upgrades?' field, raise an error or display a warning if we are
potentially downgrading it."
(define config
(machine-configuration machine))
(define validate-reconfigure
(if (machine-ssh-configuration-allow-downgrades? config)
warn-about-backward-reconfigure
ensure-forward-reconfigure))
(remote-let ((provenance #~(call-with-input-file
"/run/current-system/provenance"
read)))
(define channels
(sexp->system-provenance provenance))
(check-forward-update validate-reconfigure
#:current-channels channels)))
(define (machine-check-building-for-appropriate-system machine)
"Raise a '&message' error condition if MACHINE is configured to be built
locally and the 'system' field does not match the '%current-system' reported
@ -285,19 +304,18 @@ by MACHINE."
(system (remote-system (machine-ssh-session machine))))
(when (and (machine-ssh-configuration-build-locally? config)
(not (string= system (machine-ssh-configuration-system config))))
(raise (condition
(&message
(message (format #f (G_ "incorrect target system\
(raise (formatted-message (G_ "incorrect target system\
('~a' was given, while the system reports that it is '~a')~%")
(machine-ssh-configuration-system config)
system))))))))
system)))))
(define (check-deployment-sanity machine)
"Raise a '&message' error condition if it is clear that deploying MACHINE's
'system' declaration would fail."
(define assertions
(append (machine-check-file-system-availability machine)
(machine-check-initrd-modules machine)))
(machine-check-initrd-modules machine)
(list (machine-check-forward-update machine))))
(define aggregate-exp
;; Gather all the expressions so that a single round-trip is enough to
@ -402,11 +420,9 @@ environment type of 'managed-host."
(when (machine-ssh-configuration-authorize?
(machine-configuration machine))
(unless (file-exists? %public-key-file)
(raise (condition
(&message
(message (format #f (G_ "no signing key '~a'. \
(raise (formatted-message (G_ "no signing key '~a'. \
have you run 'guix archive --generate-key?'")
%public-key-file))))))
%public-key-file)))
(remote-authorize-signing-key (call-with-input-file %public-key-file
(lambda (port)
(string->canonical-sexp
@ -497,9 +513,11 @@ connection to the host.")))
(let ((config (machine-configuration machine))
(environment (environment-type-name (machine-environment machine))))
(unless (and config (machine-ssh-configuration? config))
(raise (condition
(&message
(message (format #f (G_ "unsupported machine configuration '~a'
(raise (formatted-message (G_ "unsupported machine configuration '~a'
for environment of type '~a'")
config
environment))))))))
environment)))))
;; Local Variables:
;; eval: (put 'remote-let 'scheme-indent-function 1)
;; End:

View File

@ -24,6 +24,7 @@
#:use-module (guix packages)
#:use-module (guix ui)
#:use-module (guix utils)
#:use-module (guix diagnostics)
#:use-module (guix discovery)
#:use-module (guix memoization)
#:use-module ((guix build utils)
@ -92,9 +93,8 @@
(define (search-patch file-name)
"Search the patch FILE-NAME. Raise an error if not found."
(or (search-path (%patch-path) file-name)
(raise (condition
(&message (message (format #f (G_ "~a: patch not found")
file-name)))))))
(raise (formatted-message (G_ "~a: patch not found")
file-name))))
(define-syntax-rule (search-patches file-name ...)
"Return the list of absolute file names corresponding to each
@ -381,39 +381,59 @@ reducing the memory footprint."
(define cache-file
(string-append directory %package-cache-file))
(define (expand-cache module symbol variable result+seen)
(match (false-if-exception (variable-ref variable))
((? package? package)
(match result+seen
((result . seen)
(if (or (vhash-assq package seen)
(hidden-package? package))
(cons result seen)
(cons (cons `#(,(package-name package)
,(package-version package)
,(module-name module)
,symbol
,(package-outputs package)
,(->bool (supported-package? package))
,(->bool (package-superseded package))
,@(let ((loc (package-location package)))
(if loc
`(,(location-file loc)
,(location-line loc)
,(location-column loc))
'(#f #f #f))))
result)
(vhash-consq package #t seen))))))
(_
result+seen)))
(define expand-cache
(match-lambda*
(((module symbol variable) (result . seen))
(let ((package (variable-ref variable)))
(if (or (vhash-assq package seen)
(hidden-package? package))
(cons result seen)
(cons (cons `#(,(package-name package)
,(package-version package)
,(module-name module)
,symbol
,(package-outputs package)
,(->bool (supported-package? package))
,(->bool (package-superseded package))
,@(let ((loc (package-location package)))
(if loc
`(,(location-file loc)
,(location-line loc)
,(location-column loc))
'(#f #f #f))))
result)
(vhash-consq package #t seen)))))))
(define exp
(first
(fold-module-public-variables* expand-cache
(cons '() vlist-null)
(define entry-key
(match-lambda
((module symbol variable)
(let ((value (variable-ref variable)))
(string-append (package-name value) (package-version value)
(object->string module)
(symbol->string symbol))))))
(define (entry<? a b)
(string<? (entry-key a) (entry-key b)))
(define variables
;; First sort variables so that 'expand-cache' later dismisses
;; already-seen package objects in a deterministic fashion.
(sort
(fold-module-public-variables* (lambda (module symbol variable lst)
(let ((value (false-if-exception
(variable-ref variable))))
(if (package? value)
(cons (list module symbol variable)
lst)
lst)))
'()
(all-modules (%package-module-path)
#:warn
warn-about-load-error))))
warn-about-load-error))
entry<?))
(define exp
(first (fold expand-cache (cons '() vlist-null) variables)))
(mkdir-p (dirname cache-file))
(call-with-output-file cache-file

View File

@ -21,12 +21,31 @@
(define-module (gnu packages accessibility)
#:use-module ((guix licenses) #:prefix license:)
#:use-module (guix utils)
#:use-module (guix packages)
#:use-module (guix download)
#:use-module (guix git-download)
#:use-module (guix build-system gnu)
#:use-module (guix build-system glib-or-gtk)
#:use-module (gnu packages)
#:use-module (gnu packages lisp)
#:use-module (gnu packages base)
#:use-module (gnu packages ocaml)
#:use-module (gnu packages pcre)
#:use-module (gnu packages polkit)
#:use-module (gnu packages ncurses)
#:use-module (gnu packages music)
#:use-module (gnu packages language)
#:use-module (gnu packages icu4c)
#:use-module (gnu packages speech)
#:use-module (gnu packages linux)
#:use-module (gnu packages documentation)
#:use-module (gnu packages swig)
#:use-module (gnu packages libusb)
#:use-module (gnu packages java)
#:use-module (gnu packages python)
#:use-module (gnu packages python-xyz)
#:use-module (gnu packages tcl)
#:use-module (gnu packages xml)
#:use-module (gnu packages gnome)
#:use-module (gnu packages gstreamer)
@ -37,6 +56,154 @@
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages libusb))
(define-public libbraille
(package
(name "libbraille")
(version "0.19.0")
(source
(origin
(method url-fetch)
(uri
(string-append "https://sourceforge.net/projects/" name "/files/" name "/"
name "-" version "/" name "-" version ".tar.gz"))
(sha256
(base32 "05g8r0ypazqn10i7k48iibs8bzc3scdfcnhcykab8j16lhzd27d0"))))
(build-system glib-or-gtk-build-system)
(outputs '("out" "bin"))
(arguments
`(#:tests? #f ; Tests require drivers
#:configure-flags
(list
"--disable-static"
"--enable-fake")))
(native-inputs
`(("latex2html" ,latex2html)
("pkg-config" ,pkg-config)
("python" ,python-wrapper)
("swig" ,swig)))
(inputs
`(("glib" ,glib)
("gtk+" ,gtk+-2)
("libusb" ,libusb-compat)))
(synopsis "Portable Braille Library")
(description "Libbraille is a library to easily access Braille displays and
terminals.")
(home-page "https://libbraille.org")
(license license:lgpl2.1+)))
(define-public brltty
(package
(name "brltty")
(version "6.1")
(source
(origin
(method url-fetch)
(uri
(string-append "https://brltty.app/archive/"
name "-" version ".tar.gz"))
(sha256
(base32 "0nk54chr7z2w579vyiak9xk2avhnvrx7x2l5sk8nyw2zplchkx9q"))))
(build-system glib-or-gtk-build-system)
(arguments
`(#:tests? #f ; No target
#:configure-flags
(list
(string-append "--with-tcl-config="
(assoc-ref %build-inputs "tcl")
"/lib/tclConfig.sh")
(string-append "--with-libbraille="
(assoc-ref %build-inputs "libbraille"))
(string-append "--with-espeak_ng="
(assoc-ref %build-inputs "espeak-ng"))
(string-append "--with-espeak="
(assoc-ref %build-inputs "espeak"))
(string-append "--with-flite="
(assoc-ref %build-inputs "flite"))
;; Required for RUNPATH validation.
(string-append "LDFLAGS=-Wl,-rpath="
(assoc-ref %outputs "out")
"/lib"))
#:make-flags
(list
(string-append "JAVA_JAR_DIR="
(assoc-ref %outputs "out"))
(string-append "JAVA_JNI_DIR="
(assoc-ref %outputs "out"))
(string-append "OCAML_DESTDIR="
(assoc-ref %outputs "out")
"/lib")
(string-append "PYTHON_PREFIX="
(assoc-ref %outputs "out"))
"PYTHON_ROOT=/"
(string-append "TCL_DIR="
(assoc-ref %outputs "out")
"/lib"))
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'fix-errors
(lambda* (#:key outputs #:allow-other-keys)
(substitute* "configure"
(("/sbin/ldconfig")
(which "true")))
;; Make Python bindings use rpath.
(substitute* "Bindings/Python/setup.py.in"
(("extra_compile_args =")
(string-append "extra_link_args = ['-Wl,-rpath="
(assoc-ref outputs "out")
"/lib'], "
"extra_compile_args = ")))
#t)))))
(native-inputs
`(("clisp" ,clisp)
("cython" ,python-cython)
("doxygen" ,doxygen)
("gettext" ,gettext-minimal)
("java" ,icedtea "jdk")
;; ("linuxdoc" ,linuxdoc-tools)
("ocaml" ,ocaml)
("ocamlfind" ,ocaml-findlib)
("pkg-config" ,pkg-config)
("python" ,python-wrapper)
("tcl" ,tcl)))
(inputs
`(("alsa" ,alsa-lib)
("atspi2" ,at-spi2-core)
("bluez" ,bluez)
("dbus" ,dbus)
("espeak" ,espeak)
("espeak-ng" ,espeak-ng)
("expat" ,expat)
("festival" ,festival)
("flite" ,flite)
("glib" ,glib)
("gpm" ,gpm)
("iconv" ,libiconv)
("icu" ,icu4c)
("libbraille" ,libbraille)
("libpcre2" ,pcre2)
("linux-headers" ,linux-libre-headers)
("louis" ,liblouis)
("ncurses" ,ncurses)
("polkit" ,polkit)
("speech-dispatcher" ,speech-dispatcher)
("util-linux" ,util-linux)
("util-linux:lib" ,util-linux "lib")
("x11" ,libx11)
("xaw" ,libxaw)
("xaw3d" ,libxaw3d)
("xext" ,libxext)
("xfixes" ,libxfixes)
("xt" ,libxt)
("xtst" ,libxtst)))
(synopsis "Braille TTY")
(description "BRLTTY is a background process (daemon) which provides access
to the Linux/Unix console (when in text mode) for a blind person using a
refreshable braille display. It drives the braille display, and provides
complete screen review functionality. Some speech capability has also been
incorporated.")
(home-page "https://brltty.app/")
(license license:lgpl2.1+)))
(define-public florence
(package
(name "florence")

View File

@ -1,7 +1,7 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2012, 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2020 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2013 Cyril Roelandt <tipecaml@gmail.com>
;;; Copyright © 2014, 2015, 2016, 2018, 2019 Mark H Weaver <mhw@netris.org>
;;; Copyright © 2014, 2015, 2016, 2018, 2019, 2020 Mark H Weaver <mhw@netris.org>
;;; Copyright © 2014, 2015, 2016, 2017, 2018, 2020 Eric Bavier <bavier@posteo.net>
;;; Copyright © 2015, 2016 Taylan Ulrich Bayırlı/Kammer <taylanbayirli@gmail.com>
;;; Copyright © 2015 Alex Sassmannshausen <alex.sassmannshausen@gmail.com>
@ -443,59 +443,65 @@ graphs and can export its output to different formats.")
(define-public facter
(package
(name "facter")
(version "4.0.26")
(version "4.0.34")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/puppetlabs/facter-ng")
(url "https://github.com/puppetlabs/facter")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32
"0bab3by926gavbhkvp0in82vim575ybj8z6av3b12jdvla1s9rmz"))))
"19lcmmcnxkbirvh5bn5xa9a99z48zmb1b8845cp5r598y019gxqp"))))
(build-system ruby-build-system)
(arguments
`(#:phases (modify-phases %standard-phases
(add-after 'unpack 'delete-facter-ng-gemspec
(lambda _
;; XXX: ruby-build-system incorrectly finds
;; facter-ng.gemspec from this directory and tries to
;; build that instead of the proper facter.gemspec.
;; Just delete it as a workaround, as it appears to
;; only exist for backwards-compatibility after the
;; facter-ng->facter rename.
(delete-file "agent/facter-ng.gemspec")
#t))
(add-after 'unpack 'embed-iproute-reference
(lambda* (#:key inputs #:allow-other-keys)
(let ((iproute (assoc-ref inputs "iproute")))
;; Provide an absolute reference to the 'ip' executable
;; to avoid propagating it.
(substitute* "lib/resolvers/networking_linux_resolver.rb"
(("execute\\('ip")
(string-append "execute('" iproute "/sbin/ip")))
#t)))
(delete 'check)
(add-after 'wrap 'check
(lambda* (#:key tests? outputs #:allow-other-keys)
;; XXX: The test suite wants to run Bundler and
;; complains that the gemspec is invalid. For now
;; just make sure that we can run the wrapped
;; executable directly.
(if tests?
(invoke (string-append (assoc-ref outputs "out")
"/bin/facter")
;; Many facts depend on /sys, /etc/os-release,
;; etc, so we only run a small sample.
"facterversion" "architecture"
"kernel" "kernelversion")
(format #t "tests disabled~%"))
#t)))))
`(#:phases
(modify-phases %standard-phases
(add-after 'unpack 'delete-facter-ng-gemspec
(lambda _
;; XXX: ruby-build-system incorrectly finds
;; facter-ng.gemspec from this directory and tries to
;; build that instead of the proper facter.gemspec.
;; Just delete it as a workaround, as it appears to
;; only exist for backwards-compatibility after the
;; facter-ng->facter rename.
(delete-file "agent/facter-ng.gemspec")
#t))
(add-after 'unpack 'embed-absolute-references
;; Refer to absolute executable file names to avoid propagation.
(lambda* (#:key inputs #:allow-other-keys)
(substitute* (find-files "lib/facter/resolvers" "\\.rb$")
(("execute\\('(which |)([^ ']+)" _ _ name)
(string-append "execute('" (or (which name)
name))))
#t))
(delete 'check)
(add-after 'wrap 'check
(lambda* (#:key tests? outputs #:allow-other-keys)
;; XXX: The test suite wants to run Bundler and
;; complains that the gemspec is invalid. For now
;; just make sure that we can run the wrapped
;; executable directly.
(if tests?
(invoke (string-append (assoc-ref outputs "out")
"/bin/facter")
;; Many facts depend on /sys, /etc/os-release,
;; etc, so we only run a small sample.
"facterversion" "architecture"
"kernel" "kernelversion")
(format #t "tests disabled~%"))
#t)))))
(inputs
`(("iproute" ,iproute)
("ruby-hocon" ,ruby-hocon)
`(("ruby-hocon" ,ruby-hocon)
("ruby-sys-filesystem" ,ruby-sys-filesystem)
("ruby-thor" ,ruby-thor)))
("ruby-thor" ,ruby-thor)
;; For embed-absolute-references.
("dmidecode" ,dmidecode)
("inetutils" ,inetutils) ; for hostname
("iproute" ,iproute)
("pciutils" ,pciutils)
("util-linux" ,util-linux)))
(synopsis "Collect and display system facts")
(description
"Facter is a tool that gathers basic facts about nodes (systems) such
@ -528,6 +534,30 @@ or via the @code{facter} Ruby library.")
application (for console or X terminals) and requires ncurses.")
(license license:gpl2)))
(define-public bashtop
(package
(name "bashtop")
(version "0.9.25")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/aristocratos/bashtop")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
"07nlr6vmyb7yihaxj1fp424lmhwkdjl6mls92v90f6gsvikpa13v"))))
(build-system gnu-build-system)
(arguments
'(#:make-flags (list (string-append "PREFIX=" %output))
#:tests? #f ; bats test fails with loading load.bash
#:phases (modify-phases %standard-phases (delete 'configure))))
(home-page "https://github.com/aristocratos/bashtop")
(synopsis "Linux/OSX/FreeBSD resource monitor")
(description "Resource monitor that shows usage and stats for processor,
memory, disks, network and processes.")
(license license:asl2.0)))
(define-public pies
(package
(name "pies")
@ -916,7 +946,7 @@ connection alive.")
(define-public isc-dhcp
(let* ((bind-major-version "9")
(bind-minor-version "11")
(bind-patch-version "18")
(bind-patch-version "22")
(bind-release-type "") ; for patch release, use "-P"
(bind-release-version "") ; for patch release, e.g. "6"
(bind-version (string-append bind-major-version
@ -1053,7 +1083,7 @@ connection alive.")
"/bind-" bind-version ".tar.gz"))
(sha256
(base32
"0vws0zzb39mkphj4hhjrgfj9dzw951lc4pfa6pqg5ll5ma51mbsr"))))
"1j9a4r83a77mp8k1y8z524c9rzdqgd8rzwczd6zwmw86a00xiimg"))))
;; When cross-compiling, we need the cross Coreutils and sed.
;; Otherwise just use those from %FINAL-INPUTS.
@ -1829,7 +1859,7 @@ module slots, and the list of I/O ports (e.g. serial, parallel, USB).")
(define-public acpica
(package
(name "acpica")
(version "20200528")
(version "20200717")
(source (origin
(method url-fetch)
(uri (string-append
@ -1837,7 +1867,7 @@ module slots, and the list of I/O ports (e.g. serial, parallel, USB).")
version ".tar.gz"))
(sha256
(base32
"01ajxnz9dpnvdbib7yv20dw21a1yyfgwiw3whg0xi57cf4app2md"))))
"0jyy71szjr40c8v40qqw6yh3gfk8d6sl3nay69zrn5d88i3r0jca"))))
(build-system gnu-build-system)
(native-inputs `(("flex" ,flex)
("bison" ,bison)))
@ -2049,7 +2079,7 @@ track changes in important system configuration files.")
(define-public libcap-ng
(package
(name "libcap-ng")
(version "0.7.10")
(version "0.7.11")
(source (origin
(method url-fetch)
(uri (string-append
@ -2057,7 +2087,7 @@ track changes in important system configuration files.")
version ".tar.gz"))
(sha256
(base32
"1gzzy12agfa9ddipdf72h9y68zqqnvsjjylv4vnq6hj4w2safk58"))))
"1s8akhnnazk0b5c6z5i3x54rjb26p8pz2wdl1m21ml3231qmr0c5"))))
(build-system gnu-build-system)
(arguments
`(#:configure-flags
@ -3170,7 +3200,7 @@ tool for remote execution and deployment.")
(define-public neofetch
(package
(name "neofetch")
(version "7.0.0")
(version "7.1.0")
(source (origin
(method git-fetch)
(uri (git-reference
@ -3179,7 +3209,7 @@ tool for remote execution and deployment.")
(file-name (git-file-name name version))
(sha256
(base32
"0xc0fdc7n5bhqirh83agqiy8r14l14zwca07czvj8vgnsnfybslr"))))
"0i7wpisipwzk0j62pzaigbiq42y1mn4sbraz4my2jlz6ahwf00kv"))))
(build-system gnu-build-system)
(arguments
`(#:tests? #f ; there are no tests
@ -3344,14 +3374,14 @@ information tool.")
(define-public nnn
(package
(name "nnn")
(version "3.3")
(version "3.4")
(source
(origin
(method url-fetch)
(uri (string-append "https://github.com/jarun/nnn/releases/download/v"
version "/nnn-v" version ".tar.gz"))
(sha256
(base32 "1jiaygylwrlz6rlls1q69xw10j6ypr96yshsbzisg0adk37lbchn"))))
(base32 "189h950m1jjrnhvgcvzk6nj89l58rkxim7bxa0441ssajxpaw0vq"))))
(build-system gnu-build-system)
(inputs
`(("ncurses" ,ncurses)
@ -3562,7 +3592,7 @@ Python loading in HPC environments.")
(let ((real-name "inxi"))
(package
(name "inxi-minimal")
(version "3.1.04-1")
(version "3.1.05-2")
(source
(origin
(method git-fetch)
@ -3571,7 +3601,7 @@ Python loading in HPC environments.")
(commit version)))
(file-name (git-file-name real-name version))
(sha256
(base32 "1mirnrrqfjyl2r7fwnpjlk37i5hf8f7lxv2yxcbdfjf2b3dfbpvl"))))
(base32 "1a7nl2wk49yz5hcrph692xh5phv1mdg1m5cbvgv3ya12c6r32pa2"))))
(build-system trivial-build-system)
(inputs
`(("bash" ,bash-minimal)
@ -3954,21 +3984,22 @@ supplied by the user when logging in.")
(define-public jc
(package
(name "jc")
(version "1.11.8")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/kellyjonbrazil/jc")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
"0rkckbgm04ql4r48wjgljfiqvsz36n99yqcpcyna8lvlm8h4nmwa"))))
(version "1.13.4")
(source
(origin
;; The PyPI tarball lacks the test suite.
(method git-fetch)
(uri (git-reference
(url "https://github.com/kellyjonbrazil/jc")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0rwvyyrdnw43pixp8h51rncq2inc9pbbj1j2191y5si00pjw34zr"))))
(build-system python-build-system)
(propagated-inputs
`(("python-ruamel.yaml" ,python-ruamel.yaml)
("python-xmltodict" ,python-xmltodict)
("python-pygments" ,python-pygments)))
`(("python-pygments" ,python-pygments)
("python-ruamel.yaml" ,python-ruamel.yaml)
("python-xmltodict" ,python-xmltodict)))
(home-page "https://github.com/kellyjonbrazil/jc")
(synopsis "Convert the output of command-line tools to JSON")
(description "@code{jc} JSONifies the output of many CLI tools and

View File

@ -79,6 +79,11 @@
(ice-9 match))
#:phases
(modify-phases %standard-phases
;; This allows us to call the 'agda' binary before installing.
(add-after 'unpack 'set-ld-library-path
(lambda _
(setenv "LD_LIBRARY_PATH" (string-append (getcwd) "/dist/build"))
#t))
;; FIXME: This is a copy of the standard configure phase with a tiny
;; difference: this package needs the -package-db flag to be passed
;; to "runhaskell" in addition to the "configure" action, because
@ -90,30 +95,25 @@
#:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(name-version (strip-store-file-name out))
(input-dirs (match inputs
(((_ . dir) ...)
dir)
(_ '())))
(ghc-path (getenv "GHC_PACKAGE_PATH"))
(params (append `(,(string-append "--prefix=" out))
`(,(string-append "--libdir=" out "/lib"))
`(,(string-append "--bindir=" out "/bin"))
`(,(string-append
"--docdir=" out
"/share/doc/" name-version))
'("--libsubdir=$compiler/$pkg-$version")
'("--package-db=../package.conf.d")
'("--global")
`(,@(map
(cut string-append "--extra-include-dirs=" <>)
(search-path-as-list '("include") input-dirs)))
`(,@(map
(cut string-append "--extra-lib-dirs=" <>)
(search-path-as-list '("lib") input-dirs)))
(if tests?
'("--enable-tests")
'())
configure-flags)))
(params
`(,(string-append "--prefix=" out)
,(string-append "--libdir=" out "/lib")
,(string-append "--docdir=" out
"/share/doc/" name-version)
"--libsubdir=$compiler/$pkg-$version"
"--package-db=../package.conf.d"
"--global"
,@(if tests?
'("--enable-tests")
'())
;; Build and link with shared libraries
"--enable-shared"
"--enable-executable-dynamic"
"--ghc-option=-fPIC"
,(string-append "--ghc-option=-optl=-Wl,-rpath=" out
"/lib/$compiler/$pkg-$version")
,@configure-flags)))
(unsetenv "GHC_PACKAGE_PATH")
(apply invoke "runhaskell" "-package-db=../package.conf.d"
"Setup.hs" "configure" params)

View File

@ -28,6 +28,7 @@
#:use-module (guix download)
#:use-module (guix git-download)
#:use-module (gnu packages autotools)
#:use-module (gnu packages check)
#:use-module (gnu packages imagemagick)
#:use-module (gnu packages glib)
#:use-module (gnu packages gtk)
@ -37,8 +38,52 @@
#:use-module (gnu packages python-xyz)
#:use-module (gnu packages qt)
#:use-module (gnu packages video)
#:use-module (guix build-system cmake)
#:use-module (guix build-system gnu))
(define-public zxing-cpp
(package
(name "zxing-cpp")
(version "1.0.8")
(source
(origin
(method git-fetch)
(uri
(git-reference
(url "https://github.com/nu-book/zxing-cpp.git")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "011sq8wcjfxbnd8sj6bf2fgkamlp8gj6q835g61c952npvwsnl71"))))
(native-inputs
`(("googletest-source" ,(package-source googletest))))
(build-system cmake-build-system)
(arguments
`(#:out-of-source? #f
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'unpack-googletest
;; Copy the googletest sources to where the CMake build expects them.
(lambda* (#:key inputs #:allow-other-keys)
(let ((source (assoc-ref inputs "googletest-source"))
(target "test/unit/googletest-src"))
(mkdir-p target)
(copy-recursively source target)
;; Disable downloading via ExternalProject.
(substitute* "test/unit/CMakeLists.txt.in"
(("ExternalProject_Add\\(") "message("))
#t)))
(replace 'check
(lambda _
(with-directory-excursion "test/unit"
(invoke "cmake" ".")
(invoke "make")
(invoke "./ZXingUnitTest"))
#t)))))
(synopsis "C++ port of ZXing")
(description "ZXing-CPP is a barcode scanning library.")
(home-page "https://github.com/nu-book/zxing-cpp")
(license license:asl2.0)))
(define-public barcode
(package

View File

@ -4,7 +4,7 @@
;;; Copyright © 2016, 2017, 2018, 2019, 2020 Nicolas Goaziou <mail@nicolasgoaziou.fr>
;;; Copyright © 2014, 2018 Mark H Weaver <mhw@netris.org>
;;; Copyright © 2016, 2018, 2019 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2017 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2017, 2020 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2017, 2018, 2019, 2020 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2017 Marius Bakke <mbakke@fastmail.com>
;;; Copyright © 2017, 2019 Eric Bavier <bavier@member.fsf.org>
@ -74,7 +74,7 @@
(define-public mpfrcx
(package
(name "mpfrcx")
(version "0.5")
(version "0.6")
(source (origin
(method url-fetch)
(uri (string-append
@ -82,7 +82,7 @@
version ".tar.gz"))
(sha256
(base32
"1s968480ymv6w0rnvfp9mxvx98hvi29fkvw8nk4ggzc6azxgwybs"))))
"0gz5rma9al2jrifpknqkcnd9dkf8l05jcxy3s4ghwhd4y3h5dwia"))))
(build-system gnu-build-system)
(propagated-inputs
`(("gmp" ,gmp)
@ -151,7 +151,12 @@ line applications.")
(define-public fplll
(package
(name "fplll")
(version "5.2.1")
;; The most recent version 5.3.3 fails in the configure phase:
;; ./configure: line 12956: syntax error near unexpected token `LIBQD,'
;; ./configure: line 12956: ` PKG_CHECK_MODULES(LIBQD, qd, have_libqd="yes",'
;; The error disappears when adding qd as an input; but this is
;; supposed to be an optional input.
(version "5.3.2")
(source (origin
(method git-fetch)
(uri (git-reference
@ -160,7 +165,7 @@ line applications.")
(file-name (git-file-name name version))
(sha256
(base32
"015qmrd7nfaysbv1hbwiprz9g6hnww1y1z1xw8f43ysb7k1b5nbg"))))
"00iyz218ywspizjiimrjdcqvdqmrsb2367zyy3vkmypnf9i9l680"))))
(build-system gnu-build-system)
(native-inputs
`(("autoconf" ,autoconf)
@ -198,7 +203,7 @@ the real span of the lattice.")
(define-public python-fpylll
(package
(name "python-fpylll")
(version "0.4.1")
(version "0.5.2")
(source
(origin
;; Pypi contains and older release, so we use a tagged release from
@ -210,7 +215,7 @@ the real span of the lattice.")
(file-name (git-file-name name version))
(sha256
(base32
"01x2sqdv0sbjj4g4waj0hj4rcn4bq7h17442xaqwbznym9azmn9w"))))
"1a25iibihph626jl4wbs4b77xc4a2c4nfc2ypscf9wpani3dnhjf"))))
(build-system python-build-system)
(inputs
`(("fplll" ,fplll)
@ -346,7 +351,8 @@ varieties, i.e. Jacobians of hyperelliptic curves.
It can also be used to compute theta constants at arbitrary
precision.")
(license license:gpl3+)
(home-page "http://cmh.gforge.inria.fr/")))
(home-page
"https://gitlab.inria.fr/cmh/cmh#cmh-computation-of-genus-2-class-polynomials")))
(define-public giac
(package
@ -440,14 +446,13 @@ or text interfaces) or as a C++ library.")
(define-public flint
(package
(name "flint")
(version "2.6.0")
(source (origin
(method url-fetch)
(uri (string-append
"http://flintlib.org/flint-"
version ".tar.gz"))
(sha256 (base32
"0h08a71kn8347zsqjamqnmrxjpsnnzpmhvxb6d2xmfrcs6nyv2ch"))))
(version "2.6.3")
(source
(origin
(method url-fetch)
(uri (string-append "http://flintlib.org/flint-" version ".tar.gz"))
(sha256
(base32 "1qrf6hzbbmg7mhkhbb0bab8z2xpdnba5cj4kmmf72lzs0457a6nf"))))
(build-system gnu-build-system)
(inputs
`(("ntl" ,ntl)))
@ -455,7 +460,7 @@ or text interfaces) or as a C++ library.")
`(("gmp" ,gmp)
("mpfr" ,mpfr))) ; header files from both are included by flint/arith.h
(arguments
`(#:parallel-tests? #f ; seems to be necessary on arm
`(#:parallel-tests? #f ; seems to be necessary on arm
#:phases
(modify-phases %standard-phases
(add-before 'configure 'newer-c++
@ -469,8 +474,8 @@ or text interfaces) or as a C++ library.")
(gmp (assoc-ref inputs "gmp"))
(mpfr (assoc-ref inputs "mpfr"))
(ntl (assoc-ref inputs "ntl")))
;; do not pass "--enable-fast-install", which makes the
;; homebrew configure process fail
;; Do not pass "--enable-fast-install", which makes the
;; homebrew configure process fail.
(invoke "./configure"
(string-append "--prefix=" out)
(string-append "--with-gmp=" gmp)
@ -489,7 +494,7 @@ Operations that can be performed include conversions, arithmetic,
GCDs, factoring, solving linear systems, and evaluating special
functions. In addition, FLINT provides various low-level routines for
fast arithmetic.")
(license license:gpl2+)
(license license:lgpl2.1+)
(home-page "http://flintlib.org/")))
(define-public arb

View File

@ -5,7 +5,7 @@
;;; Copyright © 2017 Julien Lepiller <julien@lepiller.eu>
;;; Copyright © 2017 Hartmut Goebel <h.goebel@crazy-compilers.com>
;;; Copyright © 2017 Maxim Cournoyer <maxim.cournoyer@gmail.com>
;;; Copyright © 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2018, 2019, 2020 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2018 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2019 Andreas Enge <andreas@enge.fr>
;;; Copyright © 2019 Ricardo Wurmus <rekado@elephly.net>
@ -126,9 +126,9 @@ use their packages mostly unmodified in our Android NDK build system.")
;; Big thanks to them for laying the groundwork.
;; The version tag is consistent between all repositories.
(define (android-platform-version) "7.1.2_r36")
(define-public (android-platform-version) "7.1.2_r36")
(define (android-platform-system-core version)
(define-public (android-platform-system-core version)
(origin
(method git-fetch)
(uri (git-reference
@ -185,7 +185,7 @@ use their packages mostly unmodified in our Android NDK build system.")
(base32
checksum))))
(define android-liblog
(define-public android-liblog
(package
(name "android-liblog")
(version (android-platform-version))
@ -201,7 +201,16 @@ use their packages mostly unmodified in our Android NDK build system.")
(lambda* (#:key outputs #:allow-other-keys)
(let ((out (assoc-ref outputs "out")))
(symlink "liblog.so.0" (string-append out "/lib/liblog.so"))
#t))))))
#t)))
(add-after 'install 'install-headers
(lambda* (#:key outputs #:allow-other-keys)
(let ((out (assoc-ref outputs "out")))
(copy-recursively
"../include/log" (string-append out "/include/log"))
;; For android/log.h, the only header in the android directory.
(copy-recursively
"../include/android" (string-append out "/include/android")))
#t)))))
(home-page "https://developer.android.com/")
(synopsis "Logging library from the Android platform.")
(description "@code{liblog} represents an interface to the volatile Android
@ -229,7 +238,7 @@ in Main, System, Radio and Events sub-logs.")
various Android core host applications.")
(license license:asl2.0)))
(define android-libcutils
(define-public android-libcutils
(package
(name "android-libcutils")
(version (android-platform-version))
@ -691,7 +700,7 @@ file system.")
(define-public android-udev-rules
(package
(name "android-udev-rules")
(version "20191103")
(version "20200613")
(source
(origin
(method git-fetch)
@ -700,7 +709,7 @@ file system.")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "0x2f2sv0x0ry7kccp47s0hlxps3hbpg37dj3xjjgpdm5hmn2cjq3"))))
(base32 "0cf5br8x6iwxc1cifv0i1klw7skgs8hghdx6qlqby68kyqg81bb2"))))
(build-system trivial-build-system)
(native-inputs `(("source" ,source)))
(arguments

View File

@ -1,6 +1,6 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2015, 2017 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2018, 2019, 2020 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2019 Pkill -9 <pkill9@runbox.com>
;;;
;;; This file is part of GNU Guix.
@ -264,7 +264,7 @@ waveform until they line up with the proper sounds.")
(define-public pencil2d
(package
(name "pencil2d")
(version "0.6.4")
(version "0.6.5")
(source (origin
(method git-fetch)
(uri (git-reference
@ -273,7 +273,7 @@ waveform until they line up with the proper sounds.")
(file-name (git-file-name name version))
(sha256
(base32
"0zi8x0w8n817zds2lyw9l8j33c03kiybkrcyy3s5fg66mchmrwnr"))))
"06l60wawkhb3wrsj79p5f7ka5cgcyly36pbvm95fvwbkmlvmjzf1"))))
(build-system gnu-build-system)
(inputs
`(("qtbase" ,qtbase)

View File

@ -404,8 +404,12 @@ dictionaries, including personal ones.")
(find-files "speller"
,(string-append language ".*\\.dic$"))))
(install-file ,(string-append "speller/" language ".aff")
hunspell)
;; Install affix files corresponding to installed dictionaries
(for-each (lambda (dic)
(install-file (string-append
"speller/" (basename dic ".dic") ".aff")
hunspell))
(find-files hunspell ".*\\.dic$"))
(symlink hunspell (string-append myspell "/dicts"))
(for-each (lambda (file)
(install-file file doc))

View File

@ -56,20 +56,20 @@
(define-public cfitsio
(package
(name "cfitsio")
(version "3.47")
(version "3.49")
(source
(origin
(method url-fetch)
(uri (string-append
"http://heasarc.gsfc.nasa.gov/FTP/software/fitsio/c/"
name "-" version ".tar.gz"))
"cfitsio-" version ".tar.gz"))
(sha256
(base32 "1vzlxnrjckz78p2wf148v2z3krkwnykfqvlj42sz3q711vqid1a1"))))
(base32 "1cyl1qksnkl3cq1fzl4dmjvkd6329b57y9iqyv44wjakbh6s4rav"))))
(build-system gnu-build-system)
;; XXX Building with curl currently breaks wcslib. It doesn't use
;; pkg-config and hence won't link with -lcurl.
(arguments
`(#:tests? #f ; no tests
`(#:tests? #f ; no tests
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'patch-paths

View File

@ -32,6 +32,7 @@
;;; Copyright © 2020 Guillaume Le Vaillant <glv@posteo.net>
;;; Copyright © 2020 Jonathan Frederickson <jonathan@terracrypt.net>
;;; Copyright © 2020 Giacomo Leidi <goodoldpaul@autistici.org>
;;; Copyright © 2020 Vinicius Monego <monego@posteo.net>
;;;
;;; This file is part of GNU Guix.
;;;
@ -113,6 +114,7 @@
#:use-module (gnu packages xml)
#:use-module (gnu packages xorg)
#:use-module (guix build-system cmake)
#:use-module (guix build-system copy)
#:use-module (guix build-system glib-or-gtk)
#:use-module (guix build-system gnu)
#:use-module (guix build-system meson)
@ -127,6 +129,296 @@
#:use-module (srfi srfi-1)
#:use-module (srfi srfi-26))
(define-public opensles
(package
(name "opensles")
(version "1.1.0")
(source
(origin
(method git-fetch)
(uri
(git-reference
(url "https://github.com/KhronosGroup/OpenSL-ES-Registry.git")
(commit "ea5104bf37bf525c25e6ae2386586048179d0fda")))
(file-name (git-file-name name version))
(sha256
(base32 "0j5bm7h3ahz66f23i9abwc0y10agfkpksnj6y078x2nichq66h4f"))
(patches
(search-patches "opensles-add-license-file.patch"))))
(build-system copy-build-system)
(arguments
`(#:phases
(modify-phases %standard-phases
(add-after 'install 'clean
(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out")))
(mkdir-p (string-append out "/etc"))
(mkdir-p (string-append out "/include"))
(mkdir-p (string-append out "/share"))
(rename-file
(string-append out "/api/1.1/OpenSLES_IID.c")
(string-append out "/etc/OpenSLES_IID.c"))
(rename-file
(string-append out "/api/1.1/OpenSLES.h")
(string-append out "/include/OpenSLES.h"))
(rename-file
(string-append out "/api/1.1/OpenSLES_Platform.h")
(string-append out "/include/OpenSLES_Platform.h"))
(rename-file
(string-append out "/api/1.1/README.txt")
(string-append out "/share/README.txt"))
(rename-file
(string-append out "/LICENSE.txt")
(string-append out "/share/LICENSE.txt"))
(for-each delete-file-recursively
(list
(string-append out "/api")
(string-append out "/specs")))
(for-each delete-file
(list
(string-append out "/CODE_OF_CONDUCT.md")
(string-append out "/index.php")
(string-append out "/README.md"))))
#t)))))
(synopsis "Embedded Audio Acceleration")
(description "OpenSLES is a royalty-free, cross-platform,
hardware-accelerated audio API tuned for embedded systems. It provides a
standardized, high-performance, low-latency method to access audio
functionality for developers of native applications on embedded mobile
multimedia devices, enabling straightforward cross-platform deployment of
hardware and software audio capabilities, reducing implementation effort, and
promoting the market for advanced audio.")
(home-page "https://www.khronos.org/opensles/")
(license (license:non-copyleft "file:///LICENSE.txt"))))
(define-public wildmidi
(package
(name "wildmidi")
(version "0.4.3")
(source
(origin
(method git-fetch)
(uri
(git-reference
(url "https://github.com/Mindwerks/wildmidi.git")
(commit (string-append name "-" version))))
(file-name (git-file-name name version))
(sha256
(base32 "01f4a9c5xlap5a4pkfnlgkzk5pjlk43zkq6fnw615ghya04g6hrl"))))
(build-system cmake-build-system)
(arguments
`(#:tests? #f ; No target
#:configure-flags
(list
"-DWANT_ALSA=ON"
"-DWANT_OSS=ON"
"-DWANT_OPENAL=ON")))
(inputs
`(("alsa" ,alsa-lib)
("openal" ,openal)))
(synopsis "Software Synthesizer")
(description "WildMIDI is a simple software midi player which has a core
softsynth library that can be use with other applications.")
(home-page "https://www.mindwerks.net/projects/wildmidi/")
(license
(list
;; Library.
license:lgpl3+
;; Player.
license:gpl3+))))
(define-public webrtc-audio-processing
(package
(name "webrtc-audio-processing")
(version "0.3.1")
(source
(origin
(method url-fetch)
(uri
(string-append "http://freedesktop.org/software/pulseaudio/"
name "/" name "-" version ".tar.xz"))
(sha256
(base32 "1gsx7k77blfy171b6g3m0k0s0072v6jcawhmx1kjs9w5zlwdkzd0"))))
(build-system gnu-build-system)
(synopsis "WebRTC's Audio Processing Library")
(description "WebRTC-Audio-Processing library based on Google's
implementation of WebRTC.")
(home-page
"https://freedesktop.org/software/pulseaudio/webrtc-audio-processing/")
(license (license:non-copyleft "file:///COPYING"))))
(define-public vo-aacenc
(package
(name "vo-aacenc")
(version "0.1.3")
(source
(origin
(method url-fetch)
(uri
(string-append "https://sourceforge.net/projects/opencore-amr/files/"
name "/" name "-" version ".tar.gz"))
(sha256
(base32 "0dhghm3c8pqrriwwyj5x9i0yf52fmdfijbgqqkvqvwarldvp86p5"))))
(build-system gnu-build-system)
(synopsis "VisualOn AAC Encoder")
(description "VO-AACENC is the VisualOn implementation of Advanced Audio
Coding (AAC) encoder.")
(home-page "https://sourceforge.net/projects/opencore-amr/")
(license license:asl2.0)))
(define-public tinyalsa
(package
(name "tinyalsa")
(version "1.1.1")
(source
(origin
(method git-fetch)
(uri
(git-reference
(url "https://github.com/tinyalsa/tinyalsa.git")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "0ajyvml5bnzvhiyyrn42gqwgg23ssxkfh09rvsnywhzxhd0xai4h"))))
(build-system gnu-build-system)
(arguments
`(#:tests? #f ; No target
#:phases
(modify-phases %standard-phases
(delete 'configure))
#:make-flags
(list
(string-append "PREFIX=" (assoc-ref %outputs "out")))))
(synopsis "ALSA interfacing library")
(description "TinyALSA is a small library to interface with ALSA in the
Linux kernel.")
(home-page "https://github.com/tinyalsa/tinyalsa")
(license (license:non-copyleft "file:///NOTICE"))))
(define-public libopenmpt
(package
(name "libopenmpt")
(version "0.5.1")
(source
(origin
(method url-fetch)
(uri
(string-append "https://download.openmpt.org/archive/libopenmpt/src/"
"libopenmpt-" version "+release.autotools.tar.gz"))
(sha256
(base32 "1vpalfsrkbx4vyrh1qy564lr91jwdxlbjivv5gzf8zcywxasf0xa"))))
(build-system gnu-build-system)
(native-inputs
`(("doxygen" ,doxygen)
("perl" ,perl)
("pkg-config" ,pkg-config)))
(inputs
`(("alsa" ,alsa-lib)
("flac" ,flac)
("mpg123" ,mpg123)
("portaudio" ,portaudio)
("pulseaudio" ,pulseaudio)
("sdl2" ,sdl2)
("sndfile" ,libsndfile)
("vorbis" ,libvorbis)
("zlib" ,zlib)))
(synopsis "Audio tracking library")
(description "LibOpenMPT is a cross-platform C++ and C module playback
library. It is based on the player code of the Open ModPlug Tracker project.")
(home-page "https://openmpt.org/")
(license (license:non-copyleft "file:///LICENSE"))))
(define-public libofa
(package
(name "libofa")
(version "0.9.3")
(source
(origin
(method url-fetch)
(uri
(string-append "https://storage.googleapis.com/"
"google-code-archive-downloads/v2/code.google.com/"
"musicip-libofa/" name "-" version ".tar.gz"))
(sha256
(base32 "184ham039l7lwhfgg0xr2vch2xnw1lwh7sid432mh879adhlc5h2"))
(patches
(search-patches
"libofa-ftbfs-1.diff"
"libofa-curl.diff"
"libofa-ftbfs-2.diff"))))
(build-system gnu-build-system)
(native-inputs
`(("pkg-config" ,pkg-config)))
(inputs
`(("curl" ,curl)
("expat" ,expat)))
(propagated-inputs
`(("fftw" ,fftw)))
(synopsis "Open Fingerprint Architecture")
(description "LibOFA is an audio fingerprint library, created and provided
by MusicIP.")
(home-page "https://code.google.com/archive/p/musicip-libofa/")
(license license:gpl2+)))
(define-public faac
(package
(name "faac")
(version "1.30")
(source
(origin
(method url-fetch)
(uri
(string-append "https://sourceforge.net/projects/faac/files/faac-src/"
"faac-1.30/faac-1_30.tar.gz/download"))
(sha256
(base32 "1lmj0dib3mjp84jhxc5ddvydkzzhb0gfrdh3ikcidjlcb378ghxd"))))
(build-system gnu-build-system)
(native-inputs
`(("autoconf" ,autoconf)
("automake" ,automake)
("libtool" ,libtool)
("pkg-config" ,pkg-config)))
(synopsis "Freeware Advanced Audio Coder")
(description "FAAC is an MPEG-4 and MPEG-2 AAC encoder.")
(home-page "https://www.audiocoding.com/faac.html")
(license
(list
;; ISO MPEG-4 reference code.
license:gpl2+
;; Others.
license:lgpl2.0+))))
(define-public libtimidity
(package
(name "libtimidity")
(version "0.2.6")
(source
(origin
(method url-fetch)
(uri
(string-append "https://sourceforge.net/projects/" name "/files/"
name "/" version "/" name "-" version ".tar.gz"))
(sha256
(base32 "0p2px0m907gi1zpdr0l9adq25jl89j85c11ag9s2g4yc6n1nhgfm"))))
(build-system gnu-build-system)
(arguments
`(#:tests? #f)) ; XXX: LibTiMidity could not be initialised
(native-inputs
`(("pkg-config" ,pkg-config)))
(inputs
`(("ao" ,ao)))
(synopsis "MIDI to WAVE converter library")
(description "LibTiMidity is a MIDI to WAVE converter library that uses
Gravis Ultrasound-compatible patch files to generate digital audio data from
General MIDI files.")
(home-page "http://libtimidity.sourceforge.net/")
(license
;; This project is dual-licensed.
;; Either of the following licenses can be exercised.
(list
license:lgpl2.1+
license:artistic2.0))))
(define-public vo-amrwbenc
(package
(name "vo-amrwbenc")
@ -474,7 +766,7 @@ engineers, musicians, soundtrack editors and composers.")
;; SSE instructions are available on Intel systems only.
,@(if (any (cute string-prefix? <> (or (%current-target-system)
(%current-system)))
'("x64_64" "i686"))
'("x86_64" "i686"))
'()
'("--enable-sse=no"))
;; portmidi, libid3tag and libmad provide no .pc files, so
@ -1326,7 +1618,7 @@ follower.")
(define-public fluidsynth
(package
(name "fluidsynth")
(version "2.1.3")
(version "2.1.4")
(source (origin
(method git-fetch)
(uri (git-reference
@ -1335,7 +1627,7 @@ follower.")
(file-name (git-file-name name version))
(sha256
(base32
"0dv6jprz2bzasvk91x2rv2pqyyvxkc72s4r6vsqw723a3kqa5bhc"))))
"1r3khwyw57ybg5m4x0rvdzq7hgw2484sd52k6bm19akbw8yicfna"))))
(build-system cmake-build-system)
(arguments
'(#:tests? #f ; no check target
@ -1386,22 +1678,22 @@ also play midifiles using a Soundfont.")
(define-public faad2
(package
(name "faad2")
(version "2.8.6")
(source (origin
(method url-fetch)
(uri (string-append "mirror://sourceforge/faac/faad2-src/faad2-"
(version-major+minor version) ".0/"
"faad2-" version ".tar.gz"))
(sha256
(base32
"089zqykqgmmysznvk0bi2pfvdqwclnn540d0zks83sv2pynpfjb5"))))
(version "2.8.8")
(source
(origin
(method url-fetch)
(uri
(string-append "mirror://sourceforge/faac/faad2-src/faad2-"
(version-major+minor version) ".0/"
"faad2-" version ".tar.gz"))
(sha256
(base32 "0va284hndhn0ynm4lyn219qw4y8wa4agfkqgwlaji7bqp6nkyp4q"))))
(build-system gnu-build-system)
(home-page "https://www.audiocoding.com/faad2.html")
(synopsis "MPEG-4 and MPEG-2 AAC decoder")
(description
"FAAD2 is an MPEG-4 and MPEG-2 AAC decoder supporting LC, Main, LTP, SBR,
PS, and DAB+.")
(license license:gpl2)))
"FAAD2 is an MPEG-4 and MPEG-2 AAC decoder supporting LC, Main, LTP, SBR, -PS, and DAB+.")
(license license:gpl2+)))
(define-public faust
(package
@ -1991,6 +2283,48 @@ with applications that support them (e.g. PulseAudio).")
implementation of the Open Sound Control (@dfn{OSC}) protocol.")
(license license:lgpl2.1+)))
(define-public rtaudio
(package
(name "rtaudio")
(version "5.1.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/thestk/rtaudio")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "156c2dgh6jrsyfn1y89nslvaxm4yifmxridsb708yvkaym02w2l8"))))
(build-system cmake-build-system)
(native-inputs
`(("pkg-config" ,pkg-config)))
(inputs
`(("alsa-lib" ,alsa-lib)
("jack" ,jack-1)
("pulseaudio" ,pulseaudio)))
(synopsis "Common API for real-time audio I/O")
(description
"RtAudio is a set of C++ classes that provides a common API for real-time
audio input/output. It was designed with the following objectives:
@itemize
@item object-oriented C++ design
@item simple, common API across all supported platforms
@item only one source and one header file for easy inclusion in programming
projects
@item allow simultaneous multi-api support
@item support dynamic connection of devices
@item provide extensive audio device parameter control
@item allow audio device capability probing
@item automatic internal conversion for data format, channel number
compensation, (de)interleaving, and byte-swapping
@end itemize")
(home-page "https://www.music.mcgill.ca/~gary/rtaudio/")
;; License is expat with a non-binding request to send modifications to
;; original developer.
(license license:expat)))
(define-public python-pyaudio
(package
(name "python-pyaudio")
@ -2582,9 +2916,12 @@ aimed at audio/musical applications.")
("automake" ,automake)
("pkg-config" ,pkg-config)
("libtool" ,libtool)))
(synopsis "Real-time library for sampling rate conversion")
(description "The @command{resample} software package contains free
sampling-rate conversion and filter design utilities.")
(synopsis "Sampling rate conversion and filter design utilities")
(description "This package contains the @command{resample} and
@command{windowfilter} command line utilities. The @command{resample} command
allows changing the sampling rate of a sound file, while the
@command{windowfilter} command allows to design Finite Impulse Response (FIR)
filters using the so-called @emph{window method}.")
(home-page "https://ccrma.stanford.edu/~jos/resample/Free_Resampling_Software.html")
(license license:lgpl2.1+)))
@ -2858,17 +3195,31 @@ stretching and pitch scaling of audio. This package contains the library.")
(define-public wavpack
(package
(name "wavpack")
(version "5.3.0")
(source (origin
(method url-fetch)
(uri (string-append "http://www.wavpack.com/"
"wavpack-" version ".tar.xz"))
(sha256
(base32
"01r351ggha9pdfk7p601dlxac4ka1q89lgnb6zqk00zf1fd3fi5l"))))
(version "5.3.2")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/dbry/WavPack")
(commit "e4e8d191e8dd74cbdbeaef3232c16a7ef517e68d")))
(sha256
(base32 "1zj8svk6giy1abq3940sz32ygz7zldppxl47852zgn5wfm3l2spx"))
(file-name (git-file-name name version))))
(build-system gnu-build-system)
(arguments
'(#:configure-flags '("--disable-static")))
'(#:configure-flags
(list "--disable-static")
#:phases
(modify-phases %standard-phases
(replace 'bootstrap
;; Running ./autogen.sh would cause premature configuration.
(lambda _
(invoke "autoreconf" "-vif")
#t)))))
(native-inputs
`(("autoconf" ,autoconf)
("automake" ,automake)
("libtool" ,libtool)))
(home-page "http://www.wavpack.com/")
(synopsis "Hybrid lossless audio codec")
(description
@ -3662,14 +4013,14 @@ on the ALSA software PCM plugin.")
(define-public snd
(package
(name "snd")
(version "20.5")
(version "20.6")
(source (origin
(method url-fetch)
(uri (string-append "ftp://ccrma-ftp.stanford.edu/pub/Lisp/"
"snd-" version ".tar.gz"))
(sha256
(base32
"1frg64q2d8cia6v7jia7kahzx0apwdl0z252mzlbwqdz5960nv90"))))
"1h4dsq5xcvwjbnayhn719cln0lg199w3xm59sl9d2jz8bq78gqgj"))))
(build-system glib-or-gtk-build-system)
(arguments
`(#:tests? #f ; no tests
@ -4384,6 +4735,38 @@ minimum.")
(home-page "https://git.zrythm.org/cgit/ztoolkit/")
(license license:agpl3+)))
(define-public libinstpatch
(package
(name "libinstpatch")
(version "1.1.5")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/swami/libinstpatch")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0psx4hc5yksfd3k2xqsc7c8lbz2d4yybikyddyd9hlkhq979cmjb"))))
(build-system cmake-build-system)
(arguments
`(#:tests? #f)) ;there are no tests
(native-inputs
`(("glib:bin" ,glib "bin")
("pkg-config" ,pkg-config)))
(inputs
`(("glib" ,glib)
("libsndfile" ,libsndfile)))
(home-page "http://www.swamiproject.org/")
(synopsis "Instrument file software library")
(description
"libInstPatch is a library for processing digital sample based MIDI
instrument \"patch\" files. The types of files libInstPatch supports are used
for creating instrument sounds for wavetable synthesis. libInstPatch provides
an object framework (based on GObject) to load patch files, which can then be
edited, converted, compressed and saved.")
(license license:lgpl2.1)))
(define-public ztoolkit-rsvg
(package
(inherit ztoolkit)

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -371,24 +371,64 @@ exec_with_proot (const char *store, int argc, char *argv[])
#if HAVE_EXEC_WITH_LOADER
/* Traverse PATH, a NULL-terminated string array, and return a colon-separated
search path where each item of PATH has been relocated to STORE. The
result is malloc'd. */
static char *
relocated_search_path (const char *path[], const char *store)
{
char *new_path;
size_t size = 0;
for (size_t i = 0; path[i] != NULL; i++)
size += strlen (store) + strlen (path[i]) + 1; /* upper bound */
new_path = xmalloc (size + 1);
new_path[0] = '\0';
for (size_t i = 0; path[i] != NULL; i++)
{
if (strncmp (path[i], original_store,
sizeof original_store - 1) == 0)
{
strcat (new_path, store);
strcat (new_path, path[i] + sizeof original_store - 1);
}
else
strcat (new_path, path[i]); /* possibly $ORIGIN */
strcat (new_path, ":");
}
new_path[strlen (new_path) - 1] = '\0'; /* Remove trailing colon. */
return new_path;
}
/* Execute the wrapped program by invoking the loader (ld.so) directly,
passing it the audit module and preloading libfakechroot.so. */
static void
exec_with_loader (const char *store, int argc, char *argv[])
{
static const char *audit_library_path[] = LOADER_AUDIT_RUNPATH;
char *loader = concat (store,
PROGRAM_INTERPRETER + sizeof original_store);
size_t loader_specific_argc = 6;
size_t loader_specific_argc = 8;
size_t loader_argc = argc + loader_specific_argc;
char *loader_argv[loader_argc + 1];
loader_argv[0] = argv[0];
loader_argv[1] = "--audit";
loader_argv[2] = concat (store,
LOADER_AUDIT_MODULE + sizeof original_store);
loader_argv[3] = "--preload";
loader_argv[4] = concat (store,
/* The audit module depends on libc.so and libgcc_s.so. */
loader_argv[3] = "--library-path";
loader_argv[4] = relocated_search_path (audit_library_path, store);
loader_argv[5] = "--preload";
loader_argv[6] = concat (store,
FAKECHROOT_LIBRARY + sizeof original_store);
loader_argv[5] = concat (store,
loader_argv[7] = concat (store,
"@WRAPPED_PROGRAM@" + sizeof original_store);
for (size_t i = 0; i < argc; i++)
@ -401,10 +441,23 @@ exec_with_loader (const char *store, int argc, char *argv[])
char *new_root = mkdtemp (strdup ("/tmp/guix-exec-XXXXXX"));
mirror_directory ("/", new_root, make_symlink);
/* 'mirror_directory' created a symlink for the ancestor of ORIGINAL_STORE,
typically "/gnu". Remove that entry so we can create NEW_STORE
below. */
const char *slash = strchr (original_store + 1, '/');
const char *top = slash != NULL
? strndupa (original_store, slash - original_store)
: original_store;
char *new_store_top = concat (new_root, top);
unlink (new_store_top);
/* Now create the store under NEW_ROOT. */
char *new_store = concat (new_root, original_store);
char *new_store_parent = dirname (strdup (new_store));
mkdir_p (new_store_parent);
symlink (store, new_store);
err = symlink (store, new_store);
if (err < 0)
assert_perror (errno);
#ifdef GCONV_DIRECTORY
/* Tell libc where to find its gconv modules. This is necessary because

View File

@ -55,6 +55,7 @@
#:use-module (gnu packages dbm)
#:use-module (gnu packages dejagnu)
#:use-module (gnu packages ftp)
#:use-module (gnu packages gettext)
#:use-module (gnu packages glib)
#:use-module (gnu packages gnupg)
#:use-module (gnu packages golang)
@ -62,6 +63,7 @@
#:use-module (gnu packages guile)
#:use-module (gnu packages linux)
#:use-module (gnu packages mcrypt)
#:use-module (gnu packages ncurses)
#:use-module (gnu packages nettle)
#:use-module (gnu packages onc-rpc)
#:use-module (gnu packages pcre)
@ -80,7 +82,7 @@
(define-public duplicity
(package
(name "duplicity")
(version "0.7.19")
(version "0.8.15")
(source
(origin
(method url-fetch)
@ -89,32 +91,36 @@
"-series/" version "/+download/duplicity-"
version ".tar.gz"))
(sha256
(base32 "0ag9dknslxlasslwfjhqgcqbkb1mvzzx93ry7lch2lfzcdd91am6"))))
(base32 "1kg467mxg5a97v1rlv4shk32krgv8ys4nczq4b11av4bp1lgysdc"))))
(build-system python-build-system)
(native-inputs
`(("util-linux" ,util-linux) ; setsid command, for the tests
`(("gettext" ,gnu-gettext) ; for msgfmt
("util-linux" ,util-linux) ; setsid command, for the tests
("par2cmdline" ,par2cmdline)
("python-pexpect" ,python2-pexpect)
("python-fasteners" ,python2-fasteners)
("python-fasteners" ,python-fasteners)
("python-future" ,python-future) ; for tests
("python-pexpect" ,python-pexpect)
("python-pytest" ,python-pytest)
("python-pytest-runner" ,python-pytest-runner)
("python-setuptools-scm" ,python-setuptools-scm)
("tzdata" ,tzdata-for-tests)
("mock" ,python2-mock)))
("mock" ,python-mock)))
(propagated-inputs
`(("lockfile" ,python2-lockfile)
("urllib3" ,python2-urllib3)))
`(("lockfile" ,python-lockfile)
("urllib3" ,python-urllib3)))
(inputs
`(("librsync" ,librsync-0.9)
`(("librsync" ,librsync)
("lftp" ,lftp)
("gnupg" ,gnupg) ; gpg executable needed
("util-linux" ,util-linux))) ; for setsid
(arguments
`(#:python ,python-2 ; setup assumes Python 2
#:test-target "test"
`(#:test-target "test"
#:phases
(modify-phases %standard-phases
(add-before 'build 'use-store-file-names
(lambda* (#:key inputs #:allow-other-keys)
(substitute* "duplicity/gpginterface.py"
(("self.call = 'gpg'")
(("self.call = u'gpg'")
(string-append "self.call = '" (assoc-ref inputs "gnupg") "/bin/gpg'")))
(substitute* '("testing/functional/__init__.py"
@ -404,15 +410,14 @@ errors.")
(define-public rdiff-backup
(package
(name "rdiff-backup")
(version "2.0.3")
(version "2.0.5")
(source
(origin
(method url-fetch)
(uri (string-append "https://github.com/rdiff-backup/rdiff-backup/releases/"
"download/v" version "/rdiff-backup-" version ".tar.gz"))
(sha256
(base32
"1qfmvwwb942srhg6gw77ncy4z5z54b4wfz8bpd5bpml8hp1d5qh4"))))
(base32 "11rvjcp77zwgkphz1kyf5yqgr3rlss7dm9xzmvpvc4lp99xq7drb"))))
(build-system python-build-system)
(native-inputs
`(("python-setuptools-scm" ,python-setuptools-scm)))
@ -1067,14 +1072,16 @@ interractive mode.")
(define-public burp
(package
(name "burp")
(version "2.3.28")
(source (origin
(method url-fetch)
(uri (string-append "mirror://sourceforge/burp/burp-" version
"/burp-" version ".tar.bz2"))
(sha256
(base32
"18f8cjsb87skabvz4cl5pdln35qmim7x686js1xzpld6wyl9kv2k"))))
(version "2.3.32")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/grke/burp")
(commit version)))
(sha256
(base32 "0cxxf9ni34c9662ffmr2qc8xmh4g9pmg3swqvhn49mqgr5ra6k2g"))
(file-name (git-file-name name version))))
(build-system gnu-build-system)
(arguments
`(#:phases
@ -1087,12 +1094,16 @@ interractive mode.")
(string-append prefix " 3600" suffix "\n")))
#t)))))
(inputs
`(("librsync" ,librsync)
`(("acl" ,acl)
("librsync" ,librsync)
("ncurses" ,ncurses) ; for the live status monitor
("openssl" ,openssl)
("uthash" ,uthash)
("zlib" ,zlib)))
(native-inputs
`(("check" ,check)
`(("autoconf" ,autoconf)
("automake" ,automake)
("check" ,check)
("pkg-config" ,pkg-config)))
(home-page "https://burp.grke.org")
(synopsis "Differential backup and restore")

View File

@ -614,7 +614,7 @@ included.")
(native-inputs
`(("bc" ,bc)))
(inputs
`(("gcc:lib" ,gcc "lib")))))
`(("gcc:lib" ,(canonical-package gcc) "lib")))))
(define* (make-ld-wrapper name #:key
(target (const #f))
@ -1029,118 +1029,6 @@ with the Linux kernel.")
"glibc-CVE-2018-11237.patch"))))
(properties `((lint-hidden-cve . ("CVE-2017-18269")))))) ; glibc-2.27-git-fixes
(define-public glibc-2.26
(package
(inherit glibc)
;; This version number corresponds to the output of `git describe` and the
;; archive can be generated by checking out the commit ID and running:
;; git archive --prefix=$(git describe)/ HEAD | xz > $(git describe).tar.xz
;; See <https://bugs.gnu.org/29406> for why this was necessary.
(version "2.26.105-g0890d5379c")
(source (origin
(inherit (package-source glibc))
(uri (string-append "https://alpha.gnu.org/gnu/guix/mirror/"
"glibc-" (version-major+minor version) "-"
(caddr (string-split version #\.)) ".tar.xz"))
(sha256
(base32
"1jck0c1i248sn02rvsfjykk77qncma34bjq89dyy2irwm50d7s3g"))
(patches (search-patches "glibc-ldd-x86_64.patch"
"glibc-versioned-locpath.patch"
"glibc-allow-kernel-2.6.32.patch"))))))
(define-public glibc-2.25
(package
(inherit glibc)
(version "2.25")
(source (origin
(inherit (package-source glibc))
(uri (string-append "mirror://gnu/glibc/glibc-"
version ".tar.xz"))
(sha256
(base32
"1813dzkgw6v8q8q1m4v96yfis7vjqc9pslqib6j9mrwh6fxxjyq6"))
(patches (search-patches "glibc-ldd-x86_64.patch"
"glibc-versioned-locpath.patch"
"glibc-vectorized-strcspn-guards.patch"
"glibc-CVE-2017-1000366-pt1.patch"
"glibc-CVE-2017-1000366-pt2.patch"
"glibc-CVE-2017-1000366-pt3.patch"))))))
(define-public glibc-2.24
(package
(inherit glibc)
(version "2.24")
(source (origin
(inherit (package-source glibc))
(uri (string-append "mirror://gnu/glibc/glibc-"
version ".tar.xz"))
(sha256
(base32
"1lxmprg9gm73gvafxd503x70z32phwjzcy74i0adfi6ixzla7m4r"))
(patches (search-patches "glibc-ldd-x86_64.patch"
"glibc-versioned-locpath.patch"
"glibc-vectorized-strcspn-guards.patch"
"glibc-CVE-2015-5180.patch"
"glibc-CVE-2017-1000366-pt1.patch"
"glibc-CVE-2017-1000366-pt2.patch"
"glibc-CVE-2017-1000366-pt3.patch"))))))
(define-public glibc-2.23
(package
(inherit glibc)
(version "2.23")
(source (origin
(inherit (package-source glibc))
(uri (string-append "mirror://gnu/glibc/glibc-"
version ".tar.xz"))
(sha256
(base32
"1s8krs3y2n6pzav7ic59dz41alqalphv7vww4138ag30wh0fpvwl"))
(patches (search-patches "glibc-ldd-x86_64.patch"
"glibc-versioned-locpath.patch"
"glibc-vectorized-strcspn-guards.patch"
"glibc-CVE-2015-5180.patch"
"glibc-CVE-2016-3075.patch"
"glibc-CVE-2016-3706.patch"
"glibc-CVE-2016-4429.patch"
"glibc-CVE-2017-1000366-pt1.patch"
"glibc-CVE-2017-1000366-pt2.patch"
"glibc-CVE-2017-1000366-pt3.patch"))))))
(define-public glibc-2.22
(package
(inherit glibc)
(version "2.22")
(source (origin
(inherit (package-source glibc))
(uri (string-append "mirror://gnu/glibc/glibc-"
version ".tar.xz"))
(sha256
(base32
"0j49682pm2nh4qbdw35bas82p1pgfnz4d2l7iwfyzvrvj0318wzb"))
(patches (search-patches "glibc-ldd-x86_64.patch"
"glibc-o-largefile.patch"
"glibc-vectorized-strcspn-guards.patch"
"glibc-CVE-2015-5180.patch"
"glibc-CVE-2015-7547.patch"
"glibc-CVE-2016-3075.patch"
"glibc-CVE-2016-3706.patch"
"glibc-CVE-2016-4429.patch"
"glibc-CVE-2017-1000366-pt1.patch"
"glibc-CVE-2017-1000366-pt2.patch"
"glibc-CVE-2017-1000366-pt3.patch"))))
(arguments
(substitute-keyword-arguments (package-arguments glibc)
((#:phases phases)
`(modify-phases ,phases
(add-before 'configure 'fix-pwd
(lambda _
;; Use `pwd' instead of `/bin/pwd' for glibc-2.22.
(substitute* "configure"
(("/bin/pwd") "pwd"))
#t))))))))
(define-public (make-gcc-libc base-gcc libc)
"Return a GCC that targets LIBC."
(package (inherit base-gcc)

View File

@ -46,14 +46,14 @@
(define-public fio
(package
(name "fio")
(version "3.21")
(version "3.22")
(source (origin
(method url-fetch)
(uri (string-append "https://brick.kernel.dk/snaps/"
"fio-" version ".tar.bz2"))
(sha256
(base32
"0np1scxqfpd6fcnnnfyn8xdsh6lc5pyq3vk1jm1zk7sa58fvccd4"))))
"0f2x917600y6k0xs34ixgfjm4v1ylbh8svpkqi07xy3474g5s2rv"))))
(build-system gnu-build-system)
(arguments
'(#:test-target "test"

View File

@ -798,14 +798,14 @@ closely reconstructs the mutational profile.")
(define-public r-nmf
(package
(name "r-nmf")
(version "0.22.0")
(version "0.23.0")
(source
(origin
(method url-fetch)
(uri (cran-uri "NMF" version))
(sha256
(base32
"0b2ls3x1nkrnam45hagpys624nzxj3v7kxnp0q216yakvx5h57cq"))))
"0ls7q9yc9l1z10jphq5a11wkfgcxc3gm3sfjj376zx3vnc0wl30g"))))
(properties `((upstream-name . "NMF")))
(build-system r-build-system)
(propagated-inputs
@ -826,6 +826,8 @@ closely reconstructs the mutational profile.")
("r-reshape2" ,r-reshape2)
("r-rngtools" ,r-rngtools)
("r-stringr" ,r-stringr)))
(native-inputs
`(("r-knitr" ,r-knitr)))
(home-page "http://renozao.github.io/NMF")
(synopsis "Algorithms and framework for nonnegative matrix factorization")
(description
@ -1502,14 +1504,14 @@ browser.")
(define-public r-oligoclasses
(package
(name "r-oligoclasses")
(version "1.50.0")
(version "1.50.4")
(source
(origin
(method url-fetch)
(uri (bioconductor-uri "oligoClasses" version))
(sha256
(base32
"05jy9qz3ir4maxackr1xqlfi1czhy1qd22wwibjdhfh5dp534cpn"))))
"1d8c3i8v8kcm1afgpz6zc1iysip7993y8456cqxl37f7n6n0ax67"))))
(properties `((upstream-name . "oligoClasses")))
(build-system r-build-system)
(propagated-inputs
@ -1537,14 +1539,14 @@ packages.")
(define-public r-oligo
(package
(name "r-oligo")
(version "1.52.0")
(version "1.52.1")
(source
(origin
(method url-fetch)
(uri (bioconductor-uri "oligo" version))
(sha256
(base32
"102szyiicws4c6l3k282236ml1m1vl9zmars4q1kdjfnvsyclfc4"))))
"1gpvr33pwzz1glzajcipvjcplb7yxvjj00q0ybqcc3wa47bhfkwd"))))
(properties `((upstream-name . "oligo")))
(build-system r-build-system)
(inputs `(("zlib" ,zlib)))
@ -3622,14 +3624,14 @@ information about samples and features can be added to the plot.")
(define-public r-gosemsim
(package
(name "r-gosemsim")
(version "2.14.0")
(version "2.14.1")
(source
(origin
(method url-fetch)
(uri (bioconductor-uri "GOSemSim" version))
(sha256
(base32
"0mg4d8whq90iyl2jjj5dx3kyar17yqn00jvia3b4a8lhmjw8l1hk"))))
"0v4q9xr1cm5xr08pgbzrss41kh3yz7xyh31n55l0sjmr1629ykln"))))
(properties `((upstream-name . "GOSemSim")))
(build-system r-build-system)
(propagated-inputs
@ -3810,14 +3812,14 @@ All the visualization methods are developed based on ggplot2 graphics.")
(define-public r-clusterprofiler
(package
(name "r-clusterprofiler")
(version "3.16.0")
(version "3.16.1")
(source
(origin
(method url-fetch)
(uri (bioconductor-uri "clusterProfiler" version))
(sha256
(base32
"0m7919gzrd2fddb4kcznwpshhab1ha2yppnkxg11zmh40wcdawyi"))))
"11zsgb8wbdv8r4c04iczz4aala4yw4ai7rz8igdzz87c0940nxkb"))))
(properties
`((upstream-name . "clusterProfiler")))
(build-system r-build-system)
@ -3832,6 +3834,7 @@ All the visualization methods are developed based on ggplot2 graphics.")
("r-magrittr" ,r-magrittr)
("r-plyr" ,r-plyr)
("r-qvalue" ,r-qvalue)
("r-rlang" ,r-rlang)
("r-rvcheck" ,r-rvcheck)
("r-tidyr" ,r-tidyr)))
(native-inputs
@ -4087,7 +4090,8 @@ Affymetrix arrays.")
(properties `((upstream-name . "abseqR")))
(build-system r-build-system)
(inputs
`(("pandoc" ,ghc-pandoc)))
`(("pandoc" ,pandoc)
("pandoc-citeproc" ,pandoc-citeproc)))
(propagated-inputs
`(("r-biocparallel" ,r-biocparallel)
("r-biocstyle" ,r-biocstyle)
@ -4287,14 +4291,14 @@ Bioconductor.")
(define-public r-motifstack
(package
(name "r-motifstack")
(version "1.32.0")
(version "1.32.1")
(source
(origin
(method url-fetch)
(uri (bioconductor-uri "motifStack" version))
(sha256
(base32
"008f2mjcyyiz84ilrsldpqwvxy2lp93hjggrq4nrqwi78nyx3ls5"))))
"02vmkgn36n5xpmizy33znlzgmi3w5hnhsibgisbnhwwgxpkrwpcd"))))
(properties `((upstream-name . "motifStack")))
(build-system r-build-system)
(propagated-inputs
@ -5236,14 +5240,14 @@ This algorithm is based on the publication by Hart et al., 2013 (Pubmed ID
(define-public r-rbowtie2
(package
(name "r-rbowtie2")
(version "1.10.0")
(version "1.10.1")
(source
(origin
(method url-fetch)
(uri (bioconductor-uri "Rbowtie2" version))
(sha256
(base32
"1z2dn0q3wcw8b9ibx388kh7p5km16i71sw9miqj3daw7g0v5bxp3"))))
"19v7wfvrd53j618c1xbiqnlsf2kxw697myryx0vb9s2aspknyzz7"))))
(properties `((upstream-name . "Rbowtie2")))
(build-system r-build-system)
(inputs
@ -5314,14 +5318,14 @@ Infinium HumanMethylation 450k assay.")
(define-public r-biocfilecache
(package
(name "r-biocfilecache")
(version "1.12.0")
(version "1.12.1")
(source
(origin
(method url-fetch)
(uri (bioconductor-uri "BiocFileCache" version))
(sha256
(base32
"02chrzwccmazi7rdfpyriizhbgxyxlmprlw32w05wk54as6wrxv8"))))
"02yayjyliaqxcwqa0n2ccmsfflskqzf0gvdibh2r3nz5bi66imkf"))))
(properties `((upstream-name . "BiocFileCache")))
(build-system r-build-system)
(propagated-inputs
@ -5376,14 +5380,14 @@ Gaussian distributions.")
(define-public r-rbowtie
(package
(name "r-rbowtie")
(version "1.28.0")
(version "1.28.1")
(source
(origin
(method url-fetch)
(uri (bioconductor-uri "Rbowtie" version))
(sha256
(base32
"06y1qp915dlwjdi2fs3344sgya55pcv07f3i61y0cxb0bhbcgvrz"))))
"0589ggbfx6di42wvqyhnzgrhmb52swr3r5z22w6b8x0z2y7hl8b3"))))
(properties `((upstream-name . "Rbowtie")))
(build-system r-build-system)
(inputs
@ -5781,14 +5785,14 @@ annotations.")
(define-public r-rsubread
(package
(name "r-rsubread")
(version "2.2.4")
(version "2.2.6")
(source
(origin
(method url-fetch)
(uri (bioconductor-uri "Rsubread" version))
(sha256
(base32
"0yznfqgp5cbz68n3rrfvm752267da16kl538zdrb1g1aw9zdfqc6"))))
"04h79qhq93d8id0rr5xnj9vf82ygwxzdlnck78yv738xd0jjvnpm"))))
(properties `((upstream-name . "Rsubread")))
(build-system r-build-system)
(inputs `(("zlib" ,zlib)))
@ -7048,14 +7052,14 @@ arrays based on fast wavelet-based functional models.")
(define-public r-variancepartition
(package
(name "r-variancepartition")
(version "1.18.2")
(version "1.18.3")
(source
(origin
(method url-fetch)
(uri (bioconductor-uri "variancePartition" version))
(sha256
(base32
"19bhkb8vd44m3nkznw075fx3y2p3a1bsazbhcfiqw9n4190k9bgv"))))
"1jrlhi2c5ibvq8a41g5hwdq4kk4rdd7m464rz5767zaaci7l2ay0"))))
(properties
`((upstream-name . "variancePartition")))
(build-system r-build-system)
@ -7762,14 +7766,14 @@ different graph related packages produced by Bioconductor.")
(define-public r-experimenthub
(package
(name "r-experimenthub")
(version "1.14.0")
(version "1.14.2")
(source
(origin
(method url-fetch)
(uri (bioconductor-uri "ExperimentHub" version))
(sha256
(base32
"18d6kjfavy5b769gpkblihdkz2nz2hsgyjki8mp1sywi0ik08ncd"))))
"1kgvprchz1fg8pl1irj62mk2gyb4jcc9iimpypv4c2iccy5bp84x"))))
(properties `((upstream-name . "ExperimentHub")))
(build-system r-build-system)
(propagated-inputs
@ -7955,14 +7959,14 @@ analytics on packages.")
(define-public r-biocset
(package
(name "r-biocset")
(version "1.2.1")
(version "1.2.2")
(source
(origin
(method url-fetch)
(uri (bioconductor-uri "BiocSet" version))
(sha256
(base32
"14dmkc878lskbm001kgjyqmrwnn6s032z4h64f617f1xd9zx9wrj"))))
"041hq3rp0kv7kjwcjjrksk8lw3sj6j1v3wdcr8z611k0g0z6p0cj"))))
(properties `((upstream-name . "BiocSet")))
(build-system r-build-system)
(propagated-inputs
@ -8116,3 +8120,36 @@ dimensional mass cytometry data.")
Tool) analysis automatic by constructing a HTTP POST request according to
user's input and automatically retrieving results from GREAT web server.")
(license license:expat)))
(define-public r-m3c
(package
(name "r-m3c")
(version "1.10.0")
(source
(origin
(method url-fetch)
(uri (bioconductor-uri "M3C" version))
(sha256
(base32
"0zq8lm4280p8h65i7myscwa4srs5ajh944xv6zni2f5sjyp7ij2y"))))
(properties `((upstream-name . "M3C")))
(build-system r-build-system)
(propagated-inputs
`(("r-cluster" ,r-cluster)
("r-corpcor" ,r-corpcor)
("r-doparallel" ,r-doparallel)
("r-dosnow" ,r-dosnow)
("r-foreach" ,r-foreach)
("r-ggplot2" ,r-ggplot2)
("r-matrix" ,r-matrix)
("r-matrixcalc" ,r-matrixcalc)
("r-rtsne" ,r-rtsne)
("r-umap" ,r-umap)))
(native-inputs `(("r-knitr" ,r-knitr)))
(home-page "https://bioconductor.org/packages/M3C")
(synopsis "Monte Carlo reference-based consensus clustering")
(description
"M3C is a consensus clustering algorithm that uses a Monte Carlo
simulation to eliminate overestimation of @code{K} and can reject the null
hypothesis @code{K=1}.")
(license license:agpl3+)))

View File

@ -1646,7 +1646,8 @@ gapped, local, and paired-end alignment modes.")
(modify-phases %standard-phases
(delete 'configure))))
(inputs
`(("tbb" ,tbb)
`(("python-wrapper" ,python-wrapper)
("tbb" ,tbb)
("zlib" ,zlib)))
(supported-systems '("x86_64-linux"))
(home-page "http://bowtie-bio.sourceforge.net/index.shtml")
@ -1683,6 +1684,17 @@ genome (2.9 GB for paired-end).")
'(#:parallel-build? #f ; not supported
#:phases
(modify-phases %standard-phases
(add-after 'set-paths 'hide-default-gcc
(lambda* (#:key inputs #:allow-other-keys)
(let ((gcc (assoc-ref inputs "gcc")))
;; Remove the default GCC from CPLUS_INCLUDE_PATH to prevent
;; conflicts with the GCC 5 input.
(setenv "CPLUS_INCLUDE_PATH"
(string-join
(delete (string-append gcc "/include/c++")
(string-split (getenv "CPLUS_INCLUDE_PATH") #\:))
":"))
#t)))
(add-after 'unpack 'use-system-samtools
(lambda* (#:key inputs #:allow-other-keys)
(substitute* "src/Makefile.in"
@ -1705,7 +1717,7 @@ genome (2.9 GB for paired-end).")
(("#include <sam.h>") "#include <samtools/sam.h>"))
#t)))))
(native-inputs
`(("gcc" ,gcc-5))) ;; doesn't build with later versions
`(("gcc@5" ,gcc-5))) ;; doesn't build with later versions
(inputs
`(("boost" ,boost)
("bowtie" ,bowtie)
@ -2149,7 +2161,7 @@ databases.")
(define-public clipper
(package
(name "clipper")
(version "1.2.1")
(version "2.0")
(source (origin
(method git-fetch)
(uri (git-reference
@ -2158,40 +2170,34 @@ databases.")
(file-name (git-file-name name version))
(sha256
(base32
"0fja1rj84wp9vpj8rxpj3n8zqzcqq454m904yp9as1w4phccirjb"))
(modules '((guix build utils)))
(snippet
'(begin
;; remove unnecessary setup dependency
(substitute* "setup.py"
(("setup_requires = .*") ""))
#t))))
"1bcag4lb5bkzsj2vg7lrq24aw6yfgq275ifrbhd82l7kqgbbjbkv"))))
(build-system python-build-system)
(arguments
`(#:python ,python-2 ; only Python 2 is supported
#:phases
`(#:phases
(modify-phases %standard-phases
;; This is fixed in upstream commit
;; f6c2990198f906bf97730d95695b4bd5a6d01ddb.
(add-after 'unpack 'fix-typo
(lambda _
(substitute* "clipper/src/readsToWiggle.pyx"
(("^sc.*") ""))
#t)))))
(add-before 'reset-gzip-timestamps 'make-files-writable
(lambda* (#:key outputs #:allow-other-keys)
;; Make sure .gz files are writable so that the
;; 'reset-gzip-timestamps' phase can do its work.
(let ((out (assoc-ref outputs "out")))
(for-each make-file-writable
(find-files out "\\.gz$"))
#t))))))
(inputs
`(("htseq" ,python2-htseq)
("python-pybedtools" ,python2-pybedtools)
("python-cython" ,python2-cython)
("python-scikit-learn" ,python2-scikit-learn)
("python-matplotlib" ,python2-matplotlib)
("python-pandas" ,python2-pandas)
("python-pysam" ,python2-pysam)
("python-numpy" ,python2-numpy)
("python-scipy" ,python2-scipy)))
`(("htseq" ,htseq)
("python-pybedtools" ,python-pybedtools)
("python-cython" ,python-cython)
("python-scikit-learn" ,python-scikit-learn)
("python-matplotlib" ,python-matplotlib)
("python-pandas" ,python-pandas)
("python-pysam" ,python-pysam)
("python-numpy" ,python-numpy)
("python-scipy" ,python-scipy)))
(native-inputs
`(("python-mock" ,python2-mock) ; for tests
("python-nose" ,python2-nose) ; for tests
("python-pytz" ,python2-pytz))) ; for tests
`(("python-setuptools-git" ,python-setuptools-git)
("python-mock" ,python-mock) ; for tests
("python-nose" ,python-nose) ; for tests
("python-pytz" ,python-pytz))) ; for tests
(home-page "https://github.com/YeoLab/clipper")
(synopsis "CLIP peak enrichment recognition")
(description
@ -3612,7 +3618,7 @@ particular, reads spanning multiple exons.")
(native-inputs
`(("unzip" ,unzip) ; needed for archive from ftp
("perl" ,perl)
("pandoc" ,ghc-pandoc))) ; for documentation
("pandoc" ,pandoc))) ; for documentation
(home-page "https://ccb.jhu.edu/software/hisat2/index.shtml")
(synopsis "Graph-based alignment of genomic sequencing reads")
(description "HISAT2 is a fast and sensitive alignment program for mapping
@ -7505,13 +7511,13 @@ BLAST, KEGG, GenBank, MEDLINE and GO.")
(define-public r-biocviews
(package
(name "r-biocviews")
(version "1.56.1")
(version "1.56.2")
(source (origin
(method url-fetch)
(uri (bioconductor-uri "biocViews" version))
(sha256
(base32
"0zcx8gha3x3jc0ra6ii6wwq2vfsmffrrnilknbq8h5xjrl55m6ci"))))
"0kw0qfm1fw5yv2rbz6x23431rh0fnzj66f2bls7j285biyjmmx7w"))))
(properties
`((upstream-name . "biocViews")))
(build-system r-build-system)
@ -7894,13 +7900,13 @@ on Bioconductor or which replace R functions.")
(define-public r-annotationdbi
(package
(name "r-annotationdbi")
(version "1.50.1")
(version "1.50.3")
(source (origin
(method url-fetch)
(uri (bioconductor-uri "AnnotationDbi" version))
(sha256
(base32
"00pd8lsdppxlmx0l65phw0jhsm0qkwjc4wsdxpvgc31iiz9yslbj"))))
"0qcxfn4pvaksna0nvxr74ysn2wzaxn732pkhd6ffrj8pwhkhy5p3"))))
(properties
`((upstream-name . "AnnotationDbi")))
(build-system r-build-system)
@ -8059,13 +8065,13 @@ tab-delimited (tabix) files.")
(define-public r-delayedarray
(package
(name "r-delayedarray")
(version "0.14.0")
(version "0.14.1")
(source (origin
(method url-fetch)
(uri (bioconductor-uri "DelayedArray" version))
(sha256
(base32
"1lz7a0rrlfv3w44n073mk8pw39z7lfs0njdxp5vpp0rdsmvdf1qk"))))
"0xi0i621hrl7k9rsc8x8nc3ib74sk8hxhbyr2lxqclw45pk95s7v"))))
(properties
`((upstream-name . "DelayedArray")))
(build-system r-build-system)
@ -8699,7 +8705,7 @@ paired-end data.")
("r-rtracklayer" ,r-rtracklayer)
("r-rmarkdown" ,r-rmarkdown)
("r-s4vectors" ,r-s4vectors)
("pandoc" ,ghc-pandoc)))
("pandoc" ,pandoc)))
(native-inputs
`(("r-knitr" ,r-knitr)))
(synopsis "RNA-centric annotation system")
@ -9831,13 +9837,13 @@ and irregular enzymatic cleavages, mass measurement accuracy, etc.")
(define-public r-seurat
(package
(name "r-seurat")
(version "3.1.5")
(version "3.2.0")
(source (origin
(method url-fetch)
(uri (cran-uri "Seurat" version))
(sha256
(base32
"1lbq2pqhb6ih6iqawlnzdh05zff71pwbw1cpfv2sld3pd7kz0zkm"))))
"1vj3dlsqakgnn4x1jz9fkl2cy0jzc5s65h1c20fnamr7lk45pnf2"))))
(properties `((upstream-name . "Seurat")))
(build-system r-build-system)
(propagated-inputs
@ -9854,11 +9860,13 @@ and irregular enzymatic cleavages, mass measurement accuracy, etc.")
("r-ica" ,r-ica)
("r-igraph" ,r-igraph)
("r-irlba" ,r-irlba)
("r-jsonlite" ,r-jsonlite)
("r-kernsmooth" ,r-kernsmooth)
("r-leiden" ,r-leiden)
("r-lmtest" ,r-lmtest)
("r-mass" ,r-mass)
("r-matrix" ,r-matrix)
("r-miniui" ,r-miniui)
("r-patchwork" ,r-patchwork)
("r-pbapply" ,r-pbapply)
("r-plotly" ,r-plotly)
@ -9876,7 +9884,9 @@ and irregular enzymatic cleavages, mass measurement accuracy, etc.")
("r-rtsne" ,r-rtsne)
("r-scales" ,r-scales)
("r-sctransform" ,r-sctransform)
("r-tsne" ,r-tsne)
("r-shiny" ,r-shiny)
("r-spatstat" ,r-spatstat)
("r-tibble" ,r-tibble)
("r-uwot" ,r-uwot)))
(home-page "http://www.satijalab.org/seurat")
(synopsis "Seurat is an R toolkit for single cell genomics")
@ -10018,14 +10028,14 @@ Shiny-based display methods for Bioconductor objects.")
(define-public r-annotationhub
(package
(name "r-annotationhub")
(version "2.20.0")
(version "2.20.2")
(source
(origin
(method url-fetch)
(uri (bioconductor-uri "AnnotationHub" version))
(sha256
(base32
"0r4xzf93bm9cpys5cg70wg0b8hxli80hvqwgh4hzbd45yyf5c4wz"))))
"04bz91m2wx1zm61rvpr0syyklz232fw74wrl73d965wi3x8fyda5"))))
(properties `((upstream-name . "AnnotationHub")))
(build-system r-build-system)
(propagated-inputs
@ -10115,17 +10125,18 @@ microarrays or GRanges for sequencing data.")
(define-public r-gage
(package
(name "r-gage")
(version "2.37.0")
(version "2.38.3")
(source
(origin
(method url-fetch)
(uri (bioconductor-uri "gage" version))
(sha256
(base32
"1zfaas4x6g7wiml6cmxa7b4f43az9s0lrw80k6sf7c96hsh1jijr"))))
"1bqmvjiya1df0b3h491lp1jxahiyidvaf9n094z0sk84x5y3xh2p"))))
(build-system r-build-system)
(propagated-inputs
`(("r-annotationdbi" ,r-annotationdbi)
("r-go-db" ,r-go-db)
("r-graph" ,r-graph)
("r-keggrest" ,r-keggrest)))
(home-page (string-append "https://bmcbioinformatics.biomedcentral.com/"
@ -10178,14 +10189,14 @@ provide added flexibility for data combination and manipulation.")
(define-public r-complexheatmap
(package
(name "r-complexheatmap")
(version "2.4.2")
(version "2.4.3")
(source
(origin
(method url-fetch)
(uri (bioconductor-uri "ComplexHeatmap" version))
(sha256
(base32
"01jxxwxhf9n8baxgja4rb592p5210s4ppd7a5b4xby5aalhzkr0l"))))
"1gx0hzrkla92pgmfkrm2zp0ccnhizq6rs26zgzpi5x8a5lvghh5q"))))
(properties
`((upstream-name . "ComplexHeatmap")))
(build-system r-build-system)
@ -11862,6 +11873,9 @@ straight away. Its main features are:
(snippet
'(begin
(for-each delete-file (find-files "." "\\.exe$"))
;; Some files in the original tarball have restrictive
;; permissions, which makes repackaging fail
(for-each (lambda (file) (chmod file #o644)) (find-files "."))
#t))))
(build-system gnu-build-system)
(arguments
@ -12941,8 +12955,8 @@ once. This package provides tools to perform Drop-seq analyses.")
("r-rtracklayer" ,r-rtracklayer)
("r-rjson" ,r-rjson)
("salmon" ,salmon)
("ghc-pandoc" ,ghc-pandoc)
("ghc-pandoc-citeproc" ,ghc-pandoc-citeproc)
("pandoc" ,pandoc)
("pandoc-citeproc" ,pandoc-citeproc)
("python-wrapper" ,python-wrapper)
("python-pyyaml" ,python-pyyaml)))
(home-page "https://bioinformatics.mdc-berlin.de/pigx/")
@ -12958,7 +12972,7 @@ expression report comparing samples in an easily configurable manner.")
(define-public pigx-chipseq
(package
(name "pigx-chipseq")
(version "0.0.42")
(version "0.0.43")
(source (origin
(method url-fetch)
(uri (string-append "https://github.com/BIMSBbioinfo/pigx_chipseq/"
@ -12966,7 +12980,7 @@ expression report comparing samples in an easily configurable manner.")
"/pigx_chipseq-" version ".tar.gz"))
(sha256
(base32
"0xbvgqpk32a8iczhvac56cacr46rdkqb0allhhpvmj940idf72bi"))))
"0426i31b7mqqkbss5dgrvf5prkj4z1qrd7yrpd27vybs01xhdlks"))))
(build-system gnu-build-system)
;; parts of the tests rely on access to the network
(arguments '(#:tests? #f))
@ -13003,8 +13017,8 @@ expression report comparing samples in an easily configurable manner.")
("macs" ,macs)
("multiqc" ,multiqc)
("perl" ,perl)
("ghc-pandoc" ,ghc-pandoc)
("ghc-pandoc-citeproc" ,ghc-pandoc-citeproc)
("pandoc" ,pandoc)
("pandoc-citeproc" ,pandoc-citeproc)
("fastqc" ,fastqc)
("bowtie" ,bowtie)
("idr" ,idr)
@ -13028,7 +13042,7 @@ in an easily configurable manner.")
(define-public pigx-bsseq
(package
(name "pigx-bsseq")
(version "0.0.10")
(version "0.1.2")
(source (origin
(method url-fetch)
(uri (string-append "https://github.com/BIMSBbioinfo/pigx_bsseq/"
@ -13036,10 +13050,13 @@ in an easily configurable manner.")
"/pigx_bsseq-" version ".tar.gz"))
(sha256
(base32
"0l97wvkq4diq8lcarraj33bby1zzf0w804jwi8mlc5qddp8idwhy"))))
"0mpzlay2d5cjpmrcp7knff6rg1c2mqszd638n7lw0mc0cycbp9f8"))))
(build-system gnu-build-system)
(arguments
`(#:phases
`(;; TODO: tests currently require 12+GB of RAM. See
;; https://github.com/BIMSBbioinfo/pigx_bsseq/issues/164
#:tests? #f
#:phases
(modify-phases %standard-phases
(add-before 'check 'set-timezone
;; The readr package is picky about timezones.
@ -13059,22 +13076,27 @@ in an easily configurable manner.")
("r-annotationhub" ,r-annotationhub)
("r-dt" ,r-dt)
("r-genomation" ,r-genomation)
("r-ggrepel" ,r-ggrepel)
("r-methylkit" ,r-methylkit)
("r-rtracklayer" ,r-rtracklayer)
("r-rmarkdown" ,r-rmarkdown)
("r-bookdown" ,r-bookdown)
("r-ggplot2" ,r-ggplot2)
("r-ggbio" ,r-ggbio)
("ghc-pandoc" ,ghc-pandoc)
("ghc-pandoc-citeproc" ,ghc-pandoc-citeproc)
("pandoc" ,pandoc)
("pandoc-citeproc" ,pandoc-citeproc)
("python-wrapper" ,python-wrapper)
("python-pyyaml" ,python-pyyaml)
("snakemake" ,snakemake)
("bismark" ,bismark)
("fastqc" ,fastqc)
("bowtie" ,bowtie)
("bwa-meth" ,bwa-meth)
("fastqc" ,fastqc)
("methyldackel" ,methyldackel)
("multiqc" ,multiqc)
("trim-galore" ,trim-galore)
("cutadapt" ,cutadapt)
("samblaster" ,samblaster)
("samtools" ,samtools)))
(home-page "https://bioinformatics.mdc-berlin.de/pigx/")
(synopsis "Bisulfite sequencing pipeline from fastq to methylation reports")
@ -13110,8 +13132,8 @@ methylation and segmentation.")
("python-magic" ,python-magic)
("python-numpy" ,python-numpy)
("python-loompy" ,python-loompy)
("ghc-pandoc" ,ghc-pandoc)
("ghc-pandoc-citeproc" ,ghc-pandoc-citeproc)
("pandoc" ,pandoc)
("pandoc-citeproc" ,pandoc-citeproc)
("samtools" ,samtools)
("snakemake" ,snakemake)
("star" ,star)
@ -15862,6 +15884,77 @@ containing the reference genome as well.")
;; See https://github.com/dpryan79/MethylDackel/issues/85
(license license:expat)))
;; This package bundles PCRE 8.02 and cannot be built with the current
;; version.
(define-public phast
(package
(name "phast")
(version "1.5")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/CshlSiepelLab/phast")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
"10lpbllvny923jjbbyrpxahhd1m5h7sbj9gx7rd123rg10mlidki"))))
(build-system gnu-build-system)
(arguments
`(#:make-flags
(list "CC=gcc"
(string-append "DESTDIR=" (assoc-ref %outputs "out")))
#:phases
(modify-phases %standard-phases
(replace 'configure
(lambda* (#:key inputs outputs #:allow-other-keys)
;; Fix syntax
(substitute* "test/Makefile"
((" ") " "))
(substitute* "Makefile"
(("CLAPACKPATH=/usr/lib")
(string-append "CLAPACKPATH="
(assoc-ref inputs "clapack") "/lib")))
;; Renaming the libraries is not necessary with our version of
;; CLAPACK.
(substitute* "src/lib/Makefile"
(("ifdef CLAPACKPATH") "ifdef UNNECESSARY"))
(substitute* "src/make-include.mk"
(("-lblaswr") "-lblas")
(("-ltmg") "-ltmglib")
(("liblapack.a") "liblapack.so")
(("libblas.a") "libblas.so")
(("libf2c.a") "libf2c.so"))
(substitute* "src/Makefile"
(("/opt") "/share")
(("/usr/") "/"))
#t))
(replace 'check
(lambda _
(setenv "PATH"
(string-append (getcwd) "/bin:" (getenv "PATH")))
;; Disable broken test
(substitute* "test/Makefile"
((".*if.*hmrc_summary" m) (string-append "#" m)))
;; Only run the msa_view tests because the others fail for
;; unknown reasons.
(invoke "make" "-C" "test" "msa_view"))))))
(inputs
`(("clapack" ,clapack)))
(native-inputs
`(("perl" ,perl)))
(home-page "http://compgen.cshl.edu/phast/")
(synopsis "Phylogenetic analysis with space/time models")
(description
"Phylogenetic Analysis with Space/Time models (PHAST) is a collection of
command-line programs and supporting libraries for comparative and
evolutionary genomics. Best known as the search engine behind the
Conservation tracks in the University of California, Santa Cruz (UCSC) Genome
Browser, PHAST also includes several tools for phylogenetic modeling,
functional element identification, as well as utilities for manipulating
alignments, trees and genomic annotations.")
(license license:bsd-3)))
(define-public python-gffutils
;; The latest release is older more than a year than the latest commit
(let ((commit "4034c54600813b1402945e12faa91b3a53162cf1")

View File

@ -3,6 +3,7 @@
;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2019 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2020 B. Wilson <elaexuotee@wilsonb.com>
;;; Copyright © 2020 Jakub Kądziołka <kuba@kadziolka.net>
;;;
;;; This file is part of GNU Guix.
;;;
@ -57,12 +58,14 @@
(inputs `(("flex" ,flex)))
(propagated-inputs `(("m4" ,m4)))
(home-page "https://www.gnu.org/software/bison/")
(synopsis "Parser generator")
(synopsis "Yacc-compatible parser generator")
(description
"GNU Bison is a general-purpose parser generator. It can build a
deterministic or generalized LR parser from an annotated, context-free
grammar. It is versatile enough to have many applications, from parsers for
simple tools through complex programming languages.")
simple tools through complex programming languages.
Bison also provides an implementation of @command{yacc}, as specified by POSIX.")
(license gpl3+)))
(define-public bison-3.0

View File

@ -375,17 +375,16 @@ and will take advantage of multiple processor cores where possible.")
(define-public libtorrent-rasterbar
(package
(name "libtorrent-rasterbar")
(version "1.2.7")
(source (origin
(method url-fetch)
(uri
(string-append
"https://github.com/arvidn/libtorrent/releases/download/libtorrent_"
(string-join (string-split version #\.) "_")
"/libtorrent-rasterbar-" version ".tar.gz"))
(sha256
(base32
"001g35janbxi20c7jzsf3ii9mkagz4kdsp7f3sz5r0n0cng0c05w"))))
(version "1.2.8")
(source
(origin
(method url-fetch)
(uri
(string-append "https://github.com/arvidn/libtorrent/"
"releases/download/libtorrent-" version "/"
"libtorrent-rasterbar-" version ".tar.gz"))
(sha256
(base32 "1phn4klzvfzvidv5g566pnrrxj8l0givpy6s4r17d45wznqxc006"))))
(build-system gnu-build-system)
(arguments
`(#:configure-flags
@ -402,9 +401,9 @@ and will take advantage of multiple processor cores where possible.")
(native-inputs `(("python" ,python-wrapper)
("pkg-config" ,pkg-config)))
(home-page "https://www.libtorrent.org/")
(synopsis "Feature complete BitTorrent implementation")
(synopsis "Feature-complete BitTorrent implementation")
(description
"libtorrent-rasterbar is a feature complete C++ BitTorrent implementation
"libtorrent-rasterbar is a feature-complete C++ BitTorrent implementation
focusing on efficiency and scalability. It runs on embedded devices as well as
desktops.")
(license l:bsd-2)))

View File

@ -2,7 +2,7 @@
;;; Copyright © 2015 David Thompson <davet@gnu.org>
;;; Copyright © 2015, 2016, 2017 Leo Famulari <leo@famulari.name>
;;; Copyright © 2016 Kei Kebreau <kkebreau@posteo.net>
;;; Copyright © 2016, 2017 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2016, 2017, 2020 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2016 Troy Sankey <sankeytms@gmail.com>
;;; Copyright © 2016 Stefan Reichoer <stefan@xsteve.at>
;;; Copyright © 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr>
@ -46,6 +46,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 sphinx)
#:use-module (gnu packages sqlite)
#:use-module (gnu packages time)
@ -282,3 +283,59 @@ of day, written in C, and including bindings for C++, pascal, perl, php, python,
and ruby. It includes two illustrative command-line programs, @code{hcal} and
@code{hdate}, and some snippets and scripts written in the binding languages.")
(license license:gpl3+)))
(define-public confclerk
(package
(name "confclerk")
(version "0.6.4")
(source
(origin
(method url-fetch)
(uri (string-append "https://www.toastfreeware.priv.at/tarballs/"
"confclerk/confclerk-" version ".tar.gz"))
(sha256
(base32
"10rhg44px4nvbkd3p341cmp2ds43jn8r4rvgladda9v8zmsgr2b3"))))
(build-system gnu-build-system)
(arguments
'(#:phases
(modify-phases %standard-phases
(replace 'configure
(lambda* (#:key outputs #:allow-other-keys)
(let ((out (assoc-ref outputs "out")))
;; Install directory is currently hard-coded.
(substitute* "src/app/app.pro"
(("PREFIX = /usr/bin")
(string-append "PREFIX =" out "/bin")))
(invoke "qmake"))))
(add-after 'install 'install-docs
(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(share (string-append out "/share")))
(install-file "data/confclerk.1"
(string-append share "/man/man1"))
(install-file "data/confclerk.desktop"
(string-append share "/applications"))
(install-file "data/confclerk.svg"
(string-append share "/icons/hicolor/scalable/apps"))
#t))))
#:tests? #f)) ; no tests
(native-inputs
`(("perl" ,perl))) ; pod2man
(inputs
`(("qtbase" ,qtbase)))
(home-page "https://www.toastfreeware.priv.at/confclerk")
(synopsis "Offline conference schedule application")
(description
"ConfClerk is an application written in Qt, which makes conference schedules
available offline. It displays the conference schedule from various views,
support searches on various items (speaker, speech topic, location, etc.) and
enables you to select favorite events and create your own schedule.
At the moment ConfClerk is able to import schedules in XML format created by
the PentaBarf conference management system (or frab) used by e.g. FOSDEM,
DebConf, FrOSCon, Grazer LinuxTage, and the CCC congresses.
ConfClerk is targeted at mobile devices but works on any system running Qt.")
(license (list license:gpl2+
license:lgpl3)))) ; or cc-by3.0 for src/icons/*

View File

@ -7,7 +7,7 @@
;;; Copyright © 2015, 2017 Cyril Roelandt <tipecaml@gmail.com>
;;; Copyright © 2015 Federico Beffa <beffa@fbengineering.ch>
;;; Copyright © 2015 Andreas Enge <andreas@enge.fr>
;;; Copyright © 2015, 2016, 2018, 2019 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2015, 2016, 2018, 2019, 2020 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2016, 2017 Leo Famulari <leo@famulari.name>
;;; Copyright © 2016 Christopher Allan Webber <cwebber@dustycloud.org>
;;; Copyright © 2016, 2017 Danny Milosavljevic <dannym+a@scratchpost.org>
@ -34,6 +34,7 @@
;;; Copyright © 2020 Brice Waegeneire <brice@waegenei.re>
;;; Copyright © 2020 Josh Marshall <joshua.r.marshall.1991@gmail.com>
;;; Copyright © 2020 Vinicius Monego <monego@posteo.net>
;;; Copyright © 2020 Tanguy Le Carrour <tanguy@bioneland.org>
;;;
;;; This file is part of GNU Guix.
;;;
@ -75,11 +76,62 @@
#:use-module (guix download)
#:use-module (guix git-download)
#:use-module (guix build-system cmake)
#:use-module (guix build-system glib-or-gtk)
#:use-module (guix build-system gnu)
#:use-module (guix build-system go)
#:use-module (guix build-system meson)
#:use-module (guix build-system python)
#:use-module (guix build-system trivial))
(define-public pedansee
(package
(name "pedansee")
(version "0.0.3")
(source
(origin
(method url-fetch)
(uri
(string-append "https://www.flyn.org/projects/"
name "/" name "-" version ".tar.gz"))
(sha256
(base32 "0lsg791x6n95pxg6vif8qfc46nqcamhjq3g0dl5xqf6imy7n3acd"))))
(build-system glib-or-gtk-build-system)
(native-inputs
`(("clang" ,clang)
("pkg-config" ,pkg-config)
("python" ,python-wrapper)))
(inputs
`(("glib" ,glib)))
(synopsis "Code checker for C")
(description "Pedansee checks C source files for compliance with a particular
programming style. The style is currently defined by the pedansee source code
in the form of functions which walk each source files syntax tree. You can
modify some aspects of this style through the use of regular expressions.")
(home-page "https://www.flyn.org/projects/pedansee/")
(license license:gpl3+)))
(define-public mutest
(package
(name "mutest")
(version "0.0.0")
(source
(origin
(method git-fetch)
(uri
(git-reference
(url "https://github.com/ebassi/mutest.git")
(commit "e6246c9")))
(file-name (git-file-name name version))
(sha256
(base32 "0gdqwq6fvk06wld4rhnw5752hahrvhd69zrci045x25rwx90x26q"))))
(build-system meson-build-system)
(synopsis "Small C testing library")
(description "Mutest aims to be a small unit testing library for C projects,
with an API heavily modelled on high level Behavior-Driver Development frameworks
like Jasmine or Mocha.")
(home-page "https://ebassi.github.io/mutest/mutest.md.html")
(license license:expat)))
(define-public check
(package
(name "check")
@ -285,7 +337,7 @@ a multi-paradigm automated test framework for C++ and Objective-C.")
(define-public catch-framework2
(package
(name "catch2")
(version "2.1.2")
(version "2.13.0")
(home-page "https://github.com/catchorg/Catch2")
(source (origin
(method git-fetch)
@ -295,7 +347,7 @@ a multi-paradigm automated test framework for C++ and Objective-C.")
(file-name (git-file-name name version))
(sha256
(base32
"14vcckqmbydjsg40ngi6iv999zimysh2l7fmrqj1d7xl990qz233"))))
"0i4w0c9280a5fyi00mvvf13wlnfzyifr487n1iyr30zvvj5s5f1h"))))
(build-system cmake-build-system)
(inputs
`(("python" ,python-wrapper)))
@ -1824,6 +1876,18 @@ seamlessly into your existing Python unit testing work flow.")
(license license:mpl2.0)
(properties `((python2-variant . ,(delay python2-hypothesis))))))
(define-public python-hypothesis-5.23
(package
(inherit python-hypothesis)
(version "5.23.0")
(source (origin
(method url-fetch)
(uri (pypi-uri "hypothesis" version))
(sha256
(base32
"0sy1v6nyxg4rjcf3rlr8nalb7wqd9nccpb2lzkchbj5an13ysf1h"))))
(home-page "https://github.com/HypothesisWorks/hypothesis")))
;; This is the last version of Hypothesis that supports Python 2.
(define-public python2-hypothesis
(let ((hypothesis (package-with-python2
@ -1840,6 +1904,29 @@ seamlessly into your existing Python unit testing work flow.")
`(("python2-enum34" ,python2-enum34)
,@(package-propagated-inputs hypothesis))))))
(define-public python-hypothesmith
(package
(name "python-hypothesmith")
(version "0.1.2")
(source
(origin
(method url-fetch)
(uri (pypi-uri "hypothesmith" version))
(sha256
(base32
"09331sspknv459xcyn1k0lx5flqlc6gmnwp9370pfvg4kg1zmss6"))))
(build-system python-build-system)
(propagated-inputs
`(("python-hypothesis" ,python-hypothesis-5.23)
("python-lark-parser" ,python-lark-parser)
("python-libcst" ,python-libcst)))
(home-page "https://github.com/Zac-HD/hypothesmith")
(synopsis "Strategies for generating Python programs")
(description
"This package contains hypothesis strategies for generating Python
programs, something like CSmith, a random generator of C programs.")
(license license:mpl2.0)))
(define-public python-lit
(package
(name "python-lit")
@ -1898,13 +1985,13 @@ failures.")
(define-public python-pytest-flakes
(package
(name "python-pytest-flakes")
(version "4.0.0")
(version "4.0.1")
(source (origin
(method url-fetch)
(uri (pypi-uri "pytest-flakes" version))
(sha256
(base32
"0hyind0gb950v9kfy0v97x66fb33slbqmxhrjvgbvsv0ayzn869l"))))
"0045h3hnrkn2jwr42jgy2j98npx4amwr6wxzi9j0nppaqz33l49p"))))
(build-system python-build-system)
(arguments
`(#:phases
@ -2594,7 +2681,7 @@ provides a simple way to achieve this.")
(define-public umockdev
(package
(name "umockdev")
(version "0.14.1")
(version "0.14.2")
(source (origin
(method url-fetch)
(uri (string-append "https://github.com/martinpitt/umockdev/"
@ -2602,7 +2689,7 @@ provides a simple way to achieve this.")
"umockdev-" version ".tar.xz"))
(sha256
(base32
"1g78jcrvb7yyh0q5kv5409wjqf8nlfqnw1rknm3a247mcx317dpz"))))
"1nh6xsssmssmk0lxp9c9dmq3wzlpbpkg77nmmd09csbpybibgxfp"))))
(build-system gnu-build-system)
(arguments
`(#:phases

View File

@ -227,6 +227,7 @@
"third_party/swiftshader/third_party/marl" ;ASL2.0
"third_party/swiftshader/third_party/subzero" ;NCSA
"third_party/swiftshader/third_party/SPIRV-Headers" ;X11-style
"third_party/tcmalloc/chromium" ;BSD-3
"third_party/usb_ids" ;BSD-3
"third_party/usrsctp" ;BSD-2
"third_party/vulkan_memory_allocator" ;Expat
@ -288,7 +289,7 @@
(string-append "ungoogled-chromium-" category "-" name))))
(sha256 (base32 hash))))
(define %ungoogled-revision "df199c04ff367da59ce52a23a3f3b305dd3b00c3")
(define %ungoogled-revision "57244cdfc21dc05910862152d91cc528103c988a")
(define %debian-revision "debian/83.0.4103.116-3")
(define %gentoo-revision "f3f649046d31ebdbc8c4a302b2384504eff78027")
@ -330,7 +331,7 @@ chromium-fix-vaapi-on-intel.patch?h=packages/chromium\
(string-take %ungoogled-revision 7)))
(sha256
(base32
"1bqvcq3dj6615198j7cz3ylyyic5zpis06capvl6ybl1na3ainb0"))))
"15a1xpmabdxr1mn61m0jm9a5l987rxdji8b1b6zy39mr636vcwfi"))))
;; This is a source 'snippet' that does the following:
;; *) Applies various patches for unbundling purposes and libstdc++ compatibility.
@ -449,7 +450,7 @@ chromium-fix-vaapi-on-intel.patch?h=packages/chromium\
(define-public ungoogled-chromium
(package
(name "ungoogled-chromium")
(version (string-append "84.0.4147.89-0."
(version (string-append "84.0.4147.125-0."
(string-take %ungoogled-revision 7)))
(synopsis "Graphical web browser")
(source (origin
@ -459,7 +460,7 @@ chromium-fix-vaapi-on-intel.patch?h=packages/chromium\
(car (string-split version #\-)) ".tar.xz"))
(sha256
(base32
"0yf6j0459qzr677zsa2apmfz0x0ndlscvwj1a5v40nqjijchv5qp"))
"1xdg9pnnvbzasmra09rl7wdrir61rfcqml46jj7kv39drwk9chwq"))
(modules '((guix build utils)))
(snippet (force ungoogled-chromium-snippet))))
(build-system gnu-build-system)
@ -490,7 +491,6 @@ chromium-fix-vaapi-on-intel.patch?h=packages/chromium\
"goma_dir=\"\""
"enable_nacl=false"
"enable_nacl_nonsfi=false"
"use_allocator=\"none\""
"use_unofficial_version_number=false"
"treat_warnings_as_errors=false"
"use_official_google_api_keys=false"

View File

@ -47,8 +47,8 @@
#:use-module (guix build-system gnu))
(define-public cuirass
(let ((commit "136a8295e4e09724eccc230c127fb880aa84b57d")
(revision "38"))
(let ((commit "f2984c7230f69a6e50810edc5e9d36bd671801f9")
(revision "43"))
(package
(name "cuirass")
(version (git-version "0.0.1" revision commit))
@ -60,7 +60,7 @@
(file-name (git-file-name name version))
(sha256
(base32
"04fzc2q8cd02dnlrarzlxq0yfi90735s5f6dw7g2k63rbxlhcq8j"))))
"1p9mlmhv4kz8wixgywh1ffm3140p4mkgz92n7ry3n5s9w5n7fpjl"))))
(build-system gnu-build-system)
(arguments
'(#:modules ((guix build utils)
@ -93,8 +93,10 @@
(git (assoc-ref inputs "guile-git"))
(bytes (assoc-ref inputs "guile-bytestructures"))
(fibers (assoc-ref inputs "guile-fibers"))
(zlib (assoc-ref inputs "guile-zlib"))
(guix (assoc-ref inputs "guix"))
(deps (list gcrypt json sqlite git bytes fibers guix))
(deps (list gcrypt json sqlite git bytes fibers
zlib guix))
(guile (assoc-ref %build-inputs "guile"))
(effective (read-line
(open-pipe* OPEN_READ
@ -126,6 +128,7 @@
("guile-json" ,guile-json-4)
("guile-sqlite3" ,guile-sqlite3)
("guile-git" ,guile-git)
("guile-zlib" ,guile-zlib)
;; FIXME: this is propagated by "guile-git", but it needs to be among
;; the inputs to add it to GUILE_LOAD_PATH.
("guile-bytestructures" ,guile-bytestructures)

View File

@ -915,7 +915,7 @@ multiple processors and multiple cores when compressing data.")
(define-public pixz
(package
(name "pixz")
(version "1.0.6")
(version "1.0.7")
(source (origin
(method url-fetch)
(uri (string-append
@ -923,7 +923,7 @@ multiple processors and multiple cores when compressing data.")
"/pixz-" version ".tar.xz"))
(sha256
(base32
"1s3j7zw6j5zi3fhdxg287ndr3wf6swac7z21mqd1pyiln530gi82"))))
"1ifxr18f2h75gkcrkx8033kwmwmrcgxshpaawyc2n4dzn1p2rqz5"))))
(build-system gnu-build-system)
(native-inputs
`(("pkg-config" ,pkg-config)
@ -1814,20 +1814,18 @@ single-member files which can't be decompressed in parallel.")
(define-public innoextract
(package
(name "innoextract")
(version "1.8")
(version "1.9")
(source
(origin
(method url-fetch)
(uri (string-append "https://github.com/dscharrer/innoextract/releases"
"/download/" version
(uri (string-append "https://constexpr.org/innoextract/files/"
"innoextract-" version "/"
"/innoextract-" version ".tar.gz"))
(sha256
(base32
"0saj50n8ds85shygy4mq1h6s99510r9wgjjdll4dmvhra4lzcy2y"))))
(base32 "09l1z1nbl6ijqqwszdwch9mqr54qb7df0wp2sd77v17dq6gsci33"))))
(build-system cmake-build-system)
(arguments
`(#:tests? #f
#:configure-flags '("-DBoost_NO_BOOST_CMAKE=ON")))
`(#:tests? #f))
(inputs `(("boost" ,boost)
("libiconv" ,libiconv)
("xz" ,xz)))

View File

@ -0,0 +1,105 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2020 Oleg Pykhalov <go.wigust@gmail.com>
;;;
;;; This file is part of GNU Guix.
;;;
;;; GNU Guix is free software; you can redistribute it and/or modify it
;;; under the terms of the GNU General Public License as published by
;;; the Free Software Foundation; either version 3 of the License, or (at
;;; your option) any later version.
;;;
;;; GNU Guix is distributed in the hope that it will be useful, but
;;; WITHOUT ANY WARRANTY; without even the implied warranty of
;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
;;; GNU General Public License for more details.
;;;
;;; You should have received a copy of the GNU General Public License
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
(define-module (gnu packages configuration-management)
#:use-module (gnu packages)
#:use-module (guix build-system go)
#:use-module (guix git-download)
#:use-module (gnu packages golang)
#:use-module (gnu packages version-control)
#:use-module (gnu packages textutils)
#:use-module ((guix licenses) #:prefix license:)
#:use-module (guix packages)
#:use-module (guix utils))
(define-public chezmoi
(package
(name "chezmoi")
;; XXX: Make sure 7f238faa61e46d79b54d4d0ea8f0b5fc27db84b2 applied before
;; version update, which should fix @code{password-store} integration.
(version "1.8.1")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/twpayne/chezmoi")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
"1b8y0wq3myhvjdnwl0i4x85iil7i7kmsjajvbw1a47afm83jkbaw"))))
(build-system go-build-system)
(arguments
`(#:import-path "github.com/twpayne/chezmoi"
;; We don't need to install the source code for end-user applications.
#:install-source? #f))
(native-inputs
`(("go-github-com-masterminds-sprig" ,go-github-com-masterminds-sprig)
("go-github-com-masterminds-goutils" ,go-github-com-masterminds-goutils)
("go-github-com-masterminds-semver" ,go-github-com-masterminds-semver)
("go-github-com-google-uuid" ,go-github-com-google-uuid)
("go-github-com-huandu-xstrings" ,go-github-com-huandu-xstrings)
("go-github-com-imdario-mergo" ,go-github-com-imdario-mergo)
("go-github-com-mitchellh-reflectwalk" ,go-github-com-mitchellh-reflectwalk)
("go-github-com-mitchellh-copystructure" ,go-github-com-mitchellh-copystructure)
("go-github-com-bmatcuk-doublestar" ,go-github-com-bmatcuk-doublestar)
("go-github-com-charmbracelet-glamour" ,go-github-com-charmbracelet-glamour)
("go-github-com-alecthomas-chroma" ,go-github-com-alecthomas-chroma)
("go-github-com-coreos-go-semver" ,go-github-com-coreos-go-semver)
("go-github-com-danwakefield-fnmatch" ,go-github-com-danwakefield-fnmatch)
("go-github-com-dlclark-regexp2" ,go-github-com-dlclark-regexp2)
("go-github-go-git" ,go-github-go-git)
("go-github-com-google-go-github" ,go-github-com-google-go-github)
("go-github-com-google-go-querystring" ,go-github-com-google-go-querystring)
("go-github-com-google-renameio" ,go-github-com-google-renameio)
("go-github-com-microcosm-cc-bluemonday",go-github-com-microcosm-cc-bluemonday)
("go-github-com-aymerick-douceur" ,go-github-com-aymerick-douceur)
("go-github-com-chris-ramon-douceur" ,go-github-com-chris-ramon-douceur)
("go-github-com-gorilla-css" ,go-github-com-gorilla-css)
("go-github-com-muesli-reflow-ansi" ,go-github-com-muesli-reflow-ansi)
("go-github-com-muesli-reflow-wordwrap" ,go-github-com-muesli-reflow-wordwrap)
("go-github-com-muesli-reflow-indent" ,go-github-com-muesli-reflow-indent)
("go-github-com-muesli-reflow-padding" ,go-github-com-muesli-reflow-padding)
("go-github-com-muesli-termenv" ,go-github-com-muesli-termenv)
("go-github-com-google-goterm" ,go-github-com-google-goterm)
("go-golang-org-colorful" ,go-golang-org-colorful)
("go-github-com-mattn-go-isatty" ,go-github-com-mattn-go-isatty)
("go-github.com-mattn-go-runewidth" ,go-github.com-mattn-go-runewidth)
("go-github-com-olekukonko-tablewriter" ,go-github-com-olekukonko-tablewriter)
("go-github-com-pelletier-go-toml" ,go-github-com-pelletier-go-toml)
("go-github-com-pkg-diff" ,go-github-com-pkg-diff)
("go-github-com-sergi-go-diff" ,go-github-com-sergi-go-diff)
("go-github-com-spf13-cobra" ,go-github-com-spf13-cobra)
("go-github-com-spf13-viper" ,go-github-com-spf13-viper)
("go-github-com-twpayne-go-shell" ,go-github-com-twpayne-go-shell)
("go-github-com-twpayne-go-vfs" ,go-github-com-twpayne-go-vfs)
("go-github-com-twpayne-go-vfsafero" ,go-github-com-twpayne-go-vfsafero)
("go-github-com-twpayne-go-xdg" ,go-github-com-twpayne-go-xdg)
("go-github-com-yuin-goldmark" ,go-github-com-yuin-goldmark)
("go-github-com-zalando-go-keyring" ,go-github-com-zalando-go-keyring)
("go-github-com-godbus-dbus" ,go-github-com-godbus-dbus)
("go-etcd-io-bbolt" ,go-etcd-io-bbolt)
("go-golang-org-x-crypto" ,go-golang-org-x-crypto)
("go-golang-org-x-net" ,go-golang-org-x-net)
("go-golang-org-x-oauth2" ,go-golang-org-x-oauth2)
("go-github-com-rogpeppe-go-internal" ,go-github-com-rogpeppe-go-internal)
("gopkg-in-errgo-fmt-errors" ,gopkg-in-errgo-fmt-errors)))
(home-page "https://www.chezmoi.io/")
(synopsis "Personal configuration files manager")
(description "This package helps to manage personal configuration files
across multiple machines.")
(license license:expat)))

View File

@ -1,6 +1,6 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2015 Siniša Biđin <sinisa@bidin.eu>
;;; Copyright © 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2018, 2019, 2020 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2019 Pierre Neidhardt <mail@ambrevar.xyz>
;;; Copyright © 2019 Vasile Dumitrascu <va511e@yahoo.com>
;;;
@ -39,7 +39,7 @@
(package
(name "conky")
(home-page "https://github.com/brndnmtthws/conky")
(version "1.11.5")
(version "1.11.6")
(source
(origin
(method git-fetch)
@ -48,7 +48,7 @@
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1a75ss48mn9pknrxy33dh5rdgm67a5kpddsyqfhlcn1761kfzzyp"))))
(base32 "0y2g66fjqp2hdk0y1h4ijxhnv34j16gizvxpmbigwh4n6zijcm6v"))))
(build-system cmake-build-system)
(arguments
`(#:tests? #f ; there are no tests

View File

@ -11,6 +11,8 @@
;;; Copyright © 2020 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2020 Brice Waegeneire <brice@waegenei.re>
;;; Copyright © 2020 Vinicius Monego <monego@posteo.net>
;;; Copyright © 2020 Marius Bakke <marius@gnu.org>
;;; Copyright © 2020 Michael Rohleder <mike@rohleder.de>
;;;
;;; This file is part of GNU Guix.
;;;
@ -81,6 +83,42 @@ strings, configuration, bit streams, threading, translation, and cross-platform
operating system functions.")
(license license:zlib)))
(define-public rttr
(package
(name "rttr")
(version "0.9.6")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/rttrorg/rttr/")
(commit (string-append "v" version))))
(sha256
(base32 "1yxad8sj40wi75hny8w6imrsx8wjasjmsipnlq559n4b6kl84ijp"))
(file-name (git-file-name name version))))
(build-system cmake-build-system)
(arguments
'(;; No check target. Setting test-target to "unit_test" runs it twice.
#:tests? #f
#:configure-flags
'("-DBUILD_DOCUMENTATION=OFF" "-DBUILD_EXAMPLES=OFF")
#:phases
(modify-phases %standard-phases
;; library_test fails in chroot.
(add-after 'unpack 'skip-library-test
(lambda _
(substitute* "src/unit_tests/unit_tests.cmake"
(("misc/library_test.cpp") ""))
#t)))))
(native-inputs `(("pkg-config" ,pkg-config)))
(home-page "https://github.com/rttrorg/rttr/")
(synopsis "C++ Reflection Library")
(description
"RTTR stands for Run Time Type Reflection. It describes the ability of a
computer program to introspect and modify an object at runtime. It is also
the name of the library itself, which is written in C++.")
(license license:expat)))
(define-public rct
(let* ((commit "b3e6f41d9844ef64420e628e0c65ed98278a843a")
(revision "2"))
@ -246,7 +284,7 @@ as ordering relation.")
(define-public json-modern-cxx
(package
(name "json-modern-cxx")
(version "3.7.3")
(version "3.9.1")
(home-page "https://github.com/nlohmann/json")
(source
(origin
@ -254,8 +292,7 @@ as ordering relation.")
(uri (git-reference (url home-page)
(commit (string-append "v" version))))
(sha256
(base32
"04rry1xzis71z5gj1ylcj8b4li5q18zxhcwaviwvi3hx0frzxl9w"))
(base32 "0ar4mzp53lskxw3vdzw07f47njcshl3lwid9jfq6l7yx6ds2nyjc"))
(file-name (git-file-name name version))
(modules '((guix build utils)))
(snippet
@ -278,12 +315,40 @@ as ordering relation.")
(string-append
"#include <fifo_map/" fifo-map-hpp ">")))))
#t))))
(build-system cmake-build-system)
(arguments
'(#:configure-flags
(list (string-append "-DJSON_TestDataDirectory="
(assoc-ref %build-inputs "json_test_data")))
#:phases (modify-phases %standard-phases
;; XXX: When tests are enabled, the install phase will cause
;; a needless rebuild without the given configure flags,
;; ultimately creating both $out/lib and $out/lib64. Move
;; the check phase after install to work around it.
(delete 'check)
(add-after 'install 'check
(lambda* (#:key tests? #:allow-other-keys)
(if tests?
;; Some tests need git and a full checkout, skip those.
(invoke "ctest" "-LE" "git_required")
(format #t "test suite not run~%"))
#t)))))
(native-inputs
`(("amalgamate" ,amalgamate)
("doctest" ,doctest)))
("doctest" ,doctest)
("json_test_data"
,(let ((version "3.0.0"))
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/nlohmann/json_test_data")
(commit (string-append "v" version))))
(file-name (git-file-name "json_test_data" version))
(sha256
(base32
"0nzsjzlvk14dazwh7k2jb1dinb0pv9jbx5jsyn264wvva0y7daiv")))))))
(inputs
`(("fifo-map" ,fifo-map)))
(build-system cmake-build-system)
(synopsis "JSON parser and printer library for C++")
(description "JSON for Modern C++ is a C++ JSON library that provides
intuitive syntax and trivial integration.")
@ -295,7 +360,7 @@ intuitive syntax and trivial integration.")
(define-public xtl
(package
(name "xtl")
(version "0.6.13")
(version "0.6.16")
(source (origin
(method git-fetch)
(uri
@ -304,7 +369,7 @@ intuitive syntax and trivial integration.")
(commit version)))
(sha256
(base32
"0py70lm2i3sxzpgca2cic8zfn6dn18q837h76a5fchl2c0kpxm91"))
"0hkz01l7fc1m79s02hz86cl9nb4rwdvg255r6aj82gnsx5qvxy2l"))
(file-name (git-file-name name version))))
(native-inputs
`(("googletest" ,googletest)

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -17,6 +17,7 @@
;;; Copyright © 2020 Marius Bakke <mbakke@fastmail.com>
;;; Copyright © 2020 Jakub Kądziołka <kuba@kadziolka.net>
;;; Copyright © 2020 Brice Waegeneire <brice@waegenei.re>
;;; Copyright © 2020 Hendur Saga <hendursaga@yahoo.com>
;;;
;;; This file is part of GNU Guix.
;;;
@ -53,6 +54,8 @@
#:use-module (gnu packages libffi)
#:use-module (gnu packages linux)
#:use-module (gnu packages lsof)
#:use-module (gnu packages man)
#:use-module (gnu packages multiprecision)
#:use-module (gnu packages nettle)
#:use-module (gnu packages password-utils)
#:use-module (gnu packages perl)
@ -394,6 +397,49 @@ generation of wordlists the included tool @code{worgen} can be used. There is
no man page, refer to the home page for usage details.")
(license (list license:isc license:expat)))))
(define-public ssss
(package
(name "ssss")
(version "0.5")
(source (origin
(method url-fetch)
(uri (string-append "http://point-at-infinity.org/ssss/ssss-"
version ".tar.gz"))
(sha256
(base32
"15grn2fp1x8p92kxkwbmsx8rz16g93y9grl3hfqbh1jn21ama5jx"))))
(build-system gnu-build-system)
(arguments
`(#:tests? #f ; No test suite
#:make-flags (list (string-append "PREFIX=" (assoc-ref %outputs "out"))
"CC=gcc")
#:phases
(modify-phases %standard-phases
(delete 'configure) ; no configuration to be done
(replace 'install
(lambda* (#:key outputs #:allow-other-keys)
(let* ((outdir (assoc-ref outputs "out"))
(bindir (string-append outdir "/bin"))
(docdir (string-append outdir
"/share/doc/ssss-"
,version)))
(install-file "ssss-combine" bindir)
(install-file "ssss-split" bindir)
(install-file "ssss.1" docdir)
(install-file "ssss.1.html" docdir)
#t))))))
(inputs
`(("gmp" ,gmp)))
(native-inputs
`(("xmltoman" ,xmltoman)))
(home-page "http://point-at-infinity.org/ssss/")
(synopsis "Shamir's secret sharing scheme implementation")
(description "@command{ssss-split} and @command{ssss-combine} are utilities that split
and combine secrets securely using Shamir's secret sharing scheme. This implementation
allows for a threshold scheme where the minimum number of shares can be less than the
total number of shares generated.")
(license license:gpl2+)))
(define-public tomb
(package
(name "tomb")

View File

@ -43,6 +43,7 @@
;;; Copyright © 2020 Tanguy Le Carrour <tanguy@bioneland.org>
;;; Copyright © 2020 Lars-Dominik Braun <ldb@leibniz-psychology.org>
;;; Copyright © 2020 Guy Fleury Iteriteka <gfleury@disroot.org>
;;; Copyright © 2020 Michael Rohleder <mike@rohleder.de>
;;;
;;; This file is part of GNU Guix.
;;;
@ -613,14 +614,13 @@ RDBMS systems (which are deep in functionality).")
(define-public mycli
(package
(name "mycli")
(version "1.21.1")
(version "1.22.2")
(source
(origin
(method url-fetch)
(uri (pypi-uri "mycli" version))
(sha256
(base32
"1q9p0yik9cpvpxjs048anvhicfcna84mpl7axv9bwgr48w40lqwg"))))
(base32 "1lq2x95553vdmhw13cxcgsd2g2i32izhsb7hxd4m1iwf9b3msbpv"))))
(build-system python-build-system)
(arguments
`(#:tests? #f)) ; tests expect a running MySQL
@ -1179,7 +1179,7 @@ including field and record folding.")))
(define-public rocksdb
(package
(name "rocksdb")
(version "6.10.2")
(version "6.11.4")
(source (origin
(method git-fetch)
(uri (git-reference
@ -1188,7 +1188,7 @@ including field and record folding.")))
(file-name (git-file-name name version))
(sha256
(base32
"1f2wqb6px812ijcivq3rsknqgkv01wblc6sd8wavhrw8qljgr3s1"))
"0n19p9cd13jg0lnibrzwkxs4xlrhyj3knypkd2ic41arbds0bdnl"))
(modules '((guix build utils)))
(snippet
'(begin
@ -1973,14 +1973,14 @@ sets, bitmaps and hyperloglogs.")
(define-public kyotocabinet
(package
(name "kyotocabinet")
(version "1.2.77")
(version "1.2.78")
(source (origin
(method url-fetch)
(uri (string-append "https://fallabs.com/kyotocabinet/pkg/"
"kyotocabinet-" version ".tar.gz"))
(sha256
(base32
"1rlx4307adbzd842b4npq6cwlw8h010ingxaz3qz1ijc70lr72an"))))
"1bxkf9kmcavq9rqridb8mvmrk3hj4447ffi24m2admsbm61n6k29"))))
(build-system gnu-build-system)
(arguments
`(#:configure-flags
@ -2149,7 +2149,7 @@ database.")
(define-public lmdb
(package
(name "lmdb")
(version "0.9.25")
(version "0.9.26")
(source
(origin
(method git-fetch)
@ -2158,7 +2158,7 @@ database.")
(commit (string-append "LMDB_" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0i60zlca8r6fib23gdgl4c80gxpx24772ggpvz94yr7zaai4k11w"))))
(base32 "0323xwb2rqyrr9vr6gbxc2kl89drhqw0ifmyh9pg9qgqmymyhxdx"))))
(build-system gnu-build-system)
(arguments
`(#:test-target "test"
@ -2450,13 +2450,13 @@ etc., and an SQL engine for performing simple SQL queries.")
(define-public python-lmdb
(package
(name "python-lmdb")
(version "0.98")
(version "0.99")
(source (origin
(method url-fetch)
(uri (pypi-uri "lmdb" version))
(sha256
(base32
"027pgbdhhdcbwj53vrzr6a60gjhmz4s75gl3180fd4q8pwlbq986"))
"12fwlzfd82471ss9xzbqwcqc6f5miy51y72y2yya9j5cm9589szr"))
(modules '((guix build utils)))
(snippet
;; Delete bundled lmdb source files.
@ -2549,7 +2549,19 @@ implementation for Python.")
;; TODO: Removing the libsrc/zlib source directory breaks the build.
;; This indicates that the internal zlib code may still be used.
#:configure-flags '("--without-internal-zlib"
"--with-readline")))
"--with-readline"
"--enable-static=no")
#:phases
(modify-phases %standard-phases
;; Even with "--enable-static=no", "libvirtuoso-t.a" is left in
;; the build output. The following phase removes it.
(add-after 'install 'remove-static-libs
(lambda* (#:key outputs #:allow-other-keys)
(let ((lib (string-append (assoc-ref outputs "out") "/lib")))
(for-each (lambda (file)
(delete-file (string-append lib "/" file)))
'("libvirtuoso-t.a"
"libvirtuoso-t.la"))))))))
(inputs
`(("openssl" ,openssl-1.0)
("net-tools" ,net-tools)
@ -2703,15 +2715,13 @@ You might also want to install the following optional dependencies:
(define-public python-alembic
(package
(name "python-alembic")
(version "1.4.1")
(version "1.4.2")
(source
(origin
(method url-fetch)
(uri (pypi-uri "alembic" version))
(patches (search-patches "python-alembic-exceptions-cause.patch"))
(sha256
(base32
"0a4hzn76csgbf1px4f5vfm256byvjrqkgi9869nkcjrwjn35c6kr"))))
(base32 "1gsdrzx9h7wfva200qvvsc9sn4w79mk2vs0bbnzjhxi1jw2b0nh3"))))
(build-system python-build-system)
(arguments
'(#:phases (modify-phases %standard-phases
@ -2887,13 +2897,13 @@ designed to be easy and intuitive to use.")
(define-public python-psycopg2
(package
(name "python-psycopg2")
(version "2.8.4")
(version "2.8.5")
(source
(origin
(method url-fetch)
(uri (pypi-uri "psycopg2" version))
(sha256
(base32 "1djvh98pi4hjd8rxbq8qzc63bg8v78k33yg6pl99wak61b6fb67q"))))
(base32 "06081jk9srkd4ra9j8b93x9ld3a2yxsbsf5bbbcivbm1yx065m7p"))))
(build-system python-build-system)
(arguments
;; Tests would require a postgresql database "psycopg2_test"
@ -3106,13 +3116,13 @@ is designed to have a low barrier to entry.")
(define-public python-sqlparse
(package
(name "python-sqlparse")
(version "0.2.4")
(version "0.3.1")
(source (origin
(method url-fetch)
(uri (pypi-uri "sqlparse" version))
(sha256
(base32
"1v3xh0bkfhb262dbndgzhivpnhdwavdzz8jjhx9vx0xbrx2880nf"))))
"0j652a6z7bdf6c77aczfn8m8b2nsr1bcqq48wzghf8vi6wvj0qp1"))))
(build-system python-build-system)
(arguments
`(#:phases

View File

@ -3,6 +3,7 @@
;;; Copyright © 2016, 2017, 2019, 2020 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2018 Meiyo Peng <meiyo.peng@gmail.com>
;;; Copyright © 2019 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2020 Mark H Weaver <mhw@netris.org>
;;;
;;; This file is part of GNU Guix.
;;;
@ -22,6 +23,7 @@
(define-module (gnu packages datastructures)
#:use-module (gnu packages)
#:use-module (gnu packages autotools)
#:use-module (gnu packages boost)
#:use-module (gnu packages perl)
#:use-module ((guix licenses) #:prefix license:)
#:use-module (guix packages)
@ -82,7 +84,7 @@ library.")
(define-public sparsehash
(package
(name "sparsehash")
(version "2.0.3")
(version "2.0.4")
(source (origin
(method git-fetch)
(uri (git-reference
@ -91,7 +93,7 @@ library.")
(file-name (git-file-name name version))
(sha256
(base32
"0m3f0cnpnpf6aak52wn8xbrrdw8p0yhq8csgc8nlvf9zp8c402na"))))
"1pf1cjvcjdmb9cd6gcazz64x0cd2ndpwh6ql2hqpypjv725xwxy7"))))
(build-system gnu-build-system)
(synopsis "Memory-efficient hashtable implementations")
(description
@ -284,3 +286,41 @@ Burrows-Wheeler transformed string from a given string over a constant-size
alphabet. The algorithm runs in O(n log n) worst-case time using only 5n+O(1)
bytes of memory space, where n is the length of the string.")
(license license:expat)))
(define-public robin-map
(package
(name "robin-map")
(version "0.6.3")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/Tessil/robin-map")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
"1li70vwsksva9c4yly90hjafgqfixi1g6d52qq9p6r60vqc4pkjj"))))
(build-system cmake-build-system)
(native-inputs
`(("boost" ,boost))) ; needed for tests
(arguments
`(#:phases
(modify-phases %standard-phases
(replace 'check
(lambda _
(mkdir "tests")
(with-directory-excursion "tests"
(invoke "cmake" "../../source/tests")
(invoke "cmake" "--build" ".")
(invoke "./tsl_robin_map_tests")))))))
(home-page "https://github.com/Tessil/robin-map")
(synopsis "C++ implementation of a fast hash map and hash set")
(description "The robin-map library is a C++ implementation of a fast hash
map and hash set using open-addressing and linear robin hood hashing with
backward shift deletion to resolve collisions.
Four classes are provided: tsl::robin_map, tsl::robin_set, tsl::robin_pg_map
and tsl::robin_pg_set. The first two are faster and use a power of two growth
policy, the last two use a prime growth policy instead and are able to cope
better with a poor hash function.")
(license license:expat)))

View File

@ -536,6 +536,31 @@ the position of the variable and allows you to modify its value.")
;; by GPLv3 or later.
(license (list license:lgpl3+ license:gpl3+))))
(define-public remake
(package (inherit gnu-make)
(name "remake")
(version "4.3-1.5")
(source (origin
(method url-fetch)
(uri (let ((upstream-version
(match (string-split version #\-)
((ver sub) (string-append ver "%2Bdbg-" sub)))))
(string-append "mirror://sourceforge/bashdb/"
"remake/" upstream-version "/"
"remake-" upstream-version ".tar.gz")))
(file-name (string-append "remake-" version ".tar.gz"))
(sha256
(base32
"0xlx2485y0israv2pfghmv74lxcv9i5y65agy69mif76yc4vfvif"))
(patches (search-patches "remake-impure-dirs.patch"))))
(inputs
`(("readline" ,readline)
,@(package-inputs gnu-make)))
(home-page "http://bashdb.sourceforge.net/remake/")
(description "Remake is an enhanced version of GNU Make that adds improved
error reporting, better tracing, profiling, and a debugger.")
(license license:gpl3+)))
(define-public rr
(package
(name "rr")

View File

@ -205,14 +205,14 @@ It comes with a German-English dictionary with approximately 270,000 entries.")
(define-public grammalecte
(package
(name "grammalecte")
(version "1.10.0")
(version "1.12.0")
(source
(origin
(method url-fetch/zipbomb)
(uri (string-append "https://grammalecte.net/grammalecte/zip/"
"Grammalecte-fr-v" version ".zip"))
(sha256
(base32 "0lyngnvg995qdm9bhqj8vd8aywpcdqmzv3j4j77wxhsfa9k0pz08"))))
(base32 "1aifa7rj8zyxgk5cgmlgcws2hip7a7y6sr7kddjdnpfgdgy4jjgh"))))
(build-system python-build-system)
(home-page "https://grammalecte.net")
(synopsis "French spelling and grammar checker")

View File

@ -27,7 +27,7 @@
(define-public xxhash
(package
(name "xxhash")
(version "0.7.4")
(version "0.8.0")
(source
(origin
(method git-fetch)
@ -36,7 +36,7 @@
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "08j7wxshhzpyrnyilfnvhyv5ycm0yv5m7jf6q4kxcd7j4dcbhmpb"))))
(base32 "0hpbzdd6kfki5f61g103vp7pfczqkdj0js63avl0ss552jfb8h96"))))
(build-system gnu-build-system)
(arguments
`(#:make-flags

View File

@ -12,7 +12,7 @@
;;; Copyright © 2018 Vasile Dumitrascu <va511e@yahoo.com>
;;; Copyright © 2018 Eric Bavier <bavier@member.fsf.org>
;;; Copyright © 2018 Rutger Helling <rhelling@mykolab.com>
;;; Copyright © 2018, 2019 Pierre Neidhardt <mail@ambrevar.xyz>
;;; Copyright © 2018, 2019, 2020 Pierre Neidhardt <mail@ambrevar.xyz>
;;; Copyright © 2019 Leo Famulari <leo@famulari.name>
;;; Copyright © 2019 Pierre Langlois <pierre.langlois@gmx.com>
;;; Copyright © 2020 Pkill -9 <pkill9@runbox.com>
@ -520,7 +520,7 @@ a card with a smaller capacity than stated.")
(define-public python-parted
(package
(name "python-parted")
(version "3.11.2")
(version "3.11.6")
(source
(origin
(method git-fetch)
@ -529,7 +529,7 @@ a card with a smaller capacity than stated.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0r6916n3w4vldxrq30a3z2iagvxgly4vfmlidjm65vwqnyv17bvn"))))
(base32 "1xgrqhvn44vr3676j5sy2x3xfv2dzf7vncg25cmrsmkbd49x3z5j"))))
(build-system python-build-system)
(arguments
`(#:phases
@ -555,9 +555,6 @@ a card with a smaller capacity than stated.")
(description "This package provides @code{parted} bindings for Python.")
(license license:gpl2+)))
(define-public python2-parted
(package-with-python2 python-parted))
(define-public duperemove
(package
(name "duperemove")
@ -793,7 +790,7 @@ to create devices with respective mappings for the ATARAID sets discovered.")
(define-public libblockdev
(package
(name "libblockdev")
(version "2.23")
(version "2.24")
(source (origin
(method url-fetch)
(uri (string-append "https://github.com/storaged-project/"
@ -801,7 +798,7 @@ to create devices with respective mappings for the ATARAID sets discovered.")
version "-1/libblockdev-" version ".tar.gz"))
(sha256
(base32
"15c7g2gbkahmy8c6677pvbvblan5h8jxcqqmn6nlvqwqynq2mkjm"))))
"0wq7624pnprvfzrf39bq1cybd9lqwawbdg5bm0cchlpgvdq7q86w"))))
(build-system gnu-build-system)
(arguments
`(#:phases
@ -1005,3 +1002,42 @@ the popular but discontinued, X Win Commander. It aims to be the file manager
of choice for all light thinking Unix addicts!")
(home-page "http://roland65.free.fr/xfe/")
(license license:gpl2+)))
(define-public hddtemp
(package
(name "hddtemp")
(version "0.3-beta15")
(source (origin
(method url-fetch)
(uri (string-append "mirror://savannah/hddtemp/hddtemp-"
version
".tar.bz2"))
(sha256
(base32
"0nzgg4nl8zm9023wp4dg007z6x3ir60rwbcapr9ks2al81c431b1"))))
(build-system gnu-build-system)
(arguments
`(#:configure-flags (list (string-append
"--with-db-path="
(assoc-ref %outputs "out")
"/share/hddtemp/hddtemp.db"))
#:phases
(modify-phases %standard-phases
(add-after 'install 'install-db
(lambda* (#:key inputs outputs #:allow-other-keys)
(let ((target (string-append (assoc-ref outputs "out")
"/share/hddtemp/hddtemp.db")))
(mkdir-p (dirname target))
(copy-file (assoc-ref inputs "db") target)))))))
(inputs
`(("db" ,(origin
(method url-fetch)
(uri "mirror://savannah/hddtemp/hddtemp.db")
(sha256
(base32 "1fr6qgns6qv7cr40lic5yqwkkc7yjmmgx8j0z6d93csg3smzhhya"))))))
(home-page "https://savannah.nongnu.org/projects/hddtemp/")
(synopsis "Report the temperature of hard drives from S.M.A.R.T. information")
(description "@command{hddtemp} is a small utility that gives you the
temperature of your hard drive by reading S.M.A.R.T. informations (for drives
that support this feature).")
(license license:gpl2+)))

View File

@ -38,6 +38,7 @@
#:use-module (gnu packages autotools)
#:use-module (gnu packages base)
#:use-module (gnu packages bash)
#:use-module (gnu packages certs)
#:use-module (gnu packages check)
#:use-module (gnu packages databases)
#:use-module (gnu packages documentation)
@ -45,10 +46,12 @@
#:use-module (gnu packages crypto)
#:use-module (gnu packages datastructures)
#:use-module (gnu packages flex)
#:use-module (gnu packages freedesktop)
#:use-module (gnu packages gcc)
#:use-module (gnu packages glib)
#:use-module (gnu packages groff)
#:use-module (gnu packages groff)
#:use-module (gnu packages gtk)
#:use-module (gnu packages libedit)
#:use-module (gnu packages libevent)
#:use-module (gnu packages libidn)
@ -62,6 +65,7 @@
#:use-module (gnu packages protobuf)
#:use-module (gnu packages python)
#:use-module (gnu packages python-xyz)
#:use-module (gnu packages shells)
#:use-module (gnu packages sphinx)
#:use-module (gnu packages swig)
#:use-module (gnu packages tls)
@ -73,14 +77,203 @@
#:use-module (guix download)
#:use-module (guix git-download)
#:use-module (guix utils)
#:use-module (guix build-system glib-or-gtk)
#:use-module (guix build-system gnu)
#:use-module (guix build-system meson)
#:use-module (guix build-system trivial))
(define-public ldns
(package
(name "ldns")
(version "1.7.1")
(source
(origin
(method url-fetch)
(uri
(string-append "https://www.nlnetlabs.nl/downloads/"
name "/" name "-" version ".tar.gz"))
(sha256
(base32 "0ac242n7996fswq1a3nlh1bbbhrsdwsq4mx7xq8ffq6aplb4rj4a"))
(patches
(search-patches
;; To create make-flag vairables,
;; for splitting installation of drill and examples.
"ldns-drill-examples.patch"))))
(build-system gnu-build-system)
(outputs '("out" "drill" "examples" "pyldns"))
(arguments
`( ;; Tests require Tpkg.
;; https://tpkg.github.io/
#:tests? #f
#:configure-flags
(list
"--disable-static"
"--enable-gost-anyway"
"--enable-rrtype-ninfo"
"--enable-rrtype-rkey"
"--enable-rrtype-ta"
"--enable-rrtype-avc"
"--enable-rrtype-doa"
"--enable-rrtype-amtrelay"
"--with-drill"
"--with-examples"
"--with-pyldns"
;; Perl module DNS::LDNS not available.
;; https://github.com/erikoest/DNS-LDNS.git
;; "--with-p5-dns-ldns"
(string-append "--with-ssl="
(assoc-ref %build-inputs "openssl"))
(string-append "--with-ca-path="
(assoc-ref %build-inputs "nss-certs")
"/etc/ssl/certs"))
#:make-flags
(list
(string-append "drillbindir="
(assoc-ref %outputs "drill")
"/bin")
(string-append "drillmandir="
(assoc-ref %outputs "drill")
"/share/man")
(string-append "examplesbindir="
(assoc-ref %outputs "examples")
"/bin")
(string-append "examplesmandir="
(assoc-ref %outputs "examples")
"/share/man")
(string-append "python_site="
(assoc-ref %outputs "pyldns")
"/lib/python"
,(version-major+minor
(package-version python))
"/site-packages"))))
(native-inputs
`(("doxygen" ,doxygen)
("ksh" ,oksh)
("perl" ,perl)
("perl-devel-checklib" ,perl-devel-checklib)
("pkg-config" ,pkg-config)
("python" ,python-wrapper)
("swig" ,swig)))
(inputs
`(("libpcap" ,libpcap)
("nss-certs" ,nss-certs)
("openssl" ,openssl)))
(synopsis "DNS library that facilitates DNS tool programming")
(description "LDNS aims to simplify DNS programming, it supports recent
RFCs like the DNSSEC documents, and allows developers to easily create
software conforming to current RFCs, and experimental software for current
Internet Drafts. A secondary benefit of using ldns is speed; ldns is written in
C it should be a lot faster than Perl.")
(home-page "https://nlnetlabs.nl/projects/ldns/about/")
(license license:bsd-3)))
(define-public dnssec-trigger
(package
(name "dnssec-trigger")
(version "0.17")
(source
(origin
(method url-fetch)
(uri
(string-append "https://www.nlnetlabs.nl/downloads/"
name "/" name "-" version ".tar.gz"))
(sha256
(base32 "10928q406x9r66a090xl5kznzgyxpja88w4srwcv454hd351j9f0"))))
(build-system glib-or-gtk-build-system)
(outputs '("out" "gui" "nm"))
(arguments
`(#:test-target "test"
#:configure-flags
(list
(string-append "--with-ssl="
(assoc-ref %build-inputs "openssl"))
"--with-hooks=networkmanager"
(string-append "--with-networkmanager-dispatch="
(assoc-ref %outputs "nm")
"/etc/NetworkManager/dispatcher.d")
(string-append "--with-xdg-autostart="
(assoc-ref %outputs "gui")
"/etc/xdg/autostart")
(string-append "--with-uidir="
(assoc-ref %outputs "gui")
"/share/dnssec-trigger")
(string-append "--with-python="
(assoc-ref %build-inputs "python")
"/bin/python")
(string-append "--with-unbound-control="
(assoc-ref %build-inputs "unbound")
"/sbin/unbound-control")
"--with-forward-zones-support")
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'patch-configure
(lambda _
(substitute* "configure"
(("appindicator-0.1")
"appindicator3-0.1"))
#t))
(add-before 'configure 'patch-makefile
(lambda _
(substitute* "Makefile.in"
(("/usr")
"$(prefix)")
(("/etc")
"$(prefix)/etc")
((".*gtk-update-icon-cache.*")
""))
#t))
(add-after 'install 'remove-systemd
(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out")))
(delete-file-recursively
(string-append out "/lib/systemd"))
#t)))
(add-after 'remove-systemd 'move-gui
(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(gui (assoc-ref outputs "gui")))
(mkdir-p (string-append gui "/bin"))
(mkdir-p (string-append gui "/share"))
(rename-file
(string-append out "/bin")
(string-append gui "/bin"))
(rename-file
(string-append out "/share/icons")
(string-append gui "/share/icons"))
#t)))
(add-after 'move-gui 'move-nm
(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(nm (assoc-ref outputs "nm")))
(mkdir-p (string-append nm "/libexec"))
(rename-file
(string-append out "/libexec")
(string-append nm "/libexec"))
#t))))))
(native-inputs
`(("cmocka" ,cmocka)
("pkg-config" ,pkg-config)
("python" ,python-wrapper)))
(inputs
`(("gtk+-2" ,gtk+-2)
("ldns" ,ldns)
("libappindicator" ,libappindicator)
("openssl" ,openssl)
("unbound" ,unbound)))
(synopsis "DNSSEC protection for the DNS traffic")
(description "DNSSEC-Trigger enables your computer to use DNSSEC protection
for the DNS traffic. It relies on the Unbound DNS resolver running locally on
your system, which performs DNSSEC validation. It reconfigures Unbound in such
a way that it will signal it to to use the DHCP obtained forwarders if possible,
fallback to doing its own AUTH queries if that fails, and if that fails it will
prompt the user with the option to go with insecure DNS only.")
(home-page "https://www.nlnetlabs.nl/projects/dnssec-trigger/about/")
(license license:bsd-3)))
(define-public dnsmasq
(package
(name "dnsmasq")
(version "2.81")
(version "2.82")
(source (origin
(method url-fetch)
(uri (string-append
@ -88,7 +281,7 @@
version ".tar.xz"))
(sha256
(base32
"1yzq6anwgr5rlnwydpszb51cyhp2vjq29b24ck19flbwac1sk73l"))))
"0cn1xd1s6xs78jmrmwjnh9m6w3q38pk6dyqy2phvasqiyd33cll4"))))
(build-system gnu-build-system)
(native-inputs
`(("pkg-config" ,pkg-config)))
@ -119,7 +312,8 @@ and BOOTP/TFTP for network booting of diskless machines.")
(define-public isc-bind
(package
(name "bind")
(version "9.16.5")
;; When updating, check whether isc-dhcp's bundled copy should be as well.
(version "9.16.6")
(source (origin
(method url-fetch)
(uri (string-append
@ -127,7 +321,7 @@ and BOOTP/TFTP for network booting of diskless machines.")
"/bind-" version ".tar.xz"))
(sha256
(base32
"0xf07mmd0vi91jd15z8d3hhjva8v27l4ip4l8yzah4gg3zjv6y33"))))
"1jvi6ms51vyrhpflx05xlb7gblyd59zsyj28b8s3pl3xnkrv0rxm"))))
(build-system gnu-build-system)
(outputs `("out" "utils"))
(inputs

View File

@ -5,10 +5,11 @@
;;; Copyright © 2016 Roel Janssen <roel@gnu.org>
;;; Copyright © 2016 Thomas Danckaert <post@thomasdanckaert.be>
;;; Copyright © 2017 Kei Kebreau <kkebreau@posteo.net>
;;; Copyright © 2017 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2017, 2020 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2019 Mathieu Othacehe <m.othacehe@gmail.com>
;;; Copyright © 2020 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2020 Michael Rohleder <mike@rohleder.de>
;;;
;;; This file is part of GNU Guix.
;;;
@ -32,32 +33,84 @@
#:use-module (guix git-download)
#:use-module (guix build-system gnu)
#:use-module (guix build-system cmake)
#:use-module (guix build-system qt)
#:use-module (gnu packages)
#:use-module (gnu packages autotools)
#:use-module (gnu packages backup)
#:use-module (gnu packages base)
#:use-module (gnu packages bash)
#:use-module (gnu packages python)
#:use-module (gnu packages bison)
#:use-module (gnu packages kde-frameworks)
#:use-module (gnu packages docbook)
#:use-module (gnu packages flex)
#:use-module (gnu packages graphviz)
#:use-module (gnu packages gettext)
#:use-module (gnu packages glib)
#:use-module (gnu packages perl)
#:use-module (gnu packages xml))
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages qt)
#:use-module (gnu packages sqlite)
#:use-module (gnu packages xml)
#:use-module (gnu packages xorg))
(define-public latex2html
(package
(name "latex2html")
(version "2020.2")
(source
(origin
(method git-fetch)
(uri
(git-reference
(url "https://github.com/latex2html/latex2html.git")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1icyl6kl60wh7cavprgbd8q6lpjwr7wn24m34kpiif7ahknhcbcm"))))
(build-system gnu-build-system)
(arguments
`(#:phases
(modify-phases %standard-phases
(add-after 'unpack 'patch-configure
(lambda* (#:key outputs #:allow-other-keys)
(substitute* "configure"
(("/usr/local")
(assoc-ref outputs "out"))
(("\\$\\{CONFIG_SHELL-/bin/sh\\}")
(which "bash")))
#t))
(replace 'configure
(lambda _
(invoke "./configure")
#t))
(add-after 'configure 'patch-cfgcache
(lambda* (#:key outputs #:allow-other-keys)
(substitute* "cfgcache.pm"
(("/usr/local")
(assoc-ref outputs "out")))
#t)))))
(inputs
`(("perl" ,perl)))
(synopsis "LaTeX documents to HTML")
(description "LaTeX2HTML is a utility that converts LaTeX documents to web
pages in HTML.")
(home-page "https://www.latex2html.org/")
(license gpl2+)))
(define-public asciidoc
(package
(name "asciidoc")
(version "8.6.10")
(source (origin
(method url-fetch)
(uri (string-append "https://github.com/asciidoc/asciidoc/"
"archive/" version ".tar.gz"))
(file-name (string-append name "-" version ".tar.gz"))
(method git-fetch)
(uri (git-reference
(url "https://github.com/asciidoc/asciidoc")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32
"10xrl1iwyvs8aqm0vzkvs3dnsn93wyk942kk4ppyl6w9imbzhlly"))))
"1hrqkgjmp1gq3f9rkbr8l0y62fzvwb9n8ys35s25bg2ld04y4g4y"))))
(build-system gnu-build-system)
(arguments
`(#:tests? #f ; no 'check' target
@ -258,3 +311,34 @@ sort, and search the document catalog. It will also be able to communicate
with catalog servers on the Net to search for documents which are not on the
local system.")
(license lgpl2.1+)))
(define-public zeal
(package
(name "zeal")
(version "0.6.1")
(home-page "https://github.com/zealdocs/zeal")
(source
(origin
(method git-fetch)
(uri (git-reference
(url home-page)
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "05qcjpibakv4ibhxgl5ajbkby3w7bkxsv3nfv2a0kppi1z0f8n8v"))))
(build-system qt-build-system)
(arguments `(#:tests? #f)) ; no tests
(native-inputs
`(("extra-cmake-modules" ,extra-cmake-modules)
("pkg-config" ,pkg-config)))
(inputs
`(("libarchive" ,libarchive)
("sqlite" ,sqlite)
("qtbase" ,qtbase)
("qtwebkit" ,qtwebkit)
("qtx11extras" ,qtx11extras)
("xcb-util-keyms" ,xcb-util-keysyms)))
(synopsis "Offline documentation browser inspired by Dash")
(description "Zeal is a simple offline documentation browser
inspired by Dash.")
(license gpl3+)))

View File

@ -1,6 +1,7 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2018 Sou Bunnbu <iyzsong@member.fsf.org>
;;; Copyright © 2019, 2020 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2020 Efraim Flashner <efraim@flashner.co.il>
;;;
;;; This file is part of GNU Guix.
;;;
@ -75,7 +76,7 @@ It can read and write LCF and XML files.")
(define-public easyrpg-player
(package
(name "easyrpg-player")
(version "0.6.1")
(version "0.6.2.1")
(source (origin
(method url-fetch)
(uri (string-append
@ -83,7 +84,7 @@ It can read and write LCF and XML files.")
"/easyrpg-player-" version ".tar.gz"))
(sha256
(base32
"1x81d1952w6vb939155bvs5p3shgsncxy305770izpp4pva1a8z0"))))
"1bai0mxjw1qvl2vcwgssycbyn0crk0b5l69ld9rawcs2nczb44s5"))))
(build-system gnu-build-system)
(arguments
'(#:configure-flags

View File

@ -2,7 +2,7 @@
;;; Copyright © 2015, 2016 Andreas Enge <andreas@enge.fr>
;;; Copyright © 2016, 2018 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2016, 2017 Alex Griffin <a@ajgrf.com>
;;; Copyright © 2017, 2019 Brendan Tildesley <mail@brendan.scot>
;;; Copyright © 2017, 2019, 2020 Brendan Tildesley <mail@brendan.scot>
;;; Copyright © 2017 Roel Janssen <roel@gnu.org>
;;; Copyright © 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2020 Marius Bakke <mbakke@fastmail.com>
@ -28,7 +28,6 @@
#:use-module (guix download)
#:use-module (guix git-download)
#:use-module (guix build-system gnu)
#:use-module (gnu packages)
#:use-module (guix build-system python)
#:use-module (gnu packages)
#:use-module (gnu packages compression)

View File

@ -274,7 +274,7 @@ easy.")
(define-public snap
(package
(name "snap")
(version "6.0.0")
(version "6.1.4")
(source
(origin
(method git-fetch)
@ -283,7 +283,7 @@ easy.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1j5hcnms12hpnl2ba7haf00l08rkpb5wpfsgax07p838q5dc7cam"))))
(base32 "0qvnm5jg2hlf32say531m8nmp3aib93mqnllw1g289s58fzk5li6"))))
(build-system trivial-build-system)
(arguments
`(#:modules ((guix build utils))
@ -612,14 +612,14 @@ Portuguese, Spanish and Italian.")
(define-public fet
(package
(name "fet")
(version "5.45.1")
(version "5.46.0")
(source
(origin
(method url-fetch)
(uri (string-append "https://www.lalescu.ro/liviu/fet/download/"
"fet-" version ".tar.bz2"))
(sha256
(base32 "1pg47jk6fw46fr7m32l1ypm1zyjfz1ik5f333ynqqr705f1c0ij5"))))
(base32 "1vcsm12lqf84mz9ppw2knjyv5ss2ws0dblbp418hll91dry7m49a"))))
(build-system gnu-build-system)
(arguments
`(#:phases
@ -651,14 +651,14 @@ hours.")
(define-public klavaro
(package
(name "klavaro")
(version "3.10")
(version "3.11")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://sourceforge/klavaro/klavaro-"
version ".tar.bz2"))
(sha256
(base32 "0jnzdrndiq6m0bwgid977z5ghp4q61clwdlzfpx4fd2ml5x3iq95"))))
(base32 "1rkxaqb62w4mv86fcnmr32lq6y0h4hh92wmsy5ddb9a8jnzx6r7w"))))
(build-system gnu-build-system)
(native-inputs
`(("intltool" ,intltool)
@ -758,6 +758,13 @@ adjust the level of difficulty.")
(ice-9 match))
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'disable-update-check
;; Don't phone home unasked to check for updates.
(lambda _
(substitute* "aqt/update.py"
(("requests\\.post")
"throw.an.exception.instead"))
#t))
(delete 'configure) ;no configure script
(add-after 'install 'wrap
(lambda* (#:key inputs outputs #:allow-other-keys)

View File

@ -186,8 +186,7 @@ as simple logic analyzer and/or oscilloscope hardware.")
(find-files input-dir ".")))
#t)))))
(native-inputs
`(("check" ,check)
("doxygen" ,doxygen)
`(("doxygen" ,doxygen)
("graphviz" ,graphviz)
("sigrok-firmware-fx2lafw" ,sigrok-firmware-fx2lafw)
("pkg-config" ,pkg-config)))

View File

@ -27,8 +27,7 @@
#:use-module (guix git-download)
#:use-module (guix packages)
#:use-module (gnu packages)
#:use-module (gnu packages erlang)
#:use-module (gnu packages version-control))
#:use-module (gnu packages erlang))
(define-public elixir
(package
@ -100,8 +99,7 @@
#t))
(delete 'configure))))
(inputs
`(("erlang" ,erlang)
("git" ,git)))
`(("erlang" ,erlang)))
(home-page "https://elixir-lang.org/")
(synopsis "Elixir programming language")
(description "Elixir is a dynamic, functional language used to build

File diff suppressed because it is too large Load Diff

View File

@ -85,6 +85,7 @@
"119ldpk7sgn9jlpyngv5y4z3i7bb8q3xp4p0qqi7i5nq39syd42d"))
(patches (search-patches "emacs-exec-path.patch"
"emacs-fix-scheme-indent-function.patch"
"emacs-ignore-empty-xim-styles.patch"
"emacs-source-date-epoch.patch"))
(modules '((guix build utils)))
(snippet
@ -261,6 +262,7 @@ languages.")
(file-name (git-file-name name version))
(patches (search-patches "emacs27-exec-path.patch"
"emacs-fix-scheme-indent-function.patch"
"emacs-ignore-empty-xim-styles.patch"
"emacs-source-date-epoch.patch"))
(modules (origin-modules (package-source emacs)))
;; TODO: once the snippet for `emacs' is changed to not fail when

View File

@ -251,8 +251,7 @@ usable on embedded products.")
(origin-patches (package-source gcc-7))
(search-patches "gcc-7-cross-environment-variables.patch")))))
(native-inputs
`(("gcc@5" ,gcc-5)
("flex" ,flex)
`(("flex" ,flex)
("isl" ,isl-0.18)
,@(alist-delete "isl" (package-native-inputs xgcc))))
(arguments
@ -1162,14 +1161,14 @@ SPI, I2C, JTAG.")
(define-public fc-host-tools
(package
(name "fc-host-tools")
(version "11")
(version "13")
(source (origin
(method url-fetch)
(uri (string-append "ftp://ftp.freecalypso.org/pub/GSM/"
"FreeCalypso/fc-host-tools-r" version ".tar.bz2"))
(sha256
(base32
"0s87lp6gd8i8ivrdd7mnnalysr65035nambcm992rgla7sk76sj1"))))
"0bpxz4y0z3hmlirzvfwq0k45yzn9fzgqs9r1fpkrhn48gr2zrpa8"))))
(build-system gnu-build-system)
(arguments
`(#:tests? #f ; No tests exist.
@ -1283,6 +1282,12 @@ and displaying decoded target responses.
@item fcup-smsendmult: Send multiple short messages via SMS in one go
@item fcup-smsendpdu: Send multiple short messages given in PDU format via SMS
@item sms-pdu-decode: Decode PDU format messages
@item fc-dspromdump: Dump DSP ROM.
@item pcm-sms-decode: Decode /pcm/SMS binary files read out of FFS maintained
by Pirelli DP-L10. Display the SMS in human-readable form.
@item srec-regions: Parse S-record (TI's *.m0), identify the set of
discontiguous regions into which this SREC image deposits bits, and list
these identified regions.
@end enumerate")
(home-page "https://www.freecalypso.org/")
(license license:public-domain)))

View File

@ -5,7 +5,7 @@
;;; Copyright © 2015, 2016 Taylan Ulrich Bayırlı/Kammer <taylanbayirli@gmail.com>
;;; Copyright © 2015, 2018 David Thompson <dthompson2@worcester.edu>
;;; Copyright © 2016 Manolis Fragkiskos Ragkousis <manolis837@gmail.com>
;;; Copyright © 2016, 2017, 2018 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2016, 2017, 2018, 2020 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2017, 2018, 2019, 2020 Nicolas Goaziou <mail@nicolasgoaziou.fr>
;;; Copyright © 2017, 2020 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2017, 2018, 2019 Rutger Helling <rhelling@mykolab.com>
@ -279,6 +279,64 @@ SoundBlaster/Gravis Ultra Sound card for excellent sound compatibility with
older games.")
(license license:gpl2+)))
(define-public qtmips
(package
(name "qtmips")
(version "0.7.3")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/cvut/QtMips")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
"1khvwgqz4h6q6mhbbq0yx43ajz8gx9wmwzs8784vmfrglndbxgax"))))
(build-system cmake-build-system)
(arguments
'(#:phases
(modify-phases %standard-phases
(replace 'configure
(lambda* (#:key outputs #:allow-other-keys)
(invoke "qmake"
(string-append "PREFIX=" (assoc-ref outputs "out"))
"qtmips.pro")))
(replace 'check
(lambda* (#:key tests? #:allow-other-keys)
(substitute* "tests/test.sh"
(("qtchooser.*") ""))
(substitute* '("tests/cpu_trap/test.sh"
"tests/registers/test.sh")
(("sub-qtmips_cli") "qtmips_cli"))
(if tests?
(invoke "tests/run-all.sh")
#t)))
(replace 'install
;; There is no install target.
(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(bin (string-append out "/bin"))
(apps (string-append out "/share/applications"))
(icons (string-append out "/share/icons/hicolor")))
(install-file "qtmips_gui/qtmips_gui" bin)
(install-file "qtmips_cli/qtmips_cli" bin)
(install-file "data/qtmips.desktop" apps)
(install-file "data/icons/qtmips_gui.svg"
(string-append icons "/scalable/apps"))
(install-file "data/icons/qtmips_gui.png"
(string-append icons "/48x48/apps"))
#t))))
#:tests? #f)) ; test suite wants mips toolchain
(inputs
`(("elfutils" ,elfutils)
("qtbase" ,qtbase)))
(home-page "https://github.com/cvut/QtMips")
(synopsis "MIPS CPU emulator")
(description "This package contains a MIPS CPU emulator. The simulator
accepts ELF statically linked executables compiled for 32-bit big-endian
MIPS target, targeting mips-linux-gnu or mips-elf.")
(license license:gpl2+))) ; License file says GPL3
(define-public emulation-station
;; No release for a long time, new commits fix build issues
(let ((commit "9cc42adff67946175d2b7e25c6ae69cc374e98a0")
@ -479,7 +537,7 @@ The following systems are supported:
(define-public mgba
(package
(name "mgba")
(version "0.8.2")
(version "0.8.3")
(source
(origin
(method git-fetch)
@ -488,7 +546,7 @@ The following systems are supported:
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "0dlwhn3hrpaqnl5hjs53y8j2i16idxrg3gy688gcwrc9z1a6bkn2"))
(base32 "0rwlfjdr0rzbq4kaplvwsgyb8xq6nrzxss2c8xrgw9hqw3ymx4s3"))
(modules '((guix build utils)))
(snippet
;; Make sure we don't use the bundled software.
@ -535,7 +593,7 @@ and Game Boy Color games.")
(define-public sameboy
(package
(name "sameboy")
(version "0.13.3")
(version "0.13.6")
(source
(origin
(method git-fetch)
@ -544,7 +602,7 @@ and Game Boy Color games.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1mv5a7p6plz0359l3z9g232rgaq2h3yby5949ps0s88cxj94w9qm"))))
(base32 "04w8lybi7ssnax37ka4qw7pmcm7cgnmk90p9m73zbyp5chgpqqzc"))))
(build-system gnu-build-system)
(native-inputs
`(("rgbds" ,rgbds)
@ -1339,7 +1397,7 @@ play them on systems for which they were never designed!")
(define-public mame
(package
(name "mame")
(version "0.222")
(version "0.223")
(source
(origin
(method git-fetch)
@ -1348,7 +1406,7 @@ play them on systems for which they were never designed!")
(commit (apply string-append "mame" (string-split version #\.)))))
(file-name (git-file-name name version))
(sha256
(base32 "1bfnwfxsnmza4s77ca0cyx4b290dwadkbbc2lyd7xa0yqrh7vvlx"))
(base32 "0fmf9ygbic4lw84vifhpz8wq2736dj8zsi1cqhb1m0fjq3dvn0vm"))
(modules '((guix build utils)))
(snippet
;; Remove bundled libraries.

View File

@ -1,7 +1,7 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2014 Marek Benc <merkur32@gmail.com>
;;; Copyright © 2018 Marius Bakke <mbakke@fastmail.com>
;;; Copyright © 2019 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2019, 2020 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2020 Julien Lepiller <julien@lepiller.eu>
;;;
;;; This file is part of GNU Guix.
@ -22,17 +22,60 @@
(define-module (gnu packages enchant)
#:use-module (gnu packages)
#:use-module (gnu packages aspell)
#:use-module (gnu packages boost)
#:use-module (gnu packages check)
#:use-module (gnu packages glib)
#:use-module (gnu packages icu4c)
#:use-module (gnu packages libreoffice)
#:use-module (gnu packages man)
#:use-module (gnu packages perl)
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages version-control)
#:use-module (guix packages)
#:use-module (guix git-download)
#:use-module (guix download)
#:use-module (guix build-system cmake)
#:use-module (guix build-system gnu)
#:use-module (guix build-system python)
#:use-module (guix licenses)
#:use-module (srfi srfi-1))
(define-public nuspell
(package
(name "nuspell")
(version "3.1.2")
(source
(origin
(method git-fetch)
(uri
(git-reference
(url "https://github.com/nuspell/nuspell.git")
(commit
(string-append "v" version))))
(file-name
(git-file-name name version))
(sha256
(base32 "0wbb6dwmzlsyy224y0liis0azgzwbjdvcyzc31pw1aw6vbp36na6"))))
(build-system cmake-build-system)
(native-inputs
`(("catch" ,catch-framework2)
("git" ,git-minimal)
("perl" ,perl)
;;FIX-ME: Building with ronn fails.
;;("ronn" ,ronn)
("pkg-config" ,pkg-config)))
(inputs
`(("boost" ,boost)))
(propagated-inputs
`(("icu4c" ,icu4c)))
(synopsis "Fast and safe spellchecking C++ library")
(description "Nuspell is a fast and safe spelling checker software
program. It is designed for languages with rich morphology and complex word
compounding. Nuspell is written in modern C++ and it supports Hunspell
dictionaries.")
(home-page "https://nuspell.github.io/")
(license lgpl3+)))
(define-public enchant
(package
(name "enchant")
@ -51,8 +94,9 @@
;; Tests require a relocatable build.
"--enable-relocatable")))
(inputs
`(("aspell" ,aspell))) ;; Currently, the only supported backend in Guix
(propagated-inputs ;; is aspell. (This information might be old)
`(("aspell" ,aspell)
("hunspell" ,hunspell)))
(propagated-inputs
;; Required by enchant.pc.
`(("glib" ,glib)))
(native-inputs

View File

@ -19,6 +19,7 @@
;;; Copyright © 2020 Marius Bakke <mbakke@fastmail.com>
;;; Copyright © 2020 Ekaitz Zarraga <ekaitz@elenq.tech>
;;; Copyright © 2020 B. Wilson <elaexuotee@wilsonb.com>
;;; Copyright © 2020 Vinicius Monego <monego@posteo.net>
;;;
;;; This file is part of GNU Guix.
;;;
@ -95,6 +96,8 @@
#:use-module (gnu packages multiprecision)
#:use-module (gnu packages mpi)
#:use-module (gnu packages ncurses)
#:use-module (gnu packages parallel)
#:use-module (gnu packages pcre)
#:use-module (gnu packages perl)
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages python)
@ -267,14 +270,14 @@ utilities.")
(package
(inherit geda-gaf)
(name "lepton-eda")
(version "1.9.9-20191003")
(version "1.9.11-20200604")
(home-page "https://github.com/lepton-eda/lepton-eda")
(source (origin
(method git-fetch)
(uri (git-reference (url home-page) (commit version)))
(sha256
(base32
"08cc3zfk84qq9mrkc9pp4r9jlavvm01wwy0yd9frql68w2zw6mip"))
"091y8h7wcr9smwhb1wf12sj27n5jrannbj3y6qq3q2gwiifiz8sd"))
(file-name (git-file-name name version))))
(native-inputs
`(("autoconf" ,autoconf)
@ -423,14 +426,14 @@ optimizer; and it can produce photorealistic and design review images.")
(define-public pcb-rnd
(package (inherit pcb)
(name "pcb-rnd")
(version "1.1.3")
(version "2.2.3")
(source (origin
(method url-fetch)
(uri (string-append "http://repo.hu/projects/pcb-rnd/releases/"
"pcb-rnd-" version ".tar.gz"))
(sha256
(base32
"0pycynla60b96jkb6fh6f4sx663pqbzjwnixhw5ym8sym2absm09"))))
"0j650498d87b4xsggzc0xlk73k0hhj43wfy45qz2lcn0xc3bks1m"))))
(arguments
`(#:tests? #f ; no check target
#:phases
@ -763,12 +766,7 @@ fonts to gEDA.")
(sha256
(base32
"0ryv2hcbrwqc087w7rrs4a2irkcpmqync00g4dh8n7jn10w2jkim"))
(file-name (git-file-name name version))
(snippet
;; Remove bundled catch since we provide our own.
'(begin
(delete-file "libfive/test/catch.hpp")
#t))))
(file-name (git-file-name name version))))
(build-system cmake-build-system)
(arguments
`(#:test-target "libfive-test"
@ -777,19 +775,11 @@ fonts to gEDA.")
(add-after 'unpack 'remove-native-compilation
(lambda _
(substitute* "CMakeLists.txt" (("-march=native") ""))
#t))
(add-after 'unpack 'find-catch
(lambda* (#:key inputs #:allow-other-keys)
(setenv "CPLUS_INCLUDE_PATH"
(string-append (assoc-ref inputs "catch")
"/include/catch:"
(or (getenv "CPLUS_INCLUDE_PATH") "")))
#t)))))
(native-inputs
`(("pkg-config" ,pkg-config)))
(inputs
`(("boost" ,boost)
("catch" ,catch-framework2)
("libpng" ,libpng)
("qtbase" ,qtbase)
("eigen" ,eigen)
@ -1075,31 +1065,71 @@ provides a machine-independent interface to select the best such procedures to
use on a given system.")
(license license:gpl3+)))
(define-public libredwg
(package
(name "libredwg")
(version "0.11")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://gnu/libredwg/libredwg-"
version ".tar.xz"))
(sha256
(base32 "1vd7ii32k5447z7k4w9s005hv1ffpj6dyf1w40x6c53qksrblny2"))))
(build-system gnu-build-system)
(arguments
`(#:configure-flags '("--disable-bindings")))
(native-inputs
`(("libxml2" ,libxml2)
("parallel" ,parallel)
("pkg-config" ,pkg-config)
("python" ,python)
("python-libxml2" ,python-libxml2)))
(inputs
`(("pcre2" ,pcre2)))
(home-page "https://www.gnu.org/software/libredwg/")
(synopsis "C library to handle DWG (CAD-related) files")
(description
"GNU LibreDWG is a C library to handle DWG files. It aims to be a free
replacement for the OpenDWG libraries.")
(license license:gpl3+)))
(define-public minicom
(package
(name "minicom")
(version "2.7.1")
(source
(origin
(method url-fetch)
(uri (string-append "https://alioth.debian.org/frs/download.php/"
"file/4215/" name "-" version ".tar.gz"))
(method git-fetch)
(uri (git-reference
(url "https://salsa.debian.org/minicom-team/minicom.git")
(commit (string-append "v" version))))
(sha256
(base32
"1wa1l36fa4npd21xa9nz60yrqwkk5cq713fa3p5v0zk7g9mq6bsk"))))
(base32 "0f36wv015zpz1x895qv0z6marlynzyh0d5mfkyd7lfyy2xd1i2w0"))
(file-name (git-file-name name version))))
(build-system gnu-build-system)
(arguments
`(#:configure-flags '("--enable-lock-dir=/var/lock")
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'patch-lock-check
(replace 'bootstrap
;; autogen.sh needlessly hard-codes aclocal-1.14.
(lambda _
(invoke "autoreconf" "-vif")
#t))
(add-before 'configure 'patch-lock-check
(lambda _
(substitute* "configure"
(("test -d [$]UUCPLOCK") "true"))
#t)))))
(native-inputs
`(("autoconf" ,autoconf)
("automake" ,automake)
("gettext" ,gettext-minimal)
("pkg-config" ,pkg-config)))
(inputs
`(("ncurses" ,ncurses)))
(home-page "https://alioth.debian.org/projects/minicom/")
(home-page "https://salsa.debian.org/minicom-team/minicom")
(synopsis "Serial terminal emulator")
(description "@code{minicom} is a serial terminal emulator.")
(license license:gpl2+)))

View File

@ -3,7 +3,7 @@
;;; Copyright © 2015 Daniel Pimentel <d4n1@member.fsf.org>
;;; Copyright © 2015, 2016, 2017, 2018, 2019, 2020 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2017 Nikita <nikita@n0.is>
;;; Copyright © 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2018, 2019, 2020 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2018 Timo Eisenmann <eisenmann@fn.de>
;;;
;;; This file is part of GNU Guix.
@ -199,7 +199,7 @@ removable devices or support for multimedia.")
(define-public terminology
(package
(name "terminology")
(version "1.7.0")
(version "1.8.1")
(source (origin
(method url-fetch)
(uri
@ -207,7 +207,7 @@ removable devices or support for multimedia.")
"terminology/terminology-" version ".tar.xz"))
(sha256
(base32
"11qan2k6w94cglysh95yxkbv6hw9x15ri927hkiy3k0hbmpbrxc8"))
"1fxqjf7g30ix4qxi6366rrax27s3maxq43z2vakwnhz4mp49m9h4"))
(modules '((guix build utils)))
;; Remove the bundled fonts.
(snippet
@ -288,7 +288,7 @@ Libraries with some extra bells and whistles.")
(define-public enlightenment
(package
(name "enlightenment")
(version "0.24.1")
(version "0.24.2")
(source (origin
(method url-fetch)
(uri
@ -296,7 +296,7 @@ Libraries with some extra bells and whistles.")
"enlightenment/enlightenment-" version ".tar.xz"))
(sha256
(base32
"02aadl5fqvpmpjnisrc4aw7ffwyp1109y4k1wvmp33ciihbvdqmf"))
"1wfz0rwwsx7c1mkswn4hc9xw1i6bsdirhxiycf7ha2vcipqy465y"))
(patches (search-patches "enlightenment-fix-setuid-path.patch"))))
(build-system meson-build-system)
(arguments
@ -572,18 +572,17 @@ directories.
(define-public evisum
(package
(name "evisum")
(version "0.4.1")
(version "0.5.3")
(source
(origin
(method url-fetch)
(uri (string-append "https://download.enlightenment.org/rel/apps/"
"evisum/evisum-" version ".tar.xz"))
(sha256
(base32
"0c3sgz6g8agig1i6fwn1jv318zsm556l9f3f0dm1jll146dlk2iv"))))
(base32 "06ws75qfid0xizasw2aqpdhvxl4c31bn66fqa8aq4w0rykzs2r46"))))
(build-system meson-build-system)
(arguments
'(#:tests? #f)) ; no tests
'(#:tests? #f)) ; no tests
(native-inputs
`(("pkg-config" ,pkg-config)))
(inputs

View File

@ -22,18 +22,78 @@
#:use-module (guix packages)
#:use-module (guix download)
#:use-module (guix build-system cmake)
#:use-module (guix build-system glib-or-gtk)
#:use-module (gnu packages check)
#:use-module (gnu packages documentation)
#:use-module (gnu packages enchant)
#:use-module (gnu packages gettext)
#:use-module (gnu packages glib)
#:use-module (gnu packages graphviz)
#:use-module (gnu packages gtk)
#:use-module (gnu packages icu4c)
#:use-module (gnu packages iso-codes)
#:use-module (gnu packages man)
#:use-module (gnu packages ncurses)
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages python)
#:use-module (gnu packages sqlite)
#:use-module (gnu packages web)
#:use-module (gnu packages xml)
#:use-module (gnu packages xorg))
(define-public presage
(package
(name "presage")
(version "0.9.1")
(source
(origin
(method url-fetch)
(uri
(string-append "mirror://sourceforge/presage/presage/"
version "/presage-" version ".tar.gz"))
(sha256
(base32 "0rm3b3zaf6bd7hia0lr1wyvi1rrvxkn7hg05r5r1saj0a3ingmay"))))
(build-system glib-or-gtk-build-system)
(outputs '("out" "doc"))
(arguments
`(#:configure-flags
(list
"CFLAGS=-Wno-narrowing"
"CXXFLAGS=-Wno-narrowing")
#:phases
(modify-phases %standard-phases
(add-after 'install 'move-doc
(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(doc (assoc-ref outputs "doc")))
(mkdir-p (string-append doc "/share/presage"))
(rename-file
(string-append out "/share/presage/html")
(string-append doc "/share/presage/html"))
#t))))))
(native-inputs
`(("dot" ,graphviz)
("doxygen" ,doxygen)
("gettext" ,gettext-minimal)
("glib:bin" ,glib "bin")
("gtk+:bin" ,gtk+ "bin")
("help2man" ,help2man)
("pkg-config" ,pkg-config)
("python-wrapper" ,python-wrapper)))
(inputs
`(("glib" ,glib)
("gtk+" ,gtk+)
("libx11" ,libx11)
("sqlite" ,sqlite)
("tinyxml" ,tinyxml)))
(synopsis "Intelligent Predictive Text Entry System")
(description "Presage generates predictions by modelling natural language as
a combination of redundant information sources. It computes probabilities for
words which are most likely to be entered next by merging predictions generated
by the different predictive algorithms.")
(home-page "https://presage.sourceforge.io/")
(license gpl2+)))
(define-public fcitx
(package
(name "fcitx")

View File

@ -30,6 +30,7 @@
#:use-module (guix build-system copy)
#:use-module (guix build-system gnu)
#:use-module (guix build-system linux-module)
#:use-module (guix build-system python)
#:use-module (guix build-system trivial)
#:use-module (guix utils)
#:use-module (gnu packages)
@ -57,6 +58,8 @@
#:use-module (gnu packages photo)
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages python)
#:use-module (gnu packages python-crypto)
#:use-module (gnu packages python-web)
#:use-module (gnu packages python-xyz)
#:use-module (gnu packages readline)
#:use-module (gnu packages rsync)
@ -270,7 +273,7 @@ performance and other characteristics.")
(define-public exfatprogs
(package
(name "exfatprogs")
(version "1.0.3")
(version "1.0.4")
(source
(origin
(method git-fetch)
@ -279,8 +282,7 @@ performance and other characteristics.")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32
"1s47qvhr702z5c19wfqz8cwl9ammmincs7a8vjc6p974wnnjg77y"))))
(base32 "1braffz1wc4ki3nb42q85l5zg2dl2hwjr64rk27nc85wcsrbavnl"))))
(build-system gnu-build-system)
(arguments
`(#:configure-flags
@ -859,3 +861,61 @@ directory onto a single drive and create FreeDesktop.org Trash specification
compatible directories.")
(home-page "https://github.com/trapexit/mergerfs-tools")
(license license:isc))))
(define-public python-dropbox
(package
(name "python-dropbox")
(version "10.3.1")
(source
(origin
(method url-fetch)
(uri (pypi-uri "dropbox" version))
(sha256
(base32
"137rn9fs1bg1p1khd5lcccfxh8jsx27dh2ix5wwd8cmddbrzdrbd"))))
(build-system python-build-system)
(arguments '(#:tests? #f)) ; Tests require a network connection.
(native-inputs
`(("python-pytest" ,python-pytest)
("python-pytest-runner" ,python-pytest-runner)))
(propagated-inputs
`(("python-certifi" ,python-certifi)
("python-chardet" ,python-chardet)
("python-requests" ,python-requests)
("python-six" ,python-six)
("python-urllib3" ,python-urllib3)))
(home-page "https://www.dropbox.com/developers")
(synopsis "Official Dropbox API Client")
(description "This package provides a Python SDK for integrating with the
Dropbox API v2.")
(license license:expat)))
(define-public dbxfs
(package
(name "dbxfs")
(version "1.0.43")
(source
(origin
(method url-fetch)
(uri (pypi-uri "dbxfs" version))
(sha256
(base32
"1f9sy2ax215dxiwszrrcadffjdsmrlxm4kwrbiap9dhxvzm226ks"))
(patches (search-patches "dbxfs-remove-sentry-sdk.patch"))))
(build-system python-build-system)
(arguments
'(#:tests? #f)) ; tests requires safefs
(propagated-inputs
`(("python-appdirs" ,python-appdirs)
("python-block-tracing" ,python-block-tracing)
("python-dropbox" ,python-dropbox)
("python-keyring" ,python-keyring)
("python-keyrings.alt" ,python-keyrings.alt)
("python-privy" ,python-privy)
("python-userspacefs" ,python-userspacefs)))
(home-page "https://github.com/rianhunter/dbxfs")
(synopsis "User-space file system for Dropbox")
(description
"@code{dbxfs} allows you to mount your Dropbox folder as if it were a
local filesystem using FUSE.")
(license license:gpl3+)))

View File

@ -96,7 +96,6 @@
#:use-module (gnu packages time)
#:use-module (gnu packages tls)
#:use-module (gnu packages upnp)
#:use-module (gnu packages version-control)
#:use-module (gnu packages web)
#:use-module (gnu packages xml)
#:use-module (gnu packages gnuzilla))
@ -456,14 +455,19 @@ do so.")
("python-dnspython" ,python-dnspython)
("python-jsonrpclib-pelix" ,python-jsonrpclib-pelix)))
(arguments
`(#:tests? #f ;; package doesn't have any tests
`(#:tests? #f ; no tests
#:phases
(modify-phases %standard-phases
(add-before 'build 'patch-home
(add-after 'unpack 'fix-prefix
(lambda* (#:key outputs #:allow-other-keys)
(substitute* "setup.py"
(("~/.local/share")
(string-append (assoc-ref outputs "out") "/local/share"))))))))
(let ((out (assoc-ref outputs "out")))
;; setup.py installs to ~/.local/share if sys.prefix/share isn't
;; writable. sys.prefix points to Python's, not our, --prefix.
(mkdir-p (string-append out "/share"))
(substitute* "setup.py"
(("sys\\.prefix")
(format #f "\"~a\"" out)))
#t))))))
(home-page "https://electrum.org/")
(synopsis "Bitcoin wallet")
(description
@ -509,7 +513,7 @@ other machines/servers. Electrum does not download the Bitcoin blockchain.")
("qtsvg" ,qtsvg)
("zlib" ,zlib)))
(arguments
`(#:tests? #f ; No tests
`(#:tests? #f ; no tests
#:modules ((guix build python-build-system)
(guix build qt-utils)
(guix build utils))
@ -517,16 +521,17 @@ other machines/servers. Electrum does not download the Bitcoin blockchain.")
(guix build qt-utils))
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'patch-home
(add-after 'unpack 'create-output-directories
(lambda* (#:key outputs #:allow-other-keys)
(substitute* "setup.py"
(("~/.local/share")
(string-append (assoc-ref outputs "out") "/local/share")))))
;; setup.py installs to ~/.local/share if this doesn't exist.
(mkdir-p (string-append (assoc-ref outputs "out") "/share"))
#t))
(add-after 'unpack 'use-libsecp256k1-input
(lambda* (#:key inputs #:allow-other-keys)
(substitute* "lib/secp256k1.py"
(("library_paths = .* 'libsecp256k1.so.0'.")
(string-append "library_paths = ('" (assoc-ref inputs "libsecp256k1") "/lib/libsecp256k1.so.0'")))))
(string-append "library_paths = ('" (assoc-ref inputs "libsecp256k1") "/lib/libsecp256k1.so.0'")))
#t))
(add-after 'install 'wrap-qt
(lambda* (#:key outputs #:allow-other-keys)
(wrap-qt-program (assoc-ref outputs "out") "electron-cash")
@ -548,7 +553,7 @@ other machines/servers. Electroncash does not download the Bitcoin Cash blockch
;; the system's dynamically linked library.
(package
(name "monero")
(version "0.16.0.1")
(version "0.16.0.3")
(source
(origin
(method git-fetch)
@ -568,12 +573,10 @@ other machines/servers. Electroncash does not download the Bitcoin Cash blockch
"external/unbound"))
#t))
(sha256
(base32
"0n2cviqm8radpynx70fc0819k1xknjc58cvb4whlc49ilyvh8ky6"))))
(base32 "1r9x3712vhb24dxxirfiwj5f9x0h4m7x0ngiiavf5983dfdlgz33"))))
(build-system cmake-build-system)
(native-inputs
`(("doxygen" ,doxygen)
("git" ,git)
("graphviz" ,graphviz)
("pkg-config" ,pkg-config)
("protobuf" ,protobuf)
@ -667,7 +670,7 @@ the Monero command line client and daemon.")
(define-public monero-gui
(package
(name "monero-gui")
(version "0.16.0.2")
(version "0.16.0.3")
(source
(origin
(method git-fetch)
@ -676,8 +679,7 @@ the Monero command line client and daemon.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
"1b1m8vhs0hdh81ysm8s8vfwqskqsihylb51wz16kc98ba40r9gqg"))))
(base32 "0iwjp8x5swy8i8pzrlm5v55awhm54cf48pm1vz98lcq361lhfzk6"))))
(build-system qt-build-system)
(native-inputs
`(("monero-source" ,(package-source monero))
@ -884,14 +886,13 @@ Ledger Blue/Nano S.")
(define-public python-trezor
(package
(name "python-trezor")
(version "0.12.0")
(version "0.12.1")
(source
(origin
(method url-fetch)
(uri (pypi-uri "trezor" version))
(sha256
(base32
"0ycmpwjv5xp25993divjhaq5j766zgcy22xx39xfc1pcvldq5g7n"))))
(base32 "1w19m9lws55k9sjhras47hpfpqwq1jm5vy135nj65yhkblygqg19"))))
(build-system python-build-system)
(propagated-inputs
`(("python-click" ,python-click)
@ -1033,14 +1034,13 @@ agent.")
(define-public python-stdnum
(package
(name "python-stdnum")
(version "1.13")
(version "1.14")
(source
(origin
(method url-fetch)
(uri (pypi-uri "python-stdnum" version))
(sha256
(base32
"0q4128rjdgavywhzlm2gz2n5ybc9b9sxs81g50dvxf5q7z9q63qj"))))
(base32 "070vd9zgvq0jchs4xc4j1h4r1l1lg4wwb8xs3p25k8c2xjw94fpx"))))
(build-system python-build-system)
(arguments
'(#:phases (modify-phases %standard-phases
@ -1049,10 +1049,8 @@ agent.")
(invoke "nosetests"))))))
(native-inputs
`(("python-nose" ,python-nose)))
(home-page
"https://arthurdejong.org/python-stdnum/")
(synopsis
"Python module to handle standardized number and code formats")
(home-page "https://arthurdejong.org/python-stdnum/")
(synopsis "Python module to handle standardized number and code formats")
(description
"This is a Python library that aims to provide functions to handle,
parse and validate standard numbers.
@ -1239,7 +1237,7 @@ Trezor wallet.")
(define-public bitcoin-abc
(package
(name "bitcoin-abc")
(version "0.21.10")
(version "0.21.12")
(source (origin
(method url-fetch)
(uri (string-append "https://download.bitcoinabc.org/"
@ -1247,7 +1245,7 @@ Trezor wallet.")
version ".tar.gz"))
(sha256
(base32
"0cgr416cp7p14mlnfryxfjfcxys5hksfjhi0i4amxl4fbnpgjwk0"))))
"1amzwy3gpl8ai90dsy7g0z51qq8vxfzbf642wn4bfynb8jmw3kx5"))))
(build-system cmake-build-system)
(native-inputs
`(("pkg-config" ,pkg-config)

View File

@ -3,7 +3,7 @@
;;; Copyright © 2016 Eric Bavier <bavier@member.fsf.org>
;;; Copyright © 2017 David Craven <david@craven.ch>
;;; Copyright © 2017, 2018 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2018, 2020 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2018 Vagrant Cascadian <vagrant@debian.org>
;;; Copyright © 2019 Mathieu Othacehe <m.othacehe@gmail.com>
;;; Copyright © 2020 Marius Bakke <mbakke@fastmail.com>
@ -258,7 +258,7 @@ for platform-specific firmwares executing in M-mode.")
(define-public seabios
(package
(name "seabios")
(version "1.13.0")
(version "1.14.0")
(source
(origin
(method git-fetch)
@ -267,7 +267,7 @@ for platform-specific firmwares executing in M-mode.")
(commit (string-append "rel-" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1n1bd6msfs7xn8844sz2qnm7hb5x2qfl3zb06kp4bx9vdc3i6619"))))
(base32 "0jp4rxsv9jdzvx4gjvkybj6g1yjg8pkd2wys4sdh6c029npp6y8p"))))
(build-system gnu-build-system)
(native-inputs
`(("python" ,python-wrapper)))

View File

@ -858,6 +858,7 @@ It contains the following fonts and styles:
("woff-tools" ,woff-tools)
("fontforge" ,fontforge)
("woff2" ,woff2)
("woff2:bin" ,woff2 "bin")
("zip" ,zip)))
(arguments
`(#:tests? #f ;test target intended for visual inspection

View File

@ -263,32 +263,50 @@ work with most software requiring Type 1 fonts.")
(package
(name "woff2")
(version "1.0.2")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/google/woff2")
(commit (string-append "v" version))))
(file-name (string-append name "-" version ".git"))
(sha256
(base32
"13l4g536h0pr84ww4wxs2za439s0xp1va55g6l478rfbb1spp44y"))))
(source
(origin
(method git-fetch)
(uri
(git-reference
(url "https://github.com/google/woff2.git")
(commit (string-append "v" version))))
(file-name
(git-file-name name version))
(sha256
(base32 "13l4g536h0pr84ww4wxs2za439s0xp1va55g6l478rfbb1spp44y"))))
(build-system cmake-build-system)
(outputs '("out" "bin"))
(arguments
`(#:tests? #f ; No target
#:configure-flags
(list
(string-append "-DCMAKE_INSTALL_BINDIR="
(assoc-ref %outputs "bin")
"/bin")
(string-append "-DCMAKE_INSTALL_INCLUDEDIR="
(assoc-ref %outputs "out")
"/include")
(string-append "-DCMAKE_INSTALL_LIBDIR="
(assoc-ref %outputs "out")
"/lib"))
#:phases
(modify-phases %standard-phases
;; To install both binaries and libraries.
(add-after 'unpack 'patch-installation
(lambda _
(substitute* "CMakeLists.txt"
(("NOT BUILD_SHARED_LIBS")
"BUILD_SHARED_LIBS"))
#t)))))
(native-inputs
`(("pkg-config" ,pkg-config)))
(inputs
`(("google-brotli" ,google-brotli)))
(arguments
;; package has no tests
`(#:tests? #f
;; we cant have both, shared libraries and binaries, so turn off the
;; former
#:configure-flags (list "-DBUILD_SHARED_LIBS=OFF")))
(synopsis "Compress TrueType fonts to WOFF2")
(description
"This package provides utilities for compressing/decompressing TrueType
fonts to/from the WOFF2 format.")
(license license:asl2.0)
(home-page "https://github.com/google/woff2")))
`(("brotli" ,google-brotli)))
(synopsis "Libraries and tools for WOFF2 font format")
(description "WOFF2 provides libraires and tools to handle the Web Open
Font Format (WOFF).")
(home-page "https://w3c.github.io/woff/woff2/")
(license license:expat)))
(define-public fontconfig
(package

View File

@ -260,40 +260,40 @@ Includes the actual FTDI connector.")
(license license:isc))))
(define-public nextpnr-ice40
(let [(commit "c192ba261d77ad7f0a744fb90b01e4a5b63938c4")
(revision "0")]
(package
(name "nextpnr-ice40")
(version (git-version "0.0.0" revision commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "git://github.com/YosysHQ/nextpnr")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32
"0g2ar1z89b31qw5vgqj2rrcv9rzncs94184dgcsrz19p866654mf"))))
(inputs
`(("qtbase" ,qtbase)
("boost" ,boost-with-python3)
("yosys" ,yosys)
("eigen" ,eigen)
("python" ,python)
("icestorm" ,icestorm)))
(build-system cmake-build-system)
(arguments
`(#:configure-flags `("-DARCH=ice40"
,(string-append "-DICEBOX_ROOT="
(assoc-ref %build-inputs "icestorm")
"/share/icebox"))
#:tests? #f))
(synopsis "Place-and-Route tool for FPGAs")
(description "Nextpnr aims to be a vendor neutral, timing driven,
(let [(commit "fbe486df459909065d6852a7495a212dfd2accef")
(revision "1")]
(package
(name "nextpnr-ice40")
(version (git-version "0.0.0" revision commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "git://github.com/YosysHQ/nextpnr")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32
"1fmxsywgs45g88ra7ips5s2niiiwrkyxdcy742ws18dfk2y4vi9c"))))
(inputs
`(("boost" ,boost)
("eigen" ,eigen)
("icestorm" ,icestorm)
("python" ,python)
("qtbase" ,qtbase)
("yosys" ,yosys)))
(build-system cmake-build-system)
(arguments
`(#:configure-flags `("-DARCH=ice40"
,(string-append "-DICEBOX_ROOT="
(assoc-ref %build-inputs "icestorm")
"/share/icebox"))
#:tests? #f))
(synopsis "Place-and-Route tool for FPGAs")
(description "Nextpnr aims to be a vendor neutral, timing driven,
FOSS FPGA place and route tool.")
(home-page "https://github.com/YosysHQ/nextpnr")
(license license:expat))))
(home-page "https://github.com/YosysHQ/nextpnr")
(license license:expat))))
(define-public arachne-pnr
(let ((commit "840bdfdeb38809f9f6af4d89dd7b22959b176fdd")
@ -340,7 +340,7 @@ FOSS FPGA place and route tool.")
(define-public gtkwave
(package
(name "gtkwave")
(version "3.3.104")
(version "3.3.106")
(source
(origin
(method url-fetch)
@ -350,7 +350,7 @@ FOSS FPGA place and route tool.")
(string-append "http://gtkwave.sourceforge.net/"
"gtkwave-" version ".tar.gz")))
(sha256
(base32 "0kw9a33gx60kn069yhx5pyk39x1z3pwaj8l1qqwq943v62lx23fj"))))
(base32 "1pyij6dlmapjyzrmn255fkf8gyhz8i4vaipd75a68i2bnq021nn8"))))
(build-system gnu-build-system)
(native-inputs
`(("gperf" ,gperf)

View File

@ -20,6 +20,7 @@
;;; Copyright © 2020 Jakub Kądziołka <kuba@kadziolka.net>
;;; Copyright © 2020 Rene Saavedra <pacoon@protonmail.com>
;;; Copyright © 2020 Nicolò Balzarotti <nicolo@nixo.xyz>
;;; Copyright © 2020 Anders Thuné <asse.97@gmail.com>
;;;
;;; This file is part of GNU Guix.
;;;
@ -47,6 +48,7 @@
#:use-module (guix build-system meson)
#:use-module (guix build-system perl)
#:use-module (guix build-system python)
#:use-module (guix build-system glib-or-gtk)
#:use-module (gnu packages)
#:use-module (gnu packages acl)
#:use-module (gnu packages admin)
@ -60,6 +62,7 @@
#:use-module (gnu packages disk)
#:use-module (gnu packages docbook)
#:use-module (gnu packages documentation)
#:use-module (gnu packages fontutils)
#:use-module (gnu packages gawk)
#:use-module (gnu packages gettext)
#:use-module (gnu packages ghostscript)
@ -77,6 +80,7 @@
#:use-module (gnu packages man)
#:use-module (gnu packages m4)
#:use-module (gnu packages nss)
#:use-module (gnu packages package-management)
#:use-module (gnu packages perl)
#:use-module (gnu packages perl-check)
#:use-module (gnu packages pkg-config)
@ -94,6 +98,103 @@
#:use-module (gnu packages xorg)
#:use-module (srfi srfi-1))
(define-public libglib-testing
(package
(name "libglib-testing")
(version "0.1.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://gitlab.gnome.org/pwithnall/libglib-testing.git")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "0xmycsrlqyji6sc2i4wvp2gxf3897z65a57ygihfnpjpyl7zlwkr"))))
(build-system meson-build-system)
(arguments
`(#:glib-or-gtk? #t
#:phases
(modify-phases %standard-phases
(add-before
'check 'pre-check
(lambda _
;; The test suite requires a running dbus-daemon.
(system "dbus-daemon &")
;; Don't fail on missing '/etc/machine-id'.
(setenv "DBUS_FATAL_WARNINGS" "0")
#t)))))
(native-inputs
`(("glib:bin" ,glib "bin")
("gobject-introspection" ,gobject-introspection)
("pkg-config" ,pkg-config)
("gtk-doc" ,gtk-doc)))
(inputs
`(("dbus" ,dbus)
("glib" ,glib)))
(synopsis "Glib testing library")
(description "Libglib-testing is a test library providing test harnesses and
mock classes which complement the classes provided by GLib. It is intended to
be used by any project which uses GLib and which wants to write internal unit
tests.")
(home-page "https://gitlab.gnome.org/pwithnall/libglib-testing")
(license license:lgpl2.1+)))
(define-public malcontent
(package
(name "malcontent")
(version "0.8.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://gitlab.freedesktop.org/pwithnall/malcontent.git")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "0vnf0pk516fwwh41v96c29l2i7h1pnwhivlkbf53kkx1q35g7lb3"))))
(build-system meson-build-system)
(arguments
`(#:glib-or-gtk? #t
#:phases
(modify-phases %standard-phases
;; AppInfo not available inside build environment.
(add-after 'unpack 'fix-tests
(lambda _
(substitute* "libmalcontent/tests/app-filter.c"
(("g_test_add_func \\(\"/app-filter/appinfo\", test_app_filter_appinfo\\);")
""))
#t)))))
(native-inputs
`(("desktop-file-utils" ,desktop-file-utils)
("gettext" ,gettext-minimal)
("glib:bin" ,glib "bin")
("gobject-introspection" ,gobject-introspection)
("gtk+:bin" ,gtk+ "bin")
("itstool" ,itstool)
("libglib-testing" ,libglib-testing)
("libxml2" ,libxml2)
("pkg-config" ,pkg-config)))
(inputs
`(("accountsservice" ,accountsservice)
("appstream-glib" ,appstream-glib)
("dbus" ,dbus)
("flatpak" ,flatpak)
("glib" ,glib)
("gtk+" ,gtk+)
("libostree" ,libostree)
("linux-pam" ,linux-pam)
("polkit" ,polkit)))
(synopsis "Parental controls support")
(description "MalContent implements parental controls support which can
be used by applications to filter or limit the access of child accounts to
inappropriate content.")
(home-page "https://gitlab.freedesktop.org/pwithnall/malcontent")
(license
(list
license:gpl2+
license:lgpl2.1+))))
(define-public xdg-utils
(package
(name "xdg-utils")
@ -1881,3 +1982,144 @@ useful with system integration.")
into the Unity menu bar. Based on KSNI, it also works in KDE and will
fallback to generic Systray support if none of those are available.")
(license license:lgpl2.1+)))
(define-public libportal
(let ((commit "bff3289")
(revision "1"))
(package
(name "libportal")
(version (git-version "0.3" revision commit))
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/flatpak/libportal")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32
"104b91qircr1i9jkmm6f725awywky52aimrki303kiaadn2v8b5i"))))
(build-system meson-build-system)
(arguments
`(#:phases
(modify-phases %standard-phases
(add-after 'install 'move-doc
(lambda* (#:key outputs #:allow-other-keys)
(let ((out (assoc-ref outputs "out"))
(doc (assoc-ref outputs "doc"))
(html "/share/gtk-doc"))
(copy-recursively (string-append out html)
(string-append doc html))
(delete-file-recursively (string-append out html))
#t))))))
(native-inputs
`(("pkg-config" ,pkg-config)
("gtk-doc" ,gtk-doc)
("docbook-xsl" ,docbook-xsl)
("docbook-xml" ,docbook-xml)
("libxml2" ,libxml2)
("glib:bin" ,glib "bin")))
(propagated-inputs
`(("glib" ,glib)))
(outputs '("out" "doc"))
(home-page "https://github.com/flatpak/libportal")
(synopsis "Flatpak portal library")
(description
"libportal provides GIO-style async APIs for most Flatpak portals.")
(license license:lgpl2.1+))))
(define-public xdg-desktop-portal
(package
(name "xdg-desktop-portal")
(version "1.7.2")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/flatpak/xdg-desktop-portal")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32
"0rkwpsmbn3d3spkzc2zsd50l2r8pp4la390zcpsawaav8w7ql7xm"))))
(build-system gnu-build-system)
(native-inputs
`(("pkg-config" ,pkg-config)
("autoconf" ,autoconf)
("automake" ,automake)
("libtool" ,libtool)
("glib:bin" ,glib "bin")
("which" ,which)
("gettext" ,gettext-minimal)))
(inputs
`(("glib" ,glib)
("flatpak" ,flatpak)
("fontconfig" ,fontconfig)
("json-glib" ,json-glib)
("libportal" ,libportal)
("dbus" ,dbus)
("geoclue" ,geoclue)
("pipewire" ,pipewire-0.3)
("fuse" ,fuse)))
(home-page "https://github.com/flatpak/xdg-desktop-portal")
(synopsis "Desktop integration portal for sandboxed apps")
(description
"xdg-desktop-portal is a @dfn{portal front-end service} for Flatpak and
possibly other desktop containment frameworks. It works by exposing a series
of D-Bus interfaces known as portals under a well-known
name (@code{org.freedesktop.portal.Desktop}) and object
path (@code{/org/freedesktop/portal/desktop}).
The portal interfaces include APIs for file access, opening URIs, printing
and others.")
(license license:lgpl2.1+)))
(define-public xdg-desktop-portal-gtk
(package
(name "xdg-desktop-portal-gtk")
(version "1.7.1")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/flatpak/xdg-desktop-portal-gtk")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32
"183iha9dxmvprn99ymgz17jx1lyn1fj5jyj6ghxl716zn9mxmird"))))
(build-system glib-or-gtk-build-system)
(arguments
`(#:phases
(modify-phases %standard-phases
(add-after 'unpack 'po-chmod
(lambda _
;; Make sure 'msgmerge' can modify the PO files.
(for-each (lambda (po)
(chmod po #o666))
(find-files "po" "\\.po$"))
#t)))))
(native-inputs
`(("pkg-config" ,pkg-config)
("autoconf" ,autoconf)
("automake" ,automake)
("libtool" ,libtool)
("xdg-desktop-portal" ,xdg-desktop-portal)
("glib:bin" ,glib "bin")
("which" ,which)
("gettext" ,gettext-minimal)))
(inputs
`(("glib" ,glib)
("gtk" ,gtk+)
("fontconfig" ,fontconfig)
("gnome-desktop" ,gnome-desktop)
("gsettings-desktop-schemas" ,gsettings-desktop-schemas)))
(native-search-paths
(list (search-path-specification
(variable "XDG_DESKTOP_PORTAL_DIR")
(files '("share/xdg-desktop-portal/portals")))))
(home-page "https://github.com/flatpak/xdg-desktop-portal-gtk")
(synopsis "GTK implementation of xdg-desktop-portal")
(description
"This package provides a backend implementation for xdg-desktop-portal
which uses GTK+ and various pieces of GNOME infrastructure, such as the
@code{org.gnome.Shell.Screenshot} or @code{org.gnome.SessionManager} D-Bus
interfaces.")
(license license:lgpl2.1+)))

View File

@ -2,7 +2,7 @@
;;; Copyright © 2014, 2015, 2018 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2015 Andreas Enge <andreas@enge.fr>
;;; Copyright © 2015 Mark H Weaver <mhw@netris.org>
;;; Copyright © 2016, 2017, 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2016, 2017, 2018, 2019, 2020 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2017 Rene Saavedra <rennes@openmailbox.org>
;;;
;;; This file is part of GNU Guix.
@ -46,7 +46,7 @@
(define-public lftp
(package
(name "lftp")
(version "4.9.1")
(version "4.9.2")
(source (origin
(method url-fetch)
;; See https://lftp.tech/get.html for mirrors.
@ -58,7 +58,7 @@
"ftp/lftp/lftp-" version ".tar.xz")))
(sha256
(base32
"0jq2g8h1bx06ya9fsja748vwb2qrca4wsfrgi3fmaa8hznpgqsar"))))
"03b7y0h3mf4jfq5y8zw6hv9v44z3n6i8hc1iswax96y3z7sc85y5"))))
(build-system gnu-build-system)
(native-inputs
`(("pkg-config" ,pkg-config)))

View File

@ -54,18 +54,11 @@
(let* ((out (assoc-ref outputs "out"))
(xsessions (string-append out "/share/xsessions")))
(mkdir-p xsessions)
(with-output-to-file
(string-append xsessions "/fvwm2.desktop")
(lambda _
(format #t
"[Desktop Entry]~@
Name=FVWM~@
Comment=FVWM~@
Exec=~a/bin/fvwm~@
TryExec=~@*~a/bin/fvwm~@
Icon=~@
Type=Application~%"
out))))
(make-desktop-entry-file
(string-append xsessions "/fvwm2.desktop")
#:name "FVWM"
#:exec (string-append out "/bin/" ,name)
#:comment '("FVWM")))
#t)))))
(native-inputs
`(("perl" ,perl)
@ -86,5 +79,5 @@
(description
"FVWM is an extremely powerful ICCCM-compliant multiple virtual desktop
window manager for the X Window system.")
(home-page "http://www.fvwm.org/")
(home-page "https://www.fvwm.org/")
(license gpl2+)))

View File

@ -2127,14 +2127,14 @@ a.k.a. XenoCollide) as described in Game Programming Gems 7.")
(define-public ode
(package
(name "ode")
(version "0.16.1")
(version "0.16.2")
(source
(origin
(method url-fetch)
(uri (string-append "https://bitbucket.org/odedevs/ode/downloads/"
"ode-" version ".tar.gz"))
(sha256
(base32 "1flfdqgdbcn1bx8nrrd4qnp6cvsxrhvk8cdg7vaq2dzkh6nsqa5j"))
(base32 "08hgh4gqdk77jcw8b7gq2mwsfg4a5v5y0j7g42bxiqhmn3ffnsmj"))
(modules '((guix build utils)))
(snippet
'(begin
@ -2142,12 +2142,7 @@ a.k.a. XenoCollide) as described in Game Programming Gems 7.")
#t))))
(build-system cmake-build-system)
(arguments
;; Tests fail on all systems but x86_64. This is fixed upstream and can
;; be removed in 0.16.2+.
`(#:tests? ,(string-prefix? "x86_64-"
(or (%current-target-system)
(%current-system)))
#:configure-flags '("-DODE_WITH_LIBCCD_SYSTEM=ON")
`(#:configure-flags '("-DODE_WITH_LIBCCD_SYSTEM=ON")
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'unbundle-libccd

View File

@ -40,7 +40,7 @@
;;; Copyright © 2019, 2020 Oleg Pykhalov <go.wigust@gmail.com>
;;; Copyright © 2019 Pierre Langlois <pierre.langlois@gmx.com>
;;; Copyright © 2019 Julien Lepiller <julien@lepiller.eu>
;;; Copyright © 2019 Jesse Gibbons <jgibbons2357+guix@gmail.com>
;;; Copyright © 2019, 2020 Jesse Gibbons <jgibbons2357+guix@gmail.com>
;;; Copyright © 2019 Dan Frumin <dfrumin@cs.ru.nl>
;;; Copyright © 2019, 2020 Guillaume Le Vaillant <glv@posteo.net>
;;; Copyright © 2019, 2020 Timotej Lazar <timotej.lazar@araneo.si>
@ -52,6 +52,8 @@
;;; Copyright © 2020 Jack Hill <jackhill@jackhill.us>
;;; Copyright © 2020 Vincent Legoll <vincent.legoll@gmail.com>
;;; Copyright © 2020 Michael Rohleder <mike@rohleder.de>
;;; Copyright © 2020 Trevor Hass <thass@okstate.edu>
;;; Copyright © 2020 Leo Prikler <leo.prikler@student.tugraz.at>
;;;
;;; This file is part of GNU Guix.
;;;
@ -1366,7 +1368,8 @@ built-in level editor.")
(build-system gnu-build-system)
(arguments
'(#:make-flags
(list (string-append "PREFIX=" (assoc-ref %outputs "out")))
(list (string-append "PREFIX=" (assoc-ref %outputs "out"))
"CXXFLAGS=-lpthread")
#:phases
(modify-phases %standard-phases
;; No configure script.
@ -1398,7 +1401,7 @@ destroying an ancient book using a special wand.")
(define-public gnome-chess
(package
(name "gnome-chess")
(version "3.36.1")
(version "3.37.3")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnome/sources/gnome-chess/"
@ -1406,7 +1409,7 @@ destroying an ancient book using a special wand.")
"gnome-chess-" version ".tar.xz"))
(sha256
(base32
"165bk8s3nngyqbikggspj4rff5nxxfkfcmgzjb4grmsrgbqwk5di"))))
"09axf0q1mp13sv8cs0syfg8ahcd9r2qb26278r09j6s4njxmkfv4"))))
(build-system meson-build-system)
(arguments
'(#:glib-or-gtk? #t
@ -1555,14 +1558,14 @@ Chess). It is similar to standard chess but this variant is far more complicate
(define-public ltris
(package
(name "ltris")
(version "1.2")
(version "1.2.1")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://sourceforge/lgames/ltris/"
"ltris-" version ".tar.gz"))
(sha256
(base32 "15b18p7id55xiz2jkf56w2f1g6yw1rcb98bpa188i6skqrgnrg57"))))
(base32 "0959vvxh5xnxzpdv7i67lpd2b6ghx69z65ldnclj1z6llyfzfs7q"))))
(build-system gnu-build-system)
(arguments
'(;; The code in LTris uses traditional GNU semantics for inline functions
@ -2729,6 +2732,7 @@ interface or via an external visual interface such as GNU XBoard.")
(method url-fetch)
(uri (string-append "mirror://gnu/freedink/freedink-" version
".tar.gz"))
(patches (search-patches "freedink-engine-fix-sdl-hints.patch"))
(sha256
(base32
"00hhk1bjdrc1np2qz44sa5n1mb62qzwxbvsnws3vpms6iyn3a2sy"))))
@ -2742,6 +2746,14 @@ interface or via an external visual interface such as GNU XBoard.")
;; These tests require a graphical interface.
(substitute* "src/Makefile.am"
(("test_gfx_fonts TestIOGfxDisplay") ""))
#t))
(add-before 'bootstrap 'autoreconf
(lambda _
;; automake is out of date in the source
;; autoreconf updates the automake scripts
(invoke "autoreconf")
;; Build fails when autom4te.cache exists.
(delete-file-recursively "autom4te.cache")
#t)))))
(native-inputs `(("autoconf" ,autoconf)
("automake" ,automake)
@ -3129,6 +3141,30 @@ in different ways.")
(home-page "https://www.minetest.net/")
(license license:lgpl2.1+)))
(define-public minetest-mineclone
(package
(name "minetest-mineclone")
(version "0.66.2")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://git.minetest.land/Wuzzy/MineClone2")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32
"0miszzlzplpvaj0j1yii9867ydr42wsaqa9g6grxdrci75p05g00"))))
(build-system copy-build-system)
(arguments
`(#:install-plan
'(("." "share/minetest/games/mineclone"))))
(synopsis "Minecraft clone based on Minetest engine")
(description
"MineClone is a Minetest subgame, that aims to recreate Minecraft as
closely as the engine allows.")
(home-page "https://content.minetest.net/packages/Wuzzy/mineclone2/")
(license license:gpl3+)))
(define glkterm
(package
(name "glkterm")
@ -3505,14 +3541,16 @@ also available.")
(file-name (string-append name "-" version ".tar.gz"))
(sha256
(base32
"1n747p7h0qp48szgp262swg0xh8kxy1bw8ag1qczs4i26hyzs5x4"))))
"1n747p7h0qp48szgp262swg0xh8kxy1bw8ag1qczs4i26hyzs5x4"))
(patches (search-patches "unknown-horizons-python-3.8-distro.patch"))))
(build-system python-build-system)
(arguments
'(#:phases
(modify-phases %standard-phases
(add-before 'build 'set-HOME
(lambda _
(setenv "HOME" "/tmp")))
(setenv "HOME" "/tmp")
#t))
(add-after 'build 'build-extra
(lambda _
(invoke "python3" "./setup.py" "build_i18n")
@ -3527,6 +3565,14 @@ also available.")
(assoc-ref outputs "out")
"/share/unknown-horizons\")"))))
#t))
(add-before 'check 'fix-tests-with-pytest>=4
(lambda _
(substitute* "tests/conftest.py"
(("pytest_namespace")
"pytest_configure")
(("get_marker")
"get_closest_marker"))
#t))
;; TODO: Run GUI tests as well
(replace 'check
(lambda _
@ -3545,6 +3591,7 @@ also available.")
("python-pyyaml" ,python-pyyaml)))
(native-inputs
`(("intltool" ,intltool)
("python-distro" ,python-distro)
;; Required for tests
("python-greenlet" ,python-greenlet)
@ -4166,14 +4213,14 @@ are only two levels to play with, but they are very addictive.")
(define-public pioneers
(package
(name "pioneers")
(version "15.5")
(version "15.6")
(source (origin
(method url-fetch)
(uri (string-append "http://downloads.sourceforge.net/pio/"
(uri (string-append "https://downloads.sourceforge.net/pio/"
"pioneers-" version ".tar.gz"))
(sha256
(base32
"037gdiiw690jw3wd1s9lxmkqx0caxyk0b4drpm7i9p28gig43q9y"))))
"07b3xdd81n8ybsb4fzc5lx0813y9crzp1hj69khncf4faj48sdcs"))))
(build-system gnu-build-system)
(inputs `(("avahi" ,avahi)
("gtk+" ,gtk+)
@ -4741,7 +4788,7 @@ of war. Widelands also offers an Artificial Intelligence to challenge you.")
(define-public starfighter
(package
(name "starfighter")
(version "2.3")
(version "2.3.1")
(source (origin
(method url-fetch)
(uri (string-append
@ -4750,7 +4797,7 @@ of war. Widelands also offers an Artificial Intelligence to challenge you.")
version "-src.tar.gz"))
(sha256
(base32
"156ivi8cqqv9gxi8kj393av1s2sj7bblabm1b3kibla1s8l090n9"))))
"13396hvsj4cswlrw52kwqn37dadxps00vhr0hrqgm87fl4ih5yyx"))))
(build-system gnu-build-system)
(native-inputs
`(("pkg-config" ,pkg-config)))
@ -5841,6 +5888,14 @@ The Flag. You can even design your own maps!")
(list "--with-system-enet")
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'fix-build-with-new-gcc
(lambda _
;; Fix build with GCC6 and later by avoiding comparing ifstream
;; to NULL. Can be removed for versions > 1.21.
(substitute* "src/lev/Proxy.cc"
(("ifs != NULL")
"ifs"))
#t))
(add-after 'unpack 'find-sdl
(lambda _
(substitute* "configure"
@ -5895,7 +5950,8 @@ with the mouse isnt always trivial.")
"047sf00x71xbmi8bqrhfbmr9bk89l2gbykkqsfpw4wz6yfjscs6y"))))
(build-system gnu-build-system)
(arguments
`(#:tests? #f)) ; no tests included
`(#:tests? #f ; no tests included
#:configure-flags '("CFLAGS=-fgnu89-inline"))) ; fix inlines
(inputs
`(("sdl-union" ,(sdl-union (list sdl sdl-image sdl-mixer sdl-ttf)))
("freetype" ,freetype)
@ -7743,7 +7799,7 @@ GameController.")
(define-public quadrapassel
(package
(name "quadrapassel")
(version "3.36.02")
(version "3.36.05")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnome/sources/quadrapassel/"
@ -7751,7 +7807,7 @@ GameController.")
"quadrapassel-" version ".tar.xz"))
(sha256
(base32
"0c80pzipxricyh4wydffsc94wj6ymnanqr9bg6wdx51hz1mmmilb"))))
"04abxmimh5npw8rhz1sfi6wxilgc6i1wka9mlnfwp8v1p1cb00cv"))))
(build-system meson-build-system)
(arguments
'(#:glib-or-gtk? #t
@ -7886,7 +7942,7 @@ civilized than your own.")
;; SSE instructions are available on Intel systems only.
,@(if (any (cute string-prefix? <> (or (%current-target-system)
(%current-system)))
'("x64_64" "i686"))
'("x86_64" "i686"))
'()
'("-DWITH_SSE2=NO"))
;; Configuration cannot find GTK2 without the two following
@ -9425,15 +9481,15 @@ win.")
(define-public freeorion
(package
(name "freeorion")
(version "0.4.9")
(version "0.4.10")
(source
(origin
(method url-fetch)
(uri (string-append "https://github.com/freeorion/freeorion/releases/"
"download/v" version "/FreeOrion_v" version
"_2020-02-02.db53471_Source.tar.gz"))
"_2020-07-10.f3d403e_Source.tar.gz"))
(sha256
(base32 "1qfnqkysagh8dw26plk229qh17mv4prjxs6qhfyczrmrrakb72an"))
(base32 "12xspixrkx6mmmsdqjha0hg02r4y73pk229l0wjq9s0yp8nb8ap7"))
(modules '((guix build utils)))
(snippet
'(begin
@ -9455,7 +9511,7 @@ win.")
(string-append "\"" roboto-dir "Roboto-" type ".ttf\");")))
#t))))))
(inputs
`(("boost" ,boost-with-python2)
`(("boost" ,boost)
("boost_signals" ,boost-signals2)
("font-dejavu" ,font-dejavu)
("font-roboto" ,font-google-roboto)
@ -9466,7 +9522,7 @@ win.")
("libpng" ,libpng)
("libvorbis" ,libvorbis)
("openal" ,openal)
("python2" ,python-2.7)
("python" ,python)
("sdl2" ,sdl2)
("zlib" ,zlib)))
(home-page "https://www.freeorion.org/index.php/Main_Page")
@ -11614,7 +11670,7 @@ game.") ;thanks to Debian for description
("gsasl" ,gsasl)
("libgcrypt" ,libgcrypt)
("libircclient" ,libircclient)
("protobuf" ,protobuf-2)
("protobuf" ,protobuf-2) ; remove package when no longer needed
("qtbase" ,qtbase)
("sdl" ,(sdl-union (list sdl sdl-mixer)))
("sqlite" ,sqlite)
@ -11659,3 +11715,72 @@ game.") ;thanks to Debian for description
"With PokerTH you can play the Texas holdem poker game, either against
computer opponents or against real players online.")
(license license:agpl3+)))
(define-public azimuth
(package
(name "azimuth")
;; Not marked as latest release, but it fixes a compiling issue
;; and adds the install target.
(version "1.0.3")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/mdsteele/azimuth")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
"1znfvpmqiixd977jv748glk5zc4cmhw5813zp81waj07r9b0828r"))))
(build-system gnu-build-system)
(arguments
`(#:test-target "test"
#:phases
(modify-phases %standard-phases
(delete 'configure) ; no configure script
;; Build release version instead of debug version.
(add-after 'unpack 'set-release
(lambda _
(setenv "BUILDTYPE" "release") #t))
(add-after 'unpack 'fix-install ; set install directory
(lambda* (#:key outputs #:allow-other-keys)
(substitute* "Makefile" (("/usr") (assoc-ref outputs "out"))) #t)))))
(inputs `(("sdl" ,sdl)))
(home-page "https://mdsteele.games/azimuth/")
(synopsis "Metroidvania game with vector graphics")
(description
"Pilot your ship inside a planet to find and rescue the colonists trapped
inside the Zenith Colony.")
(license license:gpl3+)))
(define-public paperview
(let ((commit "9f8538eb6734c76877b878b8f1e52587f2ae19e6")
(revision "1"))
(package
(name "paperview")
(version (git-version "0.0.1" revision commit)) ;no upstream release
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/glouw/paperview")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32
"09sb9sg44fvkgfdyycrm1ndpx7cnkrglxhci41y8f3gpagnvi7jk"))))
(build-system gnu-build-system)
(inputs
`(("sdl2" ,sdl2)))
(arguments
'(#:tests? #f ;no tests
#:make-flags
(list (string-append "PREFIX=" (assoc-ref %outputs "out")))
#:phases
(modify-phases %standard-phases
(delete 'configure))))
(home-page "https://github.com/glouw/paperview/")
(synopsis "High performance X11 animated wallpaper setter")
(description "High performance animated desktop background setter for
X11 that won't set your CPU on fire, drain your laptop battery, or lower video
game FPS.")
(license license:unlicense))))

View File

@ -514,6 +514,12 @@ Go. It also includes runtime support libraries for these languages.")
(inputs
`(("isl" ,isl)
;; XXX: This gross hack allows us to have libstdc++'s <bits/c++config.h>
;; in the search path, thereby avoiding misconfiguration of libstdc++:
;; <https://bugs.gnu.org/42392>.
("libstdc++" ,libstdc++-headers)
,@(package-inputs gcc-4.7)))))
(define-public gcc-7
@ -567,14 +573,14 @@ It also includes runtime support libraries for these languages.")))
(define-public gcc-10
(package
(inherit gcc-8)
(version "10.1.0")
(version "10.2.0")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnu/gcc/gcc-"
version "/gcc-" version ".tar.xz"))
(sha256
(base32
"18kyds3ss4j7in8shlsbmjafdhin400mq739d0dnyrabhhiqm2dn"))
"130xdkhmz1bc2kzx061s3sfwk36xah1fw5w332c0nzwwpdl47pdq"))
(patches (search-patches "gcc-9-strmov-store-file-names.patch"
"gcc-5.0-libvtv-runpath.patch"))))))
@ -607,6 +613,31 @@ using compilers other than GCC."
(propagated-inputs '())
(synopsis "GNU C++ standard library")))
(define libstdc++
;; Libstdc++ matching the default GCC.
(make-libstdc++ gcc))
(define libstdc++-headers
;; XXX: This package is for internal use to work around
;; <https://bugs.gnu.org/42392> (see above). The main difference compared
;; to the libstdc++ headers that come with 'gcc' is that <bits/c++config.h>
;; is right under include/c++ and not under
;; include/c++/x86_64-unknown-linux-gnu (aka. GPLUSPLUS_TOOL_INCLUDE_DIR).
(package
(inherit libstdc++)
(name "libstdc++-headers")
(outputs '("out"))
(build-system trivial-build-system)
(arguments
'(#:builder (let* ((out (assoc-ref %outputs "out"))
(libstdc++ (assoc-ref %build-inputs "libstdc++")))
(mkdir out)
(mkdir (string-append out "/include"))
(symlink (string-append libstdc++ "/include")
(string-append out "/include/c++")))))
(inputs `(("libstdc++" ,libstdc++)))
(synopsis "Headers of GNU libstdc++")))
(define-public libstdc++-4.9
(make-libstdc++ gcc-4.9))
@ -689,7 +720,13 @@ as the 'native-search-paths' field."
(define-public gfortran
(hidden-package
(custom-gcc gcc "gfortran" '("fortran")
(custom-gcc (package
(inherit gcc)
;; XXX: Remove LIBSTDC++-HEADERS from the inputs just to
;; avoid a rebuild of all the GFORTRAN dependents.
;; TODO: Remove this hack on the next rebuild cycle.
(inputs (alist-delete "libstdc++" (package-inputs gcc))))
"gfortran" '("fortran")
%generic-search-paths)))
(define-public gdc-10

View File

@ -2,7 +2,7 @@
;;; Copyright © 2016 Leo Famulari <leo@famulari.name>
;;; Copyright © 2016 Alex Griffin <a@ajgrf.com>
;;; Copyright © 2017, 2018 Björn Höfling <bjoern.hoefling@bjoernhoefling.de>
;;; Copyright © 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2018, 2019, 2020 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2018 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2018, 2019 Arun Isaac <arunisaac@systemreboot.net>
;;; Copyright © 2018 Joshua Sierles, Nextjournal <joshua@nextjournal.com>
@ -59,6 +59,7 @@
#:use-module (gnu packages curl)
#:use-module (gnu packages databases)
#:use-module (gnu packages datastructures)
#:use-module (gnu packages docbook)
#:use-module (gnu packages documentation)
#:use-module (gnu packages elf)
#:use-module (gnu packages flex)
@ -101,10 +102,73 @@
#:use-module (gnu packages xml)
#:use-module (gnu packages xorg))
(define-public memphis
(package
(name "memphis")
(version "0.2.3")
(source
(origin
(method git-fetch)
(uri
(git-reference
(url "https://github.com/jiuka/memphis.git")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "068c3943pgbpfjq44pmvn5fmkh005ak5aa67vvrq3fn487c6w54q"))))
(build-system glib-or-gtk-build-system)
(outputs '("out" "doc"))
(arguments
`(#:configure-flags
(list
"--disable-static"
"--enable-gtk-doc"
"--enable-vala"
(string-append "--with-html-dir="
(assoc-ref %outputs "doc")
"/share/gtk-doc/html"))
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'patch-autogen
(lambda _
(substitute* "autogen.sh"
(("\\./configure \"\\$@\"")
""))
#t))
(add-after 'patch-autogen 'patch-docbook-xml
(lambda* (#:key inputs #:allow-other-keys)
(with-directory-excursion "docs/reference"
(substitute* "libmemphis-docs.sgml"
(("http://www.oasis-open.org/docbook/xml/4.3/")
(string-append (assoc-ref inputs "docbook-xml")
"/xml/dtd/docbook/"))))
#t)))))
(native-inputs
`(("autoconf" ,autoconf)
("automake" ,automake)
("docbook-xml" ,docbook-xml-4.3)
("gobject-introspection" ,gobject-introspection)
("gtk-doc" ,gtk-doc)
("libtool" ,libtool)
("pkg-config" ,pkg-config)
("python" ,python-wrapper)
("seed" ,seed)
("vala" ,vala)))
(inputs
`(("expat" ,expat)
("glib" ,glib)))
(propagated-inputs
`(("cairo" ,cairo)))
(synopsis "Map-rendering for OpenSteetMap")
(description "Memphis is a map-rendering application and a library for
OpenStreetMap written in C using eXpat, Cairo and GLib.")
(home-page "http://trac.openstreetmap.ch/trac/memphis/")
(license license:lgpl2.1+)))
(define-public geos
(package
(name "geos")
(version "3.8.0")
(version "3.8.1")
(source (origin
(method url-fetch)
(uri (string-append "http://download.osgeo.org/geos/geos-"
@ -112,7 +176,7 @@
".tar.bz2"))
(sha256
(base32
"1mb2v9fy1gnbjhcgv0xny11ggfb17vkzsajdyibigwsxr4ylq4cr"))))
"1xqpmr10xi0n9sj47fbwc89qb0yr9imh4ybk0jsxpffy111syn22"))))
(build-system gnu-build-system)
(arguments `(#:phases
(modify-phases %standard-phases
@ -723,14 +787,14 @@ utilities for data translation and processing.")
(define-public postgis
(package
(name "postgis")
(version "3.0.0")
(version "3.0.2")
(source (origin
(method url-fetch)
(uri (string-append "https://download.osgeo.org/postgis/source/postgis-"
version ".tar.gz"))
(sha256
(base32
"15557fbk0xkngihwhqsbdyz2ng49blisf5zydw81j0gabk6x4vy0"))))
"1jmji8i2wjabkrzqil683lypnmimigdmn64a10j3kj3kzlfn98d3"))))
(build-system gnu-build-system)
(arguments
`(#:tests? #f
@ -1212,7 +1276,7 @@ to the OSM opening hours specification.")
(define-public josm
(package
(name "josm")
(version "16731")
(version "16812")
(source (origin
(method svn-fetch)
(uri (svn-reference
@ -1221,7 +1285,7 @@ to the OSM opening hours specification.")
(recursive? #f)))
(sha256
(base32
"036kdb1ckhym5f7lj5ydzblli7f1i1pl8z00hxvagf2rczdf5fi3"))
"131ly6ah9ygrah1wq1h2199v4hyzgflnh62ychs4jqvy9wz0dal6"))
(file-name (string-append name "-" version "-checkout"))
(modules '((guix build utils)))
(snippet
@ -1348,7 +1412,7 @@ ways, and relations) and their metadata tags.")
(define-public libmaxminddb
(package
(name "libmaxminddb")
(version "1.4.2")
(version "1.4.3")
(source
(origin
(method url-fetch)
@ -1356,14 +1420,11 @@ ways, and relations) and their metadata tags.")
"/releases/download/" version "/"
"/libmaxminddb-" version ".tar.gz"))
(sha256
(base32 "0mnimbaxnnarlw7g1rh8lpxsyf7xnmzwcczcc3lxw8xyf6ljln6x"))))
(base32 "0fd4a4sxiiwzbd5h74wl1ijnb7xybjyybb7q41vdq3w8nk3zdzd5"))))
(build-system gnu-build-system)
(arguments
`(#:phases
(modify-phases %standard-phases
(add-before 'configure 'set-cc-to-gcc
(lambda _
(setenv "CC" "gcc"))))))
`(#:make-flags
(list ,(string-append "CC=" (cc-for-target)))))
(native-inputs
`(("perl" ,perl)))
(home-page "https://maxmind.github.io/libmaxminddb/")
@ -1538,14 +1599,14 @@ QLandkarte GT application.")
(define-public readosm
(package
(name "readosm")
(version "1.1.0")
(version "1.1.0a")
(source
(origin
(method url-fetch)
(uri (string-append "https://www.gaia-gis.it/gaia-sins/"
"readosm-" version ".tar.gz"))
(sha256
(base32 "1v20pnda67imjd70fn0zw30aar525xicy3d3v49md5cvqklws265"))))
(base32 "0zv6p352pqjcv70nvcaf2x3011z35jqa24dcdm27a4ns1wha3cjc"))))
(build-system gnu-build-system)
(inputs
`(("expat" ,expat)

View File

@ -148,14 +148,14 @@ translated messages from the catalogs. Nearly all GNU packages use Gettext.")
(define-public libtextstyle
(package
(name "libtextstyle")
(version "0.20.2")
(version "0.21")
(source (origin
(inherit (package-source gnu-gettext))
(uri (string-append "mirror://gnu/gettext/gettext-"
version ".tar.gz"))
(sha256
(base32
"1wc9q3y8rsbd757v985vxqcyqsxs7cxk4x7rzsjmq7d4ij8d1fgc"))))
"04kbg1sx0ncfrsbr85ggjslqkzzb243fcw9nyh3rrv1a22ihszf7"))))
(build-system gnu-build-system)
(arguments
'(#:configure-flags '("--disable-static")

View File

@ -34,20 +34,134 @@
#:use-module (gnu packages)
#:use-module (gnu packages algebra)
#:use-module (gnu packages autotools)
#:use-module (gnu packages base)
#:use-module (gnu packages documentation)
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages glib)
#:use-module (gnu packages gtk)
#:use-module (gnu packages gnome)
#:use-module (gnu packages graphics)
#:use-module (gnu packages image)
#:use-module (gnu packages ghostscript)
#:use-module (gnu packages compression)
#:use-module (gnu packages xml)
#:use-module (gnu packages linux)
#:use-module (gnu packages ncurses)
#:use-module (gnu packages patchutils)
#:use-module (gnu packages pdf)
#:use-module (gnu packages photo)
#:use-module (gnu packages python)
#:use-module (gnu packages web)
#:use-module (gnu packages xorg))
(define-public poly2tri-c
(package
(name "poly2tri-c")
(version "0.1.0")
(source
(origin
(method url-fetch)
(uri
(string-append "https://storage.googleapis.com/"
"google-code-archive-source/v2/code.google.com/"
"poly2tri-c/source-archive.zip"))
(file-name
(string-append name "-" version ".zip"))
(sha256
(base32 "17cw0zhbnf2gb59jm26z0wcarqgdwir9jr1fpi3v9lcvyb2s3mqj"))))
(build-system glib-or-gtk-build-system)
(outputs '("out" "doc"))
(arguments
`(#:configure-flags
(list
"--disable-static")
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'disable-strict-rules
(lambda _
(substitute* "configure.ac"
(("\\$CFLAGS -Wall -ansi -pedantic")
"$CFLAGS")
(("\\$CFLAGS -Werror")
"$CFLAGS"))
#t))
(add-after 'disable-strict-rules 'fix-build-errors
(lambda _
(substitute* "poly2tri-c/refine/Makefile.am"
(("cdt.c")
"rcdt.c")
(("cdt.h")
"rcdt.h")
(("utils.c")
"rutils.c")
(("utils.h")
"rutils.h"))
#t))
(add-before 'bootstrap 'configure-later
(lambda _
(setenv "NOCONFIGURE" "set")
#t))
(add-after 'build 'generate-doc
(lambda _
(invoke "doxygen")
#t))
(add-after 'install 'install-doc
(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(doc (assoc-ref outputs "doc")))
(copy-recursively
"doc"
(string-append doc "/share/doc/poly2tri-c"))
#t))))))
(native-inputs
`(("autoconf" ,autoconf)
("automake" ,automake)
("doxygen" ,doxygen)
("libtool" ,libtool)
("pkg-config" ,pkg-config)
("unzip" ,unzip)
("which" ,which)))
(propagated-inputs
`(("glib" ,glib)))
(synopsis "2D constrained Delaunay triangulation library")
(description "Poly2Tri-C is a library for generating, refining and rendering
2-Dimensional Constrained Delaunay Triangulations.")
(home-page "https://code.google.com/archive/p/poly2tri-c/")
(license license:bsd-3)))
(define-public mrg
(package
(name "mrg")
(version "0.1.4")
(source
(origin
(method git-fetch)
(uri
(git-reference
(url "https://github.com/hodefoting/mrg.git")
(commit version)))
(file-name
(git-file-name name version))
(sha256
(base32 "106qhh0c11576cc5kh90ds0ram72d3r6n9sadw0y4krnhap6dvwk"))))
(build-system meson-build-system)
(arguments
`(#:glib-or-gtk? #t)) ; To wrap binaries and/or compile schemas
(native-inputs
`(("pkg-config" ,pkg-config)))
(propagated-inputs
`(("alsa" ,alsa-lib)
("cairo" ,cairo)
("gtk+" ,gtk+)
("mmm" ,mmm)
("x11" ,libx11)))
(synopsis "Microraptor GUI")
(description "MrG is is a C API for creating user interfaces. It can be
used as an application writing environment or as an interactive canvas for part
of a larger interface.")
(home-page "https://github.com/hodefoting/mrg")
(license license:lgpl2.0+)))
(define-public babl
(package
(name "babl")

View File

@ -619,6 +619,21 @@ It also contains adaptor classes for connection of dissimilar callbacks and
has an ease of use unmatched by other C++ callback libraries.")
(license license:lgpl2.1+)))
(define-public libsigc++-2
(package
(inherit libsigc++)
(name "libsigc++")
(version "2.10.3")
(source
(origin
(method url-fetch)
(uri
(string-append "mirror://gnome/sources/libsigc++/"
(version-major+minor version) "/"
name "-" version ".tar.xz"))
(sha256
(base32 "11j7j1jv4z58d9s7jvl42fnqa1dzl4idgil9r45cjv1w673dys0b"))))))
(define glibmm
(package
(name "glibmm")
@ -662,6 +677,24 @@ has an ease of use unmatched by other C++ callback libraries.")
useful for C++.")
(license license:lgpl2.1+)))
(define-public glibmm-2.64
(package
(inherit glibmm)
(name "glibmm")
(version "2.64.2")
(source
(origin
(method url-fetch)
(uri
(string-append "mirror://gnome/sources/glibmm/"
(version-major+minor version)
"/glibmm-" version ".tar.xz"))
(sha256
(base32 "1v6lp23fr2qh4zshcnm28sn29j3nzgsvcqj2nhmrnvamipjq4lm7"))))
(propagated-inputs
`(("libsigc++" ,libsigc++-2)
("glib" ,glib)))))
(define-public python2-pygobject-2
(package
(name "python2-pygobject")

View File

@ -419,7 +419,7 @@ currently focused application in the top panel of the GNOME shell.")
(define-public gnome-shell-extension-dash-to-panel
(package
(name "gnome-shell-extension-dash-to-panel")
(version "37")
(version "38")
(source (origin
(method git-fetch)
(uri (git-reference
@ -427,7 +427,7 @@ currently focused application in the top panel of the GNOME shell.")
(commit (string-append "v" version))))
(sha256
(base32
"0c8p8cmwjh6rpj7jwj1lccpdv5l0bazwywg8hpwgnqy9f4rxmrz3"))
"1kvybb49l1vf0fvh8d0c6xkwnry8m330scamf5x40y63d4i213j1"))
(file-name (git-file-name name version))))
(build-system gnu-build-system)
(arguments

File diff suppressed because it is too large Load Diff

View File

@ -10,6 +10,7 @@
;;; Copyright © 2018 Alex Vong <alexvong1995@gmail.com>
;;; Copyright © 2019 Brett Gilio <brettg@gnu.org>
;;; Copyright © 2020 Tanguy Le Carrour <tanguy@bioneland.org>
;;; Copyright © 2020 Michael Rohleder <mike@rohleder.de>
;;;
;;; This file is part of GNU Guix.
;;;
@ -73,24 +74,22 @@
(define-public libextractor
(package
(name "libextractor")
(version "1.9")
(version "1.10")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnu/libextractor/libextractor-"
version ".tar.gz"))
(sha256
(base32
"1zz2zvikvfibxnk1va3kgzs7djsmiqy7bmk8y01vbsf54ryjb3zh"))
(patches (search-patches "libextractor-exiv2.patch"))))
"0mr38g7kfn3p050hd3hckbcz2yd3za6dwl1c26x2kjf7vnsi3vcy"))))
(build-system gnu-build-system)
;; WARNING: Checks require /dev/shm to be in the build chroot, especially
;; not to be a symbolic link to /run/shm.
;; FIXME:
;; The following dependencies are all optional, but should be
;; available for maximum coverage:
;; * libmagic (file)
;; * librpm (rpm) ; investigate failure
;; * libgif (giflib) ; investigate failure
;; * libtidy-html (tidy-html) ; investigate failure
(inputs
`(("exiv2" ,exiv2)
("bzip2" ,bzip2)
@ -98,6 +97,7 @@
("ffmpeg" ,ffmpeg)
("file" ,file) ;libmagic, for the MIME plug-in
("glib" ,glib)
("giflib" ,giflib)
("gstreamer" ,gstreamer)
("gst-plugins-base" ,gst-plugins-base)
("gtk+" ,gtk+)
@ -108,7 +108,6 @@
("libmpeg2" ,libmpeg2)
("libmp4v2" ,libmp4v2)
("libsmf" ,libsmf)
("tidy-html" ,tidy-html)
("libogg" ,libogg)
("libtiff" ,libtiff)
("libvorbis" ,libvorbis)
@ -120,12 +119,18 @@
(arguments
`(#:configure-flags
(list (string-append "--with-ltdl="
(assoc-ref %build-inputs "libltdl"))
(string-append "--with-tidy="
(assoc-ref %build-inputs "tidy-html")))
(assoc-ref %build-inputs "libltdl")))
#:parallel-tests? #f
#:phases
(modify-phases %standard-phases
(add-after 'configure 'fix-exiv2-tests
;; exiv2>=0.27.3 rounds geolocation
;; https://github.com/Exiv2/exiv2/pull/1107/commits/db1be4ae8e1077949fcb6a960e93069d6a41b395#diff-f3f55183ccbe956c720c86e61f708d9f
(lambda _
(substitute* "src/plugins/test_exiv2.c"
(("17.585\\\\\" ") "18\\\"")
(("21.713\\\\\" ") "22\\\""))
#t))
(add-after 'install 'move-static-libraries
(lambda* (#:key outputs #:allow-other-keys)
;; Move static libraries to the "static" output.
@ -152,14 +157,14 @@ tool to extract metadata from a file and print the results.")
(define-public libmicrohttpd
(package
(name "libmicrohttpd")
(version "0.9.70")
(version "0.9.71")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnu/libmicrohttpd/libmicrohttpd-"
version ".tar.gz"))
(sha256
(base32
"01vkjy89b1ylmh22dy5yza2r414nfwcfixxh3v29nvzrjv9s7l4h"))))
"10mii4mifmfs3v7kgciqml7f0fj7ljp0sngrx64pnwmgbzl4bx78"))))
(build-system gnu-build-system)
(inputs
`(("curl" ,curl)
@ -381,14 +386,14 @@ services.")
(define-public gnunet-gtk
(package (inherit gnunet)
(name "gnunet-gtk")
(version "0.12.0")
(version "0.13.1")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnu/gnunet/gnunet-gtk-"
version ".tar.gz"))
(sha256
(base32
"08a43ayv1rhajdklfcv78w2h76jfaz64kgp5krqgj1w1sq8xm6fb"))))
"1zdzgq16h77w6ybwg3lqjsjr965np6iqvncqvkbj07glqd4wss0j"))))
(arguments
`(#:configure-flags
(list "--with-libunique"

View File

@ -189,7 +189,7 @@ graph), and battery status (high - green, low - yellow, or critical - red).")
(define-public wmnd
(package
(name "wmnd")
(version "0.4.17")
(version "0.4.18")
(source (origin
(method url-fetch)
(uri (string-append
@ -197,7 +197,7 @@ graph), and battery status (high - green, low - yellow, or critical - red).")
name "-" version ".tar.gz"))
(sha256
(base32
"1amkbiwgr31gwkcp7wrjsr7aj1kns8bpmjpv70n86wb8v9mpm828"))))
"01s37d8cfpncza1mlw13ar4rcwbrc1vgaj3ifhglmlcnzvvayg0n"))))
(build-system gnu-build-system)
(inputs
`(("libx11" ,libx11)

View File

@ -556,8 +556,8 @@ from forcing GEXP-PROMISE."
#:system system
#:guile-for-build guile)))
(define %icecat-version "68.10.0-guix0-preview1")
(define %icecat-build-id "20200630000000") ;must be of the form YYYYMMDDhhmmss
(define %icecat-version "68.12.0-guix0-preview1")
(define %icecat-build-id "20200825000000") ;must be of the form YYYYMMDDhhmmss
;; 'icecat-source' is a "computed" origin that generates an IceCat tarball
;; from the corresponding upstream Firefox ESR tarball, using the 'makeicecat'
@ -579,11 +579,11 @@ from forcing GEXP-PROMISE."
"firefox-" upstream-firefox-version ".source.tar.xz"))
(sha256
(base32
"0azdinwqjfv2q37gqpxmfvzsk86pvsi6cjaq1310zs26gric5j1f"))))
"1k17pi4zh9hrvkzbw4rzzw879a15hpvwriylp75wl22rl7r2nsdf"))))
(upstream-icecat-base-version "68.10.0") ; maybe older than base-version
(upstream-icecat-base-version "68.12.0") ; maybe older than base-version
;;(gnuzilla-commit (string-append "v" upstream-icecat-base-version))
(gnuzilla-commit "76dced64ce0e72fe3030dc2f7b22cda8e36b165e")
(gnuzilla-commit "15a7c3d991a670b6489d4f432b52a188358f4ca5")
(gnuzilla-source
(origin
(method git-fetch)
@ -595,7 +595,7 @@ from forcing GEXP-PROMISE."
(string-take gnuzilla-commit 8)))
(sha256
(base32
"0xcg6h0da63qyv7h575xjrbkzqqcjhwjd45x9h9qmpxiaibi9g3d"))))
"0n7p067yay413iy0gzprz0xrdkcxj5f8ywhkcghhhzw1nwajckba"))))
(makeicecat-patch
(local-file (search-patch "icecat-makeicecat.patch")))
@ -1115,10 +1115,12 @@ from forcing GEXP-PROMISE."
(mesa (assoc-ref inputs "mesa"))
(mesa-lib (string-append mesa "/lib"))
(pulseaudio (assoc-ref inputs "pulseaudio"))
(pulseaudio-lib (string-append pulseaudio "/lib")))
(pulseaudio-lib (string-append pulseaudio "/lib"))
(libxscrnsaver (assoc-ref inputs "libxscrnsaver"))
(libxscrnsaver-lib (string-append libxscrnsaver "/lib")))
(wrap-program (car (find-files lib "^icecat$"))
`("XDG_DATA_DIRS" prefix (,gtk-share))
`("LD_LIBRARY_PATH" prefix (,pulseaudio-lib ,mesa-lib)))
`("LD_LIBRARY_PATH" prefix (,pulseaudio-lib ,mesa-lib ,libxscrnsaver-lib)))
#t))))))
(home-page "https://www.gnu.org/software/gnuzilla/")
(synopsis "Entirely free browser derived from Mozilla Firefox")
@ -1137,11 +1139,11 @@ standards of the IceCat project.")
(cpe-version . ,(first (string-split version #\-)))))))
;; Update this together with icecat!
(define %icedove-build-id "20200630000000") ;must be of the form YYYYMMDDhhmmss
(define %icedove-build-id "20200726000000") ;must be of the form YYYYMMDDhhmmss
(define-public icedove
(package
(name "icedove")
(version "68.10.0")
(version "68.11.0")
(source icecat-source)
(properties
`((cpe-name . "thunderbird_esr")))
@ -1427,7 +1429,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 "6a7c26eb22bfe18295497c720a73e24b29b0604e"))
,(let ((changeset "a247645d951bcedb356a0d9f273e878a7d4d2180"))
(origin
(method hg-fetch)
(uri (hg-reference
@ -1436,7 +1438,7 @@ standards of the IceCat project.")
(file-name (string-append "thunderbird-" version "-checkout"))
(sha256
(base32
"1yd73ig2jmzzq9c3ynqav4kh8jiv31xx7vs518b3w1yvmcpj5xsy")))))
"0nf7ic1sw7yawnwrxwm3b4yl2cn4hp8szzh0xd462s1hjm59ksjl")))))
("autoconf" ,autoconf-2.13)
("cargo" ,rust "cargo")
("clang" ,clang)

File diff suppressed because it is too large Load Diff

View File

@ -5,6 +5,7 @@
;;; Copyright © 2018 Mathieu Othacehe <m.othacehe@gmail.com>
;;; Copyright © 2020 Guillaume Le Vaillant <glv@posteo.net>
;;; Copyright © 2020 Vincent Legoll <vincent.legoll@gmail.com>
;;; Copyright © 2020 Marius Bakke <marius@gnu.org>
;;;
;;; This file is part of GNU Guix.
;;;
@ -104,52 +105,48 @@ manipulate maps.")
license:gpl2+)))) ; everything else
(define-public gpscorrelate
;; This program is "lightly maintained", so to speak, so we end up taking it
;; directly from its Git repo.
(let ((commit "365f6e1b3f"))
(package
(name "gpscorrelate")
(version (string-append "1.6.1." commit))
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/dfandrich/gpscorrelate")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32
"006a6l8p38a4h7y2959sqrmjjn29d8pd50zj9nypcp5ph18nybjb"))))
(build-system gnu-build-system)
(arguments
`(#:phases
(modify-phases %standard-phases
(replace 'configure
(lambda* (#:key inputs outputs #:allow-other-keys)
;; This is a rudimentary build system.
(substitute* "Makefile"
(("prefix[[:blank:]]*=.*$")
(string-append "prefix = " (assoc-ref outputs "out")
"\n")))
#t)))
#:tests? #f))
(inputs
`(("gtk+" ,gtk+-2)
("libxml2" ,libxml2)
("exiv2" ,exiv2)))
(native-inputs
`(("pkg-config" ,pkg-config)
("docbook-xml" ,docbook-xml)
("docbook-xsl" ,docbook-xsl)
("libxslt" ,libxslt)))
(home-page "https://dfandrich.github.io/gpscorrelate/")
(synopsis "GPS photo correlation tool to geo-localize images")
(description
"GPS Correlate is a program to match a recorded GPS track with the EXIF
(package
(name "gpscorrelate")
(version "2.0")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/dfandrich/gpscorrelate")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32
"1kvybhfnygz79q3pgwc1q2x4ccmnsfscx2hzxnmzjbnc6arnqari"))))
(build-system gnu-build-system)
(arguments
`(#:phases
(modify-phases %standard-phases
(replace 'configure
(lambda* (#:key inputs outputs #:allow-other-keys)
;; This is a rudimentary build system.
(substitute* "Makefile"
(("prefix[[:blank:]]*=.*$")
(string-append "prefix = " (assoc-ref outputs "out")
"\n")))
#t)))))
(inputs
`(("gtk+" ,gtk+)
("libxml2" ,libxml2)
("exiv2" ,exiv2)))
(native-inputs
`(("pkg-config" ,pkg-config)
("docbook-xml" ,docbook-xml)
("docbook-xsl" ,docbook-xsl)
("libxslt" ,libxslt)))
(home-page "https://dfandrich.github.io/gpscorrelate/")
(synopsis "GPS photo correlation tool to geo-localize images")
(description
"GPS Correlate is a program to match a recorded GPS track with the EXIF
tags in digital camera photos, and update the EXIF tags with the location that
the photo was taken. It does this by using the timestamp in the photo and
finding a data point in the GPS track that matches, or interpolating a point
between two other data points.")
(license license:gpl2+))))
(license license:gpl2+)))
(define-public gama
(package
@ -221,14 +218,14 @@ such as elevation, speed, heart rate, power, temperature, and gear shifts.")
(define-public gpsd
(package
(name "gpsd")
(version "3.20")
(version "3.21")
(source
(origin
(method url-fetch)
(uri (string-append "https://download-mirror.savannah.gnu.org"
"/releases/gpsd/gpsd-" version ".tar.gz"))
(sha256
(base32 "0l2yz0yw9sil82lh2l4swkkldgmhzhv588n5lcavib4f0q2phahp"))))
(base32 "14gyqrbrq6jz4y6x59rdpv9d4c3pbn0vh1blq3iwrc6kz0x4ql35"))))
(build-system scons-build-system)
(native-inputs
`(("bc" ,bc)

View File

@ -57,14 +57,14 @@
(define-public igraph
(package
(name "igraph")
(version "0.8.1")
(version "0.8.2")
(source
(origin
(method url-fetch)
(uri (string-append "https://github.com/igraph/igraph/releases/"
"download/" version "/igraph-" version ".tar.gz"))
(sha256
(base32 "0wbvrac3ip3lqmbkckhnxa2swlbc86l1h8mazdlb618kx3winvi6"))))
(base32 "158flvl80qh1l1ikfa04p1dzh8kapsvm6q80x3ih5gwcgcg4g2ki"))))
(build-system gnu-build-system)
(arguments
`(#:configure-flags
@ -90,14 +90,13 @@ more.")
(define-public python-igraph
(package (inherit igraph)
(name "python-igraph")
(version "0.8.0")
(version "0.8.2")
(source
(origin
(method url-fetch)
(uri (pypi-uri "python-igraph" version))
(sha256
(base32
"13mbrlmnbgbzw6y8ws7wj0a3ly3in8j4l1ngi6yxvgvxxi4bprj7"))))
(base32 "0wkxrs28qdvnrz7d4jzcf2bh6v2yqzx3wyfziihfgsi2gn6n60a6"))))
(build-system python-build-system)
(arguments
'(#:configure-flags

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