mirror of
https://git.in.rschanz.org/ryan77627/guix.git
synced 2024-11-07 15:36:20 -05:00
Merge branch 'master' into staging
This commit is contained in:
commit
571fb008a5
144 changed files with 7926 additions and 1903 deletions
|
@ -313,7 +313,11 @@ (define fake-git
|
|||
(cons (string-append #$guile-gcrypt "/lib/guile/"
|
||||
(effective-version)
|
||||
"/site-ccache")
|
||||
%load-compiled-path)))
|
||||
%load-compiled-path))
|
||||
|
||||
;; Disable position recording to save time and space
|
||||
;; when loading the package modules.
|
||||
(read-disable 'positions))
|
||||
|
||||
(use-modules (guix store)
|
||||
(guix self)
|
||||
|
|
|
@ -827,7 +827,7 @@ your @code{operating-system} configuration:
|
|||
@example
|
||||
(service qemu-binfmt-service-type
|
||||
(qemu-binfmt-configuration
|
||||
(platforms (lookup-qemu-platforms "arm" "aarch64" "ppc" "mips64el"))
|
||||
(platforms (lookup-qemu-platforms "arm" "aarch64" "mips64el"))
|
||||
(guix-support? #t)))
|
||||
@end example
|
||||
|
||||
|
@ -835,12 +835,11 @@ Then reconfigure your system.
|
|||
|
||||
You can then build packages for different platforms by specifying the
|
||||
@code{--system} option. For example, to build the "hello" package for
|
||||
the armhf, aarch64, powerpc, or mips64 architectures, you would run the
|
||||
following commands, respectively:
|
||||
the armhf, aarch64, or mips64 architectures, you would run the following
|
||||
commands, respectively:
|
||||
@example
|
||||
guix build --system=armhf-linux --rounds=2 hello
|
||||
guix build --system=aarch64-linux --rounds=2 hello
|
||||
guix build --system=powerpc-linux --rounds=2 hello
|
||||
guix build --system=mips64el-linux --rounds=2 hello
|
||||
@end example
|
||||
|
||||
|
|
456
doc/guix.texi
456
doc/guix.texi
|
@ -251,6 +251,7 @@ System Configuration
|
|||
* File Systems:: Configuring file system mounts.
|
||||
* Mapped Devices:: Block device extra processing.
|
||||
* User Accounts:: Specifying user accounts.
|
||||
* Keyboard Layout:: How the system interprets key strokes.
|
||||
* Locales:: Language and cultural convention settings.
|
||||
* Services:: Specifying system services.
|
||||
* Setuid Programs:: Programs running with root privileges.
|
||||
|
@ -3620,7 +3621,7 @@ Generation 3 Jun 13 2018 23:31:07 (current)
|
|||
69 packages upgraded: borg@@1.1.6, cheese@@3.28.0, @dots{}
|
||||
@end example
|
||||
|
||||
@ref{Invoking guix describe, @command{guix describe}}, for other ways to
|
||||
@xref{Invoking guix describe, @command{guix describe}}, for other ways to
|
||||
describe the current status of Guix.
|
||||
|
||||
This @code{~/.config/guix/current} profile works like any other profile
|
||||
|
@ -3665,7 +3666,7 @@ is provided, the subset of generations that match @var{pattern}.
|
|||
The syntax of @var{pattern} is the same as with @code{guix package
|
||||
--list-generations} (@pxref{Invoking guix package}).
|
||||
|
||||
@ref{Invoking guix describe}, for a way to display information about the
|
||||
@xref{Invoking guix describe}, for a way to display information about the
|
||||
current generation only.
|
||||
|
||||
@item --profile=@var{profile}
|
||||
|
@ -5360,10 +5361,6 @@ more. To ensure that libraries written in those languages can find
|
|||
library code they depend on at run time, run-time dependencies must be
|
||||
listed in @code{propagated-inputs} rather than @code{inputs}.
|
||||
|
||||
@item @code{self-native-input?} (default: @code{#f})
|
||||
This is a Boolean field telling whether the package should use itself as
|
||||
a native input when cross-compiling.
|
||||
|
||||
@item @code{outputs} (default: @code{'("out")})
|
||||
The list of output names of the package. @xref{Packages with Multiple
|
||||
Outputs}, for typical uses of additional outputs.
|
||||
|
@ -5816,6 +5813,11 @@ list of flags passed to the @code{dune} command during the build.
|
|||
The @code{#:jbuild?} parameter can be passed to use the @code{jbuild}
|
||||
command instead of the more recent @code{dune} command while building
|
||||
a package. Its default value is @code{#f}.
|
||||
|
||||
The @code{#:package} parameter can be passed to specify a package name, which
|
||||
is useful when a package contains multiple packages and you want to build
|
||||
only one of them. This is equivalent to passing the @code{-p} argument to
|
||||
@code{dune}.
|
||||
@end defvr
|
||||
|
||||
@defvr {Scheme Variable} go-build-system
|
||||
|
@ -10127,6 +10129,7 @@ instance to support new system services.
|
|||
* File Systems:: Configuring file system mounts.
|
||||
* Mapped Devices:: Block device extra processing.
|
||||
* User Accounts:: Specifying user accounts.
|
||||
* Keyboard Layout:: How the system interprets key strokes.
|
||||
* Locales:: Language and cultural convention settings.
|
||||
* Services:: Specifying system services.
|
||||
* Setuid Programs:: Programs running with root privileges.
|
||||
|
@ -10400,6 +10403,24 @@ the command-line of the kernel---e.g., @code{("console=ttyS0")}.
|
|||
@item @code{bootloader}
|
||||
The system bootloader configuration object. @xref{Bootloader Configuration}.
|
||||
|
||||
@item @code{keyboard-layout} (default: @code{#f})
|
||||
This field specifies the keyboard layout to use in the console. It can be
|
||||
either @code{#f}, in which case the default keyboard layout is used (usually
|
||||
US English), or a @code{<keyboard-layout>} record.
|
||||
|
||||
This keyboard layout is in effect as soon as the kernel has booted. For
|
||||
instance, it is the keyboard layout in effect when you type a passphrase if
|
||||
your root file system is on a @code{luks-device-mapping} mapped device
|
||||
(@pxref{Mapped Devices}).
|
||||
|
||||
@quotation Note
|
||||
This does @emph{not} specify the keyboard layout used by the bootloader, nor
|
||||
that used by the graphical display server. @xref{Bootloader Configuration},
|
||||
for information on how to specify the bootloader's keyboard layout. @xref{X
|
||||
Window}, for information on how to specify the keyboard layout used by the X
|
||||
Window System.
|
||||
@end quotation
|
||||
|
||||
@item @code{initrd-modules} (default: @code{%base-initrd-modules})
|
||||
@cindex initrd
|
||||
@cindex initial RAM disk
|
||||
|
@ -10506,6 +10527,13 @@ details.
|
|||
@item @code{services} (default: @var{%base-services})
|
||||
A list of service objects denoting system services. @xref{Services}.
|
||||
|
||||
@cindex essential services
|
||||
@item @code{essential-services} (default: ...)
|
||||
The list of ``essential services''---i.e., things like instances of
|
||||
@code{system-service-type} and @code{host-name-service-type} (@pxref{Service
|
||||
Reference}), which are derived from the operating system definition itself.
|
||||
As a user you should @emph{never} need to touch this field.
|
||||
|
||||
@item @code{pam-services} (default: @code{(base-pam-services)})
|
||||
@cindex PAM
|
||||
@cindex pluggable authentication modules
|
||||
|
@ -10902,7 +10930,6 @@ this field must contain the encrypted password, as a string. You can use the
|
|||
@example
|
||||
(user-account
|
||||
(name "charlie")
|
||||
(home-directory "/home/charlie")
|
||||
(group "users")
|
||||
|
||||
;; Specify a SHA-512-hashed initial password.
|
||||
|
@ -10969,6 +10996,108 @@ Note that the ``root'' account is not included here. It is a
|
|||
special-case and is automatically added whether or not it is specified.
|
||||
@end defvr
|
||||
|
||||
@node Keyboard Layout
|
||||
@section Keyboard Layout
|
||||
|
||||
To specify what each key of your keyboard does, you need to tell the operating
|
||||
system what @dfn{keyboard layout} you want to use. The default, when nothing
|
||||
is specified, is the US English QWERTY layout for 105-key PC keyboards.
|
||||
However, German speakers will usually prefer the German QWERTZ layout, French
|
||||
speakers will want the AZERTY layout, and so on; hackers might prefer Dvorak
|
||||
or bépo, and they might even want to further customize the effect of some of
|
||||
the keys. This section explains how to get that done.
|
||||
|
||||
@cindex keyboard layout, definition
|
||||
There are three components that will want to know about your keyboard layout:
|
||||
|
||||
@itemize
|
||||
@item
|
||||
The @emph{bootloader} may want to know what keyboard layout you want to use
|
||||
(@pxref{Bootloader Configuration, @code{keyboard-layout}}). This is useful if
|
||||
you want, for instance, to make sure that you can type the passphrase of your
|
||||
encrypted root partition using the right layout.
|
||||
|
||||
@item
|
||||
The @emph{operating system kernel}, Linux, will need that so that the console
|
||||
is properly configured (@pxref{operating-system Reference,
|
||||
@code{keyboard-layout}}).
|
||||
|
||||
@item
|
||||
The @emph{graphical display server}, usually Xorg, also has its own idea of
|
||||
the keyboard layout (@pxref{X Window, @code{keyboard-layout}}).
|
||||
@end itemize
|
||||
|
||||
Guix allows you to configure all three separately but, fortunately, it allows
|
||||
you to share the same keyboard layout for all three components.
|
||||
|
||||
@cindex XKB, keyboard layouts
|
||||
Keyboard layouts are represented by records created by the
|
||||
@code{keyboard-layout} procedure of @code{(gnu system keyboard)}. Following
|
||||
the X Keyboard extension (XKB), each layout has four attributes: a name (often
|
||||
a language code such as ``fi'' for Finnish or ``jp'' for Japanese), an
|
||||
optional variant name, an optional keyboard model name, and a possibly empty
|
||||
list of additional options. In most cases the layout name is all you care
|
||||
about. Here are a few example:
|
||||
|
||||
@example
|
||||
;; The German QWERTZ layout. Here we assume a standard
|
||||
;; "pc105" keyboard model.
|
||||
(keyboard-layout "de")
|
||||
|
||||
;; The bépo variant of the French layout.
|
||||
(keyboard-layout "fr" "bepo")
|
||||
|
||||
;; The Catalan layout.
|
||||
(keyboard-layout "es" "cat")
|
||||
|
||||
;; The Latin American Spanish layout. In addition, the
|
||||
;; "Caps Lock" key is used as an additional "Ctrl" key,
|
||||
;; and the "Menu" key is used as a "Compose" key to enter
|
||||
;; accented letters.
|
||||
(keyboard-layout "latam"
|
||||
#:options '("ctrl:nocaps" "compose:menu"))
|
||||
|
||||
;; The Russian layout for a ThinkPad keyboard.
|
||||
(keyboard-layout "ru" #:model "thinkpad")
|
||||
|
||||
;; The "US international" layout, which is the US layout plus
|
||||
;; dead keys to enter accented characters. This is for an
|
||||
;; Apple MacBook keyboard.
|
||||
(keyboard-layout "us" "intl" #:model "macbook78")
|
||||
@end example
|
||||
|
||||
See the @file{share/X11/xkb} directory of the @code{xkeyboard-config} package
|
||||
for a complete list of supported layouts, variants, and models.
|
||||
|
||||
@cindex keyboard layout, configuration
|
||||
Let's say you want your system to use the Turkish keyboard layout throughout
|
||||
your system---bootloader, console, and Xorg. Here's what your system
|
||||
configuration would look like:
|
||||
|
||||
@lisp
|
||||
;; Using the Turkish layout for the bootloader, the console,
|
||||
;; and for Xorg.
|
||||
|
||||
(operating-system
|
||||
;; ...
|
||||
(keyboard-layout (keyboard-layout "tr")) ;for the console
|
||||
(bootloader (bootloader-configuration
|
||||
(bootloader grub-efi-bootloader)
|
||||
(target "/boot/efi")
|
||||
(keyboard-layout keyboard-layout))) ;for GRUB
|
||||
(services (modify-services %desktop-services
|
||||
(gdm-service-type config =>
|
||||
(gdm-configuration
|
||||
(inherit config)
|
||||
(xorg-configuration
|
||||
(xorg-configuration ;for Xorg
|
||||
(keyboard-layout keyboard-layout))))))))
|
||||
@end lisp
|
||||
|
||||
In the example above, for GRUB and for Xorg, we just refer to the
|
||||
@code{keyboard-layout} field defined above, but we could just as well refer to
|
||||
a different layout.
|
||||
|
||||
@node Locales
|
||||
@section Locales
|
||||
|
||||
|
@ -13161,7 +13290,13 @@ Package object of the Open vSwitch.
|
|||
Support for the X Window graphical display system---specifically
|
||||
Xorg---is provided by the @code{(gnu services xorg)} module. Note that
|
||||
there is no @code{xorg-service} procedure. Instead, the X server is
|
||||
started by the @dfn{login manager}, by default SLiM.
|
||||
started by the @dfn{login manager}, by default the GNOME Display Manager (GDM).
|
||||
|
||||
@cindex GDM
|
||||
@cindex GNOME, login manager
|
||||
GDM of course allows users to log in into window managers and desktop
|
||||
environments other than GNOME; for those using GNOME, GDM is required for
|
||||
features such as automatic screen locking.
|
||||
|
||||
@cindex window manager
|
||||
To use X11, you must install at least one @dfn{window manager}---for
|
||||
|
@ -13169,23 +13304,59 @@ example the @code{windowmaker} or @code{openbox} packages---preferably
|
|||
by adding it to the @code{packages} field of your operating system
|
||||
definition (@pxref{operating-system Reference, system-wide packages}).
|
||||
|
||||
@defvr {Scheme Variable} slim-service-type
|
||||
This is the type for the SLiM graphical login manager for X11.
|
||||
@defvr {Scheme Variable} gdm-service-type
|
||||
This is the type for the @uref{https://wiki.gnome.org/Projects/GDM/, GNOME
|
||||
Desktop Manager} (GDM), a program that manages graphical display servers and
|
||||
handles graphical user logins. Its value must be a @code{gdm-configuration}
|
||||
(see below.)
|
||||
|
||||
@cindex session types (X11)
|
||||
@cindex X11 session types
|
||||
SLiM looks for @dfn{session types} described by the @file{.desktop} files in
|
||||
@file{/run/current-system/profile/share/xsessions} and allows users to
|
||||
choose a session from the log-in screen using @kbd{F1}. Packages such
|
||||
as @code{xfce}, @code{sawfish}, and @code{ratpoison} provide
|
||||
@file{.desktop} files; adding them to the system-wide set of packages
|
||||
automatically makes them available at the log-in screen.
|
||||
GDM looks for @dfn{session types} described by the @file{.desktop} files in
|
||||
@file{/run/current-system/profile/share/xsessions} and allows users to choose
|
||||
a session from the log-in screen. Packages such as @code{gnome}, @code{xfce},
|
||||
and @code{i3} provide @file{.desktop} files; adding them to the system-wide
|
||||
set of packages automatically makes them available at the log-in screen.
|
||||
|
||||
In addition, @file{~/.xsession} files are honored. When available,
|
||||
@file{~/.xsession} must be an executable that starts a window manager
|
||||
and/or other X clients.
|
||||
@end defvr
|
||||
|
||||
@deftp {Data Type} gdm-configuration
|
||||
@table @asis
|
||||
@item @code{auto-login?} (default: @code{#f})
|
||||
@itemx @code{default-user} (default: @code{#f})
|
||||
When @code{auto-login?} is false, GDM presents a log-in screen.
|
||||
|
||||
When @code{auto-login?} is true, GDM logs in directly as
|
||||
@code{default-user}.
|
||||
|
||||
@item @code{gnome-shell-assets} (default: ...)
|
||||
List of GNOME Shell assets needed by GDM: icon theme, fonts, etc.
|
||||
|
||||
@item @code{xorg-configuration} (default: @code{(xorg-configuration)})
|
||||
Configuration of the Xorg graphical server.
|
||||
|
||||
@item @code{xsession} (default: @code{(xinitrc)})
|
||||
Script to run before starting a X session.
|
||||
|
||||
@item @code{dbus-daemon} (default: @code{dbus-daemon-wrapper})
|
||||
File name of the @code{dbus-daemon} executable.
|
||||
|
||||
@item @code{gdm} (default: @code{gdm})
|
||||
The GDM package to use.
|
||||
@end table
|
||||
@end deftp
|
||||
|
||||
@defvr {Scheme Variable} slim-service-type
|
||||
This is the type for the SLiM graphical login manager for X11.
|
||||
|
||||
Like GDM, SLiM looks for session types described by @file{.desktop} files and
|
||||
allows users to choose a session from the log-in screen using @kbd{F1}. It
|
||||
also honors @file{~/.xsession} files.
|
||||
@end defvr
|
||||
|
||||
@deftp {Data Type} slim-configuration
|
||||
Data type representing the configuration of @code{slim-service-type}.
|
||||
|
||||
|
@ -13218,8 +13389,8 @@ your user profile. Failing to do that, if @code{auto-login-session} is
|
|||
false, you will be unable to log in.
|
||||
@end quotation
|
||||
|
||||
@item @code{startx} (default: @code{(xorg-start-command)})
|
||||
The command used to start the X11 graphical server.
|
||||
@item @code{xorg-configuration} (default @code{(xorg-configuration)})
|
||||
Configuration of the Xorg graphical server.
|
||||
|
||||
@item @code{xauth} (default: @code{xauth})
|
||||
The XAuth package to use.
|
||||
|
@ -13295,8 +13466,8 @@ Script to run before starting a wayland session.
|
|||
@item @code{sessions-directory} (default "/run/current-system/profile/share/wayland-sessions")
|
||||
Directory to look for desktop files starting wayland sessions.
|
||||
|
||||
@item @code{xorg-server-path} (default @code{xorg-start-command})
|
||||
Path to xorg-server.
|
||||
@item @code{xorg-configuration} (default @code{(xorg-configuration)})
|
||||
Configuration of the Xorg graphical server.
|
||||
|
||||
@item @code{xauth-path} (default @code{#~(string-append #$xauth "/bin/xauth")})
|
||||
Path to xauth.
|
||||
|
@ -13319,9 +13490,6 @@ Directory to look for desktop files starting X sessions.
|
|||
@item @code{minimum-vt} (default: 7)
|
||||
Minimum VT to use.
|
||||
|
||||
@item @code{xserver-arguments} (default "-nolisten tcp")
|
||||
Arguments to pass to xorg-server.
|
||||
|
||||
@item @code{auto-login-user} (default "")
|
||||
User to use for auto-login.
|
||||
|
||||
|
@ -13347,98 +13515,62 @@ type @code{<sddm-configuration>}.
|
|||
@end example
|
||||
@end deffn
|
||||
|
||||
@deffn {Scheme Procedure} xorg-start-command [#:guile] @
|
||||
[#:modules %default-xorg-modules] @
|
||||
[#:fonts %default-xorg-fonts] @
|
||||
[#:configuration-file (xorg-configuration-file @dots{})] @
|
||||
[#:xorg-server @var{xorg-server}]
|
||||
[#:xserver-arguments '("-nolisten" "tcp")]
|
||||
Return a @code{startx} script in which @var{modules}, a list of X module
|
||||
packages, and @var{fonts}, a list of X font directories, are available. See
|
||||
@code{xorg-wrapper} for more details on the arguments. The result should be
|
||||
used in place of @code{startx}.
|
||||
@cindex Xorg, configuration
|
||||
@deftp {Data Type} xorg-configuration
|
||||
This data type represents the configuration of the Xorg graphical display
|
||||
server. Note that there is not Xorg service; instead, the X server is started
|
||||
by a ``display manager'' such as GDM, SDDM, and SLiM. Thus, the configuration
|
||||
of these display managers aggregates an @code{xorg-configuration} record.
|
||||
|
||||
@table @asis
|
||||
@item @code{modules} (default: @code{%default-xorg-modules})
|
||||
This is a list of @dfn{module packages} loaded by the Xorg
|
||||
server---e.g., @code{xf86-video-vesa}, @code{xf86-input-keyboard}, and so on.
|
||||
|
||||
@item @code{fonts} (default: @code{%default-xorg-fonts})
|
||||
This is a list of font directories to add to the server's @dfn{font path}.
|
||||
|
||||
@item @code{drivers} (default: @code{'()})
|
||||
This must be either the empty list, in which case Xorg chooses a graphics
|
||||
driver automatically, or a list of driver names that will be tried in this
|
||||
order---e.g., @code{("modesetting" "vesa")}.
|
||||
|
||||
@item @code{resolutions} (default: @code{'()})
|
||||
When @code{resolutions} is the empty list, Xorg chooses an appropriate screen
|
||||
resolution. Otherwise, it must be a list of resolutions---e.g., @code{((1024
|
||||
768) (640 480))}.
|
||||
|
||||
@cindex keyboard layout, for Xorg
|
||||
@cindex keymap, for Xorg
|
||||
@item @code{keyboard-layout} (default: @code{#f})
|
||||
If this is @code{#f}, Xorg uses the default keyboard layout---usually US
|
||||
English (``qwerty'') for a 105-key PC keyboard.
|
||||
|
||||
Otherwise this must be a @code{keyboard-layout} object specifying the keyboard
|
||||
layout in use when Xorg is running. @xref{Keyboard Layout}, for more
|
||||
information on how to specify the keyboard layout.
|
||||
|
||||
@item @code{extra-config} (default: @code{'()})
|
||||
This is a list of strings or objects appended to the configuration file. It
|
||||
is used to pass extra text to be added verbatim to the configuration file.
|
||||
|
||||
@item @code{server} (default: @code{xorg-server})
|
||||
This is the package providing the Xorg server.
|
||||
|
||||
@item @code{server-arguments} (default: @code{%default-xorg-server-arguments})
|
||||
This is the list of command-line arguments to pass to the X server. The
|
||||
default is @code{-nolisten tcp}.
|
||||
@end table
|
||||
@end deftp
|
||||
|
||||
@deffn {Scheme Procedure} xorg-start-command [@var{config}]
|
||||
Return a @code{startx} script in which the modules, fonts, etc. specified
|
||||
in @var{config}, are available. The result should be used in place of
|
||||
@code{startx}.
|
||||
|
||||
Usually the X server is started by a login manager.
|
||||
@end deffn
|
||||
|
||||
@cindex @code{-listen tcp}, for X11.
|
||||
This procedure is useful to override command line options for the X server,
|
||||
such as having it listen to over TCP:
|
||||
|
||||
@example
|
||||
(operating-system
|
||||
...
|
||||
(services
|
||||
(modify-services %desktop-services
|
||||
(slim-service-type config =>
|
||||
(slim-configuration
|
||||
(inherit config)
|
||||
(startx (xorg-start-command
|
||||
#:xserver-arguments '("-listen" "tcp"))))))))
|
||||
@end example
|
||||
|
||||
@deffn {Scheme Procedure} xorg-configuration-file @
|
||||
[#:modules %default-xorg-modules] @
|
||||
[#:fonts %default-xorg-fonts] @
|
||||
[#:drivers '()] [#:resolutions '()] [#:extra-config '()]
|
||||
Return a configuration file for the Xorg server containing search paths for
|
||||
all the common drivers.
|
||||
|
||||
@var{modules} must be a list of @dfn{module packages} loaded by the Xorg
|
||||
server---e.g., @code{xf86-video-vesa}, @code{xf86-input-keyboard}, and so on.
|
||||
@var{fonts} must be a list of font directories to add to the server's
|
||||
@dfn{font path}.
|
||||
|
||||
@var{drivers} must be either the empty list, in which case Xorg chooses a
|
||||
graphics driver automatically, or a list of driver names that will be tried in
|
||||
this order---e.g., @code{("modesetting" "vesa")}.
|
||||
|
||||
Likewise, when @var{resolutions} is the empty list, Xorg chooses an
|
||||
appropriate screen resolution; otherwise, it must be a list of
|
||||
resolutions---e.g., @code{((1024 768) (640 480))}.
|
||||
|
||||
Last, @var{extra-config} is a list of strings or objects appended to the
|
||||
configuration file. It is used to pass extra text to be
|
||||
added verbatim to the configuration file.
|
||||
|
||||
@cindex keymap
|
||||
@cindex keyboard layout
|
||||
This procedure is especially useful to configure a different keyboard layout
|
||||
than the default US keymap. For instance, to use the ``bépo'' keymap by
|
||||
default on the display manager:
|
||||
|
||||
@example
|
||||
(define bepo-evdev
|
||||
"Section \"InputClass\"
|
||||
Identifier \"evdev keyboard catchall\"
|
||||
Driver \"evdev\"
|
||||
MatchIsKeyboard \"on\"
|
||||
Option \"xkb_layout\" \"fr\"
|
||||
Option \"xkb_variant\" \"bepo\"
|
||||
EndSection")
|
||||
|
||||
(operating-system
|
||||
...
|
||||
(services
|
||||
(modify-services %desktop-services
|
||||
(slim-service-type config =>
|
||||
(slim-configuration
|
||||
(inherit config)
|
||||
(startx (xorg-start-command
|
||||
#:configuration-file
|
||||
(xorg-configuration-file
|
||||
#:extra-config
|
||||
(list bepo-evdev)))))))))
|
||||
@end example
|
||||
|
||||
The @code{MatchIsKeyboard} line specifies that we only apply the configuration
|
||||
to keyboards. Without this line, other devices such as touchpad may not work
|
||||
correctly because they will be attached to the wrong driver. In this example,
|
||||
the user typically used @code{setxkbmap fr bepo} to set their favorite keymap
|
||||
once logged in. The first argument corresponds to the layout, while the second
|
||||
argument corresponds to the variant. The @code{xkb_variant} line can be omitted
|
||||
to select the default variant.
|
||||
@end deffn
|
||||
|
||||
@deffn {Scheme Procedure} screen-locker-service @var{package} [@var{program}]
|
||||
Add @var{package}, a package for a screen locker or screen saver whose
|
||||
|
@ -14301,7 +14433,7 @@ The @code{(gnu services desktop)} module provides services that are
|
|||
usually useful in the context of a ``desktop'' setup---that is, on a
|
||||
machine running a graphical display server, possibly with graphical user
|
||||
interfaces, etc. It also defines services that provide specific desktop
|
||||
environments like GNOME, XFCE or MATE.
|
||||
environments like GNOME, Xfce or MATE.
|
||||
|
||||
To simplify things, the module defines a variable containing the set of
|
||||
services that users typically expect on a machine with a graphical
|
||||
|
@ -14312,7 +14444,7 @@ This is a list of services that builds upon @var{%base-services} and
|
|||
adds or adjusts services for a typical ``desktop'' setup.
|
||||
|
||||
In particular, it adds a graphical login manager (@pxref{X Window,
|
||||
@code{slim-service}}), screen lockers, a network management tool
|
||||
@code{gdm-service-type}}), screen lockers, a network management tool
|
||||
(@pxref{Networking Services, @code{network-manager-service-type}}), energy and color
|
||||
management services, the @code{elogind} login and seat manager, the
|
||||
Polkit privilege service, the GeoClue location service, the
|
||||
|
@ -14326,16 +14458,16 @@ The @var{%desktop-services} variable can be used as the @code{services}
|
|||
field of an @code{operating-system} declaration (@pxref{operating-system
|
||||
Reference, @code{services}}).
|
||||
|
||||
Additionally, the @code{gnome-desktop-service},
|
||||
Additionally, the @code{gnome-desktop-service-type},
|
||||
@code{xfce-desktop-service}, @code{mate-desktop-service-type} and
|
||||
@code{enlightenment-desktop-service-type} procedures can add GNOME, XFCE, MATE
|
||||
@code{enlightenment-desktop-service-type} procedures can add GNOME, Xfce, MATE
|
||||
and/or Enlightenment to a system. To ``add GNOME'' means that system-level
|
||||
services like the backlight adjustment helpers and the power management
|
||||
utilities are added to the system, extending @code{polkit} and @code{dbus}
|
||||
appropriately, allowing GNOME to operate with elevated privileges on a
|
||||
limited number of special-purpose system interfaces. Additionally,
|
||||
adding a service made by @code{gnome-desktop-service} adds the GNOME
|
||||
metapackage to the system profile. Likewise, adding the XFCE service
|
||||
adding a service made by @code{gnome-desktop-service-type} adds the GNOME
|
||||
metapackage to the system profile. Likewise, adding the Xfce service
|
||||
not only adds the @code{xfce} metapackage to the system profile, but it
|
||||
also gives the Thunar file manager the ability to open a ``root-mode''
|
||||
file management window, if the user authenticates using the
|
||||
|
@ -14351,25 +14483,50 @@ functionality to work as expetected.
|
|||
|
||||
The desktop environments in Guix use the Xorg display server by
|
||||
default. If you'd like to use the newer display server protocol
|
||||
called Wayland, you need to use the @code{sddm-service} instead of the
|
||||
@code{slim-service} for the graphical login manager. You should then
|
||||
called Wayland, you need to use the @code{sddm-service} instead of
|
||||
GDM as the graphical login manager. You should then
|
||||
select the ``GNOME (Wayland)'' session in SDDM. Alternatively you can
|
||||
also try starting GNOME on Wayland manually from a TTY with the
|
||||
command ``XDG_SESSION_TYPE=wayland exec dbus-run-session
|
||||
gnome-session``. Currently only GNOME has support for Wayland.
|
||||
|
||||
@deffn {Scheme Procedure} gnome-desktop-service
|
||||
Return a service that adds the @code{gnome} package to the system
|
||||
profile, and extends polkit with the actions from
|
||||
@code{gnome-settings-daemon}.
|
||||
@end deffn
|
||||
@defvr {Scheme Variable} gnome-desktop-service-type
|
||||
This is the type of the service that adds the @uref{https://www.gnome.org,
|
||||
GNOME} desktop environment. Its value is a @code{gnome-desktop-configuration}
|
||||
object (see below.)
|
||||
|
||||
@deffn {Scheme Procedure} xfce-desktop-service
|
||||
Return a service that adds the @code{xfce} package to the system profile,
|
||||
and extends polkit with the ability for @code{thunar} to manipulate the
|
||||
file system as root from within a user session, after the user has
|
||||
authenticated with the administrator's password.
|
||||
@end deffn
|
||||
This service adds the @code{gnome} package to the system profile, and extends
|
||||
polkit with the actions from @code{gnome-settings-daemon}.
|
||||
@end defvr
|
||||
|
||||
@deftp {Data Type} gnome-desktop-configuration
|
||||
Configuration record for the GNOME desktop environment.
|
||||
|
||||
@table @asis
|
||||
@item @code{gnome} (default @code{gnome})
|
||||
The GNOME package to use.
|
||||
@end table
|
||||
@end deftp
|
||||
|
||||
@defvr {Scheme Variable} xfce-desktop-service-type
|
||||
This is the type of a service to run the @uref{Xfce, https://xfce.org/}
|
||||
desktop environment. Its value is an @code{xfce-desktop-configuration} object
|
||||
(see below.)
|
||||
|
||||
This service that adds the @code{xfce} package to the system profile, and
|
||||
extends polkit with the ability for @code{thunar} to manipulate the file
|
||||
system as root from within a user session, after the user has authenticated
|
||||
with the administrator's password.
|
||||
@end defvr
|
||||
|
||||
@deftp {Data Type} xfce-desktop-configuration
|
||||
Configuration record for the Xfce desktop environment.
|
||||
|
||||
@table @asis
|
||||
@item @code{xfce} (default @code{xfce})
|
||||
The Xfce package to use.
|
||||
@end table
|
||||
@end deftp
|
||||
|
||||
@deffn {Scheme Variable} mate-desktop-service-type
|
||||
This is the type of the service that runs the @uref{https://mate-desktop.org/,
|
||||
|
@ -14402,9 +14559,9 @@ The enlightenment package to use.
|
|||
@end table
|
||||
@end deftp
|
||||
|
||||
Because the GNOME, XFCE and MATE desktop services pull in so many packages,
|
||||
Because the GNOME, Xfce and MATE desktop services pull in so many packages,
|
||||
the default @code{%desktop-services} variable doesn't include any of
|
||||
them by default. To add GNOME, XFCE or MATE, just @code{cons} them onto
|
||||
them by default. To add GNOME, Xfce or MATE, just @code{cons} them onto
|
||||
@code{%desktop-services} in the @code{services} field of your
|
||||
@code{operating-system}:
|
||||
|
||||
|
@ -14414,8 +14571,8 @@ them by default. To add GNOME, XFCE or MATE, just @code{cons} them onto
|
|||
(operating-system
|
||||
...
|
||||
;; cons* adds items to the list given as its last argument.
|
||||
(services (cons* (gnome-desktop-service)
|
||||
(xfce-desktop-service)
|
||||
(services (cons* (service gnome-desktop-service-type)
|
||||
(service xfce-desktop-service)
|
||||
%desktop-services))
|
||||
...)
|
||||
@end example
|
||||
|
@ -21624,7 +21781,7 @@ emulated:
|
|||
@example
|
||||
(service qemu-binfmt-service-type
|
||||
(qemu-binfmt-configuration
|
||||
(platforms (lookup-qemu-platforms "arm" "aarch64" "ppc"))))
|
||||
(platforms (lookup-qemu-platforms "arm" "aarch64" "mips64el"))))
|
||||
@end example
|
||||
|
||||
In this example, we enable transparent emulation for the ARM and aarch64
|
||||
|
@ -23528,6 +23685,7 @@ here is how to use it and customize it further.
|
|||
@cindex initial RAM disk
|
||||
@deffn {Scheme Procedure} raw-initrd @var{file-systems} @
|
||||
[#:linux-modules '()] [#:mapped-devices '()] @
|
||||
[#:keyboard-layout #f] @
|
||||
[#:helper-packages '()] [#:qemu-networking? #f] [#:volatile-root? #f]
|
||||
Return a derivation that builds a raw initrd. @var{file-systems} is
|
||||
a list of file systems to be mounted by the initrd, possibly in addition to
|
||||
|
@ -23539,6 +23697,12 @@ the root file system specified on the kernel command line via @code{--root}.
|
|||
include @code{e2fsck/static} or other packages needed by the initrd to check
|
||||
the root file system.
|
||||
|
||||
When true, @var{keyboard-layout} is a @code{<keyboard-layout>} record denoting
|
||||
the desired console keyboard layout. This is done before @var{mapped-devices}
|
||||
are set up and before @var{file-systems} are mounted such that, should the
|
||||
user need to enter a passphrase or use the REPL, this happens using the
|
||||
intended keyboard layout.
|
||||
|
||||
When @var{qemu-networking?} is true, set up networking with the standard QEMU
|
||||
parameters. When @var{virtio?} is true, load additional modules so that the
|
||||
initrd can be used as a QEMU guest with para-virtualized I/O drivers.
|
||||
|
@ -23548,7 +23712,8 @@ to it are lost.
|
|||
@end deffn
|
||||
|
||||
@deffn {Scheme Procedure} base-initrd @var{file-systems} @
|
||||
[#:mapped-devices '()] [#:qemu-networking? #f] [#:volatile-root? #f]@
|
||||
[#:mapped-devices '()] [#:keyboard-layout #f] @
|
||||
[#:qemu-networking? #f] [#:volatile-root? #f] @
|
||||
[#:linux-modules '()]
|
||||
Return as a file-like object a generic initrd, with kernel
|
||||
modules taken from @var{linux}. @var{file-systems} is a list of file-systems to be
|
||||
|
@ -23556,6 +23721,12 @@ mounted by the initrd, possibly in addition to the root file system specified
|
|||
on the kernel command line via @code{--root}. @var{mapped-devices} is a list of device
|
||||
mappings to realize before @var{file-systems} are mounted.
|
||||
|
||||
When true, @var{keyboard-layout} is a @code{<keyboard-layout>} record denoting
|
||||
the desired console keyboard layout. This is done before @var{mapped-devices}
|
||||
are set up and before @var{file-systems} are mounted such that, should the
|
||||
user need to enter a passphrase or use the REPL, this happens using the
|
||||
intended keyboard layout.
|
||||
|
||||
@var{qemu-networking?} and @var{volatile-root?} behaves as in @code{raw-initrd}.
|
||||
|
||||
The initrd is automatically populated with all the kernel modules necessary
|
||||
|
@ -23649,6 +23820,19 @@ current system.
|
|||
The number of seconds to wait for keyboard input before booting. Set to
|
||||
0 to boot immediately, and to -1 to wait indefinitely.
|
||||
|
||||
@cindex keyboard layout, for the bootloader
|
||||
@item @code{keyboard-layout} (default: @code{#f})
|
||||
If this is @code{#f}, the bootloader's menu (if any) uses the default keyboard
|
||||
layout, usually US@tie{}English (``qwerty'').
|
||||
|
||||
Otherwise, this must be a @code{keyboard-layout} object (@pxref{Keyboard
|
||||
Layout}).
|
||||
|
||||
@quotation Note
|
||||
This option is currently ignored by bootloaders other than @code{grub} and
|
||||
@code{grub-efi}.
|
||||
@end quotation
|
||||
|
||||
@item @code{theme} (default: @var{#f})
|
||||
The bootloader theme object describing the theme to use. If no theme
|
||||
is provided, some bootloaders might use a default theme, that's true
|
||||
|
|
20
etc/snippets/text-mode/guix-commit-message-rename-package
Normal file
20
etc/snippets/text-mode/guix-commit-message-rename-package
Normal file
|
@ -0,0 +1,20 @@
|
|||
# -*- mode: snippet -*-
|
||||
# name: guix-commit-message-rename-package
|
||||
# key: rename
|
||||
# condition: git-commit-mode
|
||||
# --
|
||||
gnu: ${1:`(with-temp-buffer
|
||||
(magit-git-wash #'magit-diff-wash-diffs
|
||||
"diff" "--staged")
|
||||
(beginning-of-buffer)
|
||||
(when (search-forward "-(define-public " nil 'noerror)
|
||||
(thing-at-point 'sexp 'no-properties)))`}: Rename package to ${2:`(with-temp-buffer
|
||||
(magit-git-wash #'magit-diff-wash-diffs
|
||||
"diff" "--staged")
|
||||
(beginning-of-buffer)
|
||||
(when (search-forward "+(define-public " nil 'noerror)
|
||||
(thing-at-point 'sexp 'no-properties)))`}.
|
||||
|
||||
* `(car (magit-staged-files))` ($1): Define in terms of
|
||||
'deprecated-package'.
|
||||
($2): New variable, formerly known as "$1".
|
3
gnu.scm
3
gnu.scm
|
@ -1,5 +1,5 @@
|
|||
;;; GNU Guix --- Functional package management for GNU
|
||||
;;; Copyright © 2014, 2015, 2016, 2017 Ludovic Courtès <ludo@gnu.org>
|
||||
;;; Copyright © 2014, 2015, 2016, 2017, 2019 Ludovic Courtès <ludo@gnu.org>
|
||||
;;; Copyright © 2015 Joshua S. Grant <jgrant@parenthetical.io>
|
||||
;;; Copyright © 2017 Mathieu Othacehe <m.othacehe@gmail.com>
|
||||
;;;
|
||||
|
@ -45,6 +45,7 @@ (define %public-modules
|
|||
(gnu system file-systems)
|
||||
(gnu bootloader)
|
||||
(gnu bootloader grub)
|
||||
(gnu system keyboard)
|
||||
(gnu system pam)
|
||||
(gnu system shadow) ; 'user-account'
|
||||
(gnu system linux-initrd)
|
||||
|
|
|
@ -47,6 +47,7 @@ (define-module (gnu bootloader)
|
|||
bootloader-configuration-menu-entries
|
||||
bootloader-configuration-default-entry
|
||||
bootloader-configuration-timeout
|
||||
bootloader-configuration-keyboard-layout
|
||||
bootloader-configuration-theme
|
||||
bootloader-configuration-terminal-outputs
|
||||
bootloader-configuration-terminal-inputs
|
||||
|
@ -104,27 +105,27 @@ (define-record-type* <bootloader>
|
|||
(define-record-type* <bootloader-configuration>
|
||||
bootloader-configuration make-bootloader-configuration
|
||||
bootloader-configuration?
|
||||
(bootloader bootloader-configuration-bootloader) ; <bootloader>
|
||||
(target bootloader-configuration-target ; string
|
||||
(default #f))
|
||||
(menu-entries bootloader-configuration-menu-entries ; list of <boot-parameters>
|
||||
(default '()))
|
||||
(default-entry bootloader-configuration-default-entry ; integer
|
||||
(default 0))
|
||||
(timeout bootloader-configuration-timeout ; seconds as integer
|
||||
(default 5))
|
||||
(theme bootloader-configuration-theme ; bootloader-specific theme
|
||||
(default #f))
|
||||
(terminal-outputs bootloader-configuration-terminal-outputs ; list of symbols
|
||||
(default '(gfxterm)))
|
||||
(terminal-inputs bootloader-configuration-terminal-inputs ; list of symbols
|
||||
(default '()))
|
||||
(serial-unit bootloader-configuration-serial-unit ; integer | #f
|
||||
(default #f))
|
||||
(serial-speed bootloader-configuration-serial-speed ; integer | #f
|
||||
(default #f))
|
||||
(additional-configuration bootloader-configuration-additional-configuration ; record
|
||||
(default #f)))
|
||||
(bootloader bootloader-configuration-bootloader) ;<bootloader>
|
||||
(target bootloader-configuration-target ;string
|
||||
(default #f))
|
||||
(menu-entries bootloader-configuration-menu-entries ;list of <boot-parameters>
|
||||
(default '()))
|
||||
(default-entry bootloader-configuration-default-entry ;integer
|
||||
(default 0))
|
||||
(timeout bootloader-configuration-timeout ;seconds as integer
|
||||
(default 5))
|
||||
(keyboard-layout bootloader-configuration-keyboard-layout ;<keyboard-layout> | #f
|
||||
(default #f))
|
||||
(theme bootloader-configuration-theme ;bootloader-specific theme
|
||||
(default #f))
|
||||
(terminal-outputs bootloader-configuration-terminal-outputs ;list of symbols
|
||||
(default '(gfxterm)))
|
||||
(terminal-inputs bootloader-configuration-terminal-inputs ;list of symbols
|
||||
(default '()))
|
||||
(serial-unit bootloader-configuration-serial-unit ;integer | #f
|
||||
(default #f))
|
||||
(serial-speed bootloader-configuration-serial-speed ;integer | #f
|
||||
(default #f)))
|
||||
|
||||
|
||||
;;;
|
||||
|
|
|
@ -27,8 +27,10 @@ (define-module (gnu bootloader grub)
|
|||
#:use-module (gnu bootloader)
|
||||
#:use-module (gnu system uuid)
|
||||
#:use-module (gnu system file-systems)
|
||||
#:use-module (gnu system keyboard)
|
||||
#:autoload (gnu packages bootloaders) (grub)
|
||||
#:autoload (gnu packages gtk) (guile-cairo guile-rsvg)
|
||||
#:autoload (gnu packages xorg) (xkeyboard-config)
|
||||
#:use-module (ice-9 match)
|
||||
#:use-module (ice-9 regex)
|
||||
#:use-module (srfi srfi-1)
|
||||
|
@ -219,6 +221,26 @@ (define image
|
|||
;;; Configuration file.
|
||||
;;;
|
||||
|
||||
(define* (keyboard-layout-file layout
|
||||
#:key
|
||||
(grub grub))
|
||||
"Process the X keyboard layout description LAYOUT, a <keyboard-layout> record,
|
||||
and return a file in the format for GRUB keymaps. LAYOUT must be present in
|
||||
the 'share/X11/xkb/symbols/' directory of 'xkeyboard-config'."
|
||||
(define builder
|
||||
(with-imported-modules '((guix build utils))
|
||||
#~(begin
|
||||
(use-modules (guix build utils))
|
||||
|
||||
;; 'grub-kbdcomp' passes all its arguments but '-o' to 'ckbcomp'
|
||||
;; (from the 'console-setup' package).
|
||||
(invoke #$(file-append grub "/bin/grub-mklayout")
|
||||
"-i" #+(keyboard-layout->console-keymap layout)
|
||||
"-o" #$output))))
|
||||
|
||||
(computed-file (string-append "grub-keymap." (keyboard-layout-name layout))
|
||||
builder))
|
||||
|
||||
(define (grub-setup-io config)
|
||||
"Return GRUB commands to configure the input / output interfaces. The result
|
||||
is a string that can be inserted in grub.cfg."
|
||||
|
@ -330,6 +352,18 @@ (define sugar
|
|||
#:system system
|
||||
#:port #~port))
|
||||
|
||||
(define keyboard-layout-config
|
||||
(let ((layout (bootloader-configuration-keyboard-layout config))
|
||||
(grub (bootloader-package
|
||||
(bootloader-configuration-bootloader config))))
|
||||
#~(let ((keymap #$(and layout
|
||||
(keyboard-layout-file layout #:grub grub))))
|
||||
(when keymap
|
||||
(format port "\
|
||||
terminal_input at_keyboard
|
||||
insmod keylayouts
|
||||
keymap ~a~%" keymap)))))
|
||||
|
||||
(define builder
|
||||
#~(call-with-output-file #$output
|
||||
(lambda (port)
|
||||
|
@ -338,6 +372,7 @@ (define builder
|
|||
# will be lost upon reconfiguration.
|
||||
")
|
||||
#$sugar
|
||||
#$keyboard-layout-config
|
||||
(format port "
|
||||
set default=~a
|
||||
set timeout=~a~%"
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
;;; GNU Guix --- Functional package management for GNU
|
||||
;;; Copyright © 2013, 2014, 2015, 2016, 2017, 2018 Ludovic Courtès <ludo@gnu.org>
|
||||
;;; Copyright © 2013, 2014, 2015, 2016, 2017, 2018, 2019 Ludovic Courtès <ludo@gnu.org>
|
||||
;;; Copyright © 2017 Mathieu Othacehe <m.othacehe@gmail.com>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
|
@ -437,6 +437,7 @@ (define (switch-root root)
|
|||
(define* (boot-system #:key
|
||||
(linux-modules '())
|
||||
linux-module-directory
|
||||
keymap-file
|
||||
qemu-guest-networking?
|
||||
volatile-root?
|
||||
pre-mount
|
||||
|
@ -444,7 +445,8 @@ (define* (boot-system #:key
|
|||
(on-error 'debug))
|
||||
"This procedure is meant to be called from an initrd. Boot a system by
|
||||
first loading LINUX-MODULES (a list of module names) from
|
||||
LINUX-MODULE-DIRECTORY, then setting up QEMU guest networking if
|
||||
LINUX-MODULE-DIRECTORY, then installing KEYMAP-FILE with 'loadkeys' (if
|
||||
KEYMAP-FILE is true), then setting up QEMU guest networking if
|
||||
QEMU-GUEST-NETWORKING? is true, calling PRE-MOUNT, mounting the file systems
|
||||
specified in MOUNTS, and finally booting into the new root if any. The initrd
|
||||
supports kernel command-line options '--load', '--root', and '--repl'.
|
||||
|
@ -491,6 +493,15 @@ (define (lookup-module name)
|
|||
#:lookup-module lookup-module)
|
||||
(map lookup-module linux-modules))
|
||||
|
||||
(when keymap-file
|
||||
(let ((status (system* "loadkeys" keymap-file)))
|
||||
(unless (zero? status)
|
||||
;; Emit a warning rather than abort when we cannot load
|
||||
;; KEYMAP-FILE.
|
||||
(format (current-error-port)
|
||||
"warning: 'loadkeys' exited with status ~a~%"
|
||||
status))))
|
||||
|
||||
(when qemu-guest-networking?
|
||||
(unless (configure-qemu-networking)
|
||||
(display "network interface is DOWN\n")))
|
||||
|
|
|
@ -1,5 +1,6 @@
|
|||
;;; GNU Guix --- Functional package management for GNU
|
||||
;;; Copyright © 2018 Mathieu Othacehe <m.othacehe@gmail.com>
|
||||
;;; Copyright © 2019 Ludovic Courtès <ludo@gnu.org>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
|
@ -42,13 +43,17 @@ (define-module (gnu installer)
|
|||
#:use-module (srfi srfi-1)
|
||||
#:export (installer-program))
|
||||
|
||||
(define not-config?
|
||||
;; Select (guix …) and (gnu …) modules, except (guix config).
|
||||
(define module-to-import?
|
||||
;; Return true for modules that should be imported. For (gnu system …) and
|
||||
;; (gnu packages …) modules, we simply add the whole 'guix' package via
|
||||
;; 'with-extensions' (to avoid having to rebuild it all), which is why these
|
||||
;; modules are excluded here.
|
||||
(match-lambda
|
||||
(('guix 'config) #f)
|
||||
(('guix rest ...) #t)
|
||||
(('gnu rest ...) #t)
|
||||
(rest #f)))
|
||||
(('gnu 'installer _ ...) #t)
|
||||
(('gnu 'build _ ...) #t)
|
||||
(('guix 'build _ ...) #t)
|
||||
(_ #f)))
|
||||
|
||||
(define* (build-compiled-file name locale-builder)
|
||||
"Return a file-like object that evalutes the gexp LOCALE-BUILDER and store
|
||||
|
@ -156,7 +161,8 @@ (define* (compute-keymap-step)
|
|||
(lambda (models layouts)
|
||||
((installer-keymap-page current-installer)
|
||||
layouts)))))
|
||||
(#$apply-keymap result))))
|
||||
(#$apply-keymap result)
|
||||
result)))
|
||||
|
||||
(define (installer-steps)
|
||||
(let ((locale-step (compute-locale-step
|
||||
|
@ -208,7 +214,8 @@ (define (installer-steps)
|
|||
(id 'keymap)
|
||||
(description (G_ "Keyboard mapping selection"))
|
||||
(compute (lambda _
|
||||
(#$keymap-step current-installer))))
|
||||
(#$keymap-step current-installer)))
|
||||
(configuration-formatter keyboard-layout->configuration))
|
||||
|
||||
;; Run a partitioning tool allowing the user to modify
|
||||
;; partition tables, partitions and their mount points.
|
||||
|
@ -293,13 +300,15 @@ (define modules
|
|||
"gnu/installer"))
|
||||
|
||||
(define installer-builder
|
||||
;; Note: Include GUIX as an extension to get all the (gnu system …), (gnu
|
||||
;; packages …), etc. modules.
|
||||
(with-extensions (list guile-gcrypt guile-newt
|
||||
guile-parted guile-bytestructures
|
||||
guile-json)
|
||||
guile-json guile-git guix)
|
||||
(with-imported-modules `(,@(source-module-closure
|
||||
`(,@modules
|
||||
(guix build utils))
|
||||
#:select? not-config?)
|
||||
#:select? module-to-import?)
|
||||
((guix config) => ,(make-config.scm)))
|
||||
#~(begin
|
||||
(use-modules (gnu installer record)
|
||||
|
@ -313,6 +322,8 @@ (define installer-builder
|
|||
(gnu installer timezone)
|
||||
(gnu installer user)
|
||||
(gnu installer newt)
|
||||
((gnu installer newt keymap)
|
||||
#:select (keyboard-layout->configuration))
|
||||
(guix i18n)
|
||||
(guix build utils)
|
||||
(ice-9 match))
|
||||
|
|
|
@ -1,5 +1,6 @@
|
|||
;;; GNU Guix --- Functional package management for GNU
|
||||
;;; Copyright © 2018 Mathieu Othacehe <m.othacehe@gmail.com>
|
||||
;;; Copyright © 2019 Ludovic Courtès <ludo@gnu.org>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
|
@ -27,7 +28,9 @@ (define-module (gnu installer newt keymap)
|
|||
#:use-module (srfi srfi-26)
|
||||
#:use-module (srfi srfi-34)
|
||||
#:use-module (srfi srfi-35)
|
||||
#:export (run-keymap-page))
|
||||
#:use-module (ice-9 match)
|
||||
#:export (run-keymap-page
|
||||
keyboard-layout->configuration))
|
||||
|
||||
(define (run-layout-page layouts layout->text)
|
||||
(let ((title (G_ "Layout")))
|
||||
|
@ -120,3 +123,11 @@ (define (format-result result)
|
|||
(list layout (or variant ""))))
|
||||
(format-result
|
||||
(run-installer-steps #:steps keymap-steps)))
|
||||
|
||||
(define (keyboard-layout->configuration keymap)
|
||||
"Return the operating system configuration snippet to install KEYMAP."
|
||||
(match keymap
|
||||
((name "")
|
||||
`((keyboard-layout (keyboard-layout ,name))))
|
||||
((name variant)
|
||||
`((keyboard-layout (keyboard-layout ,name ,variant))))))
|
||||
|
|
|
@ -1,5 +1,6 @@
|
|||
;;; GNU Guix --- Functional package management for GNU
|
||||
;;; Copyright © 2018 Mathieu Othacehe <m.othacehe@gmail.com>
|
||||
;;; Copyright © 2019 Ludovic Courtès <ludo@gnu.org>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
|
@ -29,6 +30,7 @@ (define-module (gnu installer newt page)
|
|||
draw-connecting-page
|
||||
run-input-page
|
||||
run-error-page
|
||||
run-confirmation-page
|
||||
run-listbox-selection-page
|
||||
run-scale-page
|
||||
run-checkbox-tree-page
|
||||
|
@ -141,6 +143,42 @@ (define (run-error-page text title)
|
|||
(newt-set-color COLORSET-ROOT "white" "blue")
|
||||
(destroy-form-and-pop form)))
|
||||
|
||||
(define* (run-confirmation-page text title
|
||||
#:key (exit-button-procedure (const #f)))
|
||||
"Run a page to inform the user of an error. The page contains the given TEXT
|
||||
to explain the error and an \"OK\" button to acknowledge the error. The title
|
||||
of the page is set to TITLE."
|
||||
(let* ((text-box
|
||||
(make-reflowed-textbox -1 -1 text 40
|
||||
#:flags FLAG-BORDER))
|
||||
(ok-button (make-button -1 -1 (G_ "Continue")))
|
||||
(exit-button (make-button -1 -1 (G_ "Exit")))
|
||||
(grid (vertically-stacked-grid
|
||||
GRID-ELEMENT-COMPONENT text-box
|
||||
GRID-ELEMENT-SUBGRID
|
||||
(horizontal-stacked-grid
|
||||
GRID-ELEMENT-COMPONENT ok-button
|
||||
GRID-ELEMENT-COMPONENT exit-button)))
|
||||
(form (make-form)))
|
||||
|
||||
(add-form-to-grid grid form #t)
|
||||
(make-wrapped-grid-window grid title)
|
||||
|
||||
(receive (exit-reason argument)
|
||||
(run-form form)
|
||||
(dynamic-wind
|
||||
(const #t)
|
||||
(lambda ()
|
||||
(case exit-reason
|
||||
((exit-component)
|
||||
(cond
|
||||
((components=? argument ok-button)
|
||||
#t)
|
||||
((components=? argument exit-button)
|
||||
(exit-button-procedure))))))
|
||||
(lambda ()
|
||||
(destroy-form-and-pop form))))))
|
||||
|
||||
(define* (run-listbox-selection-page #:key
|
||||
info-text
|
||||
title
|
||||
|
|
|
@ -1,5 +1,6 @@
|
|||
;;; GNU Guix --- Functional package management for GNU
|
||||
;;; Copyright © 2018 Mathieu Othacehe <m.othacehe@gmail.com>
|
||||
;;; Copyright © 2019 Ludovic Courtès <ludo@gnu.org>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
|
@ -53,7 +54,12 @@ (define (run-scheme-page)
|
|||
(car result)))
|
||||
|
||||
(define (draw-formatting-page)
|
||||
"Draw a page to indicate partitions are being formated."
|
||||
"Draw a page asking for confirmation, and then indicating that partitions
|
||||
are being formatted."
|
||||
(run-confirmation-page (G_ "We are about to format your hard disk. All \
|
||||
its data will be lost. Do you wish to continue?")
|
||||
(G_ "Format disk?")
|
||||
#:exit-button-procedure button-exit-action)
|
||||
(draw-info-page
|
||||
(format #f (G_ "Partition formatting is in progress, please wait."))
|
||||
(G_ "Preparing partitions")))
|
||||
|
|
|
@ -1,5 +1,6 @@
|
|||
;;; GNU Guix --- Functional package management for GNU
|
||||
;;; Copyright © 2018, 2019 Mathieu Othacehe <m.othacehe@gmail.com>
|
||||
;;; Copyright © 2019 Ludovic Courtès <ludo@gnu.org>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
|
@ -24,6 +25,10 @@ (define-module (gnu installer parted)
|
|||
#:use-module ((gnu build file-systems)
|
||||
#:select (read-partition-uuid
|
||||
read-luks-partition-uuid))
|
||||
#:use-module ((gnu build linux-modules)
|
||||
#:select (missing-modules))
|
||||
#:use-module ((gnu system linux-initrd)
|
||||
#:select (%base-initrd-modules))
|
||||
#:use-module (guix build syscalls)
|
||||
#:use-module (guix build utils)
|
||||
#:use-module (guix records)
|
||||
|
@ -1243,22 +1248,51 @@ (define (user-partition->mapped-device user-partition)
|
|||
(target ,label)
|
||||
(type luks-device-mapping))))
|
||||
|
||||
(define (root-user-partition? partition)
|
||||
"Return true if PARTITION is the root partition."
|
||||
(let ((mount-point (user-partition-mount-point partition)))
|
||||
(and mount-point
|
||||
(string=? mount-point "/"))))
|
||||
|
||||
(define (bootloader-configuration user-partitions)
|
||||
"Return the bootloader configuration field for USER-PARTITIONS."
|
||||
(let* ((root-partition
|
||||
(find (lambda (user-partition)
|
||||
(let ((mount-point
|
||||
(user-partition-mount-point user-partition)))
|
||||
(and mount-point
|
||||
(string=? mount-point "/"))))
|
||||
user-partitions))
|
||||
(let* ((root-partition (find root-user-partition?
|
||||
user-partitions))
|
||||
(root-partition-disk (user-partition-disk-file-name root-partition)))
|
||||
`((bootloader-configuration
|
||||
,@(if (efi-installation?)
|
||||
`((bootloader grub-efi-bootloader)
|
||||
(target ,(default-esp-mount-point)))
|
||||
`((bootloader grub-bootloader)
|
||||
(target ,root-partition-disk)))))))
|
||||
(target ,root-partition-disk)))
|
||||
|
||||
;; XXX: Assume we defined the 'keyboard-layout' field of
|
||||
;; <operating-system> right above.
|
||||
(keyboard-layout keyboard-layout)))))
|
||||
|
||||
(define (user-partition-missing-modules user-partitions)
|
||||
"Return the list of kernel modules missing from the default set of kernel
|
||||
modules to access USER-PARTITIONS."
|
||||
(let ((devices (filter user-partition-crypt-label user-partitions))
|
||||
(root (find root-user-partition? user-partitions)))
|
||||
(delete-duplicates
|
||||
(append-map (lambda (device)
|
||||
(catch 'system-error
|
||||
(lambda ()
|
||||
(missing-modules device %base-initrd-modules))
|
||||
(const '())))
|
||||
(delete-duplicates
|
||||
(map user-partition-file-name
|
||||
(cons root devices)))))))
|
||||
|
||||
(define (initrd-configuration user-partitions)
|
||||
"Return an 'initrd-modules' field with everything needed for
|
||||
USER-PARTITIONS, or return nothing."
|
||||
(match (user-partition-missing-modules user-partitions)
|
||||
(()
|
||||
'())
|
||||
((modules ...)
|
||||
`((initrd-modules ',modules)))))
|
||||
|
||||
(define (user-partitions->configuration user-partitions)
|
||||
"Return the configuration field for USER-PARTITIONS."
|
||||
|
@ -1266,10 +1300,11 @@ (define (user-partitions->configuration user-partitions)
|
|||
(swap-devices (map user-partition-file-name swap-user-partitions))
|
||||
(encrypted-partitions
|
||||
(filter user-partition-crypt-label user-partitions)))
|
||||
`(,@(if (null? swap-devices)
|
||||
`((bootloader ,@(bootloader-configuration user-partitions))
|
||||
,@(initrd-configuration user-partitions)
|
||||
,@(if (null? swap-devices)
|
||||
'()
|
||||
`((swap-devices (list ,@swap-devices))))
|
||||
(bootloader ,@(bootloader-configuration user-partitions))
|
||||
,@(if (null? encrypted-partitions)
|
||||
'()
|
||||
`((mapped-devices
|
||||
|
|
|
@ -38,13 +38,15 @@ (define %desktop-environments
|
|||
(list
|
||||
(desktop-environment
|
||||
(name "GNOME")
|
||||
(snippet '(gnome-desktop-service)))
|
||||
(snippet '(service gnome-desktop-service-type)))
|
||||
(desktop-environment
|
||||
(name "Xfce")
|
||||
;; TODO: Use 'xfce-desktop-service-type' when the 'guix' package provides
|
||||
;; it with a default value.
|
||||
(snippet '(xfce-desktop-service)))
|
||||
(desktop-environment
|
||||
(name "MATE")
|
||||
(snippet '(mate-desktop-service)))
|
||||
(snippet '(service mate-desktop-service-type)))
|
||||
(desktop-environment
|
||||
(name "Enlightenment")
|
||||
(snippet '(service enlightenment-desktop-service-type)))))
|
||||
|
|
|
@ -538,6 +538,7 @@ GNU_SYSTEM_MODULES = \
|
|||
%D%/system/accounts.scm \
|
||||
%D%/system/file-systems.scm \
|
||||
%D%/system/install.scm \
|
||||
%D%/system/keyboard.scm \
|
||||
%D%/system/linux-container.scm \
|
||||
%D%/system/linux-initrd.scm \
|
||||
%D%/system/locale.scm \
|
||||
|
@ -729,6 +730,7 @@ dist_patch_DATA = \
|
|||
%D%/packages/patches/doc++-segfault-fix.patch \
|
||||
%D%/packages/patches/docker-engine-test-noinstall.patch \
|
||||
%D%/packages/patches/docker-fix-tests.patch \
|
||||
%D%/packages/patches/docker-use-fewer-modprobes.patch \
|
||||
%D%/packages/patches/dovecot-trees-support-dovecot-2.3.patch \
|
||||
%D%/packages/patches/doxygen-test.patch \
|
||||
%D%/packages/patches/dvd+rw-tools-add-include.patch \
|
||||
|
@ -744,6 +746,7 @@ dist_patch_DATA = \
|
|||
%D%/packages/patches/emacs-source-date-epoch.patch \
|
||||
%D%/packages/patches/emacs-realgud-fix-configure-ac.patch \
|
||||
%D%/packages/patches/emacs-wordnut-require-adaptive-wrap.patch \
|
||||
%D%/packages/patches/emacs-zones-called-interactively.patch \
|
||||
%D%/packages/patches/enlightenment-fix-setuid-path.patch \
|
||||
%D%/packages/patches/erlang-man-path.patch \
|
||||
%D%/packages/patches/eudev-rules-directory.patch \
|
||||
|
@ -873,6 +876,7 @@ dist_patch_DATA = \
|
|||
%D%/packages/patches/gtk2-respect-GUIX_GTK2_PATH.patch \
|
||||
%D%/packages/patches/gtk2-respect-GUIX_GTK2_IM_MODULE_FILE.patch \
|
||||
%D%/packages/patches/gtk2-theme-paths.patch \
|
||||
%D%/packages/patches/gtk3-fix-deprecation-macro-use.patch \
|
||||
%D%/packages/patches/gtk3-respect-GUIX_GTK3_PATH.patch \
|
||||
%D%/packages/patches/gtk3-respect-GUIX_GTK3_IM_MODULE_FILE.patch \
|
||||
%D%/packages/patches/gtkglext-disable-disable-deprecated.patch \
|
||||
|
@ -1215,7 +1219,6 @@ dist_patch_DATA = \
|
|||
%D%/packages/patches/readline-6.2-CVE-2014-2524.patch \
|
||||
%D%/packages/patches/red-eclipse-remove-gamma-name-hack.patch \
|
||||
%D%/packages/patches/reposurgeon-add-missing-docbook-files.patch \
|
||||
%D%/packages/patches/reptyr-fix-gcc-7.patch \
|
||||
%D%/packages/patches/ripperx-missing-file.patch \
|
||||
%D%/packages/patches/rpcbind-CVE-2017-8779.patch \
|
||||
%D%/packages/patches/rtags-separate-rct.patch \
|
||||
|
|
|
@ -32,6 +32,7 @@ (define-module (gnu packages)
|
|||
mkdir-p))
|
||||
#:autoload (guix profiles) (packages->manifest)
|
||||
#:use-module (guix describe)
|
||||
#:use-module (guix deprecation)
|
||||
#:use-module (ice-9 vlist)
|
||||
#:use-module (ice-9 match)
|
||||
#:autoload (ice-9 binary-ports) (put-bytevector)
|
||||
|
@ -55,6 +56,7 @@ (define-module (gnu packages)
|
|||
fold-packages
|
||||
fold-available-packages
|
||||
|
||||
find-newest-available-packages
|
||||
find-packages-by-name
|
||||
find-package-locations
|
||||
find-best-packages-by-name
|
||||
|
@ -186,6 +188,29 @@ (define %patch-path
|
|||
directory))
|
||||
%load-path)))
|
||||
|
||||
;; This procedure is used by Emacs-Guix up to 0.5.1.1, so keep it for now.
|
||||
;; See <https://github.com/alezost/guix.el/issues/30>.
|
||||
(define-deprecated find-newest-available-packages
|
||||
find-packages-by-name
|
||||
(mlambda ()
|
||||
"Return a vhash keyed by package names, and with
|
||||
associated values of the form
|
||||
|
||||
(newest-version newest-package ...)
|
||||
|
||||
where the preferred package is listed first."
|
||||
(fold-packages (lambda (p r)
|
||||
(let ((name (package-name p))
|
||||
(version (package-version p)))
|
||||
(match (vhash-assoc name r)
|
||||
((_ newest-so-far . pkgs)
|
||||
(case (version-compare version newest-so-far)
|
||||
((>) (vhash-cons name `(,version ,p) r))
|
||||
((=) (vhash-cons name `(,version ,p ,@pkgs) r))
|
||||
((<) r)))
|
||||
(#f (vhash-cons name `(,version ,p) r)))))
|
||||
vlist-null)))
|
||||
|
||||
(define (fold-available-packages proc init)
|
||||
"Fold PROC over the list of available packages. For each available package,
|
||||
PROC is called along these lines:
|
||||
|
|
|
@ -475,8 +475,8 @@ (define-public mingetty
|
|||
(synopsis "Getty for the text console")
|
||||
(description
|
||||
"Small console getty that is started on the Linux text console,
|
||||
asks for a login name and then transfers over to 'login'. It is extended to
|
||||
allow automatic login and starting any app.")
|
||||
asks for a login name and then transfers over to @code{login}. It is extended
|
||||
to allow automatic login and starting any app.")
|
||||
(license license:gpl2+)))
|
||||
|
||||
(define-public net-base
|
||||
|
@ -1140,7 +1140,8 @@ (define (copy-man-page target)
|
|||
and it controls the roaming and IEEE 802.11 authentication/association of the
|
||||
WLAN driver.
|
||||
|
||||
This package provides the 'wpa_supplicant' daemon and the 'wpa_cli' command.")
|
||||
This package provides the @code{wpa_supplicant} daemon and the @code{wpa_cli}
|
||||
command.")
|
||||
|
||||
;; In practice, this is linked against Readline, which makes it GPLv3+.
|
||||
(license license:bsd-3)
|
||||
|
@ -2076,7 +2077,7 @@ (define-public di
|
|||
(home-page "https://www.gentoo.com/di/")
|
||||
(synopsis "Advanced df like disk information utility")
|
||||
(description
|
||||
"'di' is a disk information utility, displaying everything that your
|
||||
"@code{di} is a disk information utility, displaying everything that your
|
||||
@code{df} command does and more. It features the ability to display your disk
|
||||
usage in whatever format you prefer. It is designed to be highly portable and
|
||||
produce uniform output across heterogeneous networks.")
|
||||
|
@ -2918,7 +2919,8 @@ (define-public solaar
|
|||
(define-public lynis
|
||||
(package
|
||||
(name "lynis")
|
||||
(version "2.7.2")
|
||||
;; Also update the ‘lynis-sdk’ input to the commit matching this release.
|
||||
(version "2.7.3")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
|
@ -2927,7 +2929,7 @@ (define-public lynis
|
|||
(commit version)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "0dbbfk47dpxx7zpb98n4w3ls3z5di57qnr2nsgxjvp49gk9j3f6k"))
|
||||
(base32 "0md1w86i3fy9l78i98ijr5136nbhdiik2dxyw9qnzmvdlvkqmw70"))
|
||||
(modules '((guix build utils)))
|
||||
(snippet
|
||||
'(begin
|
||||
|
@ -2944,11 +2946,10 @@ (define-public lynis
|
|||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/CISOfy/lynis-sdk")
|
||||
(commit "3310aef4f2b3dd97d166c96ad0253c89c4ad390d")))
|
||||
(commit "c166b6a67a53b24f5c1fecd4eb5033f54279a5b3")))
|
||||
(file-name (git-file-name "lynis-sdk" version))
|
||||
(sha256
|
||||
(base32
|
||||
"0sqsrm5wal742yrwps8bqb8a8lxd93n4b93n3kkm1b30nbs25g7y"))))))
|
||||
(base32 "0wa2azcmx6pj9axvq1jmwmz7826rj1c214asmmn1hq7pxmfw62zr"))))))
|
||||
(arguments
|
||||
`(#:phases
|
||||
(modify-phases %standard-phases
|
||||
|
|
|
@ -131,7 +131,7 @@ (define-public gnuastro
|
|||
(define-public stellarium
|
||||
(package
|
||||
(name "stellarium")
|
||||
(version "0.18.3")
|
||||
(version "0.19.0")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://github.com/Stellarium/" name
|
||||
|
@ -139,7 +139,7 @@ (define-public stellarium
|
|||
"/" name "-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1mm8rjcb8j56m3kfigpix5vxviw1616kvl9ws2s3s5gdyngljrc3"))))
|
||||
"1mjjqcpgm5a1022x0mpqj3v6qkvpm9wqm1hqyg0mlypc5681va8a"))))
|
||||
(build-system cmake-build-system)
|
||||
(inputs
|
||||
`(("qtbase" ,qtbase)
|
||||
|
@ -161,13 +161,6 @@ (define-public stellarium
|
|||
(assoc-ref %build-inputs "qtserialport")
|
||||
"/include/qt5"))
|
||||
#:phases (modify-phases %standard-phases
|
||||
;; Skip a test that assumes Stellarium is "installed":
|
||||
;; https://bugs.gentoo.org/674472
|
||||
(add-after 'unpack 'patch-tests
|
||||
(lambda _
|
||||
(substitute* "src/tests/testEphemeris.cpp"
|
||||
(("ifndef Q_OS_WIN") "if 0"))
|
||||
#t))
|
||||
(add-before 'check 'set-offscreen-display
|
||||
(lambda _
|
||||
;; make Qt render "offscreen", required for tests
|
||||
|
|
|
@ -943,7 +943,7 @@ (define-public fil-plugins
|
|||
The 2nd order resonant filters are implemented using a Mitra-Regalia style
|
||||
lattice filter, which is stable even while parameters are being changed.
|
||||
|
||||
All switches and controls are internally smoothed, so they can be used 'live'
|
||||
All switches and controls are internally smoothed, so they can be used @code{live}
|
||||
without any clicks or zipper noises. This makes this plugin suitable for use
|
||||
in systems that allow automation of plugin control ports, such as Ardour, or
|
||||
for stage use.")
|
||||
|
@ -2130,11 +2130,7 @@ (define-public qjackctl
|
|||
"0wlmbb9m7cf3wr7c2h2hji18592x2b119m7mx85wksjs6rjaq2mj"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
'(#:tests? #f ; no check target
|
||||
;; Disable xunique to prevent X hanging when starting qjackctl in
|
||||
;; tiling window managers such as StumpWM or i3
|
||||
;; (see https://github.com/rncbc/qjackctl/issues/13).
|
||||
#:configure-flags '("--disable-xunique")))
|
||||
'(#:tests? #f)) ; no check target
|
||||
(inputs
|
||||
`(("jack" ,jack-1)
|
||||
("alsa-lib" ,alsa-lib)
|
||||
|
|
|
@ -600,9 +600,9 @@ (define* (make-ld-wrapper name #:key
|
|||
#t)))))
|
||||
(synopsis "The linker wrapper")
|
||||
(description
|
||||
"The linker wrapper (or 'ld-wrapper') wraps the linker to add any
|
||||
missing '-rpath' flags, and to detect any misuse of libraries outside of the
|
||||
store.")
|
||||
"The linker wrapper (or @code{ld-wrapper}) wraps the linker to add any
|
||||
missing @code{-rpath} flags, and to detect any misuse of libraries outside of
|
||||
the store.")
|
||||
(home-page "https://www.gnu.org/software/guix//")
|
||||
(license gpl3+)))
|
||||
|
||||
|
@ -1019,8 +1019,8 @@ (define-public (make-glibc-locales glibc)
|
|||
(synopsis "All the locales supported by the GNU C Library")
|
||||
(description
|
||||
"This package provides all the locales supported by the GNU C Library,
|
||||
more than 400 in total. To use them set the 'LOCPATH' environment variable to
|
||||
the 'share/locale' sub-directory of this package.")
|
||||
more than 400 in total. To use them set the @code{LOCPATH} environment variable
|
||||
to the @code{share/locale} sub-directory of this package.")
|
||||
(outputs '("out")) ;110+ MiB
|
||||
(native-search-paths '())
|
||||
(arguments
|
||||
|
|
File diff suppressed because it is too large
Load diff
|
@ -2325,23 +2325,21 @@ (define-public python-dnaio
|
|||
(define-public cutadapt
|
||||
(package
|
||||
(name "cutadapt")
|
||||
(version "1.18")
|
||||
(version "2.1")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/marcelm/cutadapt.git")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "cutadapt" version))
|
||||
(sha256
|
||||
(base32
|
||||
"08bbfwyc0kvcd95jf2s95xiv9s3cbsxm39ydl0qck3fw3cviwxpg"))))
|
||||
"1vqmsfkm6llxzmsz9wcfcvzx9a9f8iabvwik2rbyn7nc4wm25z89"))))
|
||||
(build-system python-build-system)
|
||||
(inputs
|
||||
`(("python-dnaio" ,python-dnaio)
|
||||
("python-xopen" ,python-xopen)))
|
||||
(native-inputs
|
||||
`(("python-cython" ,python-cython)
|
||||
("python-pytest" ,python-pytest)))
|
||||
("python-pytest" ,python-pytest)
|
||||
("python-setuptools-scm" ,python-setuptools-scm)))
|
||||
(home-page "https://cutadapt.readthedocs.io/en/stable/")
|
||||
(synopsis "Remove adapter sequences from nucleotide sequencing reads")
|
||||
(description
|
||||
|
@ -6792,14 +6790,14 @@ (define-public r-annotationforge
|
|||
(define-public r-rbgl
|
||||
(package
|
||||
(name "r-rbgl")
|
||||
(version "1.58.1")
|
||||
(version "1.58.2")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (bioconductor-uri "RBGL" version))
|
||||
(sha256
|
||||
(base32
|
||||
"1l5x2icv9di1lr3gqfi0vjnyd9xc3l77yc42ippqd4cadj3d1pzf"))))
|
||||
"0vhnh47pswnp27c0zqcbnnsayfmq3cxcgrs9g860555ldqfl4cyl"))))
|
||||
(properties `((upstream-name . "RBGL")))
|
||||
(build-system r-build-system)
|
||||
(propagated-inputs `(("r-graph" ,r-graph)))
|
||||
|
@ -7014,29 +7012,6 @@ (define-public r-grohmm
|
|||
"This package provides a pipeline for the analysis of GRO-seq data.")
|
||||
(license license:gpl3+)))
|
||||
|
||||
(define-public r-sparql
|
||||
(package
|
||||
(name "r-sparql")
|
||||
(version "1.16")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (cran-uri "SPARQL" version))
|
||||
(sha256
|
||||
(base32
|
||||
"0gak1q06yyhdmcxb2n3v0h9gr1vqd0viqji52wpw211qp6r6dcrc"))))
|
||||
(properties `((upstream-name . "SPARQL")))
|
||||
(build-system r-build-system)
|
||||
(propagated-inputs
|
||||
`(("r-rcurl" ,r-rcurl)
|
||||
("r-xml" ,r-xml)))
|
||||
(home-page "https://cran.r-project.org/web/packages/SPARQL")
|
||||
(synopsis "SPARQL client for R")
|
||||
(description "This package provides an interface to use SPARQL to pose
|
||||
SELECT or UPDATE queries to an end-point.")
|
||||
;; The only license indication is found in the DESCRIPTION file,
|
||||
;; which states GPL-3. So we cannot assume GPLv3+.
|
||||
(license license:gpl3)))
|
||||
|
||||
(define-public vsearch
|
||||
(package
|
||||
(name "vsearch")
|
||||
|
@ -7243,32 +7218,6 @@ (define-public bioruby
|
|||
;; (LGPLv2.1+) and scripts in samples (which have GPL2 and GPL2+)
|
||||
(license (list license:ruby license:lgpl2.1+ license:gpl2+ ))))
|
||||
|
||||
(define-public r-acsnminer
|
||||
(package
|
||||
(name "r-acsnminer")
|
||||
(version "0.16.8.25")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (cran-uri "ACSNMineR" version))
|
||||
(sha256
|
||||
(base32
|
||||
"0gh604s8qall6zfjlwcg2ilxjvz08dplf9k5g47idhv43scm748l"))))
|
||||
(properties `((upstream-name . "ACSNMineR")))
|
||||
(build-system r-build-system)
|
||||
(propagated-inputs
|
||||
`(("r-ggplot2" ,r-ggplot2)
|
||||
("r-gridextra" ,r-gridextra)))
|
||||
(home-page "https://cran.r-project.org/web/packages/ACSNMineR")
|
||||
(synopsis "Gene enrichment analysis")
|
||||
(description
|
||||
"This package provides tools to compute and represent gene set enrichment
|
||||
or depletion from your data based on pre-saved maps from the @dfn{Atlas of
|
||||
Cancer Signalling Networks} (ACSN) or user imported maps. The gene set
|
||||
enrichment can be run with hypergeometric test or Fisher exact test, and can
|
||||
use multiple corrections. Visualization of data can be done either by
|
||||
barplots or heatmaps.")
|
||||
(license license:gpl2+)))
|
||||
|
||||
(define-public r-biocinstaller
|
||||
(package
|
||||
(name "r-biocinstaller")
|
||||
|
@ -7315,30 +7264,6 @@ (define-public r-biocviews
|
|||
also known as views, in a controlled vocabulary.")
|
||||
(license license:artistic2.0)))
|
||||
|
||||
(define-public r-bookdown
|
||||
(package
|
||||
(name "r-bookdown")
|
||||
(version "0.9")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (cran-uri "bookdown" version))
|
||||
(sha256
|
||||
(base32
|
||||
"0vg1s1w0l9pm95asqb21yf39mfk1nc9rdhmlys9xwr7p7i7rsz32"))))
|
||||
(build-system r-build-system)
|
||||
(propagated-inputs
|
||||
`(("r-htmltools" ,r-htmltools)
|
||||
("r-knitr" ,r-knitr)
|
||||
("r-rmarkdown" ,r-rmarkdown)
|
||||
("r-tinytex" ,r-tinytex)
|
||||
("r-yaml" ,r-yaml)
|
||||
("r-xfun" ,r-xfun)))
|
||||
(home-page "https://github.com/rstudio/bookdown")
|
||||
(synopsis "Authoring books and technical documents with R markdown")
|
||||
(description "This package provides output formats and utilities for
|
||||
authoring books and technical documents with R Markdown.")
|
||||
(license license:gpl3)))
|
||||
|
||||
(define-public r-biocstyle
|
||||
(package
|
||||
(name "r-biocstyle")
|
||||
|
@ -7412,29 +7337,6 @@ (define-public r-bioccheck
|
|||
checks on R packages that are to be submitted to the Bioconductor repository.")
|
||||
(license license:artistic2.0)))
|
||||
|
||||
(define-public r-optparse
|
||||
(package
|
||||
(name "r-optparse")
|
||||
(version "1.6.1")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (cran-uri "optparse" version))
|
||||
(sha256
|
||||
(base32
|
||||
"04vyb6dhcga30mvghsg1p052jmf69xqxkvh3hzqz7dscyppy76w1"))))
|
||||
(build-system r-build-system)
|
||||
(propagated-inputs
|
||||
`(("r-getopt" ,r-getopt)))
|
||||
(home-page
|
||||
"https://github.com/trevorld/optparse")
|
||||
(synopsis "Command line option parser")
|
||||
(description
|
||||
"This package provides a command line parser inspired by Python's
|
||||
@code{optparse} library to be used with Rscript to write shebang scripts
|
||||
that accept short and long options.")
|
||||
(license license:gpl2+)))
|
||||
|
||||
(define-public r-s4vectors
|
||||
(package
|
||||
(name "r-s4vectors")
|
||||
|
@ -7462,31 +7364,6 @@ (define-public r-s4vectors
|
|||
S4Vectors package itself.")
|
||||
(license license:artistic2.0)))
|
||||
|
||||
(define-public r-seqinr
|
||||
(package
|
||||
(name "r-seqinr")
|
||||
(version "3.4-5")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (cran-uri "seqinr" version))
|
||||
(sha256
|
||||
(base32
|
||||
"17zv0n5cji17izwmwg0jcbxbjl3w5rls91w15svcnlpxjms38ahn"))))
|
||||
(build-system r-build-system)
|
||||
(propagated-inputs
|
||||
`(("r-ade4" ,r-ade4)
|
||||
("r-segmented" ,r-segmented)))
|
||||
(inputs
|
||||
`(("zlib" ,zlib)))
|
||||
(home-page "http://seqinr.r-forge.r-project.org/")
|
||||
(synopsis "Biological sequences retrieval and analysis")
|
||||
(description
|
||||
"This package provides tools for exploratory data analysis and data
|
||||
visualization of biological sequence (DNA and protein) data. It also includes
|
||||
utilities for sequence data management under the ACNUC system.")
|
||||
(license license:gpl2+)))
|
||||
|
||||
(define-public r-iranges
|
||||
(package
|
||||
(name "r-iranges")
|
||||
|
@ -7888,10 +7765,10 @@ (define-public r-rsamtools
|
|||
(home-page "https://bioconductor.org/packages/release/bioc/html/Rsamtools.html")
|
||||
(synopsis "Interface to samtools, bcftools, and tabix")
|
||||
(description
|
||||
"This package provides an interface to the 'samtools', 'bcftools', and
|
||||
'tabix' utilities for manipulating SAM (Sequence Alignment / Map), FASTA,
|
||||
binary variant call (BCF) and compressed indexed tab-delimited (tabix)
|
||||
files.")
|
||||
"This package provides an interface to the @code{samtools},
|
||||
@code{bcftools}, and @code{tabix} utilities for manipulating SAM (Sequence
|
||||
Alignment / Map), FASTA, binary variant call (BCF) and compressed indexed
|
||||
tab-delimited (tabix) files.")
|
||||
(license license:expat)))
|
||||
|
||||
(define-public r-delayedarray
|
||||
|
@ -8039,13 +7916,13 @@ (define-public r-rtracklayer
|
|||
(define-public r-genomicfeatures
|
||||
(package
|
||||
(name "r-genomicfeatures")
|
||||
(version "1.34.6")
|
||||
(version "1.34.7")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (bioconductor-uri "GenomicFeatures" version))
|
||||
(sha256
|
||||
(base32
|
||||
"1cz7qx324dmsrkzyhm956cfgr08gpily5rpym7hc8zz5kbl6i3ra"))))
|
||||
"100y8cx9xfglbn36k25y09y0qfwm0qpb4b01qhk367832rqz5dhz"))))
|
||||
(properties
|
||||
`((upstream-name . "GenomicFeatures")))
|
||||
(build-system r-build-system)
|
||||
|
@ -8587,45 +8464,6 @@ (define-public r-mutationalpatterns
|
|||
in SNV base substitution data.")
|
||||
(license license:expat)))
|
||||
|
||||
(define-public r-wgcna
|
||||
(package
|
||||
(name "r-wgcna")
|
||||
(version "1.66")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (cran-uri "WGCNA" version))
|
||||
(sha256
|
||||
(base32
|
||||
"0rhnyhzfn93yp24jz9v6dzrmyizwzdw070a7idm0k33w1cm8sjqv"))))
|
||||
(properties `((upstream-name . "WGCNA")))
|
||||
(build-system r-build-system)
|
||||
(propagated-inputs
|
||||
`(("r-annotationdbi" ,r-annotationdbi)
|
||||
("r-doparallel" ,r-doparallel)
|
||||
("r-dynamictreecut" ,r-dynamictreecut)
|
||||
("r-fastcluster" ,r-fastcluster)
|
||||
("r-foreach" ,r-foreach)
|
||||
("r-go-db" ,r-go-db)
|
||||
("r-hmisc" ,r-hmisc)
|
||||
("r-impute" ,r-impute)
|
||||
("r-rcpp" ,r-rcpp)
|
||||
("r-robust" ,r-robust)
|
||||
("r-survival" ,r-survival)
|
||||
("r-matrixstats" ,r-matrixstats)
|
||||
("r-preprocesscore" ,r-preprocesscore)))
|
||||
(home-page
|
||||
"http://www.genetics.ucla.edu/labs/horvath/CoexpressionNetwork/Rpackages/WGCNA/")
|
||||
(synopsis "Weighted correlation network analysis")
|
||||
(description
|
||||
"This package provides functions necessary to perform Weighted
|
||||
Correlation Network Analysis on high-dimensional data. It includes functions
|
||||
for rudimentary data cleaning, construction and summarization of correlation
|
||||
networks, module identification and functions for relating both variables and
|
||||
modules to sample traits. It also includes a number of utility functions for
|
||||
data manipulation and visualization.")
|
||||
(license license:gpl2+)))
|
||||
|
||||
(define-public r-chipkernels
|
||||
(let ((commit "c9cfcacb626b1221094fb3490ea7bac0fd625372")
|
||||
(revision "1"))
|
||||
|
@ -8693,39 +8531,6 @@ (define-public r-seqgl
|
|||
factors bound at the specific regions.")
|
||||
(license license:gpl2+)))
|
||||
|
||||
(define-public r-gkmsvm
|
||||
(package
|
||||
(name "r-gkmsvm")
|
||||
(version "0.79.0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (cran-uri "gkmSVM" version))
|
||||
(sha256
|
||||
(base32
|
||||
"04dakbgfvfalz4rm4fvvybp506dn5fbj5g86ybfhrc6wywjllsz3"))))
|
||||
(properties `((upstream-name . "gkmSVM")))
|
||||
(build-system r-build-system)
|
||||
(propagated-inputs
|
||||
`(("r-biocgenerics" ,r-biocgenerics)
|
||||
("r-biostrings" ,r-biostrings)
|
||||
("r-genomeinfodb" ,r-genomeinfodb)
|
||||
("r-genomicranges" ,r-genomicranges)
|
||||
("r-iranges" ,r-iranges)
|
||||
("r-kernlab" ,r-kernlab)
|
||||
("r-rcpp" ,r-rcpp)
|
||||
("r-rocr" ,r-rocr)
|
||||
("r-rtracklayer" ,r-rtracklayer)
|
||||
("r-s4vectors" ,r-s4vectors)
|
||||
("r-seqinr" ,r-seqinr)))
|
||||
(home-page "https://cran.r-project.org/web/packages/gkmSVM")
|
||||
(synopsis "Gapped-kmer support vector machine")
|
||||
(description
|
||||
"This R package provides tools for training gapped-kmer SVM classifiers
|
||||
for DNA and protein sequences. This package supports several sequence
|
||||
kernels, including: gkmSVM, kmer-SVM, mismatch kernel and wildcard kernel.")
|
||||
(license license:gpl2+)))
|
||||
|
||||
(define-public r-tximport
|
||||
(package
|
||||
(name "r-tximport")
|
||||
|
@ -10384,14 +10189,14 @@ (define-public r-ldblock
|
|||
(define-public r-gqtlstats
|
||||
(package
|
||||
(name "r-gqtlstats")
|
||||
(version "1.14.0")
|
||||
(version "1.14.1")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (bioconductor-uri "gQTLstats" version))
|
||||
(sha256
|
||||
(base32
|
||||
"1sg9kw59dlayj7qxql9pd93d4hmml504sa3kkfpzfh3xri7m5pxf"))))
|
||||
"1rkbnb3h02fdksc4nacqvmq4jgbj9fz4hm7j51yr2ggcgcykwraa"))))
|
||||
(properties `((upstream-name . "gQTLstats")))
|
||||
(build-system r-build-system)
|
||||
(propagated-inputs
|
||||
|
@ -10625,14 +10430,14 @@ (define-public r-hdf5array
|
|||
(define-public r-rhdf5lib
|
||||
(package
|
||||
(name "r-rhdf5lib")
|
||||
(version "1.4.2")
|
||||
(version "1.4.3")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (bioconductor-uri "Rhdf5lib" version))
|
||||
(sha256
|
||||
(base32
|
||||
"06bxd3wz8lrvh2hzvmjpdv4lvzj5lz9353bw5b3zb98cb8w9r2j5"))
|
||||
"0hjhjvg2kss71fkmxlbgnyyy1agwzgq57rxkgkm4riw82x2rvw7q"))
|
||||
(modules '((guix build utils)))
|
||||
(snippet
|
||||
'(begin
|
||||
|
@ -10861,14 +10666,14 @@ (define-public r-delayedmatrixstats
|
|||
(define-public r-phangorn
|
||||
(package
|
||||
(name "r-phangorn")
|
||||
(version "2.4.0")
|
||||
(version "2.5.3")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (cran-uri "phangorn" version))
|
||||
(sha256
|
||||
(base32
|
||||
"0xc8k552nxczy19jr0xjjagrzc8x6lafasgk2c099ls8bc1yml1i"))))
|
||||
"1bv86yfk5r015s7ij6v4zz7bagwrw9m13yfs5853drxb19d5h1m3"))))
|
||||
(build-system r-build-system)
|
||||
(propagated-inputs
|
||||
`(("r-ape" ,r-ape)
|
||||
|
@ -11075,23 +10880,31 @@ (define-public ritornello
|
|||
(define-public trim-galore
|
||||
(package
|
||||
(name "trim-galore")
|
||||
(version "0.4.5")
|
||||
(version "0.6.1")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/FelixKrueger/TrimGalore.git")
|
||||
(commit version)))
|
||||
(file-name (string-append name "-" version "-checkout"))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"0x5892l48c816pf00wmnz5vq0zq6170d3xc8zrxncd4jcz7h1p71"))))
|
||||
"1y31wbxwkm9xqzr5zv1pk5q418whnmlmgmfyxxpnl12h83m2i9iv"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
`(#:tests? #f ; no tests
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(delete 'configure)
|
||||
(replace 'configure
|
||||
(lambda _
|
||||
;; Trim Galore tries to figure out what version of Python
|
||||
;; cutadapt is using by looking at the shebang. Of course that
|
||||
;; doesn't work, because cutadapt is wrapped in a shell script.
|
||||
(substitute* "trim_galore"
|
||||
(("my \\$python_return.*")
|
||||
"my $python_return = \"Python 3.999\";\n"))
|
||||
#t))
|
||||
(delete 'build)
|
||||
(add-after 'unpack 'hardcode-tool-references
|
||||
(lambda* (#:key inputs #:allow-other-keys)
|
||||
|
@ -11100,14 +10913,18 @@ (define-public trim-galore
|
|||
(string-append "$path_to_cutadapt = '"
|
||||
(assoc-ref inputs "cutadapt")
|
||||
"/bin/cutadapt'"))
|
||||
(("\\| gzip")
|
||||
(string-append "| "
|
||||
(("\\$compression_path = \"gzip\"")
|
||||
(string-append "$compression_path = \""
|
||||
(assoc-ref inputs "gzip")
|
||||
"/bin/gzip"))
|
||||
"/bin/gzip\""))
|
||||
(("\"gunzip")
|
||||
(string-append "\""
|
||||
(assoc-ref inputs "gzip")
|
||||
"/bin/gunzip")))
|
||||
"/bin/gunzip"))
|
||||
(("\"pigz")
|
||||
(string-append "\""
|
||||
(assoc-ref inputs "pigz")
|
||||
"/bin/pigz")))
|
||||
#t))
|
||||
(replace 'install
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
|
@ -11119,6 +10936,7 @@ (define-public trim-galore
|
|||
(inputs
|
||||
`(("gzip" ,gzip)
|
||||
("perl" ,perl)
|
||||
("pigz" ,pigz)
|
||||
("cutadapt" ,cutadapt)))
|
||||
(native-inputs
|
||||
`(("unzip" ,unzip)))
|
||||
|
@ -13461,15 +13279,41 @@ (define-public find-circ
|
|||
(define-public python-scanpy
|
||||
(package
|
||||
(name "python-scanpy")
|
||||
(version "1.2.2")
|
||||
(version "1.4")
|
||||
;; Fetch from git because the pypi tarball does not include tests.
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "scanpy" version))
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/theislab/scanpy.git")
|
||||
(commit version)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"1ak7bxms5a0yvf65prppq2g38clkv7c7jnjbnfpkh3xxv7q512jz"))))
|
||||
"0zn6x6c0cnm1a20i6isigwb51g3pr9zpjk8r1minjqnxi5yc9pm4"))))
|
||||
(build-system python-build-system)
|
||||
(arguments
|
||||
`(#:phases
|
||||
(modify-phases %standard-phases
|
||||
(replace 'check
|
||||
(lambda* (#:key inputs #:allow-other-keys)
|
||||
;; These tests require Internet access.
|
||||
(delete-file-recursively "scanpy/tests/notebooks")
|
||||
(delete-file "scanpy/tests/test_clustering.py")
|
||||
|
||||
;; TODO: No module named 'louvain'
|
||||
(delete-file "scanpy/tests/test_rank_genes_groups_logreg.py")
|
||||
|
||||
;; TODO: I can't get the plotting tests to work, even with Xvfb.
|
||||
(delete-file "scanpy/tests/test_plotting.py")
|
||||
(delete-file "scanpy/tests/test_preprocessing.py")
|
||||
(delete-file "scanpy/tests/test_read_10x.py")
|
||||
|
||||
(setenv "PYTHONPATH"
|
||||
(string-append (getcwd) ":"
|
||||
(getenv "PYTHONPATH")))
|
||||
(invoke "pytest")
|
||||
#t)))))
|
||||
(propagated-inputs
|
||||
`(("python-anndata" ,python-anndata)
|
||||
("python-igraph" ,python-igraph)
|
||||
|
@ -13485,7 +13329,9 @@ (define-public python-scanpy
|
|||
("python-seaborn" ,python-seaborn)
|
||||
("python-h5py" ,python-h5py)
|
||||
("python-tables" ,python-tables)))
|
||||
(home-page "http://github.com/theislab/scanpy")
|
||||
(native-inputs
|
||||
`(("python-pytest" ,python-pytest)))
|
||||
(home-page "https://github.com/theislab/scanpy")
|
||||
(synopsis "Single-Cell Analysis in Python.")
|
||||
(description "Scanpy is a scalable toolkit for analyzing single-cell gene
|
||||
expression data. It includes preprocessing, visualization, clustering,
|
||||
|
@ -13494,6 +13340,38 @@ (define-public python-scanpy
|
|||
million cells.")
|
||||
(license license:bsd-3)))
|
||||
|
||||
(define-public python-bbknn
|
||||
(package
|
||||
(name "python-bbknn")
|
||||
(version "1.3.1")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "bbknn" version))
|
||||
(sha256
|
||||
(base32
|
||||
"1qgdganvj3lyxj84v7alm23b9vqhwpn8z0115qndpnpy90qxynwz"))))
|
||||
(build-system python-build-system)
|
||||
(propagated-inputs
|
||||
`(("python-annoy" ,python-annoy)
|
||||
("python-cython" ,python-cython)
|
||||
("python-faiss" ,python-faiss)
|
||||
("python-numpy" ,python-numpy)
|
||||
("python-scanpy" ,python-scanpy)))
|
||||
(home-page "https://github.com/Teichlab/bbknn")
|
||||
(synopsis "Batch balanced KNN")
|
||||
(description "BBKNN is a batch effect removal tool that can be directly
|
||||
used in the Scanpy workflow. It serves as an alternative to
|
||||
@code{scanpy.api.pp.neighbors()}, with both functions creating a neighbour
|
||||
graph for subsequent use in clustering, pseudotime and UMAP visualisation. If
|
||||
technical artifacts are present in the data, they will make it challenging to
|
||||
link corresponding cell types across different batches. BBKNN actively
|
||||
combats this effect by splitting your data into batches and finding a smaller
|
||||
number of neighbours for each cell within each of the groups. This helps
|
||||
create connections between analogous cells in different batches without
|
||||
altering the counts or PCA space.")
|
||||
(license license:expat)))
|
||||
|
||||
(define-public gffcompare
|
||||
(let ((commit "be56ef4349ea3966c12c6397f85e49e047361c41")
|
||||
(revision "1"))
|
||||
|
|
|
@ -1,6 +1,6 @@
|
|||
;;; GNU Guix --- Functional package management for GNU
|
||||
;;; Copyright © 2016, 2018 Ludovic Courtès <ludo@gnu.org>
|
||||
;;; Copyright © 2016, 2017, 2018 Ricardo Wurmus <rekado@elephly.net>
|
||||
;;; Copyright © 2016, 2017, 2018, 2019 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>
|
||||
|
@ -38,7 +38,8 @@ (define-module (gnu packages c)
|
|||
#:use-module (gnu packages python)
|
||||
#:use-module (gnu packages autotools)
|
||||
#:use-module (gnu packages gettext)
|
||||
#:use-module (gnu packages pkg-config))
|
||||
#:use-module (gnu packages pkg-config)
|
||||
#:use-module (gnu packages xml))
|
||||
|
||||
(define-public tcc
|
||||
(package
|
||||
|
@ -257,3 +258,32 @@ (define-public libbytesize
|
|||
every project that needs to deal with sizes in bytes. It is written in the C
|
||||
language with thin bindings for other languages.")
|
||||
(license license:lgpl2.1+)))
|
||||
|
||||
(define-public udunits
|
||||
(package
|
||||
(name "udunits")
|
||||
(version "2.2.26")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "ftp://ftp.unidata.ucar.edu/pub/udunits/"
|
||||
"udunits-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0v9mqw4drnkzkm57331ail6yvs9485jmi37s40lhvmf7r5lli3rn"))))
|
||||
(build-system gnu-build-system)
|
||||
(inputs
|
||||
`(("expat" ,expat)))
|
||||
(home-page "https://www.unidata.ucar.edu/software/udunits/")
|
||||
(synopsis "C library for units of physical quantities and value-conversion utils")
|
||||
(description
|
||||
"The UDUNITS-2 package provides support for units of physical quantities.
|
||||
Its three main components are:
|
||||
|
||||
@enumerate
|
||||
@item @code{udunits2lib}, a C library for units of physical quantities;
|
||||
@item @code{udunits2prog}, a utility for obtaining the definition of a unit
|
||||
and for converting numeric values between compatible units; and
|
||||
@item an extensive database of units.
|
||||
@end enumerate\n")
|
||||
;; Like the BSD-3 license but with an extra anti patent clause.
|
||||
(license (license:non-copyleft "file://COPYRIGHT"))))
|
||||
|
|
|
@ -96,13 +96,13 @@ (define-public libical
|
|||
(define-public khal
|
||||
(package
|
||||
(name "khal")
|
||||
(version "0.9.10")
|
||||
(version "0.10.0")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "khal" version))
|
||||
(sha256
|
||||
(base32
|
||||
"03h0j0d3xyqh98x5v2gv63wv3g91hip3vsaxvybsn5iz331d23h4"))))
|
||||
"1p49f3g25x900vk32spjbr2aipj12kcbhayny2vwhdpkjlv6k396"))))
|
||||
(build-system python-build-system)
|
||||
(arguments
|
||||
`(#:phases (modify-phases %standard-phases
|
||||
|
@ -122,22 +122,14 @@ (define-public khal
|
|||
(setenv "TZ"
|
||||
(string-append (assoc-ref inputs "tzdata")
|
||||
"/share/zoneinfo/Zulu"))
|
||||
(invoke "py.test" "tests" "-k"
|
||||
(string-append
|
||||
;; These tests are known to fail in when not
|
||||
;; running in a TTY:
|
||||
;; https://github.com/pimutils/khal/issues/683
|
||||
"not test_printics_read_from_stdin "
|
||||
"and not test_import_from_stdin "
|
||||
;; https://github.com/pimutils/khal/issues/825
|
||||
"and not test_description_and_location_and_categories")))))))
|
||||
(invoke "py.test" "tests"))))))
|
||||
(native-inputs
|
||||
`(("python-pytest" ,python-pytest)
|
||||
("python-pytest-cov" ,python-pytest-cov)
|
||||
("python-setuptools-scm" ,python-setuptools-scm)
|
||||
;; Required for tests
|
||||
("python-freezegun" ,python-freezegun)
|
||||
("tzdata" ,tzdata)
|
||||
("tzdata" ,tzdata-for-tests)
|
||||
("vdirsyncer" ,vdirsyncer)
|
||||
;; Required to build manpage
|
||||
("python-sphinxcontrib-newsfeed" ,python-sphinxcontrib-newsfeed)
|
||||
|
|
|
@ -8,7 +8,7 @@
|
|||
;;; Copyright © 2016 Marius Bakke <mbakke@fastmail.com>
|
||||
;;; Copyright © 2017 John Darrington <jmd@gnu.org>
|
||||
;;; Copyright © 2017 Thomas Danckaert <post@thomasdanckaert.be>
|
||||
;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr>
|
||||
;;; Copyright © 2017, 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr>
|
||||
;;; Copyright © 2017 ng0 <ng0@n0.is>
|
||||
;;; Copyright © 2018 Oleg Pykhalov <go.wigust@gmail.com>
|
||||
;;; Copyright © 2018, 2019 Ricardo Wurmus <rekado@elephly.net>
|
||||
|
@ -336,13 +336,15 @@ (define-public dvdisaster
|
|||
(package
|
||||
(name "dvdisaster")
|
||||
(version "0.79.5")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "http://dvdisaster.net/downloads/dvdisaster-"
|
||||
version ".tar.bz2"))
|
||||
(sha256
|
||||
(base32
|
||||
"0f8gjnia2fxcbmhl8b3qkr5b7idl8m855dw7xw2fnmbqwvcm6k4w"))))
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
;; Update this (and update HOME-PAGE) when/if one reappears.
|
||||
(uri (string-append "https://web.archive.org/web/20180428070843/"
|
||||
"http://dvdisaster.net/downloads/dvdisaster-"
|
||||
version ".tar.bz2"))
|
||||
(sha256
|
||||
(base32 "0f8gjnia2fxcbmhl8b3qkr5b7idl8m855dw7xw2fnmbqwvcm6k4w"))))
|
||||
(build-system gnu-build-system)
|
||||
(inputs
|
||||
`(("gtk+" ,gtk+-2)))
|
||||
|
@ -384,7 +386,8 @@ (define-public dvdisaster
|
|||
(copy-file "contrib/dvdisaster48.xpm"
|
||||
(string-append datadir "/pixmaps/dvdisaster.xpm"))
|
||||
#t))))))
|
||||
(home-page "http://dvdisaster.net/en/index.html")
|
||||
(home-page (string-append "https://web.archive.org/web/20180428070843/"
|
||||
"http://dvdisaster.net/en/index.html"))
|
||||
(synopsis "Error correcting codes for optical media images")
|
||||
(description "Optical media (CD,DVD,BD) keep their data only for a
|
||||
finite time (typically for many years). After that time, data loss develops
|
||||
|
@ -656,7 +659,7 @@ (define-public geteltorito
|
|||
(define-public asunder
|
||||
(package
|
||||
(name "asunder")
|
||||
(version "2.8")
|
||||
(version "2.9.3")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri
|
||||
|
@ -665,7 +668,7 @@ (define-public asunder
|
|||
".tar.bz2"))
|
||||
(sha256
|
||||
(base32
|
||||
"1nq9kd4rd4k2kibf57gdbm0zw2gxa234vvvdhxkm8g5bhx5h3iyq"))))
|
||||
"1630i1df06y840v3fgdf75jxw1s8kwbfn5bhi0686viah0scccw5"))))
|
||||
(build-system glib-or-gtk-build-system)
|
||||
(arguments
|
||||
'(#:out-of-source? #f
|
||||
|
|
|
@ -485,13 +485,14 @@ (define-public googletest
|
|||
(version "1.8.0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://github.com/google/googletest/archive/"
|
||||
"release-" version ".tar.gz"))
|
||||
(file-name (string-append name "-" version ".tar.gz"))
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/google/googletest.git")
|
||||
(commit (string-append "release-" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"1n5p1m2m3fjrjdj752lf92f9wq3pl5cbsfrb49jqbg52ghkz99jq"))))
|
||||
"0bjlljmbf8glnd9qjabx73w6pd7ibv43yiyngqvmvgxsabzr8399"))))
|
||||
(build-system cmake-build-system)
|
||||
(arguments
|
||||
`(#:configure-flags '("-DBUILD_SHARED_LIBS=ON")))
|
||||
|
|
|
@ -558,7 +558,7 @@ (define-public chez-mit
|
|||
(synopsis "MIT/GNU Scheme compatibility library for Chez Scheme")
|
||||
(description "This package provides a set of MIT/GNU Scheme compatibility
|
||||
libraries for Chez Scheme. The main goal was to provide the functionality
|
||||
required to port the program 'Scmutils' to Chez Scheme.")
|
||||
required to port the program @code{Scmutils} to Chez Scheme.")
|
||||
(license gpl3+)))
|
||||
|
||||
(define-public chez-scmutils
|
||||
|
|
|
@ -80,11 +80,9 @@ (define %preserved-third-party-files
|
|||
"chrome/third_party/mozilla_security_manager" ;MPL-1.1/GPL2+/LGPL2.1+
|
||||
"courgette/third_party/bsdiff" ;BSD-2, BSD protection license
|
||||
"courgette/third_party/divsufsort" ;Expat
|
||||
"net/third_party/http2" ;BSD-3
|
||||
"net/third_party/mozilla_security_manager" ;MPL-1.1/GPL2+/LGPL2.1+
|
||||
"net/third_party/nss" ;MPL-2.0
|
||||
"net/third_party/quic" ;BSD-3
|
||||
"net/third_party/spdy" ;BSD-3
|
||||
"net/third_party/uri_template" ;ASL2.0
|
||||
"third_party/abseil-cpp" ;ASL2.0
|
||||
"third_party/adobe/flash/flapper_version.h" ;no license, trivial
|
||||
|
@ -206,6 +204,7 @@ (define %preserved-third-party-files
|
|||
"third_party/yasm/run_yasm.py" ;BSD-2 or BSD-3
|
||||
"third_party/zlib/google" ;BSD-3
|
||||
"url/third_party/mozilla" ;BSD-3, MPL1.1/GPL2+/LGPL2.1+
|
||||
"v8/src/third_party/siphash" ;Public domain
|
||||
"v8/src/third_party/utf8-decoder" ;Expat
|
||||
"v8/src/third_party/valgrind" ;BSD-4
|
||||
"v8/third_party/inspector_protocol" ;BSD-3
|
||||
|
@ -224,8 +223,9 @@ (define* (computed-origin-method gexp-promise hash-algo hash
|
|||
#:system system
|
||||
#:guile-for-build guile)))
|
||||
|
||||
(define %chromium-version "72.0.3626.121")
|
||||
(define %ungoogled-revision "a80839c418de8843dfcd6c13a557f12d26a0a17a")
|
||||
(define %chromium-version "73.0.3683.86")
|
||||
(define %ungoogled-revision "4c7fb6d1a86602999f30b58ef8b331b2115c5ad8")
|
||||
(define %debian-revision "debian/73.0.3683.75-1")
|
||||
(define package-revision "0")
|
||||
|
||||
(define %package-version (string-append %chromium-version "-"
|
||||
|
@ -233,29 +233,43 @@ (define %package-version (string-append %chromium-version "-"
|
|||
(string-take %ungoogled-revision 7)))
|
||||
|
||||
;; This is a "computed" origin that does the following:
|
||||
;; 1) Runs the Ungoogled scripts on a pristine Chromium tarball.
|
||||
;; 2) Prunes all third_party folders that are not explicitly preserved.
|
||||
;; 3) Adjusts "GN" build files such that system libraries are preferred.
|
||||
;; *) Runs the Ungoogled scripts on a pristine Chromium tarball.
|
||||
;; *) Applies Debians Chromium patches, for their unbundling and GCC work.
|
||||
;; *) Prunes all third_party directories that are not explicitly preserved.
|
||||
;; *) Adjusts "GN" build files such that system libraries are preferred.
|
||||
(define ungoogled-chromium-source
|
||||
(let* ((chromium-source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://commondatastorage.googleapis.com"
|
||||
"/chromium-browser-official/chromium-"
|
||||
%chromium-version ".tar.xz"))
|
||||
(sha256
|
||||
(base32
|
||||
"07xwmlvmzfga61nrimqmzl7s29jb4kc94nkzwwlb7sh6nr55a7jc"))))
|
||||
(ungoogled-source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference (url "https://github.com/Eloston/ungoogled-chromium")
|
||||
(commit %ungoogled-revision)))
|
||||
(file-name (git-file-name "ungoogled-chromium"
|
||||
(string-take %ungoogled-revision 7)))
|
||||
(sha256
|
||||
(base32
|
||||
"0rgirbxbgjdm3s2kzgj101rjq0clr7x2a7b37kfx2q629z4qlrpc")))))
|
||||
(let ((chromium-source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://commondatastorage.googleapis.com"
|
||||
"/chromium-browser-official/chromium-"
|
||||
%chromium-version ".tar.xz"))
|
||||
(sha256
|
||||
(base32
|
||||
"18xzddqi8rgng5vksx23jaiv103prxc38pshwp702nfjfqap7fwy"))))
|
||||
(ungoogled-source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference (url "https://github.com/Eloston/ungoogled-chromium")
|
||||
(commit %ungoogled-revision)))
|
||||
(file-name (git-file-name "ungoogled-chromium"
|
||||
(string-take %ungoogled-revision 7)))
|
||||
(sha256
|
||||
(base32
|
||||
"0njx505il07d237fzgbhciy78rz7h77r2ai5crbnsx2gdr9kpvd1"))))
|
||||
(debian-source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://salsa.debian.org/chromium-team/chromium.git")
|
||||
(commit %debian-revision)))
|
||||
(file-name (git-file-name "debian-chromium-packaging"
|
||||
(if (string-prefix? "debian/" %debian-revision)
|
||||
(cadr (string-split %debian-revision #\/))
|
||||
(string-take %debian-revision 7))))
|
||||
(sha256
|
||||
(base32
|
||||
"1pq0l3m7frf9ygxc1gva1191fxf3d1phaaqp7g3b70mgbabp0mxi")))))
|
||||
|
||||
(origin
|
||||
(method computed-origin-method)
|
||||
|
@ -265,7 +279,10 @@ (define ungoogled-chromium-source
|
|||
(delay
|
||||
(with-imported-modules '((guix build utils))
|
||||
#~(begin
|
||||
(use-modules (guix build utils))
|
||||
(use-modules (guix build utils)
|
||||
(ice-9 rdelim)
|
||||
(srfi srfi-1)
|
||||
(srfi srfi-26))
|
||||
(let ((chromium-dir (string-append "chromium-" #$%chromium-version))
|
||||
(preserved-files (list #$@%preserved-third-party-files)))
|
||||
|
||||
|
@ -281,41 +298,61 @@ (define ungoogled-chromium-source
|
|||
|
||||
(with-directory-excursion "/tmp/ungoogled"
|
||||
|
||||
;; Create a custom "bundle" that inherits from linux_rooted
|
||||
;; and adds an additional patch.
|
||||
(format #t "Creating Guix config bundle...~%")
|
||||
(force-output)
|
||||
(mkdir-p "config_bundles/guix")
|
||||
(call-with-output-file "config_bundles/guix/bundlemeta.ini"
|
||||
(lambda (port)
|
||||
(format port
|
||||
"[bundle]
|
||||
display_name = GNU Guix
|
||||
depends = linux_rooted\n")))
|
||||
(call-with-output-file "config_bundles/guix/patch_order.list"
|
||||
(lambda (port)
|
||||
(format port "debian_buster/system/openjpeg.patch\n")))
|
||||
|
||||
(format #t "Unpacking chromium tarball...~%")
|
||||
(force-output)
|
||||
(invoke "tar" "xf" #+chromium-source)
|
||||
|
||||
(format #t "Ungooglifying...~%")
|
||||
(force-output)
|
||||
(invoke "python3" "run_buildkit_cli.py" "prune"
|
||||
"-b" "config_bundles/guix" chromium-dir)
|
||||
(invoke "python3" "run_buildkit_cli.py" "patches" "apply"
|
||||
"-b" "config_bundles/guix" chromium-dir)
|
||||
(invoke "python3" "run_buildkit_cli.py" "domains" "apply"
|
||||
"-b" "config_bundles/linux_rooted"
|
||||
(invoke "python3" "utils/prune_binaries.py" chromium-dir
|
||||
"pruning.list")
|
||||
(invoke "python3" "utils/patches.py" "apply"
|
||||
chromium-dir "patches")
|
||||
(invoke "python3" "utils/domain_substitution.py" "apply" "-r"
|
||||
"domain_regex.list" "-f" "domain_substitution.list"
|
||||
"-c" "/tmp/domainscache.tar.gz" chromium-dir)
|
||||
|
||||
(with-directory-excursion chromium-dir
|
||||
|
||||
(format #t "applying Debian patches...~%")
|
||||
(force-output)
|
||||
(let* ((debian #+debian-source)
|
||||
(patches (string-append debian "/debian/patches"))
|
||||
(series (string-append patches "/series"))
|
||||
(grep-q (lambda (query file)
|
||||
(with-input-from-file file
|
||||
(lambda ()
|
||||
(let loop ((line (read-line))
|
||||
(match #f))
|
||||
(if (or match (eof-object? line))
|
||||
(if match #t #f)
|
||||
(loop (read-line)
|
||||
(string-contains line query)))))))))
|
||||
(with-input-from-file series
|
||||
(lambda ()
|
||||
(let loop ((line (read-line)))
|
||||
(unless (eof-object? line)
|
||||
(when (and (> (string-length line) 1)
|
||||
;; Skip the Debian-specific ones.
|
||||
(not (string-prefix? "debianization/" line))
|
||||
;; And those that conflict with Ungoogled.
|
||||
(not (any (cute string-suffix? <> line)
|
||||
'("widevine-buildflag.patch"
|
||||
"signin.patch"
|
||||
"third-party-cookies.patch")))
|
||||
;; Ungoogled includes a subset of the Debian
|
||||
;; patches. Exclude those already present.
|
||||
(not (grep-q line "../patches/series")))
|
||||
(invoke "patch" "--force" "-p1" "--input"
|
||||
(string-append patches "/" line)
|
||||
"--no-backup-if-mismatch"))
|
||||
(loop (read-line)))))))
|
||||
|
||||
(format #t "Pruning third party files...~%")
|
||||
(force-output)
|
||||
(apply invoke "python"
|
||||
"build/linux/unbundle/remove_bundled_libraries.py"
|
||||
"--do-remove" preserved-files)
|
||||
"build/linux/unbundle/remove_bundled_libraries.py"
|
||||
"--do-remove" preserved-files)
|
||||
|
||||
(format #t "Replacing GN files...~%")
|
||||
(force-output)
|
||||
|
@ -427,7 +464,12 @@ (define-public ungoogled-chromium
|
|||
"use_openh264=true"
|
||||
"use_pulseaudio=true"
|
||||
"link_pulseaudio=true"
|
||||
"use_vaapi=true"
|
||||
|
||||
;; VA-API acceleration is currently only supported on x86_64-linux.
|
||||
,@(if (string-prefix? "x86_64" (or (%current-target-system)
|
||||
(%current-system)))
|
||||
'("use_vaapi=true")
|
||||
'())
|
||||
|
||||
;; Don't arbitrarily restrict formats supported by system ffmpeg.
|
||||
"proprietary_codecs=true"
|
||||
|
@ -502,12 +544,13 @@ (define-public ungoogled-chromium
|
|||
(substitute* "third_party/webrtc/rtc_base/strings/json.h"
|
||||
(("#include \"third_party/jsoncpp/") "#include \"json/"))
|
||||
|
||||
(substitute* "media/base/decode_capabilities.cc"
|
||||
(("third_party/libvpx/source/libvpx/") ""))
|
||||
|
||||
(substitute* "ui/gfx/skia_util.h"
|
||||
(substitute* '("ui/gfx/skia_util.h"
|
||||
"components/viz/common/resources/resource_format_utils.h")
|
||||
(("third_party/vulkan/include/") ""))
|
||||
|
||||
(substitute* "third_party/skia/include/gpu/vk/GrVkVulkan.h"
|
||||
(("\\.\\./\\.\\./include/third_party/vulkan/") ""))
|
||||
|
||||
;; Building chromedriver embeds some files using the ZIP
|
||||
;; format which doesn't support timestamps before
|
||||
;; 1980. Therefore, advance the timestamps of the files
|
||||
|
|
|
@ -1050,7 +1050,7 @@ (define (make-gcc-toolchain gcc)
|
|||
(description
|
||||
"This package provides a complete GCC tool chain for C/C++ development to
|
||||
be installed in user profiles. This includes GCC, as well as libc (headers
|
||||
and binaries, plus debugging symbols in the 'debug' output), and Binutils.")
|
||||
and binaries, plus debugging symbols in the @code{debug} output), and Binutils.")
|
||||
(home-page "https://gcc.gnu.org/")
|
||||
(outputs '("out" "debug" "static"))
|
||||
|
||||
|
|
|
@ -158,8 +158,8 @@ (define-public fastjar
|
|||
(home-page "https://savannah.nongnu.org/projects/fastjar")
|
||||
(synopsis "Replacement for Sun's 'jar' utility")
|
||||
(description
|
||||
"FastJar is an attempt to create a much faster replacement for Sun's 'jar'
|
||||
utility. Instead of being written in Java, FastJar is written in C.")
|
||||
"FastJar is an attempt to create a much faster replacement for Sun's
|
||||
@code{jar} utility. Instead of being written in Java, FastJar is written in C.")
|
||||
(license license:gpl2+)))
|
||||
|
||||
(define-public libtar
|
||||
|
|
File diff suppressed because it is too large
Load diff
|
@ -208,9 +208,9 @@ (define-public encfs
|
|||
(add-after 'unpack 'unpack-googletest
|
||||
(lambda* (#:key inputs #:allow-other-keys)
|
||||
(mkdir-p "vendor/github.com/google/googletest")
|
||||
(invoke "tar" "xvf" (assoc-ref inputs "googletest-source")
|
||||
"-C" "vendor/github.com/google/googletest"
|
||||
"--strip-components=1")))
|
||||
(copy-recursively (assoc-ref inputs "googletest-source")
|
||||
"vendor/github.com/google/googletest")
|
||||
#t))
|
||||
(add-before 'check 'make-unittests
|
||||
(lambda _
|
||||
(invoke "make" "unittests"))))))
|
||||
|
|
|
@ -239,32 +239,19 @@ (define-public es-dump-restore
|
|||
(define-public leveldb
|
||||
(package
|
||||
(name "leveldb")
|
||||
(version "1.20")
|
||||
(version "1.21")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://github.com/google/leveldb"
|
||||
"/archive/v" version ".tar.gz"))
|
||||
(file-name (string-append name "-" version ".tar.gz"))
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/google/leveldb")
|
||||
(commit version)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"0r36bcrj6b2afsp4aw1gjai3jbs1c7734pxpc1jz7hh9nasyiazm"))))
|
||||
(build-system gnu-build-system)
|
||||
"00v0w6883z7a6204894j59nd5v6dazn3c8hvh3sbczv4wiabppw2"))))
|
||||
(build-system cmake-build-system)
|
||||
(arguments
|
||||
'(#:make-flags (list "CC=gcc")
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(delete 'configure)
|
||||
(replace 'install
|
||||
;; There is no install target, so we do it here.
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
(let* ((out (assoc-ref outputs "out"))
|
||||
(lib (string-append out "/lib"))
|
||||
(include (string-append out "/include")))
|
||||
(for-each (lambda (file)
|
||||
(install-file file lib))
|
||||
(find-files "out-shared" "^libleveldb\\.so.*$"))
|
||||
(copy-recursively "include" include)
|
||||
#t))))))
|
||||
`(#:configure-flags '("-DBUILD_SHARED_LIBS=ON" "-DLEVELDB_BUILD_TESTS=ON")))
|
||||
(inputs
|
||||
`(("snappy" ,snappy)))
|
||||
(home-page "http://leveldb.org/")
|
||||
|
@ -987,7 +974,7 @@ (define-public sparql-query
|
|||
(home-page "https://github.com/tialaramex/sparql-query/")
|
||||
(synopsis "Command-line tool for accessing SPARQL endpoints over HTTP")
|
||||
(description "Sparql-query is a command-line tool for accessing SPARQL
|
||||
endpoints over HTTP. It has been intentionally designed to 'feel' similar to
|
||||
endpoints over HTTP. It has been intentionally designed to @code{feel} similar to
|
||||
tools for interrogating SQL databases. For example, you can enter a query over
|
||||
several lines, using a semi-colon at the end of a line to indicate the end of
|
||||
your query. It also supports readline so that you can more easily recall and
|
||||
|
|
|
@ -134,7 +134,7 @@ (define-public greenisland
|
|||
(define-public sddm
|
||||
(package
|
||||
(name "sddm")
|
||||
(version "0.18.0")
|
||||
(version "0.18.1")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
|
@ -143,7 +143,7 @@ (define-public sddm
|
|||
"sddm-" version ".tar.xz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0icyi9nqgbp2v6dwh3n3jzff9jv2xy8d4rbsz89hd65x7c3hrv87"))))
|
||||
"0nilrhwlyvkngjgxfc08n73c16azgmw80pvx0a78xqww9y3hv4xh"))))
|
||||
(build-system cmake-build-system)
|
||||
(native-inputs
|
||||
`(("extra-cmake-modules" ,extra-cmake-modules)
|
||||
|
|
|
@ -519,9 +519,9 @@ (define-public python-django-contact-form
|
|||
(replace 'check
|
||||
(lambda _
|
||||
;; the next version will need "make test"
|
||||
(and (zero? (system* "flake8" "contact_form"))
|
||||
(zero? (system* "coverage" "run" "contact_form/runtests.py"))
|
||||
(zero? (system* "coverage" "report" "-m" "--fail-under" "0"))))))))
|
||||
(invoke "flake8" "contact_form")
|
||||
(invoke "coverage" "run" "contact_form/runtests.py")
|
||||
(invoke "coverage" "report" "-m" "--fail-under" "0"))))))
|
||||
(native-inputs
|
||||
`(("python-coverage" ,python-coverage)
|
||||
("python-flake8" ,python-flake8)))
|
||||
|
@ -577,8 +577,7 @@ (define-public python-django-overextends
|
|||
`(#:phases
|
||||
(modify-phases %standard-phases
|
||||
(replace 'check
|
||||
(lambda _
|
||||
(zero? (system* "./test_project/manage.py" "test")))))))
|
||||
(lambda _ (invoke "./test_project/manage.py" "test"))))))
|
||||
(propagated-inputs
|
||||
`(("python-django" ,python-django)))
|
||||
(native-inputs
|
||||
|
|
|
@ -103,12 +103,13 @@ (define-public ldc-bootstrap
|
|||
(lambda* (#:key inputs #:allow-other-keys)
|
||||
(let ((unpack (lambda (source target)
|
||||
(with-directory-excursion target
|
||||
(zero? (system* "tar" "xvf"
|
||||
(assoc-ref inputs source)
|
||||
"--strip-components=1"))))))
|
||||
(and (unpack "phobos-src" "runtime/phobos")
|
||||
(unpack "druntime-src" "runtime/druntime")
|
||||
(unpack "dmd-testsuite-src" "tests/d2/dmd-testsuite")))))
|
||||
(invoke "tar" "xvf"
|
||||
(assoc-ref inputs source)
|
||||
"--strip-components=1")))))
|
||||
(unpack "phobos-src" "runtime/phobos")
|
||||
(unpack "druntime-src" "runtime/druntime")
|
||||
(unpack "dmd-testsuite-src" "tests/d2/dmd-testsuite")
|
||||
#t)))
|
||||
(add-after 'unpack-submodule-sources 'patch-dmd2
|
||||
(lambda* (#:key inputs #:allow-other-keys)
|
||||
(substitute* "dmd2/root/port.c"
|
||||
|
@ -210,12 +211,12 @@ (define-public ldc
|
|||
(lambda* (#:key inputs #:allow-other-keys)
|
||||
(let ((unpack (lambda (source target)
|
||||
(with-directory-excursion target
|
||||
(zero? (system* "tar" "xvf"
|
||||
(assoc-ref inputs source)
|
||||
"--strip-components=1"))))))
|
||||
(and (unpack "phobos-src" "runtime/phobos")
|
||||
(unpack "druntime-src" "runtime/druntime")
|
||||
(unpack "dmd-testsuite-src" "tests/d2/dmd-testsuite")))))
|
||||
(invoke "tar" "xvf"
|
||||
(assoc-ref inputs source)
|
||||
"--strip-components=1")))))
|
||||
(unpack "phobos-src" "runtime/phobos")
|
||||
(unpack "druntime-src" "runtime/druntime")
|
||||
(unpack "dmd-testsuite-src" "tests/d2/dmd-testsuite"))))
|
||||
(add-after 'unpack-submodule-sources 'patch-phobos
|
||||
(lambda* (#:key inputs #:allow-other-keys)
|
||||
(substitute* '("runtime/phobos/std/process.d"
|
||||
|
|
|
@ -227,6 +227,8 @@ (define-public containerd
|
|||
(home-page "http://containerd.io/")
|
||||
(license license:asl2.0)))
|
||||
|
||||
;; TODO: Patch out modprobes for ip_vs, nf_conntrack,
|
||||
;; brige, nf_conntrack_netlink, aufs.
|
||||
(define-public docker
|
||||
(package
|
||||
(name "docker")
|
||||
|
@ -242,7 +244,8 @@ (define-public docker
|
|||
(base32 "06yr5xwr181lalh8z1lk07nxlp7hn38aq8cyqjk617dfy4lz0ixx"))
|
||||
(patches
|
||||
(search-patches "docker-engine-test-noinstall.patch"
|
||||
"docker-fix-tests.patch"))))
|
||||
"docker-fix-tests.patch"
|
||||
"docker-use-fewer-modprobes.patch"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
`(#:modules
|
||||
|
|
|
@ -73,6 +73,6 @@ (define-public dunst
|
|||
(synopsis "Customizable and lightweight notification daemon")
|
||||
(description
|
||||
"Dunst is a highly configurable and minimalistic notification daemon.
|
||||
It provides 'org.freedesktop.Notifications' D-Bus service, so it is
|
||||
It provides @code{org.freedesktop.Notifications} D-Bus service, so it is
|
||||
started automatically on the first call via D-Bus.")
|
||||
(license license:bsd-3)))
|
||||
|
|
|
@ -777,6 +777,29 @@ (define-public emacs-xr
|
|||
@code{skip-chars-backward}.")
|
||||
(license license:gpl3+)))
|
||||
|
||||
(define-public emacs-relint
|
||||
(package
|
||||
(name "emacs-relint")
|
||||
(version "1.5")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
"https://elpa.gnu.org/packages/relint-" version ".el"))
|
||||
(sha256
|
||||
(base32
|
||||
"0y7lki2vndpkmzg4k0yh2722hp01qr77vm337xnm8wp3bmwn8s1f"))))
|
||||
(build-system emacs-build-system)
|
||||
(propagated-inputs `(("emacs-xr" ,emacs-xr)))
|
||||
(home-page "https://github.com/mattiase/relint")
|
||||
(synopsis "Elisp regexp mistake finder")
|
||||
(description
|
||||
"Relint (regular expression lint) scans Elisp files for mistakes in
|
||||
regexps, including deprecated syntax and bad practice. It also checks the
|
||||
regexp-like arguments to @code{skip-chars-forward} and
|
||||
@code{skip-chars-backward}.")
|
||||
(license license:gpl3+)))
|
||||
|
||||
|
||||
;;;
|
||||
;;; Web browsing.
|
||||
|
@ -1158,19 +1181,45 @@ (define-public emacs-aggressive-indent
|
|||
than @code{electric-indent-mode}.")
|
||||
(license license:gpl2+)))
|
||||
|
||||
(define-public emacs-link-hint
|
||||
;; Last release was in 2015.
|
||||
(let ((commit "d74a483652486260c052941fedeadddb1ea71f88")
|
||||
(revision "1"))
|
||||
(package
|
||||
(name "emacs-link-hint")
|
||||
(version (git-version "0.1" revision commit))
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/noctuid/link-hint.el")
|
||||
(commit commit)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"0dghxd165fbds6czy9bfwpid3i4irgp3q08n9mg57sfifi0cmij0"))))
|
||||
(build-system emacs-build-system)
|
||||
(propagated-inputs
|
||||
`(("emacs-avy" ,emacs-avy)))
|
||||
(home-page "https://github.com/noctuid/link-hint.el")
|
||||
(synopsis "Vimperator-style link-hinting in Emacs")
|
||||
(description "This package provides commands for visiting and acting on
|
||||
links.")
|
||||
(license license:gpl3+))))
|
||||
|
||||
(define-public emacs-ag
|
||||
(package
|
||||
(name "emacs-ag")
|
||||
(version "0.47")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
"https://github.com/Wilfred/ag.el/archive/"
|
||||
version ".tar.gz"))
|
||||
(file-name (string-append name "-" version ".tar.gz"))
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/Wilfred/ag.el.git")
|
||||
(commit version)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"1rlmp6wnyhqfg86dbz17r914msp58favn4kd4yrdwyia265a4lar"))))
|
||||
"15kp99vwyi7hb1jkq3lwvqzw3v62ycixsq6y4pd1x0nn2v5p5m5r"))))
|
||||
(build-system emacs-build-system)
|
||||
(arguments
|
||||
`(#:phases
|
||||
|
@ -1262,13 +1311,14 @@ (define-public emacs-autothemer
|
|||
(version "0.2.2")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://github.com/sebastiansturm/autothemer/archive/"
|
||||
version ".tar.gz"))
|
||||
(file-name (string-append name "-" version ".tar.gz"))
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/sebastiansturm/autothemer.git")
|
||||
(commit version)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"0rd28r9wfrbll212am4ih9hrvypx785aff76va2cbfxdwm9kixsa"))))
|
||||
"0cd2pqh6k32sjidkcd8682y4l6mx52xw4a05f38kk8nsrk28m74k"))))
|
||||
(build-system emacs-build-system)
|
||||
(propagated-inputs
|
||||
`(("emacs-dash" ,emacs-dash)))
|
||||
|
@ -1322,14 +1372,14 @@ (define-public emacs-calfw
|
|||
(version "1.6")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
"https://github.com/kiwanami/emacs-calfw/archive/v"
|
||||
version ".tar.gz"))
|
||||
(file-name (string-append name "-" version ".tar.gz"))
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/kiwanami/emacs-calfw.git")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"1zr91xr0f1xfcv78yxka8vs5ximmq2ixmqf2pkb57kwwnxlypq4i"))))
|
||||
"0r42cagvmvvib76kd15nd9ix55ys6i549vxnls4z16s864695zpa"))))
|
||||
(build-system emacs-build-system)
|
||||
(propagated-inputs
|
||||
`(("emacs-howm" ,emacs-howm)))
|
||||
|
@ -1346,14 +1396,14 @@ (define-public emacs-direnv
|
|||
(version "1.2.0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
"https://github.com/wbolster/emacs-direnv/archive/"
|
||||
version ".tar.gz"))
|
||||
(file-name (string-append name "-" version ".tar.gz"))
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/wbolster/emacs-direnv.git")
|
||||
(commit version)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"0m9nxawklhiiysyibzzhh2zkxgq1fskqvaqb06f7r8dnhabfy9fr"))))
|
||||
"172jyl8v4zy9bbha8nndq63x8svn9xqkafkj3q17z289na8iaylh"))))
|
||||
(build-system emacs-build-system)
|
||||
(propagated-inputs
|
||||
`(("dash" ,emacs-dash)
|
||||
|
@ -1461,13 +1511,14 @@ (define-public emacs-google-maps
|
|||
(name "emacs-google-maps")
|
||||
(version "1.0.0")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://github.com/jd/google-maps.el/"
|
||||
"archive/" version ".tar.gz"))
|
||||
(file-name (string-append name "-" version ".tar.gz"))
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/jd/google-maps.el.git")
|
||||
(commit version)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"014bxapm4d8vjxbzrfjdpsavxyfx981mlcb10aq5rmigr6il8ybs"))))
|
||||
"183igr5lp20zcqi7rc01fk76sfxdhksd74i11v16gdsifdkjimd0"))))
|
||||
(build-system emacs-build-system)
|
||||
(home-page "https://github.com/jd/google-maps.el")
|
||||
(synopsis "Access Google Maps from Emacs")
|
||||
|
@ -1527,24 +1578,18 @@ (define-public emacs-graphviz-dot-mode
|
|||
(define-public emacs-mmm-mode
|
||||
(package
|
||||
(name "emacs-mmm-mode")
|
||||
(version "0.5.5")
|
||||
(version "0.5.7")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
"https://github.com/purcell/mmm-mode/archive/"
|
||||
version ".tar.gz"))
|
||||
(file-name (string-append name "-" version ".tar.gz"))
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/purcell/mmm-mode.git")
|
||||
(commit version)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"0c5ing3hcr74k78hqhrfwiv6m3n8hqfrw89j2x34vf60f4iyqzqc"))))
|
||||
"0lxd55yhz0ag7v1ydff55bg4h8snq5lbk8cjwxqpyq6gh4v7md1h"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
'(#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-after 'unpack 'autogen
|
||||
(lambda _
|
||||
(invoke "sh" "autogen.sh"))))))
|
||||
(native-inputs
|
||||
`(("autoconf" ,autoconf)
|
||||
("automake" ,automake)
|
||||
|
@ -1562,14 +1607,14 @@ (define-public emacs-tablist
|
|||
(name "emacs-tablist")
|
||||
(version "0.70")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
"https://github.com/politza/tablist/archive/v"
|
||||
version ".tar.gz"))
|
||||
(file-name (string-append name "-" version ".tar.gz"))
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/politza/tablist.git")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"177d6s7ym1mwz1nhnl09r14z3n093g9a2szm97xsaig0c204xz9c"))))
|
||||
"0gy9hxm7bca0l1hfy2pzn86avpifrz3bs8xzpicj4kxw5wi4ygns"))))
|
||||
(build-system emacs-build-system)
|
||||
(home-page "https://github.com/politza/tablist")
|
||||
(synopsis "Extension for @code{tabulated-list-mode}")
|
||||
|
@ -2622,14 +2667,14 @@ (define-public emacs-ob-ipython
|
|||
(define-public emacs-debbugs
|
||||
(package
|
||||
(name "emacs-debbugs")
|
||||
(version "0.16")
|
||||
(version "0.17")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://elpa.gnu.org/packages/debbugs-"
|
||||
version ".tar"))
|
||||
(sha256
|
||||
(base32
|
||||
"0y3bq803c7820h15g66d1648skxfhlfa2v6vincj6xk5ssp44s9p"))))
|
||||
"0zclh2nxj5p10n214sxyxy3ca07l5s9p5spk0xp1smr6nzn0w7gb"))))
|
||||
(build-system emacs-build-system)
|
||||
(arguments '(#:include '("\\.el$" "\\.wsdl$" "\\.info$")))
|
||||
(propagated-inputs
|
||||
|
@ -2959,6 +3004,34 @@ (define-public emacs-typo
|
|||
on context.")
|
||||
(license license:gpl3+)))
|
||||
|
||||
(define-public emacs-company-lsp
|
||||
(package
|
||||
(name "emacs-company-lsp")
|
||||
(version "2.1.0")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/tigersoldier/company-lsp.git")
|
||||
(commit version)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"1hy1x2w0yp5brm7714d1hziz3rpkywb5jp3yj78ibmi9ifny9vri"))))
|
||||
(build-system emacs-build-system)
|
||||
(propagated-inputs
|
||||
`(("emacs-dash" ,emacs-dash)
|
||||
("emacs-lsp-mode" ,emacs-lsp-mode)
|
||||
("emacs-company" ,emacs-company)
|
||||
("emacs-s" ,emacs-s)
|
||||
("emacs-dash" ,emacs-dash)))
|
||||
(home-page "https://github.com/tigersoldier/company-lsp")
|
||||
(synopsis "Completion for @code{lsp-mode}")
|
||||
(description
|
||||
"This package provides completion features that are not possible with
|
||||
@code{lsp-mode} and @code{company-capf} alone, including support for trigger
|
||||
characters and asynchronous fetching of completion candidates.")
|
||||
(license license:gpl3+)))
|
||||
|
||||
(define-public emacs-scheme-complete
|
||||
(let ((commit "9b5cf224bf2a5994bc6d5b152ff487517f1a9bb5"))
|
||||
(package
|
||||
|
@ -3037,6 +3110,33 @@ (define-public emacs-scel
|
|||
SuperCollider is a platform for audio synthesis and algorithmic composition.")
|
||||
(license license:gpl2+))))
|
||||
|
||||
(define-public emacs-company-auctex
|
||||
(let ((commit "48c42c58ce2f0e693301b0cb2d085055410c1b25")
|
||||
(revision "1"))
|
||||
(package
|
||||
(name "emacs-company-auctex")
|
||||
(version (git-version "0" revision commit))
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/alexeyr/company-auctex")
|
||||
(commit commit)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"10qn7frn5wcmrlci3v6iliqzj7r9dls87h9zp3xkgrgn4bqprfp8"))))
|
||||
(build-system emacs-build-system)
|
||||
(propagated-inputs
|
||||
`(("emacs-yasnippet" ,emacs-yasnippet)
|
||||
("emacs-auctex" ,emacs-auctex)
|
||||
("emacs-company" ,emacs-company)))
|
||||
(home-page "https://github.com/alexeyr/company-auctex/")
|
||||
(synopsis "Completion for @code{AUCTeX}")
|
||||
(description
|
||||
"This package provides a group of backends permitting auto-completion
|
||||
for @code{AUCTeX}.")
|
||||
(license license:gpl3+))))
|
||||
|
||||
(define-public emacs-mit-scheme-doc
|
||||
(package
|
||||
(name "emacs-mit-scheme-doc")
|
||||
|
@ -3208,6 +3308,78 @@ (define-public emacs-popup
|
|||
and popup menus.")
|
||||
(license license:gpl3+)))
|
||||
|
||||
(define-public emacs-python-environment
|
||||
(package
|
||||
(name "emacs-python-environment")
|
||||
(version "0.0.2")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/tkf/emacs-python-environment/")
|
||||
(commit version)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"0q6bib9nr6xiq6npzbngyfcjk87yyvwzq1zirr3z1h5wadm34lsk"))))
|
||||
(build-system emacs-build-system)
|
||||
(propagated-inputs
|
||||
`(("emacs-deferred" ,emacs-deferred)))
|
||||
(home-page "https://github.com/tkf/emacs-python-environment")
|
||||
(synopsis "Provides a @code{virtualenv} API in Emacs Lisp")
|
||||
(description
|
||||
"This package permits automated installation of tools written in Python.")
|
||||
(license license:gpl3+)))
|
||||
|
||||
(define-public emacs-jedi
|
||||
(package
|
||||
(name "emacs-jedi")
|
||||
(version "0.2.7")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/tkf/emacs-jedi/")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"0xbp9fcxgbf298w05hvf52z41kk7r52975ailgdn8sg60xc98fa7"))))
|
||||
(build-system emacs-build-system)
|
||||
(native-inputs
|
||||
`(("emacs-mocker" ,emacs-mocker)))
|
||||
(propagated-inputs
|
||||
`(("emacs-auto-complete" ,emacs-auto-complete)
|
||||
("emacs-python-environment" ,emacs-python-environment)
|
||||
("emacs-epc" ,emacs-epc)))
|
||||
(home-page "https://github.com/tkf/emacs-jedi")
|
||||
(synopsis "Provides Python completion in Emacs")
|
||||
(description
|
||||
"This package provides completion in Python buffers and also helps find
|
||||
the locations of docstrings, arguments, and functions.")
|
||||
(license license:gpl3+)))
|
||||
|
||||
(define-public emacs-company-jedi
|
||||
(package
|
||||
(name "emacs-company-jedi")
|
||||
(version "0.04")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/syohex/emacs-company-jedi")
|
||||
(commit version)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"1ihqapp4dv92794rsgyq0rmhwika60cmradqd4bn9b72ss6plxs1"))))
|
||||
(build-system emacs-build-system)
|
||||
(propagated-inputs
|
||||
`(("emacs-jedi" ,emacs-jedi)
|
||||
("emacs-company" ,emacs-company)))
|
||||
(home-page "https://github.com/syohex/emacs-company-jedi")
|
||||
(synopsis "Provides Python completion in @code{company-mode}")
|
||||
(description
|
||||
"This package provides a Company backend for Python.")
|
||||
(license license:gpl3+)))
|
||||
|
||||
(define-public emacs-puppet-mode
|
||||
(let ((commit "b3ed5057166a4f49dfa9be638523a348b55a2fd2")
|
||||
(revision "1"))
|
||||
|
@ -3283,6 +3455,32 @@ (define-public emacs-jinja2-mode
|
|||
sgml/html integration, and indentation (working with sgml).")
|
||||
(license license:gpl3+)))
|
||||
|
||||
(define-public emacs-company-cabal
|
||||
;; The latest version is 0.3.0, but no release has been provided after 0.2.1.
|
||||
(let ((commit "62112a7259e24bd6c08885629a185afe512b7d3d")
|
||||
(revision "1"))
|
||||
(package
|
||||
(name "emacs-company-cabal")
|
||||
(version (git-version "0.3.0" revision commit))
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/iquiw/company-cabal/")
|
||||
(commit commit)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"1gf45xwjzdm8i4q6c6khk4dbg1mmp2r0awz2sjr4dcr2dbd1n7mg"))))
|
||||
(build-system emacs-build-system)
|
||||
(propagated-inputs
|
||||
`(("emacs-company" ,emacs-company)))
|
||||
(home-page "https://github.com/iquiw/company-cabal/")
|
||||
(synopsis "Company completion for Haskell Cabal files")
|
||||
(description
|
||||
"This package allows for completion of field names, section names,
|
||||
field values, and more within @code{haskell-cabal-mode}.")
|
||||
(license license:gpl3+))))
|
||||
|
||||
(define-public emacs-rfcview
|
||||
(package
|
||||
(name "emacs-rfcview")
|
||||
|
@ -3409,6 +3607,31 @@ (define-public emacs-org-trello
|
|||
organizer.")
|
||||
(license license:gpl3+)))
|
||||
|
||||
(define-public emacs-company-flow
|
||||
(let ((commit "76ef585c70d2a3206c2eadf24ba61e59124c3a16")
|
||||
(revision "1"))
|
||||
(package
|
||||
(name "emacs-company-flow")
|
||||
(version (git-version "0.1.0" revision commit))
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/aaronjensen/company-flow/")
|
||||
(commit commit)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"0zs9cblnbkxa0dxw4lyllmybqizxcdx96gv8jlhx20nrjpi78piw"))))
|
||||
(build-system emacs-build-system)
|
||||
(propagated-inputs
|
||||
`(("emacs-company" ,emacs-company)
|
||||
("emacs-dash" ,emacs-dash)))
|
||||
(home-page "https://github.com/aaronjensen/company-flow/")
|
||||
(synopsis "Flow backend for @code{company-mode}")
|
||||
(description
|
||||
"This package provides completion for JavaScript files utilizing Flow.")
|
||||
(license license:gpl3+))))
|
||||
|
||||
(define-public emacs-atom-one-dark-theme
|
||||
(let ((commit "1f1185bf667a38d3d0d180ce85fd4c131818aae2")
|
||||
(revision "0"))
|
||||
|
@ -3535,6 +3758,31 @@ (define-public emacs-base16-theme
|
|||
single theme but a set of guidelines with numerous implementations.")
|
||||
(license license:expat)))
|
||||
|
||||
(define-public emacs-prescient
|
||||
(package
|
||||
(name "emacs-prescient")
|
||||
(version "2.2.2")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/raxod502/prescient.el/")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"1ncplx5p3cffyzg9ygzqqxj0vpvwrz9rp2n4z6c375a78fyydrk0"))))
|
||||
(build-system emacs-build-system)
|
||||
(propagated-inputs
|
||||
`(("emacs-company" ,emacs-company)
|
||||
("emacs-ivy" ,emacs-ivy)))
|
||||
(home-page "https://github.com/raxod502/prescient.el/")
|
||||
(synopsis "Library that sorts and filters lists of candidates")
|
||||
(description
|
||||
"This package provides a library for sorting and filtering, as well as
|
||||
extensions for @code{ivy-mode} and @code{company-mode} that make use of the
|
||||
library.")
|
||||
(license license:gpl3+)))
|
||||
|
||||
(define-public emacs-smartparens
|
||||
(package
|
||||
(name "emacs-smartparens")
|
||||
|
@ -4158,6 +4406,30 @@ (define-public emacs-epl
|
|||
@code{package.el} into a sane API.")
|
||||
(license license:gpl3+)))
|
||||
|
||||
(define-public emacs-counsel-projectile
|
||||
(package
|
||||
(name "emacs-counsel-projectile")
|
||||
(version "0.3.0")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/ericdanan/counsel-projectile")
|
||||
(commit version)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"1inc4ndl0ysfwvxk4avbgpj4qi9rc93da6476a5c81xmwpsv8wmq"))))
|
||||
(build-system emacs-build-system)
|
||||
(propagated-inputs
|
||||
`(("emacs-ivy" ,emacs-ivy)
|
||||
("emacs-projectile" ,emacs-projectile)))
|
||||
(home-page "https://github.com/ericdanan/counsel-projectile")
|
||||
(synopsis "Enhance Projectile with Ivy")
|
||||
(description
|
||||
"This package uses Ivy to provide additional actions for Projectile
|
||||
commands and replacements for existing functions.")
|
||||
(license license:gpl3+)))
|
||||
|
||||
(define-public emacs-queue
|
||||
(package
|
||||
(name "emacs-queue")
|
||||
|
@ -5750,6 +6022,35 @@ (define-public emacs-alert
|
|||
customizable by the user.")
|
||||
(license license:gpl2+)))
|
||||
|
||||
(define-public emacs-zones
|
||||
(let ((commit "353fc38a6544eb59887bee045e373406f1d038a5")
|
||||
(revision "1"))
|
||||
(package
|
||||
(name "emacs-zones")
|
||||
(version (git-version "0" revision commit))
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/emacsmirror/zones.git")
|
||||
(commit commit)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"0gwnw2giii2a14nlh62xp45f47cw6ikqphhzpmcw6c7mn9x5z2ar"))
|
||||
(patches
|
||||
(search-patches
|
||||
"emacs-zones-called-interactively.patch"))))
|
||||
(build-system emacs-build-system)
|
||||
(home-page "https://www.emacswiki.org/emacs/Zones")
|
||||
(synopsis "Define and act on multiple zones of buffer text")
|
||||
(description "Library @file{zones.el} lets you easily define and
|
||||
subsequently act on multiple zones of buffer text. You can think of this as
|
||||
enlarging the notion of region. In effect, it can remove the requirement of
|
||||
target text being a contiguous sequence of characters. A set of buffer zones
|
||||
is, in effect, a (typically) noncontiguous set of text.")
|
||||
(license license:gpl3+))))
|
||||
|
||||
(define-public emacs-mu4e-alert
|
||||
(package
|
||||
(name "emacs-mu4e-alert")
|
||||
|
@ -7212,7 +7513,7 @@ (define-public emacs-eimp
|
|||
(license license:gpl2+))))
|
||||
|
||||
(define-public emacs-dired-hacks
|
||||
(let ((commit "eda68006ce73bbf6b9b995bfd70d08bec8cade36")
|
||||
(let ((commit "2c1234592aee91dcd9401bcd67213e6a4a464fd9")
|
||||
(revision "1"))
|
||||
(package
|
||||
(name "emacs-dired-hacks")
|
||||
|
@ -7226,7 +7527,7 @@ (define-public emacs-dired-hacks
|
|||
(file-name (string-append name "-" version "-checkout"))
|
||||
(sha256
|
||||
(base32
|
||||
"1w7ssl9zssn5rcha6apf4h8drkd02k4xgvs203bdbqyqp9wz9brx"))))
|
||||
"1g7mky41cahpryzj6frdgzdymknpqq7pidzfjj9304887kijmhj3"))))
|
||||
(build-system emacs-build-system)
|
||||
(propagated-inputs
|
||||
`(("emacs-dash" ,emacs-dash)
|
||||
|
@ -8481,13 +8782,14 @@ (define-public emacs-emmet-mode
|
|||
(name "emacs-emmet-mode")
|
||||
(version "1.0.8")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://github.com/smihica/emmet-mode"
|
||||
"/archive/" version ".tar.gz"))
|
||||
(file-name (string-append name "-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0g3p22yabfcp98cfv9dgl9il2m2pd53isq2q11vb3s7qyn31f7zj"))))
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/smihica/emmet-mode.git")
|
||||
(commit version)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"1dsa85bk33j90h1ypaz1ylqh9yp2xvlga237h3kwa5y3sb0d5ydi"))))
|
||||
(build-system emacs-build-system)
|
||||
(home-page "https://github.com/smihica/emmet-mode")
|
||||
(synopsis "Unofficial Emmet's support for Emacs")
|
||||
|
@ -13852,3 +14154,26 @@ (define-public emacs-helm-wikipedia
|
|||
"This package provides an Emacs Helm interface for search suggestions
|
||||
and article extracts for Wikipedia.")
|
||||
(license license:gpl3+))))
|
||||
|
||||
(define-public emacs-webfeeder
|
||||
(package
|
||||
(name "emacs-webfeeder")
|
||||
(version "1.0.0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
"https://elpa.gnu.org/packages/webfeeder-"
|
||||
version
|
||||
".tar"))
|
||||
(sha256
|
||||
(base32
|
||||
"06y5vxw9m6pmbrzb8v2i3w9dnhgqxz06vyx1knmgi9cczlrj4a64"))))
|
||||
(build-system emacs-build-system)
|
||||
(home-page "https://gitlab.com/Ambrevar/emacs-webfeeder")
|
||||
(synopsis "Build RSS and Atom webfeeds from HTML files")
|
||||
(description
|
||||
"Webfeeder is an Emacs library to generate RSS and Atom feeds from HTML
|
||||
files. The various elements of the HTML input are parsed with customizable
|
||||
functions (e.g. @code{webfeeder-title-function}).")
|
||||
(license license:gpl3+)))
|
||||
|
|
|
@ -85,6 +85,7 @@ (define-module (gnu packages engineering)
|
|||
#:use-module (gnu packages texinfo)
|
||||
#:use-module (gnu packages tls)
|
||||
#:use-module (gnu packages tex)
|
||||
#:use-module (gnu packages version-control)
|
||||
#:use-module (gnu packages wxwidgets)
|
||||
#:use-module (gnu packages xorg))
|
||||
|
||||
|
@ -554,43 +555,65 @@ (define-public fasthenry
|
|||
(define-public fritzing
|
||||
(package
|
||||
(name "fritzing")
|
||||
(version "0.9.2b")
|
||||
(version "0.9.3b")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://github.com/fritzing/"
|
||||
"fritzing-app/archive/" version ".tar.gz"))
|
||||
(file-name (string-append name "-" version ".tar.gz"))
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/fritzing/fritzing-app.git")
|
||||
(commit version)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"15rwjp4xdj9w1z9f709rz9p0k2mi9k9idma9hvzkj5j8p04mg7yd"))))
|
||||
"0hpyc550xfhr6gmnc85nq60w00rm0ljm0y744dp0z88ikl04f4s3"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
`(#:phases
|
||||
(modify-phases %standard-phases
|
||||
(replace 'configure
|
||||
(lambda* (#:key inputs outputs #:allow-other-keys)
|
||||
(and (zero? (system* "tar"
|
||||
"-xvf" (assoc-ref inputs "fritzing-parts-db")
|
||||
"-C" "parts"))
|
||||
(zero? (system* "qmake"
|
||||
(string-append "PREFIX="
|
||||
(assoc-ref outputs "out"))
|
||||
"phoenix.pro"))))))))
|
||||
(copy-recursively (assoc-ref inputs "fritzing-parts-db")
|
||||
"parts")
|
||||
;; Make compatible with libgit2 > 0.24
|
||||
(substitute* "src/version/partschecker.cpp"
|
||||
(("error = git_remote_connect\\(remote, GIT_DIRECTION_FETCH, &callbacks\\)")
|
||||
"error = git_remote_connect(remote, GIT_DIRECTION_FETCH, &callbacks, NULL, NULL)"))
|
||||
|
||||
;; Use system libgit2 and boost.
|
||||
(substitute* "phoenix.pro"
|
||||
(("^LIBGIT2INCLUDE =.*")
|
||||
(string-append "LIBGIT2INCLUDE="
|
||||
(assoc-ref inputs "libgit2") "/include\n"))
|
||||
(("^ LIBGIT2LIB =.*")
|
||||
(string-append " LIBGIT2LIB="
|
||||
(assoc-ref inputs "libgit2") "/lib\n")))
|
||||
;; This file checks for old versions of Boost, insisting on
|
||||
;; having us download the boost sources and placing them in the
|
||||
;; build directory.
|
||||
(substitute* "pri/utils.pri"
|
||||
(("error\\(") "message("))
|
||||
|
||||
(let ((out (assoc-ref outputs "out")))
|
||||
(invoke "qmake"
|
||||
(string-append "QMAKE_LFLAGS_RPATH=-Wl,-rpath," out "/lib")
|
||||
(string-append "PREFIX=" out)
|
||||
"phoenix.pro")))))))
|
||||
(inputs
|
||||
`(("qtbase" ,qtbase)
|
||||
("qtserialport" ,qtserialport)
|
||||
("qtsvg" ,qtsvg)
|
||||
("libgit2" ,libgit2)
|
||||
("boost" ,boost)
|
||||
("zlib" ,zlib)
|
||||
("fritzing-parts-db"
|
||||
,(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://github.com/fritzing/"
|
||||
"fritzing-parts/archive/" version ".tar.gz"))
|
||||
(file-name (string-append "fritzing-parts-" version ".tar.gz"))
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/fritzing/fritzing-parts.git")
|
||||
(commit version)))
|
||||
(file-name (git-file-name "fritzing-parts" version))
|
||||
(sha256
|
||||
(base32
|
||||
"0jqr8yjg7177f3pk1fcns584r0qavwpr280nggsi2ff3pwk5wpsz"))))))
|
||||
"1d2v8k7p176j0lczx4vx9n9gbg3vw09n2c4b6w0wj5wqmifywhc1"))))))
|
||||
(home-page "http://fritzing.org")
|
||||
(synopsis "Electronic circuit design")
|
||||
(description
|
||||
|
|
|
@ -43,7 +43,9 @@ (define-public file
|
|||
|
||||
;; When cross-compiling, this package depends upon a native install of
|
||||
;; itself.
|
||||
(self-native-input? #t)
|
||||
(native-inputs (if (%current-target-system)
|
||||
`(("self" ,this-package))
|
||||
'()))
|
||||
|
||||
(synopsis "File type guesser")
|
||||
(description
|
||||
|
|
|
@ -384,14 +384,14 @@ (define-public font-adobe-source-han-sans
|
|||
(name "font-adobe-source-han-sans")
|
||||
(version "1.004")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
"https://github.com/adobe-fonts/source-han-sans/archive/"
|
||||
version "R.tar.gz"))
|
||||
(file-name (string-append "source-han-sans-" version "R.tar.gz"))
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/adobe-fonts/source-han-sans.git")
|
||||
(commit (string-append version "R"))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"1ssx0fw90sy6mj8fv8fv4dgzszpqwbmwpjnlx16g4pvaqzdmybbz"))))
|
||||
"0zm884d8fp5gvirq324050kqv7am9khyqhs9kk4r4rr3jzn61jpk"))))
|
||||
(outputs '("out" ; OpenType/CFF Collection (OTC), 121 MiB.
|
||||
"cn" "jp" "kr" "tw")) ; Region-specific Subset OpenType/CFF.
|
||||
(build-system trivial-build-system)
|
||||
|
@ -400,20 +400,12 @@ (define-public font-adobe-source-han-sans
|
|||
#:builder
|
||||
(begin
|
||||
(use-modules (guix build utils))
|
||||
(let ((tar (string-append (assoc-ref %build-inputs
|
||||
"tar")
|
||||
"/bin/tar"))
|
||||
(PATH (string-append (assoc-ref %build-inputs
|
||||
"gzip")
|
||||
"/bin"))
|
||||
(install-opentype-fonts
|
||||
(let ((install-opentype-fonts
|
||||
(lambda (fonts-dir out)
|
||||
(copy-recursively fonts-dir
|
||||
(string-append (assoc-ref %outputs out)
|
||||
"/share/fonts/opentype")))))
|
||||
(setenv "PATH" PATH)
|
||||
(invoke tar "xvf" (assoc-ref %build-inputs "source"))
|
||||
(chdir (string-append "source-han-sans-" ,version "R"))
|
||||
(chdir (assoc-ref %build-inputs "source"))
|
||||
(install-opentype-fonts "OTC" "out")
|
||||
(install-opentype-fonts "SubsetOTF/CN" "cn")
|
||||
(install-opentype-fonts "SubsetOTF/JP" "jp")
|
||||
|
@ -421,9 +413,6 @@ (define-public font-adobe-source-han-sans
|
|||
(install-opentype-fonts "SubsetOTF/TW" "tw")
|
||||
(for-each delete-file (find-files %output "\\.zip$"))
|
||||
#t))))
|
||||
(native-inputs
|
||||
`(("gzip" ,gzip)
|
||||
("tar" ,tar)))
|
||||
(home-page "https://github.com/adobe-fonts/source-han-sans")
|
||||
(synopsis "Pan-CJK fonts")
|
||||
(description
|
||||
|
@ -933,13 +922,14 @@ (define-public font-fira-sans
|
|||
(name "font-fira-sans")
|
||||
(version "4.202")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://github.com/mozilla/Fira/archive/"
|
||||
version ".tar.gz"))
|
||||
(file-name (string-append name "-" version ".tar.gz"))
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/mozilla/Fira.git")
|
||||
(commit version)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"1r6zdnqqp4bgq5nmgqbj0vvj7x1h9w912851ggbl9wc7fdjnjqnq"))))
|
||||
"116j26gdj5g1r124b4669372f7490vfjqw7apiwp2ggl0am5xd0w"))))
|
||||
(build-system font-build-system)
|
||||
(home-page "https://mozilla.github.io/Fira/")
|
||||
(synopsis "Mozilla's Fira Sans Font")
|
||||
|
@ -997,13 +987,14 @@ (define-public font-tamzen
|
|||
(version "1.11.4")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://github.com/sunaku/tamzen-font/archive/"
|
||||
"Tamzen-" version ".tar.gz"))
|
||||
(file-name (string-append name "-" version ".tar.gz"))
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/sunaku/tamzen-font.git")
|
||||
(commit (string-append "Tamzen-" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"1ryd7gp6qiwaqw73jqbmh4kwlriyd8xykh4j7z90z8xp9fm7lrys"))))
|
||||
"17kgmvg6q32mqhx9g44hjvzv0si0mnpprga4z7na930g2zdd8846"))))
|
||||
(build-system trivial-build-system)
|
||||
(arguments
|
||||
`(#:modules ((guix build utils))
|
||||
|
@ -1011,30 +1002,19 @@ (define-public font-tamzen
|
|||
(begin
|
||||
(use-modules (guix build utils))
|
||||
|
||||
(let ((tar (string-append (assoc-ref %build-inputs "tar")
|
||||
"/bin/tar"))
|
||||
(PATH (string-append (assoc-ref %build-inputs "gzip")
|
||||
"/bin"))
|
||||
(font-dir (string-append %output "/share/fonts/misc"))
|
||||
(psf-dir (string-append %output "/share/kbd/consolefonts"))
|
||||
(src-pcf-dir (string-append "tamzen-font-Tamzen-"
|
||||
,version "/pcf")))
|
||||
(setenv "PATH" PATH)
|
||||
(invoke tar "xvf" (assoc-ref %build-inputs "source"))
|
||||
(let* ((out (assoc-ref %outputs "out"))
|
||||
(font-dir (string-append out "/share/fonts/misc"))
|
||||
(psf-dir (string-append out "/share/kbd/consolefonts")))
|
||||
(chdir (assoc-ref %build-inputs "source"))
|
||||
(mkdir-p font-dir)
|
||||
(mkdir-p psf-dir)
|
||||
(chdir src-pcf-dir)
|
||||
(for-each (lambda (pcf)
|
||||
(install-file pcf font-dir))
|
||||
(find-files "." "\\.pcf$"))
|
||||
(chdir "../psf")
|
||||
(find-files "pcf" "\\.pcf$"))
|
||||
(for-each (lambda (psf)
|
||||
(install-file psf psf-dir))
|
||||
(find-files "." "\\.psf$"))
|
||||
(find-files "psf" "\\.psf$"))
|
||||
#t))))
|
||||
(native-inputs
|
||||
`(("tar" ,tar)
|
||||
("gzip" ,gzip)))
|
||||
(home-page "https://github.com/sunaku/tamzen-font")
|
||||
(synopsis "Monospaced bitmap font for console and X11")
|
||||
(description
|
||||
|
@ -1106,15 +1086,15 @@ (define-public font-comic-neue
|
|||
(define-public font-iosevka
|
||||
(package
|
||||
(name "font-iosevka")
|
||||
(version "1.12.5")
|
||||
(source (origin
|
||||
(method url-fetch/zipbomb)
|
||||
(uri (string-append
|
||||
"https://github.com/be5invis/Iosevka/releases/download/v"
|
||||
version "/iosevka-pack-" version ".zip"))
|
||||
(sha256
|
||||
(base32
|
||||
"0s3g6mk0ngwsrw9h9dqinb50cd9i8zhqdcmmh93fhyf4d87yfwyi"))))
|
||||
(version "2.2.0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch/zipbomb)
|
||||
(uri (string-append "https://github.com/be5invis/Iosevka"
|
||||
"/releases/download/v" version
|
||||
"/ttc-iosevka-" version ".zip"))
|
||||
(sha256
|
||||
(base32 "14jfv6pkh1w44m89z2fn44kgmmqaf0057lk71advwfbm3q313y0x"))))
|
||||
(build-system font-build-system)
|
||||
(home-page "https://be5invis.github.io/Iosevka/")
|
||||
(synopsis "Coders' typeface, built from code")
|
||||
|
@ -1125,6 +1105,20 @@ (define-public font-iosevka
|
|||
(license (list license:silofl1.1 ; build artifacts (i.e. the fonts)
|
||||
license:bsd-3)))) ; supporting code
|
||||
|
||||
(define-public font-iosevka-slab
|
||||
(package
|
||||
(inherit font-iosevka)
|
||||
(name "font-iosevka-slab")
|
||||
(version (package-version font-iosevka))
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch/zipbomb)
|
||||
(uri (string-append "https://github.com/be5invis/Iosevka"
|
||||
"/releases/download/v" version
|
||||
"/ttc-iosevka-slab-" version ".zip"))
|
||||
(sha256
|
||||
(base32 "186d0pl13znysll3hvzm1ixn7ad616g6dhla55sbh6ki2j04b8ml"))))))
|
||||
|
||||
(define-public font-go
|
||||
(let ((commit "f03a046406d4d7fbfd4ed29f554da8f6114049fc")
|
||||
(revision "1"))
|
||||
|
@ -1162,14 +1156,14 @@ (define-public font-google-material-design-icons
|
|||
(name "font-google-material-design-icons")
|
||||
(version "3.0.1")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
"https://github.com/google/material-design-icons/archive/"
|
||||
version ".tar.gz"))
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/google/material-design-icons.git")
|
||||
(commit version)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"018i3za9r6kf6svci33z09lc5pr5yz4164m8gzzwjzzqcrng0p5j"))
|
||||
(file-name (string-append name "-" version ".tar.gz"))))
|
||||
"17q5brcqyyc8gbjdgpv38p89s60cwxjlwy2ljnrvas5cj0s62np0"))))
|
||||
(build-system font-build-system)
|
||||
(home-page "http://google.github.io/material-design-icons")
|
||||
(synopsis "Icon font of Google Material Design icons")
|
||||
|
@ -1188,13 +1182,14 @@ (define-public font-open-dyslexic
|
|||
(version "20160623")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://github.com/antijingoist/open-dyslexic/"
|
||||
"archive/" version "-Stable.tar.gz"))
|
||||
(file-name (string-append name "-" version ".tar.gz"))
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/antijingoist/open-dyslexic.git")
|
||||
(commit (string-append version "-Stable"))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"0al0j9kb32kfavcpq1kigsd36yzvf5yhzqhds0jkh7ngbxyxwkx4"))))
|
||||
"0nr7s92nk1kbr459154idnib977ixc70z6g9mbra3lp73nyrmyvz"))))
|
||||
(build-system font-build-system)
|
||||
(home-page "https://opendyslexic.org")
|
||||
(synopsis "Font for dyslexics and high readability")
|
||||
|
|
|
@ -230,7 +230,7 @@ (define-public libxdg-basedir
|
|||
(define-public elogind
|
||||
(package
|
||||
(name "elogind")
|
||||
(version "241.1")
|
||||
(version "241.2")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
|
@ -239,7 +239,7 @@ (define-public elogind
|
|||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"0a4irq4ycps3xcizjjr0gz3j46dyqvcwa4ncinpqpqlasi8l18nk"))))
|
||||
"1ragysp4kh1vj3zpz1aprh5h4k3hmp3i5q55pimpabdpkdfbv2fc"))))
|
||||
(build-system meson-build-system)
|
||||
(arguments
|
||||
`(#:configure-flags
|
||||
|
|
|
@ -134,9 +134,9 @@ (define-public ncftp
|
|||
(synopsis "Command-line File Transfer Protocol (FTP) client")
|
||||
(description
|
||||
"NcFTP Client (or just NcFTP) is a set of command-line programs to access
|
||||
File Transfer Protocol (FTP) servers. This includes 'ncftp', an interactive
|
||||
FTP browser, as well as non-interactive commands such as 'ncftpput' and
|
||||
'ncftpget'.")
|
||||
File Transfer Protocol (FTP) servers. This includes @code{ncftp}, an interactive
|
||||
FTP browser, as well as non-interactive commands such as @code{ncftpput} and
|
||||
@code{ncftpget}.")
|
||||
(license clarified-artistic)))
|
||||
|
||||
|
||||
|
@ -209,14 +209,14 @@ (define-public libfilezilla
|
|||
(define-public filezilla
|
||||
(package
|
||||
(name "filezilla")
|
||||
(version "3.41.1")
|
||||
(version "3.41.2")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://download.filezilla-project.org/client/"
|
||||
"FileZilla_" version "_src.tar.bz2"))
|
||||
(sha256
|
||||
(base32 "0mlv21054fk11rspbnig0q4gph1iqsqm4rpya3wl5is50p33vg5w"))))
|
||||
(base32 "05zhvzvzkbns0cdxmlswvasfa6031y22dhfj9y5p85gi654f4fy2"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
;; Don't let filezilla phone home to check for updates.
|
||||
|
|
|
@ -14,6 +14,7 @@
|
|||
;;; Copyright © 2017 Arun Isaac <arunisaac@systemreboot.net>
|
||||
;;; Copyright © 2017 Rutger Helling <rhelling@mykolab.com>
|
||||
;;; Copyright © 2018 Marius Bakke <mbakke@fastmail.com>
|
||||
;;; Copyright © 2019 Pierre Neidhardt <mail@ambrevar.xyz>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
|
@ -35,6 +36,7 @@ (define-module (gnu packages game-development)
|
|||
#:use-module (guix packages)
|
||||
#:use-module (guix download)
|
||||
#:use-module (guix git-download)
|
||||
#:use-module (guix svn-download)
|
||||
#:use-module (guix utils)
|
||||
#:use-module (guix build-system cmake)
|
||||
#:use-module (guix build-system gnu)
|
||||
|
@ -431,7 +433,7 @@ (define-public python2-xsge
|
|||
(define-public tiled
|
||||
(package
|
||||
(name "tiled")
|
||||
(version "1.2.2")
|
||||
(version "1.2.3")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
|
@ -440,7 +442,7 @@ (define-public tiled
|
|||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"0ay4x1b6h5xfax1cqry2fklcmqi6a16klgmci4gkhga7as66lnnn"))))
|
||||
"1nfyigfkl10n9r82p1qxhpr09jn2kwalh9n5r209bcaj8dxspph8"))))
|
||||
(build-system gnu-build-system)
|
||||
(inputs
|
||||
`(("qtbase" ,qtbase)
|
||||
|
@ -567,7 +569,7 @@ (define-public sfxr
|
|||
(define-public physfs
|
||||
(package
|
||||
(name "physfs")
|
||||
(version "3.0.1")
|
||||
(version "3.0.2")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
|
@ -576,7 +578,7 @@ (define-public physfs
|
|||
(file-name (string-append name "-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1wgj2zqpnfbnyyi1i7bq5pshcc9n5cvwlpzp8im67nb8662ryyxp"))))
|
||||
"0qzqz4r88gvd8m7sh2z5hvqcr0jfr4wb2f77c19xycyn0rigfk9h"))))
|
||||
(build-system cmake-build-system)
|
||||
(arguments
|
||||
'(#:tests? #f ; no check target
|
||||
|
@ -1078,7 +1080,7 @@ (define-public openmw
|
|||
(method url-fetch)
|
||||
(uri
|
||||
(string-append "https://github.com/OpenMW/openmw/archive/"
|
||||
name "-" version ".tar.gz"))
|
||||
"openmw-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"03fgm2f2r7y0aqlgp038pdlnllgvm3jimrp968p4nhz1sffvjzcy"))))
|
||||
|
@ -1329,3 +1331,76 @@ (define-public guile-chickadee
|
|||
@item REPL-driven development model
|
||||
@end enumerate\n")
|
||||
(license license:gpl3+)))
|
||||
|
||||
(define-public bennu-game-development
|
||||
(package
|
||||
(name "bennu-game-development")
|
||||
(version "348")
|
||||
(source (origin
|
||||
(method svn-fetch)
|
||||
(uri (svn-reference
|
||||
(url "http://svn.code.sf.net/p/bennugd/code")
|
||||
(revision (string->number version))))
|
||||
(file-name (string-append name "-" version))
|
||||
(sha256
|
||||
(base32
|
||||
"0wpzsbh4zi3931493dnyl5ffmh1b7fj2sx3mzrq304z9zs4d6lqq"))
|
||||
(modules '((guix build utils)))
|
||||
(snippet
|
||||
'(begin
|
||||
(delete-file-recursively "3rdparty") #t))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
'(#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-after 'unpack 'patch-configure-to-use-openssl
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
(chdir "core")
|
||||
(delete-file "configure")
|
||||
(substitute* "configure.in"
|
||||
(("i\\*86\\)")
|
||||
"*)
|
||||
COMMON_CFLAGS=\"$COMMON_CFLAGS -DUSE_OPENSSL\"
|
||||
COMMON_LDFLAGS=\"$COMMON_LDFLAGS\"
|
||||
LIBSSL=\"crypto\"
|
||||
USE_OPENSSL=yes
|
||||
;;
|
||||
|
||||
i*86)"))
|
||||
#t)))))
|
||||
(inputs `(("openssl" ,openssl)
|
||||
("zlib" ,zlib)))
|
||||
(native-inputs `(("pkg-config" ,pkg-config)
|
||||
("autoconf" ,autoconf)
|
||||
("automake" ,automake)
|
||||
("libtool" ,libtool)))
|
||||
(synopsis "Programming language to create games")
|
||||
(description "Bennu Game Development, also known as bennudg, is a
|
||||
programming language tailored at game development. It is the successor of
|
||||
Fenix.")
|
||||
(home-page "https://sourceforge.net/projects/bennugd/")
|
||||
(license license:zlib)))
|
||||
|
||||
(define-public bennu-game-development-modules
|
||||
(package
|
||||
(inherit bennu-game-development)
|
||||
(name "bennu-game-development-modules")
|
||||
(arguments
|
||||
'(#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-after 'unpack 'patch-conflicting-definitions
|
||||
(lambda _
|
||||
(with-fluids ((%default-port-encoding #f))
|
||||
(substitute* "core/include/fmath.h"
|
||||
(("extern fixed fmul\\( int x, int y \\);") "")
|
||||
(("extern fixed fdiv\\( int x, int y \\);") "")))
|
||||
(chdir "modules"))))))
|
||||
(inputs `(("zlib" ,zlib)
|
||||
("libpng" ,libpng)
|
||||
("openssl" ,openssl)
|
||||
("sdl-mixer" ,sdl-mixer)
|
||||
("bennu-game-development" ,bennu-game-development)))
|
||||
(synopsis "Modules for the Bennu Game Developement programming language")
|
||||
(description "This package contains a collection of modules for the Bennu
|
||||
Game Developement programming language, from CD handling through SDL to
|
||||
joystick support.")))
|
||||
|
|
File diff suppressed because it is too large
Load diff
|
@ -120,7 +120,7 @@ (define-public freeglut
|
|||
"Freeglut is a completely Free/OpenSourced alternative to
|
||||
the OpenGL Utility Toolkit (GLUT) library. GLUT was originally
|
||||
written by Mark Kilgard to support the sample programs in the
|
||||
second edition OpenGL 'RedBook'. Since then, GLUT has been used
|
||||
second edition OpenGL @code{RedBook}. Since then, GLUT has been used
|
||||
in a wide variety of practical applications because it is simple,
|
||||
widely available and highly portable.
|
||||
|
||||
|
|
|
@ -392,7 +392,7 @@ (define-public libgdata
|
|||
("libsoup" ,libsoup)))
|
||||
(propagated-inputs
|
||||
`(("gcr" ,gcr)
|
||||
("gnome-online-accounts" ,gnome-online-accounts)
|
||||
("gnome-online-accounts:lib" ,gnome-online-accounts "lib")
|
||||
("liboauth" ,liboauth)
|
||||
("libxml2" ,libxml2)))
|
||||
(home-page "https://wiki.gnome.org/Projects/libgdata")
|
||||
|
@ -5064,7 +5064,23 @@ (define-public gnome-online-accounts
|
|||
(sha256
|
||||
(base32
|
||||
"035lmm21imr7ddpzffqabv53g3ggjscmqvlzy3j1qkv00zrlxg47"))))
|
||||
(outputs '("out" "lib"))
|
||||
(build-system glib-or-gtk-build-system)
|
||||
(arguments
|
||||
`(#:configure-flags
|
||||
(list (string-append "--libdir=" (assoc-ref %outputs "out") "/lib"))
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-before 'configure 'patch-libgoa-output
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
(let ((lib (assoc-ref outputs "lib")))
|
||||
(substitute* '("src/goa/Makefile.in" "src/goa/goa-1.0.pc.in")
|
||||
(("@prefix@") lib)
|
||||
(("@exec_prefix@") lib)
|
||||
(("@libdir@") (string-append lib "/lib"))
|
||||
(("@includedir@") (string-append lib "/include"))
|
||||
(("@datadir@") (string-append lib "/share")))
|
||||
#t))))))
|
||||
(native-inputs
|
||||
`(("glib:bin" ,glib "bin") ; for glib-compile-schemas, etc.
|
||||
("gobject-introspection" ,gobject-introspection)
|
||||
|
@ -5101,6 +5117,7 @@ (define-public evolution-data-server
|
|||
(sha256
|
||||
(base32
|
||||
"11sq795115vrcgxl9svscm6wg8isjj784c3d84qzb6z47zq92zj3"))))
|
||||
(outputs '("out" "libedataserverui"))
|
||||
(build-system cmake-build-system)
|
||||
(arguments
|
||||
'(;; XXX FIXME: 11/85 tests are failing.
|
||||
|
@ -5141,7 +5158,40 @@ (define-public evolution-data-server
|
|||
;; CMakeLists.txt hard-codes runpath to just the libdir.
|
||||
;; Remove it so the configure flag is respected.
|
||||
(("SET\\(CMAKE_INSTALL_RPATH .*") ""))
|
||||
#t)))))
|
||||
#t))
|
||||
(add-before 'configure 'factor-webkit
|
||||
(lambda _
|
||||
(substitute* "CMakeLists.txt"
|
||||
(("webkit2gtk-4\\.0>=\\$[{]webkit2gtk_minimum_version[}]") "")
|
||||
(("if[(]ENABLE_OAUTH2[)]")
|
||||
(string-append
|
||||
"if(ENABLE_OAUTH2)\n"
|
||||
"\tpkg_check_modules(OAUTH2_UI REQUIRED "
|
||||
"webkit2gtk-4.0>=${webkit2gtk_minimum_version})")))
|
||||
(substitute* "src/libedataserverui/CMakeLists.txt"
|
||||
(("\\$[{]OAUTH2_([A-Z_]+)[}]" all part)
|
||||
(string-append all " ${OAUTH2_UI_" part "}")))))
|
||||
(add-after 'install 'split
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
(let ((out (assoc-ref outputs "out"))
|
||||
(libedsui (assoc-ref outputs "libedataserverui")))
|
||||
(for-each (lambda (file)
|
||||
(mkdir-p (dirname (string-append libedsui file)))
|
||||
(rename-file (string-append out file)
|
||||
(string-append libedsui file)))
|
||||
'("/lib/pkgconfig/libedataserverui-1.2.pc"
|
||||
"/lib/libedataserverui-1.2.so"
|
||||
"/lib/libedataserverui-1.2.so.2"
|
||||
"/lib/libedataserverui-1.2.so.2.0.0"
|
||||
"/lib/girepository-1.0/EDataServerUI-1.2.typelib"
|
||||
"/include/evolution-data-server/libedataserverui"
|
||||
"/share/gir-1.0/EDataServerUI-1.2.gir"
|
||||
"/share/vala/vapi/libedataserverui-1.2.vapi"
|
||||
"/share/vala/vapi/libedataserverui-1.2.deps"))
|
||||
(substitute* (string-append libedsui "/lib/pkgconfig/"
|
||||
"libedataserverui-1.2.pc")
|
||||
((out) libedsui))
|
||||
#t))))))
|
||||
(native-inputs
|
||||
`(("glib:bin" ,glib "bin") ; for glib-mkenums, etc.
|
||||
("gobject-introspection" ,gobject-introspection)
|
||||
|
@ -5161,7 +5211,7 @@ (define-public evolution-data-server
|
|||
(inputs
|
||||
`(("bdb" ,bdb)
|
||||
("gcr" ,gcr)
|
||||
("gnome-online-accounts" ,gnome-online-accounts)
|
||||
("gnome-online-accounts:lib" ,gnome-online-accounts "lib")
|
||||
("json-glib" ,json-glib)
|
||||
("libgweather" ,libgweather)
|
||||
("mit-krb5" ,mit-krb5)
|
||||
|
@ -5777,6 +5827,7 @@ (define-public gnome-control-center
|
|||
("gnome-bluetooth" ,gnome-bluetooth)
|
||||
("gnome-desktop" ,gnome-desktop)
|
||||
("gnome-online-accounts" ,gnome-online-accounts)
|
||||
("gnome-online-accounts:lib" ,gnome-online-accounts "lib")
|
||||
("gnome-settings-daemon" ,gnome-settings-daemon)
|
||||
("grilo" ,grilo)
|
||||
("ibus" ,ibus)
|
||||
|
@ -5920,7 +5971,6 @@ (define-public gnome-shell
|
|||
("gdm" ,gdm)
|
||||
("gjs" ,gjs)
|
||||
("gnome-bluetooth" ,gnome-bluetooth)
|
||||
("gnome-control-center" ,gnome-control-center)
|
||||
("gnome-desktop" ,gnome-desktop)
|
||||
("gnome-settings-daemon" ,gnome-settings-daemon)
|
||||
("gst-plugins-base" ,gst-plugins-base)
|
||||
|
@ -6487,7 +6537,7 @@ (define-public libzapojit
|
|||
("intltool" ,intltool)
|
||||
("pkg-config" ,pkg-config)))
|
||||
(inputs
|
||||
`(("gnome-online-accounts" ,gnome-online-accounts)
|
||||
`(("gnome-online-accounts:lib" ,gnome-online-accounts "lib")
|
||||
("json-glib" ,json-glib)
|
||||
("rest" ,rest)))
|
||||
(home-page "https://wiki.gnome.org/Projects/Zapojit")
|
||||
|
@ -6560,9 +6610,10 @@ (define-public gnome-calendar
|
|||
("pkg-config" ,pkg-config)))
|
||||
(inputs
|
||||
`(("evolution-data-server" ,evolution-data-server)
|
||||
("gnome-online-accounts" ,gnome-online-accounts)
|
||||
("gnome-online-accounts:lib" ,gnome-online-accounts "lib")
|
||||
("gsettings-desktop-schemas" ,gsettings-desktop-schemas)
|
||||
("libdazzle" ,libdazzle)
|
||||
("libedataserverui" ,evolution-data-server "libedataserverui")
|
||||
("libgweather" ,libgweather)
|
||||
("geoclue" ,geoclue)))
|
||||
(home-page "https://wiki.gnome.org/Apps/Calendar")
|
||||
|
@ -6610,11 +6661,12 @@ (define-public gnome-todo
|
|||
(inputs
|
||||
`(("rest" ,rest) ; For Todoist plugin
|
||||
("json-glib" ,json-glib) ; For Todoist plugin
|
||||
("libedataserverui" ,evolution-data-server "libedataserverui")
|
||||
("libical" ,libical)
|
||||
("libpeas" ,libpeas)
|
||||
("python-pygobject" ,python-pygobject)
|
||||
("evolution-data-server" ,evolution-data-server)
|
||||
("gnome-online-accounts" ,gnome-online-accounts)
|
||||
("gnome-online-accounts:lib" ,gnome-online-accounts "lib")
|
||||
("gsettings-desktop-schemas" ,gsettings-desktop-schemas)))
|
||||
(home-page "https://wiki.gnome.org/Apps/Todo")
|
||||
(synopsis "GNOME's ToDo Application")
|
||||
|
@ -6943,7 +6995,7 @@ (define-public gfbgraph
|
|||
("gobject-introspection" ,gobject-introspection)))
|
||||
(inputs
|
||||
`(("json-glib" ,json-glib)
|
||||
("gnome-online-accounts" ,gnome-online-accounts)
|
||||
("gnome-online-accounts:lib" ,gnome-online-accounts "lib")
|
||||
("rest" ,rest)))
|
||||
(synopsis "GLib/GObject wrapper for the Facebook API")
|
||||
(description "This library allows you to use the Facebook API from
|
||||
|
@ -7825,6 +7877,7 @@ (define-public evolution
|
|||
("gtkspell3" ,gtkspell3)
|
||||
("highlight" ,highlight)
|
||||
("libcanberra" ,libcanberra)
|
||||
("libedataserverui" ,evolution-data-server "libedataserverui")
|
||||
("libgweather" ,libgweather)
|
||||
("libnotify" ,libnotify)
|
||||
("libsoup" ,libsoup)
|
||||
|
|
|
@ -104,8 +104,7 @@ (define-public gnucash
|
|||
(add-after 'unpack 'unpack-gmock
|
||||
(lambda* (#:key inputs #:allow-other-keys)
|
||||
(mkdir "gmock")
|
||||
(invoke "tar" "xf" (assoc-ref inputs "googlemock")
|
||||
"-C" "gmock" "--strip-components=1")
|
||||
(copy-recursively (assoc-ref inputs "googlemock") "gmock")
|
||||
(setenv "GMOCK_ROOT" (string-append (getcwd) "/gmock/googlemock"))
|
||||
#t))
|
||||
(add-after 'unpack 'set-env-vars
|
||||
|
@ -165,14 +164,14 @@ (define-public gnucash
|
|||
,@(transitive-input-references
|
||||
'inputs
|
||||
(map (lambda (l)
|
||||
(assoc l (inputs)))
|
||||
(assoc l (package-inputs this-package)))
|
||||
'("perl-finance-quote"
|
||||
"perl-date-manip"))))
|
||||
(list
|
||||
,@(transitive-input-references
|
||||
'inputs
|
||||
(map (lambda (l)
|
||||
(assoc l (inputs)))
|
||||
(assoc l (package-inputs this-package)))
|
||||
'("perl-finance-quote")))))))))
|
||||
'("gnucash"
|
||||
"gnc-fq-check"
|
||||
|
|
|
@ -224,14 +224,14 @@ (define-public npth
|
|||
(define-public gnupg
|
||||
(package
|
||||
(name "gnupg")
|
||||
(version "2.2.14")
|
||||
(version "2.2.15")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "mirror://gnupg/gnupg/gnupg-" version
|
||||
".tar.bz2"))
|
||||
(sha256
|
||||
(base32
|
||||
"0yzqrg24j9fc4f8ss5pclyvg70a9z53sv89vl77xii8yvi3fvy8v"))))
|
||||
"0m6lyphbb20i84isdxzfhcbzyc682hdrdv4aqkzmhrdksycf536b"))))
|
||||
(build-system gnu-build-system)
|
||||
(native-inputs
|
||||
`(("pkg-config" ,pkg-config)))
|
||||
|
|
|
@ -578,7 +578,7 @@ (define* (computed-origin-method gexp-promise hash-algo hash
|
|||
#:system system
|
||||
#:guile-for-build guile)))
|
||||
|
||||
(define %icecat-version "60.6.0-guix1")
|
||||
(define %icecat-version "60.6.1-guix1")
|
||||
|
||||
;; 'icecat-source' is a "computed" origin that generates an IceCat tarball
|
||||
;; from the corresponding upstream Firefox ESR tarball, using the 'makeicecat'
|
||||
|
@ -600,7 +600,7 @@ (define icecat-source
|
|||
"firefox-" upstream-firefox-version ".source.tar.xz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1mc57dhwyjr6qjm3q617wvj306wi72548wjx7lz1dxkz6hndi03w"))))
|
||||
"1x8419a1yg6igsq5ij3ymf1zmnb2wpm9dqcdfkv5wy43xgf7y0wl"))))
|
||||
|
||||
(upstream-icecat-base-version "60.3.0") ; maybe older than base-version
|
||||
(upstream-icecat-gnu-version "1")
|
||||
|
|
|
@ -18,15 +18,90 @@
|
|||
|
||||
(define-module (gnu packages gpodder)
|
||||
#:use-module (guix download)
|
||||
#:use-module (guix git-download)
|
||||
#:use-module (guix packages)
|
||||
#:use-module ((guix licenses) #:prefix license:)
|
||||
#:use-module (guix build-system cmake)
|
||||
#:use-module (guix build-system python)
|
||||
#:use-module (gnu packages)
|
||||
#:use-module (gnu packages check)
|
||||
#:use-module (gnu packages freedesktop)
|
||||
#:use-module (gnu packages glib)
|
||||
#:use-module (gnu packages gtk)
|
||||
#:use-module (gnu packages pkg-config)
|
||||
#:use-module (gnu packages python-web)
|
||||
#:use-module (gnu packages python-xyz)
|
||||
#:use-module (gnu packages qt))
|
||||
|
||||
(define-public gpodder
|
||||
(package
|
||||
(name "gpodder")
|
||||
(version "3.10.7")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/gpodder/gpodder.git")
|
||||
(commit version)))
|
||||
(sha256
|
||||
(base32
|
||||
"0sx9rj6dpvd2xz7lak2yi0zlgr3lp2ng1fw23s39la9ly4g1835j"))
|
||||
(file-name (git-file-name name version))))
|
||||
(build-system python-build-system)
|
||||
(native-inputs
|
||||
`(("intltool" ,intltool)))
|
||||
(inputs
|
||||
`(("gtk+" ,gtk+)
|
||||
("python-pygobject" ,python-pygobject)
|
||||
("python-pycairo" ,python-pycairo)
|
||||
("python-dbus" ,python-dbus)
|
||||
("python-html5lib" ,python-html5lib)
|
||||
("python-mygpoclient" ,python-mygpoclient)
|
||||
("python-podcastparser" ,python-podcastparser)
|
||||
("xdg-utils" ,xdg-utils)))
|
||||
(arguments
|
||||
'(#:phases
|
||||
(modify-phases %standard-phases
|
||||
;; Avoid needing xdg-utils as a propagated input.
|
||||
(add-after 'unpack 'patch-xdg-open
|
||||
(lambda* (#:key inputs #:allow-other-keys)
|
||||
(let ((xdg-utils (assoc-ref inputs "xdg-utils")))
|
||||
(substitute* "src/gpodder/util.py"
|
||||
(("xdg-open") (string-append xdg-utils "/bin/xdg-open")))
|
||||
#t)))
|
||||
;; 'msgmerge' introduces non-determinism by resetting the
|
||||
;; POT-Creation-Date in .po files.
|
||||
(add-before 'install 'do-not-run-msgmerge
|
||||
(lambda _
|
||||
(substitute* "makefile"
|
||||
(("msgmerge") "true"))
|
||||
#t))
|
||||
(add-before 'install 'make-po-files-writable
|
||||
(lambda _
|
||||
(for-each
|
||||
(lambda (f)
|
||||
(chmod f #o664))
|
||||
(find-files "po"))))
|
||||
(replace 'install
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
(setenv "PREFIX" (assoc-ref outputs "out"))
|
||||
(invoke "make" "install")
|
||||
#t))
|
||||
(add-after 'install 'wrap-gpodder
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
(let ((out (assoc-ref outputs "out"))
|
||||
(gi-typelib-path (getenv "GI_TYPELIB_PATH")))
|
||||
(wrap-program (string-append out "/bin/gpodder")
|
||||
`("GI_TYPELIB_PATH" ":" prefix (,gi-typelib-path)))
|
||||
#t))))))
|
||||
(home-page "https://gpodder.github.io")
|
||||
(synopsis "Simple podcast client")
|
||||
(description "gPodder is a podcatcher, i.e. an application that allows
|
||||
podcast feeds (RSS, Atom, Youtube, Soundcloud, Vimeo and XSPF) to be
|
||||
subscribed to, checks for new episodes and allows the podcast to be saved
|
||||
locally for later listening.")
|
||||
(license license:gpl3+)))
|
||||
|
||||
(define-public libmygpo-qt
|
||||
(package
|
||||
(name "libmygpo-qt")
|
||||
|
@ -57,6 +132,36 @@ (define-public libmygpo-qt
|
|||
and track podcasts.")
|
||||
(license license:lgpl2.1+)))
|
||||
|
||||
(define-public python-mygpoclient
|
||||
(package
|
||||
(name "python-mygpoclient")
|
||||
(version "1.8")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "mygpoclient" version))
|
||||
(sha256
|
||||
(base32
|
||||
"1fi5x6k1mngr0iviw2s4n1f3y2x7pwqy5ivkcrjdprzvwr37f0mh"))))
|
||||
(build-system python-build-system)
|
||||
(native-inputs
|
||||
`(("python-coverage" ,python-coverage)
|
||||
("python-minimock" ,python-minimock)
|
||||
("python-nose" ,python-nose)))
|
||||
(arguments
|
||||
`(#:phases
|
||||
(modify-phases %standard-phases
|
||||
(replace 'check
|
||||
(lambda _
|
||||
(invoke "make" "test"))))))
|
||||
(home-page "https://mygpoclient.readthedocs.io")
|
||||
(synopsis "Python library for the gPodder web service")
|
||||
(description "@code{mygpoclient} provides an easy and structured way to
|
||||
access the @url{https://gpodder.net} web services. In addition to
|
||||
subscription list synchronization and storage, the API supports uploading and
|
||||
downloading episode status changes.")
|
||||
(license license:gpl3+)))
|
||||
|
||||
(define-public python-podcastparser
|
||||
(package
|
||||
(name "python-podcastparser")
|
||||
|
|
|
@ -2,6 +2,7 @@
|
|||
;;; Copyright © 2017, 2018, 2019 Ricardo Wurmus <rekado@elephly.net>
|
||||
;;; Copyright © 2018 Joshua Sierles, Nextjournal <joshua@nextjournal.com>
|
||||
;;; Copyright © 2018 Tobias Geerinckx-Rice <me@tobias.gr>
|
||||
;;; Copyright © 2019 Efraim Flashner <efraim@flashner.co.il>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
|
@ -22,6 +23,8 @@ (define-module (gnu packages graph)
|
|||
#:use-module (guix download)
|
||||
#:use-module (guix git-download)
|
||||
#:use-module (guix packages)
|
||||
#:use-module (guix utils)
|
||||
#:use-module (guix build-system cmake)
|
||||
#:use-module (guix build-system gnu)
|
||||
#:use-module (guix build-system python)
|
||||
#:use-module (guix build-system r)
|
||||
|
@ -30,6 +33,7 @@ (define-module (gnu packages graph)
|
|||
#:use-module (gnu packages gcc)
|
||||
#:use-module (gnu packages bioconductor)
|
||||
#:use-module (gnu packages bioinformatics)
|
||||
#:use-module (gnu packages check)
|
||||
#:use-module (gnu packages compression)
|
||||
#:use-module (gnu packages cran)
|
||||
#:use-module (gnu packages graphviz)
|
||||
|
@ -40,6 +44,7 @@ (define-module (gnu packages graph)
|
|||
#:use-module (gnu packages python-web)
|
||||
#:use-module (gnu packages python-xyz)
|
||||
#:use-module (gnu packages statistics)
|
||||
#:use-module (gnu packages swig)
|
||||
#:use-module (gnu packages time)
|
||||
#:use-module (gnu packages xml))
|
||||
|
||||
|
@ -239,3 +244,140 @@ (define-public python-plotly
|
|||
|
||||
(define-public python2-plotly
|
||||
(package-with-python2 python-plotly))
|
||||
|
||||
(define-public faiss
|
||||
(package
|
||||
(name "faiss")
|
||||
(version "1.5.0")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/facebookresearch/faiss.git")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"0pk15jfa775cy2pqmzq62nhd6zfjxmpvz5h731197c28aq3zw39w"))
|
||||
(modules '((guix build utils)))
|
||||
(snippet
|
||||
'(begin
|
||||
(substitute* "utils.cpp"
|
||||
(("#include <immintrin.h>")
|
||||
"#ifdef __SSE__\n#include <immintrin.h>\n#endif"))
|
||||
#t))))
|
||||
(build-system cmake-build-system)
|
||||
(arguments
|
||||
`(#:configure-flags
|
||||
(list "-DBUILD_WITH_GPU=OFF" ; thanks, but no thanks, CUDA.
|
||||
"-DBUILD_TUTORIAL=OFF") ; we don't need those
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-after 'unpack 'prepare-build
|
||||
(lambda _
|
||||
(let ((features (list ,@(let ((system (or (%current-target-system)
|
||||
(%current-system))))
|
||||
(cond
|
||||
((string-prefix? "x86_64" system)
|
||||
'("-mavx" "-msse2" "-mpopcnt"))
|
||||
((string-prefix? "i686" system)
|
||||
'("-msse2" "-mpopcnt"))
|
||||
(else
|
||||
'()))))))
|
||||
(substitute* "CMakeLists.txt"
|
||||
(("-m64") "")
|
||||
(("-mpopcnt") "") ; only some architectures
|
||||
(("-msse4")
|
||||
(string-append
|
||||
(string-join features)
|
||||
" -I" (getcwd)))
|
||||
;; Build also the shared library
|
||||
(("ARCHIVE DESTINATION lib")
|
||||
"LIBRARY DESTINATION lib")
|
||||
(("add_library.*" m)
|
||||
"\
|
||||
add_library(objlib OBJECT ${faiss_cpu_headers} ${faiss_cpu_cpp})
|
||||
set_property(TARGET objlib PROPERTY POSITION_INDEPENDENT_CODE 1)
|
||||
add_library(${faiss_lib}_static STATIC $<TARGET_OBJECTS:objlib>)
|
||||
add_library(${faiss_lib} SHARED $<TARGET_OBJECTS:objlib>)
|
||||
install(TARGETS ${faiss_lib}_static ARCHIVE DESTINATION lib)
|
||||
\n")))
|
||||
|
||||
;; See https://github.com/facebookresearch/faiss/issues/520
|
||||
(substitute* "IndexScalarQuantizer.cpp"
|
||||
(("#define USE_AVX") ""))
|
||||
|
||||
;; Make header files available for compiling tests.
|
||||
(mkdir-p "faiss")
|
||||
(for-each (lambda (file)
|
||||
(mkdir-p (string-append "faiss/" (dirname file)))
|
||||
(copy-file file (string-append "faiss/" file)))
|
||||
(find-files "." "\\.h$"))
|
||||
#t))
|
||||
(replace 'check
|
||||
(lambda _
|
||||
(invoke "make" "-C" "tests"
|
||||
(format #f "-j~a" (parallel-job-count)))))
|
||||
(add-after 'install 'remove-tests
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
(delete-file-recursively
|
||||
(string-append (assoc-ref outputs "out")
|
||||
"/test"))
|
||||
#t)))))
|
||||
(inputs
|
||||
`(("openblas" ,openblas)))
|
||||
(native-inputs
|
||||
`(("googletest" ,googletest)))
|
||||
(home-page "https://github.com/facebookresearch/faiss")
|
||||
(synopsis "Efficient similarity search and clustering of dense vectors")
|
||||
(description "Faiss is a library for efficient similarity search and
|
||||
clustering of dense vectors. It contains algorithms that search in sets of
|
||||
vectors of any size, up to ones that possibly do not fit in RAM. It also
|
||||
contains supporting code for evaluation and parameter tuning.")
|
||||
(license license:bsd-3)))
|
||||
|
||||
(define-public python-faiss
|
||||
(package (inherit faiss)
|
||||
(name "python-faiss")
|
||||
(build-system python-build-system)
|
||||
(arguments
|
||||
`(#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-after 'unpack 'chdir
|
||||
(lambda _ (chdir "python") #t))
|
||||
(add-after 'chdir 'build-swig
|
||||
(lambda* (#:key inputs #:allow-other-keys)
|
||||
(with-output-to-file "../makefile.inc"
|
||||
(lambda ()
|
||||
(let ((python-version ,(version-major+minor (package-version python))))
|
||||
(format #t "\
|
||||
PYTHONCFLAGS =-I~a/include/python~am/ -I~a/lib/python~a/site-packages/numpy/core/include
|
||||
LIBS = -lpython~am -lfaiss
|
||||
SHAREDFLAGS = -shared -fopenmp
|
||||
CXXFLAGS = -fpermissive -std=c++11 -fopenmp -fPIC
|
||||
CPUFLAGS = ~{~a ~}~%"
|
||||
(assoc-ref inputs "python*") python-version
|
||||
(assoc-ref inputs "python-numpy") python-version
|
||||
python-version
|
||||
(list ,@(let ((system (or (%current-target-system)
|
||||
(%current-system))))
|
||||
(cond
|
||||
((string-prefix? "x86_64" system)
|
||||
'("-mavx" "-msse2" "-mpopcnt"))
|
||||
((string-prefix? "i686" system)
|
||||
'("-msse2" "-mpopcnt"))
|
||||
(else
|
||||
'()))))))))
|
||||
(substitute* "Makefile"
|
||||
(("../libfaiss.a") ""))
|
||||
(invoke "make" "cpu"))))))
|
||||
(inputs
|
||||
`(("faiss" ,faiss)
|
||||
("openblas" ,openblas)
|
||||
("python*" ,python)
|
||||
("swig" ,swig)))
|
||||
(propagated-inputs
|
||||
`(("python-matplotlib" ,python-matplotlib)
|
||||
("python-numpy" ,python-numpy)))
|
||||
(description "Faiss is a library for efficient similarity search and
|
||||
clustering of dense vectors. This package provides Python bindings to the
|
||||
Faiss library.")))
|
||||
|
|
|
@ -354,33 +354,23 @@ (define-public ogre
|
|||
(version "1.10.11")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://github.com/OGRECave/" name
|
||||
"/archive/v" version ".tar.gz"))
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/OGRECave/ogre.git")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"13bdh9v4026qf8w8rbfln2rmwf0rby1a8fz55zpdvpy105i6cbpz"))
|
||||
(file-name (string-append name "-" version ".tar.gz"))))
|
||||
"072rzw9mxymbiypgkrbkk9h10rgly6gczik4dlmssk6xkpqckaqr"))))
|
||||
(build-system cmake-build-system)
|
||||
(arguments
|
||||
'(#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-before 'configure 'pre-configure
|
||||
(lambda _
|
||||
;; It expects googletest source to be downloaded and
|
||||
;; be in a specific place.
|
||||
(substitute* "Tests/CMakeLists.txt"
|
||||
(("URL(.*)$" _ suffix)
|
||||
(string-append "URL " suffix
|
||||
"\t\tURL_HASH "
|
||||
"MD5=16877098823401d1bf2ed7891d7dce36\n")))
|
||||
#t))
|
||||
(add-before 'build 'pre-build
|
||||
(lambda* (#:key inputs #:allow-other-keys)
|
||||
(copy-file (assoc-ref inputs "googletest-source")
|
||||
(string-append (getcwd)
|
||||
"/Tests/googletest-prefix/src/"
|
||||
"release-1.8.0.tar.gz"))
|
||||
(substitute* "Tests/CMakeLists.txt"
|
||||
(("URL(.*)$")
|
||||
(string-append "URL " (assoc-ref inputs "googletest-source"))))
|
||||
#t)))
|
||||
#:configure-flags
|
||||
(list "-DOGRE_BUILD_TESTS=TRUE"
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
;;; GNU Guix --- Functional package management for GNU
|
||||
;;; Copyright © 2013 Andreas Enge <andreas@enge.fr>
|
||||
;;; Copyright © 2013, 2014, 2015, 2016, 2017, 2018 Ludovic Courtès <ludo@gnu.org>
|
||||
;;; Copyright © 2014, 2015, 2017, 2018 Mark H Weaver <mhw@netris.org>
|
||||
;;; Copyright © 2014, 2015, 2017, 2018, 2019 Mark H Weaver <mhw@netris.org>
|
||||
;;; Copyright © 2014 Eric Bavier <bavier@member.fsf.org>
|
||||
;;; Copyright © 2015 Federico Beffa <beffa@fbengineering.ch>
|
||||
;;; Copyright © 2015 Paul van der Walt <paul@denknerd.org>
|
||||
|
@ -822,6 +822,18 @@ (define-public gtk+
|
|||
(variable "GUIX_GTK3_PATH")
|
||||
(files '("lib/gtk-3.0")))))))
|
||||
|
||||
;; Fixes a bug in Gtk that causes crashes in IceCat and Emacs.
|
||||
;; See <https://bugs.gnu.org/34454>, <https://bugs.gnu.org/34658>,
|
||||
;; and <https://gitlab.gnome.org/GNOME/gtk/issues/1523>.
|
||||
(define gtk+/fixed
|
||||
(package
|
||||
(inherit gtk+)
|
||||
(source (origin
|
||||
(inherit (package-source gtk+))
|
||||
(patches
|
||||
(cons (search-patch "gtk3-fix-deprecation-macro-use.patch")
|
||||
(origin-patches (package-source gtk+))))))))
|
||||
|
||||
;;;
|
||||
;;; Guile bindings.
|
||||
;;;
|
||||
|
|
|
@ -103,6 +103,12 @@ (define-public guile-1.8
|
|||
(substitute* "ice-9/popen.scm"
|
||||
(("/bin/sh") (which "sh")))
|
||||
#t)))))
|
||||
|
||||
;; When cross-compiling, a native version of Guile itself is needed.
|
||||
(native-inputs (if (%current-target-system)
|
||||
`(("self" ,this-package))
|
||||
'()))
|
||||
|
||||
(inputs `(("gawk" ,gawk)
|
||||
("readline" ,readline)))
|
||||
|
||||
|
@ -111,9 +117,6 @@ (define-public guile-1.8
|
|||
(propagated-inputs `(("gmp" ,gmp)
|
||||
("libltdl" ,libltdl)))
|
||||
|
||||
;; When cross-compiling, a native version of Guile itself is needed.
|
||||
(self-native-input? #t)
|
||||
|
||||
(native-search-paths
|
||||
(list (search-path-specification
|
||||
(variable "GUILE_LOAD_PATH")
|
||||
|
@ -141,7 +144,12 @@ (define-public guile-2.0
|
|||
(base32
|
||||
"10lxc6l5alf3lzbs3ihnbfy6dfcrsyf8667wa57f26vf4mk2ai78"))))
|
||||
(build-system gnu-build-system)
|
||||
(native-inputs `(("pkgconfig" ,pkg-config)))
|
||||
|
||||
;; When cross-compiling, a native version of Guile itself is needed.
|
||||
(native-inputs `(,@(if (%current-target-system)
|
||||
`(("self" ,this-package))
|
||||
'())
|
||||
("pkgconfig" ,pkg-config)))
|
||||
(inputs `(("libffi" ,libffi)
|
||||
,@(libiconv-if-needed)
|
||||
|
||||
|
@ -165,8 +173,6 @@ (define-public guile-2.0
|
|||
("bdw-gc" ,libgc)
|
||||
("gmp" ,gmp)))
|
||||
|
||||
(self-native-input? #t)
|
||||
|
||||
(outputs '("out" "debug"))
|
||||
|
||||
(arguments
|
||||
|
@ -207,20 +213,6 @@ (define-public guile-2.0
|
|||
(home-page "https://www.gnu.org/software/guile/")
|
||||
(license license:lgpl3+)))
|
||||
|
||||
(define-public guile-2.0.13
|
||||
;; For testing a "minimal" Guix
|
||||
(hidden-package
|
||||
(package (inherit guile-2.0)
|
||||
(name "guile")
|
||||
(version "2.0.13")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "mirror://gnu/guile/guile-" version
|
||||
".tar.xz"))
|
||||
(sha256
|
||||
(base32
|
||||
"12yqkr974y91ylgw6jnmci2v90i90s7h9vxa4zk0sai8vjnz4i1p")))))))
|
||||
|
||||
(define-public guile-2.2
|
||||
(package (inherit guile-2.0)
|
||||
(name "guile")
|
||||
|
|
|
@ -38,14 +38,14 @@ (define-module (gnu packages hardware)
|
|||
(define-public ddcutil
|
||||
(package
|
||||
(name "ddcutil")
|
||||
(version "0.9.4")
|
||||
(version "0.9.5")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://www.ddcutil.com/tarballs/"
|
||||
"ddcutil-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32 "1jqfip43sx3dnx86znmpy8dj4ikkfpgf8npgq66s7hqwwa99i7zc"))))
|
||||
(base32 "18brwj54dkjylvpx7c6ksf7fzhdjffi60avyg7qbs8vw9awnsxqz"))))
|
||||
(build-system gnu-build-system)
|
||||
(native-inputs
|
||||
`(("pkg-config" ,pkg-config)))
|
||||
|
|
|
@ -148,9 +148,9 @@ (define-public ghc-tasty-golden
|
|||
"https://github.com/feuerbach/tasty-golden")
|
||||
(synopsis "Golden tests support for tasty")
|
||||
(description
|
||||
"This package provides support for 'golden testing'. A @dfn{golden test}
|
||||
is an IO action that writes its result to a file. To pass the test, this
|
||||
output file should be identical to the corresponding 'golden' file, which
|
||||
"This package provides support for @code{golden testing}. A @dfn{golden
|
||||
test} is an IO action that writes its result to a file. To pass the test, this
|
||||
output file should be identical to the corresponding @code{golden} file, which
|
||||
contains the correct result for the test.")
|
||||
(license license:expat)))
|
||||
|
||||
|
|
|
@ -1157,7 +1157,7 @@ (define-public ghc-haskell-src
|
|||
(synopsis
|
||||
"Support for manipulating Haskell source code")
|
||||
(description
|
||||
"The 'haskell-src' package provides support for manipulating Haskell
|
||||
"The @code{haskell-src} package provides support for manipulating Haskell
|
||||
source code. The package provides a lexer, parser and pretty-printer, and a
|
||||
definition of a Haskell abstract syntax tree (AST). Common uses of this
|
||||
package are to parse or generate Haskell 98 code.")
|
||||
|
@ -2360,11 +2360,11 @@ (define-public ghc-zlib
|
|||
"Compression and decompression in the gzip and zlib formats")
|
||||
(description
|
||||
"This package provides a pure interface for compressing and decompressing
|
||||
streams of data represented as lazy 'ByteString's. It uses the zlib C library
|
||||
so it has high performance. It supports the 'zlib', 'gzip' and 'raw'
|
||||
compression formats. It provides a convenient high level API suitable for
|
||||
most tasks and for the few cases where more control is needed it provides
|
||||
access to the full zlib feature set.")
|
||||
streams of data represented as lazy @code{ByteString}s. It uses the zlib C
|
||||
library so it has high performance. It supports the @code{zlib}, @code{gzip}
|
||||
and @code{raw} compression formats. It provides a convenient high level API
|
||||
suitable for most tasks and for the few cases where more control is needed it
|
||||
provides access to the full zlib feature set.")
|
||||
(license license:bsd-3)))
|
||||
|
||||
(define-public ghc-stm
|
||||
|
@ -2467,7 +2467,7 @@ (define-public ghc-text
|
|||
"An efficient packed, immutable Unicode text type (both strict and
|
||||
lazy), with a powerful loop fusion optimization framework.
|
||||
|
||||
The 'Text' type represents Unicode character strings, in a time and
|
||||
The @code{Text} type represents Unicode character strings, in a time and
|
||||
space-efficient manner. This package provides text processing
|
||||
capabilities that are optimized for performance critical use, both
|
||||
in terms of large data quantities and high speed.")
|
||||
|
@ -3800,10 +3800,10 @@ (define-public ghc-case-insensitive
|
|||
"https://github.com/basvandijk/case-insensitive")
|
||||
(synopsis "Case insensitive string comparison")
|
||||
(description
|
||||
"The module 'Data.CaseInsensitive' provides the 'CI' type constructor
|
||||
which can be parameterised by a string-like type like: 'String', 'ByteString',
|
||||
'Text', etc.. Comparisons of values of the resulting type will be insensitive
|
||||
to cases.")
|
||||
"The module @code{Data.CaseInsensitive} provides the @code{CI} type
|
||||
constructor which can be parameterised by a string-like type like:
|
||||
@code{String}, @code{ByteString}, @code{Text}, etc. Comparisons of values of
|
||||
the resulting type will be insensitive to cases.")
|
||||
(license license:bsd-3)))
|
||||
|
||||
(define-public ghc-syb
|
||||
|
@ -3830,7 +3830,7 @@ (define-public ghc-syb
|
|||
(description "This package contains the generics system described in the
|
||||
/Scrap Your Boilerplate/ papers (see
|
||||
@uref{http://www.cs.uu.nl/wiki/GenericProgramming/SYB, the website}). It
|
||||
defines the 'Data' class of types permitting folding and unfolding of
|
||||
defines the @code{Data} class of types permitting folding and unfolding of
|
||||
constructor applications, instances of this class for primitive types, and a
|
||||
variety of traversals.")
|
||||
(license license:bsd-3)))
|
||||
|
@ -4323,8 +4323,8 @@ (define-public ghc-network-uri
|
|||
"https://github.com/haskell/network-uri")
|
||||
(synopsis "Library for URI manipulation")
|
||||
(description "This package provides an URI manipulation interface. In
|
||||
'network-2.6' the 'Network.URI' module was split off from the 'network'
|
||||
package into this package.")
|
||||
@code{network-2.6} the @code{Network.URI} module was split off from the
|
||||
@code{network} package into this package.")
|
||||
(license license:bsd-3)))
|
||||
|
||||
(define-public ghc-ansi-terminal
|
||||
|
@ -5724,7 +5724,7 @@ (define-public ghc-deepseq-generics
|
|||
(description
|
||||
"This package provides a @code{GHC.Generics}-based
|
||||
@code{Control.DeepSeq.Generics.genericRnf} function which can be used for
|
||||
providing an 'rnf' implementation.")
|
||||
providing an @code{rnf} implementation.")
|
||||
(license license:bsd-3)))
|
||||
|
||||
(define-public ghc-string-qq
|
||||
|
@ -9430,7 +9430,7 @@ (define-public ghc-rerebase
|
|||
`(("ghc-rebase" ,ghc-rebase)))
|
||||
(home-page "https://github.com/nikita-volkov/rerebase")
|
||||
(synopsis "Reexports from ``base'' with many other standard libraries")
|
||||
(description "A rich drop-in replacement for ``base''. For details and
|
||||
(description "A rich drop-in replacement for @code{base}. For details and
|
||||
documentation please visit @uref{https://github.com/nikita-volkov/rerebase,
|
||||
the project's home page}.")
|
||||
(license license:expat)))
|
||||
|
|
|
@ -198,29 +198,6 @@ (define-public libpng-1.2
|
|||
(base32
|
||||
"1izw9ybm27llk8531w6h4jp4rk2rxy2s9vil16nwik5dp0amyqxl"))))))
|
||||
|
||||
(define-public r-png
|
||||
(package
|
||||
(name "r-png")
|
||||
(version "0.1-7")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (cran-uri "png" version))
|
||||
(sha256
|
||||
(base32
|
||||
"0g2mcp55lvvpx4kd3mn225mpbxqcq73wy5qx8b4lyf04iybgysg2"))))
|
||||
(build-system r-build-system)
|
||||
(inputs
|
||||
`(("libpng" ,libpng)
|
||||
("zlib" ,zlib)))
|
||||
(home-page "http://www.rforge.net/png/")
|
||||
(synopsis "Read and write PNG images")
|
||||
(description
|
||||
"This package provides an easy and simple way to read, write and display
|
||||
bitmap images stored in the PNG format. It can read and write both files and
|
||||
in-memory raw vectors.")
|
||||
;; Any of these GPL versions.
|
||||
(license (list license:gpl2 license:gpl3))))
|
||||
|
||||
(define-public pngcrush
|
||||
(package
|
||||
(name "pngcrush")
|
||||
|
@ -568,7 +545,7 @@ (define-public jbig2dec
|
|||
(arguments '(#:configure-flags '("--disable-static")))
|
||||
(synopsis "Decoder of the JBIG2 image compression format")
|
||||
(description
|
||||
"JBIG2 is designed for lossy or lossless encoding of 'bilevel' (1-bit
|
||||
"JBIG2 is designed for lossy or lossless encoding of @code{bilevel} (1-bit
|
||||
monochrome) images at moderately high resolution, and in particular scanned
|
||||
paper documents. In this domain it is very efficient, offering compression
|
||||
ratios on the order of 100:1.
|
||||
|
|
|
@ -418,7 +418,7 @@ (define-public karchive
|
|||
(home-page "https://community.kde.org/Frameworks")
|
||||
(synopsis "Qt 5 addon providing access to numerous types of archives")
|
||||
(description "KArchive provides classes for easy reading, creation and
|
||||
manipulation of 'archive' formats like ZIP and TAR.
|
||||
manipulation of @code{archive} formats like ZIP and TAR.
|
||||
|
||||
It also provides transparent compression and decompression of data, like the
|
||||
GZip format, via a subclass of QIODevice.")
|
||||
|
@ -2585,8 +2585,9 @@ (define-public kinit
|
|||
(synopsis "Library to speed up start of applications on KDE workspaces")
|
||||
(description "Kdeinit is a process launcher similar to init used for booting
|
||||
UNIX. It launches processes by forking and then loading a dynamic library which
|
||||
contains a 'kdemain(...)' function. Using kdeinit to launch KDE applications
|
||||
makes starting KDE applications faster and reduces memory consumption.")
|
||||
contains a @code{kdemain(@dots{})} function. Using kdeinit to launch KDE
|
||||
applications makes starting KDE applications faster and reduces memory
|
||||
consumption.")
|
||||
;; dual licensed
|
||||
(license (list license:lgpl2.0+ license:lgpl2.1+))))
|
||||
|
||||
|
|
|
@ -415,8 +415,8 @@ (define* (make-linux-libre version hash supported-systems
|
|||
It has been modified to remove all non-free binary blobs.")
|
||||
(license license:gpl2)))
|
||||
|
||||
(define %linux-libre-version "5.0.3")
|
||||
(define %linux-libre-hash "1ivdqr3y8r2hmv3a1g0a641cr2ckl3x4arapw0j6nwd0sbcyncam")
|
||||
(define %linux-libre-version "5.0.5")
|
||||
(define %linux-libre-hash "1yivxqprxfzhzid4qv9hpnb5i38kijrj2g2pyzz7niliya1c58li")
|
||||
|
||||
(define %linux-libre-5.0-patches
|
||||
(list %boot-logo-patch
|
||||
|
@ -429,8 +429,8 @@ (define-public linux-libre
|
|||
#:patches %linux-libre-5.0-patches
|
||||
#:configuration-file kernel-config))
|
||||
|
||||
(define %linux-libre-4.19-version "4.19.30")
|
||||
(define %linux-libre-4.19-hash "1i15cs7zb53hagllgga8jaz0j1p9b22j93iczwc2w587zzhzlvng")
|
||||
(define %linux-libre-4.19-version "4.19.32")
|
||||
(define %linux-libre-4.19-hash "19bryl8nmnnnrfh91pc8q9yiayh5ca2nb6b32qyx6riahc5dy0i9")
|
||||
|
||||
(define %linux-libre-4.19-patches
|
||||
(list %boot-logo-patch
|
||||
|
@ -443,8 +443,8 @@ (define-public linux-libre-4.19
|
|||
#:patches %linux-libre-4.19-patches
|
||||
#:configuration-file kernel-config))
|
||||
|
||||
(define %linux-libre-4.14-version "4.14.107")
|
||||
(define %linux-libre-4.14-hash "19i17b8sjjvi99vya1vncjalysdy027hp35rrla68gjs28dyas7r")
|
||||
(define %linux-libre-4.14-version "4.14.109")
|
||||
(define %linux-libre-4.14-hash "05xnnyfiypg4sdcnh42wvg7h72ar8xx98dik12sgwysnfldi0gk9")
|
||||
|
||||
(define-public linux-libre-4.14
|
||||
(make-linux-libre %linux-libre-4.14-version
|
||||
|
@ -453,14 +453,14 @@ (define-public linux-libre-4.14
|
|||
#:configuration-file kernel-config))
|
||||
|
||||
(define-public linux-libre-4.9
|
||||
(make-linux-libre "4.9.164"
|
||||
"06bbynvijqlk92bpppmnjijyfwr0sk01krqdw4hpgbrvlg3wdlbk"
|
||||
(make-linux-libre "4.9.166"
|
||||
"1gijzvhky3x0nl0dm9ksg113z7jc1mc1n30qbr6r1dd78lfd050p"
|
||||
'("x86_64-linux" "i686-linux")
|
||||
#:configuration-file kernel-config))
|
||||
|
||||
(define-public linux-libre-4.4
|
||||
(make-linux-libre "4.4.176"
|
||||
"0c300zqmsadahs2fpzxh6cn7q3h7jxq69msd17rh8v3wnvql8vzx"
|
||||
(make-linux-libre "4.4.177"
|
||||
"0vvppw7j6jwn3cd5hhzgj5xfqkmz682zy36iyr6ynd0rbh1j7bhm"
|
||||
'("x86_64-linux" "i686-linux")
|
||||
#:configuration-file kernel-config))
|
||||
|
||||
|
@ -2003,9 +2003,46 @@ (define-public kbd
|
|||
(description
|
||||
"This package contains keytable files and keyboard utilities compatible
|
||||
for systems using the Linux kernel. This includes commands such as
|
||||
'loadkeys', 'setfont', 'kbdinfo', and 'chvt'.")
|
||||
@code{loadkeys}, @code{setfont}, @code{kbdinfo}, and @code{chvt}.")
|
||||
(license license:gpl2+)))
|
||||
|
||||
(define-public loadkeys-static
|
||||
(package
|
||||
(inherit kbd)
|
||||
(name "loadkeys-static")
|
||||
(arguments
|
||||
(substitute-keyword-arguments (package-arguments kbd)
|
||||
((#:configure-flags flags ''())
|
||||
`(append '("LDFLAGS=-static" "--disable-shared" "--disable-nls"
|
||||
"--disable-vlock" ;so we don't need libpam
|
||||
"--disable-libkeymap")
|
||||
,flags))
|
||||
((#:make-flags flags ''())
|
||||
`(cons "LDFLAGS=-all-static" ,flags))
|
||||
((#:phases phases '%standard-phases)
|
||||
`(modify-phases ,phases
|
||||
(replace 'install
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
(let ((out (assoc-ref outputs "out")))
|
||||
;; The binary keeps references to gzip, among other things,
|
||||
;; which we don't need in the initrd, so strip references.
|
||||
(remove-store-references "src/loadkeys")
|
||||
|
||||
(install-file "src/loadkeys"
|
||||
(string-append out "/bin"))
|
||||
#t)))
|
||||
(delete 'post-install)))
|
||||
((#:strip-flags _ '())
|
||||
''("--strip-all"))
|
||||
((#:allowed-references _ '())
|
||||
'())))
|
||||
|
||||
(synopsis "Statically-linked @command{loadkeys} program")
|
||||
|
||||
;; This package is meant to be used internally in the initrd so don't
|
||||
;; expose it.
|
||||
(properties '((hidden? . #t)))))
|
||||
|
||||
(define-public inotify-tools
|
||||
(package
|
||||
(name "inotify-tools")
|
||||
|
@ -2272,7 +2309,7 @@ (define-public wireless-tools
|
|||
#:tests? #f))
|
||||
(synopsis "Tools for manipulating Linux Wireless Extensions")
|
||||
(description "Wireless Tools are used to manipulate the now-deprecated
|
||||
Linux Wireless Extensions; consider using 'iw' instead. The Wireless
|
||||
Linux Wireless Extensions; consider using @code{iw} instead. The Wireless
|
||||
Extension was an interface allowing you to set Wireless LAN specific
|
||||
parameters and get the specific stats. It is deprecated in favor the nl80211
|
||||
interface.")
|
||||
|
@ -2630,7 +2667,7 @@ (define-public perf
|
|||
with support in the Linux kernel. perf can instrument CPU performance
|
||||
counters, tracepoints, kprobes, and uprobes (dynamic tracing). It is capable
|
||||
of lightweight profiling. This package contains the user-land tools and in
|
||||
particular the 'perf' command.")
|
||||
particular the @code{perf} command.")
|
||||
(license (package-license linux-libre))))
|
||||
|
||||
(define-public pflask
|
||||
|
@ -3986,8 +4023,8 @@ (define-public module-init-tools
|
|||
(home-page "https://www.kernel.org/pub/linux/utils/kernel/module-init-tools/")
|
||||
(synopsis "Tools for loading and managing Linux kernel modules")
|
||||
(description
|
||||
"Tools for loading and managing Linux kernel modules, such as `modprobe',
|
||||
`insmod', `lsmod', and more.")
|
||||
"Tools for loading and managing Linux kernel modules, such as
|
||||
@code{modprobe}, @code{insmod}, @code{lsmod}, and more.")
|
||||
(license license:gpl2+)))
|
||||
|
||||
(define-public mcelog
|
||||
|
@ -4274,6 +4311,45 @@ (define-public light
|
|||
Light is the successor of lightscript.")
|
||||
(license license:gpl3+)))
|
||||
|
||||
(define-public brightnessctl
|
||||
(let ((commit "6a791e7694aeeb5d027f71c6098e5182cf03371c"))
|
||||
(package
|
||||
(name "brightnessctl")
|
||||
(version (git-version "0.4" "0" commit))
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/Hummer12007/brightnessctl/")
|
||||
(commit commit)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"1n1gb8ldgqv3vs565yhk1w4jfvrviczp94r8wqlkv5q6ab43c8w9"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
'(#:tests? #f ; no tests
|
||||
#:make-flags (list "CC=gcc"
|
||||
(string-append "PREFIX=" %output)
|
||||
(string-append "UDEVDIR=" %output "/lib/udev/rules.d/"))
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(delete 'configure)
|
||||
(add-after 'unpack 'adjust-udev-rules
|
||||
(lambda _
|
||||
(substitute* "90-brightnessctl.rules"
|
||||
(("/bin/") "/run/current-system/profile/bin/"))
|
||||
#t)))))
|
||||
(home-page "https://github.com/Hummer12007/brightnessctl")
|
||||
(synopsis "Backlight and LED brightness control")
|
||||
(description
|
||||
"This program allows you read and control device brightness. Devices
|
||||
include backlight and LEDs. It can also preserve current brightness before
|
||||
applying the operation, such as on lid close.
|
||||
|
||||
The appropriate permissions must be set on the backlight or LED control
|
||||
interface in sysfs, which can be accomplished with the included udev rules.")
|
||||
(license license:expat))))
|
||||
|
||||
(define-public tlp
|
||||
(package
|
||||
(name "tlp")
|
||||
|
|
|
@ -96,10 +96,10 @@ (define-public lirc
|
|||
(synopsis "Linux Infrared Remote Control")
|
||||
(description
|
||||
"LIRC allows computers to send and receive IR signals of many commonly
|
||||
used remote controls. The most important part of LIRC is the 'lircd' daemon
|
||||
that decodes IR signals received by the device drivers. The second daemon
|
||||
program 'lircmd' allows to translate IR signals to mouse movements. The
|
||||
user space applications allow you to control your computer with a remote
|
||||
used remote controls. The most important part of LIRC is the @code{lircd}
|
||||
daemon that decodes IR signals received by the device drivers. The second
|
||||
daemon program @code{lircmd} allows to translate IR signals to mouse movements.
|
||||
The user space applications allow you to control your computer with a remote
|
||||
control: you can send X events to applications, start programs and much more
|
||||
on just one button press.")
|
||||
(license license:gpl2+)))
|
||||
|
|
|
@ -1467,7 +1467,7 @@ (define-public sbcl-cl-uglify-js
|
|||
@item reduce variable names (usually to single letters)
|
||||
@item join consecutive @code{var} statements
|
||||
@item resolve simple binary expressions
|
||||
@item group most consecutive statements using the ``sequence'' operator (comma)
|
||||
@item group most consecutive statements using the @code{sequence} operator (comma)
|
||||
@item remove unnecessary blocks
|
||||
@item convert @code{IF} expressions in various ways that result in smaller code
|
||||
@item remove some unreachable code
|
||||
|
|
|
@ -626,28 +626,6 @@ (define-public r-adaptivesparsity
|
|||
geometric models.")
|
||||
(license license:lgpl3+)))
|
||||
|
||||
(define-public r-kernlab
|
||||
(package
|
||||
(name "r-kernlab")
|
||||
(version "0.9-27")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (cran-uri "kernlab" version))
|
||||
(sha256
|
||||
(base32
|
||||
"1m0xqf6gyvwayz7w3c83y32ayvnlz0jicj8ijk808zq9sh7dbbgn"))))
|
||||
(build-system r-build-system)
|
||||
(home-page "https://cran.r-project.org/web/packages/kernlab")
|
||||
(synopsis "Kernel-based machine learning tools")
|
||||
(description
|
||||
"This package provides kernel-based machine learning methods for
|
||||
classification, regression, clustering, novelty detection, quantile regression
|
||||
and dimensionality reduction. Among other methods @code{kernlab} includes
|
||||
Support Vector Machines, Spectral Clustering, Kernel PCA, Gaussian Processes
|
||||
and a QP solver.")
|
||||
(license license:gpl2)))
|
||||
|
||||
(define-public dlib
|
||||
(package
|
||||
(name "dlib")
|
||||
|
|
|
@ -1287,7 +1287,7 @@ (define-public exim
|
|||
(define-public dovecot
|
||||
(package
|
||||
(name "dovecot")
|
||||
(version "2.3.5")
|
||||
(version "2.3.5.1")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
|
@ -1295,7 +1295,8 @@ (define-public dovecot
|
|||
(version-major+minor version) "/"
|
||||
"dovecot-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32 "1zxa9banams9nmk99sf1rqahr11cdqxhwi7hyz3ddxqidpn15qdz"))))
|
||||
(base32
|
||||
"0gy3qzwbp6zsyn44pcfq8iiv9iy9q7z6py30h60alb1vkr3rv3yp"))))
|
||||
(build-system gnu-build-system)
|
||||
(native-inputs
|
||||
`(("pkg-config" ,pkg-config)))
|
||||
|
|
|
@ -1148,7 +1148,7 @@ (define-public mate-netbook
|
|||
@item Allows you to set basic rules for a window type, such as maximise|undecorate
|
||||
@item Allows exceptions to the rules, based on string matching for window name
|
||||
and window class.
|
||||
@item Allows 'reversing' of rules when the user manually changes something:
|
||||
@item Allows @code{reversing} of rules when the user manually changes something:
|
||||
Re-decorates windows on un-maximise.
|
||||
@end enumerate\n")
|
||||
(license license:gpl3+)))
|
||||
|
|
|
@ -887,121 +887,130 @@ (define-public hdf5-1.10
|
|||
|
||||
(define-public hdf-java
|
||||
(package
|
||||
(name "hdf-java")
|
||||
(version "3.3.2")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
"http://www.hdfgroup.org/ftp/HDF5/releases/HDF-JAVA/hdfjni-"
|
||||
version "/src/CMake-hdfjava-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32 "0m1gp2aspcblqzmpqbdpfp6giskws85ds6p5gz8sx7asyp7wznpr"))
|
||||
(modules '((guix build utils)))
|
||||
(snippet ; Make sure we don't use the bundled sources and binaries.
|
||||
`(begin
|
||||
(for-each delete-file
|
||||
(list "SZip.tar.gz" "ZLib.tar.gz" "JPEG8d.tar.gz"
|
||||
"HDF4.tar.gz" "HDF5.tar.gz"))
|
||||
(delete-file-recursively ,(string-append "hdfjava-" version "/lib"))
|
||||
#t))))
|
||||
(build-system gnu-build-system)
|
||||
(native-inputs
|
||||
`(("jdk" ,icedtea "jdk")
|
||||
("automake" ,automake) ; For up to date 'config.guess' and 'config.sub'.
|
||||
;; For tests:
|
||||
("hamcrest-core" ,java-hamcrest-core)
|
||||
("junit" ,java-junit)
|
||||
("slf4j-simple" ,java-slf4j-simple)))
|
||||
(inputs
|
||||
`(("hdf4" ,hdf4)
|
||||
("hdf5" ,hdf5)
|
||||
("zlib" ,zlib)
|
||||
("libjpeg" ,libjpeg)
|
||||
("slf4j-api" ,java-slf4j-api)))
|
||||
(arguments
|
||||
`(#:configure-flags
|
||||
(list (string-append "--target=" ,(or (%current-target-system) (%current-system)))
|
||||
(string-append "--with-jdk=" (assoc-ref %build-inputs "jdk") "/include,"
|
||||
(assoc-ref %build-inputs "jdk") "/lib" )
|
||||
(string-append "--with-hdf4=" (assoc-ref %build-inputs "hdf4") "/lib")
|
||||
(string-append "--with-hdf5=" (assoc-ref %build-inputs "hdf5") "/lib"))
|
||||
(name "hdf-java")
|
||||
(version "3.3.2")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
"http://www.hdfgroup.org/ftp/HDF5/releases/HDF-JAVA/hdfjni-"
|
||||
version "/src/CMake-hdfjava-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32 "0m1gp2aspcblqzmpqbdpfp6giskws85ds6p5gz8sx7asyp7wznpr"))
|
||||
(modules '((guix build utils)))
|
||||
(snippet ; Make sure we don't use the bundled sources and binaries.
|
||||
`(begin
|
||||
(for-each delete-file
|
||||
(list "SZip.tar.gz" "ZLib.tar.gz" "JPEG8d.tar.gz"
|
||||
"HDF4.tar.gz" "HDF5.tar.gz"))
|
||||
(delete-file-recursively ,(string-append "hdfjava-" version "/lib"))
|
||||
#t))))
|
||||
(build-system gnu-build-system)
|
||||
(native-inputs
|
||||
`(("jdk" ,icedtea "jdk")
|
||||
("automake" ,automake) ; For up to date 'config.guess' and 'config.sub'.
|
||||
;; For tests:
|
||||
("hamcrest-core" ,java-hamcrest-core)
|
||||
("junit" ,java-junit)
|
||||
("slf4j-simple" ,java-slf4j-simple)))
|
||||
(inputs
|
||||
`(("hdf4" ,hdf4)
|
||||
("hdf5" ,hdf5)
|
||||
("zlib" ,zlib)
|
||||
("libjpeg" ,libjpeg)
|
||||
("slf4j-api" ,java-slf4j-api)))
|
||||
(arguments
|
||||
`(#:configure-flags
|
||||
(list (string-append "--target=" ,(or (%current-target-system) (%current-system)))
|
||||
(string-append "--with-jdk=" (assoc-ref %build-inputs "jdk") "/include,"
|
||||
(assoc-ref %build-inputs "jdk") "/lib" )
|
||||
(string-append "--with-hdf4=" (assoc-ref %build-inputs "hdf4") "/lib")
|
||||
(string-append "--with-hdf5=" (assoc-ref %build-inputs "hdf5") "/lib"))
|
||||
|
||||
#:make-flags
|
||||
(list (string-append "HDFLIB=" (assoc-ref %build-inputs "hdf4") "/lib")
|
||||
(string-append "HDF5LIB=" (assoc-ref %build-inputs "hdf5") "/lib")
|
||||
(string-append "ZLIB=" (assoc-ref %build-inputs "zlib") "/lib/libz.so")
|
||||
(string-append "JPEGLIB="
|
||||
(assoc-ref %build-inputs "libjpeg") "/lib/libjpeg.so")
|
||||
"LLEXT=so")
|
||||
#:make-flags
|
||||
(list (string-append "HDFLIB=" (assoc-ref %build-inputs "hdf4") "/lib")
|
||||
(string-append "HDF5LIB=" (assoc-ref %build-inputs "hdf5") "/lib")
|
||||
(string-append "ZLIB=" (assoc-ref %build-inputs "zlib") "/lib/libz.so")
|
||||
(string-append "JPEGLIB="
|
||||
(assoc-ref %build-inputs "libjpeg") "/lib/libjpeg.so")
|
||||
"LLEXT=so")
|
||||
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-before 'configure 'chdir-to-source
|
||||
(lambda _ (chdir ,(string-append "hdfjava-" version))))
|
||||
(add-before 'configure 'patch-build
|
||||
(lambda* (#:key inputs outputs #:allow-other-keys)
|
||||
(substitute* "configure"
|
||||
(("COPT=\"") "COPT=\"-O2 ") ; CFLAGS is ignored in Makefiles
|
||||
(("/bin/cat") (which "cat")))
|
||||
;; Set classpath for compilation
|
||||
(substitute* '("hdf/hdf5lib/Makefile.in"
|
||||
"hdf/hdf5lib/exceptions/Makefile.in"
|
||||
"hdf/hdflib/Makefile.in")
|
||||
(("\\$\\(TOP\\)/lib/slf4j-api-1\\.7\\.5\\.jar")
|
||||
(string-append (assoc-ref inputs "slf4j-api")
|
||||
"/share/java/slf4j-api.jar")))
|
||||
;; Replace outdated config.sub and config.guess:
|
||||
(with-directory-excursion "config"
|
||||
(for-each (lambda (file)
|
||||
(copy-file
|
||||
(string-append (assoc-ref inputs "automake")
|
||||
"/share/automake-1.15/" file) file))
|
||||
'("config.sub" "config.guess")))
|
||||
(mkdir-p (string-append (assoc-ref outputs "out")))
|
||||
;; Set classpath for tests
|
||||
(let* ((build-dir (getcwd))
|
||||
(lib (string-append build-dir "/lib"))
|
||||
(jhdf (string-append lib "/jhdf.jar"))
|
||||
(jhdf5 (string-append lib "/jhdf5.jar"))
|
||||
(testjars
|
||||
(map (lambda (i)
|
||||
(string-append (assoc-ref inputs i)
|
||||
"/share/java/" i ".jar"))
|
||||
'("junit" "hamcrest-core" "slf4j-api" "slf4j-simple")))
|
||||
(class-path
|
||||
(string-join `("." ,build-dir ,jhdf ,jhdf5 ,@testjars) ":")))
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-before 'configure 'chdir-to-source
|
||||
(lambda _ (chdir ,(string-append "hdfjava-" version)) #t))
|
||||
(add-before 'configure 'patch-build
|
||||
(lambda* (#:key inputs outputs #:allow-other-keys)
|
||||
(substitute* "configure"
|
||||
(("COPT=\"") "COPT=\"-O2 ") ; CFLAGS is ignored in Makefiles
|
||||
(("/bin/cat") (which "cat")))
|
||||
;; Set classpath for compilation
|
||||
(substitute* '("hdf/hdf5lib/Makefile.in"
|
||||
"hdf/hdf5lib/exceptions/Makefile.in"
|
||||
"hdf/hdflib/Makefile.in")
|
||||
(("\\$\\(TOP\\)/lib/slf4j-api-1\\.7\\.5\\.jar")
|
||||
(string-append (assoc-ref inputs "slf4j-api")
|
||||
"/share/java/slf4j-api.jar")))
|
||||
;; Replace outdated config.sub and config.guess:
|
||||
(with-directory-excursion "config"
|
||||
(for-each (lambda (file)
|
||||
(install-file
|
||||
(string-append (assoc-ref inputs "automake")
|
||||
"/share/automake-"
|
||||
,(version-major+minor (package-version automake))
|
||||
"/" file) "."))
|
||||
'("config.sub" "config.guess")))
|
||||
|
||||
(substitute* '("test/hdf5lib/Makefile.in"
|
||||
"test/hdf5lib/junit.sh.in"
|
||||
"examples/runExample.sh.in")
|
||||
(("/usr/bin/test")
|
||||
(string-append (assoc-ref inputs "coreutils")
|
||||
"/bin/test"))
|
||||
(("/usr/bin/uname")
|
||||
(string-append (assoc-ref inputs "coreutils")
|
||||
"/bin/uname"))
|
||||
(("CLASSPATH=[^\n]*")
|
||||
(string-append "CLASSPATH=" class-path)))
|
||||
(setenv "CLASSPATH" class-path))
|
||||
#t))
|
||||
(add-before 'check 'build-examples
|
||||
(lambda _
|
||||
(zero? (apply system* `("javac"
|
||||
,@(find-files "examples" ".*\\.java")))))))
|
||||
;; Fix embedded version number
|
||||
(let ((hdf5version (list ,@(string-split (package-version hdf5) #\.))))
|
||||
(substitute* "hdf/hdf5lib/H5.java"
|
||||
(("1, 8, 19")
|
||||
(string-join hdf5version ", "))))
|
||||
|
||||
#:parallel-build? #f
|
||||
(mkdir-p (string-append (assoc-ref outputs "out")))
|
||||
;; Set classpath for tests
|
||||
(let* ((build-dir (getcwd))
|
||||
(lib (string-append build-dir "/lib"))
|
||||
(jhdf (string-append lib "/jhdf.jar"))
|
||||
(jhdf5 (string-append lib "/jhdf5.jar"))
|
||||
(testjars
|
||||
(map (lambda (i)
|
||||
(string-append (assoc-ref inputs i)
|
||||
"/share/java/" i ".jar"))
|
||||
'("junit" "hamcrest-core" "slf4j-api" "slf4j-simple")))
|
||||
(class-path
|
||||
(string-join `("." ,build-dir ,jhdf ,jhdf5 ,@testjars) ":")))
|
||||
|
||||
#:parallel-tests? #f ))
|
||||
(home-page "https://support.hdfgroup.org/products/java")
|
||||
(synopsis "Java interface for the HDF4 and HDF5 libraries")
|
||||
(description "Java HDF Interface (JHI) and Java HDF5 Interface (JHI5) use
|
||||
(substitute* '("test/hdf5lib/Makefile.in"
|
||||
"test/hdf5lib/junit.sh.in"
|
||||
"examples/runExample.sh.in")
|
||||
(("/usr/bin/test")
|
||||
(string-append (assoc-ref inputs "coreutils")
|
||||
"/bin/test"))
|
||||
(("/usr/bin/uname")
|
||||
(string-append (assoc-ref inputs "coreutils")
|
||||
"/bin/uname"))
|
||||
(("CLASSPATH=[^\n]*")
|
||||
(string-append "CLASSPATH=" class-path)))
|
||||
(setenv "CLASSPATH" class-path))
|
||||
#t))
|
||||
(add-before 'check 'build-examples
|
||||
(lambda _
|
||||
(apply invoke `("javac"
|
||||
,@(find-files "examples" ".*\\.java"))))))
|
||||
|
||||
#:parallel-build? #f
|
||||
|
||||
#:parallel-tests? #f ))
|
||||
(home-page "https://support.hdfgroup.org/products/java")
|
||||
(synopsis "Java interface for the HDF4 and HDF5 libraries")
|
||||
(description "Java HDF Interface (JHI) and Java HDF5 Interface (JHI5) use
|
||||
the Java Native Interface to wrap the HDF4 and HDF5 libraries, which are
|
||||
implemented in C.")
|
||||
|
||||
;; BSD-style license:
|
||||
(license (license:x11-style
|
||||
"https://support.hdfgroup.org/ftp/HDF5/hdf-java\
|
||||
;; BSD-style license:
|
||||
(license (license:x11-style
|
||||
"https://support.hdfgroup.org/ftp/HDF5/hdf-java\
|
||||
/current/src/unpacked/COPYING"))))
|
||||
|
||||
(define-public hdf-eos2
|
||||
|
|
|
@ -492,14 +492,14 @@ (define-public pidgin-otr
|
|||
(define-public znc
|
||||
(package
|
||||
(name "znc")
|
||||
(version "1.7.2")
|
||||
(version "1.7.3")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "http://znc.in/releases/archive/znc-"
|
||||
version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1ac2csl5jr56vahnxdynlvrhwlvcc1gqxvyifckc6cn5aj7ygd30"))))
|
||||
"0g8i5hsl4kinpz1wp0a2zniidv3w2sd6awq8676fds516wcc6k0y"))))
|
||||
;; TODO: autotools support has been deprecated, and new features like i18n
|
||||
;; are only supported when building with cmake.
|
||||
(build-system gnu-build-system)
|
||||
|
|
|
@ -46,6 +46,6 @@ (define-public microcom
|
|||
(synopsis "Minimalistic serial line terminal program")
|
||||
(description "Microcom is a minimalistic terminal program for accessing
|
||||
devices via a serial connection. It features connection via RS232 serial
|
||||
interfaces (including setting of transfer rates) as well as in `telnetmode'
|
||||
interfaces (including setting of transfer rates) as well as in @code{telnetmode}
|
||||
as specified in rfc2217 and a (Linux specific) CAN mode.")
|
||||
(license gpl2+)))
|
||||
|
|
|
@ -1630,7 +1630,7 @@ (define-public bristol
|
|||
(home-page "http://bristol.sourceforge.net/")
|
||||
(synopsis "Synthesizer emulator")
|
||||
(description
|
||||
"Bristol is an emulation package for a number of different 'classic'
|
||||
"Bristol is an emulation package for a number of different @code{classic}
|
||||
synthesizers including additive and subtractive and a few organs. The
|
||||
application consists of the engine, which is called bristol, and its own GUI
|
||||
library called brighton that represents all the emulations. There are
|
||||
|
@ -2002,7 +2002,7 @@ (define-public drumstick
|
|||
(define-public zynaddsubfx
|
||||
(package
|
||||
(name "zynaddsubfx")
|
||||
(version "3.0.3")
|
||||
(version "3.0.4")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
|
@ -2010,7 +2010,7 @@ (define-public zynaddsubfx
|
|||
version "/zynaddsubfx-" version ".tar.bz2"))
|
||||
(sha256
|
||||
(base32
|
||||
"1hfpiqdm337gl4ynkmmp2qss2m5z8mzqzjrbiyg6w1v4js7l9phi"))))
|
||||
"18m4ax0x06y1hx4g2g3gf02v0bldkrrb5m7fsr5jlfp1kvjd2j1x"))))
|
||||
(build-system cmake-build-system)
|
||||
(arguments
|
||||
`(#:phases
|
||||
|
|
|
@ -30,7 +30,7 @@ (define-module (gnu packages nano)
|
|||
(define-public nano
|
||||
(package
|
||||
(name "nano")
|
||||
(version "3.2")
|
||||
(version "4.0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
|
@ -38,7 +38,7 @@ (define-public nano
|
|||
version ".tar.xz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0jb3zq0v84xb0chyynkcp2jhs9660wmpkic294p4p6c96npp69yi"))))
|
||||
"1hxsx6qi7897d8bwkbnijlwvnn1dfy5pd1b7v2kj8ikq6pmcybqy"))))
|
||||
(build-system gnu-build-system)
|
||||
(inputs
|
||||
`(("gettext" ,gettext-minimal)
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
;;; GNU Guix --- Functional package management for GNU
|
||||
;;; Copyright © 2012, 2013, 2014, 2015, 2017, 2018 Ludovic Courtès <ludo@gnu.org>
|
||||
;;; Copyright © 2012, 2013, 2014, 2015, 2017, 2018, 2019 Ludovic Courtès <ludo@gnu.org>
|
||||
;;; Copyright © 2014, 2016 Mark H Weaver <mhw@netris.org>
|
||||
;;; Copyright © 2015, 2017 Leo Famulari <leo@famulari.name>
|
||||
;;; Copyright © 2016 ng0 <ng0@n0.is>
|
||||
|
@ -196,9 +196,11 @@ (define package.pc
|
|||
,patch-makefile-phase)
|
||||
(add-after 'unpack 'remove-unneeded-shebang
|
||||
,remove-shebang-phase)))))
|
||||
(self-native-input? #t) ; for `tic'
|
||||
(native-inputs
|
||||
`(("pkg-config" ,pkg-config)))
|
||||
`(,@(if (%current-target-system)
|
||||
`(("self" ,this-package)) ;for `tic'
|
||||
'())
|
||||
("pkg-config" ,pkg-config)))
|
||||
(native-search-paths
|
||||
(list (search-path-specification
|
||||
(variable "TERMINFO_DIRS")
|
||||
|
|
|
@ -547,7 +547,7 @@ (define-public iodine
|
|||
(define-public whois
|
||||
(package
|
||||
(name "whois")
|
||||
(version "5.4.1")
|
||||
(version "5.4.2")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
|
@ -555,7 +555,7 @@ (define-public whois
|
|||
name "_" version ".tar.xz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0l7chmlvsl22r5cfm6fpm999z2n3sjrnx3ha8f8kf42cn4gmkriy"))))
|
||||
"0mqzs0g2qxd29ihammisg9qf4503sr7d4zas26zjz4an78xkmqzf"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
`(#:tests? #f ; no test suite
|
||||
|
@ -1108,8 +1108,8 @@ (define-public perl-geo-ip
|
|||
(home-page "https://metacpan.org/release/Geo-IP")
|
||||
(synopsis
|
||||
"Look up location and network information by IP Address in Perl")
|
||||
(description "The Perl module 'Geo::IP'. It looks up location and network
|
||||
information by IP Address.")
|
||||
(description "The Perl module @code{Geo::IP}. It looks up location and
|
||||
network information by IP Address.")
|
||||
(license license:perl-license)))
|
||||
|
||||
(define-public perl-io-socket-inet6
|
||||
|
|
|
@ -1254,7 +1254,9 @@ (define-public dune
|
|||
(build-system ocaml-build-system)
|
||||
(arguments
|
||||
`(#:tests? #f; require odoc
|
||||
#:make-flags (list (string-append "PREFIX=" (assoc-ref %outputs "out")))
|
||||
#:make-flags (list (string-append "PREFIX=" (assoc-ref %outputs "out"))
|
||||
(string-append "LIBDIR=" (assoc-ref %outputs "out")
|
||||
"/lib/ocaml/site-lib"))
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(replace 'configure
|
||||
|
@ -1724,28 +1726,26 @@ (define-public ocaml4.02-astring
|
|||
(define-public ocaml-alcotest
|
||||
(package
|
||||
(name "ocaml-alcotest")
|
||||
(version "0.7.2")
|
||||
(version "0.8.5")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://github.com/mirage/alcotest/releases/"
|
||||
"download/" version "/alcotest-" version ".tbz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0g5lzk0gpfx4q8hyhr460gr4lab5wakfxsmhfwvb3yinxwzs95gc"))))
|
||||
(build-system ocaml-build-system)
|
||||
"0szwjxvaahgynsx0apj81jxj3ki6yz4is9mh2wkcbx66qy7n6fvb"))))
|
||||
(build-system dune-build-system)
|
||||
(arguments
|
||||
`(#:tests? #f
|
||||
#:build-flags (list "build")
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(delete 'configure))))
|
||||
`(#:package "alcotest"
|
||||
#:test-target "."))
|
||||
(native-inputs
|
||||
`(("ocamlbuild" ,ocamlbuild)
|
||||
("opam" ,opam)
|
||||
("topkg" ,ocaml-topkg)))
|
||||
`(("ocamlbuild" ,ocamlbuild)))
|
||||
(propagated-inputs
|
||||
`(("fmt" ,ocaml-fmt)
|
||||
("astring" ,ocaml-astring)))
|
||||
`(("ocaml-astring" ,ocaml-astring)
|
||||
("ocaml-cmdliner" ,ocaml-cmdliner)
|
||||
("ocaml-fmt" ,ocaml-fmt)
|
||||
("ocaml-result" ,ocaml-result)
|
||||
("ocaml-uuidm" ,ocaml-uuidm)))
|
||||
(home-page "https://github.com/mirage/alcotest")
|
||||
(synopsis "Lightweight OCaml test framework")
|
||||
(description "Alcotest exposes simple interface to perform unit tests. It
|
||||
|
@ -1797,21 +1797,22 @@ (define-public ocaml4.02-ppx-tools
|
|||
(define-public ocaml-react
|
||||
(package
|
||||
(name "ocaml-react")
|
||||
(version "1.2.0")
|
||||
(version "1.2.1")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "http://erratique.ch/software/react/releases/react-"
|
||||
version ".tbz"))
|
||||
(sha256 (base32
|
||||
"0knhgbngphv5sp1yskfd97crf169qhpc0igr6w7vqw0q36lswyl8"))))
|
||||
"1aj8w79gdd9xnrbz7s5p8glcb4pmimi8jp9f439dqnf6ih3mqb3v"))))
|
||||
(build-system ocaml-build-system)
|
||||
(native-inputs
|
||||
`(("ocamlbuild" ,ocamlbuild)
|
||||
("opam" ,opam)))
|
||||
("opam" ,opam)
|
||||
("ocaml-topkg" ,ocaml-topkg)))
|
||||
(arguments
|
||||
`(#:tests? #f
|
||||
#:build-flags (list "native=true" "native-dynlink=true")
|
||||
#:build-flags (list "build")
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(delete 'configure))))
|
||||
|
@ -2015,14 +2016,14 @@ (define-public ocaml4.02-fpath
|
|||
(define-public ocaml-bos
|
||||
(package
|
||||
(name "ocaml-bos")
|
||||
(version "0.1.4")
|
||||
(version "0.2.0")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "http://erratique.ch/software/bos/releases/"
|
||||
"bos-" version ".tbz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1ly66lysk4w6mdy4k1n3ynlpfpq7lw4wshcpzgx58v6x613w5s7q"))))
|
||||
"1s10iqx8rgnxr5n93lf4blwirjf8nlm272yg5sipr7lsr35v49wc"))))
|
||||
(build-system ocaml-build-system)
|
||||
(arguments
|
||||
`(#:tests? #f
|
||||
|
@ -4790,7 +4791,7 @@ (define-public ocaml-merlin
|
|||
(define-public ocaml-gsl
|
||||
(package
|
||||
(name "ocaml-gsl")
|
||||
(version "1.22.0")
|
||||
(version "1.24.0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
|
@ -4800,10 +4801,22 @@ (define-public ocaml-gsl
|
|||
version "/gsl-" version ".tbz"))
|
||||
(sha256
|
||||
(base32
|
||||
"17vcswipliq1b2idbzx1z95kskn1a4q4s5v04igilg0f7lnkaarb"))))
|
||||
(build-system ocaml-build-system)
|
||||
"1l5zkkkg8sglsihrbf10ivq9s8xzl1y6ag89i4jqpnmi4m43fy34"))))
|
||||
(build-system dune-build-system)
|
||||
(arguments
|
||||
`(#:test-target "."
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-after 'unpack 'fix-gsl-directory
|
||||
(lambda* (#:key inputs #:allow-other-keys)
|
||||
(substitute* "src/config/discover.ml"
|
||||
(("/usr") (assoc-ref inputs "gsl")))
|
||||
#t)))))
|
||||
(inputs
|
||||
`(("gsl" ,gsl)))
|
||||
(propagated-inputs
|
||||
`(("ocaml-base" ,ocaml-base)
|
||||
("ocaml-stdio" ,ocaml-stdio)))
|
||||
(home-page "https://mmottl.github.io/gsl-ocaml")
|
||||
(synopsis "Bindings to the GNU Scientific Library")
|
||||
(description
|
||||
|
|
|
@ -78,6 +78,7 @@ (define-module (gnu packages package-management)
|
|||
#:use-module (gnu packages web)
|
||||
#:use-module (gnu packages xml)
|
||||
#:use-module (gnu packages xorg)
|
||||
#:use-module (guix build-system glib-or-gtk)
|
||||
#:use-module (guix build-system gnu)
|
||||
#:use-module (guix build-system meson)
|
||||
#:use-module (guix build-system python)
|
||||
|
@ -109,8 +110,8 @@ (define-public guix
|
|||
;; Note: the 'update-guix-package.scm' script expects this definition to
|
||||
;; start precisely like this.
|
||||
(let ((version "0.16.0")
|
||||
(commit "2637cfd7a4894ef2a2a7da3bb46d8815c43d7e75")
|
||||
(revision 10))
|
||||
(commit "f970946c1d3dc6d20bd48ec6f42c82a43bb7696f")
|
||||
(revision 11))
|
||||
(package
|
||||
(name "guix")
|
||||
|
||||
|
@ -126,7 +127,7 @@ (define-public guix
|
|||
(commit commit)))
|
||||
(sha256
|
||||
(base32
|
||||
"1m734gm45x9czqspsagdfxfgw5wiiinyq1s6zc9gfv7d3b2w472k"))
|
||||
"0v7qj2i9n52l1di8vk15nqdrlapfc22pcf5jl56fp4mqpq48ddrj"))
|
||||
(file-name (string-append "guix-" version "-checkout"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
|
@ -409,10 +410,10 @@ (define-public current-guix-package
|
|||
(make-parameter #f))
|
||||
|
||||
(define-public current-guix
|
||||
(let* ((repository-root (canonicalize-path
|
||||
(string-append (current-source-directory)
|
||||
"/../..")))
|
||||
(select? (delay (or (git-predicate repository-root)
|
||||
(let* ((repository-root (delay (canonicalize-path
|
||||
(string-append (current-source-directory)
|
||||
"/../.."))))
|
||||
(select? (delay (or (git-predicate (force repository-root))
|
||||
source-file?))))
|
||||
(lambda ()
|
||||
"Return a package representing Guix built from the current source tree.
|
||||
|
@ -422,7 +423,7 @@ (define-public current-guix
|
|||
(package
|
||||
(inherit guix)
|
||||
(version (string-append (package-version guix) "+"))
|
||||
(source (local-file repository-root "guix-current"
|
||||
(source (local-file (force repository-root) "guix-current"
|
||||
#:recursive? #t
|
||||
#:select? (force select?))))))))
|
||||
|
||||
|
@ -1018,7 +1019,11 @@ (define-public flatpak
|
|||
(sha256
|
||||
(base32
|
||||
"0i0dn3w3545lvmjlzqj3j70lk8yrq64r9frp1rk6a161gwq20ixv"))))
|
||||
(build-system gnu-build-system)
|
||||
|
||||
;; Wrap 'flatpak' so that GIO_EXTRA_MODULES is set, thereby allowing GIO to
|
||||
;; find the TLS backend in glib-networking.
|
||||
(build-system glib-or-gtk-build-system)
|
||||
|
||||
(arguments
|
||||
'(#:tests? #f ;; Tests fail due to trying to create files where it can't.
|
||||
#:configure-flags (list
|
||||
|
|
119
gnu/packages/patches/docker-use-fewer-modprobes.patch
Normal file
119
gnu/packages/patches/docker-use-fewer-modprobes.patch
Normal file
|
@ -0,0 +1,119 @@
|
|||
This patch makes docker find out whether a filesystem type is supported
|
||||
by trying to mount a filesystem of that type rather than invoking "modprobe".
|
||||
|
||||
See <https://github.com/moby/moby/pull/38930>.
|
||||
|
||||
--- docker-18.09.0-checkout/daemon/graphdriver/overlay/overlay.go.orig 1970-01-01 01:00:00.000000000 +0100
|
||||
+++ docker-18.09.0-checkout/daemon/graphdriver/overlay/overlay.go 2019-03-19 09:16:03.487087490 +0100
|
||||
@@ -8,7 +8,6 @@
|
||||
"io"
|
||||
"io/ioutil"
|
||||
"os"
|
||||
- "os/exec"
|
||||
"path"
|
||||
"path/filepath"
|
||||
"strconv"
|
||||
@@ -201,9 +200,16 @@
|
||||
}
|
||||
|
||||
func supportsOverlay() error {
|
||||
- // We can try to modprobe overlay first before looking at
|
||||
- // proc/filesystems for when overlay is supported
|
||||
- exec.Command("modprobe", "overlay").Run()
|
||||
+ // Access overlay filesystem so that Linux loads it (if possible).
|
||||
+ mountTarget, err := ioutil.TempDir("", "supportsOverlay")
|
||||
+ if err != nil {
|
||||
+ logrus.WithField("storage-driver", "overlay2").Error("Could not create temporary directory, so assuming that 'overlay' is not supported.")
|
||||
+ return graphdriver.ErrNotSupported
|
||||
+ } else {
|
||||
+ /* The mounting will fail--after the module has been loaded.*/
|
||||
+ defer os.RemoveAll(mountTarget)
|
||||
+ unix.Mount("overlay", mountTarget, "overlay", 0, "")
|
||||
+ }
|
||||
|
||||
f, err := os.Open("/proc/filesystems")
|
||||
if err != nil {
|
||||
--- docker-18.09.0-checkout/daemon/graphdriver/overlay2/overlay.go.orig 2019-03-18 23:42:23.728525231 +0100
|
||||
+++ docker-18.09.0-checkout/daemon/graphdriver/overlay2/overlay.go 2019-03-19 08:54:31.411906113 +0100
|
||||
@@ -10,7 +10,6 @@
|
||||
"io"
|
||||
"io/ioutil"
|
||||
"os"
|
||||
- "os/exec"
|
||||
"path"
|
||||
"path/filepath"
|
||||
"strconv"
|
||||
@@ -261,9 +260,16 @@
|
||||
}
|
||||
|
||||
func supportsOverlay() error {
|
||||
- // We can try to modprobe overlay first before looking at
|
||||
- // proc/filesystems for when overlay is supported
|
||||
- exec.Command("modprobe", "overlay").Run()
|
||||
+ // Access overlay filesystem so that Linux loads it (if possible).
|
||||
+ mountTarget, err := ioutil.TempDir("", "supportsOverlay2")
|
||||
+ if err != nil {
|
||||
+ logrus.WithField("storage-driver", "overlay2").Error("Could not create temporary directory, so assuming that 'overlay' is not supported.")
|
||||
+ return graphdriver.ErrNotSupported
|
||||
+ } else {
|
||||
+ /* The mounting will fail--after the module has been loaded.*/
|
||||
+ defer os.RemoveAll(mountTarget)
|
||||
+ unix.Mount("overlay", mountTarget, "overlay", 0, "")
|
||||
+ }
|
||||
|
||||
f, err := os.Open("/proc/filesystems")
|
||||
if err != nil {
|
||||
--- docker-18.09.0-checkout/daemon/graphdriver/devmapper/deviceset.go.orig 2019-03-19 09:19:16.592844887 +0100
|
||||
+++ docker-18.09.0-checkout/daemon/graphdriver/devmapper/deviceset.go 2019-03-19 09:21:18.019361761 +0100
|
||||
@@ -540,8 +539,14 @@
|
||||
return err // error text is descriptive enough
|
||||
}
|
||||
|
||||
- // Check if kernel supports xfs filesystem or not.
|
||||
- exec.Command("modprobe", "xfs").Run()
|
||||
+ mountTarget, err := ioutil.TempDir("", "supportsXFS")
|
||||
+ if err != nil {
|
||||
+ return errors.Wrapf(err, "error checking for xfs support")
|
||||
+ } else {
|
||||
+ /* The mounting will fail--after the module has been loaded.*/
|
||||
+ defer os.RemoveAll(mountTarget)
|
||||
+ unix.Mount("none", mountTarget, "xfs", 0, "")
|
||||
+ }
|
||||
|
||||
f, err := os.Open("/proc/filesystems")
|
||||
if err != nil {
|
||||
--- docker-18.09.0-checkout/vendor/github.com/docker/libnetwork/iptables/iptables.go.orig 2019-03-19 09:47:19.430111170 +0100
|
||||
+++ docker-18.09.0-checkout/vendor/github.com/docker/libnetwork/iptables/iptables.go 2019-03-19 10:38:01.445136177 +0100
|
||||
@@ -72,11 +71,12 @@
|
||||
}
|
||||
|
||||
func probe() {
|
||||
- if out, err := exec.Command("modprobe", "-va", "nf_nat").CombinedOutput(); err != nil {
|
||||
- logrus.Warnf("Running modprobe nf_nat failed with message: `%s`, error: %v", strings.TrimSpace(string(out)), err)
|
||||
+ path, err := exec.LookPath("iptables")
|
||||
+ if err != nil {
|
||||
+ return
|
||||
}
|
||||
- if out, err := exec.Command("modprobe", "-va", "xt_conntrack").CombinedOutput(); err != nil {
|
||||
- logrus.Warnf("Running modprobe xt_conntrack failed with message: `%s`, error: %v", strings.TrimSpace(string(out)), err)
|
||||
+ if out, err := exec.Command(path, "--wait", "-t", "nat", "-L", "-n").CombinedOutput(); err != nil {
|
||||
+ logrus.Warnf("Running iptables --wait -t nat -L -n failed with message: `%s`, error: %v", strings.TrimSpace(string(out)), err)
|
||||
}
|
||||
}
|
||||
|
||||
--- docker-18.09.0-checkout/vendor/github.com/docker/libnetwork/ns/init_linux.go.orig 2019-03-19 11:23:20.738316699 +0100
|
||||
+++ docker-18.09.0-checkout/vendor/github.com/docker/libnetwork/ns/init_linux.go 2019-03-19 11:27:57.149753073 +0100
|
||||
@@ -100,12 +100,7 @@
|
||||
}
|
||||
|
||||
func loadXfrmModules() error {
|
||||
- if out, err := exec.Command("modprobe", "-va", "xfrm_user").CombinedOutput(); err != nil {
|
||||
- return fmt.Errorf("Running modprobe xfrm_user failed with message: `%s`, error: %v", strings.TrimSpace(string(out)), err)
|
||||
- }
|
||||
- if out, err := exec.Command("modprobe", "-va", "xfrm_algo").CombinedOutput(); err != nil {
|
||||
- return fmt.Errorf("Running modprobe xfrm_algo failed with message: `%s`, error: %v", strings.TrimSpace(string(out)), err)
|
||||
- }
|
||||
+ // Those are automatically loaded when someone opens the socket anyway.
|
||||
return nil
|
||||
}
|
||||
|
43
gnu/packages/patches/emacs-zones-called-interactively.patch
Normal file
43
gnu/packages/patches/emacs-zones-called-interactively.patch
Normal file
|
@ -0,0 +1,43 @@
|
|||
From fb56fbb706804215ef9af0cc575db97c373046c6 Mon Sep 17 00:00:00 2001
|
||||
From: Brian Leung <bkleung89@gmail.com>
|
||||
Date: Sun, 17 Mar 2019 01:32:04 +0100
|
||||
Subject: [PATCH] This patch silences the byte-compiler.
|
||||
|
||||
---
|
||||
zones.el | 6 +++---
|
||||
1 file changed, 3 insertions(+), 3 deletions(-)
|
||||
|
||||
diff --git a/zones.el b/zones.el
|
||||
index 1bf94f0..94fa9a6 100644
|
||||
--- a/zones.el
|
||||
+++ b/zones.el
|
||||
@@ -1031,7 +1031,7 @@ You can use `C-x n x' to widen to a previous buffer restriction.
|
||||
|
||||
This is a destructive operation. The list structure of the variable
|
||||
value can be modified."
|
||||
- (zz-narrow-advice (interactive-p)))
|
||||
+ (zz-narrow-advice (called-interactively-p)))
|
||||
|
||||
(defadvice narrow-to-defun (after zz-add-zone--defun activate)
|
||||
"Push the defun limits to the current `zz-izones-var'.
|
||||
@@ -1039,7 +1039,7 @@ You can use `C-x n x' to widen to a previous buffer restriction.
|
||||
|
||||
This is a destructive operation. The list structure of the variable
|
||||
value can be modified."
|
||||
- (zz-narrow-advice (interactive-p)))
|
||||
+ (zz-narrow-advice (called-interactively-p)))
|
||||
|
||||
;; Call `zz-add-zone' if interactive or `zz-add-zone-anyway-p'.
|
||||
;;
|
||||
@@ -1049,7 +1049,7 @@ You can use `C-x n x' to widen to a previous buffer restriction.
|
||||
|
||||
This is a destructive operation. The list structure of the variable
|
||||
value can be modified."
|
||||
- (zz-narrow-advice (interactive-p)))
|
||||
+ (zz-narrow-advice (called-interactively-p)))
|
||||
|
||||
;;(@* "General Commands")
|
||||
|
||||
--
|
||||
2.21.0
|
||||
|
28
gnu/packages/patches/gtk3-fix-deprecation-macro-use.patch
Normal file
28
gnu/packages/patches/gtk3-fix-deprecation-macro-use.patch
Normal file
|
@ -0,0 +1,28 @@
|
|||
Copied from <https://gitlab.gnome.org/GNOME/gtk/commit/e3a1593a>.
|
||||
Fixes upstream bugs <https://gitlab.gnome.org/GNOME/gtk/issues/1523>
|
||||
and <https://gitlab.gnome.org/GNOME/gtk/issues/1280>.
|
||||
|
||||
diff --git a/gdk/x11/gdkwindow-x11.c b/gdk/x11/gdkwindow-x11.c
|
||||
index 97ada6d73919fba3dfe192dd66929e90bc7677bb..764e39495f7edb0c3efe41cca25b8bee4778887d 100644
|
||||
--- a/gdk/x11/gdkwindow-x11.c
|
||||
+++ b/gdk/x11/gdkwindow-x11.c
|
||||
@@ -2985,6 +2985,7 @@ gdk_window_x11_set_background (GdkWindow *window,
|
||||
double r, g, b, a;
|
||||
cairo_surface_t *surface;
|
||||
cairo_matrix_t matrix;
|
||||
+ cairo_pattern_t *parent_relative_pattern;
|
||||
|
||||
if (GDK_WINDOW_DESTROYED (window))
|
||||
return;
|
||||
@@ -2997,8 +2998,10 @@ gdk_window_x11_set_background (GdkWindow *window,
|
||||
}
|
||||
|
||||
G_GNUC_BEGIN_IGNORE_DEPRECATIONS
|
||||
- if (pattern == gdk_x11_get_parent_relative_pattern ())
|
||||
+ parent_relative_pattern = gdk_x11_get_parent_relative_pattern ();
|
||||
G_GNUC_END_IGNORE_DEPRECATIONS
|
||||
+
|
||||
+ if (pattern == parent_relative_pattern)
|
||||
{
|
||||
GdkWindow *parent;
|
||||
|
|
@ -1,38 +0,0 @@
|
|||
This patch allows reptyr to build with gcc 7. It is taken from reptyr mainline patches
|
||||
fa0d63f and b45fd92.
|
||||
|
||||
https://github.com/nelhage/reptyr/commit/fa0d63ff8c488be15976e5353580b565e85586a1
|
||||
https://github.com/nelhage/reptyr/commit/b45fd9238958fcf2d8f3d6fc23e6d491febea2ac
|
||||
|
||||
Patch by Nelson Elhage <nelhage@nelhage.com>.
|
||||
|
||||
diff --git a/attach.c b/attach.c
|
||||
index bd8ef8c..8d9cbf8 100644
|
||||
--- a/attach.c
|
||||
+++ b/attach.c
|
||||
@@ -389,8 +389,11 @@ int setup_steal_socket(struct steal_pty_state *steal) {
|
||||
return errno;
|
||||
|
||||
steal->addr_un.sun_family = AF_UNIX;
|
||||
- snprintf(steal->addr_un.sun_path, sizeof(steal->addr_un.sun_path),
|
||||
- "%s/reptyr.sock", steal->tmpdir);
|
||||
+ if (snprintf(steal->addr_un.sun_path, sizeof(steal->addr_un.sun_path),
|
||||
+ "%s/reptyr.sock", steal->tmpdir) >= sizeof(steal->addr_un.sun_path)) {
|
||||
+ error("tmpdir path too long!");
|
||||
+ return ENAMETOOLONG;
|
||||
+ }
|
||||
|
||||
if ((steal->sockfd = socket(AF_UNIX, SOCK_DGRAM, 0)) < 0)
|
||||
return errno;
|
||||
diff --git a/platform/linux/linux.h b/platform/linux/linux.h
|
||||
index 9e6b78a..3ec5a99 100644
|
||||
--- a/platform/linux/linux.h
|
||||
+++ b/platform/linux/linux.h
|
||||
@@ -40,6 +40,7 @@
|
||||
#include <sys/ptrace.h>
|
||||
#include <asm/ptrace.h>
|
||||
#include <sys/types.h>
|
||||
+#include <sys/sysmacros.h>
|
||||
#include <sys/user.h>
|
||||
#include <unistd.h>
|
||||
#include <stdlib.h>
|
|
@ -216,7 +216,7 @@ (define-public patches
|
|||
#:python ,python-2)) ;not compatible with Python 3
|
||||
(synopsis "Patch tracking tool")
|
||||
(description
|
||||
"'Patches' is a patch-tracking tool initially written for the QEMU
|
||||
"@code{Patches} is a patch-tracking tool initially written for the QEMU
|
||||
project. It provides commands that build a database of patches from a mailing
|
||||
list, and commands that can search that database. It allows users to track
|
||||
the status of a patch, apply patches, and search for patches---all that from
|
||||
|
|
|
@ -801,9 +801,10 @@ (define-public perl-test-more-utf8
|
|||
(home-page "https://metacpan.org/release/Test-More-UTF8")
|
||||
(synopsis "Enhance Test::More for UTF8-based projects")
|
||||
(description "@code{Test::More::UTF8} is a simple extension for the widely
|
||||
used @code{Test::More} module. By default, it will do a @code{binmode ':utf8'}
|
||||
on all of @code{Test::Builder}'s output handles thus enabling the easy use
|
||||
flagged strings without warnings like \"Wide character in print @dots{}\"")
|
||||
used @code{Test::More} module. By default, it will do a @code{binmode
|
||||
@code{:utf8}} on all of @code{Test::Builder}'s output handles thus enabling the
|
||||
easy use flagged strings without warnings like \"Wide character in print
|
||||
@dots{}\"")
|
||||
(license perl-license)))
|
||||
|
||||
(define-public perl-test-most
|
||||
|
|
|
@ -55,7 +55,7 @@ (define-public perl-uri-escape
|
|||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "mirror://cpan/authors/id/E/ET/ETHER/URI-"
|
||||
(uri (string-append "mirror://cpan/authors/id/O/OA/OALDERS/URI-"
|
||||
version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
|
|
|
@ -18,7 +18,7 @@
|
|||
;;; Copyright © 2017, 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr>
|
||||
;;; Copyright © 2017 Leo Famulari <leo@famulari.name>
|
||||
;;; Copyright © 2017 Christopher Allan Webber <cwebber@dustycloud.org>
|
||||
;;; Copyright © 2018 Oleg Pykhalov <go.wigust@gmail.com>
|
||||
;;; Copyright © 2018, 2019 Oleg Pykhalov <go.wigust@gmail.com>
|
||||
;;; Copyright © 2018, 2019 Pierre Neidhardt <mail@ambrevar.xyz>
|
||||
;;; Copyright © 2018 Kei Kebreau <kkebreau@posteo.net>
|
||||
;;;
|
||||
|
@ -387,7 +387,7 @@ (define-public perl-base
|
|||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "mirror://cpan/authors/id/R/RG/RGARCIA/"
|
||||
(uri (string-append "mirror://cpan/authors/id/R/RJ/RJBS/"
|
||||
"base-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32 "1pjxcbbcpwlgzm0fzsbqd58zn8cj9vwril1wn3xfd7ws550mixa0"))))
|
||||
|
@ -733,7 +733,7 @@ (define-public perl-carp
|
|||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
"mirror://cpan/authors/id/R/RJ/RJBS/Carp-"
|
||||
"mirror://cpan/authors/id/X/XS/XSAWYERX/Carp-"
|
||||
version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
|
@ -821,7 +821,7 @@ (define-public perl-carp-clan
|
|||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "mirror://cpan/authors/id/K/KE/KENTNL/"
|
||||
(uri (string-append "mirror://cpan/authors/id/E/ET/ETHER/"
|
||||
"Carp-Clan-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
|
@ -911,7 +911,7 @@ (define-public perl-class-accessor-grouped
|
|||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "mirror://cpan/authors/id/R/RI/RIBASUSHI/"
|
||||
(uri (string-append "mirror://cpan/authors/id/H/HA/HAARG/"
|
||||
"Class-Accessor-Grouped-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32 "1fy48hx56n5kdn1gz66awg465qf34r0n5jam64x7zxh9zhzb1m9m"))))
|
||||
|
@ -981,7 +981,7 @@ (define-public perl-class-c3-componentised
|
|||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "mirror://cpan/authors/id/F/FR/FREW/"
|
||||
(uri (string-append "mirror://cpan/authors/id/H/HA/HAARG/"
|
||||
"Class-C3-Componentised-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32 "14wn1g45z3b5apqq7dcai5drk01hfyqydsd2m6hsxzhyvi3b2l9h"))))
|
||||
|
@ -1027,7 +1027,7 @@ (define-public perl-class-date
|
|||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "mirror://cpan/authors/id/S/SZ/SZABGAB/"
|
||||
(uri (string-append "mirror://cpan/authors/id/Y/YA/YANICK/"
|
||||
"Class-Date-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32 "1h7dfjxkpqbfymrf1bn7699i4fx6pbv5wvvi5zszfr8sqqkax1yf"))))
|
||||
|
@ -1190,11 +1190,11 @@ (define-public perl-class-method-modifiers
|
|||
("perl-test-requires" ,perl-test-requires)))
|
||||
(home-page "https://metacpan.org/release/Class-Method-Modifiers")
|
||||
(synopsis "Moose-like method modifiers")
|
||||
(description "Class::Method::Modifiers provides three modifiers: 'before',
|
||||
'around', and 'after'. 'before' and 'after' are run just before and after the
|
||||
method they modify, but can not really affect that original method. 'around'
|
||||
is run in place of the original method, with a hook to easily call that
|
||||
original method.")
|
||||
(description "Class::Method::Modifiers provides three modifiers:
|
||||
@code{before}, @code{around}, and @code{after}. @code{before} and @code{after}
|
||||
are run just before and after the method they modify, but can not really affect
|
||||
that original method. @code{around} is run in place of the original method,
|
||||
with a hook to easily call that original method.")
|
||||
(license (package-license perl))))
|
||||
|
||||
(define-public perl-class-singleton
|
||||
|
@ -2216,7 +2216,7 @@ (define-public perl-datetime-calendar-julian
|
|||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "mirror://cpan/authors/id/P/PI/PIJLL/"
|
||||
(uri (string-append "mirror://cpan/authors/id/W/WY/WYANT/"
|
||||
"DateTime-Calendar-Julian-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32 "0gbw7rh706qk5jlmmz3yzsm0ilzp39kyar28g4j6d57my8cwaipx"))))
|
||||
|
@ -2938,7 +2938,7 @@ (define-public perl-digest-sha1
|
|||
(build-system perl-build-system)
|
||||
(synopsis "Perl implementation of the SHA-1 message digest algorithm")
|
||||
(description
|
||||
"This package provides 'Digest::SHA1', an implementation of the NIST
|
||||
"This package provides @code{Digest::SHA1}, an implementation of the NIST
|
||||
SHA-1 message digest algorithm for use by Perl programs.")
|
||||
(home-page "https://metacpan.org/release/Digest-SHA1")
|
||||
(license (package-license perl))))
|
||||
|
@ -3481,7 +3481,7 @@ (define-public perl-file-homedir
|
|||
(home-page "https://metacpan.org/release/File-HomeDir")
|
||||
(synopsis "Find your home and other directories on any platform")
|
||||
(description "File::HomeDir is a module for locating the directories that
|
||||
are \"owned\" by a user (typically your user) and to solve the various issues
|
||||
are @code{owned} by a user (typically your user) and to solve the various issues
|
||||
that arise trying to find them consistently across a wide variety of
|
||||
platforms.")
|
||||
(license (package-license perl))))
|
||||
|
@ -3747,7 +3747,7 @@ (define-public perl-file-temp
|
|||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "mirror://cpan/authors/id/D/DA/DAGOLDEN/"
|
||||
(uri (string-append "mirror://cpan/authors/id/E/ET/ETHER/"
|
||||
"File-Temp-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32 "0pr3wrxrk93wy7dz9gsb1sgl77icrs8rh2mah6wms5cdi2ll5ch1"))))
|
||||
|
@ -4266,8 +4266,8 @@ (define-public perl-io-tty
|
|||
(home-page "https://metacpan.org/release/IO-Tty")
|
||||
(synopsis "Perl interface to pseudo ttys")
|
||||
(description
|
||||
"This package provides the 'IO::Pty' and 'IO::Tty' Perl interfaces to
|
||||
pseudo ttys.")
|
||||
"This package provides the @code{IO::Pty} and @code{IO::Tty} Perl
|
||||
interfaces to pseudo ttys.")
|
||||
(license (package-license perl))))
|
||||
|
||||
(define-public perl-ipc-cmd
|
||||
|
@ -4515,7 +4515,7 @@ (define-public perl-log-any
|
|||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "mirror://cpan/authors/id/D/DA/DAGOLDEN/Log-Any-"
|
||||
(uri (string-append "mirror://cpan/authors/id/P/PR/PREACTION/Log-Any-"
|
||||
version ".tar.gz"))
|
||||
(sha256
|
||||
(base32 "1wb55ib4gvk8h5pjb6hliqg7li1xjk420q3w5r33f9p1ps60ylbl"))))
|
||||
|
@ -4533,7 +4533,7 @@ (define-public perl-log-any
|
|||
|
||||
@code{Log::Any} has a very tiny footprint and no dependencies beyond Perl
|
||||
itself, which makes it appropriate for even small CPAN modules to use. It
|
||||
defaults to 'null' logging activity, so a module can safely log without
|
||||
defaults to @code{null} logging activity, so a module can safely log without
|
||||
worrying about whether the application has chosen (or will ever choose) a
|
||||
logging mechanism.")
|
||||
(license (package-license perl))))
|
||||
|
@ -4606,7 +4606,7 @@ (define-public perl-log-report-optional
|
|||
"This module allows libraries to have a dependency to a small module
|
||||
instead of the full Log-Report distribution. The full power of
|
||||
@code{Log::Report} is only released when the main program uses that module.
|
||||
In that case, the module using the 'Optional' will also use the full
|
||||
In that case, the module using the @code{Optional} will also use the full
|
||||
@code{Log::Report}, otherwise the dressed-down @code{Log::Report::Minimal}
|
||||
version.")
|
||||
(license (package-license perl))))
|
||||
|
@ -5274,7 +5274,7 @@ (define-public perl-module-pluggable
|
|||
(home-page "https://metacpan.org/release/Module-Pluggable")
|
||||
(synopsis "Give your Perl module the ability to have plugins")
|
||||
(description "This module provides a simple but extensible way of having
|
||||
'plugins' for your Perl module.")
|
||||
@code{plugins} for your Perl module.")
|
||||
(license (package-license perl))))
|
||||
|
||||
(define-public perl-module-runtime
|
||||
|
@ -5516,7 +5516,7 @@ (define-public perl-moosex-emulate-class-accessor-fast
|
|||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "mirror://cpan/authors/id/F/FL/FLORA/"
|
||||
(uri (string-append "mirror://cpan/authors/id/H/HA/HAARG/"
|
||||
"MooseX-Emulate-Class-Accessor-Fast-"
|
||||
version ".tar.gz"))
|
||||
(sha256
|
||||
|
@ -6226,7 +6226,7 @@ (define-public perl-mouse
|
|||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
"mirror://cpan/authors/id/S/SY/SYOHEX/Mouse-v"
|
||||
"mirror://cpan/authors/id/S/SK/SKAJI/Mouse-v"
|
||||
version
|
||||
".tar.gz"))
|
||||
(sha256
|
||||
|
@ -6540,7 +6540,7 @@ (define-public perl-object-signature
|
|||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "mirror://cpan/authors/id/A/AD/ADAMK/"
|
||||
(uri (string-append "mirror://cpan/authors/id/E/ET/ETHER/"
|
||||
"Object-Signature-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32 "12k90c19ly93ib1p6sm3k7sbnr2h5dbywkdmnff2ngm99p4m68c4"))))
|
||||
|
@ -6635,7 +6635,7 @@ (define-public perl-package-stash
|
|||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "mirror://cpan/authors/id/D/DO/DOY/"
|
||||
(uri (string-append "mirror://cpan/authors/id/E/ET/ETHER/"
|
||||
"Package-Stash-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32 "0zrs4byhlpq5ybnl0fd3y6pfzair6i2dyvzn7f7a7pgj9n2fi3n5"))))
|
||||
|
@ -6663,7 +6663,7 @@ (define-public perl-package-stash-xs
|
|||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "mirror://cpan/authors/id/D/DO/DOY/"
|
||||
(uri (string-append "mirror://cpan/authors/id/E/ET/ETHER/"
|
||||
"Package-Stash-XS-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32 "1akqk10qxwk798qppajqbczwmhy4cs9g0lg961m3vq218slnnryk"))))
|
||||
|
@ -7130,7 +7130,7 @@ (define-public perl-regexp-common
|
|||
(build-system perl-build-system)
|
||||
(synopsis "Provide commonly requested regular expressions")
|
||||
(description
|
||||
"This module exports a single hash (`%RE') that stores or generates
|
||||
"This module exports a single hash (@code{%RE}) that stores or generates
|
||||
commonly needed regular expressions. Patterns currently provided include:
|
||||
balanced parentheses and brackets, delimited text (with escapes), integers and
|
||||
floating-point numbers in any base (up to 36), comments in 44 languages,
|
||||
|
@ -7790,7 +7790,7 @@ (define-public perl-svg
|
|||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "mirror://cpan/authors/id/S/SZ/SZABGAB/SVG-"
|
||||
(uri (string-append "mirror://cpan/authors/id/M/MA/MANWAR/SVG-"
|
||||
version ".tar.gz"))
|
||||
(sha256
|
||||
(base32 "1br8dwh2363s6r0qgy7vv30gv5kj456vj5m6x83savx4wzfnsggc"))))
|
||||
|
@ -8612,7 +8612,7 @@ (define-public perl-time-hires
|
|||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
"mirror://cpan/authors/id/J/JH/JHI/Time-HiRes-"
|
||||
"mirror://cpan/authors/id/A/AT/ATOOMIC/Time-HiRes-"
|
||||
version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
|
|
|
@ -331,11 +331,12 @@ (define-public perl6-json-class
|
|||
(synopsis "Provide simple serialisation/deserialisation of objects to/from JSON")
|
||||
(description "This is a simple role that provides methods to instantiate a
|
||||
class from a JSON string that (hopefully,) represents it, and to serialise an
|
||||
object of the class to a JSON string. The JSON created from an instance should
|
||||
round trip to a new instance with the same values for the @quot{public
|
||||
attributes}. @quot{Private} attributes (that is ones without accessors,) will
|
||||
be ignored for both serialisation and de-serialisation. The exact behaviour
|
||||
depends on that of @code{JSON::Marshal} and @code{JSON::Unmarshal} respectively.")
|
||||
object of the class to a JSON string. The JSON created from an instance
|
||||
should round trip to a new instance with the same values for the public
|
||||
attributes. Private attributes (that is ones without accessors,) will be
|
||||
ignored for both serialisation and de-serialisation. The exact behaviour
|
||||
depends on that of @code{JSON::Marshal} and @code{JSON::Unmarshal}
|
||||
respectively.")
|
||||
(license license:artistic2.0)))
|
||||
|
||||
(define-public perl6-json-fast
|
||||
|
@ -492,13 +493,13 @@ (define-public perl6-meta6
|
|||
specification - the META file data can be read, created, parsed and written in a
|
||||
manner that is conformant with the specification.
|
||||
|
||||
Where they are known about it also makes allowance for @quot{customary} usage in
|
||||
Where they are known about it also makes allowance for customary usage in
|
||||
existing software (such as installers and so forth.)
|
||||
|
||||
The intent of this is allow the generation and testing of META files for module
|
||||
authors, so it can provide meta-information whether the attributes are mandatory
|
||||
as per the spec and where known the places that @quot{customary} attributes are
|
||||
used.")
|
||||
The intent of this is allow the generation and testing of META files for
|
||||
module authors, so it can provide meta-information whether the attributes are
|
||||
mandatory as per the spec and where known the places that customary attributes
|
||||
are used.")
|
||||
(license license:artistic2.0)))
|
||||
|
||||
(define-public perl6-mime-base64
|
||||
|
|
|
@ -204,10 +204,13 @@ (define-public gphoto2
|
|||
;; Files are typically under LGPLv2+, but 'COPYING' says GPLv2+.
|
||||
(license license:gpl2+)))
|
||||
|
||||
;; Note: See <https://metacpan.org/pod/Image::ExifTool> for the latest
|
||||
;; release. The versions at <https://www.sno.phy.queensu.ca/~phil/exiftool/>
|
||||
;; are not meant for production use according to the Changes file.
|
||||
(define-public perl-image-exiftool
|
||||
(package
|
||||
(name "perl-image-exiftool")
|
||||
(version "11.31")
|
||||
(version "11.30")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
|
@ -218,7 +221,7 @@ (define-public perl-image-exiftool
|
|||
(string-append "https://www.sno.phy.queensu.ca/~phil/exiftool/"
|
||||
"Image-ExifTool-" version ".tar.gz")))
|
||||
(sha256
|
||||
(base32 "1kplb7hvhrhqxkr4ddc44q7a3fs0r8svv2jlh325nwkfi7aa5kz5"))))
|
||||
(base32 "0vkjb2c1a3jdlq8rx1jywx4p3f1bmgjn7rzfwx6dxgij2lx76lrs"))))
|
||||
(build-system perl-build-system)
|
||||
(arguments
|
||||
'(#:phases
|
||||
|
|
|
@ -86,7 +86,7 @@ (define-public php
|
|||
#t))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
'(#:configure-flags
|
||||
`(#:configure-flags
|
||||
(let-syntax ((with (syntax-rules ()
|
||||
((_ option input)
|
||||
(string-append option "="
|
||||
|
@ -182,6 +182,18 @@ (define-public php
|
|||
(substitute* "ext/standard/tests/streams/bug60602.phpt"
|
||||
(("'ls'") (string-append "'" (which "ls") "'")))
|
||||
|
||||
,@(if (string-prefix? "arm" (or (%current-system)
|
||||
(%current-target-system)))
|
||||
;; Drop tests known to fail on armhf.
|
||||
'((for-each delete-file
|
||||
(list
|
||||
"ext/calendar/tests/unixtojd_error1.phpt"
|
||||
;; arm can be a lot slower, so a time-related test fails
|
||||
"ext/fileinfo/tests/cve-2014-3538-nojit.phpt"
|
||||
"ext/pcre/tests/bug76514.phpt"
|
||||
"ext/pcre/tests/preg_match_error3.phpt")))
|
||||
'())
|
||||
|
||||
;; Drop tests that are known to fail.
|
||||
(for-each delete-file
|
||||
'("ext/posix/tests/posix_getgrgid.phpt" ; Requires /etc/group.
|
||||
|
|
|
@ -4,6 +4,7 @@
|
|||
;;; Copyright © 2017 Marius Bakke <mbakke@fastmail.com>
|
||||
;;; Copyright © 2017 Ludovic Courtès <ludo@gnu.org>
|
||||
;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr>
|
||||
;;; Copyright © 2019 Meiyo Peng <meiyo@riseup.net>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
|
@ -162,7 +163,7 @@ (define-public enscript
|
|||
(define-public fmt
|
||||
(package
|
||||
(name "fmt")
|
||||
(version "4.1.0")
|
||||
(version "5.3.0")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
|
@ -170,14 +171,10 @@ (define-public fmt
|
|||
version "/fmt-" version ".zip"))
|
||||
(sha256
|
||||
(base32
|
||||
"1swyqw3dn2vx5sw2yh5vk0vrvrkp7fv07cj4272yxl5rrq1byjcx"))))
|
||||
"0p51nhmvjniqlffmmb9djhprnclvm448f2vkdxymvxw307hl21sc"))))
|
||||
(build-system cmake-build-system)
|
||||
(native-inputs
|
||||
`(("unzip" ,unzip)))
|
||||
(arguments
|
||||
`(#:configure-flags
|
||||
(list (string-append "-DCMAKE_INSTALL_LIBDIR="
|
||||
(assoc-ref %outputs "out") "/lib"))))
|
||||
(home-page "http://fmtlib.net/")
|
||||
(synopsis "Small and fast C++ formatting library")
|
||||
(description
|
||||
|
|
|
@ -2765,14 +2765,14 @@ (define-public python-pydocstyle
|
|||
(define-public python-language-server
|
||||
(package
|
||||
(name "python-language-server")
|
||||
(version "0.25.0")
|
||||
(version "0.26.1")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "python-language-server" version))
|
||||
(sha256
|
||||
(base32
|
||||
"1xabnaqd4n72myrc3mxl2y33vr2p7c9c5a87n77p9k327ckvdx01"))))
|
||||
"1vs9ckfmm534n1hq3m871916wsjvi5h4gyj6wlzg13ck6506lx0s"))))
|
||||
(build-system python-build-system)
|
||||
(propagated-inputs
|
||||
`(("python-pluggy" ,python-pluggy)
|
||||
|
@ -5641,7 +5641,7 @@ (define-public python-backports-abc
|
|||
(synopsis "Backport of additions to the 'collections.abc' module")
|
||||
(description
|
||||
"Python-backports-abc provides a backport of additions to the
|
||||
'collections.abc' module in Python-3.5.")
|
||||
@code{collections.abc} module in Python-3.5.")
|
||||
(license license:psfl)))
|
||||
|
||||
(define-public python2-backports-abc
|
||||
|
@ -6072,14 +6072,14 @@ (define-public python2-mistune
|
|||
(define-public python-markdown
|
||||
(package
|
||||
(name "python-markdown")
|
||||
(version "3.0.1")
|
||||
(version "3.1")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "Markdown" version))
|
||||
(sha256
|
||||
(base32
|
||||
"0z6v8649sr434d5r5zmrhydka7v7f9yas4bwcgkcs0650jdhybnh"))))
|
||||
"0l62x154r9mgdvfap06gf0nkrmjd7xixlfshsxcdif2nlrlnyjpw"))))
|
||||
(build-system python-build-system)
|
||||
(native-inputs
|
||||
`(("python-nose" ,python-nose)
|
||||
|
@ -6872,7 +6872,9 @@ (define-public python-file
|
|||
(string-append "'" file "/lib/libmagic.so'")))
|
||||
#t))))))
|
||||
(inputs `(("file" ,file)))
|
||||
(self-native-input? #f)
|
||||
(native-inputs (if (%current-target-system)
|
||||
`(("self" ,this-package))
|
||||
'()))
|
||||
(synopsis "Python bindings to the libmagic file type guesser. Note that
|
||||
this module and the python-magic module both provide a \"magic.py\" file;
|
||||
these two modules, which are different and were developed separately, both
|
||||
|
@ -10336,12 +10338,12 @@ (define-public python-natsort
|
|||
(description
|
||||
"Natsort lets you apply natural sorting on lists instead of
|
||||
lexicographical. If you use the built-in @code{sorted} method in python
|
||||
on a list such as @code{['a20', 'a9', 'a1', 'a4', 'a10']}, it would be
|
||||
returned as @code{['a1', 'a10', 'a20', 'a4', 'a9']}. Natsort provides a
|
||||
function @code{natsorted} that identifies numbers and sorts them separately
|
||||
from strings. It can also sort version numbers, real numbers, mixed types
|
||||
and more, and comes with a shell command @command{natsort} that exposes this
|
||||
functionality in the command line.")
|
||||
on a list such as @code{[@code{a20}, @code{a9}, @code{a1}, @code{a4},
|
||||
@code{a10}]}, it would be returned as @code{[@code{a1}, @code{a10}, @code{a20},
|
||||
@code{a4}, @code{a9}]}. Natsort provides a function @code{natsorted} that
|
||||
identifies numbers and sorts them separately from strings. It can also sort
|
||||
version numbers, real numbers, mixed types and more, and comes with a shell
|
||||
command @command{natsort} that exposes this functionality in the command line.")
|
||||
(license license:expat)
|
||||
(properties `((python2-variant . ,(delay python2-natsort))))))
|
||||
|
||||
|
@ -10833,16 +10835,17 @@ (define-public python2-argcomplete
|
|||
(define-public python-xopen
|
||||
(package
|
||||
(name "python-xopen")
|
||||
(version "0.3.3")
|
||||
(version "0.5.0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "xopen" version))
|
||||
(sha256
|
||||
(base32
|
||||
"1a0wbil552wsmklwd89ssmgz3pjd86qa9i7jh8wqb9wslc8a2qjr"))
|
||||
(file-name (string-append name "-" version ".tar.gz"))))
|
||||
"17xbrgi23l87yg6h0qcknssp2q812miiy33qw6v45v5gx0jwv5xh"))))
|
||||
(build-system python-build-system)
|
||||
(propagated-inputs
|
||||
`(("python-setuptools-scm" ,python-setuptools-scm)))
|
||||
(home-page "https://github.com/marcelm/xopen/")
|
||||
(synopsis "Open compressed files transparently")
|
||||
(description "This module provides an @code{xopen} function that works like
|
||||
|
@ -14591,14 +14594,14 @@ (define-public python-numba
|
|||
(define-public python-anndata
|
||||
(package
|
||||
(name "python-anndata")
|
||||
(version "0.6.9")
|
||||
(version "0.6.18")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "anndata" version))
|
||||
(sha256
|
||||
(base32
|
||||
"1fh461xyyc7pcrjfgd013bdc2alf53r46ss3gfw3431mbb1gappi"))))
|
||||
"03x83yjaccbqszj7x4fwwmpil0ai59yx64d1zmf2691za3j03w73"))))
|
||||
(build-system python-build-system)
|
||||
(propagated-inputs
|
||||
`(("python-h5py" ,python-h5py)
|
||||
|
@ -15271,3 +15274,26 @@ (define-public python-toolshed
|
|||
(description "This is a collection of well-tested, simple modules and
|
||||
functions that aim to reduce boilerplate when working with data.")
|
||||
(license license:bsd-2)))
|
||||
|
||||
(define-public python-annoy
|
||||
(package
|
||||
(name "python-annoy")
|
||||
(version "1.15.1")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "annoy" version))
|
||||
(sha256
|
||||
(base32
|
||||
"1rxn6snn0r32r07g45hdjhh8aa1xzx6fjrm8g62d8vzp46z7rzrp"))))
|
||||
(build-system python-build-system)
|
||||
(native-inputs
|
||||
`(("python-nose" ,python-nose)))
|
||||
(home-page "https://github.com/spotify/annoy/")
|
||||
(synopsis "Approximate nearest neighbors library")
|
||||
(description
|
||||
"Annoy is a C++ library with Python bindings to search for points in
|
||||
space that are close to a given query point. It also creates large read-only
|
||||
file-based data structures that are @code{mmap}ped into memory so that many
|
||||
processes may share the same data.")
|
||||
(license license:asl2.0)))
|
||||
|
|
|
@ -96,6 +96,18 @@ (define-public grantlee
|
|||
(arguments
|
||||
`(#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-after 'unpack 'delete-broken-tests
|
||||
(lambda _
|
||||
;; TODO: Two date tests (for date01 and date02) fail for unknown
|
||||
;; reasons.
|
||||
;; Actual (result): ""
|
||||
;; Expected (output): "01"
|
||||
;; Actual (result): ""
|
||||
;; Expected (output): "Jan. 1, 2008"
|
||||
(delete-file "templates/tests/testfilters.cpp")
|
||||
(substitute* "templates/tests/CMakeLists.txt"
|
||||
(("testfilters") ""))
|
||||
#t))
|
||||
(add-before 'check 'check-setup
|
||||
(lambda _
|
||||
;; make Qt render "offscreen", required for tests
|
||||
|
|
|
@ -1,5 +1,5 @@
|
|||
;;; GNU Guix --- Functional package management for GNU
|
||||
;;; Copyright © 2013, 2014 Ludovic Courtès <ludo@gnu.org>
|
||||
;;; Copyright © 2013, 2014, 2019 Ludovic Courtès <ludo@gnu.org>
|
||||
;;; Copyright © 2015 Mathieu Lirzin <mthl@openmailbox.org>
|
||||
;;; Copyright © 2017 Mathieu Othacehe <m.othacehe@gmail.com>
|
||||
;;;
|
||||
|
@ -30,17 +30,6 @@ (define-module (gnu packages ratpoison)
|
|||
#:use-module (gnu packages pkg-config)
|
||||
#:use-module (gnu packages fontutils))
|
||||
|
||||
(define ratpoison.desktop
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://sources.gentoo.org/cgi-bin/viewvc.cgi/"
|
||||
"gentoo-x86/x11-wm/ratpoison/files/ratpoison.desktop"
|
||||
"?revision=1.1"))
|
||||
(file-name "ratpoison.desktop")
|
||||
(sha256
|
||||
(base32
|
||||
"1rh3f4c3rhn6q2hmkraam0831xqcqyj3qkqf019ahaxsxaan3553"))))
|
||||
|
||||
(define-public ratpoison
|
||||
(package
|
||||
(name "ratpoison")
|
||||
|
@ -55,17 +44,28 @@ (define-public ratpoison
|
|||
(patches (search-patches "ratpoison-shell.patch"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
'(#:phases
|
||||
`(#:modules ((ice-9 format)
|
||||
,@%gnu-build-system-modules)
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-after 'install 'install-xsession
|
||||
(lambda* (#:key inputs outputs #:allow-other-keys)
|
||||
(let ((rpd "ratpoison.desktop")
|
||||
(dst (string-append (assoc-ref outputs "out")
|
||||
"/share/xsessions/")))
|
||||
(mkdir-p dst)
|
||||
(copy-file (assoc-ref inputs rpd)
|
||||
(string-append dst rpd))
|
||||
#t))))))
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
;; Add a .desktop file to xsessions.
|
||||
(let* ((output (assoc-ref outputs "out"))
|
||||
(xsessions (string-append output "/share/xsessions")))
|
||||
(mkdir-p xsessions)
|
||||
(call-with-output-file (string-append xsessions
|
||||
"/ratpoison.desktop")
|
||||
(lambda (port)
|
||||
(format port
|
||||
"[Desktop Entry]~@
|
||||
Name=ratpoison~@
|
||||
Comment=Tiling window manager: say goodbye to the rodent!~@
|
||||
Exec=~a/bin/ratpoison~@
|
||||
TryExec=~@*~a/bin/ratpoison~@
|
||||
Type=Application~%"
|
||||
output)))
|
||||
#t))))))
|
||||
(inputs
|
||||
`(("fontconfig" ,fontconfig)
|
||||
("freetype" ,freetype)
|
||||
|
@ -80,8 +80,7 @@ (define-public ratpoison
|
|||
("xorgproto" ,xorgproto)))
|
||||
(native-inputs
|
||||
`(("perl" ,perl)
|
||||
("pkg-config" ,pkg-config)
|
||||
("ratpoison.desktop" ,ratpoison.desktop)))
|
||||
("pkg-config" ,pkg-config)))
|
||||
(home-page "https://www.nongnu.org/ratpoison/")
|
||||
(synopsis "Simple mouse-free tiling window manager")
|
||||
(description
|
||||
|
|
|
@ -70,7 +70,10 @@ (define* (nix-system->gnu-triplet-for-rust
|
|||
(_ (nix-system->gnu-triplet system))))
|
||||
|
||||
|
||||
(define* (rust-source version hash #:key (patches '()))
|
||||
(define* (rust-source-pre-1.32 version hash
|
||||
#:key
|
||||
(patches '())
|
||||
(patch-flags '("-p1")))
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://static.rust-lang.org/dist/"
|
||||
|
@ -78,16 +81,51 @@ (define* (rust-source version hash #:key (patches '()))
|
|||
(sha256 (base32 hash))
|
||||
(modules '((guix build utils)))
|
||||
(snippet '(begin (delete-file-recursively "src/llvm") #t))
|
||||
(patches (map search-patch patches))))
|
||||
(patches (map search-patch patches))
|
||||
(patch-flags patch-flags)))
|
||||
|
||||
(define* (rust-bootstrapped-package-pre-1.32 base-rust version checksum
|
||||
#:key
|
||||
(patches '())
|
||||
(patch-flags '("-p1")))
|
||||
"Bootstrap rust VERSION with source checksum CHECKSUM patched with PATCHES using BASE-RUST.
|
||||
Specific to rust versions before 1.32."
|
||||
(package
|
||||
(inherit base-rust)
|
||||
(version version)
|
||||
(source
|
||||
(rust-source-pre-1.32 version checksum #:patches patches #:patch-flags patch-flags))
|
||||
(native-inputs
|
||||
(alist-replace "cargo-bootstrap" (list base-rust "cargo")
|
||||
(alist-replace "rustc-bootstrap" (list base-rust)
|
||||
(package-native-inputs base-rust))))))
|
||||
|
||||
(define* (rust-source version hash
|
||||
#:key
|
||||
(patches '())
|
||||
(patch-flags '("-p1")))
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://static.rust-lang.org/dist/"
|
||||
"rustc-" version "-src.tar.gz"))
|
||||
(sha256 (base32 hash))
|
||||
(modules '((guix build utils)))
|
||||
(snippet '(begin (delete-file-recursively "src/llvm")
|
||||
(delete-file-recursively "vendor/jemalloc-sys/jemalloc")
|
||||
#t))
|
||||
(patches (map search-patch patches))
|
||||
(patch-flags patch-flags)))
|
||||
|
||||
(define* (rust-bootstrapped-package base-rust version checksum
|
||||
#:key (patches '()))
|
||||
#:key
|
||||
(patches '())
|
||||
(patch-flags '("-p1")))
|
||||
"Bootstrap rust VERSION with source checksum CHECKSUM patched with PATCHES using BASE-RUST."
|
||||
(package
|
||||
(inherit base-rust)
|
||||
(version version)
|
||||
(source
|
||||
(rust-source version checksum #:patches patches))
|
||||
(rust-source version checksum #:patches patches #:patch-flags patch-flags))
|
||||
(native-inputs
|
||||
(alist-replace "cargo-bootstrap" (list base-rust "cargo")
|
||||
(alist-replace "rustc-bootstrap" (list base-rust)
|
||||
|
@ -118,7 +156,7 @@ (define-public mrustc
|
|||
("flex" ,flex)
|
||||
;; Required for the libstd sources.
|
||||
("rustc"
|
||||
,(rust-source "1.19.0" "0l8c14qsf42rmkqy92ahij4vf356dbyspxcips1aswpvad81y8qm"))))
|
||||
,(rust-source-pre-1.32 "1.19.0" "0l8c14qsf42rmkqy92ahij4vf356dbyspxcips1aswpvad81y8qm"))))
|
||||
(arguments
|
||||
`(#:test-target "local_tests"
|
||||
#:make-flags (list (string-append "LLVM_CONFIG="
|
||||
|
@ -191,7 +229,7 @@ (define rust-1.19
|
|||
(package
|
||||
(name "rust")
|
||||
(version "1.19.0")
|
||||
(source (rust-source version "0l8c14qsf42rmkqy92ahij4vf356dbyspxcips1aswpvad81y8qm"
|
||||
(source (rust-source-pre-1.32 version "0l8c14qsf42rmkqy92ahij4vf356dbyspxcips1aswpvad81y8qm"
|
||||
#:patches '("rust-1.19-mrustc.patch")))
|
||||
(outputs '("out" "cargo"))
|
||||
(properties '((timeout . 72000) ;20 hours
|
||||
|
@ -427,7 +465,7 @@ (define rust-1.19
|
|||
|
||||
(define-public rust-1.20
|
||||
(let ((base-rust
|
||||
(rust-bootstrapped-package rust-1.19 "1.20.0"
|
||||
(rust-bootstrapped-package-pre-1.32 rust-1.19 "1.20.0"
|
||||
"0542y4rnzlsrricai130mqyxl8r6rd991frb4qsnwb27yigqg91a")))
|
||||
(package
|
||||
(inherit base-rust)
|
||||
|
@ -572,7 +610,7 @@ (define-public rust-1.20
|
|||
#t))))))))))
|
||||
|
||||
(define-public rust-1.21
|
||||
(let ((base-rust (rust-bootstrapped-package rust-1.20 "1.21.0"
|
||||
(let ((base-rust (rust-bootstrapped-package-pre-1.32 rust-1.20 "1.21.0"
|
||||
"1yj8lnxybjrybp00fqhxw8fpr641dh8wcn9mk44xjnsb4i1c21qp")))
|
||||
(package
|
||||
(inherit base-rust)
|
||||
|
@ -588,7 +626,7 @@ (define-public rust-1.21
|
|||
#t)))))))))
|
||||
|
||||
(define-public rust-1.22
|
||||
(let ((base-rust (rust-bootstrapped-package rust-1.21 "1.22.1"
|
||||
(let ((base-rust (rust-bootstrapped-package-pre-1.32 rust-1.21 "1.22.1"
|
||||
"1lrzzp0nh7s61wgfs2h6ilaqi6iq89f1pd1yaf65l87bssyl4ylb")))
|
||||
(package
|
||||
(inherit base-rust)
|
||||
|
@ -604,7 +642,7 @@ (define-public rust-1.22
|
|||
#t)))))))))
|
||||
|
||||
(define-public rust-1.23
|
||||
(let ((base-rust (rust-bootstrapped-package rust-1.22 "1.23.0"
|
||||
(let ((base-rust (rust-bootstrapped-package-pre-1.32 rust-1.22 "1.23.0"
|
||||
"14fb8vhjzsxlbi6yrn1r6fl5dlbdd1m92dn5zj5gmzfwf4w9ar3l")))
|
||||
(package
|
||||
(inherit base-rust)
|
||||
|
@ -623,8 +661,8 @@ (define-public rust-1.23
|
|||
|
||||
(define-public rust-1.24
|
||||
(let ((base-rust
|
||||
(rust-bootstrapped-package rust-1.23 "1.24.1"
|
||||
"1vv10x2h9kq7fxh2v01damdq8pvlp5acyh1kzcda9sfjx12kv99y")))
|
||||
(rust-bootstrapped-package-pre-1.32 rust-1.23 "1.24.1"
|
||||
"1vv10x2h9kq7fxh2v01damdq8pvlp5acyh1kzcda9sfjx12kv99y")))
|
||||
(package
|
||||
(inherit base-rust)
|
||||
(arguments
|
||||
|
@ -645,7 +683,7 @@ (define-public rust-1.24
|
|||
;;; Keep using llvm 3.9.1 until builds become determenistic
|
||||
(define-public rust-1.25
|
||||
(let ((base-rust
|
||||
(rust-bootstrapped-package rust-1.24 "1.25.0"
|
||||
(rust-bootstrapped-package-pre-1.32 rust-1.24 "1.25.0"
|
||||
"0baxjr99311lvwdq0s38bipbnj72pn6fgbk6lcq7j555xq53mxpf"
|
||||
#:patches '("rust-1.25-accept-more-detailed-gdb-lines.patch"))))
|
||||
(package
|
||||
|
@ -676,7 +714,7 @@ (define-public rust-1.25
|
|||
|
||||
(define-public rust-1.26
|
||||
(let ((base-rust
|
||||
(rust-bootstrapped-package rust-1.25 "1.26.2"
|
||||
(rust-bootstrapped-package-pre-1.32 rust-1.25 "1.26.2"
|
||||
"0047ais0fvmqvngqkdsxgrzhb0kljg8wy85b01kbbjc88hqcz7pv"
|
||||
#:patches '("rust-coresimd-doctest.patch"
|
||||
"rust-1.25-accept-more-detailed-gdb-lines.patch"))))
|
||||
|
@ -731,13 +769,13 @@ (define-public rust-1.26
|
|||
|
||||
(define-public rust-1.27
|
||||
(let ((base-rust
|
||||
(rust-bootstrapped-package rust-1.26 "1.27.2"
|
||||
"0pg1s37bhx9zqbynxyydq5j6q7kij9vxkcv8maz0m25prm88r0cs"
|
||||
#:patches
|
||||
'("rust-coresimd-doctest.patch"
|
||||
"rust-bootstrap-stage0-test.patch"
|
||||
"rust-1.25-accept-more-detailed-gdb-lines.patch"
|
||||
"rust-reproducible-builds.patch"))))
|
||||
(rust-bootstrapped-package-pre-1.32 rust-1.26 "1.27.2"
|
||||
"0pg1s37bhx9zqbynxyydq5j6q7kij9vxkcv8maz0m25prm88r0cs"
|
||||
#:patches
|
||||
'("rust-coresimd-doctest.patch"
|
||||
"rust-bootstrap-stage0-test.patch"
|
||||
"rust-1.25-accept-more-detailed-gdb-lines.patch"
|
||||
"rust-reproducible-builds.patch"))))
|
||||
(package
|
||||
(inherit base-rust)
|
||||
(arguments
|
||||
|
@ -760,13 +798,13 @@ (define-public rust-1.27
|
|||
|
||||
(define-public rust-1.28
|
||||
(let ((base-rust
|
||||
(rust-bootstrapped-package rust-1.27 "1.28.0"
|
||||
"11k4rn77bca2rikykkk9fmprrgjswd4x4kaq7fia08vgkir82nhx"
|
||||
#:patches
|
||||
'("rust-coresimd-doctest.patch"
|
||||
"rust-bootstrap-stage0-test.patch"
|
||||
"rust-1.25-accept-more-detailed-gdb-lines.patch"
|
||||
"rust-reproducible-builds.patch"))))
|
||||
(rust-bootstrapped-package-pre-1.32 rust-1.27 "1.28.0"
|
||||
"11k4rn77bca2rikykkk9fmprrgjswd4x4kaq7fia08vgkir82nhx"
|
||||
#:patches
|
||||
'("rust-coresimd-doctest.patch"
|
||||
"rust-bootstrap-stage0-test.patch"
|
||||
"rust-1.25-accept-more-detailed-gdb-lines.patch"
|
||||
"rust-reproducible-builds.patch"))))
|
||||
(package
|
||||
(inherit base-rust)
|
||||
(inputs
|
||||
|
@ -794,22 +832,22 @@ (define-public rust-1.28
|
|||
|
||||
(define-public rust-1.29
|
||||
(let ((base-rust
|
||||
(rust-bootstrapped-package rust-1.28 "1.29.2"
|
||||
"1jb787080z754caa2w3w1amsygs4qlzj9rs1vy64firfmabfg22h"
|
||||
#:patches
|
||||
'("rust-1.25-accept-more-detailed-gdb-lines.patch"
|
||||
"rust-reproducible-builds.patch"))))
|
||||
(rust-bootstrapped-package-pre-1.32 rust-1.28 "1.29.2"
|
||||
"1jb787080z754caa2w3w1amsygs4qlzj9rs1vy64firfmabfg22h"
|
||||
#:patches
|
||||
'("rust-1.25-accept-more-detailed-gdb-lines.patch"
|
||||
"rust-reproducible-builds.patch"))))
|
||||
(package
|
||||
(inherit base-rust))))
|
||||
|
||||
(define-public rust-1.30
|
||||
(let ((base-rust
|
||||
(rust-bootstrapped-package rust-1.29 "1.30.1"
|
||||
"0aavdc1lqv0cjzbqwl5n59yd0bqdlhn0zas61ljf38yrvc18k8rn"
|
||||
#:patches
|
||||
'("rust-1.25-accept-more-detailed-gdb-lines.patch"
|
||||
"rust-1.30-gdb-llvm.patch"
|
||||
"rust-reproducible-builds.patch"))))
|
||||
(rust-bootstrapped-package-pre-1.32 rust-1.29 "1.30.1"
|
||||
"0aavdc1lqv0cjzbqwl5n59yd0bqdlhn0zas61ljf38yrvc18k8rn"
|
||||
#:patches
|
||||
'("rust-1.25-accept-more-detailed-gdb-lines.patch"
|
||||
"rust-1.30-gdb-llvm.patch"
|
||||
"rust-reproducible-builds.patch"))))
|
||||
(package
|
||||
(inherit base-rust)
|
||||
(inputs
|
||||
|
@ -842,18 +880,21 @@ (define-public rust-1.30
|
|||
(("fn include") "#[ignore]\nfn include")
|
||||
(("fn exclude") "#[ignore]\nfn exclude"))
|
||||
#t))
|
||||
;; Appears that this test isn't currently running and has been
|
||||
;; moved elsewhere, so the patch doesn't apply.
|
||||
(delete 'disable-amd64-avx-test))))))))
|
||||
;; The test has been moved elsewhere.
|
||||
(replace 'disable-amd64-avx-test
|
||||
(lambda _
|
||||
(substitute* "src/test/ui/run-pass/issues/issue-44056.rs"
|
||||
(("only-x86_64") "ignore-test"))
|
||||
#t)))))))))
|
||||
|
||||
(define-public rust
|
||||
(define-public rust-1.31
|
||||
(let ((base-rust
|
||||
(rust-bootstrapped-package rust-1.30 "1.31.1"
|
||||
"0sk84ff0cklybcp0jbbxcw7lk7mrm6kb6km5nzd6m64dy0igrlli"
|
||||
#:patches
|
||||
'("rust-1.25-accept-more-detailed-gdb-lines.patch"
|
||||
"rust-1.30-gdb-llvm.patch"
|
||||
"rust-reproducible-builds.patch"))))
|
||||
(rust-bootstrapped-package-pre-1.32 rust-1.30 "1.31.1"
|
||||
"0sk84ff0cklybcp0jbbxcw7lk7mrm6kb6km5nzd6m64dy0igrlli"
|
||||
#:patches
|
||||
'("rust-1.25-accept-more-detailed-gdb-lines.patch"
|
||||
"rust-1.30-gdb-llvm.patch"
|
||||
"rust-reproducible-builds.patch"))))
|
||||
(package
|
||||
(inherit base-rust)
|
||||
(arguments
|
||||
|
@ -875,6 +916,12 @@ (define-public rust
|
|||
((" Command::new\\(\"echo\"\\)")
|
||||
(string-append "\nCommand::new(\"" coreutils "/bin/echo\")\n")))
|
||||
#t)))
|
||||
;; The test has been moved elsewhere.
|
||||
(replace 'disable-amd64-avx-test
|
||||
(lambda _
|
||||
(substitute* "src/test/ui/issues/issue-44056.rs"
|
||||
(("only-x86_64") "ignore-test"))
|
||||
#t))
|
||||
(add-after 'patch-tests 'patch-process-docs-rev-cmd
|
||||
(lambda* _
|
||||
;; Disable some doc tests which depend on the "rev" command
|
||||
|
@ -882,3 +929,56 @@ (define-public rust
|
|||
(substitute* "src/libstd/process.rs"
|
||||
(("```rust") "```rust,no_run"))
|
||||
#t)))))))))
|
||||
|
||||
(define-public rust
|
||||
(let ((base-rust
|
||||
(rust-bootstrapped-package rust-1.31 "1.32.0"
|
||||
"0ji2l9xv53y27xy72qagggvq47gayr5lcv2jwvmfirx029vlqnac"
|
||||
#:patches '("rust-reproducible-builds.patch")
|
||||
;; the vendor directory has moved to the root of
|
||||
;; the tarball, so we have to strip an extra prefix
|
||||
#:patch-flags '("-p2"))))
|
||||
(package
|
||||
(inherit base-rust)
|
||||
(inputs
|
||||
;; Downgrade to LLVM 6, all LTO tests appear to fail with LLVM 7.0.1
|
||||
(alist-replace "llvm" (list llvm-6)
|
||||
(package-inputs base-rust)))
|
||||
(arguments
|
||||
(substitute-keyword-arguments (package-arguments base-rust)
|
||||
((#:phases phases)
|
||||
`(modify-phases ,phases
|
||||
;; Cargo.lock and the vendor/ directory have been moved to the
|
||||
;; root of the rust tarball
|
||||
(replace 'patch-cargo-checksums
|
||||
(lambda* _
|
||||
(substitute* "Cargo.lock"
|
||||
(("(\"checksum .* = )\".*\"" all name)
|
||||
(string-append name "\"" ,%cargo-reference-hash "\"")))
|
||||
(for-each
|
||||
(lambda (filename)
|
||||
(use-modules (guix build cargo-utils))
|
||||
(delete-file filename)
|
||||
(let* ((dir (dirname filename)))
|
||||
(display (string-append
|
||||
"patch-cargo-checksums: generate-checksums for "
|
||||
dir "\n"))
|
||||
(generate-checksums dir ,%cargo-reference-project-file)))
|
||||
(find-files "vendor" ".cargo-checksum.json"))
|
||||
#t))
|
||||
(add-after 'enable-codegen-tests 'override-jemalloc
|
||||
(lambda* (#:key inputs #:allow-other-keys)
|
||||
;; The compiler is no longer directly built against jemalloc,
|
||||
;; but rather via the jemalloc-sys crate (which vendors the
|
||||
;; jemalloc source). To use jemalloc we must enable linking to
|
||||
;; it (otherwise it would use the system allocator), and set
|
||||
;; an environment variable pointing to the compiled jemalloc.
|
||||
(substitute* "config.toml"
|
||||
(("^jemalloc =.*$") "")
|
||||
(("[[]rust[]]") "\n[rust]\njemalloc=true\n"))
|
||||
(setenv "JEMALLOC_OVERRIDE" (string-append (assoc-ref inputs "jemalloc")
|
||||
"/lib/libjemalloc_pic.a"))
|
||||
#t))
|
||||
;; Remove no longer relevant steps
|
||||
(delete 'remove-flaky-test)
|
||||
(delete 'patch-aarch64-test))))))))
|
||||
|
|
|
@ -144,7 +144,7 @@ (define (install dir)
|
|||
(home-page "https://github.com/ndevilla/iniparser")
|
||||
(synopsis "Standalone ini file parsing library")
|
||||
(description
|
||||
"iniparser is a free stand-alone `ini' file parsing library (Windows
|
||||
"iniparser is a free stand-alone @code{ini} file parsing library (Windows
|
||||
configuration files). It is written in portable ANSI C and should compile
|
||||
anywhere.")
|
||||
(license x11)))
|
||||
|
|
|
@ -2,10 +2,10 @@
|
|||
;;; Copyright © 2013 Cyril Roelandt <tipecaml@gmail.com>
|
||||
;;; Copyright © 2014 Mark H Weaver <mhw@netris.org>
|
||||
;;; Copyright © 2015, 2017 Eric Bavier <bavier@member.fsf.org>
|
||||
;;; Copyright © 2016, 2017 Efraim Flashner <efraim@flashner.co.il>
|
||||
;;; Copyright © 2016, 2017, 2019 Efraim Flashner <efraim@flashner.co.il>
|
||||
;;; Copyright © 2016 Alex Griffin <a@ajgrf.com>
|
||||
;;; Copyright © 2017 Mathieu Othacehe <m.othacehe@gmail.com>
|
||||
;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr>
|
||||
;;; Copyright © 2017, 2018, 2019 Tobias Geerinckx-Rice <me@tobias.gr>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
|
@ -23,10 +23,10 @@
|
|||
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
(define-module (gnu packages screen)
|
||||
#:use-module (srfi srfi-1)
|
||||
#:use-module (guix licenses)
|
||||
#:use-module (guix packages)
|
||||
#:use-module (guix download)
|
||||
#:use-module (guix git-download)
|
||||
#:use-module (guix build-system gnu)
|
||||
#:use-module (gnu packages)
|
||||
#:use-module (gnu packages ncurses)
|
||||
|
@ -153,23 +153,27 @@ (define-public byobu
|
|||
(define-public reptyr
|
||||
(package
|
||||
(name "reptyr")
|
||||
(version "0.6.2")
|
||||
(version "0.7.0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://github.com/nelhage/reptyr/archive"
|
||||
"/reptyr-" version ".tar.gz"))
|
||||
;; XXX: To be removed on next reptyr release.
|
||||
(patches (search-patches "reptyr-fix-gcc-7.patch"))
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/nelhage/reptyr.git")
|
||||
(commit (string-append "reptyr-" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"07pfl0rkgm8m3f3jy8r9l2yvnhf8lgllpsk3mh57mhzdxq8fagf7"))))
|
||||
(base32 "1hnijfz1ab34j2h2cxc3f43rmbclyihgn9x9wxa7jqqgb2xm71hj"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
'(#:tests? #f ; no tests
|
||||
#:make-flags (list "CC=gcc"
|
||||
(string-append "PREFIX=" %output))
|
||||
#:phases (modify-phases %standard-phases (delete 'configure))))
|
||||
'(#:tests? #f ; no tests
|
||||
#:make-flags
|
||||
(list "CC=gcc"
|
||||
(string-append "PREFIX=" (assoc-ref %outputs "out"))
|
||||
(string-append "BASHCOMPDIR=" (assoc-ref %outputs "out")
|
||||
"/etc/bash_completion.d"))
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(delete 'configure)))) ; no configure script
|
||||
(home-page "https://github.com/nelhage/reptyr")
|
||||
(synopsis "Tool for reparenting a running program to a new terminal")
|
||||
(description
|
||||
|
@ -177,7 +181,6 @@ (define-public reptyr
|
|||
it to a new terminal. Started a long-running process over @code{ssh}, but have
|
||||
to leave and don't want to interrupt it? Just start a @code{screen}, use
|
||||
reptyr to grab it, and then kill the @code{ssh} session and head on home.")
|
||||
;; Reptyr currently does not support mips or aarch64.
|
||||
(supported-systems (fold delete %supported-systems
|
||||
'("mips64el-linux" "aarch64-linux")))
|
||||
;; Reptyr currently does not support mips.
|
||||
(supported-systems (delete "mips64el-linux" %supported-systems))
|
||||
(license expat)))
|
||||
|
|
|
@ -243,7 +243,7 @@ (define-public mlocate
|
|||
(home-page "https://pagure.io/mlocate")
|
||||
(synopsis "Locate files on the file system")
|
||||
(description
|
||||
"mlocate is a locate/updatedb implementation. The 'm' stands for
|
||||
"mlocate is a locate/updatedb implementation. The @code{m} stands for
|
||||
\"merging\": @code{updatedb} reuses the existing database to avoid rereading
|
||||
most of the file system, which makes it faster and does not trash the system
|
||||
caches as much. The locate(1) utility is intended to be completely compatible
|
||||
|
|
|
@ -161,7 +161,7 @@ (define-public libyubikey
|
|||
(define-public pcsc-lite
|
||||
(package
|
||||
(name "pcsc-lite")
|
||||
(version "1.8.24")
|
||||
(version "1.8.25")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
|
@ -169,7 +169,7 @@ (define-public pcsc-lite
|
|||
name "-" version ".tar.bz2"))
|
||||
(sha256
|
||||
(base32
|
||||
"0s3mv6csbi9303vvis0hilm71xsmi6cqkbh2kiipdisydbx6865q"))))
|
||||
"14l7irs1nsh8b036ag4cfy8wryyysch78scz5dw6xxqwqgnpjvfp"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
`(#:configure-flags '("--enable-usbdropdir=/var/lib/pcsc/drivers"
|
||||
|
|
|
@ -217,7 +217,7 @@ (define-public spice
|
|||
#:parallel-tests? #f))
|
||||
(synopsis "Server implementation of the SPICE protocol")
|
||||
(description "SPICE is a remote display system built for virtual
|
||||
environments which allows you to view a computing 'desktop' environment
|
||||
environments which allows you to view a computing @code{desktop} environment
|
||||
not only on the machine where it is running, but from anywhere on the
|
||||
Internet and from a wide variety of machine architectures.")
|
||||
(home-page "https://www.spice-space.org")
|
||||
|
|
|
@ -111,7 +111,7 @@ (define-public libssh
|
|||
(define-public libssh2
|
||||
(package
|
||||
(name "libssh2")
|
||||
(version "1.8.1")
|
||||
(version "1.8.2")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
|
@ -119,7 +119,7 @@ (define-public libssh2
|
|||
version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0ngif3ynk6xqzy5nlfjs7bsmfm81g9f145av0z86kf0vbgrigda0"))
|
||||
"0rqd37pc80nm2pz4sa2m9pfc48axys7jwq1l7z0vii5nyvchg0q8"))
|
||||
(patches
|
||||
(search-patches "libssh2-fix-build-failure-with-gcrypt.patch"))))
|
||||
(build-system gnu-build-system)
|
||||
|
@ -451,7 +451,7 @@ (define-public et
|
|||
(define-public dropbear
|
||||
(package
|
||||
(name "dropbear")
|
||||
(version "2019.77")
|
||||
(version "2019.78")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
|
@ -459,7 +459,7 @@ (define-public dropbear
|
|||
"https://matt.ucc.asn.au/dropbear/releases/"
|
||||
"dropbear-" version ".tar.bz2"))
|
||||
(sha256
|
||||
(base32 "13a55fcy2mx2pvsfj6dh9107k4wnbd9ybdyi3w3ivgikwvmph7yr"))))
|
||||
(base32 "19242qlr40pbqfqd0gg6h8qpj38q6lgv03ja6sahj9vj2abnanaj"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments `(#:tests? #f)) ; there is no "make check" or anything similar
|
||||
;; TODO: Investigate unbundling libtommath and libtomcrypt or at least
|
||||
|
|
|
@ -2,7 +2,7 @@
|
|||
;;; Copyright © 2015, 2016, 2017, 2018, 2019 Ricardo Wurmus <rekado@elephly.net>
|
||||
;;; Copyright © 2015 Vicente Vera Parra <vicentemvp@gmail.com>
|
||||
;;; Copyright © 2016 Andreas Enge <andreas@enge.fr>
|
||||
;;; Copyright © 2016, 2017 Efraim Flashner <efraim@flashner.co.il>
|
||||
;;; Copyright © 2016, 2017, 2019 Efraim Flashner <efraim@flashner.co.il>
|
||||
;;; Copyright © 2016 Pjotr Prins <pjotr.guix@thebird.nl>
|
||||
;;; Copyright © 2016 Roel Janssen <roel@gnu.org>
|
||||
;;; Copyright © 2016 Ben Woodcroft <donttrustben@gmail.com>
|
||||
|
@ -548,14 +548,14 @@ (define-public r-lattice
|
|||
(define-public r-matrix
|
||||
(package
|
||||
(name "r-matrix")
|
||||
(version "1.2-16")
|
||||
(version "1.2-17")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (cran-uri "Matrix" version))
|
||||
(sha256
|
||||
(base32
|
||||
"10fh0y1wd0bvnqbzlyck08pn1vxcd58bskx2lrf9m42v5792ba9p"))))
|
||||
"1k1zf92ycqr7fz44w7bp1p354ww7jg0wm23ybb8dzmbg37qfchyv"))))
|
||||
(properties `((upstream-name . "Matrix")))
|
||||
(build-system r-build-system)
|
||||
(propagated-inputs
|
||||
|
@ -802,10 +802,10 @@ (define-public r-digest
|
|||
(home-page "http://dirk.eddelbuettel.com/code/digest.html")
|
||||
(synopsis "Create cryptographic hash digests of R objects")
|
||||
(description
|
||||
"This package contains an implementation of a function 'digest()' for the
|
||||
creation of hash digests of arbitrary R objects (using the md5, sha-1,
|
||||
"This package contains an implementation of a function @code{digest()} for
|
||||
the creation of hash digests of arbitrary R objects (using the md5, sha-1,
|
||||
sha-256, crc32, xxhash and murmurhash algorithms) permitting easy comparison
|
||||
of R language objects, as well as a function 'hmac()' to create hash-based
|
||||
of R language objects, as well as a function @code{hmac()} to create hash-based
|
||||
message authentication code.
|
||||
|
||||
Please note that this package is not meant to be deployed for cryptographic
|
||||
|
@ -827,7 +827,7 @@ (define-public r-estimability
|
|||
(home-page "https://cran.r-project.org/web/packages/estimability")
|
||||
(synopsis "Tools for assessing estimability of linear predictions")
|
||||
(description "Provides tools for determining estimability of linear
|
||||
functions of regression coefficients, and 'epredict' methods that handle
|
||||
functions of regression coefficients, and @code{epredict} methods that handle
|
||||
non-estimable cases correctly.")
|
||||
(license license:gpl2+)))
|
||||
|
||||
|
@ -1063,7 +1063,7 @@ (define-public r-stringr
|
|||
(synopsis "Simple, consistent wrappers for common string operations")
|
||||
(description
|
||||
"Stringr is a consistent, simple and easy to use set of wrappers around
|
||||
the fantastic 'stringi' package. All function and argument names (and
|
||||
the fantastic @code{stringi} package. All function and argument names (and
|
||||
positions) are consistent, all functions deal with \"NA\"'s and zero length
|
||||
vectors in the same way, and the output from one function is easy to feed into
|
||||
the input of another.")
|
||||
|
@ -2274,9 +2274,9 @@ (define-public r-commonmark
|
|||
(synopsis "CommonMark and Github Markdown Rendering in R")
|
||||
(description
|
||||
"The CommonMark specification defines a rationalized version of markdown
|
||||
syntax. This package uses the 'cmark' reference implementation for converting
|
||||
markdown text into various formats including HTML, LaTeX and groff man. In
|
||||
addition, it exposes the markdown parse tree in XML format. The latest
|
||||
syntax. This package uses the @code{cmark} reference implementation for
|
||||
converting markdown text into various formats including HTML, LaTeX and groff
|
||||
man. In addition, it exposes the markdown parse tree in XML format. The latest
|
||||
version of this package also adds support for Github extensions including
|
||||
tables, autolinks and strikethrough text.")
|
||||
(license license:bsd-2)))
|
||||
|
@ -2316,14 +2316,14 @@ (define-public r-roxygen2
|
|||
(define-public r-openssl
|
||||
(package
|
||||
(name "r-openssl")
|
||||
(version "1.2.2")
|
||||
(version "1.3")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (cran-uri "openssl" version))
|
||||
(sha256
|
||||
(base32
|
||||
"0jfkna9zzhy2m5qd8501ija5jnpxzjn8wi3wjw0kr2fm4sl7qynz"))))
|
||||
"1gx4mk7js1irzkql5rgk48ja9c6mm28ccxz483ngbhdd57az90qw"))))
|
||||
(build-system r-build-system)
|
||||
(inputs
|
||||
`(("libressl" ,libressl)))
|
||||
|
@ -2580,13 +2580,13 @@ (define-public r-latticeextra
|
|||
(define-public r-rcpparmadillo
|
||||
(package
|
||||
(name "r-rcpparmadillo")
|
||||
(version "0.9.200.7.1")
|
||||
(version "0.9.300.2.0")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (cran-uri "RcppArmadillo" version))
|
||||
(sha256
|
||||
(base32
|
||||
"1gy3ywzw1cx344a8xihnmflgxphy2fhci7ng85msqd1iv9gzxyk4"))))
|
||||
"02zha49v6s8g39dcmk5dz0pygx0jibgmcwsyzybp9wmlqxnmdvip"))))
|
||||
(properties `((upstream-name . "RcppArmadillo")))
|
||||
(build-system r-build-system)
|
||||
;; All needed for vignettes
|
||||
|
@ -2709,13 +2709,13 @@ (define-public r-rmarkdown
|
|||
(define-public r-gtable
|
||||
(package
|
||||
(name "r-gtable")
|
||||
(version "0.2.0")
|
||||
(version "0.3.0")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (cran-uri "gtable" version))
|
||||
(sha256
|
||||
(base32
|
||||
"0vz7073m0a2q12qzzihrfh5c2kx5jqi5l7z470fxmwqghdllh7l0"))))
|
||||
"1lyncxf2dqdjgw1071cn9c8zwzkz6sldnd5cgmicf70bc726qf7x"))))
|
||||
(properties `((upstream-name . "gtable")))
|
||||
(build-system r-build-system)
|
||||
(home-page "https://cran.r-project.org/web/packages/gtable")
|
||||
|
@ -3165,8 +3165,8 @@ (define-public r-dt
|
|||
(synopsis "R wrapper of the DataTables JavaScript library")
|
||||
(description
|
||||
"This package allows for data objects in R to be rendered as HTML tables
|
||||
using the JavaScript library 'DataTables' (typically via R Markdown or Shiny).
|
||||
The 'DataTables' library has been included in this R package.")
|
||||
using the JavaScript library @code{DataTables} (typically via R Markdown or
|
||||
Shiny). The @code{DataTables} library has been included in this R package.")
|
||||
;; The DT package as a whole is distributed under GPLv3. The DT package
|
||||
;; inludes other software components under different licenses:
|
||||
;;
|
||||
|
@ -3688,13 +3688,14 @@ (define-public r-viridislite
|
|||
(home-page "https://github.com/sjmgarnier/viridisLite")
|
||||
(synopsis "Default color maps from matplotlib")
|
||||
(description
|
||||
"This package is a port of the new @code{matplotlib} color maps ('viridis',
|
||||
'magma', 'plasma' and 'inferno') to R. matplotlib is a popular plotting
|
||||
library for Python. These color maps are designed in such a way that they
|
||||
will analytically be perfectly perceptually-uniform, both in regular form and
|
||||
also when converted to black-and-white. They are also designed to be
|
||||
perceived by readers with the most common form of color blindness. This is
|
||||
the 'lite' version of the more complete @code{viridis} package.")
|
||||
"This package is a port of the new @code{matplotlib} color maps
|
||||
(@code{viridis}, @code{magma}, @code{plasma} and @code{inferno}) to R.
|
||||
matplotlib is a popular plotting library for Python. These color maps are
|
||||
designed in such a way that they will analytically be perfectly
|
||||
perceptually-uniform, both in regular form and also when converted to
|
||||
black-and-white. They are also designed to be perceived by readers with the
|
||||
most common form of color blindness. This is the @code{lite} version of the
|
||||
more complete @code{viridis} package.")
|
||||
(license license:expat)))
|
||||
|
||||
(define-public r-tidyselect
|
||||
|
@ -5283,14 +5284,14 @@ (define-public r-car
|
|||
(define-public r-caret
|
||||
(package
|
||||
(name "r-caret")
|
||||
(version "6.0-81")
|
||||
(version "6.0-82")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (cran-uri "caret" version))
|
||||
(sha256
|
||||
(base32
|
||||
"1fibrskjzq2f06b8gbrfp3263svfc5s5apsjwaqdg9qzs7sy7fpc"))))
|
||||
"0zgkmiiarl7ll2ffyciikah61jyps41fin5pjb5l8ja2b26lgrdg"))))
|
||||
(build-system r-build-system)
|
||||
(propagated-inputs
|
||||
`(("r-foreach" ,r-foreach)
|
||||
|
@ -5473,19 +5474,20 @@ (define-public r-tsne
|
|||
(define-public r-cairo
|
||||
(package
|
||||
(name "r-cairo")
|
||||
(version "1.5-9")
|
||||
(version "1.5-10")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (cran-uri "Cairo" version))
|
||||
(sha256
|
||||
(base32
|
||||
"1x1q99r3r978rlkkm5gixkv03p0mcr6k7ydcqdmisrwnmrn7p1ia"))))
|
||||
"1mdmd5zmjkh1b0x928zizgzh42x8swbajffb88rvnjfdhk1z0dvq"))))
|
||||
(properties `((upstream-name . "Cairo")))
|
||||
(build-system r-build-system)
|
||||
(inputs
|
||||
`(("cairo" ,cairo)
|
||||
("libxt" ,libxt)))
|
||||
("libxt" ,libxt)
|
||||
("zlib" ,zlib)))
|
||||
(native-inputs
|
||||
`(("pkg-config" ,pkg-config)))
|
||||
(home-page "http://www.rforge.net/Cairo/")
|
||||
|
@ -5527,7 +5529,7 @@ (define-public r-lubridate
|
|||
"This package provides functions to work with date-times and time-spans:
|
||||
fast and user friendly parsing of date-time data, extraction and updating of
|
||||
components of a date-time (years, months, days, hours, minutes, and seconds),
|
||||
algebraic manipulation on date-time and time-span objects. The 'lubridate'
|
||||
algebraic manipulation on date-time and time-span objects. The @code{lubridate}
|
||||
package has a consistent and memorable syntax that makes working with dates
|
||||
easy and fun.")
|
||||
(license license:gpl2)))
|
||||
|
|
|
@ -8,7 +8,10 @@
|
|||
;;; Copyright © 2016, 2017 ng0 <ng0@n0.is>
|
||||
;;; Copyright © 2017, 2018 Ricardo Wurmus <rekado@elephly.net>
|
||||
;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr>
|
||||
;;; Copyright © 2017 Adonay Felipe Nogueira <https://libreplanet.org/wiki/User:Adfeno> <adfeno@hyperbola.info>
|
||||
;;; Copyright © 2018 Jovany Leandro G.C <bit4bit@riseup.net>
|
||||
;;; Copyright © 2018 Tim Gesthuizen <tim.gesthuizen@yahoo.de>
|
||||
;;; Copyright © 2019 Pierre Neidhardt <mail@ambrevar.xyz>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
|
@ -27,21 +30,41 @@
|
|||
|
||||
(define-module (gnu packages telephony)
|
||||
#:use-module (gnu packages)
|
||||
#:use-module (gnu packages aidc)
|
||||
#:use-module (gnu packages autotools)
|
||||
#:use-module (gnu packages avahi)
|
||||
#:use-module (gnu packages audio)
|
||||
#:use-module (gnu packages base)
|
||||
#:use-module (gnu packages boost)
|
||||
#:use-module (gnu packages check)
|
||||
#:use-module (gnu packages compression)
|
||||
#:use-module (gnu packages crypto)
|
||||
#:use-module (gnu packages documentation)
|
||||
#:use-module (gnu packages file)
|
||||
#:use-module (gnu packages protobuf)
|
||||
#:use-module (gnu packages gettext)
|
||||
#:use-module (gnu packages glib)
|
||||
#:use-module (gnu packages gnome)
|
||||
#:use-module (gnu packages gnupg)
|
||||
#:use-module (gnu packages gtk)
|
||||
#:use-module (gnu packages libcanberra)
|
||||
#:use-module (gnu packages linux)
|
||||
#:use-module (gnu packages multiprecision)
|
||||
#:use-module (gnu packages ncurses)
|
||||
#:use-module (gnu packages networking)
|
||||
#:use-module (gnu packages pcre)
|
||||
#:use-module (gnu packages perl)
|
||||
#:use-module (gnu packages pkg-config)
|
||||
#:use-module (gnu packages pulseaudio)
|
||||
#:use-module (gnu packages python)
|
||||
#:use-module (gnu packages qt)
|
||||
#:use-module (gnu packages serialization)
|
||||
#:use-module (gnu packages speech)
|
||||
#:use-module (gnu packages sqlite)
|
||||
#:use-module (gnu packages tls)
|
||||
#:use-module (gnu packages upnp)
|
||||
#:use-module (gnu packages video)
|
||||
#:use-module (gnu packages webkit)
|
||||
#:use-module (gnu packages xiph)
|
||||
#:use-module (gnu packages xorg)
|
||||
#:use-module (gnu packages xml)
|
||||
|
@ -529,3 +552,357 @@ (define-public twinkle
|
|||
phone to IP phone communication or in a network using a SIP proxy to route your
|
||||
calls and messages")
|
||||
(license license:gpl2+))))
|
||||
|
||||
(define-public pjproject
|
||||
(package
|
||||
(name "pjproject")
|
||||
(version "2.7.2")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
"http://www.pjsip.org/release/" ;
|
||||
version "/" name "-" version ".tar.bz2"))
|
||||
(modules '((guix build utils)))
|
||||
(snippet
|
||||
'(begin
|
||||
(let ((third-party-directories
|
||||
(list "BaseClasses" "bdsound" "bin" "g7221" "gsm"
|
||||
"ilbc" "lib" "milenage" "mp3" "speex" "srtp"
|
||||
"resample"
|
||||
;; Keep only resample, build and README.txt.
|
||||
"build/baseclasses" "build/g7221" "build/gsm"
|
||||
"build/ilbc" "build/milenage" "build/samplerate"
|
||||
"build/speex" "build/srtp"
|
||||
"build/resample" "build/yuv")))
|
||||
;; Keep only Makefiles related to resample.
|
||||
(for-each (lambda (file)
|
||||
(delete-file-recursively
|
||||
(string-append "third_party/" file)))
|
||||
third-party-directories)
|
||||
#t)
|
||||
(let ((third-party-dirs
|
||||
(list "gsm" "ilbc" "speex" "g7221" "srtp"
|
||||
"portaudio" "resample")))
|
||||
(for-each
|
||||
(lambda (dirs)
|
||||
(substitute* "third_party/build/os-linux.mak"
|
||||
(((string-append "DIRS += " dirs)) "")))
|
||||
third-party-dirs))))
|
||||
(sha256
|
||||
(base32
|
||||
"0wiph6g51wanzwjjrpwsz63amgvly8g08jz033gnwqmppa584b4w"))))
|
||||
(build-system gnu-build-system)
|
||||
(inputs
|
||||
`(("portaudio" ,portaudio)))
|
||||
(propagated-inputs
|
||||
;; These packages are referenced in the Libs field of the pkg-config
|
||||
;; file that will be installed by pjproject.
|
||||
`(("speex" ,speex)
|
||||
("libsrtp" ,libsrtp)
|
||||
("gnutls" ,gnutls)
|
||||
("util-linux" ,util-linux)))
|
||||
(native-inputs
|
||||
`(("autoconf" ,autoconf)
|
||||
("automake" ,automake)
|
||||
("pkg-config" ,pkg-config)
|
||||
("libtool" ,libtool)))
|
||||
(arguments
|
||||
`(;; FIXME make: No rule to make target
|
||||
;; 'pjlib-test-unknown-[something]-gnu'.
|
||||
#:tests? #f
|
||||
;; #:test-target "selftest"
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-before 'build 'build-dep
|
||||
(lambda _ (invoke "make" "dep")))
|
||||
(add-before 'patch-source-shebangs 'autoconf
|
||||
(lambda _
|
||||
(invoke "autoconf" "-vfi" "-o"
|
||||
"aconfigure" "aconfigure.ac")))
|
||||
(add-before 'autoconf 'disable-some-tests
|
||||
;; Three of the six test programs fail due to missing network
|
||||
;; access.
|
||||
(lambda _
|
||||
(substitute* "Makefile"
|
||||
(("selftest: pjlib-test pjlib-util-test pjnath-test pjmedia-test pjsip-test pjsua-test")
|
||||
"selftest: pjlib-test pjlib-util-test pjmedia-test"))
|
||||
#t)))))
|
||||
(home-page "https://www.pjsip.org")
|
||||
(synopsis "Session Initiation Protocol (SIP) stack")
|
||||
(description "PJProject provides an implementation of the Session
|
||||
Initiation Protocol (SIP) and a multimedia framework.")
|
||||
(license license:gpl2+)))
|
||||
|
||||
(define %jami-version "20190319.4.a16a99f")
|
||||
|
||||
(define* (jami-source #:key without-daemon)
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "http://dl.jami.net/ring-release/tarballs/ring_"
|
||||
%jami-version
|
||||
".tar.gz"))
|
||||
(modules '((guix build utils)))
|
||||
(snippet
|
||||
(if without-daemon
|
||||
'(begin
|
||||
(delete-file-recursively "daemon/contrib"))
|
||||
#f))
|
||||
(sha256
|
||||
(base32
|
||||
"1c6n6sm7skw83v25g33g4jzbragz9j4przbzaz7asxw54jy33dwl"))))
|
||||
|
||||
(define-public pjproject-jami
|
||||
(package
|
||||
(inherit pjproject)
|
||||
(name "pjproject-jami")
|
||||
(native-inputs
|
||||
`(("savoir-faire-linux-patches" ,(jami-source))
|
||||
,@(package-native-inputs pjproject)))
|
||||
(arguments
|
||||
`(#:tests? #f
|
||||
;; See ring-project/daemon/contrib/src/pjproject/rules.mak.
|
||||
#:configure-flags
|
||||
(list "--disable-oss"
|
||||
"--disable-sound"
|
||||
"--disable-video"
|
||||
"--enable-ext-sound"
|
||||
"--disable-speex-aec"
|
||||
"--disable-g711-codec"
|
||||
"--disable-l16-codec"
|
||||
"--disable-gsm-codec"
|
||||
"--disable-g722-codec"
|
||||
"--disable-g7221-codec"
|
||||
"--disable-speex-codec"
|
||||
"--disable-ilbc-codec"
|
||||
"--disable-opencore-amr"
|
||||
"--disable-silk"
|
||||
"--disable-sdl"
|
||||
"--disable-ffmpeg"
|
||||
"--disable-v4l2"
|
||||
"--disable-openh264"
|
||||
"--disable-resample"
|
||||
"--disable-libwebrtc"
|
||||
;; "-fPIC" is required for libring. Bug?
|
||||
"CFLAGS=-fPIC -DPJ_ENABLE_EXTRA_CHECK=1 -DPJ_ICE_MAX_CAND=256 -DPJ_ICE_MAX_CHECKS=1024 -DPJ_ICE_COMP_BITS=2 -DPJ_ICE_MAX_STUN=3 -DPJSIP_MAX_PKT_LEN=8000 -DPJ_ICE_ST_MAX_CAND=32"
|
||||
"CXXFLAGS=-fPIC -DPJ_ENABLE_EXTRA_CHECK=1 -DPJ_ICE_MAX_CAND=256 -DPJ_ICE_MAX_CHECKS=1024 -DPJ_ICE_COMP_BITS=2 -DPJ_ICE_MAX_STUN=3 -DPJSIP_MAX_PKT_LEN=8000 -DPJ_ICE_ST_MAX_CAND=32"
|
||||
;; Now deviating from the rules.mak file.
|
||||
"--enable-ssl=gnutls"
|
||||
"--with-external-srtp")
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-after 'unpack 'apply-patches
|
||||
(lambda* (#:key inputs #:allow-other-keys)
|
||||
(let ((savoir-faire-linux-patches-directory "Savoir-faire Linux patches")
|
||||
;; Comes from
|
||||
;; "ring-project/daemon/contrib/src/pjproject/rules.mak".
|
||||
;; WARNING: These amount for huge changes in pjproject.
|
||||
;; Particularly, they add support for GnuTLS.
|
||||
(savoir-faire-linux-patches
|
||||
'("gnutls"
|
||||
"rfc2466"
|
||||
"ipv6"
|
||||
"ice_config"
|
||||
"multiple_listeners"
|
||||
"pj_ice_sess"
|
||||
"fix_turn_fallback"
|
||||
"fix_ioqueue_ipv6_sendto"
|
||||
"add_dtls_transport"
|
||||
"rfc6062")))
|
||||
(mkdir-p savoir-faire-linux-patches-directory)
|
||||
(invoke "tar" "-xvf" (assoc-ref inputs "savoir-faire-linux-patches")
|
||||
"-C" savoir-faire-linux-patches-directory "--strip-components=5" "ring-project/daemon/contrib/src/pjproject")
|
||||
(for-each
|
||||
(lambda (file)
|
||||
(invoke "patch" "--force" "-p1" "-i"
|
||||
(string-append savoir-faire-linux-patches-directory "/"
|
||||
file ".patch")))
|
||||
savoir-faire-linux-patches))
|
||||
#t))
|
||||
;; TODO: We could use substitute-keyword-arguments instead of
|
||||
;; repeating the phases from pjproject, but somehow it does
|
||||
;; not work.
|
||||
(add-before 'build 'build-dep
|
||||
(lambda _ (invoke "make" "dep")))
|
||||
(add-before 'patch-source-shebangs 'autoconf
|
||||
(lambda _
|
||||
(invoke "autoconf" "-v" "-f" "-i" "-o"
|
||||
"aconfigure" "aconfigure.ac")))
|
||||
(add-before 'autoconf 'disable-some-tests
|
||||
;; Three of the six test programs fail due to missing network
|
||||
;; access.
|
||||
(lambda _
|
||||
(substitute* "Makefile"
|
||||
(("selftest: pjlib-test pjlib-util-test pjnath-test pjmedia-test pjsip-test pjsua-test")
|
||||
"selftest: pjlib-test pjlib-util-test pjmedia-test"))
|
||||
#t)))))))
|
||||
|
||||
(define-public libring
|
||||
(package
|
||||
(name "libring")
|
||||
(version %jami-version)
|
||||
(source (jami-source #:without-daemon #t))
|
||||
(build-system gnu-build-system)
|
||||
(inputs
|
||||
;; Missing (optional?) dep: libnatpmp.
|
||||
`(("alsa-lib" ,alsa-lib)
|
||||
("boost" ,boost)
|
||||
("dbus-c++" ,dbus-c++)
|
||||
("eudev" ,eudev)
|
||||
("ffmpeg" ,ffmpeg)
|
||||
("flac" ,flac)
|
||||
("gmp" ,gmp)
|
||||
("gsm" ,gsm)
|
||||
("jack" ,jack-1)
|
||||
("jsoncpp" ,jsoncpp)
|
||||
("libogg" ,libogg)
|
||||
("libva" ,libva)
|
||||
("opendht" ,opendht)
|
||||
("opus" ,opus)
|
||||
("pcre" ,pcre)
|
||||
("pulseaudio" ,pulseaudio)
|
||||
("libsamplerate" ,libsamplerate)
|
||||
("libsndfile" ,libsndfile)
|
||||
("speex" ,speex)
|
||||
("speexdsp" ,speexdsp)
|
||||
("libupnp" ,libupnp)
|
||||
("libvorbis" ,libvorbis)
|
||||
("libx264" ,libx264)
|
||||
("libvdpau" ,libvdpau)
|
||||
("yaml-cpp" ,yaml-cpp)
|
||||
("zlib" ,zlib)
|
||||
("openssl" ,openssl)
|
||||
("libsecp256k1" ,libsecp256k1)
|
||||
("python" ,python)
|
||||
("python-wrapper" ,python-wrapper)
|
||||
("restbed" ,restbed)
|
||||
("libx11" ,libx11)
|
||||
;; TODO: Upstream seems to rely on a custom pjproject (a.k.a. pjsip) version.
|
||||
;; See https://git.jami.net/savoirfairelinux/ring-daemon/issues/24.
|
||||
("pjproject" ,pjproject-jami)))
|
||||
(native-inputs
|
||||
`(("autoconf" ,autoconf)
|
||||
("automake" ,automake)
|
||||
("libtool" ,libtool)
|
||||
("pkg-config" ,pkg-config)
|
||||
("which" ,which)
|
||||
("cppunit" ,cppunit)
|
||||
("perl" ,perl))) ; Needed for documentation.
|
||||
(arguments
|
||||
`(#:tests? #f ; The tests fail to compile due to missing headers.
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-after 'unpack 'change-directory
|
||||
(lambda _
|
||||
(chdir "daemon")
|
||||
#t))
|
||||
(add-before 'build 'add-lib-dir
|
||||
(lambda _
|
||||
(mkdir-p "src/lib")
|
||||
#t)))))
|
||||
(synopsis "Distributed multimedia communications platform")
|
||||
(description "Jami (formerly GNU Ring) is a secure and distributed voice,
|
||||
video and chat communication platform that requires no centralized server and
|
||||
leaves the power of privacy in the hands of the user. It supports the SIP and
|
||||
IAX protocols, as well as decentralized calling using P2P-DHT.
|
||||
|
||||
This package provides a library and daemon implementing the Jami core
|
||||
functionality.")
|
||||
(home-page "https://jami.net/")
|
||||
(license license:gpl3+)))
|
||||
|
||||
(define-public libringclient
|
||||
(package
|
||||
(inherit libring)
|
||||
(name "libringclient")
|
||||
(build-system cmake-build-system)
|
||||
(propagated-inputs
|
||||
`(("libring" ,libring) ; For 'dring'.
|
||||
("qtbase" ,qtbase) ; Qt is included in several installed headers.
|
||||
("qttools" ,qttools)))
|
||||
(arguments
|
||||
`(#:tests? #f ; There is no testsuite.
|
||||
#:configure-flags
|
||||
(list (string-append "-DRING_BUILD_DIR="
|
||||
(assoc-ref %build-inputs "libring") "/include"))
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-after 'unpack 'change-directory
|
||||
(lambda _
|
||||
(chdir "lrc")
|
||||
#t))
|
||||
(add-before 'configure 'fix-dbus-interfaces-path
|
||||
(lambda* (#:key inputs #:allow-other-keys)
|
||||
(substitute* "CMakeLists.txt"
|
||||
(("\\$\\{CMAKE_INSTALL_PREFIX\\}(/share/dbus-1/interfaces)" _ dbus-interfaces-path-suffix)
|
||||
(string-append (assoc-ref inputs "libring")
|
||||
dbus-interfaces-path-suffix))))))))
|
||||
(synopsis "Distributed multimedia communications platform")
|
||||
(description "Jami (formerly GNU Ring) is a secure and distributed voice,
|
||||
video and chat communication platform that requires no centralized server and
|
||||
leaves the power of privacy in the hands of the user. It supports the SIP and
|
||||
IAX protocols, as well as decentralized calling using P2P-DHT.
|
||||
|
||||
This package provides a library common to all Jami clients.")
|
||||
(home-page "https://jami.net")
|
||||
(license license:gpl3+)))
|
||||
|
||||
(define-public jami-client-gnome
|
||||
(package
|
||||
(inherit libring)
|
||||
(name "jami-client-gnome")
|
||||
(build-system cmake-build-system)
|
||||
(inputs
|
||||
`(("libringclient" ,libringclient)
|
||||
("gtk+" ,gtk+)
|
||||
("qrencode" ,qrencode)
|
||||
("libnotify" ,libnotify)
|
||||
("clutter" ,clutter)
|
||||
("clutter-gtk" ,clutter-gtk)
|
||||
("gettext" ,gnu-gettext)
|
||||
("libcanberra" ,libcanberra)
|
||||
("webkitgtk" ,webkitgtk)
|
||||
;; TODO: We must wrap ring-client-gnome to force using the
|
||||
;; `sqlite-with-column-metadata' package instead of `sqlite' or else it
|
||||
;; fails with:
|
||||
;;
|
||||
;; /gnu/store/...-qtbase-5.11.2/lib/qt5/plugins/sqldrivers/libqsqlite.so:
|
||||
;; undefined symbol: sqlite3_column_table_name16
|
||||
;;
|
||||
;; qtbase is built against sqlite-with-column-metadata but somehow
|
||||
;; jami-client-gnome ends up with both `sqlite' and
|
||||
;; `sqlite-with-column-metadata' as inputs and it seems that
|
||||
;; libqsqlite.so gets confused.
|
||||
("sqlite" ,sqlite-with-column-metadata)))
|
||||
(native-inputs
|
||||
`(("pkg-config" ,pkg-config)
|
||||
("glib:bin" ,glib "bin")
|
||||
("doxygen" ,doxygen)))
|
||||
(propagated-inputs
|
||||
`(("libring" ,libring) ; Contains `dring', the daemon, which is automatically by d-bus.
|
||||
("adwaita-icon-theme" ,adwaita-icon-theme)
|
||||
("evolution-data-server" ,evolution-data-server)))
|
||||
(arguments
|
||||
`(#:tests? #f ; There is no testsuite.
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-after 'unpack 'change-directory
|
||||
(lambda _
|
||||
(chdir "client-gnome")
|
||||
#t))
|
||||
(add-after 'install 'wrap
|
||||
(lambda* (#:key inputs outputs #:allow-other-keys)
|
||||
(let* ((out (assoc-ref outputs "out"))
|
||||
(path (string-append (assoc-ref inputs "sqlite") "/lib")))
|
||||
(wrap-program (string-append out "/bin/gnome-ring")
|
||||
`("LD_LIBRARY_PATH" ":" prefix (,path))))
|
||||
#t)))))
|
||||
(synopsis "Distributed multimedia communications platform")
|
||||
(description "Jami (formerly GNU Ring) is a secure and distributed voice,
|
||||
video and chat communication platform that requires no centralized server and
|
||||
leaves the power of privacy in the hands of the user. It supports the SIP and
|
||||
IAX protocols, as well as decentralized calling using P2P-DHT.
|
||||
|
||||
This package provides the Jami client for the GNOME desktop.")
|
||||
(home-page "https://jami.net")
|
||||
(license license:gpl3+)))
|
||||
|
|
Some files were not shown because too many files have changed in this diff Show more
Loading…
Reference in a new issue