Merge branch 'master' into staging
This commit is contained in:
commit
0747328e31
187
doc/guix.texi
187
doc/guix.texi
|
@ -159,7 +159,7 @@ System Installation
|
|||
* USB Stick and DVD Installation:: Preparing the installation medium.
|
||||
* Preparing for Installation:: Networking, partitioning, etc.
|
||||
* Proceeding with the Installation:: The real thing.
|
||||
* Installing GuixSD in a VM:: GuixSD playground.
|
||||
* Installing Guix in a VM:: Guix System playground.
|
||||
* Building the Installation Image:: How this comes to be.
|
||||
|
||||
Package Management
|
||||
|
@ -242,7 +242,7 @@ System Configuration
|
|||
* Initial RAM Disk:: Linux-Libre bootstrapping.
|
||||
* Bootloader Configuration:: Configuring the boot loader.
|
||||
* Invoking guix system:: Instantiating a system configuration.
|
||||
* Running GuixSD in a VM:: How to run GuixSD in a virtual machine.
|
||||
* Running Guix in a VM:: How to run Guix System in a virtual machine.
|
||||
* Defining Services:: Adding new service definitions.
|
||||
|
||||
Services
|
||||
|
@ -298,11 +298,16 @@ previous package set, to build packages from source, and generally
|
|||
assists with the creation and maintenance of software environments.
|
||||
|
||||
@cindex Guix System
|
||||
@cindex GuixSD
|
||||
@cindex GuixSD, now Guix System
|
||||
@cindex Guix System Distribution, now Guix System
|
||||
You can install GNU@tie{}Guix on top of an existing GNU/Linux system where it
|
||||
complements the available tools without interference (@pxref{Installation}),
|
||||
or you can use it as a standalone operating system distribution,
|
||||
@dfn{Guix@tie{}System} (@pxref{GNU Distribution}).
|
||||
@dfn{Guix@tie{}System}@footnote{We used to refer to Guix System as ``Guix
|
||||
System Distribution'' or ``GuixSD''. We now consider it makes more sense to
|
||||
group everything under the ``Guix'' banner since, after all, Guix System is
|
||||
readily available through the @command{guix system} command, even if you're
|
||||
using a different distro underneath!}. @xref{GNU Distribution}.
|
||||
|
||||
@node Managing Software the Guix Way
|
||||
@section Managing Software the Guix Way
|
||||
|
@ -362,7 +367,6 @@ garbage collection of packages (@pxref{Features}).
|
|||
@section GNU Distribution
|
||||
|
||||
@cindex Guix System
|
||||
@cindex GuixSD
|
||||
Guix comes with a distribution of the GNU system consisting entirely of
|
||||
free software@footnote{The term ``free'' here refers to the
|
||||
@url{http://www.gnu.org/philosophy/free-sw.html,freedom provided to
|
||||
|
@ -799,7 +803,7 @@ as well as version numbers of the dependencies (@pxref{Requirements}) in
|
|||
your message.
|
||||
|
||||
Guix also comes with a whole-system test suite that tests complete
|
||||
GuixSD operating system instances. It can only run on systems where
|
||||
Guix System instances. It can only run on systems where
|
||||
Guix is already installed, using:
|
||||
|
||||
@example
|
||||
|
@ -1177,8 +1181,8 @@ main node:
|
|||
Guix includes an SELinux policy file at @file{etc/guix-daemon.cil} that
|
||||
can be installed on a system where SELinux is enabled, in order to label
|
||||
Guix files and to specify the expected behavior of the daemon. Since
|
||||
GuixSD does not provide an SELinux base policy, the daemon policy cannot
|
||||
be used on GuixSD.
|
||||
Guix System does not provide an SELinux base policy, the daemon policy cannot
|
||||
be used on Guix System.
|
||||
|
||||
@subsubsection Installing the SELinux policy
|
||||
@cindex SELinux, policy installation
|
||||
|
@ -1526,14 +1530,14 @@ connections on the Unix-domain socket located at
|
|||
@section Application Setup
|
||||
|
||||
@cindex foreign distro
|
||||
When using Guix on top of GNU/Linux distribution other than GuixSD---a
|
||||
When using Guix on top of GNU/Linux distribution other than Guix System---a
|
||||
so-called @dfn{foreign distro}---a few additional steps are needed to
|
||||
get everything in place. Here are some of them.
|
||||
|
||||
@subsection Locales
|
||||
|
||||
@anchor{locales-and-locpath}
|
||||
@cindex locales, when not on GuixSD
|
||||
@cindex locales, when not on Guix System
|
||||
@vindex LOCPATH
|
||||
@vindex GUIX_LOCPATH
|
||||
Packages installed @i{via} Guix will not use the locale data of the
|
||||
|
@ -1719,16 +1723,11 @@ including GCC itself, the GNU C Library (headers and binaries, plus
|
|||
debugging symbols in the @code{debug} output), Binutils, and a linker
|
||||
wrapper.
|
||||
|
||||
@cindex attempt to use impure library, error message
|
||||
|
||||
The wrapper's purpose is to inspect the @code{-L} and @code{-l} switches
|
||||
passed to the linker, add corresponding @code{-rpath} arguments, and
|
||||
invoke the actual linker with this new set of arguments. By default,
|
||||
the linker wrapper refuses to link to libraries outside the store to
|
||||
ensure ``purity''. This can be annoying when using the toolchain to
|
||||
link with local libraries. To allow references to libraries outside the
|
||||
store you need to define the environment variable
|
||||
@code{GUIX_LD_WRAPPER_ALLOW_IMPURITIES}.
|
||||
invoke the actual linker with this new set of arguments. You can instruct the
|
||||
wrapper to refuse to link against libraries not in the store by setting the
|
||||
@code{GUIX_LD_WRAPPER_ALLOW_IMPURITIES} environment variable to @code{no}.
|
||||
|
||||
@c TODO What else?
|
||||
|
||||
|
@ -1736,10 +1735,10 @@ store you need to define the environment variable
|
|||
@node System Installation
|
||||
@chapter System Installation
|
||||
|
||||
@cindex installing GuixSD
|
||||
@cindex Guix System Distribution
|
||||
This section explains how to install the Guix System Distribution (GuixSD)
|
||||
on a machine. The Guix package manager can
|
||||
@cindex installing Guix System
|
||||
@cindex Guix System, installation
|
||||
This section explains how to install Guix System
|
||||
on a machine. Guix, as a package manager, can
|
||||
also be installed on top of a running GNU/Linux system,
|
||||
@pxref{Installation}.
|
||||
|
||||
|
@ -1763,20 +1762,20 @@ available.
|
|||
* USB Stick and DVD Installation:: Preparing the installation medium.
|
||||
* Preparing for Installation:: Networking, partitioning, etc.
|
||||
* Proceeding with the Installation:: The real thing.
|
||||
* Installing GuixSD in a VM:: GuixSD playground.
|
||||
* Installing Guix in a VM:: Guix System playground.
|
||||
* Building the Installation Image:: How this comes to be.
|
||||
@end menu
|
||||
|
||||
@node Limitations
|
||||
@section Limitations
|
||||
|
||||
As of version @value{VERSION}, the Guix System Distribution (GuixSD) is
|
||||
As of version @value{VERSION}, Guix System is
|
||||
not production-ready. It may contain bugs and lack important
|
||||
features. Thus, if you are looking for a stable production system that
|
||||
respects your freedom as a computer user, a good solution at this point
|
||||
is to consider @url{http://www.gnu.org/distros/free-distros.html, one of
|
||||
the more established GNU/Linux distributions}. We hope you can soon switch
|
||||
to the GuixSD without fear, of course. In the meantime, you can
|
||||
to the Guix System without fear, of course. In the meantime, you can
|
||||
also keep using your distribution and try out the package manager on top
|
||||
of it (@pxref{Installation}).
|
||||
|
||||
|
@ -1814,15 +1813,15 @@ to report issues (and success stories!), and to join us in improving it.
|
|||
@node Hardware Considerations
|
||||
@section Hardware Considerations
|
||||
|
||||
@cindex hardware support on GuixSD
|
||||
GNU@tie{}GuixSD focuses on respecting the user's computing freedom. It
|
||||
@cindex hardware support on Guix System
|
||||
GNU@tie{}Guix focuses on respecting the user's computing freedom. It
|
||||
builds around the kernel Linux-libre, which means that only hardware for
|
||||
which free software drivers and firmware exist is supported. Nowadays,
|
||||
a wide range of off-the-shelf hardware is supported on
|
||||
GNU/Linux-libre---from keyboards to graphics cards to scanners and
|
||||
Ethernet controllers. Unfortunately, there are still areas where
|
||||
hardware vendors deny users control over their own computing, and such
|
||||
hardware is not supported on GuixSD.
|
||||
hardware is not supported on Guix System.
|
||||
|
||||
@cindex WiFi, hardware support
|
||||
One of the main areas where free drivers or firmware are lacking is WiFi
|
||||
|
@ -1831,7 +1830,7 @@ devices. WiFi devices known to work include those using Atheros chips
|
|||
driver, and those using Broadcom/AirForce chips (BCM43xx with
|
||||
Wireless-Core Revision 5), which corresponds to the @code{b43-open}
|
||||
Linux-libre driver. Free firmware exists for both and is available
|
||||
out-of-the-box on GuixSD, as part of @var{%base-firmware}
|
||||
out-of-the-box on Guix System, as part of @var{%base-firmware}
|
||||
(@pxref{operating-system Reference, @code{firmware}}).
|
||||
|
||||
@cindex RYF, Respects Your Freedom
|
||||
|
@ -1941,8 +1940,8 @@ Once this is done, you should be able to reboot the system and boot from
|
|||
the USB stick or DVD. The latter usually requires you to get in the
|
||||
BIOS or UEFI boot menu, where you can choose to boot from the USB stick.
|
||||
|
||||
@xref{Installing GuixSD in a VM}, if, instead, you would like to install
|
||||
GuixSD in a virtual machine (VM).
|
||||
@xref{Installing Guix in a VM}, if, instead, you would like to install
|
||||
Guix System in a virtual machine (VM).
|
||||
|
||||
|
||||
@node Preparing for Installation
|
||||
|
@ -1952,7 +1951,7 @@ Once you have successfully booted your computer using the installation medium,
|
|||
you should end up with the welcome page of the graphical installer. The
|
||||
graphical installer is a text-based user interface built upon the newt
|
||||
library. It shall guide you through all the different steps needed to install
|
||||
GNU GuixSD. However, as the graphical installer is still under heavy
|
||||
GNU@tie{}Guix System. However, as the graphical installer is still under heavy
|
||||
development, you might want to fallback to the original, shell based install
|
||||
process, by switching to TTYs 3 to 6 with the shortcuts CTRL-ALT-F[3-6]. The
|
||||
following sections describe the installation procedure assuming you're using
|
||||
|
@ -1971,7 +1970,7 @@ dependencies of your system configuration can be downloaded. See the
|
|||
@end quotation
|
||||
|
||||
The installation system includes many common tools needed for this task.
|
||||
But it is also a full-blown GuixSD system, which means that you can
|
||||
But it is also a full-blown Guix System, which means that you can
|
||||
install additional packages, should you need it, using @command{guix
|
||||
package} (@pxref{Invoking guix package}).
|
||||
|
||||
|
@ -2126,7 +2125,7 @@ bootloaders.
|
|||
|
||||
Once you are done partitioning the target hard disk drive, you have to
|
||||
create a file system on the relevant partition(s)@footnote{Currently
|
||||
GuixSD only supports ext4 and btrfs file systems. In particular, code
|
||||
Guix System only supports ext4 and btrfs file systems. In particular, code
|
||||
that reads file system UUIDs and labels only works for these file system
|
||||
types.}. For the ESP, if you have one and assuming it is
|
||||
@file{/dev/sda1}, run:
|
||||
|
@ -2289,34 +2288,47 @@ initialized by running the @command{passwd} command as @code{root},
|
|||
unless your configuration specifies otherwise
|
||||
(@pxref{user-account-password, user account passwords}).
|
||||
|
||||
@cindex upgrading GuixSD
|
||||
From then on, you can update GuixSD whenever you want by running @command{guix
|
||||
pull} as @code{root} (@pxref{Invoking guix pull}), and then running
|
||||
@command{guix system reconfigure /etc/config.scm}, as @code{root} too, to
|
||||
build a new system generation with the latest packages and services
|
||||
@cindex upgrading Guix System
|
||||
From then on, you can update the system whenever you want by running, say:
|
||||
|
||||
@example
|
||||
guix pull
|
||||
sudo guix system reconfigure /etc/config.scm
|
||||
@end example
|
||||
|
||||
@noindent
|
||||
This builds a new system generation with the latest packages and services
|
||||
(@pxref{Invoking guix system}). We recommend doing that regularly so that
|
||||
your system includes the latest security updates (@pxref{Security Updates}).
|
||||
|
||||
@c See <https://lists.gnu.org/archive/html/guix-devel/2019-01/msg00268.html>.
|
||||
@quotation Note
|
||||
@cindex sudo vs. @command{guix pull}
|
||||
Note that @command{sudo guix} runs your user's @command{guix} command and
|
||||
@emph{not} root's, because @command{sudo} leaves @code{PATH} unchanged. To
|
||||
explicitly run root's @command{guix}, type @command{sudo -i guix @dots{}}.
|
||||
@end quotation
|
||||
|
||||
Join us on @code{#guix} on the Freenode IRC network or on
|
||||
@email{guix-devel@@gnu.org} to share your experience---good or not so
|
||||
good.
|
||||
|
||||
@node Installing GuixSD in a VM
|
||||
@section Installing GuixSD in a Virtual Machine
|
||||
@node Installing Guix in a VM
|
||||
@section Installing Guix in a Virtual Machine
|
||||
|
||||
@cindex virtual machine, GuixSD installation
|
||||
@cindex virtual machine, Guix System installation
|
||||
@cindex virtual private server (VPS)
|
||||
@cindex VPS (virtual private server)
|
||||
If you'd like to install GuixSD in a virtual machine (VM) or on a
|
||||
If you'd like to install Guix System in a virtual machine (VM) or on a
|
||||
virtual private server (VPS) rather than on your beloved machine, this
|
||||
section is for you.
|
||||
|
||||
To boot a @uref{http://qemu.org/,QEMU} VM for installing GuixSD in a
|
||||
To boot a @uref{http://qemu.org/,QEMU} VM for installing Guix System in a
|
||||
disk image, follow these steps:
|
||||
|
||||
@enumerate
|
||||
@item
|
||||
First, retrieve and decompress the GuixSD installation image as
|
||||
First, retrieve and decompress the Guix system installation image as
|
||||
described previously (@pxref{USB Stick and DVD Installation}).
|
||||
|
||||
@item
|
||||
|
@ -2352,7 +2364,7 @@ You're now root in the VM, proceed with the installation process.
|
|||
@end enumerate
|
||||
|
||||
Once installation is complete, you can boot the system that's on your
|
||||
@file{guixsd.img} image. @xref{Running GuixSD in a VM}, for how to do
|
||||
@file{guixsd.img} image. @xref{Running Guix in a VM}, for how to do
|
||||
that.
|
||||
|
||||
@node Building the Installation Image
|
||||
|
@ -2458,7 +2470,7 @@ In addition, any package transaction may be @emph{rolled back}. So, if,
|
|||
for example, an upgrade installs a new version of a package that turns
|
||||
out to have a serious bug, users may roll back to the previous instance
|
||||
of their profile, which was known to work well. Similarly, the global
|
||||
system configuration on GuixSD is subject to
|
||||
system configuration on Guix is subject to
|
||||
transactional upgrades and roll-back
|
||||
(@pxref{Using the Configuration System}).
|
||||
|
||||
|
@ -3308,8 +3320,8 @@ guix gc -F 5G
|
|||
@end example
|
||||
|
||||
It is perfectly safe to run as a non-interactive periodic job
|
||||
(@pxref{Scheduled Job Execution}, for how to set up such a job on
|
||||
GuixSD). Running @command{guix gc} with no arguments will collect as
|
||||
(@pxref{Scheduled Job Execution}, for how to set up such a job).
|
||||
Running @command{guix gc} with no arguments will collect as
|
||||
much garbage as it can, but that is often inconvenient: you may find
|
||||
yourself having to rebuild or re-download software that is ``dead'' from
|
||||
the GC viewpoint but that is necessary to build other pieces of
|
||||
|
@ -8973,7 +8985,7 @@ guix environment guix --ad-hoc git strace
|
|||
|
||||
Sometimes it is desirable to isolate the environment as much as
|
||||
possible, for maximal purity and reproducibility. In particular, when
|
||||
using Guix on a host distro that is not GuixSD, it is desirable to
|
||||
using Guix on a host distro that is not Guix System, it is desirable to
|
||||
prevent access to @file{/usr/bin} and other system-wide resources from
|
||||
the development environment. For example, the following command spawns
|
||||
a Guile REPL in a ``container'' where only the store and the current
|
||||
|
@ -9026,7 +9038,7 @@ Running:
|
|||
guix environment --ad-hoc -e '(@@ (gnu) %base-packages)'
|
||||
@end example
|
||||
|
||||
starts a shell with all the GuixSD base packages available.
|
||||
starts a shell with all the base system packages available.
|
||||
|
||||
The above commands only use the default output of the given packages.
|
||||
To select other outputs, two element tuples can be specified:
|
||||
|
@ -9375,7 +9387,7 @@ Reference Manual}) on @var{port} (37146 by default). This is used
|
|||
primarily for debugging a running @command{guix publish} server.
|
||||
@end table
|
||||
|
||||
Enabling @command{guix publish} on a GuixSD system is a one-liner: just
|
||||
Enabling @command{guix publish} on Guix System is a one-liner: just
|
||||
instantiate a @code{guix-publish-service-type} service in the @code{services} field
|
||||
of the @code{operating-system} declaration (@pxref{guix-publish-service-type,
|
||||
@code{guix-publish-service-type}}).
|
||||
|
@ -9649,7 +9661,7 @@ system of the container. @var{arguments} are the additional options that
|
|||
will be passed to @var{program}.
|
||||
|
||||
The following command launches an interactive login shell inside a
|
||||
GuixSD container, started by @command{guix system container}, and whose
|
||||
Guix system container, started by @command{guix system container}, and whose
|
||||
process ID is 9001:
|
||||
|
||||
@example
|
||||
|
@ -9868,7 +9880,7 @@ instance to support new system services.
|
|||
* Initial RAM Disk:: Linux-Libre bootstrapping.
|
||||
* Bootloader Configuration:: Configuring the boot loader.
|
||||
* Invoking guix system:: Instantiating a system configuration.
|
||||
* Running GuixSD in a VM:: How to run GuixSD in a virtual machine.
|
||||
* Running Guix in a VM:: How to run Guix System in a virtual machine.
|
||||
* Defining Services:: Adding new service definitions.
|
||||
@end menu
|
||||
|
||||
|
@ -10105,7 +10117,7 @@ instantiate @var{os}.
|
|||
|
||||
This procedure is provided by the @code{(gnu system)} module. Along
|
||||
with @code{(gnu services)} (@pxref{Services}), this module contains the
|
||||
guts of GuixSD. Make sure to visit it!
|
||||
guts of Guix System. Make sure to visit it!
|
||||
|
||||
|
||||
@node operating-system Reference
|
||||
|
@ -10794,7 +10806,7 @@ all, of the locale data from libc 2.21 (specifically, @code{LC_COLLATE}
|
|||
data is incompatible); thus calls to @code{setlocale} may fail, but
|
||||
programs will not abort.
|
||||
|
||||
The ``problem'' in GuixSD is that users have a lot of freedom: They can
|
||||
The ``problem'' with Guix is that users have a lot of freedom: They can
|
||||
choose whether and when to upgrade software in their profiles, and might
|
||||
be using a libc version different from the one the system administrator
|
||||
used to build the system-wide locale data.
|
||||
|
@ -10833,7 +10845,7 @@ Configuration System}). System services are typically daemons launched
|
|||
when the system boots, or other actions needed at that time---e.g.,
|
||||
configuring network access.
|
||||
|
||||
GuixSD has a broad definition of ``service'' (@pxref{Service
|
||||
Guix has a broad definition of ``service'' (@pxref{Service
|
||||
Composition}), but many services are managed by the GNU@tie{}Shepherd
|
||||
(@pxref{Shepherd Services}). On a running system, the @command{herd}
|
||||
command allows you to list the available services, show their status,
|
||||
|
@ -13154,7 +13166,7 @@ makes the good ol' XlockMore usable.
|
|||
|
||||
@cindex printer support with CUPS
|
||||
The @code{(gnu services cups)} module provides a Guix service definition
|
||||
for the CUPS printing service. To add printer support to a GuixSD
|
||||
for the CUPS printing service. To add printer support to a Guix
|
||||
system, add a @code{cups-service} to the operating system definition:
|
||||
|
||||
@deffn {Scheme Variable} cups-service-type
|
||||
|
@ -15883,7 +15895,7 @@ Defaults to @samp{""}.
|
|||
|
||||
|
||||
Whew! Lots of configuration options. The nice thing about it though is
|
||||
that GuixSD has a complete interface to Dovecot's configuration
|
||||
that Guix has a complete interface to Dovecot's configuration
|
||||
language. This allows not only a nice way to declare configurations,
|
||||
but also offers reflective capabilities as well: users can write code to
|
||||
inspect and transform configurations from within Scheme.
|
||||
|
@ -16274,7 +16286,7 @@ Defaults to @samp{"internal_plain"}.
|
|||
|
||||
@deftypevr {@code{prosody-configuration} parameter} maybe-string log
|
||||
Set logging options. Advanced logging configuration is not yet supported
|
||||
by the GuixSD Prosody Service. See @url{https://prosody.im/doc/logging}.
|
||||
by the Guix Prosody Service. See @url{https://prosody.im/doc/logging}.
|
||||
Defaults to @samp{"*syslog"}.
|
||||
@end deftypevr
|
||||
|
||||
|
@ -16529,7 +16541,7 @@ look like this:
|
|||
(service murmur-service-type
|
||||
(murmur-configuration
|
||||
(welcome-text
|
||||
"Welcome to this Mumble server running on GuixSD!")
|
||||
"Welcome to this Mumble server running on Guix!")
|
||||
(cert-required? #t) ;disallow text password logins
|
||||
(ssl-cert "/etc/letsencrypt/live/mumble.example.com/fullchain.pem")
|
||||
(ssl-key "/etc/letsencrypt/live/mumble.example.com/privkey.pem")))
|
||||
|
@ -22352,9 +22364,9 @@ However, most other programs that can talk HTTPS---@command{wget},
|
|||
certificates can be found.
|
||||
|
||||
@cindex @code{nss-certs}
|
||||
In GuixSD, this is done by adding a package that provides certificates
|
||||
In Guix, this is done by adding a package that provides certificates
|
||||
to the @code{packages} field of the @code{operating-system} declaration
|
||||
(@pxref{operating-system Reference}). GuixSD includes one such package,
|
||||
(@pxref{operating-system Reference}). Guix includes one such package,
|
||||
@code{nss-certs}, which is a set of CA certificates provided as part of
|
||||
Mozilla's Network Security Services.
|
||||
|
||||
|
@ -22603,7 +22615,7 @@ honors several options passed on the Linux kernel command line
|
|||
Tell the initial RAM disk to load @var{boot}, a file containing a Scheme
|
||||
program, once it has mounted the root file system.
|
||||
|
||||
GuixSD uses this option to yield control to a boot program that runs the
|
||||
Guix uses this option to yield control to a boot program that runs the
|
||||
service activation programs and then spawns the GNU@tie{}Shepherd, the
|
||||
initialization system.
|
||||
|
||||
|
@ -22932,7 +22944,7 @@ As for @command{guix package --search}, the result is written in
|
|||
Build the operating system described in @var{file}, activate it, and
|
||||
switch to it@footnote{This action (and the related actions
|
||||
@code{switch-generation} and @code{roll-back}) are usable only on
|
||||
systems already running GuixSD.}.
|
||||
systems already running Guix System.}.
|
||||
|
||||
This effects all the configuration specified in @var{file}: user
|
||||
accounts, system services, global package list, setuid programs, etc.
|
||||
|
@ -23022,7 +23034,7 @@ This action does not actually install anything.
|
|||
@item init
|
||||
Populate the given directory with all the files necessary to run the
|
||||
operating system specified in @var{file}. This is useful for first-time
|
||||
installations of GuixSD. For instance:
|
||||
installations of Guix System. For instance:
|
||||
|
||||
@example
|
||||
guix system init my-os-config.scm /mnt
|
||||
|
@ -23044,6 +23056,16 @@ passed.
|
|||
@anchor{guix system vm}
|
||||
Build a virtual machine that contains the operating system declared in
|
||||
@var{file}, and return a script to run that virtual machine (VM).
|
||||
|
||||
@quotation Note
|
||||
The @code{vm} action and others below
|
||||
can use KVM support in the Linux-libre kernel. Specifically, if the
|
||||
machine has hardware virtualization support, the corresponding
|
||||
KVM kernel module should be loaded, and the @file{/dev/kvm} device node
|
||||
must exist and be readable and writable by the user and by the
|
||||
build users of the daemon (@pxref{Build Environment Setup}).
|
||||
@end quotation
|
||||
|
||||
Arguments given to the script are passed to QEMU as in the example
|
||||
below, which enables networking and requests 1@tie{}GiB of RAM for the
|
||||
emulated machine:
|
||||
|
@ -23095,7 +23117,7 @@ You can specify the root file system type by using the
|
|||
@option{--file-system-type} option. It defaults to @code{ext4}.
|
||||
|
||||
When using @code{vm-image}, the returned image is in qcow2 format, which
|
||||
the QEMU emulator can efficiently use. @xref{Running GuixSD in a VM},
|
||||
the QEMU emulator can efficiently use. @xref{Running Guix in a VM},
|
||||
for more information on how to run the image in a virtual machine.
|
||||
|
||||
When using @code{disk-image}, a raw disk image is produced; it can be
|
||||
|
@ -23121,7 +23143,7 @@ docker run -e GUIX_NEW_SYSTEM=/var/guix/profiles/system \\
|
|||
@end example
|
||||
|
||||
This command starts a new Docker container from the specified image. It
|
||||
will boot the GuixSD system in the usual manner, which means it will
|
||||
will boot the Guix system in the usual manner, which means it will
|
||||
start any services you have defined in the operating system
|
||||
configuration. Depending on what you run in the Docker container, it
|
||||
may be necessary to give the container additional permissions. For
|
||||
|
@ -23166,7 +23188,7 @@ following:
|
|||
Consider the operating-system @var{expr} evaluates to.
|
||||
This is an alternative to specifying a file which evaluates to an
|
||||
operating system.
|
||||
This is used to generate the GuixSD installer @pxref{Building the
|
||||
This is used to generate the Guix system installer @pxref{Building the
|
||||
Installation Image}).
|
||||
|
||||
@item --system=@var{system}
|
||||
|
@ -23240,17 +23262,8 @@ a list of available debugging commands.
|
|||
@end table
|
||||
@end table
|
||||
|
||||
@quotation Note
|
||||
All the actions above, except @code{build} and @code{init},
|
||||
can use KVM support in the Linux-libre kernel. Specifically, if the
|
||||
machine has hardware virtualization support, the corresponding
|
||||
KVM kernel module should be loaded, and the @file{/dev/kvm} device node
|
||||
must exist and be readable and writable by the user and by the
|
||||
build users of the daemon (@pxref{Build Environment Setup}).
|
||||
@end quotation
|
||||
|
||||
Once you have built, configured, re-configured, and re-re-configured
|
||||
your GuixSD installation, you may find it useful to list the operating
|
||||
your Guix installation, you may find it useful to list the operating
|
||||
system generations available on disk---and that you can choose from the
|
||||
bootloader boot menu:
|
||||
|
||||
|
@ -23303,12 +23316,12 @@ example graph.
|
|||
|
||||
@end table
|
||||
|
||||
@node Running GuixSD in a VM
|
||||
@section Running GuixSD in a Virtual Machine
|
||||
@node Running Guix in a VM
|
||||
@section Running Guix in a Virtual Machine
|
||||
|
||||
@cindex virtual machine
|
||||
To run GuixSD in a virtual machine (VM), one can either use the
|
||||
pre-built GuixSD VM image distributed at
|
||||
To run Guix in a virtual machine (VM), one can either use the
|
||||
pre-built Guix VM image distributed at
|
||||
@indicateurl{https://alpha.gnu.org/gnu/guix/guixsd-vm-image-@value{VERSION}.@var{system}.xz}
|
||||
, or build their own virtual machine image using @command{guix system
|
||||
vm-image} (@pxref{Invoking guix system}). The returned image is in
|
||||
|
@ -23447,8 +23460,8 @@ daemon; the @file{/etc} service populates the @file{/etc} directory
|
|||
of the system.
|
||||
|
||||
@cindex service extensions
|
||||
GuixSD services are connected by @dfn{extensions}. For instance, the
|
||||
secure shell service @emph{extends} the Shepherd---the GuixSD
|
||||
Guix system services are connected by @dfn{extensions}. For instance, the
|
||||
secure shell service @emph{extends} the Shepherd---the
|
||||
initialization system, running as PID@tie{}1---by giving it the command
|
||||
lines to start and stop the secure shell daemon (@pxref{Networking
|
||||
Services, @code{lsh-service}}); the UPower service extends the D-Bus
|
||||
|
@ -23853,7 +23866,7 @@ extend it by passing it lists of packages to add to the system profile.
|
|||
@cindex PID 1
|
||||
@cindex init system
|
||||
The @code{(gnu services shepherd)} module provides a way to define
|
||||
services managed by the GNU@tie{}Shepherd, which is the GuixSD
|
||||
services managed by the GNU@tie{}Shepherd, which is the
|
||||
initialization system---the first process that is started when the
|
||||
system boots, also known as PID@tie{}1
|
||||
(@pxref{Introduction,,, shepherd, The GNU Shepherd Manual}).
|
||||
|
@ -24226,7 +24239,7 @@ guix gc -R `readlink -f ~/.guix-profile` | grep bash
|
|||
|
||||
@noindent
|
||||
@dots{} and compare the store file names that you get with those above.
|
||||
Likewise for a complete GuixSD system generation:
|
||||
Likewise for a complete Guix system generation:
|
||||
|
||||
@example
|
||||
guix gc -R `guix system build my-config.scm` | grep bash
|
||||
|
|
|
@ -33,6 +33,7 @@
|
|||
ensure-dot-ko
|
||||
module-aliases
|
||||
module-dependencies
|
||||
module-soft-dependencies
|
||||
normalize-module-name
|
||||
file-name->module-name
|
||||
find-module-file
|
||||
|
@ -100,6 +101,33 @@ contains module names, not actual file names."
|
|||
(('depends . what)
|
||||
(string-tokenize what %not-comma)))))
|
||||
|
||||
(define not-softdep-whitespace
|
||||
(char-set-complement (char-set #\space #\tab)))
|
||||
|
||||
(define (module-soft-dependencies file)
|
||||
"Return a list of (cons section soft-dependency) of module FILE."
|
||||
;; TEXT: "pre: baz blubb foo post: bax bar"
|
||||
(define (parse-softdep text)
|
||||
(let loop ((value '())
|
||||
(tokens (string-tokenize text not-softdep-whitespace))
|
||||
(section #f))
|
||||
(match tokens
|
||||
((token rest ...)
|
||||
(if (string=? (string-take-right token 1) ":") ; section
|
||||
(loop value rest (string-trim-both (string-drop-right token 1)))
|
||||
(loop (cons (cons section token) value) rest section)))
|
||||
(()
|
||||
value))))
|
||||
|
||||
;; Note: Multiple 'softdep sections are allowed.
|
||||
(let ((info (modinfo-section-contents file)))
|
||||
(concatenate
|
||||
(filter-map (match-lambda
|
||||
(('softdep . value)
|
||||
(parse-softdep value))
|
||||
(_ #f))
|
||||
(modinfo-section-contents file)))))
|
||||
|
||||
(define (module-aliases file)
|
||||
"Return the list of aliases of module FILE."
|
||||
(let ((info (modinfo-section-contents file)))
|
||||
|
|
|
@ -31,6 +31,7 @@
|
|||
#:use-module (gnu packages cryptsetup)
|
||||
#:use-module (gnu packages disk)
|
||||
#:use-module (gnu packages guile)
|
||||
#:use-module (gnu packages guile-xyz)
|
||||
#:autoload (gnu packages gnupg) (guile-gcrypt)
|
||||
#:use-module (gnu packages iso-codes)
|
||||
#:use-module (gnu packages linux)
|
||||
|
|
22
gnu/local.mk
22
gnu/local.mk
|
@ -1,13 +1,13 @@
|
|||
# GNU Guix --- Functional package management for GNU
|
||||
# Copyright © 2012, 2013, 2014, 2015, 2016, 2017, 2018, 2019 Ludovic Courtès <ludo@gnu.org>
|
||||
# Copyright © 2013, 2014, 2015, 2016, 2017, 2018 Andreas Enge <andreas@enge.fr>
|
||||
# Copyright © 2013, 2014, 2015, 2016, 2017, 2018, 2019 Andreas Enge <andreas@enge.fr>
|
||||
# Copyright © 2016 Mathieu Lirzin <mthl@gnu.org>
|
||||
# Copyright © 2013, 2014, 2015, 2016, 2017, 2018 Mark H Weaver <mhw@netris.org>
|
||||
# Copyright © 2013, 2014, 2015, 2016, 2017, 2018, 2019 Mark H Weaver <mhw@netris.org>
|
||||
# Copyright © 2016 Chris Marusich <cmmarusich@gmail.com>
|
||||
# Copyright © 2016, 2017, 2018 Kei Kebreau <kkebreau@posteo.net>
|
||||
# Copyright © 2016, 2017 Rene Saavedra <rennes@openmailbox.org>
|
||||
# Copyright © 2016 Adonay "adfeno" Felipe Nogueira <https://libreplanet.org/wiki/User:Adfeno> <adfeno@openmailbox.org>
|
||||
# Copyright © 2016, 2017, 2018 Ricardo Wurmus <rekado@elephly.net>
|
||||
# Copyright © 2016, 2017, 2018, 2019 Ricardo Wurmus <rekado@elephly.net>
|
||||
# Copyright © 2016 Ben Woodcroft <donttrustben@gmail.com>
|
||||
# Copyright © 2016, 2017, 2018, 2019 Alex Vong <alexvong1995@gmail.com>
|
||||
# Copyright © 2016, 2017 Efraim Flashner <efraim@flashner.co.il>
|
||||
|
@ -220,6 +220,7 @@ GNU_SYSTEM_MODULES = \
|
|||
%D%/packages/gtk.scm \
|
||||
%D%/packages/guile.scm \
|
||||
%D%/packages/guile-wm.scm \
|
||||
%D%/packages/guile-xyz.scm \
|
||||
%D%/packages/gv.scm \
|
||||
%D%/packages/gxmessage.scm \
|
||||
%D%/packages/hardware.scm \
|
||||
|
@ -394,6 +395,7 @@ GNU_SYSTEM_MODULES = \
|
|||
%D%/packages/rush.scm \
|
||||
%D%/packages/rust.scm \
|
||||
%D%/packages/samba.scm \
|
||||
%D%/packages/sagemath.scm \
|
||||
%D%/packages/sawfish.scm \
|
||||
%D%/packages/scanner.scm \
|
||||
%D%/packages/scheme.scm \
|
||||
|
@ -595,6 +597,7 @@ GNU_SYSTEM_MODULES += \
|
|||
%D%/installer/newt/partition.scm \
|
||||
%D%/installer/newt/services.scm \
|
||||
%D%/installer/newt/timezone.scm \
|
||||
%D%/installer/newt/user.scm \
|
||||
%D%/installer/newt/utils.scm \
|
||||
%D%/installer/newt/welcome.scm \
|
||||
%D%/installer/newt/wifi.scm
|
||||
|
@ -691,6 +694,8 @@ dist_patch_DATA = \
|
|||
%D%/packages/patches/clucene-pkgconfig.patch \
|
||||
%D%/packages/patches/clx-remove-demo.patch \
|
||||
%D%/packages/patches/coda-use-system-libs.patch \
|
||||
%D%/packages/patches/combinatorial-blas-awpm.patch \
|
||||
%D%/packages/patches/combinatorial-blas-io-fix.patch \
|
||||
%D%/packages/patches/cool-retro-term-dont-check-uninit-member.patch \
|
||||
%D%/packages/patches/cool-retro-term-fix-array-size.patch \
|
||||
%D%/packages/patches/cool-retro-term-memory-leak-1.patch \
|
||||
|
@ -879,6 +884,7 @@ dist_patch_DATA = \
|
|||
%D%/packages/patches/hurd-fix-eth-multiplexer-dependency.patch \
|
||||
%D%/packages/patches/hplip-remove-imageprocessor.patch \
|
||||
%D%/packages/patches/hydra-disable-darcs-test.patch \
|
||||
%D%/packages/patches/icecat-makeicecat.patch \
|
||||
%D%/packages/patches/icecat-avoid-bundled-libraries.patch \
|
||||
%D%/packages/patches/icecat-use-system-graphite2+harfbuzz.patch \
|
||||
%D%/packages/patches/icecat-use-system-media-libs.patch \
|
||||
|
@ -995,6 +1001,7 @@ dist_patch_DATA = \
|
|||
%D%/packages/patches/lierolibre-newer-libconfig.patch \
|
||||
%D%/packages/patches/lierolibre-remove-arch-warning.patch \
|
||||
%D%/packages/patches/lierolibre-try-building-other-arch.patch \
|
||||
%D%/packages/patches/linkchecker-mark-more-tests-that-require-the-network.patch \
|
||||
%D%/packages/patches/linux-pam-no-setfsuid.patch \
|
||||
%D%/packages/patches/lirc-localstatedir.patch \
|
||||
%D%/packages/patches/lirc-reproducible-build.patch \
|
||||
|
@ -1090,6 +1097,7 @@ dist_patch_DATA = \
|
|||
%D%/packages/patches/osip-CVE-2017-7853.patch \
|
||||
%D%/packages/patches/ots-no-include-missing-file.patch \
|
||||
%D%/packages/patches/owncloud-disable-updatecheck.patch \
|
||||
%D%/packages/patches/p11-kit-jks-timestamps.patch \
|
||||
%D%/packages/patches/p7zip-CVE-2016-9296.patch \
|
||||
%D%/packages/patches/p7zip-CVE-2017-17969.patch \
|
||||
%D%/packages/patches/p7zip-remove-unused-code.patch \
|
||||
|
@ -1174,6 +1182,8 @@ dist_patch_DATA = \
|
|||
%D%/packages/patches/python-unittest2-remove-argparse.patch \
|
||||
%D%/packages/patches/python-waitress-fix-tests.patch \
|
||||
%D%/packages/patches/qemu-glibc-2.27.patch \
|
||||
%D%/packages/patches/qemu-CVE-2018-16872.patch \
|
||||
%D%/packages/patches/qemu-CVE-2019-6778.patch \
|
||||
%D%/packages/patches/qt4-ldflags.patch \
|
||||
%D%/packages/patches/qtbase-use-TZDIR.patch \
|
||||
%D%/packages/patches/qtscript-disable-tests.patch \
|
||||
|
@ -1210,10 +1220,8 @@ dist_patch_DATA = \
|
|||
%D%/packages/patches/rust-reproducible-builds.patch \
|
||||
%D%/packages/patches/rxvt-unicode-escape-sequences.patch \
|
||||
%D%/packages/patches/scheme48-tests.patch \
|
||||
%D%/packages/patches/scotch-test-threading.patch \
|
||||
%D%/packages/patches/scotch-build-parallelism.patch \
|
||||
%D%/packages/patches/scotch-graph-diam-64.patch \
|
||||
%D%/packages/patches/scotch-graph-induce-type-64.patch \
|
||||
%D%/packages/patches/scotch-integer-declarations.patch \
|
||||
%D%/packages/patches/scribus-poppler.patch \
|
||||
%D%/packages/patches/sdl-libx11-1.6.patch \
|
||||
%D%/packages/patches/seq24-rename-mutex.patch \
|
||||
|
@ -1232,6 +1240,7 @@ dist_patch_DATA = \
|
|||
%D%/packages/patches/sssd-curl-compat.patch \
|
||||
%D%/packages/patches/steghide-fixes.patch \
|
||||
%D%/packages/patches/streamlink-update-test.patch \
|
||||
%D%/packages/patches/superlu-dist-awpm-grid.patch \
|
||||
%D%/packages/patches/superlu-dist-scotchmetis.patch \
|
||||
%D%/packages/patches/swig-guile-gc.patch \
|
||||
%D%/packages/patches/swish-e-search.patch \
|
||||
|
@ -1327,7 +1336,6 @@ dist_patch_DATA = \
|
|||
%D%/packages/patches/wpa-supplicant-fix-nonce-reuse.patch \
|
||||
%D%/packages/patches/wpa-supplicant-krack-followups.patch \
|
||||
%D%/packages/patches/x265-arm-flags.patch \
|
||||
%D%/packages/patches/x265-detect512-all-arches.patch \
|
||||
%D%/packages/patches/xboing-CVE-2004-0149.patch \
|
||||
%D%/packages/patches/xf86-video-ark-remove-mibstore.patch \
|
||||
%D%/packages/patches/xf86-video-geode-glibc-2.20.patch \
|
||||
|
|
|
@ -1569,9 +1569,7 @@ specified directories.")
|
|||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
"https://pypi.python.org/packages/source/g/graphios/graphios-"
|
||||
version ".tar.gz"))
|
||||
(uri (pypi-uri "graphios" version))
|
||||
(sha256
|
||||
(base32
|
||||
"1h87hvc315wg6lklbf4l7csd3n5pgljwrfli1p3nasdi0izgn66i"))))
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
;;; GNU Guix --- Functional package management for GNU
|
||||
;;; Copyright © 2015, 2016, 2017, 2018 Ricardo Wurmus <rekado@elephly.net>
|
||||
;;; Copyright © 2015, 2016, 2017, 2018, 2019 Ricardo Wurmus <rekado@elephly.net>
|
||||
;;; Copyright © 2015 Taylan Ulrich Bayırlı/Kammer <taylanbayirli@gmail.com>
|
||||
;;; Copyright © 2015 Andreas Enge <andreas@enge.fr>
|
||||
;;; Copyright © 2015 Alex Kost <alezost@gmail.com>
|
||||
|
@ -1805,11 +1805,7 @@ implementation of the Open Sound Control (@dfn{OSC}) protocol.")
|
|||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri
|
||||
(string-append
|
||||
"https://pypi.python.org/packages/ab/42/"
|
||||
"b4f04721c5c5bfc196ce156b3c768998ef8c0ae3654ed29ea5020c749a6b"
|
||||
"/PyAudio-" version ".tar.gz"))
|
||||
(uri (pypi-uri "PyAudio" version))
|
||||
(sha256
|
||||
(base32
|
||||
"0x7vdsigm7xgvyg3shd3lj113m8zqj2pxmrgdyj66kmnw0qdxgwk"))))
|
||||
|
@ -2213,7 +2209,7 @@ background file post-processing.")
|
|||
(define-public supercollider
|
||||
(package
|
||||
(name "supercollider")
|
||||
(version "3.10.0")
|
||||
(version "3.10.1")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
|
@ -2222,7 +2218,7 @@ background file post-processing.")
|
|||
"/SuperCollider-" version "-Source-linux.tar.bz2"))
|
||||
(sha256
|
||||
(base32
|
||||
"16j9psa32czx1p1y2vvq0qf2ib0ngrfc604vx35n2b4llyika84v"))))
|
||||
"1yszs9j3sjk8hb8xxz30z3nd4j899ymb9mw9y1v26ikd603d1iig"))))
|
||||
(build-system cmake-build-system)
|
||||
(arguments
|
||||
`(#:configure-flags '("-DSYSTEM_BOOST=on" "-DSYSTEM_YAMLCPP=on"
|
||||
|
|
|
@ -638,9 +638,7 @@ to not fully trusted targets. Borg is a fork of Attic.")
|
|||
(version "0.16")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
"https://pypi.python.org/packages/source/A/Attic/Attic-"
|
||||
version ".tar.gz"))
|
||||
(uri (pypi-uri "Attic" version))
|
||||
(sha256
|
||||
(base32
|
||||
"0b5skd36r4c0915lwpkqg5hxm49gls9pprs1b7hc40910wlcsl36"))))
|
||||
|
|
|
@ -72,6 +72,7 @@
|
|||
#:use-module (gnu packages graph)
|
||||
#:use-module (gnu packages groff)
|
||||
#:use-module (gnu packages guile)
|
||||
#:use-module (gnu packages guile-xyz)
|
||||
#:use-module (gnu packages haskell)
|
||||
#:use-module (gnu packages haskell-check)
|
||||
#:use-module (gnu packages haskell-web)
|
||||
|
@ -4503,9 +4504,7 @@ files and writing bioinformatics applications.")
|
|||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
"https://pypi.python.org/packages/source/W/WarpedLMM/WarpedLMM-"
|
||||
version ".zip"))
|
||||
(uri (pypi-uri "WarpedLMM" version ".zip"))
|
||||
(sha256
|
||||
(base32
|
||||
"1agfz6zqa8nc6cw47yh0s3y14gkpa9wqazwcj7mwwj3ffnw39p3j"))))
|
||||
|
@ -6021,7 +6020,7 @@ application of SortMeRNA is filtering rRNA from metatranscriptomic data.")
|
|||
(define-public star
|
||||
(package
|
||||
(name "star")
|
||||
(version "2.6.0c")
|
||||
(version "2.7.0a")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
|
@ -6030,7 +6029,7 @@ application of SortMeRNA is filtering rRNA from metatranscriptomic data.")
|
|||
(file-name (string-append name "-" version "-checkout"))
|
||||
(sha256
|
||||
(base32
|
||||
"04cj6jw8d9q6lk9c78wa4fky6jdlicf1d13plq7182h8vqiz8p59"))
|
||||
"1yx28gra6gqdx1ps5y8mpdinsn8r0dhsc2m3gcvjfrk71i9yhd6l"))
|
||||
(modules '((guix build utils)))
|
||||
(snippet
|
||||
'(begin
|
||||
|
@ -7183,14 +7182,14 @@ checks on R packages that are to be submitted to the Bioconductor repository.")
|
|||
(define-public r-optparse
|
||||
(package
|
||||
(name "r-optparse")
|
||||
(version "1.6.0")
|
||||
(version "1.6.1")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (cran-uri "optparse" version))
|
||||
(sha256
|
||||
(base32
|
||||
"1d7v5gl45x4amsfmzn5zyyffyqlc7a82h01szlnda22viyxids0h"))))
|
||||
"04vyb6dhcga30mvghsg1p052jmf69xqxkvh3hzqz7dscyppy76w1"))))
|
||||
(build-system r-build-system)
|
||||
(propagated-inputs
|
||||
`(("r-getopt" ,r-getopt)))
|
||||
|
@ -7388,13 +7387,13 @@ CAGE.")
|
|||
(define-public r-variantannotation
|
||||
(package
|
||||
(name "r-variantannotation")
|
||||
(version "1.28.8")
|
||||
(version "1.28.10")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (bioconductor-uri "VariantAnnotation" version))
|
||||
(sha256
|
||||
(base32
|
||||
"0gf36lr9xy3zmcc4rxs5bi2ccrrc7b6wqp6p3cvnclgif4i0l66k"))))
|
||||
"0kxf583cgkdz1shi85r0mpnfxmzi7s5f6srd1czbdl2iibvrm8jn"))))
|
||||
(properties
|
||||
`((upstream-name . "VariantAnnotation")))
|
||||
(inputs
|
||||
|
@ -7829,13 +7828,13 @@ as well as query and modify the browser state, such as the current viewport.")
|
|||
(define-public r-genomicfeatures
|
||||
(package
|
||||
(name "r-genomicfeatures")
|
||||
(version "1.34.1")
|
||||
(version "1.34.2")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (bioconductor-uri "GenomicFeatures" version))
|
||||
(sha256
|
||||
(base32
|
||||
"0slq6hv5bmc3bgrl824jzmr6db3fvaj6b7ihwmdn76pgqqbq2fq6"))))
|
||||
"0qs94b0ywrjyc9m1jykrbch3lb07576m508dikvx18vwn304mban"))))
|
||||
(properties
|
||||
`((upstream-name . "GenomicFeatures")))
|
||||
(build-system r-build-system)
|
||||
|
@ -8486,7 +8485,7 @@ throughput genetic sequencing data sets using regression methods.")
|
|||
(define-public r-qtl
|
||||
(package
|
||||
(name "r-qtl")
|
||||
(version "1.42-8")
|
||||
(version "1.44-9")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
|
@ -8494,7 +8493,7 @@ throughput genetic sequencing data sets using regression methods.")
|
|||
version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1l528dwvfpdlr05imrrm4rq32axp6hld9nqm6mm43kn5n7z2f5k6"))))
|
||||
"03lmvydln8b7666b6w46qbryhf83vsd11d4y2v95rfgvqgq66l1i"))))
|
||||
(build-system r-build-system)
|
||||
(home-page "http://rqtl.org/")
|
||||
(synopsis "R package for analyzing QTL experiments in genetics")
|
||||
|
@ -9131,8 +9130,7 @@ may optionally be provided to further inform the peak-calling process.")
|
|||
(version "1.0.9")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://pypi.python.org/packages/source/P"
|
||||
"/PePr/PePr-" version ".tar.gz"))
|
||||
(uri (pypi-uri "PePr" version))
|
||||
(sha256
|
||||
(base32
|
||||
"0qxjfdpl1b1y53nccws2d85f6k74zwmx8y8sd9rszcqhfayx6gdx"))))
|
||||
|
|
|
@ -516,7 +516,7 @@ board-independent tools.")))
|
|||
(lambda* (#:key outputs make-flags #:allow-other-keys)
|
||||
(let ((config-name (string-append ,board "_defconfig")))
|
||||
(if (file-exists? (string-append "configs/" config-name))
|
||||
(zero? (apply system* "make" `(,@make-flags ,config-name)))
|
||||
(apply invoke "make" `(,@make-flags ,config-name))
|
||||
(begin
|
||||
(display "Invalid board name. Valid board names are:"
|
||||
(current-error-port))
|
||||
|
|
|
@ -3,6 +3,7 @@
|
|||
;;; Copyright © 2016, 2017, 2018 Ricardo Wurmus <rekado@elephly.net>
|
||||
;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
|
||||
;;; Copyright © 2018 Pierre Neidhardt <mail@ambrevar.xyz>
|
||||
;;; Copyright © 2019 Efraim Flashner <efraim@flashner.co.il>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
|
@ -37,8 +38,7 @@
|
|||
#:use-module (gnu packages python)
|
||||
#:use-module (gnu packages autotools)
|
||||
#:use-module (gnu packages gettext)
|
||||
#:use-module (gnu packages pkg-config)
|
||||
#:use-module (srfi srfi-1))
|
||||
#:use-module (gnu packages pkg-config))
|
||||
|
||||
(define-public tcc
|
||||
(package
|
||||
|
@ -69,11 +69,15 @@
|
|||
"/include:{B}/include")
|
||||
(string-append "--libpaths="
|
||||
(assoc-ref %build-inputs "libc")
|
||||
"/lib"))
|
||||
"/lib")
|
||||
,@(if (string-prefix? "armhf-linux"
|
||||
(or (%current-target-system)
|
||||
(%current-system)))
|
||||
`("--triplet=arm-linux-gnueabihf")
|
||||
'()))
|
||||
#:test-target "test"))
|
||||
;; Fails to build on MIPS: "Unsupported CPU"
|
||||
(supported-systems (fold delete %supported-systems
|
||||
'("mips64el-linux" "aarch64-linux")))
|
||||
(supported-systems (delete "mips64el-linux" %supported-systems))
|
||||
(synopsis "Tiny and fast C compiler")
|
||||
(description
|
||||
"TCC, also referred to as \"TinyCC\", is a small and fast C compiler
|
||||
|
|
|
@ -1133,9 +1133,7 @@ Python tests.")))
|
|||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
"https://pypi.python.org/packages/source/t/testrepository/testrepository-"
|
||||
version ".tar.gz"))
|
||||
(uri (pypi-uri "testrepository" version))
|
||||
(sha256
|
||||
(base32
|
||||
"1ssqb07c277010i6gzzkbdd46gd9mrj0bi0i8vn560n2k2y4j93m"))))
|
||||
|
@ -1307,9 +1305,7 @@ tools for mocking system commands and recording calls to those.")
|
|||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
"https://pypi.python.org/packages/source/t/testlib/testlib-"
|
||||
version ".zip"))
|
||||
(uri (pypi-uri "testlib" version ".zip"))
|
||||
(sha256
|
||||
(base32 "1mz26cxn4x8bbgv0rn0mvj2z05y31rkc8009nvdlb3lam5b4mj3y"))))
|
||||
(build-system python-build-system)
|
||||
|
@ -1806,9 +1802,7 @@ especially -cover-package.")
|
|||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
"https://pypi.python.org/packages/source/d/discover/discover-"
|
||||
version ".tar.gz"))
|
||||
(uri (pypi-uri "discover" version))
|
||||
(sha256
|
||||
(base32
|
||||
"0y8d0zwiqar51kxj8lzmkvwc3b8kazb04gk5zcb4nzg5k68zmhq5"))))
|
||||
|
@ -2039,13 +2033,13 @@ mocks, stubs and fakes.")
|
|||
(define-public python-flaky
|
||||
(package
|
||||
(name "python-flaky")
|
||||
(version "3.4.0")
|
||||
(version "3.5.3")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "flaky" version))
|
||||
(sha256
|
||||
(base32
|
||||
"18pkmf79rfkfpy1d2rrx3v55nxj762ilyk9rvd6s6dccxw58imsa"))))
|
||||
"1nm1kjf857z5aw7v642ffsy1vwf255c6wjvmil71kckjyd0mxg8j"))))
|
||||
(build-system python-build-system)
|
||||
(arguments
|
||||
;; TODO: Tests require 'coveralls' and 'genty' which are not in Guix yet.
|
||||
|
|
|
@ -32,6 +32,7 @@
|
|||
#:use-module (gnu packages compression)
|
||||
#:use-module (gnu packages databases)
|
||||
#:use-module (gnu packages guile)
|
||||
#:use-module (gnu packages guile-xyz)
|
||||
#:use-module (gnu packages gnupg)
|
||||
#:use-module (gnu packages mail)
|
||||
#:use-module (gnu packages package-management)
|
||||
|
|
|
@ -65,15 +65,16 @@
|
|||
|
||||
(package
|
||||
(name "clojure")
|
||||
(version "1.9.0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri
|
||||
(string-append "https://github.com/clojure/clojure/archive/clojure-"
|
||||
version ".tar.gz"))
|
||||
(sha256
|
||||
(base32 "0xjbzcw45z32vsn9pifp7ndysjzqswp5ig0jkjpivigh2ckkdzha"))))
|
||||
(version "1.10.0")
|
||||
(source (let ((name+version (string-append name "-" version)))
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/clojure/clojure")
|
||||
(commit name+version)))
|
||||
(file-name (string-append name+version "-checkout"))
|
||||
(sha256
|
||||
(base32 "1kcyv2836acs27vi75hvf3r773ahv2nlh9b3j9xa9m9sdanz1h83")))))
|
||||
(build-system ant-build-system)
|
||||
(arguments
|
||||
`(#:imported-modules ((guix build clojure-utils)
|
||||
|
|
|
@ -12,7 +12,7 @@
|
|||
;;; Copyright © 2016 Danny Milosavljevic <dannym@scratchpost.org>
|
||||
;;; Copyright © 2016, 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr>
|
||||
;;; Copyright © 2016 David Craven <david@craven.ch>
|
||||
;;; Copyright © 2016 Kei Kebreau <kkebreau@posteo.net>
|
||||
;;; Copyright © 2016, 2019 Kei Kebreau <kkebreau@posteo.net>
|
||||
;;; Copyright © 2016, 2018 Marius Bakke <mbakke@fastmail.com>
|
||||
;;; Copyright © 2017 Nils Gillmann <ng0@n0.is>
|
||||
;;; Copyright © 2017 Manolis Fragkiskos Ragkousis <manolis837@gmail.com>
|
||||
|
@ -434,6 +434,39 @@ than gzip and 15 % smaller output than bzip2.")
|
|||
(license (list license:gpl2+ license:lgpl2.1+)) ; bits of both
|
||||
(home-page "https://tukaani.org/xz/")))
|
||||
|
||||
(define-public lhasa
|
||||
(package
|
||||
(name "lhasa")
|
||||
(version "0.3.1")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
"https://github.com/fragglet/lhasa/releases/download/v"
|
||||
version "/lhasa-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"092zi9av18ma20c6h9448k0bapvx2plnp292741dvfd9hmgqxc1z"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
'(#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-before 'check 'set-up-test-environment
|
||||
(lambda* (#:key inputs #:allow-other-keys)
|
||||
(setenv "TZDIR" (string-append (assoc-ref inputs "tzdata")
|
||||
"/share/zoneinfo"))
|
||||
#t)))))
|
||||
(native-inputs
|
||||
`(("tzdata" ,tzdata)))
|
||||
(home-page "https://fragglet.github.com/lhasa/")
|
||||
(synopsis "LHA archive decompressor")
|
||||
(description "Lhasa is a replacement for the Unix LHA tool, for
|
||||
decompressing .lzh (LHA / LHarc) and .lzs (LArc) archives. The backend for the
|
||||
tool is a library, so that it can be reused for other purposes. Lhasa aims to
|
||||
be compatible with as many types of lzh/lzs archives as possible. It also aims
|
||||
to generate the same output as the (non-free) Unix LHA tool, so that it will
|
||||
act as a free drop-in replacement.")
|
||||
(license license:isc)))
|
||||
|
||||
(define-public lzo
|
||||
(package
|
||||
(name "lzo")
|
||||
|
|
|
@ -203,15 +203,16 @@ as ordering relation.")
|
|||
(package
|
||||
(name "json-modern-cxx")
|
||||
(version "3.1.2")
|
||||
(home-page "https://github.com/nlohmann/json")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
"https://github.com/nlohmann/json/archive/v" version ".tar.gz"))
|
||||
(method git-fetch)
|
||||
(uri (git-reference (url home-page)
|
||||
(commit (string-append "v" version))))
|
||||
(sha256
|
||||
(base32
|
||||
"0m5fhdpx2qll933db2nsi30nns3cifavzvijzz6mxhdkpmngmzz8"))
|
||||
(file-name (string-append name "-" version ".tar.gz"))
|
||||
"1mpr781fb2dfbyscrr7nil75lkxsazg4wkm749168lcf2ksrrbfi"))
|
||||
(file-name (git-file-name name version))
|
||||
(modules '((guix build utils)))
|
||||
(snippet
|
||||
'(begin
|
||||
|
@ -227,13 +228,13 @@ as ordering relation.")
|
|||
(substitute* files
|
||||
(("#include ?\"(fifo_map.hpp)\"" all fifo-map-hpp)
|
||||
(string-append
|
||||
"#include <fifo_map/" fifo-map-hpp ">")))))))))
|
||||
"#include <fifo_map/" fifo-map-hpp ">")))))
|
||||
#t))))
|
||||
(native-inputs
|
||||
`(("amalgamate" ,amalgamate)))
|
||||
(inputs
|
||||
`(("catch2" ,catch-framework2)
|
||||
("fifo-map" ,fifo-map)))
|
||||
(home-page "https://github.com/nlohmann/json")
|
||||
(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
|
||||
|
|
|
@ -83,6 +83,52 @@
|
|||
the system clipboards.")
|
||||
(license license:gpl3)))
|
||||
|
||||
(define-public r-sys
|
||||
(package
|
||||
(name "r-sys")
|
||||
(version "2.1")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (cran-uri "sys" version))
|
||||
(sha256
|
||||
(base32
|
||||
"10ml2492bdllh6cz2zl192ip0fdgjkkgayggd3ghswsj5gjv5hrh"))))
|
||||
(build-system r-build-system)
|
||||
(home-page "https://github.com/jeroen/sys")
|
||||
(synopsis "Powerful and reliable tools for running system commands in R")
|
||||
(description
|
||||
"This package provides drop-in replacements for the base @code{system2()}
|
||||
function with fine control and consistent behavior across platforms. It
|
||||
supports clean interruption, timeout, background tasks, and streaming STDIN /
|
||||
STDOUT / STDERR over binary or text connections. The package also provides
|
||||
functions for evaluating expressions inside a temporary fork. Such
|
||||
evaluations have no side effects on the main R process, and support reliable
|
||||
interrupts and timeouts. This provides the basis for a sandboxing
|
||||
mechanism.")
|
||||
(license license:expat)))
|
||||
|
||||
(define-public r-askpass
|
||||
(package
|
||||
(name "r-askpass")
|
||||
(version "1.1")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (cran-uri "askpass" version))
|
||||
(sha256
|
||||
(base32
|
||||
"07q0ik8jzk44vpwh48rr3fnpd7dzsdhjjsl4l850rffv3dyq4h6v"))))
|
||||
(build-system r-build-system)
|
||||
(propagated-inputs `(("r-sys" ,r-sys)))
|
||||
(home-page "https://github.com/jeroen/askpass")
|
||||
(synopsis "Safe password entry for R")
|
||||
(description
|
||||
"This package provides cross-platform utilities for prompting the user
|
||||
for credentials or a passphrase, for example to authenticate with a server or
|
||||
read a protected key.")
|
||||
(license license:expat)))
|
||||
|
||||
(define-public r-vegan
|
||||
(package
|
||||
(name "r-vegan")
|
||||
|
@ -927,14 +973,14 @@ applications. That is, compute distances and related measures for angular
|
|||
(define-public r-ggmap
|
||||
(package
|
||||
(name "r-ggmap")
|
||||
(version "2.6.1")
|
||||
(version "2.6.2")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (cran-uri "ggmap" version))
|
||||
(sha256
|
||||
(base32
|
||||
"0mssb09w818jv58h7mly9y181pzv22sgcd4a079cfpq04bs0wigw"))))
|
||||
"144x6ycb2c3fvy5c68ww53m6gzi6kfvas7cpbn071z08n4xgb72f"))))
|
||||
(build-system r-build-system)
|
||||
(propagated-inputs
|
||||
`(("r-digest" ,r-digest)
|
||||
|
@ -1062,13 +1108,13 @@ XML. To learn more about the Abbyy OCR API, see @url{http://ocrsdk.com/}.")
|
|||
(define-public r-colorspace
|
||||
(package
|
||||
(name "r-colorspace")
|
||||
(version "1.3-2")
|
||||
(version "1.4-0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (cran-uri "colorspace" version))
|
||||
(sha256
|
||||
(base32 "0d1ya7hx4y58n5ivwmdmq2zgh0g2sbv7ykh13n85c1355csd57yx"))))
|
||||
(base32 "0mpmvz2sycjp4c9y3v3qin7mdjy812hwi7cyjnblcw6xb1ckq06f"))))
|
||||
(build-system r-build-system)
|
||||
(home-page "https://cran.r-project.org/web/packages/colorspace")
|
||||
(synopsis "Color space manipulation")
|
||||
|
@ -2038,14 +2084,14 @@ functions from LINPACK.")
|
|||
(define-public r-fitdistrplus
|
||||
(package
|
||||
(name "r-fitdistrplus")
|
||||
(version "1.0-11")
|
||||
(version "1.0-14")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (cran-uri "fitdistrplus" version))
|
||||
(sha256
|
||||
(base32
|
||||
"12hckg3y5j3zh9q1gwxkc27q813p2r42iqp7wdfiq6nj55jrh6w6"))))
|
||||
"10q08wsv8v3w7797jdvvv60bgrf1bi6438wf0jcqv81ays82a245"))))
|
||||
(build-system r-build-system)
|
||||
(propagated-inputs
|
||||
`(("r-mass" ,r-mass)
|
||||
|
@ -2809,14 +2855,14 @@ Laplace approximation and adaptive Gauss-Hermite quadrature.")
|
|||
(define-public r-jomo
|
||||
(package
|
||||
(name "r-jomo")
|
||||
(version "2.6-5")
|
||||
(version "2.6-6")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (cran-uri "jomo" version))
|
||||
(sha256
|
||||
(base32
|
||||
"109q5m69clrvvialxdxznd0wdb54ajhx84nj8slx8bf909a427mj"))))
|
||||
"1048qb12cx7fs156jcqzwkfmsjadkgnrqd0krznyxpn873zr9lq2"))))
|
||||
(build-system r-build-system)
|
||||
(propagated-inputs
|
||||
`(("r-lme4" ,r-lme4)
|
||||
|
@ -3042,16 +3088,18 @@ structure.")
|
|||
(define-public r-vioplot
|
||||
(package
|
||||
(name "r-vioplot")
|
||||
(version "0.2")
|
||||
(version "0.3.0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (cran-uri "vioplot" version))
|
||||
(sha256
|
||||
(base32
|
||||
"16wkb26kv6qr34hv5zgqmgq6zzgysg9i78pvy2c097lr60v087v0"))))
|
||||
"1ddmmqq7qrnvr5q518afnysrl7ccr8am9njknv3dpwaqzcdr9akn"))))
|
||||
(build-system r-build-system)
|
||||
(propagated-inputs `(("r-sm" ,r-sm)))
|
||||
(propagated-inputs
|
||||
`(("r-sm" ,r-sm)
|
||||
("r-zoo" ,r-zoo)))
|
||||
(home-page "http://wsopuppenkiste.wiso.uni-goettingen.de/~dadler")
|
||||
(synopsis "Violin plot")
|
||||
(description
|
||||
|
@ -7222,13 +7270,13 @@ series.")
|
|||
(define-public r-acceptancesampling
|
||||
(package
|
||||
(name "r-acceptancesampling")
|
||||
(version "1.0-5")
|
||||
(version "1.0-6")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (cran-uri "AcceptanceSampling" version))
|
||||
(sha256
|
||||
(base32 "18krmmyn8pn11aqd81kbvka68lnd36mnpdh7p3pz9r4m4vjj007x"))))
|
||||
(base32 "1z3rmln63ki2kik9kinbwr9qhr32ggbmh4mm3xqy6di119n47ca9"))))
|
||||
(properties
|
||||
`((upstream-name . "AcceptanceSampling")))
|
||||
(build-system r-build-system)
|
||||
|
@ -7320,14 +7368,14 @@ cross-sectional, time series, clustered, panel, and longitudinal data.")
|
|||
(define-public r-th-data
|
||||
(package
|
||||
(name "r-th-data")
|
||||
(version "1.0-9")
|
||||
(version "1.0-10")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (cran-uri "TH.data" version))
|
||||
(sha256
|
||||
(base32
|
||||
"03xfvww0krw0fn76qmmvrj7dx4shin57qafwhkrggfg25hbqlcfq"))))
|
||||
"0mgz7aj2d9abbmdr65zgmg1ddp3fdbs3mfj83r5xadh5ldkir2k1"))))
|
||||
(properties `((upstream-name . "TH.data")))
|
||||
(build-system r-build-system)
|
||||
(propagated-inputs
|
||||
|
@ -7371,14 +7419,14 @@ Hothorn, Westfall, 2010, CRC Press).")
|
|||
(define-public r-emmeans
|
||||
(package
|
||||
(name "r-emmeans")
|
||||
(version "1.3.1")
|
||||
(version "1.3.2")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (cran-uri "emmeans" version))
|
||||
(sha256
|
||||
(base32
|
||||
"1sf7gmdb7aqhdpx489vg693ivc5677n4yjx27ixv8v7pjh8mlwwx"))))
|
||||
"0mg6y007hfmr601cq4jgxl5ncwbx79kkh7xs2i504m0rinxj8bf5"))))
|
||||
(build-system r-build-system)
|
||||
(propagated-inputs
|
||||
`(("r-estimability" ,r-estimability)
|
||||
|
@ -8490,18 +8538,17 @@ Scientific.")
|
|||
(define-public r-activity
|
||||
(package
|
||||
(name "r-activity")
|
||||
(version "1.1")
|
||||
(version "1.2")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (cran-uri "activity" version))
|
||||
(sha256
|
||||
(base32
|
||||
"1lqajgxfps2h6amz1791vp3f52rs9ghmanq1nqfxqd2jmk3idkrx"))))
|
||||
"11w2bz6p9xbzdh6773dmbbh6rws0h5dj18p8m0ivzizgq932vdzs"))))
|
||||
(build-system r-build-system)
|
||||
(propagated-inputs
|
||||
`(("r-circular" ,r-circular)
|
||||
("r-overlap" ,r-overlap)
|
||||
("r-pbapply" ,r-pbapply)))
|
||||
(home-page "https://cran.r-project.org/web/packages/activity/")
|
||||
(synopsis "Animal activity statistics")
|
||||
|
@ -8697,14 +8744,14 @@ in-memory raw vectors.")
|
|||
(define-public r-waveslim
|
||||
(package
|
||||
(name "r-waveslim")
|
||||
(version "1.7.5")
|
||||
(version "1.7.5.1")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (cran-uri "waveslim" version))
|
||||
(sha256
|
||||
(base32
|
||||
"0lqslkihgrd7rbihqhhk57m9vkbnfsznkvk8430cvbcsn7vridii"))))
|
||||
"0mky0nb4xxp8rybp87mxw2f1q6k400wpxv01zr4injv7ja6028xk"))))
|
||||
(build-system r-build-system)
|
||||
(native-inputs
|
||||
`(("gfortran" ,gfortran)))
|
||||
|
@ -9540,14 +9587,14 @@ limitations\" using the GNU Multiple Precision library.")
|
|||
(define-public r-rmpfr
|
||||
(package
|
||||
(name "r-rmpfr")
|
||||
(version "0.7-1")
|
||||
(version "0.7-2")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (cran-uri "Rmpfr" version))
|
||||
(sha256
|
||||
(base32
|
||||
"0172px5ryi7i0gyyin9z2bzif8vnj292gk0s1w5p3c12g9hj2c4v"))))
|
||||
"1zq3as34r27v2yc729731997wdhxb6cs5ilmak4nmsljabnac7gc"))))
|
||||
(properties `((upstream-name . "Rmpfr")))
|
||||
(build-system r-build-system)
|
||||
(inputs
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
;;; Copyright © 2016 Lukas Gradl <lgradl@openmailbox>
|
||||
;;; Copyright © 2016, 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr>
|
||||
;;; Copyright © 2016, 2017 Nils Gillmann <ng0@n0.is>
|
||||
;;; Copyright © 2016, 2017 Eric Bavier <bavier@member.fsf.org>
|
||||
;;; Copyright © 2016, 2017, 2019 Eric Bavier <bavier@member.fsf.org>
|
||||
;;; Copyright © 2017 Pierre Langlois <pierre.langlois@gmx.com>
|
||||
;;; Copyright © 2018 Efraim Flashner <efraim@flashner.co.il>
|
||||
;;; Copyright © 2018 Arun Isaac <arunisaac@systemreboot.net>
|
||||
|
@ -901,3 +901,29 @@ Features:
|
|||
@end itemize\n")
|
||||
(home-page "https://github.com/bitcoin-core/secp256k1")
|
||||
(license license:unlicense))))
|
||||
|
||||
(define-public stoken
|
||||
(package
|
||||
(name "stoken")
|
||||
(version "0.92")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "mirror://sourceforge/stoken/"
|
||||
"stoken-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0npgr6y85gzwksy8jkwa4yzvqwjprwnplx3yiw3ayk4f0ldlhaxa"))))
|
||||
(build-system gnu-build-system)
|
||||
(native-inputs
|
||||
`(("pkg-config" ,pkg-config)))
|
||||
(inputs
|
||||
`(("nettle" ,nettle)
|
||||
("libxml2" ,libxml2)))
|
||||
(home-page "http://stoken.sf.net")
|
||||
(synopsis "Software Token for cryptographic authentication")
|
||||
(description
|
||||
"@code{stoken} is a token code generator compatible with RSA SecurID
|
||||
128-bit (AES) tokens. This package contains a standalone command-line program
|
||||
that allows for importing token seeds, generating token codes, and various
|
||||
utility/testing functions.")
|
||||
(license license:lgpl2.1+)))
|
||||
|
|
|
@ -2093,8 +2093,7 @@ Database API 2.0T.")
|
|||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://pypi.python.org/packages/source/S/"
|
||||
"SQLAlchemy/SQLAlchemy-" version ".tar.gz"))
|
||||
(uri (pypi-uri "SQLAlchemy" version))
|
||||
(sha256
|
||||
(base32
|
||||
"094mmbs4igrxplfyqd59j90jb83ixpbbzqc0w49yw81m82nnjrgg"))))
|
||||
|
|
|
@ -25,6 +25,7 @@
|
|||
#:use-module ((guix licenses) #:prefix license:)
|
||||
#:use-module (guix packages)
|
||||
#:use-module (guix download)
|
||||
#:use-module (guix git-download)
|
||||
#:use-module (guix build-system cmake)
|
||||
#:use-module (guix build-system gnu))
|
||||
|
||||
|
@ -149,13 +150,14 @@ queues, stacks, and doubly-linked lists.")
|
|||
(version "2.0.2")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(file-name (string-append name "-" version ".tar.gz"))
|
||||
(uri (string-append "https://github.com/troydhanson/uthash/archive/v"
|
||||
version ".tar.gz"))
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/troydhanson/uthash.git")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"1la82gdlyl7m8ahdjirigwfh7zjgkc24cvydrqcri0vsvm8iv8rl"))))
|
||||
"0kslz8k6lssh7fl7ayzwlj62p0asxs3dq03357ls5ywjad238gqg"))))
|
||||
(build-system gnu-build-system)
|
||||
(native-inputs
|
||||
`(("perl" ,perl)))
|
||||
|
@ -169,8 +171,7 @@ queues, stacks, and doubly-linked lists.")
|
|||
(replace 'check
|
||||
(lambda* (#:key make-flags #:allow-other-keys)
|
||||
(with-directory-excursion "tests"
|
||||
(zero? (apply system* "make"
|
||||
make-flags)))))
|
||||
(apply invoke "make" make-flags))))
|
||||
(replace 'install
|
||||
;; There is no top-level Makefile to do this for us.
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
|
|
|
@ -194,10 +194,8 @@ tools that process C/C++ code.")
|
|||
(patch-dir
|
||||
(string-append afl-dir
|
||||
"/qemu_mode/patches")))
|
||||
(unless (zero?
|
||||
(system* "tar" "xf"
|
||||
(assoc-ref inputs "afl-src")))
|
||||
(error "tar failed to unpack afl-src"))
|
||||
(invoke "tar" "xf"
|
||||
(assoc-ref inputs "afl-src"))
|
||||
(install-file (string-append patch-dir
|
||||
"/afl-qemu-cpu-inl.h")
|
||||
".")
|
||||
|
@ -210,11 +208,12 @@ tools that process C/C++ code.")
|
|||
(substitute* (string-append patch-dir
|
||||
"/cpu-exec.diff")
|
||||
(("\\.\\./patches/") ""))
|
||||
(every (lambda (patch-file)
|
||||
(zero? (system* "patch" "--force" "-p1"
|
||||
"--input" patch-file)))
|
||||
(find-files patch-dir
|
||||
"\\.diff$"))))))))))))))
|
||||
(for-each (lambda (patch-file)
|
||||
(invoke "patch" "--force" "-p1"
|
||||
"--input" patch-file))
|
||||
(find-files patch-dir
|
||||
"\\.diff$"))
|
||||
#t))))))))))))
|
||||
(arguments
|
||||
`(#:make-flags (list (string-append "PREFIX=" (assoc-ref %outputs "out"))
|
||||
"CC=gcc")
|
||||
|
@ -291,7 +290,7 @@ down the road.")
|
|||
(modify-phases %standard-phases
|
||||
(add-after 'unpack 'unpack-make
|
||||
(lambda* (#:key inputs #:allow-other-keys)
|
||||
(zero? (system* "tar" "xf" (assoc-ref inputs "make-source")))))
|
||||
(invoke "tar" "xf" (assoc-ref inputs "make-source"))))
|
||||
(add-after 'unpack-make 'set-default-shell
|
||||
(lambda _
|
||||
;; Taken mostly directly from (@ (gnu packages base) gnu-make)
|
||||
|
@ -301,7 +300,7 @@ down the road.")
|
|||
(which "sh"))))))
|
||||
(add-before 'configure 'repack-make
|
||||
(lambda _
|
||||
(zero? (system* "tar" "cJf" "./make.tar.xz" ,make-dir))))))))
|
||||
(invoke "tar" "cJf" "./make.tar.xz" ,make-dir)))))))
|
||||
(home-page "https://github.com/losalamos/stress-make")
|
||||
(synopsis "Expose race conditions in Makefiles")
|
||||
(description
|
||||
|
|
|
@ -176,8 +176,7 @@ work, such as sentence length and other readability measures.")
|
|||
(delete 'configure)
|
||||
(delete 'build)
|
||||
(delete 'check)
|
||||
(replace
|
||||
'install
|
||||
(replace 'install
|
||||
(lambda _
|
||||
(let ((bindir (string-append
|
||||
(assoc-ref %outputs "out") "/bin"))
|
||||
|
@ -209,8 +208,7 @@ work, such as sentence length and other readability measures.")
|
|||
(string-append "DEFLIBDIR=\"" libdir "\"")))
|
||||
(install-file "ding.desktop" sharedir)
|
||||
(install-file "ding.png" sharedir)
|
||||
(zero?
|
||||
(system* "./install.sh"))))))))
|
||||
(invoke "./install.sh")))))))
|
||||
(synopsis "Dictionary lookup program with a German-English dictionary")
|
||||
(description "Ding is a dictionary lookup program for the X window system.
|
||||
It comes with a German-English dictionary with approximately 270,000 entries.")
|
||||
|
|
|
@ -74,7 +74,7 @@
|
|||
(string-split (getenv "PYTHONPATH")
|
||||
#\:))
|
||||
"', ")))
|
||||
(zero? (system* "python" "tests/runtests.py")))))))
|
||||
(invoke "python" "tests/runtests.py"))))))
|
||||
;; TODO: Install extras/django_bash_completion.
|
||||
(native-inputs
|
||||
`(("tzdata" ,tzdata-for-tests)
|
||||
|
|
|
@ -4,7 +4,7 @@
|
|||
;;; Copyright © 2014, 2015, 2016, 2017, 2018 Mark H Weaver <mhw@netris.org>
|
||||
;;; Copyright © 2014, 2015, 2016, 2017, 2018, 2019 Alex Kost <alezost@gmail.com>
|
||||
;;; Copyright © 2015 Federico Beffa <beffa@fbengineering.ch>
|
||||
;;; Copyright © 2015, 2016, 2017, 2018 Ricardo Wurmus <rekado@elephly.net>
|
||||
;;; Copyright © 2015, 2016, 2017, 2018, 2019 Ricardo Wurmus <rekado@elephly.net>
|
||||
;;; Copyright © 2016, 2017, 2018 Chris Marusich <cmmarusich@gmail.com>
|
||||
;;; Copyright © 2015, 2016, 2018 Christopher Lemmer Webber <cwebber@dustycloud.org>
|
||||
;;; Copyright © 2016 Adriano Peluso <catonano@gmail.com>
|
||||
|
@ -3803,7 +3803,7 @@ automatically.")
|
|||
(define-public emacs-ivy
|
||||
(package
|
||||
(name "emacs-ivy")
|
||||
(version "0.10.0")
|
||||
(version "0.11.0")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
|
@ -3813,7 +3813,7 @@ automatically.")
|
|||
(file-name (string-append name "-" version "-checkout"))
|
||||
(sha256
|
||||
(base32
|
||||
"14vnigqb5c3yi4q9ysw1fiwdqyqwyklqpb9wnjf81chm7s2mshnr"))))
|
||||
"009n8zjycs62cv4i1k9adbb284wz2w3r13xki2740sj34k683v13"))))
|
||||
(build-system emacs-build-system)
|
||||
(arguments
|
||||
`(#:phases
|
||||
|
|
|
@ -406,15 +406,16 @@ Super Game Boy, BS-X Satellaview, and Sufami Turbo.")
|
|||
(define-public mgba
|
||||
(package
|
||||
(name "mgba")
|
||||
(version "0.6.3")
|
||||
(version "0.7.0")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://github.com/mgba-emu/mgba/archive/"
|
||||
version ".tar.gz"))
|
||||
(file-name (string-append name "-" version ".tar.gz"))
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/mgba-emu/mgba.git")
|
||||
(commit version)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"16hgs6r5iym3lp2cjcnv9955333976yc5sgy2kkxlsi005n91j1m"))
|
||||
"0s4dl4pi8rxqahvzxnh37xdgsfax36cn5wlh1srdcmabwsrfpb3w"))
|
||||
(modules '((guix build utils)))
|
||||
(snippet
|
||||
;; Make sure we don't use the bundled software.
|
||||
|
@ -430,9 +431,7 @@ Super Game Boy, BS-X Satellaview, and Sufami Turbo.")
|
|||
`(#:tests? #f ;no "test" target
|
||||
#:configure-flags
|
||||
(list "-DUSE_LZMA=OFF" ;do not use bundled LZMA
|
||||
"-DUSE_LIBZIP=OFF" ;use "zlib" instead
|
||||
(string-append "-DCMAKE_INSTALL_LIBDIR="
|
||||
(assoc-ref %outputs "out") "/lib"))))
|
||||
"-DUSE_LIBZIP=OFF"))) ;use "zlib" instead
|
||||
(native-inputs `(("pkg-config" ,pkg-config)))
|
||||
(inputs `(("ffmpeg" ,ffmpeg)
|
||||
("imagemagick" ,imagemagick)
|
||||
|
@ -1184,7 +1183,7 @@ play them on systems for which they were never designed!")
|
|||
(define-public mame
|
||||
(package
|
||||
(name "mame")
|
||||
(version "0.205")
|
||||
(version "0.206")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
|
@ -1194,7 +1193,7 @@ play them on systems for which they were never designed!")
|
|||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"1q5z18rlmas598fxga8jr2d6xdngdzjab49xfy4hffdmlq624lw7"))
|
||||
"0i01h5ars1yd96ndmzhk47931hf261m8frqz1ha7s2gy52f0q86y"))
|
||||
(modules '((guix build utils)))
|
||||
(snippet
|
||||
;; Remove bundled libraries.
|
||||
|
|
|
@ -420,7 +420,7 @@ featuring various improvements and bug fixes.")))
|
|||
;; FIXME: with texlive-tiny citation references are rendered as question
|
||||
;; marks. During the build warnings like these are printed:
|
||||
;; LaTeX Warning: Citation `nabors91' on page 2 undefined on input line 3.
|
||||
`(("texlive" ,texlive-tiny)
|
||||
`(("texlive" ,(texlive-union (list texlive-fonts-amsfonts)))
|
||||
("ghostscript" ,ghostscript)))
|
||||
(arguments
|
||||
`(#:make-flags '("CC=gcc" "RM=rm" "SHELL=sh" "all")
|
||||
|
@ -432,8 +432,7 @@ featuring various improvements and bug fixes.")))
|
|||
(modify-phases %standard-phases
|
||||
(add-after 'build 'make-doc
|
||||
(lambda _
|
||||
(zero? (system* "make" "CC=gcc" "RM=rm" "SHELL=sh"
|
||||
"manual"))))
|
||||
(invoke "make" "CC=gcc" "RM=rm" "SHELL=sh" "manual")))
|
||||
(add-before 'make-doc 'fix-doc
|
||||
(lambda _
|
||||
(substitute* "doc/Makefile" (("/bin/rm") (which "rm")))
|
||||
|
@ -474,13 +473,13 @@ featuring various improvements and bug fixes.")))
|
|||
(setenv "HOME" "/tmp") ; FIXME: for texlive font cache
|
||||
(with-directory-excursion "doc"
|
||||
(and
|
||||
(every (lambda (file)
|
||||
(zero? (system* "dvips" file "-o")))
|
||||
(find-files "." "\\.dvi"))
|
||||
(every (lambda (file)
|
||||
(zero? (system* "ps2pdf" file)))
|
||||
'("mtt.ps" "ug.ps" "tcad.ps"))
|
||||
(zero? (system* "make" "clean"))))))
|
||||
(for-each (lambda (file)
|
||||
(invoke "dvips" file "-o"))
|
||||
(find-files "." "\\.dvi"))
|
||||
(for-each (lambda (file)
|
||||
(invoke "ps2pdf" file))
|
||||
'("mtt.ps" "ug.ps" "tcad.ps"))
|
||||
(invoke "make" "clean")))))
|
||||
(replace 'install
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
(let* ((out (assoc-ref outputs "out"))
|
||||
|
|
|
@ -70,6 +70,7 @@
|
|||
#:use-module (gnu packages admin)
|
||||
#:use-module (gnu packages audio)
|
||||
#:use-module (gnu packages avahi)
|
||||
#:use-module (gnu packages assembly)
|
||||
#:use-module (gnu packages bash)
|
||||
#:use-module (gnu packages bison)
|
||||
#:use-module (gnu packages boost)
|
||||
|
@ -155,7 +156,9 @@
|
|||
#:use-module (guix build-system scons)
|
||||
#:use-module (guix build-system python)
|
||||
#:use-module (guix build-system cmake)
|
||||
#:use-module (guix build-system trivial))
|
||||
#:use-module (guix build-system trivial)
|
||||
#:use-module ((srfi srfi-1) #:hide (zip))
|
||||
#:use-module (srfi srfi-26))
|
||||
|
||||
(define-public armagetronad
|
||||
(package
|
||||
|
@ -337,14 +340,14 @@ and against the others like yourself, that want what you have.")
|
|||
(delete 'build) ; nothing to be built
|
||||
(replace 'install
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
(zero? (system* "sh" "install.sh"
|
||||
(assoc-ref outputs "out")))))
|
||||
(invoke "sh" "install.sh"
|
||||
(assoc-ref outputs "out"))))
|
||||
(delete 'check)
|
||||
(add-after 'install 'check
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
(zero? (system* (string-append (assoc-ref outputs "out")
|
||||
"/bin/cowsay")
|
||||
"We're done!")))))))
|
||||
(invoke (string-append (assoc-ref outputs "out")
|
||||
"/bin/cowsay")
|
||||
"We're done!"))))))
|
||||
(inputs
|
||||
`(("perl" ,perl)))
|
||||
(home-page (string-append "https://web.archive.org/web/20071026043648/"
|
||||
|
@ -1364,9 +1367,8 @@ a C library, so they can easily be integrated into other programs.")
|
|||
;; variables passed as arguments.
|
||||
(let ((out (assoc-ref outputs "out")))
|
||||
(setenv "CONFIG_SHELL" (which "bash"))
|
||||
(zero?
|
||||
(system* "./configure"
|
||||
(string-append "--prefix=" out)))))))))
|
||||
(invoke "./configure"
|
||||
(string-append "--prefix=" out))))))))
|
||||
(inputs `(("ncurses" ,ncurses)))
|
||||
(home-page "http://www.asty.org/cmatrix")
|
||||
(synopsis "Simulate the display from \"The Matrix\"")
|
||||
|
@ -1535,61 +1537,6 @@ fully interactive graphical interface and it can load and save games in the
|
|||
Portable Game Notation.")
|
||||
(license license:gpl3+)))
|
||||
|
||||
|
||||
(define-public xboing
|
||||
(package
|
||||
(name "xboing")
|
||||
(version "2.4")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "http://www.techrescue.org/xboing/xboing"
|
||||
version ".tar.gz"))
|
||||
(sha256
|
||||
(base32 "16m2si8wmshxpifk861vhpqviqxgcg8bxj6wfw8hpnm4r2w9q0b7"))
|
||||
(patches (search-patches "xboing-CVE-2004-0149.patch"))))
|
||||
(arguments
|
||||
`(#:tests? #f
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(replace 'configure
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
|
||||
(substitute* "Imakefile"
|
||||
(("XPMINCLUDE[\t ]*= -I/usr/X11/include/X11")
|
||||
(string-append "XPMINCLUDE = -I"
|
||||
(assoc-ref %build-inputs "libxpm")
|
||||
"/include/X11")))
|
||||
|
||||
(substitute* "Imakefile"
|
||||
(("XBOING_DIR = \\.") "XBOING_DIR=$(PROJECTROOT)"))
|
||||
|
||||
;; FIXME: HIGH_SCORE_FILE should be set to somewhere writeable
|
||||
|
||||
(zero? (system* "xmkmf" "-a"
|
||||
(string-append "-DProjectRoot="
|
||||
(assoc-ref outputs "out"))))))
|
||||
(replace 'install
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
(and
|
||||
(zero? (system* "make" "install.man"))
|
||||
(zero? (system* "make" "install"))))))))
|
||||
(inputs `(("libx11" ,libx11)
|
||||
("libxext" ,libxext)
|
||||
("libxpm" ,libxpm)))
|
||||
(native-inputs `(("imake" ,imake)
|
||||
("inetutils" ,inetutils)
|
||||
("makedepend" ,makedepend)))
|
||||
(build-system gnu-build-system)
|
||||
(home-page "http://www.techrescue.org/xboing")
|
||||
(synopsis "Ball and paddle game")
|
||||
(description "XBoing is a blockout type game where you have a paddle which
|
||||
you control to bounce a ball around the game zone destroying blocks with a
|
||||
proton ball. Each block carries a different point value. The more blocks you
|
||||
destroy, the better your score. The person with the highest score wins.")
|
||||
(license (license:x11-style "file://COPYING"
|
||||
"Very similar to the X11 licence."))))
|
||||
|
||||
(define-public gtypist
|
||||
(package
|
||||
(name "gtypist")
|
||||
|
@ -2358,15 +2305,14 @@ world}, @uref{http://evolonline.org, Evol Online} and
|
|||
#:allow-other-keys)
|
||||
(let ((out (assoc-ref outputs "out"))
|
||||
(lzo (assoc-ref inputs "lzo")))
|
||||
(zero?
|
||||
(apply system* "./configure"
|
||||
(string-append "--prefix=" out)
|
||||
;; Provide the "lzo" path.
|
||||
(string-append "--with-liblzo2="
|
||||
lzo "/lib/liblzo2.a")
|
||||
;; Put the binary in 'bin' instead of 'games'.
|
||||
"--binary-dir=bin"
|
||||
configure-flags))))))))
|
||||
(apply invoke "./configure"
|
||||
(string-append "--prefix=" out)
|
||||
;; Provide the "lzo" path.
|
||||
(string-append "--with-liblzo2="
|
||||
lzo "/lib/liblzo2.a")
|
||||
;; Put the binary in 'bin' instead of 'games'.
|
||||
"--binary-dir=bin"
|
||||
configure-flags)))))))
|
||||
(native-inputs `(("pkg-config" ,pkg-config)))
|
||||
(inputs
|
||||
`(("allegro" ,allegro)
|
||||
|
@ -4125,7 +4071,7 @@ over 100 user-created campaigns.")
|
|||
(add-before 'build 'build-kodilib
|
||||
(lambda* (#:key make-flags #:allow-other-keys)
|
||||
(with-directory-excursion "kodilib/linux"
|
||||
(zero? (apply system* "make" make-flags)))))
|
||||
(apply invoke "make" make-flags))))
|
||||
(add-after 'build-kodilib 'chdir
|
||||
(lambda _ (chdir "linux") #t))
|
||||
(replace 'install
|
||||
|
@ -4417,10 +4363,10 @@ shapes are arranged in a series of increasingly complex patterns, forming
|
|||
(let ((data (string-append (assoc-ref outputs "out")
|
||||
"/share/games/fillets-ng")))
|
||||
(mkdir-p data)
|
||||
(zero? (system* "tar" "-xvf"
|
||||
(assoc-ref inputs "fillets-ng-data")
|
||||
"--strip-components=1"
|
||||
"-C" data))))))))
|
||||
(invoke "tar" "-xvf"
|
||||
(assoc-ref inputs "fillets-ng-data")
|
||||
"--strip-components=1"
|
||||
"-C" data)))))))
|
||||
(inputs
|
||||
`(("sdl-union" ,(sdl-union (list sdl
|
||||
sdl-mixer
|
||||
|
@ -4502,10 +4448,10 @@ fish. The whole game is accompanied by quiet, comforting music.")
|
|||
(setenv "HOME" (getcwd))
|
||||
;; Fake a terminal for the test cases.
|
||||
(setenv "TERM" "xterm-256color")
|
||||
(zero? (apply system* "make" "debug" "test"
|
||||
(format #f "-j~d" (parallel-job-count))
|
||||
;; Force command line build for test cases.
|
||||
(append make-flags '("GAME=crawl" "TILES=")))))))))
|
||||
(apply invoke "make" "debug" "test"
|
||||
(format #f "-j~d" (parallel-job-count))
|
||||
;; Force command line build for test cases.
|
||||
(append make-flags '("GAME=crawl" "TILES="))))))))
|
||||
(synopsis "Roguelike dungeon crawler game")
|
||||
(description "Dungeon Crawl Stone Soup is a roguelike adventure through
|
||||
dungeons filled with dangerous monsters in a quest to find the mystifyingly
|
||||
|
@ -6021,3 +5967,136 @@ civilized than your own.")
|
|||
license:cc-by-sa3.0
|
||||
license:cc-by-sa4.0
|
||||
license:public-domain))))
|
||||
|
||||
(define-public stepmania
|
||||
(package
|
||||
(name "stepmania")
|
||||
(version "5.1.0-b2")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/stepmania/stepmania.git")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"0a7y9l7xm510vgnpmj1is7p9m6d6yd0fcaxrjcickz295k5w3rdn"))
|
||||
(modules '((guix build utils)))
|
||||
(snippet
|
||||
'(begin
|
||||
;; Remove song files, which are licensed under a non-commercial
|
||||
;; clause, and a course pointing to them.
|
||||
(for-each delete-file-recursively
|
||||
'("Songs/StepMania 5/Goin' Under"
|
||||
"Songs/StepMania 5/MechaTribe Assault"
|
||||
"Songs/StepMania 5/Springtime"))
|
||||
(for-each delete-file '("Courses/Default/Jupiter.crs"
|
||||
"Courses/Default/Jupiter.png"))
|
||||
;; Unbundle libpng.
|
||||
(substitute* "extern/CMakeLists.txt"
|
||||
(("include\\(CMakeProject-png.cmake\\)") ""))
|
||||
(delete-file-recursively "extern/libpng")
|
||||
#t))))
|
||||
(build-system cmake-build-system)
|
||||
(arguments
|
||||
`(#:tests? #f ;FIXME: couldn't find how to run tests
|
||||
#:build-type "Release"
|
||||
#:out-of-source? #f ;for the 'install-desktop' phase
|
||||
#:configure-flags
|
||||
(list "-DWITH_SYSTEM_FFMPEG=1"
|
||||
;; SSE instructions are available on Intel systems only.
|
||||
,@(if (any (cute string-prefix? <> (or (%current-target-system)
|
||||
(%current-system)))
|
||||
'("x64_64" "i686"))
|
||||
'()
|
||||
'("-DWITH_SSE2=NO"))
|
||||
;; Configuration cannot find GTK2 without the two following
|
||||
;; flags.
|
||||
(string-append "-DGTK2_GDKCONFIG_INCLUDE_DIR="
|
||||
(assoc-ref %build-inputs "gtk+")
|
||||
"/lib/gtk-2.0/include")
|
||||
(string-append "-DGTK2_GLIBCONFIG_INCLUDE_DIR="
|
||||
(assoc-ref %build-inputs "glib")
|
||||
"/lib/glib-2.0/include"))
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-after 'unpack 'fix-install-subdir
|
||||
;; Installation would be done in "%out/stepmania-X.Y", but we
|
||||
;; prefer the more common layout "%out/share/stepmania".
|
||||
(lambda _
|
||||
(substitute* "src/CMakeLists.txt"
|
||||
(("\"stepmania-.*?\"") "\"share/stepmania\""))
|
||||
#t))
|
||||
(add-after 'unpack 'unbundle-libpng
|
||||
(lambda* (#:key inputs #:allow-other-keys)
|
||||
(substitute* "src/CMakeLists.txt"
|
||||
(("\\$\\{SM_EXTERN_DIR\\}/libpng/include")
|
||||
(string-append (assoc-ref inputs "libpng") "/include")))
|
||||
#t))
|
||||
(add-after 'install 'install-executable
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
(let* ((out (assoc-ref outputs "out"))
|
||||
(bin (string-append out "/bin"))
|
||||
(exe (string-append out "/share/stepmania/stepmania")))
|
||||
(mkdir-p bin)
|
||||
(symlink exe (string-append bin "/stepmania"))
|
||||
#t)))
|
||||
(add-after 'install-executable 'install-desktop
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
(let* ((out (assoc-ref outputs "out"))
|
||||
(share (string-append out "/share"))
|
||||
(applications (string-append share "/applications"))
|
||||
(icons (string-append share "/icons")))
|
||||
(install-file "stepmania.desktop" applications)
|
||||
(mkdir-p icons)
|
||||
(copy-recursively "icons" icons)
|
||||
#t)))
|
||||
;; Move documentation in a more usual place, i.e.,
|
||||
;; "%out/share/doc/stepmania/".
|
||||
(add-after 'install-desktop 'install-doc
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
(let* ((out (assoc-ref outputs "out"))
|
||||
(share (string-append out "/share")))
|
||||
(with-directory-excursion share
|
||||
(mkdir-p "doc")
|
||||
(symlink "../stepmania/Docs" "doc/stepmania"))
|
||||
#t))))))
|
||||
(native-inputs
|
||||
`(("pkg-config" ,pkg-config)
|
||||
("yasm" ,yasm)))
|
||||
(inputs
|
||||
`(("alsa-lib" ,alsa-lib)
|
||||
;; Per upstream, StepMania is only guaranteed to work with a very
|
||||
;; specific FFmpeg version, which is included in the repository as
|
||||
;; a Git submodule. This particular version requirement usually
|
||||
;; changes every few years.
|
||||
("ffmpeg" ,ffmpeg-for-stepmania)
|
||||
("glib" ,glib)
|
||||
("glew" ,glew)
|
||||
("gtk+" ,gtk+-2)
|
||||
("jsoncpp" ,jsoncpp)
|
||||
("libpng" ,libpng)
|
||||
("libjpeg" ,libjpeg-8)
|
||||
("libmad" ,libmad)
|
||||
("libogg" ,libogg)
|
||||
("libva" ,libva)
|
||||
("libvorbis" ,libvorbis)
|
||||
("libxinerama" ,libxinerama)
|
||||
("libxrandr" ,libxrandr)
|
||||
("mesa" ,mesa)
|
||||
("pcre" ,pcre)
|
||||
("pulseaudio" ,pulseaudio)
|
||||
("sdl" ,sdl2)
|
||||
("udev" ,eudev)
|
||||
("zlib" ,zlib)))
|
||||
(synopsis "Advanced rhythm game designed for both home and arcade use")
|
||||
(description "StepMania is a dance and rhythm game. It features 3D
|
||||
graphics, keyboard and dance pad support, and an editor for creating your own
|
||||
steps.
|
||||
|
||||
This package provides the core application, but no song is shipped. You need
|
||||
to download and install them in @file{$HOME/.stepmania-X.Y/Songs} directory.")
|
||||
(home-page "https://www.stepmania.com")
|
||||
(license license:expat)))
|
||||
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
;;; GNU Guix --- Functional package management for GNU
|
||||
;;; Copyright © 2013, 2015 Andreas Enge <andreas@enge.fr>
|
||||
;;; Copyright © 2013, 2014, 2015, 2016, 2017, 2018 Ludovic Courtès <ludo@gnu.org>
|
||||
;;; Copyright © 2014, 2015, 2016, 2017, 2018 Mark H Weaver <mhw@netris.org>
|
||||
;;; Copyright © 2014, 2015, 2016, 2017, 2018, 2019 Mark H Weaver <mhw@netris.org>
|
||||
;;; Copyright © 2015 Sou Bunnbu <iyzsong@gmail.com>
|
||||
;;; Copyright © 2016, 2017, 2018 Efraim Flashner <efraim@flashner.co.il>
|
||||
;;; Copyright © 2016 Alex Griffin <a@ajgrf.com>
|
||||
|
@ -33,12 +33,17 @@
|
|||
#:use-module (guix packages)
|
||||
#:use-module (guix download)
|
||||
#:use-module (guix git-download)
|
||||
#:use-module (guix gexp)
|
||||
#:use-module (guix store)
|
||||
#:use-module (guix monads)
|
||||
#:use-module (guix utils)
|
||||
#:use-module (guix build-system gnu)
|
||||
#:use-module (guix build-system cargo)
|
||||
#:use-module (gnu packages admin)
|
||||
#:use-module (gnu packages audio)
|
||||
#:use-module (gnu packages autotools)
|
||||
#:use-module (gnu packages base)
|
||||
#:use-module (gnu packages bash)
|
||||
#:use-module (gnu packages check)
|
||||
#:use-module (gnu packages databases)
|
||||
#:use-module (gnu packages glib)
|
||||
|
@ -559,56 +564,184 @@ security standards.")
|
|||
(sha256 (base32 hash))
|
||||
(file-name file-name)))
|
||||
|
||||
(define* (computed-origin-method gexp-promise hash-algo hash
|
||||
#:optional (name "source")
|
||||
#:key (system (%current-system))
|
||||
(guile (default-guile)))
|
||||
"Return a derivation that executes the G-expression that results
|
||||
from forcing GEXP-PROMISE."
|
||||
(mlet %store-monad ((guile (package->derivation guile system)))
|
||||
(gexp->derivation (or name "computed-origin")
|
||||
(force gexp-promise)
|
||||
#:system system
|
||||
#:guile-for-build guile)))
|
||||
|
||||
(define %icecat-version "60.5.0-guix1")
|
||||
|
||||
;; 'icecat-source' is a "computed" origin that generates an IceCat tarball
|
||||
;; from the corresponding upstream Firefox ESR tarball, using the 'makeicecat'
|
||||
;; script from the upstream IceCat project.
|
||||
(define icecat-source
|
||||
(let* ((base-version (first (string-split %icecat-version #\-)))
|
||||
|
||||
(major-version (first (string-split base-version #\.)))
|
||||
(minor-version (second (string-split base-version #\.)))
|
||||
(sub-version (third (string-split base-version #\.)))
|
||||
|
||||
(upstream-firefox-version (string-append base-version "esr"))
|
||||
(upstream-firefox-source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
"https://ftp.mozilla.org/pub/firefox/releases/"
|
||||
upstream-firefox-version "/source/"
|
||||
"firefox-" upstream-firefox-version ".source.tar.xz"))
|
||||
(sha256
|
||||
(base32
|
||||
"09a0kk250r03984n1hdwr2rg1vmhi2jkyzzgbbvkf9h9hzp6j7qs"))))
|
||||
|
||||
(upstream-icecat-base-version "60.3.0") ; maybe older than base-version
|
||||
(upstream-icecat-gnu-version "1")
|
||||
(upstream-icecat-version (string-append upstream-icecat-base-version
|
||||
"-gnu"
|
||||
upstream-icecat-gnu-version))
|
||||
(upstream-icecat-source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
"mirror://gnu/gnuzilla/" upstream-icecat-base-version
|
||||
"/icecat-" upstream-icecat-version ".tar.bz2"))
|
||||
(sha256
|
||||
(base32
|
||||
"0icnl64nxcyf7dprpdpygxhabsvyhps8c3ixysj9bcdlj9q34ib1"))))
|
||||
|
||||
(gnuzilla-commit (string-append "v" upstream-icecat-base-version))
|
||||
(gnuzilla-source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "git://git.savannah.gnu.org/gnuzilla.git")
|
||||
(commit gnuzilla-commit)))
|
||||
(file-name (git-file-name "gnuzilla" upstream-icecat-base-version))
|
||||
(sha256
|
||||
(base32
|
||||
"19wal7hkbb4wvk40hs6d7a5paal2bfday08hwssm02srcbv48fj0"))))
|
||||
|
||||
(makeicecat-patch
|
||||
(local-file (search-patch "icecat-makeicecat.patch"))))
|
||||
|
||||
(origin
|
||||
(method computed-origin-method)
|
||||
(file-name (string-append "icecat-" %icecat-version ".tar.xz"))
|
||||
(sha256 #f)
|
||||
(uri
|
||||
(delay
|
||||
(with-imported-modules '((guix build utils))
|
||||
#~(begin
|
||||
(use-modules (guix build utils))
|
||||
(let ((firefox-dir
|
||||
(string-append "firefox-" #$base-version))
|
||||
(icecat-dir
|
||||
(string-append "icecat-" #$%icecat-version))
|
||||
(old-icecat-dir
|
||||
(string-append "icecat-" #$upstream-icecat-base-version)))
|
||||
|
||||
(mkdir "/tmp/bin")
|
||||
(set-path-environment-variable
|
||||
"PATH" '("bin")
|
||||
(list "/tmp"
|
||||
#+(canonical-package bash)
|
||||
#+(canonical-package coreutils)
|
||||
#+(canonical-package findutils)
|
||||
#+(canonical-package patch)
|
||||
#+(canonical-package xz)
|
||||
#+(canonical-package sed)
|
||||
#+(canonical-package grep)
|
||||
#+(canonical-package bzip2)
|
||||
#+(canonical-package gzip)
|
||||
#+(canonical-package tar)
|
||||
#+rename))
|
||||
|
||||
(symlink #+(file-append rename "/bin/rename")
|
||||
"/tmp/bin/prename")
|
||||
|
||||
;; We copy the gnuzilla source directory because it is
|
||||
;; read-only in 'gnuzilla-source', and the makeicecat script
|
||||
;; uses "cp -a" to copy parts of it and assumes that the
|
||||
;; copies will be writable.
|
||||
(copy-recursively #+gnuzilla-source "/tmp/gnuzilla"
|
||||
#:log (%make-void-port "w"))
|
||||
|
||||
(with-directory-excursion "/tmp/gnuzilla"
|
||||
(make-file-writable "makeicecat")
|
||||
(invoke "patch" "--force" "--no-backup-if-mismatch"
|
||||
"-p1" "--input" #+makeicecat-patch)
|
||||
(patch-shebang "makeicecat")
|
||||
(substitute* "makeicecat"
|
||||
(("^FFMAJOR=.*")
|
||||
(string-append "FFMAJOR=" #$major-version "\n"))
|
||||
(("^FFMINOR=.*")
|
||||
(string-append "FFMINOR=" #$minor-version "\n"))
|
||||
(("^FFSUB=.*")
|
||||
(string-append "FFSUB=" #$sub-version "\n"))
|
||||
(("^GNUVERSION=.*")
|
||||
(string-append "GNUVERSION="
|
||||
#$upstream-icecat-gnu-version "\n"))
|
||||
(("^DATA=.*")
|
||||
"DATA=/tmp/gnuzilla/data\n")
|
||||
(("^sed .* debian/" all)
|
||||
(string-append "echo warning: skipped: " all))
|
||||
(("^debian/rules " all)
|
||||
(string-append "echo warning: skipped: " all))
|
||||
(("^find extensions/gnu/ ")
|
||||
"find extensions/gnu/ | sort ")
|
||||
(("/bin/sed")
|
||||
#+(file-append (canonical-package sed) "/bin/sed"))))
|
||||
|
||||
(format #t "Unpacking upstream firefox tarball...~%")
|
||||
(force-output)
|
||||
(invoke "tar" "xf" #+upstream-firefox-source)
|
||||
(rename-file firefox-dir icecat-dir)
|
||||
|
||||
(with-directory-excursion icecat-dir
|
||||
(for-each mkdir-p '("l10n" "debian/config"))
|
||||
(call-with-output-file "debian/control" (const #t))
|
||||
(format #t "Running makeicecat script...~%")
|
||||
(force-output)
|
||||
(invoke "bash" "/tmp/gnuzilla/makeicecat")
|
||||
(for-each delete-file-recursively '("l10n" "debian")))
|
||||
|
||||
(format #t (string-append "Unpacking l10n/* and debian/* from"
|
||||
" upstream IceCat tarball...~%"))
|
||||
(force-output)
|
||||
(unless (string=? icecat-dir old-icecat-dir)
|
||||
(symlink icecat-dir old-icecat-dir))
|
||||
(invoke "tar" "xf" #+upstream-icecat-source
|
||||
(string-append old-icecat-dir "/l10n")
|
||||
(string-append old-icecat-dir "/debian"))
|
||||
|
||||
(format #t (string-append "Packing new IceCat tarball...~%"))
|
||||
(force-output)
|
||||
(invoke "tar" "cfa" #$output
|
||||
;; avoid non-determinism in the archive
|
||||
"--mtime=@0"
|
||||
"--owner=root:0"
|
||||
"--group=root:0"
|
||||
"--sort=name"
|
||||
icecat-dir)
|
||||
|
||||
#t))))))))
|
||||
|
||||
(define-public icecat
|
||||
(package
|
||||
(name "icecat")
|
||||
(version "60.3.0-gnu1")
|
||||
(version %icecat-version)
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "mirror://gnu/gnuzilla/"
|
||||
(first (string-split version #\-))
|
||||
"/" name "-" version ".tar.bz2"))
|
||||
(sha256
|
||||
(base32
|
||||
"0icnl64nxcyf7dprpdpygxhabsvyhps8c3ixysj9bcdlj9q34ib1"))
|
||||
(patches
|
||||
(list
|
||||
(search-patch "icecat-avoid-bundled-libraries.patch")
|
||||
(search-patch "icecat-use-system-graphite2+harfbuzz.patch")
|
||||
(search-patch "icecat-use-system-media-libs.patch")
|
||||
(mozilla-patch "icecat-bug-1464061.patch" "d28761dbff18" "1f58rzwx4s1af66fdwn9lgkcd1ksmq8kn8imvf78p90jqi24h7b4")
|
||||
(mozilla-patch "icecat-bug-1479853.patch" "4faeb696dd06" "12891xx9c15s6kby6d3zk64v5nqgaq7sw597zv1fkd3a6x69hlva")
|
||||
(mozilla-patch "icecat-CVE-2018-17466.patch" "12ba39f69876" "1piyq44f0xa0a9z2748aqwpaziaxwp61d86gyhalbyag8lcxfb3p")
|
||||
(mozilla-patch "icecat-CVE-2018-18498.patch" "a0adabeedf26" "0f5wazha3zxzhy2j8f93hx62l9p02b1p40vi07qah3ar67h4ccj9")
|
||||
(mozilla-patch "icecat-CVE-2018-12405-pt01.patch" "19604eb26230" "1wqxgph4z14ijhk2j2m4av5p6gx72d02lzz83q6yy0k065kw8psb")
|
||||
(mozilla-patch "icecat-CVE-2018-18492.patch" "98737ab09270" "0fyl6wv0jxcxpkfpsff46y93k49n8lrw0k7c1p45g8da015dx27a")
|
||||
(mozilla-patch "icecat-CVE-2018-18493.patch" "1cf7d80355d5" "19jp4x32vyxam54d1r9fm7jwf6krhhf3xazfqmxb9aw4iwdil7dl")
|
||||
(mozilla-patch "icecat-CVE-2018-12405-pt02.patch" "c264774b8913" "1hxyi131x8jwawrq90cgkph833iv9ixrdrgzl1r978gbzwq10xz2")
|
||||
(mozilla-patch "icecat-bug-1477773.patch" "ec13fda7c9b0" "0zj7aylgw55g0y7plaafn5gq8jwcsdr1bpdxacs0hq914nm8zy9z")
|
||||
(mozilla-patch "icecat-CVE-2018-12405-pt03.patch" "5e1a9644aeef" "1qimrpgyrd8zkiri7w57j0aymk20y9b34am5w7rvr6qj1lhrbfla")
|
||||
(mozilla-patch "icecat-bug-1485655.patch" "9055726e2d89" "1pppxr94zqh6zmi2mn1ih21qap09vk5ivbhnwxqr8iszvygjg44g")
|
||||
(mozilla-patch "icecat-bug-1410214.patch" "9e641345e2ef" "0542xss2jdb8drh4g50cfy32l300x69dyywgx3dqs03vgr3qplxy")
|
||||
(mozilla-patch "icecat-CVE-2018-12405-pt04.patch" "6398541ec302" "1c2yi7mkg3d5afxsgj9fp3zq8yhkmphrll5d60d5xsdv88kqqiyf")
|
||||
(mozilla-patch "icecat-bug-1496736.patch" "3bed863ee656" "038k7jk3yp16410crwfdvhyb2vis49c6bplrfr83v51885cqldar")
|
||||
(mozilla-patch "icecat-bug-1498765.patch" "a08c8493ba19" "0bwg4vg03j962lb9q8ihpiy4rmygykf1q9ij8x7h34q7hg43yjya")
|
||||
(mozilla-patch "icecat-CVE-2018-12405-pt05.patch" "ee204e26690e" "1scs45xhlr1mwv6x2q6n22363f42by8cjmifqwzlikggs21f5mcq")
|
||||
(mozilla-patch "icecat-bug-1507035.patch" "cec8b58ab3fe" "1f131ibpkrhsa44l822hnm5qgvapbs3i9pj25iimdwvr933winz8")
|
||||
(mozilla-patch "icecat-bug-1501680.patch" "282c6bb81562" "1zgw7l5zmni8468y3f6cip1nlw63cfdd9vv9b00cbrgy96d1q2cp")
|
||||
(mozilla-patch "icecat-bug-1500310.patch" "b3a439a26186" "0mrjxcmrlv04fyl36dwxk97dw08g2hlikvw2hfa1l0y8zsc4bgw8")
|
||||
(mozilla-patch "icecat-bug-1500366.patch" "abd59256c4e3" "1jgwh2v4kwb6kf2h7mwf128w1k1jj119bfhlgqpmn9ami35wpzf3")
|
||||
(mozilla-patch "icecat-bug-1493080.patch" "a7cabf306d05" "1n7wv67rcaz8wj31jc77ssjdj3kb61gdg7pigj828c5z2cgns1k5")
|
||||
(mozilla-patch "icecat-CVE-2018-12405-pt06.patch" "8bbf80948b50" "1nvc69zgz9nvbw1pwxkil1fx4cxxpr6bsjrpp6l2kv7jhgax1bqk")
|
||||
(mozilla-patch "icecat-bug-1507564.patch" "60619cc47b10" "09fanqr08kqgraw4xp7y2az4jc7ia8nn200rqjfj20vmkyjz97j3")
|
||||
(mozilla-patch "icecat-bug-1507730.patch" "dd0f01818b9c" "14ziq1bm72n58xrvsgzpjj5z6ifpvi70r5jfhbkbj69mf4y4cx2z")
|
||||
(mozilla-patch "icecat-CVE-2018-12405-pt07.patch" "a73a46ddc848" "1bvvyav3xyn6rgn6haicinxn0dasl9dyc1i37fyb7wr5wcpahybs")
|
||||
(mozilla-patch "icecat-CVE-2018-18494.patch" "a72ec8e21577" "095zghmwdcbaid5426p9vpl757d8sfbsvgn201bjm7nhm03m4z7i")
|
||||
(mozilla-patch "icecat-CVE-2018-12405-pt08.patch" "b6d0fc61fd0b" "0059avawxi4s4747plybjsjq8j2h4z7amw05p28xyg95a2njwnaa")
|
||||
(mozilla-patch "icecat-bug-1499028.patch" "a62ede2dd3bc" "0ikmnibni8bdvpr9p42wskyyic08vzqdz5qr028bqzyg5119gily")
|
||||
(mozilla-patch "icecat-bug-1426574.patch" "0db86656655b" "0kmccb4ccdzbzncwklx7w1bg7r61zwl2wnfp67vl27hm9xykbck7")
|
||||
(mozilla-patch "icecat-CVE-2018-12405-pt09.patch" "20e31905de62" "0b5a441645wy3q4asaygvdq0inrxmxrh33cpgdp6ngflq9p2i6h0")
|
||||
(mozilla-patch "icecat-CVE-2018-12405-pt10.patch" "c2832f98fe51" "0b4jfjfdyrihwjdfavd54hn9kdg2f017lmfr7mj2llp71flxwwj7")
|
||||
(mozilla-patch "icecat-bug-1511495.patch" "d428d2b8f585" "1f9xs0bjhbphvkv60cnvz34sr2rv38jzvi47wh3nablg41yjpdrk")))
|
||||
(inherit icecat-source)
|
||||
(patches (search-patches "icecat-avoid-bundled-libraries.patch"
|
||||
"icecat-use-system-graphite2+harfbuzz.patch"
|
||||
"icecat-use-system-media-libs.patch"))
|
||||
(modules '((guix build utils)))
|
||||
(snippet
|
||||
'(begin
|
||||
|
|
|
@ -406,7 +406,7 @@ in the style of communicating sequential processes (@dfn{CSP}).")
|
|||
(package
|
||||
(inherit go-1.9)
|
||||
(name "go")
|
||||
(version "1.11.4")
|
||||
(version "1.11.5")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
|
@ -414,11 +414,23 @@ in the style of communicating sequential processes (@dfn{CSP}).")
|
|||
name version ".src.tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"05fvp8dq0yffsrvdyii4wgl756dn0xkgm5a80al7j7kb19r45zac"))))
|
||||
"0gllmbjvp12iszwils8id78mvjxwviwf98lh2gdkb236n4mz07mw"))))
|
||||
(arguments
|
||||
(substitute-keyword-arguments (package-arguments go-1.9)
|
||||
((#:phases phases)
|
||||
`(modify-phases ,phases
|
||||
;; XXX Work around the Go 1.11.5 tarbomb.
|
||||
;; <https://github.com/golang/go/issues/29906>
|
||||
(add-after 'unpack 'tarbomb-workaround
|
||||
(lambda _
|
||||
(chdir "..")
|
||||
(delete-file-recursively "gocache")
|
||||
(delete-file-recursively "tmp")
|
||||
#t))
|
||||
(replace 'chdir
|
||||
(lambda _
|
||||
(chdir "go/src")
|
||||
#t))
|
||||
(replace 'prebuild
|
||||
(lambda* (#:key inputs outputs #:allow-other-keys)
|
||||
(let* ((gcclib (string-append (assoc-ref inputs "gcc:lib") "/lib"))
|
||||
|
|
|
@ -74,6 +74,7 @@
|
|||
#:use-module (gnu packages python)
|
||||
#:use-module (gnu packages python-xyz)
|
||||
#:use-module (gnu packages guile)
|
||||
#:use-module (gnu packages guile-xyz)
|
||||
#:use-module (gnu packages cups)
|
||||
#:use-module (gnu packages xml)
|
||||
#:use-module (gnu packages xorg)
|
||||
|
|
File diff suppressed because it is too large
Load Diff
File diff suppressed because it is too large
Load Diff
|
@ -155,15 +155,15 @@ of external libraries that provide additional functionality.")
|
|||
(define-public vtk
|
||||
(package
|
||||
(name "vtk")
|
||||
(version "7.1.0")
|
||||
(version "8.2.0")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "http://www.vtk.org/files/release/"
|
||||
(uri (string-append "https://vtk.org/files/release/"
|
||||
(version-major+minor version)
|
||||
"/VTK-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0yj96z58haan77gzilnqp7xpf8hg5jk11a3jx55p2ksd400s0gjz"))))
|
||||
"1fspgp8k0myr6p2a6wkc21ldcswb4bvmb484m12mxgk1a9vxrhrl"))))
|
||||
(build-system cmake-build-system)
|
||||
(arguments
|
||||
'(#:build-type "Release" ;Build without '-g' to save space.
|
||||
|
@ -196,7 +196,7 @@ of external libraries that provide additional functionality.")
|
|||
("png" ,libpng)
|
||||
("tiff" ,libtiff)
|
||||
("zlib" ,zlib)))
|
||||
(home-page "http://www.vtk.org/")
|
||||
(home-page "https://vtk.org/")
|
||||
(synopsis "Libraries for 3D computer graphics")
|
||||
(description
|
||||
"The Visualization Toolkit (VTK) is a C++ library for 3D computer graphics,
|
||||
|
|
|
@ -957,7 +957,7 @@ language bindings to VIGRA.")
|
|||
(define-public libwebp
|
||||
(package
|
||||
(name "libwebp")
|
||||
(version "1.0.1")
|
||||
(version "1.0.2")
|
||||
(source
|
||||
(origin
|
||||
;; No tarballs are provided for >0.6.1.
|
||||
|
@ -968,7 +968,7 @@ language bindings to VIGRA.")
|
|||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"09l4pq4k2acglkmwr96arn79rssl54sv7vrdrgsxqlg7v8c882zh"))))
|
||||
"1ay0sai7f74dyk2gi975qfllmq534vnsx456npf16583mqb6ib2q"))))
|
||||
(build-system gnu-build-system)
|
||||
(inputs
|
||||
`(("freeglut" ,freeglut)
|
||||
|
|
|
@ -1860,6 +1860,231 @@ new Date();"))
|
|||
("which" ,which)
|
||||
("zip" ,zip)))))
|
||||
|
||||
(define-public openjdk11
|
||||
(package
|
||||
(name "openjdk")
|
||||
(version "11.28")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri "http://hg.openjdk.java.net/jdk/jdk/archive/76072a077ee1.tar.bz2")
|
||||
(file-name (string-append name "-" version ".tar.bz2"))
|
||||
(sha256
|
||||
(base32
|
||||
"0v705w1s9lrqalzahir78pk397rkk9gfvzq821yv8h3xha0bqi6w"))
|
||||
(modules '((guix build utils)))
|
||||
(snippet
|
||||
`(begin
|
||||
(for-each delete-file (find-files "." ".*.bin$"))
|
||||
(for-each delete-file (find-files "." ".*.exe$"))
|
||||
(for-each delete-file (find-files "." ".*.jar$"))
|
||||
#t))))
|
||||
(build-system gnu-build-system)
|
||||
(outputs '("out" "jdk" "doc"))
|
||||
(arguments
|
||||
`(#:imported-modules
|
||||
((guix build syscalls)
|
||||
(ice-9 binary-ports)
|
||||
(rnrs bytevectors)
|
||||
,@%gnu-build-system-modules)
|
||||
#:tests? #f; requires jtreg
|
||||
;; TODO package jtreg
|
||||
;; disable parallel builds, as the openjdk build system does not like -j
|
||||
#:parallel-build? #f
|
||||
#:parallel-tests? #f
|
||||
;; reenable parallel builds and tests by adding the flags manually
|
||||
#:make-flags (list (string-append "JOBS=" (number->string (parallel-job-count))))
|
||||
#:configure-flags
|
||||
`("--disable-option-checking" ; --enable-fast-install default flag errors otherwise
|
||||
"--disable-warnings-as-errors"
|
||||
;; make validate-runpath pass, see: http://issues.guix.info/issue/32894
|
||||
"--with-native-debug-symbols=zipped"
|
||||
;; do not use the bundled libraries
|
||||
"--with-giflib=system"
|
||||
"--with-lcms=system"
|
||||
"--with-libjpeg=system"
|
||||
"--with-libpng=system"
|
||||
;; allow the build system to locate the system freetype
|
||||
,(string-append "--with-freetype-include="
|
||||
(assoc-ref %build-inputs "freetype") "/include")
|
||||
,(string-append "--with-freetype-lib="
|
||||
(assoc-ref %build-inputs "freetype") "/lib"))
|
||||
;; TODO
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-after 'patch-source-shebangs 'fix-java-shebangs
|
||||
(lambda _
|
||||
;; This file was "fixed" by patch-source-shebangs, but it requires
|
||||
;; this exact first line.
|
||||
(substitute* "make/data/blacklistedcertsconverter/blacklisted.certs.pem"
|
||||
(("^#!.*") "#! java BlacklistedCertsConverter SHA-256\n"))
|
||||
#t))
|
||||
(replace 'build
|
||||
(lambda _
|
||||
(with-output-to-file ".src-rev"
|
||||
(lambda _
|
||||
(display ,version)))
|
||||
(setenv "GUIX_LD_WRAPPER_ALLOW_IMPURITIES" "yes")
|
||||
(invoke "make" "all")
|
||||
#t))
|
||||
;; jdk 11 does not build jre by default any more
|
||||
;; building it anyways
|
||||
;; for further information see:
|
||||
;; https://github.com/AdoptOpenJDK/openjdk-build/issues/356
|
||||
(add-after 'build 'build-jre
|
||||
(lambda _
|
||||
(invoke "make" "legacy-jre-image")
|
||||
#t))
|
||||
(replace 'install
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
(let ((out (assoc-ref outputs "out"))
|
||||
(jdk (assoc-ref outputs "jdk"))
|
||||
(doc (assoc-ref outputs "doc"))
|
||||
(images (car (find-files "build" ".*-server-release"
|
||||
#:directories? #t))))
|
||||
(copy-recursively (string-append images "/images/jdk") jdk)
|
||||
(copy-recursively (string-append images "/images/jre") out)
|
||||
(copy-recursively (string-append images "/images/docs") doc))
|
||||
#t))
|
||||
;; Some of the libraries in the lib/ folder link to libjvm.so.
|
||||
;; But that shared object is located in the server/ folder, so it
|
||||
;; cannot be found. This phase creates a symbolic link in the
|
||||
;; lib/ folder so that the other libraries can find it.
|
||||
;;
|
||||
;; See:
|
||||
;; https://lists.gnu.org/archive/html/guix-devel/2017-10/msg00169.html
|
||||
;;
|
||||
;; FIXME: Find the bug in the build system, so that this symlink is
|
||||
;; not needed.
|
||||
(add-after 'install 'install-libjvm
|
||||
(lambda* (#:key inputs outputs #:allow-other-keys)
|
||||
(let* ((lib-out (string-append (assoc-ref outputs "out")
|
||||
"/lib"))
|
||||
(lib-jdk (string-append (assoc-ref outputs "jdk")
|
||||
"/lib")))
|
||||
(symlink (string-append lib-jdk "/server/libjvm.so")
|
||||
(string-append lib-jdk "/libjvm.so"))
|
||||
(symlink (string-append lib-out "/server/libjvm.so")
|
||||
(string-append lib-out "/libjvm.so")))
|
||||
#t))
|
||||
(add-after 'install 'strip-character-data-timestamps
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
(use-modules (guix build syscalls))
|
||||
(let ((archive (string-append
|
||||
(assoc-ref outputs "jdk") "/lib/src.zip"))
|
||||
(dir (mkdtemp! "zip-contents.XXXXXX")))
|
||||
(with-directory-excursion dir
|
||||
(invoke "unzip" archive))
|
||||
(delete-file archive)
|
||||
(with-directory-excursion dir
|
||||
(let ((char-data-files (find-files "." "CharacterData.*")))
|
||||
(for-each (lambda (file)
|
||||
(substitute* file
|
||||
(((string-append "This file was generated "
|
||||
"AUTOMATICALLY from a template "
|
||||
"file.*"))
|
||||
(string-append "This file was generated "
|
||||
"AUTOMATICALLY from a template "
|
||||
"file"))))
|
||||
char-data-files)))
|
||||
(with-directory-excursion dir
|
||||
(let ((files (find-files "." ".*" #:directories? #t)))
|
||||
(apply invoke "zip" "-0" "-X" archive files))))))
|
||||
(add-after 'strip-character-data-timestamps 'strip-archive-timestamps
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
(use-modules (guix build syscalls)
|
||||
(ice-9 binary-ports)
|
||||
(rnrs bytevectors))
|
||||
(letrec ((repack-archive
|
||||
(lambda (archive)
|
||||
(let ((dir (mkdtemp! "zip-contents.XXXXXX")))
|
||||
(with-directory-excursion dir
|
||||
(invoke "unzip" archive))
|
||||
(delete-file archive)
|
||||
(for-each (compose repack-archive canonicalize-path)
|
||||
(find-files dir "(ct.sym|.*.jar)$"))
|
||||
(let ((reset-file-timestamp
|
||||
(lambda (file)
|
||||
(let ((s (lstat file)))
|
||||
(unless (eq? (stat:type s) 'symlink)
|
||||
(format #t "reset ~a~%" file)
|
||||
(utime file 0 0 0 0))))))
|
||||
(for-each reset-file-timestamp
|
||||
(find-files dir #:directories? #t)))
|
||||
(with-directory-excursion dir
|
||||
(let ((files (find-files "." ".*" #:directories? #t)))
|
||||
(apply invoke "zip" "-0" "-X" archive files)))))))
|
||||
(for-each repack-archive
|
||||
(find-files (assoc-ref outputs "doc") ".*.zip$"))
|
||||
(for-each repack-archive
|
||||
(find-files (assoc-ref outputs "jdk")
|
||||
".*.(zip|jar|diz)$"))
|
||||
(repack-archive (string-append (assoc-ref outputs "jdk") "/lib/ct.sym"))
|
||||
(let ((repack-jmod
|
||||
(lambda (file-name)
|
||||
(call-with-input-file file-name
|
||||
(lambda (file)
|
||||
(let ((header #vu8(#x4a #x4d #x01 #x00)))
|
||||
(if (equal? (get-bytevector-n
|
||||
file (bytevector-length header))
|
||||
header)
|
||||
(let* ((header-length (bytevector-length header))
|
||||
(temp-file (mkstemp!
|
||||
(string-copy
|
||||
"temp-file.XXXXXX")))
|
||||
(temp-filename (port-filename temp-file))
|
||||
(content-length
|
||||
(- (stat:size (stat file))
|
||||
header-length)))
|
||||
(sendfile temp-file file content-length header-length)
|
||||
(delete-file file-name)
|
||||
(close-port temp-file)
|
||||
(repack-archive (canonicalize-path temp-filename))
|
||||
(call-with-output-file file-name
|
||||
(lambda (file)
|
||||
(put-bytevector file header)
|
||||
(call-with-input-file temp-filename
|
||||
(lambda (temp-file)
|
||||
(sendfile
|
||||
file temp-file
|
||||
(stat:size (stat temp-file)) 0)))))))))))))
|
||||
(for-each repack-jmod
|
||||
(find-files (assoc-ref outputs "jdk") ".*.jmod$")))
|
||||
#t)))
|
||||
(add-after 'install 'remove-timestamp-from-api-summary
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
(substitute* (string-append (assoc-ref outputs "doc")
|
||||
"/api/overview-summary.html")
|
||||
(("Generated by javadoc \\(11-internal\\).*$")
|
||||
"Generated by javadoc (11-internal) -->\n"))
|
||||
#t)))))
|
||||
(inputs
|
||||
`(("alsa-lib" ,alsa-lib)
|
||||
("cups" ,cups)
|
||||
("fontconfig" ,fontconfig)
|
||||
("freetype" ,freetype)
|
||||
("giflib" ,giflib)
|
||||
("lcms" ,lcms)
|
||||
("libjpeg" ,libjpeg)
|
||||
("libpng" ,libpng)
|
||||
("libx11" ,libx11)
|
||||
("libxext" ,libxext)
|
||||
("libxrender" ,libxrender)
|
||||
("libxt" ,libxt)
|
||||
("libxtst" ,libxtst)))
|
||||
(native-inputs
|
||||
`(("autoconf" ,autoconf)
|
||||
("openjdk10" ,openjdk10)
|
||||
("openjdk10:jdk" ,openjdk10 "jdk")
|
||||
("pkg-config" ,pkg-config)
|
||||
("unzip" ,unzip)
|
||||
("which" ,which)
|
||||
("zip" ,zip)))
|
||||
(home-page "https://openjdk.java.net/projects/jdk/11/")
|
||||
(synopsis "Java development kit")
|
||||
(description
|
||||
"This package provides the Java development kit OpenJDK.")
|
||||
(license license:gpl2+)))
|
||||
|
||||
(define-public icedtea icedtea-8)
|
||||
|
||||
|
||||
|
|
|
@ -573,11 +573,14 @@ propagate their changes to their respective configuration files.")
|
|||
(modify-phases %standard-phases
|
||||
(add-before 'check 'blacklist-failing-test
|
||||
(lambda _
|
||||
;; Blacklist a failing test-function. FIXME: Make it pass.
|
||||
;; Test failure caused by stout/stderr being interleaved.
|
||||
;; Blacklist failing tests.
|
||||
(with-output-to-file "autotests/BLACKLIST"
|
||||
(lambda _
|
||||
(display "[test_channels]\n*\n")))
|
||||
;; FIXME: Make it pass. Test failure caused by stout/stderr
|
||||
;; being interleaved.
|
||||
(display "[test_channels]\n*\n")
|
||||
;; This fails with ENOSPC because of too many inotify watches.
|
||||
(display "[benchNotifyWatcher]\n*\n")))
|
||||
#t))
|
||||
;; See upstream commit ee424e9b62368485bba4193053cabb553a1d268e
|
||||
(add-after 'unpack 'fix-broken-test
|
||||
|
@ -636,7 +639,7 @@ many more.")
|
|||
(replace 'check
|
||||
(lambda _
|
||||
(setenv "DBUS_FATAL_WARNINGS" "0")
|
||||
(zero? (system* "dbus-launch" "ctest" ".")))))))
|
||||
(invoke "dbus-launch" "ctest" "."))))))
|
||||
(home-page "https://community.kde.org/Frameworks")
|
||||
(synopsis "Convenience classes for DBus")
|
||||
(description "KDBusAddons provides convenience classes on top of QtDBus,
|
||||
|
@ -1175,7 +1178,7 @@ lower level classes for interaction with the X Windowing System.")
|
|||
(replace 'check
|
||||
(lambda _
|
||||
(setenv "DBUS_FATAL_WARNINGS" "0")
|
||||
(zero? (system* "dbus-launch" "ctest" ".")))))))
|
||||
(invoke "dbus-launch" "ctest" "."))))))
|
||||
(home-page "https://community.kde.org/Frameworks")
|
||||
(synopsis "Qt wrapper for ModemManager DBus API")
|
||||
(description "ModemManagerQt provides access to all ModemManager features
|
||||
|
@ -1214,7 +1217,7 @@ messages.")
|
|||
(replace 'check
|
||||
(lambda _
|
||||
(setenv "DBUS_FATAL_WARNINGS" "0")
|
||||
(zero? (system* "dbus-launch" "ctest" ".")))))))
|
||||
(invoke "dbus-launch" "ctest" "."))))))
|
||||
(home-page "https://community.kde.org/Frameworks")
|
||||
(synopsis "Qt wrapper for NetworkManager DBus API")
|
||||
(description "NetworkManagerQt provides access to all NetworkManager
|
||||
|
@ -1327,7 +1330,7 @@ feel.")
|
|||
(replace 'check
|
||||
(lambda _
|
||||
(setenv "DBUS_FATAL_WARNINGS" "0")
|
||||
(zero? (system* "dbus-launch" "ctest" ".")))))))
|
||||
(invoke "dbus-launch" "ctest" "."))))))
|
||||
(native-inputs
|
||||
`(("bison" ,bison)
|
||||
("dbus" ,dbus)
|
||||
|
@ -1497,7 +1500,7 @@ with other frameworks.")
|
|||
(replace 'check
|
||||
(lambda _
|
||||
(setenv "DBUS_FATAL_WARNINGS" "0")
|
||||
(zero? (system* "dbus-launch" "ctest" ".")))))))
|
||||
(invoke "dbus-launch" "ctest" "."))))))
|
||||
(home-page "https://community.kde.org/Frameworks")
|
||||
(synopsis "Execute actions as privileged user")
|
||||
(description "KAuth provides a convenient, system-integrated way to offload
|
||||
|
@ -1806,7 +1809,7 @@ asynchronous jobs.")
|
|||
(replace 'check
|
||||
(lambda _
|
||||
(setenv "DBUS_FATAL_WARNINGS" "0")
|
||||
(zero? (system* "dbus-launch" "ctest" ".")))))))
|
||||
(invoke "dbus-launch" "ctest" "."))))))
|
||||
(home-page "https://community.kde.org/Frameworks")
|
||||
(synopsis "Desktop notifications")
|
||||
(description "KNotification is used to notify the user of an event. It
|
||||
|
@ -2011,7 +2014,7 @@ gallons).")
|
|||
(replace 'check
|
||||
(lambda _
|
||||
(setenv "DBUS_FATAL_WARNINGS" "0")
|
||||
(zero? (system* "dbus-launch" "ctest" ".")))))))
|
||||
(invoke "dbus-launch" "ctest" "."))))))
|
||||
(home-page "https://community.kde.org/Frameworks")
|
||||
(synopsis "File searching and indexing")
|
||||
(description "Baloo provides file searching and indexing. It does so by
|
||||
|
@ -3534,8 +3537,8 @@ workspace.")
|
|||
(lambda _
|
||||
(display "[testSmb]\n*\n")))
|
||||
;; kuniqueapptest hangs. FIXME: Make this test pass.
|
||||
(zero? (system* "dbus-launch" "ctest" "."
|
||||
"-E" "kstandarddirstest|kuniqueapptest")))))))
|
||||
(invoke "dbus-launch" "ctest" "."
|
||||
"-E" "kstandarddirstest|kuniqueapptest"))))))
|
||||
(home-page "https://community.kde.org/Frameworks")
|
||||
(synopsis "KDE Frameworks 5 porting aid from KDELibs4")
|
||||
(description "This framework provides code and utilities to ease the
|
||||
|
|
|
@ -318,7 +318,7 @@ plugins, as well as code to create plugins, or complete applications.")
|
|||
(define-public krita
|
||||
(package
|
||||
(name "krita")
|
||||
(version "4.1.5")
|
||||
(version "4.1.7.101")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
|
@ -327,7 +327,7 @@ plugins, as well as code to create plugins, or complete applications.")
|
|||
"/" name "-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1by8p8ifdp03f05bhg8ygdd1j036anfpjjnzbx63l2fbmy9k6q10"))))
|
||||
"0pvghb17vj3y19wa1n1zfg3yl5206ir3y45znrgdgdw076m5pjav"))))
|
||||
(build-system cmake-build-system)
|
||||
(arguments
|
||||
`(#:tests? #f
|
||||
|
@ -571,7 +571,7 @@ basic needs and easy to configure for those who want special setups.")
|
|||
(replace 'check
|
||||
(lambda _
|
||||
;; TODO: Fix this failing test-case
|
||||
(zero? (system* "ctest" "-E" "processtest")))))))
|
||||
(invoke "ctest" "-E" "processtest"))))))
|
||||
(home-page "https://www.kde.org/info/plasma-5.13.4.php")
|
||||
(synopsis "Network enabled task and system monitoring")
|
||||
(description "KSysGuard can obtain information on system load and
|
||||
|
|
|
@ -413,8 +413,8 @@ for ARCH and optionally VARIANT, or #f if there is no such configuration."
|
|||
It has been modified to remove all non-free binary blobs.")
|
||||
(license license:gpl2)))
|
||||
|
||||
(define %linux-libre-version "4.20.4")
|
||||
(define %linux-libre-hash "1p7ixkqvnr0mzyivyby8hfix44np7w1nvyxghz8wa1h2nhsszvzv")
|
||||
(define %linux-libre-version "4.20.5")
|
||||
(define %linux-libre-hash "1fis4izy97d35wb5626av235agn22ww8dfmmcdlbiay37ihwwm98")
|
||||
|
||||
(define %linux-libre-4.20-patches
|
||||
(list %boot-logo-patch
|
||||
|
@ -427,8 +427,8 @@ It has been modified to remove all non-free binary blobs.")
|
|||
#:patches %linux-libre-4.20-patches
|
||||
#:configuration-file kernel-config))
|
||||
|
||||
(define %linux-libre-4.19-version "4.19.17")
|
||||
(define %linux-libre-4.19-hash "0friqd9wyhddjli4m41wd994ygnwng40a95ry14478rkadfv7iwh")
|
||||
(define %linux-libre-4.19-version "4.19.18")
|
||||
(define %linux-libre-4.19-hash "1m3qbd09zd7llq0fjsccyjr070n6szl5dj10qrlpd54bnvry22fc")
|
||||
|
||||
(define %linux-libre-4.19-patches
|
||||
(list %boot-logo-patch
|
||||
|
@ -441,8 +441,8 @@ It has been modified to remove all non-free binary blobs.")
|
|||
#:patches %linux-libre-4.19-patches
|
||||
#:configuration-file kernel-config))
|
||||
|
||||
(define %linux-libre-4.14-version "4.14.95")
|
||||
(define %linux-libre-4.14-hash "07bxbwb5fan96aws6g91vxkrvl80a53wjbl8xkh4q3c6iah8wkvf")
|
||||
(define %linux-libre-4.14-version "4.14.96")
|
||||
(define %linux-libre-4.14-hash "03g28n9n4ci8y2qs59vili7dkqag7fmhr9q6ah8l66qn37d375k9")
|
||||
|
||||
(define-public linux-libre-4.14
|
||||
(make-linux-libre %linux-libre-4.14-version
|
||||
|
@ -451,14 +451,14 @@ It has been modified to remove all non-free binary blobs.")
|
|||
#:configuration-file kernel-config))
|
||||
|
||||
(define-public linux-libre-4.9
|
||||
(make-linux-libre "4.9.152"
|
||||
"0qssksykzbcy58aqvmxk9h1xpaqvfwp31xvxfmwxdh7z4n3yn60y"
|
||||
(make-linux-libre "4.9.153"
|
||||
"1ks910wk4nggp7ygai2pnr5b61ix2j3gxk95rv9wkd5za15sgbqa"
|
||||
'("x86_64-linux" "i686-linux")
|
||||
#:configuration-file kernel-config))
|
||||
|
||||
(define-public linux-libre-4.4
|
||||
(make-linux-libre "4.4.171"
|
||||
"01jd2672fq633xw5vdmifvd6dy93pif28xkvymah82jm9xj1lbqh"
|
||||
(make-linux-libre "4.4.172"
|
||||
"000bz3jfg0li3rwlf2c80df6682lhi59hj1kwm4hw7whgg69xi7b"
|
||||
'("x86_64-linux" "i686-linux")
|
||||
#:configuration-file kernel-config))
|
||||
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
;;; GNU Guix --- Functional package management for GNU
|
||||
;;; Copyright © 2014, 2016, 2018 Eric Bavier <bavier@member.fsf.org>
|
||||
;;; Copyright © 2015 Mark H Weaver <mhw@netris.org>
|
||||
;;; Copyright © 2015, 2017, 2018 Ludovic Courtès <ludo@gnu.org>
|
||||
;;; Copyright © 2015, 2017, 2018, 2019 Ludovic Courtès <ludo@gnu.org>
|
||||
;;; Copyright © 2016 Dennis Mungai <dmngaie@gmail.com>
|
||||
;;; Copyright © 2016, 2018 Ricardo Wurmus <rekado@elephly.net>
|
||||
;;; Copyright © 2017 Roel Janssen <roel@gnu.org>
|
||||
|
@ -400,7 +400,8 @@ code analysis tools.")
|
|||
(clang-runtime-from-llvm
|
||||
llvm-3.5
|
||||
"1hsdnzzdr5kglz6fnv3lcsjs222zjsy14y8ax9dy6zqysanplbal"
|
||||
'("clang-runtime-asan-build-fixes.patch")))
|
||||
'("clang-runtime-asan-build-fixes.patch"
|
||||
"clang-3.5-libsanitizer-ustat-fix.patch")))
|
||||
|
||||
(define-public clang-3.5
|
||||
(clang-from-llvm llvm-3.5 clang-runtime-3.5
|
||||
|
|
|
@ -27,6 +27,7 @@
|
|||
;;; Copyright © 2018 Pierre Langlois <pierre.langlois@gmx.com>
|
||||
;;; Copyright © 2018 Alex Vong <alexvong1995@gmail.com>
|
||||
;;; Copyright © 2018 Gábor Boskovits <boskovits@gmail.com>
|
||||
;;; Copyright © 2018, 2019 Ricardo Wurmus <rekado@elephly.net>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
|
@ -76,6 +77,7 @@
|
|||
#:use-module (gnu packages gsasl)
|
||||
#:use-module (gnu packages gtk)
|
||||
#:use-module (gnu packages guile)
|
||||
#:use-module (gnu packages guile-xyz)
|
||||
#:use-module (gnu packages flex)
|
||||
#:use-module (gnu packages kerberos)
|
||||
#:use-module (gnu packages libcanberra)
|
||||
|
@ -259,14 +261,14 @@ aliasing facilities to work just as they would on normal mail.")
|
|||
(define-public mutt
|
||||
(package
|
||||
(name "mutt")
|
||||
(version "1.11.0")
|
||||
(version "1.11.2")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://bitbucket.org/mutt/mutt/downloads/"
|
||||
"mutt-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1qqhkhlzvjj0iih8vm0wfagv4fzqqy1wnsb4sqsfv7w06ccjdjcj"))
|
||||
"08w7lbhj5ba2zkjcd0cxkgfiy9y82yhg731xjg9i9292kz1x8p6s"))
|
||||
(patches (search-patches "mutt-store-references.patch"))))
|
||||
(build-system gnu-build-system)
|
||||
(inputs
|
||||
|
@ -1071,7 +1073,7 @@ which can add many functionalities to the base client.")
|
|||
(define-public msmtp
|
||||
(package
|
||||
(name "msmtp")
|
||||
(version "1.8.1")
|
||||
(version "1.8.2")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
|
@ -1079,7 +1081,7 @@ which can add many functionalities to the base client.")
|
|||
"/msmtp-" version ".tar.xz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1nm4vizrnrrnknc4mc8nr7grz9q76m1vraa0hsl5rfm34gnsg8ph"))))
|
||||
"14w7lmw1jxlganfk089b0ib23y5917mxbg3xqpid007dd4cmq66i"))))
|
||||
(build-system gnu-build-system)
|
||||
(inputs
|
||||
`(("libsecret" ,libsecret)
|
||||
|
@ -2651,8 +2653,8 @@ replacement for the @code{urlview} program.")
|
|||
(license gpl2+)))
|
||||
|
||||
(define-public mumi
|
||||
(let ((commit "bfd96ce76b4600ae232e6548b26c9365095fd174")
|
||||
(revision "2"))
|
||||
(let ((commit "ea5a738010148284aed211da953ad670003aefea")
|
||||
(revision "3"))
|
||||
(package
|
||||
(name "mumi")
|
||||
(version (git-version "0.0.0" revision commit))
|
||||
|
@ -2664,7 +2666,7 @@ replacement for the @code{urlview} program.")
|
|||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"05miwfi1bh0v9x2gvn15bwkb3gn4xy53z506ysjzns2y497zkc5h"))))
|
||||
"0ci5x8dqjmp74w33q2dbs5csxp4ilfmc1xxaa8q2jnh52d7597hl"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
`(#:phases
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
;;; Copyright © 2015 Alex Kost <alezost@gmail.com>
|
||||
;;; Copyright © 2015, 2016 Efraim Flashner <efraim@flashner.co.il>
|
||||
;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr>
|
||||
;;; Copyright © 2018 Rutger Helling <rhelling@mykolab.com>
|
||||
;;; Copyright © 2018, 2019 Rutger Helling <rhelling@mykolab.com>
|
||||
;;; Copyright © 2018, 2019 Marius Bakke <mbakke@fastmail.com>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
|
@ -241,7 +241,7 @@ automatically.")
|
|||
(define-public scdoc
|
||||
(package
|
||||
(name "scdoc")
|
||||
(version "1.6.0")
|
||||
(version "1.8.1")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
|
@ -250,7 +250,7 @@ automatically.")
|
|||
(file-name (string-append name "-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1ca3js4arkg28gg2iszxxyrq7kgsrz482d1szv5dfd471h3vr5m3"))))
|
||||
"1f3qrnbjr9ikbdvpsyx726nyiz4f7ka38rimy9fvbl7kmi62w1v7"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
`(#:make-flags '("CC=gcc")
|
||||
|
|
|
@ -48,6 +48,7 @@
|
|||
|
||||
(define-module (gnu packages maths)
|
||||
#:use-module (ice-9 regex)
|
||||
#:use-module (ice-9 match)
|
||||
#:use-module (gnu packages)
|
||||
#:use-module ((guix licenses) #:prefix license:)
|
||||
#:use-module (guix packages)
|
||||
|
@ -2297,20 +2298,18 @@ also provides threshold-based ILU factorization preconditioners.")
|
|||
(define-public superlu-dist
|
||||
(package
|
||||
(name "superlu-dist")
|
||||
(version "5.3.0")
|
||||
(version "6.1.0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "http://crd-legacy.lbl.gov/~xiaoye/SuperLU/"
|
||||
"superlu_dist_" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32 "0ja5ihqivkda1wd58y4lmzvmwssm9g91f70c5q0fzwhng6580h6y"))
|
||||
(base32 "0pqgcgh1yxhfzs99fas3mggajzd5wca3nbyp878rziy74gfk03dl"))
|
||||
(modules '((guix build utils)))
|
||||
(snippet
|
||||
;; Replace the non-free implementation of MC64 with a stub
|
||||
'(begin
|
||||
(use-modules (ice-9 regex)
|
||||
(ice-9 rdelim))
|
||||
(call-with-output-file "SRC/mc64ad_dist.c"
|
||||
(lambda (port)
|
||||
(display "
|
||||
|
@ -2326,92 +2325,57 @@ void mc64ad_dist (int *a, int *b, int *c, int *d, int *e, double *f, int *g,
|
|||
abort ();
|
||||
}\n" port)))
|
||||
(substitute* "SRC/util.c" ;adjust default algorithm
|
||||
(("RowPerm[[:blank:]]*=[[:blank:]]*LargeDiag")
|
||||
"RowPerm = NOROWPERM"))
|
||||
(("RowPerm[[:blank:]]*=[[:blank:]]*LargeDiag_MC64;")
|
||||
;; TODO: set to "LargeDiag_AWPM" once combinatorial-blas has
|
||||
;; general (i.e. non-square) processor-grid support.
|
||||
"RowPerm = NOROWPERM;"))
|
||||
#t))
|
||||
(patches (search-patches "superlu-dist-scotchmetis.patch"))))
|
||||
(build-system gnu-build-system)
|
||||
(patches (search-patches "superlu-dist-scotchmetis.patch"
|
||||
"superlu-dist-awpm-grid.patch"))))
|
||||
(build-system cmake-build-system)
|
||||
(native-inputs
|
||||
`(("tcsh" ,tcsh)))
|
||||
(inputs
|
||||
`(("gfortran" ,gfortran)))
|
||||
`(("gfortran" ,gfortran)
|
||||
("blas" ,openblas)
|
||||
("lapack" ,lapack)
|
||||
("combblas" ,combinatorial-blas)))
|
||||
(propagated-inputs
|
||||
`(("openmpi" ,openmpi) ;headers include MPI heades
|
||||
("lapack" ,lapack) ;required to link with output library
|
||||
("pt-scotch" ,pt-scotch))) ;same
|
||||
`(("mpi" ,openmpi) ;headers include MPI heades
|
||||
("parmetis" ,pt-scotch32 "metis")
|
||||
("pt-scotch" ,pt-scotch32)))
|
||||
(arguments
|
||||
`(#:parallel-build? #f ;race conditions using ar
|
||||
`(#:parallel-tests? #f ;tests use MPI and OpenMP
|
||||
#:configure-flags (list "-DBUILD_SHARED_LIBS:BOOL=YES"
|
||||
"-DTPL_ENABLE_COMBBLASLIB=YES"
|
||||
"-DTPL_BLAS_LIBRARIES=-lopenblas"
|
||||
"-DTPL_LAPACK_LIBRARIES=-llapack"
|
||||
(string-append "-DTPL_PARMETIS_LIBRARIES="
|
||||
(string-join
|
||||
'("ptscotchparmetis" "ptscotch" "ptscotcherr"
|
||||
"scotchmetis" "scotch" "scotcherr")
|
||||
";"))
|
||||
(string-append "-DTPL_PARMETIS_INCLUDE_DIRS="
|
||||
(assoc-ref %build-inputs "parmetis")
|
||||
"/include")
|
||||
"-DTPL_ENABLE_COMBBLASLIB=ON"
|
||||
(string-append "-DTPL_COMBBLAS_INCLUDE_DIRS="
|
||||
(assoc-ref %build-inputs "combblas")
|
||||
"/include/CombBLAS;"
|
||||
(assoc-ref %build-inputs "combblas")
|
||||
"/include/BipartiteMatchings")
|
||||
"-DTPL_COMBBLAS_LIBRARIES=CombBLAS")
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(replace 'configure
|
||||
(lambda* (#:key inputs outputs #:allow-other-keys)
|
||||
(call-with-output-file "make.inc"
|
||||
(lambda (port)
|
||||
(format port "
|
||||
PLAT =
|
||||
DSuperLUroot = ~a
|
||||
DSUPERLULIB = ~a/lib/libsuperlu_dist.a
|
||||
BLASDEF = -DUSE_VENDOR_BLAS
|
||||
BLASLIB = -L~a/lib -lblas
|
||||
PARMETISLIB = -L~a/lib \
|
||||
-lptscotchparmetis -lptscotch -lptscotcherr -lptscotcherrexit \
|
||||
-lscotch -lscotcherr -lscotcherrexit
|
||||
METISLIB = -L~:*~a/lib \
|
||||
-lscotchmetis -lscotch -lscotcherr -lscotcherrexit
|
||||
LIBS = $(DSUPERLULIB) $(PARMETISLIB) $(METISLIB) $(BLASLIB)
|
||||
ARCH = ar
|
||||
ARCHFLAGS = cr
|
||||
RANLIB = ranlib
|
||||
CC = mpicc
|
||||
PIC = -fPIC
|
||||
CFLAGS = -O3 -g -DPRNTlevel=0 $(PIC)
|
||||
NOOPTS = -O0 -g $(PIC)
|
||||
FORTRAN = mpifort
|
||||
FFLAGS = -O2 -g $(PIC)
|
||||
LOADER = $(CC)
|
||||
CDEFS = -DAdd_"
|
||||
(getcwd)
|
||||
(assoc-ref outputs "out")
|
||||
(assoc-ref inputs "lapack")
|
||||
(assoc-ref inputs "pt-scotch"))))
|
||||
#t))
|
||||
(add-after 'unpack 'remove-broken-symlinks
|
||||
(add-before 'configure 'set-c++-standard
|
||||
(lambda _
|
||||
(for-each delete-file
|
||||
(find-files "MAKE_INC" "\\.#make\\..*"))
|
||||
#t))
|
||||
(add-before 'build 'create-install-directories
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
(for-each
|
||||
(lambda (dir)
|
||||
(mkdir-p (string-append (assoc-ref outputs "out")
|
||||
"/" dir)))
|
||||
'("lib" "include"))
|
||||
#t))
|
||||
(substitute* "CMakeLists.txt"
|
||||
;; AWPM headers require C++14
|
||||
(("CMAKE_CXX_STANDARD 11") "CMAKE_CXX_STANDARD 14"))))
|
||||
(add-before 'check 'mpi-setup
|
||||
,%openmpi-setup)
|
||||
(replace 'check
|
||||
(lambda _
|
||||
(with-directory-excursion "EXAMPLE"
|
||||
(invoke "mpirun" "-n" "2"
|
||||
"./pddrive" "-r" "1" "-c" "2" "g20.rua")
|
||||
(invoke "mpirun" "-n" "2"
|
||||
"./pzdrive" "-r" "1" "-c" "2" "cg20.cua"))
|
||||
#t))
|
||||
(replace 'install
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
;; Library is placed in lib during the build phase. Copy over
|
||||
;; headers to include.
|
||||
(let* ((out (assoc-ref outputs "out"))
|
||||
(incdir (string-append out "/include")))
|
||||
(for-each (lambda (file)
|
||||
(let ((base (basename file)))
|
||||
(format #t "installing `~a' to `~a'~%"
|
||||
base incdir)
|
||||
(copy-file file
|
||||
(string-append incdir "/" base))))
|
||||
(find-files "SRC" ".*\\.h$")))
|
||||
#t)))))
|
||||
(add-before 'check 'omp-setup
|
||||
(lambda _ (setenv "OMP_NUM_THREADS" "1") #t)))))
|
||||
(home-page (package-home-page superlu))
|
||||
(synopsis "Parallel supernodal direct solver")
|
||||
(description
|
||||
|
@ -2423,25 +2387,25 @@ implemented in ANSI C, and MPI for communications.")
|
|||
(define-public scotch
|
||||
(package
|
||||
(name "scotch")
|
||||
(version "6.0.5a")
|
||||
(version "6.0.6")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://gforge.inria.fr/frs/download.php/"
|
||||
"latestfile/298/scotch_" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32 "0vsmgjz8qv80di3ljmc7hbdsizxxxwy2b9rgd2fl1mdc6dgbj8av"))
|
||||
(patches (search-patches "scotch-test-threading.patch"
|
||||
"scotch-build-parallelism.patch"
|
||||
"scotch-graph-induce-type-64.patch"
|
||||
"scotch-graph-diam-64.patch"))))
|
||||
(base32 "1ky4k9r6jvajhqaqnnx6h8fkmds2yxgp70dpr1qzwcyhi2nhqvv8"))
|
||||
(patches (search-patches "scotch-build-parallelism.patch"
|
||||
"scotch-integer-declarations.patch"))))
|
||||
(build-system gnu-build-system)
|
||||
(inputs
|
||||
`(("zlib" ,zlib)
|
||||
("flex" ,flex)
|
||||
("bison" ,bison)))
|
||||
(outputs '("out" "metis"))
|
||||
(arguments
|
||||
`(#:phases
|
||||
`(#:make-flags (list (string-append "prefix=" %output))
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-after
|
||||
'unpack 'chdir-to-src
|
||||
|
@ -2476,7 +2440,7 @@ YACC = bison -pscotchyy -y -b y
|
|||
'("COMMON_FILE_COMPRESS_GZ"
|
||||
"COMMON_PTHREAD"
|
||||
"COMMON_RANDOM_FIXED_SEED"
|
||||
"INTSIZE64" ;use 'long' instead of 'int'
|
||||
"INTSIZE64" ;use 'int64_t'
|
||||
;; Prevents symbolc clashes with libesmumps
|
||||
"SCOTCH_RENAME"
|
||||
;; XXX: Causes invalid frees in superlu-dist tests
|
||||
|
@ -2489,22 +2453,21 @@ YACC = bison -pscotchyy -y -b y
|
|||
(invoke "make"
|
||||
(format #f "-j~a" (parallel-job-count))
|
||||
"esmumps")))
|
||||
(replace
|
||||
'install
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
(let ((out (assoc-ref outputs "out")))
|
||||
(mkdir out)
|
||||
(invoke "make"
|
||||
(string-append "prefix=" out)
|
||||
"install")
|
||||
;; esmumps files are not installed with the above
|
||||
(for-each (lambda (f)
|
||||
(copy-file f (string-append out "/include/" f)))
|
||||
(find-files "../include" ".*esmumps.h$"))
|
||||
(for-each (lambda (f)
|
||||
(copy-file f (string-append out "/lib/" f)))
|
||||
(find-files "../lib" "^lib.*esmumps.*"))
|
||||
#t))))))
|
||||
(add-before 'install 'make-install-dirs
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
(mkdir (assoc-ref outputs "out"))))
|
||||
(add-after 'install 'install-metis
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
(let ((out (assoc-ref outputs "metis")))
|
||||
(mkdir out)
|
||||
;; metis files are not installed with 'make install'
|
||||
(for-each (lambda (f)
|
||||
(install-file f (string-append out "/include")))
|
||||
(find-files "../include/" ".*metis\\.h"))
|
||||
(for-each (lambda (f)
|
||||
(install-file f (string-append out "/lib")))
|
||||
(find-files "../lib/" ".*metis\\..*"))
|
||||
#t))))))
|
||||
(home-page "http://www.labri.fr/perso/pelegrin/scotch/")
|
||||
(synopsis "Programs and libraries for graph algorithms")
|
||||
(description "SCOTCH is a set of programs and libraries which implement
|
||||
|
@ -2742,6 +2705,7 @@ to BMP, JPEG or PNG image formats.")
|
|||
(inputs
|
||||
`(("gcl" ,gcl)
|
||||
("gnuplot" ,gnuplot) ;for plots
|
||||
("sed" ,sed)
|
||||
("tk" ,tk))) ;Tcl/Tk is used by 'xmaxima'
|
||||
(native-inputs
|
||||
`(("texinfo" ,texinfo)
|
||||
|
@ -2764,6 +2728,17 @@ to BMP, JPEG or PNG image formats.")
|
|||
#:make-flags (list "TMPDIR=/tmp")
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-after 'unpack 'patch-paths
|
||||
(lambda* (#:key inputs #:allow-other-keys)
|
||||
(let* ((sed (string-append (assoc-ref inputs "sed") "/bin/sed"))
|
||||
(coreutils (assoc-ref inputs "coreutils"))
|
||||
(dirname (string-append coreutils "/bin/dirname"))
|
||||
(head (string-append coreutils "/bin/head")))
|
||||
(substitute* "src/maxima.in"
|
||||
(("sed ") (string-append sed " "))
|
||||
(("dirname") dirname)
|
||||
(("head") head))
|
||||
#t)))
|
||||
(add-before 'check 'pre-check
|
||||
(lambda _
|
||||
(chmod "src/maxima" #o555)
|
||||
|
@ -3531,7 +3506,11 @@ in finite element programs.")
|
|||
``("-DMPI_C_COMPILER=mpicc"
|
||||
"-DMPI_CXX_COMPILER=mpicxx"
|
||||
"-DMPI_Fortran_COMPILER=mpifort"
|
||||
,@,cf))))
|
||||
,@,cf))
|
||||
((#:phases phases '%standard-phases)
|
||||
`(modify-phases ,phases
|
||||
(add-before 'check 'mpi-setup
|
||||
,%openmpi-setup)))))
|
||||
(synopsis "Finite element library (with MPI support)")))
|
||||
|
||||
(define-public flann
|
||||
|
@ -4215,3 +4194,53 @@ easily be incorporated into existing simulation codes.")
|
|||
(add-before 'check 'mpi-setup
|
||||
,%openmpi-setup)))))
|
||||
(synopsis "SUNDIALS with OpenMPI support")))
|
||||
|
||||
(define-public combinatorial-blas
|
||||
(package
|
||||
(name "combinatorial-blas")
|
||||
(version "1.6.2")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "http://eecs.berkeley.edu/~aydin/CombBLAS_FILES/"
|
||||
"CombBLAS_beta_"
|
||||
(match (string-split version #\.)
|
||||
((major minor patch)
|
||||
(string-append major minor "_" patch))) ;e.g. "16_2"
|
||||
".tgz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1a9wbgdqyy1whhfc0yl0yqkax3amnqa6iihhq48d063gc0jwfd9a"))
|
||||
(patches (search-patches "combinatorial-blas-awpm.patch"
|
||||
"combinatorial-blas-io-fix.patch"))))
|
||||
(build-system cmake-build-system)
|
||||
(inputs
|
||||
`(("mpi" ,openmpi)
|
||||
("test-data" ,(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://people.eecs.berkeley.edu/~aydin/"
|
||||
"CombBLAS_FILES/testdata_combblas1.6.1.tgz"))
|
||||
(sha256
|
||||
(base32
|
||||
"01y2781cy3fww7znmidrp85mf8zx0c905w5vzvk1mgrmhhynim87"))))))
|
||||
(arguments
|
||||
`(#:configure-flags '("-DBUILD_SHARED_LIBS:BOOL=YES"
|
||||
"-DCMAKE_CXX_FLAGS=-DUSE_FUNNEL")
|
||||
#:parallel-tests? #f ;tests use 'mpiexec -n4'
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-before 'check 'mpi-setup
|
||||
,%openmpi-setup)
|
||||
(add-before 'check 'test-setup
|
||||
(lambda* (#:key inputs #:allow-other-keys)
|
||||
(setenv "OMP_NUM_THREADS" "2")
|
||||
(invoke "tar" "xf" (assoc-ref inputs "test-data")))))))
|
||||
(home-page "https://people.eecs.berkeley.edu/~aydin/CombBLAS/html/")
|
||||
(synopsis "Linear algebra primitives for graph analytics")
|
||||
(description "The Combinatorial BLAS (CombBLAS) is an extensible
|
||||
distributed-memory parallel graph library offering a small but powerful set of
|
||||
linear algebra primitives specifically targeting graph analytics.")
|
||||
(license (list
|
||||
license:gpl2+ ;include/psort/(funnel|sort)*.h
|
||||
license:x11 ;usort and psort
|
||||
license:bsd-3)))) ;CombBLAS and MersenneTwister.h
|
||||
|
|
|
@ -50,7 +50,7 @@
|
|||
;; to migrate to 2.0.
|
||||
(package
|
||||
(name "hwloc")
|
||||
(version "1.11.10")
|
||||
(version "1.11.12")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://www.open-mpi.org/software/hwloc/v"
|
||||
|
@ -58,7 +58,7 @@
|
|||
"/downloads/hwloc-" version ".tar.bz2"))
|
||||
(sha256
|
||||
(base32
|
||||
"1ryibcng40xcq22lsj85fn2vcvrksdx9rr3wwxpq8dw37lw0is1b"))))
|
||||
"0za1b9lvrm3rhn0lrxja5f64r0aq1qs4m0pxn1ji2mbi8ndppyyx"))))
|
||||
(build-system gnu-build-system)
|
||||
(outputs '("out" ;'lstopo' & co., depends on Cairo, libx11, etc.
|
||||
"lib" ;small closure
|
||||
|
@ -128,7 +128,7 @@ bind processes, and much more.")
|
|||
;; Note: 2.0 isn't the default yet, see above.
|
||||
(package
|
||||
(inherit hwloc)
|
||||
(version "2.0.2")
|
||||
(version "2.0.3")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://www.open-mpi.org/software/hwloc/v"
|
||||
|
@ -136,7 +136,7 @@ bind processes, and much more.")
|
|||
"/downloads/hwloc-" version ".tar.bz2"))
|
||||
(sha256
|
||||
(base32
|
||||
"1phc863d5b2fvwpyyq4mlh4rkjdslh6h0h197zmyk3prwrq7si8l"))))
|
||||
"09f7ajak8wv5issr0hw72vs3jkldc7crcc7z5fd34sspkvrsm4z3"))))
|
||||
|
||||
;; libnuma is no longer needed.
|
||||
(inputs (alist-delete "numactl" (package-inputs hwloc)))
|
||||
|
|
|
@ -10,7 +10,7 @@
|
|||
;;; Copyright © 2016 Alex Griffin <a@ajgrf.com>
|
||||
;;; Copyright © 2017 Nils Gillmann <ng0@n0.is>
|
||||
;;; Copyright © 2017 Rodger Fox <thylakoid@openmailbox.org>
|
||||
;;; Copyright © 2017, 2018 Nicolas Goaziou <mail@nicolasgoaziou.fr>
|
||||
;;; Copyright © 2017, 2018, 2019 Nicolas Goaziou <mail@nicolasgoaziou.fr>
|
||||
;;; Copyright © 2017, 2018 Pierre Langlois <pierre.langlois@gmx.com>
|
||||
;;; Copyright © 2017 Arun Isaac <arunisaac@systemreboot.net>
|
||||
;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr>
|
||||
|
@ -19,6 +19,7 @@
|
|||
;;; Copyright © 2018 Pierre Neidhardt <mail@ambrevar.xyz>
|
||||
;;; Copyright © 2018 Ludovic Courtès <ludo@gnu.org>
|
||||
;;; Copyright © 2018 Björn Höfling <bjoern.hoefling@bjoernhoefling.de>
|
||||
;;; Copyright © 2019 Gabriel Hondet <gabrielhondet@gmail.com>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
|
@ -2577,6 +2578,28 @@ MusicBrainz database.")
|
|||
(define-public python2-musicbrainzngs
|
||||
(package-with-python2 python-musicbrainzngs))
|
||||
|
||||
(define-public python-isrcsubmit
|
||||
(package
|
||||
(name "python-isrcsubmit")
|
||||
(version "2.0.1")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "isrcsubmit" version))
|
||||
(sha256
|
||||
(base32
|
||||
"0jh4cni8qhri6dh83cmp0i0m0384vv0vznlygv49wj9xzh1d99qv"))))
|
||||
(build-system python-build-system)
|
||||
(propagated-inputs
|
||||
`(("python-discid" ,python-discid)
|
||||
("python-musicbrainzngs" ,python-musicbrainzngs)))
|
||||
(home-page "https://github.com/JonnyJD/musicbrainz-isrcsubmit")
|
||||
(synopsis "Submit ISRCs from CDs to MusicBrainz")
|
||||
(description "@code{isrcsubmit} is a tool to extract @dfn{International
|
||||
Standard Recording Code} (ISRCs) from audio CDs and submit them to
|
||||
@url{https://musicbrainz.org/, MusicBrainz}.")
|
||||
(license license:gpl3+)))
|
||||
|
||||
(define-public python2-pyechonest
|
||||
(package
|
||||
(name "python2-pyechonest")
|
||||
|
@ -3613,7 +3636,7 @@ audio samples and various soft sythesizers. It can receive input from a MIDI ke
|
|||
(define-public musescore
|
||||
(package
|
||||
(name "musescore")
|
||||
(version "3.0")
|
||||
(version "3.0.1")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
|
@ -3622,7 +3645,7 @@ audio samples and various soft sythesizers. It can receive input from a MIDI ke
|
|||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"0g8n8xpw5d6wh8bwbvy12sinl9i0ir009sr28i4izr28lr4x8v50"))
|
||||
"085qwfv3fsgry1pnx531w83lnyvf7kbaklipdf8zqa9shi6d3x9i"))
|
||||
(modules '((guix build utils)))
|
||||
(snippet
|
||||
;; Un-bundle OpenSSL and remove unused libraries.
|
||||
|
@ -4076,6 +4099,42 @@ it provides a submission URL for adding the disc ID to the database and gathers
|
|||
ISRCs and the MCN (=UPC/EAN) from disc.")
|
||||
(license license:lgpl2.1+)))
|
||||
|
||||
(define-public python-discid
|
||||
(package
|
||||
(name "python-discid")
|
||||
(version "1.1.1")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "discid" version))
|
||||
(sha256
|
||||
(base32
|
||||
"1fgp67nhqlbvhhwrcxq5avil7alpzw4s4579hlyvxzbphdnbz8vq"))))
|
||||
(build-system python-build-system)
|
||||
(inputs
|
||||
`(("libdiscid" ,libdiscid)))
|
||||
(arguments
|
||||
`(#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-before 'build 'set-libdiscid
|
||||
;; Set path of libdiscid
|
||||
(lambda* (#:key inputs #:allow-other-keys)
|
||||
(let ((discid (assoc-ref inputs "libdiscid")))
|
||||
(substitute* "discid/libdiscid.py"
|
||||
(("lib_name = (.*)$" all name)
|
||||
(string-append "lib_name = \"" discid
|
||||
"/lib/libdiscid.so.0\"\n")))
|
||||
#t))))))
|
||||
(home-page "https://python-discid.readthedocs.io/")
|
||||
(synopsis "Python bindings for Libdiscid")
|
||||
(description
|
||||
"This package provides Python bindings for the Libdiscid library. The
|
||||
main purpose is the calculation of @url{https://musicbrainz.org/doc/Disc%20ID,
|
||||
Disc IDs} for use with the MusicBrainz database. Additionally the disc
|
||||
@dfn{Media Catalog Number} (MCN) and track @dfn{International Standard
|
||||
Recording Code} (ISRC) can be extracted.}")
|
||||
(license license:lgpl3+)))
|
||||
|
||||
(define-public libmusicbrainz
|
||||
(package
|
||||
(name "libmusicbrainz")
|
||||
|
|
|
@ -547,7 +547,7 @@ and up to 1 Mbit/s downstream.")
|
|||
(define-public whois
|
||||
(package
|
||||
(name "whois")
|
||||
(version "5.4.0")
|
||||
(version "5.4.1")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
|
@ -555,7 +555,7 @@ and up to 1 Mbit/s downstream.")
|
|||
name "_" version ".tar.xz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0y73b3z1akni620s1hlrijwdrk95ca1c8csjds48vpd6z86awx9p"))))
|
||||
"0l7chmlvsl22r5cfm6fpm999z2n3sjrnx3ha8f8kf42cn4gmkriy"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
`(#:tests? #f ; no test suite
|
||||
|
|
|
@ -52,6 +52,7 @@
|
|||
#:use-module (gnu packages graphviz)
|
||||
#:use-module (gnu packages gtk)
|
||||
#:use-module (gnu packages guile)
|
||||
#:use-module (gnu packages guile-xyz)
|
||||
#:use-module (gnu packages linux)
|
||||
#:use-module (gnu packages lisp)
|
||||
#:use-module (gnu packages man)
|
||||
|
@ -106,8 +107,8 @@
|
|||
;; Note: the 'update-guix-package.scm' script expects this definition to
|
||||
;; start precisely like this.
|
||||
(let ((version "0.16.0")
|
||||
(commit "7ba2b27467a39956f10e2e11061d9569e4b7d632")
|
||||
(revision 8))
|
||||
(commit "4bddd12ad540d45a33a5f9f129b896843dca603f")
|
||||
(revision 9))
|
||||
(package
|
||||
(name "guix")
|
||||
|
||||
|
@ -123,7 +124,7 @@
|
|||
(commit commit)))
|
||||
(sha256
|
||||
(base32
|
||||
"14srgkl0vyr6q7azv76nncp63gngmm71y18ybyj9f6l6s4shbcm4"))
|
||||
"1abn4ghb25kn0cmr9dbb3q3fxdcc0g2fnnmbrykxv111s6ahdmlw"))
|
||||
(file-name (string-append "guix-" version "-checkout"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
|
@ -301,9 +302,6 @@ the Nix package manager.")
|
|||
(license license:gpl3+)
|
||||
(properties '((ftp-server . "alpha.gnu.org"))))))
|
||||
|
||||
;; Alias for backward compatibility.
|
||||
(define-public guix-devel guix)
|
||||
|
||||
(define-public guix-daemon
|
||||
;; This package is for internal consumption: it allows us to quickly build
|
||||
;; the 'guix-daemon' program and use that in (guix self), used by 'guix
|
||||
|
|
|
@ -0,0 +1,67 @@
|
|||
Install BipartiteMatchings headers for SuperLU_DIST.
|
||||
|
||||
--- a/BipartiteMatchings/ApproxWeightPerfectMatching.h
|
||||
+++ b/BipartiteMatchings/ApproxWeightPerfectMatching.h
|
||||
@@ -9,7 +9,7 @@
|
||||
#ifndef ApproxWeightPerfectMatching_h
|
||||
#define ApproxWeightPerfectMatching_h
|
||||
|
||||
-#include "../CombBLAS.h"
|
||||
+#include "CombBLAS.h"
|
||||
#include "BPMaximalMatching.h"
|
||||
#include "BPMaximumMatching.h"
|
||||
#include <parallel/algorithm>
|
||||
--- a/BipartiteMatchings/BPMaximalMatching.h
|
||||
+++ b/BipartiteMatchings/BPMaximalMatching.h
|
||||
@@ -1,7 +1,7 @@
|
||||
#ifndef BP_MAXIMAL_MATCHING_H
|
||||
#define BP_MAXIMAL_MATCHING_H
|
||||
|
||||
-#include "../CombBLAS.h"
|
||||
+#include "CombBLAS.h"
|
||||
#include <iostream>
|
||||
#include <functional>
|
||||
#include <algorithm>
|
||||
--- a/BipartiteMatchings/BPMaximumMatching.h
|
||||
+++ b/BipartiteMatchings/BPMaximumMatching.h
|
||||
@@ -1,7 +1,7 @@
|
||||
#ifndef BP_MAXIMUM_MATCHING_H
|
||||
#define BP_MAXIMUM_MATCHING_H
|
||||
|
||||
-#include "../CombBLAS.h"
|
||||
+#include "CombBLAS.h"
|
||||
#include <mpi.h>
|
||||
#include <sys/time.h>
|
||||
#include <iostream>
|
||||
--- a/BipartiteMatchings/MatchingDefs.h
|
||||
+++ b/BipartiteMatchings/MatchingDefs.h
|
||||
@@ -9,7 +9,7 @@
|
||||
#ifndef MatchingDefs_h
|
||||
#define MatchingDefs_h
|
||||
|
||||
-#include "../CombBLAS.h"
|
||||
+#include "CombBLAS.h"
|
||||
#include <iostream>
|
||||
|
||||
namespace combblas {
|
||||
--- a/BipartiteMatchings/Utility.h
|
||||
+++ b/BipartiteMatchings/Utility.h
|
||||
@@ -1,7 +1,7 @@
|
||||
#ifndef BP_UTILITY_H
|
||||
#define BP_UTILITY_H
|
||||
|
||||
-#include "../CombBLAS.h"
|
||||
+#include "CombBLAS.h"
|
||||
|
||||
namespace combblas {
|
||||
|
||||
--- a/CMakeLists.txt
|
||||
+++ b/CMakeLists.txt
|
||||
@@ -68,6 +68,7 @@ set_property(TARGET CombBLAS PROPERTY VERSION ${CombBLAS_VERSION})
|
||||
# installation
|
||||
install(DIRECTORY include/ DESTINATION include)
|
||||
install(DIRECTORY psort-1.0/include/ DESTINATION include)
|
||||
+install(DIRECTORY BipartiteMatchings DESTINATION include FILES_MATCHING PATTERN "*.h")
|
||||
install(TARGETS CombBLAS EXPORT CombBLASTargets
|
||||
LIBRARY DESTINATION lib
|
||||
ARCHIVE DESTINATION lib
|
|
@ -0,0 +1,14 @@
|
|||
IO not appropriate in the context of a sorting routine, and in any case the
|
||||
proper headers are not included, so gcc emits an undefined symbol error.
|
||||
Remove the "printf" statement.
|
||||
|
||||
--- CombBLAS_beta_16_2/usort/include/usort/seqUtils.tcc
|
||||
+++ CombBLAS_beta_16_2/usort/include/usort/seqUtils.tcc
|
||||
@@ -142,7 +142,6 @@
|
||||
}
|
||||
if ( (a[nmax]==a[nmin]) && (ctr==0) )
|
||||
{
|
||||
- printf("All the numbers are identical, the list is sorted\n");
|
||||
return;
|
||||
}
|
||||
|
|
@ -1,7 +1,7 @@
|
|||
Fixes needed when avoiding bundled libraries.
|
||||
|
||||
--- icecat-60.2.0/xpcom/build/moz.build.orig 2018-09-13 17:46:49.000000000 -0400
|
||||
+++ icecat-60.2.0/xpcom/build/moz.build 2018-09-22 04:26:50.659564554 -0400
|
||||
--- icecat-60.5.0/xpcom/build/moz.build.orig 2018-09-13 17:46:49.000000000 -0400
|
||||
+++ icecat-60.5.0/xpcom/build/moz.build 2018-09-22 04:26:50.659564554 -0400
|
||||
@@ -99,10 +99,5 @@
|
||||
'/docshell/base',
|
||||
]
|
||||
|
@ -13,8 +13,8 @@ Fixes needed when avoiding bundled libraries.
|
|||
-
|
||||
if CONFIG['MOZ_WIDGET_TOOLKIT'] == 'cocoa':
|
||||
CXXFLAGS += CONFIG['TK_CFLAGS']
|
||||
--- icecat-60.2.0/storage/moz.build.orig 2018-09-13 17:51:11.000000000 -0400
|
||||
+++ icecat-60.2.0/storage/moz.build 2018-09-22 04:26:50.659564554 -0400
|
||||
--- icecat-60.5.0/storage/moz.build.orig 2018-09-13 17:51:11.000000000 -0400
|
||||
+++ icecat-60.5.0/storage/moz.build 2018-09-22 04:26:50.659564554 -0400
|
||||
@@ -117,7 +117,6 @@
|
||||
DEFINES['MOZ_MEMORY_TEMP_STORE_PRAGMA'] = True
|
||||
|
||||
|
@ -23,8 +23,8 @@ Fixes needed when avoiding bundled libraries.
|
|||
'/dom/base',
|
||||
]
|
||||
|
||||
--- icecat-60.2.0/dom/indexedDB/moz.build.orig 2018-09-13 17:49:42.000000000 -0400
|
||||
+++ icecat-60.2.0/dom/indexedDB/moz.build 2018-09-22 04:26:50.663564574 -0400
|
||||
--- icecat-60.5.0/dom/indexedDB/moz.build.orig 2018-09-13 17:49:42.000000000 -0400
|
||||
+++ icecat-60.5.0/dom/indexedDB/moz.build 2018-09-22 04:26:50.663564574 -0400
|
||||
@@ -102,7 +102,6 @@
|
||||
CXXFLAGS += ['-Wno-error=shadow']
|
||||
|
||||
|
@ -33,8 +33,8 @@ Fixes needed when avoiding bundled libraries.
|
|||
'/dom/base',
|
||||
'/dom/storage',
|
||||
'/ipc/glue',
|
||||
--- icecat-60.2.0/media/webrtc/trunk/webrtc/base/rtc_task_queue_gn/moz.build.orig 2018-09-13 17:40:54.000000000 -0400
|
||||
+++ icecat-60.2.0/media/webrtc/trunk/webrtc/base/rtc_task_queue_gn/moz.build 2018-09-23 21:33:12.319975105 -0400
|
||||
--- icecat-60.5.0/media/webrtc/trunk/webrtc/base/rtc_task_queue_gn/moz.build.orig 2018-09-13 17:40:54.000000000 -0400
|
||||
+++ icecat-60.5.0/media/webrtc/trunk/webrtc/base/rtc_task_queue_gn/moz.build 2018-09-23 21:33:12.319975105 -0400
|
||||
@@ -130,11 +130,6 @@
|
||||
DEFINES["WEBRTC_POSIX"] = True
|
||||
DEFINES["_FILE_OFFSET_BITS"] = "64"
|
||||
|
|
|
@ -0,0 +1,154 @@
|
|||
Make some of the changes needed to the 'makeicecat' script, to allow it to run
|
||||
in a snippet without network access. After this patch is applied, some
|
||||
additional changes will be made using 'substitute*'.
|
||||
|
||||
diff --git a/makeicecat b/makeicecat
|
||||
index aa46b94..db27a86 100644
|
||||
--- a/makeicecat
|
||||
+++ b/makeicecat
|
||||
@@ -36,75 +36,75 @@ export DEBFULLNAME="Ruben Rodriguez"
|
||||
|
||||
DATA="$( cd "$( dirname "${BASH_SOURCE[0]}" )" && pwd )"/data
|
||||
|
||||
-mkdir output
|
||||
-cd output
|
||||
+# mkdir output
|
||||
+# cd output
|
||||
|
||||
###############################################################################
|
||||
# Retrieve FF source code
|
||||
###############################################################################
|
||||
|
||||
-rm mozilla-esr${FFMAJOR} $SOURCEDIR -rf
|
||||
-
|
||||
-wget -N https://ftp.mozilla.org/pub/mozilla.org/firefox/releases/${FFVERSION}esr/source/firefox-${FFVERSION}esr.source.tar.xz
|
||||
-wget -N https://ftp.mozilla.org/pub/mozilla.org/firefox/releases/${FFVERSION}esr/source/firefox-${FFVERSION}esr.source.tar.xz.asc
|
||||
-gpg --recv-keys --keyserver keyserver.ubuntu.com 24C6F355
|
||||
-gpg --verify firefox-${FFVERSION}esr.source.tar.xz.asc
|
||||
-
|
||||
-echo Extracting Firefox tarball
|
||||
-tar -xf firefox-${FFVERSION}esr.source.tar.xz
|
||||
-
|
||||
-mv firefox-${FFVERSION} $SOURCEDIR
|
||||
+# rm mozilla-esr${FFMAJOR} $SOURCEDIR -rf
|
||||
+#
|
||||
+# wget -N https://ftp.mozilla.org/pub/mozilla.org/firefox/releases/${FFVERSION}esr/source/firefox-${FFVERSION}esr.source.tar.xz
|
||||
+# wget -N https://ftp.mozilla.org/pub/mozilla.org/firefox/releases/${FFVERSION}esr/source/firefox-${FFVERSION}esr.source.tar.xz.asc
|
||||
+# gpg --recv-keys --keyserver keyserver.ubuntu.com 24C6F355
|
||||
+# gpg --verify firefox-${FFVERSION}esr.source.tar.xz.asc
|
||||
+#
|
||||
+# echo Extracting Firefox tarball
|
||||
+# tar -xf firefox-${FFVERSION}esr.source.tar.xz
|
||||
+#
|
||||
+# mv firefox-${FFVERSION} $SOURCEDIR
|
||||
|
||||
###############################################################################
|
||||
# Retrieve /debian from Ubuntu
|
||||
###############################################################################
|
||||
|
||||
-rm -rf firefox.$CODENAME
|
||||
-bzr branch https://code.launchpad.net/~mozillateam/firefox/firefox.$CODENAME
|
||||
-cd firefox.$CODENAME
|
||||
-bzr revert -r$REVISION
|
||||
-echo '3.0 (native)' > debian/source/format
|
||||
-
|
||||
-for PATCH in ubuntu-bookmarks.patch ubuntu-ua-string-changes.patch unity-menubar.patch ubuntu-search-defaults.patch fix-make-package-tests-without-webrtc.patch revert-upstream-search-engine-changes.patch
|
||||
-do
|
||||
- rm debian/patches/$PATCH
|
||||
- sed "/$PATCH/d" -i debian/patches/series
|
||||
-done
|
||||
-sed "/test-/d" -i debian/patches/series
|
||||
-cd ..
|
||||
-
|
||||
-mv firefox.$CODENAME/debian $SOURCEDIR
|
||||
-rm -rf firefox.$CODENAME
|
||||
+# rm -rf firefox.$CODENAME
|
||||
+# bzr branch https://code.launchpad.net/~mozillateam/firefox/firefox.$CODENAME
|
||||
+# cd firefox.$CODENAME
|
||||
+# bzr revert -r$REVISION
|
||||
+# echo '3.0 (native)' > debian/source/format
|
||||
+#
|
||||
+# for PATCH in ubuntu-bookmarks.patch ubuntu-ua-string-changes.patch unity-menubar.patch ubuntu-search-defaults.patch fix-make-package-tests-without-webrtc.patch revert-upstream-search-engine-changes.patch
|
||||
+# do
|
||||
+# rm debian/patches/$PATCH
|
||||
+# sed "/$PATCH/d" -i debian/patches/series
|
||||
+# done
|
||||
+# sed "/test-/d" -i debian/patches/series
|
||||
+# cd ..
|
||||
+#
|
||||
+# mv firefox.$CODENAME/debian $SOURCEDIR
|
||||
+# rm -rf firefox.$CODENAME
|
||||
|
||||
###############################################################################
|
||||
# Retrieve l10n
|
||||
###############################################################################
|
||||
|
||||
-mkdir l10n
|
||||
-cd l10n
|
||||
-while read line;do
|
||||
- line=$(echo $line |cut -d' ' -f1)
|
||||
- #[ $line = "es-ES" ] || continue # To speed up testing
|
||||
- [ $line = "en-US" ] && continue
|
||||
- hg clone https://hg.mozilla.org/l10n-central/$line
|
||||
- mkdir -p $line/browser/chrome/browser/preferences
|
||||
- touch $line/browser/chrome/browser/preferences/advanced-scripts.dtd
|
||||
- rm -rf $line/.hg*
|
||||
-done < ../$SOURCEDIR/browser/locales/shipped-locales
|
||||
-cd ..
|
||||
-
|
||||
-mv l10n $SOURCEDIR
|
||||
-
|
||||
-hg clone http://hg.mozilla.org/l10n/compare-locales/
|
||||
-cd compare-locales/
|
||||
-hg checkout RELEASE_3_3_0
|
||||
-cd ..
|
||||
-rm compare-locales/.hg* compare-locales/.git* -rf
|
||||
-mv compare-locales $SOURCEDIR/l10n
|
||||
+# mkdir l10n
|
||||
+# cd l10n
|
||||
+# while read line;do
|
||||
+# line=$(echo $line |cut -d' ' -f1)
|
||||
+# #[ $line = "es-ES" ] || continue # To speed up testing
|
||||
+# [ $line = "en-US" ] && continue
|
||||
+# hg clone https://hg.mozilla.org/l10n-central/$line
|
||||
+# mkdir -p $line/browser/chrome/browser/preferences
|
||||
+# touch $line/browser/chrome/browser/preferences/advanced-scripts.dtd
|
||||
+# rm -rf $line/.hg*
|
||||
+# done < ../$SOURCEDIR/browser/locales/shipped-locales
|
||||
+# cd ..
|
||||
+#
|
||||
+# mv l10n $SOURCEDIR
|
||||
+#
|
||||
+# hg clone http://hg.mozilla.org/l10n/compare-locales/
|
||||
+# cd compare-locales/
|
||||
+# hg checkout RELEASE_3_3_0
|
||||
+# cd ..
|
||||
+# rm compare-locales/.hg* compare-locales/.git* -rf
|
||||
+# mv compare-locales $SOURCEDIR/l10n
|
||||
|
||||
#######################################################
|
||||
|
||||
-cd $SOURCEDIR
|
||||
+# cd $SOURCEDIR
|
||||
|
||||
#for patch in $DATA/patches/*; do
|
||||
# echo Patching with file: $patch
|
||||
@@ -720,7 +720,7 @@ debian/rules debian/control
|
||||
touch -d "yesterday" debian/control
|
||||
debian/rules debian/control
|
||||
|
||||
-echo | dch -b -D stable -v "$ICECATVERSION" "Converted into IceCat (http://www.gnu.org/software/gnuzilla/)"
|
||||
+# echo | dch -b -D stable -v "$ICECATVERSION" "Converted into IceCat (http://www.gnu.org/software/gnuzilla/)"
|
||||
sed "1s/firefox/icecat/" -i debian/changelog
|
||||
|
||||
touch configure js/src/configure
|
||||
@@ -734,6 +734,6 @@ sed 's/777/755/;' -i toolkit/crashreporter/google-breakpad/Makefile.in
|
||||
/bin/sed 's/chmod a+w/chmod u+w/' -i ./js/src/ctypes/libffi/Makefile.in ./toolkit/crashreporter/google-breakpad/Makefile.in ./toolkit/crashreporter/google-breakpad/src/third_party/glog/Makefile.in || true
|
||||
|
||||
|
||||
-cd ..
|
||||
-echo Packaging tarball
|
||||
-tar cfj icecat-$ICECATVERSION.tar.bz2 $SOURCEDIR
|
||||
+# cd ..
|
||||
+# echo Packaging tarball
|
||||
+# tar cfj icecat-$ICECATVERSION.tar.bz2 $SOURCEDIR
|
|
@ -4,8 +4,8 @@ Based on:
|
|||
https://svnweb.freebsd.org/ports/head/www/firefox-esr/files/patch-bug847568?revision=472833&view=co
|
||||
Modified for use with patch -p1, and to apply cleanly to GNU IceCat.
|
||||
|
||||
--- icecat-60.2.0/config/system-headers.mozbuild
|
||||
+++ icecat-60.2.0/config/system-headers.mozbuild
|
||||
--- icecat-60.5.0/config/system-headers.mozbuild
|
||||
+++ icecat-60.5.0/config/system-headers.mozbuild
|
||||
@@ -1311,6 +1311,19 @@
|
||||
'pixman.h',
|
||||
]
|
||||
|
@ -26,8 +26,8 @@ Modified for use with patch -p1, and to apply cleanly to GNU IceCat.
|
|||
if CONFIG['MOZ_SYSTEM_LIBVPX']:
|
||||
system_headers += [
|
||||
'vpx_mem/vpx_mem.h',
|
||||
--- icecat-60.2.0/dom/base/moz.build
|
||||
+++ icecat-60.2.0/dom/base/moz.build
|
||||
--- icecat-60.5.0/dom/base/moz.build
|
||||
+++ icecat-60.5.0/dom/base/moz.build
|
||||
@@ -474,6 +474,9 @@
|
||||
if CONFIG['MOZ_X11']:
|
||||
CXXFLAGS += CONFIG['TK_CFLAGS']
|
||||
|
@ -38,8 +38,8 @@ Modified for use with patch -p1, and to apply cleanly to GNU IceCat.
|
|||
GENERATED_FILES += [
|
||||
'PropertyUseCounterMap.inc',
|
||||
'UseCounterList.h',
|
||||
--- icecat-60.2.0/gfx/graphite2/moz-gr-update.sh
|
||||
+++ icecat-60.2.0/gfx/graphite2/moz-gr-update.sh
|
||||
--- icecat-60.5.0/gfx/graphite2/moz-gr-update.sh
|
||||
+++ icecat-60.5.0/gfx/graphite2/moz-gr-update.sh
|
||||
@@ -1,6 +1,7 @@
|
||||
#!/bin/bash
|
||||
|
||||
|
@ -66,8 +66,8 @@ Modified for use with patch -p1, and to apply cleanly to GNU IceCat.
|
|||
|
||||
echo
|
||||
echo If gfx/graphite2/src/files.mk has changed, please make corresponding
|
||||
--- icecat-60.2.0/gfx/moz.build
|
||||
+++ icecat-60.2.0/gfx/moz.build
|
||||
--- icecat-60.5.0/gfx/moz.build
|
||||
+++ icecat-60.5.0/gfx/moz.build
|
||||
@@ -10,6 +10,12 @@ with Files('**'):
|
||||
if CONFIG['MOZ_TREE_CAIRO']:
|
||||
DIRS += ['cairo']
|
||||
|
@ -90,8 +90,8 @@ Modified for use with patch -p1, and to apply cleanly to GNU IceCat.
|
|||
'ots/src',
|
||||
'thebes',
|
||||
'ipc',
|
||||
--- icecat-60.2.0/gfx/skia/generate_mozbuild.py
|
||||
+++ icecat-60.2.0/gfx/skia/generate_mozbuild.py
|
||||
--- icecat-60.5.0/gfx/skia/generate_mozbuild.py
|
||||
+++ icecat-60.5.0/gfx/skia/generate_mozbuild.py
|
||||
@@ -148,6 +148,9 @@
|
||||
'-Wno-unused-private-field',
|
||||
]
|
||||
|
@ -102,8 +102,8 @@ Modified for use with patch -p1, and to apply cleanly to GNU IceCat.
|
|||
if CONFIG['MOZ_WIDGET_TOOLKIT'] in ('gtk3', 'android'):
|
||||
CXXFLAGS += CONFIG['MOZ_CAIRO_CFLAGS']
|
||||
CXXFLAGS += CONFIG['CAIRO_FT_CFLAGS']
|
||||
--- icecat-60.2.0/gfx/skia/moz.build
|
||||
+++ icecat-60.2.0/gfx/skia/moz.build
|
||||
--- icecat-60.5.0/gfx/skia/moz.build
|
||||
+++ icecat-60.5.0/gfx/skia/moz.build
|
||||
@@ -822,6 +822,9 @@
|
||||
'-Wno-unused-private-field',
|
||||
]
|
||||
|
@ -114,8 +114,8 @@ Modified for use with patch -p1, and to apply cleanly to GNU IceCat.
|
|||
if CONFIG['MOZ_WIDGET_TOOLKIT'] in ('gtk3', 'android'):
|
||||
CXXFLAGS += CONFIG['MOZ_CAIRO_CFLAGS']
|
||||
CXXFLAGS += CONFIG['CAIRO_FT_CFLAGS']
|
||||
--- icecat-60.2.0/gfx/thebes/moz.build
|
||||
+++ icecat-60.2.0/gfx/thebes/moz.build
|
||||
--- icecat-60.5.0/gfx/thebes/moz.build
|
||||
+++ icecat-60.5.0/gfx/thebes/moz.build
|
||||
@@ -272,7 +272,13 @@
|
||||
|
||||
LOCAL_INCLUDES += CONFIG['SKIA_INCLUDES']
|
||||
|
@ -131,8 +131,8 @@ Modified for use with patch -p1, and to apply cleanly to GNU IceCat.
|
|||
|
||||
if CONFIG['CC_TYPE'] == 'clang':
|
||||
# Suppress warnings from Skia header files.
|
||||
--- icecat-60.2.0/intl/unicharutil/util/moz.build
|
||||
+++ icecat-60.2.0/intl/unicharutil/util/moz.build
|
||||
--- icecat-60.5.0/intl/unicharutil/util/moz.build
|
||||
+++ icecat-60.5.0/intl/unicharutil/util/moz.build
|
||||
@@ -25,4 +25,7 @@ UNIFIED_SOURCES += [
|
||||
'nsUnicodeProperties.cpp',
|
||||
]
|
||||
|
@ -141,8 +141,8 @@ Modified for use with patch -p1, and to apply cleanly to GNU IceCat.
|
|||
+ CXXFLAGS += CONFIG['MOZ_HARFBUZZ_CFLAGS']
|
||||
+
|
||||
FINAL_LIBRARY = 'xul'
|
||||
--- icecat-60.2.0/netwerk/dns/moz.build
|
||||
+++ icecat-60.2.0/netwerk/dns/moz.build
|
||||
--- icecat-60.5.0/netwerk/dns/moz.build
|
||||
+++ icecat-60.5.0/netwerk/dns/moz.build
|
||||
@@ -76,3 +76,6 @@
|
||||
|
||||
if CONFIG['CC_TYPE'] in ('clang', 'gcc'):
|
||||
|
@ -150,9 +150,9 @@ Modified for use with patch -p1, and to apply cleanly to GNU IceCat.
|
|||
+
|
||||
+if CONFIG['MOZ_SYSTEM_HARFBUZZ']:
|
||||
+ CXXFLAGS += CONFIG['MOZ_HARFBUZZ_CFLAGS']
|
||||
--- icecat-60.2.0/old-configure.in
|
||||
+++ icecat-60.2.0/old-configure.in
|
||||
@@ -3995,6 +3995,27 @@
|
||||
--- icecat-60.5.0/old-configure.in
|
||||
+++ icecat-60.5.0/old-configure.in
|
||||
@@ -3971,6 +3971,27 @@
|
||||
AC_SUBST(MOZ_LINUX_32_SSE2_STARTUP_ERROR)
|
||||
|
||||
dnl ========================================================
|
||||
|
@ -180,8 +180,8 @@ Modified for use with patch -p1, and to apply cleanly to GNU IceCat.
|
|||
dnl Check for pixman and cairo
|
||||
dnl ========================================================
|
||||
|
||||
--- icecat-60.2.0/toolkit/library/moz.build
|
||||
+++ icecat-60.2.0/toolkit/library/moz.build
|
||||
--- icecat-60.5.0/toolkit/library/moz.build
|
||||
+++ icecat-60.5.0/toolkit/library/moz.build
|
||||
@@ -235,6 +235,12 @@
|
||||
if CONFIG['MOZ_SYSTEM_PNG']:
|
||||
OS_LIBS += CONFIG['MOZ_PNG_LIBS']
|
||||
|
@ -195,8 +195,8 @@ Modified for use with patch -p1, and to apply cleanly to GNU IceCat.
|
|||
if CONFIG['MOZ_SYSTEM_HUNSPELL']:
|
||||
OS_LIBS += CONFIG['MOZ_HUNSPELL_LIBS']
|
||||
|
||||
--- icecat-60.2.0/toolkit/moz.configure
|
||||
+++ icecat-60.2.0/toolkit/moz.configure
|
||||
--- icecat-60.5.0/toolkit/moz.configure
|
||||
+++ icecat-60.5.0/toolkit/moz.configure
|
||||
@@ -1051,6 +1051,26 @@
|
||||
add_old_configure_assignment('FT2_CFLAGS',
|
||||
ft2_info.cflags)
|
||||
|
|
|
@ -8,8 +8,8 @@ Changes to files within the bundled libraries are omitted, since those files
|
|||
are removed from Guix sources. Modified for use with patch -p1, and to apply
|
||||
cleanly to GNU IceCat.
|
||||
|
||||
--- icecat-60.2.0/build/moz.configure/old.configure
|
||||
+++ icecat-60.2.0/build/moz.configure/old.configure
|
||||
--- icecat-60.5.0/build/moz.configure/old.configure
|
||||
+++ icecat-60.5.0/build/moz.configure/old.configure
|
||||
@@ -273,7 +273,12 @@
|
||||
'--with-system-libvpx',
|
||||
'--with-system-nspr',
|
||||
|
@ -23,8 +23,8 @@ cleanly to GNU IceCat.
|
|||
'--with-system-zlib',
|
||||
'--with-thumb',
|
||||
'--with-thumb-interwork',
|
||||
--- icecat-60.2.0/config/external/moz.build
|
||||
+++ icecat-60.2.0/config/external/moz.build
|
||||
--- icecat-60.5.0/config/external/moz.build
|
||||
+++ icecat-60.5.0/config/external/moz.build
|
||||
@@ -23,12 +23,21 @@
|
||||
|
||||
external_dirs += ['modules/xz-embedded']
|
||||
|
@ -61,8 +61,8 @@ cleanly to GNU IceCat.
|
|||
'media/mp4parse-rust',
|
||||
'media/psshparser'
|
||||
]
|
||||
--- icecat-60.2.0/config/system-headers.mozbuild
|
||||
+++ icecat-60.2.0/config/system-headers.mozbuild
|
||||
--- icecat-60.5.0/config/system-headers.mozbuild
|
||||
+++ icecat-60.5.0/config/system-headers.mozbuild
|
||||
@@ -1324,6 +1324,28 @@
|
||||
'harfbuzz/hb.h',
|
||||
]
|
||||
|
@ -92,19 +92,19 @@ cleanly to GNU IceCat.
|
|||
if CONFIG['MOZ_SYSTEM_LIBVPX']:
|
||||
system_headers += [
|
||||
'vpx_mem/vpx_mem.h',
|
||||
--- icecat-60.2.0/dom/media/AudioStream.cpp
|
||||
+++ icecat-60.2.0/dom/media/AudioStream.cpp
|
||||
@@ -121,7 +121,9 @@
|
||||
: mMonitor("AudioStream")
|
||||
, mChannels(0)
|
||||
, mOutChannels(0)
|
||||
--- icecat-60.5.0/dom/media/AudioStream.cpp
|
||||
+++ icecat-60.5.0/dom/media/AudioStream.cpp
|
||||
@@ -128,7 +128,9 @@
|
||||
: mMonitor("AudioStream"),
|
||||
mChannels(0),
|
||||
mOutChannels(0),
|
||||
+#ifndef MOZ_SYSTEM_SOUNDTOUCH
|
||||
, mTimeStretcher(nullptr)
|
||||
mTimeStretcher(nullptr),
|
||||
+#endif
|
||||
, mDumpFile(nullptr)
|
||||
, mState(INITIALIZED)
|
||||
, mDataSource(aSource)
|
||||
@@ -142,9 +144,11 @@
|
||||
mDumpFile(nullptr),
|
||||
mState(INITIALIZED),
|
||||
mDataSource(aSource),
|
||||
@@ -147,9 +149,11 @@
|
||||
if (mDumpFile) {
|
||||
fclose(mDumpFile);
|
||||
}
|
||||
|
@ -116,8 +116,8 @@ cleanly to GNU IceCat.
|
|||
#if defined(XP_WIN)
|
||||
if (XRE_IsContentProcess()) {
|
||||
audio::AudioNotificationReceiver::Unregister(this);
|
||||
@@ -168,7 +172,11 @@
|
||||
{
|
||||
@@ -170,7 +174,11 @@
|
||||
nsresult AudioStream::EnsureTimeStretcherInitializedUnlocked() {
|
||||
mMonitor.AssertCurrentThreadOwns();
|
||||
if (!mTimeStretcher) {
|
||||
+#ifdef MOZ_SYSTEM_SOUNDTOUCH
|
||||
|
@ -128,8 +128,8 @@ cleanly to GNU IceCat.
|
|||
mTimeStretcher->setSampleRate(mAudioClock.GetInputRate());
|
||||
mTimeStretcher->setChannels(mOutChannels);
|
||||
mTimeStretcher->setPitch(1.0);
|
||||
--- icecat-60.2.0/dom/media/AudioStream.h
|
||||
+++ icecat-60.2.0/dom/media/AudioStream.h
|
||||
--- icecat-60.5.0/dom/media/AudioStream.h
|
||||
+++ icecat-60.5.0/dom/media/AudioStream.h
|
||||
@@ -15,7 +15,11 @@
|
||||
#include "mozilla/TimeStamp.h"
|
||||
#include "mozilla/UniquePtr.h"
|
||||
|
@ -142,7 +142,7 @@ cleanly to GNU IceCat.
|
|||
|
||||
#if defined(XP_WIN)
|
||||
#include "mozilla/audio/AudioNotificationReceiver.h"
|
||||
@@ -297,7 +301,11 @@
|
||||
@@ -293,7 +297,11 @@
|
||||
uint32_t mChannels;
|
||||
uint32_t mOutChannels;
|
||||
AudioClock mAudioClock;
|
||||
|
@ -154,8 +154,8 @@ cleanly to GNU IceCat.
|
|||
|
||||
// Output file for dumping audio
|
||||
FILE* mDumpFile;
|
||||
--- icecat-60.2.0/dom/media/moz.build
|
||||
+++ icecat-60.2.0/dom/media/moz.build
|
||||
--- icecat-60.5.0/dom/media/moz.build
|
||||
+++ icecat-60.5.0/dom/media/moz.build
|
||||
@@ -327,6 +327,21 @@
|
||||
|
||||
DEFINES['MOZILLA_INTERNAL_API'] = True
|
||||
|
@ -178,8 +178,8 @@ cleanly to GNU IceCat.
|
|||
if CONFIG['MOZ_ANDROID_HLS_SUPPORT']:
|
||||
DEFINES['MOZ_ANDROID_HLS_SUPPORT'] = True
|
||||
|
||||
--- icecat-60.2.0/dom/media/platforms/ffmpeg/ffvpx/FFVPXRuntimeLinker.cpp
|
||||
+++ icecat-60.2.0/dom/media/platforms/ffmpeg/ffvpx/FFVPXRuntimeLinker.cpp
|
||||
--- icecat-60.5.0/dom/media/platforms/ffmpeg/ffvpx/FFVPXRuntimeLinker.cpp
|
||||
+++ icecat-60.5.0/dom/media/platforms/ffmpeg/ffvpx/FFVPXRuntimeLinker.cpp
|
||||
@@ -15,9 +15,13 @@
|
||||
#include <windows.h>
|
||||
#endif
|
||||
|
@ -194,7 +194,7 @@ cleanly to GNU IceCat.
|
|||
|
||||
namespace mozilla {
|
||||
|
||||
@@ -64,6 +68,12 @@
|
||||
@@ -60,6 +64,12 @@
|
||||
|
||||
sLinkStatus = LinkStatus_FAILED;
|
||||
|
||||
|
@ -207,17 +207,17 @@ cleanly to GNU IceCat.
|
|||
// We retrieve the path of the lgpllibs library as this is where mozavcodec
|
||||
// and mozavutil libs are located.
|
||||
PathString lgpllibsname = GetLibraryName(nullptr, "lgpllibs");
|
||||
@@ -73,6 +83,7 @@
|
||||
PathString path =
|
||||
GetLibraryFilePathname(lgpllibsname.get(),
|
||||
(PRFuncPtr)&soundtouch::SoundTouch::getVersionId);
|
||||
@@ -68,6 +78,7 @@
|
||||
}
|
||||
PathString path = GetLibraryFilePathname(
|
||||
lgpllibsname.get(), (PRFuncPtr)&soundtouch::SoundTouch::getVersionId);
|
||||
+#endif
|
||||
if (path.IsEmpty()) {
|
||||
return false;
|
||||
}
|
||||
--- icecat-60.2.0/old-configure.in
|
||||
+++ icecat-60.2.0/old-configure.in
|
||||
@@ -2451,6 +2451,111 @@
|
||||
--- icecat-60.5.0/old-configure.in
|
||||
+++ icecat-60.5.0/old-configure.in
|
||||
@@ -2417,6 +2417,111 @@
|
||||
fi
|
||||
fi # COMPILE_ENVIRONMENT
|
||||
|
||||
|
@ -329,8 +329,8 @@ cleanly to GNU IceCat.
|
|||
dnl system libvpx Support
|
||||
dnl ========================================================
|
||||
MOZ_ARG_WITH_BOOL(system-libvpx,
|
||||
--- icecat-60.2.0/toolkit/library/moz.build
|
||||
+++ icecat-60.2.0/toolkit/library/moz.build
|
||||
--- icecat-60.5.0/toolkit/library/moz.build
|
||||
+++ icecat-60.5.0/toolkit/library/moz.build
|
||||
@@ -244,6 +244,21 @@
|
||||
if CONFIG['MOZ_SYSTEM_HUNSPELL']:
|
||||
OS_LIBS += CONFIG['MOZ_HUNSPELL_LIBS']
|
||||
|
@ -353,9 +353,9 @@ cleanly to GNU IceCat.
|
|||
if CONFIG['MOZ_SYSTEM_LIBEVENT']:
|
||||
OS_LIBS += CONFIG['MOZ_LIBEVENT_LIBS']
|
||||
|
||||
--- icecat-60.2.0/xpcom/build/XPCOMInit.cpp
|
||||
+++ icecat-60.2.0/xpcom/build/XPCOMInit.cpp
|
||||
@@ -138,7 +138,9 @@
|
||||
--- icecat-60.5.0/xpcom/build/XPCOMInit.cpp
|
||||
+++ icecat-60.5.0/xpcom/build/XPCOMInit.cpp
|
||||
@@ -139,7 +139,9 @@
|
||||
|
||||
#include "mozilla/ipc/GeckoChildProcessHost.h"
|
||||
|
||||
|
@ -365,16 +365,15 @@ cleanly to GNU IceCat.
|
|||
#if defined(MOZ_VPX) && !defined(MOZ_VPX_NO_MEM_REPORTING)
|
||||
#if defined(HAVE_STDINT_H)
|
||||
// mozilla-config.h defines HAVE_STDINT_H, and then it's defined *again* in
|
||||
@@ -639,11 +641,13 @@
|
||||
@@ -635,10 +637,12 @@
|
||||
// this oddness.
|
||||
mozilla::SetICUMemoryFunctions();
|
||||
|
||||
+#ifndef MOZ_OGG_NO_MEM_REPORTING
|
||||
// Do the same for libogg.
|
||||
ogg_set_mem_functions(OggReporter::CountingMalloc,
|
||||
OggReporter::CountingCalloc,
|
||||
OggReporter::CountingRealloc,
|
||||
OggReporter::CountingFree);
|
||||
ogg_set_mem_functions(
|
||||
OggReporter::CountingMalloc, OggReporter::CountingCalloc,
|
||||
OggReporter::CountingRealloc, OggReporter::CountingFree);
|
||||
+#endif
|
||||
|
||||
#if defined(MOZ_VPX) && !defined(MOZ_VPX_NO_MEM_REPORTING)
|
||||
|
|
|
@ -0,0 +1,182 @@
|
|||
From f24c88a0732024028fffe0372039a847e91722ea Mon Sep 17 00:00:00 2001
|
||||
From: Christopher Baines <mail@cbaines.net>
|
||||
Date: Tue, 1 Jan 2019 22:36:29 +0000
|
||||
Subject: [PATCH] Mark more tests that require the network
|
||||
|
||||
I believe all these tests require the network, at least they seem to
|
||||
fail if it's I run them without connecting my computer to the web.
|
||||
|
||||
I'm looking at this as part of packaging linkchecker for GNU Guix,
|
||||
where the package is build and the tests are run in a isolated
|
||||
environment, intentionally without network access, to avoid issues
|
||||
with non-reproducible package builds.
|
||||
---
|
||||
tests/checker/test_http.py | 2 ++
|
||||
tests/checker/test_http_misc.py | 2 ++
|
||||
tests/checker/test_http_redirect.py | 2 ++
|
||||
tests/checker/test_httpbin.py | 5 +++++
|
||||
tests/checker/test_misc.py | 4 ++++
|
||||
tests/checker/test_whitespace.py | 3 +++
|
||||
6 files changed, 18 insertions(+)
|
||||
|
||||
diff --git a/tests/checker/test_http.py b/tests/checker/test_http.py
|
||||
index e4c1e097..8a8af567 100644
|
||||
--- a/tests/checker/test_http.py
|
||||
+++ b/tests/checker/test_http.py
|
||||
@@ -20,6 +20,7 @@
|
||||
|
||||
import pytest
|
||||
|
||||
+from tests import need_network
|
||||
from .httpserver import HttpServerTest, CookieRedirectHttpRequestHandler
|
||||
|
||||
class TestHttp (HttpServerTest):
|
||||
@@ -29,6 +30,7 @@ def __init__(self, methodName='runTest'):
|
||||
super(TestHttp, self).__init__(methodName=methodName)
|
||||
self.handler = CookieRedirectHttpRequestHandler
|
||||
|
||||
+ @need_network
|
||||
def test_html (self):
|
||||
confargs = dict(recursionlevel=1)
|
||||
self.file_test("http.html", confargs=confargs)
|
||||
diff --git a/tests/checker/test_http_misc.py b/tests/checker/test_http_misc.py
|
||||
index 9922d85f..c6b6afdb 100644
|
||||
--- a/tests/checker/test_http_misc.py
|
||||
+++ b/tests/checker/test_http_misc.py
|
||||
@@ -20,11 +20,13 @@
|
||||
import os
|
||||
import sys
|
||||
from .httpserver import HttpServerTest
|
||||
+from tests import need_network
|
||||
from linkcheck.network import iputil
|
||||
|
||||
class TestHttpMisc (HttpServerTest):
|
||||
"""Test http:// misc link checking."""
|
||||
|
||||
+ @need_network
|
||||
def test_html (self):
|
||||
self.swf_test()
|
||||
self.obfuscate_test()
|
||||
diff --git a/tests/checker/test_http_redirect.py b/tests/checker/test_http_redirect.py
|
||||
index f212d98e..2253a70d 100644
|
||||
--- a/tests/checker/test_http_redirect.py
|
||||
+++ b/tests/checker/test_http_redirect.py
|
||||
@@ -17,6 +17,7 @@
|
||||
"""
|
||||
Test http checking.
|
||||
"""
|
||||
+from tests import need_network
|
||||
from .httpserver import HttpServerTest, CookieRedirectHttpRequestHandler
|
||||
|
||||
class TestHttpRedirect (HttpServerTest):
|
||||
@@ -26,6 +27,7 @@ def __init__(self, methodName='runTest'):
|
||||
super(TestHttpRedirect, self).__init__(methodName=methodName)
|
||||
self.handler = CookieRedirectHttpRequestHandler
|
||||
|
||||
+ @need_network
|
||||
def test_redirect (self):
|
||||
self.redirect1()
|
||||
self.redirect2()
|
||||
diff --git a/tests/checker/test_httpbin.py b/tests/checker/test_httpbin.py
|
||||
index 0319c2f6..4c8fa846 100644
|
||||
--- a/tests/checker/test_httpbin.py
|
||||
+++ b/tests/checker/test_httpbin.py
|
||||
@@ -18,6 +18,7 @@
|
||||
Test http stuff with httpbin.org.
|
||||
"""
|
||||
import re
|
||||
+from tests import need_network
|
||||
from . import LinkCheckTest
|
||||
|
||||
|
||||
@@ -30,6 +31,7 @@ def get_httpbin_url(path):
|
||||
class TestHttpbin(LinkCheckTest):
|
||||
"""Test http:// link redirection checking."""
|
||||
|
||||
+ @need_network
|
||||
def test_http_link(self):
|
||||
linkurl = u"http://www.example.com"
|
||||
nlinkurl = self.norm(linkurl)
|
||||
@@ -48,6 +50,7 @@ def test_http_link(self):
|
||||
]
|
||||
self.direct(url, resultlines, recursionlevel=1)
|
||||
|
||||
+ @need_network
|
||||
def test_basic_auth(self):
|
||||
user = u"testuser"
|
||||
password = u"testpassword"
|
||||
@@ -67,6 +70,7 @@ def test_basic_auth(self):
|
||||
]
|
||||
self.direct(url, resultlines, confargs=confargs)
|
||||
|
||||
+ @need_network
|
||||
def test_http_refresh_header(self):
|
||||
linkurl = u"http://www.example.com"
|
||||
nlinkurl = self.norm(linkurl)
|
||||
@@ -85,6 +89,7 @@ def test_http_refresh_header(self):
|
||||
]
|
||||
self.direct(url, resultlines, recursionlevel=1)
|
||||
|
||||
+ @need_network
|
||||
def test_http_content_location_header(self):
|
||||
linkurl = u"http://www.example.com"
|
||||
nlinkurl = self.norm(linkurl)
|
||||
diff --git a/tests/checker/test_misc.py b/tests/checker/test_misc.py
|
||||
index 2e4cfd07..f9591f9d 100644
|
||||
--- a/tests/checker/test_misc.py
|
||||
+++ b/tests/checker/test_misc.py
|
||||
@@ -17,6 +17,7 @@
|
||||
"""
|
||||
Test miscellaneous html tag parsing and URL types
|
||||
"""
|
||||
+from tests import need_network
|
||||
from . import LinkCheckTest
|
||||
|
||||
|
||||
@@ -25,15 +26,18 @@ class TestMisc (LinkCheckTest):
|
||||
Test misc link types.
|
||||
"""
|
||||
|
||||
+ @need_network
|
||||
def test_misc (self):
|
||||
self.file_test("misc.html")
|
||||
|
||||
def test_html5 (self):
|
||||
self.file_test("html5.html")
|
||||
|
||||
+ @need_network
|
||||
def test_archive (self):
|
||||
self.file_test("archive.html")
|
||||
|
||||
+ @need_network
|
||||
def test_itms_services(self):
|
||||
url = u"itms-services:?action=download-manifest&url=http://www.example.com/"
|
||||
resultlines = [
|
||||
diff --git a/tests/checker/test_whitespace.py b/tests/checker/test_whitespace.py
|
||||
index 609c108a..fc2727d6 100644
|
||||
--- a/tests/checker/test_whitespace.py
|
||||
+++ b/tests/checker/test_whitespace.py
|
||||
@@ -17,6 +17,7 @@
|
||||
"""
|
||||
Test whitespace handling.
|
||||
"""
|
||||
+from tests import need_network
|
||||
from . import LinkCheckTest
|
||||
|
||||
|
||||
@@ -25,6 +26,7 @@ class TestWhitespace (LinkCheckTest):
|
||||
Test whitespace in URLs.
|
||||
"""
|
||||
|
||||
+ @need_network
|
||||
def test_leading_whitespace (self):
|
||||
# Leading whitespace
|
||||
url = u" http://www.example.org/"
|
||||
@@ -50,6 +52,7 @@ def test_leading_whitespace (self):
|
||||
]
|
||||
self.direct(url, resultlines)
|
||||
|
||||
+ @need_network
|
||||
def test_trailing_whitespace (self):
|
||||
# Trailing whitespace
|
||||
url = u"http://www.example.org/ "
|
|
@ -0,0 +1,42 @@
|
|||
Fix test failures induced by setting the SOURCE_DATE_EPOCH variable.
|
||||
|
||||
Taken from upstream: <https://github.com/p11-glue/p11-kit/pull/213>.
|
||||
|
||||
From 2a474e1fe8f4bd8b4ed7622e5cf3b2718a202562 Mon Sep 17 00:00:00 2001
|
||||
From: Daiki Ueno <dueno@redhat.com>
|
||||
Date: Mon, 28 Jan 2019 13:03:15 +0100
|
||||
Subject: [PATCH] extract-jks: Prefer _p11_extract_jks_timestamp to
|
||||
SOURCE_DATE_EPOCH
|
||||
|
||||
Give _p11_extract_jks_timestamp precedence over SOURCE_DATE_EPOCH so
|
||||
that the test results are not affected by the envvar settings.
|
||||
---
|
||||
trust/extract-jks.c | 8 ++++----
|
||||
1 file changed, 4 insertions(+), 4 deletions(-)
|
||||
|
||||
diff --git a/trust/extract-jks.c b/trust/extract-jks.c
|
||||
index ad8dc35..a6f855f 100644
|
||||
--- a/trust/extract-jks.c
|
||||
+++ b/trust/extract-jks.c
|
||||
@@ -250,7 +250,9 @@ prepare_jks_buffer (p11_enumerate *ex,
|
||||
* when this was this certificate was added to the keystore, however
|
||||
* we don't have that information. Java uses time in milliseconds
|
||||
*/
|
||||
- {
|
||||
+ if (_p11_extract_jks_timestamp)
|
||||
+ now = _p11_extract_jks_timestamp;
|
||||
+ else {
|
||||
char *source_date_epoch;
|
||||
source_date_epoch = secure_getenv ("SOURCE_DATE_EPOCH");
|
||||
if (source_date_epoch) {
|
||||
@@ -276,9 +278,7 @@ prepare_jks_buffer (p11_enumerate *ex,
|
||||
return false;
|
||||
}
|
||||
now = epoch;
|
||||
- } else if (_p11_extract_jks_timestamp)
|
||||
- now = _p11_extract_jks_timestamp;
|
||||
- else
|
||||
+ } else
|
||||
now = time (NULL);
|
||||
}
|
||||
|
|
@ -0,0 +1,88 @@
|
|||
Fixes CVE-2018-16872:
|
||||
|
||||
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2018-16872
|
||||
|
||||
Patch copied from upstream source repository:
|
||||
|
||||
https://git.qemu.org/?p=qemu.git;a=commitdiff;h=bab9df35ce73d1c8e19a37e2737717ea1c984dc1
|
||||
|
||||
From bab9df35ce73d1c8e19a37e2737717ea1c984dc1 Mon Sep 17 00:00:00 2001
|
||||
From: Gerd Hoffmann <kraxel@redhat.com>
|
||||
Date: Thu, 13 Dec 2018 13:25:11 +0100
|
||||
Subject: [PATCH] usb-mtp: use O_NOFOLLOW and O_CLOEXEC.
|
||||
|
||||
Open files and directories with O_NOFOLLOW to avoid symlinks attacks.
|
||||
While being at it also add O_CLOEXEC.
|
||||
|
||||
usb-mtp only handles regular files and directories and ignores
|
||||
everything else, so users should not see a difference.
|
||||
|
||||
Because qemu ignores symlinks, carrying out a successful symlink attack
|
||||
requires swapping an existing file or directory below rootdir for a
|
||||
symlink and winning the race against the inotify notification to qemu.
|
||||
|
||||
Fixes: CVE-2018-16872
|
||||
Cc: Prasad J Pandit <ppandit@redhat.com>
|
||||
Cc: Bandan Das <bsd@redhat.com>
|
||||
Reported-by: Michael Hanselmann <public@hansmi.ch>
|
||||
Signed-off-by: Gerd Hoffmann <kraxel@redhat.com>
|
||||
Reviewed-by: Michael Hanselmann <public@hansmi.ch>
|
||||
Message-id: 20181213122511.13853-1-kraxel@redhat.com
|
||||
---
|
||||
hw/usb/dev-mtp.c | 13 +++++++++----
|
||||
1 file changed, 9 insertions(+), 4 deletions(-)
|
||||
|
||||
diff --git a/hw/usb/dev-mtp.c b/hw/usb/dev-mtp.c
|
||||
index 100b7171f4..36c43b8c20 100644
|
||||
--- a/hw/usb/dev-mtp.c
|
||||
+++ b/hw/usb/dev-mtp.c
|
||||
@@ -653,13 +653,18 @@ static void usb_mtp_object_readdir(MTPState *s, MTPObject *o)
|
||||
{
|
||||
struct dirent *entry;
|
||||
DIR *dir;
|
||||
+ int fd;
|
||||
|
||||
if (o->have_children) {
|
||||
return;
|
||||
}
|
||||
o->have_children = true;
|
||||
|
||||
- dir = opendir(o->path);
|
||||
+ fd = open(o->path, O_DIRECTORY | O_CLOEXEC | O_NOFOLLOW);
|
||||
+ if (fd < 0) {
|
||||
+ return;
|
||||
+ }
|
||||
+ dir = fdopendir(fd);
|
||||
if (!dir) {
|
||||
return;
|
||||
}
|
||||
@@ -1007,7 +1012,7 @@ static MTPData *usb_mtp_get_object(MTPState *s, MTPControl *c,
|
||||
|
||||
trace_usb_mtp_op_get_object(s->dev.addr, o->handle, o->path);
|
||||
|
||||
- d->fd = open(o->path, O_RDONLY);
|
||||
+ d->fd = open(o->path, O_RDONLY | O_CLOEXEC | O_NOFOLLOW);
|
||||
if (d->fd == -1) {
|
||||
usb_mtp_data_free(d);
|
||||
return NULL;
|
||||
@@ -1031,7 +1036,7 @@ static MTPData *usb_mtp_get_partial_object(MTPState *s, MTPControl *c,
|
||||
c->argv[1], c->argv[2]);
|
||||
|
||||
d = usb_mtp_data_alloc(c);
|
||||
- d->fd = open(o->path, O_RDONLY);
|
||||
+ d->fd = open(o->path, O_RDONLY | O_CLOEXEC | O_NOFOLLOW);
|
||||
if (d->fd == -1) {
|
||||
usb_mtp_data_free(d);
|
||||
return NULL;
|
||||
@@ -1658,7 +1663,7 @@ static void usb_mtp_write_data(MTPState *s)
|
||||
0, 0, 0, 0);
|
||||
goto done;
|
||||
}
|
||||
- d->fd = open(path, O_CREAT | O_WRONLY, mask);
|
||||
+ d->fd = open(path, O_CREAT | O_WRONLY | O_CLOEXEC | O_NOFOLLOW, mask);
|
||||
if (d->fd == -1) {
|
||||
usb_mtp_queue_result(s, RES_STORE_FULL, d->trans,
|
||||
0, 0, 0, 0);
|
||||
--
|
||||
2.20.1
|
||||
|
|
@ -0,0 +1,43 @@
|
|||
Fixes CVE-2019-6778:
|
||||
|
||||
https://cve.mitre.org/cgi-bin/cvename.cgi?name=CVE-2019-6778
|
||||
|
||||
Patch copied from upstream source repository:
|
||||
|
||||
https://git.qemu.org/?p=qemu.git;a=commitdiff;h=a7104eda7dab99d0cdbd3595c211864cba415905
|
||||
|
||||
From a7104eda7dab99d0cdbd3595c211864cba415905 Mon Sep 17 00:00:00 2001
|
||||
From: Prasad J Pandit <pjp@fedoraproject.org>
|
||||
Date: Sun, 13 Jan 2019 23:29:48 +0530
|
||||
Subject: [PATCH] slirp: check data length while emulating ident function
|
||||
|
||||
While emulating identification protocol, tcp_emu() does not check
|
||||
available space in the 'sc_rcv->sb_data' buffer. It could lead to
|
||||
heap buffer overflow issue. Add check to avoid it.
|
||||
|
||||
Reported-by: Kira <864786842@qq.com>
|
||||
Signed-off-by: Prasad J Pandit <pjp@fedoraproject.org>
|
||||
Signed-off-by: Samuel Thibault <samuel.thibault@ens-lyon.org>
|
||||
---
|
||||
slirp/tcp_subr.c | 5 +++++
|
||||
1 file changed, 5 insertions(+)
|
||||
|
||||
diff --git a/slirp/tcp_subr.c b/slirp/tcp_subr.c
|
||||
index 4a9a5b5edc..23a841f26e 100644
|
||||
--- a/slirp/tcp_subr.c
|
||||
+++ b/slirp/tcp_subr.c
|
||||
@@ -634,6 +634,11 @@ tcp_emu(struct socket *so, struct mbuf *m)
|
||||
socklen_t addrlen = sizeof(struct sockaddr_in);
|
||||
struct sbuf *so_rcv = &so->so_rcv;
|
||||
|
||||
+ if (m->m_len > so_rcv->sb_datalen
|
||||
+ - (so_rcv->sb_wptr - so_rcv->sb_data)) {
|
||||
+ return 1;
|
||||
+ }
|
||||
+
|
||||
memcpy(so_rcv->sb_wptr, m->m_data, m->m_len);
|
||||
so_rcv->sb_wptr += m->m_len;
|
||||
so_rcv->sb_rptr += m->m_len;
|
||||
--
|
||||
2.20.1
|
||||
|
|
@ -1,27 +0,0 @@
|
|||
Fixes test_scotch_graph_diam test with -DINTSIZE64.
|
||||
|
||||
Reported upstream at
|
||||
https://gforge.inria.fr/tracker/index.php?func=detail&aid=21650&group_id=248&atid=1081
|
||||
|
||||
--- scotch-6.0.5a/src/libscotch/library.h
|
||||
+++ scotch-6.0.5a/src/libscotch/library.h
|
||||
@@ -187,6 +187,7 @@ SCOTCH_Num SCOTCH_graphBase (SCOTCH_Graph * const, const SCO
|
||||
int SCOTCH_graphCheck (const SCOTCH_Graph * const);
|
||||
void SCOTCH_graphSize (const SCOTCH_Graph * const, SCOTCH_Num * const, SCOTCH_Num * const);
|
||||
void SCOTCH_graphData (const SCOTCH_Graph * const, SCOTCH_Num * const, SCOTCH_Num * const, SCOTCH_Num ** const, SCOTCH_Num ** const, SCOTCH_Num ** const, SCOTCH_Num ** const, SCOTCH_Num * const, SCOTCH_Num ** const, SCOTCH_Num ** const);
|
||||
+SCOTCH_Num SCOTCH_graphDiamPV (SCOTCH_Graph * const);
|
||||
void SCOTCH_graphStat (const SCOTCH_Graph * const, SCOTCH_Num * const, SCOTCH_Num * const, SCOTCH_Num * const, double * const, double * const, SCOTCH_Num * const, SCOTCH_Num * const, double * const, double * const, SCOTCH_Num * const, SCOTCH_Num * const, SCOTCH_Num * const, double * const, double * const);
|
||||
int SCOTCH_graphCoarsen (const SCOTCH_Graph * const, const SCOTCH_Num, const double, const SCOTCH_Num, SCOTCH_Graph * const, SCOTCH_Num * const);
|
||||
int SCOTCH_graphCoarsenMatch (const SCOTCH_Graph * const, SCOTCH_Num * const, const double, const SCOTCH_Num, SCOTCH_Num * const);
|
||||
--- scotch-6.0.5a/src/libscotch/library_graph_diam.c
|
||||
+++ scotch-6.0.5a/src/libscotch/library_graph_diam.c
|
||||
@@ -72,8 +72,7 @@
|
||||
|
||||
SCOTCH_Num
|
||||
SCOTCH_graphDiamPV (
|
||||
-SCOTCH_Graph * const grafptr,
|
||||
-const SCOTCH_Num baseval)
|
||||
+SCOTCH_Graph * const grafptr)
|
||||
{
|
||||
return ((SCOTCH_Num) graphDiamPV ((Graph * const) grafptr));
|
||||
}
|
|
@ -1,19 +0,0 @@
|
|||
Fixes return type of SCOTCH_graphInduceList and SCOTCH_graphInducePart
|
||||
so that the definition matches with -DINTSIZE64.
|
||||
|
||||
Reported upstream at
|
||||
https://gforge.inria.fr/tracker/index.php?func=detail&aid=21608&group_id=248&atid=1081
|
||||
|
||||
--- scotch_6.0.5a/src/libscotch/library.h.orig 2018-02-11 10:52:38.000000000 -0600
|
||||
+++ scotch_6.0.5a/src/libscotch/library.h 2018-02-23 16:56:41.000000000 -0600
|
||||
@@ -199,8 +199,8 @@
|
||||
int SCOTCH_graphGeomSaveChac (const SCOTCH_Graph * const, const SCOTCH_Geom * const, FILE * const, FILE * const, const char * const);
|
||||
int SCOTCH_graphGeomSaveMmkt (const SCOTCH_Graph * const, const SCOTCH_Geom * const, FILE * const, FILE * const, const char * const);
|
||||
int SCOTCH_graphGeomSaveScot (const SCOTCH_Graph * const, const SCOTCH_Geom * const, FILE * const, FILE * const, const char * const);
|
||||
-int SCOTCH_graphInduceList (const SCOTCH_Graph * const, const SCOTCH_Num, const SCOTCH_Num * const, SCOTCH_Graph * const);
|
||||
-int SCOTCH_graphInducePart (const SCOTCH_Graph * const, const SCOTCH_Num, const SCOTCH_GraphPart2 * const, const SCOTCH_GraphPart2, SCOTCH_Graph * const);
|
||||
+SCOTCH_Num SCOTCH_graphInduceList (const SCOTCH_Graph * const, const SCOTCH_Num, const SCOTCH_Num * const, SCOTCH_Graph * const);
|
||||
+SCOTCH_Num SCOTCH_graphInducePart (const SCOTCH_Graph * const, const SCOTCH_Num, const SCOTCH_GraphPart2 * const, const SCOTCH_GraphPart2, SCOTCH_Graph * const);
|
||||
|
||||
int SCOTCH_graphMapInit (const SCOTCH_Graph * const, SCOTCH_Mapping * const, const SCOTCH_Arch * const, SCOTCH_Num * const);
|
||||
void SCOTCH_graphMapExit (const SCOTCH_Graph * const, SCOTCH_Mapping * const);
|
|
@ -0,0 +1,37 @@
|
|||
diff --git a/src/libscotch/library.h b/src/libscotch/library.h
|
||||
index 1891c19..ecc0533 100644
|
||||
--- a/src/libscotch/library.h
|
||||
+++ b/src/libscotch/library.h
|
||||
@@ -67,6 +67,8 @@
|
||||
|
||||
/*+ Integer type. +*/
|
||||
|
||||
+#include <stdint.h>
|
||||
+
|
||||
typedef DUMMYIDX SCOTCH_Idx;
|
||||
|
||||
typedef DUMMYINT SCOTCH_Num;
|
||||
diff --git a/src/libscotchmetis/library_metis.h b/src/libscotchmetis/library_metis.h
|
||||
index e6767e1..04e71c3 100644
|
||||
--- a/src/libscotchmetis/library_metis.h
|
||||
+++ b/src/libscotchmetis/library_metis.h
|
||||
@@ -99,6 +99,7 @@ typedef enum {
|
||||
*/
|
||||
|
||||
#ifndef SCOTCH_H /* In case "scotch.h" not included before */
|
||||
+#include <stdint.h>
|
||||
typedef DUMMYINT SCOTCH_Num;
|
||||
#endif /* SCOTCH_H */
|
||||
|
||||
diff --git a/src/libscotchmetis/library_parmetis.h b/src/libscotchmetis/library_parmetis.h
|
||||
index 6d2f0b0..3c803fc 100644
|
||||
--- a/src/libscotchmetis/library_parmetis.h
|
||||
+++ b/src/libscotchmetis/library_parmetis.h
|
||||
@@ -106,6 +106,7 @@ typedef enum {
|
||||
*/
|
||||
|
||||
#ifndef SCOTCH_H /* In case "scotch.h" not included before */
|
||||
+#include <stdint.h>
|
||||
typedef DUMMYINT SCOTCH_Num;
|
||||
#endif /* SCOTCH_H */
|
||||
|
|
@ -1,22 +0,0 @@
|
|||
Fix this test so that it succeeds when the library is not compiled with
|
||||
SCOTCH_PTHREAD.
|
||||
|
||||
--- scotch_6.0.4/src/check/test_common_thread.c 2014-09-28 11:39:59.000000000 -0500
|
||||
+++ scotch_6.0.4/src/check/test_common_thread.c 2015-01-10 00:52:00.076229542 -0600
|
||||
@@ -175,14 +175,14 @@
|
||||
char * argv[])
|
||||
{
|
||||
TestThreadGroup groudat;
|
||||
-#if ((defined COMMON_PTHREAD) || (defined SCOTCH_PTHREAD))
|
||||
+#if ((defined COMMON_PTHREAD) && (defined SCOTCH_PTHREAD))
|
||||
TestThread * restrict thrdtab;
|
||||
int thrdnbr;
|
||||
#endif /* ((defined COMMON_PTHREAD) || (defined SCOTCH_PTHREAD)) */
|
||||
|
||||
SCOTCH_errorProg (argv[0]);
|
||||
|
||||
-#if ((defined COMMON_PTHREAD) || (defined SCOTCH_PTHREAD))
|
||||
+#if ((defined COMMON_PTHREAD) && (defined SCOTCH_PTHREAD))
|
||||
thrdnbr = SCOTCH_PTHREAD_NUMBER;
|
||||
|
||||
groudat.redusum = COMPVAL (thrdnbr);
|
|
@ -0,0 +1,36 @@
|
|||
Create the CombBLAS::SpParMat with the MPI_Comm from the input 'gridinfo_t'.
|
||||
This prevents a warning/error from CombBLAS about using MPI_COMM_WORLD.
|
||||
|
||||
--- a/SRC/AWPM_CombBLAS.hpp
|
||||
+++ b/SRC/AWPM_CombBLAS.hpp
|
||||
@@ -52,7 +52,7 @@
|
||||
{
|
||||
printf("AWPM only supports square process grid. Retuning without a permutation.\n");
|
||||
}
|
||||
- combblas::SpParMat < int_t, double, combblas::SpDCCols<int_t,double> > Adcsc;
|
||||
+ combblas::SpParMat < int_t, double, combblas::SpDCCols<int_t,double> > Adcsc(grid->comm);
|
||||
std::vector< std::vector < std::tuple<int_t,int_t,double> > > data(procs);
|
||||
|
||||
/* ------------------------------------------------------------
|
||||
@@ -100,11 +100,10 @@
|
||||
combblas::AWPM(Adcsc, mateRow2Col, mateCol2Row,true);
|
||||
|
||||
// now gather the matching vector
|
||||
- MPI_Comm World = mateRow2Col.getcommgrid()->GetWorld();
|
||||
int * rdispls = new int[procs];
|
||||
int sendcnt = mateRow2Col.LocArrSize();
|
||||
int * recvcnt = new int[procs];
|
||||
- MPI_Allgather(&sendcnt, 1, MPI_INT, recvcnt, 1, MPI_INT, World);
|
||||
+ MPI_Allgather(&sendcnt, 1, MPI_INT, recvcnt, 1, MPI_INT, grid->comm);
|
||||
rdispls[0] = 0;
|
||||
for(int i=0; i<procs-1; ++i)
|
||||
{
|
||||
@@ -112,7 +111,7 @@
|
||||
}
|
||||
int_t *senddata = (int_t *)mateRow2Col.GetLocArr();
|
||||
|
||||
- MPI_Allgatherv(senddata, sendcnt, combblas::MPIType<int_t>(), ScalePermstruct->perm_r, recvcnt, rdispls, combblas::MPIType<int_t>(), World);
|
||||
+ MPI_Allgatherv(senddata, sendcnt, combblas::MPIType<int_t>(), ScalePermstruct->perm_r, recvcnt, rdispls, combblas::MPIType<int_t>(), grid->comm);
|
||||
|
||||
delete[] rdispls;
|
||||
delete[] recvcnt;
|
|
@ -1,37 +0,0 @@
|
|||
https://sources.debian.org/data/main/x/x265/2.9-3/debian/patches/0003-detect512-is-needed-on-all-architectures.patch
|
||||
|
||||
From: Adam Sampson <unknown@bitbucket>
|
||||
Date: Sun, 14 Oct 2018 14:04:18 +0200
|
||||
Subject: detect512 is needed on all architectures
|
||||
|
||||
---
|
||||
source/common/cpu.cpp | 9 +++++----
|
||||
1 file changed, 5 insertions(+), 4 deletions(-)
|
||||
|
||||
diff --git a/source/common/cpu.cpp b/source/common/cpu.cpp
|
||||
index 0681ff5..fa687da 100644
|
||||
--- a/source/common/cpu.cpp
|
||||
+++ b/source/common/cpu.cpp
|
||||
@@ -110,6 +110,11 @@ const cpu_name_t cpu_names[] =
|
||||
{ "", 0 },
|
||||
};
|
||||
|
||||
+bool detect512()
|
||||
+{
|
||||
+ return(enable512);
|
||||
+}
|
||||
+
|
||||
#if X265_ARCH_X86
|
||||
|
||||
extern "C" {
|
||||
@@ -123,10 +128,6 @@ uint64_t PFX(cpu_xgetbv)(int xcr);
|
||||
#pragma warning(disable: 4309) // truncation of constant value
|
||||
#endif
|
||||
|
||||
-bool detect512()
|
||||
-{
|
||||
- return(enable512);
|
||||
-}
|
||||
uint32_t cpu_detect(bool benableavx512 )
|
||||
{
|
||||
|
|
@ -77,14 +77,14 @@ with what is used by the Bitcoin network.")
|
|||
(define-public python-bcrypt
|
||||
(package
|
||||
(name "python-bcrypt")
|
||||
(version "3.1.4")
|
||||
(version "3.1.6")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "bcrypt" version))
|
||||
(sha256
|
||||
(base32
|
||||
"13cyrnqwkhc70rs6dg65z4yrrr3dc42fhk11804fqmci9hvimvb7"))))
|
||||
"1sh2xh0iragdq8dhssc1cdd02nppjq7b5kmv0qladfi2s9cnfqs4"))))
|
||||
(build-system python-build-system)
|
||||
(native-inputs
|
||||
`(("python-pycparser" ,python-pycparser)
|
||||
|
@ -148,10 +148,7 @@ to providing full-strength password hashing for multi-user application.")
|
|||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
"https://pypi.python.org/packages/source/p/py-bcrypt/py-bcrypt-"
|
||||
version
|
||||
".tar.gz"))
|
||||
(uri (pypi-uri "py-bcrypt" version))
|
||||
(sha256
|
||||
(base32
|
||||
"0y6smdggwi5s72v6p1nn53dg6w05hna3d264cq6kas0lap73p8az"))))
|
||||
|
@ -240,10 +237,7 @@ Python interface around SSH networking concepts.")
|
|||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
"https://pypi.python.org/packages/source/e/ecdsa/ecdsa-"
|
||||
version
|
||||
".tar.gz"))
|
||||
(uri (pypi-uri "ecdsa" version))
|
||||
(sha256
|
||||
(base32
|
||||
"1yj31j0asmrx4an9xvsaj2icdmzy6pw0glfpqrrkrphwdpi1xkv4"))))
|
||||
|
@ -322,11 +316,11 @@ etc.). The package is structured to make adding new modules easy.")
|
|||
"0482rmi2x6p78wl2kz8qzyq21xz1sbbfwnv5x7dggar4vkwxhzfx"))))
|
||||
(build-system python-build-system)
|
||||
(native-inputs
|
||||
`(("python-setuptools-scm" ,python-setuptools-scm)))
|
||||
`(("python-pytest" ,python-pytest)
|
||||
("python-pytest-runner" ,python-pytest-runner)
|
||||
("python-setuptools-scm" ,python-setuptools-scm)))
|
||||
(propagated-inputs
|
||||
`(("python-pycrypto" ,python-pycrypto)))
|
||||
(arguments
|
||||
`(#:tests? #f)) ;TODO: tests require pytest
|
||||
(home-page "https://github.com/jaraco/keyring")
|
||||
(synopsis "Store and access your passwords safely")
|
||||
(description
|
||||
|
@ -363,14 +357,14 @@ is used by the Requests library to verify HTTPS requests.")
|
|||
(define-public python-cryptography-vectors
|
||||
(package
|
||||
(name "python-cryptography-vectors")
|
||||
(version "2.4.2")
|
||||
(version "2.5")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "cryptography_vectors" version))
|
||||
(sha256
|
||||
(base32
|
||||
"013qx2hz0jv79yzfzpn0r2kk33i5qy3sdnzgwiv5779d18snblwi"))))
|
||||
"15qfl3pnw2f11r0z0zhwl56f6pb60ysav8fxmpnz5p80cfwljdik"))))
|
||||
(build-system python-build-system)
|
||||
(home-page "https://github.com/pyca/cryptography")
|
||||
(synopsis "Test vectors for the cryptography package")
|
||||
|
@ -385,14 +379,14 @@ is used by the Requests library to verify HTTPS requests.")
|
|||
(define-public python-cryptography
|
||||
(package
|
||||
(name "python-cryptography")
|
||||
(version "2.4.2")
|
||||
(version "2.5")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "cryptography" version))
|
||||
(sha256
|
||||
(base32
|
||||
"1pc60dksi9w9mshl6cvn7gdjazbp3pmydy3qp9wgy5wzd8n0b9h5"))))
|
||||
"00c4d7gvsymlaw0r13zrm32dcnarmpayjyrh65yymlmr6mrbcij9"))))
|
||||
(build-system python-build-system)
|
||||
(inputs
|
||||
`(("openssl" ,openssl)))
|
||||
|
|
|
@ -665,13 +665,14 @@ teams extension for python-openid.")
|
|||
(define-public python-tornado
|
||||
(package
|
||||
(name "python-tornado")
|
||||
(version "4.5.1")
|
||||
(version "5.1.1")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "tornado" version))
|
||||
(sha256
|
||||
(base32 "1zbkgcdfq81k298awrm8p0xwbwwn2p3nbizdglzfbkskhai082fv"))))
|
||||
(base32
|
||||
"02clqk2116jbnq8lnaqmdw3p52nqrd9ib59r4xz2ll43fpcmhlaf"))))
|
||||
(build-system python-build-system)
|
||||
(arguments
|
||||
'(;; FIXME: Two tests error out with:
|
||||
|
@ -682,14 +683,12 @@ teams extension for python-openid.")
|
|||
;; (lambda _
|
||||
;; ;; 'setup.py test' hits an AssertionError on BSD-specific
|
||||
;; ;; "tornado/platform/kqueue.py". This is the supported method:
|
||||
;; (invoke- "python" "-m" "tornado.test")
|
||||
;; (invoke "python" "-m" "tornado.test.runtests")
|
||||
;; #t)))
|
||||
#:tests? #f))
|
||||
(native-inputs
|
||||
`(("python-certifi" ,python-certifi)))
|
||||
(propagated-inputs
|
||||
`(("python-backports-abc" ,python-backports-abc)))
|
||||
(home-page "http://www.tornadoweb.org/")
|
||||
(home-page "https://www.tornadoweb.org/")
|
||||
(synopsis "Python web framework and asynchronous networking library")
|
||||
(description
|
||||
"Tornado is a Python web framework and asynchronous networking library,
|
||||
|
@ -706,6 +705,7 @@ connection to each user.")
|
|||
(propagated-inputs
|
||||
`(("python2-backport-ssl-match-hostname"
|
||||
,python2-backport-ssl-match-hostname)
|
||||
("python2-backports-abc" ,python2-backports-abc)
|
||||
("python2-singledispatch" ,python2-singledispatch)
|
||||
,@(package-propagated-inputs tornado))))))
|
||||
|
||||
|
@ -775,10 +775,7 @@ term.js Javascript terminal emulator library.")
|
|||
(version "1.2.2")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
"https://pypi.python.org/packages/"
|
||||
"38/76/ebcbc24d0cb77db34520a3ca6ed1bd43ace17d182bbd8dd7d976f1c176fb/"
|
||||
"wsgi_intercept-" version ".tar.gz"))
|
||||
(uri (pypi-uri "wsgi_intercept" version))
|
||||
(sha256
|
||||
(base32
|
||||
"0kjj2v2dvmnpdd5h5gk9rzz0f54rhjb0yiz3zg65bmp65slfw65d"))))
|
||||
|
@ -832,8 +829,7 @@ object to help create WSGI responses.")
|
|||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://pypi.python.org/packages/source/z"
|
||||
"/zope.event/zope.event-" version ".tar.gz"))
|
||||
(uri (pypi-uri "zope.event" version))
|
||||
(sha256
|
||||
(base32
|
||||
"11p75zpfz3ffhz21nzx9wb23xs993ck5s6hkjcvhswwizni5jynw"))))
|
||||
|
@ -856,8 +852,7 @@ dispatching systems can be built.")
|
|||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://pypi.python.org/packages/source/z"
|
||||
"/zope.interface/zope.interface-" version ".tar.gz"))
|
||||
(uri (pypi-uri "zope.interface" version))
|
||||
(sha256
|
||||
(base32
|
||||
"0ks8h73b2g4bkad821qbv0wzjppdrwys33i7ka45ik3wxjg1l8if"))))
|
||||
|
@ -882,9 +877,7 @@ conforming to a given API or contract.")
|
|||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://pypi.python.org/packages/source/z"
|
||||
"/zope.exceptions/zope.exceptions-"
|
||||
version ".tar.gz"))
|
||||
(uri (pypi-uri "zope.exceptions" version))
|
||||
(sha256
|
||||
(base32
|
||||
"0zwxaaa66sqxg5k7zcrvs0fbg9ym1njnxnr28dfmchzhwjvwnfzl"))))
|
||||
|
@ -936,9 +929,7 @@ forms, HTTP servers, regular expressions, and more.")
|
|||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://pypi.python.org/packages/source/z"
|
||||
"/zope.testrunner/zope.testrunner-"
|
||||
version ".zip"))
|
||||
(uri (pypi-uri "zope.testrunner" version ".zip"))
|
||||
(sha256
|
||||
(base32
|
||||
"1r7iqknhh55y45f64mz5hghgvzx34h1i11k350s0avx6q8gznja1"))))
|
||||
|
@ -975,10 +966,7 @@ tests.")
|
|||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
"https://pypi.python.org/packages/source/z"
|
||||
"/zope.i18nmessageid/zope.i18nmessageid-"
|
||||
version ".tar.gz"))
|
||||
(uri (pypi-uri "zope.i18nmessageid" version))
|
||||
(sha256
|
||||
(base32
|
||||
"1rslyph0klk58dmjjy4j0jxy21k03azksixc3x2xhqbkv97cmzml"))))
|
||||
|
@ -999,8 +987,7 @@ internationalized messages within program source text.")
|
|||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://pypi.python.org/packages/source/z"
|
||||
"/zope.schema/zope.schema-" version ".tar.gz"))
|
||||
(uri (pypi-uri "zope.schema" version))
|
||||
(sha256
|
||||
(base32
|
||||
"1p943jdxb587dh7php4vx04qvn7b2877hr4qs5zyckvp5afhhank"))))
|
||||
|
@ -1030,9 +1017,7 @@ defining data schemas.")
|
|||
(version "4.0.3")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://pypi.python.org/packages/source/z"
|
||||
"/zope.configuration/zope.configuration-"
|
||||
version ".tar.gz"))
|
||||
(uri (pypi-uri "zope.configuration" version))
|
||||
(sha256
|
||||
(base32
|
||||
"1x9dfqypgympnlm25p9m43xh4qv3p7d75vksv9pzqibrb4cggw5n"))))
|
||||
|
@ -1058,8 +1043,7 @@ Markup Language.")
|
|||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://pypi.python.org/packages/source/z"
|
||||
"/zope.proxy/zope.proxy-" version ".tar.gz"))
|
||||
(uri (pypi-uri "zope.proxy" version))
|
||||
(sha256
|
||||
(base32
|
||||
"0pqwwmvm1prhwv1ziv9lp8iirz7xkwb6n2kyj36p2h0ppyyhjnm4"))))
|
||||
|
@ -1087,8 +1071,7 @@ brokering, etc.) for which the proxy is responsible.")
|
|||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://pypi.python.org/packages/source/z"
|
||||
"/zope.location/zope.location-" version ".tar.gz"))
|
||||
(uri (pypi-uri "zope.location" version))
|
||||
(sha256
|
||||
(base32
|
||||
"1nj9da4ksiyv3h8n2vpzwd0pb03mdsh7zy87hfpx72b6p2zcwg74"))))
|
||||
|
@ -1114,8 +1097,7 @@ Zope3, which are are special objects that have a structural location.")
|
|||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://pypi.python.org/packages/source/z"
|
||||
"/zope.security/zope.security-" version ".tar.gz"))
|
||||
(uri (pypi-uri "zope.security" version))
|
||||
(sha256
|
||||
(base32
|
||||
"14zmf684amc0x32kq05yxnhfqd1cmyhafkw05gn81rn90zjv6ssy"))))
|
||||
|
@ -1416,29 +1398,30 @@ authenticated session objects providing things like keep-alive.")
|
|||
(define-public python-urllib3
|
||||
(package
|
||||
(name "python-urllib3")
|
||||
(version "1.23")
|
||||
(version "1.24.1")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "urllib3" version))
|
||||
(sha256
|
||||
(base32
|
||||
"1bvbd35q3zdcd7gsv38fwpizy7p06dr0154g5gfybrvnbvhwb2m6"))))
|
||||
"08lwd9f3hqznyf32vnzwvp87pchx062nkbgyrf67rwlkgj0jk5fy"))))
|
||||
(build-system python-build-system)
|
||||
(arguments `(#:tests? #f))
|
||||
(native-inputs
|
||||
`(;; some packages for tests
|
||||
("python-nose" ,python-nose)
|
||||
("python-mock" ,python-mock)
|
||||
("python-pytest" ,python-pytest)
|
||||
("python-tornado" ,python-tornado)))
|
||||
(propagated-inputs
|
||||
`(;; These 5 inputs are used to build urrlib3[secure]
|
||||
("python-certifi" ,python-certifi)
|
||||
("python-cryptography" ,python-cryptography) ;
|
||||
("python-cryptography" ,python-cryptography)
|
||||
("python-idna" ,python-idna)
|
||||
("python-ipaddress" ,python-ipaddress)
|
||||
("python-pyopenssl" ,python-pyopenssl)))
|
||||
(home-page "https://urllib3.readthedocs.org/")
|
||||
("python-pyopenssl" ,python-pyopenssl)
|
||||
("python-pysocks" ,python-pysocks)))
|
||||
(home-page "https://urllib3.readthedocs.io/")
|
||||
(synopsis "HTTP library with thread-safe connection pooling")
|
||||
(description
|
||||
"Urllib3 supports features left out of urllib and urllib2 libraries. It
|
||||
|
@ -1583,20 +1566,28 @@ minimum of WSGI.")
|
|||
(define-public python-flask
|
||||
(package
|
||||
(name "python-flask")
|
||||
(version "0.11.1")
|
||||
(version "1.0.2")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "Flask" version))
|
||||
(uri (pypi-uri "flask" version))
|
||||
(sha256
|
||||
(base32
|
||||
"03kbfll4sj3v5z7r31c7bhfpi11r1np076d4p1k2kg4yzcmkywdl"))))
|
||||
"0j6f4a9rpfh25k1gp7azqhnni4mb4fgy50jammgjgddw1l3w0w92"))))
|
||||
(build-system python-build-system)
|
||||
(arguments
|
||||
'(#:phases
|
||||
(modify-phases %standard-phases
|
||||
(replace 'check
|
||||
(lambda _
|
||||
(invoke "python" "-m" "pytest"))))))
|
||||
(native-inputs
|
||||
`(("python-pytest" ,python-pytest)))
|
||||
(propagated-inputs
|
||||
`(("python-itsdangerous" ,python-itsdangerous)
|
||||
("python-jinja2" ,python-jinja2)
|
||||
("python-click" ,python-click)
|
||||
("python-werkzeug" ,python-werkzeug)))
|
||||
(home-page "https://github.com/mitsuhiko/flask/")
|
||||
(home-page "https://www.palletsprojects.com/p/flask/")
|
||||
(synopsis "Microframework based on Werkzeug, Jinja2 and good intentions")
|
||||
(description "Flask is a micro web framework based on the Werkzeug toolkit
|
||||
and Jinja2 template engine. It is called a micro framework because it does not
|
||||
|
@ -2025,14 +2016,14 @@ pretty printer and a tree visitor.")
|
|||
(define-public python-flask-restful
|
||||
(package
|
||||
(name "python-flask-restful")
|
||||
(version "0.3.5")
|
||||
(version "0.3.7")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "Flask-RESTful" version))
|
||||
(sha256
|
||||
(base32
|
||||
"0hjcmdb56b7z4bkw848lxfkyrpnkwzmqn2dgnlv12mwvjpzsxr6c"))))
|
||||
(base32
|
||||
"1a9cbwkr6krryyzq4sd3f415nkkc6dyfls5i3pgyibs94g0hw97q"))))
|
||||
(build-system python-build-system)
|
||||
(propagated-inputs
|
||||
`(("python-aniso8601" ,python-aniso8601)
|
||||
|
@ -2603,18 +2594,28 @@ List. Forked from and using the same API as the publicsuffix package.")
|
|||
(define-public python-werkzeug
|
||||
(package
|
||||
(name "python-werkzeug")
|
||||
(version "0.11.15")
|
||||
(version "0.14.1")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "Werkzeug" version))
|
||||
(uri (pypi-uri "werkzeug" version))
|
||||
(sha256
|
||||
(base32
|
||||
"1h5wycw8yj7q0grqsjnsqflmrlsdagvl2j4dsgdncci6mjc7fpa5"))))
|
||||
"0z2m4snn1vc9518r2vzgdj1nc90kcgi60wijvd29yvcp85ypmzf3"))))
|
||||
(build-system python-build-system)
|
||||
(arguments
|
||||
'(#:phases
|
||||
(modify-phases %standard-phases
|
||||
(delete 'check)
|
||||
(add-after 'install 'check
|
||||
(lambda* (#:key inputs outputs #:allow-other-keys)
|
||||
(add-installed-pythonpath inputs outputs)
|
||||
(invoke "python" "-m" "pytest"))))))
|
||||
(propagated-inputs
|
||||
`(("python-requests" ,python-requests)))
|
||||
(native-inputs
|
||||
`(("python-pytest" ,python-pytest)))
|
||||
(home-page "http://werkzeug.pocoo.org/")
|
||||
(home-page "https://www.palletsprojects.org/p/werkzeug/")
|
||||
(synopsis "Utilities for WSGI applications")
|
||||
(description "One of the most advanced WSGI utility modules. It includes a
|
||||
powerful debugger, full-featured request and response objects, HTTP utilities to
|
||||
|
|
|
@ -321,10 +321,7 @@ etc. ")
|
|||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
"https://pypi.python.org/packages/source/b/"
|
||||
"backports.ssl_match_hostname/backports.ssl_match_hostname-"
|
||||
version ".tar.gz"))
|
||||
(uri (pypi-uri "backports.ssl_match_hostname" version))
|
||||
(sha256
|
||||
(base32
|
||||
"1wndipik52cyqy0677zdgp90i435pmvwd89cz98lm7ri0y3xjajh"))))
|
||||
|
@ -531,8 +528,7 @@ to users of that module.")
|
|||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://pypi.python.org/packages/source/l/lockfile/"
|
||||
"lockfile-" version ".tar.gz"))
|
||||
(uri (pypi-uri "lockfile" version))
|
||||
(sha256
|
||||
(base32
|
||||
"16gpx5hm73ah5n1079ng0vy381hl802v606npkx4x8nb0gg05vba"))))
|
||||
|
@ -1002,8 +998,7 @@ doing practical, real world data analysis in Python.")
|
|||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://pypi.python.org/packages/source/m/mechanize/mechanize-"
|
||||
version ".tar.gz"))
|
||||
(uri (pypi-uri "mechanize" version))
|
||||
(sha256
|
||||
(base32
|
||||
"0rj7r166i1dyrq0ihm5rijfmvhs8a04im28lv05c0c3v206v4rrf"))))
|
||||
|
@ -1342,18 +1337,30 @@ existing ones.")
|
|||
(define-public scons
|
||||
(package
|
||||
(name "scons")
|
||||
(version "3.0.1")
|
||||
(version "3.0.3")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "mirror://sourceforge/scons/scons/" version
|
||||
"/scons-" version ".tar.gz"))
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/SCons/scons.git")
|
||||
(commit version)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"0wzid419mlwqw9llrg8gsx4nkzhqy16m4m40r0xnh6cwscw5wir4"))))
|
||||
"1xizkjgrvydkjhpv7i5rx0mdkp3618sis7jsckjh57nxcynlk5dc"))))
|
||||
(build-system python-build-system)
|
||||
(arguments
|
||||
`(#:use-setuptools? #f ; still relies on distutils
|
||||
#:tests? #f)) ; no 'python setup.py test' command
|
||||
#:tests? #f ; no 'python setup.py test' command
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-before 'build 'bootstrap
|
||||
(lambda _
|
||||
(substitute* "src/engine/SCons/compat/__init__.py"
|
||||
(("sys.modules\\[new\\] = imp.load_module\\(old, \\*imp.find_module\\(old\\)\\)")
|
||||
"sys.modules[new] = __import__(old)"))
|
||||
(invoke "python" "bootstrap.py" "build/scons" "DEVELOPER=guix")
|
||||
(chdir "build/scons")
|
||||
#t)))))
|
||||
(home-page "http://scons.org/")
|
||||
(synopsis "Software construction tool written in Python")
|
||||
(description
|
||||
|
@ -1400,9 +1407,7 @@ software.")
|
|||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
"https://pypi.python.org/packages/source/p/python-mimeparse/python-mimeparse-"
|
||||
version ".tar.gz"))
|
||||
(uri (pypi-uri "python-mimeparse" version))
|
||||
(sha256
|
||||
(base32
|
||||
"0y2g6cl660bpz11srgqyvvm8gmywpgyx8g0xfvbiyr0af0yv1r3n"))))
|
||||
|
@ -1638,20 +1643,17 @@ files.")
|
|||
(define-public python-click
|
||||
(package
|
||||
(name "python-click")
|
||||
(version "6.7")
|
||||
(version "7.0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "click" version))
|
||||
(sha256
|
||||
(base32
|
||||
"02qkfpykbq35id8glfgwc38yc430427yd05z1wc5cnld8zgicmgi"))))
|
||||
"1mzjixd4vjbjvzb6vylki9w1556a9qmdh35kzmq6cign46av952v"))))
|
||||
(build-system python-build-system)
|
||||
(arguments
|
||||
`(;; The tests are fragile, depending on a specific version of pytest:
|
||||
;; <https://github.com/pallets/click/issues/823>
|
||||
#:tests? #f
|
||||
#:phases
|
||||
`(#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-after 'unpack 'fix-paths
|
||||
(lambda* (#:key inputs #:allow-other-keys)
|
||||
|
@ -1660,10 +1662,13 @@ files.")
|
|||
(substitute* "click/_unicodefun.py"
|
||||
(("'locale'")
|
||||
(string-append "'" glibc "/bin/locale'"))))
|
||||
#t)))))
|
||||
#t))
|
||||
(replace 'check
|
||||
(lambda _
|
||||
(invoke "python" "-m" "pytest"))))))
|
||||
(native-inputs
|
||||
`(("python-pytest" ,python-pytest)))
|
||||
(home-page "http://click.pocoo.org")
|
||||
(home-page "https://palletsprojects.com/p/click/")
|
||||
(synopsis "Command line library for Python")
|
||||
(description
|
||||
"Click is a Python package for creating command line interfaces in a
|
||||
|
@ -1738,10 +1743,7 @@ version numbers.")
|
|||
(version "2.6.0")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri
|
||||
(string-append
|
||||
"https://pypi.python.org/packages/source/j/jsonschema/jsonschema-"
|
||||
version ".tar.gz"))
|
||||
(uri (pypi-uri "jsonschema" version))
|
||||
(sha256
|
||||
(base32
|
||||
"00kf3zmpp9ya4sydffpifn0j0mzm342a2vzh82p6r0vh10cg7xbg"))))
|
||||
|
@ -1961,18 +1963,16 @@ visualisation and class tracker statistics.")
|
|||
(define-public python-itsdangerous
|
||||
(package
|
||||
(name "python-itsdangerous")
|
||||
(version "0.24")
|
||||
(version "1.1.0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
"https://pypi.python.org/packages/source/i/itsdangerous/itsdangerous-"
|
||||
version ".tar.gz"))
|
||||
(uri (pypi-uri "itsdangerous" version))
|
||||
(sha256
|
||||
(base32
|
||||
"06856q6x675ly542ig0plbqcyab6ksfzijlyf1hzhgg3sgwgrcyb"))))
|
||||
"068zpbksq5q2z4dckh2k1zbcq43ay74ylqn77rni797j0wyh66rj"))))
|
||||
(build-system python-build-system)
|
||||
(home-page "https://github.com/mitsuhiko/itsdangerous")
|
||||
(home-page "https://palletsprojects.com/p/itsdangerous/")
|
||||
(synopsis "Python library for passing data to/from untrusted environments")
|
||||
(description
|
||||
"Itsdangerous provides various helpers to pass trusted data to untrusted
|
||||
|
@ -2074,9 +2074,7 @@ e.g. filters, callbacks and errbacks can all be promises.")
|
|||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
"https://pypi.python.org/packages/source/M/MarkupSafe/MarkupSafe-"
|
||||
version ".tar.gz"))
|
||||
(uri (pypi-uri "MarkupSafe" version))
|
||||
(sha256
|
||||
(base32
|
||||
"0rdn1s8x9ni7ss8rfiacj7x1085lx8mh2zdwqslnw8xc3l4nkgm6"))))
|
||||
|
@ -4326,8 +4324,7 @@ common operations on files to be invoked on those path objects directly.")
|
|||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://pypi.python.org/packages/source/s/"
|
||||
"simplegeneric/simplegeneric-" version ".zip"))
|
||||
(uri (pypi-uri "simplegeneric" version ".zip"))
|
||||
(sha256
|
||||
(base32 "0wwi1c6md4vkbcsfsf8dklf3vr4mcdj4mpxkanwgb6jb1432x5yw"))))
|
||||
(build-system python-build-system)
|
||||
|
@ -4355,9 +4352,7 @@ standard library.")
|
|||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://pypi.python.org/packages/source/i/"
|
||||
"ipython_genutils/ipython_genutils-"
|
||||
version ".tar.gz"))
|
||||
(uri (pypi-uri "ipython_genutils" version))
|
||||
(sha256
|
||||
(base32 "19l2pp1c64ansr89l3cqh19jdi2ixhssdzx0vz4n6r52a6i281is"))))
|
||||
(build-system python-build-system)
|
||||
|
@ -5537,15 +5532,12 @@ complexity of Python source code.")
|
|||
(package (inherit python-pep8)
|
||||
(version "1.5.7")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
"https://pypi.python.org/packages/source/p/pep8/pep8-"
|
||||
version
|
||||
".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"12b9bbdbwnspxgak14xg58c130x2n0blxzlms5jn2dszn8qj3d0m"))))
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "pep8" version))
|
||||
(sha256
|
||||
(base32
|
||||
"12b9bbdbwnspxgak14xg58c130x2n0blxzlms5jn2dszn8qj3d0m"))))
|
||||
(arguments
|
||||
;; XXX Tests not compatible with Python 3.5.
|
||||
'(#:tests? #f))))
|
||||
|
@ -5559,15 +5551,12 @@ complexity of Python source code.")
|
|||
(package (inherit python-pyflakes)
|
||||
(version "0.8.1")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
"https://pypi.python.org/packages/source/p/pyflakes/pyflakes-"
|
||||
version
|
||||
".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0sbpq6pqm1i9wqi41mlfrsc5rk92jv4mskvlyxmnhlbdnc80ma1z"))))
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "pyflakes" version))
|
||||
(sha256
|
||||
(base32
|
||||
"0sbpq6pqm1i9wqi41mlfrsc5rk92jv4mskvlyxmnhlbdnc80ma1z"))))
|
||||
(arguments
|
||||
;; XXX Tests not compatible with Python 3.5.
|
||||
'(#:tests? #f))))
|
||||
|
@ -6149,9 +6138,7 @@ Unicode-aware. It is not intended as an end-user tool.")
|
|||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
"https://pypi.python.org/packages/source/P/PrettyTable/"
|
||||
"prettytable-" version ".tar.bz2"))
|
||||
(uri (pypi-uri "prettytable" version ".tar.bz2"))
|
||||
(sha256
|
||||
(base32
|
||||
"0diwsicwmiq2cpzpxri7cyl5fmsvicafw6nfqf6p6p322dji2g45"))))
|
||||
|
@ -6383,8 +6370,7 @@ domains support.")
|
|||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://pypi.python.org/packages/source/p/"
|
||||
"pretend/pretend-" version ".tar.gz"))
|
||||
(uri (pypi-uri "pretend" version))
|
||||
(sha256
|
||||
(base32
|
||||
"040vm94lcbscg5p81g1icmwwwa2jm7wrd1ybmxnv1sz8rl8bh3n9"))))
|
||||
|
@ -6657,16 +6643,14 @@ Jupyter Notebook format and Python APIs for working with notebooks.")
|
|||
(define-public python-entrypoints
|
||||
(package
|
||||
(name "python-entrypoints")
|
||||
(version "0.2.3")
|
||||
(version "0.3")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://github.com/takluyver/entrypoints/archive/"
|
||||
version ".tar.gz"))
|
||||
(file-name (string-append name "-" version ".tar.gz"))
|
||||
(uri (pypi-uri "entrypoints" version))
|
||||
(sha256
|
||||
(base32
|
||||
"1pdvgfr5bxyvnfvxbsd3zi0dh3il71pc4k6rinx6zpps91b84a56"))))
|
||||
"0lc4si3xb7hza424414rdqdc3vng3kcrph8jbvjqb32spqddf3f7"))))
|
||||
(build-system python-build-system)
|
||||
;; The package does not come with a setup.py file, so we have to generate
|
||||
;; one ourselves.
|
||||
|
@ -7134,9 +7118,7 @@ This allows one to make simple text-mode user interfaces on Unix-like systems")
|
|||
(version "5.0.6")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
"https://pypi.python.org/packages/source/c/configobj/"
|
||||
"configobj-" version ".tar.gz"))
|
||||
(uri (pypi-uri "configobj" version))
|
||||
(sha256
|
||||
(base32
|
||||
"00h9rcmws03xvdlfni11yb60bz3kxfvsj6dg6nrpzj71f03nbxd2"))
|
||||
|
@ -9245,10 +9227,7 @@ programming errors.")
|
|||
(version "2.4.0")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
"https://pypi.python.org/packages/8b/3e/"
|
||||
"384eeff406b06315738b62483fd2126c6e4f544167116b17cc04ea7d2a59/"
|
||||
"pykafka-" version ".tar.gz"))
|
||||
(uri (pypi-uri "pykafka" version))
|
||||
(sha256
|
||||
(base32
|
||||
"1id6sr159p6aa13bxcqyr9gln8sqg1l0ddzns5iws8kk5q1p5cfv"))))
|
||||
|
@ -9301,9 +9280,7 @@ specified in POSIX.1-2001 and POSIX.1-2008.")
|
|||
(version "0.1.7")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
"https://pypi.python.org/packages/source/j/jsonrpclib/"
|
||||
"jsonrpclib-" version ".tar.gz"))
|
||||
(uri (pypi-uri "jsonrpclib" version))
|
||||
(sha256
|
||||
(base32
|
||||
"02vgirw2bcgvpcxhv5hf3yvvb4h5wzd1lpjx8na5psdmaffj6l3z"))))
|
||||
|
|
|
@ -5,7 +5,7 @@
|
|||
;;; Copyright © 2015, 2016, 2017, 2018, 2019 Efraim Flashner <efraim@flashner.co.il>
|
||||
;;; Copyright © 2016, 2017 Nils Gillmann <ng0@n0.is>
|
||||
;;; Copyright © 2016 Thomas Danckaert <post@thomasdanckaert.be>
|
||||
;;; Copyright © 2017, 2018 Ricardo Wurmus <rekado@elephly.net>
|
||||
;;; Copyright © 2017, 2018, 2019 Ricardo Wurmus <rekado@elephly.net>
|
||||
;;; Copyright © 2017 Quiliro <quiliro@fsfla.org>
|
||||
;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr>
|
||||
;;; Copyright © 2018 Nicolas Goaziou <mail@nicolasgoaziou.fr>
|
||||
|
@ -79,12 +79,13 @@
|
|||
(version "5.1.0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://github.com/steveire/grantlee/archive/v"
|
||||
version ".tar.gz"))
|
||||
(file-name (string-append name "-" version ".tar.gz"))
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/steveire/grantlee.git")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "1lf9rkv0i0kd7fvpgg5l8jb87zw8dzcwd1liv6hji7g4wlpmfdiq"))))
|
||||
(base32 "1dmah2gd6zd4fgz2f4ir11dazqg067hjz8xshhywhfsmavchi626"))))
|
||||
(native-inputs
|
||||
;; Optional: lcov and cccc, both are for code coverage
|
||||
`(("doxygen" ,doxygen)))
|
||||
|
|
|
@ -0,0 +1,60 @@
|
|||
;;; GNU Guix --- Functional package management for GNU
|
||||
;;; Copyright © 2019 Andreas Enge <andreas@enge.fr>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
;;; GNU Guix is free software; you can redistribute it and/or modify it
|
||||
;;; under the terms of the GNU General Public License as published by
|
||||
;;; the Free Software Foundation; either version 3 of the License, or (at
|
||||
;;; your option) any later version.
|
||||
;;;
|
||||
;;; GNU Guix is distributed in the hope that it will be useful, but
|
||||
;;; WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
;;; GNU General Public License for more details.
|
||||
;;;
|
||||
;;; You should have received a copy of the GNU General Public License
|
||||
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
(define-module (gnu packages sagemath)
|
||||
#:use-module ((guix licenses) #:prefix license:)
|
||||
#:use-module (guix packages)
|
||||
#:use-module (guix download)
|
||||
#:use-module (guix build-system python)
|
||||
#:use-module (gnu packages algebra)
|
||||
#:use-module (gnu packages multiprecision)
|
||||
#:use-module (gnu packages python)
|
||||
#:use-module (gnu packages python-xyz))
|
||||
|
||||
|
||||
(define-public python-cypari2
|
||||
(package
|
||||
(name "python-cypari2")
|
||||
(version "2.0.3")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "cypari2" version))
|
||||
(sha256
|
||||
(base32
|
||||
"0mghbmilmy34xp1d50xdx76sijqxmpkm2bcgx2v1mdji2ff7n0yc"))))
|
||||
(build-system python-build-system)
|
||||
(native-inputs
|
||||
`(("python-cython" ,python-cython)))
|
||||
(propagated-inputs
|
||||
`(("python-cysignals" ,python-cysignals)))
|
||||
(inputs
|
||||
`(("gmp" ,gmp)
|
||||
("pari-gp", pari-gp)))
|
||||
(home-page "https://cypari2.readthedocs.io/")
|
||||
(synopsis
|
||||
"Python interface to the number theory library libpari")
|
||||
(description
|
||||
"Cypari2 provides a Python interface to the number theory library
|
||||
PARI/GP. It has been spun off from the SageMath mathematics software system,
|
||||
but it can be used independently.")
|
||||
(license license:gpl2+)))
|
||||
|
||||
(define-public python2-cypari2
|
||||
(package-with-python2 python-cypari2))
|
||||
|
|
@ -1147,6 +1147,7 @@ generation.")
|
|||
#:test-target "test"
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(delete 'bootstrap)
|
||||
(delete 'configure) ; No configure script
|
||||
(replace 'install ; Makefile has no 'install phase
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
|
@ -1160,9 +1161,9 @@ generation.")
|
|||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
(let* ((out (assoc-ref outputs "out"))
|
||||
(bin (string-append out "/bin")))
|
||||
(and
|
||||
(zero? (system* "./bootstrap.sh"))
|
||||
(install-file "flisp.boot" bin))))))))
|
||||
(invoke "./bootstrap.sh")
|
||||
(install-file "flisp.boot" bin)
|
||||
#t))))))
|
||||
(synopsis "Scheme-like lisp implementation")
|
||||
(description
|
||||
"@code{femtolisp} is a scheme-like lisp implementation with a
|
||||
|
|
|
@ -9,6 +9,7 @@
|
|||
;;; Copyright © 2017, 2018 Nils Gillmann <ng0@n0.is>
|
||||
;;; Copyright © 2017, 2018 Leo Famulari <leo@famulari.name>
|
||||
;;; Copyright © 2017 Arun Isaac <arunisaac@systemreboot.net>
|
||||
;;; Copyright © 2019 Meiyo Peng <meiyo.peng@gmail.com>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
|
@ -27,9 +28,9 @@
|
|||
|
||||
(define-module (gnu packages shells)
|
||||
#:use-module (gnu packages)
|
||||
#:use-module (gnu packages algebra)
|
||||
#:use-module (gnu packages autotools)
|
||||
#:use-module (gnu packages base)
|
||||
#:use-module (gnu packages bash)
|
||||
#:use-module (gnu packages bison)
|
||||
#:use-module (gnu packages documentation)
|
||||
#:use-module (gnu packages groff)
|
||||
|
@ -45,6 +46,7 @@
|
|||
#:use-module (gnu packages scheme)
|
||||
#:use-module (guix build-system gnu)
|
||||
#:use-module (guix build-system python)
|
||||
#:use-module (guix build-system trivial)
|
||||
#:use-module (guix download)
|
||||
#:use-module (guix git-download)
|
||||
#:use-module (guix licenses)
|
||||
|
@ -89,51 +91,105 @@ direct descendant of NetBSD's Almquist Shell (@command{ash}).")
|
|||
(define-public fish
|
||||
(package
|
||||
(name "fish")
|
||||
(version "2.7.1")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri
|
||||
(list
|
||||
(string-append "https://fishshell.com/files/"
|
||||
version "/fish-" version ".tar.gz")
|
||||
(string-append "https://github.com/fish-shell/fish-shell/"
|
||||
"releases/download/" version "/"
|
||||
name "-" version ".tar.gz")))
|
||||
(sha256
|
||||
(base32
|
||||
"0nhc3yc5lnnan7zmxqqxm07rdpwjww5ijy45ll2njdc6fnfb2az4"))
|
||||
(modules '((guix build utils)))
|
||||
;; Don't try to install /etc/fish/config.fish.
|
||||
(snippet '(begin
|
||||
(substitute* "Makefile.in"
|
||||
((".*INSTALL.*sysconfdir.*fish.*") ""))
|
||||
#t))))
|
||||
(version "3.0.0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://github.com/fish-shell/fish-shell/"
|
||||
"releases/download/" version "/"
|
||||
name "-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32 "1kzjd0n0sfslkd36lzrvvvgy3qwkd9y466bkrqlnhd5h9dhx77ga"))))
|
||||
(build-system gnu-build-system)
|
||||
(inputs
|
||||
`(("fish-foreign-env" ,fish-foreign-env)
|
||||
("groff" ,groff) ; for 'fish --help'
|
||||
("ncurses" ,ncurses)
|
||||
("pcre2" ,pcre2) ; don't use the bundled PCRE2
|
||||
("python" ,python))) ; for fish_config and manpage completions
|
||||
(native-inputs
|
||||
`(("doxygen" ,doxygen)))
|
||||
(inputs
|
||||
`(("bc" ,bc)
|
||||
("ncurses" ,ncurses)
|
||||
("groff" ,groff) ;for 'fish --help'
|
||||
("pcre2" ,pcre2) ;don't use the bundled PCRE2
|
||||
("python" ,python-wrapper))) ;for fish_config and manpage completions
|
||||
(arguments
|
||||
'(#:tests? #f ; no check target
|
||||
#:configure-flags '("--sysconfdir=/etc")
|
||||
'(#:tests? #f ; no check target
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
;; Embed absolute paths to store items.
|
||||
(add-after 'unpack 'embed-store-paths
|
||||
(lambda* (#:key inputs outputs #:allow-other-keys)
|
||||
(substitute* '("share/functions/math.fish"
|
||||
"share/functions/seq.fish")
|
||||
(("\\| bc")
|
||||
(string-append "| " (assoc-ref %build-inputs "bc")
|
||||
"/bin/bc")))
|
||||
(substitute* "share/functions/fish_update_completions.fish"
|
||||
(("python") (which "python")))
|
||||
(add-after 'unpack 'patch-source
|
||||
(lambda _
|
||||
(substitute* '("build_tools/build_commands_hdr.sh"
|
||||
"build_tools/build_user_doc.sh")
|
||||
(("/usr/bin/env") "env"))
|
||||
#t))
|
||||
;; Embed absolute paths.
|
||||
(add-before 'install 'embed-absolute-paths
|
||||
(lambda _
|
||||
(substitute* '("share/functions/__fish_config_interactive.fish"
|
||||
"share/functions/fish_config.fish"
|
||||
"share/functions/fish_update_completions.fish")
|
||||
(("python3") (which "python3")))
|
||||
(substitute* "share/functions/__fish_print_help.fish"
|
||||
(("nroff") (which "nroff")))
|
||||
#t))
|
||||
;; Source /etc/fish/config.fish from $__fish_sysconf_dir/config.fish.
|
||||
(add-before 'install 'patch-fish-config
|
||||
(lambda _
|
||||
(let ((port (open-file "etc/config.fish" "a")))
|
||||
(display (string-append
|
||||
"\n\n"
|
||||
"# Patched by Guix.\n"
|
||||
"# Source /etc/fish/config.fish.\n"
|
||||
"if test -f /etc/fish/config.fish\n"
|
||||
" source /etc/fish/config.fish\n"
|
||||
"end\n")
|
||||
port)
|
||||
(close-port port))
|
||||
#t))
|
||||
;; Enable completions, functions and configurations in user's and
|
||||
;; system's guix profiles by adding them to __extra_* variables.
|
||||
(add-before 'install 'patch-fish-extra-paths
|
||||
(lambda _
|
||||
(let ((port (open-file "share/__fish_build_paths.fish" "a")))
|
||||
(display
|
||||
(string-append
|
||||
"\n\n"
|
||||
"# Patched by Guix.\n"
|
||||
"# Enable completions, functions and configurations in user's"
|
||||
" and system's guix profiles by adding them to __extra_*"
|
||||
" variables.\n"
|
||||
"set -l __guix_profile_paths ~/.guix-profile"
|
||||
" /run/current-system/profile\n"
|
||||
"set __extra_completionsdir"
|
||||
" $__guix_profile_paths\"/etc/fish/completions\""
|
||||
" $__guix_profile_paths\"/share/fish/vendor_completions.d\""
|
||||
" $__extra_completionsdir\n"
|
||||
"set __extra_functionsdir"
|
||||
" $__guix_profile_paths\"/etc/fish/functions\""
|
||||
" $__guix_profile_paths\"/share/fish/vendor_functions.d\""
|
||||
" $__extra_functionsdir\n"
|
||||
"set __extra_confdir"
|
||||
" $__guix_profile_paths\"/etc/fish/conf.d\""
|
||||
" $__guix_profile_paths\"/share/fish/vendor_conf.d\""
|
||||
" $__extra_confdir\n")
|
||||
port)
|
||||
(close-port port))
|
||||
#t))
|
||||
;; Use fish-foreign-env to source /etc/profile.
|
||||
(add-before 'install 'source-etc-profile
|
||||
(lambda* (#:key inputs #:allow-other-keys)
|
||||
(let ((port (open-file "share/__fish_build_paths.fish" "a")))
|
||||
(display
|
||||
(string-append
|
||||
"\n\n"
|
||||
"# Patched by Guix.\n"
|
||||
"# Use fish-foreign-env to source /etc/profile.\n"
|
||||
"if status is-login\n"
|
||||
" set fish_function_path "
|
||||
(assoc-ref inputs "fish-foreign-env") "/share/fish/functions"
|
||||
" $__fish_datadir/functions\n"
|
||||
" fenv source /etc/profile\n"
|
||||
" set -e fish_function_path\n"
|
||||
"end\n")
|
||||
port)
|
||||
(close-port port))
|
||||
#t)))))
|
||||
(synopsis "The friendly interactive shell")
|
||||
(description
|
||||
|
@ -148,6 +204,54 @@ and syntax highlighting.")
|
|||
(home-page "https://fishshell.com/")
|
||||
(license gpl2)))
|
||||
|
||||
(define-public fish-foreign-env
|
||||
(package
|
||||
(name "fish-foreign-env")
|
||||
(version "0.20190116")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/oh-my-fish/plugin-foreign-env.git")
|
||||
(commit "dddd9213272a0ab848d474d0cbde12ad034e65bc")))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "00xqlyl3lffc5l0viin1nyp819wf81fncqyz87jx8ljjdhilmgbs"))))
|
||||
(build-system trivial-build-system)
|
||||
(arguments
|
||||
'(#:modules ((guix build utils))
|
||||
#:builder
|
||||
(begin
|
||||
(use-modules (guix build utils))
|
||||
(let* ((source (assoc-ref %build-inputs "source"))
|
||||
(out (assoc-ref %outputs "out"))
|
||||
(func-path (string-append out "/share/fish/functions")))
|
||||
(mkdir-p func-path)
|
||||
(copy-recursively (string-append source "/functions")
|
||||
func-path)
|
||||
|
||||
;; Embed absolute paths.
|
||||
(substitute* `(,(string-append func-path "/fenv.fish")
|
||||
,(string-append func-path "/fenv.apply.fish")
|
||||
,(string-append func-path "/fenv.main.fish"))
|
||||
(("bash")
|
||||
(string-append (assoc-ref %build-inputs "bash") "/bin/bash"))
|
||||
(("sed")
|
||||
(string-append (assoc-ref %build-inputs "sed") "/bin/sed"))
|
||||
((" tr ")
|
||||
(string-append " " (assoc-ref %build-inputs "coreutils")
|
||||
"/bin/tr ")))))))
|
||||
(inputs
|
||||
`(("bash" ,bash)
|
||||
("coreutils" ,coreutils)
|
||||
("sed" ,sed)))
|
||||
(home-page "https://github.com/oh-my-fish/plugin-foreign-env")
|
||||
(synopsis "Foreign environment interface for fish shell")
|
||||
(description "@code{fish-foreign-env} wraps bash script execution in a way
|
||||
that environment variables that are exported or modified get imported back
|
||||
into fish.")
|
||||
(license expat)))
|
||||
|
||||
(define-public rc
|
||||
(package
|
||||
(name "rc")
|
||||
|
|
|
@ -22,6 +22,7 @@
|
|||
#:use-module (guix licenses)
|
||||
#:use-module (guix build-system gnu)
|
||||
#:use-module (gnu packages guile)
|
||||
#:use-module (gnu packages guile-xyz)
|
||||
#:use-module (gnu packages lout)
|
||||
#:use-module (gnu packages pkg-config)
|
||||
#:use-module (gnu packages plotutils)
|
||||
|
|
|
@ -1808,13 +1808,13 @@ times.")
|
|||
(define-public r-data-table
|
||||
(package
|
||||
(name "r-data-table")
|
||||
(version "1.11.8")
|
||||
(version "1.12.0")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (cran-uri "data.table" version))
|
||||
(sha256
|
||||
(base32
|
||||
"1nb6wngrk1a30m984524gf26fa1nwgyf4y4an94dibcwb5jp8hnw"))))
|
||||
"1xz388khklqqc39r1cmjvqm65azambgzqw0743aypm6v4chi26v1"))))
|
||||
(build-system r-build-system)
|
||||
(home-page "https://github.com/Rdatatable/data.table/wiki")
|
||||
(synopsis "Enhanced version of data.frame R object")
|
||||
|
@ -2100,14 +2100,14 @@ R version.")
|
|||
(define-public r-checkmate
|
||||
(package
|
||||
(name "r-checkmate")
|
||||
(version "1.9.0")
|
||||
(version "1.9.1")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (cran-uri "checkmate" version))
|
||||
(sha256
|
||||
(base32
|
||||
"00bjlc910y4paddvpz68pl3qyvjxlwqgyh39wpfkq43p99gvnj37"))))
|
||||
"1y4ylzn55kpyfpzcx9rxb9413d3ck6hair36ldl0ak61ia5kc75p"))))
|
||||
(build-system r-build-system)
|
||||
(propagated-inputs
|
||||
`(("r-backports" ,r-backports)))
|
||||
|
@ -2297,17 +2297,21 @@ collation, and NAMESPACE files.")
|
|||
(define-public r-openssl
|
||||
(package
|
||||
(name "r-openssl")
|
||||
(version "1.1")
|
||||
(version "1.2.1")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (cran-uri "openssl" version))
|
||||
(sha256
|
||||
(base32
|
||||
"0ldxgcr33lawwr8wp14kdk2678gpkvqkzv6g333bhck1hn6qspzv"))))
|
||||
"0ypa41qr58jgipzkqn3wjqdsjyi7qk57i46s5wy88xy3j8jl9jkv"))))
|
||||
(build-system r-build-system)
|
||||
(inputs
|
||||
`(("libressl" ,libressl)))
|
||||
(native-inputs
|
||||
`(("pkg-config" ,pkg-config)))
|
||||
(propagated-inputs
|
||||
`(("r-askpass" ,r-askpass)))
|
||||
(home-page "https://github.com/jeroenooms/openssl")
|
||||
(synopsis "Toolkit for encryption, signatures and certificates")
|
||||
(description
|
||||
|
@ -2557,13 +2561,13 @@ well as additional utilities such as panel and axis annotation functions.")
|
|||
(define-public r-rcpparmadillo
|
||||
(package
|
||||
(name "r-rcpparmadillo")
|
||||
(version "0.9.200.5.0")
|
||||
(version "0.9.200.7.0")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (cran-uri "RcppArmadillo" version))
|
||||
(sha256
|
||||
(base32
|
||||
"09041jnalh7352kj6lv4d0xr9c0mvf8p860q5c8m13mp214x5x7k"))))
|
||||
"11m04yvdh6086567dzzxchbf68fl5hxf2y32acf3f43bjqgwbv2p"))))
|
||||
(properties `((upstream-name . "RcppArmadillo")))
|
||||
(build-system r-build-system)
|
||||
(native-inputs
|
||||
|
@ -3320,14 +3324,14 @@ Stochastic Neighbor Embedding using a Barnes-Hut implementation.")
|
|||
(define-public r-e1071
|
||||
(package
|
||||
(name "r-e1071")
|
||||
(version "1.7-0")
|
||||
(version "1.7-0.1")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (cran-uri "e1071" version))
|
||||
(sha256
|
||||
(base32
|
||||
"0fk4pw67cw1663d0n9rf1qfdqzz8k5nqkjgp3hi5jr422qp9lsck"))))
|
||||
"11fqm4shmksalkazcwvzfknp3amigw7fr8wdwanqa5v5kx7ihyq9"))))
|
||||
(build-system r-build-system)
|
||||
(propagated-inputs
|
||||
`(("r-class" ,r-class)))
|
||||
|
@ -3755,18 +3759,17 @@ It uses and relies on grid graphics and formal (S4) classes and methods.")
|
|||
(define-public r-purrr
|
||||
(package
|
||||
(name "r-purrr")
|
||||
(version "0.2.5")
|
||||
(version "0.3.0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (cran-uri "purrr" version))
|
||||
(sha256
|
||||
(base32
|
||||
"0dc53zzan3km2l9lzxjixcv6yn7dhw2ppmz8qf2awhak7x2qm9m4"))))
|
||||
"0mzbf9ca8qdrqkrh9x7yzqxiab9bk10ql46qr1wl2bgbflminzda"))))
|
||||
(build-system r-build-system)
|
||||
(propagated-inputs
|
||||
`(("r-tibble" ,r-tibble)
|
||||
("r-magrittr" ,r-magrittr)
|
||||
`(("r-magrittr" ,r-magrittr)
|
||||
("r-rlang" ,r-rlang)))
|
||||
(home-page "https://github.com/hadley/purrr")
|
||||
(synopsis "Functional programming tools")
|
||||
|
@ -3981,14 +3984,14 @@ package instead.")
|
|||
(define-public r-hmisc
|
||||
(package
|
||||
(name "r-hmisc")
|
||||
(version "4.1-1")
|
||||
(version "4.2-0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (cran-uri "Hmisc" version))
|
||||
(sha256
|
||||
(base32
|
||||
"160l50ppjs69ipcaya1mlcz29zbn5rmqg91r09dvzzvkvwfb47cr"))))
|
||||
"1n8i2jhc308hd6bvys9cd7nrz7pwjszs03r5bwlh1pc869ki95ly"))))
|
||||
(properties `((upstream-name . "Hmisc")))
|
||||
(build-system r-build-system)
|
||||
(native-inputs
|
||||
|
@ -4200,14 +4203,14 @@ including:
|
|||
(define-public r-gplots
|
||||
(package
|
||||
(name "r-gplots")
|
||||
(version "3.0.1")
|
||||
(version "3.0.1.1")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (cran-uri "gplots" version))
|
||||
(sha256
|
||||
(base32
|
||||
"02nb8n3s7c1zxq2s7ycaq2ys72y7mzirxrwj954h6gdc4x1zhg9l"))))
|
||||
"033plcfs9w8pmn84n24mdhiixdirc2a7pz6dvm61fpd20gwh7cbx"))))
|
||||
(build-system r-build-system)
|
||||
(propagated-inputs
|
||||
`(("r-catools" ,r-catools)
|
||||
|
@ -4727,14 +4730,14 @@ and resampling-based inference.")
|
|||
(define-public r-prabclus
|
||||
(package
|
||||
(name "r-prabclus")
|
||||
(version "2.2-6")
|
||||
(version "2.2-7")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (cran-uri "prabclus" version))
|
||||
(sha256
|
||||
(base32
|
||||
"0qjsxrx6yv338bxm4ki0w9h8hind1l98abdrz828588bwj02jya1"))))
|
||||
"0h2nml8ri27mhfs2p6ngb6kfd6lyq30sc6813yybpskkrb6gs1pb"))))
|
||||
(build-system r-build-system)
|
||||
(propagated-inputs
|
||||
`(("r-mass" ,r-mass)
|
||||
|
@ -5404,14 +5407,14 @@ diagnostic tools (@code{ctlcurves} and @code{DiscrFact}).")
|
|||
(define-public r-ranger
|
||||
(package
|
||||
(name "r-ranger")
|
||||
(version "0.10.1")
|
||||
(version "0.11.1")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (cran-uri "ranger" version))
|
||||
(sha256
|
||||
(base32
|
||||
"12z67xkgdmr5cflpd6cln0mn5xxajanqbfwlckv6cfma0gvf2z1j"))))
|
||||
"1yyg1nppq76jngzffd44brppqrlxqdhv92pyy0gn09rfc0ab37wr"))))
|
||||
(build-system r-build-system)
|
||||
(propagated-inputs
|
||||
`(("r-rcpp" ,r-rcpp)
|
||||
|
|
|
@ -12,6 +12,7 @@
|
|||
;;; Copyright © 2018 Hartmut Goebel <h.goebel@crazy-compilers.com>
|
||||
;;; Copyright © 2018 Arun Isaac <arunisaac@systemreboot.net>
|
||||
;;; Copyright © 2018 Gabriel Hondet <gabrielhondet@gmail.com>
|
||||
;;; Copyright © 2019 Rutger Helling <rhelling@mykolab.com>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
|
@ -910,7 +911,7 @@ tmux.")
|
|||
(define-public kitty
|
||||
(package
|
||||
(name "kitty")
|
||||
(version "0.13.1")
|
||||
(version "0.13.3")
|
||||
(home-page "https://sw.kovidgoyal.net/kitty/")
|
||||
(source
|
||||
(origin
|
||||
|
@ -921,7 +922,7 @@ tmux.")
|
|||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"1j24zjasdh48z7majfpqr71n1wn5a9688wsmmqn26v8kfb68pqs4"))
|
||||
"1y0vd75j8g61jdj8miml79w5ri3pqli5rv9iq6zdrxvzfa4b2rmb"))
|
||||
(modules '((guix build utils)))
|
||||
(snippet
|
||||
'(begin
|
||||
|
@ -943,7 +944,8 @@ tmux.")
|
|||
("libpng" ,libpng)
|
||||
("freetype" ,freetype)
|
||||
("fontconfig" ,fontconfig)
|
||||
("pygments" ,python2-pygments)))
|
||||
("pygments" ,python-pygments)
|
||||
("wayland" ,wayland)))
|
||||
(native-inputs
|
||||
`(("pkg-config" ,pkg-config)
|
||||
("libxrandr" ,libxrandr)
|
||||
|
@ -959,6 +961,15 @@ tmux.")
|
|||
(arguments
|
||||
'(#:phases (modify-phases %standard-phases
|
||||
(delete 'configure)
|
||||
;; Wayland backend requires EGL, which isn't found
|
||||
;; out-of-the-box for some reason. Hard-code it instead.
|
||||
(add-after 'unpack 'hard-code-libegl
|
||||
(lambda _
|
||||
(let* ((mesa (assoc-ref %build-inputs "libgl1-mesa"))
|
||||
(libegl (string-append mesa "/lib/libEGL.so.1")))
|
||||
(substitute* "glfw/egl_context.c"
|
||||
(("libEGL.so.1") libegl)))
|
||||
#t))
|
||||
(replace 'build
|
||||
(lambda _
|
||||
(invoke "python3" "setup.py" "linux-package")))
|
||||
|
|
|
@ -2770,8 +2770,17 @@ re-processing.")
|
|||
(sha256
|
||||
(base32
|
||||
"0y4i651b75y6006n03x8n86bsqvjsailvvz9bhzy51dzsznqidq0"))))
|
||||
(build-system texlive-build-system)
|
||||
(arguments '(#:tex-directory "latex/seminar"))
|
||||
(build-system trivial-build-system)
|
||||
(arguments
|
||||
`(#:modules ((guix build utils))
|
||||
#:builder
|
||||
(begin
|
||||
(use-modules (guix build utils))
|
||||
(let ((target (string-append (assoc-ref %outputs "out")
|
||||
"/share/texmf-dist/tex/latex/seminar")))
|
||||
(mkdir-p target)
|
||||
(copy-recursively (assoc-ref %build-inputs "source") target)
|
||||
#t))))
|
||||
(home-page "https://www.ctan.org/pkg/seminar")
|
||||
(synopsis "Make overhead slides")
|
||||
;; TODO: This package may need fancybox and xcomment at runtime.
|
||||
|
@ -5806,3 +5815,68 @@ for use with LaTeX is available in @code{freenfss}, part of
|
|||
supports advanced interactive documents. See the ConTeXt garden for a wealth
|
||||
of support information.")
|
||||
(license license:gpl2+)))
|
||||
|
||||
(define-public texlive-latex-beamer
|
||||
(package
|
||||
(name "texlive-latex-beamer")
|
||||
(version (number->string %texlive-revision))
|
||||
(source (origin
|
||||
(method svn-fetch)
|
||||
(uri (svn-reference
|
||||
(url (string-append "svn://www.tug.org/texlive/tags/"
|
||||
%texlive-tag "/Master/texmf-dist/"
|
||||
"/tex/latex/beamer"))
|
||||
(revision %texlive-revision)))
|
||||
(file-name (string-append name "-" version "-checkout"))
|
||||
(sha256
|
||||
(base32
|
||||
"09y3qwbj0nckshvg9afgwcv9v3zdif1d7bnpzrggsa1fbr80mgk2"))))
|
||||
(build-system trivial-build-system)
|
||||
(outputs '("out" "doc"))
|
||||
(arguments
|
||||
`(#:modules ((guix build utils))
|
||||
#:builder
|
||||
(begin
|
||||
(use-modules (guix build utils))
|
||||
(let ((target (string-append (assoc-ref %outputs "out")
|
||||
"/share/texmf-dist/tex/latex/beamer"))
|
||||
(docs (string-append (assoc-ref %outputs "doc")
|
||||
"/share/texmf-dist/doc/latex/beamer/")))
|
||||
(mkdir-p target)
|
||||
(copy-recursively (assoc-ref %build-inputs "source") target)
|
||||
|
||||
(mkdir-p docs)
|
||||
(copy-recursively (assoc-ref %build-inputs "docs") docs)
|
||||
#t))))
|
||||
(propagated-inputs
|
||||
`(("texlive-latex-hyperref" ,texlive-latex-hyperref)
|
||||
("texlive-latex-oberdiek" ,texlive-latex-oberdiek)
|
||||
("texlive-latex-etoolbox" ,texlive-latex-etoolbox)
|
||||
("texlive-latex-pgf" ,texlive-latex-pgf)))
|
||||
(native-inputs
|
||||
`(("docs"
|
||||
,(origin
|
||||
(method svn-fetch)
|
||||
(uri (svn-reference
|
||||
(url (string-append "svn://www.tug.org/texlive/tags/"
|
||||
%texlive-tag "/Master/texmf-dist/"
|
||||
"/doc/latex/beamer"))
|
||||
(revision %texlive-revision)))
|
||||
(file-name (string-append name "-" version "-checkout"))
|
||||
(sha256
|
||||
(base32
|
||||
"102b18b9nw9dicqqgjwx0srh1mav8vh9wdvwayn741niza9hac23"))))))
|
||||
(home-page "https://www.ctan.org/pkg/beamer")
|
||||
(synopsis "LaTeX class for producing presentations and slides")
|
||||
(description "The beamer LaTeX class can be used for producing slides.
|
||||
The class works in both PostScript and direct PDF output modes, using the
|
||||
@code{pgf} graphics system for visual effects. Content is created in the
|
||||
@code{frame} environment, and each frame can be made up of a number of slides
|
||||
using a simple notation for specifying material to appear on each slide within
|
||||
a frame. Short versions of title, authors, institute can also be specified as
|
||||
optional parameters. Whole frame graphics are supported by plain frames. The
|
||||
class supports @code{figure} and @code{table} environments, transparency
|
||||
effects, varying slide transitions and animations.")
|
||||
;; Code is dual licensed under GPLv2+ or LPPL1.3c+; documentation is
|
||||
;; dual-licensed under either FDLv1.3+ or LPPL1.3c+.
|
||||
(license (list license:lppl1.3c+ license:gpl2+ license:fdl1.3+))))
|
||||
|
|
|
@ -123,15 +123,16 @@ in intelligent transportation networks.")
|
|||
(define-public p11-kit
|
||||
(package
|
||||
(name "p11-kit")
|
||||
(version "0.23.14")
|
||||
(version "0.23.15")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://github.com/p11-glue/p11-kit/releases/"
|
||||
"download/" version "/p11-kit-" version ".tar.gz"))
|
||||
(patches (search-patches "p11-kit-jks-timestamps.patch"))
|
||||
(sha256
|
||||
(base32
|
||||
"0w0dkq9388grbbn4bv2p55vy1j51f7nd9hzlc9gz4fbm4dnzmf8w"))))
|
||||
"166pwj00cffv4qq4dvx0k53zka0b0r1fa0whc49007vsqyh3khgp"))))
|
||||
(build-system gnu-build-system)
|
||||
(native-inputs
|
||||
`(("pkg-config" ,pkg-config)))
|
||||
|
|
|
@ -399,7 +399,7 @@ and creating Matroska files from other media files (@code{mkvmerge}).")
|
|||
(define-public x265
|
||||
(package
|
||||
(name "x265")
|
||||
(version "2.9")
|
||||
(version "3.0")
|
||||
(outputs '("out" "static"))
|
||||
(source
|
||||
(origin
|
||||
|
@ -408,9 +408,8 @@ and creating Matroska files from other media files (@code{mkvmerge}).")
|
|||
"x265_" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"090hp4216isis8q5gb7bwzia8rfyzni54z21jnwm97x3hiy6ibpb"))
|
||||
(patches (search-patches "x265-arm-flags.patch"
|
||||
"x265-detect512-all-arches.patch"))
|
||||
"0qh65wdpasrspkm1y0dlfa123myax568yi0sas0lmg5b1hkgrff5"))
|
||||
(patches (search-patches "x265-arm-flags.patch"))
|
||||
(modules '((guix build utils)))
|
||||
(snippet '(begin
|
||||
(delete-file-recursively "source/compat/getopt")
|
||||
|
@ -871,6 +870,34 @@ audio/video codec library.")
|
|||
(base32
|
||||
"0b59qk5wpc5ksiha76jbhb859g5gxa4w0k6afh3kgvgajiivs73l"))))))
|
||||
|
||||
(define-public ffmpeg-for-stepmania
|
||||
(hidden-package
|
||||
(package
|
||||
(inherit ffmpeg)
|
||||
(version "2.1.3")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/stepmania/ffmpeg.git")
|
||||
(commit "eda6effcabcf9c238e4635eb058d72371336e09b")))
|
||||
(sha256
|
||||
(base32 "1by8rmbva8mfrivdbbkr2gx4kga89zqygkd4cfjl76nr8mdcdamb"))
|
||||
(file-name (git-file-name "ffmpeg" version))))
|
||||
(arguments
|
||||
(substitute-keyword-arguments (package-arguments ffmpeg)
|
||||
((#:configure-flags flags)
|
||||
'(list "--disable-programs"
|
||||
"--disable-doc"
|
||||
"--disable-debug"
|
||||
"--disable-avdevice"
|
||||
"--disable-swresample"
|
||||
"--disable-postproc"
|
||||
"--disable-avfilter"
|
||||
"--disable-shared"
|
||||
"--enable-static"))))
|
||||
(inputs '()))))
|
||||
|
||||
(define-public ffmpegthumbnailer
|
||||
(package
|
||||
(name "ffmpegthumbnailer")
|
||||
|
@ -1314,7 +1341,7 @@ access to mpv's powerful playback capabilities.")
|
|||
(define-public youtube-dl
|
||||
(package
|
||||
(name "youtube-dl")
|
||||
(version "2019.01.17")
|
||||
(version "2019.01.27")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://github.com/rg3/youtube-dl/releases/"
|
||||
|
@ -1322,7 +1349,7 @@ access to mpv's powerful playback capabilities.")
|
|||
version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0fxajwv81b0bjw9qlwmxd4r93yp5nnqll79vhic0vy72ii0093r7"))))
|
||||
"0z4x4lwpd6qd2r9xgp8cx4j1vl5vd76kzs74jp0hh3w2g31s51z8"))))
|
||||
(build-system python-build-system)
|
||||
(arguments
|
||||
;; The problem here is that the directory for the man page and completion
|
||||
|
|
|
@ -110,6 +110,8 @@
|
|||
(method url-fetch)
|
||||
(uri (string-append "https://download.qemu.org/qemu-"
|
||||
version ".tar.xz"))
|
||||
(patches (search-patches "qemu-CVE-2018-16872.patch"
|
||||
"qemu-CVE-2019-6778.patch"))
|
||||
(sha256
|
||||
(base32
|
||||
"1z5bd5nfyjvhfi1s95labc82y4hjdjjkdabw931362ls0zghh1ba"))))
|
||||
|
@ -799,13 +801,13 @@ Machine Protocol.")
|
|||
(version "a12")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://github.com/gnif/LookingGlass/archive/"
|
||||
version ".tar.gz"))
|
||||
(file-name (string-append name "-" version))
|
||||
(method git-fetch)
|
||||
(uri (git-reference (url "https://github.com/gnif/LookingGlass")
|
||||
(commit version)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"0x57chx83f8pq56d9sfxmc9p4qjm9nqvdyamj41bmy145mxw5w3m"))))
|
||||
"0r6bvl9q94039r6ff4f2bg8si95axx9w8bf1h1qr5730d2kv5yxq"))))
|
||||
(build-system cmake-build-system)
|
||||
(inputs `(("fontconfig" ,fontconfig)
|
||||
("glu" ,glu)
|
||||
|
|
|
@ -15,7 +15,7 @@
|
|||
;;; Copyright © 2016 Ben Woodcroft <donttrustben@gmail.com>
|
||||
;;; Copyright © 2016 Clément Lassieur <clement@lassieur.org>
|
||||
;;; Copyright © 2016, 2017 Nils Gillmann <ng0@n0.is>
|
||||
;;; Copyright © 2016, 2017, 2018 Arun Isaac <arunisaac@systemreboot.net>
|
||||
;;; Copyright © 2016, 2017, 2018, 2019 Arun Isaac <arunisaac@systemreboot.net>
|
||||
;;; Copyright © 2016, 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr>
|
||||
;;; Copyright © 2016 Bake Timmons <b3timmons@speedymail.org>
|
||||
;;; Copyright © 2017 Thomas Danckaert <post@thomasdanckaert.be>
|
||||
|
@ -88,6 +88,7 @@
|
|||
#:use-module (gnu packages gperf)
|
||||
#:use-module (gnu packages gtk)
|
||||
#:use-module (gnu packages guile)
|
||||
#:use-module (gnu packages guile-xyz)
|
||||
#:use-module (gnu packages java)
|
||||
#:use-module (gnu packages jemalloc)
|
||||
#:use-module (gnu packages image)
|
||||
|
@ -123,14 +124,14 @@
|
|||
(define-public httpd
|
||||
(package
|
||||
(name "httpd")
|
||||
(version "2.4.37")
|
||||
(version "2.4.38")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "mirror://apache/httpd/httpd-"
|
||||
version ".tar.bz2"))
|
||||
(sha256
|
||||
(base32
|
||||
"09npb7vlz5sizgj0nvl0bqxj9zig29ipkp07fgmw5ykjcxfdr61l"))))
|
||||
"0jiriyyf3pm6axf4mrz6c2z08yhs21hb4d23viq87jclm5bmiikx"))))
|
||||
(build-system gnu-build-system)
|
||||
(native-inputs `(("pcre" ,pcre "bin"))) ;for 'pcre-config'
|
||||
(inputs `(("apr" ,apr)
|
||||
|
@ -5278,20 +5279,18 @@ snippets on @url{https://commandlinefu.com}.")
|
|||
(define-public rss-bridge
|
||||
(package
|
||||
(name "rss-bridge")
|
||||
(version "2018-11-10")
|
||||
(version "2019-01-13")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://github.com/RSS-Bridge/rss-bridge/archive/"
|
||||
version ".tar.gz"))
|
||||
(file-name (string-append name "-" version ".tar.gz"))
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/RSS-Bridge/rss-bridge")
|
||||
(commit version)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"1l9a82smh6k37bjvzbmkdlssxywlmr40ig4cykgsns1iiszwv4ia"))))
|
||||
"1m0dq491954f0d7k4508ddlywk09whcz9j21rc4yk3lbwpf0nd4c"))))
|
||||
(build-system trivial-build-system)
|
||||
(native-inputs
|
||||
`(("gzip" ,gzip)
|
||||
("tar" ,tar)))
|
||||
(arguments
|
||||
'(#:modules ((guix build utils))
|
||||
#:builder
|
||||
|
@ -5300,12 +5299,9 @@ snippets on @url{https://commandlinefu.com}.")
|
|||
(ice-9 match))
|
||||
(let* ((out (assoc-ref %outputs "out"))
|
||||
(share-rss-bridge (string-append out "/share/rss-bridge")))
|
||||
(set-path-environment-variable
|
||||
"PATH" '("bin") (map (match-lambda ((_ . input) input))
|
||||
%build-inputs))
|
||||
(mkdir-p share-rss-bridge)
|
||||
(invoke "tar" "xvf" (assoc-ref %build-inputs "source")
|
||||
"--strip-components" "1" "-C" share-rss-bridge)))))
|
||||
(copy-recursively (assoc-ref %build-inputs "source") share-rss-bridge)
|
||||
#t))))
|
||||
(home-page "https://github.com/RSS-Bridge/rss-bridge")
|
||||
(synopsis "Generate Atom feeds for social networking websites")
|
||||
(description "rss-bridge generates Atom feeds for social networking
|
||||
|
@ -5324,6 +5320,9 @@ Instagram and YouTube.")
|
|||
(uri (git-reference
|
||||
(url "https://github.com/linkchecker/linkchecker")
|
||||
(commit (string-append "v" version))))
|
||||
(patches
|
||||
(search-patches
|
||||
"linkchecker-mark-more-tests-that-require-the-network.patch"))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
|
@ -5333,8 +5332,32 @@ Instagram and YouTube.")
|
|||
`(("python2-dnspython" ,python2-dnspython)
|
||||
("python2-pyxdg" ,python2-pyxdg)
|
||||
("python2-requests" ,python2-requests)))
|
||||
(native-inputs
|
||||
`(("gettext" ,gettext-minimal)
|
||||
("python2-pytest" ,python2-pytest)
|
||||
("python2-miniboa" ,python2-miniboa)
|
||||
("python2-parameterized" ,python2-parameterized)))
|
||||
(arguments
|
||||
`(#:python ,python-2))
|
||||
`(#:python ,python-2
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
;; Move the 'check phase to after 'install, so that the installed
|
||||
;; library can be used
|
||||
(delete 'check)
|
||||
(add-after 'install 'check
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
(let ((out (assoc-ref outputs "out")))
|
||||
;; Set PYTHONPATH so that the installed linkchecker is used
|
||||
(setenv "PYTHONPATH"
|
||||
(string-append out "/lib/python2.7/site-packages"
|
||||
":"
|
||||
(getenv "PYTHONPATH")))
|
||||
;; Remove this directory to avoid it being used when running
|
||||
;; the tests
|
||||
(delete-file-recursively "linkcheck")
|
||||
|
||||
(invoke "py.test" "tests"))
|
||||
#t)))))
|
||||
(home-page "https://linkcheck.github.io/linkchecker")
|
||||
(synopsis "Check websites for broken links")
|
||||
(description "LinkChecker is a website validator. It checks for broken
|
||||
|
|
|
@ -181,14 +181,14 @@ commands would.")
|
|||
(define-public i3-wm
|
||||
(package
|
||||
(name "i3-wm")
|
||||
(version "4.16")
|
||||
(version "4.16.1")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://i3wm.org/downloads/i3-"
|
||||
version ".tar.bz2"))
|
||||
(sha256
|
||||
(base32
|
||||
"1d2mnryn7m9c6d69awd7lwzadliapd0ahi5n8d0ppqy533ssaq6c"))))
|
||||
"0xl56y196vxv001gvx35xwfr25zah8m3xwizp9ycdgdc0rfc4rdb"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
`(#:make-flags
|
||||
|
|
|
@ -19,6 +19,7 @@
|
|||
;;; Copyright © 2018 Oleg Pykhalov <go.wigust@gmail.com>
|
||||
;;; Copyright © 2018 Benjamin Slade <slade@jnanam.net>
|
||||
;;; Copyright © 2019 nee <nee@cock.li>
|
||||
;;; Copyright © 2019 Yoshinori Arai <kumagusu08@gmail.com>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
|
@ -2623,6 +2624,29 @@ as USB mice.")
|
|||
"xf86-input-void is a null input driver for the Xorg X server.")
|
||||
(license license:x11)))
|
||||
|
||||
(define-public xf86-video-amdgpu
|
||||
(package
|
||||
(name "xf86-video-amdgpu")
|
||||
(version "18.1.0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
"mirror://xorg/individual/driver/xf86-video-amdgpu-"
|
||||
version
|
||||
".tar.bz2"))
|
||||
(sha256
|
||||
(base32
|
||||
"0wlnb929l3yqj4hdkzyxyhbaph13ac4villajgmbh66pa6xja7z1"))))
|
||||
(build-system gnu-build-system)
|
||||
(inputs `(("xorg-server" ,xorg-server)))
|
||||
(native-inputs `(("pkg-config" ,pkg-config)))
|
||||
(home-page "https://www.x.org/wiki/")
|
||||
(synopsis "AMD Radeon video driver for X server")
|
||||
(description
|
||||
"xf86-video-amdgpu is an AMD Radeon video driver for the Xorg
|
||||
X server.")
|
||||
(license license:x11)))
|
||||
|
||||
(define-public xf86-video-ark
|
||||
(package
|
||||
|
@ -5701,6 +5725,37 @@ user-friendly mechanism to start the X server.")
|
|||
Intrinsics (Xt) Library.")
|
||||
(license license:x11)))
|
||||
|
||||
(define-public xclock
|
||||
(package
|
||||
(name "xclock")
|
||||
(version "1.0.7")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://www.x.org/releases/individual/app/"
|
||||
name "-" version ".tar.bz2"))
|
||||
(sha256
|
||||
(base32 "1l3xv4bsca6bwxx73jyjz0blav86i7vwffkhdb1ac81y9slyrki3"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
`(#:configure-flags
|
||||
(list (string-append "--with-appdefaultdir="
|
||||
%output ,%app-defaults-dir))))
|
||||
(inputs
|
||||
`(("libxmu" ,libxmu)
|
||||
("libx11" ,libx11)
|
||||
("libxaw" ,libxaw)
|
||||
("libxrender" ,libxrender)
|
||||
("libxft" ,libxft)
|
||||
("libxkbfile" ,libxkbfile)))
|
||||
(native-inputs
|
||||
`(("pkg-config" ,pkg-config)))
|
||||
(home-page "https://www.x.org/")
|
||||
(synopsis "Analog / digital clock for X")
|
||||
(description "The xclock program displays the time in analog or digital
|
||||
form.")
|
||||
(license (license:x11-style "file://COPYING" "See COPYING for details."))))
|
||||
|
||||
(define-public xmag
|
||||
(package
|
||||
(name "xmag")
|
||||
|
|
|
@ -20,7 +20,7 @@
|
|||
#:use-module (gnu services)
|
||||
#:use-module (gnu services base)
|
||||
#:use-module (gnu services shepherd)
|
||||
#:autoload (gnu packages guile) (mcron)
|
||||
#:autoload (gnu packages guile-xyz) (mcron)
|
||||
#:use-module (guix deprecation)
|
||||
#:use-module (guix records)
|
||||
#:use-module (guix gexp)
|
||||
|
|
|
@ -87,11 +87,11 @@
|
|||
;;; Code:
|
||||
|
||||
(define %default-xorg-modules
|
||||
;; Default list of modules loaded by the server. Note that the order
|
||||
;; matters since it determines which driver is going to be used when there's
|
||||
;; a choice.
|
||||
;; Default list of modules loaded by the server. When multiple drivers
|
||||
;; match, the first one in the list is loaded.
|
||||
(list xf86-video-vesa
|
||||
xf86-video-fbdev
|
||||
xf86-video-amdgpu
|
||||
xf86-video-ati
|
||||
xf86-video-cirrus
|
||||
xf86-video-intel
|
||||
|
|
|
@ -27,6 +27,7 @@
|
|||
#:use-module (guix profiles)
|
||||
#:use-module (guix derivations)
|
||||
#:use-module (guix combinators)
|
||||
#:use-module (guix deprecation)
|
||||
#:use-module (guix store)
|
||||
#:use-module (guix i18n)
|
||||
#:use-module ((guix utils)
|
||||
|
@ -275,7 +276,12 @@ package modules under SOURCE using CORE, an instance of Guix."
|
|||
(if (file-exists? script)
|
||||
(let ((build (save-module-excursion
|
||||
(lambda ()
|
||||
(primitive-load script)))))
|
||||
;; Disable deprecation warnings; it's OK for SCRIPT to
|
||||
;; use deprecated APIs and the user doesn't have to know
|
||||
;; about it.
|
||||
(parameterize ((deprecation-warning-port
|
||||
(%make-void-port "w")))
|
||||
(primitive-load script))))))
|
||||
;; BUILD must be a monadic procedure of at least one argument: the
|
||||
;; source tree.
|
||||
;;
|
||||
|
@ -472,7 +478,8 @@ be used as a profile hook."
|
|||
(gexp->derivation-in-inferior "guix-package-cache" build
|
||||
profile
|
||||
#:properties '((type . profile-hook)
|
||||
(hook . package-cache)))))
|
||||
(hook . package-cache))
|
||||
#:local-build? #t)))
|
||||
|
||||
(define %channel-profile-hooks
|
||||
;; The default channel profile hooks.
|
||||
|
|
|
@ -855,19 +855,27 @@ when CUT? returns true for a given package."
|
|||
#:optional (rewrite-name identity))
|
||||
"Return a procedure that, when passed a package, replaces its direct and
|
||||
indirect dependencies (but not its implicit inputs) according to REPLACEMENTS.
|
||||
REPLACEMENTS is a list of package pairs; the first element of each pair is the
|
||||
package to replace, and the second one is the replacement.
|
||||
REPLACEMENTS is a list of package pairs or a promise thereof; the first
|
||||
element of each pair is the package to replace, and the second one is the
|
||||
replacement.
|
||||
|
||||
Optionally, REWRITE-NAME is a one-argument procedure that takes the name of a
|
||||
package and returns its new name after rewrite."
|
||||
(define (rewrite p)
|
||||
(match (assq-ref replacements p)
|
||||
(match (assq-ref (if (promise? replacements)
|
||||
(force replacements)
|
||||
replacements)
|
||||
p)
|
||||
(#f (package
|
||||
(inherit p)
|
||||
(name (rewrite-name (package-name p)))))
|
||||
(new new)))
|
||||
|
||||
(package-mapping rewrite (cut assq <> replacements)))
|
||||
(package-mapping rewrite
|
||||
(lambda (package)
|
||||
(assq package (if (promise? replacements)
|
||||
(force replacements)
|
||||
replacements)))))
|
||||
|
||||
(define-syntax-rule (package/inherit p overrides ...)
|
||||
"Like (package (inherit P) OVERRIDES ...), except that the same
|
||||
|
|
|
@ -69,7 +69,7 @@
|
|||
(multiplexed-build-output? . #t)
|
||||
(graft? . #t)
|
||||
(debug . 0)
|
||||
(verbosity . 2)))
|
||||
(verbosity . 1)))
|
||||
|
||||
(define (show-help)
|
||||
(display (G_ "Usage: guix pull [OPTION]...
|
||||
|
@ -197,11 +197,13 @@ true, display what would be built without actually building it."
|
|||
(match (which "guix")
|
||||
(#f (return #f))
|
||||
(str
|
||||
(let ((command (string-append profile "/bin/guix")))
|
||||
(unless (string=? command str)
|
||||
(let ((new (map (cut string-append <> "/bin/guix")
|
||||
(list (user-friendly-profile profile)
|
||||
profile))))
|
||||
(unless (member str new)
|
||||
(display-hint (format #f (G_ "After setting @code{PATH}, run
|
||||
@command{hash guix} to make sure your shell refers to @file{~a}.")
|
||||
command)))
|
||||
(first new))))
|
||||
(return #f))))))))
|
||||
|
||||
(define (honor-lets-encrypt-certificates! store)
|
||||
|
|
|
@ -856,13 +856,23 @@ containing MODULE-FILES and possibly other files as well."
|
|||
(define (report-load file total completed)
|
||||
(display #\cr)
|
||||
(format #t
|
||||
"loading...\t~5,1f% of ~d files" ;FIXME: i18n
|
||||
"[~3@a/~3@a] loading...\t~5,1f% of ~d files"
|
||||
|
||||
;; Note: Multiply TOTAL by two to account for the
|
||||
;; compilation phase that follows.
|
||||
completed (* total 2)
|
||||
|
||||
(* 100. (/ completed total)) total)
|
||||
(force-output))
|
||||
|
||||
(define (report-compilation file total completed)
|
||||
(display #\cr)
|
||||
(format #t "compiling...\t~5,1f% of ~d files" ;FIXME: i18n
|
||||
(format #t "[~3@a/~3@a] compiling...\t~5,1f% of ~d files"
|
||||
|
||||
;; Add TOTAL to account for the load phase that came
|
||||
;; before.
|
||||
(+ total completed) (* total 2)
|
||||
|
||||
(* 100. (/ completed total)) total)
|
||||
(force-output))
|
||||
|
||||
|
@ -874,8 +884,8 @@ containing MODULE-FILES and possibly other files as well."
|
|||
#:report-load report-load
|
||||
#:report-compilation report-compilation)))
|
||||
|
||||
(setvbuf (current-output-port) 'none)
|
||||
(setvbuf (current-error-port) 'none)
|
||||
(setvbuf (current-output-port) 'line)
|
||||
(setvbuf (current-error-port) 'line)
|
||||
|
||||
(set! %load-path (cons #+module-tree %load-path))
|
||||
(set! %load-path
|
||||
|
|
157
guix/status.scm
157
guix/status.scm
|
@ -50,6 +50,11 @@
|
|||
build-status-builds-completed
|
||||
build-status-downloads-completed
|
||||
|
||||
build?
|
||||
build
|
||||
build-derivation
|
||||
build-system
|
||||
|
||||
download?
|
||||
download
|
||||
download-item
|
||||
|
@ -85,15 +90,29 @@
|
|||
;; Builds and substitutions performed by the daemon.
|
||||
(define-record-type* <build-status> build-status make-build-status
|
||||
build-status?
|
||||
(building build-status-building ;list of drv
|
||||
(building build-status-building ;list of <build>
|
||||
(default '()))
|
||||
(downloading build-status-downloading ;list of <download>
|
||||
(default '()))
|
||||
(builds-completed build-status-builds-completed ;list of drv
|
||||
(builds-completed build-status-builds-completed ;list of <build>
|
||||
(default '()))
|
||||
(downloads-completed build-status-downloads-completed ;list of store items
|
||||
(downloads-completed build-status-downloads-completed ;list of <download>
|
||||
(default '())))
|
||||
|
||||
;; On-going or completed build.
|
||||
(define-record-type <build>
|
||||
(%build derivation id system log-file completion)
|
||||
build?
|
||||
(derivation build-derivation) ;string (.drv file name)
|
||||
(id build-id) ;#f | integer
|
||||
(system build-system) ;string
|
||||
(log-file build-log-file) ;#f | string
|
||||
(completion build-completion)) ;#f | integer (percentage)
|
||||
|
||||
(define* (build derivation system #:key id log-file completion)
|
||||
"Return a new build."
|
||||
(%build derivation id system log-file completion))
|
||||
|
||||
;; On-going or completed downloads. Downloads can be stem from substitutes
|
||||
;; and from "builtin:download" fixed-output derivations.
|
||||
(define-record-type <download>
|
||||
|
@ -113,11 +132,67 @@
|
|||
"Return a new download."
|
||||
(%download item uri size start end transferred))
|
||||
|
||||
(define (matching-build drv)
|
||||
"Return a predicate that matches builds of DRV."
|
||||
(lambda (build)
|
||||
(string=? drv (build-derivation build))))
|
||||
|
||||
(define (matching-download item)
|
||||
"Return a predicate that matches downloads of ITEM."
|
||||
(lambda (download)
|
||||
(string=? item (download-item download))))
|
||||
|
||||
(define %percentage-line-rx
|
||||
;; Things like CMake write lines like "[ 10%] gcc -c …". This regexp
|
||||
;; matches them.
|
||||
(make-regexp "^[[:space:]]*\\[ *([0-9]+)%\\]"))
|
||||
|
||||
(define %fraction-line-rx
|
||||
;; The 'compiled-modules' derivations and Ninja produce reports like
|
||||
;; "[ 1/32]" at the beginning of each line, while GHC prints "[ 6 of 45]".
|
||||
;; This regexp matches these.
|
||||
(make-regexp "^[[:space:]]*\\[ *([0-9]+) *(/|of) *([0-9]+)\\]"))
|
||||
|
||||
(define (update-build status id line)
|
||||
"Update STATUS based on LINE, a build output line for ID that might contain
|
||||
a completion indication."
|
||||
(define (set-completion b %)
|
||||
(build (build-derivation b)
|
||||
(build-system b)
|
||||
#:id (build-id b)
|
||||
#:log-file (build-log-file b)
|
||||
#:completion %))
|
||||
|
||||
(define (find-build)
|
||||
(find (lambda (build)
|
||||
(and (build-id build)
|
||||
(= (build-id build) id)))
|
||||
(build-status-building status)))
|
||||
|
||||
(define (update %)
|
||||
(let ((build (find-build)))
|
||||
(build-status
|
||||
(inherit status)
|
||||
(building (cons (set-completion build %)
|
||||
(delq build (build-status-building status)))))))
|
||||
|
||||
(cond ((string-any #\nul line)
|
||||
;; Don't try to match a regexp here.
|
||||
status)
|
||||
((regexp-exec %percentage-line-rx line)
|
||||
=>
|
||||
(lambda (match)
|
||||
(let ((% (string->number (match:substring match 1))))
|
||||
(update %))))
|
||||
((regexp-exec %fraction-line-rx line)
|
||||
=>
|
||||
(lambda (match)
|
||||
(let ((done (string->number (match:substring match 1)))
|
||||
(total (string->number (match:substring match 3))))
|
||||
(update (* 100. (/ done total))))))
|
||||
(else
|
||||
status)))
|
||||
|
||||
(define* (compute-status event status
|
||||
#:key
|
||||
(current-time current-time)
|
||||
|
@ -126,15 +201,29 @@
|
|||
"Given EVENT, a tuple like (build-started \"/gnu/store/...-foo.drv\" ...),
|
||||
compute a new status based on STATUS."
|
||||
(match event
|
||||
(('build-started drv _ ...)
|
||||
(build-status
|
||||
(inherit status)
|
||||
(building (cons drv (build-status-building status)))))
|
||||
(('build-started drv "-" system log-file . rest)
|
||||
(let ((build (build drv system
|
||||
#:id (match rest
|
||||
((pid . _) (string->number pid))
|
||||
(_ #f))
|
||||
#:log-file (if (string-null? log-file)
|
||||
#f
|
||||
log-file))))
|
||||
(build-status
|
||||
(inherit status)
|
||||
(building (cons build (build-status-building status))))))
|
||||
(((or 'build-succeeded 'build-failed) drv _ ...)
|
||||
(build-status
|
||||
(inherit status)
|
||||
(building (delete drv (build-status-building status)))
|
||||
(builds-completed (cons drv (build-status-builds-completed status)))))
|
||||
(let ((build (find (matching-build drv)
|
||||
(build-status-building status))))
|
||||
;; If BUILD is #f, this may be because DRV corresponds to a
|
||||
;; fixed-output derivation that is listed as a download.
|
||||
(if build
|
||||
(build-status
|
||||
(inherit status)
|
||||
(building (delq build (build-status-building status)))
|
||||
(builds-completed
|
||||
(cons build (build-status-builds-completed status))))
|
||||
status)))
|
||||
|
||||
;; Note: Ignore 'substituter-started' and 'substituter-succeeded' because
|
||||
;; they're not as informative as 'download-started' and
|
||||
|
@ -146,10 +235,11 @@ compute a new status based on STATUS."
|
|||
;; because ITEM is different from DRV's output.
|
||||
(build-status
|
||||
(inherit status)
|
||||
(building (remove (lambda (drv)
|
||||
(equal? (false-if-exception
|
||||
(derivation-path->output-path drv))
|
||||
item))
|
||||
(building (remove (lambda (build)
|
||||
(let ((drv (build-derivation build)))
|
||||
(equal? (false-if-exception
|
||||
(derivation-path->output-path drv))
|
||||
item)))
|
||||
(build-status-building status)))
|
||||
(downloading (cons (download item uri #:size size
|
||||
#:start (current-time time-monotonic))
|
||||
|
@ -204,6 +294,8 @@ compute a new status based on STATUS."
|
|||
(current-time time-monotonic))
|
||||
#:transferred transferred)
|
||||
downloads)))))
|
||||
(('build-log (? integer? pid) line)
|
||||
(update-build status pid line))
|
||||
(_
|
||||
status)))
|
||||
|
||||
|
@ -349,14 +441,29 @@ addition to build events."
|
|||
(cut colorize-string <> 'RED 'BOLD)
|
||||
identity))
|
||||
|
||||
(define (report-build-progress %)
|
||||
(let ((% (min (max % 0) 100))) ;sanitize
|
||||
(erase-current-line port)
|
||||
(format port "~3d% " (inexact->exact (round %)))
|
||||
(display (progress-bar % (- (current-terminal-columns) 5))
|
||||
port)
|
||||
(force-output port)))
|
||||
|
||||
(define print-log-line
|
||||
(if print-log?
|
||||
(if colorize?
|
||||
(lambda (line)
|
||||
(lambda (id line)
|
||||
(display (colorize-log-line line) port))
|
||||
(cut display <> port))
|
||||
(lambda (line)
|
||||
(spin! port))))
|
||||
(lambda (id line)
|
||||
(display line port)))
|
||||
(lambda (id line)
|
||||
(match (build-status-building status)
|
||||
((build) ;single job
|
||||
(match (build-completion build)
|
||||
((? number? %) (report-build-progress %))
|
||||
(_ (spin! port))))
|
||||
(_
|
||||
(spin! port))))))
|
||||
|
||||
(unless print-log?
|
||||
(display "\r" port)) ;erase the spinner
|
||||
|
@ -394,7 +501,7 @@ addition to build events."
|
|||
(N_ "The following build is still in progress:~%~{ ~a~%~}~%"
|
||||
"The following builds are still in progress:~%~{ ~a~%~}~%"
|
||||
(length ongoing))
|
||||
ongoing))))
|
||||
(map build-derivation ongoing)))))
|
||||
(('build-failed drv . _)
|
||||
(format port (failure (G_ "build of ~a failed")) drv)
|
||||
(newline port)
|
||||
|
@ -460,7 +567,7 @@ addition to build events."
|
|||
;; through.
|
||||
(display line port)
|
||||
(force-output port))
|
||||
(print-log-line line))
|
||||
(print-log-line pid line))
|
||||
(cond ((string-prefix? "substitute: " line)
|
||||
;; The daemon prefixes early messages coming with 'guix
|
||||
;; substitute' with "substitute:". These are useful ("updating
|
||||
|
@ -473,7 +580,7 @@ addition to build events."
|
|||
(display (info (string-trim-right line)) port)
|
||||
(newline))
|
||||
(else
|
||||
(print-log-line line)))))
|
||||
(print-log-line pid line)))))
|
||||
(_
|
||||
event)))
|
||||
|
||||
|
@ -570,7 +677,11 @@ The second return value is a thunk to retrieve the current state."
|
|||
|
||||
(define (process-line line)
|
||||
(cond ((string-prefix? "@ " line)
|
||||
(match (string-tokenize (string-drop line 2))
|
||||
;; Note: Drop the trailing \n, and use 'string-split' to preserve
|
||||
;; spaces (the log file part of 'build-started' events can be the
|
||||
;; empty string.)
|
||||
(match (string-split (string-drop (string-drop-right line 1) 2)
|
||||
#\space)
|
||||
(("build-log" (= string->number pid) (= string->number len))
|
||||
(set! %build-output-pid pid)
|
||||
(set! %build-output '())
|
||||
|
|
20326
po/doc/guix-manual.de.po
20326
po/doc/guix-manual.de.po
File diff suppressed because it is too large
Load Diff
|
@ -36,18 +36,18 @@
|
|||
|
||||
(test-equal "compute-status, builds + substitutes"
|
||||
(list (build-status
|
||||
(building '("foo.drv"))
|
||||
(building (list (build "foo.drv" "x86_64-linux")))
|
||||
(downloading (list (download "bar" "http://example.org/bar"
|
||||
#:size 500
|
||||
#:start 'now))))
|
||||
(build-status
|
||||
(building '("foo.drv"))
|
||||
(building (list (build "foo.drv" "x86_64-linux")))
|
||||
(downloading (list (download "bar" "http://example.org/bar"
|
||||
#:size 500
|
||||
#:transferred 42
|
||||
#:start 'now))))
|
||||
(build-status
|
||||
(builds-completed '("foo.drv"))
|
||||
(builds-completed (list (build "foo.drv" "x86_64-linux")))
|
||||
(downloads-completed (list (download "bar" "http://example.org/bar"
|
||||
#:size 500
|
||||
#:transferred 500
|
||||
|
@ -58,7 +58,7 @@
|
|||
(compute-status event status
|
||||
#:current-time
|
||||
(const 'now))))))
|
||||
(display "@ build-started foo.drv\n" port)
|
||||
(display "@ build-started foo.drv - x86_64-linux \n" port)
|
||||
(display "@ substituter-started bar\n" port)
|
||||
(display "@ download-started bar http://example.org/bar 500\n" port)
|
||||
(display "various\nthings\nget\nwritten\n" port)
|
||||
|
@ -76,7 +76,8 @@
|
|||
|
||||
(test-equal "compute-status, missing events"
|
||||
(list (build-status
|
||||
(building '("foo.drv"))
|
||||
(building (list (build "foo.drv" "x86_64-linux"
|
||||
#:log-file "foo.log")))
|
||||
(downloading (list (download "baz" "http://example.org/baz"
|
||||
#:size 500
|
||||
#:transferred 42
|
||||
|
@ -86,7 +87,8 @@
|
|||
#:transferred 0
|
||||
#:start 'now))))
|
||||
(build-status
|
||||
(builds-completed '("foo.drv"))
|
||||
(builds-completed (list (build "foo.drv" "x86_64-linux"
|
||||
#:log-file "foo.log")))
|
||||
(downloads-completed (list (download "baz" "http://example.org/baz"
|
||||
#:size 500
|
||||
#:transferred 500
|
||||
|
@ -103,7 +105,7 @@
|
|||
(compute-status event status
|
||||
#:current-time
|
||||
(const 'now))))))
|
||||
(display "@ build-started foo.drv\n" port)
|
||||
(display "@ build-started foo.drv - x86_64-linux foo.log\n" port)
|
||||
(display "@ download-started bar http://example.org/bar 999\n" port)
|
||||
(display "various\nthings\nget\nwritten\n" port)
|
||||
(display "@ download-progress baz http://example.org/baz 500 42\n"
|
||||
|
@ -136,19 +138,19 @@
|
|||
|
||||
(test-equal "compute-status, multiplexed build output"
|
||||
(list (build-status
|
||||
(building '("foo.drv"))
|
||||
(building (list (build "foo.drv" "x86_64-linux" #:id 121)))
|
||||
(downloading (list (download "bar" "http://example.org/bar"
|
||||
#:size 999
|
||||
#:start 'now))))
|
||||
(build-status
|
||||
(building '("foo.drv"))
|
||||
(building (list (build "foo.drv" "x86_64-linux" #:id 121)))
|
||||
(downloading (list (download "bar" "http://example.org/bar"
|
||||
#:size 999
|
||||
#:transferred 42
|
||||
#:start 'now))))
|
||||
(build-status
|
||||
;; XXX: Should "bar.drv" be present twice?
|
||||
(builds-completed '("bar.drv" "foo.drv"))
|
||||
;; "bar" is now only listed as a download.
|
||||
(builds-completed (list (build "foo.drv" "x86_64-linux" #:id 121)))
|
||||
(downloads-completed (list (download "bar" "http://example.org/bar"
|
||||
#:size 999
|
||||
#:transferred 999
|
||||
|
@ -162,8 +164,8 @@
|
|||
#:derivation-path->output-path
|
||||
(match-lambda
|
||||
("bar.drv" "bar")))))))
|
||||
(display "@ build-started foo.drv 121\n" port)
|
||||
(display "@ build-started bar.drv 144\n" port)
|
||||
(display "@ build-started foo.drv - x86_64-linux 121\n" port)
|
||||
(display "@ build-started bar.drv - armhf-linux bar.log 144\n" port)
|
||||
(display "@ build-log 121 6\nHello!" port)
|
||||
(display "@ build-log 144 50
|
||||
@ download-started bar http://example.org/bar 999\n" port)
|
||||
|
@ -178,4 +180,35 @@
|
|||
(display "@ build-succeeded bar.drv\n" port)
|
||||
(list first second (get-status))))))
|
||||
|
||||
(test-equal "compute-status, build completion"
|
||||
(list (build-status
|
||||
(building (list (build "foo.drv" "x86_64-linux" #:id 121))))
|
||||
(build-status
|
||||
(building (list (build "foo.drv" "x86_64-linux" #:id 121
|
||||
#:completion 0.))))
|
||||
(build-status
|
||||
(building (list (build "foo.drv" "x86_64-linux" #:id 121
|
||||
#:completion 50.))))
|
||||
(build-status
|
||||
(builds-completed (list (build "foo.drv" "x86_64-linux" #:id 121
|
||||
#:completion 100.)))))
|
||||
(let-values (((port get-status)
|
||||
(build-event-output-port (lambda (event status)
|
||||
(compute-status event status
|
||||
#:current-time
|
||||
(const 'now))))))
|
||||
(display "@ build-started foo.drv - x86_64-linux 121\n" port)
|
||||
(display "@ build-log 121 6\nHello!" port)
|
||||
(let ((first (get-status)))
|
||||
(display "@ build-log 121 20\n[ 0/100] building X\n" port)
|
||||
(display "@ build-log 121 6\nHello!" port)
|
||||
(let ((second (get-status)))
|
||||
(display "@ build-log 121 20\n[50/100] building Y\n" port)
|
||||
(display "@ build-log 121 6\nHello!" port)
|
||||
(let ((third (get-status)))
|
||||
(display "@ build-log 121 21\n[100/100] building Z\n" port)
|
||||
(display "@ build-log 121 6\nHello!" port)
|
||||
(display "@ build-succeeded foo.drv\n" port)
|
||||
(list first second third (get-status)))))))
|
||||
|
||||
(test-end "status")
|
||||
|
|
|
@ -24,6 +24,9 @@
|
|||
|
||||
(test-begin "upstream")
|
||||
|
||||
;; FIXME: Temporarily skipping this test; see <https://bugs.gnu.org/34229>.
|
||||
(test-skip 1)
|
||||
|
||||
(test-equal "coalesce-sources same version"
|
||||
(list (upstream-source
|
||||
(package "foo") (version "1")
|
||||
|
|
Loading…
Reference in New Issue