mirror of
https://git.savannah.gnu.org/git/guix.git
synced 2026-04-06 21:20:33 +02:00
Merge branch 'master' into gnome-team
This commit is contained in:
@@ -410,6 +410,10 @@ AUX_FILES = \
|
||||
gnu/packages/aux-files/chromium/master-preferences.json \
|
||||
gnu/packages/aux-files/emacs/guix-emacs.el \
|
||||
gnu/packages/aux-files/guix.vim \
|
||||
gnu/packages/aux-files/linux-libre/6.5-arm.conf \
|
||||
gnu/packages/aux-files/linux-libre/6.5-arm64.conf \
|
||||
gnu/packages/aux-files/linux-libre/6.5-i686.conf \
|
||||
gnu/packages/aux-files/linux-libre/6.5-x86_64.conf \
|
||||
gnu/packages/aux-files/linux-libre/6.4-arm.conf \
|
||||
gnu/packages/aux-files/linux-libre/6.4-arm64.conf \
|
||||
gnu/packages/aux-files/linux-libre/6.4-i686.conf \
|
||||
|
||||
@@ -23,6 +23,7 @@ choice.
|
||||
* Building from Git:: The latest and greatest.
|
||||
* Running Guix Before It Is Installed:: Hacker tricks.
|
||||
* The Perfect Setup:: The right tools.
|
||||
* Alternative Setups:: Other posible tools that do the job.
|
||||
* Packaging Guidelines:: Growing the distribution.
|
||||
* Coding Style:: Hygiene of the contributor.
|
||||
* Submitting Patches:: Share your work.
|
||||
@@ -427,9 +428,13 @@ configuration file:
|
||||
(zero-or-one
|
||||
(seq "#" (one-or-more
|
||||
(char "0-9"))))))
|
||||
(seq "<https://bugs.gnu.org/"
|
||||
(seq (? "<") "https://bugs.gnu.org/"
|
||||
(group-n 2 (one-or-more (char "0-9")))
|
||||
">")))))
|
||||
(? ">"))
|
||||
(seq (? "<") "https://issues.guix.gnu.org/"
|
||||
(? "issue/")
|
||||
(group-n 2 (one-or-more (char "0-9")))
|
||||
(? ">"))))))
|
||||
(setq bug-reference-url-format "https://issues.guix.gnu.org/%s")
|
||||
|
||||
(require 'debbugs)
|
||||
@@ -453,6 +458,83 @@ For more information, refer to @ref{Bug Reference,,, emacs, The GNU
|
||||
Emacs Manual} and @ref{Minor Mode,,, debbugs-ug, The Debbugs User
|
||||
Guide}.
|
||||
|
||||
@node Alternative Setups
|
||||
@section Alternative Setups
|
||||
|
||||
Alternative setups than Emacs may let you work on Guix with a
|
||||
similar development experience and they might work better with the
|
||||
tools you currently use or help you make the transition to Emacs.
|
||||
|
||||
The options listed below only provide the alternatives to the Emacs
|
||||
based setup, which is the most widely used in the Guix community. If
|
||||
you want to really understand how is the perfect setup for Guix
|
||||
development supposed to work, we encourage you to read the section
|
||||
before this regardless the editor you choose to use.
|
||||
|
||||
@menu
|
||||
* Guile Studio:: First step in your transition to Emacs.
|
||||
* Vim and NeoVim:: When you are evil to the root.
|
||||
@end menu
|
||||
|
||||
@node Guile Studio
|
||||
@subsection Guile Studio
|
||||
|
||||
Guile Studio is a pre-configured Emacs with mostly everything you need
|
||||
to start hacking in Guile. If you are not familiar with Emacs it makes
|
||||
the transition easier for you.
|
||||
|
||||
@example
|
||||
guix install guile-studio
|
||||
@end example
|
||||
|
||||
Guile Studio comes with Geiser preinstalled and prepared for action.
|
||||
|
||||
@node Vim and NeoVim
|
||||
@subsection Vim and NeoVim
|
||||
|
||||
|
||||
Vim (and NeoVim) are also packaged in Guix, just in case you decided
|
||||
to go for the evil path.
|
||||
|
||||
@example
|
||||
guix install vim
|
||||
@end example
|
||||
|
||||
If you want to enjoy a similar development experience to that in the perfect
|
||||
setup, you should install several plugins to configure the editor. Vim (and
|
||||
NeoVim) have the equivalent to Paredit,
|
||||
@uref{https://www.vim.org/scripts/script.php?script_id=3998,
|
||||
@code{paredit.vim}}, that will help you with the structural editing of Scheme
|
||||
files (the support for very large files is not great, though).
|
||||
|
||||
@example
|
||||
guix install vim-paredit
|
||||
@end example
|
||||
|
||||
We also recommend that you run @code{:set autoindent} so that your code is
|
||||
automatically indented as you type.
|
||||
|
||||
For the interaction with Git,
|
||||
@uref{https://www.vim.org/scripts/script.php?script_id=2975
|
||||
@code{fugitive.vim}} is the most commonly used plugin:
|
||||
|
||||
@example
|
||||
guix install vim-fugitive
|
||||
@end example
|
||||
|
||||
And of course if you want to interact with Guix directly from inside of
|
||||
vim, using the built-in terminal emulator, we have our very own
|
||||
@code{guix.vim} package!
|
||||
|
||||
@example
|
||||
guix install vim-guix-vim
|
||||
@end example
|
||||
|
||||
In NeoVim you can even make a similar setup to Geiser using
|
||||
@url{https://conjure.fun/, Conjure} that lets you connect to a running Guile
|
||||
process and inject your code there live (sadly it's not packaged in Guix yet).
|
||||
|
||||
|
||||
@node Packaging Guidelines
|
||||
@section Packaging Guidelines
|
||||
|
||||
@@ -1226,6 +1308,17 @@ Guile Reference Manual}); pattern matching for records is better done
|
||||
using @code{match-record} from @code{(guix records)}, which, unlike
|
||||
@code{match}, verifies field names at macro-expansion time.
|
||||
|
||||
When defining a new record type, keep the @dfn{record type descriptor}
|
||||
(RTD) private (@pxref{Records,,, guile, GNU Guile Reference Manual}, for
|
||||
more on records and RTDs). As an example, the @code{(guix packages)}
|
||||
module defines @code{<package>} as the RTD for package records but it
|
||||
does not export it; instead, it exports a type predicate, a constructor,
|
||||
and field accessors. Exporting RTDs would make it harder to change the
|
||||
application binary interface (because code in other modules might be
|
||||
matching fields by position) and would make it trivial for users to
|
||||
forge records of that type, bypassing any checks we may have in the
|
||||
official constructor (such as ``field sanitizers'').
|
||||
|
||||
@node Formatting Code
|
||||
@subsection Formatting Code
|
||||
|
||||
@@ -1257,13 +1350,6 @@ rules. To automatically indent a package definition, you can also run:
|
||||
@noindent
|
||||
@xref{Invoking guix style}, for more information.
|
||||
|
||||
@cindex Vim, Scheme code editing
|
||||
If you are editing code with Vim, we recommend that you run @code{:set
|
||||
autoindent} so that your code is automatically indented as you type.
|
||||
Additionally,
|
||||
@uref{https://www.vim.org/scripts/script.php?script_id=3998,
|
||||
@code{paredit.vim}} may help you deal with all these parentheses.
|
||||
|
||||
We require all top-level procedures to carry a docstring. This
|
||||
requirement can be relaxed for simple private procedures in the
|
||||
@code{(guix build @dots{})} name space, though.
|
||||
|
||||
279
doc/guix.texi
279
doc/guix.texi
@@ -1485,6 +1485,14 @@ name, and they will be scheduled on matching build machines.
|
||||
@end table
|
||||
@end deftp
|
||||
|
||||
@quotation Note
|
||||
On Guix System, instead of managing @file{/etc/guix/machines.scm}
|
||||
independently, you can choose to specify build machines directly in the
|
||||
@code{operating-system} declaration, in the @code{build-machines} field
|
||||
of @code{guix-configuration}. @xref{guix-configuration-build-machines,
|
||||
@code{build-machines} field of @code{guix-configuration}}.
|
||||
@end quotation
|
||||
|
||||
The @command{guix} command must be in the search path on the build
|
||||
machines. You can check whether this is the case by running:
|
||||
|
||||
@@ -5665,7 +5673,7 @@ Generation 19 Aug 27 2018 16:20:48
|
||||
@noindent
|
||||
The output of @command{guix describe} above shows that we're now running
|
||||
Generation@tie{}19 and that it includes
|
||||
both Guix and packages from the @code{variant-personal-packages} channel
|
||||
both Guix and packages from the @code{variant-packages} channel
|
||||
(@pxref{Invoking guix describe}).
|
||||
|
||||
@node Using a Custom Guix Channel
|
||||
@@ -19263,6 +19271,28 @@ The type of compression used for build logs---one of @code{gzip},
|
||||
Whether to discover substitute servers on the local network using mDNS
|
||||
and DNS-SD.
|
||||
|
||||
@anchor{guix-configuration-build-machines}
|
||||
@item @code{build-machines} (default: @code{#f})
|
||||
This field must be either @code{#f} or a list of gexps evaluating to a
|
||||
@code{build-machine} record (@pxref{Daemon Offload Setup}).
|
||||
|
||||
When it is @code{#f}, the @file{/etc/guix/machines.scm} file is left
|
||||
untouched. Otherwise, the list of of gexps is written to
|
||||
@file{/etc/guix/machines.scm}; if a previously-existing file is found,
|
||||
it is backed up as @file{/etc/guix/machines.scm.bak}. This allows you
|
||||
to declare build machines for offloading directly in the operating
|
||||
system declaration, like so:
|
||||
|
||||
@lisp
|
||||
(guix-configuration
|
||||
(build-machines
|
||||
(list #~(build-machine (name "foo.example.org") @dots{})
|
||||
#~(build-machine (name "bar.example.org") @dots{}))))
|
||||
@end lisp
|
||||
|
||||
Additional build machines may be added @i{via} the @code{guix-extension}
|
||||
mechanism (see below).
|
||||
|
||||
@item @code{extra-options} (default: @code{'()})
|
||||
List of extra command-line options for @command{guix-daemon}.
|
||||
|
||||
@@ -19300,7 +19330,6 @@ Environment variables to be set before starting the daemon, as a list of
|
||||
@end deftp
|
||||
|
||||
@deftp {Data Type} guix-extension
|
||||
|
||||
This data type represents the parameters of the Guix build daemon that
|
||||
are extendable. This is the type of the object that must be used within
|
||||
a guix service extension.
|
||||
@@ -19313,6 +19342,16 @@ A list of file-like objects where each element contains a public key.
|
||||
@item @code{substitute-urls} (default: @code{'()})
|
||||
A list of strings where each element is a substitute URL.
|
||||
|
||||
@item @code{build-machines} (default: @code{'()})
|
||||
A list of gexps that evaluate to @code{build-machine} records
|
||||
(@pxref{Daemon Offload Setup}).
|
||||
|
||||
Using this field, a service may add new build machines to receive builds
|
||||
offloaded by the daemon. This is useful for a service such as
|
||||
@code{hurd-vm-service-type}, which can make a GNU/Hurd virtual machine
|
||||
directly usable for offloading (@pxref{hurd-vm,
|
||||
@code{hurd-vm-service-type}}).
|
||||
|
||||
@item @code{chroot-directories} (default: @code{'()})
|
||||
A list of file-like objects or strings pointing to additional directories the build daemon can use.
|
||||
@end table
|
||||
@@ -28149,7 +28188,7 @@ to maintain communication between devices on such network even when the
|
||||
connection to the Internet has been lost. When left unspecified,
|
||||
the value from the account archive prevails.
|
||||
|
||||
@item @code{bootstrap-hostnames} (type: maybe-string-list)
|
||||
@item @code{bootstrap-hostnames} (type: maybe-list-of-strings)
|
||||
A list of hostnames or IPs pointing to OpenDHT nodes, that should be
|
||||
used to initially join the OpenDHT network. When left unspecified, the
|
||||
value from the account archive prevails.
|
||||
@@ -34470,7 +34509,7 @@ The group to run mpd as.
|
||||
|
||||
The default @code{%mpd-group} is a system group with name ``mpd''.
|
||||
|
||||
@item @code{shepherd-requirement} (default: @code{'()}) (type: list-of-symbol)
|
||||
@item @code{shepherd-requirement} (default: @code{'()}) (type: list-of-symbols)
|
||||
A list of symbols naming Shepherd services that this service
|
||||
will depend on.
|
||||
|
||||
@@ -34720,7 +34759,7 @@ Available @code{mympd-configuration} fields are:
|
||||
@item @code{package} (default: @code{mympd}) (type: file-like)
|
||||
The package object of the myMPD server.
|
||||
|
||||
@item @code{shepherd-requirement} (default: @code{'()}) (type: list-of-symbol)
|
||||
@item @code{shepherd-requirement} (default: @code{'()}) (type: list-of-symbols)
|
||||
This is a list of symbols naming Shepherd services that this service
|
||||
will depend on.
|
||||
|
||||
@@ -35654,6 +35693,7 @@ host. If empty, QEMU uses a default file name.
|
||||
@end deftp
|
||||
|
||||
|
||||
@anchor{hurd-vm}
|
||||
@subsubheading The Hurd in a Virtual Machine
|
||||
|
||||
@cindex @code{hurd}
|
||||
@@ -35682,10 +35722,14 @@ guix shell tigervnc-client -- vncviewer localhost:5900
|
||||
The default configuration (see @code{hurd-vm-configuration} below)
|
||||
spawns a secure shell (SSH) server in your GNU/Hurd system, which QEMU
|
||||
(the virtual machine emulator) redirects to port 10222 on the host.
|
||||
Thus, you can connect over SSH to the childhurd with:
|
||||
By default, the service enables @dfn{offloading} such that the host
|
||||
@code{guix-daemon} automatically offloads GNU/Hurd builds to the
|
||||
childhurd (@pxref{Daemon Offload Setup}). This is what happens when
|
||||
running a command like the following one, where @code{i586-gnu} is the
|
||||
system type of 32-bit GNU/Hurd:
|
||||
|
||||
@example
|
||||
ssh root@@localhost -p 10022
|
||||
guix build emacs-minimal -s i586-gnu
|
||||
@end example
|
||||
|
||||
The childhurd is volatile and stateless: it starts with a fresh root
|
||||
@@ -35696,6 +35740,57 @@ initialize ``secrets'' inside the VM: SSH host keys, authorized
|
||||
substitute keys, and so on---see the explanation of @code{secret-root}
|
||||
below.
|
||||
|
||||
You will probably find it useful to create an account for you in the
|
||||
GNU/Hurd virtual machine and to authorize logins with your SSH key. To
|
||||
do that, you can define the GNU/Hurd system in the usual way
|
||||
(@pxref{Using the Configuration System}), and then pass that operating
|
||||
system as the @code{os} field of @code{hurd-vm-configuration}, as in
|
||||
this example:
|
||||
|
||||
@lisp
|
||||
(define childhurd-os
|
||||
;; Definition of my GNU/Hurd system, derived from the default one.
|
||||
(operating-system
|
||||
(inherit %hurd-vm-operating-system)
|
||||
|
||||
;; Add a user account.
|
||||
(users (cons (user-account
|
||||
(name "charlie")
|
||||
(comment "This is me!")
|
||||
(group "users")
|
||||
(supplementary-groups '("wheel"))) ;for 'sudo'
|
||||
%base-user-accounts))
|
||||
|
||||
(services
|
||||
;; Modify the SSH configuration to allow login as "root"
|
||||
;; and as "charlie" using public key authentication.
|
||||
(modify-services (operating-system-user-services
|
||||
%hurd-vm-operating-system)
|
||||
(openssh-service-type
|
||||
config => (openssh-configuration
|
||||
(inherit config)
|
||||
(authorized-keys
|
||||
`(("root"
|
||||
,(local-file
|
||||
"/home/charlie/.ssh/id_rsa.pub"))
|
||||
("charlie"
|
||||
,(local-file
|
||||
"/home/charlie/.ssh/id_rsa.pub"))))))))))
|
||||
|
||||
(operating-system
|
||||
;; @dots{}
|
||||
(services
|
||||
;; Add the 'hurd-vm' service, configured to use the
|
||||
;; operating system configuration above.
|
||||
(append (list (service hurd-vm-service-type
|
||||
(hurd-vm-configuration
|
||||
(os %childhurd-os))))
|
||||
%base-services)))
|
||||
@end lisp
|
||||
|
||||
That's it! The remainder of this section provides the reference of the
|
||||
service configuration.
|
||||
|
||||
@defvar hurd-vm-service-type
|
||||
This is the type of the Hurd in a Virtual Machine service. Its value
|
||||
must be a @code{hurd-vm-configuration} object, which specifies the
|
||||
@@ -35730,8 +35825,8 @@ permissive OpenSSH secure shell daemon listening on port 2222
|
||||
The QEMU package to use.
|
||||
|
||||
@item @code{image} (default: @var{hurd-vm-disk-image})
|
||||
The procedure used to build the disk-image built from this
|
||||
configuration.
|
||||
The image object representing the disk image of this virtual machine
|
||||
(@pxref{System Images}).
|
||||
|
||||
@item @code{disk-size} (default: @code{'guess})
|
||||
The size of the disk image.
|
||||
@@ -35769,6 +35864,41 @@ with forwarded ports:
|
||||
@var{vnc-port}: @code{(+ 15900 (* 1000 @var{ID}))}
|
||||
@end example
|
||||
|
||||
@cindex childhurd, offloading
|
||||
@cindex Hurd, offloading
|
||||
@item @code{offloading?} (default: @code{#t})
|
||||
Whether to automatically set up offloading of builds to the childhurd.
|
||||
|
||||
When enabled, this lets you run GNU/Hurd builds on the host and have
|
||||
them transparently offloaded to the VM, for instance when running a
|
||||
command like this:
|
||||
|
||||
@example
|
||||
guix build coreutils -s i586-gnu
|
||||
@end example
|
||||
|
||||
This option automatically sets up offloading like so:
|
||||
|
||||
@enumerate
|
||||
@item
|
||||
Authorizing the childhurd's key on the host so that the host accepts
|
||||
build results coming from the childhurd, which can be done like so
|
||||
(@pxref{Invoking guix archive, @command{guix archive --authorize}}, for
|
||||
more on that).
|
||||
|
||||
@item
|
||||
Creating a user account called @code{offloading} dedicated to offloading
|
||||
in the childhurd.
|
||||
|
||||
@item
|
||||
Creating an SSH key pair on the host and making it an authorized key of
|
||||
the @code{offloading} account in the childhurd.
|
||||
|
||||
@item
|
||||
Adding the childhurd to @file{/etc/guix/machines.scm} (@pxref{Daemon
|
||||
Offload Setup}).
|
||||
@end enumerate
|
||||
|
||||
@item @code{secret-root} (default: @file{/etc/childhurd})
|
||||
The root directory with out-of-band secrets to be installed into the
|
||||
childhurd once it runs. Childhurds are volatile which means that on
|
||||
@@ -35786,38 +35916,13 @@ with the following non-volatile secrets, unless they already exist:
|
||||
/etc/childhurd/etc/guix/acl
|
||||
/etc/childhurd/etc/guix/signing-key.pub
|
||||
/etc/childhurd/etc/guix/signing-key.sec
|
||||
/etc/childhurd/etc/ssh/authorized_keys.d/offloading
|
||||
/etc/childhurd/etc/ssh/ssh_host_ed25519_key
|
||||
/etc/childhurd/etc/ssh/ssh_host_ecdsa_key
|
||||
/etc/childhurd/etc/ssh/ssh_host_ed25519_key.pub
|
||||
/etc/childhurd/etc/ssh/ssh_host_ecdsa_key.pub
|
||||
@end example
|
||||
|
||||
These files are automatically sent to the guest Hurd VM when it boots,
|
||||
including permissions.
|
||||
|
||||
@cindex childhurd, offloading
|
||||
@cindex Hurd, offloading
|
||||
Having these files in place means that only a couple of things are
|
||||
missing to allow the host to offload @code{i586-gnu} builds to the
|
||||
childhurd:
|
||||
|
||||
@enumerate
|
||||
@item
|
||||
Authorizing the childhurd's key on the host so that the host accepts
|
||||
build results coming from the childhurd, which can be done like so:
|
||||
|
||||
@example
|
||||
guix archive --authorize < \
|
||||
/etc/childhurd/etc/guix/signing-key.pub
|
||||
@end example
|
||||
|
||||
@item
|
||||
Adding the childhurd to @file{/etc/guix/machines.scm} (@pxref{Daemon
|
||||
Offload Setup}).
|
||||
@end enumerate
|
||||
|
||||
We're working towards making that happen automatically---get in touch
|
||||
with us at @email{guix-devel@@gnu.org} to discuss it!
|
||||
@end table
|
||||
@end deftp
|
||||
|
||||
@@ -42471,54 +42576,33 @@ and to make it easier to create Scheme bindings for these configuration
|
||||
files, you can use the utilities defined in the @code{(gnu services
|
||||
configuration)} module.
|
||||
|
||||
The main utility is the @code{define-configuration} macro, which you
|
||||
will use to define a Scheme record type (@pxref{Record Overview,,,
|
||||
guile, GNU Guile Reference Manual}). The Scheme record will be
|
||||
serialized to a configuration file by using @dfn{serializers}, which are
|
||||
procedures that take some kind of Scheme value and returns a
|
||||
G-expression (@pxref{G-Expressions}), which should, once serialized to
|
||||
the disk, return a string. More details are listed below.
|
||||
The main utility is the @code{define-configuration} macro, a helper
|
||||
used to define a Scheme record type (@pxref{Record Overview,,,
|
||||
guile, GNU Guile Reference Manual}). The fields from this Scheme record
|
||||
can be serialized using @dfn{serializers}, which are procedures that take
|
||||
some kind of Scheme value and translates them into another Scheme value or
|
||||
@ref{G-Expressions}.
|
||||
|
||||
@defmac define-configuration name clause1 clause2 @dots{}
|
||||
Create a record type named @code{@var{name}} that contains the
|
||||
fields found in the clauses.
|
||||
|
||||
A clause can have one of the following forms:
|
||||
A clause has the following form:
|
||||
|
||||
@example
|
||||
(@var{field-name}
|
||||
(@var{type} @var{default-value})
|
||||
@var{documentation})
|
||||
|
||||
(@var{field-name}
|
||||
(@var{type} @var{default-value})
|
||||
@var{type-decl}
|
||||
@var{documentation}
|
||||
(serializer @var{serializer}))
|
||||
|
||||
(@var{field-name}
|
||||
(@var{type})
|
||||
@var{documentation})
|
||||
|
||||
(@var{field-name}
|
||||
(@var{type})
|
||||
@var{documentation}
|
||||
(serializer @var{serializer}))
|
||||
|
||||
(@var{field-name}
|
||||
(@var{type})
|
||||
@var{documentation}
|
||||
(sanitizer @var{sanitizer})
|
||||
|
||||
(@var{field-name}
|
||||
(@var{type})
|
||||
@var{documentation}
|
||||
(sanitizer @var{sanitizer})
|
||||
(serializer @var{serializer}))
|
||||
@var{option*}
|
||||
@dots{})
|
||||
@end example
|
||||
|
||||
@var{field-name} is an identifier that denotes the name of the field in
|
||||
the generated record.
|
||||
|
||||
@var{type-decl} is either @code{@var{type}} for fields that require a
|
||||
value to be set or @code{(@var{type} @var{default})} otherwise.
|
||||
|
||||
@var{type} is the type of the value corresponding to @var{field-name};
|
||||
since Guile is untyped, a predicate
|
||||
procedure---@code{@var{type}?}---will be called on the value
|
||||
@@ -42536,6 +42620,28 @@ an object of the record type.
|
||||
@var{documentation} is a string formatted with Texinfo syntax which
|
||||
should provide a description of what setting this field does.
|
||||
|
||||
@var{option*} is one of the following subclauses:
|
||||
|
||||
@table @asis
|
||||
@item @code{empty-serializer}
|
||||
Exclude this field from serialization.
|
||||
|
||||
@item @code{(serializer @var{serializer})}
|
||||
@var{serializer} is the name of a procedure which takes two arguments,
|
||||
the first is the name of the field, and the second is the value
|
||||
corresponding to the field. The procedure should return a string or
|
||||
@ref{G-Expressions} that represents the content that will be serialized
|
||||
to the configuration file. If none is specified, a procedure of the
|
||||
name @code{serialize-@var{type}} will be used.
|
||||
|
||||
An example of a simple serializer procedure:
|
||||
@lisp
|
||||
(define (serialize-boolean field-name value)
|
||||
(let ((value (if value "true" "false")))
|
||||
#~(string-append '#$field-name " = " #$value)))
|
||||
@end lisp
|
||||
|
||||
@item @code{(sanitizer @var{sanitizer})}
|
||||
@var{sanitizer} is a procedure which takes one argument,
|
||||
a user-supplied value, and returns a ``sanitized'' value for the field.
|
||||
If no sanitizer is specified, a default sanitizer is used, which raises
|
||||
@@ -42549,21 +42655,7 @@ symbols looks like this:
|
||||
((symbol? value) (symbol->string value))
|
||||
(else (error "bad value"))))
|
||||
@end lisp
|
||||
|
||||
@var{serializer} is the name of a procedure which takes two arguments,
|
||||
the first is the name of the field, and the second is the value
|
||||
corresponding to the field. The procedure should return a string or
|
||||
G-expression (@pxref{G-Expressions}) that represents the content that
|
||||
will be serialized to the configuration file. If none is specified, a
|
||||
procedure of the name @code{serialize-@var{type}} will be used.
|
||||
|
||||
A simple serializer procedure could look like this:
|
||||
|
||||
@lisp
|
||||
(define (serialize-boolean field-name value)
|
||||
(let ((value (if value "true" "false")))
|
||||
#~(string-append #$field-name #$value)))
|
||||
@end lisp
|
||||
@end table
|
||||
|
||||
In some cases multiple different configuration records might be defined
|
||||
in the same file, but their serializers for the same type might have to
|
||||
@@ -42584,13 +42676,13 @@ manually specify a custom @var{serializer} for every field.
|
||||
|
||||
(define-configuration foo-configuration
|
||||
(label
|
||||
(string)
|
||||
string
|
||||
"The name of label.")
|
||||
(prefix foo-))
|
||||
|
||||
(define-configuration bar-configuration
|
||||
(ip-address
|
||||
(string)
|
||||
string
|
||||
"The IPv4 address for this device.")
|
||||
(prefix bar-))
|
||||
@end lisp
|
||||
@@ -42682,11 +42774,6 @@ Return a G-expression that contains the values corresponding to the
|
||||
disk by using something like @code{mixed-text-file}.
|
||||
@end deffn
|
||||
|
||||
@deffn {Procedure} empty-serializer field-name value
|
||||
A serializer that just returns an empty string. The
|
||||
@code{serialize-package} procedure is an alias for this.
|
||||
@end deffn
|
||||
|
||||
Once you have defined a configuration record, you will most likely also
|
||||
want to document it so that other people know to use it. To help with
|
||||
that, there are two procedures, both of which are documented below.
|
||||
@@ -42789,7 +42876,7 @@ Below is an example of a record type created using
|
||||
|
||||
(define-configuration contact-configuration
|
||||
(name
|
||||
(string)
|
||||
string
|
||||
"The name of the contact."
|
||||
serialize-contact-name)
|
||||
(phone-number
|
||||
@@ -42799,15 +42886,15 @@ Below is an example of a record type created using
|
||||
maybe-string
|
||||
"The person's email address.")
|
||||
(married?
|
||||
(boolean)
|
||||
boolean
|
||||
"Whether the person is married."))
|
||||
|
||||
(define-configuration contacts-list-configuration
|
||||
(name
|
||||
(string)
|
||||
string
|
||||
"The name of the owner of this contact list.")
|
||||
(email
|
||||
(string)
|
||||
string
|
||||
"The owner's email address.")
|
||||
(contacts
|
||||
(list-of-contact-configurations '())
|
||||
@@ -44133,7 +44220,7 @@ Extra options will be passed to @command{ssh-agent}, please run
|
||||
|
||||
@cindex GNU Privacy Guard, Home service
|
||||
@cindex GPG, Home service
|
||||
The @code{(gnu home services gnupg)} modules provides services that help
|
||||
The @code{(gnu home services gnupg)} module provides services that help
|
||||
you set up the GNU Privacy Guard, also known as GnuPG or GPG, in your
|
||||
home environment.
|
||||
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
;;; GNU Guix --- Functional package management for GNU
|
||||
;;; Copyright © 2021-2022 Ludovic Courtès <ludo@gnu.org>
|
||||
;;; Copyright © 2021-2023 Ludovic Courtès <ludo@gnu.org>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
@@ -94,34 +94,41 @@ an empty directory if ORIGIN could not be disassembled."
|
||||
(#f "anonymous-tarball.dis"))
|
||||
build))
|
||||
|
||||
(define (disarchive-collection origins)
|
||||
"Return a directory containing all the Disarchive metadata for ORIGINS."
|
||||
(directory-union "disarchive-collection"
|
||||
(filter-map (lambda (origin)
|
||||
(and (tarball-origin? origin)
|
||||
|
||||
;; Dismiss origins with (sha256 #f) such
|
||||
;; as that of IceCat.
|
||||
(and=> (origin-hash origin)
|
||||
content-hash-value)
|
||||
|
||||
;; FIXME: Exclude the Chromium tarball
|
||||
;; because it's huge and "disarchive
|
||||
;; disassemble" exceeds the max-silent
|
||||
;; timeout.
|
||||
(not (string-prefix?
|
||||
"chromium-"
|
||||
(origin-actual-file-name origin)))
|
||||
|
||||
(origin->disarchive origin)))
|
||||
origins)
|
||||
#:copy? #t))
|
||||
|
||||
|
||||
;; The manifest containing Disarchive data.
|
||||
(let ((origins (all-origins)))
|
||||
(let* ((origins (all-origins))
|
||||
(disarchives
|
||||
(filter-map (lambda (origin)
|
||||
(and (tarball-origin? origin)
|
||||
|
||||
;; Dismiss origins with (sha256 #f) such as that of
|
||||
;; IceCat.
|
||||
(and=> (origin-hash origin)
|
||||
content-hash-value)
|
||||
|
||||
;; FIXME: Exclude the Chromium tarball because it's
|
||||
;; huge and "disarchive disassemble" exceeds the
|
||||
;; max-silent timeout.
|
||||
(not (string-prefix?
|
||||
"chromium-"
|
||||
(origin-actual-file-name origin)))
|
||||
|
||||
(manifest-entry
|
||||
(name
|
||||
(string-append (origin-actual-file-name origin)
|
||||
".dis"))
|
||||
(version "0")
|
||||
(item (origin->disarchive origin)))))
|
||||
origins)))
|
||||
(manifest
|
||||
(list (manifest-entry
|
||||
(cons (manifest-entry
|
||||
(name "disarchive-collection")
|
||||
(version (number->string (length origins)))
|
||||
(item (disarchive-collection origins))))))
|
||||
(item (directory-union "disarchive-collection"
|
||||
(map manifest-entry-item disarchives)
|
||||
#:copy? #t)))
|
||||
|
||||
;; Cuirass can distribute derivation builds to build machines if and
|
||||
;; only if it has one "job" per derivation. Thus, add them here in
|
||||
;; addition to "disarchive-collection".
|
||||
disarchives)))
|
||||
|
||||
53
etc/news.scm
53
etc/news.scm
@@ -26,6 +26,59 @@
|
||||
(channel-news
|
||||
(version 0)
|
||||
|
||||
(entry (commit "953c65ffdd43c02c934518fb7a1c68542584b223")
|
||||
(title
|
||||
(en "Declarative offloading on Guix System and childhurds")
|
||||
(de "Auslagern kann deklariert werden auf Guix System und Childhurds")
|
||||
(fr "Déclaration du déchargement dans Guix System et childhurds"))
|
||||
(body
|
||||
(en "When configuring Guix System, it is now possible to declare
|
||||
build machines to offload to directly from the @code{operating-system}
|
||||
declaration by specifying the @code{build-machines} field of
|
||||
@code{guix-configuration}. When you do this, @command{guix system} generates
|
||||
a @file{/etc/guix/machines.scm} file by concatenating the @code{(build-machine
|
||||
@dots{})} expressions you specified.
|
||||
|
||||
This mechanism is used by @code{hurd-vm-service-type}, also known as
|
||||
``childhurd'', to create virtual machines running the GNU/Hurd operating
|
||||
system one can offload to, without additional configuration steps.
|
||||
|
||||
Run @command{info \"(guix) Daemon Offload Setup\"} for more info on
|
||||
offloading; run @command{info \"(guix) Virtualization Services\"} for info on
|
||||
@code{hurd-vm-service-type}.")
|
||||
(de "In der Betriebssystemkonfiguration von Guix System können jetzt
|
||||
auch die Erstellungsmaschinen deklariert werden, an die Erstellungen ausgelagert
|
||||
werden. Diese geben Sie im Feld @code{build-machines} einer
|
||||
@code{guix-configuration} an. In diesem Fall wird @command{guix system} eine
|
||||
Datei @file{/etc/guix/machines.scm} anlegen, die der Aneinanderreihung der
|
||||
angegebenen @code{(build-machine @dots{})}-Ausdrücke entspricht.
|
||||
|
||||
Der Mechanismus wird für @code{hurd-vm-service-type} eingesetzt, auch bekannt
|
||||
als „Childhurd“, um virtuelle Maschinen anzulegen, auf denen das
|
||||
GNU/Hurd-Betriebssystem läuft und auf die man auslagern kann, ohne weitere
|
||||
Einstellungen vorzunehmen.
|
||||
|
||||
Führen Sie @command{info \"(guix.de) Auslagern des Daemons einrichten\"} aus, um
|
||||
mehr Informationen über das Auslagern zu bekommen; führen Sie
|
||||
@command{info \"(guix.de) Virtualisierungsdienste\"} aus für Informationen zu
|
||||
@code{hurd-vm-service-type}.")
|
||||
(fr "Dans sa configuration Guix System, il est désormais possible de
|
||||
déclarer les machines de construction vers lesquelles se décharger directement
|
||||
dans la déclaration @code{operating-system} en spécifiant le champ
|
||||
@code{build-machines} de @code{guix-configuration}. Quand on fait cela,
|
||||
@command{guix system} produit un fichier @file{/etc/guix/machines.scm} en
|
||||
concaténant les expressions @code{(build-machine @dots{})} fournies.
|
||||
|
||||
Ce mécanisme est utilisé par @code{hurd-vm-service-type}, également appelé
|
||||
« childhurd », pour créer des machines virtuelles faisant tourner le système
|
||||
d'exploitation GNU/Hurd vers lesquelles se décharger, sans étape
|
||||
supplémentaire de configuration.
|
||||
|
||||
Lancer @command{info \"(guix.fr) Réglages du déchargement du démon\"} pour
|
||||
plus d'informations sur le délestage ; lancer @command{info \"(guix.fr)
|
||||
Services de virtualisation\"} pour en apprendre sur
|
||||
@code{hurd-vm-service-type}.")))
|
||||
|
||||
(entry (commit "db775e7367e8deffb513aad94f4afb875d796d0b")
|
||||
(title
|
||||
(en "Linux-libre 6.3 removed due to end of upstream support")
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
;;; GNU Guix --- Functional package management for GNU
|
||||
;;; Copyright © 2019, 2021 Ludovic Courtès <ludo@gnu.org>
|
||||
;;; Copyright © 2019, 2021, 2023 Ludovic Courtès <ludo@gnu.org>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
@@ -525,7 +525,15 @@ password from USERS."
|
||||
(lookup-procedure current-shadow shadow-entry-name))
|
||||
|
||||
(define now
|
||||
(days-since-epoch current-time))
|
||||
;; On machines without a real-time clock (typically Arm SBCs), the system
|
||||
;; clock may be at 1970-01-01 while booting, while would lead us to define
|
||||
;; NOW as zero.
|
||||
;;
|
||||
;; However, the 'isexpired' function in Shadow interprets the combination
|
||||
;; uninitialized password + last-change = 0 as "The password has expired,
|
||||
;; it must be changed", which prevents logins altogether. To avoid that,
|
||||
;; never set 'last-change' to zero.
|
||||
(max (days-since-epoch current-time) 1))
|
||||
|
||||
(map (lambda (user passwd)
|
||||
(or (previous-entry (password-entry-name passwd))
|
||||
|
||||
@@ -247,6 +247,19 @@ set."
|
||||
"pty-slave" ,(string-append "/dev/ptyp" n))
|
||||
#o666))))
|
||||
(iota 10 0))
|
||||
,@(append-map (lambda (n)
|
||||
(let* ((n (number->string n))
|
||||
(disk (string-append "hd" n))
|
||||
(drive (string-append "dev/" disk)))
|
||||
`((,drive ("/hurd/storeio" ,disk) #o600)
|
||||
,@(map (lambda (p)
|
||||
(let ((p (number->string p)))
|
||||
`(,(string-append drive "s" p)
|
||||
("/hurd/storeio"
|
||||
,(string-append disk "s" p))
|
||||
#o660)))
|
||||
(iota 4 1)))))
|
||||
(iota 4 0))
|
||||
,@(append-map (lambda (n)
|
||||
(let* ((n (number->string n))
|
||||
(drive (string-append "dev/wd" n))
|
||||
|
||||
@@ -95,7 +95,7 @@ Return #t in the former case and #f in the latter case."
|
||||
|
||||
(define* (secret-service-send-secrets port secret-root
|
||||
#:key (retry 60)
|
||||
(handshake-timeout 120))
|
||||
(handshake-timeout 180))
|
||||
"Copy all files under SECRET-ROOT using TCP to secret-service listening at
|
||||
local PORT. If connect fails, sleep 1s and retry RETRY times; once connected,
|
||||
wait for at most HANDSHAKE-TIMEOUT seconds for handshake to complete. Return
|
||||
|
||||
18
gnu/local.mk
18
gnu/local.mk
@@ -13,7 +13,7 @@
|
||||
# Copyright © 2016-2023 Efraim Flashner <efraim@flashner.co.il>
|
||||
# Copyright © 2016, 2017, 2018, 2019, 2020, 2021, 2022, 2023 Jan (janneke) Nieuwenhuizen <janneke@gnu.org>
|
||||
# Copyright © 2017, 2018, 2019, 2020 Tobias Geerinckx-Rice <me@tobias.gr>
|
||||
# Copyright © 2017, 2018 Clément Lassieur <clement@lassieur.org>
|
||||
# Copyright © 2017, 2018, 2023 Clément Lassieur <clement@lassieur.org>
|
||||
# Copyright © 2017, 2020 Mathieu Othacehe <m.othacehe@gmail.com>
|
||||
# Copyright © 2017, 2018, 2019 Gábor Boskovits <boskovits@gmail.com>
|
||||
# Copyright © 2018 Amirouche Boubekki <amirouche@hypermove.net>
|
||||
@@ -59,6 +59,7 @@
|
||||
# Copyright © 2023 Zheng Junjie <873216071@qq.com>
|
||||
# Copyright © 2023 Ivana Drazovic <iv.dra@hotmail.com>
|
||||
# Copyright © 2023 Andy Tai <atai@atai.org>
|
||||
# Copyright © 2023 B. Wilson <elaexuotee@wilsonb.com>
|
||||
# Copyright © 2023 Bruno Victal <mirai@makinata.eu>
|
||||
#
|
||||
# This file is part of GNU Guix.
|
||||
@@ -127,6 +128,7 @@ GNU_SYSTEM_MODULES = \
|
||||
%D%/packages/anthy.scm \
|
||||
%D%/packages/antivirus.scm \
|
||||
%D%/packages/apl.scm \
|
||||
%D%/packages/apple.scm \
|
||||
%D%/packages/apparmor.scm \
|
||||
%D%/packages/apr.scm \
|
||||
%D%/packages/arcan.scm \
|
||||
@@ -1068,8 +1070,6 @@ dist_patch_DATA = \
|
||||
%D%/packages/patches/debops-constants-for-external-program-names.patch \
|
||||
%D%/packages/patches/debops-debops-defaults-fall-back-to-less.patch \
|
||||
%D%/packages/patches/dee-vapi.patch \
|
||||
%D%/packages/patches/desmume-gcc6-fixes.patch \
|
||||
%D%/packages/patches/desmume-gcc7-fixes.patch \
|
||||
%D%/packages/patches/dfu-programmer-fix-libusb.patch \
|
||||
%D%/packages/patches/diffutils-fix-signal-processing.patch \
|
||||
%D%/packages/patches/directfb-davinci-glibc-228-compat.patch \
|
||||
@@ -1099,7 +1099,9 @@ dist_patch_DATA = \
|
||||
%D%/packages/patches/elm-reactor-static-files.patch \
|
||||
%D%/packages/patches/elogind-fix-rpath.patch \
|
||||
%D%/packages/patches/emacs-all-the-icons-remove-duplicate-rs.patch \
|
||||
%D%/packages/patches/emacs-debbugs-keep-patch-subject.patch \
|
||||
%D%/packages/patches/emacs-deferred-fix-number-of-arguments.patch \
|
||||
%D%/packages/patches/emacs-elpy-dup-test-name.patch \
|
||||
%D%/packages/patches/emacs-exec-path.patch \
|
||||
%D%/packages/patches/emacs-ess-fix-obsolete-function-alias.patch \
|
||||
%D%/packages/patches/emacs-git-email-missing-parens.patch \
|
||||
@@ -1110,6 +1112,8 @@ dist_patch_DATA = \
|
||||
%D%/packages/patches/emacs-highlight-stages-add-gexp.patch \
|
||||
%D%/packages/patches/emacs-lispy-fix-thread-last-test.patch \
|
||||
%D%/packages/patches/emacs-native-comp-driver-options.patch \
|
||||
%D%/packages/patches/emacs-next-exec-path.patch \
|
||||
%D%/packages/patches/emacs-next-native-comp-driver-options.patch \
|
||||
%D%/packages/patches/emacs-pasp-mode-quote-file-names.patch \
|
||||
%D%/packages/patches/emacs-polymode-fix-lexical-variable-error.patch \
|
||||
%D%/packages/patches/emacs-telega-path-placeholder.patch \
|
||||
@@ -1273,6 +1277,7 @@ dist_patch_DATA = \
|
||||
%D%/packages/patches/ghostscript-no-header-uuid.patch \
|
||||
%D%/packages/patches/ghostscript-no-header-creationdate.patch \
|
||||
%D%/packages/patches/gitg-fix-positional-argument.patch \
|
||||
%D%/packages/patches/gklib-suitesparse.patch \
|
||||
%D%/packages/patches/glib-appinfo-watch.patch \
|
||||
%D%/packages/patches/glib-networking-gnutls-binding.patch \
|
||||
%D%/packages/patches/glib-skip-failing-test.patch \
|
||||
@@ -1416,6 +1421,7 @@ dist_patch_DATA = \
|
||||
%D%/packages/patches/icecat-use-system-media-libs.patch \
|
||||
%D%/packages/patches/icedtea-7-hotspot-aarch64-use-c++98.patch \
|
||||
%D%/packages/patches/icedtea-7-hotspot-pointer-comparison.patch \
|
||||
%D%/packages/patches/icu4c-fix-TestHebrewCalendarInTemporalLeapYear.patch \
|
||||
%D%/packages/patches/id3lib-CVE-2007-4460.patch \
|
||||
%D%/packages/patches/id3lib-UTF16-writing-bug.patch \
|
||||
%D%/packages/patches/idris-test-ffi008.patch \
|
||||
@@ -1990,7 +1996,6 @@ dist_patch_DATA = \
|
||||
%D%/packages/patches/softhsm-fix-openssl3-tests.patch \
|
||||
%D%/packages/patches/spectre-meltdown-checker-externalize-fwdb.patch \
|
||||
%D%/packages/patches/spdlog-fix-tests.patch \
|
||||
%D%/packages/patches/spectre-meltdown-checker-find-kernel.patch \
|
||||
%D%/packages/patches/sphinxbase-fix-doxygen.patch \
|
||||
%D%/packages/patches/sssd-system-directories.patch \
|
||||
%D%/packages/patches/steghide-fixes.patch \
|
||||
@@ -2036,7 +2041,6 @@ dist_patch_DATA = \
|
||||
%D%/packages/patches/tootle-glib-object-naming.patch \
|
||||
%D%/packages/patches/tootle-reason-phrase.patch \
|
||||
%D%/packages/patches/transcode-ffmpeg.patch \
|
||||
%D%/packages/patches/transfig-gcc10-fno-common.patch \
|
||||
%D%/packages/patches/trytond-add-egg-modules-to-path.patch \
|
||||
%D%/packages/patches/trytond-add-guix_trytond_path.patch \
|
||||
%D%/packages/patches/ttf2eot-cstddef.patch \
|
||||
@@ -2114,6 +2118,7 @@ dist_patch_DATA = \
|
||||
%D%/packages/patches/wacomtablet-add-missing-includes.patch \
|
||||
%D%/packages/patches/wacomtablet-qt5.15.patch \
|
||||
%D%/packages/patches/warsow-qfusion-fix-bool-return-type.patch \
|
||||
%D%/packages/patches/wcstools-extend-makefiles.patch \
|
||||
%D%/packages/patches/wdl-link-libs-and-fix-jnetlib.patch \
|
||||
%D%/packages/patches/webkitgtk-adjust-bubblewrap-paths.patch \
|
||||
%D%/packages/patches/webrtc-audio-processing-big-endian.patch \
|
||||
@@ -2133,6 +2138,9 @@ dist_patch_DATA = \
|
||||
%D%/packages/patches/xf86-video-nouveau-fixup-ABI.patch \
|
||||
%D%/packages/patches/xf86-video-savage-xorg-compat.patch \
|
||||
%D%/packages/patches/xf86-video-siliconmotion-fix-ftbfs.patch \
|
||||
%D%/packages/patches/xfig-Enable-error-message-for-missing-libraries.patch \
|
||||
%D%/packages/patches/xfig-Fix-double-free-when-requesting-MediaBox.patch \
|
||||
%D%/packages/patches/xfig-Use-pkg-config-to-set-fontconfig-CFLAGS-and-LIBS.patch \
|
||||
%D%/packages/patches/xfce4-panel-plugins.patch \
|
||||
%D%/packages/patches/xfce4-settings-defaults.patch \
|
||||
%D%/packages/patches/xgboost-use-system-dmlc-core.patch \
|
||||
|
||||
@@ -1366,6 +1366,40 @@ objects.")
|
||||
;; safe side, we drop them for now.
|
||||
(license license:gpl2+)))
|
||||
|
||||
(define-public spectra
|
||||
(package
|
||||
(name "spectra")
|
||||
(version "1.0.1")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/yixuan/spectra")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"1krgx7763g0phrp879rgq10dvfyxrdx9rzwxiyzn6qi3iqr6d8hx"))))
|
||||
(build-system cmake-build-system)
|
||||
(arguments
|
||||
(list #:configure-flags #~(list "-DBUILD_TESTS=ON")
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(replace 'check
|
||||
(lambda* (#:key tests? #:allow-other-keys)
|
||||
(when tests?
|
||||
;; This test failed.
|
||||
(invoke "ctest" "--exclude-regex"
|
||||
"GenEigsRealShift")))))))
|
||||
(inputs (list eigen))
|
||||
(home-page "https://spectralib.org/")
|
||||
(synopsis "C++ library for large scale eigenvalue problems")
|
||||
(description "Spectra stands for Sparse Eigenvalue Computation Toolkit as
|
||||
a Redesigned ARPACK. It is a C++ library for large scale eigenvalue problems,
|
||||
built on top of Eigen. It is implemented as a header-only C++ library and can
|
||||
be easily embedded in C++ projects that require calculating eigenvalues of
|
||||
large matrices.")
|
||||
(license license:mpl2.0)))
|
||||
|
||||
(define-public gappa
|
||||
(package
|
||||
(name "gappa")
|
||||
|
||||
59
gnu/packages/apple.scm
Normal file
59
gnu/packages/apple.scm
Normal file
@@ -0,0 +1,59 @@
|
||||
;;; GNU Guix --- Functional package management for GNU
|
||||
;;; Copyright © 2022 B. Wilson <elaexuotee@wilsonb.com>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
;;; GNU Guix is free software; you can redistribute it and/or modify it
|
||||
;;; under the terms of the GNU General Public License as published by
|
||||
;;; the Free Software Foundation; either version 3 of the License, or (at
|
||||
;;; your option) any later version.
|
||||
;;;
|
||||
;;; GNU Guix is distributed in the hope that it will be useful, but
|
||||
;;; WITHOUT ANY WARRANTY; without even the implied warranty of
|
||||
;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
|
||||
;;; GNU General Public License for more details.
|
||||
;;;
|
||||
;;; You should have received a copy of the GNU General Public License
|
||||
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
(define-module (gnu packages apple)
|
||||
#:use-module (gnu packages bison)
|
||||
#:use-module (guix build-system gnu)
|
||||
#:use-module (guix packages)
|
||||
#:use-module (guix git-download)
|
||||
#:use-module ((guix licenses) #:prefix license:))
|
||||
|
||||
(define-public apple-bash
|
||||
(package
|
||||
(name "apple-bash")
|
||||
(version "125")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/apple-oss-distributions/bash.git")
|
||||
(commit (string-append "bash-" version))))
|
||||
(sha256
|
||||
(base32 "1d4s1z57yiyhgb6i22kb9al31j1fv9a4rp1bb747ny6grdvc4919"))
|
||||
(file-name (git-file-name name version))))
|
||||
(build-system gnu-build-system)
|
||||
(native-inputs (list bison))
|
||||
(arguments
|
||||
'(#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-before 'configure 'pre-configure
|
||||
(lambda _
|
||||
;; An XCode project wraps the actual bash source.
|
||||
(chdir "bash-3.2")
|
||||
;; The xlocale.h header was removed in glibc 2.26.
|
||||
(substitute* "lib/glob/smatch.c"
|
||||
(("xlocale.h") "locale.h"))
|
||||
;; EBADEXEC is XNU-specific.
|
||||
(substitute* "execute_cmd.c"
|
||||
(("EBADEXEC") "ENOEXEC")))))))
|
||||
(home-page "https://github.com/apple-oss-distributions/bash/")
|
||||
(synopsis "Bash used on Apple macOS systems")
|
||||
(description
|
||||
"This is the version of Bash, forked from GNU Bash 3.2, released on Apple
|
||||
macOS systems.")
|
||||
(license license:gpl2+)))
|
||||
@@ -754,6 +754,39 @@ header.")
|
||||
(base32 "1m3bx6gh5w3c7vvsqcki0x20mg8lilg13m0i8nh7za89w58dxy4w"))))
|
||||
(properties '((hidden? . #t)))))
|
||||
|
||||
(define-public wcstools
|
||||
(package
|
||||
(name "wcstools")
|
||||
(version "3.9.7")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
"http://tdc-www.harvard.edu/software/wcstools/wcstools-"
|
||||
version ".tar.gz"))
|
||||
(sha256
|
||||
(base32 "125hqzspvqrx6372smzsmxwg06ib2arjc5awnwnq53w1xdq6jpsj"))
|
||||
(patches (search-patches "wcstools-extend-makefiles.patch"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:tests? #f ;No tests provided.
|
||||
#:make-flags
|
||||
#~(list (string-append "CC=" #$(cc-for-target))
|
||||
(string-append "PREFIX=" #$output))
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(delete 'configure))))
|
||||
(home-page "http://tdc-www.harvard.edu/software/wcstools/")
|
||||
(synopsis "Handle the WCS of a FITS image")
|
||||
(description
|
||||
"WCSTools is a set of software utilities, written in C, which create,
|
||||
display and manipulate the world coordinate system of a FITS or IRAF image,
|
||||
using specific keywords in the image header which relate pixel position within
|
||||
the image to position on the sky. Auxillary programs search star catalogs and
|
||||
manipulate images.")
|
||||
(license license:gpl2+)))
|
||||
|
||||
(define-public weightwatcher
|
||||
(package
|
||||
(name "weightwatcher")
|
||||
@@ -1624,6 +1657,37 @@ encompassing software system for the operations and analysis of the ESA satelite
|
||||
Herschel.")
|
||||
(license license:gpl3+)))
|
||||
|
||||
(define-public python-casa-formats-io
|
||||
(package
|
||||
(name "python-casa-formats-io")
|
||||
(version "0.2.1")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "casa-formats-io" version))
|
||||
(sha256
|
||||
(base32
|
||||
"07cchih2ws6jf6q1a4xhkv0jk96s3w08kzxx9l1911wzqk0pw9pj"))))
|
||||
(build-system pyproject-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(add-before 'check 'build-extensions
|
||||
(lambda _
|
||||
(invoke "python" "setup.py" "build_ext" "--inplace"))))))
|
||||
(native-inputs
|
||||
(list python-pytest python-pytest-cov python-pytest-openfiles))
|
||||
(propagated-inputs
|
||||
(list python-astropy python-click python-dask python-numpy))
|
||||
(home-page "https://casa-formats-io.readthedocs.io/")
|
||||
(synopsis "Dask-based reader for CASA data")
|
||||
(description
|
||||
"The @code{casa-formats-io} package is a small package which implements
|
||||
functionality to read data stored in @acronym{CASA, Common Astronomy Software
|
||||
Applications} formats (such as @file{.image} datasets). This implementation
|
||||
is independent of and does not use @code{casacore}.")
|
||||
(license license:lgpl2.0)))
|
||||
|
||||
(define-public python-ccdproc
|
||||
(package
|
||||
(name "python-ccdproc")
|
||||
|
||||
10836
gnu/packages/aux-files/linux-libre/6.5-arm.conf
Normal file
10836
gnu/packages/aux-files/linux-libre/6.5-arm.conf
Normal file
File diff suppressed because it is too large
Load Diff
11563
gnu/packages/aux-files/linux-libre/6.5-arm64.conf
Normal file
11563
gnu/packages/aux-files/linux-libre/6.5-arm64.conf
Normal file
File diff suppressed because it is too large
Load Diff
11726
gnu/packages/aux-files/linux-libre/6.5-i686.conf
Normal file
11726
gnu/packages/aux-files/linux-libre/6.5-i686.conf
Normal file
File diff suppressed because it is too large
Load Diff
11852
gnu/packages/aux-files/linux-libre/6.5-x86_64.conf
Normal file
11852
gnu/packages/aux-files/linux-libre/6.5-x86_64.conf
Normal file
File diff suppressed because it is too large
Load Diff
@@ -1382,7 +1382,9 @@ to the @code{share/locale} sub-directory of this package.")
|
||||
locale ".UTF-8")))
|
||||
',locales)
|
||||
#t))))
|
||||
(native-inputs (list glibc gzip))
|
||||
(native-inputs
|
||||
`(("glibc" ,glibc)
|
||||
("gzip" ,gzip)))
|
||||
(synopsis (if default-locales?
|
||||
(P_ "Small sample of UTF-8 locales")
|
||||
(P_ "Customized sample of UTF-8 locales")))
|
||||
|
||||
@@ -34,6 +34,7 @@
|
||||
#:use-module (guix download)
|
||||
#:use-module (guix gexp)
|
||||
#:use-module (guix git-download)
|
||||
#:use-module (guix search-paths)
|
||||
#:use-module (guix build-system cmake)
|
||||
#:use-module (guix build-system gnu)
|
||||
#:use-module (guix build-system python)
|
||||
@@ -70,11 +71,10 @@
|
||||
#:use-module (gnu packages xml)
|
||||
#:use-module (ice-9 match))
|
||||
|
||||
;; Lazily resolve the gcc-toolchain to avoid a circular dependency. Always
|
||||
;; use the latest available toolchain to avoid conflicts in user profiles.
|
||||
;; Lazily resolve the gcc-toolchain to avoid a circular dependency.
|
||||
(define gcc-toolchain*
|
||||
(delay (module-ref (resolve-interface '(gnu packages commencement))
|
||||
'gcc-toolchain-12)))
|
||||
'gcc-toolchain)))
|
||||
|
||||
(define-public fio
|
||||
(package
|
||||
@@ -351,24 +351,39 @@ file metadata operations that can be performed per second.")
|
||||
(invoke "./install-sh" #$output "--free-software-only")))
|
||||
(add-after 'install 'wrap-binary
|
||||
(lambda* (#:key inputs #:allow-other-keys)
|
||||
(let ((pts (string-append #$output "/bin/phoronix-test-suite")))
|
||||
(let ((pts (string-append #$output "/bin/phoronix-test-suite"))
|
||||
(gcc #$(this-package-input "gcc-toolchain")))
|
||||
(wrap-program pts
|
||||
(list "PATH" 'prefix
|
||||
(map (lambda (binary)
|
||||
(dirname (search-input-file
|
||||
inputs (string-append "bin/" binary))))
|
||||
'("bash" "cat" ;coreutils
|
||||
"gzip" "make" "php" "sed" "tar" "which"))))))))))
|
||||
"gcc"
|
||||
"gzip" "make" "php" "sed" "tar" "which")))
|
||||
;; Wrap the GCC compiler paths.
|
||||
(list "C_INCLUDE_PATH" 'prefix
|
||||
(list (string-append gcc "/include")))
|
||||
(list "CPLUS_INCLUDE_PATH" 'prefix
|
||||
(list (string-append gcc "/include/c++")
|
||||
(string-append gcc "/include")))
|
||||
(list "LIBRARY_PATH" 'prefix
|
||||
(list (string-append gcc "/lib"))))))))))
|
||||
(build-system gnu-build-system)
|
||||
(native-inputs (list python which))
|
||||
;; Wrap the most basic build tools needed by Phoronix Test Suite to build
|
||||
;; simple tests such as 'fio'.
|
||||
(inputs (list bash coreutils gnu-make gzip php sed tar which))
|
||||
;; Phoronix Test Suite builds and caches the benchmarking tools itself;
|
||||
;; the user is required to manually install extra libraries depending on
|
||||
;; the selected test; but at least a working C/C++ toolchain is assumed to
|
||||
;; be available.
|
||||
(propagated-inputs (list (force gcc-toolchain*)))
|
||||
(inputs
|
||||
(list bash
|
||||
coreutils
|
||||
(force gcc-toolchain*)
|
||||
gnu-make
|
||||
gzip
|
||||
php
|
||||
sed
|
||||
tar
|
||||
which))
|
||||
(native-search-paths %gcc-search-paths)
|
||||
(home-page "https://www.phoronix-test-suite.com/")
|
||||
(synopsis "Automated testing/benchmarking software")
|
||||
(description
|
||||
|
||||
@@ -118,6 +118,28 @@ analysis.")
|
||||
based on mapping using Entrez Gene identifiers.")
|
||||
(license license:artistic2.0)))
|
||||
|
||||
(define-public r-org-sc-sgd-db
|
||||
(package
|
||||
(name "r-org-sc-sgd-db")
|
||||
(version "3.17.0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (bioconductor-uri "org.Sc.sgd.db" version
|
||||
'annotation))
|
||||
(sha256
|
||||
(base32 "1anxk5sgzgkdk4n1c7gjyzy56wa2bkifghs9m1mh82l95kyvk2ig"))))
|
||||
(properties `((upstream-name . "org.Sc.sgd.db")))
|
||||
(build-system r-build-system)
|
||||
(propagated-inputs (list r-annotationdbi))
|
||||
(home-page "https://bioconductor.org/packages/org.Sc.sgd.db")
|
||||
(synopsis "Genome wide annotation for Yeast")
|
||||
(description
|
||||
"This package provides genome wide annotation for Yeast, primarily based
|
||||
on mapping using ORF identifiers from @acronym{SGD, Saccharomyces Genome
|
||||
Database}.")
|
||||
(license license:artistic2.0)))
|
||||
|
||||
(define-public r-pd-mapping50k-xba240
|
||||
(package
|
||||
(name "r-pd-mapping50k-xba240")
|
||||
@@ -2863,13 +2885,13 @@ analysis, modelling, and visualization of spike-in controls.")
|
||||
(define-public r-ancombc
|
||||
(package
|
||||
(name "r-ancombc")
|
||||
(version "2.2.1")
|
||||
(version "2.2.2")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (bioconductor-uri "ANCOMBC" version))
|
||||
(sha256
|
||||
(base32
|
||||
"05gngz6cqihxg4zlf7ymw93qj61a1i19hgp4fkc0cxnkq0pambrd"))))
|
||||
"0jws3wqgwc0gnp7smc0lsqfw9jbcik36pl7vz9a8ndgwpp9c8653"))))
|
||||
(properties `((upstream-name . "ANCOMBC")))
|
||||
(build-system r-build-system)
|
||||
(propagated-inputs
|
||||
@@ -3494,6 +3516,67 @@ Bioconductor microarray data containers @code{(ExpressionSet},
|
||||
supported.")
|
||||
(license license:lgpl2.0+)))
|
||||
|
||||
(define-public r-arraymvout
|
||||
(package
|
||||
(name "r-arraymvout")
|
||||
(version "1.58.0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (bioconductor-uri "arrayMvout" version))
|
||||
(sha256
|
||||
(base32 "1wdqcfa0h070lky4m2h5k4wg8lg7014y0gk95gip5zags29zjwqb"))))
|
||||
(properties `((upstream-name . "arrayMvout")))
|
||||
(build-system r-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:phases
|
||||
'(modify-phases %standard-phases
|
||||
(add-before 'install 'change-home-dir
|
||||
(lambda _
|
||||
;; Change from /homeless-shelter to /tmp for write permission.
|
||||
(setenv "HOME" "/tmp"))))))
|
||||
(propagated-inputs
|
||||
(list r-affy
|
||||
r-affycontam
|
||||
r-biobase
|
||||
r-lumi
|
||||
r-mdqc
|
||||
r-parody))
|
||||
(home-page "https://bioconductor.org/packages/arrayMvout")
|
||||
(synopsis "Multivariate outlier detection for expression array QA")
|
||||
(description
|
||||
"This package supports the application of diverse quality metrics to
|
||||
AffyBatch instances, summarizing these metrics via PCA, and then performing
|
||||
parametric outlier detection on the PCs to identify aberrant arrays with a
|
||||
fixed Type I error rate.")
|
||||
(license license:artistic2.0)))
|
||||
|
||||
(define-public r-arrayquality
|
||||
(package
|
||||
(name "r-arrayquality")
|
||||
(version "1.78.0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (bioconductor-uri "arrayQuality" version))
|
||||
(sha256
|
||||
(base32 "0lq59y4pi13z4v1i1ah78xlchxy34x1lplsh0n42wlk88rk0rqxd"))))
|
||||
(properties `((upstream-name . "arrayQuality")))
|
||||
(build-system r-build-system)
|
||||
(propagated-inputs
|
||||
(list r-gridbase
|
||||
r-hexbin
|
||||
r-limma
|
||||
r-marray
|
||||
r-rcolorbrewer))
|
||||
(home-page "http://arrays.ucsf.edu/")
|
||||
(synopsis "Assessing array quality on spotted arrays")
|
||||
(description
|
||||
"This package provides functions for performing print-run and array level
|
||||
quality assessment.")
|
||||
(license license:lgpl2.0+)))
|
||||
|
||||
(define-public r-asafe
|
||||
(package
|
||||
(name "r-asafe")
|
||||
@@ -6152,13 +6235,13 @@ powerful online queries from gene annotation to database mining.")
|
||||
(define-public r-biomartr
|
||||
(package
|
||||
(name "r-biomartr")
|
||||
(version "1.0.4")
|
||||
(version "1.0.5")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (cran-uri "biomartr" version))
|
||||
(sha256
|
||||
(base32
|
||||
"0hv4z6ycmn58ha7j7zfmyhvs2i37cm48gcalg19dli2kaw1c4210"))))
|
||||
"14nw44dkyrfw43dc4zwsnvkrmdhsl131m9w1wa80j3qkbhyaypfl"))))
|
||||
(properties `((upstream-name . "biomartr")))
|
||||
(build-system r-build-system)
|
||||
(propagated-inputs
|
||||
@@ -7005,14 +7088,14 @@ visualization of Illumina DNA methylation array data.")
|
||||
(define-public r-ensembldb
|
||||
(package
|
||||
(name "r-ensembldb")
|
||||
(version "2.24.0")
|
||||
(version "2.24.1")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (bioconductor-uri "ensembldb" version))
|
||||
(sha256
|
||||
(base32
|
||||
"0rl5ix755055i95y5xfb4zv5gih2gkqwqia1r1b3yx12z5ybvkc6"))))
|
||||
"1x73lln0rlnypl8iia54srl3wrazs94f8rspmjsaqsxwknkym319"))))
|
||||
(build-system r-build-system)
|
||||
(propagated-inputs
|
||||
(list r-annotationdbi
|
||||
@@ -7195,13 +7278,13 @@ genomic intervals. In addition, it can use BAM or BigWig files as input.")
|
||||
(define-public r-genomeinfodb
|
||||
(package
|
||||
(name "r-genomeinfodb")
|
||||
(version "1.36.3")
|
||||
(version "1.36.4")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (bioconductor-uri "GenomeInfoDb" version))
|
||||
(sha256
|
||||
(base32
|
||||
"04bh4481jcj91xdh11ic4519jczck6zmysbpnpbbhykanp31z4pf"))))
|
||||
"0wwh72sj894m3awk4g2zmkkwqafdjyxzsr49vnd1fiyz909hw02a"))))
|
||||
(properties
|
||||
`((upstream-name . "GenomeInfoDb")))
|
||||
(build-system r-build-system)
|
||||
@@ -7848,14 +7931,14 @@ Shiny-based display methods for Bioconductor objects.")
|
||||
(define-public r-keggrest
|
||||
(package
|
||||
(name "r-keggrest")
|
||||
(version "1.40.0")
|
||||
(version "1.40.1")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (bioconductor-uri "KEGGREST" version))
|
||||
(sha256
|
||||
(base32
|
||||
"1zmsk5w8i3cq0983nx1d24a6awrbq7aj2wrapsnizq9gvrsrhbbb"))))
|
||||
"13pbw5nlkjwplliv2pdwazv2idfjklvw0ykx5ja8rchvzs5f1vk4"))))
|
||||
(properties `((upstream-name . "KEGGREST")))
|
||||
(build-system r-build-system)
|
||||
(propagated-inputs
|
||||
@@ -8099,6 +8182,31 @@ experiments.")
|
||||
and visualizaton of alternative splicing events generated by rMATS.")
|
||||
(license license:expat)))
|
||||
|
||||
(define-public r-mdqc
|
||||
(package
|
||||
(name "r-mdqc")
|
||||
(version "1.62.0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (bioconductor-uri "mdqc" version))
|
||||
(sha256
|
||||
(base32 "0y35z9sw3h77a5g4ah0fxrk5xh7irdw9z0y2jhh6dp0xxcqh6i0k"))))
|
||||
(properties `((upstream-name . "mdqc")))
|
||||
(build-system r-build-system)
|
||||
(propagated-inputs
|
||||
(list r-cluster
|
||||
r-mass))
|
||||
(home-page "https://bioconductor.org/packages/mdqc")
|
||||
(synopsis "Mahalanobis distance quality control for microarrays")
|
||||
(description
|
||||
"MDQC is a multivariate quality assessment method for microarrays based
|
||||
on quality control (QC) reports. The Mahalanobis distance of an array's
|
||||
quality attributes is used to measure the similarity of the quality of that
|
||||
array against the quality of the other arrays. Then, arrays with unusually
|
||||
high distances can be flagged as potentially low-quality.")
|
||||
(license license:lgpl2.0+)))
|
||||
|
||||
(define-public r-metagenomeseq
|
||||
(package
|
||||
(name "r-metagenomeseq")
|
||||
@@ -10264,13 +10372,13 @@ tools either included in speaq or available elsewhere on CRAN.")
|
||||
(define-public r-spectra
|
||||
(package
|
||||
(name "r-spectra")
|
||||
(version "1.10.2")
|
||||
(version "1.10.3")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (bioconductor-uri "Spectra" version))
|
||||
(sha256
|
||||
(base32
|
||||
"1jrlfm6k6v4vhzl4lg6sa49yw35ds9x3v7iyc2cvbxqmpp5haila"))))
|
||||
"1fx6xkl29frfk8bzz5jvr1cn0hjyi46ck23izb1cypiag4lsrf8v"))))
|
||||
(properties `((upstream-name . "Spectra")))
|
||||
(build-system r-build-system)
|
||||
(propagated-inputs (list r-biocgenerics
|
||||
@@ -10582,24 +10690,25 @@ of gene-level counts.")
|
||||
(define-public r-valr
|
||||
(package
|
||||
(name "r-valr")
|
||||
(version "0.6.8")
|
||||
(version "0.7.0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (cran-uri "valr" version))
|
||||
(sha256
|
||||
(base32
|
||||
"156sqh474synjvdm1j332ab75rqab0n81d674xbgs3rfxlr2ksgz"))))
|
||||
"038s5n8cbffpb9132rpw7q82cxfzlsc86fcywhv63c8szm5g9nrk"))))
|
||||
(build-system r-build-system)
|
||||
(propagated-inputs
|
||||
(list r-broom
|
||||
r-cli
|
||||
r-dplyr
|
||||
r-ggplot2
|
||||
r-lifecycle
|
||||
r-rcpp
|
||||
r-readr
|
||||
r-rlang
|
||||
r-rtracklayer ;bioconductor package
|
||||
r-rtracklayer
|
||||
r-stringr
|
||||
r-tibble))
|
||||
(native-inputs
|
||||
@@ -11080,32 +11189,57 @@ problems in genomics, brain imaging, astrophysics, and data mining.")
|
||||
@code{Rcpp}.")
|
||||
(license license:gpl2+)))
|
||||
|
||||
(define-public r-apcomplex
|
||||
(package
|
||||
(name "r-apcomplex")
|
||||
(version "2.66.0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (bioconductor-uri "apComplex" version))
|
||||
(sha256
|
||||
(base32 "057p1bsqqw3r49bsx78prqc4jha468bfx50gpl62giix0cfs007f"))))
|
||||
(properties `((upstream-name . "apComplex")))
|
||||
(build-system r-build-system)
|
||||
(propagated-inputs
|
||||
(list r-graph
|
||||
r-org-sc-sgd-db
|
||||
r-rbgl
|
||||
r-rgraphviz))
|
||||
(home-page "https://bioconductor.org/packages/apComplex")
|
||||
(synopsis "Estimate protein complex membership using AP-MS protein data")
|
||||
(description
|
||||
"This package provides functions to estimate a bipartite graph of protein
|
||||
complex membership using @acronym{AP-MS, affinity purification–mass
|
||||
spectrometry} data.")
|
||||
(license license:lgpl2.0+)))
|
||||
|
||||
(define-public r-apeglm
|
||||
(package
|
||||
(name "r-apeglm")
|
||||
(version "1.22.1")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (bioconductor-uri "apeglm" version))
|
||||
(sha256
|
||||
(base32
|
||||
"19r1mhpkn3xy6l188c14k9xgn25xqc718bwrlmnz63lak6mp4ws7"))))
|
||||
(properties `((upstream-name . "apeglm")))
|
||||
(build-system r-build-system)
|
||||
(propagated-inputs
|
||||
(list r-emdbook
|
||||
r-genomicranges
|
||||
r-rcpp
|
||||
r-rcppeigen
|
||||
r-rcppnumerical
|
||||
r-summarizedexperiment))
|
||||
(native-inputs (list r-knitr r-rmarkdown))
|
||||
(home-page "https://bioconductor.org/packages/apeglm")
|
||||
(synopsis "Approximate posterior estimation for GLM coefficients")
|
||||
(description "This package provides Bayesian shrinkage estimators for
|
||||
(name "r-apeglm")
|
||||
(version "1.22.1")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (bioconductor-uri "apeglm" version))
|
||||
(sha256
|
||||
(base32
|
||||
"19r1mhpkn3xy6l188c14k9xgn25xqc718bwrlmnz63lak6mp4ws7"))))
|
||||
(properties `((upstream-name . "apeglm")))
|
||||
(build-system r-build-system)
|
||||
(propagated-inputs
|
||||
(list r-emdbook
|
||||
r-genomicranges
|
||||
r-rcpp
|
||||
r-rcppeigen
|
||||
r-rcppnumerical
|
||||
r-summarizedexperiment))
|
||||
(native-inputs (list r-knitr r-rmarkdown))
|
||||
(home-page "https://bioconductor.org/packages/apeglm")
|
||||
(synopsis "Approximate posterior estimation for GLM coefficients")
|
||||
(description "This package provides Bayesian shrinkage estimators for
|
||||
effect sizes for a variety of GLM models, using approximation of the
|
||||
posterior for individual coefficients.")
|
||||
(license license:gpl2)))
|
||||
(license license:gpl2)))
|
||||
|
||||
(define-public r-greylistchip
|
||||
(package
|
||||
@@ -14197,6 +14331,42 @@ analyzed in parallel the library performs a number of tests to assure that
|
||||
the data set is suitable for such analysis.")
|
||||
(license license:gpl3)))
|
||||
|
||||
(define-public r-anota2seq
|
||||
(package
|
||||
(name "r-anota2seq")
|
||||
(version "1.22.0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (bioconductor-uri "anota2seq" version))
|
||||
(sha256
|
||||
(base32 "0pmk45276bl3qppzxlp4jpc8bsvdpca8nzrdl6c4n9r3xhzfpyq0"))))
|
||||
(properties `((upstream-name . "anota2seq")))
|
||||
(build-system r-build-system)
|
||||
(propagated-inputs
|
||||
(list r-deseq2
|
||||
r-edger
|
||||
r-limma
|
||||
r-multtest
|
||||
r-qvalue
|
||||
r-rcolorbrewer
|
||||
r-summarizedexperiment))
|
||||
(native-inputs (list r-knitr))
|
||||
(home-page "https://bioconductor.org/packages/anota2seq")
|
||||
(synopsis "Transcriptome-wide analysis of translational efficiency")
|
||||
(description
|
||||
"The anota2seq package provides analysis of translational efficiency and
|
||||
differential expression analysis for polysome-profiling and ribosome-profiling
|
||||
studies (two or more sample classes) quantified by RNA sequencing or
|
||||
DNA-microarray. Polysome-profiling and ribosome-profiling typically generate
|
||||
data for two RNA sources, translated mRNA and total mRNA. Analysis of
|
||||
differential expression is used to estimate changes within each RNA source.
|
||||
Analysis of translational efficiency aims to identify changes in translation
|
||||
efficiency leading to altered protein levels that are independent of total
|
||||
mRNA levels or buffering, a mechanism regulating translational efficiency so
|
||||
that protein levels remain constant despite fluctuating total mRNA levels.")
|
||||
(license license:gpl3)))
|
||||
|
||||
(define-public r-sigpathway
|
||||
(package
|
||||
(name "r-sigpathway")
|
||||
@@ -14355,18 +14525,19 @@ correspondance between different data sources.")
|
||||
(define-public r-enrichplot
|
||||
(package
|
||||
(name "r-enrichplot")
|
||||
(version "1.20.1")
|
||||
(version "1.20.3")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (bioconductor-uri "enrichplot" version))
|
||||
(sha256
|
||||
(base32
|
||||
"0yxnh5bmfcfsciwm852rbb707v9zbky3lsz2xsyyaapm5jjb6npk"))))
|
||||
"11hgxs42wvirv6b9ywr2jb51s67k4r0pm21dkvm7xjbsbarlkhmh"))))
|
||||
(build-system r-build-system)
|
||||
(propagated-inputs
|
||||
(list r-aplot
|
||||
r-dose
|
||||
r-ggfun
|
||||
r-ggnewscale
|
||||
r-ggplot2
|
||||
r-ggraph
|
||||
@@ -15439,14 +15610,14 @@ decomposition algorithms.")
|
||||
(define-public r-yapsa
|
||||
(package
|
||||
(name "r-yapsa")
|
||||
(version "1.25.0")
|
||||
(version "1.26.8")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (bioconductor-uri "YAPSA" version))
|
||||
(sha256
|
||||
(base32
|
||||
"0xva7vljq2k78rzjnjlp4x3ylwk86jaqn2cgbff4h4sb8rfdya7c"))))
|
||||
"16rr2bkni3jx5qskr5fz5lvf23d03xgd3m4068mnd3n9r23hpb4p"))))
|
||||
(properties `((upstream-name . "YAPSA")))
|
||||
(build-system r-build-system)
|
||||
(propagated-inputs
|
||||
@@ -18302,14 +18473,14 @@ using whole genome sequencing data.")
|
||||
(define-public r-activepathways
|
||||
(package
|
||||
(name "r-activepathways")
|
||||
(version "2.0.0")
|
||||
(version "2.0.2")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (cran-uri "ActivePathways" version))
|
||||
(sha256
|
||||
(base32
|
||||
"1niwzbzqs1s0mx6ia8fmvg9db6kajs0rdxgnnn1pq68yd8rjn79g"))))
|
||||
"1h0ih87pf6b5mdhmh65frv3nqx7v5adqv37wn2p3gkpszd6hwc79"))))
|
||||
(properties
|
||||
`((upstream-name . "ActivePathways")))
|
||||
(build-system r-build-system)
|
||||
@@ -18499,6 +18670,37 @@ the read count and GC content bias.")
|
||||
validating output, provides an S4 SBML DOM, converts SBML to R graph objects.")
|
||||
(license license:artistic2.0)))
|
||||
|
||||
(define-public r-hybridmtest
|
||||
(package
|
||||
(name "r-hybridmtest")
|
||||
(version "1.44.0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (bioconductor-uri "HybridMTest" version))
|
||||
(sha256
|
||||
(base32 "19pycad35hc7ylnsz75bv029y1r6j9xvrbhzk4i64i7jn8gi7ngh"))))
|
||||
(properties `((upstream-name . "HybridMTest")))
|
||||
(build-system r-build-system)
|
||||
(propagated-inputs
|
||||
(list r-biobase
|
||||
r-fdrtool
|
||||
r-mass
|
||||
r-survival))
|
||||
(home-page "https://bioconductor.org/packages/HybridMTest")
|
||||
(synopsis "Hybrid multiple testing")
|
||||
(description
|
||||
"This package performs hybrid multiple testing that incorporates method
|
||||
selection and assumption evaluations into the analysis using @acronym{EBP,
|
||||
empirical Bayes probability} estimates obtained by Grenander density
|
||||
estimation. For instance, for 3-group comparison analysis, Hybrid Multiple
|
||||
testing considers EBPs as weighted EBPs between F-test and H-test with EBPs
|
||||
from Shapiro Wilk test of normality as weigth. Instead of just using EBPs
|
||||
from F-test only or using H-test only, this methodology combines both types of
|
||||
EBPs through EBPs from Shapiro Wilk test of normality. This methodology uses
|
||||
then the law of total EBPs.")
|
||||
(license license:gpl2+)))
|
||||
|
||||
(define-public r-hypergraph
|
||||
(package
|
||||
(name "r-hypergraph")
|
||||
@@ -18964,13 +19166,13 @@ different graph related packages produced by Bioconductor.")
|
||||
(define-public r-biocstyle
|
||||
(package
|
||||
(name "r-biocstyle")
|
||||
(version "2.28.0")
|
||||
(version "2.28.1")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (bioconductor-uri "BiocStyle" version))
|
||||
(sha256
|
||||
(base32
|
||||
"04npnfmz1p1vpwrdsim309k7518i4p1li04xnmw8c9zgdb6yl61a"))))
|
||||
"11v3gzy88fai0rhdymvj9k74g7hjc6n9fihfrrnw0qfr447z1d61"))))
|
||||
(properties
|
||||
`((upstream-name . "BiocStyle")))
|
||||
(build-system r-build-system)
|
||||
@@ -19700,13 +19902,13 @@ array-like semantic. It also provides:
|
||||
(define-public r-s4vectors
|
||||
(package
|
||||
(name "r-s4vectors")
|
||||
(version "0.38.1")
|
||||
(version "0.38.2")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (bioconductor-uri "S4Vectors" version))
|
||||
(sha256
|
||||
(base32
|
||||
"0qpjx64ilc1niglhf6pn47damgaf5vdzwkvnlhcixqzpl28ndbs9"))))
|
||||
"0n1w451647pxii6qrrxbvdi9z6rqdwibczkbs7k7a9j33bv3nqv8"))))
|
||||
(properties
|
||||
`((upstream-name . "S4Vectors")))
|
||||
(build-system r-build-system)
|
||||
@@ -21001,14 +21203,14 @@ family of feature/genome hypotheses.")
|
||||
(define-public r-gviz
|
||||
(package
|
||||
(name "r-gviz")
|
||||
(version "1.44.1")
|
||||
(version "1.44.2")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (bioconductor-uri "Gviz" version))
|
||||
(sha256
|
||||
(base32
|
||||
"0yfmpxvx7h344fp6i3iny7r61n904bj0qdy14qbsp3d0z4g8a5fn"))))
|
||||
"0laismy8kklzkg81r5vf1194fbhp2hw952g6jc3zvn2z5y2d4524"))))
|
||||
(properties `((upstream-name . "Gviz")))
|
||||
(build-system r-build-system)
|
||||
(propagated-inputs
|
||||
@@ -21258,6 +21460,27 @@ statistical dependencies in messy, complex data.")
|
||||
other functional sequencing data.")
|
||||
(license license:gpl2)))
|
||||
|
||||
(define-public r-parody
|
||||
(package
|
||||
(name "r-parody")
|
||||
(version "1.58.0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (bioconductor-uri "parody" version))
|
||||
(sha256
|
||||
(base32 "0n2pmpnpwh16hb58v821xn42jm4a7wjsdf6sqxapjjw9w432mjac"))))
|
||||
(properties `((upstream-name . "parody")))
|
||||
(build-system r-build-system)
|
||||
(native-inputs (list r-knitr))
|
||||
(home-page "https://bioconductor.org/packages/parody")
|
||||
(synopsis "Parametric and resistant outlier detection")
|
||||
(description
|
||||
"The parody package provides routines for univariate and multivariate
|
||||
outlier detection with a focus on parametric methods, but support for some
|
||||
methods based on resistant statistics.")
|
||||
(license license:artistic2.0)))
|
||||
|
||||
(define-public r-pathview
|
||||
(package
|
||||
(name "r-pathview")
|
||||
@@ -21853,19 +22076,20 @@ the Bioconductor project.")
|
||||
(define-public r-biodb
|
||||
(package
|
||||
(name "r-biodb")
|
||||
(version "1.8.0")
|
||||
(version "1.8.1")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (bioconductor-uri "biodb" version))
|
||||
(sha256
|
||||
(base32
|
||||
"1lcjq1zfarhc7pqqrkqnaycsv2f27n4n8mfvrc3c9ww4lsza555k"))))
|
||||
"18j70ma85qb42qqpzz8fw3g4x6cav4j0pc2ab5ym22791dr8izck"))))
|
||||
(properties `((upstream-name . "biodb")))
|
||||
(build-system r-build-system)
|
||||
(propagated-inputs
|
||||
(list r-biocfilecache
|
||||
r-chk
|
||||
r-git2r
|
||||
r-jsonlite
|
||||
r-lgr
|
||||
r-lifecycle
|
||||
@@ -21979,6 +22203,15 @@ design.")
|
||||
"0n026b744ah5kcnipsyiqqs7vlz5n5im1kgv35i2pgxyzvf7a8sn"))))
|
||||
(properties `((upstream-name . "biomvRCNS")))
|
||||
(build-system r-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:phases
|
||||
'(modify-phases %standard-phases
|
||||
(add-after 'unpack 'patch-constants
|
||||
(lambda _
|
||||
(substitute* "src/biomvRCNS.c"
|
||||
(("DOUBLE_XMIN") "DBL_MIN")
|
||||
(("DOUBLE_XMAX") "DBL_MAX")))))))
|
||||
(propagated-inputs
|
||||
(list r-genomicranges r-gviz r-iranges r-mvtnorm))
|
||||
(home-page "https://bioconductor.org/packages/biomvRCNS")
|
||||
@@ -22380,13 +22613,13 @@ interest on transformed methylation proportions.")
|
||||
(define-public r-omnipathr
|
||||
(package
|
||||
(name "r-omnipathr")
|
||||
(version "3.8.0")
|
||||
(version "3.8.2")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (bioconductor-uri "OmnipathR" version))
|
||||
(sha256
|
||||
(base32 "0r2nv3nbadnvqby7p5bdpl9fxjb30h0c8kjv1dkqqnhk5rbfl4hf"))))
|
||||
(base32 "13ac98jj03vkzrc1ghrs98qrfvr74wz099w26lgc7jw2yxj575as"))))
|
||||
(properties `((upstream-name . "OmnipathR")))
|
||||
(build-system r-build-system)
|
||||
(arguments
|
||||
@@ -22406,13 +22639,13 @@ interest on transformed methylation proportions.")
|
||||
r-later
|
||||
r-logger
|
||||
r-magrittr
|
||||
r-rmarkdown
|
||||
r-progress
|
||||
r-purrr
|
||||
r-rappdirs
|
||||
r-readr
|
||||
r-readxl
|
||||
r-rlang
|
||||
r-rmarkdown
|
||||
r-rvest
|
||||
r-stringr
|
||||
r-tibble
|
||||
@@ -22581,14 +22814,14 @@ embeddings and functions to build new reference.")
|
||||
(define-public r-tximeta
|
||||
(package
|
||||
(name "r-tximeta")
|
||||
(version "1.18.1")
|
||||
(version "1.18.3")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (bioconductor-uri "tximeta" version))
|
||||
(sha256
|
||||
(base32
|
||||
"02240v41scaqxabjb62zh6shkkzb9520dhn0lfc2jbimnb26yj7f"))))
|
||||
"01s8x8a3rb0a5i599pxc5miz84ssvh10b4vha79nmbhkqccffvml"))))
|
||||
(properties `((upstream-name . "tximeta")))
|
||||
(build-system r-build-system)
|
||||
(propagated-inputs
|
||||
|
||||
@@ -58,8 +58,8 @@
|
||||
#:use-module ((guix search-paths) #:select ($SSL_CERT_DIR)))
|
||||
|
||||
(define-public cuirass
|
||||
(let ((commit "613188072c468fe2ffa4e8f83b48aefeb2488a2c")
|
||||
(revision "18"))
|
||||
(let ((commit "797b26a4ef80dce278481b1cc3391791ef2cbbaf")
|
||||
(revision "19"))
|
||||
(package
|
||||
(name "cuirass")
|
||||
(version (git-version "1.1.0" revision commit))
|
||||
@@ -72,7 +72,7 @@
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"13ai3xmf62kx9ijc5imapcjwyvkhj2kxnh36chh3vbh3sxbbanzz"))))
|
||||
"10hs9nxl9xlnswm7qv8mw5s3rf65q4ip8ikqvgq5rprcv1lf26ad"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
`(#:modules ((guix build utils)
|
||||
@@ -158,7 +158,7 @@
|
||||
|
||||
guix))
|
||||
(native-inputs
|
||||
(list autoconf automake pkg-config texinfo ephemeralpg))
|
||||
(list autoconf-2.71 automake pkg-config texinfo ephemeralpg))
|
||||
(native-search-paths
|
||||
;; For HTTPS access, Cuirass itself honors these variables, with the
|
||||
;; same semantics as Git and OpenSSL (respectively).
|
||||
|
||||
@@ -435,7 +435,7 @@ features that are not supported by the standard @code{stdio} implementation.")
|
||||
(define-public universal-ctags
|
||||
(package
|
||||
(name "universal-ctags")
|
||||
(version "6.0.20230212.0")
|
||||
(version "6.0.20231001.0")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@@ -445,7 +445,7 @@ features that are not supported by the standard @code{stdio} implementation.")
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"0616y8sqbydh4baixs1fndknjvhfpf57p7a0yr1l5n732lknk2pm"))
|
||||
"0qik6rsai254prydfx8k2bq7wpim3a272jiw1y37r734k4s9xbrb"))
|
||||
(modules '((guix build utils)))
|
||||
(snippet
|
||||
'(begin
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -22398,6 +22398,66 @@ accessor functions on enums.")
|
||||
("rust-quote" ,rust-quote-0.6)
|
||||
("rust-syn" ,rust-syn-0.15))))))
|
||||
|
||||
(define-public rust-enum-derive-0.1
|
||||
(package
|
||||
(name "rust-enum-derive")
|
||||
(version "0.1.7")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (crate-uri "enum-derive" version))
|
||||
(file-name (string-append name "-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"05n8mdca3y2c8pvl1isncj52fa80wplvx28lxvwqmpzfr6lc4sj0"))))
|
||||
(build-system cargo-build-system)
|
||||
(arguments
|
||||
`(#:cargo-development-inputs
|
||||
(("rust-custom-derive" ,rust-custom-derive-0.1))))
|
||||
(home-page "https://github.com/DanielKeep/rust-custom-derive")
|
||||
(synopsis "Macros for deriving additional functionality for enums")
|
||||
(description
|
||||
"This crate provides macros for deriving additional functionality for enums.")
|
||||
(license (list license:expat license:asl2.0))))
|
||||
|
||||
(define-public rust-enum-dispatch-0.3
|
||||
(package
|
||||
(name "rust-enum-dispatch")
|
||||
(version "0.3.11")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (crate-uri "enum_dispatch" version))
|
||||
(file-name (string-append name "-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1qlxlxjvy92s0fwcwlnd2cdkkyml1755xap2lq8v4812hsanxwqi"))
|
||||
(modules '((guix build utils)))
|
||||
(snippet
|
||||
'(begin (substitute* "Cargo.toml"
|
||||
(("\"= ?([[:digit:]]+(\\.[[:digit:]]+)*)" _ version)
|
||||
(string-append "\"^" version)))))))
|
||||
(build-system cargo-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:skip-build? #t ; Needs newer version of rust-smol
|
||||
#:cargo-inputs
|
||||
`(("rust-once-cell" ,rust-once-cell-1)
|
||||
("rust-proc-macro2" ,rust-proc-macro2-1)
|
||||
("rust-quote" ,rust-quote-1)
|
||||
("rust-syn" ,rust-syn-1))
|
||||
#:cargo-development-inputs
|
||||
`(("rust-custom-derive" ,rust-custom-derive-0.1)
|
||||
("rust-enum-derive" ,rust-enum-derive-0.1)
|
||||
("rust-rand" ,rust-rand-0.6)
|
||||
("rust-serde" ,rust-serde-1)
|
||||
("rust-serde-json" ,rust-serde-json-1)
|
||||
("rust-smol" ,rust-smol-1))))
|
||||
(home-page "https://gitlab.com/antonok/enum_dispatch")
|
||||
(synopsis "Faster alternative to dynamically dispatched method calls")
|
||||
(description
|
||||
"This crate transforms your trait objects into concrete compound types,
|
||||
increasing their method call speed up to 10x.")
|
||||
(license (list license:expat license:asl2.0))))
|
||||
|
||||
(define-public rust-enum-map-derive-0.4
|
||||
(package
|
||||
(name "rust-enum-map-derive")
|
||||
@@ -37548,6 +37608,34 @@ parallelize and optimize.")
|
||||
`(#:cargo-inputs (("rust-rawpointer" ,rust-rawpointer-0.1))
|
||||
#:cargo-development-inputs (("rust-bencher" ,rust-bencher-0.1))))))
|
||||
|
||||
(define-public rust-maybe-async-0.2
|
||||
(package
|
||||
(name "rust-maybe-async")
|
||||
(version "0.2.7")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (crate-uri "maybe-async" version))
|
||||
(file-name (string-append name "-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"01gksgxmzgl8hvg831vv993fvrwz8hjwgcln99ilp08zrc9qq6qg"))))
|
||||
(build-system cargo-build-system)
|
||||
(arguments
|
||||
(list #:cargo-inputs
|
||||
`(("rust-proc-macro2" ,rust-proc-macro2-1)
|
||||
("rust-quote" ,rust-quote-1)
|
||||
("rust-syn" ,rust-syn-1)
|
||||
("rust-async-std" ,rust-async-std-1)
|
||||
("rust-async-trait" ,rust-async-trait-0.1)
|
||||
("rust-tokio" ,rust-tokio-1)
|
||||
("rust-trybuild" ,rust-trybuild-1))))
|
||||
(home-page "https://github.com/fMeow/maybe-async-rs")
|
||||
(synopsis "Procedural macro to unify sync and async Rust code")
|
||||
(description
|
||||
"This package provides a procedural macro that unifies sync and
|
||||
async code in Rust.")
|
||||
(license license:expat)))
|
||||
|
||||
(define-public rust-maybe-rayon-0.1
|
||||
(package
|
||||
(name "rust-maybe-rayon")
|
||||
@@ -45938,6 +46026,28 @@ Rust with reasonable performance.")
|
||||
path.Clean.")
|
||||
(license (list license:expat license:asl2.0))))
|
||||
|
||||
(define-public rust-path-slash-0.2
|
||||
(package
|
||||
(name "rust-path-slash")
|
||||
(version "0.2.1")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (crate-uri "path-slash" version))
|
||||
(file-name (string-append name "-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0hjgljv4vy97qqw9gxnwzqhhpysjss2yhdphfccy3c388afhk48y"))))
|
||||
(build-system cargo-build-system)
|
||||
(arguments
|
||||
`(#:cargo-development-inputs (("rust-lazy-static" ,rust-lazy-static-1))))
|
||||
(home-page "https://github.com/rhysd/path-slash")
|
||||
(synopsis "Rust library to convert a file path from/to slash path")
|
||||
(description
|
||||
"This package provides @code{path-slash}, a tiny library to convert a file
|
||||
path (e.g. @code{foo/bar}, @code{foo\\bar} or @code{C:\\foo\\bar}) from/to a
|
||||
slash path (e.g. @code{foo/bar}, @code{C:/foo/bar}).")
|
||||
(license license:expat)))
|
||||
|
||||
(define-public rust-pathdiff-0.2
|
||||
(package
|
||||
(name "rust-pathdiff")
|
||||
@@ -55067,6 +55177,167 @@ can handle huge texts and memory-incoherent edits with ease.")
|
||||
rust.")
|
||||
(license license:mpl2.0)))
|
||||
|
||||
(define-public rust-rspotify-0.11
|
||||
(package
|
||||
(name "rust-rspotify")
|
||||
(version "0.11.7")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (crate-uri "rspotify" version))
|
||||
(file-name (string-append name "-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0jxpdiic1550h13j8gaqk1g3xlv3b7p7dzyjrf6xx6j8hzh74kjw"))))
|
||||
(build-system cargo-build-system)
|
||||
(arguments
|
||||
(list #:cargo-inputs
|
||||
`(("rust-async-stream" ,rust-async-stream-0.3)
|
||||
("rust-async-trait" ,rust-async-trait-0.1)
|
||||
("rust-base64" ,rust-base64-0.20)
|
||||
("rust-chrono" ,rust-chrono-0.4)
|
||||
("rust-dotenv" ,rust-dotenv-0.15)
|
||||
("rust-futures" ,rust-futures-0.3)
|
||||
("rust-getrandom" ,rust-getrandom-0.2)
|
||||
("rust-log" ,rust-log-0.4)
|
||||
("rust-maybe-async" ,rust-maybe-async-0.2)
|
||||
("rust-rspotify-http" ,rust-rspotify-http-0.11)
|
||||
("rust-rspotify-macros" ,rust-rspotify-macros-0.11)
|
||||
("rust-rspotify-model" ,rust-rspotify-model-0.11)
|
||||
("rust-serde" ,rust-serde-1)
|
||||
("rust-serde-json" ,rust-serde-json-1)
|
||||
("rust-sha2" ,rust-sha2-0.10)
|
||||
("rust-thiserror" ,rust-thiserror-1)
|
||||
("rust-url" ,rust-url-2)
|
||||
("rust-webbrowser" ,rust-webbrowser-0.8))
|
||||
#:cargo-development-inputs
|
||||
`(("rust-env-logger" ,rust-env-logger-0.10)
|
||||
("rust-futures-util" ,rust-futures-util-0.3)
|
||||
("rust-tokio" ,rust-tokio-1))
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(add-before 'check 'pre-check
|
||||
;; This test requires RSPOTIFY_CLIENT_ID and RSPOTIFY_CLIENT_SECRET
|
||||
(lambda _
|
||||
(delete-file "tests/test_with_credential.rs"))))))
|
||||
(native-inputs (list pkg-config openssl))
|
||||
(home-page "https://github.com/ramsayleung/rspotify")
|
||||
(synopsis "Spotify API wrapper")
|
||||
(description "This package provides a wrapper API for the Spotify
|
||||
streaming service.")
|
||||
(license license:expat)))
|
||||
|
||||
(define-public rust-rspotify-0.10
|
||||
(package
|
||||
(inherit rust-rspotify-0.11)
|
||||
(name "rust-rspotify")
|
||||
(version "0.10.0")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (crate-uri "rspotify" version))
|
||||
(file-name (string-append name "-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"196wd157l3fn6hlyixgffhl2x516g4fpa3s91arhcikiifsppzgf"))))
|
||||
(arguments
|
||||
`(#:skip-build? #t
|
||||
#:cargo-inputs
|
||||
(("rust-base64" ,rust-base64-0.10)
|
||||
("rust-chrono" ,rust-chrono-0.4)
|
||||
("rust-derive-builder" ,rust-derive-builder-0.7)
|
||||
("rust-dotenv" ,rust-dotenv-0.13)
|
||||
("rust-env-logger" ,rust-env-logger-0.6)
|
||||
("rust-failure" ,rust-failure-0.1)
|
||||
("rust-itertools" ,rust-itertools-0.8)
|
||||
("rust-lazy-static" ,rust-lazy-static-1)
|
||||
("rust-log" ,rust-log-0.4)
|
||||
("rust-percent-encoding" ,rust-percent-encoding-1)
|
||||
("rust-rand" ,rust-rand-0.6)
|
||||
("rust-random" ,rust-random-0.12)
|
||||
("rust-reqwest" ,rust-reqwest-0.10)
|
||||
("rust-serde" ,rust-serde-1)
|
||||
("rust-serde-derive" ,rust-serde-derive-1)
|
||||
("rust-serde-json" ,rust-serde-json-1)
|
||||
("rust-url" ,rust-url-1)
|
||||
("rust-webbrowser" ,rust-webbrowser-0.5))))))
|
||||
|
||||
(define-public rust-rspotify-http-0.11
|
||||
(package
|
||||
(name "rust-rspotify-http")
|
||||
(version "0.11.7")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (crate-uri "rspotify-http" version))
|
||||
(file-name (string-append name "-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1a1xdvnlksb0gbkyrw9q4l7fyy8ba0mfsjs71qv2r6bbpadij0d8"))))
|
||||
(build-system cargo-build-system)
|
||||
(arguments
|
||||
(list #:cargo-inputs
|
||||
`(("rust-async-trait" ,rust-async-trait-0.1)
|
||||
("rust-log" ,rust-log-0.4)
|
||||
("rust-maybe-async" ,rust-maybe-async-0.2)
|
||||
("rust-reqwest" ,rust-reqwest-0.11)
|
||||
("rust-serde-json" ,rust-serde-json-1)
|
||||
("rust-thiserror" ,rust-thiserror-1)
|
||||
("rust-ureq" ,rust-ureq-2))
|
||||
#:cargo-development-inputs
|
||||
`(("rust-rspotify-model" ,rust-rspotify-model-0.11)
|
||||
("rust-tokio" ,rust-tokio-1))))
|
||||
(native-inputs (list pkg-config openssl))
|
||||
(home-page "https://github.com/ramsayleung/rspotify")
|
||||
(synopsis "HTTP compatibility layer for RSpotify")
|
||||
(description "RSpotify is a wrapper for the Spotify Web API. This
|
||||
package contains a HTTP compatibility layer for RSpotify.")
|
||||
(license license:expat)))
|
||||
|
||||
(define-public rust-rspotify-macros-0.11
|
||||
(package
|
||||
(name "rust-rspotify-macros")
|
||||
(version "0.11.7")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (crate-uri "rspotify-macros" version))
|
||||
(file-name (string-append name "-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"00zjxnbhljak54bf5q1h09487bh7sza3mqsxk21x43q7pw5jlrkg"))))
|
||||
(build-system cargo-build-system)
|
||||
(arguments
|
||||
(list #:cargo-development-inputs
|
||||
`(("rust-serde-json" ,rust-serde-json-1))))
|
||||
(home-page "https://github.com/ramsayleung/rspotify")
|
||||
(synopsis "Macros for RSpotify")
|
||||
(description "RSpotify is a wrapper for the Spotify Web API. This crate
|
||||
contains Macros for RSpotify.")
|
||||
(license license:expat)))
|
||||
|
||||
(define-public rust-rspotify-model-0.11
|
||||
(package
|
||||
(name "rust-rspotify-model")
|
||||
(version "0.11.7")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (crate-uri "rspotify-model" version))
|
||||
(file-name (string-append name "-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1j0fy5n3f0gwq2qnn4qss0sx5kvbghfr8149jb0bp8azzvlg3gbg"))))
|
||||
(build-system cargo-build-system)
|
||||
(arguments
|
||||
(list #:cargo-inputs
|
||||
`(("rust-chrono" ,rust-chrono-0.4)
|
||||
("rust-enum-dispatch" ,rust-enum-dispatch-0.3)
|
||||
("rust-serde" ,rust-serde-1)
|
||||
("rust-serde-json" ,rust-serde-json-1)
|
||||
("rust-strum" ,rust-strum-0.24)
|
||||
("rust-thiserror" ,rust-thiserror-1))))
|
||||
(home-page "https://github.com/ramsayleung/rspotify")
|
||||
(synopsis "API endpoint response model object for RSpotify")
|
||||
(description "RSpotify is a wrapper for the Spotify Web API. This crate
|
||||
contains the API endpoint response objects.")
|
||||
(license license:expat)))
|
||||
|
||||
(define-public rust-rstar-0.9
|
||||
(package
|
||||
(name "rust-rstar")
|
||||
@@ -63718,45 +63989,6 @@ OIDs)")
|
||||
("rust-bincode" ,rust-bincode-1)
|
||||
("rust-tobj" ,rust-tobj-2))))))
|
||||
|
||||
(define-public rust-rspotify-0.10
|
||||
(package
|
||||
(name "rust-rspotify")
|
||||
(version "0.10.0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (crate-uri "rspotify" version))
|
||||
(file-name (string-append name "-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32 "196wd157l3fn6hlyixgffhl2x516g4fpa3s91arhcikiifsppzgf"))))
|
||||
(build-system cargo-build-system)
|
||||
(arguments
|
||||
`(#:skip-build? #t
|
||||
#:cargo-inputs
|
||||
(("rust-base64" ,rust-base64-0.10)
|
||||
("rust-chrono" ,rust-chrono-0.4)
|
||||
("rust-derive-builder" ,rust-derive-builder-0.7)
|
||||
("rust-dotenv" ,rust-dotenv-0.13)
|
||||
("rust-env-logger" ,rust-env-logger-0.6)
|
||||
("rust-failure" ,rust-failure-0.1)
|
||||
("rust-itertools" ,rust-itertools-0.8)
|
||||
("rust-lazy-static" ,rust-lazy-static-1)
|
||||
("rust-log" ,rust-log-0.4)
|
||||
("rust-percent-encoding" ,rust-percent-encoding-1)
|
||||
("rust-rand" ,rust-rand-0.6)
|
||||
("rust-random" ,rust-random-0.12)
|
||||
("rust-reqwest" ,rust-reqwest-0.10)
|
||||
("rust-serde" ,rust-serde-1)
|
||||
("rust-serde-derive" ,rust-serde-derive-1)
|
||||
("rust-serde-json" ,rust-serde-json-1)
|
||||
("rust-url" ,rust-url-1)
|
||||
("rust-webbrowser" ,rust-webbrowser-0.5))))
|
||||
(home-page "https://github.com/ramsayleung/rspotify")
|
||||
(synopsis "Spotify API wrapper")
|
||||
(description "This package provides wrapper API forSpotify streaming
|
||||
service.")
|
||||
(license license:expat)))
|
||||
|
||||
(define-public rust-spsc-buffer-0.1
|
||||
(package
|
||||
(name "rust-spsc-buffer")
|
||||
@@ -73479,7 +73711,7 @@ the Trust-DNS client to use rustls for TLS.")
|
||||
(uri (crate-uri "trybuild" version))
|
||||
(file-name (string-append name "-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32 "0ab7ahdx563n6kbm14pm3qnxq4fp06pz42nh5ii4acvlzycnwdh4"))))
|
||||
(base32 "17xpybcdx76dm54dk7jvr5aickc4ia66qf57bazg7myx8pf6yzcq"))))
|
||||
(arguments
|
||||
`(#:cargo-inputs
|
||||
(("rust-toml" ,rust-toml-0.5)
|
||||
|
||||
@@ -65,6 +65,7 @@
|
||||
(package
|
||||
(name "curl")
|
||||
(version "7.85.0")
|
||||
(replacement curl/fixed)
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://curl.se/download/curl-"
|
||||
@@ -154,6 +155,20 @@ tunneling, and so on.")
|
||||
"See COPYING in the distribution."))
|
||||
(home-page "https://curl.haxx.se/")))
|
||||
|
||||
(define curl/fixed
|
||||
(let ((%version "8.3.0"))
|
||||
(package
|
||||
(inherit curl)
|
||||
(version "8.3.0a") ; add lowercase 'a' for grafting
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://curl.se/download/curl-"
|
||||
%version ".tar.xz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0qza6yf20y2l4aaxkn8dfw8p3fls1mxljvdb0m8z1i6ncxvn4v9p"))
|
||||
(patches (search-patches "curl-use-ssl-cert-env.patch")))))))
|
||||
|
||||
(define-public curl-ssh
|
||||
(package/inherit curl
|
||||
(arguments
|
||||
|
||||
@@ -532,7 +532,7 @@ the in DocBook SGML DTDs.")
|
||||
(base32
|
||||
"0yd09nypswy3q4scri1dg7dr99d7gd6r2dwx0xm81l9f4y32gs0n"))))
|
||||
(build-system python-build-system)
|
||||
;; TODO: Add xfig/transfig for fig2dev utility
|
||||
;; TODO: Add fig2dev for fig2dev utility.
|
||||
(inputs
|
||||
`(("texlive" ,(texlive-updmap.cfg (list texlive-anysize
|
||||
texlive-appendix
|
||||
|
||||
@@ -765,10 +765,10 @@ configuration language which makes it trivial to write your own themes.")
|
||||
(license license:gpl3+)))
|
||||
|
||||
(define-public emacs-inspector
|
||||
(let ((commit "daff792202d36638033f83902fc0849130270d39")) ;version bump
|
||||
(let ((commit "4e85b25e3e80c9989fcf7f518606837a54d9fab6")) ;version bump
|
||||
(package
|
||||
(name "emacs-inspector")
|
||||
(version "0.33")
|
||||
(version "0.36")
|
||||
(source
|
||||
(origin
|
||||
(uri (git-reference
|
||||
@@ -776,7 +776,7 @@ configuration language which makes it trivial to write your own themes.")
|
||||
(commit commit)))
|
||||
(method git-fetch)
|
||||
(sha256
|
||||
(base32 "1wak0xd51l9iimvd1j9qg07i4bhn5fl9ncw6b6gg3fh7wk9wwpfy"))
|
||||
(base32 "05bb8ph355x8f46wbahfmg3060r13j31zq930cb1xq8i9nx8j8h4"))
|
||||
(file-name (git-file-name name version))))
|
||||
(build-system emacs-build-system)
|
||||
(arguments
|
||||
@@ -794,10 +794,10 @@ Common Lisp or Smalltalk, but for Emacs Lisp.")
|
||||
(license license:gpl3+))))
|
||||
|
||||
(define-public emacs-tree-inspector
|
||||
(let ((commit "495ef1874fba9d75842087f4acf0ebd75cf09e97"))
|
||||
(let ((commit "bbb8d2dfe84fbf857fcc1579de5a1324b09a877e"))
|
||||
(package
|
||||
(name "emacs-tree-inspector")
|
||||
(version "0.3")
|
||||
(version "0.4")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
@@ -806,7 +806,7 @@ Common Lisp or Smalltalk, but for Emacs Lisp.")
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"011pk5gr2j9m4qnv70qz63bh58ga72nqahv0zkf2qpbr2a5df09c"))))
|
||||
"01ad4r97hfr9nndbifyggscb5108y7h2qm95jsmh5b9qgzqm39nx"))))
|
||||
(build-system emacs-build-system)
|
||||
(arguments
|
||||
(list
|
||||
@@ -814,7 +814,17 @@ Common Lisp or Smalltalk, but for Emacs Lisp.")
|
||||
#:test-command #~(list "emacs" "-Q" "--batch"
|
||||
"-L" "."
|
||||
"-l" "tree-inspector-tests.el"
|
||||
"-f" "ert-run-tests-batch-and-exit")))
|
||||
"-f" "ert-run-tests-batch-and-exit")
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(add-after 'unpack 'fix-library-loading
|
||||
;; The library calls `hash-table-keys', which is not
|
||||
;; auto-loaded. Explicitly require `subr-x', where it is
|
||||
;; defined.
|
||||
(lambda _
|
||||
(substitute* "tree-inspector.el"
|
||||
(("\\(require 'cl-lib\\)" line)
|
||||
(string-append line "(require 'subr-x)"))))))))
|
||||
(propagated-inputs (list emacs-treeview))
|
||||
(home-page "https://github.com/mmontone/emacs-tree-inspector")
|
||||
(synopsis "Inspection tool for Emacs Lisp objects that uses a tree view")
|
||||
@@ -1269,13 +1279,13 @@ face properties and allows configuration of faces and colors.")
|
||||
(define-public emacs-project
|
||||
(package
|
||||
(name "emacs-project")
|
||||
(version "0.9.8")
|
||||
(version "0.10.0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://elpa.gnu.org/packages/project-" version ".tar"))
|
||||
(sha256
|
||||
(base32 "0i1q9blvpj3bygjh98gv0kqn2rm01b8lqp9vra82sy3hzzj39pyx"))))
|
||||
(base32 "060iw06c60vjy1bp771zz0n24x4s7kpyvdjs51147v2kz35n08pb"))))
|
||||
(build-system emacs-build-system)
|
||||
(propagated-inputs (list emacs-xref))
|
||||
(home-page "https://elpa.gnu.org/packages/project.html")
|
||||
@@ -1652,14 +1662,14 @@ code files.")
|
||||
(define-public emacs-mct
|
||||
(package
|
||||
(name "emacs-mct")
|
||||
(version "0.5.1")
|
||||
(version "1.0.0")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://gitlab.com/protesilaos/mct")
|
||||
(commit version)))
|
||||
(sha256
|
||||
(base32 "0vmlss546z0x8y26cxb1iis926pwjfv466gwm0clb8jfqkvr0qmh"))
|
||||
(base32 "1xagrc06rvzsrv1k0arx8d5jxy1x4s9rp46gwfmnl1732irx8z3r"))
|
||||
(file-name (git-file-name name version))))
|
||||
(native-inputs (list texinfo))
|
||||
(build-system emacs-build-system)
|
||||
@@ -4263,7 +4273,7 @@ searches. Unlike code@{emacs-wiki.el}, it can be combined with any format.")
|
||||
(define-public emacs-bm
|
||||
(package
|
||||
(name "emacs-bm")
|
||||
(version "201905")
|
||||
(version "202309")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@@ -4272,8 +4282,14 @@ searches. Unlike code@{emacs-wiki.el}, it can be combined with any format.")
|
||||
(commit version)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "180b3rc13asrmsdh7v405d54jkrininvaj52xhp71vw91ng51dkn"))))
|
||||
(base32 "1a47dcda196sb6qx45w94d0vfzyfprfs3g7yj0scjmna79rr3fqa"))))
|
||||
(build-system emacs-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:tests? #true
|
||||
#:test-command #~(list "emacs" "-Q" "--batch"
|
||||
"-l" "bm-tests.el"
|
||||
"-f" "ert-run-tests-batch-and-exit")))
|
||||
(home-page "https://github.com/joodland/bm")
|
||||
(synopsis "Visual bookmarks for Emacs")
|
||||
(description "This package provides visible, buffer local bookmarks and
|
||||
@@ -5005,14 +5021,14 @@ window).")
|
||||
(define-public emacs-mmm-mode
|
||||
(package
|
||||
(name "emacs-mmm-mode")
|
||||
(version "0.5.9")
|
||||
(version "0.5.10")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://elpa.gnu.org/packages/"
|
||||
"mmm-mode-" version ".tar"))
|
||||
(sha256
|
||||
(base32 "12fss1ccb66xc87m5wpr3vg7bfrzz5m0q6s7pa0avvhsm2f8r2yh"))))
|
||||
(base32 "1ny9gm87qah4qy0iphw2nlhz2pfc87hzzsv58lrxl18gr69qhndi"))))
|
||||
(build-system emacs-build-system)
|
||||
(home-page "https://github.com/purcell/mmm-mode")
|
||||
(synopsis "Allow multiple major modes in an Emacs buffer")
|
||||
@@ -6094,7 +6110,7 @@ files and directories.")
|
||||
(define-public emacs-fountain-mode
|
||||
(package
|
||||
(name "emacs-fountain-mode")
|
||||
(version "3.6.2")
|
||||
(version "3.6.3")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@@ -6103,7 +6119,7 @@ files and directories.")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "0mml0in6xxhfv4mdb7rl9k8m6xwmrjl5bb301p8d56sfng982pdl"))))
|
||||
(base32 "18s1dp2n9q6f3py3f1yc3918yqpncdkwkgi3b3bc2868n6sw0n84"))))
|
||||
(arguments
|
||||
(list
|
||||
#:phases #~(modify-phases %standard-phases
|
||||
@@ -6766,7 +6782,7 @@ then refine or modify the search results.")
|
||||
(define-public emacs-inf-ruby
|
||||
(package
|
||||
(name "emacs-inf-ruby")
|
||||
(version "2.5.2")
|
||||
(version "2.8.0")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@@ -6775,7 +6791,7 @@ then refine or modify the search results.")
|
||||
(commit version)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "0a1hhvfbl6mq8rjsi77fg9fh5a91hi5scjrg9rjqc5ffbql67y0v"))))
|
||||
(base32 "0dxjcr34xsa0m25yw8pp4iwjq8cqdgs6r8ls4lwfb69rnii7jmn5"))))
|
||||
(build-system emacs-build-system)
|
||||
(home-page "https://github.com/nonsequitur/inf-ruby")
|
||||
(synopsis "Provides a REPL buffer connected to a Ruby subprocess in Emacs")
|
||||
@@ -8519,20 +8535,19 @@ user.")
|
||||
(define-public emacs-subed
|
||||
(package
|
||||
(name "emacs-subed")
|
||||
(version "1.2.3")
|
||||
(version "1.2.4")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://elpa.nongnu.org/nongnu/subed-"
|
||||
version ".tar"))
|
||||
(sha256
|
||||
(base32
|
||||
"0np4wp7pmpayz8r9p3cl7z1i7yfq8xmkn862n9d104szf4ffk0if"))))
|
||||
"05pnjdrf9gq32bayvbd0yvp1lxpwj2xsarcy3s2jjb6zcgm6djyb"))))
|
||||
(arguments
|
||||
(list
|
||||
#:tests? #t
|
||||
#:test-command #~(list "make" "test-only")))
|
||||
(native-inputs
|
||||
(list emacs-buttercup))
|
||||
(native-inputs (list emacs-buttercup))
|
||||
(build-system emacs-build-system)
|
||||
(home-page "https://elpa.nongnu.org/nongnu/subed.html")
|
||||
(synopsis "Major mode for editing subtitles")
|
||||
@@ -8646,7 +8661,8 @@ by a query, so both a link can refer to several mails.")
|
||||
(uri (string-append "https://elpa.gnu.org/packages/debbugs-"
|
||||
version ".tar"))
|
||||
(sha256
|
||||
(base32 "1rzv13shadbvy583vjj4zg13v920zpiqrsnn10r3cqqyli89ivn2"))))
|
||||
(base32 "1rzv13shadbvy583vjj4zg13v920zpiqrsnn10r3cqqyli89ivn2"))
|
||||
(patches (search-patches "emacs-debbugs-keep-patch-subject.patch"))))
|
||||
(build-system emacs-build-system)
|
||||
(arguments '(#:include '("\\.el$" "\\.wsdl$" "\\.info$")))
|
||||
(propagated-inputs
|
||||
@@ -9032,7 +9048,7 @@ languages.")
|
||||
(define-public emacs-irony-mode
|
||||
(package
|
||||
(name "emacs-irony-mode")
|
||||
(version "1.5.0")
|
||||
(version "1.6.0")
|
||||
(home-page "https://github.com/Sarcasm/irony-mode")
|
||||
(source
|
||||
(origin
|
||||
@@ -9042,7 +9058,7 @@ languages.")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "1ilvfqn7hzrjjy2zrv08dbdnmgksdgsmrdcvx05s8704430ag0pb"))))
|
||||
(base32 "1zwmarjy9lzi57m82dw67aj69cn4nscdgp4fm8glx1krk9xh35hp"))))
|
||||
(build-system emacs-build-system)
|
||||
(arguments
|
||||
(list
|
||||
@@ -10369,7 +10385,7 @@ sgml/html integration, and indentation (working with sgml).")
|
||||
(define-public emacs-jinx
|
||||
(package
|
||||
(name "emacs-jinx")
|
||||
(version "0.8")
|
||||
(version "0.9")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@@ -10380,7 +10396,7 @@ sgml/html integration, and indentation (working with sgml).")
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"1y097rnf9zg26jf4vh74a0laddfp4x6pp1fjqs3xqgwc0cmdq59w"))))
|
||||
"0xayrqnsws2n2p0qbdl291fva4ljp3kqrr591xbq1wr6n95hfyn5"))))
|
||||
(build-system emacs-build-system)
|
||||
(arguments
|
||||
(list
|
||||
@@ -11411,40 +11427,39 @@ them easier to distinguish from other, less important buffers.")
|
||||
(license license:expat)))
|
||||
|
||||
(define-public emacs-embark
|
||||
(let ((commit "c914efe881df2bc6a2bd35cc7ee975d3e9d4a418")) ;version bump
|
||||
(package
|
||||
(name "emacs-embark")
|
||||
(version "0.22.1")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/oantolin/embark")
|
||||
(commit commit)))
|
||||
(sha256
|
||||
(base32 "1l288w27wav0r71hprqi74r77042d1fx3p1zmi05vl6z6230h48b"))
|
||||
(file-name (git-file-name name version))))
|
||||
(build-system emacs-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(add-after 'install 'makeinfo
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
(invoke "emacs"
|
||||
"--batch"
|
||||
"--eval=(require 'ox-texinfo)"
|
||||
"--eval=(find-file \"README.org\")"
|
||||
"--eval=(org-texinfo-export-to-info)")
|
||||
(install-file "embark.info"
|
||||
(string-append #$output "/share/info")))))))
|
||||
(native-inputs (list texinfo))
|
||||
(propagated-inputs
|
||||
(list emacs-avy emacs-consult))
|
||||
(home-page "https://github.com/oantolin/embark")
|
||||
(synopsis "Emacs mini-buffer actions rooted in keymaps")
|
||||
(description
|
||||
"This package provides a sort of right-click contextual menu for Emacs
|
||||
(package
|
||||
(name "emacs-embark")
|
||||
(version "0.23")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/oantolin/embark")
|
||||
(commit version)))
|
||||
(sha256
|
||||
(base32 "1dmsaw1m819kzmai45c4cqh5lyyha451f7dxzwwfz9crmzg2w5sf"))
|
||||
(file-name (git-file-name name version))))
|
||||
(build-system emacs-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(add-after 'install 'makeinfo
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
(invoke "emacs"
|
||||
"--batch"
|
||||
"--eval=(require 'ox-texinfo)"
|
||||
"--eval=(find-file \"README.org\")"
|
||||
"--eval=(org-texinfo-export-to-info)")
|
||||
(install-file "embark.info"
|
||||
(string-append #$output "/share/info")))))))
|
||||
(native-inputs (list texinfo))
|
||||
(propagated-inputs
|
||||
(list emacs-avy emacs-consult))
|
||||
(home-page "https://github.com/oantolin/embark")
|
||||
(synopsis "Emacs mini-buffer actions rooted in keymaps")
|
||||
(description
|
||||
"This package provides a sort of right-click contextual menu for Emacs
|
||||
offering you relevant @emph{actions} to use on a @emph{target} determined by
|
||||
the context.
|
||||
|
||||
@@ -11458,7 +11473,7 @@ get offered actions like deleting, copying, renaming, visiting in another
|
||||
window, running a shell command on the file, etc. For buffers the actions
|
||||
include switching to or killing the buffer. For package names the actions
|
||||
include installing, removing or visiting the homepage.")
|
||||
(license license:gpl3+))))
|
||||
(license license:gpl3+)))
|
||||
|
||||
(define-public emacs-prescient
|
||||
(package
|
||||
@@ -12951,7 +12966,7 @@ allowing unprefixed keys to insert their respective characters as expected.")
|
||||
(define-public emacs-clojure-mode
|
||||
(package
|
||||
(name "emacs-clojure-mode")
|
||||
(version "5.16.2")
|
||||
(version "5.17.0")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@@ -12960,7 +12975,7 @@ allowing unprefixed keys to insert their respective characters as expected.")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "0axqdzq4rjjxsxx4b8n2g2gf82wrznbzdilp2kv831wyl33z29mk"))))
|
||||
(base32 "0knx3y53z0dn49xisa78bac55vhhkwxs2iw3jvalx41wfwvkirxc"))))
|
||||
(build-system emacs-build-system)
|
||||
(native-inputs
|
||||
(list emacs-buttercup emacs-dash emacs-paredit emacs-s))
|
||||
@@ -13003,7 +13018,7 @@ Clojure projects from templates.")
|
||||
(define-public emacs-clj-refactor
|
||||
(package
|
||||
(name "emacs-clj-refactor")
|
||||
(version "3.9.1")
|
||||
(version "3.9.4")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@@ -13012,7 +13027,7 @@ Clojure projects from templates.")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "1c7ndc81j3pljgf7n188f3mm6vm3gyiplh4mnb4y5wbkbnpiwgdc"))))
|
||||
(base32 "1j9pkkpnbvyl9p45dycngdiq2kyj6bmyb709pdxj3nar2d8ryl1h"))))
|
||||
(build-system emacs-build-system)
|
||||
(propagated-inputs
|
||||
(list emacs-cider
|
||||
@@ -13967,7 +13982,7 @@ much easier.")
|
||||
(define-public emacs-elfeed-protocol
|
||||
(package
|
||||
(name "emacs-elfeed-protocol")
|
||||
(version "0.8.1")
|
||||
(version "0.9.0")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@@ -13976,7 +13991,7 @@ much easier.")
|
||||
(commit version)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "0k9rkghp9rg7aidmx7q0n4wpb9z5cwr7j8z167yzaqgf9s3y4jj2"))))
|
||||
(base32 "0cgq280gxw40vxn2pvax9k5k22gd1kwsjw4yl35206d3mb9wb0fa"))))
|
||||
(build-system emacs-build-system)
|
||||
(propagated-inputs
|
||||
(list emacs-elfeed))
|
||||
@@ -14291,8 +14306,8 @@ indentation guides in Emacs:
|
||||
;; https://github.com/jorgenschaefer/elpy/issues/1824
|
||||
;; https://github.com/jorgenschaefer/elpy/pull/1951
|
||||
;; https://github.com/jorgenschaefer/elpy/issues/1940.
|
||||
(let ((commit "1746e7009000b7635c0ea6f1559018143aa61642")
|
||||
(revision "1"))
|
||||
(let ((commit "7ff8ffa918411887d165764f7a5a12bc46646e73")
|
||||
(revision "2"))
|
||||
(package
|
||||
(name "emacs-elpy")
|
||||
(version (git-version "1.35.0" revision commit))
|
||||
@@ -14304,7 +14319,8 @@ indentation guides in Emacs:
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"120xzzaa8jxls3lri6d53zq6gafnkc6d9mlg09an334kkmh8k2fc"))))
|
||||
"0lh8w5a1abxaa7lf1c4yzgr0sh9szcwdnwd8w2004hv6mrcmyqc6"))
|
||||
(patches (search-patches "emacs-elpy-dup-test-name.patch"))))
|
||||
(build-system emacs-build-system)
|
||||
(arguments
|
||||
`(#:include (cons* "^elpy/[^/]+\\.py$" "^snippets\\/" %default-include)
|
||||
@@ -14339,6 +14355,12 @@ indentation guides in Emacs:
|
||||
(string-append all " :expected-result :failed\n")))
|
||||
(substitute* "elpy-shell-echo-inputs-and-outputs-test.el"
|
||||
(("elpy-shell-should-echo-outputs.*" all)
|
||||
(string-append all " :expected-result :failed\n")))
|
||||
;; This test started failing with Emacs 29 (see:
|
||||
;; https://github.com/jorgenschaefer/elpy/issues/2032).
|
||||
(substitute* "elpy-folding-fold-blocks-test.el"
|
||||
(("elpy-fold-at-point-should-NOT-fold-and-unfold-functions\
|
||||
-from-after.*" all)
|
||||
(string-append all " :expected-result :failed\n"))))))
|
||||
;; The default environment of the RPC uses Virtualenv to install
|
||||
;; Python dependencies from PyPI. We don't want/need this in Guix.
|
||||
@@ -14684,7 +14706,7 @@ that uses the standard completion function completing-read.")
|
||||
(define-public emacs-yaml
|
||||
(package
|
||||
(name "emacs-yaml")
|
||||
(version "0.5.2")
|
||||
(version "0.5.4")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@@ -14693,7 +14715,7 @@ that uses the standard completion function completing-read.")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "05ps0lsapi0xymkyvqwnxhgkp6qzbfz1xpgq6s9d6g0ycc2fbmcm"))))
|
||||
(base32 "10sdcihgd8yvdf7yab5fsvq65amp25msjh7mbrxgk3w4zc96fxzi"))))
|
||||
(build-system emacs-build-system)
|
||||
(home-page "https://github.com/zkry/yaml.el")
|
||||
(synopsis "YAML parser in Elisp")
|
||||
@@ -14706,7 +14728,7 @@ parsing utility.")
|
||||
(define-public emacs-yaml-mode
|
||||
(package
|
||||
(name "emacs-yaml-mode")
|
||||
(version "0.0.15")
|
||||
(version "0.0.16")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@@ -14715,7 +14737,7 @@ parsing utility.")
|
||||
(commit version)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "0gsa153yp8lmwrvcc3nzpw5lj037y7q2nm23k5k404r5as4k355l"))))
|
||||
(base32 "0jqg2hmh7qsgqywwd6fy3k8z8j45nqhpdzr3hw4hd5s2hry3zhg1"))))
|
||||
(build-system emacs-build-system)
|
||||
(home-page "https://github.com/yoshiki/yaml-mode")
|
||||
(synopsis "Major mode for editing YAML files")
|
||||
@@ -14776,7 +14798,7 @@ Emacs.")
|
||||
(define-public emacs-web-mode
|
||||
(package
|
||||
(name "emacs-web-mode")
|
||||
(version "17.2.1")
|
||||
(version "17.3.13")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@@ -14785,7 +14807,7 @@ Emacs.")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "0sd2ysysn8x4iwz2fhnvh8knr3pdqgkvhkhsl948smmfl0dwj42f"))))
|
||||
(base32 "0d4j97vywfqabc896w8d30niig19lg2q1bdd3kxyvz3b8027zn4g"))))
|
||||
(build-system emacs-build-system)
|
||||
(synopsis "Major mode for editing web templates")
|
||||
(description "Web mode is an Emacs major mode for editing web templates
|
||||
@@ -14851,7 +14873,7 @@ ack, ag, helm and pt.")
|
||||
(define-public emacs-helm
|
||||
(package
|
||||
(name "emacs-helm")
|
||||
(version "3.9.4")
|
||||
(version "3.9.5")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@@ -14860,7 +14882,7 @@ ack, ag, helm and pt.")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "0p3031qa3vdy483yw4hvhrrs1xcfhgl7f0ab5m8kixfnr3facad9"))))
|
||||
(base32 "067nc728dfbwzfs07z26cwcqjj00l4lvw3n9bl1zw094v0x6hxxm"))))
|
||||
(build-system emacs-build-system)
|
||||
(propagated-inputs
|
||||
(list emacs-async emacs-popup))
|
||||
@@ -15542,7 +15564,7 @@ Lua programming language}.")
|
||||
(define-public emacs-ebuild-mode
|
||||
(package
|
||||
(name "emacs-ebuild-mode")
|
||||
(version "1.66")
|
||||
(version "1.67")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
@@ -15551,7 +15573,7 @@ Lua programming language}.")
|
||||
"ebuild-mode-" version ".tar.xz"))
|
||||
(file-name (string-append name "-" version ".tar.xz"))
|
||||
(sha256
|
||||
(base32 "1n36avqbr8yr712950yvzva01b28nl5n3k8r6pbx8mjjlaj5hvqf"))))
|
||||
(base32 "0hbx3vrv2h2vfi45q4mj6z9kqsma530gxjsr5hyd4bj1xnk4gb76"))))
|
||||
(build-system emacs-build-system)
|
||||
(arguments
|
||||
(list
|
||||
@@ -16626,7 +16648,7 @@ by zenburn, sinburn and similar themes, but slowly diverging from them.")
|
||||
(define-public emacs-dracula-theme
|
||||
(package
|
||||
(name "emacs-dracula-theme")
|
||||
(version "1.8.0")
|
||||
(version "1.8.1")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@@ -16635,7 +16657,7 @@ by zenburn, sinburn and similar themes, but slowly diverging from them.")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "0zxcfcgkssjpnwa3s0ryz6j7c8cmdpjhza3x9wycfahq35qf2r0k"))))
|
||||
(base32 "0mb7pix1wbmg4laba06fvcb8q822584iq0cw8mwf0nzaf1yh12l8"))))
|
||||
(build-system emacs-build-system)
|
||||
(home-page "https://draculatheme.com/")
|
||||
(synopsis "Dark theme for Emacs")
|
||||
@@ -16717,14 +16739,14 @@ editing nginx config files.")
|
||||
(define-public emacs-stream
|
||||
(package
|
||||
(name "emacs-stream")
|
||||
(version "2.2.5")
|
||||
(version "2.3.0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://elpa.gnu.org/packages/"
|
||||
"stream-" version ".tar"))
|
||||
(sha256
|
||||
(base32 "00c3n4gyxzv7vczqms0d62kl8zsmjfyxa92mwxn2snyx857a9jfw"))))
|
||||
(base32 "1jvk5j0wn2f4dxnyqji85f8cgbpyrxk02mz5dzyw4xlqr0d9zc9n"))))
|
||||
(build-system emacs-build-system)
|
||||
(home-page "https://elpa.gnu.org/packages/stream.html")
|
||||
(synopsis "Implementation of streams for Emacs")
|
||||
@@ -16864,14 +16886,14 @@ such files while providing facilities to link between them.")
|
||||
(define-public emacs-denote-menu
|
||||
(package
|
||||
(name "emacs-denote-menu")
|
||||
(version "1.1.1")
|
||||
(version "1.2.0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://elpa.gnu.org/packages/"
|
||||
"denote-menu-" version ".tar"))
|
||||
(sha256
|
||||
(base32 "12ry0rv45hv1vrwx9wih72s9h0f3r18xssnkzfa9ilp77kgbas5q"))))
|
||||
(base32 "1zm68bz6hya360g5zvs4r5naznykamgzqxhvfhpfyxb70hsnmx5w"))))
|
||||
(build-system emacs-build-system)
|
||||
(propagated-inputs (list emacs-denote))
|
||||
(home-page "https://www.scss.tcd.ie/~sulimanm/posts/denote-menu.html")
|
||||
@@ -18491,16 +18513,16 @@ containing words from the Rime project.")
|
||||
(define-public emacs-pyim
|
||||
(package
|
||||
(name "emacs-pyim")
|
||||
(version "5.3.2")
|
||||
(version "5.3.3")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://elpa.gnu.org/packages/pyim-" version ".tar"))
|
||||
(sha256
|
||||
(base32 "13irkmhlfq99glyy0vhj559si5672cqcysjxlxn7lvckxr298vzc"))))
|
||||
(base32 "04dz3gdqq6pcxycpzkzzmhbg6lk629v41y64jlh6si21jwfr6wnx"))))
|
||||
(build-system emacs-build-system)
|
||||
(propagated-inputs
|
||||
(list emacs-async emacs-popup emacs-posframe emacs-xr))
|
||||
(list emacs-async emacs-posframe emacs-xr))
|
||||
(home-page "https://github.com/tumashu/pyim")
|
||||
(synopsis "Chinese input method")
|
||||
(description
|
||||
@@ -19307,7 +19329,7 @@ variable instead, to remind you of that variable's meaning.")
|
||||
(define-public emacs-eldoc-box
|
||||
(package
|
||||
(name "emacs-eldoc-box")
|
||||
(version "1.10.1")
|
||||
(version "1.11.1")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
@@ -19316,7 +19338,7 @@ variable instead, to remind you of that variable's meaning.")
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"076bbn2nnrx02zk2hs4b39q0w3s7afbgfdxnwk2y2s8lkq1l6l87"))))
|
||||
"0fzcyjg61icwjw1ml3p9qzd4a10vl7n1hqdpynqr5nlq9ih7rrgq"))))
|
||||
(build-system emacs-build-system)
|
||||
(home-page "https://github.com/casouri/eldoc-box")
|
||||
(synopsis "Childframe doc for eglot and anything that uses eldoc")
|
||||
@@ -20106,7 +20128,7 @@ which avoids some of the issues with using Emacs’s built-in Url library.")
|
||||
(define-public emacs-ement
|
||||
(package
|
||||
(name "emacs-ement")
|
||||
(version "0.11")
|
||||
(version "0.13")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@@ -20115,7 +20137,7 @@ which avoids some of the issues with using Emacs’s built-in Url library.")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "08wsqld0qic2gn5b6vhxrpbbnabgb2mlrlcxww6dgf25phw82r0l"))))
|
||||
(base32 "0bcsg8mp1z35q6k7zwm7p2ka8gvs9kkazmyjcsk9siqz4mlarv7s"))))
|
||||
(build-system emacs-build-system)
|
||||
(arguments
|
||||
(list #:emacs emacs)) ;need libxml support
|
||||
@@ -22121,7 +22143,7 @@ match and total match information in the mode-line in various search modes.")
|
||||
(define-public emacs-pg
|
||||
(package
|
||||
(name "emacs-pg")
|
||||
(version "0.20")
|
||||
(version "0.24")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference (url "https://github.com/emarsden/pg-el")
|
||||
@@ -22129,7 +22151,7 @@ match and total match information in the mode-line in various search modes.")
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"0a38rvl5rwfb77p4xxmjhrs6s67pfkzjfm0pdxvf0b6xh7h404kh"))))
|
||||
"0228yig42g3x79gj1yakgmsj119v0agzvyn888nq6qgcd04i1w0d"))))
|
||||
(build-system emacs-build-system)
|
||||
(home-page "https://github.com/emarsden/pg-el")
|
||||
(synopsis "Emacs Lisp interface for PostgreSQL")
|
||||
@@ -22524,7 +22546,7 @@ for defining recurring tasks and easily scheduling them.")
|
||||
(define-public emacs-org-super-agenda
|
||||
(package
|
||||
(name "emacs-org-super-agenda")
|
||||
(version "1.2")
|
||||
(version "1.3")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@@ -22533,24 +22555,24 @@ for defining recurring tasks and easily scheduling them.")
|
||||
(commit version)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "10l9h2n09cql4ih7nc0ma3ghdsq9l5v9xlj1lg7kq67icdwjlsvy"))))
|
||||
(base32 "07fv4zgmfc8ppppbr7ylhx89wcw6r6vmz4a6pg0iy4v7sn5pp1wa"))))
|
||||
(build-system emacs-build-system)
|
||||
(arguments
|
||||
`(#:tests? #f ;FIXNE: Tests try to read "~/org/test.org"
|
||||
#:test-command '("test/run" "--debug")
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-after 'unpack 'prepare-for-tests.el
|
||||
(lambda _
|
||||
(make-file-writable "test/test.el")
|
||||
(emacs-substitute-variables "test/test.el"
|
||||
("org-super-agenda-test-results-file"
|
||||
(string-append (getcwd) "/test/results.el")))
|
||||
;; The following tests fail (see:
|
||||
;; https://github.com/alphapapa/org-super-agenda/issues/183).
|
||||
(substitute* "test/test.el"
|
||||
((".*org-super-agenda-test--:auto-(map|tags).*" all)
|
||||
(string-append all " (skip-unless nil)\n"))))))))
|
||||
(list
|
||||
#:tests? #true
|
||||
#:test-command #~(list "test/run" "--debug")
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(add-after 'unpack 'prepare-for-tests.el
|
||||
(lambda _
|
||||
(make-file-writable "test/test.el")
|
||||
(emacs-substitute-variables "test/test.el"
|
||||
("org-super-agenda-test-results-file"
|
||||
(string-append (getcwd) "/test/results.el")))
|
||||
;; The following tests fail.
|
||||
(substitute* "test/test.el"
|
||||
((".* org-super-agenda-test--with-retained-sorting .*" all)
|
||||
(string-append all " (skip-unless nil)\n"))))))))
|
||||
(native-inputs
|
||||
(list emacs-f util-linux))
|
||||
(propagated-inputs
|
||||
@@ -22826,7 +22848,7 @@ interactive commands and functions, such as @code{completing-read}.")
|
||||
(define-public emacs-org-ql
|
||||
(package
|
||||
(name "emacs-org-ql")
|
||||
(version "0.7")
|
||||
(version "0.7.2")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
@@ -22834,7 +22856,7 @@ interactive commands and functions, such as @code{completing-read}.")
|
||||
(commit version)))
|
||||
(sha256
|
||||
(base32
|
||||
"092ckddjbs5d3h6w5x2zkpnm0qzcl00lb8q2656wa81q1kf6928k"))
|
||||
"1nxjhk0yd0njlscnxvsxnlf1wy6027spcaks64qgvnrzzq9vnzrj"))
|
||||
(file-name (git-file-name name version))))
|
||||
(build-system emacs-build-system)
|
||||
(arguments
|
||||
@@ -22842,7 +22864,7 @@ interactive commands and functions, such as @code{completing-read}.")
|
||||
#:tests? #t
|
||||
#:test-command #~(list "buttercup" "-L" ".")))
|
||||
(native-inputs
|
||||
(list emacs-buttercup emacs-with-simulated-input))
|
||||
(list emacs-buttercup emacs-with-simulated-input emacs-xr))
|
||||
(propagated-inputs
|
||||
(list emacs-dash
|
||||
emacs-f
|
||||
@@ -23441,7 +23463,7 @@ given function is invoked.")
|
||||
(define-public emacs-datetime
|
||||
(package
|
||||
(name "emacs-datetime")
|
||||
(version "0.8")
|
||||
(version "0.9.1")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@@ -23450,7 +23472,7 @@ given function is invoked.")
|
||||
(commit version)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "01byg5c6ffhgpaiccdg1g5fkh1hk92br3hw3hpjqpwwpj9skg4yz"))))
|
||||
(base32 "0d918312gpdiyx7zq8kdy19bdww6jqg94hs4j5l0n63bwrxsqdx2"))))
|
||||
(build-system emacs-build-system)
|
||||
(arguments
|
||||
`(#:include (cons "^[^/]*\\.extmap$" %default-include)))
|
||||
@@ -24453,7 +24475,7 @@ powerful Org contents.")
|
||||
(define-public emacs-org-re-reveal
|
||||
(package
|
||||
(name "emacs-org-re-reveal")
|
||||
(version "3.19.2")
|
||||
(version "3.23.0")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@@ -24462,7 +24484,7 @@ powerful Org contents.")
|
||||
(commit version)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "06i7a64yqlcwzpbk7fdsz16q99nxfizhl4944cc7mg7hh53fbqrs"))))
|
||||
(base32 "1ss71iy1xnhr3p4mmfbnbgvp7kjqxpqag49f851wgmmwwg8gajvd"))))
|
||||
(build-system emacs-build-system)
|
||||
(propagated-inputs
|
||||
(list emacs-htmlize emacs-org))
|
||||
@@ -24692,7 +24714,7 @@ and doesn't require memorisation of commands.
|
||||
(define-public emacs-logview
|
||||
(package
|
||||
(name "emacs-logview")
|
||||
(version "0.17")
|
||||
(version "0.17.1")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@@ -24701,7 +24723,7 @@ and doesn't require memorisation of commands.
|
||||
(commit version)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "0i23hyxypagz0rs7wb5l77xwz38wxng21p57n5f0vnz4p24yv108"))))
|
||||
(base32 "12vahr4nln20yflxbav9q7y0clhni28h2cajji8q11jyrd4w84jx"))))
|
||||
(propagated-inputs
|
||||
(list emacs-datetime emacs-extmap))
|
||||
(build-system emacs-build-system)
|
||||
@@ -27905,30 +27927,41 @@ and comments.")
|
||||
|
||||
(define-public emacs-yeetube
|
||||
(package
|
||||
(name "emacs-yeetube")
|
||||
(version "1.4.2")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://git.sr.ht/~thanosapollo/yeetube.el")
|
||||
(commit version)))
|
||||
(sha256
|
||||
(base32
|
||||
"0vfap6sri6qnswrjsp6qvmrp98bvrfh58gwdqbjiakq1fzvcrm03"))
|
||||
(file-name (git-file-name name version))))
|
||||
(build-system emacs-build-system)
|
||||
(inputs
|
||||
(list mpv yt-dlp))
|
||||
(home-page "https://sr.ht/~thanosapollo/yeetube.el")
|
||||
(synopsis "Youtube & Invidious front-end for Emacs")
|
||||
(description
|
||||
"This package offers an Emacs interface that allows you to search YouTube
|
||||
or an Invidious instance for a specific query. The search results are shown as
|
||||
links in an org-mode buffer. The videos can be opened to a user-defined video
|
||||
player(by default mpv) or downloaded using yt-dlp. This package also includes
|
||||
a yt-dlp front-end.")
|
||||
(license license:gpl3+)))
|
||||
(name "emacs-yeetube")
|
||||
(version "2.0.5")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://git.thanosapollo.com/yeetube")
|
||||
(commit version)))
|
||||
(sha256
|
||||
(base32
|
||||
"1pb6pb624icnjp7210vqrxj4sb38kydfaxc88bj1xmk1dh332h1k"))
|
||||
(file-name (git-file-name name version))))
|
||||
(build-system emacs-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(add-after 'unpack 'locate-binaries
|
||||
(lambda* (#:key inputs #:allow-other-keys)
|
||||
(emacs-substitute-variables "yeetube.el"
|
||||
("yeetube-ytdlp"
|
||||
(search-input-file inputs "/bin/yt-dlp")))
|
||||
(emacs-substitute-variables "yeetube-mpv.el"
|
||||
("yeetube-mpv-path"
|
||||
(search-input-file inputs "/bin/mpv"))))))))
|
||||
(inputs (list mpv yt-dlp))
|
||||
(home-page "https://thanosapollo.com/blog/yeetube/")
|
||||
(synopsis "Youtube and Invidious front-end for Emacs")
|
||||
(description
|
||||
"This package offers an Emacs interface that allows you to search YouTube
|
||||
or an Invidious instance for a specific query. The search results are shown
|
||||
as links in an Org mode buffer. The videos can be opened to a user-defined
|
||||
video player (by default @command{mpv}) or downloaded using @command{yt-dlp}.
|
||||
This package also includes a @code{yt-dlp} front-end.")
|
||||
(license license:gpl3+)))
|
||||
|
||||
(define-public emacs-org-web-tools
|
||||
(package
|
||||
@@ -29431,7 +29464,7 @@ interface to attach and interact with the processes.")
|
||||
(define-public emacs-dtrt-indent
|
||||
(package
|
||||
(name "emacs-dtrt-indent")
|
||||
(version "1.14")
|
||||
(version "1.15")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
@@ -29440,7 +29473,7 @@ interface to attach and interact with the processes.")
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"19a1zsgipw2klwkjq8cxcjrv0lwfkgvyw57ixs43bxhfr315jfrm"))))
|
||||
"1vddrpplc7887gcfg7d52fv1nxv6sgn3w310gr06c6nfk3lwas9y"))))
|
||||
(build-system emacs-build-system)
|
||||
(home-page "https://github.com/jscheid/dtrt-indent")
|
||||
(synopsis "Minor mode that guesses the indentation offset")
|
||||
@@ -31308,7 +31341,7 @@ current tree.")
|
||||
(define-public emacs-org-dynamic-agenda
|
||||
(package
|
||||
(name "emacs-org-dynamic-agenda")
|
||||
(version "0.2.0")
|
||||
(version "0.3.1")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@@ -31317,7 +31350,7 @@ current tree.")
|
||||
(commit version)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "1yw5ns7ar5mbj8yfhd6m5kigssb3csxjhwvmjggksq1557w1ypmx"))))
|
||||
(base32 "0g59ckcrc9qd0h78qwq4qm3kn97nvnc2a0yj4g3fh74wr1mg80ad"))))
|
||||
(build-system emacs-build-system)
|
||||
(arguments
|
||||
(list #:include
|
||||
@@ -31788,14 +31821,14 @@ well as an option for visually flashing evaluated s-expressions.")
|
||||
(define-public emacs-tramp
|
||||
(package
|
||||
(name "emacs-tramp")
|
||||
(version "2.6.1.2")
|
||||
(version "2.6.1.3")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://elpa.gnu.org/packages/"
|
||||
"tramp-" version ".tar"))
|
||||
(sha256
|
||||
(base32 "0nazcrpkwy59dxbyzarj75zvz7vh4pgq4yzqgf6zfbvqp7q73wbn"))))
|
||||
(base32 "0z7q55yilwicgzl2m69r275pq6bzpyksxcjaf8fb3bcr3zvzil0y"))))
|
||||
(build-system emacs-build-system)
|
||||
(arguments
|
||||
(list
|
||||
@@ -32832,14 +32865,14 @@ federated microblogging social network.")
|
||||
(define-public emacs-ebdb
|
||||
(package
|
||||
(name "emacs-ebdb")
|
||||
(version "0.8.17")
|
||||
(version "0.8.18")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://elpa.gnu.org/packages/"
|
||||
"ebdb-" version ".tar"))
|
||||
(sha256
|
||||
(base32 "0d2csc7b4mhaqcj8g3v46j11f5xcvbvgx06wxxfq2w0p2nzz1sik"))))
|
||||
(base32 "1mb1qsw3dfaa6x52vsg73by6w7x5i6w5l7b0d2jr667y006q2vvf"))))
|
||||
(build-system emacs-build-system)
|
||||
(home-page "https://github.com/girzel/ebdb")
|
||||
(synopsis "EIEIO port of BBDB, Emacs's contact-management package")
|
||||
@@ -33274,7 +33307,7 @@ Emacs that integrate with major modes like Org-mode.")
|
||||
(define-public emacs-modus-themes
|
||||
(package
|
||||
(name "emacs-modus-themes")
|
||||
(version "4.2.0")
|
||||
(version "4.3.0")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@@ -33283,7 +33316,7 @@ Emacs that integrate with major modes like Org-mode.")
|
||||
(commit version)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "1r6m2jsfn6066155pnlkdgs6dz2fdsampdhdz796z2jy53k7srsg"))))
|
||||
(base32 "12i32y7y6hcv7mqc6g7pcmxr2f54xf3vl2yavdv76643vlhay32v"))))
|
||||
(native-inputs (list texinfo))
|
||||
(build-system emacs-build-system)
|
||||
(arguments
|
||||
@@ -33738,8 +33771,8 @@ other @code{helm-type-file} sources such as @code{helm-locate}.")
|
||||
(license license:gpl3+)))
|
||||
|
||||
(define-public emacs-telega-server
|
||||
(let ((commit "01e8f9e397bb18522b76d3bcdb74f5798e7c4999")
|
||||
(revision "0"))
|
||||
(let ((commit "17bfa50c8f2e70daeb8866f3bf195f15623ab520")
|
||||
(revision "1"))
|
||||
(package
|
||||
(name "emacs-telega-server")
|
||||
(version (git-version "0.8.03" revision commit))
|
||||
@@ -33750,7 +33783,7 @@ other @code{helm-type-file} sources such as @code{helm-locate}.")
|
||||
(url "https://github.com/zevlg/telega.el")
|
||||
(commit commit)))
|
||||
(sha256
|
||||
(base32 "0fv0czx61rsvgf9jnn8nvng7flnihnjhym73hli5fzfgdx15lam7"))
|
||||
(base32 "1057zr4g8llxmzy47l5klyi89x66q8qx5vrd50pmpsp4c6772jz9"))
|
||||
(file-name (git-file-name "emacs-telega" version))
|
||||
(patches
|
||||
(search-patches "emacs-telega-path-placeholder.patch"
|
||||
@@ -34454,7 +34487,7 @@ data, including buffers, window configuration, variables, and more.")
|
||||
(define-public emacs-parseedn
|
||||
(package
|
||||
(name "emacs-parseedn")
|
||||
(version "1.1.0")
|
||||
(version "1.2.0")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@@ -34463,7 +34496,7 @@ data, including buffers, window configuration, variables, and more.")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "01j8nrkcm2s0ps277b5zb4pys29lk4cq49rlcqpj19gbfpkwcvdv"))))
|
||||
(base32 "1pxm50i74id3c4c0j2ifac0wx5zkdq431dmcqbyb6w6k0s05l23c"))))
|
||||
(build-system emacs-build-system)
|
||||
(propagated-inputs
|
||||
(list emacs-a emacs-parseclj))
|
||||
@@ -35179,7 +35212,7 @@ state to and restoring it from a file, with auto-saving and backups.")
|
||||
(define-public emacs-company-emoji
|
||||
(package
|
||||
(name "emacs-company-emoji")
|
||||
(version "2.7.0")
|
||||
(version "2.8.0")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@@ -35188,7 +35221,7 @@ state to and restoring it from a file, with auto-saving and backups.")
|
||||
(commit version)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "1prcjdqm4djp5nr93m2axddhhdmn1s0y157px9zsk7g5yi36dn6q"))))
|
||||
(base32 "0j35z7hjcg3dkwgd7mdx1yaxcmxkn00h91y9kl8qdci7m4lja460"))))
|
||||
(build-system emacs-build-system)
|
||||
(propagated-inputs
|
||||
(list emacs-company))
|
||||
@@ -35962,7 +35995,7 @@ and Emacs lisp commands.")
|
||||
(define-public emacs-extmap
|
||||
(package
|
||||
(name "emacs-extmap")
|
||||
(version "1.2.1")
|
||||
(version "1.3")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@@ -35971,7 +36004,7 @@ and Emacs lisp commands.")
|
||||
(commit version)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "00415w4l9wfpw9v0a35dm1av2w1m6s36yr9f9286jg844x6l375f"))))
|
||||
(base32 "1djqvqxjhc8rzzcrwby2jwbj73q7m5368jv0b011dnnq11rinna4"))))
|
||||
(build-system emacs-build-system)
|
||||
(home-page "https://github.com/doublep/extmap")
|
||||
(synopsis "Externally-stored constant mapping for Emacs Lisp")
|
||||
@@ -37353,13 +37386,13 @@ buffer.")
|
||||
(define-public emacs-seq
|
||||
(package
|
||||
(name "emacs-seq")
|
||||
(version "2.23")
|
||||
(version "2.24")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://elpa.gnu.org/packages/seq-" version ".tar"))
|
||||
(sha256
|
||||
(base32 "1lbxnrzq88z8k9dyylg2636pg9vc8bzfprs1hxwp9ah0zkvsn52p"))))
|
||||
(base32 "1w2cysad3qwnzdabhq9xipbslsjm528fcxkwnslhlkh8v07karml"))))
|
||||
(build-system emacs-build-system)
|
||||
(home-page "https://elpa.gnu.org/packages/seq.html")
|
||||
(synopsis "Sequence manipulation functions")
|
||||
@@ -37646,7 +37679,7 @@ parallel fetching of tiles with cURL, and more.")
|
||||
(define-public emacs-corfu-terminal
|
||||
(package
|
||||
(name "emacs-corfu-terminal")
|
||||
(version "0.5")
|
||||
(version "0.7")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@@ -37656,7 +37689,7 @@ parallel fetching of tiles with cURL, and more.")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "15pwv48v6plvc33715x1j1g6vf53ds4880ly5h96x2idffh7fncl"))))
|
||||
(base32 "0ddj0x1mivrnxpdmnim9vkdpyjrhkfkvmcpfas1wznn4wfr559yj"))))
|
||||
(build-system emacs-build-system)
|
||||
(propagated-inputs (list emacs-corfu emacs-popon))
|
||||
(home-page "https://codeberg.org/akib/emacs-corfu-terminal/")
|
||||
|
||||
@@ -498,7 +498,12 @@ editor (with wide ints)" )
|
||||
(commit commit)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "00mwpq1msr3jij281w5piqmbwq968xr8dn9hqbf4r947ck754kn9")))))))
|
||||
(base32 "00mwpq1msr3jij281w5piqmbwq968xr8dn9hqbf4r947ck754kn9"))
|
||||
(patches
|
||||
(search-patches "emacs-next-exec-path.patch"
|
||||
"emacs-fix-scheme-indent-function.patch"
|
||||
"emacs-next-native-comp-driver-options.patch"
|
||||
"emacs-pgtk-super-key-fix.patch")))))))
|
||||
|
||||
(define* (emacs->emacs-next emacs #:optional name
|
||||
#:key (version (package-version emacs-next-minimal))
|
||||
|
||||
@@ -19,6 +19,7 @@
|
||||
;;; Copyright © 2021 Guillaume Le Vaillant <glv@posteo.net>
|
||||
;;; Copyright © 2023 c4droid <c4droid@foxmail.com>
|
||||
;;; Copyright © 2023 Yovan Naumovski <yovan@gorski.stream>
|
||||
;;; Copyright © 2023 Hendursaga <hendursaga@aol.com>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
@@ -46,6 +47,7 @@
|
||||
#:use-module (guix hg-download)
|
||||
#:use-module (guix utils)
|
||||
#:use-module (gnu packages)
|
||||
#:use-module (gnu packages admin)
|
||||
#:use-module (gnu packages algebra)
|
||||
#:use-module (gnu packages assembly)
|
||||
#:use-module (gnu packages audio)
|
||||
@@ -219,28 +221,39 @@ console.")
|
||||
(define-public desmume
|
||||
(package
|
||||
(name "desmume")
|
||||
(version "0.9.11")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
"mirror://sourceforge/desmume/desmume/"
|
||||
version "/desmume-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"15l8wdw3q61fniy3h93d84dnm6s4pyadvh95a0j6d580rjk4pcrs"))
|
||||
(patches (search-patches "desmume-gcc6-fixes.patch"
|
||||
"desmume-gcc7-fixes.patch"))))
|
||||
(build-system gnu-build-system)
|
||||
(version "0.9.13")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/TASEmulators/desmume")
|
||||
(commit (string-append "release_"
|
||||
(string-replace-substring version
|
||||
"." "_")))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"1ylxv0gjcxwj6dgwly2fjhyr0wrs5yazkim9nvqb8p72mxfwls5y"))))
|
||||
(build-system meson-build-system)
|
||||
(arguments
|
||||
;; Enable support for WiFi and microphone.
|
||||
`(#:configure-flags '("--enable-wifi"
|
||||
"--enable-openal")))
|
||||
(native-inputs
|
||||
(list pkg-config intltool))
|
||||
(inputs
|
||||
(list zlib sdl glib gtk+-2 glu))
|
||||
(home-page "http://desmume.org/")
|
||||
(list #:configure-flags #~(list "-Dfrontend-cli=true"
|
||||
"-Dfrontend-gtk=true"
|
||||
"-Dgdb-stub=true"
|
||||
"-Dopenal=true")
|
||||
#:phases #~(modify-phases %standard-phases
|
||||
;; meson.build is in a subdirectory.
|
||||
(add-after 'unpack 'chdir
|
||||
(lambda _
|
||||
(chdir "desmume/src/frontend/posix"))))))
|
||||
(native-inputs (list `(,glib "bin") gettext-minimal intltool pkg-config))
|
||||
(inputs (list agg
|
||||
alsa-lib
|
||||
gtk+
|
||||
libpcap
|
||||
openal
|
||||
sdl2
|
||||
soundtouch
|
||||
zlib))
|
||||
(home-page "https://desmume.org/")
|
||||
(synopsis "Nintendo DS emulator")
|
||||
(description
|
||||
"DeSmuME is an emulator for the Nintendo DS handheld gaming console.")
|
||||
|
||||
@@ -38,6 +38,7 @@
|
||||
;;; Copyright © 2022, 2023 Felix Gruber <felgru@posteo.net>
|
||||
;;; Copyright © 2023 Theofilos Pechlivanis <theofilos.pechlivanis@gmail.com>
|
||||
;;; Copyright © 2023 Sharlatan Hellseher <sharlatanus@gmail.com>
|
||||
;;; Copyright © 2023 pinoaffe <pinoaffe@gmail.com>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
@@ -123,7 +124,9 @@
|
||||
#:use-module (gnu packages lisp)
|
||||
#:use-module (gnu packages m4)
|
||||
#:use-module (gnu packages man)
|
||||
#:use-module (gnu packages markup)
|
||||
#:use-module (gnu packages maths)
|
||||
#:use-module (gnu packages multiprecision)
|
||||
#:use-module (gnu packages mpi)
|
||||
#:use-module (gnu packages multiprecision)
|
||||
#:use-module (gnu packages ncurses)
|
||||
@@ -1089,7 +1092,7 @@ Emacs).")
|
||||
(define-public kicad
|
||||
(package
|
||||
(name "kicad")
|
||||
(version "7.0.7")
|
||||
(version "7.0.8")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
@@ -1097,7 +1100,7 @@ Emacs).")
|
||||
(commit version)))
|
||||
(sha256
|
||||
(base32
|
||||
"1xbzf29rhqh6kl0vggdn2dblgp927096fc1lr3y4yw63b8n0qq50"))
|
||||
"1gaj833hm3avyb7gyjnl4jk9cckcmj8084y6q45ysjvh283rxsy4"))
|
||||
(file-name (git-file-name name version))))
|
||||
(build-system cmake-build-system)
|
||||
(arguments
|
||||
@@ -1197,7 +1200,7 @@ electrical diagrams), gerbview (viewing Gerber files) and others.")
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"00f51rcnki08x2jkyla5vmqx7nhck3cyz86wiy0qkmc8klb1a6ba"))))
|
||||
"1ya9kwcbsh8cqbinjr1hr14sd0g6rls1awmvw8hwd7715f97x8fg"))))
|
||||
(build-system cmake-build-system)
|
||||
(arguments
|
||||
`(#:configure-flags (list "-DBUILD_FORMATS=html")
|
||||
@@ -1231,7 +1234,7 @@ electrical diagrams), gerbview (viewing Gerber files) and others.")
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"1wr754m4ykidds3i14gqhvyrj3mbkchp2hkfnr0rjsdaqf4zmqdf"))))
|
||||
"176zb7df25vz3wbhs94plmpabcgzxsnzbqmpdyssqr7m2wb2424a"))))
|
||||
(build-system cmake-build-system)
|
||||
(arguments
|
||||
`(#:tests? #f)) ; no tests exist
|
||||
@@ -1260,7 +1263,7 @@ libraries.")
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"0xnnivlqgcyaz9qay73p43jnvmvshp2b3fbh3569j7rmgi5pn8x0"))))
|
||||
"1560m5mwwq0jrjhr8zdh2xrm1w7pgr250p81xzhdc4wj7zsb0rrp"))))
|
||||
(synopsis "Official KiCad footprint libraries")
|
||||
(description "This package contains the official KiCad footprint libraries.")))
|
||||
|
||||
@@ -1277,7 +1280,7 @@ libraries.")
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"141r5wd8s1bgyf77kvb9q14cpsiwwv4zmfzwbgcd42rflsk2lcbc"))))
|
||||
"1ypy2nzs1x8i98jr5kmlxfd6y592qs22aq73yl8nq0s6640fc4kk"))))
|
||||
(synopsis "Official KiCad 3D model libraries")
|
||||
(description "This package contains the official KiCad 3D model libraries.")))
|
||||
|
||||
@@ -1294,7 +1297,7 @@ libraries.")
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"1qi20mrsfn4fxmr1fyphmil2i9p2nzmwk5rlfchc5aq2194nj3lq"))))
|
||||
"11582ldnv7hkljmhaym83962kixq1hjbfmdrn5laq7l4jk3l19vh"))))
|
||||
(synopsis "Official KiCad project and worksheet templates")
|
||||
(description "This package contains the official KiCad project and
|
||||
worksheet templates.")))
|
||||
@@ -2322,33 +2325,101 @@ parallel computing platforms. It also supports serial execution.")
|
||||
(define-public librepcb
|
||||
(package
|
||||
(name "librepcb")
|
||||
(version "0.1.5")
|
||||
(version "1.0.0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://download.librepcb.org/releases/"
|
||||
version "/librepcb-" version "-source.zip"))
|
||||
(modules `((guix build utils)))
|
||||
(snippet
|
||||
;; Delete libraries that we already have or don't need.
|
||||
;; TODO: try to unbundle more (see lib/).
|
||||
`(begin
|
||||
(let ((third-parties '("fontobene-qt5"
|
||||
"googletest"
|
||||
"hoedown"
|
||||
"muparser"
|
||||
"polyclipping"
|
||||
"quazip")))
|
||||
(with-directory-excursion "libs"
|
||||
(map (lambda (third-party)
|
||||
(delete-file-recursively third-party))
|
||||
third-parties)))))
|
||||
(sha256
|
||||
(base32 "0smp1p7wnrj0vh4rmz1cr2krfawc2lzx0pbzmgyay7xdp6jxympr"))))
|
||||
(build-system gnu-build-system)
|
||||
(base32 "02qfwyhdq1pklb5gkwn3rbsdhwvcgiksd21swaphz3kw6s4p9i8v"))))
|
||||
(build-system cmake-build-system)
|
||||
(inputs
|
||||
(list qtbase-5 qtsvg-5 zlib))
|
||||
(list clipper
|
||||
fontconfig
|
||||
fontobene-qt5
|
||||
glu
|
||||
hoedown
|
||||
muparser
|
||||
opencascade-occt
|
||||
qtbase-5
|
||||
qtdeclarative-5
|
||||
qtquickcontrols2-5
|
||||
qtsvg-5
|
||||
quazip
|
||||
zlib))
|
||||
(native-inputs
|
||||
(list qttools-5 ; for lrelease
|
||||
(list googletest
|
||||
pkg-config
|
||||
qttools-5
|
||||
unzip))
|
||||
(arguments
|
||||
`(#:phases
|
||||
(modify-phases %standard-phases
|
||||
(replace 'configure
|
||||
(lambda* (#:key inputs outputs #:allow-other-keys)
|
||||
(mkdir-p "build")
|
||||
(chdir "build")
|
||||
(let ((lrelease (search-input-file inputs "/bin/lrelease"))
|
||||
(out (assoc-ref outputs "out")))
|
||||
(invoke "qmake"
|
||||
(string-append "QMAKE_LRELEASE=" lrelease)
|
||||
(string-append "PREFIX=" out)
|
||||
"../librepcb.pro")))))))
|
||||
`(#:configure-flags (list
|
||||
"-DUNBUNDLE_FONTOBENE_QT5=ON"
|
||||
"-DUNBUNDLE_GTEST=ON"
|
||||
"-DUNBUNDLE_HOEDOWN=ON"
|
||||
"-DUNBUNDLE_MUPARSER=ON"
|
||||
"-DUNBUNDLE_POLYCLIPPING=ON"
|
||||
"-DUNBUNDLE_QUAZIP=ON")
|
||||
#:phases (modify-phases %standard-phases
|
||||
(replace 'check
|
||||
(lambda* (#:key tests? #:allow-other-keys)
|
||||
(when tests?
|
||||
(let ((test-include (list "*"))
|
||||
(test-exclude
|
||||
(list
|
||||
;; These tests all fail when run by the build
|
||||
;; process even though they pass when manually
|
||||
;; run as a normal user.
|
||||
|
||||
;; TODO: verify that the failing tests don't
|
||||
;; point to any actual underlying issues
|
||||
"SystemInfoTest.testGetUsername"
|
||||
"OrderPcbDialogTest.testAutoOpenBrowser"
|
||||
"DxfImportDialogTest.testLayerName"
|
||||
"DxfImportDialogTest.testCirclesAsDrills"
|
||||
"DxfImportDialogTest.testJoinTangentPolylines"
|
||||
"DxfImportDialogTest.testLineWidth"
|
||||
"DxfImportDialogTest.testScaleFactor"
|
||||
"DxfImportDialogTest.testPlacementPosition"
|
||||
"GraphicsExportDialogTest.testPageSize"
|
||||
"GraphicsExportDialogTest.testOrientation"
|
||||
"GraphicsExportDialogTest.testMargins"
|
||||
"GraphicsExportDialogTest.testShowPinNumbers"
|
||||
"GraphicsExportDialogTest.testRotate"
|
||||
"GraphicsExportDialogTest.testMirror"
|
||||
"GraphicsExportDialogTest.testScale"
|
||||
"GraphicsExportDialogTest.testPixmapDpi"
|
||||
"GraphicsExportDialogTest.testBlackWhite"
|
||||
"GraphicsExportDialogTest.testBackgroundColor"
|
||||
"GraphicsExportDialogTest.testMinLineWidth"
|
||||
"GraphicsExportDialogTest.testLayerColors"
|
||||
"GraphicsExportDialogTest.testOpenExportedFiles"
|
||||
"AddComponentDialogTest.testAddMore")))
|
||||
(setenv "QT_QPA_PLATFORM" "offscreen")
|
||||
(setenv "QT_QUICK_BACKEND" "software")
|
||||
(display "Running unittests...\n")
|
||||
(invoke "./tests/unittests/librepcb-unittests"
|
||||
(string-append
|
||||
"--gtest_filter="
|
||||
(string-join test-include ":")
|
||||
"-"
|
||||
(string-join test-exclude ":"))))))))))
|
||||
(home-page "https://librepcb.org/")
|
||||
(synopsis "Electronic Design Automation tool")
|
||||
(description "LibrePCB is @dfn{Electronic Design Automation} (EDA)
|
||||
@@ -2356,17 +2427,12 @@ software to develop printed circuit boards. It features human readable file
|
||||
formats and complete project management with library, schematic and board
|
||||
editors.")
|
||||
(license (list license:gpl3+
|
||||
license:boost1.0 ; libs/clipper,
|
||||
; libs/optional/tests/catch.hpp,
|
||||
; libs/sexpresso/tests/catch.hpp
|
||||
license:boost1.0 ; libs/optional/tests/catch.hpp,
|
||||
license:expat ; libs/delaunay-triangulation,
|
||||
; libs/parseagle, libs/type_safe
|
||||
license:asl2.0 ; libs/fontobene, libs/googletest,
|
||||
; libs/parseagle
|
||||
license:isc ; libs/hoedown
|
||||
license:cc0 ; libs/optional, libs/sexpresso
|
||||
license:bsd-2 ; libs/optional/tests/catch.hpp
|
||||
license:lgpl2.1+)))) ; libs/quazip
|
||||
license:asl2.0 ; libs/parseagle
|
||||
license:cc0 ; libs/optional
|
||||
license:bsd-2)))) ; libs/optional/tests/catch.hpp
|
||||
|
||||
(define-public gpx
|
||||
(package
|
||||
@@ -2604,7 +2670,7 @@ measurement devices and test equipment via GPIB, RS232, Ethernet or USB.")
|
||||
(define-public python-scikit-rf
|
||||
(package
|
||||
(name "python-scikit-rf")
|
||||
(version "0.28.0")
|
||||
(version "0.29.1")
|
||||
(source (origin
|
||||
(method git-fetch) ;PyPI misses some files required for tests
|
||||
(uri (git-reference
|
||||
@@ -2612,7 +2678,7 @@ measurement devices and test equipment via GPIB, RS232, Ethernet or USB.")
|
||||
(commit (string-append "v" version))))
|
||||
(sha256
|
||||
(base32
|
||||
"11pxl8q356f6q4cvadasg52js3k446l87hwmc87b1n9cy8sxcfvi"))
|
||||
"11pbcgbq34xyjv5gjwi3a8cpgqqwmd73ps1fwyjajl26q2nkmcdh"))
|
||||
(file-name (git-file-name name version))))
|
||||
(build-system pyproject-build-system)
|
||||
(propagated-inputs (list python-matplotlib
|
||||
@@ -2630,6 +2696,7 @@ measurement devices and test equipment via GPIB, RS232, Ethernet or USB.")
|
||||
python-networkx
|
||||
python-pytest
|
||||
python-pytest-cov
|
||||
python-pytest-mock
|
||||
python-pyvisa))
|
||||
(home-page "https://scikit-rf.org/")
|
||||
(synopsis "Radio frequency and Microwave Engineering Scikit")
|
||||
|
||||
@@ -35,6 +35,7 @@
|
||||
;;; Copyright © 2023 Frank Pursel <frank.pursel@gmail.com>
|
||||
;;; Copyright © 2023 Skylar Hill <stellarskylark@posteo.net>
|
||||
;;; Copyright © 2023 Foundation Devices, Inc. <hello@foundationdevices.com>
|
||||
;;; Copyright © 2023 Attila Lendvai <attila@lendvai.name>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
@@ -925,7 +926,7 @@ Bech32 and segwit addresses.")
|
||||
;; the toplevel app called trezor-agent.
|
||||
(package
|
||||
(name "python-trezor-agent")
|
||||
(version "0.14.4")
|
||||
(version "0.14.7")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@@ -934,7 +935,7 @@ Bech32 and segwit addresses.")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "1ksv494xpga27ifrjyn1bkqaya5h769lqb9rx1ng0n4kvmnrqr3l"))))
|
||||
(base32 "04dds5bbw73nk36zm8d02qw6qr92nrlcf8r1cq8ba96mzi34jbk0"))))
|
||||
(build-system python-build-system)
|
||||
(arguments
|
||||
`(#:phases
|
||||
@@ -962,8 +963,12 @@ Bech32 and segwit addresses.")
|
||||
python-semver
|
||||
python-unidecode
|
||||
python-wheel))
|
||||
(native-inputs
|
||||
(list gnupg python-mock python-pytest))
|
||||
(native-inputs ; Only needed for running the tests
|
||||
(list gnupg
|
||||
python-bech32
|
||||
python-cryptography
|
||||
python-mock
|
||||
python-pytest))
|
||||
(home-page "https://github.com/romanz/trezor-agent")
|
||||
(synopsis "Use hardware wallets as SSH and GPG agent")
|
||||
(description
|
||||
@@ -1094,7 +1099,7 @@ Nano dongle.")
|
||||
(define-public python-trezor
|
||||
(package
|
||||
(name "python-trezor")
|
||||
(version "0.13.0")
|
||||
(version "0.13.7")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@@ -1103,7 +1108,7 @@ Nano dongle.")
|
||||
(commit (string-append "python/v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "1wy584bxx5p2av4lv1bx9hl1q0b5n7hqz0hnqb9shjriarvl5ckd"))
|
||||
(base32 "13wyl9b15c8iscfakprwfvh2akw180hfqdjww79b78ywz51y7hdh"))
|
||||
(modules
|
||||
'((guix build utils)
|
||||
(srfi srfi-26)
|
||||
@@ -1129,25 +1134,24 @@ Nano dongle.")
|
||||
(build-system python-build-system)
|
||||
(propagated-inputs
|
||||
(list python-attrs
|
||||
;; TOOD: Use the latest click version after release 0.13.1 or later
|
||||
;; is made (see:
|
||||
;; https://github.com/trezor/trezor-firmware/issues/2199).
|
||||
python-click-7
|
||||
python-construct
|
||||
python-click
|
||||
python-construct-classes
|
||||
python-ecdsa
|
||||
python-hidapi
|
||||
python-libusb1
|
||||
python-mnemonic
|
||||
python-requests
|
||||
python-typing-extensions))
|
||||
(native-inputs
|
||||
;; For tests.
|
||||
(native-inputs ; Only needed for running the tests
|
||||
(list protobuf
|
||||
python-black
|
||||
python-isort
|
||||
python-pillow
|
||||
python-protobuf
|
||||
python-pyqt
|
||||
python-pytest))
|
||||
python-pytest
|
||||
python-simple-rlp
|
||||
python-wheel))
|
||||
(home-page "https://github.com/trezor/python-trezor")
|
||||
(synopsis "Python library for communicating with TREZOR Hardware Wallet")
|
||||
(description "@code{trezor} is a Python library for communicating with
|
||||
@@ -1205,21 +1209,21 @@ the KeepKey Hardware Wallet.")
|
||||
(define-public trezor-agent
|
||||
(package
|
||||
(name "trezor-agent")
|
||||
(version "0.14.4")
|
||||
;; There are multiple Python apps/packages in the same git repo. The git
|
||||
;; tag seems to track libagent's version (which is called
|
||||
;; python-trezor-agent in the Guix namespace). Currently trezor-agent's
|
||||
;; version is set in `agents/trezor/setup.py` to a different value than
|
||||
;; libagent, but as discussed with upstream in issue
|
||||
;; https://github.com/romanz/trezor-agent/issues/369, we are copying our
|
||||
;; version from that of libagent.
|
||||
(version (package-version python-trezor-agent))
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/romanz/trezor-agent")
|
||||
;; The version mismatch is not a mistake. Multiple Python
|
||||
;; apps/packages are in the same git repo, and they have
|
||||
;; different versions. The git tag seems to track libagent,
|
||||
;; i.e. python-trezor-agent in the Guix namespace. See
|
||||
;; e.g. ./agents/trezor/setup.py.
|
||||
(commit "v0.14.4")))
|
||||
(uri (origin-uri (package-source python-trezor-agent)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "1ksv494xpga27ifrjyn1bkqaya5h769lqb9rx1ng0n4kvmnrqr3l"))
|
||||
(base32 "04dds5bbw73nk36zm8d02qw6qr92nrlcf8r1cq8ba96mzi34jbk0"))
|
||||
(modules
|
||||
'((guix build utils)
|
||||
(ice-9 ftw)
|
||||
@@ -1238,13 +1242,16 @@ the KeepKey Hardware Wallet.")
|
||||
(string-append "./" file-name)))
|
||||
(scandir "./agents/trezor/"
|
||||
(negate (cut member <> '("." "..") string=))))
|
||||
(delete-file-recursively "./agents")))))
|
||||
(delete-file-recursively "./agents")
|
||||
;; Without deleting ./contrib the sanity-check phase fails. Reported
|
||||
;; upstream as https://github.com/romanz/trezor-agent/issues/429.
|
||||
(delete-file-recursively "./contrib")
|
||||
;; Without deleting ./libagent setuptools complains as follows:
|
||||
;; "error: Multiple top-level packages discovered in a flat-layout: ['contrib', 'libagent']."
|
||||
(delete-file-recursively "./libagent")))))
|
||||
(arguments
|
||||
`(#:phases
|
||||
(modify-phases %standard-phases
|
||||
;; This package only has a Python script, not a Python module, so the
|
||||
;; sanity-check phase can't work.
|
||||
(delete 'sanity-check)
|
||||
(add-after 'unpack 'relax-requirements
|
||||
(lambda _
|
||||
(substitute* "setup.py"
|
||||
@@ -1267,8 +1274,10 @@ the KeepKey Hardware Wallet.")
|
||||
(build-system python-build-system)
|
||||
(inputs
|
||||
(list python-trezor python-trezor-agent))
|
||||
(native-inputs
|
||||
(list python-attrs))
|
||||
(native-inputs ; Only needed for running the tests
|
||||
(list python-attrs
|
||||
python-bech32
|
||||
python-simple-rlp))
|
||||
(home-page "https://github.com/romanz/trezor-agent")
|
||||
(synopsis "Using Trezor as hardware SSH/GPG agent")
|
||||
(description "This package allows using Trezor as a hardware SSH/GPG
|
||||
@@ -1657,7 +1666,7 @@ trezord as a regular user instead of needing to it run as root.")
|
||||
(define-public trezord
|
||||
(package
|
||||
(name "trezord")
|
||||
(version "2.0.31")
|
||||
(version "2.0.33")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@@ -1665,16 +1674,18 @@ trezord as a regular user instead of needing to it run as root.")
|
||||
(url "https://github.com/trezor/trezord-go")
|
||||
(commit (string-append "v" version))))
|
||||
(sha256
|
||||
(base32 "130nhk1pnr3xx9qkcij81mm3jxrl5zvvdqhvrgvrikqg3zlb6v5b"))
|
||||
(base32 "0nnfh9qkb8ljajkxwrn3nn85zrsw10hp7c5i4zh60qgfyl0djppw"))
|
||||
(file-name (git-file-name name version))))
|
||||
(build-system go-build-system)
|
||||
(arguments
|
||||
'(#:import-path "github.com/trezor/trezord-go"))
|
||||
`(#:import-path "github.com/trezor/trezord-go"
|
||||
;; Requires go 1.18 or later: https://github.com/trezor/trezord-go/commit/f559ee5079679aeb5f897c65318d3310f78223ca
|
||||
#:go ,go-1.20))
|
||||
(native-inputs
|
||||
`(("github.com/gorilla-csrf" ,go-github-com-gorilla-csrf)
|
||||
("github.com/gorilla/handlers" ,go-github-com-gorilla-handlers)
|
||||
("github.com/gorilla/mux" ,go-github-com-gorilla-mux)
|
||||
("gopkg.in/natefinch/lumberjack.v2" ,go-gopkg-in-natefinch-lumberjack.v2)))
|
||||
(list go-github-com-gorilla-csrf
|
||||
go-github-com-gorilla-handlers
|
||||
go-github-com-gorilla-mux
|
||||
go-gopkg-in-natefinch-lumberjack.v2))
|
||||
(home-page "https://trezor.io")
|
||||
(synopsis "Trezor Communication Daemon aka Trezor Bridge (written in Go)")
|
||||
(description "This allows a Trezor hardware wallet to communicate to the
|
||||
|
||||
@@ -58,6 +58,7 @@
|
||||
;;; Copyright © 2023 gemmaro <gemmaro.dev@gmail.com>
|
||||
;;; Copyright © 2023 Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>
|
||||
;;; Copyright © 2023 chris <chris@bumblehead.com>
|
||||
;;; Copyright © 2023 Luis Felipe López Acevedo <sirgazil@zoho.com>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
@@ -1937,7 +1938,7 @@ weights and five widths in both Roman and Italic, plus variable fonts.")
|
||||
(define-public font-sarasa-gothic
|
||||
(package
|
||||
(name "font-sarasa-gothic")
|
||||
(version "0.42.0")
|
||||
(version "0.42.1")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
@@ -1945,7 +1946,7 @@ weights and five widths in both Roman and Italic, plus variable fonts.")
|
||||
"/releases/download/v" version
|
||||
"/sarasa-gothic-ttc-" version ".7z"))
|
||||
(sha256
|
||||
(base32 "06yvymkkmp8g7innmwg9xc6wdsfngj118k1fhp8fcav4110qx585"))))
|
||||
(base32 "0lrhipis21cafpsf8wsrdavlblfgzz424r23rj78ik8npbws1a3v"))))
|
||||
(build-system font-build-system)
|
||||
(arguments
|
||||
`(#:phases (modify-phases %standard-phases
|
||||
@@ -3144,7 +3145,7 @@ and readability. This package bundles those icons into a font.")
|
||||
(define-public font-lxgw-wenkai
|
||||
(package
|
||||
(name "font-lxgw-wenkai")
|
||||
(version "1.300")
|
||||
(version "1.310")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
@@ -3152,7 +3153,7 @@ and readability. This package bundles those icons into a font.")
|
||||
version "/lxgw-wenkai-v" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1vywhvzj8l3hw2j0np5jhmwli037mxgs05s7n3y3xw3z46r7rwx4"))))
|
||||
"10z8ilcpfxmll6j6ck4yj90x48vh3c7ck0lm61qjangpw9fcgfb1"))))
|
||||
(build-system font-build-system)
|
||||
(home-page "https://lxgw.github.io/2021/01/28/Klee-Simpchin/")
|
||||
(synopsis "Simplified Chinese Imitation Song typeface")
|
||||
@@ -3166,7 +3167,7 @@ within GB 2312, standard glyphs for Mainland China is used.")
|
||||
(package
|
||||
(inherit font-lxgw-wenkai)
|
||||
(name "font-lxgw-wenkai-tc")
|
||||
(version "1.000")
|
||||
(version "1.010")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
@@ -3174,7 +3175,7 @@ within GB 2312, standard glyphs for Mainland China is used.")
|
||||
version "/lxgw-wenkai-tc-v" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1jhmqwrx7311iwng3b00j3lwjzacam605dm4n6wd8amqc9azi9b2"))))
|
||||
"1yppqrfmynai1canlq0hksl3yaj8kflbnj41ljl4lxwaz6q9i1ly"))))
|
||||
(home-page "https://github.com/lxgw/LxgwWenKaitc")
|
||||
(synopsis "Traditional Chinese Imitation Song typeface")
|
||||
(description
|
||||
@@ -3209,7 +3210,7 @@ prevalent typefaces in Traditional Chinese regions.")
|
||||
(package
|
||||
(inherit font-chiron-sung-hk)
|
||||
(name "font-chiron-hei-hk")
|
||||
(version "2.506")
|
||||
(version "2.508")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
@@ -3218,7 +3219,7 @@ prevalent typefaces in Traditional Chinese regions.")
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"1v40wcj3h38ai9gacpjfd02nas97scpdkz3g3h8a5yzp0n0pfknw"))))
|
||||
"0drvkqk629z63k62v3ds559phl82dmkyvpx2r8mi99nnsz22a8ps"))))
|
||||
(synopsis "Traditional Chinese Gothic typeface")
|
||||
(description
|
||||
"Chiron Hei HK is a Traditional Chinese Gothic typeface based on the Hong
|
||||
@@ -3457,3 +3458,29 @@ interfaces.")
|
||||
is to provide fonts that conform to existing standards and recommendations, so
|
||||
that it can be a reference implementation.")
|
||||
(license license:gpl2+)))
|
||||
|
||||
(define-public font-orbitron
|
||||
(let ((version "0")
|
||||
(commit "13e6a5222aa6818d81c9acd27edd701a2d744152")
|
||||
(revision "0"))
|
||||
(package
|
||||
(name "font-orbitron")
|
||||
(version (git-version version revision commit))
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/theleagueof/orbitron")
|
||||
(commit commit)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"1c6jb7ayr07j1pbnzf3jxng9x9bbqp3zydf8mqdw9ifln1b4ycyf"))))
|
||||
(build-system font-build-system)
|
||||
(home-page "https://github.com/theleagueof/orbitron")
|
||||
(synopsis "Futuristic geometric sans-serif")
|
||||
(description "Orbitron is a geometric sans-serif typeface intended
|
||||
for display purposes. It features four weights (light, medium, bold,
|
||||
and black), a stylistic alternative, small caps, and many alternate
|
||||
glyphs.")
|
||||
(license license:silofl1.1))))
|
||||
|
||||
@@ -18,6 +18,7 @@
|
||||
;;; Copyright © 2023 gemmaro <gemmaro.dev@gmail.com>
|
||||
;;; Copyright © 2023 John Kehayias <john.kehayias@protonmail.com>
|
||||
;;; Copyright © 2023 Janneke Nieuwenhuizen <janneke@gnu.org>
|
||||
;;; Copyright © 2023 pinoaffe <pinoaffe@gmail.com>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
@@ -65,6 +66,7 @@
|
||||
#:use-module (gnu packages python)
|
||||
#:use-module (gnu packages python-build)
|
||||
#:use-module (gnu packages python-xyz)
|
||||
#:use-module (gnu packages qt)
|
||||
#:use-module (gnu packages sqlite)
|
||||
#:use-module (gnu packages webkit)
|
||||
#:use-module (gnu packages xdisorg)
|
||||
@@ -369,6 +371,37 @@ but also provides many useful font conversion and analysis facilities.
|
||||
python-ufonormalizer
|
||||
python-ufoprocessor))))
|
||||
|
||||
(define-public python-beziers
|
||||
(package
|
||||
(name "python-beziers")
|
||||
(version "0.5.0")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/simoncozens/beziers.py")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"1dyr45m15sclbgaz1mrcnw8kny50h09gd45dlpfkgv9qpfxphkg3"))))
|
||||
(build-system python-build-system)
|
||||
(arguments
|
||||
(list #:phases #~(modify-phases %standard-phases
|
||||
(replace 'check
|
||||
(lambda* (#:key tests? #:allow-other-keys)
|
||||
(when tests?
|
||||
(invoke "pytest" "-vv")))))))
|
||||
(native-inputs (list python-pytest python-dotmap python-matplotlib))
|
||||
(propagated-inputs (list python-pyclipper))
|
||||
(home-page "https://simoncozens.github.io/beziers.py/index.html")
|
||||
(synopsis "Python bezier manipulation library")
|
||||
(description
|
||||
"Beziers provides a variety of classes for constructing,
|
||||
manipulating and drawing Bezier curves and paths. Principally designed for
|
||||
font design software, it allows you to join, split, offset, and perform many
|
||||
other operations on paths.")
|
||||
(license license:expat)))
|
||||
|
||||
(define-public python-cffsubr
|
||||
(package
|
||||
(name "python-cffsubr")
|
||||
@@ -960,6 +993,35 @@ value (e.g. @samp{x=\"95.0\"} becomes @samp{x=\"95\"})
|
||||
@end itemize")
|
||||
(license license:bsd-3)))
|
||||
|
||||
(define-public fontobene-qt5
|
||||
(package
|
||||
(name "fontobene-qt5")
|
||||
(version "0.2.0")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/fontobene/fontobene-qt5")
|
||||
(commit version)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"0gy3sfraf23k7dm4ha8nqpd6madzk0zmxkcb204micyn5b5l8ljg"))))
|
||||
(inputs (list qtbase-5))
|
||||
(build-system cmake-build-system)
|
||||
(arguments
|
||||
`(#:phases
|
||||
(modify-phases %standard-phases
|
||||
(replace 'check
|
||||
(lambda* (#:key tests? #:allow-other-keys)
|
||||
(when tests?
|
||||
(invoke "./tests/fontobene-qt5-tests")))))))
|
||||
(home-page "https://github.com/fontobene/fontobene-qt5")
|
||||
(synopsis "Parser for FontoBene stroke fonts")
|
||||
(description "FontoBene-Qt5 is a header-only library to parse FontoBene
|
||||
stroke fonts with C++11/Qt5.")
|
||||
;; Dual-licensed, either license applies.
|
||||
(license (list license:asl2.0 license:expat))))
|
||||
|
||||
(define-public ttfautohint
|
||||
(package
|
||||
(name "ttfautohint")
|
||||
|
||||
@@ -1,6 +1,7 @@
|
||||
;;; GNU Guix --- Functional package management for GNU
|
||||
;;; Copyright © 2016 Nikita <nikita@n0.is>
|
||||
;;; Copyright © 2016 Sou Bunnbu <iyzsong@gmail.com>
|
||||
;;; Copyright © 2023 B. Wilson <elaexuotee@wilsonb.com>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
@@ -18,11 +19,14 @@
|
||||
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
|
||||
|
||||
(define-module (gnu packages forth)
|
||||
#:use-module (guix build-system gnu)
|
||||
#:use-module (guix build-system trivial)
|
||||
#:use-module (guix download)
|
||||
#:use-module (guix gexp)
|
||||
#:use-module ((guix licenses) #:prefix license:)
|
||||
#:use-module (guix packages)
|
||||
#:use-module (guix download)
|
||||
#:use-module (guix build-system gnu)
|
||||
#:use-module (gnu packages m4))
|
||||
#:use-module (gnu packages m4)
|
||||
#:use-module (gnu packages vim))
|
||||
|
||||
(define-public gforth
|
||||
(package
|
||||
@@ -58,3 +62,53 @@ and history. A generic virtual machine environment, vmgen, is also
|
||||
included.")
|
||||
(home-page "https://www.gnu.org/software/gforth/")
|
||||
(license license:gpl3+)))
|
||||
|
||||
(define-public smithforth
|
||||
(package
|
||||
(name "smithforth")
|
||||
(version "220711")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://dacvs.neocities.org/SF/SForth"
|
||||
version "dmp.txt"))
|
||||
(sha256
|
||||
(base32 "0a39pv7529llsa3f48fmvwvlcp3f9v8qkn5ziw2l6kxf0qvli3lm"))))
|
||||
(build-system trivial-build-system)
|
||||
(native-inputs (list xxd))
|
||||
(arguments
|
||||
(list
|
||||
#:modules '((guix build utils))
|
||||
#:builder
|
||||
#~(begin
|
||||
(use-modules (guix build utils)
|
||||
(ice-9 textual-ports))
|
||||
(let* ((sforth.dmp #$(package-source this-package))
|
||||
(system.fs #$(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
"https://dacvs.neocities.org/SF/system"
|
||||
version "fs.txt"))
|
||||
(sha256
|
||||
(base32
|
||||
"17v1pp64s6n8q8w3kg48nd7zdcx2208y4svr5fpfms5lkyzg7z1m"))))
|
||||
(xxd (string-append (assoc-ref %build-inputs "xxd")
|
||||
"/bin/xxd"))
|
||||
(bin (string-append (assoc-ref %outputs "out") "/bin")))
|
||||
(copy-file sforth.dmp "sforth.dmp")
|
||||
(substitute* "sforth.dmp" (("#.*$") "\n"))
|
||||
(with-output-to-file "sforth"
|
||||
(lambda _
|
||||
(invoke xxd "-p" "-r" "sforth.dmp")
|
||||
(call-with-input-file system.fs
|
||||
(lambda (port) (display (get-string-all port)))))
|
||||
#:binary #t)
|
||||
(chmod "sforth" #o755)
|
||||
(install-file "sforth" bin)))))
|
||||
(home-page "https://dacvs.neocities.org/SF/")
|
||||
(synopsis "Forth programming language for x86-64 desktop computers")
|
||||
(description "SmithForth is an implementation of the Forth programming
|
||||
language for x86-64 desktop computers. SmithForth is a text interpreter that
|
||||
runs in a Linux text console.")
|
||||
(supported-systems '("x86_64-linux"))
|
||||
(license license:expat-0)))
|
||||
|
||||
@@ -2635,7 +2635,7 @@ fiction and classic point-and-click adventures.")
|
||||
(define-public openvr
|
||||
(package
|
||||
(name "openvr")
|
||||
(version "1.8.19")
|
||||
(version "1.26.7")
|
||||
(home-page "https://github.com/ValveSoftware/openvr/")
|
||||
(source
|
||||
(origin
|
||||
@@ -2645,7 +2645,7 @@ fiction and classic point-and-click adventures.")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "1b8cppvw6ib0kvx0vjq7jsk3plg1vh171w8xr230vjn05381wp52"))))
|
||||
(base32 "09rvrja3pz6ggs41ra71p4dwjl4n0rpqrqw8jiy92xl33hhxbsmx"))))
|
||||
(build-system cmake-build-system)
|
||||
(arguments
|
||||
;; No tests.
|
||||
|
||||
@@ -11191,100 +11191,97 @@ and unsafe rides. Which path will you take?")
|
||||
(license license:gpl2)))
|
||||
|
||||
(define-public ultrastar-deluxe
|
||||
;; The last release is quite old and does not support recent ffmpeg versions.
|
||||
(let ((commit "43484b0a10ce6aae339e19d81ae2f7b37caf6baa")
|
||||
(revision "1"))
|
||||
(package
|
||||
(name "ultrastar-deluxe")
|
||||
(version (git-version "2020.4.0" revision commit))
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/UltraStar-Deluxe/USDX.git")
|
||||
(commit commit)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"078g1rbm1ympmwq9s64v68sxvcms7rr0qid12d2wgm4r04ana47r"))
|
||||
(patches (search-patches "ultrastar-deluxe-no-freesans.patch"))
|
||||
(modules '((guix build utils)))
|
||||
(snippet
|
||||
#~(begin
|
||||
;; Remove Windows binaries.
|
||||
(for-each delete-file (find-files "game" "\\.dll$"))
|
||||
;; Remove font blobs.
|
||||
(let ((font-directories
|
||||
(list "DejaVu" "FreeSans" "NotoSans"
|
||||
"wqy-microhei")))
|
||||
(for-each
|
||||
(lambda (d) (delete-file-recursively
|
||||
(string-append "game/fonts/" d)))
|
||||
font-directories))))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:tests? #f ; No tests.
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(add-after 'unpack 'fix-configure
|
||||
(lambda* (#:key inputs configure-flags outputs #:allow-other-keys)
|
||||
(define (where inputs file)
|
||||
(dirname (search-input-file inputs file)))
|
||||
;; The configure script looks for lua$version, but we
|
||||
;; provide lua-$version.
|
||||
(substitute* "configure.ac"
|
||||
(("lua\\$i") "lua-$i"))
|
||||
;; fpc does not pass -lfoo to the linker, but uses its own
|
||||
;; linker script, which references libs. Pass the libraries
|
||||
;; listed in that linker script, so our custom linker adds
|
||||
;; a correct rpath.
|
||||
(substitute* "src/Makefile.in"
|
||||
(("linkflags\\s+:= ")
|
||||
(string-append
|
||||
"linkflags := -lpthread -lsqlite3 -lSDL2"
|
||||
" -lSDL2_image -ldl "
|
||||
" -lz -lfreetype -lportaudio -lavcodec"
|
||||
" -lavformat -lavutil -lswresample"
|
||||
" -lswscale -llua -ldl -lX11 -lportmidi"
|
||||
" -L" (where inputs "lib/libz.so")
|
||||
" -L" (where inputs "lib/libX11.so")
|
||||
" -L" (where inputs "lib/libportmidi.so"))))))
|
||||
(add-after 'install 'font-paths
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
(substitute* (string-append
|
||||
(assoc-ref outputs "out")
|
||||
"/share/ultrastardx/fonts/fonts.ini")
|
||||
(("=NotoSans/") (string-append "=" #$font-google-noto
|
||||
"/share/fonts/truetype/"))
|
||||
(("=DejaVu/") (string-append "=" #$font-dejavu
|
||||
"/share/fonts/truetype/"))))))))
|
||||
(inputs (list ffmpeg-5
|
||||
font-dejavu
|
||||
font-google-noto
|
||||
; Not needed, since we don’t have freesans.
|
||||
;font-wqy-microhei
|
||||
freetype
|
||||
libx11
|
||||
lua
|
||||
portaudio
|
||||
portmidi
|
||||
sdl2
|
||||
sdl2-image
|
||||
sqlite
|
||||
zlib))
|
||||
(native-inputs (list pkg-config fpc autoconf automake))
|
||||
(synopsis "Karaoke game")
|
||||
(description
|
||||
"UltraStar Deluxe (USDX) is a karaoke game. It allows up to six players
|
||||
(package
|
||||
(name "ultrastar-deluxe")
|
||||
(version "2023.9.0")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/UltraStar-Deluxe/USDX.git")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"0sm0f67hpsys072yvp5phhza686ivbb18qlfy62vsdv0v9cizxia"))
|
||||
(patches (search-patches "ultrastar-deluxe-no-freesans.patch"))
|
||||
(modules '((guix build utils)))
|
||||
(snippet
|
||||
#~(begin
|
||||
;; Remove Windows binaries.
|
||||
(for-each delete-file (find-files "game" "\\.dll$"))
|
||||
;; Remove font blobs.
|
||||
(let ((font-directories
|
||||
(list "DejaVu" "FreeSans" "NotoSans"
|
||||
"wqy-microhei")))
|
||||
(for-each
|
||||
(lambda (d) (delete-file-recursively
|
||||
(string-append "game/fonts/" d)))
|
||||
font-directories))))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:tests? #f ; No tests.
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(add-after 'unpack 'fix-configure
|
||||
(lambda* (#:key inputs configure-flags outputs #:allow-other-keys)
|
||||
(define (where inputs file)
|
||||
(dirname (search-input-file inputs file)))
|
||||
;; The configure script looks for lua$version, but we
|
||||
;; provide lua-$version.
|
||||
(substitute* "configure.ac"
|
||||
(("lua\\$i") "lua-$i"))
|
||||
;; fpc does not pass -lfoo to the linker, but uses its own
|
||||
;; linker script, which references libs. Pass the libraries
|
||||
;; listed in that linker script, so our custom linker adds
|
||||
;; a correct rpath.
|
||||
(substitute* "src/Makefile.in"
|
||||
(("linkflags\\s+:= ")
|
||||
(string-append
|
||||
"linkflags := -lpthread -lsqlite3 -lSDL2"
|
||||
" -lSDL2_image -ldl "
|
||||
" -lz -lfreetype -lportaudio -lavcodec"
|
||||
" -lavformat -lavutil -lswresample"
|
||||
" -lswscale -llua -ldl -lX11 -lportmidi"
|
||||
" -L" (where inputs "lib/libz.so")
|
||||
" -L" (where inputs "lib/libX11.so")
|
||||
" -L" (where inputs "lib/libportmidi.so"))))))
|
||||
(add-after 'install 'font-paths
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
(substitute* (string-append
|
||||
(assoc-ref outputs "out")
|
||||
"/share/ultrastardx/fonts/fonts.ini")
|
||||
(("=NotoSans/") (string-append "=" #$font-google-noto
|
||||
"/share/fonts/truetype/"))
|
||||
(("=DejaVu/") (string-append "=" #$font-dejavu
|
||||
"/share/fonts/truetype/"))))))))
|
||||
(inputs (list ffmpeg-5
|
||||
font-dejavu
|
||||
font-google-noto
|
||||
; Not needed, since we don’t have freesans.
|
||||
;font-wqy-microhei
|
||||
freetype
|
||||
libx11
|
||||
lua
|
||||
portaudio
|
||||
portmidi
|
||||
sdl2
|
||||
sdl2-image
|
||||
sqlite
|
||||
zlib))
|
||||
(native-inputs (list pkg-config fpc autoconf automake))
|
||||
(synopsis "Karaoke game")
|
||||
(description
|
||||
"UltraStar Deluxe (USDX) is a karaoke game. It allows up to six players
|
||||
to sing along with music using microphones in order to score points, depending
|
||||
on the pitch of the voice and the rhythm of singing.")
|
||||
(home-page "https://usdx.eu/")
|
||||
(license license:gpl2+))))
|
||||
(home-page "https://usdx.eu/")
|
||||
(license license:gpl2+)))
|
||||
|
||||
(define-public steam-devices-udev-rules
|
||||
;; Last release from 2019-04-10
|
||||
(let ((commit "d87ef558408c5e7a1a793d738db4c9dc2cb5f8fa")
|
||||
(revision "0"))
|
||||
(let ((commit "13443480a64fe8f10676606bd57da6de89f8ccb1")
|
||||
(revision "1"))
|
||||
(package
|
||||
(name "steam-devices-udev-rules")
|
||||
(version (git-version "1.0.0.61" revision commit))
|
||||
@@ -11296,7 +11293,7 @@ on the pitch of the voice and the rhythm of singing.")
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"1yqigraz9f19018ma5n2pbx7naadh9960lia3z8ayg7vz1fjdl54"))))
|
||||
"0i086gmnk93q76sw1laa9br6b7zj2r6nrrw7d64y4q9wcrlxw2bi"))))
|
||||
(build-system copy-build-system)
|
||||
(arguments
|
||||
'(#:install-plan '(("./" "lib/udev/rules.d"
|
||||
|
||||
@@ -1050,6 +1050,29 @@ scrollable tiling of windows and per monitor workspaces. It's inspired by paper
|
||||
notebooks and tiling window managers.")
|
||||
(license license:gpl3)))
|
||||
|
||||
(define-public gnome-shell-extension-night-theme-switcher
|
||||
(package
|
||||
(name "gnome-shell-extension-night-theme-switcher")
|
||||
(version "65")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url
|
||||
"https://gitlab.com/rmnvgr/nightthemeswitcher-gnome-shell-extension")
|
||||
(commit version)))
|
||||
(sha256
|
||||
(base32 "0qhi2g2lh6m8vhrmmfi60977f0i4k9x1zj68lrvpzzlqndz8cgh9"))
|
||||
(file-name (git-file-name name version))))
|
||||
(build-system meson-build-system)
|
||||
(native-inputs (list pkg-config (list glib "bin")))
|
||||
(synopsis "Automatic theme switcher for GNOME Shell")
|
||||
(description
|
||||
"Automatically toggle your GNOME desktop's color scheme between light and
|
||||
dark, switch backgrounds and run custom commands at sunset and sunrise.")
|
||||
(home-page "https://nightthemeswitcher.romainvigier.fr")
|
||||
(license license:gpl2+)))
|
||||
|
||||
(define-public gpaste
|
||||
(package
|
||||
(name "gpaste")
|
||||
|
||||
@@ -5,7 +5,7 @@
|
||||
;;; Copyright © 2015 Sou Bunnbu <iyzsong@gmail.com>
|
||||
;;; Copyright © 2016, 2017, 2018, 2019, 2021 Efraim Flashner <efraim@flashner.co.il>
|
||||
;;; Copyright © 2016 Alex Griffin <a@ajgrf.com>
|
||||
;;; Copyright © 2017 Clément Lassieur <clement@lassieur.org>
|
||||
;;; Copyright © 2017, 2023 Clément Lassieur <clement@lassieur.org>
|
||||
;;; Copyright © 2017, 2018 Nikita <nikita@n0.is>
|
||||
;;; Copyright © 2017, 2018, 2020 Tobias Geerinckx-Rice <me@tobias.gr>
|
||||
;;; Copyright © 2018, 2020 Ricardo Wurmus <rekado@elephly.net>
|
||||
@@ -393,7 +393,12 @@ from collections.abc import MutableSequence"))))
|
||||
"-src.tgz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0iccpdvc0kvpww5a31k9gjkqigyz016i7v80r9zamd34w4fl6mx4")))))))
|
||||
"0iccpdvc0kvpww5a31k9gjkqigyz016i7v80r9zamd34w4fl6mx4"))
|
||||
(patches
|
||||
(cons
|
||||
(search-patch
|
||||
"icu4c-fix-TestHebrewCalendarInTemporalLeapYear.patch")
|
||||
(origin-patches (package-source icu4c)))))))))
|
||||
|
||||
;;;
|
||||
;;; Localization helper procedures.
|
||||
@@ -542,9 +547,9 @@ variable defined below. It requires guile-json to be installed."
|
||||
;; XXXX: Workaround 'snippet' limitations.
|
||||
(define computed-origin-method (@@ (guix packages) computed-origin-method))
|
||||
|
||||
(define %icecat-base-version "115.3.0")
|
||||
(define %icecat-base-version "115.3.1")
|
||||
(define %icecat-version (string-append %icecat-base-version "-guix0-preview1"))
|
||||
(define %icecat-build-id "20230926000000") ;must be of the form YYYYMMDDhhmmss
|
||||
(define %icecat-build-id "20230928000000") ;must be of the form YYYYMMDDhhmmss
|
||||
|
||||
;; 'icecat-source' is a "computed" origin that generates an IceCat tarball
|
||||
;; from the corresponding upstream Firefox ESR tarball, using the 'makeicecat'
|
||||
@@ -564,12 +569,12 @@ variable defined below. It requires guile-json to be installed."
|
||||
"firefox-" upstream-firefox-version ".source.tar.xz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1jkhfrnjyjr3c7xs724ny0wv3jamld8ia6ggx273ppw17l5wa7ca"))))
|
||||
"0lqymabkhxpdhmgz81if8za1hdakh8nlm4cmsir4y1fa95p2bnkx"))))
|
||||
|
||||
;; The upstream-icecat-base-version may be older than the
|
||||
;; %icecat-base-version.
|
||||
(upstream-icecat-base-version "115.3.0")
|
||||
(gnuzilla-commit "3486a3e29280093102e11411d4f05987133ba789")
|
||||
(upstream-icecat-base-version "115.3.1")
|
||||
(gnuzilla-commit "1b0f0ba84716023657dd7dff72cb408e35380a60")
|
||||
(gnuzilla-source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@@ -581,7 +586,7 @@ variable defined below. It requires guile-json to be installed."
|
||||
(string-take gnuzilla-commit 8)))
|
||||
(sha256
|
||||
(base32
|
||||
"0x3dlrvf59w8sgg5n6ryaj39yxr2573zmshimfh4mzbidv3j4aw5"))))
|
||||
"0kvdyg2kzjabldqa10any5ad8r06pcybamvfnkn7nwcvd86g8s0v"))))
|
||||
|
||||
;; 'search-patch' returns either a valid file name or #f, so wrap it
|
||||
;; in 'assume-valid-file-name' to avoid 'local-file' warnings.
|
||||
|
||||
@@ -139,7 +139,7 @@ between two other data points.")
|
||||
(define-public gama
|
||||
(package
|
||||
(name "gama")
|
||||
(version "2.24")
|
||||
(version "2.26")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
@@ -147,7 +147,7 @@ between two other data points.")
|
||||
version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"04y9x3dcxmlrz5m8n5sx0xhvr30qq0vwcc749nxcvmdv4c2nm100"))
|
||||
"1mn7ma8w4spqc0p4slp1s14q45z7hzyp49ikvd1spsz9jqz8ycpk"))
|
||||
(modules '((guix build utils)))
|
||||
(snippet
|
||||
'(begin
|
||||
|
||||
@@ -2,7 +2,7 @@
|
||||
;;; Copyright © 2015, 2016, 2021, 2022 Ludovic Courtès <ludo@gnu.org>
|
||||
;;; Copyright © 2015 Tomáš Čech <sleep_walker@gnu.org>
|
||||
;;; Copyright © 2016, 2019 Leo Famulari <leo@famulari.name>
|
||||
;;; Copyright © 2016, 2017, 2019 Ricardo Wurmus <rekado@elephly.net>
|
||||
;;; Copyright © 2016, 2017, 2019, 2023 Ricardo Wurmus <rekado@elephly.net>
|
||||
;;; Copyright © 2016, 2018, 2021, 2023 Efraim Flashner <efraim@flashner.co.il>
|
||||
;;; Copyright © 2016 Andreas Enge <andreas@enge.fr>
|
||||
;;; Copyright © 2017 Manolis Fragkiskos Ragkousis <manolis837@gmail.com>
|
||||
@@ -1505,7 +1505,7 @@ in Julia).")
|
||||
(define-public povray
|
||||
(package
|
||||
(name "povray")
|
||||
(version "3.7.0.8")
|
||||
(version "3.7.0.10")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
@@ -1514,43 +1514,41 @@ in Julia).")
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"1q114n4m3r7qy3yn954fq7p46rg7ypdax5fazxr9yj1jklf1lh6z"))
|
||||
"19bv962clwc6sk53kq8bqf77fh0v46afm2knjbki8yj0m1mnyyd0"))
|
||||
(modules '((guix build utils)))
|
||||
(snippet
|
||||
'(begin
|
||||
;; Delete bundled libraries.
|
||||
(delete-file-recursively "libraries")
|
||||
#t))))
|
||||
;; Delete bundled libraries.
|
||||
'(delete-file-recursively "libraries"))))
|
||||
(build-system gnu-build-system)
|
||||
(native-inputs
|
||||
(list autoconf automake pkg-config))
|
||||
(inputs
|
||||
`(("boost" ,boost)
|
||||
("libjpeg" ,libjpeg-turbo)
|
||||
("libpng" ,libpng)
|
||||
("libtiff" ,libtiff)
|
||||
("openexr" ,openexr-2)
|
||||
("sdl" ,sdl)
|
||||
("zlib" ,zlib)))
|
||||
(list boost
|
||||
libjpeg-turbo
|
||||
libpng
|
||||
libtiff
|
||||
openexr-2
|
||||
sdl
|
||||
zlib))
|
||||
(arguments
|
||||
'(#:configure-flags
|
||||
(list "COMPILED_BY=Guix"
|
||||
(string-append "--with-boost-libdir="
|
||||
(assoc-ref %build-inputs "boost") "/lib")
|
||||
"--disable-optimiz-arch")
|
||||
(list
|
||||
#:configure-flags
|
||||
#~(list "COMPILED_BY=Guix"
|
||||
(string-append "--with-boost-libdir="
|
||||
#$(this-package-input "boost") "/lib")
|
||||
"--disable-optimiz-arch")
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-after 'unpack 'run-prebuild
|
||||
(lambda _
|
||||
(setenv "HOME" (getcwd))
|
||||
(with-directory-excursion "unix"
|
||||
(substitute* "prebuild.sh"
|
||||
(("/bin/sh") (which "sh")))
|
||||
(invoke "sh" "prebuild.sh"))
|
||||
#t))
|
||||
;; The bootstrap script is run by the prebuild script in the
|
||||
;; "run-prebuild" phase.
|
||||
(delete 'bootstrap))))
|
||||
'(modify-phases %standard-phases
|
||||
(add-after 'unpack 'run-prebuild
|
||||
(lambda _
|
||||
(setenv "HOME" (getcwd))
|
||||
(with-directory-excursion "unix"
|
||||
(substitute* "prebuild.sh"
|
||||
(("/bin/sh") (which "sh")))
|
||||
(invoke "sh" "prebuild.sh"))))
|
||||
;; The bootstrap script is run by the prebuild script in the
|
||||
;; "run-prebuild" phase.
|
||||
(delete 'bootstrap))))
|
||||
(synopsis "Tool for creating three-dimensional graphics")
|
||||
(description
|
||||
"@code{POV-Ray} is short for the Persistence of Vision Raytracer, a tool
|
||||
|
||||
@@ -1680,7 +1680,7 @@ Scheme by using Guile’s foreign function interface.")
|
||||
(replace "guile" guile-2.2)))))
|
||||
|
||||
(define-public guile-mastodon
|
||||
(let ((commit "74b75bcf547df92acee1e0466ecd7ec07f775392")
|
||||
(let ((commit "0a94ae6bbca63d440eb3f6d7e636630aca6d2b52")
|
||||
(revision "1"))
|
||||
(package
|
||||
(name "guile-mastodon")
|
||||
@@ -1693,7 +1693,7 @@ Scheme by using Guile’s foreign function interface.")
|
||||
(file-name (string-append name "-" version "-checkout"))
|
||||
(sha256
|
||||
(base32
|
||||
"1wx5h6wa9c0na8mrnr2nv1nzjvq68zyrly8yyp11dsskhaw4y33h"))))
|
||||
"17ic44jypv1yq296w8b4nm99189fdgmdw1pdx0172x97dicsf2j6"))))
|
||||
(build-system gnu-build-system)
|
||||
(native-inputs
|
||||
(list autoconf automake emacs-minimal pkg-config texinfo))
|
||||
@@ -5468,7 +5468,7 @@ with a FSM is being built (for example, from a Makefile.)")
|
||||
guile-lib
|
||||
guile-smc))
|
||||
(inputs (list bash-minimal guile-3.0 guile-lib))
|
||||
(propagated-inputs (list guile-smc))
|
||||
(propagated-inputs (list guile-lib guile-smc))
|
||||
(home-page "https://github.com/artyom-poptsov/guile-ini")
|
||||
(synopsis "Guile library for INI format support")
|
||||
(description
|
||||
|
||||
@@ -655,7 +655,7 @@ hardware works with a fully free operating system or not.")
|
||||
(define-public headsetcontrol
|
||||
(package
|
||||
(name "headsetcontrol")
|
||||
(version "2.6.1")
|
||||
(version "2.7.0")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@@ -664,7 +664,7 @@ hardware works with a fully free operating system or not.")
|
||||
(commit version)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "1pkgi87wjyris53frw3qmjdqvkzyyl55ikjgn8cidnbr6i3rqls9"))))
|
||||
(base32 "0l8bvdaj70s6qf8pds8bl367355j9lqb9mvc4lskz0n4ya8xs2dl"))))
|
||||
(build-system cmake-build-system)
|
||||
(inputs
|
||||
(list hidapi))
|
||||
|
||||
@@ -221,15 +221,15 @@ written in Go.")
|
||||
(define-public go-ipfs
|
||||
(package
|
||||
(name "go-ipfs")
|
||||
(version "0.13.0")
|
||||
(version "0.14.0")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch/tarbomb)
|
||||
(uri (string-append
|
||||
"https://dist.ipfs.io/go-ipfs/v" version
|
||||
"/go-ipfs-source.tar.gz"))
|
||||
"https://dist.ipfs.io/kubo/v" version
|
||||
"/kubo-source.tar.gz"))
|
||||
(sha256
|
||||
(base32 "1cx47ais2zn62c0r7lmrpfzia2gjyr61qi8my5wg3pj3dfr0fhkq"))
|
||||
(base32 "0n7nfiymh6knj3h672gdrb24g9vz9j15x3vn6aml2nk7pv9dsy7p"))
|
||||
(file-name (string-append name "-" version "-source"))
|
||||
(modules '((guix build utils)))
|
||||
(snippet '(for-each delete-file-recursively
|
||||
@@ -282,8 +282,8 @@ written in Go.")
|
||||
(build-system go-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:unpack-path "github.com/ipfs/go-ipfs"
|
||||
#:import-path "github.com/ipfs/go-ipfs/cmd/ipfs"
|
||||
#:unpack-path "github.com/ipfs/kubo"
|
||||
#:import-path "github.com/ipfs/kubo/cmd/ipfs"
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
;; https://github.com/ipfs/kubo/blob/master/docs/command-completion.md
|
||||
|
||||
@@ -9,7 +9,7 @@
|
||||
;;; Copyright © 2017, 2019, 2021 Tobias Geerinckx-Rice <me@tobias.gr>
|
||||
;;; Copyright © 2018, 2019 Gábor Boskovits <boskovits@gmail.com>
|
||||
;;; Copyright © 2018 Chris Marusich <cmmarusich@gmail.com>
|
||||
;;; Copyright © 2018, 2019, 2020, 2021, 2022 Efraim Flashner <efraim@flashner.co.il>
|
||||
;;; Copyright © 2018-2023 Efraim Flashner <efraim@flashner.co.il>
|
||||
;;; Copyright © 2019, 2020, 2021 Björn Höfling <bjoern.hoefling@bjoernhoefling.de>
|
||||
;;; Copyright © 2020 Jan (janneke) Nieuwenhuizen <janneke@gnu.org>
|
||||
;;; Copyright © 2020 Raghav Gururajan <raghavgururajan@disroot.org>
|
||||
@@ -1078,6 +1078,18 @@ new Date();"))
|
||||
(substitute-keyword-arguments (package-arguments openjdk9)
|
||||
((#:phases phases)
|
||||
`(modify-phases ,phases
|
||||
,@(if (target-aarch64?)
|
||||
`((replace 'patch-for-aarch64
|
||||
(lambda _
|
||||
(substitute* "src/hotspot/cpu/aarch64/interp_masm_aarch64.hpp"
|
||||
;; This line is duplicated, so remove both occurrences,
|
||||
;; then add back one occurrence by substituting a
|
||||
;; comment that occurs once.
|
||||
(("using MacroAssembler::call_VM_leaf_base;") "")
|
||||
(("Interpreter specific version of call_VM_base")
|
||||
(string-append "Interpreter specific version of call_VM_base\n"
|
||||
" using MacroAssembler::call_VM_leaf_base;"))))))
|
||||
'())
|
||||
(replace 'fix-java-shebangs
|
||||
(lambda _
|
||||
;; This file was "fixed" by patch-source-shebangs, but it requires
|
||||
@@ -1451,6 +1463,18 @@ new Date();"))
|
||||
(substitute-keyword-arguments (package-arguments openjdk11)
|
||||
((#:phases phases)
|
||||
#~(modify-phases #$phases
|
||||
#$@(if (target-aarch64?)
|
||||
#~((add-after 'unpack 'patch-for-aarch64
|
||||
(lambda _
|
||||
(substitute* "src/hotspot/cpu/aarch64/interp_masm_aarch64.hpp"
|
||||
;; This line is duplicated, so remove both occurrences,
|
||||
;; then add back one occurrence by substituting a
|
||||
;; comment that occurs once.
|
||||
(("using MacroAssembler::call_VM_leaf_base;") "")
|
||||
(("Interpreter specific version of call_VM_base")
|
||||
(string-append "Interpreter specific version of call_VM_base\n"
|
||||
" using MacroAssembler::call_VM_leaf_base;"))))))
|
||||
#~())
|
||||
(replace 'fix-java-shebangs
|
||||
(lambda _
|
||||
;; 'blocked' was renamed to 'blacklisted' in this version for
|
||||
|
||||
@@ -492,6 +492,21 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS."
|
||||
;; The current "stable" kernels. That is, the most recently released major
|
||||
;; versions that are still supported upstream.
|
||||
|
||||
(define-public linux-libre-6.5-version "6.5.5")
|
||||
(define-public linux-libre-6.5-gnu-revision "gnu")
|
||||
(define deblob-scripts-6.5
|
||||
(linux-libre-deblob-scripts
|
||||
linux-libre-6.5-version
|
||||
linux-libre-6.5-gnu-revision
|
||||
(base32 "01mm6v67bcrhgm97axsw46x0iix9im7hmlb765f3bkjhwklpxdy7")
|
||||
(base32 "132ps1jprxw6kqyscsar38fn7s12kg416mfhz7w702f4ajgq1ndi")))
|
||||
(define-public linux-libre-6.5-pristine-source
|
||||
(let ((version linux-libre-6.5-version)
|
||||
(hash (base32 "15gg8sb6cfgk1afwj7fl7mj4nkj14w43vzwvw0qsg3nzyxwh7wcc")))
|
||||
(make-linux-libre-source version
|
||||
(%upstream-linux-source version hash)
|
||||
deblob-scripts-6.5)))
|
||||
|
||||
(define-public linux-libre-6.4-version "6.4.16")
|
||||
(define-public linux-libre-6.4-gnu-revision "gnu")
|
||||
(define deblob-scripts-6.4
|
||||
@@ -628,6 +643,11 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS."
|
||||
(patches (append (origin-patches source)
|
||||
patches))))
|
||||
|
||||
(define-public linux-libre-6.5-source
|
||||
(source-with-patches linux-libre-6.5-pristine-source
|
||||
(list %boot-logo-patch
|
||||
%linux-libre-arm-export-__sync_icache_dcache-patch)))
|
||||
|
||||
(define-public linux-libre-6.4-source
|
||||
(source-with-patches linux-libre-6.4-pristine-source
|
||||
(list %boot-logo-patch
|
||||
@@ -747,6 +767,11 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS."
|
||||
(description "Headers of the Linux-Libre kernel.")
|
||||
(license license:gpl2)))
|
||||
|
||||
(define-public linux-libre-headers-6.5
|
||||
(make-linux-libre-headers* linux-libre-6.5-version
|
||||
linux-libre-6.5-gnu-revision
|
||||
linux-libre-6.5-source))
|
||||
|
||||
(define-public linux-libre-headers-6.4
|
||||
(make-linux-libre-headers* linux-libre-6.4-version
|
||||
linux-libre-6.4-gnu-revision
|
||||
@@ -1091,6 +1116,14 @@ Linux kernel. It has been modified to remove all non-free binary blobs.")
|
||||
;;; Generic kernel packages.
|
||||
;;;
|
||||
|
||||
(define-public linux-libre-6.5
|
||||
(make-linux-libre* linux-libre-6.5-version
|
||||
linux-libre-6.5-gnu-revision
|
||||
linux-libre-6.5-source
|
||||
'("x86_64-linux" "i686-linux" "armhf-linux"
|
||||
"aarch64-linux" "powerpc64le-linux" "riscv64-linux")
|
||||
#:configuration-file kernel-config))
|
||||
|
||||
(define-public linux-libre-6.4
|
||||
(make-linux-libre* linux-libre-6.4-version
|
||||
linux-libre-6.4-gnu-revision
|
||||
@@ -1828,6 +1861,36 @@ Linux kernel module, it also contains a modprobe configuration and udev rules,
|
||||
which need to be installed separately.")
|
||||
(license license:gpl3+)))
|
||||
|
||||
(define-public vendor-reset-linux-module
|
||||
(let ((commit "4b466e92a2d9f76ce1082cde982c7be0be91e248")
|
||||
(revision "0"))
|
||||
(package
|
||||
(name "vendor-reset-linux-module")
|
||||
(version (git-version "0.1.0" revision commit))
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/gnif/vendor-reset")
|
||||
(commit commit)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"1gaf4j20grng689c9fylcqri3j9ycnhr2bsva2z6qcdqvzl6yxbi"))))
|
||||
(build-system linux-module-build-system)
|
||||
(arguments
|
||||
(list #:tests? #f)) ;no test suite
|
||||
(home-page "https://github.com/gnif/vendor-reset")
|
||||
(synopsis
|
||||
"Kernel module that resets GPUs that are affected by the reset bug")
|
||||
(description
|
||||
"This package provides a kernel module that is capable of
|
||||
resetting hardware devices into a state where they can be
|
||||
re-initialized or passed through into a virtual machine (VFIO).
|
||||
While it would be great to have these in the kernel as PCI quirks,
|
||||
some of the reset procedures are very complex and would never be
|
||||
accepted as a quirk (ie AMD Vega 10).")
|
||||
(license license:gpl2))))
|
||||
|
||||
|
||||
;;;
|
||||
;;; Pluggable authentication modules (PAM).
|
||||
@@ -10316,7 +10379,7 @@ error detection and correction (EDAC).")
|
||||
(define-public spectre-meltdown-checker
|
||||
(package
|
||||
(name "spectre-meltdown-checker")
|
||||
(version "0.45")
|
||||
(version "0.46")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
@@ -10325,15 +10388,14 @@ error detection and correction (EDAC).")
|
||||
(file-name (git-file-name name version))
|
||||
(patches
|
||||
(search-patches
|
||||
"spectre-meltdown-checker-externalize-fwdb.patch"
|
||||
"spectre-meltdown-checker-find-kernel.patch"))
|
||||
"spectre-meltdown-checker-externalize-fwdb.patch"))
|
||||
;; Remove builtin firmware database.
|
||||
(modules '((guix build utils)))
|
||||
(snippet '(substitute* "spectre-meltdown-checker.sh"
|
||||
(("^# [AI],.*") "")))
|
||||
(sha256
|
||||
(base32
|
||||
"1xx8h5791lhc2xw0dcbzjkklzvlxwxkjzh8di4g8divfy24fqsn8"))))
|
||||
"0j42p6dayb7k87kf8sqimxlaswis3qh0569a15zccyknv9vf129k"))))
|
||||
(build-system copy-build-system)
|
||||
(arguments
|
||||
(list
|
||||
@@ -10352,11 +10414,11 @@ error detection and correction (EDAC).")
|
||||
(find-command inputs cmd))
|
||||
|
||||
;; Commands safe to substitute directly.
|
||||
(("\\<(awk|(base|dir)name|bunzip|g(un)?zip|lz4)\\>" all cmd)
|
||||
(("\\<(awk|(base|dir)name|bunzip2|g(un)?zip|lz4)\\>" all cmd)
|
||||
(find-command inputs cmd))
|
||||
(("\\<(modprobe|pgrep|rmmod|umount|unlzma)\\>" all cmd)
|
||||
(("\\<(lzop|mktemp|modprobe|pgrep|rmmod|umount)\\>" all cmd)
|
||||
(find-command inputs cmd))
|
||||
(("\\<(unxz|unzstd|uuencode)\\>" all cmd)
|
||||
(("\\<(unlzma|unxz|unzstd|uuencode)\\>" all cmd)
|
||||
(find-command inputs cmd))
|
||||
|
||||
;; Commands which should only be substituted based on their
|
||||
|
||||
@@ -3502,6 +3502,37 @@ values in other options.")
|
||||
(define-public ecl-py-configparser
|
||||
(sbcl-package->ecl-package sbcl-py-configparser))
|
||||
|
||||
(define-public sbcl-cl-ini
|
||||
(let ((commit "e630acb405022a7ae11969bf908669fee1191ab7")
|
||||
(revision "0"))
|
||||
(package
|
||||
(name "sbcl-cl-ini")
|
||||
(version (git-version "0.1" revision commit))
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/compufox/cl-ini")
|
||||
(commit commit)))
|
||||
(file-name (git-file-name "sbcl-cl-ini" version))
|
||||
(sha256
|
||||
(base32
|
||||
"12vy3gspqn0wmkyz5id1xrgv1scgb16m7pkvmbmi19vlpj2iyq7p"))))
|
||||
(build-system asdf-build-system/sbcl)
|
||||
(native-inputs (list sbcl-prove))
|
||||
(inputs (list sbcl-cl-str))
|
||||
(home-page "https://github.com/compufox/cl-ini")
|
||||
(synopsis "INI file parser for Common Lisp")
|
||||
(description
|
||||
"Parse INI formatted files into a Common Lisp list structure.")
|
||||
(license license:expat))))
|
||||
|
||||
(define-public cl-ini
|
||||
(sbcl-package->cl-source-package sbcl-cl-ini))
|
||||
|
||||
(define-public ecl-cl-ini
|
||||
(sbcl-package->ecl-package sbcl-cl-ini))
|
||||
|
||||
(define-public sbcl-pythonic-string-reader
|
||||
(let ((commit "47a70ba1e32362e03dad6ef8e6f36180b560f86a"))
|
||||
(package
|
||||
|
||||
@@ -53,6 +53,7 @@
|
||||
;;; Copyright © 2022 ( <paren@disroot.org>
|
||||
;;; Copyright © 2023 Timo Wilken <guix@twilken.net>
|
||||
;;; Copyright © 2023 Arjan Adriaanse <arjan@adriaan.se>
|
||||
;;; Copyright © 2023 Wilko Meyer <w@wmeyer.eu>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
@@ -1885,7 +1886,7 @@ delivery.")
|
||||
(define-public exim
|
||||
(package
|
||||
(name "exim")
|
||||
(version "4.96")
|
||||
(version "4.96.1")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
@@ -1899,7 +1900,7 @@ delivery.")
|
||||
(string-append "https://ftp.exim.org/pub/exim/exim4/old/"
|
||||
file-name))))
|
||||
(sha256
|
||||
(base32 "18ziihkpa23lybm7m2l9wp2farxw0bd5ng7xm9ylgcrfgf95d6i9"))))
|
||||
(base32 "0g83cxkq3znh5b3r2a3990qxysw7d2l71jwcxaxzvq8pqdahgb4k"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
(list #:phases
|
||||
@@ -2228,6 +2229,16 @@ hashing scheme (such as scrypt) plug-in for @code{Dovecot}.")
|
||||
;; Likely to be included in next version
|
||||
(search-patches "isync-openssl3-fix.patch"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(add-after 'install 'substitute-openssl-path
|
||||
(lambda* (#:key inputs outputs #:allow-other-keys)
|
||||
(substitute* (string-append #$output "/bin/mbsync-get-cert")
|
||||
(("openssl s_client")
|
||||
(string-append (search-input-file inputs "/bin/openssl")
|
||||
" s_client"))))))))
|
||||
(native-inputs
|
||||
(list perl))
|
||||
(inputs
|
||||
|
||||
File diff suppressed because it is too large
Load Diff
@@ -28,7 +28,7 @@
|
||||
;;; Copyright © 2020, 2022 Raghav Gururajan <rg@raghavgururajan.name>
|
||||
;;; Copyright © 2020, 2021 Robert Karszniewicz <avoidr@posteo.de>
|
||||
;;; Copyright © 2020 Giacomo Leidi <goodoldpaul@autistici.org>
|
||||
;;; Copyright © 2021 Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>
|
||||
;;; Copyright © 2021, 2023 Denis 'GNUtoo' Carikli <GNUtoo@cyberdimension.org>
|
||||
;;; Copyright © 2021 Vinicius Monego <monego@posteo.net>
|
||||
;;; Copyright © 2021 jgart <jgart@dismail.de>
|
||||
;;; Copyright © 2022 Aleksandr Vityazev <avityazev@posteo.org>
|
||||
@@ -1480,14 +1480,14 @@ Qt-based XMPP library QXmpp.")
|
||||
(define-public prosody
|
||||
(package
|
||||
(name "prosody")
|
||||
(version "0.12.3")
|
||||
(version "0.12.4")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://prosody.im/downloads/source/"
|
||||
"prosody-" version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0091vc0v8xnxkpdi4qpy4dirn92y4pa09q1qssi40q7l3w1hvnim"))))
|
||||
"0mjqss1h2cw0nlyj9nkxdg1bnq1j0zndlv1g8665aa9g7hki5ms7"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
`(#:tests? #f ;tests require "busted"
|
||||
@@ -2636,41 +2636,43 @@ replacement.")
|
||||
(license license:gpl2+)))
|
||||
|
||||
(define-public tdlib
|
||||
(package
|
||||
(name "tdlib")
|
||||
(version "1.8.10")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/tdlib/td")
|
||||
(commit "ef4c3902fe082b83192d578af7a0bb956a917fed")))
|
||||
(sha256
|
||||
(base32 "1pi53v8qjl0lzann99pv90i4qx2lbjz10rvnwzkbqbn932y3j3gg"))
|
||||
(file-name (git-file-name name version))))
|
||||
(build-system cmake-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:build-type "Release"
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(add-after 'unpack 'remove-failing-tests
|
||||
(lambda _
|
||||
(substitute* "test/CMakeLists.txt"
|
||||
;; The test cases are compiled into a distinct binary
|
||||
;; which uses mtproto.cpp to attempt to connect to
|
||||
;; a remote server. Removing this file from the sources
|
||||
;; list disables those specific test cases.
|
||||
(("\\$\\{CMAKE_CURRENT_SOURCE_DIR\\}/mtproto.cpp") "")))))))
|
||||
(native-inputs
|
||||
(list gperf openssl zlib php doxygen))
|
||||
(synopsis "Cross-platform library for building Telegram clients")
|
||||
(description "Tdlib is a cross-platform library for creating custom
|
||||
(let ((commit "4d1d22d6f477d61f6ff2b8f6e49de1847092c5b4")
|
||||
(revision "0"))
|
||||
(package
|
||||
(name "tdlib")
|
||||
(version (git-version "1.8.16" revision commit))
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/tdlib/td")
|
||||
(commit commit)))
|
||||
(sha256
|
||||
(base32 "0nv921k795kq0l993rxzd5pm5v3l3mnwbaxb7d7d0m0506l4w9fk"))
|
||||
(file-name (git-file-name name version))))
|
||||
(build-system cmake-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:build-type "Release"
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(add-after 'unpack 'remove-failing-tests
|
||||
(lambda _
|
||||
(substitute* "test/CMakeLists.txt"
|
||||
;; The test cases are compiled into a distinct binary
|
||||
;; which uses mtproto.cpp to attempt to connect to
|
||||
;; a remote server. Removing this file from the sources
|
||||
;; list disables those specific test cases.
|
||||
(("\\$\\{CMAKE_CURRENT_SOURCE_DIR\\}/mtproto.cpp") "")))))))
|
||||
(native-inputs
|
||||
(list gperf openssl zlib php doxygen))
|
||||
(synopsis "Cross-platform library for building Telegram clients")
|
||||
(description "Tdlib is a cross-platform library for creating custom
|
||||
Telegram clients following the official Telegram API. It can be easily used
|
||||
from almost any programming language with a C-FFI and features first-class
|
||||
support for high performance Telegram Bot creation.")
|
||||
(home-page "https://core.telegram.org/tdlib")
|
||||
(license license:boost1.0)))
|
||||
(home-page "https://core.telegram.org/tdlib")
|
||||
(license license:boost1.0))))
|
||||
|
||||
(define-public purple-mm-sms
|
||||
(package
|
||||
@@ -3193,7 +3195,7 @@ designed for experienced users.")
|
||||
(define-public matterbridge
|
||||
(package
|
||||
(name "matterbridge")
|
||||
(version "1.25.2")
|
||||
(version "1.26.0")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
@@ -3202,7 +3204,7 @@ designed for experienced users.")
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"0csvxsgl62fjkrmk0wy64h2qaiy16m0wh6pqfbhz0kfacq16p9an"))))
|
||||
"0939fiy7z53izznfhlr7c6vaskbmkbj3ncb09fzx5dmz9cjngy80"))))
|
||||
;; Using the go-build-system results in the same error message
|
||||
;; than in the bug 1551[1]. So we fix it by running go build
|
||||
;; manually in the git repository as-is as this is the solution
|
||||
|
||||
@@ -246,7 +246,16 @@ protocol.")
|
||||
;; actually invoked.
|
||||
(lambda _
|
||||
(substitute* "doc/meson.build"
|
||||
(("rsync") "ls")))))))
|
||||
(("rsync") "ls"))))
|
||||
(add-after 'install 'move-completion
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
(let* ((out (assoc-ref outputs "out"))
|
||||
(contrib (string-append out "/share/doc/mpc/contrib"))
|
||||
(completion
|
||||
(string-append out "/etc/bash-completion.d/")))
|
||||
(mkdir-p completion)
|
||||
(rename-file (string-append contrib "/mpc-completion.bash")
|
||||
(string-append completion "/mpc"))))))))
|
||||
(inputs (list libmpdclient))
|
||||
(native-inputs
|
||||
(list pkg-config python-sphinx))
|
||||
@@ -613,7 +622,7 @@ mpdevil loads all tags and covers on demand.")
|
||||
(define-public mympd
|
||||
(package
|
||||
(name "mympd")
|
||||
(version "12.0.2")
|
||||
(version "12.0.4")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
@@ -622,7 +631,7 @@ mpdevil loads all tags and covers on demand.")
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"19139ina79jdfmc2vh6xcp5n0z8c41fi2fz2fmvg623bpix3fcgf"))))
|
||||
"06g0b7j12lrrz8mrg6wp2fxy0qm4x9z2fri05by40399z1akgsx4"))))
|
||||
(build-system cmake-build-system)
|
||||
(arguments
|
||||
(list
|
||||
|
||||
@@ -4103,7 +4103,7 @@ using the beets FetchArt plugin.")
|
||||
(define-public milkytracker
|
||||
(package
|
||||
(name "milkytracker")
|
||||
(version "1.03.00")
|
||||
(version "1.04.00")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
@@ -4112,7 +4112,7 @@ using the beets FetchArt plugin.")
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"025fj34gq2kmkpwcswcyx7wdxb89vm944dh685zi4bxx0hz16vvk"))
|
||||
"0zxaq69yb30wyw4dmx3hypzgyxsypp6i9qrv599jlbbbzhwjysqc"))
|
||||
(modules '((guix build utils)))
|
||||
;; Remove non-FSDG compliant sample songs.
|
||||
(snippet
|
||||
|
||||
@@ -174,8 +174,8 @@
|
||||
;; Note: the 'update-guix-package.scm' script expects this definition to
|
||||
;; start precisely like this.
|
||||
(let ((version "1.4.0")
|
||||
(commit "d0438fcf658cb8c95b32381fac44b0a6278459ed")
|
||||
(revision 11))
|
||||
(commit "e863274e67e2242b970845783172c9f4e49405ca")
|
||||
(revision 13))
|
||||
(package
|
||||
(name "guix")
|
||||
|
||||
@@ -191,7 +191,7 @@
|
||||
(commit commit)))
|
||||
(sha256
|
||||
(base32
|
||||
"05i32m7cxs7vhl54hvs0f9g84jhnn2dbc9qcgaqvqnqc4i8yhhxr"))
|
||||
"0g8p0w9qrqbzz3b4fzbvvqpdfgwhlxpz75n3ysa6haima5s19mp3"))
|
||||
(file-name (string-append "guix-" version "-checkout"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
|
||||
@@ -64,14 +64,14 @@
|
||||
(define-public parallel
|
||||
(package
|
||||
(name "parallel")
|
||||
(version "20230822")
|
||||
(version "20230922")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "mirror://gnu/parallel/parallel-"
|
||||
version ".tar.bz2"))
|
||||
(sha256
|
||||
(base32 "0ppwdgp9j7r0a5l5zb0mla70jq24wmy1n33b5naw44y1lfclanab"))
|
||||
(base32 "0qz0pzy6icgdr6ak0gszzlxqm4s0w514ayyg2d8gcpayvlb78i0i"))
|
||||
(snippet
|
||||
'(begin
|
||||
(use-modules (guix build utils))
|
||||
|
||||
@@ -1,59 +0,0 @@
|
||||
From: zeromus
|
||||
Origin: upstream, https://sourceforge.net/p/desmume/code/5514, https://sourceforge.net/p/desmume/code/5517, https://sourceforge.net/p/desmume/code/5430
|
||||
Subject: fix GCC6 issues
|
||||
Bug: https://sourceforge.net/p/desmume/bugs/1570/
|
||||
Bug-Debian: http://bugs.debian.org/811691
|
||||
|
||||
Index: desmume/src/MMU_timing.h
|
||||
===================================================================
|
||||
--- desmume/src/MMU_timing.h (revision 5513)
|
||||
+++ desmume/src/MMU_timing.h (revision 5517)
|
||||
@@ -155,8 +155,8 @@
|
||||
enum { ASSOCIATIVITY = 1 << ASSOCIATIVESHIFT };
|
||||
enum { BLOCKSIZE = 1 << BLOCKSIZESHIFT };
|
||||
enum { TAGSHIFT = SIZESHIFT - ASSOCIATIVESHIFT };
|
||||
- enum { TAGMASK = (u32)(~0 << TAGSHIFT) };
|
||||
- enum { BLOCKMASK = ((u32)~0 >> (32 - TAGSHIFT)) & (u32)(~0 << BLOCKSIZESHIFT) };
|
||||
+ enum { TAGMASK = (u32)(~0U << TAGSHIFT) };
|
||||
+ enum { BLOCKMASK = ((u32)~0U >> (32 - TAGSHIFT)) & (u32)(~0U << BLOCKSIZESHIFT) };
|
||||
enum { WORDSIZE = sizeof(u32) };
|
||||
enum { WORDSPERBLOCK = (1 << BLOCKSIZESHIFT) / WORDSIZE };
|
||||
enum { DATAPERWORD = WORDSIZE * ASSOCIATIVITY };
|
||||
Index: desmume/src/ctrlssdl.cpp
|
||||
===================================================================
|
||||
--- desmume/src/ctrlssdl.cpp (revision 5513)
|
||||
+++ desmume/src/ctrlssdl.cpp (revision 5517)
|
||||
@@ -200,7 +200,7 @@
|
||||
break;
|
||||
case SDL_JOYAXISMOTION:
|
||||
/* Dead zone of 50% */
|
||||
- if( (abs(event.jaxis.value) >> 14) != 0 )
|
||||
+ if( ((u32)abs(event.jaxis.value) >> 14) != 0 )
|
||||
{
|
||||
key = ((event.jaxis.which & 15) << 12) | JOY_AXIS << 8 | ((event.jaxis.axis & 127) << 1);
|
||||
if (event.jaxis.value > 0) {
|
||||
@@ -370,7 +370,7 @@
|
||||
Note: button constants have a 1bit offset. */
|
||||
case SDL_JOYAXISMOTION:
|
||||
key_code = ((event->jaxis.which & 15) << 12) | JOY_AXIS << 8 | ((event->jaxis.axis & 127) << 1);
|
||||
- if( (abs(event->jaxis.value) >> 14) != 0 )
|
||||
+ if( ((u32)abs(event->jaxis.value) >> 14) != 0 )
|
||||
{
|
||||
if (event->jaxis.value > 0)
|
||||
key_code |= 1;
|
||||
Index: desmume/src/wifi.cpp
|
||||
===================================================================
|
||||
--- desmume/src/wifi.cpp (revision 5429)
|
||||
+++ desmume/src/wifi.cpp (revision 5430)
|
||||
@@ -320,9 +320,9 @@
|
||||
|
||||
#if (WIFI_LOGGING_LEVEL >= 1)
|
||||
#if WIFI_LOG_USE_LOGC
|
||||
- #define WIFI_LOG(level, ...) if(level <= WIFI_LOGGING_LEVEL) LOGC(8, "WIFI: "__VA_ARGS__);
|
||||
+ #define WIFI_LOG(level, ...) if(level <= WIFI_LOGGING_LEVEL) LOGC(8, "WIFI: " __VA_ARGS__);
|
||||
#else
|
||||
- #define WIFI_LOG(level, ...) if(level <= WIFI_LOGGING_LEVEL) printf("WIFI: "__VA_ARGS__);
|
||||
+ #define WIFI_LOG(level, ...) if(level <= WIFI_LOGGING_LEVEL) printf("WIFI: " __VA_ARGS__);
|
||||
#endif
|
||||
#else
|
||||
#define WIFI_LOG(level, ...) {}
|
||||
@@ -1,18 +0,0 @@
|
||||
From e1f7039f1b06add4fb75b2f8774000b8f05574af Mon Sep 17 00:00:00 2001
|
||||
From: rogerman <rogerman@users.sf.net>
|
||||
Date: Mon, 17 Aug 2015 21:15:04 +0000
|
||||
Subject: Fix bug with libfat string handling.
|
||||
|
||||
diff --git a/src/utils/libfat/directory.cpp b/src/utils/libfat/directory.cpp
|
||||
index 765d7ae5..b6d7f01f 100644
|
||||
--- a/src/utils/libfat/directory.cpp
|
||||
+++ b/src/utils/libfat/directory.cpp
|
||||
@@ -139,7 +139,7 @@ static size_t _FAT_directory_mbstoucs2 (ucs2_t* dst, const char* src, size_t len
|
||||
int bytes;
|
||||
size_t count = 0;
|
||||
|
||||
- while (count < len-1 && src != '\0') {
|
||||
+ while (count < len-1 && *src != '\0') {
|
||||
bytes = mbrtowc (&tempChar, src, MB_CUR_MAX, &ps);
|
||||
if (bytes > 0) {
|
||||
*dst = (ucs2_t)tempChar;
|
||||
29
gnu/packages/patches/emacs-debbugs-keep-patch-subject.patch
Normal file
29
gnu/packages/patches/emacs-debbugs-keep-patch-subject.patch
Normal file
@@ -0,0 +1,29 @@
|
||||
Preserve subject when replying to patch threads.
|
||||
Upstream status: likely to be in the next release (bug#66330)
|
||||
|
||||
diff --git a/debbugs-gnu.el b/debbugs-gnu.el
|
||||
index f366fba11d..cd549e364d 100644
|
||||
--- a/debbugs-gnu.el
|
||||
+++ b/debbugs-gnu.el
|
||||
@@ -1747,6 +1747,12 @@ MERGED is the list of bugs merged with this one."
|
||||
(format "Re: bug#%d: %s" id (alist-get 'subject status)))
|
||||
(debbugs-gnu-summary-mode 1)))
|
||||
|
||||
+(defcustom debbugs-gnu-summary-keep-subject
|
||||
+ (rx "[PATCH" (? (0+ (not (any digit "/]"))) (1+ digit) "/" (1+ digit)) "]")
|
||||
+ "Regular expression which keeps the original message subject in replies."
|
||||
+ :version "29.1"
|
||||
+ :type 'regexp)
|
||||
+
|
||||
(defvar debbugs-gnu-summary-mode-map
|
||||
(let ((map (make-sparse-keymap)))
|
||||
(define-key map "C" #'debbugs-gnu-send-control-message)
|
||||
@@ -1778,6 +1784,8 @@ MERGED is the list of bugs merged with this one."
|
||||
(cons new new))
|
||||
address))))))
|
||||
,@(and debbugs-gnu-subject
|
||||
+ (not (string-match-p debbugs-gnu-summary-keep-subject
|
||||
+ debbugs-gnu-subject))
|
||||
`((subject ,debbugs-gnu-subject)))))))
|
||||
|
||||
(defun debbugs-gnu-guess-current-id ()
|
||||
60
gnu/packages/patches/emacs-elpy-dup-test-name.patch
Normal file
60
gnu/packages/patches/emacs-elpy-dup-test-name.patch
Normal file
@@ -0,0 +1,60 @@
|
||||
Forwarded upstream: https://github.com/jorgenschaefer/elpy/pull/2031
|
||||
|
||||
diff --git a/test/elpy-config--insert-help-test.el b/test/elpy-config--insert-help-test.el
|
||||
index bb293ff..2584fd4 100644
|
||||
--- a/test/elpy-config--insert-help-test.el
|
||||
+++ b/test/elpy-config--insert-help-test.el
|
||||
@@ -2,6 +2,6 @@
|
||||
;; with output. We will test its constituent functions later, and just
|
||||
;; make sure it doesn't throw an error here.
|
||||
|
||||
-(ert-deftest elpy-config-should-not-fail ()
|
||||
+(ert-deftest elpy-config-should-not-fail-insert-help ()
|
||||
(elpy-testcase ()
|
||||
(elpy-config--insert-help)))
|
||||
diff --git a/test/elpy-library-root-test.el b/test/elpy-library-root-test.el
|
||||
index fdc88b2..2f7484c 100644
|
||||
--- a/test/elpy-library-root-test.el
|
||||
+++ b/test/elpy-library-root-test.el
|
||||
@@ -4,7 +4,7 @@
|
||||
(should (f-equal? (elpy-library-root)
|
||||
project-root))))
|
||||
|
||||
-(ert-deftest elpy-library-root-should-find-current-directory ()
|
||||
+(ert-deftest elpy-library-root-should-find-current-directory-2 ()
|
||||
(elpy-testcase ((:project project-root
|
||||
"p1/p2/test.py"
|
||||
"p1/p2/__init__.py"
|
||||
diff --git a/test/elpy-open-and-indent-line-above-test.el b/test/elpy-open-and-indent-line-above-test.el
|
||||
index d846712..790dd26 100644
|
||||
--- a/test/elpy-open-and-indent-line-above-test.el
|
||||
+++ b/test/elpy-open-and-indent-line-above-test.el
|
||||
@@ -1,4 +1,4 @@
|
||||
-(ert-deftest elpy-open-and-indent-line-below ()
|
||||
+(ert-deftest elpy-open-and-indent-line-above ()
|
||||
(elpy-testcase ()
|
||||
(elpy-enable)
|
||||
(python-mode)
|
||||
diff --git a/test/elpy-rpc-get-usages-test.el b/test/elpy-rpc-get-usages-test.el
|
||||
index 85f0ad4..be5d7c5 100644
|
||||
--- a/test/elpy-rpc-get-usages-test.el
|
||||
+++ b/test/elpy-rpc-get-usages-test.el
|
||||
@@ -1,4 +1,4 @@
|
||||
-(ert-deftest elpy-rpc-get-completions ()
|
||||
+(ert-deftest elpy-rpc-get-completions-usages ()
|
||||
(elpy-testcase ()
|
||||
(mletf* ((called-args nil)
|
||||
(elpy-rpc (&rest args) (setq called-args args)))
|
||||
diff --git a/test/elpy-rpc-test.el b/test/elpy-rpc-test.el
|
||||
index 8b5bdca..3ff6965 100644
|
||||
--- a/test/elpy-rpc-test.el
|
||||
+++ b/test/elpy-rpc-test.el
|
||||
@@ -17,7 +17,7 @@
|
||||
(should (equal error 'elpy-rpc--default-error-callback))))
|
||||
(elpy-rpc "test-method" nil 'success))))
|
||||
|
||||
-(ert-deftest elpy-rpc-should-use-default-without-error-callback ()
|
||||
+(ert-deftest elpy-rpc-should-use-default-without-error-callback-2 ()
|
||||
(elpy-testcase ()
|
||||
(mletf* ((elpy-rpc--call-blocking
|
||||
(method params)
|
||||
18
gnu/packages/patches/emacs-next-exec-path.patch
Normal file
18
gnu/packages/patches/emacs-next-exec-path.patch
Normal file
@@ -0,0 +1,18 @@
|
||||
Do not capture the build-time value of $PATH in the 'emacs' executable
|
||||
since this can noticeably increase the size of the closure of Emacs
|
||||
with things like GCC being referenced.
|
||||
|
||||
Index: emacs-next/lisp/loadup.el
|
||||
===================================================================
|
||||
--- emacs-next.orig/lisp/loadup.el
|
||||
+++ emacs-next/lisp/loadup.el
|
||||
@@ -599,7 +599,8 @@ lost after dumping")))
|
||||
((equal dump-mode "dump") "emacs")
|
||||
((equal dump-mode "bootstrap") "emacs")
|
||||
((equal dump-mode "pbootstrap") "bootstrap-emacs.pdmp")
|
||||
- (t (error "Unrecognized dump mode %s" dump-mode)))))
|
||||
+ (t (error "Unrecognized dump mode %s" dump-mode))))
|
||||
+ (exec-path nil))
|
||||
(when (and (featurep 'native-compile)
|
||||
(equal dump-mode "pdump"))
|
||||
;; Don't enable this before bootstrap is completed, as the
|
||||
@@ -0,0 +1,18 @@
|
||||
We substitute this anyway, so let's make it easier to substitute.
|
||||
|
||||
--- a/lisp/emacs-lisp/comp.el
|
||||
+++ b/lisp/emacs-lisp/comp.el
|
||||
@@ -203,9 +203,7 @@ and above."
|
||||
:type '(repeat string)
|
||||
:version "28.1")
|
||||
|
||||
-(defcustom native-comp-driver-options
|
||||
- (cond ((eq system-type 'darwin) '("-Wl,-w"))
|
||||
- ((eq system-type 'cygwin) '("-Wl,-dynamicbase")))
|
||||
+(defcustom native-comp-driver-options nil
|
||||
"Options passed verbatim to the native compiler's back-end driver.
|
||||
Note that not all options are meaningful; typically only the options
|
||||
affecting the assembler and linker are likely to be useful.
|
||||
--
|
||||
2.38.0
|
||||
|
||||
65
gnu/packages/patches/gklib-suitesparse.patch
Normal file
65
gnu/packages/patches/gklib-suitesparse.patch
Normal file
@@ -0,0 +1,65 @@
|
||||
This patch contains the relevant changes to GKlib made in SuiteSparse
|
||||
(CHOLMOD) for the version 7.2.0
|
||||
(https://github.com/DrTimothyAldenDavis/SuiteSparse/commit/8a7641cdb4809533c681417e94f98058c07c5da2).
|
||||
The disabling of signal handling when MATLAB_MEX_FILE is defined is omitted.
|
||||
|
||||
diff -ur a/CMakeLists.txt b/CMakeLists.txt
|
||||
--- a/CMakeLists.txt
|
||||
+++ b/CMakeLists.txt
|
||||
@@ -3,6 +3,8 @@
|
||||
|
||||
option(BUILD_SHARED_LIBS "Build shared libraries (.dll/.so) instead of static ones (.lib/.a)" OFF)
|
||||
|
||||
+find_package ( SuiteSparse_config 7.1.0 REQUIRED )
|
||||
+
|
||||
get_filename_component(abs "." ABSOLUTE)
|
||||
set(GKLIB_PATH ${abs})
|
||||
unset(abs)
|
||||
diff -ur a/GKlib.h b/GKlib.h
|
||||
--- a/GKlib.h
|
||||
+++ b/GKlib.h
|
||||
@@ -59,6 +59,24 @@
|
||||
#include <omp.h>
|
||||
#endif
|
||||
|
||||
+/* -------------------------------------------------------------------------- */
|
||||
+/* Added for incorporation into SuiteSparse.
|
||||
+ Tim Davis, Oct 31, 2022, Texas A&M University. */
|
||||
+#include "SuiteSparse_config.h"
|
||||
+#define malloc SuiteSparse_config_malloc
|
||||
+#define calloc SuiteSparse_config_calloc
|
||||
+#define realloc SuiteSparse_config_realloc
|
||||
+#define free(p) \
|
||||
+{ \
|
||||
+ if ((p) != NULL) \
|
||||
+ { \
|
||||
+ SuiteSparse_config_free (p) ; \
|
||||
+ (p) = NULL ; \
|
||||
+ } \
|
||||
+}
|
||||
+
|
||||
+/* -------------------------------------------------------------------------- */
|
||||
+
|
||||
|
||||
|
||||
|
||||
diff -ur a/memory.c b/memory.c
|
||||
--- a/memory.c
|
||||
+++ b/memory.c
|
||||
@@ -108,6 +108,8 @@
|
||||
/*************************************************************************/
|
||||
int gk_malloc_init()
|
||||
{
|
||||
+ gkmcore = NULL;
|
||||
+#if 0
|
||||
if (gkmcore == NULL)
|
||||
gkmcore = gk_gkmcoreCreate();
|
||||
|
||||
@@ -115,6 +117,7 @@
|
||||
return 0;
|
||||
|
||||
gk_gkmcorePush(gkmcore);
|
||||
+#endif
|
||||
|
||||
return 1;
|
||||
}
|
||||
@@ -0,0 +1,33 @@
|
||||
From b6b3e89231a623441940889b5badd90f74bdce2b Mon Sep 17 00:00:00 2001
|
||||
From: Frank Tang <ftang@chromium.org>
|
||||
Date: Mon, 18 Sep 2023 20:20:42 -0700
|
||||
Subject: [PATCH] ICU-22512 Fix broken TestHebrewCalendarInTemporalLeapYear
|
||||
|
||||
Fix broken test mistakenly landed in
|
||||
https://github.com/unicode-org/icu/pull/2274
|
||||
|
||||
Some important steps were missed in the last landing.
|
||||
---
|
||||
icu4c/source/test/intltest/caltest.cpp | 2 ++
|
||||
1 file changed, 2 insertions(+)
|
||||
|
||||
diff --git a/icu4c/source/test/intltest/caltest.cpp b/icu4c/source/test/intltest/caltest.cpp
|
||||
index 9d89f468eef0..18b96f231ba3 100644
|
||||
--- a/source/test/intltest/caltest.cpp
|
||||
+++ b/source/test/intltest/caltest.cpp
|
||||
@@ -4028,6 +4028,7 @@ void CalendarTest::TestHebrewCalendarInTemporalLeapYear() {
|
||||
for (gc.set(startYear, UCAL_JANUARY, 1);
|
||||
gc.get(UCAL_YEAR, status) <= stopYear;
|
||||
gc.add(UCAL_DATE, incrementDays, status)) {
|
||||
+ cal->setTime(gc.getTime(status), status);
|
||||
if (failure(status, "add/get/set/getTime/setTime incorrect")) return;
|
||||
|
||||
int32_t cal_year = cal->get(UCAL_EXTENDED_YEAR, status);
|
||||
@@ -4036,6 +4037,7 @@ void CalendarTest::TestHebrewCalendarInTemporalLeapYear() {
|
||||
leapTest->set(UCAL_MONTH, 0);
|
||||
leapTest->set(UCAL_DATE, 1);
|
||||
// If 10 months after TISHRI is TAMUZ, then it is a leap year.
|
||||
+ leapTest->add(UCAL_MONTH, 10, status);
|
||||
hasLeapMonth = leapTest->get(UCAL_MONTH, status) == icu::HebrewCalendar::TAMUZ;
|
||||
yearForHasLeapMonth = cal_year;
|
||||
}
|
||||
71
gnu/packages/patches/scilab-hdf5-1.8-api.patch
Normal file
71
gnu/packages/patches/scilab-hdf5-1.8-api.patch
Normal file
@@ -0,0 +1,71 @@
|
||||
This patch fixes the compilation with hdf5 version >= 1.10. Adapted from
|
||||
https://aur.archlinux.org/cgit/aur.git/plain/hdf5_18_api.patch?h=scilab-git.
|
||||
|
||||
diff -ur a/scilab/modules/hdf5/includes/HDF5Objects.h b/scilab/modules/hdf5/includes/HDF5Objects.h
|
||||
--- a/scilab/modules/hdf5/includes/HDF5Objects.h
|
||||
+++ b/scilab/modules/hdf5/includes/HDF5Objects.h
|
||||
@@ -16,14 +16,12 @@
|
||||
#ifndef __HDF5OBJECTS_H__
|
||||
#define __HDF5OBJECTS_H__
|
||||
|
||||
-#define H5_NO_DEPRECATED_SYMBOLS
|
||||
#undef H5_USE_16_API
|
||||
+#define H5_USE_18_API
|
||||
|
||||
-#define H5Eset_auto_vers 2
|
||||
#include <hdf5.h>
|
||||
#include <hdf5_hl.h>
|
||||
|
||||
-#undef H5_NO_DEPRECATED_SYMBOLS
|
||||
|
||||
//#define __HDF5OBJECTS_DEBUG__
|
||||
//#define __HDF5ERROR_PRINT__
|
||||
diff -ur a/scilab/modules/hdf5/Makefile.am b/scilab/modules/hdf5/Makefile.am
|
||||
--- a/scilab/modules/hdf5/Makefile.am
|
||||
+++ b/scilab/modules/hdf5/Makefile.am
|
||||
@@ -104,8 +104,7 @@
|
||||
-DH5Gopen_vers=2 \
|
||||
-DH5Tget_array_dims_vers=2 \
|
||||
-DH5Acreate_vers=2 \
|
||||
- -DH5Rdereference_vers=2 \
|
||||
- -DNO_DEPRECATED_SYMBOLS
|
||||
+ -DH5Rdereference_vers=2
|
||||
|
||||
|
||||
libscihdf5_la_CPPFLAGS = \
|
||||
diff -ur a/scilab/modules/hdf5/sci_gateway/cpp/sci_hdf5_listvar_v3.cpp b/scilab/modules/hdf5/sci_gateway/cpp/sci_hdf5_listvar_v3.cpp
|
||||
--- a/scilab/modules/hdf5/sci_gateway/cpp/sci_hdf5_listvar_v3.cpp
|
||||
+++ b/scilab/modules/hdf5/sci_gateway/cpp/sci_hdf5_listvar_v3.cpp
|
||||
@@ -13,6 +13,8 @@
|
||||
*
|
||||
*/
|
||||
|
||||
+#define H5_USE_18_API
|
||||
+
|
||||
#include <vector>
|
||||
#include "function.hxx"
|
||||
#include "string.hxx"
|
||||
diff -ur a/scilab/modules/hdf5/src/c/h5_readDataFromFile.c b/scilab/modules/hdf5/src/c/h5_readDataFromFile.c
|
||||
--- a/scilab/modules/hdf5/src/c/h5_readDataFromFile.c
|
||||
+++ b/scilab/modules/hdf5/src/c/h5_readDataFromFile.c
|
||||
@@ -13,7 +13,7 @@
|
||||
*
|
||||
*/
|
||||
|
||||
-#define H5_NO_DEPRECATED_SYMBOLS
|
||||
+#define H5_USE_18_API
|
||||
|
||||
#ifndef _MSC_VER
|
||||
#include <sys/time.h>
|
||||
diff -ur a/scilab/modules/hdf5/src/c/h5_readDataFromFile_v1.c b/scilab/modules/hdf5/src/c/h5_readDataFromFile_v1.c
|
||||
--- a/scilab/modules/hdf5/src/c/h5_readDataFromFile_v1.c
|
||||
+++ b/scilab/modules/hdf5/src/c/h5_readDataFromFile_v1.c
|
||||
@@ -13,7 +13,7 @@
|
||||
*
|
||||
*/
|
||||
|
||||
-#define H5_NO_DEPRECATED_SYMBOLS
|
||||
+#define H5_USE_18_API
|
||||
|
||||
#ifndef _MSC_VER
|
||||
#include <sys/time.h>
|
||||
@@ -1,27 +1,28 @@
|
||||
From 340b08737e552c3c186863d76d123808d853a159 Mon Sep 17 00:00:00 2001
|
||||
From 8caeb440a176cb7f8908403da51106c74e2b5cb8 Mon Sep 17 00:00:00 2001
|
||||
From: Hilton Chain <hako@ultrarare.space>
|
||||
Date: Sat, 12 Nov 2022 22:45:24 +0800
|
||||
Date: Thu, 27 Jul 2023 14:45:14 +0800
|
||||
Subject: [PATCH] Replace fwdb downloader with a local file option.
|
||||
|
||||
Also warn about non-free software.
|
||||
---
|
||||
spectre-meltdown-checker.sh | 180 +++---------------------------------
|
||||
1 file changed, 15 insertions(+), 165 deletions(-)
|
||||
spectre-meltdown-checker.sh | 253 +++---------------------------------
|
||||
1 file changed, 17 insertions(+), 236 deletions(-)
|
||||
|
||||
diff --git a/spectre-meltdown-checker.sh b/spectre-meltdown-checker.sh
|
||||
index 30f760c..ce46970 100755
|
||||
index e7b6b33..33bdf71 100755
|
||||
--- a/spectre-meltdown-checker.sh
|
||||
+++ b/spectre-meltdown-checker.sh
|
||||
@@ -22,8 +22,6 @@ exit_cleanup()
|
||||
@@ -23,9 +23,6 @@ exit_cleanup()
|
||||
[ -n "${dumped_config:-}" ] && [ -f "$dumped_config" ] && rm -f "$dumped_config"
|
||||
[ -n "${kerneltmp:-}" ] && [ -f "$kerneltmp" ] && rm -f "$kerneltmp"
|
||||
[ -n "${kerneltmp2:-}" ] && [ -f "$kerneltmp2" ] && rm -f "$kerneltmp2"
|
||||
- [ -n "${mcedb_tmp:-}" ] && [ -f "$mcedb_tmp" ] && rm -f "$mcedb_tmp"
|
||||
- [ -n "${intel_tmp:-}" ] && [ -d "$intel_tmp" ] && rm -rf "$intel_tmp"
|
||||
- [ -n "${linuxfw_tmp:-}" ] && [ -f "$linuxfw_tmp" ] && rm -f "$linuxfw_tmp"
|
||||
[ "${mounted_debugfs:-}" = 1 ] && umount /sys/kernel/debug 2>/dev/null
|
||||
[ "${mounted_procfs:-}" = 1 ] && umount "$procfs" 2>/dev/null
|
||||
[ "${insmod_cpuid:-}" = 1 ] && rmmod cpuid 2>/dev/null
|
||||
@@ -93,9 +91,9 @@ show_usage()
|
||||
@@ -97,9 +94,9 @@ show_usage()
|
||||
--vmm [auto,yes,no] override the detection of the presence of a hypervisor, default: auto
|
||||
--allow-msr-write allow probing for write-only MSRs, this might produce kernel logs or be blocked by your system
|
||||
--cpu [#,all] interact with CPUID and MSR of CPU core number #, or all (default: CPU core 0)
|
||||
@@ -34,10 +35,33 @@ index 30f760c..ce46970 100755
|
||||
--dump-mock-data used to mimick a CPU on an other system, mainly used to help debugging this script
|
||||
|
||||
Return codes:
|
||||
@@ -837,147 +833,6 @@ show_header()
|
||||
@@ -858,217 +855,6 @@ show_header()
|
||||
_info
|
||||
}
|
||||
|
||||
-# Family-Model-Stepping to CPUID
|
||||
-# prints CPUID in base-10 to stdout
|
||||
-fms2cpuid()
|
||||
-{
|
||||
- _family="$1"
|
||||
- _model="$2"
|
||||
- _stepping="$3"
|
||||
-
|
||||
- if [ "$(( _family ))" -le 15 ]; then
|
||||
- _extfamily=0
|
||||
- _lowfamily=$(( _family ))
|
||||
- else
|
||||
- # when we have a family > 0xF, then lowfamily is stuck at 0xF
|
||||
- # and extfamily is ADDED to it (as in "+"), to ensure old software
|
||||
- # never sees a lowfamily < 0xF for newer families
|
||||
- _lowfamily=15
|
||||
- _extfamily=$(( (_family) - 15 ))
|
||||
- fi
|
||||
- _extmodel=$(( (_model & 0xF0 ) >> 4 ))
|
||||
- _lowmodel=$(( (_model & 0x0F ) >> 0 ))
|
||||
- echo $(( (_stepping & 0x0F) | (_lowmodel << 4) | (_lowfamily << 8) | (_extmodel << 16) | (_extfamily << 20) ))
|
||||
-}
|
||||
-
|
||||
-[ -z "$HOME" ] && HOME="$(getent passwd "$(whoami)" | cut -d: -f6)"
|
||||
-mcedb_cache="$HOME/.mcedb"
|
||||
-update_fwdb()
|
||||
@@ -97,13 +121,15 @@ index 30f760c..ce46970 100755
|
||||
- echo ERROR "please install the \`sqlite3\` program"
|
||||
- return 1
|
||||
- fi
|
||||
- mcedb_revision=$(sqlite3 "$mcedb_tmp" "select revision from MCE")
|
||||
- mcedb_revision=$(sqlite3 "$mcedb_tmp" "SELECT \"revision\" from \"MCE\"")
|
||||
- if [ -z "$mcedb_revision" ]; then
|
||||
- echo ERROR "downloaded file seems invalid"
|
||||
- return 1
|
||||
- fi
|
||||
- sqlite3 "$mcedb_tmp" "alter table Intel add column origin text"
|
||||
- sqlite3 "$mcedb_tmp" "update Intel set origin='mce'"
|
||||
- sqlite3 "$mcedb_tmp" "ALTER TABLE \"Intel\" ADD COLUMN \"origin\" TEXT"
|
||||
- sqlite3 "$mcedb_tmp" "ALTER TABLE \"AMD\" ADD COLUMN \"origin\" TEXT"
|
||||
- sqlite3 "$mcedb_tmp" "UPDATE \"Intel\" SET \"origin\"='mce'"
|
||||
- sqlite3 "$mcedb_tmp" "UPDATE \"AMD\" SET \"origin\"='mce'"
|
||||
-
|
||||
- echo OK "MCExtractor database revision $mcedb_revision"
|
||||
-
|
||||
@@ -141,7 +167,7 @@ index 30f760c..ce46970 100755
|
||||
- _version=$(echo "$_line" | awk '{print $8}')
|
||||
- _version=$(( _version ))
|
||||
- _version=$(printf "0x%08X" "$_version")
|
||||
- _sqlstm="$(printf "INSERT INTO Intel (origin,cpuid,version,yyyymmdd) VALUES (\"%s\",\"%s\",\"%s\",\"%s\");" "intel" "$(printf "%08X" "$_cpuid")" "$(printf "%08X" "$_version")" "$_date")"
|
||||
- _sqlstm="$(printf "INSERT INTO \"Intel\" (\"origin\",\"cpuid\",\"version\",\"yyyymmdd\") VALUES ('%s','%s','%s','%s');" "intel" "$(printf "%08X" "$_cpuid")" "$(printf "%08X" "$_version")" "$_date")"
|
||||
- sqlite3 "$mcedb_tmp" "$_sqlstm"
|
||||
- done
|
||||
- _intel_timestamp=$(stat -c %Y "$intel_tmp/Intel-Linux-Processor-Microcode-Data-Files-main/license" 2>/dev/null)
|
||||
@@ -150,10 +176,52 @@ index 30f760c..ce46970 100755
|
||||
- _intel_latest_date=$(date +%Y%m%d -d @"$_intel_timestamp")
|
||||
- else
|
||||
- echo "Falling back to the latest microcode date"
|
||||
- _intel_latest_date=$(sqlite3 "$mcedb_tmp" "SELECT yyyymmdd from Intel WHERE origin = 'intel' ORDER BY yyyymmdd DESC LIMIT 1;")
|
||||
- _intel_latest_date=$(sqlite3 "$mcedb_tmp" "SELECT \"yyyymmdd\" FROM \"Intel\" WHERE \"origin\"='intel' ORDER BY \"yyyymmdd\" DESC LIMIT 1;")
|
||||
- fi
|
||||
- echo DONE "(version $_intel_latest_date)"
|
||||
-
|
||||
- # now parse the most recent linux-firmware amd-ucode README file
|
||||
- _info_nol "Fetching latest amd-ucode README from linux-firmware project... "
|
||||
- linuxfw_url="https://git.kernel.org/pub/scm/linux/kernel/git/firmware/linux-firmware.git/tree/amd-ucode/README"
|
||||
- linuxfw_tmp=$(mktemp -t smc-linuxfw-XXXXXX)
|
||||
- if command -v wget >/dev/null 2>&1; then
|
||||
- wget -q "$linuxfw_url" -O "$linuxfw_tmp"; ret=$?
|
||||
- elif command -v curl >/dev/null 2>&1; then
|
||||
- curl -sL "$linuxfw_url" -o "$linuxfw_tmp"; ret=$?
|
||||
- elif command -v fetch >/dev/null 2>&1; then
|
||||
- fetch -q "$linuxfw_url" -o "$linuxfw_tmp"; ret=$?
|
||||
- else
|
||||
- echo ERROR "please install one of \`wget\`, \`curl\` of \`fetch\` programs"
|
||||
- return 1
|
||||
- fi
|
||||
- if [ "$ret" != 0 ]; then
|
||||
- echo ERROR "error $ret while downloading linux-firmware README"
|
||||
- return $ret
|
||||
- fi
|
||||
- echo DONE
|
||||
-
|
||||
- _info_nol "Parsing the README... "
|
||||
- nbfound=0
|
||||
- for line in $(grep -E 'Family=0x[0-9a-f]+ Model=0x[0-9a-f]+ Stepping=0x[0-9a-f]+: Patch=0x[0-9a-f]+' "$linuxfw_tmp" | tr " " ","); do
|
||||
- _debug "Parsing line $line"
|
||||
- _family=$( echo "$line" | grep -Eoi 'Family=0x[0-9a-f]+' | cut -d= -f2)
|
||||
- _model=$( echo "$line" | grep -Eoi 'Model=0x[0-9a-f]+' | cut -d= -f2)
|
||||
- _stepping=$(echo "$line" | grep -Eoi 'Stepping=0x[0-9a-f]+' | cut -d= -f2)
|
||||
- _version=$( echo "$line" | grep -Eoi 'Patch=0x[0-9a-f]+' | cut -d= -f2)
|
||||
- _version=$(printf "0x%08X" "$(( _version ))")
|
||||
- _cpuid=$(fms2cpuid "$_family" "$_model" "$_stepping")
|
||||
- _cpuid=$(printf "0x%08X" "$_cpuid")
|
||||
- _date="20000101"
|
||||
- _sqlstm="$(printf "INSERT INTO \"AMD\" (\"origin\",\"cpuid\",\"version\",\"yyyymmdd\") VALUES ('%s','%s','%s','%s');" "linux-firmware" "$(printf "%08X" "$_cpuid")" "$(printf "%08X" "$_version")" "$_date")"
|
||||
- _debug "family $_family model $_model stepping $_stepping cpuid $_cpuid"
|
||||
- _debug "$_sqlstm"
|
||||
- sqlite3 "$mcedb_tmp" "$_sqlstm"
|
||||
- nbfound=$((nbfound + 1))
|
||||
- unset _family _model _stepping _version _cpuid _date _sqlstm
|
||||
- done
|
||||
- echo "found $nbfound microcodes"
|
||||
- unset nbfound
|
||||
-
|
||||
- dbversion="$mcedb_revision+i$_intel_latest_date"
|
||||
-
|
||||
- if [ "$1" != builtin ] && [ -n "$previous_dbversion" ] && [ "$previous_dbversion" = "v$dbversion" ]; then
|
||||
@@ -165,8 +233,11 @@ index 30f760c..ce46970 100755
|
||||
- {
|
||||
- echo "# Spectre & Meltdown Checker";
|
||||
- echo "# %%% MCEDB v$dbversion";
|
||||
- sqlite3 "$mcedb_tmp" "SELECT '# I,0x'||t1.cpuid||',0x'||MAX(t1.version)||','||t1.yyyymmdd FROM Intel AS t1 LEFT OUTER JOIN Intel AS t2 ON t2.cpuid=t1.cpuid AND t2.yyyymmdd > t1.yyyymmdd WHERE t2.yyyymmdd IS NULL GROUP BY t1.cpuid ORDER BY t1.cpuid ASC;" | grep -v '^# .,0x00000000,';
|
||||
- sqlite3 "$mcedb_tmp" "SELECT '# A,0x'||t1.cpuid||',0x'||MAX(t1.version)||','||t1.yyyymmdd FROM AMD AS t1 LEFT OUTER JOIN AMD AS t2 ON t2.cpuid=t1.cpuid AND t2.yyyymmdd > t1.yyyymmdd WHERE t2.yyyymmdd IS NULL GROUP BY t1.cpuid ORDER BY t1.cpuid ASC;" | grep -v '^# .,0x00000000,';
|
||||
- # ensure the official Intel DB always has precedence over mcedb, even if mcedb has seen a more recent fw
|
||||
- sqlite3 "$mcedb_tmp" "DELETE FROM \"Intel\" WHERE \"origin\"!='intel' AND \"cpuid\" IN (SELECT \"cpuid\" FROM \"Intel\" WHERE \"origin\"='intel' GROUP BY \"cpuid\" ORDER BY \"cpuid\" ASC);"
|
||||
- # we'll use the more recent fw for Intel and AMD
|
||||
- sqlite3 "$mcedb_tmp" "SELECT '# I,0x'||\"t1\".\"cpuid\"||',0x'||MAX(\"t1\".\"version\")||','||\"t1\".\"yyyymmdd\" FROM \"Intel\" AS \"t1\" LEFT OUTER JOIN \"Intel\" AS \"t2\" ON \"t2\".\"cpuid\"=\"t1\".\"cpuid\" AND \"t2\".\"yyyymmdd\" > \"t1\".\"yyyymmdd\" WHERE \"t2\".\"yyyymmdd\" IS NULL GROUP BY \"t1\".\"cpuid\" ORDER BY \"t1\".\"cpuid\" ASC;" | grep -v '^# .,0x00000000,';
|
||||
- sqlite3 "$mcedb_tmp" "SELECT '# A,0x'||\"t1\".\"cpuid\"||',0x'||MAX(\"t1\".\"version\")||','||\"t1\".\"yyyymmdd\" FROM \"AMD\" AS \"t1\" LEFT OUTER JOIN \"AMD\" AS \"t2\" ON \"t2\".\"cpuid\"=\"t1\".\"cpuid\" AND \"t2\".\"yyyymmdd\" > \"t1\".\"yyyymmdd\" WHERE \"t2\".\"yyyymmdd\" IS NULL GROUP BY \"t1\".\"cpuid\" ORDER BY \"t1\".\"cpuid\" ASC;" | grep -v '^# .,0x00000000,';
|
||||
- } > "$mcedb_cache"
|
||||
- echo DONE "(version $dbversion)"
|
||||
-
|
||||
@@ -182,7 +253,7 @@ index 30f760c..ce46970 100755
|
||||
parse_opt_file()
|
||||
{
|
||||
# parse_opt_file option_name option_value
|
||||
@@ -1067,12 +922,15 @@ while [ -n "${1:-}" ]; do
|
||||
@@ -1158,12 +944,15 @@ while [ -n "${1:-}" ]; do
|
||||
# deprecated, kept for compatibility
|
||||
opt_explain=0
|
||||
shift
|
||||
@@ -204,7 +275,7 @@ index 30f760c..ce46970 100755
|
||||
elif [ "$1" = "--dump-mock-data" ]; then
|
||||
opt_mock=1
|
||||
shift
|
||||
@@ -2033,21 +1891,11 @@ is_xen_domU()
|
||||
@@ -2192,21 +1981,11 @@ is_xen_domU()
|
||||
fi
|
||||
}
|
||||
|
||||
@@ -228,7 +299,7 @@ index 30f760c..ce46970 100755
|
||||
fi
|
||||
read_mcedb()
|
||||
{
|
||||
@@ -2063,7 +1911,9 @@ is_latest_known_ucode()
|
||||
@@ -2222,7 +2001,9 @@ is_latest_known_ucode()
|
||||
return 2
|
||||
fi
|
||||
ucode_latest="latest microcode version for your CPU model is unknown"
|
||||
@@ -240,5 +311,5 @@ index 30f760c..ce46970 100755
|
||||
elif is_amd; then
|
||||
cpu_brand_prefix=A
|
||||
--
|
||||
2.38.1
|
||||
2.41.0
|
||||
|
||||
|
||||
@@ -1,26 +0,0 @@
|
||||
From 5b757d930ec0cf102b03fb9817d17e06c72e74b3 Mon Sep 17 00:00:00 2001
|
||||
From: Hilton Chain <hako@ultrarare.space>
|
||||
Date: Sat, 5 Nov 2022 23:22:31 +0800
|
||||
Subject: [PATCH] Locate the kernel bzimage used by Guix System
|
||||
|
||||
---
|
||||
spectre-meltdown-checker.sh | 2 ++
|
||||
1 file changed, 2 insertions(+)
|
||||
|
||||
diff --git a/spectre-meltdown-checker.sh b/spectre-meltdown-checker.sh
|
||||
index 248a444..855a090 100755
|
||||
--- a/spectre-meltdown-checker.sh
|
||||
+++ b/spectre-meltdown-checker.sh
|
||||
@@ -2251,6 +2251,8 @@ if [ "$opt_live" = 1 ]; then
|
||||
[ -e "/boot/kernel-genkernel-$(uname -m)-$(uname -r)" ] && opt_kernel="/boot/kernel-genkernel-$(uname -m)-$(uname -r)"
|
||||
# NixOS:
|
||||
[ -e "/run/booted-system/kernel" ] && opt_kernel="/run/booted-system/kernel"
|
||||
+ # Guix System:
|
||||
+ [ -e "/run/booted-system/kernel/bzImage" ] && opt_kernel="/run/booted-system/kernel/bzImage"
|
||||
# systemd kernel-install:
|
||||
[ -e "/etc/machine-id" ] && [ -e "/boot/$(cat /etc/machine-id)/$(uname -r)/linux" ] && opt_kernel="/boot/$(cat /etc/machine-id)/$(uname -r)/linux"
|
||||
# Clear Linux:
|
||||
|
||||
base-commit: a6c943d38f315f339697ec26e7374a09b88f2183
|
||||
--
|
||||
2.38.0
|
||||
@@ -1,33 +0,0 @@
|
||||
Fixes "multiple definition" errors when building with GCC 10+.
|
||||
|
||||
Based on <https://bugs.gentoo.org/show_bug.cgi?id=706706>.
|
||||
--- a/fig2dev/dev/gensvg.c 2010-07-01 22:41:16.000000000 +0200
|
||||
+++ b/fig2dev/dev/gensvg.c 2022-02-27 20:02:33.379945500 +0100
|
||||
@@ -230,10 +230,12 @@
|
||||
};
|
||||
|
||||
/* arrowhead arrays */
|
||||
-Point points[50], fillpoints[50], clippoints[50];
|
||||
-int npoints, nfillpoints, nclippoints;
|
||||
-int arrowx1, arrowy1; /* first point of object */
|
||||
-int arrowx2, arrowy2; /* second point of object */
|
||||
+Point fillpoints[50];
|
||||
+int nfillpoints;
|
||||
+extern Point points[50], clippoints[50];
|
||||
+extern int npoints, nclippoints;
|
||||
+extern int arrowx1, arrowy1; /* first point of object */
|
||||
+extern int arrowx2, arrowy2; /* second point of object */
|
||||
|
||||
static int tileno=0; /* number of current tile */
|
||||
|
||||
--- a/fig2dev/fig2dev.h 2010-03-16 19:53:20.000000000 +0100
|
||||
+++ b/fig2dev/fig2dev.h 2022-02-27 19:56:06.072253991 +0100
|
||||
@@ -126,7 +126,7 @@
|
||||
extern char *prog, *from, *to;
|
||||
extern char *name;
|
||||
extern double font_size;
|
||||
-Boolean correct_font_size; /* use correct font size */
|
||||
+extern Boolean correct_font_size; /* use correct font size */
|
||||
extern double mag, fontmag;
|
||||
extern FILE *tfp;
|
||||
|
||||
358
gnu/packages/patches/wcstools-extend-makefiles.patch
Normal file
358
gnu/packages/patches/wcstools-extend-makefiles.patch
Normal file
@@ -0,0 +1,358 @@
|
||||
From d702ed6d9da604e522625d08750636f680536743 Mon Sep 17 00:00:00 2001
|
||||
From: Sharlatan Hellseher <sharlatanus@gmail.com>
|
||||
Date: Mon, 11 Sep 2023 21:12:53 +0100
|
||||
Subject: [PATCH] wcstools: Extend makefiles.
|
||||
|
||||
This patch was partly sourced from Debian Astro:
|
||||
- source: https://salsa.debian.org/debian-astro-team/wcstools/-/tree/master/
|
||||
- file: debian/patches/Rename-libwcs-to-libwcstools-to-avoid-conflicts-with-Mark.patch
|
||||
- commit: 91eb27654fa096d6adebb26dab8d94f5fc2fc721
|
||||
|
||||
Additional changes applied:
|
||||
- do not rename library from libwcs to libwcstools
|
||||
- add 'install' target
|
||||
- add PREFIX and VERSION to ease packaging process
|
||||
---
|
||||
Makefile | 146 ++++++++++++++++++++++++++----------------------
|
||||
libwcs/Makefile | 22 ++++++--
|
||||
2 files changed, 96 insertions(+), 72 deletions(-)
|
||||
|
||||
diff --git a/Makefile b/Makefile
|
||||
index cdc8a46..caadd97 100644
|
||||
--- a/Makefile
|
||||
+++ b/Makefile
|
||||
@@ -1,12 +1,13 @@
|
||||
-CFLAGS= -g -D_FILE_OFFSET_BITS=64
|
||||
-CC= cc
|
||||
+CC = cc
|
||||
LIBWCS = libwcs/libwcs.a
|
||||
LIBS = $(LIBWCS) -lm
|
||||
-#LIBS = $(LIBWCS) -lm -lnsl -lsocket
|
||||
+
|
||||
+PREFIX ?= /usr
|
||||
BIN = bin
|
||||
+
|
||||
.PRECIOUS: ${LIBWCS} ${LIBNED}
|
||||
.c.o:
|
||||
- $(CC) -c $(CFLAGS) $(DEFS) $<
|
||||
+ $(CC) -c $(CFLAGS) $(CPPFLAGS) $(DEFS) $<
|
||||
|
||||
all: cphead delwcs delhead edhead fixpix gethead i2f imcat imhead immatch \
|
||||
imrot imsize imstar imwcs scat sethead addpix getpix setpix sky2xy \
|
||||
@@ -16,196 +17,205 @@ all: cphead delwcs delhead edhead fixpix gethead i2f imcat imhead immatch \
|
||||
isfile simpos bincat
|
||||
|
||||
addpix: addpix.c $(LIBWCS) libwcs/fitsfile.h
|
||||
- $(CC) $(CFLAGS) -o $(BIN)/addpix addpix.c $(LIBS)
|
||||
+ $(CC) $(CFLAGS) $(CPPFLAGS) $(LDFLAGS) -o $(BIN)/addpix addpix.c $(LIBS)
|
||||
|
||||
bincat: bincat.c $(LIBWCS) libwcs/fitsfile.h libwcs/wcs.h
|
||||
- $(CC) $(CFLAGS) -o $(BIN)/bincat bincat.c $(LIBS)
|
||||
+ $(CC) $(CFLAGS) $(CPPFLAGS) $(LDFLAGS) -o $(BIN)/bincat bincat.c $(LIBS)
|
||||
|
||||
char2sp: char2sp.c $(LIBWCS) libwcs/fitsfile.h
|
||||
- $(CC) $(CFLAGS) -o $(BIN)/char2sp char2sp.c $(LIBWCS)
|
||||
+ $(CC) $(CFLAGS) $(CPPFLAGS) $(LDFLAGS) -o $(BIN)/char2sp char2sp.c $(LIBWCS)
|
||||
|
||||
conpix: conpix.c $(LIBWCS) libwcs/fitsfile.h
|
||||
- $(CC) $(CFLAGS) -o $(BIN)/conpix conpix.c $(LIBS)
|
||||
+ $(CC) $(CFLAGS) $(CPPFLAGS) $(LDFLAGS) -o $(BIN)/conpix conpix.c $(LIBS)
|
||||
|
||||
cphead: cphead.c $(LIBWCS) libwcs/fitsfile.h
|
||||
- $(CC) $(CFLAGS) -o $(BIN)/cphead cphead.c $(LIBS)
|
||||
+ $(CC) $(CFLAGS) $(CPPFLAGS) $(LDFLAGS) -o $(BIN)/cphead cphead.c $(LIBS)
|
||||
|
||||
crlf: crlf.c
|
||||
- $(CC) $(CFLAGS) -o $(BIN)/crlf crlf.c
|
||||
+ $(CC) $(CFLAGS) $(CPPFLAGS) $(LDFLAGS) -o $(BIN)/crlf crlf.c
|
||||
|
||||
delwcs: delwcs.c $(LIBWCS) libwcs/fitsfile.h
|
||||
- $(CC) $(CFLAGS) -o $(BIN)/delwcs delwcs.c $(LIBS)
|
||||
+ $(CC) $(CFLAGS) $(CPPFLAGS) $(LDFLAGS) -o $(BIN)/delwcs delwcs.c $(LIBS)
|
||||
|
||||
delhead: delhead.c $(LIBWCS) libwcs/fitsfile.h
|
||||
- $(CC) $(CFLAGS) -o $(BIN)/delhead delhead.c $(LIBS)
|
||||
+ $(CC) $(CFLAGS) $(CPPFLAGS) $(LDFLAGS) -o $(BIN)/delhead delhead.c $(LIBS)
|
||||
|
||||
edhead: edhead.c $(LIBWCS) libwcs/fitsfile.h
|
||||
- $(CC) $(CFLAGS) -o $(BIN)/edhead edhead.c $(LIBS)
|
||||
+ $(CC) $(CFLAGS) $(CPPFLAGS) $(LDFLAGS) -o $(BIN)/edhead edhead.c $(LIBS)
|
||||
|
||||
filename: filename.c
|
||||
- $(CC) $(CFLAGS) -o $(BIN)/filename filename.c
|
||||
+ $(CC) $(CFLAGS) $(CPPFLAGS) $(LDFLAGS) -o $(BIN)/filename filename.c
|
||||
|
||||
filedir: filedir.c
|
||||
- $(CC) $(CFLAGS) -o $(BIN)/filedir filedir.c
|
||||
+ $(CC) $(CFLAGS) $(CPPFLAGS) $(LDFLAGS) -o $(BIN)/filedir filedir.c
|
||||
|
||||
fileroot: fileroot.c
|
||||
- $(CC) $(CFLAGS) -o $(BIN)/fileroot fileroot.c
|
||||
+ $(CC) $(CFLAGS) $(CPPFLAGS) $(LDFLAGS) -o $(BIN)/fileroot fileroot.c
|
||||
|
||||
filext: filext.c
|
||||
- $(CC) $(CFLAGS) -o $(BIN)/filext filext.c
|
||||
+ $(CC) $(CFLAGS) $(CPPFLAGS) $(LDFLAGS) -o $(BIN)/filext filext.c
|
||||
|
||||
fixhead: fixhead.c $(LIBWCS) libwcs/fitsfile.h
|
||||
- $(CC) $(CFLAGS) -o $(BIN)/fixhead fixhead.c $(LIBS)
|
||||
+ $(CC) $(CFLAGS) $(CPPFLAGS) $(LDFLAGS) -o $(BIN)/fixhead fixhead.c $(LIBS)
|
||||
|
||||
fixpix: fixpix.c $(LIBWCS) libwcs/fitsfile.h
|
||||
- $(CC) $(CFLAGS) -o $(BIN)/fixpix fixpix.c $(LIBS)
|
||||
+ $(CC) $(CFLAGS) $(CPPFLAGS) $(LDFLAGS) -o $(BIN)/fixpix fixpix.c $(LIBS)
|
||||
|
||||
getcol: getcol.c $(LIBWCS) libwcs/wcscat.h
|
||||
- $(CC) $(CFLAGS) -o $(BIN)/getcol getcol.c $(LIBS)
|
||||
+ $(CC) $(CFLAGS) $(CPPFLAGS) $(LDFLAGS) -o $(BIN)/getcol getcol.c $(LIBS)
|
||||
|
||||
getdate: getdate.c $(LIBWCS) libwcs/wcscat.h
|
||||
- $(CC) $(CFLAGS) -o $(BIN)/getdate getdate.c $(LIBS)
|
||||
+ $(CC) $(CFLAGS) $(CPPFLAGS) $(LDFLAGS) -o $(BIN)/getdate getdate.c $(LIBS)
|
||||
|
||||
gethead: gethead.c $(LIBWCS) libwcs/wcs.h libwcs/fitsfile.h libwcs/wcscat.h
|
||||
- $(CC) $(CFLAGS) -o $(BIN)/gethead gethead.c $(LIBS)
|
||||
+ $(CC) $(CFLAGS) $(CPPFLAGS) $(LDFLAGS) -o $(BIN)/gethead gethead.c $(LIBS)
|
||||
|
||||
getfits: getfits.c $(LIBWCS) libwcs/fitsfile.h libwcs/wcs.h libwcs/wcscat.h
|
||||
- $(CC) $(CFLAGS) -o $(BIN)/getfits getfits.c $(LIBS)
|
||||
+ $(CC) $(CFLAGS) $(CPPFLAGS) $(LDFLAGS) -o $(BIN)/getfits getfits.c $(LIBS)
|
||||
|
||||
getpix: getpix.c $(LIBWCS) libwcs/wcs.h libwcs/fitsfile.h libwcs/wcscat.h
|
||||
- $(CC) $(CFLAGS) -o $(BIN)/getpix getpix.c $(LIBS)
|
||||
+ $(CC) $(CFLAGS) $(CPPFLAGS) $(LDFLAGS) -o $(BIN)/getpix getpix.c $(LIBS)
|
||||
|
||||
gettab: gettab.c $(LIBWCS) libwcs/wcscat.h
|
||||
- $(CC) $(CFLAGS) -o $(BIN)/gettab gettab.c $(LIBS)
|
||||
+ $(CC) $(CFLAGS) $(CPPFLAGS) $(LDFLAGS) -o $(BIN)/gettab gettab.c $(LIBS)
|
||||
|
||||
httpget: httpget.c $(LIBWCS) libwcs/wcscat.h
|
||||
- $(CC) $(CFLAGS) -o $(BIN)/httpget httpget.c $(LIBS)
|
||||
+ $(CC) $(CFLAGS) $(CPPFLAGS) $(LDFLAGS) -o $(BIN)/httpget httpget.c $(LIBS)
|
||||
|
||||
htmlsp: htmlsp.c
|
||||
- $(CC) $(CFLAGS) -o $(BIN)/htmlsp htmlsp.c
|
||||
+ $(CC) $(CFLAGS) $(CPPFLAGS) $(LDFLAGS) -o $(BIN)/htmlsp htmlsp.c
|
||||
|
||||
i2f: i2f.c $(LIBWCS) libwcs/fitsfile.h
|
||||
- $(CC) $(CFLAGS) -o $(BIN)/i2f i2f.c $(LIBS)
|
||||
+ $(CC) $(CFLAGS) $(CPPFLAGS) $(LDFLAGS) -o $(BIN)/i2f i2f.c $(LIBS)
|
||||
|
||||
imcat: imcat.c $(LIBWCS) libwcs/fitsfile.h libwcs/wcs.h
|
||||
- $(CC) $(CFLAGS) -o $(BIN)/imcat imcat.c $(LIBS)
|
||||
+ $(CC) $(CFLAGS) $(CPPFLAGS) $(LDFLAGS) -o $(BIN)/imcat imcat.c $(LIBS)
|
||||
|
||||
imfill: imfill.c $(LIBWCS) libwcs/fitsfile.h
|
||||
- $(CC) $(CFLAGS) -o $(BIN)/imfill imfill.c $(LIBS)
|
||||
+ $(CC) $(CFLAGS) $(CPPFLAGS) $(LDFLAGS) -o $(BIN)/imfill imfill.c $(LIBS)
|
||||
|
||||
imresize: imresize.c $(LIBWCS) libwcs/fitsfile.h
|
||||
- $(CC) $(CFLAGS) -o $(BIN)/imresize imresize.c $(LIBS)
|
||||
+ $(CC) $(CFLAGS) $(CPPFLAGS) $(LDFLAGS) -o $(BIN)/imresize imresize.c $(LIBS)
|
||||
|
||||
imsmooth: imsmooth.c $(LIBWCS) libwcs/fitsfile.h
|
||||
- $(CC) $(CFLAGS) -o $(BIN)/imsmooth imsmooth.c $(LIBS)
|
||||
+ $(CC) $(CFLAGS) $(CPPFLAGS) $(LDFLAGS) -o $(BIN)/imsmooth imsmooth.c $(LIBS)
|
||||
|
||||
imhead: imhead.c $(LIBWCS) libwcs/fitsfile.h libwcs/wcs.h
|
||||
- $(CC) $(CFLAGS) -o $(BIN)/imhead imhead.c $(LIBS)
|
||||
+ $(CC) $(CFLAGS) $(CPPFLAGS) $(LDFLAGS) -o $(BIN)/imhead imhead.c $(LIBS)
|
||||
|
||||
imrot: imrot.c $(LIBWCS) libwcs/fitsfile.h
|
||||
- $(CC) $(CFLAGS) -o $(BIN)/imrot imrot.c $(LIBS)
|
||||
+ $(CC) $(CFLAGS) $(CPPFLAGS) $(LDFLAGS) -o $(BIN)/imrot imrot.c $(LIBS)
|
||||
|
||||
imsize: imsize.c $(LIBWCS) libwcs/fitsfile.h libwcs/wcs.h
|
||||
- $(CC) $(CFLAGS) -o $(BIN)/imsize imsize.c $(LIBS)
|
||||
+ $(CC) $(CFLAGS) $(CPPFLAGS) $(LDFLAGS) -o $(BIN)/imsize imsize.c $(LIBS)
|
||||
|
||||
imstack: imstack.c $(LIBWCS) libwcs/fitsfile.h
|
||||
- $(CC) $(CFLAGS) -o $(BIN)/imstack imstack.c $(LIBS)
|
||||
+ $(CC) $(CFLAGS) $(CPPFLAGS) $(LDFLAGS) -o $(BIN)/imstack imstack.c $(LIBS)
|
||||
|
||||
imextract: imextract.c $(LIBWCS) libwcs/fitsfile.h libwcs/wcscat.h
|
||||
- $(CC) $(CFLAGS) -o $(BIN)/imextract imextract.c $(LIBS)
|
||||
+ $(CC) $(CFLAGS) $(CPPFLAGS) $(LDFLAGS) -o $(BIN)/imextract imextract.c $(LIBS)
|
||||
|
||||
imstar: imstar.c $(LIBWCS) libwcs/fitsfile.h libwcs/wcs.h libwcs/lwcs.h libwcs/wcscat.h
|
||||
- $(CC) $(CFLAGS) -o $(BIN)/imstar imstar.c $(LIBS)
|
||||
+ $(CC) $(CFLAGS) $(CPPFLAGS) $(LDFLAGS) -o $(BIN)/imstar imstar.c $(LIBS)
|
||||
|
||||
isfile: isfile.c $(LIBWCS) libwcs/fitshead.h
|
||||
- $(CC) $(CFLAGS) -o $(BIN)/isfile isfile.c $(LIBS)
|
||||
+ $(CC) $(CFLAGS) $(CPPFLAGS) $(LDFLAGS) -o $(BIN)/isfile isfile.c $(LIBS)
|
||||
|
||||
isfits: isfits.c $(LIBWCS) libwcs/fitshead.h
|
||||
- $(CC) $(CFLAGS) -o $(BIN)/isfits isfits.c $(LIBS)
|
||||
+ $(CC) $(CFLAGS) $(CPPFLAGS) $(LDFLAGS) -o $(BIN)/isfits isfits.c $(LIBS)
|
||||
|
||||
isnum: isnum.c $(LIBWCS) libwcs/fitshead.h
|
||||
- $(CC) $(CFLAGS) -o $(BIN)/isnum isnum.c $(LIBS)
|
||||
+ $(CC) $(CFLAGS) $(CPPFLAGS) $(LDFLAGS) -o $(BIN)/isnum isnum.c $(LIBS)
|
||||
|
||||
isdate: isdate.c $(LIBWCS) libwcs/fitshead.h
|
||||
- $(CC) $(CFLAGS) -o $(BIN)/isdate isdate.c $(LIBS)
|
||||
+ $(CC) $(CFLAGS) $(CPPFLAGS) $(LDFLAGS) -o $(BIN)/isdate isdate.c $(LIBS)
|
||||
|
||||
isimlist: isimlist.c $(LIBWCS) libwcs/fitsfile.h
|
||||
- $(CC) $(CFLAGS) -o $(BIN)/isimlist isimlist.c $(LIBS)
|
||||
+ $(CC) $(CFLAGS) $(CPPFLAGS) $(LDFLAGS) -o $(BIN)/isimlist isimlist.c $(LIBS)
|
||||
|
||||
isrange: isrange.c
|
||||
- $(CC) $(CFLAGS) -o $(BIN)/isrange isrange.c
|
||||
+ $(CC) $(CFLAGS) $(CPPFLAGS) $(LDFLAGS) -o $(BIN)/isrange isrange.c
|
||||
|
||||
imwcs: imwcs.c $(LIBWCS) libwcs/fitsfile.h libwcs/lwcs.h
|
||||
- $(CC) $(CFLAGS) -o $(BIN)/imwcs imwcs.c $(LIBS)
|
||||
+ $(CC) $(CFLAGS) $(CPPFLAGS) $(LDFLAGS) -o $(BIN)/imwcs imwcs.c $(LIBS)
|
||||
|
||||
immatch: immatch.c $(LIBWCS) libwcs/fitsfile.h libwcs/lwcs.h
|
||||
- $(CC) $(CFLAGS) -o $(BIN)/immatch immatch.c $(LIBS)
|
||||
+ $(CC) $(CFLAGS) $(CPPFLAGS) $(LDFLAGS) -o $(BIN)/immatch immatch.c $(LIBS)
|
||||
|
||||
immwcs: immwcs.c $(LIBWCS) libwcs/fitsfile.h libwcs/lwcs.h
|
||||
- $(CC) $(CFLAGS) -o $(BIN)/immwcs immwcs.c $(LIBS)
|
||||
+ $(CC) $(CFLAGS) $(CPPFLAGS) $(LDFLAGS) -o $(BIN)/immwcs immwcs.c $(LIBS)
|
||||
|
||||
keyhead: keyhead.c $(LIBWCS) libwcs/fitsfile.h libwcs/wcs.h
|
||||
- $(CC) $(CFLAGS) -o $(BIN)/keyhead keyhead.c $(LIBS)
|
||||
+ $(CC) $(CFLAGS) $(CPPFLAGS) $(LDFLAGS) -o $(BIN)/keyhead keyhead.c $(LIBS)
|
||||
|
||||
matchcat: matchcat.c $(LIBWCS) libwcs/wcscat.h libwcs/wcs.h
|
||||
- $(CC) $(CFLAGS) -o $(BIN)/matchcat matchcat.c $(LIBS)
|
||||
+ $(CC) $(CFLAGS) $(CPPFLAGS) $(LDFLAGS) -o $(BIN)/matchcat matchcat.c $(LIBS)
|
||||
|
||||
newfits: newfits.c $(LIBWCS) libwcs/fitshead.h libwcs/wcs.h
|
||||
- $(CC) $(CFLAGS) -o $(BIN)/newfits newfits.c $(LIBS)
|
||||
+ $(CC) $(CFLAGS) $(CPPFLAGS) $(LDFLAGS) -o $(BIN)/newfits newfits.c $(LIBS)
|
||||
|
||||
remap: remap.c $(LIBWCS) libwcs/fitsfile.h libwcs/wcs.h
|
||||
- $(CC) $(CFLAGS) -o $(BIN)/remap remap.c $(LIBS)
|
||||
+ $(CC) $(CFLAGS) $(CPPFLAGS) $(LDFLAGS) -o $(BIN)/remap remap.c $(LIBS)
|
||||
|
||||
scat: scat.c $(LIBWCS) libwcs/wcscat.h libwcs/wcs.h
|
||||
- $(CC) $(CFLAGS) -o $(BIN)/scat scat.c $(LIBS)
|
||||
+ $(CC) $(CFLAGS) $(CPPFLAGS) $(LDFLAGS) -o $(BIN)/scat scat.c $(LIBS)
|
||||
|
||||
sethead: sethead.c $(LIBWCS) libwcs/fitsfile.h libwcs/wcs.h
|
||||
- $(CC) $(CFLAGS) -o $(BIN)/sethead sethead.c $(LIBS)
|
||||
+ $(CC) $(CFLAGS) $(CPPFLAGS) $(LDFLAGS) -o $(BIN)/sethead sethead.c $(LIBS)
|
||||
|
||||
setpix: setpix.c $(LIBWCS) libwcs/fitsfile.h libwcs/wcscat.h
|
||||
- $(CC) $(CFLAGS) -o $(BIN)/setpix setpix.c $(LIBS)
|
||||
+ $(CC) $(CFLAGS) $(CPPFLAGS) $(LDFLAGS) -o $(BIN)/setpix setpix.c $(LIBS)
|
||||
|
||||
sky2xy: sky2xy.c $(LIBWCS) libwcs/wcs.h libwcs/fitsfile.h
|
||||
- $(CC) $(CFLAGS) -o $(BIN)/sky2xy sky2xy.c $(LIBS)
|
||||
+ $(CC) $(CFLAGS) $(CPPFLAGS) $(LDFLAGS) -o $(BIN)/sky2xy sky2xy.c $(LIBS)
|
||||
|
||||
skycoor: skycoor.c $(LIBWCS) libwcs/wcs.h libwcs/wcscat.h
|
||||
- $(CC) $(CFLAGS) -o $(BIN)/skycoor skycoor.c $(LIBS)
|
||||
+ $(CC) $(CFLAGS) $(CPPFLAGS) $(LDFLAGS) -o $(BIN)/skycoor skycoor.c $(LIBS)
|
||||
|
||||
sp2char: sp2char.c $(LIBWCS) libwcs/fitsfile.h
|
||||
- $(CC) $(CFLAGS) -o $(BIN)/sp2char sp2char.c $(LIBWCS)
|
||||
+ $(CC) $(CFLAGS) $(CPPFLAGS) $(LDFLAGS) -o $(BIN)/sp2char sp2char.c $(LIBWCS)
|
||||
|
||||
subpix: subpix.c $(LIBWCS) libwcs/fitsfile.h
|
||||
- $(CC) $(CFLAGS) -o $(BIN)/subpix subpix.c $(LIBS)
|
||||
+ $(CC) $(CFLAGS) $(CPPFLAGS) $(LDFLAGS) -o $(BIN)/subpix subpix.c $(LIBS)
|
||||
|
||||
sumpix: sumpix.c $(LIBWCS) libwcs/fitsfile.h libwcs/wcscat.h
|
||||
- $(CC) $(CFLAGS) -o $(BIN)/sumpix sumpix.c $(LIBS)
|
||||
+ $(CC) $(CFLAGS) $(CPPFLAGS) $(LDFLAGS) -o $(BIN)/sumpix sumpix.c $(LIBS)
|
||||
|
||||
wcshead: wcshead.c $(LIBWCS) libwcs/fitsfile.h
|
||||
- $(CC) $(CFLAGS) -o $(BIN)/wcshead wcshead.c $(LIBS)
|
||||
+ $(CC) $(CFLAGS) $(CPPFLAGS) $(LDFLAGS) -o $(BIN)/wcshead wcshead.c $(LIBS)
|
||||
|
||||
xy2sky: xy2sky.c $(LIBWCS) libwcs/wcs.h libwcs/wcscat.h
|
||||
- $(CC) $(CFLAGS) -o $(BIN)/xy2sky xy2sky.c $(LIBS)
|
||||
+ $(CC) $(CFLAGS) $(CPPFLAGS) $(LDFLAGS) -o $(BIN)/xy2sky xy2sky.c $(LIBS)
|
||||
|
||||
simpos: simpos.c libwcs/libwcs.a
|
||||
- $(CC) $(CFLAGS) -o $(BIN)/simpos simpos.c $(LIBS)
|
||||
+ $(CC) $(CFLAGS) $(CPPFLAGS) $(LDFLAGS) -o $(BIN)/simpos simpos.c $(LIBS)
|
||||
|
||||
gsc2cat: gsc2cat.c $(LIBWCS)
|
||||
- $(CC) $(CFLAGS) -o $(BIN)/gsc2cat gsc2cat.c $(LIBS)
|
||||
+ $(CC) $(CFLAGS) $(CPPFLAGS) $(LDFLAGS) -o $(BIN)/gsc2cat gsc2cat.c $(LIBS)
|
||||
|
||||
tmcat: tmcat.c
|
||||
- $(CC) $(CFLAGS) -o $(BIN)/tmcat tmcat.c
|
||||
+ $(CC) $(CFLAGS) $(CPPFLAGS) $(LDFLAGS) -o $(BIN)/tmcat tmcat.c
|
||||
|
||||
tmcate: tmcate.c
|
||||
- $(CC) $(CFLAGS) -o $(BIN)/tmcate tmcate.c
|
||||
+ $(CC) $(CFLAGS) $(CPPFLAGS) $(LDFLAGS) -o $(BIN)/tmcate tmcate.c
|
||||
|
||||
$(LIBWCS): libwcs/*.c libwcs/*.h
|
||||
- cd libwcs; make
|
||||
+ $(MAKE) CC=$(CC) -C libwcs
|
||||
+
|
||||
+install:
|
||||
+ test -e $(DESTDIR)$(PREFIX)/bin || mkdir -p $(DESTDIR)$(PREFIX)/bin
|
||||
+ test -e $(DESTDIR)$(PREFIX)/include || mkdir -p $(DESTDIR)$(PREFIX)/include/wcstools
|
||||
+ test -e $(DESTDIR)$(PREFIX)/lib/wcstools || mkdir -p $(DESTDIR)$(PREFIX)/lib/wcstools
|
||||
+ test -e $(DESTDIR)$(PREFIX)/share/wcstools || mkdir -p $(DESTDIR)$(PREFIX)/share/wcstools
|
||||
+ install ./bin/* $(DESTDIR)$(PREFIX)/bin
|
||||
+ install ./libwcs/*.so $(DESTDIR)$(PREFIX)/lib/wcstools
|
||||
+ install ./libwcs/*.so.* $(DESTDIR)$(PREFIX)/lib/wcstools
|
||||
|
||||
objclean:
|
||||
- cd libwcs; make clean
|
||||
+ $(MAKE) -C libwcs clean
|
||||
|
||||
binclean:
|
||||
rm -f ./bin/*
|
||||
|
||||
clean:
|
||||
- make objclean; make binclean
|
||||
+ objclean binclean
|
||||
diff --git a/libwcs/Makefile b/libwcs/Makefile
|
||||
index ec2fae0..038ec61 100644
|
||||
--- a/libwcs/Makefile
|
||||
+++ b/libwcs/Makefile
|
||||
@@ -1,5 +1,10 @@
|
||||
-CFLAGS= -g -D_FILE_OFFSET_BITS=64
|
||||
-CC= cc
|
||||
+CFLAGS+= -fPIC
|
||||
+
|
||||
+VERSION?= 3.9.7
|
||||
+VERSION_PARTS= $(subst ., ,$(VERSION))
|
||||
+VERSION_MAJOR= $(word 1,$(VERSION_PARTS))
|
||||
+VERSION_MINOR= $(word 2,$(VERSION_PARTS))
|
||||
+VERSION_MICRO= $(word 3,$(VERSION_PARTS))
|
||||
|
||||
OBJS = imsetwcs.o imgetwcs.o matchstar.o findstar.o daoread.o wcscon.o \
|
||||
fitswcs.o wcsinit.o wcs.o ty2read.o webread.o tmcread.o \
|
||||
@@ -11,10 +16,19 @@ OBJS = imsetwcs.o imgetwcs.o matchstar.o findstar.o daoread.o wcscon.o \
|
||||
sortstar.o platefit.o iget.o fileutil.o \
|
||||
wcslib.o lin.o cel.o proj.o sph.o wcstrig.o distort.o poly.o
|
||||
|
||||
-libwcs.a: $(OBJS)
|
||||
+all: libwcs.so.$(VERSION) libwcs.a
|
||||
ar rv $@ $?
|
||||
ranlib $@
|
||||
|
||||
+libwcs.a: $(OBJS)
|
||||
+ ar rv $@ $?
|
||||
+ ranlib $@
|
||||
+
|
||||
+libwcs.so.$(VERSION): $(OBJS)
|
||||
+ $(CC) $(LDFLAGS) -shared -o $@ -Wl,-soname,libwcs.so.$(VERSION_MAJOR) $? -lm
|
||||
+ ln -s libwcs.so.$(VERSION) libwcs.so.$(VERSION_MAJOR)
|
||||
+ ln -s libwcs.so.$(VERSION) libwcs.so
|
||||
+
|
||||
actread.o: fitsfile.h wcscat.h wcs.h fitshead.h wcslib.h
|
||||
binread.o: wcscat.h wcs.h fitshead.h wcslib.h
|
||||
ctgread.o: wcscat.h wcs.h fitshead.h wcslib.h
|
||||
@@ -67,4 +81,4 @@ webread.o: wcscat.h
|
||||
worldpos.o: wcs.h fitshead.h wcslib.h
|
||||
|
||||
clean:
|
||||
- rm -f *.a *.o
|
||||
+ rm -f *.a *.o *.so *.so.*
|
||||
--
|
||||
2.41.0
|
||||
|
||||
@@ -0,0 +1,39 @@
|
||||
From 84685930d5cfc7005f3414601230a23e28a18f59 Mon Sep 17 00:00:00 2001
|
||||
From: Thomas Loimer <thomas.loimer@tuwien.ac.at>
|
||||
Date: Tue, 5 Sep 2023 22:02:55 +0200
|
||||
Subject: [PATCH 1/3] Enable error message for missing libraries
|
||||
|
||||
Move the check for missing libraries to a place where the queried
|
||||
variables are set.
|
||||
---
|
||||
configure.ac | 7 ++++---
|
||||
1 file changed, 4 insertions(+), 3 deletions(-)
|
||||
|
||||
diff --git a/configure.ac b/configure.ac
|
||||
index 035b9d7..47452c5 100644
|
||||
--- a/configure.ac
|
||||
+++ b/configure.ac
|
||||
@@ -95,9 +95,6 @@ dnl AC_CHECK_PROG(XDG_MENU, [xdg-desktop-menu], [xdg-desktop-menu])
|
||||
AC_SEARCH_LIBS([pow], [m])dnl
|
||||
dnl AC_SEARCH_LIBS([deflate], [z]) # libz is not needed.
|
||||
AC_SEARCH_LIBS([FcInit], [fontconfig])
|
||||
-AS_IF([test "x$ac_cv_search_pow" = xno \
|
||||
- || test "x$ac_cv_search_png_read_info" = xno],
|
||||
- [AC_MSG_ERROR([Necessary libraries not found.])])
|
||||
|
||||
|
||||
# Checks for header files.
|
||||
@@ -187,6 +184,10 @@ PostScript files. To disable calling ghostscript, set to the empty string,
|
||||
AC_SUBST([gsman])
|
||||
AM_SUBST_NOTMAKE([gsman])
|
||||
|
||||
+AS_IF([test "x$ac_cv_search_pow" = xno \
|
||||
+ || test "x$ac_cv_search_png_read_info" = xno],
|
||||
+ [AC_MSG_ERROR([Necessary libraries not found.])])
|
||||
+
|
||||
|
||||
# Checks for typedefs, structures, and compiler characteristics.
|
||||
AC_C_BIGENDIAN
|
||||
--
|
||||
2.40.1
|
||||
|
||||
@@ -0,0 +1,58 @@
|
||||
From a9181df87d78828318f2e9f8d4ea012bc06883b9 Mon Sep 17 00:00:00 2001
|
||||
From: Bruno Victal <mirai@makinata.eu>
|
||||
Date: Thu, 7 Sep 2023 16:51:23 +0100
|
||||
Subject: [PATCH 3/3] Fix double-free when requesting MediaBox.
|
||||
|
||||
Explicitly close the Ghostscript PDF interpreter before calling quit.
|
||||
|
||||
References:
|
||||
[1]: <https://bugs.ghostscript.com/show_bug.cgi?id=705855>
|
||||
[2]: <https://bugs.ghostscript.com/show_bug.cgi?id=705836>
|
||||
---
|
||||
src/u_ghostscript.c | 13 ++++++++-----
|
||||
1 file changed, 8 insertions(+), 5 deletions(-)
|
||||
|
||||
diff --git a/src/u_ghostscript.c b/src/u_ghostscript.c
|
||||
index 5974b31..d14674f 100644
|
||||
--- a/src/u_ghostscript.c
|
||||
+++ b/src/u_ghostscript.c
|
||||
@@ -317,10 +317,10 @@ gsexe(FILE **out, bool *isnew, char *exenew, char *exeold)
|
||||
* Call ghostscript to extract the /MediaBox from the pdf given in file.
|
||||
* Command line, for gs >= 9.50,
|
||||
* gs -q -dNODISPLAY --permit-file-read=in.pdf -c \
|
||||
- * "(in.pdf) (r) file runpdfbegin 1 pdfgetpage /MediaBox pget pop == quit"
|
||||
+ * "(in.pdf) (r) file runpdfbegin 1 pdfgetpage /MediaBox pget pop == runpdfend quit"
|
||||
* gs < 9.50:
|
||||
* gs -q -dNODISPLAY -dNOSAFER -c \
|
||||
- * "(in.pdf) (r) file runpdfbegin 1 pdfgetpage /MediaBox pget pop == quit"
|
||||
+ * "(in.pdf) (r) file runpdfbegin 1 pdfgetpage /MediaBox pget pop == runpdfend quit"
|
||||
* The command line was found, and modified a bit, at
|
||||
*https://stackoverflow.com/questions/2943281/using-ghostscript-to-get-page-size
|
||||
* Beginning with gs 9.50, "-dSAFER" is the default, and permission to access
|
||||
@@ -349,9 +349,11 @@ gsexe_mediabox(char *file, int *llx, int *lly, int *urx, int *ury)
|
||||
return -3;
|
||||
|
||||
exenew = "%s -q -dNODISPLAY \"--permit-file-read=%s\" -c \"(%s) (r) "
|
||||
- "file runpdfbegin 1 pdfgetpage /MediaBox pget pop == quit\"";
|
||||
+ "file runpdfbegin 1 pdfgetpage /MediaBox pget pop == "
|
||||
+ "runpdfend quit\"";
|
||||
exeold = "%s -q -dNODISPLAY -c \"(%s) (r) "
|
||||
- "file runpdfbegin 1 pdfgetpage /MediaBox pget pop == quit\"";
|
||||
+ "file runpdfbegin 1 pdfgetpage /MediaBox pget pop == "
|
||||
+ "runpdfend quit\"";
|
||||
|
||||
/* malloc() buffers for the command line, if necessary */
|
||||
fmt = exenew;
|
||||
@@ -445,7 +447,8 @@ gslib_mediabox(char *file, int *llx, int *lly, int *urx, int *ury)
|
||||
argnew[3] = "--permit-file-read=%s"; /* file */
|
||||
argnew[4] = "-c";
|
||||
argnew[5] =
|
||||
- "(%s) (r) file runpdfbegin 1 pdfgetpage /MediaBox pget pop == quit";
|
||||
+ "(%s) (r) file runpdfbegin 1 pdfgetpage /MediaBox pget pop == "
|
||||
+ "runpdfend quit";
|
||||
|
||||
argold[0] = argnew[0];
|
||||
argold[1] = argnew[1];
|
||||
--
|
||||
2.40.1
|
||||
|
||||
@@ -0,0 +1,89 @@
|
||||
From 4320b1d82da1bfe1519800ae3ac35b6b59a9da56 Mon Sep 17 00:00:00 2001
|
||||
From: Thomas Loimer <thomas.loimer@tuwien.ac.at>
|
||||
Date: Fri, 8 Sep 2023 18:43:00 +0200
|
||||
Subject: [PATCH 2/3] Use pkg-config to set fontconfig CFLAGS and LIBS
|
||||
|
||||
---
|
||||
configure.ac | 16 +++++++++++++---
|
||||
src/Makefile.am | 8 +++-----
|
||||
tests/Makefile.am | 4 ++--
|
||||
3 files changed, 18 insertions(+), 10 deletions(-)
|
||||
|
||||
diff --git a/configure.ac b/configure.ac
|
||||
index 47452c5..3113db8 100644
|
||||
--- a/configure.ac
|
||||
+++ b/configure.ac
|
||||
@@ -81,11 +81,23 @@ AC_PROG_SED
|
||||
AM_PROG_AR
|
||||
|
||||
# Search for pkg-config and set PKG_CONFIG to the path found, else empty.
|
||||
-# PKG_PROG_PKG_CONFIG
|
||||
+PKG_PROG_PKG_CONFIG
|
||||
# On debian, pkg-config does not find xaw3d. On archlinux, pkg-config
|
||||
# --libs xaw3d yields -lXaw3d -lXmu -lXt -lX11 -- but -lXmu is not
|
||||
# strictly necessary. Use hard-coded paths instead of pkg-config.
|
||||
|
||||
+# First try pkg-config, as a side-effect this might set flags that are
|
||||
+# useful later, e.g., for libpng.
|
||||
+dnl Under archlinux, PKG_CHECK_MODULES(FT, fontconfig) would write during
|
||||
+dnl ./configure "checking for FT...", under debian the line is
|
||||
+dnl "checking for fontconfig...". Stay on the comprehensible side.
|
||||
+AS_IF([test "x$PKG_CONFIG" != x],
|
||||
+ [PKG_CHECK_MODULES([fontconfig], [fontconfig])],
|
||||
+ [fontconfig_CFLAGS='-I$(oldincludedir)/freetype2 '
|
||||
+ AC_SEARCH_LIBS([FcInit], [fontconfig])])
|
||||
+AC_SUBST([fontconfig_CFLAGS])
|
||||
+AC_SUBST([fontconfig_LIBS])
|
||||
+
|
||||
dnl Not useful for packagers.
|
||||
dnl AC_CHECK_PROG(XDG_ICON, [xdg-icon-resource], [xdg-icon-resource])
|
||||
dnl AC_CHECK_PROG(XDG_MENU, [xdg-desktop-menu], [xdg-desktop-menu])
|
||||
@@ -93,8 +105,6 @@ dnl AC_CHECK_PROG(XDG_MENU, [xdg-desktop-menu], [xdg-desktop-menu])
|
||||
|
||||
# Checks for libraries.
|
||||
AC_SEARCH_LIBS([pow], [m])dnl
|
||||
-dnl AC_SEARCH_LIBS([deflate], [z]) # libz is not needed.
|
||||
-AC_SEARCH_LIBS([FcInit], [fontconfig])
|
||||
|
||||
|
||||
# Checks for header files.
|
||||
diff --git a/src/Makefile.am b/src/Makefile.am
|
||||
index 3cbd5ee..73d5132 100644
|
||||
--- a/src/Makefile.am
|
||||
+++ b/src/Makefile.am
|
||||
@@ -23,13 +23,11 @@
|
||||
# "`u' modifier ignored since `D' is the default...".
|
||||
ARFLAGS = cr
|
||||
|
||||
-# Xft #includes <ft2build.h>, not <freetype2/ft2build.h>, hence freetype2
|
||||
-# must be put into the search path.
|
||||
-
|
||||
-AM_CPPFLAGS = -I$(oldincludedir)/freetype2 $(XCPPFLAGS) -DNDEBUG -DXFIGLIBDIR="\"$(compkeydbdir)\"" \
|
||||
+AM_CPPFLAGS = $(fontconfig_CFLAGS) $(XCPPFLAGS) -DNDEBUG \
|
||||
+ -DXFIGLIBDIR="\"$(compkeydbdir)\"" \
|
||||
-DOBJLIBDIR="\"$(pkgdatadir)/Libraries\"" -DXFIGDOCDIR="\"$(docdir)\""
|
||||
|
||||
-AM_LDFLAGS = $(XLDFLAGS)
|
||||
+AM_LDFLAGS = $(fontconfig_LIBS) $(XLDFLAGS)
|
||||
|
||||
# LIBOBJS must be placed in LDADD or xfig_LDADD - otherwise, the
|
||||
# lib-dir is not distributed
|
||||
diff --git a/tests/Makefile.am b/tests/Makefile.am
|
||||
index 2f529ac..c158806 100644
|
||||
--- a/tests/Makefile.am
|
||||
+++ b/tests/Makefile.am
|
||||
@@ -39,9 +39,9 @@ $(srcdir)/package.m4: $(top_srcdir)/configure.ac
|
||||
echo 'm4_define([AT_PACKAGE_URL], [@PACKAGE_URL@])'; \
|
||||
} >'$(srcdir)/package.m4'
|
||||
|
||||
-AM_CPPFLAGS = -I$(top_srcdir)/src -I$(oldincludedir)/freetype2 $(XCPPFLAGS)
|
||||
+AM_CPPFLAGS = -I$(top_srcdir)/src $(fontconfig_CFLAGS) $(XCPPFLAGS)
|
||||
|
||||
-AM_LDFLAGS = $(XLDFLAGS)
|
||||
+AM_LDFLAGS = $(fontconfig_LIBS) $(XLDFLAGS)
|
||||
LDADD = $(top_builddir)/src/libxfig.a $(XLIBS)
|
||||
|
||||
check_PROGRAMS = test1 test2 test3 test4
|
||||
--
|
||||
2.40.1
|
||||
|
||||
@@ -820,14 +820,14 @@ and based on PDF specification 1.7.")
|
||||
(define-public mupdf
|
||||
(package
|
||||
(name "mupdf")
|
||||
(version "1.22.2")
|
||||
(version "1.23.3")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "https://mupdf.com/downloads/archive/"
|
||||
"mupdf-" version "-source.tar.gz"))
|
||||
(sha256
|
||||
(base32 "1dxybd4fzjdmkpwd984yj511nmjxjbpj00yccycfm37gwvs6mijl"))
|
||||
(base32 "1b8ajj5xmi2p9c92l8fd46amfshmxdw6zcg1hqajg8y0kd0ady8y"))
|
||||
(modules '((guix build utils)
|
||||
(ice-9 ftw)
|
||||
(srfi srfi-1)))
|
||||
|
||||
@@ -493,6 +493,26 @@ any dependency management. It aims to keep dependencies to a minimum, in
|
||||
order to make bootstrapping easier.")
|
||||
(license license:expat)))
|
||||
|
||||
(define-public python-poetry-core-1.0
|
||||
(package
|
||||
(name "python-poetry-core")
|
||||
(version "1.0.7")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "poetry-core" version))
|
||||
(sha256
|
||||
(base32 "01n2rbsvks7snrq3m1d08r3xz9q2715ajb62fdb6rvqnb9sirhcq"))))
|
||||
(build-system python-build-system)
|
||||
(home-page "https://github.com/python-poetry/poetry-core")
|
||||
(synopsis "Poetry PEP 517 build back-end")
|
||||
(description
|
||||
"The @code{poetry-core} module provides a PEP 517 build back-end
|
||||
implementation developed for Poetry. This project is intended to be
|
||||
a light weight, fully compliant, self-contained package allowing PEP 517
|
||||
compatible build front-ends to build Poetry managed projects.")
|
||||
(license license:expat)))
|
||||
|
||||
(define-public python-poetry-core
|
||||
(package
|
||||
(name "python-poetry-core")
|
||||
|
||||
@@ -630,6 +630,31 @@ Python module with the same interface, but (hopefully) faster.")
|
||||
written in C.")
|
||||
(license license:bsd-2)))
|
||||
|
||||
(define-public python-numpoly
|
||||
(package
|
||||
(name "python-numpoly")
|
||||
(version "1.2.11")
|
||||
(source (origin
|
||||
(method git-fetch) ;; PyPI is missing some Pytest fixtures
|
||||
(uri (git-reference
|
||||
(url "https://github.com/jonathf/numpoly")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"01g21v91f4d66xd0bvap0n6d6485w2fnq1636gx6h2s42550rlbd"))))
|
||||
(build-system pyproject-build-system)
|
||||
(propagated-inputs (list python-importlib-metadata python-numpy))
|
||||
(native-inputs (list python-pytest python-sympy))
|
||||
(home-page "https://numpoly.readthedocs.io/en/master/")
|
||||
(synopsis "Polynomials as a numpy datatype")
|
||||
(description "Numpoly is a generic library for creating, manipulating and
|
||||
evaluating arrays of polynomials based on @code{numpy.ndarray objects}.")
|
||||
;; Tests fail with dtype mismatches on 32-bit architectures, suggesting
|
||||
;; that numpoly only supports 64 bit platforms.
|
||||
(supported-systems '("x86_64-linux" "aarch64-linux" "powerpc64le-linux"))
|
||||
(license license:bsd-2)))
|
||||
|
||||
(define-public python-baycomp
|
||||
(package
|
||||
(name "python-baycomp")
|
||||
@@ -1296,7 +1321,8 @@ Mathematics (GLM) library to Python.")
|
||||
"test_tls_temporary_credentials_functional"
|
||||
"test_variable_in_task"
|
||||
"test_worker_preload_text"
|
||||
"test_worker_uses_same_host_as_nanny")
|
||||
"test_worker_uses_same_host_as_nanny"
|
||||
"test_nanny_timeout") ; access to 127.0.0.1
|
||||
" and not ")
|
||||
|
||||
;; These fail because it doesn't find dask[distributed]
|
||||
@@ -1319,7 +1345,8 @@ Mathematics (GLM) library to Python.")
|
||||
|
||||
;; These tests are rather flaky
|
||||
" and not test_quiet_quit_when_cluster_leaves"
|
||||
" and not multiple_clients_restart"))
|
||||
" and not multiple_clients_restart"
|
||||
" and not test_steal_twice"))
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(add-after 'unpack 'versioneer
|
||||
|
||||
@@ -1923,13 +1923,13 @@ service.")
|
||||
(define-public python-openai
|
||||
(package
|
||||
(name "python-openai")
|
||||
(version "0.27.8")
|
||||
(version "0.28.1")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "openai" version))
|
||||
(sha256
|
||||
(base32
|
||||
"0dlmxnib71fih9xzmd3v41alwv4qb8qrxixsrrsf5vmigmf0k0r4"))))
|
||||
"1j6wsavgrxzh6ls8hp45nllz8f5l65a6vzk0lvhlqnx6579xmqab"))))
|
||||
(build-system pyproject-build-system)
|
||||
(arguments
|
||||
(list
|
||||
@@ -8820,3 +8820,28 @@ Grid5000 resources interactively using the embedded shell.")
|
||||
scientific testbeds. It lets you deploy networks of machines on actual
|
||||
hardware on Grid'5000 or via OpenStack, to Vagrant, Chameleon, and more.")
|
||||
(license license:gpl3+)))
|
||||
|
||||
(define-public python-pynetbox
|
||||
(package
|
||||
(name "python-pynetbox")
|
||||
(version "7.2.0")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "pynetbox" version))
|
||||
(sha256
|
||||
(base32
|
||||
"1pzmkl4nr247v4022i33v32jlx88wwcdy7ycyfd4pnl19vag8d9p"))))
|
||||
(build-system pyproject-build-system)
|
||||
(arguments
|
||||
(list #:phases #~(modify-phases %standard-phases
|
||||
(add-after 'unpack 'disable-failing-tests
|
||||
(lambda _
|
||||
;; Integration tests depend on docker.
|
||||
(delete-file-recursively "tests/integration"))))))
|
||||
(propagated-inputs (list python-requests))
|
||||
(native-inputs (list python-pytest python-pyyaml python-setuptools-scm))
|
||||
(home-page "https://github.com/netbox-community/pynetbox")
|
||||
(synopsis "NetBox API client library")
|
||||
(description "Python module to query and edit data stored in a
|
||||
@url{https://netbox.dev,NetBox} instance.")
|
||||
(license license:asl2.0)))
|
||||
|
||||
@@ -143,6 +143,7 @@
|
||||
;;; Copyright © 2023 Foundation Devices, Inc. <hello@foundationdevices.com>
|
||||
;;; Copyright © c4droid <c4droid@foxmail.com>
|
||||
;;; Copyright © 2023 Janneke Nieuwenhuizen <janneke@gnu.org>
|
||||
;;; Copyright © 2023 Attila Lendvai <attila@lendvai.name>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
@@ -834,6 +835,31 @@ names for 256 color terminal setups.")
|
||||
as functions or string constants to form colored terminal output.")
|
||||
(license license:expat)))
|
||||
|
||||
(define-public python-construct-classes
|
||||
(package
|
||||
(name "python-construct-classes")
|
||||
(version "0.1.2")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/matejcik/construct-classes")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "0fmr8nfg543lyqk4164a52jb6lwpq98radicbkhhdfckq9lib2wp"))))
|
||||
(build-system pyproject-build-system)
|
||||
(propagated-inputs
|
||||
(list python-construct))
|
||||
(native-inputs
|
||||
(list python-poetry-core
|
||||
python-pytest))
|
||||
(home-page "https://github.com/matejcik/construct-classes")
|
||||
(synopsis "Parse binary structs into dataclasses")
|
||||
(description "This package provides a parser to parse binary structs
|
||||
into dataclasses.")
|
||||
(license license:expat)))
|
||||
|
||||
(define-public python-yaspin
|
||||
(package
|
||||
(name "python-yaspin")
|
||||
@@ -1524,7 +1550,7 @@ of a loop structure or other iterative computation.")
|
||||
(define-public python-glymur
|
||||
(package
|
||||
(name "python-glymur")
|
||||
(version "0.12.0")
|
||||
(version "0.12.8")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch) ; no tests data in PyPi package
|
||||
@@ -1533,7 +1559,7 @@ of a loop structure or other iterative computation.")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "03nny8k42yxdyw7sjv43szmg23x3rqplbaf7m0a0lpvwla1dl78i"))))
|
||||
(base32 "0mfyn9j7h13242d41vg12acw55yl2mv6lmgi265hfp11k7g52b6n"))))
|
||||
(build-system pyproject-build-system)
|
||||
(arguments
|
||||
(list
|
||||
@@ -1562,7 +1588,7 @@ of a loop structure or other iterative computation.")
|
||||
;; which is patched above.
|
||||
(delete-file "tests/test_config.py"))))))
|
||||
(native-inputs
|
||||
(list python-pytest))
|
||||
(list python-pytest python-scikit-image))
|
||||
(inputs
|
||||
(list openjpeg ; glymur/lib/openjp2.py
|
||||
libtiff)) ; glymur/lib/tiff.py
|
||||
@@ -11493,6 +11519,26 @@ GA4GH Task Execution API.")
|
||||
algorithm.")
|
||||
(license license:asl2.0)))
|
||||
|
||||
(define-public python-altgraph
|
||||
(package
|
||||
(name "python-altgraph")
|
||||
(version "0.17.4")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "altgraph" version))
|
||||
(sha256
|
||||
(base32 "01j48np3g50g6insjkszsz0vifwlm6gspria5vdwlkbciywznnhv"))))
|
||||
(build-system pyproject-build-system)
|
||||
(native-inputs (list python-pytest))
|
||||
(home-page "https://altgraph.readthedocs.io")
|
||||
(synopsis "Python graph network package")
|
||||
(description
|
||||
"This package provides tools for constructing graphs, BFS and DFS
|
||||
traversals, topological sort, shortest paths, and more with graphviz
|
||||
output.")
|
||||
(license license:expat)))
|
||||
|
||||
(define-public python-three-merge
|
||||
(package
|
||||
(name "python-three-merge")
|
||||
@@ -13493,6 +13539,37 @@ reading and writing MessagePack data.")
|
||||
(base32
|
||||
"1109s2yynrahwi64ikax68hx0mbclz8p35afmpphw5dwynb49q7s"))))))
|
||||
|
||||
;; This msgpack library's name changed from "python-msgpack" to "msgpack" with
|
||||
;; release 0.5. Some packages like borg still call it by the old name for now.
|
||||
;; <https://bugs.gnu.org/30662>
|
||||
(define-public python-msgpack-transitional
|
||||
(package
|
||||
(inherit python-msgpack)
|
||||
(name "python-msgpack-transitional")
|
||||
(version "0.5.6")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "msgpack" version))
|
||||
(sha256
|
||||
(base32
|
||||
"1hz2dba1nvvn52afg34liijsm7kn65cmn06dl0xbwld6bb4cis0f"))))
|
||||
(arguments
|
||||
(substitute-keyword-arguments (package-arguments python-msgpack)
|
||||
((#:phases phases)
|
||||
`(modify-phases ,phases
|
||||
(add-after 'unpack 'configure-transitional
|
||||
(lambda _
|
||||
;; Keep using the old name.
|
||||
(substitute* "setup.py"
|
||||
(("TRANSITIONAL = False")
|
||||
"TRANSITIONAL = 1"))
|
||||
;; This old version is not compatible with Python 3.9
|
||||
(substitute* '("test/test_buffer.py" "test/test_extension.py")
|
||||
((".tostring\\(") ".tobytes("))
|
||||
(substitute* '("test/test_buffer.py" "test/test_extension.py")
|
||||
((".fromstring\\(") ".frombytes("))
|
||||
#t))))))))
|
||||
|
||||
(define-public python-netaddr
|
||||
(package
|
||||
(name "python-netaddr")
|
||||
@@ -19251,26 +19328,25 @@ database, file, dict stores. Cachy supports python versions 2.7+ and 3.2+.")
|
||||
(define-public poetry
|
||||
(package
|
||||
(name "poetry")
|
||||
(version "1.4.2")
|
||||
(version "1.1.12")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "poetry" version))
|
||||
(sha256
|
||||
(base32
|
||||
"0g0vczn6qa4b2bdkq4k7fm1g739vyxp2iiblwwsrcmw24jj81m8b"))))
|
||||
"0rr54mvcfcv9cv6vw2122y28xvd2pwqpv2x8c8j5ayz3gwsy4rjw"))))
|
||||
(build-system python-build-system)
|
||||
(arguments
|
||||
`(#:tests? #f ;PyPI does not have tests
|
||||
;; #:phases
|
||||
;; (modify-phases %standard-phases
|
||||
;; (add-before 'build 'patch-setup-py
|
||||
;; (lambda _
|
||||
;; (substitute* "setup.py"
|
||||
;; ;; Relax some of the requirements.
|
||||
;; (("(keyring>=21.2.0),<22.0.0" _ keyring) keyring)
|
||||
;; (("(packaging>=20.4),<21.0" _ packaging) packaging)))))
|
||||
))
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-before 'build 'patch-setup-py
|
||||
(lambda _
|
||||
(substitute* "setup.py"
|
||||
;; Relax some of the requirements.
|
||||
(("(keyring>=21.2.0),<22.0.0" _ keyring) keyring)
|
||||
(("(packaging>=20.4),<21.0" _ packaging) packaging)))))))
|
||||
(propagated-inputs
|
||||
(list python-cachecontrol
|
||||
python-cachy
|
||||
@@ -19279,12 +19355,14 @@ database, file, dict stores. Cachy supports python versions 2.7+ and 3.2+.")
|
||||
python-entrypoints
|
||||
python-html5lib
|
||||
python-keyring
|
||||
python-msgpack
|
||||
; Use of deprecated version of msgpack reported upstream:
|
||||
; https://github.com/python-poetry/poetry/issues/3607
|
||||
python-msgpack-transitional
|
||||
python-packaging
|
||||
python-pexpect
|
||||
python-pip
|
||||
python-pkginfo
|
||||
python-poetry-core
|
||||
python-poetry-core-1.0
|
||||
python-requests
|
||||
python-requests-toolbelt
|
||||
python-shellingham
|
||||
@@ -31817,13 +31895,13 @@ development, testing, production]};
|
||||
(define-public python-pudb
|
||||
(package
|
||||
(name "python-pudb")
|
||||
(version "2022.1.3")
|
||||
(version "2023.1")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "pudb" version))
|
||||
(sha256
|
||||
(base32
|
||||
"0jk61qgacvwy6zkz1f55jawax4ggb1aawy6w3wnfkzqrkvd3ms2q"))))
|
||||
"00rgx80inpvsbcydp29mrhw44xizyqdqxvv6lqcak1xs79h3rpqm"))))
|
||||
(build-system python-build-system)
|
||||
(arguments
|
||||
`(#:phases (modify-phases %standard-phases
|
||||
|
||||
@@ -69,10 +69,12 @@
|
||||
#:use-module (gnu packages image)
|
||||
#:use-module (gnu packages image-processing)
|
||||
#:use-module (gnu packages javascript)
|
||||
#:use-module (gnu packages libedit)
|
||||
#:use-module (gnu packages libusb)
|
||||
#:use-module (gnu packages linux)
|
||||
#:use-module (gnu packages logging)
|
||||
#:use-module (gnu packages lua)
|
||||
#:use-module (gnu packages man)
|
||||
#:use-module (gnu packages maths)
|
||||
#:use-module (gnu packages mp3)
|
||||
#:use-module (gnu packages multiprecision)
|
||||
@@ -501,6 +503,30 @@ library. It also adds hamlib support, which provides basic gain and frequency
|
||||
controls for certain tuners which may be paired with an audio device.")
|
||||
(license license:expat))))
|
||||
|
||||
(define-public soapybladerf
|
||||
(let ((commit "85f6dc554ed4c618304d99395b19c4e1523675b0")
|
||||
(revision "1"))
|
||||
(package
|
||||
(name "soapybladerf")
|
||||
(version (git-version "0.4.1" revision commit))
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/pothosware/SoapyBladeRF")
|
||||
(commit commit)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "05c5mv1b55jv7dcr740hv4b3gplfaqryflfvprhlkm7bycr8pp16"))))
|
||||
(build-system cmake-build-system)
|
||||
(inputs (list bladerf soapysdr))
|
||||
(arguments (list #:tests? #f)) ; No test suite
|
||||
(home-page "https://github.com/pothosware/SoapyBladeRF/wiki")
|
||||
(synopsis "SoapySDR BladeRF module")
|
||||
(description "This package provides BladeRF devices support to the
|
||||
SoapySDR library.")
|
||||
(license license:lgpl2.1+))))
|
||||
|
||||
(define-public soapyhackrf
|
||||
;; Some fixes are not yet in a tagged release.
|
||||
(let ((commit "6c0c33f0aa44c3080674e6bca0273184d3e9eb44")
|
||||
@@ -919,57 +945,62 @@ environment.")
|
||||
(license license:gpl3+)))
|
||||
|
||||
(define-public gr-osmosdr
|
||||
;; No tag for version supporting Gnuradio 3.9; use commit.
|
||||
(let ((commit "a100eb024c0210b95e4738b6efd836d48225bd03")
|
||||
(revision "0"))
|
||||
(package
|
||||
(name "gr-osmosdr")
|
||||
(version (git-version "0.2.3" revision commit))
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://git.osmocom.org/gr-osmosdr")
|
||||
(commit commit)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "1pk5gnyznfyy510lbqzg9ijcb1fnhmn547n24aiqyrxd6i6vv1ki"))))
|
||||
(build-system cmake-build-system)
|
||||
(native-inputs
|
||||
(list doxygen pkg-config pybind11 python-mako python-six))
|
||||
(inputs
|
||||
(list airspy
|
||||
airspyhf
|
||||
boost
|
||||
fftwf
|
||||
gmp
|
||||
gnuradio
|
||||
hackrf
|
||||
libsndfile
|
||||
log4cpp
|
||||
python
|
||||
python-numpy
|
||||
python-pyqt
|
||||
rtl-sdr
|
||||
soapysdr
|
||||
spdlog
|
||||
volk))
|
||||
(arguments
|
||||
`(#:modules ((guix build cmake-build-system)
|
||||
((guix build python-build-system) #:prefix python:)
|
||||
(guix build utils))
|
||||
#:imported-modules (,@%cmake-build-system-modules
|
||||
(guix build python-build-system))
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-after 'install 'wrap-python
|
||||
(assoc-ref python:%standard-phases 'wrap)))))
|
||||
(synopsis "GNU Radio block for interfacing with various radio hardware")
|
||||
(description "This is a block for GNU Radio allowing to use a common API
|
||||
(package
|
||||
(name "gr-osmosdr")
|
||||
(version "0.2.4")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://git.osmocom.org/gr-osmosdr")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "1qpa908bb7iagvaa7h541k1x092mb6dfrmw5ayy4p51qks45nj3p"))))
|
||||
(build-system cmake-build-system)
|
||||
(native-inputs
|
||||
(list doxygen pkg-config pybind11 python-mako python-six))
|
||||
(inputs
|
||||
(list airspy
|
||||
airspyhf
|
||||
bladerf
|
||||
boost
|
||||
fftwf
|
||||
gmp
|
||||
gnuradio
|
||||
gr-iqbal
|
||||
hackrf
|
||||
libsndfile
|
||||
log4cpp
|
||||
python
|
||||
python-numpy
|
||||
python-pyqt
|
||||
rtl-sdr
|
||||
soapysdr
|
||||
spdlog
|
||||
volk))
|
||||
(arguments
|
||||
(list #:modules '((guix build cmake-build-system)
|
||||
((guix build python-build-system) #:prefix python:)
|
||||
(guix build utils))
|
||||
#:imported-modules `(,@%cmake-build-system-modules
|
||||
(guix build python-build-system))
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(add-after 'unpack 'fix-gnuradio-iqbalance-detection
|
||||
(lambda _
|
||||
(substitute* "CMakeLists.txt"
|
||||
(("find_package\\(gnuradio-iqbalance PATHS \\$\\{Gnuradio_DIR\\}\\)")
|
||||
(string-append "find_package(gnuradio-iqbalance PATHS "
|
||||
#$(this-package-input "gr-iqbal")
|
||||
"/lib/cmake/gnuradio)")))))
|
||||
(add-after 'install 'wrap-python
|
||||
(assoc-ref python:%standard-phases 'wrap)))))
|
||||
(synopsis "GNU Radio block for interfacing with various radio hardware")
|
||||
(description "This is a block for GNU Radio allowing to use a common API
|
||||
to access different radio hardware.")
|
||||
(home-page "https://osmocom.org/projects/gr-osmosdr/wiki/GrOsmoSDR")
|
||||
(license license:gpl3+))))
|
||||
(deprecated-package "gnuradio-osmosdr" gr-osmosdr)
|
||||
(home-page "https://osmocom.org/projects/gr-osmosdr/wiki/GrOsmoSDR")
|
||||
(license license:gpl3+)))
|
||||
|
||||
(define-public libosmo-dsp
|
||||
(package
|
||||
@@ -1166,7 +1197,7 @@ satellites.")
|
||||
(define-public gqrx
|
||||
(package
|
||||
(name "gqrx")
|
||||
(version "2.16")
|
||||
(version "2.17")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@@ -1175,7 +1206,7 @@ satellites.")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "189cgmp88kabv823l5bfn1xfyyj6sldi5sdbmflvncxicf51b0yp"))))
|
||||
(base32 "0gg2i4x4z9ggliflpb00434q28831qfrxr0dv7d83ahagy428z22"))))
|
||||
(build-system qt-build-system)
|
||||
(native-inputs
|
||||
(list pkg-config))
|
||||
@@ -1416,6 +1447,43 @@ you must extend 'udev-service-type' with this package. E.g.:
|
||||
@code{(udev-rules-service 'hackrf hackrf #:groups '(\"dialout\"))}.")
|
||||
(license license:gpl2)))
|
||||
|
||||
(define-public bladerf
|
||||
(package
|
||||
(name "bladerf")
|
||||
(version "2023.02")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/Nuand/bladeRF")
|
||||
(commit version)
|
||||
(recursive? #t)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "038v9qdmrwx9mxsrq4l36bap0bsypyg4i8hs7l7srv4b0c2s7ynp"))))
|
||||
(build-system cmake-build-system)
|
||||
(native-inputs (list doxygen help2man pkg-config))
|
||||
(inputs (list libedit libusb))
|
||||
(arguments
|
||||
(list #:configure-flags #~(list "-DTAGGED_RELEASE=ON"
|
||||
(string-append "-DUDEV_RULES_PATH="
|
||||
#$output
|
||||
"/lib/udev/rules.d")
|
||||
"-DBLADERF_GROUP=dialout"
|
||||
"-DBUILD_DOCUMENTATION=ON")
|
||||
#:tests? #f)) ; No test suite
|
||||
(home-page "https://www.nuand.com/")
|
||||
(synopsis "User-space library and utilities for BladeRF SDR")
|
||||
(description
|
||||
"This package contains a library and command line utilities for
|
||||
controlling the BladeRF Software Defined Radio (SDR) over USB. To install the
|
||||
bladerf udev rules, you must extend 'udev-service-type' with this package.
|
||||
E.g.: @code{(udev-rules-service 'bladerf bladerf)}.")
|
||||
(license (list license:bsd-3
|
||||
license:expat
|
||||
license:gpl2+
|
||||
license:lgpl2.1+))))
|
||||
|
||||
(define-public hamlib
|
||||
(package
|
||||
(name "hamlib")
|
||||
@@ -1793,13 +1861,12 @@ gain and standing wave ratio.")
|
||||
(native-inputs
|
||||
(list pkg-config))
|
||||
(inputs
|
||||
(list hackrf libusb ncurses rtl-sdr))
|
||||
(list bladerf hackrf libusb ncurses rtl-sdr))
|
||||
(arguments
|
||||
(list
|
||||
#:test-target "test"
|
||||
#:make-flags
|
||||
#~(list (string-append "CC=" #$(cc-for-target))
|
||||
"BLADERF=no")
|
||||
#~(list (string-append "CC=" #$(cc-for-target)))
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(delete 'configure)
|
||||
@@ -2517,6 +2584,7 @@ voice formats.")
|
||||
airspyhf
|
||||
alsa-lib
|
||||
aptdec
|
||||
bladerf
|
||||
boost
|
||||
cm256cc
|
||||
codec2
|
||||
@@ -2614,6 +2682,7 @@ various hardware.")
|
||||
(list airspy
|
||||
airspyhf
|
||||
alsa-lib
|
||||
bladerf
|
||||
codec2
|
||||
fftwf
|
||||
glew
|
||||
@@ -2629,7 +2698,8 @@ various hardware.")
|
||||
(list zstd "lib")))
|
||||
(arguments
|
||||
(list #:tests? #f ; No test suite.
|
||||
#:configure-flags #~(list "-DOPT_BUILD_PLUTOSDR_SOURCE=OFF"
|
||||
#:configure-flags #~(list "-DOPT_BUILD_BLADERF_SOURCE=ON"
|
||||
"-DOPT_BUILD_PLUTOSDR_SOURCE=OFF"
|
||||
"-DOPT_BUILD_M17_DECODER=ON")
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
@@ -2866,7 +2936,9 @@ of devices than RTL-SDR.")
|
||||
python-pytest
|
||||
xorg-server-for-tests))
|
||||
(inputs
|
||||
(list gnuradio
|
||||
(list airspy
|
||||
bladerf
|
||||
gnuradio
|
||||
gr-osmosdr
|
||||
hackrf
|
||||
python-numpy
|
||||
@@ -2995,6 +3067,7 @@ Navigation Satellite System.")
|
||||
(inputs
|
||||
(list airspy
|
||||
airspyhf
|
||||
bladerf
|
||||
fftwf
|
||||
glew
|
||||
glfw
|
||||
|
||||
@@ -96,7 +96,7 @@ to remotely control a user's Windows desktop.")
|
||||
(define-public freerdp
|
||||
(package
|
||||
(name "freerdp")
|
||||
(version "2.11.1")
|
||||
(version "2.11.2")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@@ -105,7 +105,7 @@ to remotely control a user's Windows desktop.")
|
||||
(commit version)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "1mxx711phzsaa6l022xnn41dq1315y81cgxka3rxy0fg638wipn7"))))
|
||||
(base32 "1c17skq16ic036829bndqsr5g0yrp0ya5lmn2w28x9gkz2qjgqkf"))))
|
||||
(build-system cmake-build-system)
|
||||
(native-inputs
|
||||
(list docbook-xml
|
||||
|
||||
@@ -43,6 +43,7 @@
|
||||
#:use-module (guix git-download)
|
||||
#:use-module (guix utils)
|
||||
#:use-module (guix build-system ant)
|
||||
#:use-module (guix build-system cmake)
|
||||
#:use-module (guix build-system emacs)
|
||||
#:use-module (guix build-system gnu)
|
||||
#:use-module (guix build-system r)
|
||||
@@ -54,12 +55,15 @@
|
||||
#:use-module (gnu packages algebra)
|
||||
#:use-module (gnu packages autotools)
|
||||
#:use-module (gnu packages bash)
|
||||
#:use-module (gnu packages bison)
|
||||
#:use-module (gnu packages boost)
|
||||
#:use-module (gnu packages check)
|
||||
#:use-module (gnu packages compression)
|
||||
#:use-module (gnu packages cran)
|
||||
#:use-module (gnu packages curl)
|
||||
#:use-module (gnu packages emacs)
|
||||
#:use-module (gnu packages emacs-xyz)
|
||||
#:use-module (gnu packages flex)
|
||||
#:use-module (gnu packages fontutils)
|
||||
#:use-module (gnu packages gcc)
|
||||
#:use-module (gnu packages gtk)
|
||||
@@ -90,6 +94,7 @@
|
||||
#:use-module (gnu packages sphinx)
|
||||
#:use-module (gnu packages ssh)
|
||||
#:use-module (gnu packages swig)
|
||||
#:use-module (gnu packages tbb)
|
||||
#:use-module (gnu packages tcl)
|
||||
#:use-module (gnu packages tex)
|
||||
#:use-module (gnu packages texinfo)
|
||||
@@ -647,13 +652,13 @@ estimation) corresponding to the book: Wand, M.P. and Jones, M.C. (1995)
|
||||
(define-public r-lattice
|
||||
(package
|
||||
(name "r-lattice")
|
||||
(version "0.21-8")
|
||||
(version "0.21-9")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (cran-uri "lattice" version))
|
||||
(sha256
|
||||
(base32
|
||||
"0af3c0mk0s3gnpmg7xmd4hjjynwv4ym3iv4grjvcmrk28abxdlwa"))))
|
||||
"0ak9k6s6drd1a25m7mwzb426ms92a2p3ps04h2pacifwnk74ca59"))))
|
||||
(build-system r-build-system)
|
||||
(home-page "https://lattice.r-forge.r-project.org/")
|
||||
(synopsis "High-level data visualization system")
|
||||
@@ -667,14 +672,14 @@ also flexible enough to handle most nonstandard requirements.")
|
||||
(define-public r-matrix
|
||||
(package
|
||||
(name "r-matrix")
|
||||
(version "1.6-1")
|
||||
(version "1.6-1.1")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (cran-uri "Matrix" version))
|
||||
(sha256
|
||||
(base32
|
||||
"01qcrv4y1fm3ah5h4j90xvzlwvzcnbpa10cpg6k9hp363xh0pip5"))))
|
||||
"1hlcxr38p4ybb67n25cc1ssh2q2r8cj0flc59lid8hclzvqv27ik"))))
|
||||
(properties `((upstream-name . "Matrix")))
|
||||
(build-system r-build-system)
|
||||
(propagated-inputs
|
||||
@@ -1091,13 +1096,13 @@ in which the whole-plots or split-plots or both can be freely exchangeable.")
|
||||
(define-public r-plyr
|
||||
(package
|
||||
(name "r-plyr")
|
||||
(version "1.8.8")
|
||||
(version "1.8.9")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (cran-uri "plyr" version))
|
||||
(sha256
|
||||
(base32 "030706kwgqa2s5jd93ck271iqb0pj3fshrj9frg4wgp1pfs12cm7"))))
|
||||
(base32 "00z1mvqisnzbbwcwax1gm9ilahpgp21kk4l7hqdz8fym27vygd8m"))))
|
||||
(build-system r-build-system)
|
||||
(propagated-inputs (list r-rcpp))
|
||||
(home-page "http://had.co.nz/plyr")
|
||||
@@ -1446,13 +1451,13 @@ for template use among CRAN packages.")
|
||||
(define-public r-evaluate
|
||||
(package
|
||||
(name "r-evaluate")
|
||||
(version "0.21")
|
||||
(version "0.22")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (cran-uri "evaluate" version))
|
||||
(sha256
|
||||
(base32
|
||||
"1f92kjlds2nckmsjxx07xm2pikpc9x6hcvc0538xf5w9xsfcjy1i"))))
|
||||
"0sz4zimz4brbd9sawdazfgipkmfzzdmdq01b5m8pnrql5xrxhiwh"))))
|
||||
(build-system r-build-system)
|
||||
(home-page "https://github.com/hadley/evaluate")
|
||||
(synopsis "Parsing and evaluation tools for R")
|
||||
@@ -1532,13 +1537,13 @@ data derived from /etc/mime.types in UNIX-type systems.")
|
||||
(define-public r-markdown
|
||||
(package
|
||||
(name "r-markdown")
|
||||
(version "1.8")
|
||||
(version "1.9")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (cran-uri "markdown" version))
|
||||
(sha256
|
||||
(base32
|
||||
"1az5l2dnrdfx36kcdi5x8qnrbwmylf0wqd6a4hg2l9m8q1vpgs8d"))))
|
||||
"0201v3spgl8a5c5xkddac5a3z9zh8d0nm9yg6alyhhj4cjwmgibh"))))
|
||||
(build-system r-build-system)
|
||||
;; Skip check phase because the tests require the r-knitr package to be
|
||||
;; installed. This prevents installation failures. Knitr normally
|
||||
@@ -1864,14 +1869,14 @@ database.")
|
||||
(define-public r-dbplyr
|
||||
(package
|
||||
(name "r-dbplyr")
|
||||
(version "2.3.3")
|
||||
(version "2.3.4")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (cran-uri "dbplyr" version))
|
||||
(sha256
|
||||
(base32
|
||||
"1d3m7bhd8n5l0x1phfwzgrw2kwfyahb9yd61bbcnryd6m8c8kr3w"))))
|
||||
"1b6y1jhf5ix4vry165vwid5nqm0d99q61vxak6aw3vfkj379vgk9"))))
|
||||
(build-system r-build-system)
|
||||
(propagated-inputs
|
||||
(list r-blob
|
||||
@@ -2234,6 +2239,32 @@ modeling focusing on advanced Markov chain Monte Carlo (MCMC) and variational
|
||||
inference (VI) algorithms.")
|
||||
(license license:asl2.0)))
|
||||
|
||||
(define-public python-chaospy
|
||||
(package
|
||||
(name "python-chaospy")
|
||||
(version "4.3.13")
|
||||
(source (origin ;; PyPI misses Pytest fixtures.
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/jonathf/chaospy")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"1bn4jmwygs5h0dskbniivj20qblgm75pyi9hcjf47r25kawd730m"))))
|
||||
(build-system pyproject-build-system)
|
||||
(propagated-inputs (list python-importlib-metadata python-numpoly
|
||||
python-numpy python-scipy))
|
||||
(native-inputs (list python-pytest python-scikit-learn))
|
||||
(home-page "https://chaospy.readthedocs.io/en/master/")
|
||||
(synopsis "Numerical tool for performing uncertainty quantification")
|
||||
(description "Chaospy is a numerical toolbox for performing uncertainty
|
||||
quantification using polynomial chaos expansions, advanced Monte Carlo
|
||||
methods implemented in Python. It also include a full suite of tools for
|
||||
doing low-discrepancy sampling, quadrature creation, polynomial manipulations,
|
||||
and a lot more.")
|
||||
(license license:expat)))
|
||||
|
||||
(define-public python-patsy
|
||||
(package
|
||||
(name "python-patsy")
|
||||
@@ -2265,6 +2296,30 @@ building design matrices.")
|
||||
;; and is covered by the PSFL.
|
||||
(license (list license:bsd-2 license:psfl))))
|
||||
|
||||
(define-public python-mapie
|
||||
(package
|
||||
(name "python-mapie")
|
||||
(version "0.7.0")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (pypi-uri "MAPIE" version))
|
||||
(sha256
|
||||
(base32
|
||||
"1nvi547avvwrck1n7rf5jh7d0ml6jaqjs2p59iwcq2a5xjmdsmsc"))))
|
||||
(build-system pyproject-build-system)
|
||||
(native-inputs (list python-pandas python-pytest))
|
||||
(propagated-inputs (list python-numpy python-scikit-learn))
|
||||
(home-page "https://github.com/scikit-learn-contrib/MAPIE")
|
||||
(synopsis "Module for estimating prediction intervals")
|
||||
(description "MAPIE allows you to easily estimate prediction intervals
|
||||
(or prediction sets) using your favourite scikit-learn-compatible model for
|
||||
single-output regression or multi-class classification settings.
|
||||
|
||||
Prediction intervals output by MAPIE encompass both aleatoric and epistemic
|
||||
uncertainties and are backed by strong theoretical guarantees thanks to
|
||||
conformal prediction methods intervals.")
|
||||
(license license:bsd-3)))
|
||||
|
||||
(define-public python-statsmodels
|
||||
(package
|
||||
(name "python-statsmodels")
|
||||
@@ -2319,6 +2374,94 @@ statistical computations including descriptive statistics and estimation and
|
||||
inference for statistical models.")
|
||||
(license license:bsd-3)))
|
||||
|
||||
(define-public python-openturns
|
||||
(package
|
||||
(name "python-openturns")
|
||||
(version "1.21")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://github.com/openturns/openturns")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "05lbx8npvvk7jyakvfpgi9ggdp6cnzwv2hjmjrkji2s42axv0q6d"))))
|
||||
(build-system cmake-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(delete 'check)
|
||||
;; This is a Python package which is fully managed by CMake. In
|
||||
;; cmake-build-system the check phase runs before install, but the
|
||||
;; Python modules required for testing are only installed in the
|
||||
;; install phase. Move check to after the install phase.
|
||||
(add-after 'install 'check
|
||||
(lambda* (#:key tests? #:allow-other-keys)
|
||||
(when tests?
|
||||
(invoke "ctest" "--exclude-regex"
|
||||
;; XXX: Cpp tests fail in 'No such file or directory',
|
||||
;; skip for now and only run the Python tests.
|
||||
;; TODO: To pass the Python tests below, Ipopt must be
|
||||
;; built with MUMPS support, but simply adding mumps
|
||||
;; to the inputs doesn't work for it to be found,
|
||||
;; possibly because MUMPS doesn't generate a .pc file.
|
||||
(string-join
|
||||
(list "^cpp"
|
||||
"pyinstallcheck_Bonmin_std"
|
||||
"pyinstallcheck_Bonmin_4dsoo"
|
||||
"pyinstallcheck_Bonmin_MIT15"
|
||||
"pyinstallcheck_Bonmin_swiler2014"
|
||||
"pyinstallcheck_Ipopt_std"
|
||||
"pyinstallcheck_example_plot_optimization_bonmin"
|
||||
"pyinstallcheck_coupling_tools")
|
||||
"|"))))))))
|
||||
(native-inputs
|
||||
(list bison
|
||||
dvisvgm
|
||||
flex
|
||||
python-numpydoc
|
||||
python-sphinx
|
||||
;; python-sphinx-gallery ;; Currently broken
|
||||
swig))
|
||||
(inputs
|
||||
(list openblas ; the only required dependency
|
||||
;; The dependecies below are all optional.
|
||||
bonmin
|
||||
boost
|
||||
cbc ;; Maybe this should be propagated by Bonmin?
|
||||
ceres
|
||||
cminpack
|
||||
dlib
|
||||
hdf5
|
||||
hmat
|
||||
ipopt
|
||||
libxml2
|
||||
mpc
|
||||
mpfr
|
||||
nlopt
|
||||
pagmo
|
||||
primesieve
|
||||
python-wrapper
|
||||
spectra
|
||||
tbb))
|
||||
(propagated-inputs
|
||||
(list python-chaospy
|
||||
python-dill
|
||||
python-matplotlib
|
||||
python-numpy
|
||||
python-pandas
|
||||
python-scipy))
|
||||
(home-page "https://openturns.github.io/www/")
|
||||
(synopsis "Uncertainty treatment library")
|
||||
(description
|
||||
"OpenTURNS is a scientific C++ and Python library including an internal
|
||||
data model and algorithms dedicated to the treatment of uncertainties. The
|
||||
main goal of this library is giving to specific applications all the
|
||||
functionalities needed to treat uncertainties in studies.")
|
||||
(license license:lgpl3+)))
|
||||
|
||||
(define-public r-coda
|
||||
(package
|
||||
(name "r-coda")
|
||||
@@ -2673,14 +2816,14 @@ collation, and NAMESPACE files.")
|
||||
(define-public r-openssl
|
||||
(package
|
||||
(name "r-openssl")
|
||||
(version "2.1.0")
|
||||
(version "2.1.1")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (cran-uri "openssl" version))
|
||||
(sha256
|
||||
(base32
|
||||
"0fg5avcrjjn7sv6rzbp19y6jwjjr77xpldxg4xssp5s1p832wnk2"))))
|
||||
"1p2bnr4z4vx3yqq5isqb3z4d9vg2isiz8i0h3vxdb5ramzwjd9zs"))))
|
||||
(properties
|
||||
`((upstream-name . "openssl")
|
||||
(updater-extra-inputs . ("openssl"))))
|
||||
@@ -2826,13 +2969,13 @@ tools to simplify the devolpment of R packages.")
|
||||
(define-public r-withr
|
||||
(package
|
||||
(name "r-withr")
|
||||
(version "2.5.0")
|
||||
(version "2.5.1")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (cran-uri "withr" version))
|
||||
(sha256
|
||||
(base32
|
||||
"1h4bzj0am9lawbh1cam1jmgk1xjmn9da14r90w3q984hswz7nc9p"))))
|
||||
"1kndhxl0fxn40v9yx0iglilani3ym3ywbjf6zbg1pnb52ncf0nm9"))))
|
||||
(build-system r-build-system)
|
||||
(native-inputs
|
||||
(list r-knitr))
|
||||
@@ -3055,13 +3198,13 @@ certain criterion, e.g., it contains a certain regular file.")
|
||||
(define-public r-rmarkdown
|
||||
(package
|
||||
(name "r-rmarkdown")
|
||||
(version "2.24")
|
||||
(version "2.25")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (cran-uri "rmarkdown" version))
|
||||
(sha256
|
||||
(base32 "11ixspf7w5zsr02c5545w0ra7l9c8kb4bls97dhx5cgldnjfywrq"))))
|
||||
(base32 "0m814598vc67sjwk83xh9g17n72618l32dgg7fz8y0gycqk6dr06"))))
|
||||
(properties
|
||||
`((upstream-name . "rmarkdown")
|
||||
(updater-extra-propagated-inputs . ("pandoc"))))
|
||||
@@ -3837,13 +3980,13 @@ using the multicore functionality of the parallel package.")
|
||||
extensions)))))
|
||||
(package
|
||||
(name "r-dt")
|
||||
(version "0.29")
|
||||
(version "0.30")
|
||||
(source (origin
|
||||
(method url-fetch)
|
||||
(uri (cran-uri "DT" version))
|
||||
(sha256
|
||||
(base32
|
||||
"1b9qshrjv9xaak92rvg65vkak4pyci9js4j7nkfcg0p19ghnvlm8"))
|
||||
"13k9zyapx6rqfsrl5afpgaqyni57qq88hxa1j3y3wjcv5bim66ig"))
|
||||
(modules '((guix build utils)
|
||||
(ice-9 match)))
|
||||
(snippet
|
||||
@@ -3926,7 +4069,7 @@ using the multicore functionality of the parallel package.")
|
||||
(list js-selectize))
|
||||
(native-inputs
|
||||
`(("r-knitr" ,r-knitr)
|
||||
("uglifyjs" ,node-uglify-js)
|
||||
("esbuild" ,esbuild)
|
||||
("datatables-plugins"
|
||||
,(let ((version "1.13.4"))
|
||||
(origin
|
||||
@@ -5782,13 +5925,13 @@ groupings.")
|
||||
(define-public r-vgam
|
||||
(package
|
||||
(name "r-vgam")
|
||||
(version "1.1-8")
|
||||
(version "1.1-9")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (cran-uri "VGAM" version))
|
||||
(sha256
|
||||
(base32 "1k6i18ywfh0xlc7ipgvz1g9gdgkyz5phf1cwyfv8mn2nwgag3h6l"))))
|
||||
(base32 "1l5gn6495k8vqp2b4hj4g5ani7j4cli2p7n8fwkw7bmc42q13m6l"))))
|
||||
(properties `((upstream-name . "VGAM")))
|
||||
(build-system r-build-system)
|
||||
(native-inputs
|
||||
@@ -6305,14 +6448,14 @@ is supported.")
|
||||
(define-public r-lubridate
|
||||
(package
|
||||
(name "r-lubridate")
|
||||
(version "1.9.2")
|
||||
(version "1.9.3")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (cran-uri "lubridate" version))
|
||||
(sha256
|
||||
(base32
|
||||
"19s4cm6a73b9q519mmgf2qxjmd2bsjff19ds3hk8ksgz98d46xl9"))))
|
||||
"1zvzycng2hsks9d7552nb93abzjrs43c975rc16s3c1is8318vib"))))
|
||||
(build-system r-build-system)
|
||||
(propagated-inputs
|
||||
(list r-generics r-timechange))
|
||||
@@ -6913,18 +7056,18 @@ Methods are provided for a variety of fitted models, including @code{lm()} and
|
||||
(define-public r-puniform
|
||||
(package
|
||||
(name "r-puniform")
|
||||
(version "0.2.6")
|
||||
(version "0.2.7")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (cran-uri "puniform" version))
|
||||
(sha256
|
||||
(base32
|
||||
"1rfd7d14an28hba1rhldxn418qagnlk8ngvimb86i3774ll9blvi"))))
|
||||
"15q5wlcps7387rjz7p1f5kifg1fl5yxxy7gjx6fvspvqwjkjbs4z"))))
|
||||
(properties `((upstream-name . "puniform")))
|
||||
(build-system r-build-system)
|
||||
(propagated-inputs
|
||||
(list r-adgoftest r-metafor r-rcpp r-rcpparmadillo))
|
||||
(list r-adgoftest r-metafor r-numderiv r-rcpp r-rcpparmadillo))
|
||||
(home-page
|
||||
"https://github.com/RobbievanAert/puniform")
|
||||
(synopsis
|
||||
@@ -7082,14 +7225,14 @@ various statistical models with linear predictors.")
|
||||
(define-public r-bayesfactor
|
||||
(package
|
||||
(name "r-bayesfactor")
|
||||
(version "0.9.12-4.4")
|
||||
(version "0.9.12-4.5")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (cran-uri "BayesFactor" version))
|
||||
(sha256
|
||||
(base32
|
||||
"02bhlamnkxp9wqi2cp1i0dxmqdf3y3l872ad9z39xwripbi4kc7a"))))
|
||||
"10bclqzczawpssjwa3b177xpab4mdhczfj1qj23xn2yvrrw1z9mh"))))
|
||||
(properties `((upstream-name . "BayesFactor")))
|
||||
(build-system r-build-system)
|
||||
(propagated-inputs
|
||||
|
||||
@@ -1509,7 +1509,7 @@ basic input/output.")
|
||||
(define-public alacritty
|
||||
(package
|
||||
(name "alacritty")
|
||||
(version "0.12.2")
|
||||
(version "0.12.3")
|
||||
(source
|
||||
(origin
|
||||
;; XXX: The crate at "crates.io" has limited contents. In particular,
|
||||
@@ -1520,11 +1520,10 @@ basic input/output.")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "17a7v32gxsy79cj1ap71ckrypxv7i9jv4lnibg0ymcpwk9zpwxjz"))))
|
||||
(base32 "1jbyxnza38c22k7ri8apzn03q91l06isj8la9xca7cz06kn0hha9"))))
|
||||
(build-system cargo-build-system)
|
||||
(arguments
|
||||
`(#:install-source? #f ; virtual manifest
|
||||
#:cargo-test-flags '("--release" "--" "--skip=config_read_eof")
|
||||
#:cargo-inputs
|
||||
(("rust-alacritty-config" ,rust-alacritty-config-0.1)
|
||||
("rust-alacritty-config-derive" ,rust-alacritty-config-derive-0.2)
|
||||
@@ -1577,10 +1576,9 @@ basic input/output.")
|
||||
(search-input-file inputs "lib/libEGL.so"))
|
||||
(("libGL\\.so")
|
||||
(search-input-file inputs "lib/libGL.so"))
|
||||
;; Lots of libraries from rust-x11-dl.
|
||||
;; XXX: Not all X11 libraries are inside the build enclosure.
|
||||
;(("libX.*\\.so" all)
|
||||
; (search-input-file inputs (string-append "lib/" all)))
|
||||
;; Lots of libraries from rust-x11-dl and others.
|
||||
(("libX[[:alpha:]]*\\.so" all)
|
||||
(search-input-file inputs (string-append "lib/" all)))
|
||||
|
||||
;; There are several libwayland libraries.
|
||||
(("libwayland-.*\\.so" all)
|
||||
@@ -1630,23 +1628,31 @@ basic input/output.")
|
||||
(install-file "extra/completions/alacritty.fish"
|
||||
(string-append share "/fish/vendor_completions.d"))))))))
|
||||
(native-inputs
|
||||
`(("ncurses" ,ncurses)
|
||||
("pkg-config" ,pkg-config)
|
||||
("python3" ,python)))
|
||||
(list ncurses
|
||||
pkg-config
|
||||
python))
|
||||
(inputs
|
||||
`(("expat" ,expat)
|
||||
("fontconfig" ,fontconfig)
|
||||
("freetype" ,freetype)
|
||||
("libx11" ,libx11)
|
||||
("libxcb" ,libxcb)
|
||||
("libxcursor" ,libxcursor)
|
||||
("libxi" ,libxi)
|
||||
("libxkbcommon" ,libxkbcommon)
|
||||
("libxrandr" ,libxrandr)
|
||||
("libxxf86vm" ,libxxf86vm)
|
||||
("mesa" ,mesa)
|
||||
("xdg-utils" ,xdg-utils)
|
||||
("wayland" ,wayland)))
|
||||
(list expat
|
||||
fontconfig
|
||||
freetype
|
||||
libx11
|
||||
libxcb
|
||||
libxcursor
|
||||
libxext
|
||||
libxft
|
||||
libxi
|
||||
libxinerama
|
||||
libxkbcommon
|
||||
libxmu
|
||||
libxpresent
|
||||
libxrandr
|
||||
libxscrnsaver
|
||||
libxt
|
||||
libxtst
|
||||
libxxf86vm
|
||||
mesa
|
||||
xdg-utils
|
||||
wayland))
|
||||
(native-search-paths
|
||||
;; FIXME: This should only be located in 'ncurses'. Nonetheless it is
|
||||
;; provided for usability reasons. See <https://bugs.gnu.org/22138>.
|
||||
|
||||
@@ -40434,7 +40434,7 @@ glossaries, ...) should be correctly managed.
|
||||
|
||||
@item @file{figlatex.sty}: a LaTeX package to easily insert Xfig figures. It
|
||||
can interact with LaTeX.mk so that the latter automatically invokes
|
||||
@command{transfig} if needed.
|
||||
@command{fig2dev} if needed.
|
||||
|
||||
@end itemize")
|
||||
(license license:gpl3+)))
|
||||
|
||||
@@ -173,6 +173,11 @@ standard operating system features.")
|
||||
(arguments
|
||||
(substitute-keyword-arguments (package-arguments imgui)
|
||||
((#:make-flags flags ''())
|
||||
;; Remove the "-DImDrawIdx=unsigned int" make-flag as this breaks
|
||||
;; mangohud, the only user of this version.
|
||||
#~(delete "-DImDrawIdx=unsigned int" #$flags))))))
|
||||
;; Remove "-DImDrawIdx=unsigned int" and "-DIMGUI_ENABLE_FREETYPE"
|
||||
;; from make-flags as this breaks MangoHud, the only user of this
|
||||
;; version.
|
||||
#~(filter (negate (lambda (x) (string-prefix? "-D" x)))
|
||||
#$flags))))
|
||||
(inputs
|
||||
(modify-inputs (package-inputs imgui)
|
||||
(delete "freetype")))))
|
||||
|
||||
@@ -6,6 +6,7 @@
|
||||
;;; Copyright © 2023 Andrew Tropin <andrew@trop.in>
|
||||
;;; Copyright © 2023 Nicolas Graves <ngraves@ngraves.fr>
|
||||
;;; Copyright © 2023 Zheng Junjie <873216071@qq.com>
|
||||
;;; Copyright © 2023 Raven Hallsby <karl@hallsby.com>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
@@ -446,8 +447,8 @@ which will be used as a snippet in origin."
|
||||
(define-public tree-sitter-java
|
||||
(tree-sitter-grammar
|
||||
"java" "Java"
|
||||
"1i9zfgqibinz3rkx6yws1wk49iys32x901dki65qihbxcmcfh341"
|
||||
"0.20.0"))
|
||||
"0440xh8x8rkbdlc1f1ail9wzl4583l29ic43x9lzl8290bm64q5l"
|
||||
"0.20.1"))
|
||||
|
||||
(define-public tree-sitter-json
|
||||
;; Not tagged
|
||||
@@ -607,3 +608,16 @@ which will be used as a snippet in origin."
|
||||
(use-modules (guix build utils))
|
||||
(delete-file "binding.gyp")
|
||||
(delete-file-recursively "bindings"))))))
|
||||
|
||||
(define-public tree-sitter-lua
|
||||
(tree-sitter-grammar
|
||||
"lua" "Lua"
|
||||
"05irhg6gg11r9cnzh0h3691pnxjhd396sa1x8xrgqjz2fd09brf3"
|
||||
"0.0.19"
|
||||
#:repository-url "https://github.com/MunifTanjim/tree-sitter-lua"))
|
||||
|
||||
(define-public tree-sitter-scala
|
||||
(tree-sitter-grammar
|
||||
"scala" "Scala"
|
||||
"0hs6gmkq5cx9qrmgfz1mh0c34flwffc0k2mhwf13laawswnywfkz"
|
||||
"0.20.2"))
|
||||
|
||||
@@ -1040,73 +1040,71 @@ collaboration using typical untrusted file hosts or services.")
|
||||
"193d990ym10qlslk0p8mjwp2j6rhqa7fq0y1iff65lvbyv914pss"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
'(#:tests? #f ; XXX: fail to build the in-source git.
|
||||
#:test-target "test"
|
||||
#:make-flags '("CC=gcc" "SHELL_PATH=sh")
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-after 'unpack 'unpack-git
|
||||
(lambda* (#:key inputs #:allow-other-keys)
|
||||
;; Unpack the source of git into the 'git' directory.
|
||||
(invoke "tar" "--strip-components=1" "-C" "git" "-xf"
|
||||
(assoc-ref inputs "git-source"))))
|
||||
(add-after 'unpack 'patch-absolute-file-names
|
||||
(lambda* (#:key inputs #:allow-other-keys)
|
||||
(define (quoted-file-name input path)
|
||||
(string-append "\"" input path "\""))
|
||||
(substitute* "ui-snapshot.c"
|
||||
(("\"gzip\"")
|
||||
(quoted-file-name (assoc-ref inputs "gzip") "/bin/gzip"))
|
||||
(("\"bzip2\"")
|
||||
(quoted-file-name (assoc-ref inputs "bzip2") "/bin/bzip2"))
|
||||
(("\"xz\"")
|
||||
(quoted-file-name (assoc-ref inputs "xz") "/bin/xz")))
|
||||
(list
|
||||
#:tests? #f ; XXX: fail to build the in-source git.
|
||||
#:test-target "test"
|
||||
#:make-flags #~(list (string-append "CC=" #$(cc-for-target))
|
||||
"SHELL_PATH=sh")
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(add-after 'unpack 'unpack-git
|
||||
(lambda* (#:key inputs #:allow-other-keys)
|
||||
;; Unpack the source of git into the 'git' directory.
|
||||
(invoke "tar" "--strip-components=1" "-C" "git" "-xf"
|
||||
(assoc-ref inputs "git-source"))))
|
||||
(add-after 'unpack 'patch-absolute-file-names
|
||||
(lambda* (#:key inputs #:allow-other-keys)
|
||||
(define (quoted-file-name input path)
|
||||
(string-append "\"" input path "\""))
|
||||
(substitute* "ui-snapshot.c"
|
||||
(("\"gzip\"")
|
||||
(quoted-file-name (assoc-ref inputs "gzip") "/bin/gzip"))
|
||||
(("\"bzip2\"")
|
||||
(quoted-file-name (assoc-ref inputs "bzip2") "/bin/bzip2"))
|
||||
(("\"xz\"")
|
||||
(quoted-file-name (assoc-ref inputs "xz") "/bin/xz")))
|
||||
|
||||
(substitute* "filters/about-formatting.sh"
|
||||
(("$\\(dirname $0\\)") (string-append (assoc-ref outputs "out")
|
||||
"/lib/cgit/filters"))
|
||||
(("\\| tr") (string-append "| " (which "tr"))))
|
||||
(substitute* "filters/about-formatting.sh"
|
||||
(("$\\(dirname $0\\)") (string-append (assoc-ref outputs "out")
|
||||
"/lib/cgit/filters"))
|
||||
(("\\| tr") (string-append "| " (which "tr"))))
|
||||
|
||||
(substitute* "filters/html-converters/txt2html"
|
||||
(("sed") (which "sed")))
|
||||
(substitute* "filters/html-converters/txt2html"
|
||||
(("sed") (which "sed")))
|
||||
|
||||
(substitute* "filters/html-converters/man2html"
|
||||
(("groff") (which "groff")))
|
||||
(substitute* "filters/html-converters/man2html"
|
||||
(("groff") (which "groff")))
|
||||
|
||||
(substitute* "filters/html-converters/rst2html"
|
||||
(("rst2html\\.py") (which "rst2html.py")))
|
||||
|
||||
#t))
|
||||
(delete 'configure) ; no configure script
|
||||
(add-after 'build 'build-man
|
||||
(lambda* (#:key make-flags #:allow-other-keys)
|
||||
(apply invoke "make" "doc-man" make-flags)))
|
||||
(replace 'install
|
||||
(lambda* (#:key make-flags outputs #:allow-other-keys)
|
||||
(let ((out (assoc-ref outputs "out")))
|
||||
(apply invoke
|
||||
"make" "install" "install-man"
|
||||
(string-append "prefix=" out)
|
||||
(string-append "CGIT_SCRIPT_PATH=" out "/share/cgit")
|
||||
make-flags)
|
||||
;; Move the platform-dependent 'cgit.cgi' into lib to get it
|
||||
;; stripped.
|
||||
(rename-file (string-append out "/share/cgit/cgit.cgi")
|
||||
(string-append out "/lib/cgit/cgit.cgi"))
|
||||
#t)))
|
||||
(add-after 'install 'wrap-python-scripts
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
(for-each
|
||||
(lambda (file)
|
||||
(wrap-program (string-append (assoc-ref outputs "out")
|
||||
"/lib/cgit/filters/" file)
|
||||
`("GUIX_PYTHONPATH" ":" prefix (,(getenv "GUIX_PYTHONPATH")))))
|
||||
'("syntax-highlighting.py"
|
||||
"html-converters/md2html"))
|
||||
#t)))))
|
||||
(substitute* "filters/html-converters/rst2html"
|
||||
(("rst2html\\.py") (which "rst2html.py")))))
|
||||
(delete 'configure) ; no configure script
|
||||
(add-after 'build 'build-man
|
||||
(lambda* (#:key make-flags #:allow-other-keys)
|
||||
(apply invoke "make" "doc-man" make-flags)))
|
||||
(replace 'install
|
||||
(lambda* (#:key make-flags outputs #:allow-other-keys)
|
||||
(let ((out (assoc-ref outputs "out")))
|
||||
(apply invoke
|
||||
"make" "install" "install-man"
|
||||
(string-append "prefix=" out)
|
||||
(string-append "CGIT_SCRIPT_PATH=" out "/share/cgit")
|
||||
make-flags)
|
||||
;; Move the platform-dependent 'cgit.cgi' into lib to get it
|
||||
;; stripped.
|
||||
(rename-file (string-append out "/share/cgit/cgit.cgi")
|
||||
(string-append out "/lib/cgit/cgit.cgi")))))
|
||||
(add-after 'install 'wrap-python-scripts
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
(for-each
|
||||
(lambda (file)
|
||||
(wrap-program (string-append (assoc-ref outputs "out")
|
||||
"/lib/cgit/filters/" file)
|
||||
`("GUIX_PYTHONPATH" ":" prefix (,(getenv "GUIX_PYTHONPATH")))))
|
||||
'("syntax-highlighting.py"
|
||||
"html-converters/md2html")))))))
|
||||
(native-inputs
|
||||
;; For building manpage.
|
||||
(list asciidoc gzip bzip2 xz))
|
||||
(list asciidoc))
|
||||
(inputs
|
||||
`(;; Building cgit requires a Git source tree.
|
||||
("git-source"
|
||||
@@ -1117,13 +1115,20 @@ collaboration using typical untrusted file hosts or services.")
|
||||
(uri "mirror://kernel.org/software/scm/git/git-2.25.4.tar.xz")
|
||||
(sha256
|
||||
(base32 "11am6s46wmn1yll5614smjhzlghbqq6gysgcs64igjr9y5wzpdxq"))))
|
||||
("bash-minimal" ,bash-minimal)
|
||||
("openssl" ,openssl)
|
||||
("groff" ,groff)
|
||||
("python" ,python)
|
||||
("python-docutils" ,python-docutils)
|
||||
("python-markdown" ,python-markdown)
|
||||
("python-pygments" ,python-pygments)
|
||||
("zlib" ,zlib)))
|
||||
("zlib" ,zlib)
|
||||
;; bzip2, groff, gzip and xz are inputs (not native inputs)
|
||||
;; since they are actually substituted into cgit source and
|
||||
;; referenced by the built package output.
|
||||
("bzip2" ,bzip2)
|
||||
("groff" ,groff)
|
||||
("gzip" ,gzip)
|
||||
("xz" ,xz)))
|
||||
(home-page "https://git.zx2c4.com/cgit/")
|
||||
(synopsis "Web frontend for git repositories")
|
||||
(description
|
||||
@@ -1131,6 +1136,52 @@ collaboration using typical untrusted file hosts or services.")
|
||||
a built-in cache to decrease server I/O pressure.")
|
||||
(license license:gpl2)))
|
||||
|
||||
(define-public cgit-pink
|
||||
(package
|
||||
(inherit cgit)
|
||||
(name "cgit-pink")
|
||||
(version "1.4.1")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
(url "https://git.causal.agency/cgit-pink")
|
||||
(commit version)))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"0yp6rm60pz8pj8wrm1aglix51hhy00al86mm94ag2bifc92q23ar"))))
|
||||
(arguments
|
||||
(substitute-keyword-arguments (package-arguments cgit)
|
||||
((#:tests? _ #f)
|
||||
(not (%current-target-system)))
|
||||
((#:make-flags _ '())
|
||||
#~(list (string-append "CC=" #$(cc-for-target))
|
||||
(string-append "PERL_PATH="
|
||||
(search-input-file %build-inputs "/bin/perl"))
|
||||
;; It is important to set an absolute path in SHELL_PATH
|
||||
;; because it is used as the shebang of generated scripts that
|
||||
;; are invoked during the test phase.
|
||||
(string-append "SHELL_PATH="
|
||||
(search-input-file %build-inputs "/bin/sh"))))))
|
||||
(inputs
|
||||
(modify-inputs (package-inputs cgit)
|
||||
(replace "git-source"
|
||||
;; cgit-pink is tightly bound to git. Use GIT_VER from the Makefile,
|
||||
;; which may not match the current (package-version git).
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri "mirror://kernel.org/software/scm/git/git-2.36.1.tar.xz")
|
||||
(sha256
|
||||
(base32
|
||||
"0w43a35mhc2qf2gjkxjlnkf2lq8g0snf34iy5gqx2678yq7llpa0"))))))
|
||||
(native-inputs
|
||||
(modify-inputs (package-native-inputs cgit)
|
||||
(append gnu-gettext perl)))
|
||||
(home-page "https://git.causal.agency/cgit-pink/about/")
|
||||
(description "cgit-pink is a fast web interface for the Git SCM, using a
|
||||
built-in cache to decrease server I/O pressure. cgit-pink is a fork of
|
||||
cgit.")))
|
||||
|
||||
(define-public python-git-multimail
|
||||
(package
|
||||
(name "python-git-multimail")
|
||||
|
||||
@@ -3277,7 +3277,7 @@ from sites like Twitch.tv and pipes them into a video player of choice.")
|
||||
(define-public mlt
|
||||
(package
|
||||
(name "mlt")
|
||||
(version "7.18.0")
|
||||
(version "7.20.0")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@@ -3286,7 +3286,7 @@ from sites like Twitch.tv and pipes them into a video player of choice.")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "1b79wcf4l099w6bp4jlhgdwnbaydkrp8rj1hflggihzn3awcrayy"))))
|
||||
(base32 "1dc09j8yvis6ilba5a13qicf6wbgxnzwllab6h48kzfl1lc0n8g7"))))
|
||||
(build-system cmake-build-system)
|
||||
(arguments
|
||||
(list
|
||||
@@ -4996,7 +4996,7 @@ transitions, and effects and then export your film to many common formats.")
|
||||
(define-public shotcut
|
||||
(package
|
||||
(name "shotcut")
|
||||
(version "23.07.29")
|
||||
(version "23.09.29")
|
||||
(source
|
||||
(origin
|
||||
(method git-fetch)
|
||||
@@ -5005,7 +5005,7 @@ transitions, and effects and then export your film to many common formats.")
|
||||
(commit (string-append "v" version))))
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32 "1xdybjs39bg361jl7i3rlqdiwhi2xai7x45j7f6cgzygdd833pw5"))))
|
||||
(base32 "1r380lpa79i6821r3v84dm47vqxk4smx2k1wvf9afylw95v3i8zv"))))
|
||||
(build-system qt-build-system)
|
||||
(arguments
|
||||
`(#:tests? #f ;there are no tests
|
||||
|
||||
@@ -81,7 +81,7 @@
|
||||
(define-public vim
|
||||
(package
|
||||
(name "vim")
|
||||
(version "9.0.1672")
|
||||
(version "9.0.2001")
|
||||
(source (origin
|
||||
(method git-fetch)
|
||||
(uri (git-reference
|
||||
@@ -90,7 +90,7 @@
|
||||
(file-name (git-file-name name version))
|
||||
(sha256
|
||||
(base32
|
||||
"1cl4a7rzks0ll0b8y0ffrbin622k0qww3l0nz9kb0mz2favw0b9q"))))
|
||||
"1y0xfvndnyfv677gn4mkq0jf5k15mm1dngl96l9j90sp4lbqrszx"))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
`(#:test-target "test"
|
||||
@@ -147,7 +147,11 @@
|
||||
(string-append line "return\n")))
|
||||
(substitute* "src/testdir/test_popupwin.vim"
|
||||
((".*Test_popup_drag_termwin.*" line)
|
||||
(string-append line "return\n")))))
|
||||
(string-append line "return\n")))
|
||||
(with-fluids ((%default-port-encoding #f))
|
||||
(substitute* "src/testdir/test_writefile.vim"
|
||||
((".*Test_write_with_xattr_support.*" line)
|
||||
(string-append line "return\n"))))))
|
||||
(add-before 'install 'fix-installman.sh
|
||||
(lambda _
|
||||
(substitute* "src/installman.sh"
|
||||
|
||||
@@ -4,6 +4,7 @@
|
||||
;;; Copyright © 2017, 2018 Tobias Geerinckx-Rice <me@tobias.gr>
|
||||
;;; Copyright © 2021 Efraim Flashner <efraim@flashner.co.il>
|
||||
;;; Copyright © 2022 Ivan Vilata i Balaguer <ivan@selidor.net>
|
||||
;;; Copyright © 2023 Bruno Victal <mirai@makinata.eu>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
@@ -22,20 +23,26 @@
|
||||
|
||||
(define-module (gnu packages xfig)
|
||||
#:use-module (guix packages)
|
||||
#:use-module ((guix licenses) #:select (bsd-2))
|
||||
#:use-module ((guix licenses) #:prefix license:)
|
||||
#:use-module (guix download)
|
||||
#:use-module (guix gexp)
|
||||
#:use-module (guix build-system gnu)
|
||||
#:use-module (gnu packages)
|
||||
#:use-module (gnu packages autotools)
|
||||
#:use-module (gnu packages freedesktop)
|
||||
#:use-module (gnu packages ghostscript)
|
||||
#:use-module (gnu packages xorg)
|
||||
#:use-module (gnu packages pkg-config)
|
||||
#:use-module (gnu packages image)
|
||||
#:use-module (gnu packages ghostscript)
|
||||
#:use-module (gnu packages imagemagick)
|
||||
#:use-module (gnu packages netpbm)
|
||||
#:use-module (gnu packages compression))
|
||||
|
||||
(define-public xfig
|
||||
(define-public fig2dev
|
||||
(package
|
||||
(name "xfig")
|
||||
(version "3.2.8b")
|
||||
(name "fig2dev")
|
||||
(version "3.2.9")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
@@ -43,27 +50,114 @@
|
||||
name "-" version ".tar.xz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0fndgbm1mkqb1sn2v2kj3nx9mxj70jbp31y2bjvzcmmkry0q3k5j"))))
|
||||
"1cch429zbmrg2zy1mkx9xwnpvkjhmlw40c88bvi2virws744dqhm"))))
|
||||
(build-system gnu-build-system)
|
||||
(native-inputs
|
||||
;; For tests.
|
||||
(list desktop-file-utils ghostscript))
|
||||
(inputs
|
||||
`(("libxaw3d" ,libxaw3d)
|
||||
("libjpeg" ,libjpeg-turbo)
|
||||
("libpng" ,libpng)
|
||||
("libxpm" ,libxpm)
|
||||
("libx11" ,libx11)
|
||||
("libxt" ,libxt)))
|
||||
(arguments
|
||||
`(#:phases
|
||||
(modify-phases %standard-phases
|
||||
(add-before 'install 'strip-bogus-exec-prefix
|
||||
(lambda* (#:key outputs #:allow-other-keys)
|
||||
(substitute* "xfig.desktop"
|
||||
;; The patch-dot-desktop-files phase requires a relative name.
|
||||
(("Exec=/usr/bin/xfig") "Exec=xfig"))
|
||||
#t)))))
|
||||
(list
|
||||
#:modules '((guix build gnu-build-system)
|
||||
(guix build utils)
|
||||
(srfi srfi-26))
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(add-after 'install 'wrap-program
|
||||
(lambda* (#:key inputs #:allow-other-keys)
|
||||
(let ((programs
|
||||
(find-files (string-append #$output "/bin")))
|
||||
(path
|
||||
(search-path-as-list
|
||||
'("bin")
|
||||
(map (cut assoc-ref inputs <>)
|
||||
(list "ghostscript" "imagemagick")))))
|
||||
(for-each (lambda (program)
|
||||
(wrap-program program
|
||||
`("PATH" ":" prefix ,path)))
|
||||
programs)))))))
|
||||
(inputs
|
||||
(list libpng zlib
|
||||
;; Quoth INSTALL:
|
||||
;; “To run fig2dev, the packages
|
||||
;; ghostscript, and one out of
|
||||
;; netpbm | ImageMagick | GraphicsMagick
|
||||
;; are needed to produce various bitmap output formats, or process
|
||||
;; fig files with embedded images.”
|
||||
ghostscript
|
||||
imagemagick))
|
||||
(native-inputs
|
||||
;; XXX: Tests fail if netpbm is absent.
|
||||
(list netpbm))
|
||||
(home-page "https://sourceforge.net/projects/mcj")
|
||||
(synopsis "Translate Fig to other graphic description formats")
|
||||
(description "Fig2dev is a set of tools for creating TeX documents with
|
||||
graphics which are portable, in the sense that they can be printed in a wide
|
||||
variety of environments.")
|
||||
(license
|
||||
(license:non-copyleft "file://Makefile.am"
|
||||
"See <https://spdx.org/licenses/Xfig.html>."))))
|
||||
|
||||
(define-public transfig
|
||||
(deprecated-package "transfig" fig2dev))
|
||||
|
||||
(define-public xfig
|
||||
(package
|
||||
(name "xfig")
|
||||
(version "3.2.9")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "mirror://sourceforge/mcj/"
|
||||
name "-" version ".tar.xz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1xy2zqbd1wn2fij95kgnj39850r7xk74kvx7kp0dxhmvs429vv8k"))
|
||||
;; TODO: Remove these patches and snippet when updating,
|
||||
;; upstreamed since commit `84375ac05e923b46bbacc8b336b0dfbe29497b6b'.
|
||||
(patches
|
||||
(search-patches "xfig-Enable-error-message-for-missing-libraries.patch"
|
||||
"xfig-Use-pkg-config-to-set-fontconfig-CFLAGS-and-LIBS.patch"
|
||||
"xfig-Fix-double-free-when-requesting-MediaBox.patch"))
|
||||
(modules '((guix build utils)))
|
||||
(snippet
|
||||
;; The patch-dot-desktop-files phase requires a relative name.
|
||||
#~(begin
|
||||
(substitute* "xfig.desktop"
|
||||
(("^(Exec=)/usr/bin/" _ key) key))
|
||||
;; This forces autoreconf to be invoked, needed for patches
|
||||
;; to be effective.
|
||||
(delete-file "configure")))))
|
||||
(build-system gnu-build-system)
|
||||
(arguments
|
||||
(list
|
||||
#:modules '((guix build gnu-build-system)
|
||||
(guix build utils)
|
||||
(srfi srfi-26))
|
||||
#:phases
|
||||
#~(modify-phases %standard-phases
|
||||
(add-after 'install 'wrap-program
|
||||
(lambda* (#:key inputs #:allow-other-keys)
|
||||
(let ((path
|
||||
(search-path-as-list
|
||||
'("bin")
|
||||
(map (cut assoc-ref inputs <>)
|
||||
(list "ghostscript" "fig2dev")))))
|
||||
(wrap-program (string-append #$output "/bin/xfig")
|
||||
`("PATH" ":" prefix ,path))))))))
|
||||
(native-inputs
|
||||
(list pkg-config
|
||||
;; TODO: Remove the import on (gnu packages autotools)
|
||||
;; and related packages in the next update.
|
||||
autoconf automake libtool
|
||||
;; For tests.
|
||||
desktop-file-utils))
|
||||
(inputs
|
||||
(list ghostscript
|
||||
fig2dev
|
||||
libxaw3d
|
||||
libjpeg-turbo
|
||||
libpng
|
||||
libxpm
|
||||
libx11
|
||||
libxft
|
||||
libxt))
|
||||
(home-page "https://mcj.sourceforge.net/")
|
||||
(synopsis "Interactive drawing tool")
|
||||
(description
|
||||
@@ -73,85 +167,6 @@ spline curves, text, etc. It is also possible to import images in formats
|
||||
such as GIF, JPEG, EPSF (PostScript), etc. Those objects can be created,
|
||||
deleted, moved or modified. Attributes such as colors or line styles can be
|
||||
selected in various ways. For text, 35 fonts are available.")
|
||||
(license bsd-2)))
|
||||
|
||||
(define-public transfig
|
||||
(package
|
||||
(name "transfig")
|
||||
(version "3.2.5e")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append "mirror://sourceforge/mcj/mcj-source/transfig."
|
||||
version ".tar.gz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0i3p7qmg2w8qrad3pn42b0miwarql7yy0gpd49b1bpal6bqsiicf"))
|
||||
(patches
|
||||
(search-patches
|
||||
"transfig-gcc10-fno-common.patch")))) ; fix GCC10 build
|
||||
(build-system gnu-build-system)
|
||||
(native-inputs
|
||||
(list imake makedepend))
|
||||
(inputs
|
||||
`(("xfig" ,xfig)
|
||||
("libjpeg" ,libjpeg-turbo)
|
||||
("libpng" ,libpng)
|
||||
("libxpm" ,libxpm)
|
||||
("libx11" ,libx11)
|
||||
("zlib" ,zlib)))
|
||||
(arguments
|
||||
`(#:tests? #f
|
||||
#:phases
|
||||
(modify-phases %standard-phases
|
||||
(replace 'configure
|
||||
(lambda* (#:key inputs outputs #:allow-other-keys)
|
||||
(let ((imake (assoc-ref inputs "imake"))
|
||||
(out (assoc-ref outputs "out")))
|
||||
(substitute* '("fig2dev/Imakefile"
|
||||
"transfig/Imakefile")
|
||||
(("XCOMM (BINDIR = )[[:graph:]]*" _ front)
|
||||
(string-append front out "/bin"))
|
||||
(("XCOMM USEINLINE") "USEINLINE")
|
||||
;; The variable name is deceptive. The directory is used as an
|
||||
;; installation path for bitmaps.
|
||||
(("(XFIGLIBDIR =[[:blank:]]*)[[:graph:]]*" _ front)
|
||||
(string-append front out "/lib"))
|
||||
(("(XPMLIBDIR = )[[:graph:]]*" _ front)
|
||||
(string-append front (assoc-ref inputs "libxpm") "/lib"))
|
||||
(("(XPMINC = -I)[[:graph:]]*" _ front)
|
||||
(string-append front (assoc-ref inputs "libxpm") "/include/X11"))
|
||||
(("/usr/local/lib/fig2dev") (string-append out "/lib")))
|
||||
;; The -a argument is required in order to pick up the correct paths
|
||||
;; to several X header files.
|
||||
(invoke "xmkmf" "-a")
|
||||
(substitute* '("Makefile"
|
||||
"fig2dev/Makefile"
|
||||
"fig2dev/dev/Makefile"
|
||||
"transfig/Makefile")
|
||||
;; These imake variables somehow remain undefined
|
||||
(("DefaultGcc2[[:graph:]]*Opt") "-O2")
|
||||
;; Reset a few variable defaults that are set in imake templates
|
||||
((imake) out)
|
||||
(("(MANPATH = )[[:graph:]]*" _ front)
|
||||
(string-append front out "/share/man"))
|
||||
(("(CONFDIR = )([[:graph:]]*)" _ front default)
|
||||
(string-append front out default))
|
||||
;; The "l" option was silently ignored until binutils 2.36,
|
||||
;; where it got a different purpose. So remove it to avoid
|
||||
;; "ar: libdeps specified more than once".
|
||||
(("((AR|MODAR) = ar )clq" _ front)
|
||||
(string-append front "cq")))
|
||||
#t)))
|
||||
(add-after 'install 'install/doc
|
||||
(lambda _
|
||||
(invoke "make" "install.man"))))))
|
||||
(home-page "https://mcj.sourceforge.net/")
|
||||
(synopsis "Create portable LaTeX figures")
|
||||
(description
|
||||
"Transfig creates a makefile to translate figures described in Fig code
|
||||
or PIC into a specified LaTeX graphics language. PIC files are identified by
|
||||
the suffix \".pic\"; Fig files can be specified either with or without the
|
||||
suffix \".fig\". Transfig also creates a TeX macro file appropriate to the
|
||||
target language.")
|
||||
(license bsd-2)))
|
||||
(license
|
||||
(license:non-copyleft "file://Makefile.am"
|
||||
"See <https://spdx.org/licenses/Xfig.html>."))))
|
||||
|
||||
@@ -36,6 +36,7 @@
|
||||
;;; Copyright © 2021 Lu Hui <luhux76@gmail.com>
|
||||
;;; Copyright © 2023 Zheng Junjie <873216071@qq.com>
|
||||
;;; Copyright © 2023 Janneke Nieuwenhuizen <janneke@gnu.org>
|
||||
;;; Copyright © 2023 John Kehayias <john.kehayias@protonmail.com>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
;;;
|
||||
@@ -1432,6 +1433,7 @@ treat it as part of their software base when porting.")
|
||||
(package
|
||||
(name "libxpm")
|
||||
(version "3.5.13")
|
||||
(replacement libxpm/fixed)
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
@@ -1455,6 +1457,21 @@ treat it as part of their software base when porting.")
|
||||
(description "XPM (X Pixmap) image file format library.")
|
||||
(license license:x11)))
|
||||
|
||||
(define-public libxpm/fixed
|
||||
(package
|
||||
(inherit libxpm)
|
||||
(version "3.5.17")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
(uri (string-append
|
||||
"mirror://xorg/individual/lib/libXpm-"
|
||||
version
|
||||
".tar.xz"))
|
||||
(sha256
|
||||
(base32
|
||||
"0hvf49qy55gwldpwpw7ihcmn5i2iinpjh2rbha63hzcy060izcv4"))))))
|
||||
|
||||
(define-public libxres
|
||||
(package
|
||||
(name "libxres")
|
||||
@@ -5341,7 +5358,7 @@ Wayland.")
|
||||
(define-public libx11-fixed
|
||||
(package
|
||||
(inherit libx11)
|
||||
(version "1.8.6")
|
||||
(version "1.8.7")
|
||||
(source
|
||||
(origin
|
||||
(method url-fetch)
|
||||
@@ -5349,7 +5366,7 @@ Wayland.")
|
||||
version ".tar.xz"))
|
||||
(sha256
|
||||
(base32
|
||||
"1jawl8zp1h7hdmxx1sc6kmxkki187d9yixr2l03ai6wqqry5nlsr"))))))
|
||||
"1vlrgrdibp4lr84wgmsdy1ihzaai8bvvqc68npi1m19wir36gwh5"))))))
|
||||
|
||||
;; packages of height 5 in the propagated-inputs tree
|
||||
|
||||
|
||||
@@ -138,9 +138,6 @@
|
||||
str)
|
||||
#\-) "_")))
|
||||
|
||||
(define list-of-symbol?
|
||||
(list-of symbol?))
|
||||
|
||||
;; Helpers for deprecated field types, to be removed later.
|
||||
(define %lazy-group (make-symbol "%lazy-group"))
|
||||
|
||||
@@ -428,7 +425,7 @@ to be appended to the audio output configuration.")
|
||||
(sanitizer mpd-group-sanitizer))
|
||||
|
||||
(shepherd-requirement
|
||||
(list-of-symbol '())
|
||||
(list-of-symbols '())
|
||||
"This is a list of symbols naming Shepherd services that this service
|
||||
will depend on."
|
||||
empty-serializer)
|
||||
@@ -763,7 +760,7 @@ user-group instead~%"))
|
||||
empty-serializer)
|
||||
|
||||
(shepherd-requirement
|
||||
(list-of-symbol '())
|
||||
(list-of-symbols '())
|
||||
"This is a list of symbols naming Shepherd services that this service
|
||||
will depend on."
|
||||
empty-serializer)
|
||||
|
||||
@@ -62,8 +62,9 @@
|
||||
util-linux xfsprogs))
|
||||
#:use-module (gnu packages bash)
|
||||
#:use-module ((gnu packages base)
|
||||
#:select (coreutils glibc glibc-utf8-locales tar
|
||||
canonical-package))
|
||||
#:select (coreutils glibc glibc/hurd
|
||||
glibc-utf8-locales make-glibc-utf8-locales
|
||||
tar canonical-package))
|
||||
#:use-module ((gnu packages compression) #:select (gzip))
|
||||
#:use-module (gnu packages fonts)
|
||||
#:autoload (gnu packages guile-xyz) (guile-netlink)
|
||||
@@ -87,6 +88,7 @@
|
||||
#:use-module ((guix self) #:select (make-config.scm))
|
||||
#:use-module (guix diagnostics)
|
||||
#:use-module (guix i18n)
|
||||
#:autoload (guix utils) (target-hurd?)
|
||||
#:use-module (srfi srfi-1)
|
||||
#:use-module (srfi srfi-26)
|
||||
#:use-module (srfi srfi-34)
|
||||
@@ -1741,6 +1743,31 @@ archive' public keys, with GUIX."
|
||||
(list (file-append guix "/share/guix/berlin.guix.gnu.org.pub")
|
||||
(file-append guix "/share/guix/bordeaux.guix.gnu.org.pub")))
|
||||
|
||||
(define (guix-machines-files-installation machines)
|
||||
"Return a gexp to install MACHINES, a list of gexps, as
|
||||
/etc/guix/machines.scm, which is used for offloading."
|
||||
(with-imported-modules '((guix build utils))
|
||||
#~(begin
|
||||
(use-modules (guix build utils))
|
||||
|
||||
(define machines-file
|
||||
"/etc/guix/machines.scm")
|
||||
|
||||
;; If MACHINES-FILE already exists, move it out of the way.
|
||||
;; Create a backup if it's a regular file: it's likely that the
|
||||
;; user manually updated it.
|
||||
(if (file-exists? machines-file)
|
||||
(if (and (symbolic-link? machines-file)
|
||||
(store-file-name? (readlink machines-file)))
|
||||
(delete-file machines-file)
|
||||
(rename-file machines-file
|
||||
(string-append machines-file ".bak")))
|
||||
(mkdir-p (dirname machines-file)))
|
||||
|
||||
;; Installed the declared machines file.
|
||||
(symlink #+(scheme-file "machines.scm" machines)
|
||||
machines-file))))
|
||||
|
||||
(define-record-type* <guix-configuration>
|
||||
guix-configuration make-guix-configuration
|
||||
guix-configuration?
|
||||
@@ -1778,6 +1805,8 @@ archive' public keys, with GUIX."
|
||||
(default #f))
|
||||
(tmpdir guix-tmpdir ;string | #f
|
||||
(default #f))
|
||||
(build-machines guix-build-machines ;list of gexps | #f
|
||||
(default #f))
|
||||
(environment guix-configuration-environment ;list of strings
|
||||
(default '())))
|
||||
|
||||
@@ -1831,6 +1860,12 @@ proxy of 'guix-daemon'...~%")
|
||||
|
||||
(define (guix-shepherd-service config)
|
||||
"Return a <shepherd-service> for the Guix daemon service with CONFIG."
|
||||
(define locales
|
||||
(let-system (system target)
|
||||
(if (target-hurd? (or target system))
|
||||
(make-glibc-utf8-locales glibc/hurd)
|
||||
glibc-utf8-locales)))
|
||||
|
||||
(match-record config <guix-configuration>
|
||||
(guix build-group build-accounts authorize-key? authorized-keys
|
||||
use-substitutes? substitute-urls max-silent-time timeout
|
||||
@@ -1912,8 +1947,7 @@ proxy of 'guix-daemon'...~%")
|
||||
;; 'nss-certs'. See
|
||||
;; <https://bugs.gnu.org/32942>.
|
||||
(string-append "GUIX_LOCPATH="
|
||||
#$glibc-utf8-locales
|
||||
"/lib/locale")
|
||||
#$locales "/lib/locale")
|
||||
"LC_ALL=en_US.utf8"
|
||||
;; Make 'tar' and 'gzip' available so
|
||||
;; that 'guix perform-download' can use
|
||||
@@ -1958,8 +1992,15 @@ proxy of 'guix-daemon'...~%")
|
||||
(system* #$(file-append guix "/bin/guix") "archive"
|
||||
"--generate-key"))
|
||||
|
||||
;; Optionally install /etc/guix/acl...
|
||||
#$(if authorize-key?
|
||||
(substitute-key-authorization authorized-keys guix)
|
||||
#~#f)
|
||||
|
||||
;; ... and /etc/guix/machines.scm.
|
||||
#$(if (guix-build-machines config)
|
||||
(guix-machines-files-installation
|
||||
#~(list #$@(guix-build-machines config)))
|
||||
#~#f))))
|
||||
|
||||
(define-record-type* <guix-extension>
|
||||
@@ -1969,6 +2010,8 @@ proxy of 'guix-daemon'...~%")
|
||||
(default '()))
|
||||
(substitute-urls guix-extension-substitute-urls ;list of strings
|
||||
(default '()))
|
||||
(build-machines guix-extension-build-machines ;list of gexps
|
||||
(default '()))
|
||||
(chroot-directories guix-extension-chroot-directories ;list of file-like/strings
|
||||
(default '())))
|
||||
|
||||
@@ -1978,6 +2021,8 @@ proxy of 'guix-daemon'...~%")
|
||||
(guix-extension-authorized-keys b)))
|
||||
(substitute-urls (append (guix-extension-substitute-urls a)
|
||||
(guix-extension-substitute-urls b)))
|
||||
(build-machines (append (guix-extension-build-machines a)
|
||||
(guix-extension-build-machines b)))
|
||||
(chroot-directories (append (guix-extension-chroot-directories a)
|
||||
(guix-extension-chroot-directories b)))))
|
||||
|
||||
@@ -2001,6 +2046,11 @@ proxy of 'guix-daemon'...~%")
|
||||
(guix-configuration-authorized-keys config)))
|
||||
(substitute-urls (append (guix-extension-substitute-urls extension)
|
||||
(guix-configuration-substitute-urls config)))
|
||||
(build-machines
|
||||
(and (or (guix-build-machines config)
|
||||
(pair? (guix-extension-build-machines extension)))
|
||||
(append (or (guix-build-machines config) '())
|
||||
(guix-extension-build-machines extension))))
|
||||
(chroot-directories
|
||||
(append (guix-extension-chroot-directories extension)
|
||||
(guix-configuration-chroot-directories config))))))
|
||||
|
||||
@@ -42,6 +42,7 @@
|
||||
#:use-module (srfi srfi-26)
|
||||
#:use-module (srfi srfi-34)
|
||||
#:use-module (srfi srfi-35)
|
||||
#:use-module (srfi srfi-171)
|
||||
#:export (configuration-field
|
||||
configuration-field-name
|
||||
configuration-field-type
|
||||
@@ -59,6 +60,10 @@
|
||||
define-configuration/no-serialization
|
||||
no-serialization
|
||||
|
||||
empty-serializer?
|
||||
tfilter-maybe-value
|
||||
base-transducer
|
||||
|
||||
serialize-configuration
|
||||
define-maybe
|
||||
define-maybe/no-serialization
|
||||
@@ -75,7 +80,9 @@
|
||||
interpose
|
||||
list-of
|
||||
|
||||
list-of-packages?
|
||||
list-of-strings?
|
||||
list-of-symbols?
|
||||
alist?
|
||||
serialize-file-like
|
||||
text-config?
|
||||
@@ -125,13 +132,36 @@ does not have a default value" field kind)))
|
||||
(default-value-thunk configuration-field-default-value-thunk)
|
||||
(documentation configuration-field-documentation))
|
||||
|
||||
(define (empty-serializer? field)
|
||||
"Predicate that checks whether FIELD is exempt from serialization."
|
||||
(eq? empty-serializer
|
||||
(configuration-field-serializer field)))
|
||||
|
||||
(define (tfilter-maybe-value config)
|
||||
"Return a transducer for CONFIG that removes all maybe-type fields whose
|
||||
value is '%unset-marker."
|
||||
(tfilter (lambda (field)
|
||||
(let ((field-value ((configuration-field-getter field) config)))
|
||||
(maybe-value-set? field-value)))))
|
||||
|
||||
(define (base-transducer config)
|
||||
"Return a transducer for CONFIG that calls the serializing procedures only
|
||||
for fields marked for serialization and whose values are not '%unset-marker."
|
||||
(compose (tremove empty-serializer?)
|
||||
;; Only serialize fields whose value isn't '%unset-marker%.
|
||||
(tfilter-maybe-value config)
|
||||
(tmap (lambda (field)
|
||||
((configuration-field-serializer field)
|
||||
(configuration-field-name field)
|
||||
((configuration-field-getter field) config))))))
|
||||
|
||||
(define (serialize-configuration config fields)
|
||||
"Return a G-expression that contains the values corresponding to the
|
||||
FIELDS of CONFIG, a record that has been generated by `define-configuration'.
|
||||
The G-expression can then be serialized to disk by using something like
|
||||
`mixed-text-file'."
|
||||
#~(string-append
|
||||
#$@(map (lambda (field)
|
||||
((configuration-field-serializer field)
|
||||
(configuration-field-name field)
|
||||
((configuration-field-getter field) config)))
|
||||
fields)))
|
||||
#$@(list-transduce (base-transducer config) rcons fields)))
|
||||
|
||||
(define-syntax-rule (id ctx parts ...)
|
||||
"Assemble PARTS into a raw (unhygienic) identifier."
|
||||
@@ -190,32 +220,32 @@ does not have a default value" field kind)))
|
||||
(define (normalize-extra-args s)
|
||||
"Extract and normalize arguments following @var{doc}."
|
||||
(let loop ((s s)
|
||||
(sanitizer* %unset-value)
|
||||
(serializer* %unset-value))
|
||||
(sanitizer* #f)
|
||||
(serializer* #f))
|
||||
(syntax-case s (sanitizer serializer empty-serializer)
|
||||
(((sanitizer proc) tail ...)
|
||||
(if (maybe-value-set? sanitizer*)
|
||||
(syntax-violation 'sanitizer "duplicate entry"
|
||||
#'proc)
|
||||
(if sanitizer*
|
||||
(syntax-violation 'sanitizer
|
||||
"duplicate entry" #'proc)
|
||||
(loop #'(tail ...) #'proc serializer*)))
|
||||
(((serializer proc) tail ...)
|
||||
(if (maybe-value-set? serializer*)
|
||||
(syntax-violation 'serializer "duplicate or conflicting entry"
|
||||
#'proc)
|
||||
(if serializer*
|
||||
(syntax-violation 'serializer
|
||||
"duplicate or conflicting entry" #'proc)
|
||||
(loop #'(tail ...) sanitizer* #'proc)))
|
||||
((empty-serializer tail ...)
|
||||
(if (maybe-value-set? serializer*)
|
||||
(if serializer*
|
||||
(syntax-violation 'empty-serializer
|
||||
"duplicate or conflicting entry" #f)
|
||||
(loop #'(tail ...) sanitizer* #'empty-serializer)))
|
||||
(() ; stop condition
|
||||
(values (list sanitizer* serializer*)))
|
||||
((proc) ; TODO: deprecated, to be removed.
|
||||
(null? (filter-map maybe-value-set? (list sanitizer* serializer*)))
|
||||
(not (or sanitizer* serializer*))
|
||||
(begin
|
||||
(warning #f (G_ "specifying serializers after documentation is \
|
||||
deprecated, use (serializer ~a) instead~%") (syntax->datum #'proc))
|
||||
(values (list %unset-value #'proc)))))))
|
||||
(values (list #f #'proc)))))))
|
||||
|
||||
(syntax-case syn ()
|
||||
((_ stem (field field-type+def doc extra-args ...) ...)
|
||||
@@ -239,11 +269,11 @@ deprecated, use (serializer ~a) instead~%") (syntax->datum #'proc))
|
||||
default-value))
|
||||
#'((field-type def) ...)))
|
||||
((field-sanitizer ...)
|
||||
(map maybe-value #'(sanitizer* ...)))
|
||||
#'(sanitizer* ...))
|
||||
((field-serializer ...)
|
||||
(map (lambda (type proc)
|
||||
(and serialize?
|
||||
(or (maybe-value proc)
|
||||
(or proc
|
||||
(if serializer-prefix
|
||||
(id #'stem serializer-prefix #'serialize- type)
|
||||
(id #'stem #'serialize- type)))))
|
||||
@@ -472,6 +502,11 @@ DELIMITER interposed LS. Support 'infix and 'suffix GRAMMAR values."
|
||||
(cons delimiter acc))))
|
||||
'() ls))
|
||||
|
||||
|
||||
;;;
|
||||
;;; Commonly used predicates
|
||||
;;;
|
||||
|
||||
(define (list-of pred?)
|
||||
"Return a procedure that takes a list and check if all the elements of
|
||||
the list result in @code{#t} when applying PRED? on them."
|
||||
@@ -480,10 +515,20 @@ the list result in @code{#t} when applying PRED? on them."
|
||||
(every pred? x)
|
||||
#f)))
|
||||
|
||||
(define list-of-packages?
|
||||
(list-of package?))
|
||||
|
||||
(define list-of-strings?
|
||||
(list-of string?))
|
||||
|
||||
(define list-of-symbols?
|
||||
(list-of symbol?))
|
||||
|
||||
|
||||
;;;
|
||||
;;; Special serializers
|
||||
;;;
|
||||
|
||||
(define alist?
|
||||
(list-of pair?))
|
||||
|
||||
|
||||
@@ -1,6 +1,6 @@
|
||||
;;; GNU Guix --- Functional package management for GNU
|
||||
;;; Copyright © 2016 Mathieu Lirzin <mthl@gnu.org>
|
||||
;;; Copyright © 2016-2022 Ludovic Courtès <ludo@gnu.org>
|
||||
;;; Copyright © 2016-2023 Ludovic Courtès <ludo@gnu.org>
|
||||
;;; Copyright © 2017, 2020 Mathieu Othacehe <m.othacehe@gmail.com>
|
||||
;;; Copyright © 2017 Jan Nieuwenhuizen <janneke@gnu.org>
|
||||
;;; Copyright © 2018, 2019 Ricardo Wurmus <rekado@elephly.net>
|
||||
@@ -274,6 +274,9 @@
|
||||
(cuirass-remote-server-configuration-cache
|
||||
remote-server)))
|
||||
(user (cuirass-configuration-user config))
|
||||
;; RUNSTATEDIR contains the "bridge" Unix-domain socket that 'cuirass
|
||||
;; web' connects to to communicate with 'cuirass register'.
|
||||
(runstatedir "/var/run/cuirass")
|
||||
(log "/var/log/cuirass")
|
||||
(profile (string-append "/var/guix/profiles/per-user/" user))
|
||||
(roots (string-append profile "/cuirass"))
|
||||
@@ -285,6 +288,7 @@
|
||||
(mkdir-p #$cache)
|
||||
(mkdir-p #$log)
|
||||
(mkdir-p #$roots)
|
||||
(mkdir-p #$runstatedir)
|
||||
|
||||
(when #$remote-cache
|
||||
(mkdir-p #$remote-cache))
|
||||
@@ -295,6 +299,8 @@
|
||||
(chown #$log uid gid)
|
||||
(chown #$roots uid gid)
|
||||
(chown #$profile uid gid)
|
||||
(chown #$runstatedir uid gid)
|
||||
(chmod #$runstatedir #o700)
|
||||
|
||||
(when #$remote-cache
|
||||
(chown #$remote-cache uid gid)))))))
|
||||
|
||||
@@ -41,6 +41,7 @@
|
||||
#:use-module (srfi srfi-26)
|
||||
#:use-module (srfi srfi-34)
|
||||
#:use-module (srfi srfi-35)
|
||||
#:use-module (srfi srfi-171)
|
||||
#:use-module (ice-9 format)
|
||||
#:use-module (ice-9 match)
|
||||
#:export (earlyoom-configuration
|
||||
@@ -252,13 +253,9 @@ more information)."
|
||||
(prefix fstrim-))
|
||||
|
||||
(define (serialize-fstrim-configuration config)
|
||||
(concatenate
|
||||
(filter list?
|
||||
(map (lambda (field)
|
||||
((configuration-field-serializer field)
|
||||
(configuration-field-name field)
|
||||
((configuration-field-getter field) config)))
|
||||
fstrim-configuration-fields))))
|
||||
(list-transduce (compose (base-transducer config) tconcatenate)
|
||||
rcons
|
||||
fstrim-configuration-fields))
|
||||
|
||||
(define (fstrim-mcron-job config)
|
||||
(match-record config <fstrim-configuration> (package schedule)
|
||||
|
||||
@@ -165,7 +165,7 @@ files."
|
||||
(ice-9 popen) ;for the 'schedule' action
|
||||
(ice-9 rdelim)
|
||||
(ice-9 match)
|
||||
((shepherd support) #:select (%user-log-dir))
|
||||
((shepherd support) #:hide (mkdir-p)) ;for '%user-log-dir'
|
||||
,@%default-modules))
|
||||
(start #~(make-forkexec-constructor
|
||||
(list #$(file-append mcron "/bin/mcron")
|
||||
|
||||
@@ -37,6 +37,7 @@
|
||||
#:use-module (srfi srfi-1)
|
||||
#:use-module (srfi srfi-2)
|
||||
#:use-module (srfi srfi-26)
|
||||
#:use-module (srfi srfi-171)
|
||||
#:use-module (ice-9 format)
|
||||
#:use-module (ice-9 match)
|
||||
#:export (jami-account
|
||||
@@ -116,15 +117,10 @@
|
||||
(or (string? val)
|
||||
(computed-file? val)))
|
||||
|
||||
(define (string-list? val)
|
||||
(and (list? val)
|
||||
(and-map string? val)))
|
||||
(define account-fingerprint-list?
|
||||
(list-of account-fingerprint?))
|
||||
|
||||
(define (account-fingerprint-list? val)
|
||||
(and (list? val)
|
||||
(and-map account-fingerprint? val)))
|
||||
|
||||
(define-maybe string-list)
|
||||
(define-maybe list-of-strings)
|
||||
|
||||
(define-maybe/no-serialization account-fingerprint-list)
|
||||
|
||||
@@ -134,7 +130,7 @@
|
||||
|
||||
;;; The following serializers are used to derive an account details alist from
|
||||
;;; a <jami-account> record.
|
||||
(define (serialize-string-list _ val)
|
||||
(define (serialize-list-of-strings _ val)
|
||||
(string-join val ";"))
|
||||
|
||||
(define (serialize-boolean _ val)
|
||||
@@ -187,7 +183,7 @@ maintain communication between devices on such network even when the
|
||||
connection to the the Internet has been lost. When left unspecified, the
|
||||
value from the account archive prevails.")
|
||||
(bootstrap-hostnames
|
||||
maybe-string-list
|
||||
maybe-list-of-strings
|
||||
"A list of hostnames or IPs pointing to OpenDHT nodes, that should be used
|
||||
to initially join the OpenDHT network. When left unspecified, the value from
|
||||
the account archive prevails.")
|
||||
@@ -204,26 +200,23 @@ SET-ACCOUNT-DETAILS."
|
||||
('rendezvous-point? "Account.rendezVous")
|
||||
('peer-discovery? "Account.peerDiscovery")
|
||||
('bootstrap-hostnames "Account.hostname")
|
||||
('name-server-uri "RingNS.uri")
|
||||
(_ #f)))
|
||||
('name-server-uri "RingNS.uri")))
|
||||
|
||||
(filter-map (lambda (field)
|
||||
(and-let* ((name (field-name->account-detail
|
||||
(define jami-account-transducer
|
||||
(compose (tremove empty-serializer?)
|
||||
(tfilter-maybe-value jami-account-object)
|
||||
(tmap (lambda (field)
|
||||
(let* ((name (field-name->account-detail
|
||||
(configuration-field-name field)))
|
||||
(value ((configuration-field-serializer field)
|
||||
name ((configuration-field-getter field)
|
||||
jami-account-object)))
|
||||
;; The define-maybe default serializer produces an
|
||||
;; empty string for unspecified values.
|
||||
(value* (if (string-null? value)
|
||||
#f
|
||||
value)))
|
||||
(cons name value*)))
|
||||
jami-account-fields))
|
||||
(value ((configuration-field-serializer field)
|
||||
name ((configuration-field-getter field)
|
||||
jami-account-object))))
|
||||
(cons name value))))))
|
||||
|
||||
(define (jami-account-list? val)
|
||||
(and (list? val)
|
||||
(and-map jami-account? val)))
|
||||
(list-transduce jami-account-transducer rcons jami-account-fields))
|
||||
|
||||
(define jami-account-list?
|
||||
(list-of jami-account?))
|
||||
|
||||
(define-maybe/no-serialization jami-account-list)
|
||||
|
||||
|
||||
@@ -27,7 +27,9 @@
|
||||
#:use-module (gnu bootloader grub)
|
||||
#:use-module (gnu image)
|
||||
#:use-module (gnu packages admin)
|
||||
#:use-module (gnu packages bash)
|
||||
#:use-module (gnu packages gdb)
|
||||
#:autoload (gnu packages gnupg) (guile-gcrypt)
|
||||
#:use-module (gnu packages package-management)
|
||||
#:use-module (gnu packages ssh)
|
||||
#:use-module (gnu packages virtualization)
|
||||
@@ -50,6 +52,8 @@
|
||||
#:use-module (guix records)
|
||||
#:use-module (guix store)
|
||||
#:use-module (guix utils)
|
||||
#:autoload (guix self) (make-config.scm)
|
||||
#:autoload (guix platform) (platform-system)
|
||||
|
||||
#:use-module (srfi srfi-9)
|
||||
#:use-module (srfi srfi-26)
|
||||
@@ -1061,6 +1065,40 @@ that will be listening to receive secret keys on port 1004, TCP."
|
||||
;;; The Hurd in VM service: a Childhurd.
|
||||
;;;
|
||||
|
||||
(define (operating-system-with-offloading-account os)
|
||||
(define accounts
|
||||
(list (user-group
|
||||
(name "offloading")
|
||||
(system? #t))
|
||||
(user-account
|
||||
(name "offloading")
|
||||
(group "offloading")
|
||||
(system? #t)
|
||||
(comment "Offloading privilege separation user")
|
||||
(home-directory "/var/run/offloading")
|
||||
(shell (file-append bash-minimal "/bin/sh")))))
|
||||
|
||||
(operating-system
|
||||
(inherit os)
|
||||
(services (cons (simple-service 'offloading-account
|
||||
account-service-type
|
||||
accounts)
|
||||
(operating-system-user-services os)))))
|
||||
|
||||
(define (operating-system-with-locked-root-account os)
|
||||
"Return OS with a 'root' account whose password is uninitialized, thereby
|
||||
preventing password-based authentication as 'root'."
|
||||
(define root
|
||||
;; %ROOT-ACCOUNT has an empty password; change that to an uninitialized
|
||||
;; password.
|
||||
(user-account
|
||||
(inherit %root-account)
|
||||
(password #f)))
|
||||
|
||||
(operating-system
|
||||
(inherit os)
|
||||
(users (cons root (operating-system-users os)))))
|
||||
|
||||
(define %hurd-vm-operating-system
|
||||
(operating-system
|
||||
(inherit %hurd-default-operating-system)
|
||||
@@ -1078,8 +1116,7 @@ that will be listening to receive secret keys on port 1004, TCP."
|
||||
(openssh-configuration
|
||||
(openssh openssh-sans-x)
|
||||
(use-pam? #f)
|
||||
(port-number 2222)
|
||||
(permit-root-login #t)
|
||||
(permit-root-login 'prohibit-password)
|
||||
(allow-empty-passwords? #t)
|
||||
(password-authentication? #t)))
|
||||
|
||||
@@ -1100,7 +1137,7 @@ that will be listening to receive secret keys on port 1004, TCP."
|
||||
(default %hurd-vm-operating-system))
|
||||
(qemu hurd-vm-configuration-qemu ;file-like
|
||||
(default qemu-minimal))
|
||||
(image hurd-vm-configuration-image ;string
|
||||
(image hurd-vm-configuration-image ;<image>
|
||||
(thunked)
|
||||
(default (hurd-vm-disk-image this-record)))
|
||||
(disk-size hurd-vm-configuration-disk-size ;number or 'guess
|
||||
@@ -1114,20 +1151,32 @@ that will be listening to receive secret keys on port 1004, TCP."
|
||||
(net-options hurd-vm-configuration-net-options ;list of string
|
||||
(thunked)
|
||||
(default (hurd-vm-net-options this-record)))
|
||||
(offloading? hurd-vm-configuration-offloading? ;Boolean
|
||||
(default #t))
|
||||
(secret-root hurd-vm-configuration-secret-root ;string
|
||||
(default "/etc/childhurd")))
|
||||
|
||||
(define (hurd-vm-disk-image config)
|
||||
"Return a disk-image for the Hurd according to CONFIG. The secret-service
|
||||
is added to the OS specified in CONFIG."
|
||||
(let* ((os (secret-service-operating-system
|
||||
(hurd-vm-configuration-os config)))
|
||||
(define transform
|
||||
(compose secret-service-operating-system
|
||||
;; When offloading is enabled, (1) add the 'offloading' account,
|
||||
;; and (2) prevent users from logging in as 'root' without a
|
||||
;; password as this would allow any user on the host to populate
|
||||
;; the host's store indirectly (for example by logging in as root
|
||||
;; in the Hurd VM over VNC).
|
||||
(if (hurd-vm-configuration-offloading? config)
|
||||
(compose operating-system-with-locked-root-account
|
||||
operating-system-with-offloading-account)
|
||||
identity)))
|
||||
|
||||
(let* ((os (transform (hurd-vm-configuration-os config)))
|
||||
(disk-size (hurd-vm-configuration-disk-size config))
|
||||
(type (lookup-image-type-by-name 'hurd-qcow2))
|
||||
(os->image (image-type-constructor type)))
|
||||
(system-image
|
||||
(image (inherit (os->image os))
|
||||
(size disk-size)))))
|
||||
(image (inherit (os->image os))
|
||||
(size disk-size))))
|
||||
|
||||
(define (hurd-vm-port config base)
|
||||
"Return the forwarded vm port for this childhurd config."
|
||||
@@ -1146,7 +1195,7 @@ is added to the OS specified in CONFIG."
|
||||
"-:1004"
|
||||
",hostfwd=tcp:127.0.0.1:"
|
||||
(number->string (hurd-vm-port config %hurd-vm-ssh-port))
|
||||
"-:2222"
|
||||
"-:22"
|
||||
",hostfwd=tcp:127.0.0.1:"
|
||||
(number->string (hurd-vm-port config %hurd-vm-vnc-port))
|
||||
"-:5900")))
|
||||
@@ -1169,7 +1218,7 @@ is added to the OS specified in CONFIG."
|
||||
"-m" (number->string #$memory-size)
|
||||
#$@net-options
|
||||
#$@options
|
||||
"--hda" #+image
|
||||
"--hda" #+(system-image image)
|
||||
|
||||
;; Cause the service to be respawned if the guest
|
||||
;; reboots (it can reboot for instance if it did not
|
||||
@@ -1272,6 +1321,50 @@ is added to the OS specified in CONFIG."
|
||||
|
||||
(program-file "initialize-hurd-vm-substitutes" run))
|
||||
|
||||
(define (authorize-guest-substitutes-on-host)
|
||||
"Return a program that authorizes the guest's archive signing key (passed as
|
||||
an argument) on the host."
|
||||
(define not-config?
|
||||
(match-lambda
|
||||
('(guix config) #f)
|
||||
(('guix _ ...) #t)
|
||||
(('gnu _ ...) #t)
|
||||
(_ #f)))
|
||||
|
||||
(define run
|
||||
(with-extensions (list guile-gcrypt)
|
||||
(with-imported-modules `(((guix config) => ,(make-config.scm))
|
||||
,@(source-module-closure
|
||||
'((guix pki)
|
||||
(guix build utils))
|
||||
#:select? not-config?))
|
||||
#~(begin
|
||||
(use-modules (ice-9 match)
|
||||
(ice-9 textual-ports)
|
||||
(gcrypt pk-crypto)
|
||||
(guix pki)
|
||||
(guix build utils))
|
||||
|
||||
(match (command-line)
|
||||
((_ guest-config-directory)
|
||||
(let ((guest-key (string-append guest-config-directory
|
||||
"/signing-key.pub")))
|
||||
(if (file-exists? guest-key)
|
||||
;; Add guest key to the host's ACL.
|
||||
(let* ((key (string->canonical-sexp
|
||||
(call-with-input-file guest-key
|
||||
get-string-all)))
|
||||
(acl (public-keys->acl
|
||||
(cons key (acl->public-keys (current-acl))))))
|
||||
(with-atomic-file-replacement %acl-file
|
||||
(lambda (_ port)
|
||||
(write-acl acl port))))
|
||||
(format (current-error-port)
|
||||
"warning: guest key missing from '~a'~%"
|
||||
guest-key)))))))))
|
||||
|
||||
(program-file "authorize-guest-substitutes-on-host" run))
|
||||
|
||||
(define (hurd-vm-activation config)
|
||||
"Return a gexp to activate the Hurd VM according to CONFIG."
|
||||
(with-imported-modules '((guix build utils))
|
||||
@@ -1287,15 +1380,71 @@ is added to the OS specified in CONFIG."
|
||||
(define guix-directory
|
||||
(string-append secret-directory "/etc/guix"))
|
||||
|
||||
(define offloading-ssh-key
|
||||
#$(hurd-vm-configuration-offloading-ssh-key config))
|
||||
|
||||
(unless (file-exists? ssh-directory)
|
||||
;; Generate SSH host keys under SSH-DIRECTORY.
|
||||
(mkdir-p ssh-directory)
|
||||
(invoke #$(file-append openssh "/bin/ssh-keygen")
|
||||
"-A" "-f" secret-directory))
|
||||
|
||||
(unless (or (not #$(hurd-vm-configuration-offloading? config))
|
||||
(file-exists? offloading-ssh-key))
|
||||
;; Generate a user SSH key pair for the host to use when offloading
|
||||
;; to the guest.
|
||||
(mkdir-p (dirname offloading-ssh-key))
|
||||
(invoke #$(file-append openssh "/bin/ssh-keygen")
|
||||
"-t" "ed25519" "-N" ""
|
||||
"-f" offloading-ssh-key)
|
||||
|
||||
;; Authorize it in the guest for user 'offloading'.
|
||||
(let ((authorizations
|
||||
(string-append ssh-directory
|
||||
"/authorized_keys.d/offloading")))
|
||||
(mkdir-p (dirname authorizations))
|
||||
(copy-file (string-append offloading-ssh-key ".pub")
|
||||
authorizations)
|
||||
(chmod (dirname authorizations) #o555)))
|
||||
|
||||
(unless (file-exists? guix-directory)
|
||||
(invoke #$(initialize-hurd-vm-substitutes)
|
||||
guix-directory)))))
|
||||
guix-directory))
|
||||
|
||||
(when #$(hurd-vm-configuration-offloading? config)
|
||||
;; Authorize the archive signing key from GUIX-DIRECTORY in the host.
|
||||
(invoke #$(authorize-guest-substitutes-on-host) guix-directory)))))
|
||||
|
||||
(define (hurd-vm-configuration-offloading-ssh-key config)
|
||||
"Return the name of the file containing the SSH key of user 'offloading'."
|
||||
(string-append "/etc/guix/offload/ssh/childhurd"
|
||||
(or (and=> (hurd-vm-configuration-id config)
|
||||
number->string)
|
||||
"")))
|
||||
|
||||
(define (hurd-vm-guix-extension config)
|
||||
"When offloading is enabled, add this childhurd to the list of offlading
|
||||
machines in /etc/guix/machines.scm."
|
||||
(if (hurd-vm-configuration-offloading? config)
|
||||
(let* ((image (hurd-vm-configuration-image config))
|
||||
(platform (image-platform image))
|
||||
(system (platform-system platform))
|
||||
(vm-ssh-key (string-append
|
||||
(hurd-vm-configuration-secret-root config)
|
||||
"/etc/ssh/ssh_host_ed25519_key.pub"))
|
||||
(host-ssh-key (hurd-vm-configuration-offloading-ssh-key config)))
|
||||
(guix-extension
|
||||
(build-machines
|
||||
(list #~(build-machine
|
||||
(name "localhost")
|
||||
(port #$(hurd-vm-port config %hurd-vm-ssh-port))
|
||||
(systems '(#$system))
|
||||
(host-key (call-with-input-file #$vm-ssh-key
|
||||
(@ (ice-9 textual-ports)
|
||||
get-string-all)))
|
||||
(user "offloading")
|
||||
(private-key #$host-ssh-key))))))
|
||||
(guix-extension)))
|
||||
|
||||
(define hurd-vm-service-type
|
||||
(service-type
|
||||
@@ -1304,6 +1453,8 @@ is added to the OS specified in CONFIG."
|
||||
hurd-vm-shepherd-service)
|
||||
(service-extension account-service-type
|
||||
(const %hurd-vm-accounts))
|
||||
(service-extension guix-service-type
|
||||
hurd-vm-guix-extension)
|
||||
(service-extension activation-service-type
|
||||
hurd-vm-activation)))
|
||||
(default-value (hurd-vm-configuration))
|
||||
|
||||
@@ -19,8 +19,7 @@
|
||||
(define-module (gnu system accounts)
|
||||
#:use-module (guix records)
|
||||
#:use-module (ice-9 match)
|
||||
#:export (<user-account>
|
||||
user-account
|
||||
#:export (user-account
|
||||
user-account?
|
||||
user-account-name
|
||||
user-account-password
|
||||
|
||||
@@ -4,6 +4,9 @@
|
||||
|
||||
(use-modules (gnu))
|
||||
(use-service-modules networking ssh)
|
||||
;; If you want to use HTTPS, you most likely want to include
|
||||
;; "certs" in the line below. Also read the comment about
|
||||
;; "nss-certs" later in this file.
|
||||
(use-package-modules screen ssh)
|
||||
|
||||
(operating-system
|
||||
@@ -43,10 +46,12 @@
|
||||
%base-user-accounts))
|
||||
|
||||
;; Globally-installed packages.
|
||||
;; Add "nss-certs" for Mozilla's approved CA certs. You would
|
||||
;; have to have included "certs" in use-package-modules above.
|
||||
(packages (cons screen %base-packages))
|
||||
|
||||
;; Add services to the baseline: a DHCP client and
|
||||
;; an SSH server.
|
||||
;; Add services to the baseline: a DHCP client and an SSH
|
||||
;; server. You may wish to add an NTP service here.
|
||||
(services (append (list (service dhcp-client-service-type)
|
||||
(service openssh-service-type
|
||||
(openssh-configuration
|
||||
|
||||
@@ -246,7 +246,7 @@ set to the given OS."
|
||||
(name 'qcow2)
|
||||
(constructor (cut image-with-os
|
||||
(image
|
||||
(inherit mbr-disk-image)
|
||||
(inherit mbr-hybrid-disk-image)
|
||||
(name 'image.qcow2)
|
||||
(format 'compressed-qcow2))
|
||||
<>))))
|
||||
|
||||
@@ -144,7 +144,8 @@ fi
|
||||
|
||||
alias ls='ls -p --color=auto'
|
||||
alias ll='ls -l'
|
||||
alias grep='grep --color=auto'\n"))
|
||||
alias grep='grep --color=auto'
|
||||
alias ip='ip -color=auto'\n"))
|
||||
|
||||
(define (default-skeletons)
|
||||
"Return the default skeleton files for /etc/skel. These files are copied by
|
||||
|
||||
@@ -87,41 +87,6 @@
|
||||
;; conservative default.
|
||||
(define %default-msize-value (* 100 (expt 2 20))) ;100 MiB
|
||||
|
||||
(define %linux-vm-file-systems
|
||||
;; File systems mounted for 'derivation-in-linux-vm'. These are shared with
|
||||
;; the host over 9p.
|
||||
;;
|
||||
;; The 9p documentation says that cache=loose is "intended for exclusive,
|
||||
;; read-only mounts", without additional details. It's much faster than the
|
||||
;; default cache=none, especially when copying and registering store items.
|
||||
;; Thus, use cache=loose, except for /xchg where we want to ensure
|
||||
;; consistency.
|
||||
(list (file-system
|
||||
(mount-point (%store-prefix))
|
||||
(device "store")
|
||||
(type "9p")
|
||||
(needed-for-boot? #t)
|
||||
(flags '(read-only))
|
||||
(options (format #f "trans=virtio,cache=loose,msize=~a"
|
||||
%default-msize-value))
|
||||
(check? #f))
|
||||
(file-system
|
||||
(mount-point "/xchg")
|
||||
(device "xchg")
|
||||
(type "9p")
|
||||
(needed-for-boot? #t)
|
||||
(options (format #f "trans=virtio,msize=~a" %default-msize-value))
|
||||
(check? #f))
|
||||
(file-system
|
||||
(mount-point "/tmp")
|
||||
(device "tmp")
|
||||
(type "9p")
|
||||
(needed-for-boot? #t)
|
||||
(options (format #f "trans=virtio,cache=loose,msize=~a"
|
||||
%default-msize-value))
|
||||
(check? #f))))
|
||||
|
||||
|
||||
;;;
|
||||
;;; VMs that share file systems with the host.
|
||||
;;;
|
||||
@@ -145,6 +110,12 @@
|
||||
(device (file-system->mount-tag source))
|
||||
(type "9p")
|
||||
(flags (if writable? '() '(read-only)))
|
||||
|
||||
;; The 9p documentation says that cache=loose is "intended for
|
||||
;; exclusive, read-only mounts", without additional details. It's
|
||||
;; faster than the default cache=none, especially when copying and
|
||||
;; registering store items. Thus, use cache=loose, except for writable
|
||||
;; mounts, to ensure consistency.
|
||||
(options (string-append "trans=virtio"
|
||||
(if writable? "" ",cache=loose")
|
||||
",msize=" (number->string %default-msize-value)))
|
||||
|
||||
@@ -24,9 +24,11 @@
|
||||
#:use-module (gnu tests)
|
||||
#:use-module (gnu image)
|
||||
#:use-module (gnu system)
|
||||
#:use-module (gnu system accounts)
|
||||
#:use-module (gnu system file-systems)
|
||||
#:use-module (gnu system image)
|
||||
#:use-module (gnu system images hurd)
|
||||
#:use-module ((gnu system shadow) #:select (%base-user-accounts))
|
||||
#:use-module (gnu system vm)
|
||||
#:use-module (gnu services)
|
||||
#:use-module (gnu services dbus)
|
||||
@@ -37,6 +39,7 @@
|
||||
#:use-module (guix gexp)
|
||||
#:use-module (guix records)
|
||||
#:use-module (guix store)
|
||||
#:use-module (guix modules)
|
||||
#:export (%test-libvirt
|
||||
%test-qemu-guest-agent
|
||||
%test-childhurd))
|
||||
@@ -225,31 +228,33 @@
|
||||
;;; GNU/Hurd virtual machines, aka. childhurds.
|
||||
;;;
|
||||
|
||||
;; Copy of `hurd-vm-disk-image', using plain disk-image for test
|
||||
(define (hurd-vm-disk-image-raw config)
|
||||
(let ((os ((@@ (gnu services virtualization) secret-service-operating-system)
|
||||
(hurd-vm-configuration-os config)))
|
||||
(disk-size (hurd-vm-configuration-disk-size config)))
|
||||
(system-image
|
||||
(image
|
||||
(inherit hurd-disk-image)
|
||||
(format 'disk-image)
|
||||
(size disk-size)
|
||||
(operating-system os)))))
|
||||
|
||||
(define %childhurd-os
|
||||
(simple-operating-system
|
||||
(service dhcp-client-service-type)
|
||||
(service hurd-vm-service-type
|
||||
(hurd-vm-configuration
|
||||
(image (hurd-vm-disk-image-raw this-record))))))
|
||||
(os (operating-system
|
||||
(inherit %hurd-vm-operating-system)
|
||||
(users (cons (user-account
|
||||
(name "test")
|
||||
(group "users")
|
||||
(password "")) ;empty password
|
||||
%base-user-accounts))))))))
|
||||
|
||||
(define (run-childhurd-test)
|
||||
(define (import-module? module)
|
||||
;; This module is optional and depends on Guile-Gcrypt, do skip it.
|
||||
(and (guix-module-name? module)
|
||||
(not (equal? module '(guix store deduplication)))))
|
||||
|
||||
(define os
|
||||
(marionette-operating-system
|
||||
%childhurd-os
|
||||
#:imported-modules '((gnu services herd)
|
||||
(guix combinators))))
|
||||
#:imported-modules (source-module-closure
|
||||
'((gnu services herd)
|
||||
(guix combinators)
|
||||
(gnu build install))
|
||||
#:select? import-module?)))
|
||||
|
||||
(define vm
|
||||
(virtual-machine
|
||||
@@ -269,7 +274,7 @@
|
||||
(ice-9 match)
|
||||
(ice-9 textual-ports))
|
||||
|
||||
(let ((session (make-session #:user "root"
|
||||
(let ((session (make-session #:user "test"
|
||||
#:port 10022
|
||||
#:host "localhost"
|
||||
#:log-verbosity 'rare)))
|
||||
@@ -293,7 +298,10 @@
|
||||
(ice-9 match))
|
||||
|
||||
(define marionette
|
||||
(make-marionette (list #$vm)))
|
||||
;; Emulate the host CPU so that KVM is available inside as well
|
||||
;; ("nested KVM"), provided
|
||||
;; /sys/module/kvm_intel/parameters/nested (or similar) allows it.
|
||||
(make-marionette (list #$vm "-cpu" "host")))
|
||||
|
||||
(test-runner-current (system-test-runner #$output))
|
||||
(test-begin "childhurd")
|
||||
@@ -371,6 +379,31 @@
|
||||
(pk 'drv (string-trim-right drv)))
|
||||
drv)))
|
||||
|
||||
(test-assert "copy-on-write store"
|
||||
;; Set up a writable store. The root partition is already an
|
||||
;; overlayfs, which is not suitable as the bottom part of this
|
||||
;; additional overlayfs; thus, create a tmpfs for the backing
|
||||
;; store.
|
||||
;; TODO: Remove this when <virtual-machine> creates a writable
|
||||
;; store.
|
||||
(marionette-eval
|
||||
'(begin
|
||||
(use-modules (gnu build install)
|
||||
(guix build syscalls))
|
||||
|
||||
(mkdir "/run/writable-store")
|
||||
(mount "none" "/run/writable-store" "tmpfs")
|
||||
(mount-cow-store "/run/writable-store" "/backing-store")
|
||||
(system* "df" "-hT"))
|
||||
marionette))
|
||||
|
||||
(test-equal "offloading"
|
||||
0
|
||||
(marionette-eval
|
||||
'(and (file-exists? "/etc/guix/machines.scm")
|
||||
(system* "guix" "offload" "test"))
|
||||
marionette))
|
||||
|
||||
(test-end))))
|
||||
|
||||
(gexp->derivation "childhurd-test" test))
|
||||
|
||||
@@ -1,5 +1,5 @@
|
||||
;;; GNU Guix --- Functional package management for GNU
|
||||
;;; Copyright © 2017, 2018 Ricardo Wurmus <rekado@elephly.net>
|
||||
;;; Copyright © 2017, 2018, 2023 Ricardo Wurmus <rekado@elephly.net>
|
||||
;;; Copyright © 2021 Ludovic Courtès <ludo@gnu.org>
|
||||
;;;
|
||||
;;; This file is part of GNU Guix.
|
||||
@@ -41,15 +41,15 @@
|
||||
`((guix build minify-build-system)
|
||||
,@%gnu-build-system-modules))
|
||||
|
||||
(define (default-uglify-js)
|
||||
(define (default-esbuild)
|
||||
"Return the default package to minify JavaScript source files."
|
||||
;; Lazily resolve the binding to avoid a circular dependency.
|
||||
(let ((mod (resolve-interface '(gnu packages uglifyjs))))
|
||||
(module-ref mod 'uglifyjs)))
|
||||
(let ((mod (resolve-interface '(gnu packages web))))
|
||||
(module-ref mod 'esbuild)))
|
||||
|
||||
(define* (lower name
|
||||
#:key source inputs native-inputs outputs system
|
||||
(uglify-js (default-uglify-js))
|
||||
(esbuild (default-esbuild))
|
||||
#:allow-other-keys
|
||||
#:rest arguments)
|
||||
"Return a bag for NAME."
|
||||
@@ -64,7 +64,7 @@
|
||||
'())
|
||||
,@inputs
|
||||
,@(standard-packages)))
|
||||
(build-inputs `(("uglify-js" ,uglify-js)
|
||||
(build-inputs `(("esbuild" ,esbuild)
|
||||
,@native-inputs))
|
||||
(outputs outputs)
|
||||
(build minify-build)
|
||||
|
||||
Some files were not shown because too many files have changed in this diff Show More
Reference in New Issue
Block a user