Merge branch 'master' into staging

This commit is contained in:
Marius Bakke 2023-01-08 19:32:17 +01:00
commit da91e790fd
No known key found for this signature in database
GPG Key ID: A2A06DF2A33A54FA
121 changed files with 193624 additions and 97922 deletions

View File

@ -1,5 +1,5 @@
# GNU Guix --- Functional package management for GNU
# Copyright © 2012-2022 Ludovic Courtès <ludo@gnu.org>
# Copyright © 2012-2023 Ludovic Courtès <ludo@gnu.org>
# Copyright © 2013 Andreas Enge <andreas@enge.fr>
# Copyright © 2015, 2017 Alex Kost <alezost@gmail.com>
# Copyright © 2016, 2018 Mathieu Lirzin <mthl@gnu.org>
@ -289,6 +289,7 @@ MODULES = \
guix/import/print.scm \
guix/import/pypi.scm \
guix/import/stackage.scm \
guix/import/test.scm \
guix/import/texlive.scm \
guix/import/utils.scm \
guix/scripts.scm \
@ -400,6 +401,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.1-arm.conf \
gnu/packages/aux-files/linux-libre/6.1-arm64.conf \
gnu/packages/aux-files/linux-libre/6.1-i686.conf \
gnu/packages/aux-files/linux-libre/6.1-x86_64.conf \
gnu/packages/aux-files/linux-libre/6.0-arm.conf \
gnu/packages/aux-files/linux-libre/6.0-arm64.conf \
gnu/packages/aux-files/linux-libre/6.0-i686.conf \
@ -595,6 +600,7 @@ SH_TESTS = \
tests/guix-authenticate.sh \
tests/guix-environment.sh \
tests/guix-environment-container.sh \
tests/guix-refresh.sh \
tests/guix-shell.sh \
tests/guix-shell-export-manifest.sh \
tests/guix-graph.sh \

View File

