me
/
guix
Archived
1
0
Fork 0

Merge branch 'master' into staging

master
Marius Bakke 2022-09-01 16:24:18 +02:00
commit c4ce54055a
No known key found for this signature in database
GPG Key ID: A2A06DF2A33A54FA
67 changed files with 47901 additions and 2122 deletions

View File

@ -397,6 +397,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/5.19-arm.conf \
gnu/packages/aux-files/linux-libre/5.19-arm64.conf \
gnu/packages/aux-files/linux-libre/5.19-i686.conf \
gnu/packages/aux-files/linux-libre/5.19-x86_64.conf \
gnu/packages/aux-files/linux-libre/5.18-arm.conf \
gnu/packages/aux-files/linux-libre/5.18-arm64.conf \
gnu/packages/aux-files/linux-libre/5.18-i686.conf \

View File

@ -36555,7 +36555,7 @@ is an example of a basic, explicit configuration:
(list
(fail2ban-jail-configuration
(name "sshd")
(enabled #t))))))
(enabled? #t))))))
;; There is no implicit dependency on an actual SSH
;; service, so you need to provide one.
(service openssh-service-type))
@ -36580,7 +36580,7 @@ For example:
openssh-service-type
(fail2ban-jail-configuration
(name "sshd")
(enabled #t)))
(enabled? #t)))
(openssh-configuration ...))))
@end lisp
@end deffn
@ -36660,7 +36660,7 @@ Required name of this jail configuration.
Whether this jail is enabled.
@item @code{backend} (type: maybe-symbol)
Backend to use to detect changes in the @code{ogpath}. The default is
Backend to use to detect changes in the @code{log-path}. The default is
'auto. To consult the defaults of the jail configuration, refer to the
@file{/etc/fail2ban/jail.conf} file of the @code{fail2ban} package.

View File

@ -83,11 +83,13 @@ turn doesn't take any constant overhead into account, force a 1-MiB minimum."
(fs-options (partition-file-system-options partition))
(label (partition-label partition))
(uuid (partition-uuid partition))
(flags (partition-flags partition))
(journal-options "lazy_itable_init=1,lazy_journal_init=1"))
(apply invoke
`("fakeroot" "mke2fs" "-t" ,fs "-d" ,root
"-L" ,label "-U" ,(uuid->string uuid)
"-L" ,label
,@(if uuid
`("-U" ,(uuid->string uuid))
'())
"-E" ,(format #f "root_owner=~a:~a,~a"
owner-uid owner-gid journal-options)
,@fs-options

View File

@ -1,5 +1,5 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2020 Mathieu Othacehe <m.othacehe@gmail.com>
;;; Copyright © 2020, 2022 Mathieu Othacehe <othacehe@gnu.org>
;;;
;;; This file is part of GNU Guix.
;;;
@ -21,6 +21,7 @@
#:use-module (guix records)
#:use-module (guix diagnostics)
#:use-module (guix i18n)
#:use-module (srfi srfi-1)
#:use-module (srfi srfi-34)
#:use-module (srfi srfi-35)
#:export (partition
@ -58,23 +59,77 @@
os->image
os+platform->image))
;;;
;;; Sanitizers.
;;;
;; Image and partition sizes can be either be a size in bytes or the 'guess
;; symbol denoting that the size should be estimated by Guix, according to the
;; image content.
(define-with-syntax-properties (validate-size (value properties))
(unless (and value
(or (eq? value 'guess) (integer? value)))
(raise
(make-compound-condition
(condition
(&error-location
(location (source-properties->location properties))))
(formatted-message
(G_ "size (~a) can only be 'guess or a numeric expression ~%")
value 'field))))
value)
;;;
;;; Partition record.
;;;
;; The partition offset should be a bytes count as an integer.
(define-with-syntax-properties (validate-partition-offset (value properties))
(unless (and value (integer? value))
(raise
(make-compound-condition
(condition
(&error-location
(location (source-properties->location properties))))
(formatted-message
(G_ "the partition offset (~a) can only be a \
numeric expression ~%") value 'field))))
value)
;; The supported partition flags.
(define-with-syntax-properties (validate-partition-flags (value properties))
(let ((bad-flags (lset-difference eq? value '(boot esp))))
(unless (and (list? value) (null? bad-flags))
(raise
(make-compound-condition
(condition
(&error-location
(location (source-properties->location properties))))
(formatted-message
(G_ "unsupported partition flag(s): ~a ~%") bad-flags)))))
value)
(define-record-type* <partition> partition make-partition
partition?
(device partition-device (default #f))
(size partition-size)
(offset partition-offset (default 0))
(file-system partition-file-system (default "ext4"))
(size partition-size ;size in bytes as integer or 'guess
(sanitize validate-size))
(offset partition-offset
(default 0) ;offset in bytes as integer
(sanitize validate-partition-offset))
(file-system partition-file-system
(default "ext4")) ;string
(file-system-options partition-file-system-options
(default '()))
(label partition-label (default #f))
(uuid partition-uuid (default #f))
(flags partition-flags (default '()))
(initializer partition-initializer (default #f))) ;gexp | #f
(default '())) ;list of strings
(label partition-label) ;string
(uuid partition-uuid
(default #f)) ;<uuid>
(flags partition-flags
(default '()) ;list of symbols
(sanitize validate-partition-flags))
(initializer partition-initializer
(default #f))) ;gexp | #f
;;;
@ -94,8 +149,11 @@ that is not in SET, mentioning FIELD in the error message."
(formatted-message (G_ "~s: invalid '~a' value") value 'field))))
value))
;; The supported image formats.
(define-set-sanitizer validate-image-format format
(disk-image compressed-qcow2 docker iso9660))
;; The supported partition table types.
(define-set-sanitizer validate-partition-table-type partition-table-type
(mbr gpt))
@ -109,7 +167,8 @@ that is not in SET, mentioning FIELD in the error message."
(platform image-platform ;<platform>
(default #f))
(size image-size ;size in bytes as integer
(default 'guess))
(default 'guess)
(sanitize validate-size))
(operating-system image-operating-system ;<operating-system>
(default #f))
(partition-table-type image-partition-table-type ; 'mbr or 'gpt
@ -133,6 +192,22 @@ that is not in SET, mentioning FIELD in the error message."
;;; Image type.
;;;
;; The role of this record is to provide a constructor that is able to turn an
;; <operating-system> record into an <image> record. Some basic <image-type>
;; records are defined in the (gnu system image) module. They are able to
;; turn an <operating-system> record into an EFI or an ISO 9660 bootable
;; image, a Docker image or even a QCOW2 image.
;;
;; Other <image-type> records are defined in the (gnu system images ...)
;; modules. They are dedicated to specific machines such as Novena and Pine64
;; SoC boards that require specific images.
;;
;; All the available <image-type> records are collected by the 'image-modules'
;; procedure. This allows the "guix system image" command to turn a given
;; <operating-system> record into an image, thanks to the specified
;; <image-type>. In that case, the <image-type> look up is done using the
;; name field of the <image-type> record.
(define-record-type* <image-type>
image-type make-image-type
image-type?
@ -145,10 +220,15 @@ that is not in SET, mentioning FIELD in the error message."
;;;
(define* (os->image os #:key type)
"Use the image constructor from TYPE, an <image-type> record to turn the
given OS, an <operating-system> record into an image and return it."
(let ((constructor (image-type-constructor type)))
(constructor os)))
(define* (os+platform->image os platform #:key type)
"Use the image constructor from TYPE, an <image-type> record to turn the
given OS, an <operating-system> record into an image targeting PLATFORM, a
<platform> record and return it."
(image
(inherit (os->image os #:type type))
(platform platform)))

View File

@ -343,6 +343,7 @@ GNU_SYSTEM_MODULES = \
%D%/packages/kawa.scm \
%D%/packages/kde.scm \
%D%/packages/kde-frameworks.scm \
%D%/packages/kde-games.scm \
%D%/packages/kde-internet.scm \
%D%/packages/kde-multimedia.scm \
%D%/packages/kde-pim.scm \
@ -750,6 +751,7 @@ GNU_SYSTEM_MODULES = \
%D%/tests/guix.scm \
%D%/tests/monitoring.scm \
%D%/tests/nfs.scm \
%D%/tests/image.scm \
%D%/tests/install.scm \
%D%/tests/ldap.scm \
%D%/tests/linux-modules.scm \
@ -1451,7 +1453,6 @@ dist_patch_DATA = \
%D%/packages/patches/libxml2-terminating-newline.patch \
%D%/packages/patches/libxml2-xpath-recursion-limit.patch \
%D%/packages/patches/libxml2-xpath0-Add-option-xpath0.patch \
%D%/packages/patches/libxmlb-install-xb-tool-into-bindir.patch \
%D%/packages/patches/libxslt-generated-ids.patch \
%D%/packages/patches/libxt-guix-search-paths.patch \
%D%/packages/patches/lierolibre-check-unaligned-access.patch \

View File

@ -2504,14 +2504,14 @@ characters can be replaced as well, as can UTF-8 characters.")
(define-public tree
(package
(name "tree")
(version "2.0.2")
(version "2.0.3")
(source (origin
(method url-fetch)
(uri (string-append
"http://mama.indstate.edu/users/ice/tree/src/tree-"
version ".tgz"))
(sha256
(base32 "1bzfkr3kmn2v5x7ljir691fr9hhjvjxqsfz0fc5fgi6ki0fklsbx"))))
(base32 "079vda37d5i3nfx12wx81z6r6bxynv2jww1z1hjziiwxbxxyf55s"))))
(build-system gnu-build-system)
(arguments
(list

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

@ -8697,6 +8697,54 @@ to identify differentially methylated regions in epigenetic epidemiology
studies.")
(license license:artistic2.0)))
(define-public r-milor
(package
(name "r-milor")
(version "1.4.0")
(source (origin
(method url-fetch)
(uri (bioconductor-uri "miloR" version))
(sha256
(base32
"1jz9p3grnczx0bpdw6j64x21in8zgm3qy19hmm296har2rx9m5zs"))))
(properties `((upstream-name . "miloR")))
(build-system r-build-system)
(propagated-inputs
(list r-biocgenerics
r-biocneighbors
r-biocparallel
r-biocsingular
r-cowplot
r-dplyr
r-edger
r-ggbeeswarm
r-ggplot2
r-ggraph
r-ggrepel
r-gtools
r-igraph
r-irlba
r-limma
r-matrix
r-matrixstats
r-patchwork
r-rcolorbrewer
r-s4vectors
r-singlecellexperiment
r-stringr
r-summarizedexperiment
r-tibble
r-tidyr))
(native-inputs (list r-knitr))
(home-page "https://marionilab.github.io/miloR")
(synopsis "Differential neighbourhood abundance testing on a graph")
(description
"Milo performs single-cell differential abundance testing. Cell states
are modelled as representative neighbourhoods on a nearest neighbour graph.
Hypothesis testing is performed using a negative bionomial generalized linear
model.")
(license license:gpl3)))
(define-public r-minfi
(package
(name "r-minfi")

View File

@ -10936,7 +10936,7 @@ in an easily configurable manner.")
(define-public pigx-bsseq
(package
(name "pigx-bsseq")
(version "0.1.7")
(version "0.1.8")
(source (origin
(method url-fetch)
(uri (string-append "https://github.com/BIMSBbioinfo/pigx_bsseq/"
@ -10944,7 +10944,7 @@ in an easily configurable manner.")
"/pigx_bsseq-" version ".tar.gz"))
(sha256
(base32
"1hfiignq3410dbl6f67vc6zr69abknpcgxixx475dspky2jb5lyn"))))
"1s8zgrqxabrawrgkga5rmgb0gyzj7ck47p3rkicjkfv7r2yjy0d7"))))
(build-system gnu-build-system)
(arguments
`(;; TODO: tests currently require 12+GB of RAM. See
@ -11592,47 +11592,43 @@ including:
(license license:gpl3+)))
(define-public r-dyngen
(let ((commit "37fd1798fcbd41093fb3d7775bb2d268e2fc82b6")
(revision "1"))
(package
(name "r-dyngen")
(version (git-version "1.0.3" revision commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/dynverse/dyngen")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32 "05pr6v1b8yji1jnj3fwx0crmg8ay6yy6lp9qjmcyvhkwbmf3kvc7"))))
(properties `((upstream-name . "dyngen")))
(build-system r-build-system)
(propagated-inputs
(list r-assertthat
r-dplyr
r-dynutils
r-ggplot2
r-ggraph
r-ggrepel
r-gillespiessa2
r-igraph
r-lmds
r-matrix
r-patchwork
r-pbapply
r-purrr
r-rlang
r-tibble
r-tidygraph
r-tidyr
r-viridis))
(home-page "https://github.com/dynverse/dyngen")
(synopsis "Multi-Modal simulator for single-cell omics analyses")
(description
"This package provides a multi-modal simulation engine for studying
(package
(name "r-dyngen")
(version "1.0.4")
(source
(origin
(method url-fetch)
(uri (cran-uri "dyngen" version))
(sha256
(base32
"1qmqy0dyiz30zpf3ii4h2ip6hg2449ghb474sjzrqa1yk9mdpy4i"))))
(properties `((upstream-name . "dyngen")))
(build-system r-build-system)
(propagated-inputs
(list r-assertthat
r-dplyr
r-dynutils
r-ggplot2
r-ggraph
r-ggrepel
r-gillespiessa2
r-igraph
r-lmds
r-matrix
r-patchwork
r-pbapply
r-purrr
r-rlang
r-tibble
r-tidygraph
r-tidyr
r-viridis))
(home-page "https://github.com/dynverse/dyngen")
(synopsis "Multi-Modal simulator for single-cell omics analyses")
(description
"This package provides a multi-modal simulation engine for studying
dynamic cellular processes at single-cell resolution.")
(license license:expat))))
(license license:expat)))
;; Needed for r-liana
(define-public r-omnipathr/devel

View File

@ -0,0 +1,224 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2022 Christopher Rodriguez <yewscion@gmail.com>
;;;
;;; This file is part of GNU Guix.
;;;
;;; GNU Guix is free software; you can redistribute it and/or modify it
;;; under the terms of the GNU General Public License as published by
;;; the Free Software Foundation; either version 3 of the License, or (at
;;; your option) any later version.
;;;
;;; GNU Guix is distributed in the hope that it will be useful, but
;;; WITHOUT ANY WARRANTY; without even the implied warranty of
;;; MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
;;; GNU General Public License for more details.
;;;
;;; You should have received a copy of the GNU General Public License
;;; along with GNU Guix. If not, see <http://www.gnu.org/licenses/>.
(define-module (gnu packages bqn)
#:use-module ((guix licenses) #:prefix license:)
#:use-module (guix gexp)
#:use-module (guix packages)
#:use-module (guix download)
#:use-module (guix git-download)
#:use-module (guix build-system copy)
#:use-module (guix build-system gnu)
#:use-module (guix utils)
#:use-module (gnu packages)
#:use-module (gnu packages bash)
#:use-module (gnu packages libffi)
#:use-module (gnu packages base)
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages llvm)
#:use-module (gnu packages java)
#:use-module (gnu packages linux)
#:use-module (gnu packages compression))
(define-public dbqn
(let ((commit "88f2b43966a75cc2c382421218eb30003bb16f4a")
(revision "1"))
(package
(name "dbqn")
(version (git-version "0.2.1" revision commit))
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/dzaima/BQN")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32
"06mzvv7kmandhgwb6jwz3rivsj4ic549sy8afnb5zr6mfn5isyg5"))))
(build-system gnu-build-system)
(arguments
(list
#:imported-modules `(,@%gnu-build-system-modules
(guix build syscalls)
(guix build ant-build-system))
#:modules `((guix build gnu-build-system)
((guix build ant-build-system)
#:prefix ant:)
(guix build utils))
#:phases #~(modify-phases %standard-phases
(delete 'configure)
(replace 'build
(lambda* _
(invoke "./build")
(chmod "./BQN" #o755)))
(replace 'check
(lambda* (#:key tests? #:allow-other-keys)
(when tests?
(system "./BQN ./test/test"))))
(add-after 'install 'reorder-jar-content
(lambda* (#:key outputs #:allow-other-keys)
(apply (assoc-ref ant:%standard-phases
'reorder-jar-content)
#:outputs (list outputs))))
(add-after 'reorder-jar-content 'jar-indices
(lambda* (#:key outputs #:allow-other-keys)
(apply (assoc-ref ant:%standard-phases
'generate-jar-indices)
#:outputs (list outputs))))
(add-after 'jar-indices 'fix-jar-timestamps
(lambda* (#:key outputs #:allow-other-keys)
(apply (assoc-ref ant:%standard-phases
'reorder-jar-content)
#:outputs (list outputs))))
(replace 'install
(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
(dest-bin (string-append out "/bin"))
(dest-jar (string-append out "/share/java")))
(mkdir-p dest-bin)
(mkdir-p dest-jar)
(copy-recursively "BQN"
(string-append dest-bin
"/dbqn"))
(install-file "BQN.jar" dest-jar)
(substitute* (string-append dest-bin "/dbqn")
(("BQN.jar")
(string-append dest-jar "/BQN.jar")))))))))
(native-inputs (list `(,icedtea-8 "jdk") zip))
(inputs (list icedtea-8 bash-minimal))
(synopsis "BQN implementation based on dzaima/APL")
(description
"dbqn is a Java implementation of the
@uref{https://mlochbaum.github.io/BQN/, BQN programming language} that does
not need to be bootstrapped, based on an earlier Java implementation of APL by
the same author.")
(home-page "https://github.com/dzaima/BQN")
(license license:expat))))
(define bqn-sources
;; Aside from dbqn above, the main bqn repository is used by other
;; implementations as a "known good" set of sources. CBQN uses dbqn to
;; generate an intermediate bytecode for its own compilation.
(let ((commit "e219af48401473a7bac49bdd8b89d69082cf5dd8"))
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/mlochbaum/BQN")
(commit commit)))
(file-name (git-file-name "bqn-sources" commit))
(sha256
(base32 "0r6pa9lscl2395g4xlvmg90vpdsjzhin4f1r0s7brymmpvmns2yc")))))
(define cbqn-bootstrap
(let* ((revision "1")
(commit "9c1cbdc99863b1da0116df61cd832137b196dc5c"))
(package
(name "cbqn-bootstrap")
(version (git-version "0" "1" commit))
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/dzaima/CBQN")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32
"0w38fhwf20drkyijy6nfnhmc5g5gw0zmzgmy1q605x57znlj85a2"))))
(build-system gnu-build-system)
(arguments
(list #:tests? #f ;skipping tests for bootstrap
#:phases #~(modify-phases %standard-phases
(delete 'configure)
(add-before 'build 'generate-bytecode
(lambda* (#:key inputs #:allow-other-keys)
(system (string-append #+dbqn
"/bin/dbqn ./genRuntime "
#+bqn-sources))))
(replace 'install
(lambda* (#:key outputs #:allow-other-keys)
(mkdir-p (string-append #$output "/bin"))
(chmod "BQN" #o755)
(copy-recursively "BQN"
(string-append #$output
"/bin/bqn")))))))
(native-inputs (list dbqn clang-toolchain bqn-sources))
(inputs (list icedtea-8 libffi))
(synopsis "BQN implementation in C")
(description "This package provides the reference implementation of
@uref{https://mlochbaum.github.io/BQN/, BQN}, a programming language inspired
by APL.")
(home-page "https://mlochbaum.github.io/BQN/")
(license license:gpl3))))
(define singeli-sources
(let ((commit "fd17b144483549dbd2bcf23e3a37a09219171a99"))
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/mlochbaum/Singeli")
(commit commit)))
(file-name (git-file-name "singeli-sources" commit))
(sha256
(base32 "1rr4l7ijzcg25n2igi1mzya6qllh5wsrf3m5i429rlgwv1fwvfji")))))
(define-public cbqn
(package
(inherit cbqn-bootstrap)
(name "cbqn")
(outputs '("out" "lib"))
(arguments
(list #:make-flags '(list "shared-o3" "o3n-singeli")
#:phases #~(modify-phases %standard-phases
(delete 'configure)
(add-before 'build 'link-singeli
(lambda* (#:key inputs #:allow-other-keys)
(symlink #+singeli-sources "Singeli")))
(add-before 'build 'generate-bytecode
(lambda* (#:key inputs #:allow-other-keys)
(system (string-append #+dbqn
"/bin/dbqn ./genRuntime "
#+bqn-sources))))
(replace 'check
(lambda* (#:key inputs tests? #:allow-other-keys)
(when tests?
(system (string-append "./BQN -M 1000 \""
#+bqn-sources
"/test/this.bqn\""))
(map (lambda (x)
(system (string-append "./BQN ./test/" x
".bqn")))
'("cmp" "equal" "copy" "random"))
(system "make -C test/ffi"))))
(replace 'install
(lambda* (#:key outputs #:allow-other-keys)
(let* ((bin (string-append (assoc-ref outputs
"out")
"/bin"))
(lib (string-append (assoc-ref outputs
"lib")
"/lib")))
(mkdir-p bin)
(copy-recursively "BQN"
(string-append bin "/bqn"))
(install-file "libcbqn.so" lib)))))))
(native-inputs (list dbqn
bqn-sources
singeli-sources
libffi
clang-toolchain
linux-libre-headers))))

View File

@ -325,6 +325,19 @@ resembles Python.")
(patches (search-patches
"meson-allow-dirs-outside-of-prefix.patch"))))))
(define-public meson-0.63
(package
(inherit meson)
(version "0.63.1")
(source (origin
(method url-fetch)
(uri (string-append "https://github.com/mesonbuild/meson/"
"releases/download/" version "/meson-"
version ".tar.gz"))
(sha256
(base32
"1sb5rdra5zc6c3ni8x65zs7r7vsnbarammf5440zzmhkf8li7zh6"))))))
(define-public premake4
(package
(name "premake")

View File

@ -1023,7 +1023,7 @@ Google's C++ code base.")
(let ((base abseil-cpp-20200923.3))
(package/inherit base
(name "abseil-cpp")
(version "20210324.2")
(version "20220623.0")
(source (origin
(method git-fetch)
(uri (git-reference
@ -1032,7 +1032,7 @@ Google's C++ code base.")
(file-name (git-file-name name version))
(sha256
(base32
"0g9rbhk3mwjdfxk7cscd04vm8fphd5flz9yykpgvyy1nwa34zk3x"))))
"1kyvlpdkkh8spqrdh9yvq2d4ri46hwxljicy3i9mp7mk2rqcnyvj"))))
(arguments
(substitute-keyword-arguments (package-arguments base)
((#:configure-flags flags)

View File

@ -27,6 +27,7 @@
;;; Copyright © 2022 Aleksandr Vityazev <avityazev@posteo.org>
;;; Copyright © 2022 Marius Bakke <marius@gnu.org>
;;; Copyright © 2022 Evgenii Lepikhin <e.lepikhin@corp.mail.ru>
;;; Copyright © 2022 Gabriel Arazas <foo.dogsquared@gmail.com>
;;;
;;; This file is part of GNU Guix.
;;;
@ -56150,7 +56151,7 @@ functionality and without weak references.")
(package
(inherit rust-sha-1-0.10)
(name "rust-sha-1")
(version "0.9.1")
(version "0.9.8")
(source
(origin
(method url-fetch)
@ -56159,16 +56160,15 @@ functionality and without weak references.")
(string-append name "-" version ".tar.gz"))
(sha256
(base32
"0w37j7swjkbzgi9mf7ihkw0zfik6vl97fs6jdpqs6r68hvm3c2hp"))))
"19jibp8l9k5v4dnhj5kfhaczdfd997h22qz0hin6pw9wvc9ngkcr"))))
(arguments
`(#:cargo-inputs
(("rust-block-buffer" ,rust-block-buffer-0.9)
("rust-cfg-if" ,rust-cfg-if-0.1)
("rust-cpuid-bool" ,rust-cpuid-bool-0.1)
("rust-cfg-if" ,rust-cfg-if-1)
("rust-cpufeatures" ,rust-cpufeatures-0.2)
("rust-digest" ,rust-digest-0.9)
("rust-libc" ,rust-libc-0.2)
("rust-opaque-debug" ,rust-opaque-debug-0.3)
("rust-sha1-asm" ,rust-sha1-asm-0.4))
("rust-sha1-asm" ,rust-sha1-asm-0.5))
#:cargo-development-inputs
(("rust-digest" ,rust-digest-0.9)
("rust-hex-literal" ,rust-hex-literal-0.2))))))

View File

@ -1,6 +1,6 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2014, 2015, 2016, 2021 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2016, 2017, 2018, 2020, 2021 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2016, 2017, 2018, 2020-2022 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2016 Sou Bunnbu <iyzsong@gmail.com>
;;; Copyright © 2017, 2018, 2019, 2021 Nicolas Goaziou <mail@nicolasgoaziou.fr>
;;; Copyright © 2018, 2019, 2020 Tobias Geerinckx-Rice <me@tobias.gr>
@ -238,7 +238,7 @@ and a Python library.")
(define-public translate-shell
(package
(name "translate-shell")
(version "0.9.6.12")
(version "0.9.7")
(source
(origin
(method git-fetch)
@ -247,7 +247,7 @@ and a Python library.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "075vqnha21rhr1b61dim7dqlfwm1yffyzcaa83s36rpk9r5sddzx"))))
(base32 "03p00v8g0y2xs3sza2r2kmhwiajaz9viab6xk9snw7chzw2cddiq"))))
(build-system gnu-build-system)
(arguments
`(#:phases
@ -256,8 +256,7 @@ and a Python library.")
(add-after 'unpack 'remove-unnecessary-file
;; This file gets generated during the build phase.
(lambda _
(delete-file "translate")
#t))
(delete-file "translate")))
(add-after 'install 'wrap-binary
(lambda* (#:key inputs outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
@ -270,8 +269,7 @@ and a Python library.")
(,(string-append out "/bin:"
curl "/bin:"
fribidi "/bin:"
rlwrap "/bin")))))
#t))
rlwrap "/bin")))))))
(add-after 'install 'emacs-install
(assoc-ref emacs:%standard-phases 'install))
(add-after 'emacs-install 'emacs-make-autoloads

View File

@ -54,6 +54,7 @@
#:use-module (gnu packages pascal)
#:use-module (gnu packages patchutils)
#:use-module (gnu packages pdf)
#:use-module (gnu packages python-check)
#:use-module (gnu packages python-web)
#:use-module (gnu packages python-xyz)
#:use-module (gnu packages sqlite)

View File

@ -44,6 +44,7 @@
#:use-module (gnu packages openldap)
#:use-module (gnu packages python)
#:use-module (gnu packages python-build)
#:use-module (gnu packages python-check)
#:use-module (gnu packages python-crypto)
#:use-module (gnu packages python-web)
#:use-module (gnu packages python-xyz)

View File

@ -3015,7 +3015,7 @@ or XEmacs.")
(define-public emacs-autothemer
(package
(name "emacs-autothemer")
(version "0.2.9")
(version "0.2.10")
(source
(origin
(method git-fetch)
@ -3025,7 +3025,7 @@ or XEmacs.")
(file-name (git-file-name name version))
(sha256
(base32
"1p7ii7f0w607zxyqnr8ivi0n0sg2p93pi6dpd9kjqywdagqyrnw1"))))
"1dz09n8qiqvzxckmy6mjnpw4f62jpk35cw16w0lhfpvfa8by4mp8"))))
(build-system emacs-build-system)
(propagated-inputs
(list emacs-dash))
@ -3248,7 +3248,7 @@ of bibliographic references.")
(define-public emacs-corfu
(package
(name "emacs-corfu")
(version "0.26")
(version "0.27")
(source
(origin
(method git-fetch)
@ -3257,7 +3257,7 @@ of bibliographic references.")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "00fmw6a1pjl4paawrhvbjw2ydnds3vxl2gjgzc9i13khnbv8wdq1"))))
(base32 "17cdbqkil4454kd3w77w18fv15djwg07qclgcnlp6mimp6sbam9w"))))
(build-system emacs-build-system)
(arguments
`(#:phases
@ -4333,7 +4333,7 @@ which is restored where possible when the file is loaded again.")
(define-public emacs-s
(package
(name "emacs-s")
(version "1.12.0")
(version "1.13.0")
(source
(origin
(method git-fetch)
@ -4342,7 +4342,7 @@ which is restored where possible when the file is loaded again.")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "1g8mqd13llj007al4nlxxx4z2lcsg3wk970mgjn0avwrhjjgdmmv"))))
(base32 "010i92kagqbfis46n1ffa28fgkdkjp55n13b6f4izar5r7ixm6wx"))))
(build-system emacs-build-system)
(arguments
`(#:tests? #t
@ -6367,7 +6367,7 @@ repetitions for example).")
(define-public emacs-flycheck-guile
(package
(name "emacs-flycheck-guile")
(version "0.2")
(version "0.4")
(source
(origin
(method git-fetch)
@ -6377,7 +6377,7 @@ repetitions for example).")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "0cs5r0ik6a3bl1k3imjl0r8y1i69kx9x9m9cgxj470qk34brwyj5"))))
(base32 "0hkj3y7xlbbnwagmccav620r3qngpc909pj3n5b876r8gp6rm87p"))))
(propagated-inputs
(list emacs-flycheck emacs-geiser emacs-geiser-guile))
(build-system emacs-build-system)
@ -14663,27 +14663,29 @@ actually changing the buffer's text.")
(license license:gpl3+)))
(define-public emacs-diff-hl
(package
(name "emacs-diff-hl")
(version "1.8.8")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/dgutov/diff-hl")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "075klzf66z1rvhpxv4j694pdkmi7f4fpw6c8q4ncz0h4y5wdbl8w"))))
(build-system emacs-build-system)
(home-page "https://github.com/dgutov/diff-hl")
(synopsis
"Highlight uncommitted changes using VC")
(description
"@code{diff-hl-mode} highlights uncommitted changes on the side of the
;;; XXX: Latest release is not tagged. Use commit matching version bump.
(let ((commit "37b00f3bad841e131d69442a89cbebc3041d996b"))
(package
(name "emacs-diff-hl")
(version "1.9.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/dgutov/diff-hl")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32 "0s3fcwk6c99n2q25bf0a33lphr9mcrxmvr5wz8qsj86jfbyi1is1"))))
(build-system emacs-build-system)
(home-page "https://github.com/dgutov/diff-hl")
(synopsis
"Highlight uncommitted changes using VC")
(description
"@code{diff-hl-mode} highlights uncommitted changes on the side of the
window (using the fringe, by default), allows you to jump between
the hunks and revert them selectively.")
(license license:gpl3+)))
(license license:gpl3+))))
(define-public emacs-diminish
;; XXX: Upstream did not tag last release.
@ -27083,14 +27085,14 @@ well as an option for visually flashing evaluated s-expressions.")
(define-public emacs-tramp
(package
(name "emacs-tramp")
(version "2.5.3.1")
(version "2.5.3.2")
(source
(origin
(method url-fetch)
(uri (string-append "https://elpa.gnu.org/packages/"
"tramp-" version ".tar"))
(sha256
(base32 "0dqc5gmp20isrlanccvj6nhalmmsfg7bmm690gxfgrbqcc2vj69a"))))
(base32 "1jcicb9f7c1nmaqg20yy2j4wd0qfch4llc26ga7q3ckhx41pvbiw"))))
(build-system emacs-build-system)
(arguments
(list
@ -31571,7 +31573,7 @@ and preferred services can easily be configured.")
(define-public emacs-vertico
(package
(name "emacs-vertico")
(version "0.25")
(version "0.26")
(source
(origin
(method git-fetch)
@ -31580,7 +31582,7 @@ and preferred services can easily be configured.")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "13lgvaxbbgc08q5dc2pmagnvg1hr2vvl6c9qxvpwqcj06kw9b5ln"))))
(base32 "16bv4pfc3k37dqyj1va3cb24db36pn8hsazk3ak4xhrgf2q5l548"))))
(build-system emacs-build-system)
(arguments
`(#:phases

View File

@ -36,21 +36,43 @@
#:use-module (guix build-system meson)
#:use-module (gnu packages)
#:use-module (gnu packages admin)
#:use-module (gnu packages autotools)
#:use-module (gnu packages assembly)
#:use-module (gnu packages backup)
#:use-module (gnu packages base)
#:use-module (gnu packages bash)
#:use-module (gnu packages bison)
#:use-module (gnu packages check)
#:use-module (gnu packages cmake)
#:use-module (gnu packages curl)
#:use-module (gnu packages compression)
#:use-module (gnu packages cross-base)
#:use-module (gnu packages curl)
#:use-module (gnu packages efi)
#:use-module (gnu packages elf)
#:use-module (gnu packages flex)
#:use-module (gnu packages gcc)
#:use-module (gnu packages gettext)
#:use-module (gnu packages glib)
#:use-module (gnu packages gnome)
#:use-module (gnu packages gnupg)
#:use-module (gnu packages gtk)
#:use-module (gnu packages hardware)
#:use-module (gnu packages libusb)
#:use-module (gnu packages linux)
#:use-module (gnu packages man)
#:use-module (gnu packages mingw)
#:use-module (gnu packages package-management)
#:use-module (gnu packages perl)
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages polkit)
#:use-module (gnu packages protobuf)
#:use-module (gnu packages python)
#:use-module (gnu packages pkg-config))
#:use-module (gnu packages python-xyz)
#:use-module (gnu packages sqlite)
#:use-module (gnu packages tls)
#:use-module (gnu packages version-control)
#:use-module (gnu packages web)
#:use-module (gnu packages xml))
(define-public ath9k-htc-firmware
(package
@ -168,6 +190,89 @@ assembler, disassembler, and debugging tools for the Linux kernel b43 wireless
driver.")
(license license:gpl2))))
(define-public fwupd
(package
(name "fwupd")
(version "1.8.3")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/fwupd/fwupd")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32
"02jf052qj1nl47ppqrgz3s9qapq4pajgkf6lbj5rxr5sshlrw44n"))))
(build-system meson-build-system)
(arguments
(list #:configure-flags #~(list "--wrap-mode=nofallback"
"-Dsystemd=false"
(string-append "-Defi_os_dir="
#$gnu-efi "/lib")
"-Defi_binary=false"
(string-append "-Dudevdir="
#$output "/lib/udev")
"--localstatedir=/var"
(string-append "--libexecdir="
#$output "/libexec")
"-Dsupported_build=true")
#:glib-or-gtk? #t ;To wrap binaries and/or compile schemas
#:phases #~(modify-phases %standard-phases
(add-after 'unpack 'make-source-writable
(lambda _
(for-each make-file-writable
(find-files "."))
(substitute* "src/fu-self-test.c"
(("/bin/sh")
(which "sh")))))
(add-before 'build 'setup-home
(lambda _
(setenv "HOME" "/tmp")))
(add-before 'install 'no-polkit-magic
(lambda _
(setenv "PKEXEC_UID" "something"))))))
(native-inputs (list gobject-introspection
python-pygobject
python-pillow
python-pycairo
python
pkg-config
vala
gtk-doc
which
umockdev
`(,glib "bin")
help2man
gettext-minimal))
(inputs (list bash-completion
glib
libgudev
libxmlb
gusb
sqlite
libarchive
libjcat
json-glib
curl
polkit
eudev
gcab
gnutls
libelf
tpm2-tss
cairo
efivar
pango
protobuf-c
mingw-w64-tools
libsmbios
gnu-efi))
(home-page "https://fwupd.org/")
(synopsis "Daemon to allow session software to update firmware")
(description "This package aims to make updating firmware on GNU/Linux
automatic, safe and reliable. It is used by tools such as GNOME Software.")
(license license:lgpl2.1+)))
(define-public openfwwf-firmware
(package
(name "openfwwf-firmware")

View File

@ -9,9 +9,9 @@
;;; Copyright © 2016 Kei Kebreau <kkebreau@posteo.net>
;;; Copyright © 2017 Nikita <nikita@n0.is>
;;; Copyright © 2017, 2018 Mark H Weaver <mhw@netris.org>
;;; Copyright © 2017, 2018, 2019, 2020 Marius Bakke <mbakke@fastmail.com>
;;; Copyright © 2017, 2018, 2019, 2020, 2022 Marius Bakke <marius@gnu.org>
;;; Copyright © 2017, 2018, 2019 Rutger Helling <rhelling@mykolab.com>
;;; Copyright © 2017, 2020, 2021 Brendan Tildesley <mail@brendan.scot>
;;; Copyright © 2017, 2020, 2021, 2022 Brendan Tildesley <mail@brendan.scot>
;;; Copyright © 2018, 20202022 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2018 Pierre Neidhardt <mail@ambrevar.xyz>
;;; Copyright © 2018 Stefan Stefanović <stefanx2ovic@gmail.com>
@ -30,6 +30,7 @@
;;; Copyright © 2021, 2021, 2022 Maxim Cournoyer <maxim.cournoyer@gmail.com>
;;; Copyright © 2022 Daniel Meißner <daniel.meissner-i4k@ruhr-uni-bochum.de>
;;; Copyright © 2022 muradm <mail@muradm.net>
;;; Copyright © 2022 Petr Hodina <phodina@protonmail.com>
;;;
;;; This file is part of GNU Guix.
;;;
@ -72,6 +73,7 @@
#:use-module (gnu packages cmake)
#:use-module (gnu packages compression)
#:use-module (gnu packages cryptsetup)
#:use-module (gnu packages curl)
#:use-module (gnu packages databases)
#:use-module (gnu packages disk)
#:use-module (gnu packages docbook)
@ -125,7 +127,7 @@
(define-public appstream
(package
(name "appstream")
(version "0.13.1")
(version "0.15.5")
(source
(origin
(method url-fetch)
@ -134,69 +136,44 @@
"appstream/releases/"
"AppStream-" version ".tar.xz"))
(sha256
(base32 "09l6ixz1w29pi0nb0flz14m4r3f2hpqpp1fq8y66v9xa4c9fczds"))))
(base32 "1hh41r82a2p7anyadfsp9lmylrrj1a6gknx2g4w6ha97riifs5fb"))))
(build-system meson-build-system)
(arguments
`(#:glib-or-gtk? #t
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'patch-libstemmer
(lambda* (#:key inputs #:allow-other-keys)
(substitute* "meson.build"
(("/usr/include")
(string-append (assoc-ref inputs "libstemmer")
"/include")))
#t))
(add-after 'patch-libstemmer 'patch-docbook-xml
(lambda* (#:key inputs #:allow-other-keys)
(with-directory-excursion "docs/api"
(substitute* "appstream-docs.xml"
(("http://www.oasis-open.org/docbook/xml/4.3/")
(string-append (assoc-ref inputs "docbook-xml-4.3")
"/xml/dtd/docbook/"))))
(for-each (lambda (file)
(substitute* file
(("http://www.oasis-open.org/docbook/xml/4.5/")
(string-append (assoc-ref inputs "docbook-xml")
"/xml/dtd/docbook/"))))
(find-files "scripts/desc" "\\.xml$"))
#t))
(add-after 'patch-docbook-xml 'disable-failing-tests
(lambda _
(substitute* "tests/test-pool.c"
(("[ \t]*g_test_add_func \\(\"/AppStream/PoolRead?.*;")
"")
(("[ \t]*g_test_add_func \\(\"/AppStream/PoolReadAsync?.*;")
"")
(("[ \t]*g_test_add_func \\(\"/AppStream/PoolEmpty?.*;")
"")
(("[ \t]*g_test_add_func \\(\"/AppStream/Cache?.*;")
"")
(("[ \t]*g_test_add_func \\(\"/AppStream/Merges?.*;")
""))
#t))
(add-after 'disable-failing-tests 'patch-install-dir
(lambda* (#:key outputs #:allow-other-keys)
(substitute* "data/meson.build"
(("/etc")
(string-append (assoc-ref outputs "out")
"/etc")))
#t)))))
(list
#:meson meson-0.63
#:glib-or-gtk? #t
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'patch-libstemmer
(lambda* (#:key inputs #:allow-other-keys)
(let ((libstemmer.h (search-input-file inputs
"include/libstemmer.h")))
(substitute* "meson.build"
(("/usr/include")
(dirname libstemmer.h))))))
(add-after 'unpack 'disable-failing-tests
(lambda _
(substitute* "tests/test-pool.c"
(("[ \t]*g_test_add_func \\(\"/AppStream/PoolRead?.*;")
""))))
(add-before 'check 'check-setup
(lambda _
(setenv "HOME" (getcwd)))))))
(native-inputs
`(("cmake" ,cmake)
("docbook-xml-4.3" ,docbook-xml-4.3)
("docbook-xml" ,docbook-xml)
("docbook-xsl" ,docbook-xsl)
("gettext" ,gettext-minimal)
("glib:bin" ,glib "bin")
("gobject-introspection" ,gobject-introspection)
("gperf" ,gperf)
("gtk-doc" ,gtk-doc/stable)
("pkg-config" ,pkg-config)
("python" ,python-wrapper)
("xsltproc" ,libxslt)))
(list docbook-xml-4.3
docbook-xml
docbook-xsl
gettext-minimal
`(,glib "bin")
gobject-introspection
gperf
gtk-doc/stable
itstool
libxslt
pkg-config
python-wrapper))
(inputs
(list libsoup-minimal-2 libstemmer libxml2 libyaml lmdb))
(list curl libsoup-minimal-2 libstemmer libxmlb libxml2 libyaml lmdb))
(propagated-inputs
(list glib))
(synopsis "Tools and libraries to work with AppStream metadata")
@ -209,9 +186,21 @@ specifications for things like an unified software metadata database, screenshot
services and various other things needed to create user-friendly
application-centers for distributions.")
(home-page "https://www.freedesktop.org/wiki/Distributions/AppStream/")
;; XXX: meson.build claims both, headers just indicate lgpl2.1+
;; there are also some (irrelevant) wtfpl2 examples
(license (list license:gpl2+ license:lgpl2.1+))))
(license license:lgpl2.1+)))
(define-public appstream-qt
(package/inherit appstream
(name "appstream-qt")
(native-inputs
(modify-inputs (package-native-inputs appstream)
(prepend qttools-5)))
(inputs
(modify-inputs (package-inputs appstream)
(prepend qtbase-5)))
(arguments
(substitute-keyword-arguments (package-arguments appstream)
((#:configure-flags flags #~'())
#~(append '("-Dqt=true") #$flags))))))
(define-public farstream
(package
@ -1090,6 +1079,21 @@ protocol either in Wayland core, or some other protocol in wayland-protocols.")
. "https://wayland.freedesktop.org/releases.html")))
(license license:expat)))
;;; This is just a temporary package that should be deleted
(define-public wayland-protocols-next
(package
(inherit wayland-protocols)
(name "wayland-protocols")
(version "1.26")
(source (origin
(method url-fetch)
(uri (string-append
"https://wayland.freedesktop.org/releases/"
"wayland-protocols-" version ".tar.xz"))
(sha256
(base32
"04vgllmpmrv14x3x64ns01vgwx4hriljayjkz9idgbv83i63hly5"))))))
(define-public waylandpp
(package
(name "waylandpp")

View File

@ -509,16 +509,16 @@ formats such as PNG.")
(define-public tiled
(package
(name "tiled")
(version "1.8.1")
(version "1.8.6")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/bjorn/tiled")
(url "https://github.com/mapeditor/tiled")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
"05gczsywkk45bh0z1vv8l6cmrlncc2qj8agavj5ryxpnxkzy69r1"))))
"0iimfj4kbhmjk94586fqz11bk4i7v0zsxby8agx7450cqlh2y3zi"))))
(build-system gnu-build-system)
(inputs
(list qtbase-5 qtdeclarative-5 qtsvg-5 zlib))

File diff suppressed because it is too large Load Diff

View File

@ -3086,6 +3086,36 @@ pre-alpha code.")
parameters, which define* and lambda* special forms")
(license license:gpl3+)))
(define-public guile-srfi-128
(package
(name "guile-srfi-128")
(version "0.1.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://inqlab.net/git/guile-srfi-128.git")
(commit (string-append "v" version))))
(sha256
(base32
"03d85q5l2gc2c8cmri6zd4pfndvnadlhwh77hsx6ixvvm8vwq4sy"))
(file-name (git-file-name name version))))
(build-system guile-build-system)
(native-inputs
(list guile-3.0))
(home-page "https://inqlab.net/git/guile-srfi-128.git")
(synopsis "SRFI 128 Comparators (reduced) port for Guile")
(description
"This package provides an implementation of SRFI 128 for Guile.
SRFI 128 defines comparators, which bundles a test type predicate, an
equality predicate, an ordering predicate and a hash function into a
single Scheme object. This can be used in the implementation of data
structures. This package re-uses the SRFI sample implementation.")
(license
(list license:lgpl3+
;; contains ISC code from the SRFI sample implementation
license:isc))))
(define-public guile-srfi-145
(package
(name "guile-srfi-145")
@ -3110,6 +3140,44 @@ parameters, which define* and lambda* special forms")
denote the invalidity of certain code paths in a Scheme program.")
(license license:gpl3+)))
(define-public guile-srfi-146
(package
(name "guile-srfi-146")
(version "0.1.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://inqlab.net/git/guile-srfi-146.git")
(commit (string-append "v" version))))
(sha256
(base32
"13dbzlav4fql8lcfr021z5368lwri6i15x0ykv8llzyghlbbx2w6"))
(file-name (git-file-name name version))))
(build-system gnu-build-system)
(native-inputs
(list guile-3.0
guile-srfi-128 guile-srfi-145 guile-srfi-158
autoconf automake pkg-config))
(inputs (list guile-3.0))
(propagated-inputs
(list guile-srfi-128 guile-srfi-145 guile-srfi-158))
(synopsis "SRFI 146 (Mappings) for Guile")
(description
"This package provides an implementation of SRFI 146 for Guile.
SRFI 146 defines datastructures that implement mappings (finite sets
of associations consiting of a key and a value). Two types of
mappings are defined: One using a comparator to define an order on the
keys and another using a hash function on the keys. The
datastructures and procedures are by default purely-functional. This
package re-uses the SRFI sample implementation that is based on
red-black trees and Hash Array Mapped Trie (HAMT).")
(home-page "https://inqlab.net/git/guile-srfi-146.git")
(license
(list license:lgpl3+
;; contains ISC code from the SRFI sample implementation
license:isc))))
(define-public guile-srfi-158
(let ((commit "13126d1ed37892c864337a600a43d6876625fb99")
(revision "0"))

View File

@ -304,14 +304,14 @@ to @code{cabal repl}).")
(define-public git-annex
(package
(name "git-annex")
(version "10.20220624")
(version "10.20220822")
(source
(origin
(method url-fetch)
(uri (string-append "https://hackage.haskell.org/package/"
"git-annex/git-annex-" version ".tar.gz"))
(sha256
(base32 "0a17ph8w620fmbwhm4yhdz2pwp0z8g5d4qsw2bg8k1par2n8rnmz"))))
(base32 "1qv3cb7p2zyc5mpcr4nfgzdmswfny5jbimd2ip7ygh71jlahrbfc"))))
(build-system haskell-build-system)
(arguments
`(#:configure-flags
@ -326,8 +326,7 @@ to @code{cabal repl}).")
;; let's temporarily patch it so that we can run the tests.
(copy-file "Utility/Shell.hs" "/tmp/Shell.hs")
(substitute* "Utility/Shell.hs"
(("/bin/sh") (which "sh")))
#t))
(("/bin/sh") (which "sh")))))
(add-before 'configure 'factor-setup
(lambda _
;; Factor out necessary build logic from the provided
@ -341,12 +340,10 @@ to @code{cabal repl}).")
(call-with-output-file "Setup.hs"
(lambda (out)
(format out "import Distribution.Simple~%")
(format out "main = defaultMain~%")))
#t))
(format out "main = defaultMain~%")))))
(add-before 'configure 'pre-configure
(lambda _
(invoke "runhaskell" "PreConf.hs")
#t))
(invoke "runhaskell" "PreConf.hs")))
(add-after 'build 'build-manpages
(lambda _
;; The Setup.hs rewrite above removed custom code for building
@ -380,8 +377,7 @@ to @code{cabal repl}).")
"/man/man1/")))
(mkdir-p man)
(for-each (lambda (file) (install-file file man))
(find-files "man")))
#t))
(find-files "man")))))
(add-after 'install 'install-symlinks
(lambda* (#:key outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out"))
@ -389,8 +385,7 @@ to @code{cabal repl}).")
(symlink (string-append bin "/git-annex")
(string-append bin "/git-annex-shell"))
(symlink (string-append bin "/git-annex")
(string-append bin "/git-remote-tor-annex"))
#t)))
(string-append bin "/git-remote-tor-annex")))))
(add-after 'install 'touch-static-output
(lambda* (#:key outputs #:allow-other-keys)
;; The Haskell build system adds a "static" output by

View File

@ -28,7 +28,7 @@
;;; Copyright © 2020 Alexandru-Sergiu Marton <brown121407@member.fsf.org>
;;; Copyright © 2020 Carlo Holl <carloholl@gmail.com>
;;; Copyright © 2020 Christine Lemmer-Webber <cwebber@dustycloud.org>
;;; Copyright © 2021 Alice BRENON <alice.brenon@ens-lyon.fr>
;;; Copyright © 2021, 2022 Alice BRENON <alice.brenon@ens-lyon.fr>
;;; Copyright © 2021 John Kehayias <john.kehayias@protonmail.com>
;;;
;;; This file is part of GNU Guix.
@ -10913,6 +10913,27 @@ expose it from another module in the hierarchy.
@end itemize")
(license license:expat)))
(define-public ghc-roman-numerals
(package
(name "ghc-roman-numerals")
(version "0.5.1.5")
(source (origin
(method url-fetch)
(uri (hackage-uri "roman-numerals" version))
(sha256
(base32
"10da5vls9l5i255bapms4b2r7dnwmxgsaa1cdll2lrmid5dikixr"))))
(build-system haskell-build-system)
(inputs (list ghc-base-unicode-symbols))
(home-page "https://github.com/roelvandijk/roman-numerals")
(synopsis "Parsing and pretty printing of Roman numerals")
(description
"This library provides functions for parsing and pretty printing Roman numerals.
Because the notation of Roman numerals has varied through the centuries this
package allows for some customisation using a configuration that is passed to
the conversion functions.")
(license license:bsd-3)))
(define-public ghc-safe
(package
(name "ghc-safe")

View File

@ -333,7 +333,17 @@ line for tracing control, a @code{lttng-ctl} library for tracing control and a
(base32 "1ab735idi0h62yvhzd7822jj3555vygixv4xjrfrdvi8d2hhz6qn"))))
(build-system copy-build-system)
(arguments
`(#:install-plan
`(#:phases
(modify-phases %standard-phases
(add-after 'unpack 'patch-file-names
(lambda* (#:key inputs #:allow-other-keys)
(substitute* '("execsnoop" "killsnoop" "kernel/funcslower")
(("/usr/bin/gawk")
(search-input-file inputs "/bin/awk")))
(substitute* "execsnoop"
(("/usr/bin/getconf")
(search-input-file inputs "/bin/getconf"))))))
#:install-plan
',(append
(map (cut list <> "bin/")
'("disk/bitesize"
@ -360,7 +370,6 @@ line for tracing control, a @code{lttng-ctl} library for tracing control and a
bash
coreutils ; cat + rm
gawk
gcc-toolchain ; objdump + ldconfig
file
perf
perl

View File

@ -9,6 +9,7 @@
;;; Copyright © 2020 Vincent Legoll <vincent.legoll@gmail.com>
;;; Copyright © 2020 Marius Bakke <mbakke@fastmail.com>
;;; Copyright © 2021 Alexandros Theodotou <alex@zrythm.org>
;;; Copyright © 2022 Brendan Tildesley <mail@brendan.scot>
;;;
;;; This file is part of GNU Guix.
;;;
@ -234,7 +235,7 @@ common build settings used in software produced by the KDE community.")
(arguments
`(#:configure-flags
'( "-DPHONON_BUILD_PHONON4QT5=ON")))
(home-page "https://phonon.kde.org")
(home-page "https://community.kde.org/Phonon")
(synopsis "Phonon backend which uses GStreamer")
(description "Phonon makes use of backend libraries to provide sound.
Phonon-GStreamer is a backend based on the GStreamer multimedia library.")
@ -715,7 +716,7 @@ infrastructure.")
qtsvg-5))
(native-inputs
(list pkg-config extra-cmake-modules kdoctools))
(home-page "https://apps.kde.org/en/kgraphviewer")
(home-page "https://apps.kde.org/kgraphviewer/")
(synopsis "Graphviz dot graph viewer for KDE")
(description "KGraphViewer is a Graphviz DOT graph file viewer, aimed to
replace the other outdated Graphviz tools.")
@ -797,8 +798,7 @@ other special events for a geographical region.")
"1f952488492sm904i1iwgjp2gc7z07312mlshw4ckh2801y0qclc"))))
(build-system cmake-build-system)
(propagated-inputs
`(("gettext" ,gettext-minimal)
("python" ,python)))
(list gettext-minimal python))
(native-inputs
(list extra-cmake-modules))
(inputs
@ -1036,6 +1036,30 @@ integration with a custom editor as well as a ready-to-use
(properties `((upstream-name . "syntax-highlighting")))
(license license:lgpl2.1+)))
(define-public plasma-wayland-protocols
(package
(name "plasma-wayland-protocols")
(version "1.6.0")
(source (origin
(method url-fetch)
(uri (string-append "mirror://kde/stable/" name "/"
name "-" version ".tar.xz"))
(sha256
(base32
"07zhf2dzacj4xlhackpzaxqnp0d1ldkqlx0f313pw1pgd74zlkxp"))))
(build-system cmake-build-system)
(native-inputs (list extra-cmake-modules))
(arguments '(#:tests? #f)) ;no tests
(home-page "https://community.kde.org/Frameworks")
(synopsis "KDE Plasma Wayland Protocols")
(description
"This package contains XML files describing non-standard Wayland
protocols used in KDE Plasma.")
;; The XML files have varying licenses, open them for details.
(license (list license:bsd-3
license:lgpl2.1+
license:expat))))
(define-public kwayland
(package
(name "kwayland")
@ -1130,11 +1154,11 @@ configuration pages, message boxes, and password requests.")
qttools-5
xorg-server-for-tests)) ; for the tests
(inputs
`(("libxrender" ,libxrender)
("qtbase" ,qtbase-5)
("qtx11extras" ,qtx11extras)
("xcb-utils-keysyms" ,xcb-util-keysyms)
("xcb-util-wm" ,xcb-util-wm)))
(list libxrender
qtbase-5
qtx11extras
xcb-util-keysyms
xcb-util-wm))
(arguments
`(#:phases
(modify-phases %standard-phases
@ -1375,9 +1399,7 @@ feel.")
(native-inputs
(list bison dbus extra-cmake-modules flex qttools-5))
(inputs
`(("qtbase" ,qtbase-5)
("qtdeclarative-5" ,qtdeclarative-5)
("udev" ,eudev)))
(list qtbase-5 qtdeclarative-5 eudev))
;; TODO: Add runtime-only dependency MediaPlayerInfo
(home-page "https://community.kde.org/Frameworks")
(synopsis "Desktop hardware abstraction")
@ -3449,19 +3471,18 @@ need.")
(native-inputs
(list extra-cmake-modules pkg-config))
;; TODO: Optional packages not yet in Guix: packagekitqt5, AppStreamQt
(inputs
`(("kconfig" ,kconfig)
("kconfigwidgets" ,kconfigwidgets)
("kcoreaddons" ,kcoreaddons)
("ki18n" ,ki18n)
("kiconthemes" ,kiconthemes)
("kitemviews" ,kitemviews)
("knewstuff" ,knewstuff)
("knotificantions" ,knotifications)
("kpackage" ,kpackage)
("kwidgetsaddons" ,kwidgetsaddons)
("qtbase" ,qtbase-5)
("qtx11extras" ,qtx11extras)))
(inputs (list kconfig
kconfigwidgets
kcoreaddons
ki18n
kiconthemes
kitemviews
knewstuff
knotifications
kpackage
kwidgetsaddons
qtbase-5
qtx11extras))
(arguments
`(#:phases
(modify-phases %standard-phases
@ -3784,3 +3805,27 @@ offers abstract functionality to deal with scripts.")
;; under a variety of licenses.
(license (list license:lgpl2.0+ license:lgpl2.1+
license:lgpl2.0 license:gpl3+))))
(define-public kdav
(package
(name "kdav")
(version "20.04.3")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://kde/stable/release-service/" version
"/src/kdav-" version ".tar.xz"))
(sha256
(base32 "0445gl4xm0h39igkxgb6vmq5iaa04wkgrgbs7nfd0zwngk8xaidn"))))
(build-system qt-build-system)
(native-inputs
(list extra-cmake-modules))
(inputs
(list kcoreaddons ki18n kio qtbase-5 qtxmlpatterns))
(home-page "https://invent.kde.org/frameworks/kdav")
(synopsis "DAV protocol implementation with KJobs")
(description "This is a DAV protocol implementation with KJobs. Calendars
and todos are supported, using either GroupDAV or CalDAV, and contacts are
supported using GroupDAV or CardDAV.")
(license ;; GPL for programs, LGPL for libraries
(list license:gpl2+ license:lgpl2.0+))))

File diff suppressed because it is too large Load Diff

View File

@ -415,38 +415,6 @@ multiple torrents at the same time and comes with extended features to make it
a full-featured client for BitTorrent.")
(license license:gpl2+)))
(define-public libgravatar
(package
(name "libgravatar")
(version "20.04.1")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://kde/stable/release-service/" version
"/src/libgravatar-" version ".tar.xz"))
(sha256
(base32 "0981ci2kr20v4fk11h57rqya0brgslfazpgq1yk5yqiwyqqm49r2"))))
(build-system qt-build-system)
(native-inputs
(list extra-cmake-modules))
(inputs
(list kconfig
ki18n
kio
kpimcommon
ktextwidgets
kwidgetsaddons
qtbase-5))
(arguments
`(#:tests? #f)) ;; 2/7 tests fail (due to network issues?)
(home-page "https://invent.kde.org/pim/libgravatar")
(synopsis "Online avatar lookup library")
(description "This library retrieves avatar images based on a
hash from a person's email address, as well as local caching to avoid
unnecessary network operations.")
(license ;; GPL for programs, LGPL for libraries
(list license:gpl2+ license:lgpl2.0+))))
(define-public libktorrent
(package
(name "libktorrent")

View File

@ -106,7 +106,8 @@ This package is part of the KDE multimedia module.")
(native-inputs
(list extra-cmake-modules kdoctools))
(inputs
(list kconfig
(list bash-minimal
kconfig
kconfigwidgets
kcoreaddons
kcrash
@ -246,14 +247,13 @@ This package is part of the KDE multimedia module.")
(base32 "06vsh7knyhcbcbf632jhldbqpzfkdyils2l8dbcdw5nj5hhgzzmr"))))
(build-system qt-build-system)
(native-inputs
(list extra-cmake-modules))
(list extra-cmake-modules kdoctools))
(inputs
(list kcoreaddons
kcompletion
kconfig
kcrash
kdbusaddons
kdoctools
kglobalaccel
ki18n
kiconthemes
@ -560,7 +560,7 @@ camera. Use it to take pictures and make videos to share.")
(base32 "1na52ypp57wqrc6pl1khinx9i6fidv1k97nnxcy8zb4l7d5sh1nd"))))
(build-system qt-build-system)
(native-inputs
(list extra-cmake-modules pkg-config))
(list extra-cmake-modules kdoctools pkg-config))
(inputs
(list alsa-lib
glib
@ -570,7 +570,6 @@ camera. Use it to take pictures and make videos to share.")
kconfigwidgets
kcrash
kdbusaddons
kdoctools
kglobalaccel
ki18n
kiconthemes
@ -639,7 +638,7 @@ This package is part of the KDE multimedia module.")
"-DCMAKE_CXX_FLAGS=-I"
#$(this-package-input "qtx11extras")
"/include/qt5"))))
(home-page "https://kde.org/applications/multimedia/org.kde.kmplayer")
(home-page "https://apps.kde.org/kmplayer/")
(synopsis "Media player using mplayer/phonon as backend")
(description "Kmplayer can play all the audio/video supported by
mplayer/phonon from a local file or URL and be embedded in Konqueror and

View File

@ -2,6 +2,8 @@
;;; Copyright © 2017, 2019, 2020 Hartmut Goebel <h.goebel@crazy-compilers.com>
;;; Copyright © 2020 Marius Bakke <marius@gnu.org>
;;; Copyright © 2021, 2022 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2022 Brendan Tildesley <mail@brendan.scot>
;;; Copyright © 2022 Petr Hodina <phodina@protonmail.com>
;;;
;;; This file is part of GNU Guix.
;;;
@ -34,7 +36,6 @@
#:use-module (gnu packages gnupg)
#:use-module (gnu packages kde)
#:use-module (gnu packages kde-frameworks)
#:use-module (gnu packages kde-internet)
#:use-module (gnu packages openldap)
#:use-module (gnu packages qt)
#:use-module (gnu packages search)
@ -105,7 +106,7 @@
get-string-all))))
(rename-file "CMakeLists.txt.new" "CMakeLists.txt"))
#t)))))
(home-page "https://kontact.kde.org/components/akonadi.html")
(home-page "https://kontact.kde.org/components/akonadi/")
(synopsis "Extensible cross-desktop storage service for PIM")
(description "Akonadi is an extensible cross-desktop Personal Information
Management (PIM) storage service. It provides a common framework for
@ -440,7 +441,7 @@ Akonadi PIM data server. It uses Xapian for indexing and querying.")
prison
qgpgme
qtbase-5))
(home-page "https://kontact.kde.org/components/kaddressbook.html")
(home-page "https://kontact.kde.org/components/kaddressbook/")
(synopsis "Address Book application to manage your contacts")
(description "KAddressBook stores all the personal details of your family,
friends and other contacts. It supports large variety of services, including
@ -561,7 +562,7 @@ one of the APIs mentioned above.")
ktextwidgets
kxmlgui
qtbase-5))
(home-page "https://api.kde.org/stable/calendarsupport/")
(home-page "https://api.kde.org/kdepim/calendarsupport/html/index.html")
(synopsis "Calendar Support library for KDE PIM")
(description "The Calendar Support library provides helper utilities for
calendaring applications.")
@ -599,37 +600,13 @@ calendaring applications.")
qtbase-5))
(arguments
`(#:tests? #f)) ;; TODO: seem to pull in some wrong theme
(home-page "https://api.kde.org/stable/kdepimlibs-apidocs/")
(home-page "https://api.kde.org/kdepim/kcalutils/html/index.html")
(synopsis "Library with utility functions for the handling of calendar
data")
(description "This library provides a utility and user interface
functions for accessing calendar data using the kcalcore API.")
(license license:lgpl2.0+)))
(define-public kdav
(package
(name "kdav")
(version "20.04.3")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://kde/stable/release-service/" version
"/src/kdav-" version ".tar.xz"))
(sha256
(base32 "0445gl4xm0h39igkxgb6vmq5iaa04wkgrgbs7nfd0zwngk8xaidn"))))
(build-system qt-build-system)
(native-inputs
(list extra-cmake-modules))
(inputs
(list kcoreaddons ki18n kio qtbase-5 qtxmlpatterns))
(home-page "https://invent.kde.org/frameworks/kdav")
(synopsis "DAV protocol implementation with KJobs")
(description "This is a DAV protocol implementation with KJobs. Calendars
and todos are supported, using either GroupDAV or CalDAV, and contacts are
supported using GroupDAV or CardDAV.")
(license ;; GPL for programs, LGPL for libraries
(list license:gpl2+ license:lgpl2.0+))))
(define-public kdepim-apps-libs
(package
(name "kdepim-apps-libs")
@ -843,7 +820,7 @@ package.")
kxmlgui
oxygen-icons ;; default icon set
qtbase-5))
(home-page "https://kde.org/applications/utilities/org.kde.kgpg")
(home-page "https://apps.kde.org/kgpg/")
(synopsis "Graphical front end for GNU Privacy Guard")
(description "Kgpg manages cryptographic keys for the GNU Privacy Guard,
and can encrypt, decrypt, sign, and verify files. It features a simple editor
@ -911,7 +888,7 @@ cryptography to the contents of the clipboard.")
kio
kmime
qtbase-5))
(home-page "https://api.kde.org/stable/kdepimlibs-apidocs/")
(home-page "https://api.kde.org/kdepim/kimap/html/index.html")
(synopsis "Library for handling IMAP")
(description "This library provides a job-based API for interacting with
an IMAP4rev1 server. It manages connections, encryption and parameter quoting
@ -939,7 +916,7 @@ easier to do so.")
(list ki18n kio kwidgetsaddons qtbase-5))
(propagated-inputs
(list cyrus-sasl openldap))
(home-page "https://api.kde.org/stable/kdepimlibs-apidocs/")
(home-page "https://api.kde.org/kdepim/kldap/html/index.html")
(synopsis "Library for accessing LDAP")
(description " This is a library for accessing LDAP with a convenient Qt
style C++ API. LDAP (Lightweight Directory Access Protocol) is an application
@ -993,7 +970,7 @@ protocol for querying and modifying directory services running over TCP/IP.")
(when tests?
(invoke "dbus-launch" "ctest" "."))
#t)))))
(home-page "https://kde.org/applications/utilities/org.kde.kleopatra")
(home-page "https://apps.kde.org/kleopatra/")
(synopsis "Certificate Manager and Unified Crypto GUI")
(description "Kleopatra is a certificate manager and a universal crypto
GUI. It supports managing X.509 and OpenPGP certificates in the GpgSM keybox
@ -1082,7 +1059,7 @@ and retrieving certificates from LDAP servers.")
(when tests?
(invoke "dbus-launch" "ctest" "."))
#t)))))
(home-page "https://kontact.kde.org/components/kmail.html")
(home-page "https://kontact.kde.org/components/kmail/")
(synopsis "Full featured graphical email client")
(description "KMail supports multiple accounts, mail filtering and email
encryption. The program let you configure your workflow and it has good
@ -1232,7 +1209,7 @@ e-mail client programs into KMail and KDE PIM.")
qtbase-5))
(arguments
`(#:tests? #f)) ;; TODO - 3/3 tests fail, require drkonqi
(home-page "https://api.kde.org/stable/kdepimlibs-apidocs/")
(home-page "https://api.kde.org/kdepim/kmailtransport/html/index.html")
(synopsis "Mail transport service library")
(description "This library provides an API and support code for managing
mail transport.")
@ -1254,7 +1231,7 @@ mail transport.")
(list extra-cmake-modules))
(inputs
(list kcodecs kmime qtbase-5))
(home-page "https://api.kde.org/stable/kdepimlibs-apidocs/")
(home-page "https://api.kde.org/kdepim/kmbox/html/index.html")
(synopsis "Library for handling mbox mailboxes")
(description "This is a library for handling mailboxes in mbox format,
using a Qt/KMime C++ API.")
@ -1325,7 +1302,6 @@ using a Qt/KMime C++ API.")
qtdeclarative-5
qtwebchannel-5
qtwebengine-5
qtwebkit
sonnet))
(arguments
`(#:tests? #f ;TODO many test fail for quite different reasons
@ -1374,7 +1350,7 @@ kwebengineviewer.")
(("(Today|Yesterday) 12:34:56" line day)
(string-append day " 12:34 PM")))
#t)))))
(home-page "https://api.kde.org/stable/kdepimlibs-apidocs/")
(home-page "https://api.kde.org/kdepim/kmime/html/index.html")
(synopsis "Library for handling MIME data")
(description "This library provides an API for handling MIME
data. MIME (Multipurpose Internet Mail Extensions) is an Internet Standard
@ -1440,7 +1416,7 @@ information in non-ASCII character sets.")
oxygen-icons ; default icon set, required for tests
qtbase-5
qtx11extras))
(home-page "https://kontact.kde.org/components/knotes.html")
(home-page "https://apps.kde.org/knotes/")
(synopsis "Note-taking utility")
(description "KNotes lets you write the computer equivalent of sticky
notes. The notes are saved automatically when you exit the program, and they
@ -1477,9 +1453,9 @@ Features:
kwindowsystem
kxmlgui
qtbase-5))
(home-page "https://api.kde.org/stable/kdepimlibs-apidocs/")
(home-page "https://api.kde.org/kdepim/kontactinterface/html/index.html")
(synopsis "Kontact interface library")
(description " This library provides the glue necessary for
(description "This library provides the glue necessary for
application \"Parts\" to be embedded as a Kontact component (or plugin).")
(license license:lgpl2.0+)))
@ -1562,7 +1538,7 @@ application \"Parts\" to be embedded as a Kontact component (or plugin).")
(when tests?
(invoke "dbus-launch" "ctest" "."))
#t)))))
(home-page "https://kontact.kde.org/components/korganizer.html")
(home-page "https://apps.kde.org/korganizer/")
(synopsis "Organizational assistant, providing calendars and other similar
functionality to help you organize your life.")
(description "KOrganizer is the calendar and scheduling component of
@ -1665,6 +1641,36 @@ Virtual Contact File}) files to the KPeople contact management library.")
(license ;; GPL for programs, LGPL for libraries
(list license:gpl2+ license:lgpl2.0+))))
(define-public libgravatar
(package
(name "libgravatar")
(version "20.04.1")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://kde/stable/release-service/" version
"/src/libgravatar-" version ".tar.xz"))
(sha256
(base32 "0981ci2kr20v4fk11h57rqya0brgslfazpgq1yk5yqiwyqqm49r2"))))
(build-system qt-build-system)
(native-inputs (list extra-cmake-modules))
(inputs (list kconfig
ki18n
kio
kpimcommon
ktextwidgets
kwidgetsaddons
qtbase-5))
(arguments
`(#:tests? #f)) ;; 2/7 tests fail (due to network issues?)
(home-page "https://invent.kde.org/pim/libgravatar")
(synopsis "Online avatar lookup library")
(description "This library retrieves avatar images based on a
hash from a person's email address, as well as local caching to avoid
unnecessary network operations.")
(license ;; GPL for programs, LGPL for libraries
(list license:gpl2+ license:lgpl2.0+))))
(define-public kpimtextedit
(package
(name "kpimtextedit")
@ -1698,7 +1704,7 @@ Virtual Contact File}) files to the KPeople contact management library.")
sonnet))
(arguments
`(#:tests? #f)) ;; TODO - test suite hangs
(home-page "https://api.kde.org/stable/kdepimlibs-apidocs/")
(home-page "https://api.kde.org/kdepim/kpimtextedit/html/index.html")
(synopsis "Library providing a textedit with PIM-specific features")
(description "This package provides a textedit with PIM-specific features.
It also provides so-called rich text builders which can convert the formatted
@ -1769,7 +1775,7 @@ standard protocols for e-mail transmission.")
kcoreaddons
ki18n
qtbase-5))
(home-page "https://api.kde.org/stable/kdepimlibs-apidocs/ktnef/html/")
(home-page "https://api.kde.org/kdepim/ktnef/html/index.html")
(synopsis "Library for handling mail attachments using TNEF format")
(description "Ktnef is a library for handling data in the TNEF
format (Transport Neutral Encapsulation Format, a proprietary format of e-mail

View File

@ -5,6 +5,7 @@
;;; Copyright © 2017, 2019, 2020 Hartmut Goebel <h.goebel@crazy-compilers.com>
;;; Copyright © 2019 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2020 Zheng Junjie <873216071@qq.com>
;;; Copyright © 2021 Brendan Tildesley <mail@brendan.scot>
;;;
;;; This file is part of GNU Guix.
;;;
@ -37,6 +38,7 @@
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages python)
#:use-module (gnu packages qt)
#:use-module (gnu packages xdisorg)
#:use-module (gnu packages xorg)
#:use-module (gnu packages web))
@ -157,6 +159,32 @@ directly, you need to tell @code{ssh-add} about it. @code{ssh-add} will then
call it if it is not associated to a terminal.")
(license license:gpl2+)))
(define-public layer-shell-qt
(package
(name "layer-shell-qt")
(version "5.24.1")
(source (origin
(method url-fetch)
(uri (string-append "mirror://kde/stable/plasma/" version
"/layer-shell-qt-" version ".tar.xz"))
(sha256
(base32
"1aq089pws39w9ncsiqzgg3qvfg5hc5a74pzra0smdpy5ipfsb6a4"))))
(build-system qt-build-system)
(native-inputs
(list extra-cmake-modules pkg-config))
(inputs
(list libxkbcommon
qtbase-5
qtdeclarative-5
qtwayland
wayland
wayland-protocols))
(home-page "https://invent.kde.org/plasma/layer-shell-qt")
(synopsis "Qt component for the Wayland ql-layer-shell protocol")
(description "Qt component for the Wayland ql-layer-shell protocol.")
(license license:gpl2+)))
(define-public kscreenlocker
(package
(name "kscreenlocker")

View File

@ -103,7 +103,7 @@
unzip
zip
zstd))
(home-page "https://apps.kde.org/en/ark")
(home-page "https://apps.kde.org/ark/")
(synopsis "Graphical archiving tool")
(description "Ark is a graphical file compression/decompression utility
with support for multiple formats, including tar, gzip, bzip2, rar and zip, as
@ -154,8 +154,7 @@ well as CD-ROM images.")
(lambda _
;; make Qt render "offscreen", required for tests
(setenv "QT_QPA_PLATFORM" "offscreen")
(setenv "XDG_CACHE_HOME" "/tmp/xdg-cache")
#t)))))
(setenv "XDG_CACHE_HOME" "/tmp/xdg-cache"))))))
(home-page "https://kate-editor.org/")
(synopsis "Multi-document, multi-view text editor")
(description "Kate is a powerful text editor that can open multiple files
@ -197,7 +196,7 @@ Kate's features include:
oxygen-icons ;; default icon set
;; TODO: QAccessibilityClient - libqaccessibilityclien
qtbase-5))
(home-page "https://kde.org/applications/utilities/org.kde.kmag")
(home-page "https://apps.kde.org/kmag/")
(synopsis "Screen magnifier tool")
(description "You can use KMagnifier to magnify a part of the screen just
as you would use a lens to magnify a newspaper fine-print or a photograph.
@ -235,7 +234,7 @@ artists to web-designers to people with low vision.")
phonon
oxygen-icons ;; default icon set
qtbase-5))
(home-page "https://kde.org/applications/utilities/org.kde.kmousetool")
(home-page "https://apps.kde.org/kmousetool/")
(synopsis "Automatic mouse click and mouse manipulation tool for the
disabled")
(description "KMouseTool clicks the mouse whenever the mouse cursor pauses
@ -271,7 +270,7 @@ whom pressing buttons hurts.")
oxygen-icons ;; default icon set
qtbase-5
qtspeech))
(home-page "https://kde.org/applications/utilities/org.kde.kmouth")
(home-page "https://apps.kde.org/kmouth/")
(synopsis "Type-and-say frontend for speech synthesizers")
(description "KMouth is a program which enables persons that cannot speak
to let their computer speak, e.g. mutal people or people who have lost their
@ -308,7 +307,7 @@ sentences to be re-spoken.")
kxmlgui
oxygen-icons ;; default icon set
qtbase-5))
(home-page "https://kde.org/applications/utilities/org.kde.kronometer")
(home-page "https://apps.kde.org/kronometer/")
(synopsis "Simple stopwatch application")
(description "Kronometer is a stopwatch application. It features the
basic stopwatch actions (pause, resume, reset, laps), as well as the ability
@ -353,7 +352,7 @@ to save the times and resume them later.")
qtbase-5
solid
zlib))
(home-page "https://www.krusader.org")
(home-page "https://krusader.org/")
(synopsis "Twin-panel (commander-style) file manager")
(description "Krusader is a simple, easy, yet powerful,
twin-panel (commander-style) file manager, similar to Midnight Commander or
@ -386,7 +385,7 @@ great on your desktop.")
(list extra-cmake-modules kdoctools pkg-config))
(inputs
(list ktexteditor imagemagick qtbase-5 qtx11extras))
(home-page "https://kde.org/applications/en/graphics/org.kde.kxstitch")
(home-page "https://apps.kde.org/kxstitch/")
(synopsis "Create and print cross stitch patterns")
(description
"KXStitch allows creating and printing cross stitch patterns, which can
@ -435,9 +434,8 @@ either be created or generated from a image.")
(lambda _
;; make Qt render "offscreen", required for tests
(setenv "QT_QPA_PLATFORM" "offscreen")
(setenv "HOME" "/tmp/dummy-home")
#t)))))
(home-page "https://kde.org/applications/utilities/org.kde.okteta")
(setenv "HOME" "/tmp/dummy-home"))))))
(home-page "https://apps.kde.org/okteta/")
(synopsis "Hexadecimal editor for binary files")
(description "Okteta is a simple editor for the raw data of files. This
type of program is also called hex editor or binary editor.
@ -484,7 +482,7 @@ redone.")
kxmlgui
oxygen-icons ;; default icon set
qtbase-5))
(home-page "https://kde.org/applications/utilities/org.kde.rsibreak")
(home-page "https://apps.kde.org/rsibreak/")
(synopsis "Assists in the Recovery and Prevention of Repetitive Strain
Injury")
(description "Repetitive Strain Injury is an illness which can occur as a
@ -533,7 +531,7 @@ remind you to take a break now and then.")
qtbase-5
qtdeclarative-5
solid))
(home-page "https://kde.org/applications/utilities/org.kde.smb4k")
(home-page "https://apps.kde.org/smb4k/")
(synopsis "Samba (SMB) share advanced browser")
(description "Smb4K is an network neighborhood browser for the KDE
Software Compilation and a frontend to the programs of the Samba software
@ -592,7 +590,7 @@ Features:
kxmlgui
oxygen-icons ;; default icon set
qtbase-5))
(home-page "https://kde.org/applications/utilities/org.kde.sweeper")
(home-page "https://apps.kde.org/sweeper/")
(synopsis "Temporary file and history cleaner")
(description "
Sweeper helps to clean unwanted traces the user leaves on the system and to

View File

@ -173,8 +173,7 @@ This package contains GUI widgets for baloo.")
(assoc-ref inputs "qtwebengine-5")
"/lib/qt5/libexec/QtWebEngineProcess")))
(wrap-program bin
`("QTWEBENGINEPROCESS_PATH" = (,qt-process-path)))
#t))))))
`("QTWEBENGINEPROCESS_PATH" = (,qt-process-path)))))))))
(native-inputs
(list extra-cmake-modules kdoctools))
(inputs
@ -261,7 +260,7 @@ browser for easy news reading.")
`("MLT_PREFIX" ":" =
(,#$(this-package-input "mlt"))))))))))
(native-inputs
(list extra-cmake-modules pkg-config qttools-5))
(list extra-cmake-modules kdoctools pkg-config qttools-5))
(inputs
(list bash-minimal
breeze ; make dark them available easily
@ -383,8 +382,7 @@ projects.")
(lambda* (#:key inputs #:allow-other-keys)
(substitute* "cmake/modules/FindClang.cmake"
(("^\\s*PATHS \"\\$\\{CLANG_LIBRARY_DIRS\\}\"" line)
(string-append line " " (assoc-ref inputs "clang") "/lib")))
#t)))))
(string-append line " " (assoc-ref inputs "clang") "/lib"))))))))
(home-page "https://kdevelop.org")
(synopsis "IDE for C, C++, Python, Javascript and PHP")
(description "The KDevelop IDE provides semantic syntax highlighting, as
@ -797,14 +795,12 @@ communicate with each other. Here's a few things KDE Connect can do:
(lambda* (#:key tests? #:allow-other-keys)
(when tests?
;; This test fails, I don't know why.
(invoke "ctest" "-E" "parsertest"))
#t)))))
(native-inputs
`(("bison" ,bison)
("extra-cmake-modules" ,extra-cmake-modules)
("pkg-config" ,pkg-config)
("python" ,python-wrapper)
("qttools-5" ,qttools-5)))
(invoke "ctest" "-E" "parsertest")))))))
(native-inputs (list bison
extra-cmake-modules
pkg-config
python-wrapper
qttools-5))
(inputs
(list breeze ;for dark themes
breeze-icons ;for icons
@ -1007,13 +1003,12 @@ Python, PHP, and Perl.")
"-DBUILD_TOUCH=YES"
"-DBUILD_MARBLE_TESTS=FALSE")))
(native-inputs
(list extra-cmake-modules qttools-5))
(list extra-cmake-modules kdoctools qttools-5))
;; One optional dependency missing: libwlocate.
(inputs
(list gpsd
kcoreaddons
kcrash
kdoctools
ki18n
kio
knewstuff

View File

@ -425,13 +425,14 @@ specifications in the document.")
(define-public libstemmer
(package
(name "libstemmer")
(version "2.0.0")
(version "2.2.0")
(source
(origin
(method url-fetch)
(uri "https://snowballstem.org/dist/libstemmer_c.tgz")
(uri (string-append "https://snowballstem.org/dist/libstemmer_c-"
version ".tar.gz"))
(sha256
(base32 "1z2xvrjsaaypc04lwz7dg8mjm5cq1gzmn0l544pn6y2ll3r7ckh5"))))
(base32 "1hvphdl8pfq1q3cgh7bshsabsxc7id6wswrqilplwszkkkzdjhdr"))))
(build-system gnu-build-system)
(arguments
`(#:tests? #f ; No tests exist
@ -450,13 +451,14 @@ specifications in the document.")
(out-lib (string-append out "/lib")))
(install-file "stemwords" out-bin)
(install-file "include/libstemmer.h" out-include)
(rename-file "libstemmer.o" "libstemmer.a")
(install-file "libstemmer.a" out-lib)
#t))))))
(install-file "libstemmer.a" out-lib)))))))
(synopsis "Stemming Library")
(description "LibStemmer provides stemming library, supporting several
languages.")
(home-page "https://snowballstem.org/")
(properties
'((release-monitoring-url . "https://snowballstem.org/download.html")
(upstream-name . "libstemmer_c")))
(license license:bsd-3)))
(define-public perl-lingua-en-findnumber

View File

@ -63,6 +63,7 @@
;;; Copyright © 2021, 2022 Petr Hodina <phodina@protonmail.com>
;;; Copyright © 2022 Artyom V. Poptsov <poptsov.artyom@gmail.com>
;;; Copyright © 2022 Rene Saavedra <nanuui@protonmail.com>
;;; Copyright © 2022 muradm <mail@muradm.net>
;;;
;;; This file is part of GNU Guix.
@ -352,6 +353,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-5.19-version "5.19.5")
(define-public linux-libre-5.19-gnu-revision "gnu")
(define deblob-scripts-5.19
(linux-libre-deblob-scripts
linux-libre-5.19-version
linux-libre-5.19-gnu-revision
(base32 "0a4pln89nbxiniykm14kyqmnn79gfgj22dr3h94w917xhidq7gp1")
(base32 "1ph67fvg5qvlkh4cynrrmvkngkb0sw6k90b1mwy9466s24khn05i")))
(define-public linux-libre-5.19-pristine-source
(let ((version linux-libre-5.19-version)
(hash (base32 "1g9p4m9w9y0y1gk6vzqvsxzwqspbm10mmhd8n1mhal1yz721qgwc")))
(make-linux-libre-source version
(%upstream-linux-source version hash)
deblob-scripts-5.19)))
(define-public linux-libre-5.18-version "5.18.19")
(define-public linux-libre-5.18-gnu-revision "gnu")
(define deblob-scripts-5.18
@ -364,7 +381,6 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS."
(let ((version linux-libre-5.18-version)
(hash (base32 "1mc8zhiw0v7fka64mydpdrxkrvy0jyqggq5lghw3pyqj2wjrpw6z")))
(make-linux-libre-source version
(%upstream-linux-source version hash)
deblob-scripts-5.18)))
@ -386,7 +402,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.138")
(define-public linux-libre-5.10-version "5.10.139")
(define-public linux-libre-5.10-gnu-revision "gnu1")
(define deblob-scripts-5.10
(linux-libre-deblob-scripts
@ -396,7 +412,7 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS."
(base32 "1981axxswghza3iadp94q54y8w30h9w9vyq4cbjiiv9alvbv0pb8")))
(define-public linux-libre-5.10-pristine-source
(let ((version linux-libre-5.10-version)
(hash (base32 "1a2vmcqzi71w88j79lxsrgyycq1l1gxp0cvh5ya4afhfisxh7819")))
(hash (base32 "1wdyk1w8lr5l4d038bd44rdndxjvfcva2n51h2i38jd4fp12l00w")))
(make-linux-libre-source version
(%upstream-linux-source version hash)
deblob-scripts-5.10)))
@ -489,6 +505,11 @@ corresponding UPSTREAM-SOURCE (an origin), using the given DEBLOB-SCRIPTS."
(patches (append (origin-patches source)
patches))))
(define-public linux-libre-5.19-source
(source-with-patches linux-libre-5.19-pristine-source
(list %boot-logo-patch
%linux-libre-arm-export-__sync_icache_dcache-patch)))
(define-public linux-libre-5.18-source
(source-with-patches linux-libre-5.18-pristine-source
(list %boot-logo-patch
@ -603,6 +624,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-5.19
(make-linux-libre-headers* linux-libre-5.19-version
linux-libre-5.19-gnu-revision
linux-libre-5.19-source))
(define-public linux-libre-headers-5.18
(make-linux-libre-headers* linux-libre-5.18-version
linux-libre-5.18-gnu-revision
@ -924,6 +950,13 @@ It has been modified to remove all non-free binary blobs.")
;;; Generic kernel packages.
;;;
(define-public linux-libre-5.19
(make-linux-libre* linux-libre-5.19-version
linux-libre-5.19-gnu-revision
linux-libre-5.19-source
'("x86_64-linux" "i686-linux" "armhf-linux" "aarch64-linux" "riscv64-linux")
#:configuration-file kernel-config))
(define-public linux-libre-5.18
(make-linux-libre* linux-libre-5.18-version
linux-libre-5.18-gnu-revision
@ -8085,23 +8118,26 @@ emulates the behaviour of Gunnar Monell's older fbgrab utility.")
(define-public libcgroup
(package
(name "libcgroup")
(version "0.41")
(version "2.0.2")
(home-page "https://github.com/libcgroup/libcgroup")
(source
(origin
(method url-fetch)
(uri (string-append
"mirror://sourceforge/libcg/" name "/"
version "/" name "-" version ".tar.bz2"))
(uri (string-append home-page "/releases/download/v"
version "/" name "-" version ".tar.gz"))
(sha256
(base32 "0lgvyq37gq84sk30sg18admxaj0j0p5dq3bl6g74a1ppgvf8pqz4"))))
(base32 "1y0c9ncsawamj77raiw6qkbm5cdsyvhjb2mvgma1kxmgw0r3pxlf"))))
(build-system gnu-build-system)
(arguments
;; Tests are virtualized with lxc, it is not very feasible
;; to make them executable under guix build. Also, note that
;; origin is using source tarball release which is prepared
;; after testing.
`(#:tests? #f))
(native-inputs
(list bison flex))
(inputs
(list linux-pam))
(home-page "https://sourceforge.net/projects/libcg/")
(synopsis "Control groups management tools")
(description "Control groups is Linux kernel method for process resource
restriction, permission handling and more. This package provides userspace

View File

@ -52,6 +52,7 @@
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages python)
#:use-module (gnu packages python-build)
#:use-module (gnu packages python-check)
#:use-module (gnu packages python-web)
#:use-module (gnu packages python-xyz)
#:use-module (gnu packages tcl)
@ -272,7 +273,7 @@ library.")
"--enable-liblogging_stdlog"
"--enable-unlimited_select"
"--enable-usertools"
;; Input plugins
"--enable-imbatchreport"
"--enable-imczmq"
@ -284,7 +285,7 @@ library.")
"--enable-impstats"
"--enable-imptcp"
"--enable-imtuxedoulog"
;; Output plugins
"--enable-clickhouse"
"--enable-elasticsearch"

View File

@ -10,7 +10,7 @@
;;; Copyright © 2019, 2020 Reza Alizadeh Majd <r.majd@pantherx.org>
;;; Copyright © 2020 Fakhri Sajadi <f.sajadi@pantherx.org>
;;; Copyright © 2020 André Batista <nandre@riseup.net>
;;; Copyright © 2021 Brendan Tildesley <mail@brendan.scot>
;;; Copyright © 2021, 2022 Brendan Tildesley <mail@brendan.scot>
;;;
;;; This file is part of GNU Guix.
;;;
@ -69,36 +69,6 @@
;; Third party libraries
(define-public libdbusmenu-qt
(package
(name "libdbusmenu-qt")
(version "0.9.3+16.04.20160218-0ubuntu1")
(source
(origin
(method git-fetch)
;; Download from github rather than launchpad because launchpad trunk
;; tarball hash is not deterministic.
(uri (git-reference
(url "https://github.com/unity8-team/libdbusmenu-qt")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "0b7ii1cvmpcyl79gqal9c3va9m55h055s4hx7fpxkhhqs9463ggg"))))
(build-system cmake-build-system)
(arguments
;; XXX: Tests require a dbus session and some icons.
'(#:tests? #f))
(native-inputs
(list doxygen))
(inputs
(list qtbase-5))
(home-page "https://launchpad.net/libdbusmenu-qt")
(synopsis "Qt implementation of the DBusMenu spec")
(description "This library provides a Qt implementation of the DBusMenu
protocol. The DBusMenu protocol makes it possible for applications to export
and import their menus over DBus.")
(license license:lgpl2.1+)))
(define-public libstatgrab
(package
(name "libstatgrab")

View File

@ -22,6 +22,7 @@
#:use-module (guix licenses)
#:use-module (guix build-system python)
#:use-module (gnu packages check)
#:use-module (gnu packages python-check)
#:use-module (gnu packages python-crypto)
#:use-module (gnu packages python-web)
#:use-module (gnu packages python-xyz))

View File

@ -35,6 +35,7 @@
;;; Copyright © 2022 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2022 Jai Vetrivelan <jaivetrivelan@gmail.com>
;;; Copyright © 2022 Jack Hill <jackhill@jackhill.us>
;;; Copyright © 2022 Maxim Cournoyer <maxim.cournoyer@gmail.com>
;;;
;;; This file is part of GNU Guix.
;;;
@ -2653,31 +2654,30 @@ replacement.")
(define-public tdlib
(package
(name "tdlib")
(version "1.8.0")
(version "1.8.4")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/tdlib/td")
(commit (string-append "v" version))))
(commit "7eabd8ca60de025e45e99d4e5edd39f4ebd9467e")))
(sha256
(base32 "19psqpyh9a2kzfdhgqkirpif4x8pzy89phvi59dq155y30a3661q"))
(base32 "1chs0ibghjj275v9arsn3k68ppblpm7ysqk0za9kya5vdnldlld5"))
(file-name (git-file-name name version))))
(build-system cmake-build-system)
(arguments
`(#:configure-flags
(list "-DCMAKE_BUILD_TYPE=Release"
"-DTD_ENABLE_LTO=OFF") ; FIXME: Get LTO to work.
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'remove-failing-tests
(lambda _
(substitute* "test/CMakeLists.txt"
;; The test cases are compiled into a distinct binary
;; which uses mtproto.cpp to attempt to connect to
;; a remote server. Removing this file from the sources
;; list disables those specific test cases.
(("\\$\\{CMAKE_CURRENT_SOURCE_DIR\\}/mtproto.cpp") "")))))))
(list
#:build-type "Release"
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'remove-failing-tests
(lambda _
(substitute* "test/CMakeLists.txt"
;; The test cases are compiled into a distinct binary
;; which uses mtproto.cpp to attempt to connect to
;; a remote server. Removing this file from the sources
;; list disables those specific test cases.
(("\\$\\{CMAKE_CURRENT_SOURCE_DIR\\}/mtproto.cpp") "")))))))
(native-inputs
(list gperf openssl zlib php doxygen))
(synopsis "Cross-platform library for building Telegram clients")
@ -2901,6 +2901,36 @@ as phones, embedded computers or microcontrollers.")
;; Dual licensed.
(license (list license:epl1.0 license:edl1.0))))
(define-public python-paho-mqtt
(package
(name "python-paho-mqtt")
(version "1.6.1")
(source (origin
(method git-fetch) ;for tests
(uri (git-reference
(url "https://github.com/eclipse/paho.mqtt.python")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
"0679iafabd3kvk4fj4lvcl14zg82yq5pz5rji4z659lm2g2zlwgn"))))
(build-system python-build-system)
(arguments (list #:phases
#~(modify-phases %standard-phases
(replace 'check
(lambda* (#:key tests? #:allow-other-keys)
(when tests?
(invoke "pytest" "-vv")))))))
(native-inputs (list python-pytest))
(home-page "https://www.eclipse.org/paho/")
(synopsis "Python implementation of an MQTT client class")
(description "MQTT and MQTT-SN are lightweight publish/subscribe messaging
transports for TCP/IP and connection-less protocols (such as UDP). The
Eclipse Paho project provides client side implementations of MQTT and MQTT-SN
in a variety of programming languages. This package is for the Python
implementation of an MQTT version client class.")
(license (list license:epl2.0 license:edl1.0)))) ;dual licensed
(define-public movim-desktop
(let ((commit "83d583b83629dbd2ec448da9a1ffd81f6c1fb295")
(revision "3"))

View File

@ -136,6 +136,7 @@
#:use-module (gnu packages protobuf)
#:use-module (gnu packages pulseaudio)
#:use-module (gnu packages python)
#:use-module (gnu packages python-check)
#:use-module (gnu packages python-crypto)
#:use-module (gnu packages python-web)
#:use-module (gnu packages python-xyz)

View File

@ -63,14 +63,14 @@
(define-public parallel
(package
(name "parallel")
(version "20220722")
(version "20220822")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://gnu/parallel/parallel-"
version ".tar.bz2"))
(sha256
(base32 "06gh7bj274qzxdlr5bx36b4jrpdnyfcbzpy6k12l63451nn86h0f"))
(base32 "05mh3bbl7c9c945jqhlfspjqji79zq8ml27k6ihaqi8bqibl83cx"))
(snippet
'(begin
(use-modules (guix build utils))

View File

@ -1,100 +0,0 @@
From f91a9cfcd70178404ac2aafdfa124c9a4efe8866 Mon Sep 17 00:00:00 2001
From: Richard Hughes <richard@hughsie.com>
Date: Mon, 18 Apr 2022 10:50:42 +0100
Subject: [PATCH 11/11] Install xb-tool into bindir
Fixes https://github.com/hughsie/libxmlb/issues/123
---
contrib/libxmlb.spec.in | 3 ++-
meson.build | 4 +++-
src/meson.build | 9 ++++++++-
src/xb-tool.1 | 19 +++++++++++++++++++
4 files changed, 32 insertions(+), 3 deletions(-)
create mode 100644 src/xb-tool.1
diff --git a/contrib/libxmlb.spec.in b/contrib/libxmlb.spec.in
index 6be65d1..24478fe 100644
--- a/contrib/libxmlb.spec.in
+++ b/contrib/libxmlb.spec.in
@@ -71,7 +71,8 @@ Executable and data files for installed tests.
%files
%doc README.md
%license LICENSE
-%{_libexecdir}/xb-tool
+%{_bindir}/xb-tool
+%{_mandir}/man1/xb-tool.1*
%dir %{_libdir}/girepository-1.0
%{_libdir}/girepository-1.0/Xmlb-2.0.typelib
%{_libdir}/libxmlb.so.2*
diff --git a/meson.build b/meson.build
index 6870907..53b1324 100644
--- a/meson.build
+++ b/meson.build
@@ -103,16 +103,18 @@ add_project_link_arguments(
)
if host_machine.system() == 'windows'
- libexecdir = get_option('libexecdir')
+ bindir = get_option('bindir')
installed_test_bindir = get_option('libexecdir')
installed_test_datadir = get_option('datadir')
else
prefix = get_option('prefix')
datadir = join_paths(prefix, get_option('datadir'))
+ bindir = join_paths(prefix, get_option('bindir'))
libexecdir = join_paths(prefix, get_option('libexecdir'))
installed_test_bindir = join_paths(libexecdir, 'installed-tests', meson.project_name())
installed_test_datadir = join_paths(datadir, 'installed-tests', meson.project_name())
endif
+mandir = join_paths(prefix, get_option('mandir'))
gio = dependency('gio-2.0', version : '>= 2.45.8')
giounix = dependency('gio-unix-2.0', version : '>= 2.45.8', required: false)
diff --git a/src/meson.build b/src/meson.build
index d7a1401..93fb8ba 100644
--- a/src/meson.build
+++ b/src/meson.build
@@ -96,7 +96,14 @@ xb_tool = executable(
libxmlb,
],
install : true,
- install_dir : libexecdir
+ install_dir : bindir
+)
+configure_file(
+ input : 'xb-tool.1',
+ output : 'xb-tool.1',
+ configuration : conf,
+ install: true,
+ install_dir: join_paths(mandir, 'man1'),
)
endif
diff --git a/src/xb-tool.1 b/src/xb-tool.1
new file mode 100644
index 0000000..348d1b1
--- /dev/null
+++ b/src/xb-tool.1
@@ -0,0 +1,19 @@
+.\" Report problems in https://github.com/hughsie/libxmlb
+.TH man 1 "18 April 2022" @PACKAGE_VERSION@ "xb-tool man page"
+.SH NAME
+xb-tool \- standalone XMLb utility
+.SH SYNOPSIS
+xb-tool [CMD]
+.SH DESCRIPTION
+This tool allows creating, dumping and querying binary XML blobs.
+.PP
+Additionally \fBxb-tool\fR can be used to profile specfic tokenized queries.
+.SH OPTIONS
+The xb-tool command takes various options depending on the action.
+Run \fBxb-tool --help\fR for the full list.
+.SH EXIT STATUS
+Commands that successfully execute will return "0", otherwise "1".
+.SH BUGS
+No known bugs.
+.SH AUTHOR
+Richard Hughes (richard@hughsie.com)
--
2.35.1

View File

@ -36,6 +36,7 @@
#:use-module (guix build-system ruby)
#:use-module ((guix licenses) #:prefix license:)
#:use-module (guix utils)
#:use-module (gnu packages build-tools)
#:use-module (gnu packages compression)
#:use-module (gnu packages check)
#:use-module (gnu packages gcc)
@ -45,6 +46,7 @@
#:use-module (gnu packages python-build)
#:use-module (gnu packages python-check)
#:use-module (gnu packages python-xyz)
#:use-module (gnu packages rpc)
#:use-module (gnu packages ruby))
(define-public fstrm
@ -237,6 +239,134 @@ encoder in C++. The developer using protozero has to manually translate the
license:asl2.0 ; for folly
license:bsd-2))))
(define-public nanopb
(package
(name "nanopb")
(version "0.4.6.4")
(source (origin
(method git-fetch) ;for tests
(uri (git-reference
(url "https://github.com/nanopb/nanopb")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32
"0gb6q4igrjj8jap4p1ijza4y8dkjlingzym3cli1w18f90d7xlh7"))))
(build-system cmake-build-system)
(arguments
(list
#:configure-flags #~(list "-DBUILD_SHARED_LIBS=ON"
"-DBUILD_STATIC_LIBS=OFF")
#:phases
#~(modify-phases %standard-phases
(replace 'check
(lambda* (#:key tests? #:allow-other-keys)
(when tests?
(with-directory-excursion "../source/tests"
(invoke "scons"))))))))
(native-inputs (list protobuf python-protobuf python-wrapper scons))
(home-page "https://jpa.kapsi.fi/nanopb/")
(synopsis "Small code-size Protocol Buffers implementation in ANSI C")
(description "Nanopb is a small code-size Protocol Buffers implementation
in ansi C. It is especially suitable for use in microcontrollers, but fits
any memory-restricted system.")
(license license:zlib)))
(define-public python-mypy-protobuf
(package
(name "python-mypy-protobuf")
(version "3.3.0")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/nipunn1313/mypy-protobuf")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32
"0z03h9k68qvnlyhpk0ndwp01bdx77vrjr6mybxq4ldilkkbksklk"))))
(build-system python-build-system)
(arguments
(list
#:phases
#~(modify-phases %standard-phases
;; XXX: PEP 517 manual build 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 _
(let ((whl (car (find-files "dist" "\\.whl$"))))
(invoke "pip" "--no-cache-dir" "--no-input"
"install" "--no-deps" "--prefix" #$output whl))))
(add-before 'check 'generate-protos-for-tests
(lambda _
;; Generate Python sources.
(for-each (lambda (proto)
(invoke "protoc"
"--proto_path=proto"
"--experimental_allow_proto3_optional"
"--python_out=test/generated" proto))
(find-files "." "\\.proto$"))
;; Generate GRPC protos.
(for-each (lambda (proto)
(invoke "python" "-m" "grpc_tools.protoc"
"--proto_path=proto"
"--experimental_allow_proto3_optional"
"--grpc_python_out=test/generated" proto))
(find-files "proto/testproto/grpc" "\\.proto$"))))
(replace 'check
(lambda* (#:key tests? #:allow-other-keys)
(setenv "PYTHONPATH" "test/generated")
(invoke "pytest" "-vv" "--ignore=test/generated" "test"))))))
(native-inputs
(list python-grpc-stubs
python-grpcio-tools
python-pypa-build
python-pytest
python-typing-extensions-next))
(propagated-inputs
(list protobuf
python-protobuf
python-types-protobuf))
(home-page "https://github.com/nipunn1313/mypy-protobuf")
(synopsis "Generate Mypy stub files from protobuf specifications")
(description "This Python package provide tools to generate Mypy stubs
from protobuf specification files.")
(license license:asl2.0)))
(define-public python-nanopb
(package
(inherit nanopb)
(name "python-nanopb")
(build-system python-build-system)
(arguments
(list
#:tests? #f ;no Python-specific tests
#:phases
#~(modify-phases %standard-phases
(replace 'build
(lambda _
(copy-file "extra/poetry/pyproject.toml" "pyproject.toml")
(delete-file "build.py")
;; Mimick extra/poetry/poetry_build.sh.
(mkdir "nanopb")
(copy-recursively "generator" "nanopb/generator")
(invoke "touch" "nanopb/__init__.py"
"nanopb/generator/__init__.py")
(invoke "make" "-C" "nanopb/generator/proto")
(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 poetry protobuf python-pypa-build))
(propagated-inputs (list python-protobuf))
(synopsis "Small code-size Protocol Buffers implementation in Python")))
(define-public python-protobuf
(package
(name "python-protobuf")

View File

@ -2287,6 +2287,79 @@ Python objects. It tries to use the objects available in the standard
which make writing and running functional and integration tests easier.")
(license license:asl2.0)))
(define-public python-tox
(package
(name "python-tox")
(version "3.20.0")
(source
(origin
(method url-fetch)
(uri (pypi-uri "tox" version))
(sha256
(base32
"0nk0nyzhzamcrvn0qqzzy54isxxqwdi28swml7a2ym78c3f9sqpb"))))
(build-system python-build-system)
(arguments
(list
#:phases
#~(modify-phases %standard-phases
(replace 'check
(lambda* (#:key tests? #:allow-other-keys)
(when tests?
(invoke "pytest" "-vv" "-k"
(string-join
(map (lambda (test)
(string-append "not test_" test))
'("invocation_error"
"create_KeyboadInterrupt"
"exit_code"
"tox_get_python_executable"
"find_alias_on_path"
"get_executable"
"get_executable_no_exist"
"get_sitepackagesdir_error"
"spinner_stdout_not_unicode"
"provision_non_canonical_dep"
"package_setuptools"
"package_poetry"
"parallel_interrupt"
"provision_missing"
"provision_from_pyvenv"
"provision_interrupt_child"
"create"
"run_custom_install_command"
"toxuone_env"
"different_config_cwd"
"test_usedevelop"
"build_backend_without_submodule"
"parallel"
"parallel_live"
"tox_env_var_flags_inserted_isolated"))
" and "))))))))
(propagated-inputs
(list python-filelock
python-packaging
python-pluggy
python-py
python-six
python-toml
python-virtualenv))
(native-inputs
(list python-flaky
python-pathlib2
python-pytest ; >= 2.3.5
python-pytest-freezegun
python-pytest-timeout
python-setuptools-scm))
(home-page "https://tox.readthedocs.io")
(synopsis "Virtualenv-based automation of test activities")
(description "Tox is a generic virtualenv management and test command line
tool. It can be used to check that a package installs correctly with
different Python versions and interpreters, or run tests in each type of
supported environment, or act as a frontend to continuous integration
servers.")
(license license:expat)))
(define-public python-sybil
(package
(name "python-sybil")

View File

@ -2796,14 +2796,14 @@ audio playback capability for Python 3 on OSX, Windows, and Linux.")
(define-public python-simplejson
(package
(name "python-simplejson")
(version "3.17.2")
(version "3.17.6")
(source
(origin
(method url-fetch)
(uri (pypi-uri "simplejson" version))
(sha256
(base32
"0hc8nqwdlll4a9cr1k9msn5kmb6kmbjirpgvhjh254nr4sgwgv3m"))))
"19pqqn01y6qmhhv8q6dh4p1acav49kl923kklnns2qxz5a6h766g"))))
(build-system python-build-system)
(native-inputs
(list python-toml))
@ -14604,43 +14604,6 @@ both in documentation and via Pythons warnings system, as well as the
that deprecated code is eventually removed.")
(license license:asl2.0)))
(define-public python-tox
(package
(name "python-tox")
(version "3.20.0")
(source
(origin
(method url-fetch)
(uri (pypi-uri "tox" version))
(sha256
(base32
"0nk0nyzhzamcrvn0qqzzy54isxxqwdi28swml7a2ym78c3f9sqpb"))))
(build-system python-build-system)
(arguments
;; FIXME: Tests require pytest-timeout, which itself requires
;; pytest>=2.8.0 for installation.
'(#:tests? #f))
(propagated-inputs
(list python-filelock
python-packaging
python-pluggy
python-py
python-six
python-toml
python-virtualenv))
(native-inputs
(list ; FIXME: Missing: ("python-pytest-timeout" ,python-pytest-timeout)
python-pytest ; >= 2.3.5
python-setuptools-scm))
(home-page "https://tox.readthedocs.io")
(synopsis "Virtualenv-based automation of test activities")
(description "Tox is a generic virtualenv management and test command line
tool. It can be used to check that a package installs correctly with
different Python versions and interpreters, or run tests in each type of
supported environment, or act as a frontend to continuous integration
servers.")
(license license:expat)))
(define-public python-jmespath
(package
(name "python-jmespath")
@ -21720,6 +21683,21 @@ Included are implementations of:
@end enumerate\n")
(license license:psfl)))
(define-public python-typing-extensions-next
(package
(inherit python-typing-extensions)
(name "python-typing-extensions")
(version "4.2.0")
(source (origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/python/typing")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32
"1bbry1rg7q5ppkgzdk4nwl7q1w8bbhajm4q68wb9dm6rf7hg1023"))))))
(define-public bpython
(package
(name "bpython")
@ -29420,6 +29398,24 @@ very small subset the Python stubs contained in the complete @code{typeshed}
collection.")
(license license:asl2.0)))
(define-public python-types-protobuf
(package
(name "python-types-protobuf")
(version "3.20.1")
(source (origin
(method url-fetch)
(uri (pypi-uri "types-protobuf" version))
(sha256
(base32
"000f8n6d4ilihiaf590k73rx3327jh8ima5q5dpxlwz3frj45qrn"))))
(build-system python-build-system)
(home-page "https://github.com/python/typeshed")
(synopsis "Typing stubs for @code{protobuf}")
(description "This package contains typing stubs for @code{protobuf}, a
very small subset the Python stubs contained in the complete @code{typeshed}
collection.")
(license license:asl2.0)))
(define-public python-types-pytz
(package
(name "python-types-pytz")

View File

@ -20,7 +20,7 @@
;;; Copyright © 2020 Jonathan Brielmaier <jonathan.brielmaier@web.de>
;;; Copyright © 2020 Michael Rohleder <mike@rohleder.de>
;;; Copyright © 2020, 2021, 2022 Maxim Cournoyer <maxim.cournoyer@gmail.com>
;;; Copyright © 2021 Brendan Tildesley <mail@brendan.scot>
;;; Copyright © 2021, 2022 Brendan Tildesley <mail@brendan.scot>
;;; Copyright © 2021, 2022 Guillaume Le Vaillant <glv@posteo.net>
;;; Copyright © 2021 Nicolò Balzarotti <nicolo@nixo.xyz>
;;; Copyright © 2022 Foo Chuan Wei <chuanwei.foo@hotmail.com>
@ -4056,3 +4056,64 @@ data.")
also compatible with SGI and TGS Open Inventor, and the API is based on the API
of the InventorXt GUI component toolkit.")
(license license:bsd-3))))
(define-public libdbusmenu-qt
(package
(name "libdbusmenu-qt")
(version "0.9.3+16.04.20160218-0ubuntu1")
(source
(origin
(method git-fetch)
;; Download from github rather than launchpad because launchpad trunk
;; tarball hash is not deterministic.
(uri (git-reference
(url "https://github.com/unity8-team/libdbusmenu-qt")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "0b7ii1cvmpcyl79gqal9c3va9m55h055s4hx7fpxkhhqs9463ggg"))))
(build-system cmake-build-system)
(arguments
;; XXX: Tests require a dbus session and some icons.
'(#:tests? #f))
(native-inputs
(list doxygen))
(inputs
(list qtbase-5))
(home-page "https://launchpad.net/libdbusmenu-qt")
(synopsis "Qt implementation of the DBusMenu spec")
(description "This library provides a Qt implementation of the DBusMenu
protocol. The DBusMenu protocol makes it possible for applications to export
and import their menus over DBus.")
(license license:lgpl2.1+)))
(define-public kdsoap
(package
(name "kdsoap")
(version "2.0.0")
(source
(origin
(method url-fetch)
(uri (string-append "https://github.com/KDAB/KDSoap/releases/download/"
"kdsoap-" version "/kdsoap-" version ".tar.gz"))
(sha256
(base32
"1vh4rzb09kks1ilay1y60q7gf64gwzdwsca60hmx1xx69w8672fi"))))
(build-system qt-build-system)
(inputs `(("qtbase" ,qtbase-5)))
(arguments
'(#:configure-flags '("-DKDSoap_TESTS=true")
#:phases
(modify-phases %standard-phases
(replace 'check
(lambda* (#:key tests? #:allow-other-keys)
(when tests?
(invoke "ctest" "-E" ;; These tests try connect to the internet.
"(kdsoap-webcalls|kdsoap-webcalls_wsdl|kdsoap-test_calc)"))
#t)))))
(home-page "https://www.kdab.com/development-resources/qt-tools/kd-soap/")
(synopsis "Qt SOAP component")
(description "KD SOAP is a tool for creating client applications for web
services using the XML based SOAP protocol and without the need for a dedicated
web server.")
(license (list license:gpl2 license:gpl3))))

View File

@ -5,6 +5,7 @@
;;; Copyright © 2020 Brett Gilio <brettg@gnu.org>
;;; Copyright © 2021 Greg Hogan <code@greghogan.com>
;;; Copyright © 2021 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2022 Maxim Cournoyer <maxim.cournoyer@gmail.com>
;;;
;;; This file is part of GNU Guix.
;;;
@ -24,6 +25,7 @@
(define-module (gnu packages rpc)
#:use-module ((guix licenses) #:prefix license:)
#:use-module (guix packages)
#:use-module (guix gexp)
#:use-module (guix git-download)
#:use-module (guix download)
#:use-module (guix utils)
@ -154,17 +156,35 @@ browsers to backend services.")
(delete "abseil-cpp" "protobuf")
(prepend abseil-cpp-20200923.3 protobuf-3.6)))))
(define-public python-grpc-stubs
(package
(name "python-grpc-stubs")
(version "1.24.11")
(source (origin
(method url-fetch)
(uri (pypi-uri "grpc-stubs" version))
(sha256
(base32
"19dkm365g38lvxm799d29dnzg60g8in8251c18qkvsv4n92h8axh"))))
(build-system python-build-system)
(propagated-inputs (list python-grpcio python-typing-extensions))
(home-page "https://github.com/shabbyrobe/grpc-stubs")
(synopsis "gRPC typing stubs for Python")
(description "This is a PEP-561-compliant stub-only package which provides
type information of gRPC.")
(license license:expat)))
(define-public python-grpcio
(package
(name "python-grpcio")
(version "1.27.2")
(version "1.47.0")
(source
(origin
(method url-fetch)
(uri (pypi-uri "grpcio" version))
(sha256
(base32
"0zl89jwcff9hkd8mi4yf3qbhns9vbv1s4x4vahm5mkpr7jwk5ras"))
"00gqhz0b1sqnfx6zy7h5z41b6mpsq57r1f3p95xradcvmdgskfsx"))
(modules '((guix build utils) (ice-9 ftw)))
(snippet
'(begin
@ -176,26 +196,33 @@ browsers to backend services.")
(lambda (file)
(not (member file
'("." ".."
"abseil-cpp"
"address_sorting"
"upb")))))))
#t))))
"upb"
"xxhash")))))))))))
(build-system python-build-system)
(arguments
'(#:phases (modify-phases %standard-phases
(add-before 'build 'use-system-libraries
(lambda _
(setenv "GRPC_PYTHON_BUILD_SYSTEM_CARES" "1")
(setenv "GRPC_PYTHON_BUILD_SYSTEM_OPENSSL" "1")
(setenv "GRPC_PYTHON_BUILD_SYSTEM_ZLIB" "1")
#t))
(add-before 'build 'configure-compiler
(lambda _
(substitute* '("setup.py" "src/python/grpcio/commands.py")
(("'cc'") "'gcc'"))
#t)))))
(list
#:phases
#~(modify-phases %standard-phases
(add-before 'build 'use-system-libraries
(lambda _
(setenv "GRPC_PYTHON_BUILD_SYSTEM_CARES" "1")
(setenv "GRPC_PYTHON_BUILD_SYSTEM_OPENSSL" "1")
(setenv "GRPC_PYTHON_BUILD_SYSTEM_ZLIB" "1")
(setenv "GRPC_PYTHON_BUILD_SYSTEM_RE2" "1")
(setenv "GRPC_PYTHON_BUILD_SYSTEM_ABSL" "1")
;; Fix the linker options to link with abseil-cpp, which is
;; looked under /usr/lib.
(substitute* "setup.py"
(("pathlib.Path\\('/usr').glob\\('lib\\*/libabsl_\\*.so')")
(format #f "pathlib.Path('~a').glob('lib*/libabsl_*.so')"
#$(this-package-input "abseil-cpp"))))))
(add-before 'build 'configure-compiler
(lambda _
(substitute* '("setup.py" "src/python/grpcio/commands.py")
(("'cc'") "'gcc'")))))))
(inputs
(list c-ares openssl zlib))
(list abseil-cpp c-ares openssl re2 zlib))
(propagated-inputs
(list python-six))
(home-page "https://grpc.io")
@ -204,6 +231,34 @@ browsers to backend services.")
with the HTTP/2-based RPC framework gRPC.")
(license license:asl2.0)))
(define-public python-grpcio-tools
(package
(name "python-grpcio-tools")
(version "1.47.0")
(source (origin
(method url-fetch)
(uri (pypi-uri "grpcio-tools" version))
(modules '((guix build utils)))
(snippet
;; This file is auto-generated.
'(delete-file "grpc_tools/_protoc_compiler.cpp"))
(sha256
(base32
"0g3xwv55lvf5w64zb44dipwqz7729cbqc7rib77ddqab91w56jzn"))))
(build-system python-build-system)
(arguments
(list #:phases #~(modify-phases %standard-phases
(add-after 'unpack 'configure
(lambda _
(setenv "GRPC_PYTHON_BUILD_WITH_CYTHON" "1"))))))
(native-inputs (list python-cython))
(propagated-inputs (list python-grpcio python-protobuf))
(home-page "https://grpc.io")
(synopsis "Protobuf code generator for gRPC")
(description "The gRPC tools for Python provide a special plugin for
generating server and client code from @file{.proto} service definitions.")
(license license:asl2.0)))
(define-public apache-thrift
(package
(name "apache-thrift")

View File

@ -16,6 +16,7 @@
;;; Copyright © 2021 jgart <jgart@dismail.de>
;;; Copyright © 2021 Nicolas Graves <ngraves@ngraves.fr>
;;; Copyright © 2022 Aleksandr Vityazev <avityazev@posteo.org>
;;; Copyright © 2022 Gabriel Arazas <foo.dogsquared@gmail.com>
;;;
;;; This file is part of GNU Guix.
;;;
@ -1129,6 +1130,62 @@ classic Web2C implementation of TeX and uses the TeXLive distribution
of support files.")
(license license:expat)))
(define-public treefmt
(package
(name "treefmt")
(version "0.4.1")
(source
(origin
(method url-fetch)
(uri (crate-uri "treefmt" version))
(file-name
(string-append name "-" version ".tar.gz"))
(sha256
(base32 "1rarg6rffzl1cf6r167h9p14wr696kwnzr85kwbdy7x7x5zpj5li"))))
(build-system cargo-build-system)
(arguments
`(#:install-source? #f
#:cargo-inputs
(("rust-anyhow" ,rust-anyhow-1)
("rust-console" ,rust-console-0.13)
("rust-directories" ,rust-directories-3)
("rust-filetime" ,rust-filetime-0.2)
("rust-globset" ,rust-globset-0.4)
("rust-ignore" ,rust-ignore-0.4)
("rust-log" ,rust-log-0.4)
("rust-path-clean" ,rust-path-clean-0.1)
("rust-rayon" ,rust-rayon-1)
("rust-serde" ,rust-serde-1)
("rust-serde-json" ,rust-serde-json-1)
("rust-sha-1" ,rust-sha-1-0.9)
("rust-structopt" ,rust-structopt-0.3)
("rust-tempfile" ,rust-tempfile-3)
("rust-toml" ,rust-toml-0.5)
("rust-which" ,rust-which-4))
#:cargo-development-inputs
(("rust-criterion" ,rust-criterion-0.3))))
(home-page "https://numtide.github.io/treefmt")
(synopsis "Command-line application to format the code tree")
(description
"This application provides a way to unify the formatting process of the
codebase. It is nice for large code trees where using multiple formatters are
common. @command{treefmt} comes with the following features.
@itemize
@item Unified CLI and output.
@item Runs formatters in parallel.
@item Cache changed files for performance.
@end itemize
The application does have some design decisions to keep in mind.
@itemize
@item The source code is kept under version control, making it possible to
revert and check changes.
@item Only one formatter per file, making outputs idempotent.
@end itemize")
(license license:expat)))
(define-public hex
(package
(name "hex")

View File

@ -541,7 +541,7 @@ directory.")
(define-public guile-sdl
(package
(name "guile-sdl")
(version "0.5.3")
(version "0.6.1")
(source (origin
(method url-fetch)
(uri
@ -549,7 +549,7 @@ directory.")
version ".tar.lz"))
(sha256
(base32
"040gyk3n3yp8i30ngdg97n3083g8b6laky2nlh10jqcyjdd550d6"))))
"1q985nd3birr5pny74915x098fisa6llas3ijgf1b4gdz5717nzz"))))
(build-system gnu-build-system)
(native-inputs
`(("lzip" ,lzip)

View File

@ -33,6 +33,7 @@
(define-module (gnu packages suckless)
#:use-module (gnu packages)
#:use-module (gnu packages base)
#:use-module (gnu packages crates-io)
#:use-module (gnu packages compression)
#:use-module (gnu packages cups)
#:use-module (gnu packages fonts)
@ -49,6 +50,7 @@
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages webkit)
#:use-module (gnu packages xorg)
#:use-module (guix build-system cargo)
#:use-module (guix build-system glib-or-gtk)
#:use-module (guix build-system gnu)
#:use-module (guix download)
@ -1182,6 +1184,33 @@ pipe and compress.")
(home-page "https://git.suckless.org/farbfeld/")
(license license:isc))))
(define-public snafu
(let ((commit "e436fb4f61ca93a4ec85122506b2c2d4fec30eb6")
(revision "0"))
(package
(name "snafu")
(version (git-version "0.0.0" revision commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/jsbmg/snafu")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32 "1c6ahxw0qz0703my28k2z0kgi0am5bp5d02l4rgyphgvjk1jfv8h"))))
(arguments
`(#:cargo-inputs
(("rust-chrono" ,rust-chrono-0.4))
#:tests? #f)) ; There are no tests.
(build-system cargo-build-system)
(home-page "https://github.com/jsbmg/snafu")
(synopsis "Status text for DWM window manager")
(description "@code{snafu} provides status text for DWM's builtin bar. It
shows battery status, battery capacity, current WiFi connection, and the time in
a nice format.")
(license license:isc))))
(define-public svkbd
(package
(name "svkbd")

View File

@ -9680,6 +9680,28 @@ section.
@end enumerate\n")
(license license:lppl1.3c))))
(define-public texlive-biblatex-apa
(package
;; Version 9.16 2022-06-22
(inherit (simple-texlive-package
"texlive-biblatex-apa"
(list "doc/latex/biblatex-apa/"
"tex/latex/biblatex-apa/")
(base32
"0ivf7xbzj4xd57sqfbi87hbr73rraqifkzvx06yxgq0gmzz0x6wl")
#:trivial? #t))
(propagated-inputs
(list texlive-biblatex biber texlive-csquotes))
(home-page
"https://www.ctan.org/pkg/biblatex-apa")
(synopsis "BibLaTeX citation and reference style for APA")
(description
"This is a fairly complete BibLaTeX style (citations and references) for
@acronym{APA, American Psychological Association} publications. It implements
and automates most of the guidelines in the APA 7th edition style guide for
citations and references.")
(license license:lppl1.3c)))
(define-public texlive-todonotes
(let ((template (simple-texlive-package
"texlive-todonotes"

View File

@ -1,7 +1,7 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2016 José Miguel Sánchez García <jmi2k@openmailbox.org>
;;; Copyright © 2016 Carlo Zancanaro <carlo@zancanaro.id.au>
;;; Copyright © 2017, 2018, 2020 Eric Bavier <bavier@posteo.net>
;;; Copyright © 2017, 2018, 2020, 2022 Eric Bavier <bavier@posteo.net>
;;; Copyright © 2017 Feng Shu <tumashu@163.com>
;;; Copyright © 2017 Nikita <nikita@n0.is>
;;; Copyright © 2014 Taylan Ulrich Bayırlı/Kammer <taylanbayirli@gmail.org>
@ -651,7 +651,7 @@ scripts/input/X11/C/Shell/HTML/Dired): 49KB.
(define-public ghostwriter
(package
(name "ghostwriter")
(version "2.0.2")
(version "2.1.4")
(source (origin
(method git-fetch)
(uri (git-reference
@ -660,7 +660,7 @@ scripts/input/X11/C/Shell/HTML/Dired): 49KB.
(file-name (git-file-name name version))
(sha256
(base32
"19cf55b86yj2b5hdazbyw4iyp6xq155243aiyg4m0vhwh0h79nwh"))))
"1w8a6vkhmdbp4kzb7aprvfni9ny47dj0vigbcnsh539dn3sp1gan"))))
(build-system gnu-build-system)
(native-inputs
(list pkg-config qttools-5)) ; for lrelease
@ -675,27 +675,26 @@ scripts/input/X11/C/Shell/HTML/Dired): 49KB.
(propagated-inputs ; To get native-search-path
(list qtwebengine-5))
(arguments
`(#:phases
(modify-phases %standard-phases
(replace 'configure
(lambda* (#:key outputs #:allow-other-keys)
(let ((out (assoc-ref outputs "out")))
(invoke "qmake" (string-append "PREFIX=" out)))))
(add-after 'configure 'create-translations
(lambda _
;; `lrelease` will not overwrite, so delete existing .qm files
(for-each delete-file (find-files "translations" ".*\\.qm"))
(apply invoke "lrelease" (find-files "translations" ".*\\.ts"))))
;; Ensure that icons are found at runtime.
(add-after 'install 'wrap-executable
(lambda* (#:key inputs outputs #:allow-other-keys)
(let ((out (assoc-ref outputs "out")))
(wrap-program (string-append out "/bin/ghostwriter")
`("QT_PLUGIN_PATH" ":" prefix
,(map (lambda (label)
(string-append (assoc-ref inputs label)
"/lib/qt5/plugins/"))
'("qtsvg-5" "qtmultimedia-5"))))))))))
(list
#:phases
#~(modify-phases %standard-phases
(replace 'configure
(lambda* (#:key outputs #:allow-other-keys)
(invoke "qmake" (string-append "PREFIX=" #$output))))
(add-after 'configure 'create-translations
(lambda _
;; `lrelease` will not overwrite, so delete existing .qm files
(for-each delete-file (find-files "translations" ".*\\.qm"))
(apply invoke "lrelease" (find-files "translations" ".*\\.ts"))))
;; Ensure that icons are found at runtime.
(add-after 'install 'wrap-executable
(lambda* (#:key inputs outputs #:allow-other-keys)
(wrap-program (string-append #$output "/bin/ghostwriter")
`("QT_PLUGIN_PATH" ":" prefix
#$(map (lambda (label)
(file-append (this-package-input label)
"/lib/qt5/plugins"))
'("qtsvg" "qtmultimedia")))))))))
(home-page "https://wereturtle.github.io/ghostwriter/")
(synopsis "Write without distractions")
(description

View File

@ -2460,7 +2460,7 @@ from Subversion to any supported Distributed Version Control System (DVCS).")
(define-public tig
(package
(name "tig")
(version "2.5.6")
(version "2.5.7")
(source (origin
(method url-fetch)
(uri (string-append
@ -2468,7 +2468,7 @@ from Subversion to any supported Distributed Version Control System (DVCS).")
version "/tig-" version ".tar.gz"))
(sha256
(base32
"0pwn7mlfnd5ngcbagjs9vsr7jgmia8676p0i91vvfl4v6qrmzfsh"))
"0xna55y1r1jssdmrzpinv96p7w00w9hn39q5l3d8l299dg4bmiyv"))
(modules '((guix build utils)))
(snippet
'(begin

View File

@ -1092,7 +1092,7 @@ H.264 (MPEG-4 AVC) video streams.")
(define-public pipe-viewer
(package
(name "pipe-viewer")
(version "0.2.0")
(version "0.2.3")
(source
(origin
(method git-fetch)
@ -1102,7 +1102,7 @@ H.264 (MPEG-4 AVC) video streams.")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "19qfs0nv7l01468f14a5zbvaiff5hrsk3a4zqknh15014xnvw08s"))))
(base32 "0c2v4pj86442sp71ndjmvd2bl1grp6g9ya2ywdaihq1f2djk6jxl"))))
(build-system perl-build-system)
(arguments
`(#:imported-modules
@ -1122,9 +1122,6 @@ H.264 (MPEG-4 AVC) video streams.")
(add-after 'unpack 'patch-source
(lambda* (#:key inputs #:allow-other-keys)
(substitute* (find-files "lib" "\\.pm$")
(("\"youtube-dl\"")
(format #f "\"~a/bin/youtube-dl\""
(assoc-ref inputs "youtube-dl")))
(("\"yt-dlp\"")
(format #f "\"~a/bin/yt-dlp\""
(assoc-ref inputs "yt-dlp"))))
@ -1138,9 +1135,6 @@ H.264 (MPEG-4 AVC) video streams.")
(("'xdg-open'")
(format #f "'~a/bin/xdg-open'"
(assoc-ref inputs "xdg-utils")))
(("'youtube-dl'")
(format #f "'~a/bin/youtube-dl'"
(assoc-ref inputs "youtube-dl")))
(("'yt-dlp'")
(format #f "'~a/bin/yt-dlp'"
(assoc-ref inputs "yt-dlp"))))))
@ -1194,7 +1188,6 @@ H.264 (MPEG-4 AVC) video streams.")
perl-uri-escape
wget
xdg-utils
youtube-dl
yt-dlp))
(propagated-inputs
(list dconf))

View File

@ -1197,3 +1197,31 @@ public keys and can roam across IP addresses.")
"xl2tpd is an implementation of the Layer 2 Tunnelling Protocol (RFC 2661).
L2TP allows you to tunnel PPP over UDP.")
(license license:gpl2)))
(define-public vpn-slice
(package
(name "vpn-slice")
(version "0.16.1")
(source (origin
(method url-fetch)
(uri (pypi-uri "vpn-slice" version))
(sha256
(base32
"1anfx4hn2ggm6sbwqmqx68s3l2rjcy4z4l038xqb440jnk8jvl18"))))
(build-system python-build-system)
(inputs (list python-dnspython python-setproctitle))
(home-page "https://github.com/dlenski/vpn-slice")
(synopsis "Split tunneling replacement for vpnc-script")
(description "vpn-slice is a replacement for @command{vpnc-script} used by
@code{openconnect} and @code{vpnc}. Instead of trying to copy the behavior of
standard corporate VPN clients, which normally reroute all your network
traffic through the VPN, vpn-slice tries to minimize your contact with an
intrusive VPN. This is also known as a split-tunnel VPN, since it splits your
traffic between the VPN tunnel and your normal network interfaces.
By default, vpn-slice only routes traffic for specific hosts or subnets
through the VPN. It automatically looks up named hosts, using the VPN's DNS
servers, and adds entries for them to your @file{/etc/hosts} (which it cleans
up after VPN disconnection), however it does not otherwise alter your
@file{/etc/resolv.conf} at all.")
(license license:gpl3+)))

View File

@ -468,7 +468,7 @@ interface.")
(define-public qutebrowser
(package
(name "qutebrowser")
(version "2.5.1")
(version "2.5.2")
(source
(origin
(method url-fetch)
@ -476,7 +476,7 @@ interface.")
"qutebrowser/releases/download/v" version "/"
"qutebrowser-" version ".tar.gz"))
(sha256
(base32 "1g7dfrnjgifvbmz1523iq9qxhrsciajr8dv3pak6dlacm235i276"))))
(base32 "0279fi4lx8sfxz3mx6ar0wz01kiiqa1zkv9fxc6xw0y4vlacxgx9"))))
(build-system python-build-system)
(native-inputs
(list python-attrs)) ; for tests

View File

@ -89,7 +89,7 @@
(define-public libxmlb
(package
(name "libxmlb")
(version "0.3.8")
(version "0.3.9")
(source
(origin
(method git-fetch)
@ -99,9 +99,7 @@
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "0znz2y1ig2kvlda44a3kxa8x7f222nbg50rjz6nlngzka0ccsgxx"))
;; Drop xb-tool patch after libxmlb 0.3.8, merged upstream
(patches (search-patches "libxmlb-install-xb-tool-into-bindir.patch"))))
(base32 "1n6ffza134sj9ck9nbngdhq8kvbsk5mvjqki3ph4xc283b1ywr71"))))
(build-system meson-build-system)
(arguments
`(#:glib-or-gtk? #t))

View File

@ -127,7 +127,7 @@
(string-append "bantime." (substring name 9))))
((string-contains name "-")
(fail2ban-jail-configuration-serialize-field-name
(string-filter (lambda (c) (equal? c #\-)) name)))
(string-filter (lambda (c) (not (equal? c #\-))) name)))
(else name)))
(define (fail2ban-jail-configuration-serialize-string field-name value)
@ -194,13 +194,14 @@
(define-configuration fail2ban-jail-configuration
(name
string
"Required name of this jail configuration.")
"Required name of this jail configuration."
empty-serializer)
(enabled?
(boolean #t)
"Whether this jail is enabled.")
(backend
maybe-symbol
"Backend to use to detect changes in the @code{ogpath}. The default is
"Backend to use to detect changes in the @code{log-path}. The default is
'auto. To consult the defaults of the jail configuration, refer to the
@file{/etc/fail2ban/jail.conf} file of the @code{fail2ban} package."
fail2ban-jail-configuration-serialize-backend)

270
gnu/tests/image.scm 100644
View File

@ -0,0 +1,270 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2022 Mathieu Othacehe <othacehe@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 (gnu tests image)
#:use-module (gnu)
#:use-module (gnu image)
#:use-module (gnu tests)
#:autoload (gnu system image) (system-image root-offset)
#:use-module (gnu system uuid)
#:use-module (gnu system vm)
#:use-module (gnu packages guile)
#:use-module (gnu packages guile-xyz)
#:use-module (guix gexp)
#:use-module (guix monads)
#:use-module (ice-9 format)
#:export (%test-images))
;;; Commentary:
;;;
;;; This module provides tests for the image creation process that is
;;; performed by "genimage" under the hood.
;;;
;;; The image partitionment is checked using Guile-Parted. The content of the
;;; images is out of the scope of this module. Other test modules such as
;;; (gnu tests installation) make sure that the produced images are viable.
;;;
;;; Code:
;; A dummy initializer creating a simple file in the partition.
(define dummy-initializer
#~(lambda* (root . rest)
(mkdir root)
(call-with-output-file
(string-append root "/test")
(lambda (port)
(format port "content")))))
(define %simple-efi-os
(operating-system
(inherit %simple-os)
(bootloader (bootloader-configuration
(bootloader grub-efi-bootloader)
(targets '("/boot/efi"))))))
;; An MBR disk image with a single ext4 partition.
(define i1
(image
(format 'disk-image)
(operating-system %simple-os)
(partitions
(list
(partition
(size (* 1024 1024)) ;1MiB
(offset root-offset)
(label "test")
(file-system "ext4")
(flags '(boot))
(initializer dummy-initializer))))))
;; A GPT disk image with a single ext4 partition.
(define i2
(image
(format 'disk-image)
(operating-system %simple-efi-os)
(partition-table-type 'gpt)
(partitions
(list
(partition
(size (* 1024 1024)) ;1MiB
(offset root-offset)
(label "test")
(file-system "ext4")
(flags '(boot))
(initializer dummy-initializer))))))
;; An MBR disk image with multiple ext4 partitions.
(define i3
(image
(format 'disk-image)
(operating-system %simple-os)
(partitions
(list
(partition
(size (* 1024 1024)) ;1MiB
(offset root-offset)
(label "test")
(file-system "ext4")
(flags '(boot))
(initializer dummy-initializer))
(partition
(size (* 1024 1024)) ;1MiB
(label "test2")
(file-system "ext4")
(flags '())
(initializer dummy-initializer))))))
;; A GPT disk image with multiple ext4 partitions.
(define i4
(image
(format 'disk-image)
(operating-system %simple-efi-os)
(partition-table-type 'gpt)
(partitions
(list
(partition
(size (* 1024 1024)) ;1MiB
(offset root-offset)
(label "test")
(file-system "ext4")
(flags '(boot))
(initializer dummy-initializer))
(partition
(size (* 1024 1024)) ;1MiB
(label "test2")
(file-system "ext4")
(flags '())
(initializer dummy-initializer))))))
;; A GPT disk image with fat32 and ext4 partitions.
(define i5
(image
(format 'disk-image)
(operating-system %simple-efi-os)
(partition-table-type 'gpt)
(partitions
(list
(partition
(size (* 1024 1024 128)) ;128MiB
(offset root-offset)
(label "test")
(file-system "fat32")
(flags '(esp))
(initializer dummy-initializer))
(partition
(size (* 1024 1024 256)) ;256MiB
(label "test2")
(file-system "ext4")
(flags '(boot))
(initializer dummy-initializer))))))
(define (run-images-test)
(define test
(with-imported-modules '((srfi srfi-64)
(gnu build marionette))
(with-extensions (list guile-parted guile-bytestructures)
#~(begin
(use-modules (gnu build marionette)
(srfi srfi-1)
(srfi srfi-26)
(srfi srfi-64)
(parted))
(define (image->disk img)
(disk-new (get-device img)))
(test-runner-current (system-test-runner #$output))
(test-begin "images")
;; Image i1.
(define i1-image
#$(system-image i1))
(define d1-device
(get-device i1-image))
(test-equal "msdos"
(disk-type-name (disk-probe d1-device)))
(test-equal 1
(disk-get-primary-partition-count (disk-new d1-device)))
(test-assert
(let* ((disk (disk-new d1-device))
(partitions (disk-partitions disk))
(boot-partition (find normal-partition? partitions)))
(partition-get-flag boot-partition PARTITION-FLAG-BOOT)))
;; Image i2.
(define i2-image
#$(system-image i2))
(define d2-device
(get-device i2-image))
(test-equal "gpt"
(disk-type-name (disk-probe d2-device)))
(test-equal 1
(disk-get-primary-partition-count (disk-new d2-device)))
(test-equal "test"
(let* ((disk (disk-new d2-device))
(partitions (disk-partitions disk))
(boot-partition (find normal-partition? partitions)))
(partition-get-name boot-partition)))
;; Image i3.
(define i3-image
#$(system-image i3))
(define d3-device
(get-device i3-image))
(test-equal "msdos"
(disk-type-name (disk-probe d3-device)))
(test-equal 2
(disk-get-primary-partition-count (disk-new d3-device)))
;; Image i4.
(define i4-image
#$(system-image i4))
(define d4-device
(get-device i4-image))
(test-equal "gpt"
(disk-type-name (disk-probe d4-device)))
(test-equal 2
(disk-get-primary-partition-count (disk-new d4-device)))
;; Image i5.
(define i5-image
#$(system-image i5))
(define d5-device
(get-device i5-image))
(define (sector->byte sector)
(/ (* sector (device-sector-size d5-device))
MEBIBYTE-SIZE))
(test-equal "gpt"
(disk-type-name (disk-probe d5-device)))
(test-equal 2
(disk-get-primary-partition-count (disk-new d5-device)))
(test-equal '("fat32" "ext4")
(map (compose filesystem-type-name partition-fs-type)
(filter data-partition?
(disk-partitions (disk-new d5-device)))))
;; The first partition has a 1MiB offset has a 128MiB size. The
;; second partition should then start at 129MiB.
(test-equal '(1 129)
(map (compose sector->byte partition-start)
(filter data-partition?
(disk-partitions (disk-new d5-device)))))
(test-end)))))
(gexp->derivation "images-test" test))
(define %test-images
(system-test
(name "images")
(description "Build and test basic system images.")
(value (run-images-test))))

View File

@ -128,6 +128,7 @@
packages->manifest
ca-certificate-bundle
%default-profile-hooks
%manifest-format-version
profile-derivation
profile-search-paths
load-profile

View File

@ -145,6 +145,7 @@ denote ranges as interpreted by 'matching-generations'."
dry-run?
(hooks %default-profile-hooks)
allow-collisions?
(format-version %manifest-format-version)
bootstrap?)
"Build a new generation of PROFILE, a file name, using the packages
specified in MANIFEST, a manifest object. When ALLOW-COLLISIONS? is true,
@ -154,6 +155,7 @@ hooks\" run when building the profile."
(profile-derivation manifest
#:allow-collisions? allow-collisions?
#:hooks (if bootstrap? '() hooks)
#:format-version format-version
#:locales? (not bootstrap?))))
(prof (derivation->output-path prof-drv)))

View File

@ -452,6 +452,9 @@ true, display what would be built without actually building it."
(mlet %store-monad ((manifest (channel-instances->manifest instances)))
(mbegin %store-monad
(update-profile profile manifest
;; Create a version 3 profile so that it is readable by
;; old instances of Guix.
#:format-version 3
#:hooks %channel-profile-hooks)
(return

View File

@ -41,6 +41,7 @@
#:use-module (guix grafts)
#:use-module (guix gexp)
#:use-module (guix derivations)
#:use-module (guix diagnostics)
#:use-module (guix packages)
#:use-module (guix utils)
#:use-module (guix monads)
@ -1257,7 +1258,10 @@ resulting from command-line parsing."
(size image-size)
(volatile-root? volatile?)
(shared-network? shared-network?))))
(os (image-operating-system image))
(os (or (image-operating-system image)
(raise
(formatted-message
(G_ "image lacks an operating-system")))))
(target-file (match args
((first second) second)
(_ #f)))

View File

@ -34,7 +34,6 @@
#:use-module (guix monads)
#:use-module (guix store)
#:use-module ((guix self) #:select (make-config.scm))
#:autoload (guix describe) (current-profile)
#:use-module (guix channels)
#:autoload (guix git) (update-cached-checkout)
#:use-module (guix i18n)
@ -372,8 +371,7 @@ currently-deployed commit (from CURRENT-CHANNELS, which is as returned by
'guix system describe' by default) and the target commit (as returned by 'guix
describe')."
(define new
(or (and=> (current-profile) profile-channels)
'()))
((@ (guix describe) current-channels)))
(when (null? current-channels)
(warning (G_ "cannot determine provenance for current system~%")))