@ -310,7 +310,8 @@ Scheme Primer}}, by Christine Lemmer-Webber and the Spritely Institute.
@i{Scheme at a Glance}}, by Steve Litt.
@item
@uref{https://mitpress.mit.edu/sites/default/files/sicp/index.html,
@c There used to be a copy at mitpress.mit.edu but it vanished.
@uref{https://sarabander.github.io/sicp/,
@i{Structure and Interpretation of Computer Programs}}, by Harold
Abelson and Gerald Jay Sussman, with Julie Sussman. Colloquially known
as ``SICP'', this book is a reference.
@ -322,9 +323,6 @@ guix install sicp info-reader
info sicp
@end example
An @uref{https://sarabander.github.io/sicp/, unofficial ebook} is also
available.
@end itemize
You'll find more books, tutorials and other resources at

View File

@ -109,6 +109,7 @@ Copyright @copyright{} 2022 Reily Siegel@*
Copyright @copyright{} 2022 Simon Streit@*
Copyright @copyright{} 2022 (@*
Copyright @copyright{} 2022 John Kehayias@*
Copyright @copyright{} 2022 Ivan Vilata-i-Balaguer@*
Permission is granted to copy, distribute and/or modify this document
under the terms of the GNU Free Documentation License, Version 1.3 or
@ -9130,8 +9131,8 @@ Packages can be cross-built, and if a specific architecture or operating
system is desired then the keywords @code{#:goarch} and @code{#:goos}
can be used to force the package to be built for that architecture and
operating system. The combinations known to Go can be found
@url{"https://golang.org/doc/install/source#environment", in their
documentation}.
@url{https://golang.org/doc/install/source#environment,
in their documentation}.
@end defvr
@defvr {Scheme Variable} glib-or-gtk-build-system
@ -17108,6 +17109,19 @@ should consider ease of use when deciding between them. Partitions are
allocated at disk formatting time (logical volumes notwithstanding),
whereas files can be allocated and deallocated at any time.
@cindex hibernation
@cindex suspend to disk
Swap space is also required to put the system into @dfn{hibernation}
(also called @dfn{suspend to disk}), whereby memory is dumped to swap
before shutdown so it can be restored when the machine is eventually
restarted. Hibernation uses at most half the size of the RAM in the
configured swap space. The Linux kernel needs to know about the swap
space to be used to resume from hibernation on boot (@i{via} a kernel
argument). When using a swap file, its offset in the device holding it
also needs to be given to the kernel; that value has to be updated if
the file is initialized again as swap---e.g., because its size was
changed.
Note that swap space is not zeroed on shutdown, so sensitive data (such
as passwords) may linger on it if it was paged out. As such, you should
consider having your swap reside on an encrypted device (@pxref{Mapped
@ -17193,6 +17207,57 @@ Use the file @file{/btrfs/swapfile} as swap space, which depends on the
file system mounted at @file{/btrfs}. Note how we use Guile's filter to
select the file system in an elegant fashion!
@lisp
(swap-devices
(list
(swap-space
(target "/dev/mapper/my-swap")
(dependencies mapped-devices))))
(kernel-arguments
(cons* "resume=/dev/mapper/my-swap"
%default-kernel-arguments))
@end lisp
The above snippet of an @code{operating-system} declaration enables
the mapped device @file{/dev/mapper/my-swap} (which may be part of an
encrypted device) as swap space, and tells the kernel to use it for
hibernation via the @code{resume} kernel argument
(@pxref{operating-system Reference}, @code{kernel-arguments}).
@lisp
(swap-devices
(list
(swap-space
(target "/swapfile")
(dependencies (filter (file-system-mount-point-predicate "/")
file-systems)))))
(kernel-arguments
(cons* "resume=/swapfile"
"resume_offset=92514304"
%default-kernel-arguments))
@end lisp
This other snippet of @code{operating-system} enables the swap file
@file{/swapfile} for hibernation by telling the kernel about the file
(@code{resume} argument) and its offset on disk (@code{resume_offset}
argument). The latter value can be found in the output of the command
@command{filefrag -e} as the first number right under the
@code{physical_offset} column header (the second command extracts its
value directly):
@smallexample
$ sudo filefrag -e /swapfile
Filesystem type is: ef53
File size of /swapfile is 2463842304 (601524 blocks of 4096 bytes)
ext: logical_offset: physical_offset: length: expected: flags:
0: 0.. 2047: 92514304.. 92516351: 2048:
@dots{}
$ sudo filefrag -e /swapfile | grep '^ *0:' | cut -d: -f3 | cut -d. -f1
92514304
@end smallexample
@node User Accounts
@section User Accounts
@ -41007,13 +41072,15 @@ The easiest way to extend a service type, without defining a new service
type is to use the @code{simple-service} helper from @code{(gnu
services)}.
@findex literal-string
@lisp
(simple-service 'some-useful-env-vars-service
home-environment-variables-service-type
`(("LESSHISTFILE" . "$XDG_CACHE_HOME/.lesshst")
("SHELL" . ,(file-append zsh "/bin/zsh"))
("USELESS_VAR" . #f)
("_JAVA_AWT_WM_NONREPARENTING" . #t)))
("_JAVA_AWT_WM_NONREPARENTING" . #t)
("LITERAL_VALUE" . ,(literal-string "$@{abc@}"))))
@end lisp
If you include such a service in you home environment definition, it
@ -41021,11 +41088,17 @@ will add the following content to the @file{setup-environment} script
(which is expected to be sourced by the login shell):
@example
export LESSHISTFILE=$XDG_CACHE_HOME/.lesshst
export SHELL=/gnu/store/2hsg15n644f0glrcbkb1kqknmmqdar03-zsh-5.8/bin/zsh
export LESSHISTFILE="$XDG_CACHE_HOME/.lesshst"
export SHELL="/gnu/store/2hsg15n644f0glrcbkb1kqknmmqdar03-zsh-5.8/bin/zsh"
export _JAVA_AWT_WM_NONREPARENTING
export LITERAL_VALUE='$@{abc@}'
@end example
Notice that @code{literal-string} above lets us declare that a value is
to be interpreted as a @dfn{literal string}, meaning that ``special
characters'' such as the dollar sign will not be interpreted by the
shell.
@quotation Note
Make sure that module @code{(gnu packages shells)} is imported with
@code{use-modules} or any other way, this namespace contains the

View File

@ -20,7 +20,9 @@
;;; Simplistically, it selects packages whose names begin with "linux-libre".
;;; It is used to assist continuous integration of the kernel packages.
(use-modules (guix packages))
(use-modules (guix packages)
(guix profiles)
(gnu packages))
(manifest
(map package->manifest-entry

View File

@ -1,6 +1,7 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2021 Andrew Tropin <andrew@trop.in>
;;; Copyright © 2021 Xinglu Chen <public@yoctocell.xyz>
;;; Copyright © 2022-2023 Ludovic Courtès <ludo@gnu.org>
;;;
;;; This file is part of GNU Guix.
;;;
@ -33,6 +34,7 @@
#:use-module (guix i18n)
#:use-module (guix modules)
#:use-module (srfi srfi-1)
#:use-module (srfi srfi-9)
#:use-module (ice-9 match)
#:use-module (ice-9 vlist)
@ -47,6 +49,10 @@
home-run-on-change-service-type
home-provenance-service-type
literal-string
literal-string?
literal-string-value
environment-variable-shell-definitions
home-files-directory
xdg-configuration-files-directory
@ -171,32 +177,50 @@ packages, configuration files, activation script, and so on.")))
configuration files that the user has declared in their
@code{home-environment} record.")))
;; Representation of a literal string.
(define-record-type <literal-string>
(literal-string str)
literal-string?
(str literal-string-value))
(define (environment-variable-shell-definitions variables)
"Return a gexp that evaluates to a list of POSIX shell statements defining
VARIABLES, a list of environment variable name/value pairs. The returned code
ensures variable values are properly quoted."
#~(let ((shell-quote
(lambda (value)
;; Double-quote VALUE, leaving dollar sign as is.
(let ((quoted (list->string
(string-fold-right
#~(let* ((quote-string
(lambda (value quoted-chars)
(list->string (string-fold-right
(lambda (chr lst)
(case chr
((#\" #\\)
(append (list chr #\\) lst))
(else (cons chr lst))))
(if (memq chr quoted-chars)
(append (list chr #\\) lst)
(cons chr lst)))
'()
value))))
(string-append "\"" quoted "\"")))))
(shell-double-quote
(lambda (value)
;; Double-quote VALUE, leaving dollar sign as is.
(string-append "\"" (quote-string value '(#\" #\\))
"\"")))
(shell-single-quote
(lambda (value)
;; Single-quote VALUE to enter a literal string.
(string-append "'" (quote-string value '(#\'))
"'"))))
(string-append
#$@(map (match-lambda
((key . #f)
"")
((key . #t)
#~(string-append "export " #$key "\n"))
((key . value)
((key . (? string? value))
#~(string-append "export " #$key "="
(shell-quote #$value) "\n")))
(shell-double-quote #$value)
"\n"))
((key . (? literal-string? value))
#~(string-append "export " #$key "="
(shell-single-quote
#$(literal-string-value value))
"\n")))
variables))))
(define (environment-variables->setup-environment-script vars)
@ -313,7 +337,7 @@ directory containing FILES."
(extend append)
(default-value '())
(description "Files that will be put in
@file{~~/.guix-home/files}, and further processed during activation.")))
@file{~/.guix-home/files}, and further processed during activation.")))
(define xdg-configuration-files-directory ".config")
@ -334,7 +358,7 @@ directory containing FILES."
(extend append)
(default-value '())
(description "Files that will be put in
@file{~~/.guix-home/files/.config}, and further processed during activation.")))
@file{~/.guix-home/files/.config}, and further processed during activation.")))
(define xdg-data-files-directory ".local/share")
@ -355,7 +379,7 @@ directory containing FILES."
(extend append)
(default-value '())
(description "Files that will be put in
@file{~~/.guix-home/files/.local/share}, and further processed during
@file{~/.guix-home/files/.local/share}, and further processed during
activation.")))

View File

@ -19,6 +19,7 @@
(define-module (gnu home services shells)
#:use-module (gnu services configuration)
#:autoload (gnu system shadow) (%default-bashrc)
#:use-module (gnu home services utils)
#:use-module (gnu home services)
#:use-module (gnu packages shells)
@ -370,43 +371,6 @@ Used for executing user's commands at the exit of login shell. It
won't be read in some cases (if the shell terminates by exec'ing
another process for example)."))
;; TODO: Use value from (gnu system shadow)
(define guix-bashrc
"\
# Bash initialization for interactive non-login shells and
# for remote shells (info \"(bash) Bash Startup Files\").
# Export 'SHELL' to child processes. Programs such as 'screen'
# honor it and otherwise use /bin/sh.
export SHELL
if [[ $- != *i* ]]
then
# We are being invoked from a non-interactive shell. If this
# is an SSH session (as in \"ssh host command\"), source
# /etc/profile so we get PATH and other essential variables.
[[ -n \"$SSH_CLIENT\" ]] && source /etc/profile
# Don't do anything else.
return
fi
# Source the system-wide file.
if [[ -e /etc/bashrc ]]; then
source /etc/bashrc
fi
# Adjust the prompt depending on whether we're in 'guix environment'.
if [ -n \"$GUIX_ENVIRONMENT\" ]
then
PS1='\\u@\\h \\w [env]\\$ '
else
PS1='\\u@\\h \\w\\$ '
fi
alias ls='ls -p --color=auto'
alias ll='ls -l'
alias grep='grep --color=auto'\n")
(define (add-bash-configuration config)
(define (filter-fields field)
(filter-configuration-fields home-bash-configuration-fields
@ -443,13 +407,23 @@ if [ -f ~/.profile ]; then source ~/.profile; fi
# Honor per-interactive-shell startup file
if [ -f ~/.bashrc ]; then source ~/.bashrc; fi
"
;; The host distro might provide a bad 'PS1' default--e.g., not taking
;; $GUIX_ENVIRONMENT into account. Provide a good default here when
;; asked to. The default can be overridden below via
;; 'environment-variables'.
(if (home-bash-configuration-guix-defaults? config)
"PS1='\\u@\\h \\w${GUIX_ENVIRONMENT:+ [env]}\\$ '\n"
"")
(serialize-field 'bash-profile)
(serialize-field 'environment-variables)))
,@(list (file-if-not-empty
'bashrc
(if (home-bash-configuration-guix-defaults? config)
(list (serialize-field 'aliases) guix-bashrc)
(list (serialize-field 'aliases)
(plain-file-content %default-bashrc))
(list (serialize-field 'aliases))))
(file-if-not-empty 'bash-logout)))))

View File

@ -7,7 +7,7 @@
# Copyright © 2016, 2017, 2018 Kei Kebreau <kkebreau@posteo.net>
# Copyright © 2016, 2017 Rene Saavedra <rennes@openmailbox.org>
# Copyright © 2016 Adonay "adfeno" Felipe Nogueira <https://libreplanet.org/wiki/User:Adfeno> <adfeno@openmailbox.org>
# Copyright © 2016, 2017, 2018, 2019, 2020, 2021, 2022 Ricardo Wurmus <rekado@elephly.net>
# Copyright © 2016, 2017, 2018, 2019, 2020, 2021, 2022, 2023 Ricardo Wurmus <rekado@elephly.net>
# Copyright © 2016 Ben Woodcroft <donttrustben@gmail.com>
# Copyright © 2016, 2017, 2018, 2019 Alex Vong <alexvong1995@gmail.com>
# Copyright © 2016, 2017, 2018, 2019, 2020, 2021 Efraim Flashner <efraim@flashner.co.il>
@ -19,7 +19,7 @@
# Copyright © 2018 Amirouche Boubekki <amirouche@hypermove.net>
# Copyright © 2018, 2019, 2020, 2021, 2022 Oleg Pykhalov <go.wigust@gmail.com>
# Copyright © 2018 Stefan Stefanović <stefanx2ovic@gmail.com>
# Copyright © 2018, 2020, 2021, 2022 Maxim Cournoyer <maxim.cournoyer@gmail.com>
# Copyright © 2018, 2020, 2021, 2022, 2023 Maxim Cournoyer <maxim.cournoyer@gmail.com>
# Copyright © 2019, 2020, 2021, 2022 Guillaume Le Vaillant <glv@posteo.net>
# Copyright © 2019, 2020 John Soo <jsoo1@asu.edu>
# Copyright © 2019 Jonathan Brielmaier <jonathan.brielmaier@web.de>
@ -582,6 +582,7 @@ GNU_SYSTEM_MODULES = \
%D%/packages/stenography.scm \
%D%/packages/storage.scm \
%D%/packages/suckless.scm \
%D%/packages/sugar.scm \
%D%/packages/swig.scm \
%D%/packages/sync.scm \
%D%/packages/syncthing.scm \
@ -642,6 +643,7 @@ GNU_SYSTEM_MODULES = \
%D%/packages/xorg.scm \
%D%/packages/xfce.scm \
%D%/packages/zig.scm \
%D%/packages/zig-xyz.scm \
%D%/packages/zile.scm \
%D%/packages/zwave.scm \
\
@ -1287,7 +1289,6 @@ dist_patch_DATA = \
%D%/packages/patches/guile-present-coding.patch \
%D%/packages/patches/guile-rsvg-pkgconfig.patch \
%D%/packages/patches/guile-emacs-fix-configure.patch \
%D%/packages/patches/guile-email-fix-tests.patch \
%D%/packages/patches/gtk2-fix-builder-test.patch \
%D%/packages/patches/gtk2-respect-GUIX_GTK2_PATH.patch \
%D%/packages/patches/gtk2-respect-GUIX_GTK2_IM_MODULE_FILE.patch \
@ -1812,7 +1813,6 @@ dist_patch_DATA = \
%D%/packages/patches/ruby-anystyle-fix-dictionary-populate.patch \
%D%/packages/patches/ruby-latex-decode-fix-test.patch \
%D%/packages/patches/ruby-mustache-1.1.1-fix-race-condition-tests.patch \
%D%/packages/patches/ruby-sanitize-system-libxml.patch \
%D%/packages/patches/rustc-1.54.0-src.patch \
%D%/packages/patches/rust-1.64-fix-riscv64-bootstrap.patch \
%D%/packages/patches/rust-adblock-ignore-live-tests.patch \
@ -1900,8 +1900,8 @@ dist_patch_DATA = \
%D%/packages/patches/tk-find-library.patch \
%D%/packages/patches/tla2tools-build-xml.patch \
%D%/packages/patches/tlf-support-hamlib-4.2+.patch \
gnu/packages/patches/tootle-glib-object-naming.patch \
gnu/packages/patches/tootle-reason-phrase.patch \
%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/transmission-honor-localedir.patch \
@ -1988,6 +1988,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/wdl-link-libs-and-fix-jnetlib.patch \
%D%/packages/patches/webkitgtk-adjust-bubblewrap-paths.patch \
%D%/packages/patches/webrtc-audio-processing-big-endian.patch \
%D%/packages/patches/webrtc-for-telegram-desktop-fix-gcc12-cstdint.patch \

View File

@ -5675,7 +5675,7 @@ file or files to several hosts.")
(define-public doctl
(package
(name "doctl")
(version "1.84.1")
(version "1.92.0")
(source (origin
(method git-fetch)
(uri (git-reference
@ -5684,7 +5684,7 @@ file or files to several hosts.")
(file-name (git-file-name name version))
(sha256
(base32
"1jmqvz1rdqrsr4l0bv3ik1jla0xnbdvcmnw9892acvfs3wsmliyc"))))
"0n8xajr9s0y7a43is24q0f9nznmr2sjhlhgg9fpyx4s4nr3s5yqw"))))
(build-system go-build-system)
(arguments
(list #:import-path "github.com/digitalocean/doctl/cmd/doctl"

View File

@ -1,5 +1,5 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2015, 2017 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2015, 2017, 2023 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 20182021 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2019 Pkill -9 <pkill9@runbox.com>
;;; Copyright © 2020, 2021, 2022 Vinicius Monego <monego@posteo.net>
@ -23,6 +23,7 @@
(define-module (gnu packages animation)
#:use-module (guix packages)
#:use-module (guix download)
#:use-module (guix gexp)
#:use-module (guix git-download)
#:use-module (guix utils)
#:use-module ((guix licenses) #:prefix license:)
@ -92,7 +93,7 @@ rendering vector based animations and art in realtime.")
(license license:expat)))
;; ETL, synfig, and Synfig Studio are updated in tandem.
(define synfig-version "1.2.2")
(define synfig-version "1.4.4")
(define-public etl
(package
@ -100,12 +101,15 @@ rendering vector based animations and art in realtime.")
(version synfig-version)
(source (origin
(method url-fetch)
(uri (string-append "mirror://sourceforge/synfig/releases/"
version "/source/ETL-" version ".tar.gz"))
(uri (string-append "https://github.com/synfig/synfig"
"/releases/download/v" version
"/ETL-" version ".tar.gz"))
(sha256
(base32
"12sd8pz8l5xcxcmapkvih3brihdhdb6xmxisr9a415lydid9rh8d"))))
"1jnahpxvrdxrll7b7av3zxabm5j3nlz6m3vg4sib2278v1wf91yc"))))
(build-system gnu-build-system)
(inputs (list glibmm-2.64))
(native-inputs (list pkg-config))
(home-page "https://www.synfig.org")
(synopsis "Extended C++ template library")
(description
@ -120,68 +124,37 @@ C++ @dfn{Standard Template Library} (STL).")
(version synfig-version)
(source (origin
(method url-fetch)
(uri (string-append "mirror://sourceforge/synfig/releases/"
version "/source/synfig-" version
".tar.gz"))
(uri (string-append "https://github.com/synfig/synfig"
"/releases/download/v" version
"/synfig-" version ".tar.gz"))
(sha256
(base32
"1vy27kl68sbg41sfasa58k3p2nc1xfalvzk3k9gich9h90rpnpsz"))))
"01kgfmjfjk5y0v9ldmxzc8zzvbiaakz7nzg4hkj24gj3j6h8566d"))))
(build-system gnu-build-system)
(arguments
`(#:configure-flags
;; The Boost library path is taken from the value of BOOST_LDFLAGS.
(list (string-append "BOOST_LDFLAGS=-L"
(assoc-ref %build-inputs "boost")
"/lib"))
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'fix-boost-build-error
;; A chain of Boost headers leads to this error: "make_array" is
;; not a member of "boost::serialization". This can be avoided by
;; loading the "array_wrapper" header first.
(lambda _
(substitute* "src/synfig/valuenodes/valuenode_dynamic.cpp"
(("#include <boost/numeric/odeint/integrate/integrate.hpp>" match)
(string-append
"#include <boost/serialization/array_wrapper.hpp>\n" match)))
#t))
(add-after 'unpack 'adapt-to-libxml++-changes
(lambda _
(substitute* "configure"
(("libxml\\+\\+-2\\.6") "libxml++-3.0"))
(substitute* (append (find-files "src/modules/" "\\.cpp$")
(find-files "src/synfig/" "\\.(cpp|h)$"))
(("add_child\\(") "add_child_element(")
(("get_child_text\\(") "get_first_child_text(")
(("set_child_text\\(") "set_first_child_text(")
(("remove_child\\(") "remove_node("))
(substitute* "src/modules/mod_svg/svg_parser.cpp"
(("xmlpp::Node::NodeList") "xmlpp::Node::const_NodeList"))
#t)))))
(inputs
`(("boost" ,boost)
("ffmpeg" ,ffmpeg)
("libdv" ,libdv)
("libjpeg" ,libjpeg-turbo)
("libpng" ,libpng)
("libmng" ,libmng)
("zlib" ,zlib)))
;; synfig.pc lists the following as required: Magick++ freetype2
;; fontconfig fftw OpenEXR ETL glibmm-2.4 giomm-2.4 libxml++-3.0 sigc++-2.0
;; cairo pango pangocairo mlt++
(list boost
libdv
libjpeg-turbo
libpng
libmng
zlib))
;; synfig.pc lists the following as required: Magick++ libavcodec
;; libavformat libswscale freetype2 fontconfig OpenEXR ETL glibmm-2.4
;; giomm-2.4 libxml++-2.6 sigc++-2.0 cairo fftw3 pango pangocairo mlt++
(propagated-inputs
`(("cairo" ,cairo)
("etl" ,etl)
("fftw" ,fftw)
("fontconfig" ,fontconfig)
("freetype" ,freetype)
("glibmm" ,glibmm)
("imagemagick" ,imagemagick)
("libxml++" ,libxml++)
("libsigc++" ,libsigc++)
("mlt" ,mlt-6)
("openexr" ,openexr-2)
("pango" ,pango)))
(list cairo
etl
ffmpeg-4
fftw
fontconfig
freetype
glibmm-2.64
imagemagick
libxml++-2
libsigc++
mlt-6
openexr-2
pango))
(native-inputs
(list intltool pkg-config))
(home-page "https://www.synfig.org")
@ -198,32 +171,24 @@ for tweening, preventing the need to hand-draw each frame.")
(version synfig-version)
(source (origin
(method url-fetch)
(uri (string-append "mirror://sourceforge/synfig/releases/"
version "/source/synfigstudio-" version
".tar.gz"))
(uri (string-append "https://github.com/synfig/synfig"
"/releases/download/v" version
"/synfigstudio-" version ".tar.gz"))
(sha256
(base32
"1ql92kh9z8w2j9yi3pr7hn7wh2r2j35xynwv9xlwyd7niackgykn"))
(modules '((guix build utils)))
(snippet
'(begin
(substitute* "src/synfigapp/pluginmanager.cpp"
(("xmlpp::Node\\* n =") "const xmlpp::Node* n =")
(("xmlpp::Node::NodeList") "xmlpp::Node::const_NodeList"))
#t))))
"07xjgs1qw0rwpihpcspj92rzwy5zizi86l9x2x7w6sysrj0wd4w8"))))
(build-system gnu-build-system)
(arguments
`(#:phases
(modify-phases %standard-phases
;; This fixes the file chooser crash that happens with GTK 3.
(add-after 'install 'wrap-program
(lambda* (#:key inputs outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(gtk (assoc-ref inputs "gtk+"))
(gtk-share (string-append gtk "/share")))
(wrap-program (string-append out "/bin/synfigstudio")
`("XDG_DATA_DIRS" ":" prefix (,gtk-share)))
#t))))))
(list
#:phases
#~(modify-phases %standard-phases
;; This fixes the file chooser crash that happens with GTK 3.
(add-after 'install 'wrap-program
(lambda* (#:key inputs #:allow-other-keys)
(let* ((gtk (assoc-ref inputs "gtk+"))
(gtk-share (string-append gtk "/share")))
(wrap-program (string-append #$output "/bin/synfigstudio")
`("XDG_DATA_DIRS" ":" prefix (,gtk-share)))))))))
(inputs
(list gtkmm-3 gtk+ libsigc++ synfig))
(native-inputs

View File

@ -45,14 +45,14 @@
(define-public clamav
(package
(name "clamav")
(version "0.103.6")
(version "0.103.7")
(source (origin
(method url-fetch)
(uri (string-append "https://www.clamav.net/downloads/production/"
"clamav-" version ".tar.gz"))
(sha256
(base32
"0cxsv5m9pqxxb56qd7hlj11pwmdgm07s3msh3hxk47czq4yjx8da"))
"0l3yn4dl4zgpq2qmj29kkd0fksyy1icr0rpp3fyvbcqcc0gw6d0y"))
(modules '((guix build utils)))
(snippet
'(begin

View File

@ -395,124 +395,6 @@ dictionaries, including personal ones.")
(base32
"0gb8j9iy1acdl11jq76idgc2lbc1rq3w04favn8cyh55d1v8phsk")))
;;;
;;; Hunspell packages made from the Aspell word lists.
;;;
(define* (aspell-word-list language synopsis
#:optional
(nick (string-map (lambda (chr)
(if (char=? #\_ chr)
#\-
chr))
(string-downcase language))))
(package
(name (string-append "hunspell-dict-" nick))
(version "2018.04.16")
(source (origin
(method url-fetch)
(uri (string-append
"mirror://sourceforge/wordlist/SCOWL/"
version "/scowl-" version ".tar.gz"))
(sha256
(base32
"11lkrnhwrf5mvrrq45k4mads3n9aswgac8dc25ba61c75alxb5rs"))))
(native-inputs
(list tar gzip perl aspell))
(build-system gnu-build-system)
(arguments
`(#:phases
(modify-phases %standard-phases
(add-after 'unpack 'make-reproducible
(lambda _
(substitute* "speller/README_en.txt.sh"
(("\\bdate\\b") ""))))
(delete 'configure)
(delete 'check)
(replace 'build
(lambda _
(substitute* "speller/make-hunspell-dict"
(("zip -9 .*$")
"return\n"))
(mkdir "speller/hunspell")
;; XXX: This actually builds all the dictionary variants.
(invoke "make" "-C" "speller" "hunspell")))
(replace 'install
(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref %outputs "out"))
(hunspell (string-append out "/share/hunspell"))
(myspell (string-append out "/share/myspell"))
(doc (string-append out "/share/doc/"
,name))
(dot-dic ,(string-append "speller/" language ".dic")))
(mkdir-p myspell)
;; Usually there's only a 'LANGUAGE.dic' file, but for the "en"
;; dictionary, there no 'en.dic'. Instead, there's a set of
;; 'en*.dic' files, hence the 'find-files' call below.
(if (file-exists? dot-dic)
(install-file dot-dic hunspell)
(for-each (lambda (dic)
(install-file dic hunspell))
(find-files "speller"
,(string-append language ".*\\.dic$"))))
;; Install affix files corresponding to installed dictionaries
(for-each (lambda (dic)
(install-file (string-append
"speller/" (basename dic ".dic") ".aff")
hunspell))
(find-files hunspell ".*\\.dic$"))
(symlink hunspell (string-append myspell "/dicts"))
(for-each (lambda (file)
(install-file file doc))
(find-files "."
"^(Copyright|.*\\.(txt|org|md))$"))
#t))))))
(synopsis synopsis)
(description
"This package provides a dictionary for the Hunspell spell-checking
library.")
(home-page "http://wordlist.aspell.net/")
(license (non-copyleft "file://Copyright"
"Word lists come from several sources, all
under permissive licensing terms. See the 'Copyright' file."))))
(define-syntax define-word-list-dictionary
(syntax-rules (synopsis)
((_ name language (synopsis text))
(define-public name
(aspell-word-list language text)))
((_ name language nick (synopsis text))
(define-public name
(aspell-word-list language text nick)))))
(define-word-list-dictionary hunspell-dict-en
"en"
(synopsis "Hunspell dictionary for English"))
(define-word-list-dictionary hunspell-dict-en-au
"en_AU"
(synopsis "Hunspell dictionary for Australian English"))
(define-word-list-dictionary hunspell-dict-en-ca
"en_CA"
(synopsis "Hunspell dictionary for Canadian English"))
(define-word-list-dictionary hunspell-dict-en-gb
"en_GB-ise" "en-gb"
(synopsis "Hunspell dictionary for British English, with -ise endings"))
(define-word-list-dictionary hunspell-dict-en-gb-ize
"en_GB-ize"
(synopsis "Hunspell dictionary for British English, with -ize endings"))
(define-word-list-dictionary hunspell-dict-en-us
"en_US"
(synopsis "Hunspell dictionary for United States English"))
(define-public ispell
(package
(name "ispell")

View File

@ -47,6 +47,7 @@
#:use-module (gnu packages gtk)
#:use-module (gnu packages image)
#:use-module (gnu packages image-processing)
#:use-module (gnu packages libevent)
#:use-module (gnu packages libusb)
#:use-module (gnu packages lua)
#:use-module (gnu packages maths)
@ -356,7 +357,7 @@ made to get a better separation of core libraries and applications.
(define-public cfitsio
(package
(name "cfitsio")
(version "3.49")
(version "4.2.0")
(source
(origin
(method url-fetch)
@ -364,18 +365,29 @@ made to get a better separation of core libraries and applications.
"http://heasarc.gsfc.nasa.gov/FTP/software/fitsio/c/"
"cfitsio-" version ".tar.gz"))
(sha256
(base32 "1cyl1qksnkl3cq1fzl4dmjvkd6329b57y9iqyv44wjakbh6s4rav"))))
(base32 "128qsv2q0f0g714ahlsixiikvvbwxi9bg9q9pcr5cd3f7wdkv9gb"))))
(build-system gnu-build-system)
;; XXX Building with curl currently breaks wcslib. It doesn't use
;; pkg-config and hence won't link with -lcurl.
(arguments
`(#:tests? #f ; no tests
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'patch-paths
(lambda _
(substitute* "Makefile.in" (("/bin/") ""))
#t)))))
(list
#:configure-flags
#~(list (string-append "--with-bzip2=" #$(this-package-input "bzip2")))
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'patch-paths
(lambda _
(substitute* "Makefile.in" (("/bin/") ""))))
(delete 'check)
;; TODO: Testing steps are sourced from docs/fitsio.pdf, implement
;; the logic in Guile in the future.
(add-after 'install 'post-install-check
(lambda* (#:key tests? #:allow-other-keys)
(when tests?
(invoke "make" "testprog")
(with-output-to-file "testprog.lis" (lambda _(invoke "./testprog")))
(invoke "diff" "-r" "testprog.lis" "testprog.out")
(invoke "cmp" "-l" "testprog.fit" "testprog.std")))))))
(native-inputs (list gfortran))
(inputs (list bzip2 curl zlib))
(home-page "https://heasarc.gsfc.nasa.gov/fitsio/fitsio.html")
(synopsis "Library for reading and writing FITS files")
(description "CFITSIO provides simple high-level routines for reading and
@ -384,18 +396,18 @@ programmer from the internal complexities of the FITS format. CFITSIO also
provides many advanced features for manipulating and filtering the information
in FITS files.")
(license (license:non-copyleft "file://License.txt"
"See License.txt in the distribution."))))
"See License.txt in the distribution."))))
(define-public python-fitsio
(package
(name "python-fitsio")
(version "1.1.7")
(version "1.1.8")
(source
(origin
(method url-fetch)
(uri (pypi-uri "fitsio" version))
(sha256
(base32 "0q8siijys9kmjnqvyipjgh6hkhf4fwvr1swhsf4if211i9b0m1xy"))
(base32 "1y80hgvlkjz1bijfyb2j03853yc1kc63yrf9ab7as31ad2r6kxb1"))
(modules '((guix build utils)))
(snippet
;; Remove the bundled cfitsio
@ -419,13 +431,8 @@ in FITS files.")
(("self.system_fitsio_libdir = None") "pass")
(("self.use_system_fitsio") "True")
(("self.system_fitsio_includedir") includedir)
(("self.system_fitsio_libdir") libdir)))))
(add-after 'unpack 'skip-bzip2-test
(lambda* (#:key inputs #:allow-other-keys)
;; The bzip2 test fails because Guix' cfitsio
;; is built without bzip2 support.
(substitute* "fitsio/test.py"
(("'SKIP_BZIP_TEST' in os.environ") "True")))))))
(("self.system_fitsio_libdir") libdir))))))))
(inputs (list curl-minimal))
(propagated-inputs
(list python-numpy cfitsio))
(home-page "https://github.com/esheldon/fitsio")
@ -519,7 +526,7 @@ feature detection and cosmetic corrections.")
(define-public wcslib
(package
(name "wcslib")
(version "7.5")
(version "7.12")
(source
(origin
(method url-fetch)
@ -527,26 +534,26 @@ feature detection and cosmetic corrections.")
"ftp://ftp.atnf.csiro.au/pub/software/wcslib/wcslib-" version
".tar.bz2"))
(sha256
(base32 "1536gmcpm6pckn9xrb6j8s4pm1vryjhzvhfaj9wx3jwxcpbdy0dw"))))
(base32 "1m3bx6gh5w3c7vvsqcki0x20mg8lilg13m0i8nh7za89w58dxy4w"))))
(inputs
(list cfitsio))
(build-system gnu-build-system)
(arguments
`(#:configure-flags
(list (string-append "--with-cfitsiolib="
(assoc-ref %build-inputs "cfitsio") "/lib")
(string-append "--with-cfitsioinc="
(assoc-ref %build-inputs "cfitsio") "/include"))
#:phases
(modify-phases %standard-phases
(add-before 'configure 'patch-/bin/sh
(lambda _
(substitute* "makedefs.in"
(("/bin/sh") "sh"))
#t))
(delete 'install-license-files)) ; installed by make install
;; Parallel execution of the test suite is not supported.
#:parallel-tests? #f))
(list
#:configure-flags
#~(list (string-append "--with-cfitsiolib="
#$(this-package-input "cfitsio") "/lib")
(string-append "--with-cfitsioinc="
#$(this-package-input "cfitsio") "/include"))
#:phases
#~(modify-phases %standard-phases
(delete 'install-license-files) ; installed by make install
(add-before 'configure 'patch-/bin/sh
(lambda _
(substitute* "makedefs.in"
(("/bin/sh") "sh")))))))
;; TODO: Fix build with gfortran and pack missing optional pgplot.
;; (inputs (list gfortran pgplot))
(home-page "https://www.atnf.csiro.au/people/mcalabre/WCS")
(synopsis "Library which implements the FITS WCS standard")
(description "The FITS \"World Coordinate System\" (@dfn{WCS}) standard
@ -976,25 +983,23 @@ accurately in real time at any rate desired.")
(define-public python-astropy
(package
(name "python-astropy")
(version "5.1")
(version "5.1.1")
(source
(origin
(method url-fetch)
(uri (pypi-uri "astropy" version))
(sha256
(base32 "0zkv3ddzlxx21i796azfbqxrqnsxn83vsczscv577iyzxp3v5c8x"))
(base32 "10dxjim60ch4qznqa5s63q936mkvy95p0k26kcwzv43hmybdcjxs"))
(modules '((guix build utils)))
(snippet
'(begin
;; Remove Python bundles.
(with-directory-excursion "astropy/extern"
(for-each delete-file-recursively '("ply" "configobj")))
;; Remove cextern bundles and leave the wcslib bundle. Astropy
;; upgrades to different versions of wcslib every few releases
;; and tests break every upgrade.
;; TODO: unbundle wcslib.
;; Remove cextern bundles. Check bundled versions against available
;; in Guix in the future update of astropy.
(with-directory-excursion "cextern"
(for-each delete-file-recursively '("cfitsio" "expat")))
(for-each delete-file-recursively '("cfitsio" "expat" "wcslib")))
#t))))
(build-system python-build-system)
(arguments
@ -1002,10 +1007,8 @@ accurately in real time at any rate desired.")
(modify-phases %standard-phases
(add-after 'unpack 'preparations
(lambda _
;; Use our own libraries in place of bundles, with the
;; exception of wcslib.
(setenv "ASTROPY_USE_SYSTEM_CFITSIO" "1")
(setenv "ASTROPY_USE_SYSTEM_EXPAT" "1")
;; Use our own libraries in place of bundles.
(setenv "ASTROPY_USE_SYSTEM_ALL" "1")
;; Some tests require a writable home.
(setenv "HOME" "/tmp")
;; Relax xfail tests.
@ -1052,7 +1055,7 @@ accurately in real time at any rate desired.")
python-sgp4
python-skyfield))
(inputs
(list cfitsio expat))
(list cfitsio expat wcslib))
(propagated-inputs
(list python-configobj
python-numpy
@ -1976,7 +1979,7 @@ floating-point (no compression, LZW- or ZIP-compressed), FITS 8-bit, 16-bit,
(define-public indi
(package
(name "indi")
(version "1.9.3")
(version "1.9.9")
(source
(origin
(method git-fetch)
@ -1985,10 +1988,12 @@ floating-point (no compression, LZW- or ZIP-compressed), FITS 8-bit, 16-bit,
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0c7md288d3g2vf0m1ai6x2l4j4rmlasc4rya92phvd4ynf8vcki2"))))
(base32 "1vfcas59nlw8v7n6qhxhcm4isf5wk0crip5rmsallq3bsv3zznfr"))))
(build-system cmake-build-system)
(arguments
`(#:configure-flags
;; TODO: fix failing tests on aarch64-system.
`(#:tests? ,(not (or (%current-target-system) (target-aarch64?)))
#:configure-flags
(let ((out (assoc-ref %outputs "out")))
(list
"-DINDI_BUILD_UNITTESTS=ON"
@ -2013,6 +2018,7 @@ floating-point (no compression, LZW- or ZIP-compressed), FITS 8-bit, 16-bit,
curl
fftw
gsl
libev
libjpeg-turbo
libnova
libtiff

View File

@ -17,7 +17,7 @@
;;; Copyright © 2018, 2019, 2022 Marius Bakke <marius@gnu.org>
;;; Copyright © 2018, 2021 Thorsten Wilms <t_w_@freenet.de>
;;; Copyright © 2018 Eric Bavier <bavier@member.fsf.org>
;;; Copyright © 2018 Brendan Tildesley <mail@brendan.scot>
;;; Copyright © 2018, 2022 Brendan Tildesley <mail@brendan.scot>
;;; Copyright © 2019, 2021 Pierre Langlois <pierre.langlois@gmx.com>
;;; Copyright © 2019, 2021 Leo Famulari <leo@famulari.name>
;;; Copyright © 2019 Rutger Helling <rhelling@mykolab.com>
@ -4977,6 +4977,37 @@ library supports sample rates up to 96 kHz and up to eight channels (7.1
(license (license:fsf-free "https://github.com/mstorsjo/fdk-aac/blob/master/NOTICE"
"https://www.gnu.org/licenses/license-list.html#fdk"))))
(define-public libfreeaptx
(package
(name "libfreeaptx")
(version "0.1.1")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/iamthehorker/libfreeaptx")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32
"1fm5041nd08yzg0m9474g0943lb3x54zmn59b53nhvxan8x22ibq"))))
(build-system gnu-build-system)
(arguments
(list #:tests? #f ;no tests.
#:make-flags
#~(list
(string-append "PREFIX=" #$output)
(string-append "LDFLAGS=" "-Wl,-rpath=" #$output "/lib")
(string-append "CC=" #$(cc-for-target)))
#:phases
#~(modify-phases %standard-phases
(delete 'configure))))
(home-page "https://github.com/iamthehorker/libfreeaptx")
(synopsis "aptX codec library")
(description "libfreeaptx is an implementation of the Audio Processing
Technology codecs aptX and aptX HD, mainly intended for use with an A2DP
bluetooth profile.")
(license license:lgpl2.1+)))
(define-public libopenshot-audio
(package
(name "libopenshot-audio")
@ -6017,7 +6048,7 @@ and DSD streams.")
(arguments (list #:tests? #f)) ;; no tests
(inputs (list alsa-lib
libxkbcommon
pipewire-0.3
pipewire
qtbase
qtsvg))
(native-inputs (list pkg-config))

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -11,6 +11,7 @@
;;; Copyright © 2020, 2021, 2022 Maxim Cournoyer <maxim.cournoyer@gmail.com>
;;; Copyright © 2020 Greg Hogan <code@greghogan.com>
;;; Copyright © 2021 Arun Isaac <arunisaac@systemreboot.net>
;;; Copyright © 2022 Tomasz Jeneralczyk <tj@schwi.pl>
;;;
;;; This file is part of GNU Guix.
;;;
@ -36,6 +37,7 @@
#:use-module (guix build-system cmake)
#:use-module (guix build-system gnu)
#:use-module (guix build-system python)
#:use-module (guix build-system meson)
#:use-module (gnu packages)
#:use-module (gnu packages autotools)
#:use-module (gnu packages base)
@ -46,6 +48,9 @@
#:use-module (gnu packages databases)
#:use-module (gnu packages docbook)
#:use-module (gnu packages kde-frameworks)
#:use-module (gnu packages freedesktop)
#:use-module (gnu packages gl)
#:use-module (gnu packages graphics)
#:use-module (gnu packages linux)
#:use-module (gnu packages lua)
#:use-module (gnu packages maths)
@ -60,6 +65,8 @@
#:use-module (gnu packages python-web)
#:use-module (gnu packages python-xyz)
#:use-module (gnu packages qt)
#:use-module (gnu packages vulkan)
#:use-module (gnu packages xorg)
#:use-module (gnu packages xml)
#:use-module (ice-9 match))
@ -693,3 +700,46 @@ user-provided Lua scripts.
@item
@end itemize")
(license license:gpl2+)))
(define-public vkmark
;; The only ever release is tagged "2017.08" and as its name suggests
;; it was back in the august of 2017. That version no longer compiles
;; due to changes in APIs of its libraries.
;; Latest commit on the other hand seems to be fully working on xcb
;; and wayland backends.
(let ((commit "30d2cd37f0566589d90914501fc7c51a4e51f559")
(revision "0"))
(package
(name "vkmark")
(version (git-version "2017.08" revision commit))
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/vkmark/vkmark")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32
"0w0n080sb67s7dbxqi71h0vhm6dccs78rqjnxx9x524jp4jh9b7x"))))
(build-system meson-build-system)
(native-inputs (list pkg-config))
;; The kms backend currently will not compile because of upstream issues.
;; So I omitted this backend's dependiencies. A fix has been proposed
;; on another branch, but it has not been merged yet.
;; See https://github.com/vkmark/vkmark/issues/33
(inputs
(list vulkan-loader
vulkan-headers
glm
assimp
libxcb
xcb-util-wm
wayland-protocols
wayland))
(home-page "https://github.com/vkmark/vkmark")
(synopsis "Extensible benchmarking suite for Vulkan")
(description
"vkmark offers a suite of scenes that can be used to measure various
aspects of Vulkan performance. The way in which each scene is rendered is
configurable through a set of options.")
(license license:lgpl2.1+))))

View File

@ -24,6 +24,7 @@
;;; Copyright © 2021, 2022 Simon Tournier <zimon.toutoune@gmail.com>
;;; Copyright © 2021 Felix Gruber <felgru@posteo.net>
;;; Copyright © 2022 Navid Afkhami <navid.afkhami@mdc-berlin.de>
;;; Copyright © 2022 Antero Mejr <antero@mailbox.org>
;;;
;;; This file is part of GNU Guix.
;;;
@ -230,6 +231,10 @@ structure of the predicted RNA.")
(base32
"14lw571vbks138i0lj66qjdbk8iwa817x2zbpzij61vv1gdgfbn5"))))
(build-system cmake-build-system)
(arguments
(list
#:configure-flags
'(list "-DBUILD_SHARED_LIBS=ON")))
(inputs (list jsoncpp zlib))
(native-inputs (list pkg-config))
(home-page "https://github.com/pezmaster31/bamtools")
@ -907,6 +912,26 @@ input/output delimiter. When the new functionality is not used, bioawk is
intended to behave exactly the same as the original BWK awk.")
(license license:x11)))
(define-public python-bcbio-gff
(package
(name "python-bcbio-gff")
(version "0.6.9")
(source (origin
(method url-fetch)
(uri (pypi-uri "bcbio-gff" version))
(sha256
(base32
"1pm1szyxabhn8jismrj9cjhf88ajgcmm39f0cgf36iagw5qakprl"))))
(build-system pyproject-build-system)
(propagated-inputs (list python-biopython python-six))
(native-inputs (list python-pytest))
(home-page "https://github.com/chapmanb/bcbb/tree/master/gff")
(synopsis "Read and write GFF files with Biopython integration")
(description
"This package lets you read and write files in Generic Feature
Format (GFF) with Biopython integration.")
(license (license:non-copyleft "http://www.biopython.org/DIST/LICENSE"))))
(define-public python-cellbender
(package
(name "python-cellbender")
@ -10849,6 +10874,28 @@ traditional read alignments) and massively-parallel stochastic collapsed
variational inference.")
(license license:gpl3+)))
(define-public scallop
(package
(name "scallop")
(version "0.10.5")
(source (origin
(method url-fetch)
(uri (string-append "https://github.com/Kingsford-Group/scallop"
"/releases/download/v" version
"/scallop-" version ".tar.gz"))
(sha256
(base32
"0ylkhr5hsmw7bsdszrjz9yqknsijh2fl5n6rjqmdmcdky5hkr7mh"))))
(build-system gnu-build-system)
(inputs
(list boost htslib))
(home-page "https://github.com/Kingsford-Group/scallop")
(synopsis "Reference-based transcriptome assembler for RNA-seq")
(description "Scallop is a reference-based transcript assembler. Scallop
features its high accuracy in assembling multi-exon transcripts as well as
lowly expressed transcripts.")
(license license:bsd-3)))
(define-public python-fanc
(package
(name "python-fanc")
@ -14125,43 +14172,42 @@ datasets.")
(patches (search-patches "ngless-unliftio.patch"))))
(build-system haskell-build-system)
(arguments
`(#:haddock? #f ; The haddock phase fails with: NGLess/CmdArgs.hs:20:1:
; error: parse error on input import
; import Options.Applicative
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'create-Versions.hs
(lambda _
(substitute* "Makefile"
(("BWA_VERSION = .*")
(string-append "BWA_VERSION = "
,(package-version bwa) "\n"))
(("SAM_VERSION = .*")
(string-append "SAM_VERSION = "
,(package-version samtools) "\n"))
(("PRODIGAL_VERSION = .*")
(string-append "PRODIGAL_VERSION = "
,(package-version prodigal) "\n"))
(("MINIMAP2_VERSION = .*")
(string-append "MINIMAP2_VERSION = "
,(package-version minimap2) "\n")))
(invoke "make" "NGLess/Dependencies/Versions.hs")
#t))
(add-after 'create-Versions.hs 'create-cabal-file
(lambda _ (invoke "hpack") #t))
;; These tools are expected to be installed alongside ngless.
(add-after 'install 'link-tools
(lambda* (#:key inputs outputs #:allow-other-keys)
(let ((bin (string-append (assoc-ref outputs "out") "/bin/")))
(symlink (search-input-file inputs "/bin/prodigal")
(string-append bin "ngless-" ,version "-prodigal"))
(symlink (search-input-file inputs "/bin/minimap2")
(string-append bin "ngless-" ,version "-minimap2"))
(symlink (search-input-file inputs "/bin/samtools")
(string-append bin "ngless-" ,version "-samtools"))
(symlink (search-input-file inputs "/bin/bwa")
(string-append bin "ngless-" ,version "-bwa"))
#t))))))
(list
#:haddock? #f ;The haddock phase fails with: NGLess/CmdArgs.hs:20:1:
;error: parse error on input import
;import Options.Applicative
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'create-Versions.hs
(lambda _
(substitute* "Makefile"
(("BWA_VERSION = .*")
(string-append "BWA_VERSION = "
#$(package-version bwa) "\n"))
(("SAM_VERSION = .*")
(string-append "SAM_VERSION = "
#$(package-version samtools) "\n"))
(("PRODIGAL_VERSION = .*")
(string-append "PRODIGAL_VERSION = "
#$(package-version prodigal) "\n"))
(("MINIMAP2_VERSION = .*")
(string-append "MINIMAP2_VERSION = "
#$(package-version minimap2) "\n")))
(invoke "make" "NGLess/Dependencies/Versions.hs")))
(add-after 'create-Versions.hs 'create-cabal-file
(lambda _ (invoke "hpack")))
;; These tools are expected to be installed alongside ngless.
(add-after 'install 'link-tools
(lambda* (#:key inputs #:allow-other-keys)
(let ((bin (string-append #$output "/bin/")))
(symlink (search-input-file inputs "/bin/prodigal")
(string-append bin "ngless-" #$version "-prodigal"))
(symlink (search-input-file inputs "/bin/minimap2")
(string-append bin "ngless-" #$version "-minimap2"))
(symlink (search-input-file inputs "/bin/samtools")
(string-append bin "ngless-" #$version "-samtools"))
(symlink (search-input-file inputs "/bin/bwa")
(string-append bin "ngless-" #$version "-bwa"))))))))
(inputs
(list prodigal
bwa
@ -14276,36 +14322,32 @@ phase + query phase).")
(base32 "1xr92r820x8qlkcr3b57iw223yq8vjgyi42jr79w2xgw47qzr575"))))
(build-system gnu-build-system)
(arguments
`(#:tests? #f ; no check target
#:phases
(modify-phases %standard-phases
(delete 'configure)
(replace 'install
(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(bin (string-append out "/bin"))
(scripts (string-append out "/share/filtlong/scripts")))
(install-file "bin/filtlong" bin)
(install-file "scripts/histogram.py" scripts)
(install-file "scripts/read_info_histograms.sh" scripts))
#t))
(add-after 'install 'wrap-program
(lambda* (#:key inputs outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(path (getenv "GUIX_PYTHONPATH")))
(wrap-program (string-append out
"/share/filtlong/scripts/histogram.py")
`("GUIX_PYTHONPATH" ":" prefix (,path))))
#t))
(add-before 'check 'patch-tests
(lambda _
(substitute* "scripts/read_info_histograms.sh"
(("awk") (which "gawk")))
#t)))))
(list
#:tests? #f ; no check target
#:phases
#~(modify-phases %standard-phases
(delete 'configure)
(replace 'install
(lambda _
(let ((bin (string-append #$output "/bin"))
(scripts (string-append #$output "/share/filtlong/scripts")))
(install-file "bin/filtlong" bin)
(install-file "scripts/histogram.py" scripts)
(install-file "scripts/read_info_histograms.sh" scripts))))
(add-after 'install 'wrap-program
(lambda _
(let ((path (getenv "GUIX_PYTHONPATH")))
(wrap-program (string-append #$output
"/share/filtlong/scripts/histogram.py")
`("GUIX_PYTHONPATH" ":" prefix (,path))))))
(add-before 'check 'patch-tests
(lambda _
(substitute* "scripts/read_info_histograms.sh"
(("awk") (which "gawk"))))))))
(inputs
`(("gawk" ,gawk) ;for read_info_histograms.sh
("python" ,python-2) ;required for histogram.py
("zlib" ,zlib)))
(list gawk ;for read_info_histograms.sh
python-wrapper ;required for histogram.py
zlib))
(home-page "https://github.com/rrwick/Filtlong/")
(synopsis "Tool for quality filtering of Nanopore and PacBio data")
(description
@ -14317,91 +14359,89 @@ choosing which reads pass the filter.")
license:asl2.0))))) ;histogram.py
(define-public nanopolish
;; The recommended way to install is to clone the git repository
;; <https://github.com/jts/nanopolish#installing-a-particular-release>.
;; Also, the differences between release and current version seem to be
;; significant.
(let ((commit "6331dc4f15b9dfabb954ba3fae9d76b6c3ca6377")
(revision "1"))
(package
(name "nanopolish")
(version (git-version "0.11.1" revision commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/jts/nanopolish")
(commit commit)
(recursive? #t)))
(file-name (git-file-name name version))
(sha256
(base32 "15ikl3d37y49pwd7vx36xksgsqajhf24q7qqsnpl15dqqyy5qgbc"))
(modules '((guix build utils)))
(snippet
'(begin
(delete-file-recursively "htslib")
#t))))
(build-system gnu-build-system)
(arguments
`(#:make-flags
`("HDF5=noinstall" "EIGEN=noinstall" "HTS=noinstall" "CC=gcc")
#:tests? #f ; no check target
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'find-eigen
(lambda* (#:key inputs #:allow-other-keys)
(setenv "CPATH"
(string-append
(search-input-directory inputs "/include/eigen3")
":" (or (getenv "CPATH") "")))))
(delete 'configure)
(replace 'install
(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(bin (string-append out "/bin"))
(scripts (string-append out "/share/nanopolish/scripts")))
(package
(name "nanopolish")
(version "0.14.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/jts/nanopolish")
(commit (string-append "v" version))
(recursive? #t)))
(file-name (git-file-name name version))
(sha256
(base32 "1ha9v5ia0qrwgav0956cfc7n64wjm9a9w3rvkg21g37a994yixg5"))
(modules '((guix build utils)))
(snippet
;; TODO: unbundle slow5lib
'(begin (for-each delete-file-recursively
'("htslib" "minimap2"))))))
(build-system gnu-build-system)
(arguments
(list
#:make-flags
#~(list "HDF5=noinstall"
"EIGEN=noinstall"
"HTS=noinstall"
"MINIMAP2=noinstall"
(string-append "CC=" #$(cc-for-target)))
#:tests? #f ; no check target
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'find-eigen
(lambda* (#:key inputs #:allow-other-keys)
(setenv "CPATH"
(string-append
(search-input-directory inputs "/include/eigen3")
":" (or (getenv "CPATH") "")))))
(delete 'configure)
(replace 'install
(lambda _
(let ((bin (string-append #$output "/bin"))
(scripts (string-append #$output "/share/nanopolish/scripts")))
(install-file "nanopolish" bin)
(for-each (lambda (file) (install-file file scripts))
(find-files "scripts" ".*"))
#t)))
(add-after 'install 'wrap-programs
(lambda* (#:key inputs outputs #:allow-other-keys)
(let ((pythonpath (getenv "GUIX_PYTHONPATH"))
(perl5lib (getenv "PERL5LIB"))
(scripts (string-append (assoc-ref outputs "out")
"/share/nanopolish/scripts"))
(guile (search-input-file inputs "bin/guile")))
(for-each (lambda (file)
(wrap-program file `("GUIX_PYTHONPATH" ":" prefix (,pythonpath))))
(find-files scripts "\\.py"))
(for-each (lambda (file)
(wrap-script file #:guile guile
`("PERL5LIB" ":" prefix (,perl5lib))))
(find-files scripts "\\.pl"))))))))
(inputs
`(("guile" ,guile-3.0) ; for wrappers
("eigen" ,eigen)
("hdf5" ,hdf5)
("htslib" ,htslib)
("perl" ,perl)
("bioperl" ,bioperl-minimal)
("perl-getopt-long" ,perl-getopt-long)
("python" ,python-wrapper)
("python-biopython" ,python-biopython)
("python-numpy" ,python-numpy)
("python-pysam" ,python-pysam)
("python-scikit-learn" , python-scikit-learn)
("python-scipy" ,python-scipy)
("zlib" ,zlib)))
(home-page "https://github.com/jts/nanopolish")
(synopsis "Signal-level analysis of Oxford Nanopore sequencing data")
(description
"This package analyses the Oxford Nanopore sequencing data at signal-level.
(install-file "nanopolish" bin)
(for-each (lambda (file) (install-file file scripts))
(find-files "scripts" ".*")))))
(add-after 'install 'wrap-programs
(lambda* (#:key inputs #:allow-other-keys)
(let ((pythonpath (getenv "GUIX_PYTHONPATH"))
(perl5lib (getenv "PERL5LIB"))
(scripts (string-append #$output "/share/nanopolish/scripts"))
(guile (search-input-file inputs "bin/guile")))
(for-each (lambda (file)
(wrap-program file `("GUIX_PYTHONPATH" ":" prefix (,pythonpath))))
(find-files scripts "\\.py"))
(for-each (lambda (file)
(wrap-script file #:guile guile
`("PERL5LIB" ":" prefix (,perl5lib))))
(find-files scripts "\\.pl"))))))))
(inputs
(list guile-3.0 ;for wrappers
eigen
hdf5
htslib
minimap2
perl
bioperl-minimal
perl-getopt-long
python-wrapper
python-biopython
python-numpy
python-pysam
python-scikit-learn
python-scipy
zlib))
(native-inputs (list cmake-minimal))
(home-page "https://github.com/jts/nanopolish")
(synopsis "Signal-level analysis of Oxford Nanopore sequencing data")
(description
"This package analyses the Oxford Nanopore sequencing data at signal-level.
Nanopolish can calculate an improved consensus sequence for a draft genome
assembly, detect base modifications, call SNPs (Single nucleotide
polymorphisms) and indels with respect to a reference genome and more.")
(license license:expat))))
(license license:expat)))
(define-public cnvkit
(package
@ -14484,60 +14524,59 @@ is a Cython wrapper for FIt-SNE.")
(define-public bbmap
(package
(name "bbmap")
(version "38.90")
(version "39.01")
(source (origin
(method url-fetch)
(uri (string-append
"mirror://sourceforge/bbmap/BBMap_" version ".tar.gz"))
(sha256
(base32
"1wb94bcc006qq86x77z2rz0lc8m9f1kpnw6gdhjfg9bdaqf56rm3"))))
"1rlkw2mlkn699dk9n5lnigmvwq3zr2f8hnq9plx7zi1h06jqsq4q"))))
(build-system ant-build-system)
(arguments
`(#:build-target "dist"
#:tests? #f ; there are none
#:make-flags
,#~(list (string-append "-Dmpijar="
#$(this-package-input "java-openmpi")
"/lib/mpi.jar"))
#:modules ((guix build ant-build-system)
(list
#:build-target "dist"
#:tests? #f ; there are none
#:make-flags
#~(list (string-append "-Dmpijar="
#$(this-package-input "java-openmpi")
"/lib/mpi.jar"))
#:modules '((guix build ant-build-system)
(guix build utils)
(guix build java-utils))
#:phases
(modify-phases %standard-phases
(add-after 'build 'build-jni-library
(lambda _
(with-directory-excursion "jni"
(invoke "make" "-f" "makefile.linux"))))
;; There is no install target
(replace 'install (install-jars "dist"))
(add-after 'install 'install-scripts-and-documentation
(lambda* (#:key outputs #:allow-other-keys)
(substitute* "calcmem.sh"
(("\\| awk ") (string-append "| " (which "awk") " ")))
(let* ((scripts (find-files "." "\\.sh$"))
(out (assoc-ref outputs "out"))
(bin (string-append out "/bin"))
(doc (string-append out "/share/doc/bbmap"))
(jni (string-append out "/lib/jni")))
(substitute* scripts
(("\\$DIR\"\"docs") doc)
(("^CP=.*")
(string-append "CP=" out "/share/java/BBTools.jar\n"))
(("^NATIVELIBDIR.*")
(string-append "NATIVELIBDIR=" jni "\n"))
(("CMD=\"java")
(string-append "CMD=\"" (which "java"))))
(for-each (lambda (script) (install-file script bin)) scripts)
#:phases
#~(modify-phases %standard-phases
(add-after 'build 'build-jni-library
(lambda _
(with-directory-excursion "jni"
(invoke "make" "-f" "makefile.linux"))))
;; There is no install target
(replace 'install (install-jars "dist"))
(add-after 'install 'install-scripts-and-documentation
(lambda _
(substitute* "calcmem.sh"
(("\\| awk ") (string-append "| " (which "awk") " ")))
(let* ((scripts (find-files "." "\\.sh$"))
(bin (string-append #$output "/bin"))
(doc (string-append #$output "/share/doc/bbmap"))
(jni (string-append #$output "/lib/jni")))
(substitute* scripts
(("\\$DIR\"\"docs") doc)
(("^CP=.*")
(string-append "CP=" #$output "/share/java/BBTools.jar\n"))
(("^NATIVELIBDIR.*")
(string-append "NATIVELIBDIR=" jni "\n"))
(("CMD=\"java")
(string-append "CMD=\"" (which "java"))))
(for-each (lambda (script) (install-file script bin)) scripts)
;; Install JNI library
(install-file "jni/libbbtoolsjni.so" jni)
;; Install JNI library
(install-file "jni/libbbtoolsjni.so" jni)
;; Install documentation
(install-file "docs/readme.txt" doc)
(copy-recursively "docs/guides" doc))
#t)))
#:jdk ,openjdk11))
;; Install documentation
(install-file "docs/readme.txt" doc)
(copy-recursively "docs/guides" doc)))))
#:jdk openjdk11))
(inputs
(list gawk java-eclipse-jdt-core java-eclipse-jdt-compiler-apt
java-openmpi))
@ -16744,7 +16783,7 @@ for the analysis and visualization of raw nanopore signal.")
"/vcf/test")))))))
(native-inputs
;; Older setuptools is needed for use_2to3.
(list python-cython python-setuptools-for-tensorflow))
(list python-cython python-setuptools-57))
(propagated-inputs
(list python-pysam python-rpy2))
(home-page "https://github.com/jamescasbon/PyVCF")
@ -17729,6 +17768,42 @@ module capable of computing base-level alignments for very large sequences.")
(home-page "https://github.com/ekg/wfmash")
(license license:expat)))
(define-public gdcm
(package
(name "gdcm")
(version "2.8.9")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/malaterre/gdcm")
(commit (string-append "v" version))
(recursive? #t)))
(file-name (git-file-name name version))
(sha256
(base32
"1j8mjnxcwn2xvzhf25lv4dbawxbgc4im1crh8081li7i4mbwswaj"))))
(build-system cmake-build-system)
(arguments
(list
#:configure-flags
#~(list "-DGDCM_BUILD_TESTING=true"
(string-append "-DCMAKE_CTEST_ARGUMENTS=-E;"
"'TestFileMetaInformation"
"|TestElement2"
"|TestSCUValidation"
"|TestEcho"
"|TestFind'"))))
(home-page "http://gdcm.sourceforge.net/wiki/index.php/Main_Page")
(synopsis "Grassroots DICOM library")
(description
"Grassroots DICOM (GDCM) is an implementation of the DICOM standard
designed to be open source so that researchers may access clinical data
directly. GDCM includes a file format definition and a network communications
protocol, both of which should be extended to provide a full set of tools for
a researcher or small medical imaging vendor to interface with an existing
medical database.")
(license license:bsd-2)))
(define-public wiggletools
(package
(name "wiggletools")

View File

@ -3,7 +3,7 @@
;;; Copyright © 2015, 2018 Mark H Weaver <mhw@netris.org>
;;; Copyright © 2015 Leo Famulari <leo@famulari.name>
;;; Copyright © 2016, 2020 Jan (janneke) Nieuwenhuizen <janneke@gnu.org>
;;; Copyright © 2016-2018, 2021-2022 Marius Bakke <marius@gnu.org>
;;; Copyright © 2016-2018, 2021-2023 Marius Bakke <marius@gnu.org>
;;; Copyright © 2016, 2017 Danny Milosavljevic <dannym@scratchpost.org>
;;; Copyright © 2016, 2017 David Craven <david@craven.ch>
;;; Copyright © 2017, 2018, 2020, 2021, 2022 Efraim Flashner <efraim@flashner.co.il>
@ -573,6 +573,33 @@ The SUBDIR argument defaults to \"efi/Guix\", as it is also the case for
(base32
"0xm38h31jb29xfh2sfyk48d8wdfq4b8lmb412zx9vjr35izjb9iq"))))
(build-system gnu-build-system)
(arguments
(list
#:modules `(,@%gnu-build-system-modules (srfi srfi-26))
#:make-flags
#~(list (string-append "CC=" #$(cc-for-target))
;; /bin/fdt{get,overlay,put} need help finding libfdt.so.1.
(string-append "LDFLAGS=-Wl,-rpath=" #$output "/lib")
(string-append "PREFIX=" #$output)
(string-append "SETUP_PREFIX=" #$output)
"INSTALL=install")
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'patch-pkg-config
(lambda _
(substitute* '("Makefile"
"tests/run_tests.sh")
(("pkg-config")
#$(pkg-config-for-target)))))
(delete 'configure) ;no configure script
(add-before 'build 'install-doc
(lambda _
(with-directory-excursion "Documentation"
(for-each (cut install-file <> (string-append
#$output "/share/doc/dtc/"))
'("dts-format.txt"
"dt-object-internal.txt"
"manual.txt"))))))))
(native-inputs
(append
(list bison
@ -585,26 +612,6 @@ The SUBDIR argument defaults to \"efi/Guix\", as it is also the case for
'())))
(inputs
(list python))
(arguments
`(#:make-flags
(list (string-append "CC=" ,(cc-for-target))
;; /bin/fdt{get,overlay,put} need help finding libfdt.so.1.
(string-append "LDFLAGS=-Wl,-rpath="
(assoc-ref %outputs "out") "/lib")
(string-append "PREFIX=" (assoc-ref %outputs "out"))
(string-append "SETUP_PREFIX=" (assoc-ref %outputs "out"))
"INSTALL=install")
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'patch-pkg-config
(lambda _
(substitute* '("Makefile"
"tests/run_tests.sh")
(("pkg-config")
,(pkg-config-for-target)))))
(delete 'configure)))) ; no configure script
(home-page "https://www.devicetree.org")
(synopsis "Compiles device tree source files")
(description "@command{dtc} compiles
@ -1515,99 +1522,102 @@ order to add a suitable bootloader menu entry.")
"1pkf1n1c0rdlzfls8fvjvi1sd9xjd9ijqlyz3wigr70ijcv6x8i9"))))
(build-system gnu-build-system)
(arguments
`(#:modules ((guix build utils)
(list
#:modules `((guix build utils)
(guix build gnu-build-system)
(guix base32)
(ice-9 string-fun)
(ice-9 regex)
(rnrs bytevectors))
#:imported-modules ((guix base32)
#:imported-modules `((guix base32)
,@%gnu-build-system-modules)
#:make-flags
;; XXX: 'BUILD_ID' is used to determine when another ROM in the
;; system contains identical code in order to save space within the
;; legacy BIOS option ROM area, which is extremely limited in size.
;; It is supposed to be collision-free across all ROMs, to do so we
;; use the truncated output hash of the package.
(let ((build-id
(lambda (out)
(let* ((nix-store (string-append
(or (getenv "NIX_STORE") "/gnu/store")
"/"))
(filename
(string-replace-substring out nix-store ""))
(hash (match:substring (string-match "[0-9a-z]{32}"
filename)))
(bv (nix-base32-string->bytevector hash)))
(format #f "0x~x"
(bytevector-u32-ref bv 0 (endianness big))))))
(out (assoc-ref %outputs "out"))
(syslinux (assoc-ref %build-inputs "syslinux")))
(list "ECHO_E_BIN_ECHO=echo"
"ECHO_E_BIN_ECHO_E=echo -e"
#:make-flags
;; XXX: 'BUILD_ID' is used to determine when another ROM in the
;; system contains identical code in order to save space within the
;; legacy BIOS option ROM area, which is extremely limited in size.
;; It is supposed to be collision-free across all ROMs, to do so we
;; use the truncated output hash of the package.
#~(let ((build-id
(lambda (out)
(let* ((nix-store (string-append
(or (getenv "NIX_STORE") "/gnu/store")
"/"))
(filename
(string-replace-substring out nix-store ""))
(hash (match:substring (string-match "[0-9a-z]{32}"
filename)))
(bv (nix-base32-string->bytevector hash)))
(format #f "0x~x"
(bytevector-u32-ref bv 0 (endianness big))))))
(syslinux #$(this-package-native-input "syslinux")))
(list "ECHO_E_BIN_ECHO=echo"
"ECHO_E_BIN_ECHO_E=echo -e"
;; cdrtools' mkisofs will silently ignore a missing isolinux.bin!
;; Luckily xorriso is more strict.
(string-append "ISOLINUX_BIN=" syslinux
"/share/syslinux/isolinux.bin")
(string-append "SYSLINUX_MBR_DISK_PATH=" syslinux
"/share/syslinux/isohdpfx.bin")
;; cdrtools' mkisofs will silently ignore a missing isolinux.bin!
;; Luckily xorriso is more strict.
#$@(if (or (target-x86-64?) (target-x86?))
'((string-append "ISOLINUX_BIN=" syslinux
"/share/syslinux/isolinux.bin")
(string-append "SYSLINUX_MBR_DISK_PATH=" syslinux
"/share/syslinux/isohdpfx.bin"))
'())
;; Build reproducibly.
(string-append "BUILD_ID_CMD=echo -n " (build-id out))
(string-append "BUILD_TIMESTAMP=" ,timestamp)
"everything"))
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'enter-source-directory
(lambda _ (chdir "src") #t))
(add-after 'enter-source-directory 'set-version
(lambda _
;; When not building from a git checkout, iPXE encodes the
;; version as "1.0.0+". Use the package version instead.
(substitute* "Makefile"
(("^VERSION[[:blank:]]+=.*")
(string-append "VERSION = " ,(package-version this-package)
"-guix\n")))))
(add-after 'enter-source-directory 'set-options
(lambda _
(substitute* "config/general.h"
(("^//(#define PING_CMD.*)" _ uncommented) uncommented)
(("^//(#define IMAGE_TRUST_CMD.*)" _ uncommented)
uncommented)
(("^#undef.*(DOWNLOAD_PROTO_HTTPS.*)" _ option)
(string-append "#define " option))
(("^#undef.*(DOWNLOAD_PROTO_NFS.*)" _ option)
(string-append "#define " option)))
#t))
(delete 'configure) ; no configure script
(replace 'install
(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(ipxe (string-append out "/lib/ipxe"))
(exts-re
"\\.(efi|efirom|iso|kkpxe|kpxe|lkrn|mrom|pxe|rom|usb)$")
(dirs '("bin" "bin-i386-linux" "bin-x86_64-pcbios"
"bin-x86_64-efi" "bin-x86_64-linux" "bin-i386-efi"))
(files (apply append
(map (lambda (dir)
(find-files dir exts-re)) dirs))))
(for-each (lambda (file)
(let* ((subdir (dirname file))
(fn (basename file))
(tgtsubdir (cond
((string=? "bin" subdir) "")
((string-prefix? "bin-" subdir)
(string-drop subdir 4)))))
(install-file file
(string-append ipxe "/" tgtsubdir))))
files))
#t))
(add-after 'install 'leave-source-directory
(lambda _ (chdir "..") #t)))
#:tests? #f)) ; no test suite
;; Build reproducibly.
(string-append "BUILD_ID_CMD=echo -n " (build-id #$output))
(string-append "BUILD_TIMESTAMP=" #$timestamp)
"everything"))
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'enter-source-directory
(lambda _ (chdir "src")))
(add-after 'enter-source-directory 'set-version
(lambda _
;; When not building from a git checkout, iPXE encodes the
;; version as "1.0.0+". Use the package version instead.
(substitute* "Makefile"
(("^VERSION[[:blank:]]+=.*")
(string-append "VERSION = " #$(package-version this-package)
"-guix\n")))))
(add-after 'enter-source-directory 'set-options
(lambda _
(substitute* "config/general.h"
(("^//(#define PING_CMD.*)" _ uncommented) uncommented)
(("^//(#define IMAGE_TRUST_CMD.*)" _ uncommented)
uncommented)
(("^#undef.*(DOWNLOAD_PROTO_HTTPS.*)" _ option)
(string-append "#define " option))
(("^#undef.*(DOWNLOAD_PROTO_NFS.*)" _ option)
(string-append "#define " option)))))
(delete 'configure) ; no configure script
(replace 'install
(lambda _
(let* ((ipxe (string-append #$output "/lib/ipxe"))
(exts-re
"\\.(efi|efirom|iso|kkpxe|kpxe|lkrn|mrom|pxe|rom|usb)$")
(dirs '("bin" "bin-i386-linux" "bin-x86_64-pcbios"
"bin-x86_64-efi" "bin-x86_64-linux" "bin-i386-efi"))
(files (apply append
(map (lambda (dir)
(find-files dir exts-re)) dirs))))
(for-each (lambda (file)
(let* ((subdir (dirname file))
(fn (basename file))
(tgtsubdir (cond
((string=? "bin" subdir) "")
((string-prefix? "bin-" subdir)
(string-drop subdir 4)))))
(install-file file
(string-append ipxe "/" tgtsubdir))))
files))))
(add-after 'install 'leave-source-directory
(lambda _ (chdir ".."))))
#:tests? #f)) ; no test suite
(native-inputs
(list perl syslinux xorriso))
(append (if (or (target-x86-64?) (target-x86?))
;; Syslinux only supports i686 and x86_64.
(list syslinux)
'())
(list perl xorriso)))
(home-page "https://ipxe.org")
(synopsis "PXE-compliant network boot firmware")
(description "iPXE is a network boot firmware. It provides a full PXE

View File

@ -941,7 +941,7 @@
opus+custom
pango
pciutils
pipewire-0.3
pipewire
pulseaudio
qtbase-5
re2

View File

@ -103,6 +103,7 @@
(define-public zlib
(package
(name "zlib")
(replacement zlib-1.2.12)
(version "1.2.11")
(source
(origin
@ -164,6 +165,21 @@ independent of the input data and can be reduced, if necessary, at some cost
in compression.")
(license license:zlib)))
(define-public zlib-1.2.12
(package
(inherit zlib)
(version "1.2.12")
(source
(origin
(method url-fetch)
(uri (list (string-append "http://zlib.net/zlib-"
version ".tar.gz")
(string-append "mirror://sourceforge/libpng/zlib/"
version "/zlib-" version ".tar.gz")))
(sha256
(base32
"1n9na4fq4wagw1nzsfjr6wyly960jfa94460ncbf6p1fac44i14i"))))))
(define-public minizip
(package
(name "minizip")

View File

@ -8,7 +8,7 @@
;;; Copyright © 2019 Jan Wielkiewicz <tona_kosmicznego_smiecia@interia.pl>
;;; Copyright © 2020, 2021 Nicolò Balzarotti <nicolo@nixo.xyz>
;;; Copyright © 2020 Roel Janssen <roel@gnu.org>
;;; Copyright © 2020, 2021 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2020, 2021, 2023 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2020 Brice Waegeneire <brice@waegenei.re>
;;; Copyright © 2020, 2021, 2022 Vinicius Monego <monego@posteo.net>
;;; Copyright © 2020, 2022 Marius Bakke <marius@gnu.org>
@ -32,6 +32,7 @@
;;; Copyright © 2022 David Elsing <david.elsing@posteo.net>
;;; Copyright © 2022 Zheng Junjie <873216071@qq.com>
;;; Copyright © 2022 Maxim Cournoyer <maxim.cournoyer@gmail.com>
;;; Copyright © 2023 Sughosha <Sughosha@proton.me>
;;;
;;; This file is part of GNU Guix.
;;;
@ -63,6 +64,7 @@
#:use-module (guix modules)
#:use-module (guix gexp)
#:use-module (gnu packages)
#:use-module (gnu packages assembly)
#:use-module (gnu packages autotools)
#:use-module (gnu packages boost)
#:use-module (gnu packages build-tools)
@ -72,8 +74,13 @@
#:use-module (gnu packages compression)
#:use-module (gnu packages crypto)
#:use-module (gnu packages curl)
#:use-module (gnu packages datastructures)
#:use-module (gnu packages documentation)
#:use-module (gnu packages fontutils)
#:use-module (gnu packages gcc)
#:use-module (gnu packages gl)
#:use-module (gnu packages glib)
#:use-module (gnu packages gtk)
#:use-module (gnu packages libevent)
#:use-module (gnu packages libunwind)
#:use-module (gnu packages linux)
@ -91,6 +98,7 @@
#:use-module (gnu packages tls)
#:use-module (gnu packages web)
#:use-module (gnu packages xml)
#:use-module (gnu packages xorg)
#:use-module (ice-9 match))
(define-public argagg
@ -1107,6 +1115,39 @@ a zero-dependency C++ header-only parser combinator library for creating
parsers according to a Parsing Expression Grammar (PEG).")
(license license:expat)))
(define-public psascan
(package
(name "psascan")
(version "0.1.0")
(source (origin
(method url-fetch)
(uri (string-append "https://www.cs.helsinki.fi/group"
"/pads/software/pSAscan"
"/pSAscan-" version ".tar.bz2"))
(sha256
(base32
"1cphk4gf202nzkxz6jdjzls4zy27055gwpm0r8cn99gr6c8548cy"))))
(build-system gnu-build-system)
(arguments
(list
#:tests? #false ;there are none
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'chdir (lambda _ (chdir "src")))
(delete 'configure)
(replace 'install
(lambda _
(install-file "psascan"
(string-append #$output "/bin")))))))
(inputs (list libdivsufsort))
(home-page "https://www.cs.helsinki.fi/group/pads/pSAscan.html")
(synopsis "Parallel external memory suffix array construction")
(description "This package contains an implementation of the parallel
external-memory suffix array construction algorithm called pSAscan. The
algorithm is based on the sequential external-memory suffix array construction
algorithm called SAscan.")
(license license:expat)))
(define-public cxxopts
(package
(name "cxxopts")
@ -2231,3 +2272,108 @@ also includes a C library that checks casting, multiplication, division,
addition and subtraction for all combinations of signed and unsigned 32-bit and
64-bit integers.")
(license license:expat)))
(define-public wdl
;; No tag is available.
(let ((commit "da86a62d11e46e4ecd8b16f9775cb5188340a0e2")
(revision "0"))
(package
(name "wdl")
(version (git-version "0" revision commit))
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/justinfrankel/WDL")
(commit commit)))
(file-name (git-file-name name version))
;; This patch fixes error of undefined functions, due to not
;; linking libraries, and invalid object.
(patches
(search-patches "wdl-link-libs-and-fix-jnetlib.patch"))
(sha256
(base32
"0hdb604szkbrlyffiw94rz8wx4nvmk3zdkycfirqgjs7mh0l6vbq"))
(modules '((guix build utils)))
;; Unbundle third party libraries which are not needed.
(snippet
'(with-directory-excursion "WDL"
(for-each delete-file-recursively
(list "cmath"
"libpng"
"lice/glew"
"giflib"
"jpeglib"
"zlib"))))))
(build-system gnu-build-system)
(arguments
(list
#:test-target "test"
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'chdir
(lambda _ (chdir "WDL/swell")))
(delete 'configure)
(replace 'build
(lambda _
(with-directory-excursion ".."
(invoke "make" "-Ceel2") ;build eel2
(invoke "make" "-Cjnetlib")) ;build jnetlib
(invoke "make" "SWELL_SUPPORT_GTK=true")
(invoke "make" "libSwell.colortheme")))
(replace 'install
(lambda _
(chdir "..")
;; Do not install these directories
(delete-file-recursively "lice/test")
(delete-file-recursively "swell/sample_project")
;; Install headers.
(let ((include (string-append #$output "/include/WDL")))
(for-each
(lambda (file)
(install-file file
(string-append include "/"
(dirname file))))
(find-files "." "\\.h$")))
(install-file "swell/libSwell.so"
(string-append #$output "/lib"))
(install-file "swell/libSwell.colortheme"
(string-append #$output "/share/WDL"))
(install-file "eel2/loose_eel"
(string-append #$output "/libexec"))
(install-file "jnetlib/jnl.a"
(string-append #$output "/lib")))))))
(native-inputs (list pkg-config nasm))
(inputs
(list cairo
fontconfig
freetype
gdk-pixbuf
glib
gtk+
libxi
libx11
mesa
zlib))
(home-page "https://www.cockos.com/wdl/")
(synopsis "Modestly reusable C++ libraries")
(description
"WDL is a modestly reusable C++ library that offers the following:
@itemize
@item Inline classes for cleanly managing memory allocations, lists,
queues, resource pools, strings, etc.
@item File reading/writing wrappers
@item Directory scanning API
@item SHA-1 implementation
@item Mergesort implementation
@item Blowfish implementation
@item Fast FFT implementation (based on DJBFFT)
@item Audio tools
@item LICE - Lightweight Image Compositing Engine
@item WDL Virtual Window system
@item Plush2 - Portable, lightweight software 3d rendering engine
@item SWELL - Simple Windows Emulation Layer
@item And more.
@end itemize")
(license license:zlib))))

View File

@ -15068,6 +15068,38 @@ or hash tables and to generate integer partitions. Cool-lex order is similar
to colexicographical order.")
(license license:gpl2)))
(define-public r-multidplyr
(package
(name "r-multidplyr")
(version "0.1.2")
(source (origin
(method url-fetch)
(uri (cran-uri "multidplyr" version))
(sha256
(base32
"081x9n46dl6vpp5q6pilw3w5wpdi3r9kwi9n6h4k2p2iqg1s96lb"))))
(properties `((upstream-name . "multidplyr")))
(build-system r-build-system)
(propagated-inputs
(list r-callr
r-cli
r-crayon
r-dplyr
r-magrittr
r-qs
r-r6
r-rlang
r-tibble
r-tidyselect
r-vctrs))
(native-inputs (list r-knitr))
(home-page "https://multidplyr.tidyverse.org")
(synopsis "Multi-process dplyr backend")
(description
"Partition a data frame across multiple worker processes to provide
simple multicore parallelism.")
(license license:expat)))
(define-public r-misc3d
(package
(name "r-misc3d")
@ -34502,7 +34534,16 @@ package.")
"0cx5k0mzn6bm8ff58yrqz3hjidxcawxgqbpijnynvin1m4395i4j"))))
(properties `((upstream-name . "qs")))
(build-system r-build-system)
(inputs (list zlib))
(arguments
(list
#:phases
'(modify-phases %standard-phases
;; Our zstd is at 1.5.0, but this package bundles 1.5.2.
(add-after 'unpack 'use-older-zstd
(lambda _
(substitute* "configure"
(("100502") "100500")))))))
(inputs (list lz4 zlib (list zstd "lib")))
(propagated-inputs
(list r-rapiserialize r-rcpp r-stringfish))
(native-inputs

View File

@ -7,6 +7,7 @@
;;; Copyright © 2019, 2020, 2021 Marius Bakke <marius@gnu.org>
;;; Copyright © 2019 Carl Dong <contact@carldong.me>
;;; Copyright © 2020 Mathieu Othacehe <m.othacehe@gmail.com>
;;; Copyright © 2022 Maxim Cournoyer <maxim.cournoyer@gmail.com>
;;;
;;; This file is part of GNU Guix.
;;;
@ -32,7 +33,9 @@
#:use-module (gnu packages mingw)
#:use-module (guix platform)
#:use-module (guix packages)
#:use-module (guix diagnostics)
#:use-module (guix download)
#:use-module (guix i18n)
#:use-module (guix utils)
#:use-module (guix build-system gnu)
#:use-module (guix build-system trivial)
@ -74,7 +77,20 @@
`(cons ,(string-append "--target=" target)
,flags))))))
(define* (cross-binutils target #:optional (binutils binutils))
(define (contains-keyword? args)
"Check if ARGS contains a keyword object."
(find keyword? args))
(define* (cross-binutils . args)
(if (or (= (length args) 1) (contains-keyword? args))
(apply cross-binutils* args)
(apply cross-binutils/deprecated args)))
(define* (cross-binutils/deprecated target #:optional (binutils binutils))
(warning (G_ "'cross-binutils' must be used with keyword arguments~%"))
(cross-binutils* target #:binutils binutils))
(define* (cross-binutils* target #:key (binutils binutils))
"Return a cross-Binutils for TARGET using BINUTILS."
(let ((binutils (package
(inherit binutils)
@ -333,11 +349,27 @@ target that libc."
%gcc-cross-include-paths)))
(native-search-paths '())))
(define* (cross-kernel-headers target
#:optional
(linux-headers linux-libre-headers)
(xgcc (cross-gcc target))
(xbinutils (cross-binutils target)))
(define* (cross-kernel-headers . args)
(if (or (= (length args) 1) (contains-keyword? args))
(apply cross-kernel-headers* args)
(apply cross-kernel-headers/deprecated args)))
(define* (cross-kernel-headers/deprecated target
#:optional
(linux-headers linux-libre-headers)
(xgcc (cross-gcc target))
(xbinutils (cross-binutils target)))
(warning (G_ "'cross-kernel-headers' must be used with keyword arguments~%"))
(cross-kernel-headers* target
#:linux-headers linux-headers
#:xgcc xgcc
#:xbinutils xbinutils))
(define* (cross-kernel-headers* target
#:key
(linux-headers linux-libre-headers)
(xgcc (cross-gcc target))
(xbinutils (cross-binutils target)))
"Return headers depending on TARGET."
(define xlinux-headers
@ -491,12 +523,30 @@ target that libc."
((or "i586-pc-gnu" "i586-gnu") xhurd-core-headers)
(_ xlinux-headers)))
(define* (cross-libc target
#:optional
(libc glibc)
(xgcc (cross-gcc target))
(xbinutils (cross-binutils target))
(xheaders (cross-kernel-headers target)))
(define* (cross-libc . args)
(if (or (= (length args) 1) (contains-keyword? args))
(apply cross-libc* args)
(apply cross-libc/deprecated args)))
(define* (cross-libc/deprecated target
#:optional
(libc glibc)
(xgcc (cross-gcc target))
(xbinutils (cross-binutils target))
(xheaders (cross-kernel-headers target)))
(warning (G_ "'cross-libc' must be used with keyword arguments~%"))
(cross-libc* target
#:libc libc
#:xgcc xgcc
#:xbinutils xbinutils
#:xheaders xheaders))
(define* (cross-libc* target
#:key
(libc glibc)
(xgcc (cross-gcc target))
(xbinutils (cross-binutils target))
(xheaders (cross-kernel-headers target)))
"Return LIBC cross-built for TARGET, a GNU triplet. Use XGCC and XBINUTILS
and the cross tool chain."
(if (target-mingw? target)

View File

@ -4032,27 +4032,6 @@ is designed to have a low barrier to entry.")
(Redis Queue).")
(license license:expat)))
(define-public python-trollius-redis
(package
(name "python-trollius-redis")
(version "0.1.4")
(source
(origin
(method url-fetch)
(uri (pypi-uri "trollius_redis" version))
(sha256
(base32
"0k3vypszmgmaipgw9xscvgm79h2zd6p6ci8gdp5sxl6g5kbqr9fy"))))
(build-system python-build-system)
;; TODO: Tests require packaging 'hiredis'.
(arguments '(#:tests? #f))
(home-page "https://github.com/benjolitz/trollius-redis")
(synopsis "Port of asyncio-redis to trollius")
(description "@code{trollius-redis} is a Redis client for Python
trollius. It is an asynchronous IO (PEP 3156) implementation of the
Redis protocol.")
(license license:bsd-2)))
(define-public python-sqlparse
(package
(name "python-sqlparse")

View File

@ -226,7 +226,7 @@ easy to use, login interface with a modern yet classy touch.")
(sddm-themes (string-append out "/share/sddm/themes")))
(mkdir-p sddm-themes)
(copy-recursively (assoc-ref %build-inputs "source")
(string-append sddm-themes "/chili"))))))
(string-append sddm-themes "/sugar-dark"))))))
(home-page "https://github.com/MarianArlt/sddm-sugar-dark")
(synopsis "Sugar dark theme for SDDM")
(description "Sugar is extremely customizable and so sweet it will
@ -257,7 +257,7 @@ experience for your users, your family and yourself")
(sddm-themes (string-append out "/share/sddm/themes")))
(mkdir-p sddm-themes)
(copy-recursively (assoc-ref %build-inputs "source")
(string-append sddm-themes "/chili"))))))
(string-append sddm-themes "/sugar-light"))))))
(home-page "https://github.com/MarianArlt/sddm-sugar-light")
(synopsis "Sugar light theme for SDDM")
(description "Sugar is extremely customizable and so sweet it will

View File

@ -432,8 +432,8 @@ needed.")
#:make-flags
`("DC=ldc2"
,(string-append "prefix=" (assoc-ref %outputs "out"))
,(string-append "libdir=" (assoc-ref %outputs "out")
"/lib"))
,(string-append "libdir=" (assoc-ref %outputs "out") "/lib")
"pkgconfigdir=lib/pkgconfig")
#:phases
(modify-phases %standard-phases
(delete 'configure)

View File

@ -56,12 +56,13 @@
#:use-module (gnu packages gnome)
#:use-module (gnu packages glib)
#:use-module (gnu packages gstreamer)
#:use-module (gnu packages hunspell)
#:use-module (gnu packages icu4c)
#:use-module (gnu packages image)
#:use-module (gnu packages javascript)
#:use-module (gnu packages language)
#:use-module (gnu packages libusb)
#:use-module (gnu packages libreoffice)
#:use-module (gnu packages libusb)
#:use-module (gnu packages music)
#:use-module (gnu packages pantheon)
#:use-module (gnu packages pdf)

View File

@ -558,11 +558,10 @@ configuration language which makes it trivial to write your own themes.")
(license license:gpl3+))))
(define-public emacs-inspector
(let ((commit "0e89d28558f57db4519f154bb72ce617a8c6265d")
(revision "0"))
(let ((commit "f02263e1b670bd4fe706c7b07a523fc9718a55f6")) ;version bump
(package
(name "emacs-inspector")
(version (git-version "0.8" revision commit))
(version "0.10")
(source
(origin
(uri (git-reference
@ -570,7 +569,7 @@ configuration language which makes it trivial to write your own themes.")
(commit commit)))
(method git-fetch)
(sha256
(base32 "0n72sqn29b5sya686cicgp40mkk5x5821b7bw4zs6dcl82cyij5n"))
(base32 "1k2dy2z73cn8j784rvcmk9i43xw9g1rcqqmqrl38kv655l62vgz0"))
(file-name (git-file-name name version))))
(build-system emacs-build-system)
(arguments
@ -1161,8 +1160,8 @@ libgit2 bindings for Emacs, intended to boost the performance of Magit.")
(license license:gpl3+))))
(define-public emacs-magit
(let ((commit "36059e0b881cb1465cb5ad0099e55e00845a8222")
(revision "0"))
(let ((commit "b908c79b44f5c282eec44f19fc1d9967f041dd5c")
(revision "1"))
(package
(name "emacs-magit")
(version (git-version "3.3.0" revision commit))
@ -1174,7 +1173,7 @@ libgit2 bindings for Emacs, intended to boost the performance of Magit.")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32 "12r5z7jbqh74rb9763smh4sblswzwi41wybzcvsy0zhw2r8lpmzv"))))
(base32 "1wybli5xrxkn8b7d7nm7h44avip9pjc24ig73hh15xg2wjm90zzc"))))
(build-system emacs-build-system)
(arguments
(list
@ -7797,18 +7796,15 @@ variables, and so on. The mode also allows you to execute Tup commands.")
(define-public emacs-compat
(package
(name "emacs-compat")
(version "28.1.2.2")
(version "29.1.1.0")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://git.sr.ht/~pkal/compat")
(commit version)))
(file-name (git-file-name name version))
(method url-fetch)
(uri (string-append "https://elpa.gnu.org/packages/"
"compat-" version ".tar"))
(sha256
(base32
"1c1pr6zzvgfbsclp1fyx911d4qvihz8hw5mp7g0l0df2rlpypdzw"))))
"0b371rilcbkjmb1fdaib7fnrngkm1q7xdmv15a3xvmpalvfwmrwc"))))
(build-system emacs-build-system)
(propagated-inputs (list emacs-nadvice))
(home-page "https://git.sr.ht/~pkal/compat")
(synopsis "Emacs Lisp Compatibility Library")
(description
@ -7882,7 +7878,7 @@ This package is not compatible with a TTY.")
(define-public emacs-company-posframe
(package
(name "emacs-company-posframe")
(version "0.5.0")
(version "0.7.0")
(source (origin
(method git-fetch)
(uri (git-reference
@ -7891,7 +7887,7 @@ This package is not compatible with a TTY.")
(file-name (git-file-name name version))
(sha256
(base32
"05ays6xkqbxcfplvx7wfc2slflmwc3aw7vkixvabk0ilvisndvgm"))))
"03kj8yxd4y9aw86b6y6z5l9y76q5gjyiyhi5120nx1a8cwbd9g4a"))))
(build-system emacs-build-system)
(propagated-inputs
(list emacs-company emacs-posframe))
@ -10124,28 +10120,25 @@ them easier to distinguish from other, less important buffers.")
(license license:expat)))
(define-public emacs-embark
;; XXX: Upstream did not tag last release. Use commit matching version
;; bump.
(let ((commit "09da327d43793f0b30114ee80d82ef587124462a"))
(package
(name "emacs-embark")
(version "0.18")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/oantolin/embark")
(commit commit)))
(sha256
(base32 "0drzsa9rzjy0548pa161cf1d71lnyjri31rkwyjray9gy2adbnhv"))
(file-name (git-file-name name version))))
(build-system emacs-build-system)
(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.19")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/oantolin/embark")
(commit version)))
(sha256
(base32 "05c8p7rqv9p8p3nhgcjfr66hpsqazhnhwsnfdapxd9z7wrybqbg5"))
(file-name (git-file-name name version))))
(build-system emacs-build-system)
(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.
@ -10159,7 +10152,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
@ -10248,7 +10241,7 @@ style, or as multiple word prefixes.")
(define-public emacs-consult
(package
(name "emacs-consult")
(version "0.29")
(version "0.31")
(source
(origin
(method git-fetch)
@ -10256,7 +10249,7 @@ style, or as multiple word prefixes.")
(url "https://github.com/minad/consult")
(commit version)))
(sha256
(base32 "11wk1511hj8m9rmccgq4fb8x7vlr9pi00a9h285lxwj1bdmy9dlz"))
(base32 "0ckyn4sdhc9dykbbdiin75jxza883dqa3g4mvf8qgsnzlqcjvvg6"))
(file-name (git-file-name name version))))
(build-system emacs-build-system)
(propagated-inputs (list emacs-compat))
@ -12940,7 +12933,7 @@ generated by Org mode (or Markdown mode) is left untouched.")
(define-public emacs-visual-fill-column
(package
(name "emacs-visual-fill-column")
(version "2.5")
(version "2.5.1")
(source
(origin
(method git-fetch)
@ -12949,7 +12942,7 @@ generated by Org mode (or Markdown mode) is left untouched.")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "168wiywaffhhn7j4nfbnq4lfxpxl0x17z9ckk3nwkpaz45d9a2q6"))))
(base32 "0006x7vbwrx4w3b51aajzds0qaw3zb3b2wmj0c3j0anlrmyb37yz"))))
(build-system emacs-build-system)
(home-page "https://codeberg.org/joostkremers/visual-fill-column")
(synopsis "Fill-column for visual-line-mode")
@ -16373,7 +16366,7 @@ constructs.")
(define-public emacs-cnfonts
(package
(name "emacs-cnfonts")
(version "0.9.1")
(version "1.0.0")
(source
(origin
(method git-fetch)
@ -16382,7 +16375,7 @@ constructs.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "11d44lf0m0kbzq1mvyqkl4aprys0xqaarp08nij57xnynin1rynx"))))
(base32 "1vim429ikgsh7zvh521af39xgmm6qb3fc3pwb51458fj010gf8pj"))))
(build-system emacs-build-system)
(home-page "https://github.com/tumashu/cnfonts")
(synopsis "Emacs Chinese fonts setup tool")
@ -16390,6 +16383,38 @@ constructs.")
configuration of Chinese fonts.")
(license license:gpl2+)))
(define-public emacs-cal-china-x
(let ((revision "0")
(commit "94005e678a1d2522b7a00299779f40c5c77286b8"))
(package
(name "emacs-cal-china-x")
(version (git-version "2.6b" revision commit))
(source
(origin
(method git-fetch)
(uri
(git-reference
(url "https://github.com/xwl/cal-china-x")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32 "0dy9awy5y990wz925rdn95gn23ywarwbvkqq0l0xms1br1v8kxc6"))))
(build-system emacs-build-system)
(home-page "https://github.com/xwl/cal-china-x")
(synopsis "Chinese localization, lunar/horoscope/zodiac info and more")
(description
"Cal-China-X provides additional features for Emacs' Cal-China package:
@itemize
@item Chinese localizations.
@item Display holiday, lunar, horoscope, zodiac, solar term info on mode line.
@item Define holidays using holiday-lunar, holiday-solar-term.
@item Highlight holidays based on different priorities.
@item Add cal-china-x-chinese-holidays, cal-china-x-japanese-holidays.
@item custom week diary (like weeks in school).
@end itemize")
(license license:gpl3+))))
(define-public emacs-boon
(package
(name "emacs-boon")
@ -16592,6 +16617,9 @@ function to be used by other frontend programs.")
(sha256
(base32 "0fzyh8qmicq2vy9j1ca708ir67dpxp1cwjaw0sw469p24cvj12yy"))))
(build-system emacs-build-system)
(arguments
(list
#:include #~(cons "pyim-basedict.pyim" %default-include)))
(propagated-inputs
(list emacs-pyim))
(home-page "https://github.com/tumashu/pyim-basedict")
@ -20703,40 +20731,49 @@ interactive commands and functions, such as @code{completing-read}.")
(license license:gpl3+)))
(define-public emacs-org-ql
(package
(name "emacs-org-ql")
(version "0.6.2")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/alphapapa/org-ql")
(commit version)))
(sha256
(base32
"0iamqv5j43ngj1xdqr36rkgk9lqpk9bg8y531jsldnvwzrp3srpf"))
(file-name (git-file-name name version))))
(build-system emacs-build-system)
(propagated-inputs
(list emacs-dash
emacs-f
emacs-helm
emacs-helm-org
emacs-org
emacs-org-super-agenda
emacs-ov
emacs-peg
emacs-ts
emacs-s))
(native-inputs
(list emacs-buttercup emacs-with-simulated-input))
(arguments
`(#:tests? #t
#:test-command '("buttercup" "-L" ".")))
(home-page "https://github.com/alphapapa/org-ql/")
(synopsis "Query language for Org buffers")
(description "This package provides a Lispy query language for Org
(let ((commit "29533525c39e0e243912bb3c807412e4bc3e804e")
(revision "0"))
(package
(name "emacs-org-ql")
(version (git-version "0.6.3" revision commit))
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/alphapapa/org-ql")
(commit commit)))
(sha256
(base32
"01zc2mrlr197r0h2xjgzg88fy74lqbw0hv60jw08ihs0yw7n56y7"))
(file-name (git-file-name name version))))
(build-system emacs-build-system)
(arguments
(list
#:tests? #t
#:test-command #~(list "buttercup" "-L" ".")
#:phases
#~(modify-phases %standard-phases
(add-before 'check 'fix-test
(lambda _
(substitute* "tests/test-org-ql.el"
(("can't be linked to") "cant be linked to")))))))
(native-inputs
(list emacs-buttercup emacs-with-simulated-input))
(propagated-inputs
(list emacs-dash
emacs-f
emacs-helm
emacs-helm-org
emacs-org
emacs-org-super-agenda
emacs-ov
emacs-peg
emacs-s
emacs-ts))
(home-page "https://github.com/alphapapa/org-ql/")
(synopsis "Query language for Org buffers")
(description "This package provides a Lispy query language for Org
files, allowing for actions to be performed based on search criteria.")
(license license:gpl3+)))
(license license:gpl3+))))
(define-public emacs-bing-dict
(package
@ -21995,6 +22032,30 @@ key again.")
within Emacs.")
(license license:gpl3+))))
(define-public emacs-ibrowse
(let* ((commit "7e4a2987fc63861514b441f65db2008da5949ef2")
(revision "0"))
(package
(name "emacs-ibrowse")
(version (git-version "0.0" revision commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://git.sr.ht/~ngraves/ibrowse.el")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32 "15661xgjxdxk1p0g87dsas9jd9v7g64y6n9irlbyzww09gjsjwwd"))))
(build-system emacs-build-system)
(inputs (list sqlite))
(propagated-inputs (list emacs-embark emacs-marginalia))
(home-page "https://git.sr.ht/~ngraves/ibrowse.el")
(synopsis "Interact with your browser from emacs")
(description "This package provides some commands to act on the browser
tabs, history, or bookmarks from Emacs.")
(license license:gpl3+))))
(define-public emacs-ibuffer-projectile
(package
(name "emacs-ibuffer-projectile")
@ -22573,26 +22634,24 @@ functions.")
(license license:gpl3+)))
(define-public emacs-benchmark-init
(let ((commit "02435560415bbadbcf5051fb7042880549170e7e")
(revision "1"))
(package
(name "emacs-benchmark-init")
(version (git-version "1.0" revision commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/dholm/benchmark-init-el")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32 "19375vamhld4xm2qrdmhlp2nczfvalmz9x6ahl23zwkilr8n1nbw"))))
(build-system emacs-build-system)
(home-page "https://github.com/dholm/benchmark-init-el")
(synopsis "Benchmark Emacs @code{require} and @code{load} calls")
(description "@code{benchmark-init} provides a way to keep track of where
(package
(name "emacs-benchmark-init")
(version "1.1")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/dholm/benchmark-init-el")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "19375vamhld4xm2qrdmhlp2nczfvalmz9x6ahl23zwkilr8n1nbw"))))
(build-system emacs-build-system)
(home-page "https://github.com/dholm/benchmark-init-el")
(synopsis "Benchmark Emacs @code{require} and @code{load} calls")
(description "@code{benchmark-init} provides a way to keep track of where
time is being spent during Emacs startup in order to optimize startup time.")
(license license:gpl3+))))
(license license:gpl3+)))
(define-public emacs-magit-gerrit
(package
@ -29494,7 +29553,7 @@ programming in Emacs Lisp easy and fun.")
(base32 "1g0wc2kp15ra323b4rxvdh58q9c4h7m20grw6a0cs53m7l9xi62f"))))
(build-system emacs-build-system)
(propagated-inputs
(list emacs-fsm emacs-nadvice emacs-soap-client emacs-url-http-ntlm))
(list emacs-fsm emacs-soap-client emacs-url-http-ntlm))
(home-page "https://elpa.gnu.org/packages/excorporate.html")
(synopsis "Exchange integration")
(description "This package provides Exchange integration for Emacs.")
@ -30071,6 +30130,28 @@ a re-write of the Insidious Big Brother Database (BBDB) using Emacs
Lisp's (relatively new) EIEIO object oriented libraries.")
(license license:gpl3+)))
(define-public emacs-ebdb-i18n-chn
(package
(name "emacs-ebdb-i18n-chn")
(version "1.3.2")
(source
(origin
(method url-fetch)
(uri (string-append "https://elpa.gnu.org/packages/"
"ebdb-i18n-chn-" version ".tar"))
(sha256
(base32 "06ii9xi2y157vfbhx75mn80ash22d1xgcyp9kzz1s0lkxwlv74zj"))))
(build-system emacs-build-system)
(propagated-inputs (list emacs-ebdb emacs-pyim))
(home-page "https://elpa.gnu.org/packages/ebdb-i18n-chn.html")
(synopsis "China-specific internationalization support for EBDB")
(description
"EBDB-i18n-Chn makes EBDB nicer to use with China-based contacts, both
for handling Chinese characters, and for formatting of phones and addresses.
Be aware that using this library will incur a non-neglible slowdown at load
time. It shouldn't have any real impact on search and completion times.")
(license license:gpl3+)))
(define-public emacs-refactor
(package
(name "emacs-refactor")
@ -34072,6 +34153,53 @@ wraps GNU Global calls and integration to editor using this API with
project.el and xref.el.")
(license license:gpl3+))))
(define-public emacs-citre
(package
(name "emacs-citre")
(version "0.3.1")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/universal-ctags/citre/")
(commit (string-append "v" version))))
(sha256
(base32 "168z6yidh2nxkmdlx9cqdzzb7achxdipnbk5pj9787m9bp1sdpkd"))
(file-name (git-file-name name version))))
(build-system emacs-build-system)
(arguments
(list
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'set-external-programs
(lambda* (#:key inputs #:allow-other-keys)
(emacs-substitute-variables "citre-ctags.el"
("citre-ctags-program"
;; XXX: Do not use SEARCH-INPUT-FILE in this place, for it
;; will get ctags of emacs-minimal instead of
;; universal-ctags.
(string-append #$(this-package-input "universal-ctags")
"/bin/ctags")))
(emacs-substitute-variables "citre-readtags.el"
("citre-readtags-program"
(search-input-file inputs "/bin/readtags")))
(emacs-substitute-variables "citre-global.el"
("citre-gtags-program"
(search-input-file inputs "/bin/gtags")))
(emacs-substitute-variables "citre-global.el"
("citre-global-program"
(search-input-file inputs "/bin/global"))))))))
(inputs (list global universal-ctags))
(home-page "https://github.com/universal-ctags/citre")
(synopsis "Ctags IDE on Emacs")
(description
"Citre is an advanced Ctags (or actually, readtags) frontend for
Emacs. It offers Completion At Point, Xref and Imenu integration. It also
provides a Completing Read UI for jumping to definition and a powerful code
reading tool that lets you go down the rabbit hole without leaving current
buffer.")
(license license:gpl3+)))
(define-public emacs-seq
(package
(name "emacs-seq")

View File

@ -25,8 +25,8 @@
#:use-module (gnu packages boost)
#:use-module (gnu packages check)
#:use-module (gnu packages glib)
#:use-module (gnu packages hunspell)
#:use-module (gnu packages icu4c)
#:use-module (gnu packages libreoffice)
#:use-module (gnu packages man)
#:use-module (gnu packages perl)
#:use-module (gnu packages pkg-config)

View File

@ -943,7 +943,7 @@ Emacs).")
(define-public kicad
(package
(name "kicad")
(version "6.0.9")
(version "6.0.10")
(source (origin
(method git-fetch)
(uri (git-reference
@ -951,7 +951,7 @@ Emacs).")
(commit version)))
(sha256
(base32
"1fr02jcy09v14d3k8ril0zhwnzhcqcf77wfj5b3bkrh6r8xraqhs"))
"0pz8d96imc0q3nh7npr5zf0jkzi94wchvw57spcrgqfac9yrld3q"))
(file-name (git-file-name name version))))
(build-system cmake-build-system)
(arguments
@ -1050,7 +1050,7 @@ electrical diagrams), gerbview (viewing Gerber files) and others.")
(file-name (git-file-name name version))
(sha256
(base32
"04idpdzz2rfp8v1a37if01l5dfjnjg6jxp90gkgyadjzqkp6kcv3"))))
"06aw8f1pnh63dscv2bkii0cpr2m5yc4baka3avszsxnv8mqn0hwx"))))
(build-system cmake-build-system)
(arguments
`(#:configure-flags (list "-DBUILD_FORMATS=html")
@ -1084,7 +1084,7 @@ electrical diagrams), gerbview (viewing Gerber files) and others.")
(file-name (git-file-name name version))
(sha256
(base32
"0y5mjjmmln37hkp9wmydinlfgrn8im8rn20145g9xgdpj8j38d48"))))
"1fwnr8x345jbifk71rhyd4b88c4ijp2rcw3pmivnwfb444hbr1lp"))))
(build-system cmake-build-system)
(arguments
`(#:tests? #f)) ; no tests exist
@ -1113,7 +1113,7 @@ libraries.")
(file-name (git-file-name name version))
(sha256
(base32
"02j445i0kcf87fhj9y6pwfcwq3arppxbrv77lbizm8kcpkpcfldl"))))
"1rs05n1wjb2w3x7xqkkijbdxyw3fj0fph8znvnsxp9bgwaaipd4h"))))
(synopsis "Official KiCad footprint libraries")
(description "This package contains the official KiCad footprint libraries.")))
@ -1130,7 +1130,7 @@ libraries.")
(file-name (git-file-name name version))
(sha256
(base32
"0cnrg7mr3khpglviid1adk2ihs1qwj0r7l32z2vqsl8aidzbg9kr"))))
"0nmvfchp25i4bkx6yf7fz1rwy7w6whj2w7mlp02ag3w5v4f137vz"))))
(synopsis "Official KiCad 3D model libraries")
(description "This package contains the official KiCad 3D model libraries.")))
@ -1629,7 +1629,7 @@ bindings for Python, Java, OCaml and more.")
`(#:phases
(modify-phases %standard-phases
(add-after 'unpack 'chdir-and-fix-setup-py
(lambda _
(lambda* (#:key inputs #:allow-other-keys)
(chdir "bindings/python")
;; Do not build the library again, because we already have it.
(substitute* "setup.py" ((".* build_libraries.*") ""))
@ -1637,8 +1637,13 @@ bindings for Python, Java, OCaml and more.")
;; library.
(substitute* "capstone/__init__.py"
(("pkg_resources.resource_filename.*")
(string-append "'" (assoc-ref %build-inputs "capstone") "/lib',\n")))
#t)))))))
(string-append "'" (dirname (search-input-file
inputs "lib/libcapstone.so"))
"',\n")))))
(replace 'check
(lambda* (#:key tests? #:allow-other-keys)
(when tests?
(invoke "make" "check")))))))))
(define-public python-esptool-3.0

View File

@ -1236,7 +1236,7 @@ with the included @command{xfstests-check} helper.")
(define-public zfs
(package
(name "zfs")
(version "2.1.6")
(version "2.1.7")
(outputs '("out" "module" "src"))
(source
(origin
@ -1245,7 +1245,7 @@ with the included @command{xfstests-check} helper.")
"/download/zfs-" version
"/zfs-" version ".tar.gz"))
(sha256
(base32 "0ymxkms1gwf731x61sj54rnnp029724zhywkxd4164yjz0a90cqm"))))
(base32 "06x7mjsgqdl1gqyn0gniklphh6i0fgbnxyjgqq8gzrjx30zfcqk4"))))
(build-system linux-module-build-system)
(arguments
(list

View File

@ -121,9 +121,12 @@
;; Use our own tool chain for that.
(native-inputs `(("cross-gcc" ,(cross-gcc
"xtensa-elf"
#:xbinutils (cross-binutils "xtensa-elf"
binutils-2.33)))
("cross-binutils" ,(cross-binutils "xtensa-elf" binutils-2.33))
#:xbinutils (cross-binutils
"xtensa-elf"
#:binutils binutils-2.33)))
("cross-binutils" ,(cross-binutils
"xtensa-elf"
#:binutils binutils-2.33))
("cmake" ,cmake-minimal)
("perl" ,perl)))
(home-page "https://wireless.wiki.kernel.org/en/users/Drivers/ath9k_htc")

View File

@ -94,12 +94,12 @@
#:use-module (gnu packages graphviz)
#:use-module (gnu packages gstreamer)
#:use-module (gnu packages gtk)
#:use-module (gnu packages hunspell)
#:use-module (gnu packages ibus)
#:use-module (gnu packages image)
#:use-module (gnu packages kde-frameworks)
#:use-module (gnu packages language)
#:use-module (gnu packages libffi)
#:use-module (gnu packages libreoffice)
#:use-module (gnu packages libunwind)
#:use-module (gnu packages libusb)
#:use-module (gnu packages linux)
@ -995,6 +995,66 @@ backends, PackageKit can perform these tasks using the appropriate package
manager for the current system.")
(license license:gpl2+)))
(define-public power-profiles-daemon
(package
(name "power-profiles-daemon")
(version "0.12")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://gitlab.freedesktop.org/hadess/power-profiles-daemon")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32
"1wqcajbj358zpyj6y4h1v34y2yncq76wqxd0jm431habcly0bqyr"))))
(build-system meson-build-system)
(arguments
(list #:configure-flags #~(list "-Dsystemdsystemunitdir=false")
#:glib-or-gtk? #t
#:phases
#~(modify-phases %standard-phases
(add-before 'install 'fake-pkexec
(lambda _ (setenv "PKEXEC_UID" "-1")))
(add-before 'configure 'correct-polkit-dir
(lambda _
(substitute* "meson.build"
(("polkit_gobject_dep\\..*")
(string-append "'" #$output "/share/polkit-1/actions'")))))
(add-after 'install 'wrap-program
(lambda _
(wrap-program
(string-append #$output "/bin/powerprofilesctl")
`("GUIX_PYTHONPATH" = (,(getenv "GUIX_PYTHONPATH")))
`("GI_TYPELIB_PATH" = (,(getenv "GI_TYPELIB_PATH")))))))))
(native-inputs
(list `(,glib "bin") gobject-introspection pkg-config python vala))
(inputs
(list bash-minimal ;for 'wrap-program'
dbus
dbus-glib
libgudev
glib polkit
python
python-pygobject
upower))
(home-page "https://gitlab.freedesktop.org/hadess/power-profiles-daemon")
(synopsis "Power profile handling over D-Bus")
(description
"power-profiles-daemon offers to modify system behaviour based upon
user-selected power profiles. There are 3 different power profiles, a
\"balanced\" default mode, a \"power-saver\" mode, as well as a
\"performance\" mode. The first 2 of those are available on every system.
The \"performance\" mode is only available on select systems and is
implemented by different \"drivers\" based on the system or systems it
targets. In addition to those 2 or 3 modes (depending on the system),
\"actions\" can be hooked up to change the behaviour of a particular device.
For example, this can be used to disable the fast-charging for some USB
devices when in power-saver mode.")
(license license:gpl3)))
(define-public python-libevdev
(package
(name "python-libevdev")
@ -1282,7 +1342,7 @@ compositor.")
mtdev
linux-pam
pango
pipewire-0.3
pipewire
wayland-protocols-next
xorg-server-xwayland))
(propagated-inputs
@ -2500,6 +2560,40 @@ Currently supported:
@end itemize")
(license license:isc)))
(define-public flatpak-xdg-utils
(package
(name "flatpak-xdg-utils")
(version "1.0.5")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/flatpak/flatpak-xdg-utils")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32
"1q8wsc46fcjm737hz10jvgci5wl9sz8hj9aix2y2zdj11bqib9af"))))
(build-system meson-build-system)
(arguments
(list #:phases #~(modify-phases %standard-phases
(replace 'check
(lambda* (#:key tests? #:allow-other-keys)
(when tests?
(invoke "dbus-run-session" "--" "meson" "test"
"--print-errorlogs")))))))
(inputs (list glib))
(native-inputs (list dbus pkg-config))
(synopsis
"Simple portal-based commandline tools for use inside sandboxes")
(description
"This package contains a number of commandline utilities for use inside
Flatpak sandboxes and other containers, like @command{guix shell --container}.
They work by talking to portals. Currently, there is flatpak-spawn for
running commands in sandboxes as well as xdg-open and xdg-email, which are
compatible with the well-known scripts of the same name.")
(home-page "https://github.com/flatpak/flatpak-xdg-utils")
(license (list license:lgpl2.0+ license:lgpl2.1+))))
(define-public libportal
(package
(name "libportal")
@ -2569,7 +2663,7 @@ Currently supported:
("libportal" ,libportal)
("dbus" ,dbus)
("geoclue" ,geoclue)
("pipewire" ,pipewire-0.3)
("pipewire" ,pipewire)
("fuse" ,fuse-3)))
(arguments
`(#:configure-flags
@ -2742,7 +2836,7 @@ for xdg-desktop-portal that is using Qt/KF5.")
grim
iniparser
libinih
pipewire-0.3
pipewire
slurp
wayland
wayland-protocols))

View File

@ -17,7 +17,7 @@
;;; Copyright © 2019 Pierre Neidhardt <mail@ambrevar.xyz>
;;; Copyright © 2019, 2020, 2021 Liliana Marie Prikler <liliana.prikler@gmail.com>
;;; Copyright © 2019 Jethro Cao <jethrocao@gmail.com>
;;; Copyright © 2020-2022 Nicolas Goaziou <mail@nicolasgoaziou.fr>
;;; Copyright © 2020-2023 Nicolas Goaziou <mail@nicolasgoaziou.fr>
;;; Copyright © 2020 Timotej Lazar <timotej.lazar@araneo.si>
;;; Copyright © 2020 Giacomo Leidi <goodoldpaul@autistici.org>
;;; Copyright © 2021 Alexandru-Sergiu Marton <brown121407@posteo.ro>
@ -2390,29 +2390,30 @@ a.k.a. XenoCollide) as described in Game Programming Gems 7.")
(define-public ode
(package
(name "ode")
(version "0.16.2")
(version "0.16.3")
(source
(origin
(method url-fetch)
(uri (string-append "https://bitbucket.org/odedevs/ode/downloads/"
"ode-" version ".tar.gz"))
(sha256
(base32 "08hgh4gqdk77jcw8b7gq2mwsfg4a5v5y0j7g42bxiqhmn3ffnsmj"))
(base32 "04y40czkh71m1p2r8ddfn5bajvlh7yyfa928jvi8qipwkgsdnhf7"))
(modules '((guix build utils)))
(snippet
'(begin
(delete-file-recursively "libccd")
#t))))
(delete-file-recursively "libccd")))))
(build-system cmake-build-system)
(arguments
`(#:configure-flags '("-DODE_WITH_LIBCCD_SYSTEM=ON")
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'unbundle-libccd
(lambda _
(substitute* "CMakeLists.txt"
(("configure_file\\(libccd/.*") ""))
#t)))))
(list
;; XXX: The sole test is failing on i686 due to a rounding error.
#:tests? (not (target-x86-32?))
#:configure-flags #~(list "-DODE_WITH_LIBCCD_SYSTEM=ON")
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'unbundle-libccd
(lambda _
(substitute* "CMakeLists.txt"
(("configure_file\\(libccd/.*") "")))))))
(inputs
(list glu libccd mesa))
(home-page "https://www.ode.org/")

View File

@ -74,6 +74,7 @@
;;; Copyright © 2022 Gabriel Arazas <foo.dogsquared@gmail.com>
;;; Copyright © 2022 Maxim Cournoyer <maxim.cournoyer@gmail.com>
;;; Copyright © 2022 Hendursaga <hendursaga@aol.com>
;;; Copyright © 2022 Parnikkapore <poomklao@yahoo.com>
;;;
;;; This file is part of GNU Guix.
;;;
@ -9100,7 +9101,7 @@ levels to unlock.")
(define simgear
(package
(name "simgear")
(version "2020.3.11")
(version "2020.3.17")
(source
(origin
(method url-fetch)
@ -9108,7 +9109,7 @@ levels to unlock.")
(version-major+minor version) "/"
"simgear-" version ".tar.bz2"))
(sha256
(base32 "0g2g3n3sb6kdimvcrn9kvlhyyrp5c6lx20fgzz8l609v5aygr3dv"))
(base32 "0z1pkxs4fw8xkiainxgcpayhmn0b4c0sc2j6q88x66zzvk89qpjc"))
(modules '((guix build utils)))
(snippet
'(begin
@ -9153,7 +9154,7 @@ and also provides the base for the FlightGear Flight Simulator.")
(version-major+minor version) "/"
"flightgear-" version ".tar.bz2"))
(sha256
(base32 "15sar94x13j2y1m6adgmz2q1m1i9bzj3sxqla6y3m9vyf33hc9zy"))
(base32 "0m0qbyf9i84avkfmjm1a5bijl1nqs7wnpw7rfz53ls52mkgdww36"))
(modules '((guix build utils)))
(snippet
'(begin
@ -9216,7 +9217,7 @@ and also provides the base for the FlightGear Flight Simulator.")
(native-inputs
`(("cppunit" ,cppunit)
("pkg-config" ,pkg-config)
("qttools-5" ,qttools-5)
("qttools" ,qttools-5)
("flightgear-data"
,(origin
(method url-fetch)
@ -9225,7 +9226,7 @@ and also provides the base for the FlightGear Flight Simulator.")
"FlightGear-" version "-data.txz"))
(sha256
(base32
"0n5mw9vw1snab16c1y3i9ylkiv54az57bs2mvpq20hhg5hdiagqj"))))))
"1s6qahfia3llghfqgx990brg7gbb7z7accsq528kcyp6k8mvlpia"))))))
(home-page "https://www.flightgear.org/")
(synopsis "Flight simulator")
(description "The goal of the FlightGear project is to create a

View File

@ -1468,16 +1468,16 @@ map, geocoding with Nominatim, or general analysis.")
(define-public tippecanoe
(package
(name "tippecanoe")
(version "1.36.0")
(version "2.17.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/mapbox/tippecanoe")
(url "https://github.com/felt/tippecanoe")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "0lbmhly4ivnqc6qk1k3sdqvsg6x3nfd8gnjx846bhqj4wag3f88m"))))
(base32 "1q2snvsbs10l9pjydid3zxkidlha5hav8gvb0p731m2pwg3xw0qr"))))
(build-system gnu-build-system)
(arguments
`(#:phases

View File

@ -11,6 +11,7 @@
;;; Copyright © 2019 Miguel <rosen644835@gmail.com>
;;; Copyright © 2020 Jan (janneke) Nieuwenhuizen <janneke@gnu.org>
;;; Copyright © 2020 EuAndreh <eu@euandre.org>
;;; Copyright © 2022 gemmaro <gemmaro.dev@gmail.com>
;;;
;;; This file is part of GNU Guix.
;;;
@ -36,6 +37,7 @@
#:use-module (guix build-system gnu)
#:use-module (guix build-system perl)
#:use-module (guix build-system python)
#:use-module (gnu packages bash)
#:use-module (gnu packages check)
#:use-module (gnu packages docbook)
#:use-module (gnu packages emacs)
@ -239,14 +241,14 @@ from Markdown files.")
(define-public po4a
(package
(name "po4a")
(version "0.63")
(version "0.68")
(source (origin
(method url-fetch)
(uri (string-append "https://github.com/mquinson/po4a/releases/download/v"
version "/po4a-" version ".tar.gz"))
(sha256
(base32
"1kmlfpdl1i1wrcdn0k1frh44fq10sfwswi3azvibli2lakpf66z2"))))
"045i8izp2dqmkdzvnxyy5sy27ffrwl85dk8n6cmg1804ikk28qdg"))))
(build-system perl-build-system)
(arguments
`(#:phases
@ -257,9 +259,21 @@ from Markdown files.")
;; required by this package at runtime.
(let* ((out (assoc-ref outputs "out"))
(bin (string-append out "/bin/"))
(Pod::Parser (assoc-ref inputs "perl-pod-parser"))
(path (string-append out "/lib/perl5/site_perl:"
Pod::Parser "/lib/perl5/site_perl")))
(string-join
(map (lambda (name)
(string-append (assoc-ref inputs name)
"/lib/perl5/site_perl"))
(list "perl-gettext"
"perl-pod-parser"
"perl-sgmls"
"perl-syntax-keyword-try"
"perl-xs-parse-keyword"
"perl-term-readkey"
"perl-text-wrapi18n"
"perl-unicode-linebreak"
"perl-yaml-tiny"))
":"))))
(for-each (lambda (file)
(wrap-program file
`("PERL5LIB" ":" prefix (,path))))
@ -272,23 +286,10 @@ from Markdown files.")
(string-append (assoc-ref inputs "docbook-xml")
"/xml/dtd/docbook/")))
#t))
(add-before 'build 'do-not-override-PERL5LIB
(lambda _
;; Don't hard-code PERL5LIB to include just the build directory
;; so that the build script finds modules from inputs.
(substitute* "Po4aBuilder.pm"
(("PERL5LIB=lib") ""))
(setenv "PERL5LIB" (string-append (getenv "PERL5LIB") ":lib"))))
(add-before 'check 'disable-failing-tests
(lambda _
;; FIXME: these tests require SGMLS.pm.
(delete-file "t/01-classes.t")
(delete-file "t/add.t")
(delete-file "t/core-porefs.t")
(delete-file "t/fmt-asciidoc.t")
;; FIXME: fails despite of importing SGMLS
(delete-file "t/fmt-sgml.t")
#t)))))
(native-inputs
`(("gettext" ,gettext-minimal)
@ -300,10 +301,18 @@ from Markdown files.")
;; For tests.
("docbook-xml" ,docbook-xml-4.1.2)
("perl-test-pod" ,perl-test-pod)
("perl-yaml-tiny" ,perl-yaml-tiny)
("texlive" ,texlive-tiny)))
(inputs
(list perl-pod-parser))
(list bash-minimal
perl-gettext
perl-pod-parser
perl-sgmls
perl-syntax-keyword-try
perl-xs-parse-keyword
perl-term-readkey
perl-text-wrapi18n
perl-unicode-linebreak
perl-yaml-tiny))
(home-page "https://po4a.org/")
(synopsis "Scripts to ease maintenance of translations")
(description

View File

@ -3,7 +3,7 @@
;;; Copyright © 2016, 2018 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2016, 2017, 2018, 2020 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2018, 2019, 2020 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2018, 2020 Leo Famulari <leo@famulari.name>
;;; Copyright © 2018 Leo Famulari <leo@famulari.name>
;;; Copyright © 2018 Thorsten Wilms <t_w_@freenet.de>
;;; Copyright © 2020 Marius Bakke <mbakke@fastmail.com>
;;; Copyright © 2020 Michael Rohleder <mike@rohleder.de>
@ -550,97 +550,3 @@ tools for healing selections (content-aware fill), enlarging the canvas and
healing the border, increasing the resolution while adding detail, and
transferring the style of an image.")
(license license:gpl3+)))
(define gegl-for-glimpse
;; Remove this when GIMP commit 2cae9b9acf9da98c4c9990819ffbd5aabe23017e
;; makes it into Glimpse.
(package
(inherit gegl)
(arguments
(substitute-keyword-arguments (package-arguments gegl)
((#:phases phases)
`(modify-phases ,phases
(add-after 'unpack 'refer-to-dot
;; XXX Without dot in $PATH, Glimpse would fail to start with an
;; extremely obtuse GEGL operation missing! error.
(lambda _
(substitute* "gegl/gegl-dot.c"
(("\"dot ")
(format #f "\"~a " (which "dot"))))
(substitute* "operations/common/introspect.c"
(("g_find_program_in_path \\(\"dot\"\\)")
(format #f "g_strdup (\"~a\")" (which "dot"))))))))))
(inputs
`(,@(package-inputs gegl)
("graphviz" ,graphviz)))))
(define-public glimpse
(package
(name "glimpse")
(version "0.2.0")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/glimpse-editor/Glimpse")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
"0drngj2xqzxfaag6pc4xjffiw003n4y43x5rb5bf4ziv1ac51dm9"))))
(build-system gnu-build-system)
(outputs '("out"
"doc")) ; 9 MiB of gtk-doc HTML
(arguments
(list
#:configure-flags
#~(list
(string-append "--with-html-dir=" #$output "/share/gtk-doc/html")
"--enable-gtk-doc"
;; Prevent the build system from running 'gtk-update-icon-cache'
;; which is not needed during the build because Guix runs it at
;; profile creation time.
"ac_cv_path_GTK_UPDATE_ICON_CACHE=true"
;; Disable automatic network request on startup to check for
;; version updates.
"--disable-check-update"
;; ./configure requests not to annoy upstream with packaging bugs.
"--with-bug-report-url=https://bugs.gnu.org/guix")))
(native-inputs
(list autoconf
automake
gtk-doc
intltool
libtool
libxslt ;for xsltproc
pkg-config
`(,glib "bin"))) ;for gdbus-codegen
(inputs
(list babl
glib
glib-networking
libtiff
libwebp
libjpeg-turbo
atk
gexiv2
gtk+-2
libmypaint
mypaint-brushes-1.3
libexif ;optional, EXIF + XMP support
lcms ;optional, color management
librsvg ;optional, SVG support
libxcursor ;optional, Mouse Cursor support
poppler ;optional, PDF support
poppler-data
gegl-for-glimpse)) ;XXX see comment in gegl-for-glimpse
(home-page "https://glimpse-editor.github.io/")
(synopsis "Glimpse Image Editor")
(description "The Glimpse Image Editor is an application for image
manipulation tasks such as photo retouching, composition and authoring.
It supports all common image formats as well as specialized ones. It
features a highly customizable interface that is extensible via a plugin
system. It was forked from the GNU Image Manipulation Program.")
(license license:gpl3+)))

View File

@ -1530,6 +1530,47 @@ used in text editing environments to provide a complete and integrated
feature-set for programming Vala effectively.")
(license license:lgpl2.1+)))
(define-public yaru-theme
(package
(name "yaru-theme")
(version "22.10.3")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/ubuntu/yaru")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32
"0f052a5cyf4lijyrdp4kjvxrx6d5fbj7109pi2bhxs9lk5jy8z86"))))
(build-system meson-build-system)
(native-inputs
(list python sassc pkg-config `(,glib "bin") `(,gtk+ "bin")))
(arguments
(list #:configure-flags #~'("-Dmate=true"
"-Dmate-dark=true"
"-Dxfwm4=true"
"-Dmetacity=true"
"-Dsessions=false")))
(home-page "https://github.com/ubuntu/yaru")
(synopsis "Ubuntu community theme yaru")
(description "Yaru is the default theme for Ubuntu.
It contains:
@itemize
@item a GNOME Shell theme based on the upstream GNOME shell theme
@item a light and dark GTK theme (gtk2 and gtk3) based on the upstream Adwaita
Gtk theme
@item an icon & cursor theme, derived from the Unity8 Suru icons and Suru icon
theme
@item a sound theme, combining sounds from the WoodenBeaver and Touch-Remix
sound themes.
@end itemize")
(license (list license:lgpl2.1 license:lgpl3 license:cc-by-sa4.0))))
(define-public nordic-theme
(let ((commit "07d764c5ebd5706e73d2e573f1a983e37b318915")
(revision "0"))

View File

@ -11,7 +11,7 @@
;;; Copyright © 2015, 2016, 2017, 2018, 2019, 2020 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2015, 2016, 2017, 2018, 2021 Mark H Weaver <mhw@netris.org>
;;; Copyright © 2015 David Thompson <davet@gnu.org>
;;; Copyright © 2015-2022 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2015-2023 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2016, 2017, 2018 Rene Saavedra <pacoon@protonmail.com>
;;; Copyright © 2016 Jochem Raat <jchmrt@riseup.net>
;;; Copyright © 2016, 2017, 2019 Kei Kebreau <kkebreau@posteo.net>
@ -7429,6 +7429,47 @@ principles are simplicity and standards compliance.")
of running programs and invoke methods on those interfaces.")
(license license:gpl2+)))
(define-public d-spy
(package
(name "d-spy")
(version "1.4.0")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnome/sources/" name "/"
(version-major+minor version) "/"
name "-" version ".tar.xz"))
(sha256
(base32
"0wk7i3vyq4a98g29ms7vz3wy8xkk3pgw48g0fm65qk32xa679s7a"))))
(build-system meson-build-system)
(arguments
(list
#:glib-or-gtk? #t
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'skip-gtk-update-icon-cache
;; Don't create 'icon-theme.cache'.
(lambda _
(substitute* "meson.build"
(("gtk_update_icon_cache: true")
"gtk_update_icon_cache: false")))))))
(native-inputs
(list desktop-file-utils ; for update-desktop-database
`(,glib "bin")
gettext-minimal
gobject-introspection
pkg-config))
(inputs
(list gtk
libadwaita))
(home-page "https://gitlab.gnome.org/GNOME/d-spy")
(synopsis "D-Bus debugger")
(description
"D-Spy is a tool to explore and test end-points and interfaces of running
programs via D-Bus. It also ships a library for integration into development
environments.")
(license license:gpl2+)))
(define-public yelp-xsl
(package
(name "yelp-xsl")
@ -8077,7 +8118,7 @@ to display dialog boxes from the commandline and shell scripts.")
;; theme to please libxcursor.
adwaita-icon-theme
libxcursor ;for XCURSOR_PATH
pipewire-0.3
pipewire
python
python-dbus
python-dbusmock
@ -8119,7 +8160,7 @@ to display dialog boxes from the commandline and shell scripts.")
libxkbfile
libxrandr
libxtst
pipewire-0.3
pipewire
startup-notification
sysprof
upower
@ -9571,6 +9612,9 @@ easy, safe, and automatic.")
(build-system meson-build-system)
(arguments
`(#:glib-or-gtk? #t
#:test-options (list ,@(if (target-riscv64?)
`("--timeout-multiplier" "5")
'()))
#:configure-flags
;; Otherwise, the RUNPATH will lack the final path component.
(list (string-append "-Dc_link_args=-Wl,-rpath="
@ -9596,12 +9640,12 @@ easy, safe, and automatic.")
(("/etc/asciidoc[^']+")
file)))))
(replace 'check
(lambda* (#:key tests? #:allow-other-keys)
(lambda* (#:key tests? test-options #:allow-other-keys)
(when tests?
;; Some tests expect to write to $HOME.
(setenv "HOME" "/tmp")
(invoke "dbus-run-session" "--" "meson" "test"
"--print-errorlogs")))))))
(apply invoke "dbus-run-session" "--" "meson" "test"
"--print-errorlogs" test-options)))))))
(native-inputs
(list gettext-minimal
`(,glib "bin")
@ -13160,7 +13204,7 @@ profiler via Sysprof, debugging support, and more.")
(define-public komikku
(package
(name "komikku")
(version "1.6.1")
(version "1.7.0")
(source
(origin
(method git-fetch)
@ -13170,7 +13214,7 @@ profiler via Sysprof, debugging support, and more.")
(file-name (git-file-name name version))
(sha256
(base32
"0ppd9cl16zwqsmpy0pry43qsfrm2xal77y4339qwbnas74gcl1wh"))))
"0pgls9lfmgx1wgk7navvr44hdp6ziac19979lkqw2a09jn8y6xxa"))))
(build-system meson-build-system)
(arguments
(list

View File

@ -70,8 +70,8 @@
#:use-module (gnu packages compression)
#:use-module (gnu packages fontutils)
#:use-module (gnu packages fonts)
#:use-module (gnu packages hunspell)
#:use-module (gnu packages libevent)
#:use-module (gnu packages libreoffice) ;for hunspell
#:use-module (gnu packages image)
#:use-module (gnu packages libffi)
#:use-module (gnu packages pulseaudio)

View File

@ -2,6 +2,7 @@
;;; Copyright © 2019, 2020, 2021 Pierre Langlois <pierre.langlois@gmx.com>
;;; Copyright © 2020, 2021 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2021 Stefan Reichör <stefan@xsteve.at>
;;; Copyright © 2022 Maxim Cournoyer <maxim.cournoyer@gmail.com>
;;;
;;; This file is part of GNU Guix.
;;;
@ -49,7 +50,7 @@
(define-public gpodder
(package
(name "gpodder")
(version "3.10.21")
(version "3.11.0")
(source
(origin
(method git-fetch)
@ -57,7 +58,7 @@
(url "https://github.com/gpodder/gpodder")
(commit version)))
(sha256
(base32 "0n73jm5ypsj962gpr0dk10lqh83giqsczm63wchyhmrkyf1wgga1"))
(base32 "1387n0kgpan869c09smq5jnc3316vz8majl9bw01bw7cxg4vss3p"))
(file-name (git-file-name name version))
(patches (search-patches "gpodder-disable-updater.patch"))))
(build-system python-build-system)
@ -213,27 +214,31 @@ in Python.")
(license license:isc)))
(define-public castget
(package
(name "castget")
(version "2.0.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/mlj/castget")
(commit (string-append "rel_" (string-replace-substring
version "." "_")))))
(sha256
(base32 "1129x64rw587q3sdpa3lrgs0gni5f0siwbvmfz8ya4zkbhgi2ik7"))
(file-name (git-file-name name version))))
(build-system gnu-build-system)
(native-inputs
(list autoconf automake libtool pkg-config ronn-ng))
(inputs (list curl glib id3lib libxml2))
(synopsis "Command line podcast downloader")
(description
"castget is a simple, command-line based RSS enclosure downloader. It is
;; Since ronn-ng uses a newer ruby-nokogiri, the test suite would fail on a
;; free call with the error: "free(): invalid pointer". Use the latest
;; commit, which is immune to that problem.
(let ((revision "0")
(commit "da9727de1b9e4e636be21bf07c73eb41f5d8439b"))
(package
(name "castget")
(version (git-version "2.0.0" revision commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/mlj/castget")
(commit commit)))
(sha256
(base32 "0d5ji21af5mfj1xa90v4hp104c1ipy076175kp7nzz1c4sxdadff"))
(file-name (git-file-name name version))))
(build-system gnu-build-system)
(native-inputs
(list autoconf automake libtool pkg-config ronn-ng))
(inputs (list curl glib taglib libxml2))
(synopsis "Command line podcast downloader")
(description
"castget is a simple, command-line based RSS enclosure downloader. It is
primarily intended for automatic, unattended downloading of podcasts. It uses
libcurl for the download process.")
(license license:lgpl2.1+)
(home-page "https://castget.johndal.com")))
(license license:lgpl2.1+)
(home-page "https://castget.johndal.com"))))

View File

@ -295,7 +295,7 @@ subplots, multiple-axes, polar charts, and bubble charts.")
(base32 "0sx53l555rwq0z7if8agirjgw4ddp8r9b949wwz8vlig03sjvfmp"))))
(build-system python-build-system)
(native-inputs
(list python-setuptools)) ;for use_2to3 support
(list python-setuptools-57)) ;for use_2to3 support
(propagated-inputs
(list python-networkx python-numpy))
(home-page "https://github.com/taynaud/python-louvain")

View File

@ -1,9 +1,9 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2012-2022 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2012-2023 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2014, 2015, 2018 Mark H Weaver <mhw@netris.org>
;;; Copyright © 2015, 2017, 2022 Christine Lemmer-Webber <cwebber@dustycloud.org>
;;; Copyright © 2016 Alex Sassmannshausen <alex@pompo.co>
;;; Copyright © 2016, 2017, 2018, 2019, 2020, 2021, 2022 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2016-2023 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2016 Erik Edrosa <erik.edrosa@gmail.com>
;;; Copyright © 2016, 2019, 2020, 2021 Eraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2016, 2017, 2021 Alex Kost <alezost@gmail.com>
@ -17,7 +17,7 @@
;;; Copyright © 2017 Nikita <nikita@n0.is>
;;; Copyright © 2017, 2018, 2021 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2018, 2021, 2022 Maxim Cournoyer <maxim.cournoyer@gmail.com>
;;; Copyright © 2018, 2019, 2020, 2021, 2022 Arun Isaac <arunisaac@systemreboot.net>
;;; Copyright © 2018, 2019, 2020, 2021, 2022, 2023 Arun Isaac <arunisaac@systemreboot.net>
;;; Copyright © 2018 Pierre-Antoine Rouby <pierre-antoine.rouby@inria.fr>
;;; Copyright © 2018 Eric Bavier <bavier@member.fsf.org>
;;; Copyright © 2019 swedebugia <swedebugia@riseup.net>
@ -934,7 +934,7 @@ that augment Guile's support for handling files and their names.")
(define-public guile-syntax-highlight
(package
(name "guile-syntax-highlight")
(version "0.1")
(version "0.2.0")
(source (origin
(method url-fetch)
(uri (string-append "https://files.dthompson.us/"
@ -943,15 +943,7 @@ that augment Guile's support for handling files and their names.")
version ".tar.gz"))
(sha256
(base32
"1p771kq15x83483m23bhah1sz6vkalg3drm7x279f4j1cxligkzi"))
(modules '((guix build utils)))
(snippet
'(begin
;; Allow builds with Guile 3.0.
(substitute* "configure"
(("2\\.2 2\\.0")
"3.0 2.2 2.0"))
#t))))
"0q4nz10l66hx1lyf83qyhkkz1bi6i860662a7kslc4d61w08qnk9"))))
(build-system gnu-build-system)
(native-inputs
(list pkg-config))
@ -1483,25 +1475,26 @@ tracker's SOAP service, such as @url{https://bugs.gnu.org}.")
(define-public guile-email
(package
(name "guile-email")
(version "0.2.2")
(version "0.3.0")
(source
(origin
(method url-fetch)
(uri (string-append
"https://guile-email.systemreboot.net/releases/guile-email-"
version ".tar.lz"))
(method git-fetch)
(uri (git-reference
(url "https://git.systemreboot.net/guile-email")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
"1rc8r0fgvflnyq5ckl7ii8sghpsgpkzxa8vskjr1ak2kyar6m35k"))
(patches
(search-patches "guile-email-fix-tests.patch"))))
"0q98r460yr75gyxg06zrrixwazncd9nxl2pgr68mff2wf41f291h"))))
(build-system gnu-build-system)
(native-inputs
(list pkg-config lzip))
(list texinfo))
(inputs
(list guile-3.0))
(arguments
'(#:make-flags '("GUILE_AUTO_COMPILE=0"))) ; to prevent guild warnings
(list #:make-flags #~(list (string-append "prefix=" #$output))
#:phases #~(modify-phases %standard-phases
(delete 'configure))))
(home-page "https://guile-email.systemreboot.net")
(synopsis "Guile email parser")
(description "guile-email is a collection of email utilities implemented
@ -1527,6 +1520,7 @@ format.")
(sha256
(base32
"1g4rn7ai3nfxmpppc8qbpv8b18wnsld29y5xa58cv9b8pf3pbwnj"))))
(arguments '())
(native-inputs
(list pkg-config autoconf automake texinfo)))))
@ -1535,7 +1529,43 @@ format.")
(inherit guile-email)
(name "guile2.2-email")
(inputs (modify-inputs (package-inputs guile-email)
(replace "guile" guile-2.2)))))
(replace "guile" guile-2.2)))
(arguments
(substitute-keyword-arguments (package-arguments guile-email)
((#:make-flags make-flags '())
#~(cons "guile_effective_version=2.2"
#$make-flags))))))
(define-public guile-newra
;; There has been no release let.
(let ((commit "266e72ef433cab44f60f8595e2435247b225d457")
(revision "0"))
(package
(name "guile-newra")
(version (git-version "0" revision commit))
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://notabug.org/lloda/guile-newra")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32
"0g1fk6fp7ym54183bc9f6g5wqfazlkwwvb67swfi94j4sns0l9dk"))))
(build-system guile-build-system)
(arguments
(list
#:source-directory "mod"
#:compile-flags '(list "--r6rs")))
;; guile-3.0 fails to compile with --r6rs
(inputs (list guile-3.0-latest))
(home-page "https://notabug.org/lloda/guile-newra")
(synopsis "Scheme replacement for Guile's array system")
(description
"guile-newra (newra) wants to replace the current (3.0) Guile array
system, which is almost entirely implemented in C. The new implementation
should be at least as fast.")
(license license:gpl3+))))
(define-public guile-newt
(package
@ -2104,7 +2134,7 @@ users and in some situations.")
(define-public guile-udev
(package
(name "guile-udev")
(version "0.2.3")
(version "0.2.4")
(source (origin
(method git-fetch)
(uri (git-reference
@ -2113,22 +2143,19 @@ users and in some situations.")
(file-name (git-file-name name version))
(sha256
(base32
"0xvh4wscxmiqm8lnmfyh5cjzn89kv2wslkfvqvcjhinzpnpbg91x"))))
"1q1snj8gz2bvqw2v2jvwlzn5xfh7f7wlp922isnzismrp4adc918"))))
(build-system gnu-build-system)
(native-inputs
(list autoconf
automake
gettext-minimal
libtool
texinfo
pkg-config
which))
(inputs
(list guile-3.0 eudev))
(native-inputs (list autoconf
automake
gettext-minimal
libtool
texinfo
pkg-config
which))
(inputs (list guile-3.0 eudev))
(home-page "https://github.com/artyom-poptsov/guile-udev")
(synopsis "Guile bindings to libudev")
(description
"Guile-Udev provides GNU Guile bindings to libudev.")
(description "Guile-Udev provides GNU Guile bindings to libudev.")
(license license:gpl3+)))
(define-public guile-sly
@ -4685,7 +4712,7 @@ errors.")
(inputs
(list guile-3.0 avahi))
(native-inputs
(list autoconf automake libtool pkg-config texinfo))
(list autoconf automake libtool pkg-config texinfo guile-3.0))
(synopsis "Guile bindings to Avahi")
(description
"This package provides bindings for Avahi. It allows programmers to

View File

@ -17,13 +17,253 @@
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
(define-module (gnu packages hunspell)
#:use-module (guix build-system gnu)
#:use-module (guix build-system trivial)
#:use-module (guix download)
#:use-module (guix gexp)
#:use-module (guix git-download)
#:use-module ((guix licenses) #:prefix license:)
#:use-module (guix packages)
#:use-module (ice-9 match)
#:use-module (gnu packages libreoffice))
#:use-module (gnu packages aspell)
#:use-module (gnu packages autotools)
#:use-module (gnu packages base)
#:use-module (gnu packages compression)
#:use-module (gnu packages m4)
#:use-module (gnu packages perl)
#:use-module (gnu packages textutils))
(define-public hunspell
(package
(name "hunspell")
(version "1.7.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/hunspell/hunspell")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
"0qxlkd012r45ppd21kldbq9k5ac5nmxz290z6m2kch9l56v768k1"))))
(build-system gnu-build-system)
(native-inputs
(list autoconf automake libtool))
(inputs
(list perl))
(native-search-paths (list (search-path-specification
(variable "DICPATH")
(files '("share/hunspell")))))
(home-page "https://hunspell.github.io/")
(synopsis "Spell checker")
(description "Hunspell is a spell checker and morphological analyzer
library and program designed for languages with rich morphology and complex
word compounding or character encoding.")
;; Triple license, including "mpl1.1 or later".
(license (list license:mpl1.1 license:gpl2+ license:lgpl2.1+))))
(define (dicollecte-french-dictionary variant synopsis)
;; Return a French dictionary package from dicollecte.org, for the given
;; VARIANT.
(package
(name (match variant
("classique" "hunspell-dict-fr")
(_ (string-append "hunspell-dict-fr-" variant))))
(version "6.2")
(source (origin
(uri (string-append
"http://www.dicollecte.org/download/fr/hunspell-french-dictionaries-v"
version ".zip"))
(method url-fetch)
(sha256
(base32
"139hfrn5p87sl8hqmgkf6sgvnxrk2mm8vd8xsm8sm98qjnwlg0f9"))))
(build-system trivial-build-system)
(native-inputs (list unzip))
(arguments
`(#:modules ((guix build utils))
#:builder (begin
(use-modules (guix build utils)
(srfi srfi-26))
(let* ((out (assoc-ref %outputs "out"))
(hunspell (string-append out "/share/hunspell"))
(myspell (string-append out "/share/myspell"))
(doc (string-append out "/share/doc/"
,name))
(unzip (assoc-ref %build-inputs "unzip")))
(invoke (string-append unzip "/bin/unzip")
(assoc-ref %build-inputs "source"))
(for-each (cut install-file <> hunspell)
(find-files "."
,(string-append variant
"\\.(dic|aff)$")))
(mkdir-p myspell)
(symlink hunspell (string-append myspell "/dicts"))
(for-each (cut install-file <> doc)
(find-files "." "\\.(txt|org|md)$"))
#t))))
(synopsis synopsis)
(description
"This package provides a dictionary for the Hunspell spell-checking
library.")
(home-page "https://www.dicollecte.org/home.php?prj=fr")
(license license:mpl2.0)))
(define-syntax define-french-dictionary
(syntax-rules (synopsis)
((_ name variant (synopsis text))
(define-public name
(dicollecte-french-dictionary variant text)))))
(define-french-dictionary hunspell-dict-fr-classique
"classique"
;; TRANSLATORS: In French, this is "Français classique".
(synopsis "Hunspell dictionary for ``classic'' French (recommended)"))
(define-french-dictionary hunspell-dict-fr-moderne
"moderne"
;; TRANSLATORS: In French, this is "Français moderne".
(synopsis "Hunspell dictionary for ``modern'' French"))
(define-french-dictionary hunspell-dict-fr-réforme-1990
"reforme1990"
(synopsis "Hunspell dictionary for the post @dfn{1990 réforme} French"))
(define-french-dictionary hunspell-dict-fr-toutes-variantes
"toutesvariantes"
(synopsis "Hunspell dictionary for all variants of French"))
(define-public hunspell-dict-pl
(package
(name "hunspell-dict-pl")
(version "20200327")
(source
(origin
(method url-fetch)
;; Since creators of dictionary host only the latest daily release,
;; we're using version mirrored by Arch Linux, which seems good
;; enough. They're mirroring hunspell-pl releases since 2011.
(uri (string-append "https://sources.archlinux.org/other/community/"
"hunspell-pl/sjp-myspell-pl-"
version ".zip"))
(sha256 (base32
"14mzf8glxkp2775dcqisb1zv6r8ncm3bvzl46q352rwyl2dg1c59"))))
(build-system trivial-build-system)
(native-inputs (list unzip))
(arguments
`(#:modules ((guix build utils))
#:builder (begin
(use-modules (guix build utils)
(srfi srfi-26))
(let* ((out (assoc-ref %outputs "out"))
(hunspell (string-append out "/share/hunspell"))
(myspell (string-append out "/share/myspell"))
(doc (string-append out "/share/doc/"
,name))
(unzip (search-input-file %build-inputs
"/bin/unzip")))
(invoke unzip "-j" "-o" (assoc-ref %build-inputs "source"))
(invoke unzip "-j" "-o" "pl_PL.zip")
(for-each (cut install-file <> hunspell)
(find-files "."
,(string-append "pl_PL"
"\\.(dic|aff)$")))
(mkdir-p myspell)
(symlink hunspell (string-append myspell "/dicts"))
(for-each (cut install-file <> doc)
(find-files "." "\\.(txt|org|md)$"))
#t))))
(synopsis "Hunspell dictionary for Polish")
(description
"This package provides a dictionary for the Hunspell spell-checking
library.")
(home-page "https://sjp.pl/slownik/ort/")
(license
(list license:gpl2 license:mpl1.1 license:cc-by4.0 license:lgpl2.1 license:asl2.0))))
(define-public hunspell-dict-de
(package
(name "hunspell-dict-de")
(version "20161207")
(source
(origin
(method url-fetch)
(uri (string-append "https://www.j3e.de/ispell/igerman98/dict/"
"igerman98-" version ".tar.bz2"))
(sha256
(base32 "1a3055hp2bc4q4nlg3gmg0147p3a1zlfnc65xiv2v9pyql1nya8p"))))
(build-system gnu-build-system)
(arguments
`(#:make-flags '("hunspell/de_DE.dic")
#:phases
(modify-phases %standard-phases
(delete 'configure)
(replace 'install ;no install target
(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(share (string-append out "/share/hunspell/")))
(install-file "hunspell/de_DE.aff" share)
(install-file "hunspell/de_DE.dic" share)
#t))))
#:tests? #f)) ; no tests
(native-inputs
(list hunspell ispell perl))
(synopsis "Hunspell dictionary for German (de_DE)")
(description "This package provides a dictionary for the Hunspell
spell-checking library.")
(home-page "https://www.j3e.de/ispell/igerman98/")
(license (list license:gpl2 license:gpl3))))
(define-public hunspell-dict-hu
(let ((revision "2")
(major+minor "1.7"))
(package
(name "hunspell-dict-hu")
(version (string-append major+minor "-" revision))
(source
(origin
(method url-fetch)
(uri (string-append "mirror://sourceforge/magyarispell/Magyar Ispell/"
major+minor
"/magyarispell-" version ".tar.gz"))
(sha256
(base32 "0r22rvqrp5bzgr9sqyap82kibi5z9n6xy5b06si28idqijw7c772"))))
(build-system gnu-build-system)
(arguments
(list #:make-flags
#~(list "myspell"
"--jobs=1" ;the Makefile is not ready for parallelism
(string-append "SH="
(search-input-file %build-inputs
"/bin/bash"))
(string-append "AWK="
(search-input-file %build-inputs
"/bin/awk")))
#:phases
#~(modify-phases %standard-phases
(replace 'configure
(lambda* (#:key outputs #:allow-other-keys)
(substitute* "config"
(("/usr/bin/awk")
(which "awk")))))
(replace 'install ;no install target
(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(share (string-append out "/share/hunspell/")))
(install-file "hu_HU.aff" share)
(install-file "hu_HU.dic" share)))))
#:tests? #f)) ; no tests
(native-inputs
(list hunspell m4 recode))
(synopsis "Hunspell dictionary for Hungarian (hu_HU)")
(description "This package provides a dictionary for the Hunspell
spell-checking library.")
(home-page "http://magyarispell.sourceforge.net/")
(license (list license:gpl2 license:gpl3)))))
(define* (hunspell-dictionary dict-name full-name #:key synopsis home-page license)
(package
@ -35,7 +275,7 @@
(#\_ #\-)
(chr chr))
(string-downcase dict-name))))
(version (package-version libreoffice))
(version "7.4.3.2")
(source
(origin
(method git-fetch)
@ -79,3 +319,121 @@ spell-checking library.")
#:synopsis (synopsis "Hunspell dictionary for Italian")
#:home-page "https://www.libreitalia.org/"
#:license license:gpl3)))
;;;
;;; Hunspell packages made from the Aspell word lists.
;;;
(define* (aspell-word-list language synopsis
#:optional
(nick (string-map (lambda (chr)
(if (char=? #\_ chr)
#\-
chr))
(string-downcase language))))
(package
(name (string-append "hunspell-dict-" nick))
(version "2018.04.16")
(source (origin
(method url-fetch)
(uri (string-append
"mirror://sourceforge/wordlist/SCOWL/"
version "/scowl-" version ".tar.gz"))
(sha256
(base32
"11lkrnhwrf5mvrrq45k4mads3n9aswgac8dc25ba61c75alxb5rs"))))
(native-inputs
(list tar gzip perl aspell))
(build-system gnu-build-system)
(arguments
`(#:phases
(modify-phases %standard-phases
(add-after 'unpack 'make-reproducible
(lambda _
(substitute* "speller/README_en.txt.sh"
(("\\bdate\\b") ""))))
(delete 'configure)
(delete 'check)
(replace 'build
(lambda _
(substitute* "speller/make-hunspell-dict"
(("zip -9 .*$")
"return\n"))
(mkdir "speller/hunspell")
;; XXX: This actually builds all the dictionary variants.
(invoke "make" "-C" "speller" "hunspell")))
(replace 'install
(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref %outputs "out"))
(hunspell (string-append out "/share/hunspell"))
(myspell (string-append out "/share/myspell"))
(doc (string-append out "/share/doc/"
,name))
(dot-dic ,(string-append "speller/" language ".dic")))
(mkdir-p myspell)
;; Usually there's only a 'LANGUAGE.dic' file, but for the "en"
;; dictionary, there no 'en.dic'. Instead, there's a set of
;; 'en*.dic' files, hence the 'find-files' call below.
(if (file-exists? dot-dic)
(install-file dot-dic hunspell)
(for-each (lambda (dic)
(install-file dic hunspell))
(find-files "speller"
,(string-append language ".*\\.dic$"))))
;; Install affix files corresponding to installed dictionaries
(for-each (lambda (dic)
(install-file (string-append
"speller/" (basename dic ".dic") ".aff")
hunspell))
(find-files hunspell ".*\\.dic$"))
(symlink hunspell (string-append myspell "/dicts"))
(for-each (lambda (file)
(install-file file doc))
(find-files "."
"^(Copyright|.*\\.(txt|org|md))$"))
#t))))))
(synopsis synopsis)
(description
"This package provides a dictionary for the Hunspell spell-checking
library.")
(home-page "http://wordlist.aspell.net/")
(license (license:non-copyleft "file://Copyright"
"Word lists come from several sources, all
under permissive licensing terms. See the 'Copyright' file."))))
(define-syntax define-word-list-dictionary
(syntax-rules (synopsis)
((_ name language (synopsis text))
(define-public name
(aspell-word-list language text)))
((_ name language nick (synopsis text))
(define-public name
(aspell-word-list language text nick)))))
(define-word-list-dictionary hunspell-dict-en
"en"
(synopsis "Hunspell dictionary for English"))
(define-word-list-dictionary hunspell-dict-en-au
"en_AU"
(synopsis "Hunspell dictionary for Australian English"))
(define-word-list-dictionary hunspell-dict-en-ca
"en_CA"
(synopsis "Hunspell dictionary for Canadian English"))
(define-word-list-dictionary hunspell-dict-en-gb
"en_GB-ise" "en-gb"
(synopsis "Hunspell dictionary for British English, with -ise endings"))
(define-word-list-dictionary hunspell-dict-en-gb-ize
"en_GB-ize"
(synopsis "Hunspell dictionary for British English, with -ize endings"))
(define-word-list-dictionary hunspell-dict-en-us
"en_US"
(synopsis "Hunspell dictionary for United States English"))

View File

@ -1748,3 +1748,31 @@ segmentation.")
"Image and video labeling tool supporting different shapes like
polygons, rectangles, circles, lines, points and VOC/COCO export.")
(license license:gpl3+)))
(define-public charls
(package
(name "charls")
(version "2.3.4")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/team-charls/charls/")
(commit (string-append version))))
(file-name (git-file-name name version))
(sha256
(base32
"0g3f1rfimk30rqmi7ic4i5vfphyqbbpsyyhwqq1iss9wjwaz2vs5"))))
(build-system cmake-build-system)
(arguments
`(#:configure-flags '("-DCMAKE_BUILD_TYPE:STRING=Release"
"-DBUILD_SHARED_LIBS=On")))
(native-inputs (list git pkg-config))
(home-page "https://github.com/team-charls/charls")
(synopsis "Library for using JPEG-LS compliant images")
(description
"CharLS is a codec library that can be used to build applications that
can handle JPEG-LS compliant images. In the application you are writing you
can call the CharLS codec and pass it images (sometimes called raster bitmaps),
to have them encoded to JPEG-LS, or JPEG-LS streams, which CharLS will decode
to images.")
(license license:bsd-3)))

View File

@ -8,7 +8,7 @@
;;; Copyright © 2015 Amirouche Boubekki <amirouche@hypermove.net>
;;; Copyright © 2014, 2017 John Darrington <jmd@gnu.org>
;;; Copyright © 2016, 2017, 2018, 2020 Leo Famulari <leo@famulari.name>
;;; Copyright © 2016, 2017, 2018, 2019, 2020, 2021, 2022 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2016-2023 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 20162022 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2016 Eric Bavier <bavier@member.fsf.org>
;;; Copyright © 2016, 2017, 2020, 2021, 2022 Arun Isaac <arunisaac@systemreboot.net>
@ -34,6 +34,7 @@
;;; Copyright © 2021 Alexandr Vityazev <avityazev@posteo.org>
;;; Copyright © 2022 Jai Vetrivelan <jaivetrivelan@gmail.com>
;;; Copyright © 2022 ( <paren@disroot.org>
;;; Copyright © 2022 Bruno Victal <mirai@makinata.eu>
;;;
;;; This file is part of GNU Guix.
;;;
@ -2168,35 +2169,42 @@ This package can be used to create @code{favicon.ico} files for web sites.")
"02zmb62g0yx6rfz4w1isyzfrckv5i7dzyz26rp2mspbx9w6v8j4r"))))
(build-system cmake-build-system)
(arguments
(list #:configure-flags
#~'("-DAVIF_CODEC_AOM=ON" "-DAVIF_CODEC_DAV1D=ON"
#$@(if (string-prefix? "x86_64"
(or (%current-target-system)
(%current-system)))
'("-DAVIF_CODEC_RAV1E=ON")
'())
"-DAVIF_BUILD_TESTS=ON")
#:phases
#~(modify-phases %standard-phases
(add-after 'install 'install-readme
(lambda _
(let ((doc (string-append #$output "/share/doc/libavif-"
#$(package-version this-package))))
(install-file "../source/README.md" doc)))))))
(list
#:configure-flags
#~(list "-DAVIF_CODEC_AOM=ON" "-DAVIF_CODEC_DAV1D=ON"
#$@(if (this-package-input "rav1e")
'("-DAVIF_CODEC_RAV1E=ON")
'())
"-DAVIF_BUILD_TESTS=ON" "-DAVIF_BUILD_APPS=ON")
#:phases
#~(modify-phases %standard-phases
(add-after 'install 'install-readme
(lambda _
(let ((doc (string-append #$output "/share/doc/libavif-"
#$(package-version this-package))))
(install-file "../source/README.md" doc))))
(add-after 'install 'split
(lambda _
(let* ((avifenc (string-append #$output "/bin/avifenc"))
(avifenc* (string-append #$output:tools "/bin/avifenc"))
(avifdec (string-append #$output "/bin/avifdec"))
(avifdec* (string-append #$output:tools "/bin/avifdec")))
(mkdir-p (string-append #$output:tools "/bin"))
(for-each (lambda (old new)
(copy-file old new)
(delete-file old)
(chmod new #o555))
(list avifenc avifdec)
(list avifenc* avifdec*))))))))
(native-inputs (list googletest))
(inputs
(append
(list dav1d
libaom
libjpeg-turbo
libpng
zlib)
;; XXX: rav1e depends on rust, which currently only works on x86_64.
;; See also the related configure flag when changing this.
(if (string-prefix? "x86_64" (or (%current-target-system)
(%current-system)))
(list rav1e)
'())))
(if (member (%current-system) (package-transitive-supported-systems rav1e))
(list rav1e) '())
(list dav1d libaom zlib libpng libjpeg-turbo)))
(outputs (list "out"
"tools")) ; avifenc & avifdec
(synopsis "Encode and decode AVIF files")
(description "Libavif is a C implementation of @acronym{AVIF, the AV1 Image
File Format}. It can encode and decode all YUV formats and bit depths supported

View File

@ -321,14 +321,14 @@ to ring buffers shared with a consumer daemon.")
(define-public lttng-tools
(package
(name "lttng-tools")
(version "2.13.8")
(version "2.13.9")
(source (origin
(method url-fetch)
(uri (string-append "https://lttng.org/files/lttng-tools/"
"lttng-tools-" version ".tar.bz2"))
(sha256
(base32
"1h9x6mmqrxrbgivll3g81l7a9f7ggjmcgwr01f9r01r6kdbmksdi"))))
"0dzk13d0hdzll8hk9qmj5lipmfa2h8zkl801dchp1kq8nsaxr54d"))))
(build-system gnu-build-system)
(arguments
`(#:configure-flags '("--enable-python-bindings")

View File

@ -109,14 +109,14 @@ groups.")
(define-public python-iso3166
(package
(name "python-iso3166")
(version "0.9")
(version "2.1.1")
(source
(origin
(method url-fetch)
(uri (pypi-uri "iso3166" version))
(sha256
(base32
"0hm0xm30sprk1jssmn4cqks0x3nx5fp8r5ypvahcysmmayzrsnjl"))))
"068p94gavc8gbmp5a2kw8hi5l551wfzbpmp6z7ll8sx6vnw53mgw"))))
(build-system python-build-system)
(home-page "https://github.com/deactivated/python-iso3166")
(synopsis "Self-contained ISO 3166-1 country definitions")

View File

@ -487,10 +487,6 @@ protocols, as well as decentralized calling using P2P-DHT.")
(home-page "https://jami.net/")
(license license:gpl3+)))
;;; Remove when 2023 comes.
(define-public libring
(deprecated-package "libring" libjami))
(define-public jami
(package
(name "jami")
@ -583,14 +579,6 @@ It supports the SIP and IAX protocols, as well as decentralized calling using
P2P-DHT.")
(license license:gpl3+)))
;;; Remove when 2023 comes.
(define-public jami-gnome
(deprecated-package "jami-gnome" jami))
;;; Remove when 2023 comes.
(define-public jami-qt
(deprecated-package "jami-qt" jami))
(define-public jami-docs
;; There aren't any tags, so use the latest commit.
(let ((revision "0")

View File

@ -49,6 +49,7 @@
#:use-module (guix build-system cmake)
#:use-module (guix build-system gnu)
#:use-module (guix build-system maven)
#:use-module (guix build-system python)
#:use-module (guix build-system trivial)
#:use-module (gnu packages)
#:use-module (gnu packages attr)
@ -8694,6 +8695,26 @@ sources by ANTLR.")
(description "This package contains the C++ runtime library used with C++
generated sources by ANTLR.")))
(define-public java-antlr4-runtime-python
(package
(inherit java-antlr4-runtime)
(name "java-antlr4-runtime-python")
(outputs '("out"))
(build-system python-build-system)
(arguments
(list
#:tests? #f ; tests require antlr
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'chdir
(lambda _
(chdir "runtime/Python3"))))))
(native-inputs (list pkg-config))
(inputs (list `(,util-linux "lib"))) ; libuuid
(synopsis "ANTLR Python runtime library")
(description "This package contains the Python runtime library used with
Python generated sources by ANTLR.")))
(define-public antlr4
(package
(inherit java-antlr4-runtime)

View File

@ -64,13 +64,13 @@
#:use-module (gnu packages graphviz)
#:use-module (gnu packages gstreamer)
#:use-module (gnu packages gtk)
#:use-module (gnu packages hunspell)
#:use-module (gnu packages image)
#:use-module (gnu packages iso-codes)
#:use-module (gnu packages kerberos)
#:use-module (gnu packages kde)
#:use-module (gnu packages kde-plasma)
#:use-module (gnu packages libcanberra)
#:use-module (gnu packages libreoffice)
#:use-module (gnu packages linux)
#:use-module (gnu packages mp3)
#:use-module (gnu packages openbox)

View File

@ -1242,7 +1242,7 @@ KDE Frameworks components.")
libglvnd ; For OpenGLES
libinput
libxkbcommon
pipewire-0.3
pipewire
plasma-framework
plasma-wayland-protocols
qtbase-5
@ -1657,7 +1657,7 @@ the KDE Plasma 5 desktop.")
libxtst
networkmanager-qt
phonon
pipewire-0.3
pipewire
plasma-framework
plasma-wayland-protocols
pulseaudio
@ -2319,7 +2319,7 @@ sensors, process information and other system resources.")
libxtst
networkmanager-qt
phonon
pipewire-0.3
pipewire
plasma-framework
plasma-workspace-wallpapers
plasma-wayland-protocols

View File

@ -270,7 +270,7 @@ This package is part of the KDE base applications module.")
libxcb
libxtst
breeze-icons ;; default icon set
pipewire-0.3
pipewire
plasma-wayland-protocols
qtbase-5
qtwayland-5

View File

@ -479,7 +479,8 @@ plug-in system.")
license:bsd-2)))) ;xbmc/freebsd
(define-public kodi/wayland
(package/inherit kodi
(package
(inherit kodi)
(name "kodi-wayland")
(arguments
(substitute-keyword-arguments (package-arguments kodi)
@ -488,10 +489,10 @@ plug-in system.")
(delete "-DCORE_PLATFORM_NAME=x11" ,flags)))))
(inputs
(modify-inputs (package-inputs kodi)
(prepend (list libinput
libxkbcommon
waylandpp
wayland-protocols))))
(prepend libinput
libxkbcommon
waylandpp
wayland-protocols)))
(synopsis "Kodi with Wayland rendering backend")))
(define-public kodi-cli

View File

@ -835,29 +835,6 @@ string can be easily inferred by a human just by reading the identifier.")
done by Gudrun Putze-Meier.")
(license license:perl-license)))
(define* (tegaki-release-uri proj version
#:optional (ext "tar.gz"))
(string-append "https://github.com/tegaki/tegaki/releases/download"
"/v" version "/" proj "-" version "." ext))
(define remove-pre-compiled-files
(lambda exts
"Return snippet for removing pre-compiled files matching one of the
extensions in EXTS."
`(begin (for-each delete-file
(find-files "."
(lambda (name _)
(any (cut string-suffix? <> name)
(map (cut string-append "." <>)
',exts)))))
#t)))
;;; modules required for the above snippet
(define remove-pre-compiled-files-modules
'((guix build utils)
(srfi srfi-1)
(srfi srfi-26)))
(define-public link-grammar
(package
(name "link-grammar")

View File

@ -70,6 +70,7 @@
#:use-module (gnu packages graphics)
#:use-module (gnu packages gstreamer)
#:use-module (gnu packages gtk)
#:use-module (gnu packages hunspell)
#:use-module (gnu packages icu4c)
#:use-module (gnu packages image)
#:use-module (gnu packages java)
@ -792,191 +793,6 @@ Callisto/Draw documents. Currently it only understands documents created by
Zoner Draw version 4 and 5.")
(license license:mpl2.0)))
(define-public hunspell
(package
(name "hunspell")
(version "1.7.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/hunspell/hunspell")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
"0qxlkd012r45ppd21kldbq9k5ac5nmxz290z6m2kch9l56v768k1"))))
(build-system gnu-build-system)
(native-inputs
(list autoconf automake libtool))
(inputs
(list perl))
(native-search-paths (list (search-path-specification
(variable "DICPATH")
(files '("share/hunspell")))))
(home-page "https://hunspell.github.io/")
(synopsis "Spell checker")
(description "Hunspell is a spell checker and morphological analyzer
library and program designed for languages with rich morphology and complex
word compounding or character encoding.")
;; Triple license, including "mpl1.1 or later".
(license (list license:mpl1.1 license:gpl2+ license:lgpl2.1+))))
(define (dicollecte-french-dictionary variant synopsis)
;; Return a French dictionary package from dicollecte.org, for the given
;; VARIANT.
(package
(name (match variant
("classique" "hunspell-dict-fr")
(_ (string-append "hunspell-dict-fr-" variant))))
(version "6.2")
(source (origin
(uri (string-append
"http://www.dicollecte.org/download/fr/hunspell-french-dictionaries-v"
version ".zip"))
(method url-fetch)
(sha256
(base32
"139hfrn5p87sl8hqmgkf6sgvnxrk2mm8vd8xsm8sm98qjnwlg0f9"))))
(build-system trivial-build-system)
(native-inputs (list unzip))
(arguments
`(#:modules ((guix build utils))
#:builder (begin
(use-modules (guix build utils)
(srfi srfi-26))
(let* ((out (assoc-ref %outputs "out"))
(hunspell (string-append out "/share/hunspell"))
(myspell (string-append out "/share/myspell"))
(doc (string-append out "/share/doc/"
,name))
(unzip (assoc-ref %build-inputs "unzip")))
(invoke (string-append unzip "/bin/unzip")
(assoc-ref %build-inputs "source"))
(for-each (cut install-file <> hunspell)
(find-files "."
,(string-append variant
"\\.(dic|aff)$")))
(mkdir-p myspell)
(symlink hunspell (string-append myspell "/dicts"))
(for-each (cut install-file <> doc)
(find-files "." "\\.(txt|org|md)$"))
#t))))
(synopsis synopsis)
(description
"This package provides a dictionary for the Hunspell spell-checking
library.")
(home-page "https://www.dicollecte.org/home.php?prj=fr")
(license license:mpl2.0)))
(define-syntax define-french-dictionary
(syntax-rules (synopsis)
((_ name variant (synopsis text))
(define-public name
(dicollecte-french-dictionary variant text)))))
(define-french-dictionary hunspell-dict-fr-classique
"classique"
;; TRANSLATORS: In French, this is "Français classique".
(synopsis "Hunspell dictionary for ``classic'' French (recommended)"))
(define-french-dictionary hunspell-dict-fr-moderne
"moderne"
;; TRANSLATORS: In French, this is "Français moderne".
(synopsis "Hunspell dictionary for ``modern'' French"))
(define-french-dictionary hunspell-dict-fr-réforme-1990
"reforme1990"
(synopsis "Hunspell dictionary for the post @dfn{1990 réforme} French"))
(define-french-dictionary hunspell-dict-fr-toutes-variantes
"toutesvariantes"
(synopsis "Hunspell dictionary for all variants of French"))
(define-public hunspell-dict-pl
(package
(name "hunspell-dict-pl")
(version "20200327")
(source
(origin
(method url-fetch)
;; Since creators of dictionary host only the latest daily release,
;; we're using version mirrored by Arch Linux, which seems good
;; enough. They're mirroring hunspell-pl releases since 2011.
(uri (string-append "https://sources.archlinux.org/other/community/"
"hunspell-pl/sjp-myspell-pl-"
version ".zip"))
(sha256 (base32
"14mzf8glxkp2775dcqisb1zv6r8ncm3bvzl46q352rwyl2dg1c59"))))
(build-system trivial-build-system)
(native-inputs (list unzip))
(arguments
`(#:modules ((guix build utils))
#:builder (begin
(use-modules (guix build utils)
(srfi srfi-26))
(let* ((out (assoc-ref %outputs "out"))
(hunspell (string-append out "/share/hunspell"))
(myspell (string-append out "/share/myspell"))
(doc (string-append out "/share/doc/"
,name))
(unzip (search-input-file %build-inputs
"/bin/unzip")))
(invoke unzip "-j" "-o" (assoc-ref %build-inputs "source"))
(invoke unzip "-j" "-o" "pl_PL.zip")
(for-each (cut install-file <> hunspell)
(find-files "."
,(string-append "pl_PL"
"\\.(dic|aff)$")))
(mkdir-p myspell)
(symlink hunspell (string-append myspell "/dicts"))
(for-each (cut install-file <> doc)
(find-files "." "\\.(txt|org|md)$"))
#t))))
(synopsis "Hunspell dictionary for Polish")
(description
"This package provides a dictionary for the Hunspell spell-checking
library.")
(home-page "https://sjp.pl/slownik/ort/")
(license
(list license:gpl2 license:mpl1.1 license:cc-by4.0 license:lgpl2.1 license:asl2.0))))
(define-public hunspell-dict-de
(package
(name "hunspell-dict-de")
(version "20161207")
(source
(origin
(method url-fetch)
(uri (string-append "https://www.j3e.de/ispell/igerman98/dict/"
"igerman98-" version ".tar.bz2"))
(sha256
(base32 "1a3055hp2bc4q4nlg3gmg0147p3a1zlfnc65xiv2v9pyql1nya8p"))))
(build-system gnu-build-system)
(arguments
`(#:make-flags '("hunspell/de_DE.dic")
#:phases
(modify-phases %standard-phases
(delete 'configure)
(replace 'install ;no install target
(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(share (string-append out "/share/hunspell/")))
(install-file "hunspell/de_DE.aff" share)
(install-file "hunspell/de_DE.dic" share)
#t))))
#:tests? #f)) ; no tests
(native-inputs
(list hunspell ispell perl))
(synopsis "Hunspell dictionary for German (de_DE)")
(description "This package provides a dictionary for the Hunspell
spell-checking library.")
(home-page "https://www.j3e.de/ispell/igerman98/")
(license (list license:gpl2 license:gpl3))))
(define-public hyphen
(package
(name "hyphen")
@ -1000,53 +816,6 @@ patterns, which are pre-processed by a perl script.")
(license
(list license:mpl1.1 license:mpl2.0 license:gpl2+ license:lgpl2.1+))))
(define-public hunspell-dict-hu
(let ((revision "2")
(major+minor "1.7"))
(package
(name "hunspell-dict-hu")
(version (string-append major+minor "-" revision))
(source
(origin
(method url-fetch)
(uri (string-append "mirror://sourceforge/magyarispell/Magyar Ispell/"
major+minor
"/magyarispell-" version ".tar.gz"))
(sha256
(base32 "0r22rvqrp5bzgr9sqyap82kibi5z9n6xy5b06si28idqijw7c772"))))
(build-system gnu-build-system)
(arguments
(list #:make-flags
#~(list "myspell"
"--jobs=1" ;the Makefile is not ready for parallelism
(string-append "SH="
(search-input-file %build-inputs
"/bin/bash"))
(string-append "AWK="
(search-input-file %build-inputs
"/bin/awk")))
#:phases
#~(modify-phases %standard-phases
(replace 'configure
(lambda* (#:key outputs #:allow-other-keys)
(substitute* "config"
(("/usr/bin/awk")
(which "awk")))))
(replace 'install ;no install target
(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(share (string-append out "/share/hunspell/")))
(install-file "hu_HU.aff" share)
(install-file "hu_HU.dic" share)))))
#:tests? #f)) ; no tests
(native-inputs
(list hunspell m4 recode))
(synopsis "Hunspell dictionary for Hungarian (hu_HU)")
(description "This package provides a dictionary for the Hunspell
spell-checking library.")
(home-page "http://magyarispell.sourceforge.net/")
(license (list license:gpl2 license:gpl3)))))
(define-public mythes
(package
(name "mythes")

View File

@ -28,7 +28,7 @@
;;; Copyright © 2017 nee <nee-git@hidamari.blue>
;;; Copyright © 2017 Dave Love <fx@gnu.org>
;;; Copyright © 2018 Pierre-Antoine Rouby <pierre-antoine.rouby@inria.fr>
;;; Copyright © 2018, 2020 Brendan Tildesley <mail@brendan.scot>
;;; Copyright © 2018, 2020, 2022 Brendan Tildesley <mail@brendan.scot>
;;; Copyright © 2018 Manuel Graf <graf@init.at>
;;; Copyright © 2018, 2019 Pierre Langlois <pierre.langlois@gmx.com>
;;; Copyright © 2018 Vasile Dumitrascu <va511e@yahoo.com>
@ -480,7 +480,22 @@ 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.0-version "6.0.16")
(define-public linux-libre-6.1-version "6.1.4")
(define-public linux-libre-6.1-gnu-revision "gnu")
(define deblob-scripts-6.1
(linux-libre-deblob-scripts
linux-libre-6.1-version
linux-libre-6.1-gnu-revision
(base32 "0p1cg5khpp8xkfaqy0cnp1m273z3xiz0m97rkrkggz9gr2klrjym")
(base32 "0va28vs359r0rfmzh8pw58055kgd8sb62gi78vrg9p8wmj4s87v6")))
(define-public linux-libre-6.1-pristine-source
(let ((version linux-libre-6.1-version)
(hash (base32 "17jmli5ddc3i0ryjq2y4f0m5wmfhpppiz3b0m60k7c8blr7zda4a")))
(make-linux-libre-source version
(%upstream-linux-source version hash)
deblob-scripts-6.1)))
(define-public linux-libre-6.0-version "6.0.18")
(define-public linux-libre-6.0-gnu-revision "gnu")
(define deblob-scripts-6.0
(linux-libre-deblob-scripts
@ -490,7 +505,7 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS."
(base32 "16g2bin3xay30zfss1vlb7pwcss5giaxaksp4v1gk05wn51wjrqr")))
(define-public linux-libre-6.0-pristine-source
(let ((version linux-libre-6.0-version)
(hash (base32 "1r2wf3hf7yxl7lxma7plyi8pk3dmlsrpm763rf0g1h8ilsy72844")))
(hash (base32 "0ncljhhc6frjb9l6zpr4nk2yhj854d3gdizn6a6qsl8ij9ln3dls")))
(make-linux-libre-source version
(%upstream-linux-source version hash)
deblob-scripts-6.0)))
@ -513,7 +528,7 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS."
(%upstream-linux-source version hash)
deblob-scripts-5.15)))
(define-public linux-libre-5.10-version "5.10.161")
(define-public linux-libre-5.10-version "5.10.162")
(define-public linux-libre-5.10-gnu-revision "gnu1")
(define deblob-scripts-5.10
(linux-libre-deblob-scripts
@ -523,7 +538,7 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS."
(base32 "0a96g4pjdgwvxn2wpz6rfc8nwdlkw138r9pp66kvfrrn08i313ii")))
(define-public linux-libre-5.10-pristine-source
(let ((version linux-libre-5.10-version)
(hash (base32 "0ya04njrxr4d37zkxvivmn5f0bdvcb504pyp9ahwz8nqpk8gdaks")))
(hash (base32 "05yjgp1la5flwqji9b6j7nbdgg5fwzv2ph536v4f9pzza3y01i1f")))
(make-linux-libre-source version
(%upstream-linux-source version hash)
deblob-scripts-5.10)))
@ -573,7 +588,7 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS."
(%upstream-linux-source version hash)
deblob-scripts-4.14)))
(define-public linux-libre-4.9-version "4.9.336")
(define-public linux-libre-4.9-version "4.9.337")
(define-public linux-libre-4.9-gnu-revision "gnu1")
(define deblob-scripts-4.9
(linux-libre-deblob-scripts
@ -583,7 +598,7 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS."
(base32 "0bib3641dbcqdkx3anna3caxnsg3nw9cnmhcklq0s93g3m57041h")))
(define-public linux-libre-4.9-pristine-source
(let ((version linux-libre-4.9-version)
(hash (base32 "032hgfvn7za2v49jjc3pdzx0cfglrmjkbl2d3pz857yc0q9y2v8z")))
(hash (base32 "1imkn3dbxsr35br79sp9s2r9hy1xqvsm652icbsf6rn7apnam1ak")))
(make-linux-libre-source version
(%upstream-linux-source version hash)
deblob-scripts-4.9)))
@ -616,6 +631,12 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS."
(patches (append (origin-patches source)
patches))))
(define-public linux-libre-6.1-source
(source-with-patches linux-libre-6.1-pristine-source
(list %boot-logo-patch
%linux-libre-arm-export-__sync_icache_dcache-patch
(search-patch "linux-libre-infodocs-target.patch"))))
(define-public linux-libre-6.0-source
(source-with-patches linux-libre-6.0-pristine-source
(list %boot-logo-patch
@ -731,6 +752,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.1
(make-linux-libre-headers* linux-libre-6.1-version
linux-libre-6.1-gnu-revision
linux-libre-6.1-source))
(define-public linux-libre-headers-6.0
(make-linux-libre-headers* linux-libre-6.0-version
linux-libre-6.0-gnu-revision
@ -1071,6 +1097,14 @@ Linux kernel. It has been modified to remove all non-free binary blobs.")
;;; Generic kernel packages.
;;;
(define-public linux-libre-6.1
(make-linux-libre* linux-libre-6.1-version
linux-libre-6.1-gnu-revision
linux-libre-6.1-source
'("x86_64-linux" "i686-linux" "armhf-linux"
"aarch64-linux" "powerpc64le-linux" "riscv64-linux")
#:configuration-file kernel-config))
(define-public linux-libre-6.0
(make-linux-libre* linux-libre-6.0-version
linux-libre-6.0-gnu-revision
@ -9044,32 +9078,50 @@ types and interfaces and translates so that the X server can use them.")
(define-public pipewire
(package
(name "pipewire")
(version "0.2.7")
(version "0.3.63")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/PipeWire/pipewire")
(url "https://gitlab.freedesktop.org/pipewire/pipewire")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32
"1q5wrqnhhs6r49p8yvkw1pl0cnsd4rndxy4h5lvdydwgf1civcwc"))
(patches (search-patches "pipewire-0.2.7-fno-common.patch"))))
"1pkngynvhxc6iyv75gsyqjy18ky4si9dhvpavb9xwq5xj71nj0hr"))))
(build-system meson-build-system)
(arguments
'(#:configure-flags '("-Dsystemd=false")))
(list
#:configure-flags
#~(list (string-append "-Dudevrulesdir=" #$output "/lib/udev/rules.d")
"-Dsystemd=disabled"
"-Dsession-managers=[]"
"-Dsysconfdir=/etc"
"-Dman=enabled")))
(native-inputs
(list pkg-config))
(inputs
(list alsa-lib
dbus
eudev
ffmpeg-4
gstreamer
gst-plugins-base
libva
sbc
sdl2))
(list pkg-config
python-docutils))
(inputs (list alsa-lib
avahi
bluez
dbus
eudev
ffmpeg
gst-plugins-base
gstreamer
jack-2
ldacbt
libfdk
libfreeaptx
libsndfile
libusb
openssl ; raop sink
libva
pulseaudio
readline ; for pw-cli
sbc
vulkan-headers
vulkan-loader
webrtc-audio-processing))
(home-page "https://pipewire.org/")
(synopsis "Server and user space API to deal with multimedia pipelines")
(description
@ -9083,44 +9135,10 @@ and Flatpak we expect PipeWire to provide a core building block for the future
of Linux application development.")
(license license:lgpl2.0+)))
(define-public pipewire-0.3
(package
(inherit pipewire)
(name "pipewire")
(version "0.3.56")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/PipeWire/pipewire")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32
"066g4ri2k8pdflclvr2919f6x98gmqrqyj1xyiingw2nn2pwgcf1"))))
(arguments
(list
#:configure-flags
#~(list (string-append "-Dudevrulesdir=" #$output "/lib/udev/rules.d")
"-Dsystemd=disabled"
"-Dsession-managers=[]"
"-Dman=enabled")))
(native-inputs
(modify-inputs (package-native-inputs pipewire)
(prepend python-docutils)))
(inputs (modify-inputs (package-inputs pipewire)
(replace "ffmpeg" ffmpeg)
(prepend avahi
bluez
jack-2
ldacbt
pulseaudio
vulkan-loader
vulkan-headers)))))
(define-public wireplumber
(package
(name "wireplumber")
(version "0.4.11")
(version "0.4.13")
(source
(origin
(method git-fetch)
@ -9130,7 +9148,7 @@ of Linux application development.")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "09pg5cki1xn9bwn3bcjdc54z7b4iqkk1dhn560qyjcglq8xg7nnw"))))
(base32 "07psjb7rxsigwnwnzmw2y767vhyyha7cn8i8dgq80rzhwgl0sgv7"))))
(build-system meson-build-system)
(arguments
`(#:configure-flags '("-Dsystemd=disabled"
@ -9138,7 +9156,7 @@ of Linux application development.")
(native-inputs
(list `(,glib "bin")
pkg-config))
(inputs (list dbus elogind glib lua pipewire-0.3))
(inputs (list dbus elogind glib lua pipewire))
(home-page "https://gitlab.freedesktop.org/pipewire/wireplumber")
(synopsis "Session / policy manager implementation for PipeWire")
(description "WirePlumber is a modular session / policy manager for

View File

@ -748,6 +748,12 @@ for `sh' in $PATH, and without nscd, and with static NSS modules."
"guile-default-utf8.patch"
"guile-linux-syscalls.patch")))
(define %guile-static-3.0
(make-guile-static guile-3.0-latest
'("guile-2.2-default-utf8.patch"
"guile-3.0-linux-syscalls.patch"
"guile-3.0-relocatable.patch")))
(define* (make-guile-static-stripped static-guile)
(package
(inherit static-guile)
@ -796,11 +802,7 @@ for `sh' in $PATH, and without nscd, and with static NSS modules."
(define %guile-static-stripped
;; A stripped static Guile 3.0 binary, for use in initrds
;; and during bootstrap.
(make-guile-static-stripped
(make-guile-static guile-3.0
'("guile-2.2-default-utf8.patch"
"guile-3.0-linux-syscalls.patch"
"guile-3.0-relocatable.patch"))))
(make-guile-static-stripped %guile-static-3.0))
(define (tarball-package pkg)
"Return a package containing a tarball of PKG."

View File

@ -88,6 +88,7 @@
#:use-module (gnu packages gstreamer)
#:use-module (gnu packages gtk)
#:use-module (gnu packages guile)
#:use-module (gnu packages hunspell)
#:use-module (gnu packages icu4c)
#:use-module (gnu packages image)
#:use-module (gnu packages kde)
@ -98,7 +99,6 @@
#:use-module (gnu packages libevent)
#:use-module (gnu packages libffi)
#:use-module (gnu packages libidn)
#:use-module (gnu packages libreoffice)
#:use-module (gnu packages linux)
#:use-module (gnu packages logging)
#:use-module (gnu packages lua)

View File

@ -164,7 +164,7 @@ interfacing MPD in the C, C++ & Objective C languages.")
libsndfile
libvorbis
opus
pipewire-0.3
pipewire
pulseaudio
sqlite
zlib))

View File

@ -10,7 +10,7 @@
;;; Copyright © 2016 Alex Griffin <a@ajgrf.com>
;;; Copyright © 2017 nikita <nikita@n0.is>
;;; Copyright © 2017 Rodger Fox <thylakoid@openmailbox.org>
;;; Copyright © 20172022 Nicolas Goaziou <mail@nicolasgoaziou.fr>
;;; Copyright © 20172023 Nicolas Goaziou <mail@nicolasgoaziou.fr>
;;; Copyright © 2017, 2018, 2019, 2021 Pierre Langlois <pierre.langlois@gmx.com>
;;; Copyright © 2017 Arun Isaac <arunisaac@systemreboot.net>
;;; Copyright © 20172022 Tobias Geerinckx-Rice <me@tobias.gr>
@ -28,7 +28,7 @@
;;; Copyright © 2020 Vincent Legoll <vincent.legoll@gmail.com>
;;; Copyright © 2020 Lars-Dominik Braun <lars@6xq.net>
;;; Copyright © 2020 Giacomo Leidi <goodoldpaul@autistici.org>
;;; Copyright © 2020, 2022 Michael Rohleder <mike@rohleder.de>
;;; Copyright © 2020, 2022, 2023 Michael Rohleder <mike@rohleder.de>
;;; Copyright © 2020 Tanguy Le Carrour <tanguy@bioneland.org>
;;; Copyright © 2020, 2022 Marius Bakke <marius@gnu.org>
;;; Copyright © 2019 Riku Viitanen <riku.viitanen0@gmail.com>
@ -477,7 +477,7 @@ playing your music.")
(define-public strawberry
(package
(name "strawberry")
(version "1.0.10")
(version "1.0.12")
(source (origin
(method git-fetch)
(uri (git-reference
@ -486,7 +486,7 @@ playing your music.")
(file-name (git-file-name name version))
(sha256
(base32
"1v27s55l64xcl7q6p0iljv2fpibhfcl1wj319vlp4b8pcp1wny1p"))
"1jpws1iidxcg3mlja4fqxqlck9yn2v8dwwmzgxx056x1q7sr942w"))
(modules '((guix build utils)
(ice-9 regex)))
(snippet
@ -527,7 +527,7 @@ playing your music.")
`(("gettext" ,gettext-minimal)
("googletest" ,googletest)
("pkg-config" ,pkg-config)
("qtlinguist" ,qttools-5)
("qtlinguist" ,qttools)
("xorg-server" ,xorg-server-for-tests)))
(inputs
(list alsa-lib
@ -546,7 +546,7 @@ playing your music.")
libmtp
protobuf
pulseaudio
qtbase-5
qtbase
qtx11extras
sqlite
taglib))
@ -5018,7 +5018,7 @@ specification and header.")
(define-public rosegarden
(package
(name "rosegarden")
(version "22.12")
(version "22.12.1")
(source
(origin
(method url-fetch)
@ -5026,7 +5026,7 @@ specification and header.")
(version-major+minor version) "/"
"rosegarden-" version ".tar.bz2"))
(sha256
(base32 "061xy3flmj7bllibkp5wzdycvghfxvyzdr9g9yrr5q3m70a7wznz"))))
(base32 "01ljv4rkglicvx7fd6d5chi8k6wia5d6374gf20rgi75grzs59vy"))))
(build-system cmake-build-system)
(arguments
(list
@ -5036,7 +5036,8 @@ specification and header.")
(add-after 'unpack 'patch-tests
(lambda _
(substitute* "CMakeLists.txt"
(("BUILD_TESTING OFF") "BUILD_TESTING ON")
(("(BUILD_TESTING .* )OFF" _ prefix)
(string-append prefix "ON"))
;; Make tests work.
((" -fvisibility=hidden") ""))))
(add-after 'unpack 'fix-references
@ -5075,10 +5076,17 @@ specification and header.")
(add-before 'check 'prepare-check
(lambda _
(setenv "QT_QPA_PLATFORM" "offscreen")
;; Tests create files in $HOME/.local/share/rosegarden .
;; Tests create files in $HOME/.local/share/rosegarden and
;; expect permissions set to 0700.
(mkdir-p "/tmp/foo")
(chmod "/tmp/foo" #o700)
(setenv "HOME" "/tmp/foo")
(setenv "XDG_RUNTIME_DIR" "/tmp/foo"))))))
(setenv "XDG_RUNTIME_DIR" "/tmp/foo")))
(replace 'check
(lambda* (#:key tests? #:allow-other-keys)
(when tests?
;; Skip a failing test.
(invoke "ctest" "-E" "test_notationview_selection")))))))
(inputs
(list alsa-lib
bash-minimal

View File

@ -165,8 +165,8 @@
;; Note: the 'update-guix-package.scm' script expects this definition to
;; start precisely like this.
(let ((version "1.4.0")
(commit "8e2f32cee982d42a79e53fc1e9aa7b8ff0514714")
(revision 0))
(commit "9fe5b490df83ff32e2e0a604bf636eca48b9e240")
(revision 1))
(package
(name "guix")
@ -182,7 +182,7 @@
(commit commit)))
(sha256
(base32
"042mipw2bp9lc75m9g5q6rdifrp8483cmk57kwrdps0i3vd590dl"))
"1lglxp2jydxlzk7a1bpv8h7zi4qfpfbr3m57133j1ljija062j71"))
(file-name (string-append "guix-" version "-checkout"))))
(build-system gnu-build-system)
(arguments

View File

@ -1,35 +0,0 @@
This patch has been proposed upstream:
https://lists.systemreboot.net/guile-email/87mtnv1r2p.fsf@gnu.org/T/#u.
From c21fe0f0e28b80b606973d3e372e2bc8528c9766 Mon Sep 17 00:00:00 2001
From: Mathieu Othacehe <othacehe@gnu.org>
Date: Wed, 29 Sep 2021 12:47:35 +0000
Subject: [PATCH 1/1] email: Do not use an empty bytevector to test the
charset.
Using an empty bytevector no longer throws an exception since this Guile
commit: 5ea8c69e9153a970952bf6f0b32c4fad6a28e839.
* email/email.scm (post-process-content-transfer-encoding): Use a bytevector
containg the 'e' character to test the charset validity.
---
email/email.scm | 3 ++-
1 file changed, 2 insertions(+), 1 deletion(-)
diff --git a/email/email.scm b/email/email.scm
index 3f4e194..ac70463 100644
--- a/email/email.scm
+++ b/email/email.scm
@@ -832,7 +832,8 @@ values. The returned headers is a string and body is a bytevector."
(define (valid-charset? charset)
(catch #t
(lambda ()
- (bytevector->string (make-bytevector 0 0) charset)
+ ;; Try to convert a bytevector containg the 'e' character.
+ (bytevector->string (make-bytevector 1 48) charset)
#t)
(const #f)))
--
2.33.0

View File

@ -1,38 +0,0 @@
Fix test failures that occur when nokogiri is using system libxml:
https://github.com/rgrove/sanitize/issues/198
Taken from upstream:
https://github.com/rgrove/sanitize/commit/21da9b62baf9ea659811d92e6b574130aee57eba
diff --git a/test/test_malicious_html.rb b/test/test_malicious_html.rb
index 2c23074..0756de0 100644
--- a/test/test_malicious_html.rb
+++ b/test/test_malicious_html.rb
@@ -135,6 +135,8 @@
# The relevant libxml2 code is here:
# <https://github.com/GNOME/libxml2/commit/960f0e275616cadc29671a218d7fb9b69eb35588>
describe 'unsafe libxml2 server-side includes in attributes' do
+ using_unpatched_libxml2 = Nokogiri::VersionInfo.instance.libxml2_using_system?
+
tag_configs = [
{
tag_name: 'a',
@@ -166,6 +168,8 @@
input = %[<#{tag_name} #{attr_name}='examp<!--" onmouseover=alert(1)>-->le.com'>foo</#{tag_name}>]
it 'should escape unsafe characters in attributes' do
+ skip "behavior should only exist in nokogiri's patched libxml" if using_unpatched_libxml2
+
# This uses Nokogumbo's HTML-compliant serializer rather than
# libxml2's.
@s.fragment(input).
@@ -191,6 +195,8 @@
input = %[<#{tag_name} #{attr_name}='examp<!--" onmouseover=alert(1)>-->le.com'>foo</#{tag_name}>]
it 'should not escape characters unnecessarily' do
+ skip "behavior should only exist in nokogiri's patched libxml" if using_unpatched_libxml2
+
# This uses Nokogumbo's HTML-compliant serializer rather than
# libxml2's.
@s.fragment(input).

View File

@ -0,0 +1,53 @@
From 2d129502354da4fe39dac13463ea742f8026ab91 Mon Sep 17 00:00:00 2001
From: Sughosha <sughosha@proton.me>
Date: Tue, 3 Jan 2023 22:15:09 +0100
Subject: [PATCH] Link libs and fix jnetlib.
---
WDL/eel2/Makefile | 2 +-
WDL/jnetlib/Makefile | 2 +-
WDL/swell/Makefile | 2 +-
3 files changed, 3 insertions(+), 3 deletions(-)
diff --git a/WDL/eel2/Makefile b/WDL/eel2/Makefile
index ac2e41f1..0ffca97a 100644
--- a/WDL/eel2/Makefile
+++ b/WDL/eel2/Makefile
@@ -153,7 +153,7 @@ gen-lex: # the output of this, lex.nseel.c, is unused because we have a handwri
$(CXX) $(CXXFLAGS) -c -o $@ $^
loose_eel: loose_eel.o $(OBJS) $(OBJS2)
- g++ -o $@ $^ $(CXXFLAGS) $(LFLAGS)
+ g++ -o $@ $^ $(CXXFLAGS) $(LFLAGS) -lGL
clean:
-rm -f -- loose_eel loose_eel.o $(OBJS)
diff --git a/WDL/jnetlib/Makefile b/WDL/jnetlib/Makefile
index 10d9fe8a..85570c5a 100644
--- a/WDL/jnetlib/Makefile
+++ b/WDL/jnetlib/Makefile
@@ -7,7 +7,7 @@ CC = gcc
CPP = g++
CXX = g++
-OBJS = asyncdns.o connection.o httpget.o httpserv.o listen.o util.o sercon.o
+OBJS = asyncdns.o connection.o httpget.o httpserv.o listen.o util.o
jnl.a: ${OBJS}
-rm -f jnl.a
diff --git a/WDL/swell/Makefile b/WDL/swell/Makefile
index 9e7e2d87..8e98a543 100644
--- a/WDL/swell/Makefile
+++ b/WDL/swell/Makefile
@@ -167,7 +167,7 @@ libSwell$(DLL_EXT): $(OBJS)
$(CXX) -shared -o $@ $(CFLAGS) $(LFLAGS) $^ $(LINKEXTRA)
test: $(OBJS) test.o
- $(CXX) -o test $(CFLAGS) $(LFLAGS) $^ $(LINKEXTRA)
+ $(CXX) -o test $(CFLAGS) $(LFLAGS) $^ $(LINKEXTRA) -lpthread -ldl $(shell $(PKG_CONFIG) --libs gtk+-3.0 freetype2) -lfontconfig -lGL -lXi -lX11
libSwell.colortheme: swell-gdi-generic.cpp $(SWELL_HEADERS)
$(CXX) $(CFLAGS) -o make-theme -DSWELL__MAKE_THEME swell-gdi-generic.cpp -lpthread
--
2.38.1

View File

@ -33,6 +33,7 @@
;;; Copyright © 2021 Raghav Gururajan <rg@raghavgururajan.name>
;;; Copyright © 2021 Maxime Devos <maximedevos@telenet.be>
;;; Copyright © 2022 Evgeny Pisemsky <evgeny@pisemsky.com>
;;; Copyright © 2022 gemmaro <gemmaro.dev@gmail.com>
;;;
;;; This file is part of GNU Guix.
;;;
@ -9996,6 +9997,30 @@ mechanism. The module augments the standard Perl syntax with two new
statements: @code{switch} and @code{case}.")
(license (package-license perl))))
(define-public perl-syntax-keyword-try
(package
(name "perl-syntax-keyword-try")
(version "0.28")
(source (origin
(method url-fetch)
(uri (string-append
"mirror://cpan/authors/id/P/PE/PEVANS/Syntax-Keyword-Try-"
version ".tar.gz"))
(sha256
(base32
"1j02z9w0p9a77maf62cy5324vmc01hks0bfm5qjidc50hafmzbfc"))))
(build-system perl-build-system)
(native-inputs (list perl-module-build))
(inputs (list perl-xs-parse-keyword))
(home-page "https://metacpan.org/pod/Syntax::Keyword::Try")
(synopsis "Try/catch/finally syntax for perl")
(description
"This module provides a syntax plugin that implements
exception-handling semantics in a form familiar to users of other
languages, being built on a block labeled with the @code{try} keyword,
followed by at least one of a @code{catch} or @code{finally} block.")
(license (package-license perl))))
(define-public perl-sys-cpu
(package
(name "perl-sys-cpu")
@ -10471,6 +10496,27 @@ used to justify strings to various alignment styles.")
text sequences from strings.")
(license (package-license perl))))
(define-public perl-text-charwidth
(package
(name "perl-text-charwidth")
(version "0.04")
(source (origin
(method url-fetch)
(uri (string-append
"mirror://cpan/authors/id/K/KU/KUBOTA/Text-CharWidth-"
version ".tar.gz"))
(sha256
(base32
"1y040wiqx78pnr0wxbjhpzjxm2a9qiqq479gzn4qwcyrzpsdbpmb"))))
(build-system perl-build-system)
(home-page "https://metacpan.org/dist/Text-CharWidth")
(synopsis "Get number of occupied columns of a string on terminal")
(description
"With this module, you can calculate terminal character
widths that vary by locale. This module supplies features similar to
wcwidth(3) and wcswidth(3) in C language.")
(license (package-license perl))))
(define-public perl-text-csv
(package
(name "perl-text-csv")
@ -11559,6 +11605,28 @@ supersede Perl's builtin @code{T_PTROBJ} with something that is extensible
neither visible nor modifiable from Perl space).")
(license (package-license perl))))
(define-public perl-xs-parse-keyword
(package
(name "perl-xs-parse-keyword")
(version "0.06")
(source (origin
(method url-fetch)
(uri (string-append
"mirror://cpan/authors/id/P/PE/PEVANS/XS-Parse-Keyword-"
version ".tar.gz"))
(sha256
(base32
"0nnr8akkxb2h2y3d5r51pr84vvxkq89ynmi9azkbnn79jmbcbgvq"))))
(build-system perl-build-system)
(native-inputs (list perl-module-build perl-test-simple))
(home-page "https://metacpan.org/dist/XS-Parse-Keyword")
(synopsis "XS functions to assist in parsing keyword syntax")
(description
"This module provides some XS functions to assist in writing
syntax modules that provide new perl-visible syntax, primarily for authors of
keyword plugins using the @code{PL_keyword_plugin} hook mechanism.")
(license (package-license perl))))
(define-public perl-yaml
(package
(name "perl-yaml")
@ -12212,6 +12280,34 @@ called \"American Soundex\" used for US census data, and current maintained by
the National Archives and Records Administration (NARA).")
(license license:perl-license)))
(define-public perl-text-wrapi18n
(package
(name "perl-text-wrapi18n")
(version "0.06")
(source (origin
(method url-fetch)
(uri (string-append
"mirror://cpan/authors/id/K/KU/KUBOTA/Text-WrapI18N-"
version ".tar.gz"))
(sha256
(base32
"12548qc99ms12yp5j26076p0zazjfv1b618h5k8r5iy2y0brmljb"))))
(build-system perl-build-system)
(inputs (list perl-text-charwidth))
(home-page "https://metacpan.org/pod/Text::WrapI18N")
(synopsis "Line wrapping for multibyte, fullwidth, combining
characters and so on")
(description
"This module intends to be a better Text::Wrap module. This
module is needed to support multibyte character encodings such as UTF-8,
EUC-JP, EUC-KR, GB2312, and Big5. This module also supports characters with
irregular widths, such as combining characters (which occupy zero columns on
terminal, like diacritical marks in UTF-8) and fullwidth characters (which
occupy two columns on terminal, like most of east Asian characters). Also,
minimal handling of languages which doesn't use whitespaces between
words (like Chinese and Japanese) is supported.")
(license (package-license perl))))
(define-public perl-regexp-pattern
(package
(name "perl-regexp-pattern")

View File

@ -2,7 +2,7 @@
;;; Copyright © 2015 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2015, 2020 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2016 Leo Famulari <leo@famulari.name>
;;; Copyright © 2020 Marius Bakke <mbakke@fastmail.com>
;;; Copyright © 2020, 2023 Marius Bakke <marius@gnu.org>
;;; Copyright © 2020 Tanguy Le Carrour <tanguy@bioneland.org>
;;; Copyright © 2018, 2021, 2022 Maxim Cournoyer <maxim.cournoyer@gmail.com>
;;; Copyright © 2021 Tobias Geerinckx-Rice <me@tobias.gr>
@ -101,6 +101,18 @@ facilitate packaging Python projects, where packaging includes:
license:asl2.0 ;packaging is dual ASL2/BSD-2
license:bsd-2))))
;; This is the last version with use_2to3 support.
(define-public python-setuptools-57
(package
(inherit python-setuptools)
(version "57.5.0")
(source (origin
(inherit (package-source python-setuptools))
(uri (pypi-uri "setuptools" version))
(sha256
(base32
"091sp8lrin7qllrhhx7y0iiv5gdb1d3l8a1ip5knk77ma1njdlyr"))))))
(define-public python-wheel
(package
(name "python-wheel")

View File

@ -2268,7 +2268,7 @@ Avocado machine readable outputs this one is streamlined (per test results).
(sha256
(base32 "0zhjmsd16xacg4vd7zb75kw8q9khn52wvad634v1bvz7swaivk2c"))))
(build-system python-build-system)
(native-inputs (list python-setuptools)) ;for use_2to3
(native-inputs (list python-setuptools-57)) ;for use_2to3
(home-page
"https://github.com/msabramo/python_unittest_parameterized_test_case")
(synopsis "Parameterized tests for Python's unittest module")

View File

@ -20,6 +20,7 @@
;;; Copyright © 2022 Paul A. Patience <paul@apatience.com>
;;; Copyright © 2022 Wiktor Żelazny <wzelazny@vurv.cz>
;;; Copyright © 2022 Eric Bavier <bavier@posteo.net>
;;; Copyright © 2022 Antero Mejr <antero@mailbox.org>
;;; Copyright © 2022 jgart <jgart@dismail.de>
;;;
;;; This file is part of GNU Guix.
@ -49,6 +50,7 @@
#:use-module (gnu packages crypto)
#:use-module (gnu packages databases)
#:use-module (gnu packages gcc)
#:use-module (gnu packages image)
#:use-module (gnu packages image-processing)
#:use-module (gnu packages machine-learning)
#:use-module (gnu packages maths)
@ -1488,6 +1490,55 @@ Python, from the Sheffield machine learning group. GPy implements a range of
machine learning algorithms based on GPs.")
(license license:bsd-3)))
(define-public python-pydicom
(package
(name "python-pydicom")
(version "2.3.0")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/pydicom/pydicom")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
"18l26s53yf5j9yh2zwq83n74qq4f2iq0cfblamsw4y9k35l1c108"))))
(build-system python-build-system)
(arguments
(list
#:phases
#~(modify-phases %standard-phases
(replace 'check
(lambda* (#:key tests? #:allow-other-keys)
(when tests?
(chdir "pydicom/tests")
(invoke "python3" "-m" "pytest" "-k" ;skip tests using web data
(string-append
"not test_jpeg_ls_pixel_data.py"
" and not test_gdcm_pixel_data.py"
" and not test_pillow_pixel_data.py"
" and not test_rle_pixel_data.py"
" and not Test_JPEG_LS_Lossless_transfer_syntax"
" and not test_numpy_pixel_data.py"
" and not test_data_manager.py"
" and not test_handler_util.py"
" and not test_overlay_np.py"
" and not test_encoders_pydicom.py"
" and not test_encaps.py"
" and not test_reading_ds_with_known_tags_with_UN_VR"
" and not TestDatasetOverlayArray"
" and not TestReader"
" and not test_filewriter.py"))))))))
(native-inputs (list python-pytest))
(inputs (list gdcm libjpeg-turbo))
(propagated-inputs (list python-numpy python-pillow))
(home-page "https://github.com/pydicom/pydicom")
(synopsis "Python library for reading and writing DICOM data")
(description "@code{python-pydicom} is a Python library for reading and
writing DICOM medical imaging data. It lets developers read, modify and write
DICOM data in a pythonic way.")
(license license:expat)))
(define-public python-deepdish
(package
(name "python-deepdish")

View File

@ -5,7 +5,7 @@
;;; Copyright © 2016, 2017 Danny Milosavljevic <dannym+a@scratchpost.org>
;;; Copyright © 2013, 2014, 2015, 2016, 2020 Andreas Enge <andreas@enge.fr>
;;; Copyright © 2016, 2017, 2019-2022 Marius Bakke <marius@gnu.org>
;;; Copyright © 2015, 2016, 2017, 2018, 2019, 2020, 2021, 2022 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2015, 2016, 2017, 2018, 2019, 2020, 2021, 2022, 2023 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2017, 2021 Roel Janssen <roel@gnu.org>
;;; Copyright © 2016, 2017, 2020 Julien Lepiller <julien@lepiller.eu>
;;; Copyright © 2016, 2017 Nikita <nikita@n0.is>
@ -93,6 +93,7 @@
#:use-module (gnu packages databases)
#:use-module (gnu packages django)
#:use-module (gnu packages freedesktop)
#:use-module (gnu packages glib)
#:use-module (gnu packages gnupg)
#:use-module (gnu packages graphviz)
#:use-module (gnu packages groff)
@ -1966,6 +1967,7 @@ Databricks REST APIs.")
"102hy2qisvjxp5s0v9lvwqi4f2dk0dhns40vjgn008yxc7k0h3cr"))))
(build-system python-build-system)
(arguments '(#:tests? #f)) ; No tests.
(propagated-inputs (list python-openid python-six))
(home-page "https://github.com/puiterwijk/python-openid-cla/")
(synopsis "Implementation of the OpenID CLA extension for python-openid")
(description "@code{openid-cla} is an implementation of the OpenID
@ -1985,6 +1987,7 @@ contributor license agreement extension for python-openid.")
"05zrh78alav24rxkbqlpbad6d3x2nljk6z6j7kflxf3vdqa7w969"))))
(build-system python-build-system)
(arguments '(#:tests? #f)) ; No tests.
(propagated-inputs (list python-openid python-six))
(home-page "https://github.com/puiterwijk/python-openid-teams/")
(synopsis "Implementation of the OpenID teams extension for python-openid")
(description
@ -3612,6 +3615,26 @@ library.")
@code{Requests} with @code{Gevent} to make asynchronous HTTP Requests easily")
(license license:bsd-2)))
(define-public python-gwebsockets
(package
(name "python-gwebsockets")
(version "0.7")
(source (origin
(method url-fetch)
(uri (pypi-uri "gwebsockets" version))
(sha256
(base32
"0kgq7wssz0mrhxdafkfc9prj0qjv9z0lyivyqvjvjnnypg54di7m"))))
(build-system python-build-system)
(propagated-inputs
(list python-pygobject))
(home-page "https://github.com/sugarlabs/gwebsockets")
(synopsis "GLib based websockets server")
(description "This package provides a websocket server written in Python.
It uses GIO for network communication and hence it easily integrates with the
GLib mainloop.")
(license license:asl2.0)))
(define-public python-dpkt
(package
(name "python-dpkt")

View File

@ -193,6 +193,7 @@
#:use-module (gnu packages image)
#:use-module (gnu packages image-processing)
#:use-module (gnu packages imagemagick)
#:use-module (gnu packages java)
#:use-module (gnu packages jupyter)
#:use-module (gnu packages kerberos)
#:use-module (gnu packages libevent)
@ -3931,6 +3932,8 @@ compare, diff, and patch JSON and JSON-like structures in Python.")
(define-public python-jsonschema-next
(package
(inherit python-jsonschema)
;; XXX: Update to the latest version requires new build system - Hatch
;; https://hatch.pypa.io/
(version "4.5.1")
(source
(origin
@ -3938,25 +3941,9 @@ compare, diff, and patch JSON and JSON-like structures in Python.")
(uri (pypi-uri "jsonschema" version))
(sha256
(base32 "1z0x22691jva7lwfcfh377jdmlz68zhiawxzl53k631l34k8hvbw"))))
(arguments
(substitute-keyword-arguments (package-arguments python-jsonschema)
((#:phases phases)
#~(modify-phases #$phases
;; XXX: PEP 517 manual build/install procedures copied from
;; python-isort.
(replace 'build
(lambda _
;; ZIP does not support timestamps before 1980.
(setenv "SOURCE_DATE_EPOCH" "315532800")
(invoke "python" "-m" "build" "--wheel" "--no-isolation" ".")))
(replace 'install
(lambda* (#:key outputs #:allow-other-keys)
(let ((whl (car (find-files "dist" "\\.whl$"))))
(invoke "pip" "--no-cache-dir" "--no-input"
"install" "--no-deps" "--prefix" #$output whl))))))))
(native-inputs (list python-pypa-build
python-setuptools-scm
python-twisted))
(build-system pyproject-build-system)
(native-inputs
(list python-setuptools-scm python-twisted))
(propagated-inputs
(list python-attrs
python-importlib-metadata
@ -14512,6 +14499,46 @@ config files.")
(home-page "https://github.com/DiffSK/configobj")
(license license:bsd-3)))
(define-public python-omegaconf
(package
(name "python-omegaconf")
(version "2.2.3")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/omry/omegaconf")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(modules '((guix build utils)))
(snippet #~(begin
(delete-file-recursively "build_helpers/bin")
(substitute* "build_helpers/build_helpers.py"
(("java") "antlr4")
(("\"-jar\",") "")
(("str\\(build_dir / \"bin\" / \"antlr.*\"\\),") ""))))
(sha256
(base32
"00rw1rkjycn0jdg3jmar6jdxb1pcb21jclm5g1921s9z8f5ii5dh"))))
(build-system pyproject-build-system)
(arguments
(list #:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'loosen-requirements
(lambda _
(substitute* "requirements/base.txt"
(("antlr4-python3-runtime==")
"antlr4-python3-runtime>=")))))))
(propagated-inputs (list java-antlr4-runtime-python
python-pydevd
python-pyyaml))
(native-inputs (list icedtea antlr4 python-pytest python-pytest-mock))
(home-page "https://github.com/omry/omegaconf")
(synopsis "Flexible configuration system")
(description "OmegaConf is a hierarchical configuration system and
supports merging configurations from multiple sources. It provides a
consistent API regardless of how the configuration was created.")
(license license:bsd-3)))
(define-public python-configargparse
(package
(name "python-configargparse")
@ -15845,8 +15872,8 @@ fast xml and html manipulation.")
;; whatever) so this transformation needs to be done before the tests
;; can be run. Maybe we could add a build step to transform beforehand
;; but it could be annoying/difficult.
;; We can enable tests for the Python 2 version, though, and do below.
#:tests? #f))
(native-inputs (list python-setuptools-57)) ;for use_2to3 support
(home-page "https://bitbucket.org/runeh/anyjson/")
(synopsis
"Wraps best available JSON implementation in a common interface")
@ -18101,7 +18128,7 @@ characters, mouse support, and auto suggestions.")
(setenv "HOME" "/tmp"))))))
(propagated-inputs
(list python-click python-future python-six))
(home-page "https://github.com/amperser/proselint")
(home-page "http://proselint.com/")
(synopsis "Linter for prose")
(description "@code{python-proselint} is a linter for English prose, that
scans through a file and detects issues.")
@ -19214,35 +19241,6 @@ working with Portable Executable (PE) files. It makes to most information
from the header, as well as section details and data available.")
(license license:expat)))
(define-public python-pyev
(package
(name "python-pyev")
(version "0.9.0")
(source
(origin
(method url-fetch)
(uri (pypi-uri "pyev" version))
(sha256
(base32
"0rf603lc0s6zpa1nb25vhd8g4y337wg2wyz56i0agsdh7jchl0sx"))))
(build-system python-build-system)
(arguments
`(#:tests? #f ; no test suite
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'patch
(lambda* (#:key inputs #:allow-other-keys)
(let ((libev (search-input-file inputs "/lib/libev.so.4")))
(substitute* "setup.py"
(("libev_dll_name = find_library\\(\\\"ev\\\"\\)")
(string-append "libev_dll_name = \"" libev "\"")))))))))
(inputs
(list libev))
(home-page "https://github.com/gabrielfalcao/pyev")
(synopsis "Python libev interface")
(description "Pyev provides a Python interface to libev.")
(license license:gpl3)))
(define-public python-imagesize
(package
(name "python-imagesize")
@ -22091,8 +22089,8 @@ filters can be used to process the data as it passes through.")
(license license:asl2.0)))
(define-public python-gyp
(let ((commit "5e2b3ddde7cda5eb6bc09a5546a76b00e49d888f")
(revision "0"))
(let ((commit "9d09418933ea2f75cc416e5ce38d15f62acd5c9a")
(revision "1"))
(package
(name "python-gyp")
;; Google does not release versions,
@ -22109,8 +22107,9 @@ filters can be used to process the data as it passes through.")
(file-name (git-file-name name version))
(sha256
(base32
"0fr7nxcrk292djmxzpcjaphnsd123k31gp8jnd91vwknhq6snmv9"))))
"0ay99rc5msqjpjl7fy1l69f8mvn08wnh2pgr08ijdih9z88xaa5x"))))
(build-system python-build-system)
(propagated-inputs (list python-six))
(home-page "https://gyp.gsrc.io/")
(synopsis "GYP is a Meta-Build system")
(description
@ -22132,13 +22131,7 @@ files, and Makefiles.")
(file-name (git-file-name name version))
(sha256
(base32 "1q7ajgqjfivxqsqgnhp4lc4p6jxyh4zprcsdbpd6dw54inaf0av5"))))
(build-system python-build-system)
(arguments
`(#:phases
(modify-phases %standard-phases
(replace 'check
(lambda _
(invoke "py.test"))))))
(build-system pyproject-build-system)
(native-inputs
(list python-pytest))
(home-page "https://github.com/Suor/whatever")
@ -22160,13 +22153,7 @@ functions by partial application of operators.")
(sha256
(base32 "1s98vkjnq3zq71737hn8xa15kssvmy1sfzsll3vrlv53902418mw"))
(file-name (git-file-name name version))))
(build-system python-build-system)
(arguments
`(#:phases
(modify-phases %standard-phases
(replace 'check
(lambda _
(invoke "py.test"))))))
(build-system pyproject-build-system)
(native-inputs
(list python-pytest python-whatever))
(home-page "https://github.com/Suor/funcy")
@ -27172,6 +27159,12 @@ be necessary when using @code{cmd}.")
(arguments
'(#:phases
(modify-phases %standard-phases
(add-after 'unpack 'fix-queue-import
(lambda _
;; Adjust Queue import for Python 3. Remove for versions >=0.4.0.
(substitute* "tests/threadsafety.py"
(("from Queue import Queue")
"from queue import Queue"))))
(add-before 'build 'qualify-libtidy
(lambda* (#:key inputs #:allow-other-keys)
(let ((libtidy (search-input-file inputs "/lib/libtidy.so")))

View File

@ -20,7 +20,7 @@
;;; Copyright © 2019 Collin J. Doering <collin@rekahsoft.ca>
;;; Copyright © 2019 Diego N. Barbato <dnbarbato@posteo.de>
;;; Copyright © 2019 Brett Gilio <brettg@posteo.de>
;;; Copyright © 2020 Maxim Cournoyer <maxim.cournoyer@gmail.com>
;;; Copyright © 2020, 2023 Maxim Cournoyer <maxim.cournoyer@gmail.com>
;;; Copyright © 2020, 2021 Nicolas Goaziou <mail@nicolasgoaziou.fr>
;;; Copyright © 2020 Michael Rohleder <mike@rohleder.de>
;;; Copyright © 2020 Holgr Peters <holger.peters@posteo.de>
@ -1261,7 +1261,7 @@ syntax to the minimum while remaining clear.")
(define-public ruby-asciidoctor
(package
(name "ruby-asciidoctor")
(version "2.0.16")
(version "2.0.18")
(source
(origin
(method git-fetch) ;the gem release lacks a Rakefile
@ -1271,44 +1271,52 @@ syntax to the minimum while remaining clear.")
(file-name (git-file-name name version))
(sha256
(base32
"086i17v9rxx0sxac26xp8c5v75jqba6rqjlk57x94qjvrh8vzyw2"))))
"1mpk3y69lqz9ywfkjmr40dm3mkabrnf92bb011qq1axj73yyrajv"))))
(build-system ruby-build-system)
(arguments
`(#:test-target "test:all"
#:phases
(modify-phases %standard-phases
(add-after 'extract-gemspec 'strip-version-requirements
(lambda _
(delete-file "Gemfile")
(substitute* "asciidoctor.gemspec"
(("(.*add_.*dependency '[_A-Za-z0-9-]+').*" _ stripped)
(string-append stripped "\n")))
#t)))))
(list
#:test-target "test:all"
#:phases
#~(modify-phases %standard-phases
(add-after 'extract-gemspec 'strip-version-requirements
(lambda _
(delete-file "Gemfile")
(substitute* "asciidoctor.gemspec"
(("(.*add_.*dependency '[_A-Za-z0-9-]+').*" _ stripped)
(string-append stripped "\n")))))
(add-after 'install 'install-man-page
(lambda* (#:key outputs #:allow-other-keys)
(install-file (search-input-file
outputs (string-append "lib/ruby/vendor_ruby/"
"gems/asciidoctor-"
#$version
"/man/asciidoctor.1"))
(string-append #$output "/share/man/man1")))))))
(native-inputs
(list ruby-erubi
ruby-erubis
ruby-minitest
ruby-nokogiri
ruby-asciimath
(list ruby-asciimath
ruby-coderay
ruby-cucumber
ruby-erubis
ruby-haml
ruby-minitest
ruby-nokogiri
ruby-open-uri-cached
ruby-rouge
ruby-rspec-expectations
ruby-simplecov
ruby-slim
ruby-tilt))
ruby-tilt
ruby-erubi))
(synopsis "Converter from AsciiDoc content to other formats")
(description "Asciidoctor is a text processor and publishing toolchain for
converting AsciiDoc content to HTML5, DocBook 5 (or 4.5), PDF, and other
formats.")
converting AsciiDoc content to HTML5, DocBook 5, PDF, and other formats.")
(home-page "https://asciidoctor.org")
(license license:expat)))
(define-public ruby-asciidoctor-multipage
(package
(name "ruby-asciidoctor-multipage")
(version "0.0.15")
(version "0.0.16")
(source (origin
(method git-fetch)
(uri (git-reference
@ -1317,7 +1325,7 @@ formats.")
(file-name (git-file-name name version))
(sha256
(base32
"01qqkf00cp4sj82brz8kl02pjirydafwgld3z166slysiq78d1c5"))))
"0rnz7qxdw5qbi3qjplihhk468kv690njdi06yllgylc75k62ar1p"))))
(propagated-inputs (list ruby-asciidoctor ruby-slim))
(build-system ruby-build-system)
(arguments
@ -1327,8 +1335,7 @@ formats.")
(delete-file "Gemfile")
(substitute* "asciidoctor-multipage.gemspec"
(("(.*add_.*dependency '[_A-Za-z0-9-]+').*" _ stripped)
(string-append stripped "
"))) #t)))))
(string-append stripped "\n"))))))))
(synopsis
"Asciidoctor extension for generating HTML output using multiple pages")
(description
@ -1341,14 +1348,14 @@ configurable levels.")
(define-public ruby-prawn-icon
(package
(name "ruby-prawn-icon")
(version "2.5.0")
(version "3.1.0")
(source
(origin
(method url-fetch)
(uri (rubygems-uri "prawn-icon" version))
(sha256
(base32
"1ivkdf8rdf92hhy97vbmc2a4w97vcvqd58jcj4z9hz3hfsb1526w"))))
"049k42bqy4iq9hddf7jah83b6qr8ka63w1d63illh1mf4f4dihdk"))))
(build-system ruby-build-system)
(arguments
`(#:test-target "spec"
@ -1358,8 +1365,7 @@ configurable levels.")
(substitute* '("Rakefile" "spec/spec_helper.rb")
((".*[Bb]undler.*") "")
(("^require 'rubocop.*") "")
(("^RuboCop.*") ""))
#t)))))
(("^RuboCop.*") "")))))))
(native-inputs
(list ruby-pdf-inspector ruby-pdf-reader ruby-rspec ruby-simplecov))
(propagated-inputs
@ -1395,31 +1401,27 @@ Style Sheets (CSS) rule sets in Ruby.")
(define-public ruby-prawn-svg
(package
(name "ruby-prawn-svg")
(version "0.30.0")
(version "0.32.0")
(source
(origin
(method url-fetch)
(uri (rubygems-uri "prawn-svg" version))
(sha256
(base32
"0df3l49cy3xpwi0b73hmi2ykbjg9kjwrvhk0k3z7qhh5ghmmrn77"))))
"0mbxzw7r7hv43db9422flc24ib9d8bdy1nasbni2h998jc5a5lb6"))))
(build-system ruby-build-system)
(arguments
`(#:phases (modify-phases %standard-phases
(add-after 'unpack 'do-not-use-bundler
(lambda _
(substitute* "spec/spec_helper.rb"
((".*[Bb]undler.*") ""))
#t))
((".*[Bb]undler.*") ""))))
(replace 'check
(lambda* (#:key tests? #:allow-other-keys)
(when tests?
(invoke "rspec" "-Ilib" "-rprawn-svg"))
#t)))))
(native-inputs
(list ruby-rspec))
(propagated-inputs
(list ruby-css-parser ruby-prawn))
(invoke "rspec" "-Ilib" "-rprawn-svg")))))))
(native-inputs (list ruby-rspec))
(propagated-inputs (list ruby-css-parser ruby-prawn))
(synopsis "SVG renderer for the Prawn PDF library")
(description "This library allows rendering Scalable Vector Graphics (SVG)
graphics directly into a Portable Document Format (PDF) document using the
@ -1816,14 +1818,14 @@ system by Donald E. Knuth.")
(define-public ruby-open-uri-cached
(package
(name "ruby-open-uri-cached")
(version "0.0.5")
(version "1.0.0")
(source
(origin
(method url-fetch)
(uri (rubygems-uri "open-uri-cached" version))
(sha256
(base32
"13xy2vhrgz9mdxhklw5fszhamsdxh8ysf3l40g92hqm4hm288wap"))))
"03v0if3jlvbclnd6jgjk94fbhf0h2fq1wxr0mbx7018sxzm0biwr"))))
(build-system ruby-build-system)
(arguments
`(#:tests? #f)) ;no test suite
@ -1837,7 +1839,7 @@ web pages.")
(define-public ruby-asciidoctor-pdf
(package
(name "ruby-asciidoctor-pdf")
(version "1.6.1")
(version "2.3.4")
(source
(origin
(method git-fetch) ;no test suite in the distributed gem
@ -1847,52 +1849,49 @@ web pages.")
(file-name (git-file-name name version))
(sha256
(base32
"1iyfy6n9d3rkyrfjmnnfb44c76mq1larmkv1x8n6p5nbm33wb9sf"))))
"07krhpj2ylz7h7hy8vg0js8yv828qxh3mkhx0bsrfh0p24xwbjrm"))))
(build-system ruby-build-system)
(arguments
`(#:test-target "spec"
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'remove-failing-tests
;; Two tests module fail for unknown reasons, *only* when
;; ran in the build container (see:
;; https://github.com/asciidoctor/asciidoctor-pdf/issues/1725#issuecomment-658777965).
(lambda _
(delete-file "spec/audio_spec.rb")
(delete-file "spec/video_spec.rb")))
(add-after 'extract-gemspec 'strip-version-requirements
(lambda _
(substitute* "asciidoctor-pdf.gemspec"
(("(.*add_.*dependency '[_A-Za-z0-9-]+').*" _ stripped)
(string-append stripped "\n")))))
;; The tests rely on the Gem being installed, so move the check phase
;; after the install phase.
(delete 'check)
(add-after 'install 'check
(lambda* (#:key outputs tests? #:allow-other-keys)
(let ((new-gem (string-append (assoc-ref outputs "out")
"/lib/ruby/vendor_ruby")))
(setenv "GEM_PATH"
(string-append (getenv "GEM_PATH") ":" new-gem))
(when tests?
(invoke "rspec" "-t" "~visual" "-t" "~cli" "-t" "~network"))))))))
(list
#:test-target "spec"
#:phases
#~(modify-phases %standard-phases
(add-after 'extract-gemspec 'strip-version-requirements
(lambda _
(substitute* "asciidoctor-pdf.gemspec"
(("(.*add_.*dependency '[_A-Za-z0-9-]+').*" _ stripped)
(string-append stripped "\n")))))
;; The tests rely on the Gem being installed, so move the check
;; phase after the install phase.
(delete 'check)
(add-after 'install 'check
(lambda* (#:key tests? #:allow-other-keys)
(setenv "GEM_PATH" (string-append
(getenv "GEM_PATH") ":"
#$output "/lib/ruby/vendor_ruby"))
(when tests?
(invoke "rspec" "-t" "~visual" "-t" "~cli"
"-t" "~network")))))))
(native-inputs
(list ruby-chunky-png ruby-coderay ruby-pdf-inspector ruby-rouge
(list ruby-chunky-png
ruby-coderay
ruby-pdf-inspector
ruby-rouge
ruby-rspec))
(propagated-inputs
`(("ruby-asciidoctor" ,ruby-asciidoctor)
("ruby-concurrent-ruby" ,ruby-concurrent)
("ruby-open-uri-cached" ,ruby-open-uri-cached)
("ruby-prawn" ,ruby-prawn)
("ruby-prawn-icon" ,ruby-prawn-icon)
("ruby-prawn-svg" ,ruby-prawn-svg)
("ruby-prawn-table" ,ruby-prawn-table)
("ruby-prawn-templates" ,ruby-prawn-templates)
("ruby-safe-yaml" ,ruby-safe-yaml)
("ruby-text-hyphen" ,ruby-text-hyphen)
("ruby-thread-safe" ,ruby-thread-safe)
("ruby-treetop" ,ruby-treetop)
("ruby-ttfunk" ,ruby-ttfunk)))
(list ruby-asciidoctor
ruby-concurrent
ruby-open-uri-cached
ruby-prawn
ruby-prawn-icon
ruby-prawn-svg
ruby-prawn-table
ruby-prawn-templates
ruby-safe-yaml
ruby-text-hyphen
ruby-thread-safe
ruby-treetop
ruby-ttfunk))
(synopsis"AsciiDoc to Portable Document Format (PDF)} converter")
(description "Asciidoctor PDF is an extension for Asciidoctor that
converts AsciiDoc documents to Portable Document Format (PDF) using the Prawn
@ -4324,25 +4323,37 @@ client protocol.")
(define-public ruby-minitest
(package
(name "ruby-minitest")
(version "5.14.4")
(version "5.17.0")
(source (origin
(method url-fetch)
(uri (rubygems-uri "minitest" version))
(sha256
(base32
"19z7wkhg59y8abginfrm2wzplz7py3va8fyngiigngqvsws6cwgl"))))
"1kjy67qajw4rnkbjs5jyk7kc3lyhz5613fwj1i8f6ppdk4zampy0"))))
(build-system ruby-build-system)
(native-inputs
(list ruby-hoe))
(native-inputs (list ruby-hoe))
(home-page "https://github.com/seattlerb/minitest")
(synopsis "Small test suite library for Ruby")
(description "Minitest provides a complete suite of Ruby testing
facilities supporting TDD, BDD, mocking, and benchmarking.")
(home-page "https://github.com/seattlerb/minitest")
(license license:expat)))
(define-public ruby-minitest-5.14
(package
(inherit ruby-minitest)
(name "ruby-minitest-5.14")
(version "")
(source (origin
(method url-fetch)
(uri (rubygems-uri "minitest" version))
(sha256
(base32
"19z7wkhg59y8abginfrm2wzplz7py3va8fyngiigngqvsws6cwgl"))))))
;; This is the last release of Minitest 4, which is used by some packages.
(define-public ruby-minitest-4
(package (inherit ruby-minitest)
(package
(inherit ruby-minitest)
(version "4.7.5")
(source (origin
(method url-fetch)
@ -4354,16 +4365,14 @@ facilities supporting TDD, BDD, mocking, and benchmarking.")
`(#:phases
(modify-phases %standard-phases
(add-after 'unpack 'remove-unsupported-method
(lambda _
(substitute* "Rakefile"
(("self\\.rubyforge_name = .*") ""))
#t))
(lambda _
(substitute* "Rakefile"
(("self\\.rubyforge_name = .*") ""))))
(add-after 'build 'exclude-failing-tests
(lambda _
;; Some tests are failing on Ruby 2.4 due to the deprecation of
;; Fixnum.
(delete-file "test/minitest/test_minitest_spec.rb")
#t)))))))
(delete-file "test/minitest/test_minitest_spec.rb"))))))))
(define-public ruby-minitest-around
(package
@ -5029,58 +5038,52 @@ to reproduce user environments.")
(license license:expat)))
(define-public ruby-mini-portile-2
(package (inherit ruby-mini-portile)
(version "2.4.0")
(package
(inherit ruby-mini-portile)
(version "2.8.1")
(source (origin
(method url-fetch)
(uri (rubygems-uri "mini_portile2" version))
(sha256
(base32
"15zplpfw3knqifj9bpf604rb3wc1vhq6363pd6lvhayng8wql5vy"))))))
"1af4yarhbbx62f7qsmgg5fynrik0s36wjy3difkawy536xg343mp"))))))
(define-public ruby-nokogiri
(package
(name "ruby-nokogiri")
(version "1.12.5")
(version "1.13.10")
(source (origin
(method url-fetch)
(uri (rubygems-uri "nokogiri" version))
(sha256
(base32
"1v02g7k7cxiwdcahvlxrmizn3avj2q6nsjccgilq1idc89cr081b"))))
"0n79k78c5vdcyl0m3y3l5x9kxl6xf5lgriwi2vd665qmdkr01vnk"))))
(build-system ruby-build-system)
(arguments
;; Tests fail because Nokogiri can only test with an installed extension,
;; and also because many test framework dependencies are missing.
`(#:tests? #f
#:gem-flags (list "--" "--use-system-libraries"
(string-append "--with-xml2-include="
(assoc-ref %build-inputs "libxml2")
"/include/libxml2" ))))
(native-inputs
(list ruby-hoe))
(inputs
(list zlib libxml2 libxslt))
(propagated-inputs
(list ruby-mini-portile-2.6.1 ruby-pkg-config))
(list
#:tests? #f
#:gem-flags #~(list "--" "--use-system-libraries"
(string-append "--with-xml2-include="
#$(this-package-input "libxml2")
"/include/libxml2" ))
#:phases
#~(modify-phases %standard-phases
(add-after 'install 'delete-mkmf.log
(lambda _
;; This build log captures non-deterministic file names (see:
;; https://github.com/sparklemotion/nokogiri/issues/2755).
(for-each delete-file (find-files #$output "^mkmf\\.log$")))))))
(native-inputs (list ruby-hoe))
(inputs (list zlib libxml2 libxslt))
(propagated-inputs (list ruby-mini-portile-2 ruby-pkg-config))
(synopsis "HTML, XML, SAX, and Reader parser for Ruby")
(description "Nokogiri () parses and searches XML/HTML, and features
both CSS3 selector and XPath 1.0 support.")
(home-page "http://www.nokogiri.org/")
(license license:expat)))
;; nokogiri requires this version exactly.
(define-public ruby-mini-portile-2.6.1
(package
(inherit ruby-mini-portile)
(version "2.6.1")
(source (origin
(method url-fetch)
(uri (rubygems-uri "mini_portile2" version))
(sha256
(base32
"1lvxm91hi0pabnkkg47wh1siv56s6slm2mdq1idfm86dyfidfprq"))))))
(define-public ruby-method-source
(package
(name "ruby-method-source")
@ -6355,39 +6358,14 @@ multibyte strings, internationalization, time zones, and testing.")
"Crass is a pure Ruby CSS parser based on the CSS Syntax Level 3 spec.")
(license license:expat)))
;;; The ruby-nokogumbo package has been absorbed into ruby-nokogiri.
(define-public ruby-nokogumbo
(package
(name "ruby-nokogumbo")
(version "2.0.2")
(source (origin
;; We use the git reference, because there's no Rakefile in the
;; published gem and the tarball on Github is outdated.
(method git-fetch)
(uri (git-reference
(url "https://github.com/rubys/nokogumbo")
(commit (string-append "v" version))))
(file-name (string-append name "-" version "-checkout"))
(sha256
(base32
"1qg0iyw450lw6d0j1ghzg79a6l60nm1m4qmrzwzybi585861jxcx"))))
(build-system ruby-build-system)
(native-inputs
(list ruby-rake-compiler))
(inputs
(list gumbo-parser))
(propagated-inputs
(list ruby-nokogiri))
(synopsis "Ruby bindings to the Gumbo HTML5 parser")
(description
"Nokogumbo allows a Ruby program to invoke the Gumbo HTML5 parser and
access the result as a Nokogiri parsed document.")
(home-page "https://github.com/rubys/nokogumbo/")
(license license:asl2.0)))
(deprecated-package "ruby-nokogumbo" ruby-nokogiri))
(define-public ruby-sanitize
(package
(name "ruby-sanitize")
(version "5.1.0")
(version "6.0.0")
(home-page "https://github.com/rgrove/sanitize")
(source (origin
(method git-fetch)
@ -6397,15 +6375,12 @@ access the result as a Nokogiri parsed document.")
(url home-page)
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(patches (search-patches "ruby-sanitize-system-libxml.patch"))
(sha256
(base32
"0lj0q9yhjp0q0in5majkshnki07mw8m2vxgndx4m5na6232aszl0"))))
"0p1a28vx95vscy9xzzyyddzgb9496x42a5i2ka39cpxbl5f3gkl0"))))
(build-system ruby-build-system)
(propagated-inputs
(list ruby-crass ruby-nokogiri ruby-nokogumbo))
(native-inputs
(list ruby-minitest))
(propagated-inputs (list ruby-crass ruby-nokogiri))
(native-inputs (list ruby-minitest))
(synopsis "Whitelist-based HTML and CSS sanitizer")
(description
"Sanitize is a whitelist-based HTML and CSS sanitizer. Given a list of
@ -6600,8 +6575,7 @@ with PostgreSQL 9.0 and later.")
;; provided.
(substitute* "minitest"
(("load File\\.expand_path\\(\"bundle\".*") "")
(("require \"bundler/setup\".*") "")))
#t))))
(("require \"bundler/setup\".*") "")))))))
(build-system ruby-build-system)
(arguments
`(#:phases
@ -6610,8 +6584,7 @@ with PostgreSQL 9.0 and later.")
(lambda _
(substitute* "test/commands/where_test.rb"
(("unless /cygwin\\|mswin\\|mingw\\|darwin/.*")
"unless true\n"))
#t))
"unless true\n"))))
(add-before 'build 'compile
(lambda _
(invoke "rake" "compile")))
@ -6623,12 +6596,15 @@ with PostgreSQL 9.0 and later.")
"finish_inside_autoloaded_files"))))
(add-before 'check 'set-home
(lambda _
(setenv "HOME" (getcwd))
#t)))))
(setenv "HOME" (getcwd)))))))
(native-inputs
(list bundler
ruby-chandler
ruby-minitest
;; Using minitest 5.17 would cause 5 new bug failures. This is
;; probably related to
;; https://github.com/deivid-rodriguez/byebug/pull/837. Use
;; minitest 5.14 until this is resolved and released.
ruby-minitest-5.14
ruby-pry
ruby-rake-compiler
ruby-rubocop
@ -7676,43 +7652,32 @@ variable length integers (varint) in Ruby Protocol Buffers.")
(define-public ruby-ruby-prof
(package
(name "ruby-ruby-prof")
(version "1.4.3")
(version "1.4.5")
(source
(origin
(method url-fetch)
(uri (rubygems-uri "ruby-prof" version))
(sha256
(base32
"1r3xalp91l07m0cwllcxjzg6nkviiqnxkcbgg5qnzsdji6rgy65m"))))
"09n13bzm1p956z318xx1v7ikqdp2i971v7p3kwf3170axz368ccy"))))
(build-system ruby-build-system)
(arguments
;; It is unclear why the tests fail on i686-linux
;; FIXME: Investigate why the tests fail on i686-linux.
`(#:tests? ,(not (or (%current-target-system)
(target-x86-32?)))
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'patch-rakefile
;; This fixes the following error: "NameError: uninitialized
;; constant Bundler::GemHelper" (see:
;; https://github.com/ruby-prof/ruby-prof/issues/274).
(lambda _
(substitute* "Rakefile"
((".*require \"bundler/setup\".*" all)
(string-append all " require 'bundler/gem_tasks'\n")))
#t))
;; The LineNumbersTest test fails non-deterministically (see:
;; https://github.com/ruby-prof/ruby-prof/issues/276).
(add-after 'extract-gemspec 'delete-flaky-test
(lambda _
(delete-file "test/line_number_test.rb")
(substitute* "ruby-prof.gemspec"
(("\"test/line_number_test\\.rb\"\\.freeze, ") ""))
#t))
(("\"test/line_number_test\\.rb\"\\.freeze, ") ""))))
(add-before 'check 'compile
(lambda _
(invoke "rake" "compile"))))))
(native-inputs
(list bundler ruby-minitest ruby-rake-compiler ruby-rdoc))
(native-inputs (list bundler ruby-minitest ruby-rake-compiler ruby-rdoc))
(synopsis "Fast code profiler for Ruby")
(description "RubyProf is a fast code profiler for Ruby. Its features
include:
@ -9701,40 +9666,30 @@ binary-to-text encoding. The main modern use of Ascii85 is in PostScript and
(define-public ruby-ttfunk
(package
(name "ruby-ttfunk")
(version "1.6.2.1")
(version "1.7.0")
(source
(origin
(method git-fetch)
;; fetch from github as the gem does not contain testing code
;; Fetch from github as the gem does not contain testing code.
(uri (git-reference
(url "https://github.com/prawnpdf/ttfunk")
(commit version)))
(url "https://github.com/prawnpdf/ttfunk")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32
"0rsf4j6s97wbcnjbvmmh6xrc7imw4g9lrlcvn945wh400lc8r53z"))))
"1jyxn928mpyb1sikjd93s3v8fmh33232pq41ziaph513j7am6fi5"))))
(build-system ruby-build-system)
(arguments
`(#:test-target "spec"
#:phases
(modify-phases %standard-phases
(add-before 'build 'remove-ssh
(lambda _
;; remove dependency on an ssh key pair that doesn't exist
(substitute* "ttfunk.gemspec"
(("spec.signing_key.*") ""))
#t))
(add-before 'check 'remove-rubocop
(lambda _
;; remove rubocop as a dependency as not needed for testing
(substitute* "ttfunk.gemspec"
(("spec.add_development_dependency\\('rubocop'.*") ""))
(substitute* "Rakefile"
(("require 'rubocop/rake_task'") "")
(("RuboCop::RakeTask.new") ""))
#t)))))
(native-inputs
(list ruby-rspec ruby-yard bundler))
(list #:test-target "spec" ;avoid the rubocop target
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'remove-missing-key-directive
;; This seem to be a common problem in Ruby projects (see:
;; https://github.com/prawnpdf/ttfunk/issues/99).
(lambda _
(substitute* "ttfunk.gemspec"
((".*spec.signing_key.*") "")))))))
(native-inputs (list ruby-prawn-dev))
(synopsis "Font metrics parser for the Prawn PDF generator")
(description
"TTFunk is a TrueType font parser written in pure Ruby. It is used as
@ -10851,13 +10806,13 @@ support the tests found in Prawn, a pure Ruby PDF generation library.")
(define-public ruby-pdf-core
(package
(name "ruby-pdf-core")
(version "0.8.1")
(version "0.9.0")
(source (origin
(method url-fetch)
(uri (rubygems-uri "pdf-core" version))
(sha256
(base32
"15d6m99bc8bbzlkcg13qfpjjzphfg5x905pjbfygvpcxsm8gnsvg"))))
"1fz0yj4zrlii2j08kaw11j769s373ayz8jrdhxwwjzmm28pqndjg"))))
(build-system ruby-build-system)
(arguments
; No test target
@ -10868,49 +10823,86 @@ support the tests found in Prawn, a pure Ruby PDF generation library.")
functionality from Prawn.")
(license license:gpl3+)))
(define-public ruby-prawn-dev
(package
(name "ruby-prawn-dev")
(version "0.3.0")
(source (origin
(method url-fetch)
(uri (rubygems-uri "prawn-dev" version))
(sha256
(base32
"1hbzzgm0nwc6h8pyv8h9xx068bf676rispxcz4a0sm8nykz54z4x"))))
(build-system ruby-build-system)
(arguments
(list
#:tests? #f ;no test suite
#:phases
#~(modify-phases %standard-phases
(add-after 'extract-gemspec 'drop-rubocop-dependency
;; Rubocop depends on Prawn. Remove it to avoid the
;; dependency cycle when using this tool to build
;; Prawn components.
(lambda _
(substitute* "lib/prawn/dev/tasks.rb"
(("require 'rubocop/rake_task'")
"")
(("RuboCop::RakeTask.new")
""))
(substitute* ".gemspec"
((".*add.*dependency.*(rubocop|simplecov).*")
"")))))))
(propagated-inputs (list ruby-rake ruby-rspec ruby-yard))
(synopsis "Shared tools for Prawn projects development")
(description "Prawn-dev contains tools to aid the development of the
various Prawn projects.")
(home-page "https://prawnpdf.org/")
(license license:expat)))
(define-public ruby-prawn
;; There hasn't been a new release since 2017/03/17.
(let ((revision "1")
(commit "d980247be8a00e7c59cd4e5785e3aa98f9856db1"))
(package
(name "ruby-prawn")
(version (git-version "2.2.2" revision commit))
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/prawnpdf/prawn")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32
"0mcmvf22h8il93yq48v9f31qpy27pvjxgv9172p0f4x9lqy0imwr"))))
(build-system ruby-build-system)
(arguments
`(#:phases
(modify-phases %standard-phases
(add-before 'build 'drop-signing-key-requirement
(lambda _
(substitute* "prawn.gemspec"
(("spec.signing_key =.*")
"spec.signing_key = nil"))
#t))
(replace 'check
(lambda* (#:key tests? #:allow-other-keys)
(when tests?
;; The Prawn manual test fails (see:
;; https://github.com/prawnpdf/prawn/issues/1163), so exclude
;; it.
(invoke "rspec" "--exclude-pattern" "prawn_manual_spec.rb"))
#t)))))
(propagated-inputs
(list ruby-pdf-core ruby-ttfunk))
(native-inputs
(list ruby-pdf-inspector ruby-prawn-manual-builder ruby-rspec
ruby-simplecov ruby-yard))
(home-page "https://prawnpdf.org/api-docs/2.0/")
(synopsis "PDF generation for Ruby")
(description "Prawn is a pure Ruby PDF generation library.")
(license %prawn-project-licenses))))
(package
(name "ruby-prawn")
(version "2.4.0")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/prawnpdf/prawn")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32
"1h1gww12wcdscij0lnd21p9zcbwrwc3miini5ppannc2birmj9ja"))))
(build-system ruby-build-system)
(arguments
(list
#:phases
#~(modify-phases %standard-phases
(add-before 'build 'drop-signing-key-requirement
(lambda _
(substitute* "prawn.gemspec"
(("spec.signing_key =.*")
"spec.signing_key = nil"))))
(replace 'check
(lambda* (#:key tests? #:allow-other-keys)
(when tests?
;; The Prawn manual test fails (see:
;; https://github.com/prawnpdf/prawn/issues/1163), so exclude
;; it.
(invoke "rspec"
"--exclude-pattern" "prawn_manual_spec.rb")))))))
(propagated-inputs
(list ruby-matrix
ruby-pdf-core
ruby-ttfunk))
(native-inputs
(list ruby-pdf-inspector
ruby-prawn-manual-builder
ruby-prawn-dev))
(home-page "https://prawnpdf.org/api-docs/2.0/")
(synopsis "PDF generation for Ruby")
(description "Prawn is a pure Ruby PDF generation library.")
(license %prawn-project-licenses)))
(define-public ruby-prawn-table
(package
@ -11189,6 +11181,31 @@ Ruby yaml library.")
(home-page "https://github.com/Pryz/yaml-lint")
(license license:expat)))
(define-public ruby-matrix
(package
(name "ruby-matrix")
(version "0.4.2")
(source (origin
(method git-fetch) ;for tests
(uri (git-reference
(url "https://github.com/ruby/matrix")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
"1asxr0jzh39lk5f8a9wm5avykrcy0v2wgd1bl3cszjczh99xy5k2"))))
(build-system ruby-build-system)
(synopsis "@code{Matrix} and @code{Vector} classes implementation for Ruby")
(description "This Ruby library provides an implementation of the
@code{Matrix} and @code{Vector} classes. The @code{Matrix} class represents a
mathematical matrix. It provides methods for creating matrices, operating on
them arithmetically and algebraically, and determining their mathematical
properties (trace, rank, inverse, determinant, eigensystem, etc.). The
@code{Vector} class represents a mathematical vector, which is useful in its
own right, and also constitutes a row or column of a @code{Matrix}.")
(home-page "https://github.com/ruby/matrix")
(license license:bsd-2)))
(define-public ruby-mercenary
(package
(name "ruby-mercenary")
@ -11545,7 +11562,7 @@ characteristics.")
(define-public ruby-html-proofer
(package
(name "ruby-html-proofer")
(version "3.18.5")
(version "5.0.3")
(source
(origin
(method git-fetch)
@ -11555,22 +11572,35 @@ characteristics.")
(file-name (git-file-name name version))
(sha256
(base32
"1pxb0fajb3l3lm7sqj548qwl7vx6sx3jy7n4cns9d4lqx7s9r9xb"))))
"01ksss3ikppc45z2q33bx8bb9785bqlp1rdqascaqg9mhs392adk"))))
(build-system ruby-build-system)
(arguments
`(;; FIXME: Tests depend on rubocop-standard.
#:tests? #f))
(native-inputs
(list ruby-awesome-print
ruby-redcarpet
ruby-rspec
ruby-rubocop
ruby-rubocop-performance
ruby-pry-byebug))
(list
;; Tests require vcr, which is under the Hippocratic license, which is
;; not a free software license (see:
;; https://www.gnu.org/licenses/license-list.html#hippocratic).
#:tests? #f
#:phases
#~(modify-phases %standard-phases
(add-after 'extract-gemspec 'relax-requirements
(lambda _
(substitute* "html-proofer.gemspec"
(("required_ruby_version = \\[\">= 3.1\"")
"required_ruby_version = [\">= 2.6\""))))
(replace 'replace-git-ls-files
(lambda _
;; The html-proofer.gemspec file contains 'all_files = %x(git
;; ls-files -z).split("\x0")', but the original phase matches on
;; `git ls-files -z`.
;; TODO: Improve ruby-build-system patterns on core-updates.
(substitute* "html-proofer.gemspec"
(("git ls-files -z")
"find . -type f -not -regex '.*\\.gem$' -print0 \
| sort -z | cut -zc3-")))))))
(propagated-inputs
(list ruby-addressable
ruby-mercenary
ruby-nokogumbo
ruby-nokogiri
ruby-parallel
ruby-rainbow
ruby-typhoeus
@ -13301,23 +13331,21 @@ export/conversion to formats such as YAML, JSON, CSL, and XML (BibTeXML).")
(define-public ruby-unicode-scripts
(package
(name "ruby-unicode-scripts")
(version "1.7.0")
(version "1.8.0")
(source (origin
(method url-fetch)
(uri (rubygems-uri "unicode-scripts" version))
(sha256
(base32
"1k7kbfk806zam129bp7pdiqkfb5hn51x149irzvjhs4xf22m4yvi"))))
"0rl6mn908yryhrg8j3mmna54gnrid2nph2kym00lbz6jwdih2a1b"))))
(build-system ruby-build-system)
(native-inputs
(list ruby-minitest))
(arguments
(list #:test-target "spec"))
(native-inputs (list ruby-minitest))
(arguments (list #:test-target "spec"))
(home-page "https://github.com/janlelis/unicode-scripts")
(synopsis "Unicode script classification library")
(description
"This gem provides a simple interface for classifying Ruby strings using
the Unicode @code{Script} and @code{Script_Extensions} properties.")
(description "This gem provides a simple interface for classifying Ruby
strings using the Unicode @code{Script} and @code{Script_Extensions}
properties.")
(license license:expat)))
(define-public ruby-citeproc
@ -13616,15 +13644,15 @@ though the later has not yet been packaged for Guix.")
(define-public anystyle
(package
(name "anystyle")
(version "1.3.1")
(version "1.3.2")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/inukshuk/anystyle-cli")
(commit version)))
(commit (string-append "v" version))))
(sha256
(base32
"1bazzms04cra8516q7vydmcm31yd0a7si1pxk4waffqy7lh0pksg"))
"0yigfyn0n255nc53nx40yqak11dm4fva46hx5db177jh7mnksjd6"))
(file-name (git-file-name name version))))
(build-system ruby-build-system)
(propagated-inputs

View File

@ -34,6 +34,7 @@
#:use-module (gnu packages fontutils)
#:use-module (gnu packages ghostscript)
#:use-module (gnu packages gtk)
#:use-module (gnu packages hunspell)
#:use-module (gnu packages icu4c)
#:use-module (gnu packages image)
#:use-module (gnu packages imagemagick)

View File

@ -40,6 +40,7 @@
#:use-module (gnu packages graphics)
#:use-module (gnu packages gtk)
#:use-module (gnu packages image)
#:use-module (gnu packages iso-codes)
#:use-module (gnu packages linux)
#:use-module (gnu packages m4)
#:use-module (gnu packages maths)
@ -47,6 +48,7 @@
#:use-module (gnu packages multiprecision)
#:use-module (gnu packages ncurses)
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages protobuf)
#:use-module (gnu packages python)
#:use-module (gnu packages python-build)
#:use-module (gnu packages python-science)
@ -936,6 +938,108 @@ forward model is implemented in @code{fenics} or
@url{https://firedrakeproject.org,firedrake}.")
(license license:lgpl3)))
(define %commonroad-dont-install-license-at-root
#~(substitute* "setup.py"
(("data_files=\\[\\('.', \\['LICENSE.txt'\\]\\)\\],")
"")))
(define-public python-commonroad-vehicle-models
(package
(name "python-commonroad-vehicle-models")
(version "3.0.2")
(source (origin
(method url-fetch)
(uri (pypi-uri "commonroad-vehicle-models" version))
(sha256
(base32
"13jg0cys7y4n7rg548w6mxk9g10gd5qxmj4ynrlriczpffqy6kc7"))))
(build-system python-build-system)
(arguments
(list #:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'fix-setup.py
(lambda _
#$%commonroad-dont-install-license-at-root)))))
(propagated-inputs (list python-numpy python-omegaconf))
(home-page "https://commonroad.in.tum.de/")
(synopsis "CommonRoad vehicle models")
(description "This package provides vehicle models used in CommonRoad
benchmarks. Varying abstraction levels are used ranging from kinematic single
track models to multi-body models.")
(license license:bsd-3)))
(define-public python-commonroad-io
(package
(name "python-commonroad-io")
(version "2022.3")
(source (origin
(method url-fetch)
(uri (pypi-uri "commonroad-io" version))
(sha256
(base32
"1cj9zj567mca8xb8sx9h3nnl2cccv6vh8h73imgpq61cimk9mvas"))))
(build-system python-build-system)
(arguments
(list #:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'fix-setup.py
(lambda _
#$%commonroad-dont-install-license-at-root)))))
(propagated-inputs (list python-commonroad-vehicle-models
python-iso3166
python-lxml
python-matplotlib
python-networkx
python-numpy
python-omegaconf
python-pillow
python-protobuf
python-rtree
python-scipy
python-shapely
python-tqdm))
(native-inputs (list python-lxml python-pytest))
(home-page "https://commonroad.in.tum.de/")
(synopsis "Read, write, and visualize CommonRoad scenarios.")
(description "This package provides methods to read, write, and visualize
CommonRoad scenarios and planning problems. It can be used as a framework for
implementing motion planning algorithms to solve CommonRoad Benchmarks
and is the basis for other tools of the CommonRoad Framework.")
(license license:bsd-3)))
(define-public python-commonroad-route-planner
(package
(name "python-commonroad-route-planner")
(version "2022.3")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://gitlab.lrz.de/tum-cps/commonroad-route-planner")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32
"0xn0l7bzmj56d4mlqacvbl8mdvsffkg2fn2lzfmis5jl4vp99ipf"))))
(arguments
(list #:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'fix-setup.py
(lambda _
#$%commonroad-dont-install-license-at-root)))))
(build-system python-build-system)
(propagated-inputs (list python-commonroad-io
python-matplotlib
python-networkx
python-numpy
python-setuptools
python-shapely))
(home-page "https://gitlab.lrz.de/tum-cps/commonroad-route-planner")
(synopsis "Route planner for CommonRoad scenarios")
(description "This package provides functions for route planning, that is
finding sequences that lead from a given start lanelet to some goal
lanelet(s).")
(license license:bsd-3)))
(define-public sumo
(package
(name "sumo")

View File

@ -318,7 +318,7 @@ Additionally, various channel-specific options can be negotiated.")
(define-public guile-ssh
(package
(name "guile-ssh")
(version "0.16.0")
(version "0.16.2")
(home-page "https://github.com/artyom-poptsov/guile-ssh")
(source (origin
(method git-fetch)
@ -328,7 +328,7 @@ Additionally, various channel-specific options can be negotiated.")
(file-name (git-file-name name version))
(sha256
(base32
"1ka5ayrg7kysx3bi5d8s0z6n12sdc06qp9gc4k9h2mlw3vz187ny"))))
"1rp5y1xjmsxplrzl0yf23g6rdjsw7ryh5pxs4pydpsryjjdwnf84"))))
(build-system gnu-build-system)
(outputs '("out" "debug"))
(arguments

View File

@ -2,6 +2,7 @@
;;; Copyright © 2020, 2022 Nicolas Goaziou <mail@nicolasgoaziou.fr>
;;; Copyright © 2021 Christopher Baines <mail@cbaines.net>
;;; Copyright © 2022 Arun Isaac <arunisaac@systemreboot.net>
;;; Copyright © 2023 Parnikkapore <poomklao@yahoo.com>
;;;
;;; This file is part of GNU Guix.
;;;
@ -26,12 +27,14 @@
#:use-module ((guix licenses) #:prefix license:)
#:use-module (guix packages)
#:use-module (gnu packages)
#:use-module (gnu packages qt)
#:use-module (gnu packages bash)
#:use-module (gnu packages check)
#:use-module (gnu packages glib)
#:use-module (gnu packages libusb)
#:use-module (gnu packages python)
#:use-module (gnu packages python-check)
#:use-module (gnu packages python-xyz)
#:use-module (gnu packages qt)
#:use-module (gnu packages wxwidgets))
(define-public python-plover-stroke
@ -55,15 +58,15 @@
(package
(name "plover")
(version "4.0.0.dev12")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/openstenoproject/plover")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "0vk6nh2gpn7f7rv2spi2a7n3m0d9kaan6r22mx3vwxprpbvrkbm8"))))
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/openstenoproject/plover")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
"0vk6nh2gpn7f7rv2spi2a7n3m0d9kaan6r22mx3vwxprpbvrkbm8"))))
(build-system python-build-system)
(arguments
(list
@ -77,8 +80,15 @@
"-p" "xvfb"
"test"
;; FIXME: Ignore failing test.
"--ignore"
"test/gui_qt/test_dictionaries_widget.py")))))))
"--ignore" "test/gui_qt/test_dictionaries_widget.py"))))
;; Ensure that icons are found at runtime.
(add-after 'install 'wrap-executable
(lambda* (#:key inputs #:allow-other-keys)
(wrap-program (string-append #$output "/bin/plover")
`("QT_PLUGIN_PATH" prefix
(,(search-input-directory inputs "/lib/qt5/plugins/")))
`("LD_LIBRARY_PATH" prefix
(,(string-append #$(this-package-input "dbus") "/lib")))))))))
(native-inputs
(list python-babel
python-mock
@ -86,7 +96,9 @@
python-pytest-qt
python-pytest-xvfb))
(inputs
(list python-appdirs
(list bash-minimal
dbus
python-appdirs
python-dbus
python-hidapi
python-plover-stroke

View File

@ -337,14 +337,14 @@ numbers of user-defined menu items efficiently.")
(define-public slock
(package
(name "slock")
(version "1.4")
(version "1.5")
(source (origin
(method url-fetch)
(uri (string-append "https://dl.suckless.org/tools/slock-"
version ".tar.gz"))
(sha256
(base32
"0sif752303dg33f14k6pgwq2jp1hjyhqv6x4sy3sj281qvdljf5m"))))
"0k8fvf9g27yyaqpyhk6apbkq6r4vjwxhff1qb9ignxx2yvxy7qdf"))))
(build-system gnu-build-system)
(arguments
`(#:tests? #f ; no tests
@ -1108,7 +1108,7 @@ support.")
(define-public sfeed
(package
(name "sfeed")
(version "1.5")
(version "1.6")
(source
(origin
(method git-fetch)
@ -1118,7 +1118,7 @@ support.")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "1w3xk00nv502q2nr23y1sig7bkqa7f431f4fcaybfcfk7dbv2piq"))))
(base32 "1ax603xxcwvmgizf6ia820fc7fliinx86zv6ggiqj5p59kz75x0r"))))
(build-system gnu-build-system)
(arguments
(list

322
gnu/packages/sugar.scm Normal file
View File

@ -0,0 +1,322 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2023 Ricardo Wurmus <rekado@elephly.net>
;;;
;;; 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 sugar)
#:use-module (gnu packages)
#:use-module (gnu packages autotools)
#:use-module (gnu packages base)
#:use-module (gnu packages freedesktop)
#:use-module (gnu packages gettext)
#:use-module (gnu packages glib)
#:use-module (gnu packages gnome)
#:use-module (gnu packages gstreamer)
#:use-module (gnu packages gtk)
#:use-module (gnu packages linux)
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages python)
#:use-module (gnu packages python-web)
#:use-module (gnu packages python-xyz)
#:use-module (gnu packages search)
#:use-module (gnu packages time)
#:use-module (gnu packages webkit)
#:use-module (gnu packages xorg)
#:use-module (guix build-system glib-or-gtk)
#:use-module (guix build-system gnu)
#:use-module (guix build-system python)
#:use-module (guix download)
#:use-module (guix git-download)
#:use-module ((guix licenses) #:prefix license:)
#:use-module (guix packages)
#:use-module (guix utils)
#:use-module (guix gexp))
(define-public sugar
(package
(name "sugar")
(version "0.120")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/sugarlabs/sugar")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
"0imhaj49n7ain33kmrqk19rzlfr50m84fbc011vgg1010ddp3vdw"))))
(build-system glib-or-gtk-build-system)
(arguments
(list
#:imported-modules
`(,@%glib-or-gtk-build-system-modules
(guix build python-build-system))
#:modules
'((guix build glib-or-gtk-build-system)
((guix build python-build-system) #:prefix python:)
(guix build utils))
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'patch-build-system
(lambda _
(substitute* "autogen.sh"
(("^\"\\$srcdir/configure" m)
(string-append "#" m)))))
(add-after 'unpack 'fix-references
(lambda* (#:key inputs #:allow-other-keys)
(substitute* "bin/sugar.in"
(("exec python3")
(string-append "exec " (which "python3"))))
(substitute* "extensions/cpsection/datetime/model.py"
(("/usr/share/zoneinfo/zone.tab")
(search-input-file inputs "/share/zoneinfo/zone.tab")))
(substitute* "extensions/cpsection/modemconfiguration/model.py"
(("/usr/share/zoneinfo/iso3166.tab")
(search-input-file inputs "/share/zoneinfo/iso3166.tab"))
(("/usr/share/mobile-broadband-provider-info")
(dirname
(search-input-file inputs
"/share/mobile-broadband-provider-info/serviceproviders.xml"))))
;; TODO: these locations should be set to places that exist on
;; Guix System.
#;
(substitute* "extensions/cpsection/background/model.py"
(("\\('/usr', 'share', 'backgrounds'\\)")
"('TODO')"))
#;
(substitute* "src/jarabe/view/viewhelp.py"
(("/usr/share/sugar/activities/Help.activity")
"TODO"))))
(add-after 'glib-or-gtk-wrap 'python-and-gi-wrap
(lambda* (#:key inputs outputs #:allow-other-keys)
(for-each
(lambda (executable)
(wrap-program executable
`("GUIX_PYTHONPATH" = (,(getenv "GUIX_PYTHONPATH")
,(python:site-packages inputs outputs)))
`("GI_TYPELIB_PATH" = (,(getenv "GI_TYPELIB_PATH")))))
(find-files (string-append #$output "/bin") "^sugar.*")))))))
(inputs
(list gtk+
mobile-broadband-provider-info
python
sugar-artwork
sugar-datastore
sugar-toolkit-gtk3
tzdata))
(propagated-inputs
(list gstreamer
gtk+
gtksourceview-3
libsoup-minimal-2
libwnck
libxklavier
network-manager
telepathy-glib
webkitgtk-with-libsoup2
python-gwebsockets))
(native-inputs
(list autoconf automake
gettext-minimal
intltool
(list glib "bin")
libtool
pkg-config
python-empy))
(home-page "https://www.sugarlabs.org/")
(synopsis "Sugar GTK shell")
(description "Sugar is the desktop environment component of a worldwide
effort to provide every child with an equal opportunity for a quality
education. Available in more than twenty-five languages, Sugar Activities are
used every school day by children in more than forty countries.")
(license license:gpl3+)))
(define-public sugar-artwork
(package
(name "sugar-artwork")
(version "0.120")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/sugarlabs/sugar-artwork")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
"1mjydyx7kbk429s3kswfb8x7g5smjwnai924avwxab1kjsjjksm9"))))
(build-system gnu-build-system)
(arguments
(list
#:configure-flags
'(list "--without-gtk2")
#:phases
'(modify-phases %standard-phases
(add-after 'unpack 'patch-build-system
(lambda _
(substitute* "autogen.sh"
(("^\"\\$srcdir/configure" m)
(string-append "#" m))))))))
(inputs (list cairo gtk+))
(native-inputs
(list autoconf automake
icon-naming-utils
libtool
pkg-config
python
python-empy
xcursorgen))
(home-page "https://www.sugarlabs.org/")
(synopsis "Sugar icons and themes")
(description "Sugar Artwork provides icons, and GTK+ CSS to build
activities and other Sugar components.")
(license (list license:lgpl2.1+
license:asl2.0))))
(define-public sugar-datastore
(package
(name "sugar-datastore")
(version "0.120")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/sugarlabs/sugar-datastore")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
"1wf33w6dm26i8a1zpb40339fj3l9vxjznagls9bc845nld318sqc"))))
(build-system glib-or-gtk-build-system)
(arguments
(list
#:imported-modules
`(,@%glib-or-gtk-build-system-modules
(guix build python-build-system))
#:modules
'((guix build glib-or-gtk-build-system)
((guix build python-build-system) #:prefix python:)
(guix build utils))
#:phases
'(modify-phases %standard-phases
(add-after 'unpack 'patch-build-system
(lambda _
(substitute* "autogen.sh"
(("^\"\\$srcdir/configure" m)
(string-append "#" m)))))
(add-after 'unpack 'patch-reference-to-du
(lambda _
(substitute* "src/carquinyol/datastore.py"
(("/usr/bin/du") (which "du")))))
(add-after 'glib-or-gtk-wrap 'python-and-gi-wrap
(lambda* (#:key inputs outputs #:allow-other-keys)
(for-each
(lambda (executable)
(wrap-program executable
`("GUIX_PYTHONPATH" = (,(getenv "GUIX_PYTHONPATH")
,(python:site-packages inputs outputs)))
`("GI_TYPELIB_PATH" = (,(getenv "GI_TYPELIB_PATH")))))
(list (search-input-file outputs "bin/copy-from-journal")
(search-input-file outputs "bin/copy-to-journal")
(search-input-file outputs "bin/datastore-service"))))))))
(inputs
(list python
sugar-toolkit-gtk3))
(propagated-inputs
(list python-dbus
python-pygobject
python-xapian-bindings))
(native-inputs
(list autoconf automake
libtool
pkg-config))
(home-page "https://www.sugarlabs.org/")
(synopsis "Service for Sugar activities to store and retrieve data")
(description "Sugar Datastore provides activities with a way to store data
and metadata, and the journal with querying and full text search.")
(license license:gpl2+)))
(define-public sugar-toolkit-gtk3
(package
(name "sugar-toolkit-gtk3")
(version "0.120")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/sugarlabs/sugar-toolkit-gtk3")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
"1wqanc38zplyiq1vxda4bj1n0xd78zqlwml6lzklsrbz923llykz"))))
(build-system glib-or-gtk-build-system)
(arguments
(list
#:imported-modules
`(,@%glib-or-gtk-build-system-modules
(guix build python-build-system))
#:modules
'((guix build glib-or-gtk-build-system)
((guix build python-build-system) #:prefix python:)
(guix build utils))
#:phases
'(modify-phases %standard-phases
(add-after 'unpack 'patch-build-system
(lambda _
(substitute* "autogen.sh"
(("^\"\\$srcdir/configure" m)
(string-append "#" m)))))
(add-after 'glib-or-gtk-wrap 'python-and-gi-wrap
(lambda* (#:key inputs outputs #:allow-other-keys)
(wrap-program (search-input-file outputs "bin/sugar-activity3")
`("GUIX_PYTHONPATH" = (,(getenv "GUIX_PYTHONPATH")
,(python:site-packages inputs outputs)))
`("GI_TYPELIB_PATH" = (,(getenv "GI_TYPELIB_PATH")))))))))
(inputs
(list alsa-lib
libice
libsm
libx11
libxfixes
libxi
python))
(propagated-inputs
;; The gi typelib files are needed by users of this library.
(list gdk-pixbuf
gobject-introspection
gtk+
(librsvg-for-system)
;; This package is used as a Python library by users, so these must
;; be propagated.
python-pycairo
python-dateutil
python-dbus
python-decorator
python-pygobject
python-six))
(native-inputs
(list autoconf automake
gettext-minimal
glib
(list glib "bin")
intltool
libtool
pkg-config))
(home-page "https://www.sugarlabs.org/")
(synopsis "GTK+ widgets and services for Sugar components")
(description "Sugar Toolkit provides services and a set of GTK+ widgets to
build activities and other Sugar components. This is the GTK+ 3 binding of
the Sugar Toolkit.")
(license license:lgpl2.1+)))

View File

@ -36,7 +36,7 @@
#:use-module (gnu packages gnome)
#:use-module (gnu packages gstreamer)
#:use-module (gnu packages gtk)
#:use-module (gnu packages libreoffice) ;for hunspell
#:use-module (gnu packages hunspell)
#:use-module (gnu packages linux)
#:use-module (gnu packages lua)
#:use-module (gnu packages ncurses)

View File

@ -38,12 +38,12 @@
#:use-module (gnu packages gnome)
#:use-module (gnu packages gnupg)
#:use-module (gnu packages gtk)
#:use-module (gnu packages hunspell)
#:use-module (gnu packages image)
#:use-module (gnu packages jemalloc)
#:use-module (gnu packages kde-frameworks)
#:use-module (gnu packages language)
#:use-module (gnu packages libevent)
#:use-module (gnu packages libreoffice)
#:use-module (gnu packages linux)
#:use-module (gnu packages llvm)
#:use-module (gnu packages lxqt)
@ -338,7 +338,7 @@
openh264
openssl
opus
pipewire-0.3
pipewire
protobuf))
(synopsis "WebRTC support for Telegram Desktop")
(description "WebRTC-for-Telegram-Desktop is a custom WebRTC fork by

View File

@ -1,5 +1,5 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2015, 2016, 2017, 2018, 2019, 2020, 2021 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2015-2021, 2023 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2016 Mckinley Olsen <mck.olsen@gmail.com>
;;; Copyright © 2016, 2017, 2019 Alex Griffin <a@ajgrf.com>
;;; Copyright © 2016 David Craven <david@craven.ch>
@ -32,6 +32,7 @@
;;; Copyright © 2021 Petr Hodina <phodina@protonmail.com>
;;; Copyright © 2022 Felipe Balbi <balbi@kernel.org>
;;; Copyright © 2022 ( <paren@disroot.org>
;;; Copyright © 2022 jgart <jgart@dismail.de>
;;;
;;; This file is part of GNU Guix.
;;;
@ -73,6 +74,7 @@
#:use-module (gnu packages crates-io)
#:use-module (gnu packages crates-graphics)
#:use-module (gnu packages crypto)
#:use-module (gnu packages dlang)
#:use-module (gnu packages docbook)
#:use-module (gnu packages fontutils)
#:use-module (gnu packages freedesktop)
@ -87,6 +89,7 @@
#:use-module (gnu packages image)
#:use-module (gnu packages libcanberra)
#:use-module (gnu packages libevent)
#:use-module (gnu packages libunwind)
#:use-module (gnu packages linux)
#:use-module (gnu packages man)
#:use-module (gnu packages ncurses)
@ -1310,6 +1313,64 @@ while also supporting native scrolling and @command{tmux} control mode
(define-public wterm
(deprecated-package "wterm" foot))
(define-public tilix
(package
(name "tilix")
(version "1.9.5")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/gnunn1/tilix")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "1ij3ix6yhi8hicxvglrxjyyv8bch9birrgsr8ml6jfh3hvk4pxdh"))))
(build-system meson-build-system)
(arguments
`(#:glib-or-gtk? #t
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'set-env-variables
(lambda _
(setenv "CC" ,(cc-for-target))))
(add-after 'unpack 'skip-gtk-update-icon-cache
(lambda _
(substitute* "meson_post_install.py"
(("gtk-update-icon-cache") (which "true"))
(("update-desktop-database") (which "true"))))))))
(inputs
(list dbus
dconf
gsettings-desktop-schemas
gtk+
gtkd
ldc
libsecret
libunwind
vte))
(native-inputs
(list appstream
gettext-minimal
(list glib "bin")
ldc
pkg-config))
(home-page "https://gnunn1.github.io/tilix-web/")
(synopsis "Tiling terminal emulator")
(description "Tilix is a tiling terminal emulator following the
Gnome Human Interface Guidelines. Its features include:
@enumerate
@item Layout terminals in any fashion by splitting them horizontally or
vertically.
@item Terminals can be re-arranged using drag and drop both within and between
windows.
@item Terminals can be detached into a new window via drag and drop.
@item Input can be synchronized between terminals so commands typed in one
terminal are replicated to the others.
@item Supports notifications when processes are completed out of view.
@end enumerate")
(license license:mpl2.0)))
(define-public tio
(package
(name "tio")

View File

@ -58,6 +58,7 @@
#:use-module (guix svn-download)
#:use-module (gnu packages)
#:use-module (gnu packages algebra)
#:use-module (gnu packages aspell)
#:use-module (gnu packages autotools)
#:use-module (gnu packages bash)
#:use-module (gnu packages boost)
@ -8314,20 +8315,22 @@ and Karl Berry.")
(define-public lyx
(package
(name "lyx")
(version "2.3.6.1")
(version "2.3.7")
(source (origin
(method url-fetch)
(uri (string-append "https://ftp.lyx.org/pub/lyx/stable/"
(version-major+minor version) ".x/"
"lyx-" version ".tar.xz"))
;; XXX: Upstream version is 2.3.7, but they released a suffixed
;; tarball. This can probably be removed after next release.
(uri (let ((suffix "-1"))
(string-append "https://ftp.lyx.org/pub/lyx/stable/"
(version-major+minor version) ".x/"
"lyx-" version suffix ".tar.xz")))
(sha256
(base32
"0y7sx804ral14py5jwmb3icvyd6rsw806dfclw0qx28r6iix5gn6"))
"1vfq30big55038bcymh83xh9dqp9wn0gnw0f6644xcw6zdj8igir"))
(modules '((guix build utils)))
(snippet
'(begin
(delete-file-recursively "3rdparty")
#t))))
(delete-file-recursively "3rdparty")))))
(build-system qt-build-system)
(arguments
(list #:configure-flags
@ -8348,16 +8351,18 @@ and Karl Berry.")
"src/support/filetools.cpp")
(("\"python ")
(string-append "\""
(assoc-ref inputs "python")
"/bin/python3 ")))))
(search-input-file inputs "/bin/python3")
" ")))))
(add-after 'unpack 'add-missing-test-file
(lambda _
;; Create missing file that would cause tests to fail.
(with-output-to-file "src/tests/check_layout.cmake"
(const #t)))))))
(inputs
(list boost
hunspell ; Note: Could also use aspell instead.
;; XXX: Aspell library is properly detected during build, but hunspell
;; isn't. So we use the former here.
(list aspell
boost
libx11
mythes
python
@ -8365,7 +8370,7 @@ and Karl Berry.")
qtsvg-5
zlib))
(propagated-inputs
`(("texlive" ,(texlive-updmap.cfg (list texlive-fonts-ec)))))
(list (texlive-updmap.cfg (list texlive-fonts-ec))))
(native-inputs
(list python pkg-config))
(home-page "https://www.lyx.org/")

View File

@ -8,7 +8,7 @@
;;; Copyright © 20172021 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2019, 2022 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2019 Andreas Enge <andreas@enge.fr>
;;; Copyright © 2019, 2020, 2021, 2022 Nicolas Goaziou <mail@nicolasgoaziou.fr>
;;; Copyright © 2019, 2020, 2021, 2022, 2023 Nicolas Goaziou <mail@nicolasgoaziou.fr>
;;; Copyright © 2020-2022 Marius Bakke <marius@gnu.org>
;;; Copyright © 2020 Tom Zander <tomz@freedommail.ch>
;;; Copyright © 2020 Mark Meyer <mark@ofosos.org>
@ -72,10 +72,10 @@
#:use-module (gnu packages gtk)
#:use-module (gnu packages guile)
#:use-module (gnu packages haskell-xyz)
#:use-module (gnu packages hunspell)
#:use-module (gnu packages icu4c)
#:use-module (gnu packages image)
#:use-module (gnu packages libbsd)
#:use-module (gnu packages libreoffice)
#:use-module (gnu packages llvm)
#:use-module (gnu packages lua)
#:use-module (gnu packages ncurses)
@ -991,14 +991,14 @@ The basic features of Text Pieces are:
(define-public scintilla
(package
(name "scintilla")
(version "5.3.1")
(version "5.3.2")
(source
(origin
(method url-fetch)
(uri (let ((v (apply string-append (string-split version #\.))))
(string-append "https://www.scintilla.org/scintilla" v ".tgz")))
(sha256
(base32 "13xh55qv8lqbnba4x0zhd3vp8flhs2vn4i8r79p7ix9yqimvamqg"))))
(base32 "16jskdc0762iwpy4s75vmp27qds32pnpaj09h48c6qg3rmvrgslh"))))
(build-system gnu-build-system)
(arguments
(list

View File

@ -145,11 +145,11 @@
#:use-module (gnu packages gstreamer)
#:use-module (gnu packages gtk)
#:use-module (gnu packages haskell-xyz)
#:use-module (gnu packages hunspell)
#:use-module (gnu packages image)
#:use-module (gnu packages imagemagick)
#:use-module (gnu packages iso-codes)
#:use-module (gnu packages libidn)
#:use-module (gnu packages libreoffice)
#:use-module (gnu packages libusb)
#:use-module (gnu packages linux)
#:use-module (gnu packages llvm)
@ -1917,7 +1917,7 @@ videoformats depend on the configuration flags of ffmpeg.")
(define-public vlc
(package
(name "vlc")
(version "3.0.17.4")
(version "3.0.18")
(source (origin
(method url-fetch)
(uri (string-append
@ -1927,7 +1927,7 @@ videoformats depend on the configuration flags of ffmpeg.")
(patches (search-patches "vlc-dav1d-compat.patch"))
(sha256
(base32
"0cs1vnv91mg7p6253v6wms3zlz91xzphpwaw14dmrd2gibc64nlc"))))
"1v7db9icrb12yz7banq2wvpjpvqfrj031yj1kf5smn35qcwl82ap"))))
(build-system gnu-build-system)
(native-inputs
(list flex bison gettext-minimal pkg-config))
@ -3420,7 +3420,7 @@ be used for realtime video capture via Linux-specific APIs.")
mbedtls-apache
mesa
pciutils
pipewire-0.3
pipewire
pulseaudio
python
qtbase-5

View File

@ -7,7 +7,7 @@
;;; Copyright © 2018 Pierre Neidhardt <mail@ambrevar.xyz>
;;; Copyright © 2019 Marius Bakke <mbakke@fastmail.com>
;;; Copyright © 2021, 2022 Maxim Cournoyer <maxim.cournoyer@gmail.com>
;;; Copyright © 2022 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2022, 2023 Efraim Flashner <efraim@flashner.co.il>
;;;
;;; This file is part of GNU Guix.
;;;
@ -283,14 +283,14 @@ propagated by default) such as @code{gst-plugins-good} and
(package
(inherit webkitgtk)
(name "webkitgtk")
(version "2.38.2") ;webkit2gtk5
(version "2.38.3") ;webkit2gtk5
(source (origin
(inherit (package-source webkitgtk))
(method url-fetch)
(uri (string-append "https://www.webkitgtk.org/releases/"
name "-" version ".tar.xz"))
(sha256
(base32 "0gpy17lwsv5x0xl7p7nf1xqsg8c4yxmd3b4wv6s87xaijs4q5szk"))))
(base32 "0njac0878ksh53gn50phly1vzvj08q7g5aclncv6k324xp8h3w21"))))
(build-system cmake-build-system)
(arguments
(substitute-keyword-arguments (package-arguments webkitgtk)

65
gnu/packages/zig-xyz.scm Normal file
View File

@ -0,0 +1,65 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2022 Maya Tomasek <maya.tomasek@disroot.org>
;;;
;;; This file is part of GNU Guix.
;;;
;;; GNU Guix is free software; you can redistribute it and/or modify it
;;; under the terms of the GNU General Public License as published by
;;; the Free Software Foundation; either version 3 of the License, or (at
;;; your option) any later version.
;;;
;;; GNU Guix is distributed in the hope that it will be useful, but
;;; WITHOUT ANY WARRANTY; without even the implied warranty of
;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
;;; GNU General Public License for more details.
;;;
;;; You should have received a copy of the GNU General Public License
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
(define-module (gnu packages zig-xyz)
#:use-module (guix packages)
#:use-module (guix git-download)
#:use-module ((guix licenses) #:prefix license:)
#:use-module (guix build-system gnu)
#:use-module (guix gexp)
#:use-module (gnu packages)
#:use-module (gnu packages zig)
#:use-module (gnu packages python))
(define-public zig-zls
(package
(name "zig-zls")
(version "0.9.0")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/zigtools/zls")
(commit version)
(recursive? #t)))
(file-name (git-file-name name version))
(sha256
(base32
"1hhs7dz9rpshfd1a7x5swmix2rmh53vsqskh3mzqlrj2lgb3cnii"))))
(build-system gnu-build-system)
(inputs (list zig python))
(arguments
(list #:phases #~(modify-phases %standard-phases
(delete 'configure)
(replace 'build
(lambda* (#:key outputs #:allow-other-keys)
(let ((out (assoc-ref outputs "out")))
(setenv "ZIG_GLOBAL_CACHE_DIR"
(string-append (getcwd) "/zig-cache"))
(invoke "zig" "build" "install"
"-Drelease-safe" "--prefix" out))))
(delete 'install)
(replace 'check
(lambda* (#:key tests? #:allow-other-keys)
(when tests?
(invoke "zig" "build" "test")))))))
(synopsis "Zig language server")
(description
"Zig Language Server is a language server implementing the @acronym{LSP,
Language Server Protocol} for the Zig programming language.")
(home-page "https://github.com/zigtools/zls")
(license license:expat)))

View File

@ -148,7 +148,7 @@
(define (certbot-renewal-jobs config)
(list
;; Attempt to renew the certificates twice per day, at a random minute
;; within the hour. See https://certbot.eff.org/all-instructions/.
;; within the hour. See https://eff-certbot.readthedocs.io/.
#~(job '(next-minute-from (next-hour '(0 12)) (list (random 60)))
#$(certbot-command config))))

View File

@ -1047,6 +1047,9 @@ fi
(bashrc (plain-file "bashrc" "\
# Bash-specific initialization.
# Provide a default prompt. The user's ~/.bashrc can override it.
PS1='\\u@\\h \\w${GUIX_ENVIRONMENT:+ [env]}\\$ '
# The 'bash-completion' package.
if [ -f /run/current-system/profile/etc/profile.d/bash_completion.sh ]
then

View File

@ -1,5 +1,5 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2013, 2014, 2015, 2016, 2017, 2018, 2019, 2020 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2013-2020, 2022 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2016 Alex Griffin <a@ajgrf.com>
;;; Copyright © 2020 Jan (janneke) Nieuwenhuizen <janneke@gnu.org>
;;; Copyright © 2020 Efraim Flashner <efraim@flashner.co.il>
@ -63,7 +63,8 @@
user-group-id
user-group-system?)
#:export (default-skeletons
#:export (%default-bashrc
default-skeletons
skeleton-directory
%base-groups
%base-user-accounts
@ -118,14 +119,8 @@
(create-home-directory? #f)
(system? #t))))
(define (default-skeletons)
"Return the default skeleton files for /etc/skel. These files are copied by
'useradd' in the home directory of newly created user accounts."
(let ((profile (plain-file "bash_profile" "\
# Honor per-interactive-shell startup file
if [ -f ~/.bashrc ]; then . ~/.bashrc; fi\n"))
(bashrc (plain-file "bashrc" "\
(define %default-bashrc
(plain-file "bashrc" "\
# Bash initialization for interactive non-login shells and
# for remote shells (info \"(bash) Bash Startup Files\").
@ -145,18 +140,20 @@ then
fi
# Source the system-wide file.
source /etc/bashrc
[ -f /etc/bashrc ] && source /etc/bashrc
# Adjust the prompt depending on whether we're in 'guix environment'.
if [ -n \"$GUIX_ENVIRONMENT\" ]
then
PS1='\\u@\\h \\w [env]\\$ '
else
PS1='\\u@\\h \\w\\$ '
fi
alias ls='ls -p --color=auto'
alias ll='ls -l'
alias grep='grep --color=auto'\n"))
(define (default-skeletons)
"Return the default skeleton files for /etc/skel. These files are copied by
'useradd' in the home directory of newly created user accounts."
(let ((profile (plain-file "bash_profile" "\
# Honor per-interactive-shell startup file
if [ -f ~/.bashrc ]; then . ~/.bashrc; fi\n"))
(bashrc %default-bashrc)
(zprofile (plain-file "zprofile" "\
# Honor system-wide environment variables
source /etc/profile\n"))

View File

@ -1,5 +1,5 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2010-2022 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2010-2023 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2012, 2013 Nikita Karetnikov <nikita@karetnikov.org>
;;; Copyright © 2021 Simon Tournier <zimon.toutoune@gmail.com>
;;; Copyright © 2022 Maxime Devos <maximedevos@telenet.be>
@ -43,6 +43,7 @@
#:use-module (guix records)
#:use-module (guix upstream)
#:use-module (guix packages)
#:autoload (guix import utils) (false-if-networking-error)
#:autoload (zlib) (call-with-gzip-input-port)
#:autoload (htmlprag) (html->sxml) ;from Guile-Lib
#:export (gnu-package-name
@ -871,28 +872,19 @@ string to fetch a specific version."
""
(dirname (uri-path uri))))
(package (package-upstream-name package)))
(catch #t
(lambda ()
(guard (c ((http-get-error? c) #f))
(import-html-release package
#:version version
#:base-url base
#:directory directory)))
(lambda (key . args)
;; Return false and move on upon connection failures and bogus HTTP
;; servers.
(unless (memq key '(gnutls-error tls-certificate-error
system-error getaddrinfo-error
bad-header bad-header-component))
(apply throw key args))
#f))))
(false-if-networking-error
(import-html-release package
#:version version
#:base-url base
#:directory directory))))
(define %gnu-updater
;; This is for everything at ftp.gnu.org.
(upstream-updater
(name 'gnu)
(description "Updater for GNU packages")
(pred gnu-hosted?)
(pred (lambda (package)
(false-if-networking-error (gnu-hosted? package))))
(import import-gnu-release)))
(define %gnu-ftp-updater
@ -902,8 +894,9 @@ string to fetch a specific version."
(name 'gnu-ftp)
(description "Updater for GNU packages only available via FTP")
(pred (lambda (package)
(and (not (gnu-hosted? package))
(pure-gnu-package? package))))
(false-if-networking-error
(and (not (gnu-hosted? package))
(pure-gnu-package? package)))))
(import import-release*)))
(define %savannah-updater

View File

@ -3,7 +3,7 @@
;;; Copyright © 2018 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2020 Martin Becze <mjbecze@riseup.net>
;;; Copyright © 2021 Xinglu Chem <public@yoctocell.xyz>
;;; Copyright © 2021 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2021, 2023, 2023 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2022 Hartmut Goebel <h.goebel@crazy-compilers.com>
;;;
;;; This file is part of GNU Guix.
@ -170,12 +170,13 @@ PACKAGE or #f if the package is not included in the Stackage LTS release."
(define (stackage-lts-package? package)
"Return whether PACKAGE is available on the default Stackage LTS release."
(and (hackage-package? package)
(let ((packages (stackage-lts-packages
(stackage-lts-info-fetch %default-lts-version)))
(hackage-name (guix-package->hackage-name package)))
(find (lambda (package)
(string=? (stackage-package-name package) hackage-name))
packages))))
(false-if-networking-error
(let ((packages (stackage-lts-packages
(stackage-lts-info-fetch %default-lts-version)))
(hackage-name (guix-package->hackage-name package)))
(find (lambda (package)
(string=? (stackage-package-name package) hackage-name))
packages)))))
(define %stackage-updater
(upstream-updater

88
guix/import/test.scm Normal file
View File

@ -0,0 +1,88 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2023 Ludovic Courtès <ludo@gnu.org>
;;;
;;; This file is part of GNU Guix.
;;;
;;; GNU Guix is free software; you can redistribute it and/or modify it
;;; under the terms of the GNU General Public License as published by
;;; the Free Software Foundation; either version 3 of the License, or (at
;;; your option) any later version.
;;;
;;; GNU Guix is distributed in the hope that it will be useful, but
;;; WITHOUT ANY WARRANTY; without even the implied warranty of
;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
;;; GNU General Public License for more details.
;;;
;;; You should have received a copy of the GNU General Public License
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
(define-module (guix import test)
#:use-module (srfi srfi-1)
#:use-module (srfi srfi-26)
#:use-module (web uri)
#:use-module (guix packages)
#:use-module (guix upstream)
#:use-module ((guix utils) #:select (version-prefix?))
#:use-module (ice-9 vlist)
#:use-module (ice-9 match)
#:export (%test-updater))
;;; Commentary:
;;;
;;; This module defines a pseudo updater whose sole purpose is to allow
;;; testing of the whole 'guix refresh' command.
;;;
;;; Code:
(define test-target-version
;; VHash that maps package names to version/URL tuples.
(make-parameter
(or (and=> (getenv "GUIX_TEST_UPDATER_TARGETS")
(lambda (str)
(alist->vhash (call-with-input-string str read))))
vlist-null)))
(define (available-updates package)
"Return the list of available <upstream-source> records for PACKAGE."
(vhash-fold* (lambda (version+updates result)
(match version+updates
((version (updates ...))
(if (version-prefix? version
(package-version package))
(append (map (match-lambda
((version url)
(upstream-source
(package (package-name package))
(version version)
(urls (list url)))))
updates)
result)
result))))
'()
(package-name package)
(test-target-version)))
(define (test-package? package)
"Return true if PACKAGE has pseudo updates available."
(and (not (vlist-null? (test-target-version))) ;cheap test
(pair? (available-updates package))))
(define* (import-release package #:key (version #f))
"Return the <upstream-source> record denoting either the latest version of
PACKAGE or VERSION."
(match (available-updates package)
(() #f)
((sources ...)
(if version
(find (lambda (source)
(string=? (upstream-source-version source)
version))
sources)
(first sources)))))
(define %test-updater
(upstream-updater
(name 'test)
(description "Pseudo updater for testing purposes.")
(pred test-package?)
(import import-release)))

View File

@ -1,5 +1,5 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2012, 2013, 2018, 2019, 2020 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2012, 2013, 2018, 2019, 2020, 2023 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2016 Jelle Licht <jlicht@fsfe.org>
;;; Copyright © 2016 David Craven <david@craven.ch>
;;; Copyright © 2017, 2019, 2020, 2022 Ricardo Wurmus <rekado@elephly.net>
@ -54,10 +54,12 @@
#:use-module (srfi srfi-9)
#:use-module (srfi srfi-11)
#:use-module (srfi srfi-26)
#:use-module (srfi srfi-34)
#:use-module (srfi srfi-71)
#:export (factorize-uri
flatten
false-if-networking-error
url-fetch
guix-hash-url
@ -122,6 +124,26 @@ of the string VERSION is replaced by the symbol 'version."
(cons elem memo)))
'() lst))
(define (call-with-networking-exception-handler thunk)
"Invoke THUNK, returning #f if one of the usual networking exception is
thrown."
(catch #t
(lambda ()
(guard (c ((http-get-error? c) #f))
(thunk)))
(lambda (key . args)
;; Return false and move on upon connection failures and bogus HTTP
;; servers.
(unless (memq key '(gnutls-error tls-certificate-error
system-error getaddrinfo-error
bad-header bad-header-component))
(apply throw key args))
#f)))
(define-syntax-rule (false-if-networking-error exp)
"Evaluate EXP, returning #f if a networking-related exception is thrown."
(call-with-networking-exception-handler (lambda () exp)))
(define (url-fetch url file-name)
"Save the contents of URL to FILE-NAME. Return #f on failure."
(parameterize ((current-output-port (current-error-port)))

View File

@ -601,7 +601,12 @@ environment~%")))
(match (vhash-assoc "PS1" actual)
(#f #f)
((_ . str)
(when (and (getenv "PS1") (string=? str (getenv "PS1")))
(when (and (getenv "PS1") (string=? str (getenv "PS1"))
;; 'PS1' might be conditional on 'GUIX_ENVIRONMENT', as
;; shown in the hint below.
(not (or (string-contains str "$GUIX_ENVIRONMENT")
(string-contains str "${GUIX_ENVIRONMENT"))))
(warning (G_ "'PS1' is the same in sub-shell~%"))
(display-hint (G_ "Consider setting a different prompt for
environment shells to make them distinguishable.
@ -610,10 +615,7 @@ If you are using Bash, you can do that by adding these lines to
@file{~/.bashrc}:
@example
if [ -n \"$GUIX_ENVIRONMENT\" ]
then
export PS1=\"\\u@@\\h \\w [env]\\$ \"
fi
PS1='\\u@@\\h \\w${GUIX_ENVIRONMENT:+ [env]}\\$ '
@end example
"))))))

View File

@ -3,7 +3,7 @@
;;; Copyright © 2021 Xinglu Chen <public@yoctocell.xyz>
;;; Copyright © 2021 Pierre Langlois <pierre.langlois@gmx.com>
;;; Copyright © 2021 Oleg Pykhalov <go.wigust@gmail.com>
;;; Copyright © 2022 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2022-2023 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2022 Antero Mejr <antero@mailbox.org>
;;;
;;; This file is part of GNU Guix.
@ -171,7 +171,7 @@ Some ACTIONS support additional ARGS.\n"))
(alist-cons 'dry-run? #t result)))
(option '(#\V "version") #f #f
(lambda args
(show-version-and-exit "guix show")))
(show-version-and-exit "guix home")))
(option '(#\v "verbosity") #t #f
(lambda (opt name arg result)
(let ((level (string->number* arg)))

View File

@ -4,7 +4,7 @@
;;; Copyright © 2015-2022 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2020 Maxim Cournoyer <maxim.cournoyer@gmail.com>
;;; Copyright © 2021 Simon Tournier <zimon.toutoune@gmail.com>
;;; Copyright © 2021 Mathieu Othacehe <othacehe@gnu.org>
;;; Copyright © 2021, 2022 Mathieu Othacehe <othacehe@gnu.org>
;;;
;;; This file is part of GNU Guix.
;;;
@ -375,14 +375,28 @@ References: ~a~%"
compression)))
compressions))))
;; Custom header to indicate that baking is in progress.
(declare-opaque-header! "X-Baking")
(define* (not-found request
#:key (phrase "Resource not found")
#:key
baking?
(phrase "Resource not found")
ttl)
"Render 404 response for REQUEST."
(format #t "-> ~a ~a: 404~a~%"
(request-method request)
(uri-path (request-uri request))
(if baking? " (baking)" ""))
(values (build-response #:code 404
#:headers (if ttl
`((cache-control (max-age . ,ttl)))
'()))
#:headers
(append
(if ttl
`((cache-control (max-age . ,ttl)))
'())
(if baking?
'((x-baking . "1"))
'())))
(string-append phrase ": "
(uri-path (request-uri request)))))
@ -587,6 +601,7 @@ requested using POOL."
#:nar-path nar-path
#:compressions compressions)
(not-found request
#:baking? #t
#:phrase "We're baking it"
#:ttl 300))) ;should be available within 5m
(else

View File

@ -90,6 +90,16 @@
(string-append %state-directory "/substitute/cache"))
(string-append (cache-directory #:ensure? #f) "/substitute")))
(define %debug?
;; Enable debug mode by setting the GUIX_SUBSTITUTE_DEBUG environmnent
;; variable.
(make-parameter
(getenv "GUIX_SUBSTITUTE_DEBUG")))
(define-syntax-rule (debug fmt args ...)
(when (%debug?)
(format #t fmt args ...)))
(define (narinfo-cache-file cache-url path)
"Return the name of the local file that contains an entry for PATH. The
entry is stored in a sub-directory specific to CACHE-URL."
@ -224,6 +234,13 @@ if file doesn't exist, and the narinfo otherwise."
(let* ((path (uri-path (request-uri request)))
(hash-part (basename
(string-drop-right path 8)))) ;drop ".narinfo"
;; Log the failing queries and indicate if it failed because the
;; narinfo is being baked.
(let ((baking?
(assoc-ref (response-headers response) 'x-baking)))
(debug "could not fetch ~a~a ~a~a~%"
url path code
(if baking? " (baking)" "")))
(if len
(get-bytevector-n port len)
(read-to-eof port))

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