me
/
guix
Archived
1
0
Fork 0

Merge branch 'staging' into core-updates

master
Marius Bakke 2022-09-01 23:26:57 +02:00
commit 58863b93b0
No known key found for this signature in database
GPG Key ID: A2A06DF2A33A54FA
99 changed files with 49580 additions and 4380 deletions

View File

@ -398,6 +398,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

@ -36531,7 +36531,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))
@ -36556,7 +36556,7 @@ For example:
openssh-service-type
(fail2ban-jail-configuration
(name "sshd")
(enabled #t)))
(enabled? #t)))
(openssh-configuration ...))))
@end lisp
@end deffn
@ -36636,7 +36636,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.
@ -38470,7 +38470,7 @@ image -t qcow2} on x86_64 hardware:
@example
$ qemu-system-x86_64 \
-nic user,model=virtio-net-pci \
-enable-kvm -m 1024 \
-enable-kvm -m 2048 \
-device virtio-blk,drive=myhd \
-drive if=none,file=/tmp/qemu-image,id=myhd
@end example
@ -38497,7 +38497,7 @@ virtual machine support (KVM) of the Linux kernel will make things run
faster.
@c To run Xfce + 'guix pull', we need at least 1G of RAM.
@item -m 1024
@item -m 2048
RAM available to the guest OS, in mebibytes. Defaults to 128@tie{}MiB,
which may be insufficient for some operations.

View File

@ -1,5 +1,5 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2020, 2021 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2020-2022 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2020 Jan (janneke) Nieuwenhuizen <janneke@gnu.org>
;;;
;;; This file is part of GNU Guix.
@ -26,6 +26,7 @@
((guix platform) #:select (targets))
((gnu services xorg) #:select (%default-xorg-modules))
(guix utils)
(guix gexp)
(srfi srfi-1)
(srfi srfi-26))
@ -142,9 +143,16 @@ TARGET."
(if (target-mingw? target)
%packages-to-cross-build-for-mingw
%packages-to-cross-build)))
;; XXX: Important bits like libsigsegv and libffi don't support
;; RISCV at the moment, so don't require RISCV support.
(delete "riscv64-linux-gnu" (targets)))))
(fold delete (targets)
'(;; Like in (gnu ci), dismiss cross-compilation to x86:
;; it's pointless.
"x86_64-linux-gnu"
"i686-linux-gnu"
;; XXX: Important bits like libsigsegv and libffi don't
;; support RISCV at the moment, so don't require RISCV
;; support.
"riscv64-linux-gnu")))))
(define %cross-bootstrap-manifest
(manifest

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

@ -2,6 +2,7 @@
;;; Copyright © 2018, 2019 Mathieu Othacehe <m.othacehe@gmail.com>
;;; Copyright © 2019, 2020, 2022 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2020 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2022 Josselin Poiret <dev@jpoiret.xyz>
;;;
;;; This file is part of GNU Guix.
;;;
@ -983,6 +984,11 @@ exists."
(for-each
(lambda (partition)
(and (data-partition? partition)
;; Do not remove logical partitions ourselves, since
;; disk-remove-partition* will remove all the logical partitions
;; residing on an extended partition, which would lead to a
;; double-remove and ensuing SEGFAULT.
(not (logical-partition? partition))
(disk-remove-partition* disk partition)))
non-boot-partitions)

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 \
@ -943,7 +945,6 @@ dist_patch_DATA = \
%D%/packages/patches/ceph-disable-cpu-optimizations.patch \
%D%/packages/patches/ceph-boost-compat.patch \
%D%/packages/patches/ceph-rocksdb-compat.patch \
%D%/packages/patches/cheese-vala-update.patch \
%D%/packages/patches/chmlib-inttypes.patch \
%D%/packages/patches/cl-asdf-config-directories.patch \
%D%/packages/patches/clamav-config-llvm-libs.patch \
@ -1167,8 +1168,6 @@ dist_patch_DATA = \
%D%/packages/patches/ghostscript-no-header-uuid.patch \
%D%/packages/patches/ghostscript-no-header-creationdate.patch \
%D%/packages/patches/giara-fix-login.patch \
%D%/packages/patches/glade-gls-set-script-name.patch \
%D%/packages/patches/glade-test-widget-null-icon.patch \
%D%/packages/patches/glib-appinfo-watch.patch \
%D%/packages/patches/glib-networking-gnutls-binding.patch \
%D%/packages/patches/glib-networking-32-bit-time.patch \
@ -1233,7 +1232,6 @@ dist_patch_DATA = \
%D%/packages/patches/gpm-glibc-2.26.patch \
%D%/packages/patches/gpodder-disable-updater.patch \
%D%/packages/patches/gpsbabel-fix-i686-test.patch \
%D%/packages/patches/grantlee-merge-theme-dirs.patch \
%D%/packages/patches/grep-timing-sensitive-test.patch \
%D%/packages/patches/grfcodec-gcc-compat.patch \
%D%/packages/patches/gromacs-tinyxml2.patch \
@ -1346,7 +1344,6 @@ dist_patch_DATA = \
%D%/packages/patches/julia-SOURCE_DATE_EPOCH-mtime.patch \
%D%/packages/patches/julia-tracker-16-compat.patch \
%D%/packages/patches/julia-allow-parallel-build.patch \
%D%/packages/patches/kdbusaddons-kinit-file-name.patch \
%D%/packages/patches/libobjc2-unbundle-robin-map.patch \
%D%/packages/patches/librime-fix-build-with-gcc10.patch \
%D%/packages/patches/libvirt-add-install-prefix.patch \
@ -1361,16 +1358,10 @@ dist_patch_DATA = \
%D%/packages/patches/kiki-missing-includes.patch \
%D%/packages/patches/kiki-portability-64bit.patch \
%D%/packages/patches/kinit-kdeinit-extra_libs.patch \
%D%/packages/patches/kinit-kdeinit-libpath.patch \
%D%/packages/patches/kio-search-smbd-on-PATH.patch \
%D%/packages/patches/kismet-unbundle-boost.patch \
%D%/packages/patches/kmail-Fix-missing-link-libraries.patch \
%D%/packages/patches/kmod-module-directory.patch \
%D%/packages/patches/kmscon-runtime-keymap-switch.patch \
%D%/packages/patches/kpackage-allow-external-paths.patch \
%D%/packages/patches/kpackage-fix-KF5PackageMacros.cmake.patch \
%D%/packages/patches/kmplayer-aarch64.patch \
%D%/packages/patches/kmplayer-upstream_Fix-build-with-Qt-5.9.patch \
%D%/packages/patches/kobodeluxe-paths.patch \
%D%/packages/patches/kobodeluxe-enemies-pipe-decl.patch \
%D%/packages/patches/kobodeluxe-const-charp-conversion.patch \
@ -1439,7 +1430,6 @@ dist_patch_DATA = \
%D%/packages/patches/libvdpau-va-gl-unbundle.patch \
%D%/packages/patches/libvpx-CVE-2016-2818.patch \
%D%/packages/patches/libxml2-xpath0-Add-option-xpath0.patch \
%D%/packages/patches/libxmlb-install-xb-tool-into-bindir.patch \
%D%/packages/patches/libwpd-gcc-compat.patch \
%D%/packages/patches/libxslt-generated-ids.patch \
%D%/packages/patches/libxt-guix-search-paths.patch \
@ -1596,7 +1586,6 @@ dist_patch_DATA = \
%D%/packages/patches/pango-skip-libthai-test.patch \
%D%/packages/patches/password-store-tree-compat.patch \
%D%/packages/patches/pjproject-install-libpjsua2.patch \
%D%/packages/patches/plasma-framework-fix-KF5PlasmaMacros.cmake.patch \
%D%/packages/patches/pokerth-boost.patch \
%D%/packages/patches/ppsspp-disable-upgrade-and-gold.patch \
%D%/packages/patches/pthreadpool-system-libraries.patch \

View File

@ -2506,14 +2506,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

View File

@ -5843,7 +5843,7 @@ and DSD streams.")
(define-public qpwgraph
(package
(name "qpwgraph")
(version "0.3.4")
(version "0.3.5")
(source (origin
(method git-fetch)
(uri (git-reference
@ -5852,7 +5852,7 @@ and DSD streams.")
(file-name (git-file-name name version))
(sha256
(base32
"1xqmlbqj6ny4cpclzr8xyy6d6i392h9f1vmlbasp6xfy5b0yya94"))))
"01f4zabn22dp0yl7szxck6gkbayk1p5iqajfgzls7mdkba7515b6"))))
(build-system cmake-build-system)
(arguments (list #:tests? #f)) ;; no tests
(inputs (list alsa-lib

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

@ -123,6 +123,7 @@
"third_party/ced" ;BSD-3
"third_party/cld_3" ;ASL2.0
"third_party/closure_compiler" ;ASL2.0
"third_party/content_analysis_sdk" ;BSD-3
"third_party/cpuinfo" ;BSD-2
"third_party/crashpad" ;ASL2.0
"third_party/crashpad/crashpad/third_party/lss" ;ASL2.0
@ -316,7 +317,7 @@
;; run the Blink performance tests, just remove everything to save ~70MiB.
'("third_party/blink/perf_tests"))
(define %chromium-version "104.0.5112.101")
(define %chromium-version "105.0.5195.52")
(define %ungoogled-revision (string-append %chromium-version "-1"))
(define %debian-revision "debian/102.0.5005.61-1")
@ -328,7 +329,7 @@
(file-name (git-file-name "ungoogled-chromium" %ungoogled-revision))
(sha256
(base32
"0jy5hjn61p5mnbqns3jlybim7iy8w9cmzm3i84wn68cyyx1bk25m"))))
"1smzgnd3zmh57pz7sk9nb7m31wbhx1x9y3ll3m4zaxwrrb41kghn"))))
(define %debian-origin
(origin
@ -343,18 +344,45 @@
(base32
"1ln6r1qzlr7dsgvcbssvvc34my4mpkwv9hmvlb2dhjncs7isp65j"))))
(define (debian-patch name)
(define %chromium-gcc-patchset
(let ((commit "chromium-105-patchset-1"))
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/stha09/chromium-patches")
(commit commit)))
(file-name (git-file-name "chromium-gcc-patches"
(string-drop commit 9)))
(sha256
(base32
"08c3pbdqjdqi7rmyqkkh6q429611ikakf4gkzwg1gr07vyknwkfa")))))
(define (origin-file origin file)
(computed-file
(basename name)
#~(symlink (string-append #$%debian-origin "/debian/patches/" #$name)
(basename file)
#~(symlink (string-append #$origin "/" #$file)
#$output)))
(define (debian-patch name)
(origin-file %debian-origin (string-append "/debian/patches/" name)))
(define %debian-patches
(map debian-patch
'("system/jsoncpp.patch"
"system/zlib.patch"
"system/openjpeg.patch")))
(define (gcc-patch name)
(origin-file %chromium-gcc-patchset name))
(define %gcc-patches
(map gcc-patch
'("chromium-105-AdjustMaskLayerGeometry-ceilf.patch"
"chromium-105-Bitmap-include.patch"
"chromium-105-browser_finder-include.patch"
"chromium-105-raw_ptr-noexcept.patch"
"chromium-105-Trap-raw_ptr.patch")))
;; Take a patch from Arch that reverts a change which requires an unreleased
;; version of ffmpeg.
(define %ungoogled-chromium-unroll-ffmpeg.patch
@ -405,7 +433,8 @@
(for-each (lambda (patch)
(invoke "patch" "-p1" "--force" "--input"
patch "--no-backup-if-mismatch"))
(append '#+%debian-patches '#+%guix-patches))
(append '#+%debian-patches '#+%guix-patches
'#+%gcc-patches))
(invoke "patch" "-Rp1" "--force" "--input" "--no-backup-if-mismatch"
"--input" #$%ungoogled-chromium-unroll-ffmpeg.patch)
@ -477,7 +506,7 @@
%chromium-version ".tar.xz"))
(sha256
(base32
"0nrghgngxdn9richjnxii9y94dg5zpwc3gd3vx609r4xaphibw30"))
"0hkwjilzy0x28knm6nrkywnsmldhz4kgpnxka2iaghihkjzb4wfw"))
(modules '((guix build utils)))
(snippet (force ungoogled-chromium-snippet))))
(build-system gnu-build-system)
@ -611,25 +640,25 @@
"sandbox/linux/syscall_broker/broker_host.cc")
(("include \"base/third_party/valgrind/") "include \"valgrind/"))
(for-each (lambda (file)
(substitute* file
;; Fix opus include path.
;; Do not substitute opus_private.h.
(("#include \"opus\\.h\"")
"#include \"opus/opus.h\"")
(("#include \"opus_custom\\.h\"")
"#include \"opus/opus_custom.h\"")
(("#include \"opus_defines\\.h\"")
"#include \"opus/opus_defines.h\"")
(("#include \"opus_multistream\\.h\"")
"#include \"opus/opus_multistream.h\"")
(("#include \"opus_types\\.h\"")
"#include \"opus/opus_types.h\"")))
(find-files (string-append "third_party/webrtc/modules"
"/audio_coding/codecs/opus")))
(substitute* "media/audio/audio_opus_encoder.h"
(("\"third_party/opus/src/include/opus.h\"")
"<opus/opus.h>"))
(substitute*
(append
'("media/audio/audio_opus_encoder.h")
(find-files (string-append "third_party/webrtc/modules"
"/audio_coding/codecs/opus")))
;; Fix opus include path.
;; Do not substitute opus_private.h.
(("#include \"opus\\.h\"")
"#include \"opus/opus.h\"")
(("#include \"opus_custom\\.h\"")
"#include \"opus/opus_custom.h\"")
(("#include \"opus_defines\\.h\"")
"#include \"opus/opus_defines.h\"")
(("#include \"opus_multistream\\.h\"")
"#include \"opus/opus_multistream.h\"")
(("#include \"opus_types\\.h\"")
"#include \"opus/opus_types.h\"")
(("\"third_party/opus/src/include/([a-z_-]+\\.h)\"" _ header)
(string-append "<opus/" header ">")))
(substitute* "third_party/webrtc/rtc_base/strings/json.h"
(("#include \"third_party/jsoncpp/")

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

@ -53,6 +53,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

@ -643,14 +643,14 @@ language and very flexible regarding to new or unknown keyboard layouts.")
(define-public ktouch
(package
(name "ktouch")
(version "20.12.1")
(version "21.12.2")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://kde/stable/release-service/"
version "/src/ktouch-" version ".tar.xz"))
(sha256
(base32 "10lm2p8w26c9n6lhvw3301myfss0dq7hl7rawzb3hsy1lqvmvdib"))))
(base32 "1rq2n8395sb17rqd295axv2pbwzhqs8ikjqx5ryn4lv1713alabl"))))
(build-system qt-build-system)
(native-inputs
(list extra-cmake-modules kdoctools pkg-config))

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,103 @@ 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"
;; Disable LVFS, because it contains
;; nonfree firmwares.
"-Dlvfs=disabled")
#: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")))
(add-after 'install 'ensure-all-remotes-are-disabled
;; Because no remote currently promises to offer only free
;; software firmwares, disable them to prevent a user to
;; unknowingly install proprietary firmware updates.
(lambda _
(substitute* (find-files (string-append #$output "/etc")
"\\.conf$")
(("Enabled=true")
"Enabled=false")))))))
(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>
@ -74,6 +74,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)
@ -127,7 +128,7 @@
(define-public appstream
(package
(name "appstream")
(version "0.13.1")
(version "0.15.5")
(source
(origin
(method url-fetch)
@ -136,69 +137,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")
@ -211,9 +187,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
@ -1092,6 +1080,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

@ -975,30 +975,30 @@ cloud integration is offered through GNOME Online Accounts.")
`("GUIX_PYTHONPATH" =
(,(getenv "GUIX_PYTHONPATH") ,pylib)))))))))
(native-inputs
`(("desktop-file-utils" ,desktop-file-utils)
("gettext" ,gettext-minimal)
("glib:bin" ,glib "bin")
("gobject-introspection" ,gobject-introspection)
("gtk+:bin" ,gtk+ "bin")
("itstools" ,itstool)
("pkg-config" ,pkg-config)))
(list desktop-file-utils
gettext-minimal
`(,glib "bin")
gobject-introspection
`(,gtk+ "bin")
itstool
pkg-config))
(inputs
`(("gnome-online-accounts:lib" ,gnome-online-accounts "lib")
("grilo" ,grilo)
("grilo-plugins" ,grilo-plugins)
("gst-plugins-base" ,gst-plugins-base)
("gst-plugins-good" ,gst-plugins-good)
("gstreamer" ,gstreamer)
("gvfs" ,gvfs)
("json-glib" ,json-glib)
("libdazzle" ,libdazzle)
("libmediaart" ,libmediaart)
("libsoup" ,libsoup-minimal-2)
("pycairo" ,python-pycairo)
("pygobject" ,python-pygobject)
("python" ,python)
("tracker" ,tracker)
("tracker-miners" ,tracker-miners)))
(list `(,gnome-online-accounts "lib")
grilo
grilo-plugins
gst-plugins-base
gst-plugins-good
gstreamer
gvfs
json-glib
libdazzle
libmediaart
libsoup-minimal-2
python-pycairo
python-pygobject
python
tracker
tracker-miners))
(synopsis "Simple music player for GNOME desktop")
(description "GNOME Music is the new GNOME music playing application that
aims to combine an elegant and immersive browsing experience with simple
@ -3122,7 +3122,7 @@ API add-ons to make GTK+ widgets OpenGL-capable.")
(define-public glade3
(package
(name "glade")
(version "3.38.2")
(version "3.40.0")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnome/sources/" name "/"
@ -3130,68 +3130,56 @@ API add-ons to make GTK+ widgets OpenGL-capable.")
name "-" version ".tar.xz"))
(sha256
(base32
"1dxsiz9ahqkxg2a1dw9sbd8jg59y5pdz4c1gvnbmql48gmj8gz4q"))
(patches (search-patches
"glade-gls-set-script-name.patch"
"glade-test-widget-null-icon.patch"))))
"171x7vshhw0nqgnhkcaqfylpr5qrmhclwmkva6wjm5s9m2pavj9i"))))
(build-system meson-build-system)
(arguments
`(#:phases
(modify-phases %standard-phases
(add-after 'unpack 'skip-gtk-update-icon-cache
;; Don't create 'icon-theme.cache'.
(lambda _
(substitute* "meson_post_install.py"
(("gtk-update-icon-cache") "true"))))
(list
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'skip-gtk-update-icon-cache
;; Don't create 'icon-theme.cache'.
(lambda _
(substitute* "meson_post_install.py"
(("gtk-update-icon-cache") "true"))))
,@(if (this-package-native-input "gjs")
'()
'((add-after 'unpack 'skip-gjs-test
(lambda _
;; When the optional dependency on GJS is missing, skip
;; the GJS plugin tests.
(substitute* "tests/modules.c"
(("g_test_add.*JavaScript.*" all)
(string-append "// " all "\n")))
(delete-file "tests/catalogs/gjsplugin.xml")))))
(add-before 'configure 'fix-docbook
(lambda* (#:key inputs #:allow-other-keys)
(substitute* "man/meson.build"
(("http://docbook.sourceforge.net/release/xsl/\
current/manpages/docbook.xsl")
(string-append (assoc-ref inputs "docbook-xsl")
"/xml/xsl/docbook-xsl-"
,(package-version docbook-xsl)
"/manpages/docbook.xsl")))))
(add-before 'check 'pre-check
(lambda _
(setenv "HOME" "/tmp")
;; Tests require a running X server.
(system "Xvfb :1 &")
(setenv "DISPLAY" ":1"))))))
#$@(if (this-package-input "gjs")
'()
'((add-after 'unpack 'skip-gjs-test
(lambda _
;; When the optional dependency on GJS is missing, skip
;; the GJS plugin tests.
(substitute* "tests/modules.c"
(("g_test_add.*JavaScript.*" all)
(string-append "// " all "\n")))
(delete-file "tests/catalogs/gjsplugin.xml")))))
(add-before 'check 'pre-check
(lambda _
(setenv "HOME" "/tmp")
;; Tests require a running X server.
(system "Xvfb :1 &")
(setenv "DISPLAY" ":1"))))))
(inputs
(list gtk+ libxml2))
(append
;; GJS depends on Rust, which is x86_64-only so far, so remove the GJS
;; dependency on other platforms (FIXME).
(if (target-x86-64?)
(list gjs)
'())
(list gtk+ libxml2)))
(native-inputs
`(("hicolor-icon-theme" ,hicolor-icon-theme)
("intltool" ,intltool)
("itstool" ,itstool)
("libxslt" ,libxslt) ;for xsltproc
("docbook-xml" ,docbook-xml-4.2)
("docbook-xsl" ,docbook-xsl)
("glib:bin" ,glib "bin")
("python" ,python)
("python-pygobject" ,python-pygobject)
("gobject-introspection" ,gobject-introspection)
;; GJS depends on Rust, which is x86_64-only so far, so remove the GJS
;; dependency on other platforms (FIXME).
,@(if (target-x86-64?)
`(("gjs" ,gjs))
'())
("pkg-config" ,pkg-config)
("xorg-server" ,xorg-server-for-tests)))
(list docbook-xml-4.2
docbook-xsl
gettext-minimal
`(,glib "bin")
gobject-introspection
hicolor-icon-theme
itstool
libxml2 ;for XML_CATALOG_FILES
libxslt ;for xsltproc
python
python-pygobject
pkg-config
xorg-server-for-tests))
(home-page "https://glade.gnome.org")
(synopsis "GTK+ rapid application development tool")
(description "Glade is a rapid application development (RAD) tool to
@ -8109,7 +8097,7 @@ Cisco's AnyConnect SSL VPN.")
(define-public network-manager-applet
(package
(name "network-manager-applet")
(version "1.22.0")
(version "1.28.0")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnome/sources/network-manager-applet/"
@ -8117,18 +8105,18 @@ Cisco's AnyConnect SSL VPN.")
"network-manager-applet-" version ".tar.xz"))
(sha256
(base32
"1gj6lqqi613j2m49v9i82lqg1rv7kwwc8z4nxjcwpaa0ins803f7"))))
"17742kgmbj9w545zwnirgr0i40zl0xzp8jx7b8c1krp93mc4h0sw"))))
(build-system meson-build-system)
(arguments
`(#:glib-or-gtk? #t
#:configure-flags
'("-Dappindicator=yes")))
(native-inputs
`(("intltool" ,intltool)
("glib:bin" ,glib "bin") ; for glib-compile-resources, etc.
("gobject-introspection" ,gobject-introspection)
("gtk-doc" ,gtk-doc/stable)
("pkg-config" ,pkg-config)))
(list gettext-minimal
`(,glib "bin") ; for glib-compile-resources, etc.
gobject-introspection
gtk-doc/stable
pkg-config))
(propagated-inputs
;; libnm-gtk.pc refers to all these.
(list dbus-glib gtk+ network-manager
@ -8782,7 +8770,7 @@ like switching to windows and launching applications.")
(define-public gtk-vnc
(package
(name "gtk-vnc")
(version "1.0.0")
(version "1.2.0")
(source
(origin
(method url-fetch)
@ -8791,36 +8779,38 @@ like switching to windows and launching applications.")
(version-major+minor version) "/"
name "-" version ".tar.xz"))
(sha256
(base32 "1060ws037v556rx1qhfrcg02859rscksrzr8fq11himdg4d1y6m8"))))
(base32 "0jmr6igyzcj2wmx5v5ywaazvdz3hx6a6rys26yb4l4s71l281bvs"))))
(build-system meson-build-system)
(arguments
`(#:glib-or-gtk? #t)) ; To wrap binaries and/or compile schemas
(native-inputs
`(;; GJS depends on Rust, which is x86_64-only so far, so remove the GJS
;; dependency on other platforms (FIXME).
,@(if (target-x86-64?)
`(("gjs" ,gjs))
'())
("glib:bin" ,glib "bin")
("gobject-introspection" ,gobject-introspection)
("intltool" ,intltool)
("node" ,node)
("perl" ,perl)
("pkg-config" ,pkg-config)
("python" ,python-wrapper)
("vala" ,vala)))
(append
;; GJS depends on Rust, which is x86_64-only so far, so remove the GJS
;; dependency on other platforms (FIXME).
(if (target-x86-64?)
(list gjs)
'())
(list gettext-minimal
`(,glib "bin")
gobject-introspection
node
perl
pkg-config
python-wrapper
vala)))
(inputs
`(("cairo" ,cairo)
("librsvg" ,(librsvg-for-system))
("glib" ,glib)
("gnutls" ,gnutls)
("libgcrypt" ,libgcrypt)
("libsasl" ,cyrus-sasl)
("pulseaudio" ,pulseaudio)
("x11" ,libx11)
("zlib" ,zlib)))
(list cairo (librsvg-for-system)))
(propagated-inputs
(list gtk+))
;; These are all in Requires or Requires.private of the .pc files.
(list cyrus-sasl
gdk-pixbuf
glib
gnutls
gtk+
libgcrypt
libx11
pulseaudio
zlib))
(synopsis "VNC client viewer widget for GTK+")
(description "GTK-VNC is a project providing client side APIs for the RFB
protocol / VNC remote desktop technology. It is built using coroutines allowing
@ -10656,7 +10646,7 @@ photo-booth-like software, such as Cheese.")
(define-public cheese
(package
(name "cheese")
(version "3.38.0")
(version "41.0")
(source (origin
(method url-fetch)
(uri (string-append "mirror://gnome/sources/" name "/"
@ -10664,8 +10654,7 @@ photo-booth-like software, such as Cheese.")
version ".tar.xz"))
(sha256
(base32
"0vyim2avlgq3a48rgdfz5g21kqk11mfb53b2l883340v88mp7ll8"))
(patches (search-patches "cheese-vala-update.patch"))))
"1y92glc0d6w323x2bdbc0gdh1jdffvkbv6cwlwm1rx0wgvv1svqh"))))
(arguments
`(#:glib-or-gtk? #t
;; Tests require GDK.
@ -10678,15 +10667,6 @@ photo-booth-like software, such as Cheese.")
(substitute* "meson_post_install.py"
(("gtk-update-icon-cache") (which "true")))
#t))
(add-after 'unpack 'patch-docbook-xml
(lambda* (#:key inputs #:allow-other-keys)
;; Avoid a network connection attempt during the build.
(substitute* '("docs/reference/cheese.xml"
"docs/reference/cheese-docs.xml")
(("http://www.oasis-open.org/docbook/xml/4.3/docbookx.dtd")
(string-append (assoc-ref inputs "docbook-xml")
"/xml/dtd/docbook/docbookx.dtd")))
#t))
(add-after 'install 'wrap-cheese
(lambda* (#:key inputs outputs #:allow-other-keys)
(let ((out (assoc-ref outputs "out"))
@ -10696,16 +10676,16 @@ photo-booth-like software, such as Cheese.")
#t)))))
(build-system meson-build-system)
(native-inputs
`(("docbook-xsl" ,docbook-xsl)
("docbook-xml" ,docbook-xml-4.3)
("gettext" ,gettext-minimal)
("glib:bin" ,glib "bin")
("gtk-doc" ,gtk-doc/stable)
("itstool" ,itstool)
("libxml2" ,libxml2)
("libxslt" ,libxslt)
("pkg-config" ,pkg-config)
("vala" ,vala)))
(list docbook-xsl
docbook-xml-4.3
gettext-minimal
`(,glib "bin")
gtk-doc/stable
itstool
libxml2
libxslt
pkg-config
vala))
(propagated-inputs
(list gnome-video-effects
clutter

View File

@ -1,5 +1,5 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2015, 2016, 2021 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2015, 2016, 2021, 2022 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2015 Tomáš Čech <sleep_walker@gnu.org>
;;; Copyright © 2016, 2019 Leo Famulari <leo@famulari.name>
;;; Copyright © 2016, 2017, 2019 Ricardo Wurmus <rekado@elephly.net>
@ -758,11 +758,21 @@ applications, including the \"half\" 16-bit floating-point type.")
(patches (search-patches "ilmbase-fix-tests.patch"))))
(build-system cmake-build-system)
(arguments
`(#:phases (modify-phases %standard-phases
(add-after 'unpack 'change-directory
(lambda _
(chdir "IlmBase")
#t)))))
(list #:phases #~(modify-phases %standard-phases
(add-after 'unpack 'change-directory
(lambda _
(chdir "IlmBase")
#t))
#$@(if (target-x86-32?)
#~((add-after 'change-directory 'skip-test
(lambda _
;; XXX: This test fails on i686,
;; possibly due to excess precision when
;; comparing floats. Skip it.
(substitute* "ImathTest/testFun.cpp"
(("assert \\(bit_cast<unsigned>.*" all)
(string-append "// " all "\n"))))))
#~()))))
(home-page "https://www.openexr.com/")
(synopsis "Utility C++ libraries for threads, maths, and exceptions")
(description

View File

@ -3,7 +3,7 @@
;;; Copyright © 2014 John Darrington <jmd@gnu.org>
;;; Copyright © 2015, 2016 Sou Bunnbu <iyzsong@gmail.com>
;;; Copyright © 2015, 2018 Mark H Weaver <mhw@netris.org>
;;; Copyright © 2016, 2017 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2016, 2017, 2022 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2016, 2018 Leo Famulari <leo@famulari.name>
;;; Copyright © 2017 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2018, 2020 Tobias Geerinckx-Rice <me@tobias.gr>
@ -529,19 +529,13 @@ This package provides the core library and elements.")
"17rw8wj1x1bg153m9z76pdvgz5k93m3riyalfpzq00x7h7fv6c3y"))))
(build-system meson-build-system)
(propagated-inputs
(cons* glib ;required by gstreamer-sdp-1.0.pc
gstreamer ;required by gstreamer-plugins-base-1.0.pc
libgudev ;required by gstreamer-gl-1.0.pc
;; wayland-client.h is referred to in
;; include/gstreamer-1.0/gst/gl/wayland/gstgldisplay_wayland.h
wayland
;; XXX: Do not enable Orc optimizations on ARM systems because
;; it leads to two test failures.
;; https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/issues/683
(if (string-prefix? "arm" (or (%current-target-system)
(%current-system)))
'()
(list orc)))) ;required by gstreamer-audio-1.0.pc
(list glib ;required by gstreamer-sdp-1.0.pc
gstreamer ;required by gstreamer-plugins-base-1.0.pc
libgudev ;required by gstreamer-gl-1.0.pc
;; wayland-client.h is referred to in
;; include/gstreamer-1.0/gst/gl/wayland/gstgldisplay_wayland.h
wayland
orc)) ;required by gstreamer-audio-1.0.pc
(inputs
;; TODO: Add libvorbisidec
(list alsa-lib
@ -580,7 +574,24 @@ This package provides the core library and elements.")
;; This test causes nondeterministic failures (see:
;; https://gitlab.freedesktop.org/gstreamer/gst-plugins-base/-/issues/950).
((".*'elements/appsrc.c'.*")
""))))
""))
;; Some other tests fail on other architectures.
#$@(cond
((target-x86-32?)
#~((substitute* "tests/check/meson.build"
((".*'libs/libsabi\\.c'.*") ""))))
((target-riscv64?)
#~((substitute* "tests/check/meson.build"
((".*'libs/gstglcolorconvert\\.c'.*") "")
((".*'libs/gstglcontext\\.c'.*") "")
((".*'libs/gstglmemory\\.c'.*") "")
((".*'libs/gstglupload\\.c'.*") "")
((".*'elements/glimagesink\\.c'.*") "")
((".*'pipelines/gl-launch-lines\\.c'.*") "")
((".*'elements/glstereo\\.c'.*") "")
((".*'elements/glmixer\\.c'.*") ""))))
(else
#~()))))
(add-before 'configure 'patch
(lambda _
(substitute* "tests/check/libs/pbutils.c"

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

File diff suppressed because it is too large Load Diff

File diff suppressed because it is too large Load Diff

View File

@ -1,6 +1,8 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2017, 2019, 2020 Hartmut Goebel <h.goebel@crazy-compilers.com>
;;; Copyright © 2020 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2022 Brendan Tildesley <mail@brendan.scot>
;;; Copyright © 2022 Petr Hodina <phodina@protonmail.com>
;;;
;;; This file is part of GNU Guix.
;;;
@ -20,6 +22,7 @@
(define-module (gnu packages kde-internet)
#:use-module (guix build-system qt)
#:use-module (guix download)
#:use-module (guix gexp)
#:use-module ((guix licenses) #:prefix license:)
#:use-module (guix packages)
#:use-module (guix utils)
@ -46,6 +49,7 @@
#:use-module (gnu packages linphone)
#:use-module (gnu packages tls)
#:use-module (gnu packages video)
#:use-module (gnu packages vnc)
#:use-module (gnu packages web)
#:use-module (gnu packages xiph)
#:use-module (gnu packages xml))
@ -83,7 +87,7 @@
kwidgetsaddons
kxmlgui
;; TODO: telepathy
oxygen-icons ; default icon set
breeze-icons ; default icon set
purpose
qca
qoauth
@ -113,17 +117,17 @@ Other notable features include:
(define-public kget
(package
(name "kget")
(version "20.04.1")
(version "22.04.3")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://kde/stable/release-service/" version
"/src/kget-" version ".tar.xz"))
(sha256
(base32 "1swx58wcig8zq8ibhczhcw7l8mqjm7pq8zca9gmny9kda5q04f5m"))))
(base32 "0rqznsyphnq0zi65wvrl9mwqm9268wgihkr104i87pp5kfiah5yp"))))
(build-system qt-build-system)
(native-inputs
(list extra-cmake-modules pkg-config))
(list extra-cmake-modules kdoctools pkg-config))
(inputs
(list boost
gmp
@ -136,7 +140,6 @@ Other notable features include:
kcrash
kdbusaddons
kdelibs4support ;; KLocale
kdoctools
ki18n
kiconthemes
kio
@ -154,15 +157,23 @@ Other notable features include:
libktorrent
;; TODO: libmms
;; TODO: LibKWorkspace - plasma-workspace?
oxygen-icons ; default icon set
breeze-icons ; default icon set
qca
qgpgme
qtbase-5))
(arguments
`(#:phases
(modify-phases %standard-phases
(replace 'check
(lambda* (#:key tests? #:allow-other-keys)
(when tests? ;; FIXME: two tests fails.
(invoke "ctest" "-E" "(schedulertest|filedeletertest)"))
#t)))))
(home-page "http://www.kde.org/")
(synopsis "Versatile and user-friendly download manager")
(description "KGet is an advanced download manager with support for
Metalink and Bittorrent. Downloads are added to the list, where they can be
paused, queued, or scheduled for later. KGet supports download via FTP anf
paused, queued, or scheduled for later. KGet supports download via FTP anf
HTTP(S) as well as pausing downloads.
This package is part of the KDE networking module.")
@ -172,14 +183,14 @@ This package is part of the KDE networking module.")
(define-public konversation
(package
(name "konversation")
(version "1.7.7")
(version "22.04.3")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://kde/stable/konversation/" version
(uri (string-append "mirror://kde/stable/release-service/" version
"/src/konversation-" version ".tar.xz"))
(sha256
(base32 "19qqq9s8k0cl71ib33xn07f26j5ji2g4336jk65im6452cf1dv27"))))
(base32 "08b4vnm66hbbnvkkh1p0a82pd2aj4zy5a8indfv3fzczsfpx6gp0"))))
(build-system qt-build-system)
(native-inputs
(list extra-cmake-modules kdoctools))
@ -198,19 +209,21 @@ This package is part of the KDE networking module.")
kidletime
kio
kitemviews
knewstuff
knotifications
knotifyconfig
kparts
kwallet
kwidgetsaddons
kwindowsystem
oxygen-icons ; default icon set
breeze-icons ; default icon set
phonon
qtbase-5
qca
qtmultimedia-5
solid
sonnet))
(home-page "https://kde.org/applications/internet/org.kde.konversations")
(home-page "https://apps.kde.org/konversation/")
(synopsis "Graphical Internet Relay Chat (IRC) client for KDE")
(description "Konversation is a graphical Internet Relay Chat client (IRC)
with KDE support.
@ -242,14 +255,14 @@ Features are:
(define-public kopete
(package
(name "kopete")
(version "20.04.1")
(version "22.04.3")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://kde/stable/release-service/" version
"/src/kopete-" version ".tar.xz"))
(sha256
(base32 "149gi9hkyl825kf046iqkam3gkzfwdc2sihbf8gs6njachzvb81y"))))
(base32 "0fc9m2xgsjmsypqllqb3cp1y2m28dqh48r1qg2xgkfyqa70dnvp9"))))
(build-system qt-build-system)
(native-inputs
(list extra-cmake-modules kdoctools pkg-config))
@ -277,6 +290,7 @@ Features are:
knotifyconfig
kparts
kpimtextedit
ksyntaxhighlighting
ktexteditor
kwallet
;; TODO: Libgadu
@ -287,7 +301,7 @@ Features are:
libsrtp
libxml2
libxslt
;; TODO: Mediastreamer
mediastreamer2
openssl
ortp
phonon
@ -299,7 +313,7 @@ Features are:
;; TODO: Xmms
zlib))
;; TODO: enable video support
(home-page "https://kde.org/applications/internet/org.kde.kopete")
(home-page "https://apps.kde.org/kopete/")
(synopsis "Instant messaging and chat application")
(description "Kopete is an instant messenger supporting Jabber/XMPP ,AIM,
ICQ, Gadu-Gadu, Novell GroupWise Messenger, and more. It is designed to be a
@ -318,14 +332,14 @@ This package is part of the KDE networking module.")
(define-public krdc
(package
(name "krdc")
(version "20.04.1")
(version "22.04.3")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://kde/stable/release-service/" version
"/src/krdc-" version ".tar.xz"))
(sha256
(base32 "1hp23k3nsrcxpv2qiynjgm71zn3l6ds00cpd4frc68szgiblrw9r"))))
(base32 "0bs8q3na924lnmra5608jwnn0dqczvh0f72nn43673ib3m1mddlr"))))
(build-system qt-build-system)
(native-inputs
(list extra-cmake-modules kdoctools))
@ -340,16 +354,17 @@ This package is part of the KDE networking module.")
kiconthemes
knotifications
knotifyconfig
knotifyconfig
kwallet
kwidgetsaddons
kwindowsystem
kxmlgui
libssh
;; TODO: libvnc{server,client} - is not tigervnc-{server,client}
oxygen-icons ; default icon set
libvnc
breeze-icons ; default icon set
qtbase-5))
(home-page "https://kde.org/applications/internet/org.kde.krdc")
(arguments ;; FIXEME: libvnc can't be found for some reason.
(list #:configure-flags #~(list "-DWITH_VNC=NO")))
(home-page "https://apps.kde.org/krdc/")
(synopsis "Remote desktop client")
(description "KRDC is a client application that allows you to view or even
control the desktop session on another machine that is running a compatible
@ -362,14 +377,14 @@ This package is part of the KDE networking module.")
(define-public ktorrent
(package
(name "ktorrent")
(version "5.1.2")
(version "22.04.3")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://kde/stable/ktorrent/" version
"/ktorrent-" version ".tar.xz"))
(uri (string-append "mirror://kde/stable/release-service/" version
"/src/ktorrent-" version ".tar.xz"))
(sha256
(base32 "0kwd0npxfg4mdh7f3xadd2zjlqalpb1jxk61505qpcgcssijf534"))))
(base32 "1h95hf4ki2xi2c9bzdg18p6d1757gzqknf6gn1ls6lwqy6p0pr4h"))))
(build-system qt-build-system)
(native-inputs
(list extra-cmake-modules kdoctools))
@ -383,7 +398,6 @@ This package is part of the KDE networking module.")
kcoreaddons
kcrash
kdbusaddons
kdewebkit
kdnssd
ki18n
kiconthemes
@ -399,7 +413,7 @@ This package is part of the KDE networking module.")
libgcrypt
libktorrent
;; TODO: LibKWorkspace -> plasma-workspace?
oxygen-icons ; default icon set
breeze-icons ; default icon set
phonon
qtbase-5
qtscript
@ -407,7 +421,7 @@ This package is part of the KDE networking module.")
solid
syndication
taglib))
(home-page "https://kde.org/applications/internet/org.kde.ktorrent")
(home-page "https://apps.kde.org/ktorrent/")
(synopsis "BitTorrent client")
(description "KTorrent is a BitTorrent application by KDE which allows you
to download files using the BitTorrent protocol. It enables you to run
@ -415,50 +429,17 @@ 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")
(version "2.1.1")
(version "22.04.3")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://kde//stable/ktorrent/"
(package-version ktorrent)
"/libktorrent-" version ".tar.xz"))
(uri (string-append "mirror://kde/stable/release-service/"
version "/src/" name "-" version ".tar.xz"))
(sha256
(base32 "0051zh8bb4p9wmcfn5ql987brhsaiw9880xdck7b5dm1a05mri2w"))))
(base32 "098ac7b5wa7v6svqv4rx1w44j18pr22qgr236fj94r2kpl2nq79q"))))
(build-system qt-build-system)
(native-inputs
(list extra-cmake-modules))

View File

@ -3,6 +3,8 @@
;;; Copyright © 2020 Timotej Lazar <timotej.lazar@araneo.si>
;;; Copyright © 2021, 2022 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2022 Vinicius Monego <monego@posteo.net>
;;; Copyright © 2022 Brendan Tildesley <mail@brendan.scot>
;;; Copyright © 2022 Petr Hodina <phodina@protonmail.com>
;;;
;;; This file is part of GNU Guix.
;;;
@ -55,14 +57,14 @@
(define-public audiocd-kio
(package
(name "audiocd-kio")
(version "20.04.1")
(version "22.04.3")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://kde/stable/release-service/" version
"/src/audiocd-kio-" version ".tar.xz"))
(sha256
(base32 "0qlnxxbayqhz25jbvzis27jw2zbw1pmacp8rv7v5wa7zfqn3kmyk"))))
(base32 "0d6pbsh1fbhwwr2c4kf9b17dhzzx2jsmgamawcp4kn7pw9i7i8ql"))))
(build-system qt-build-system)
(native-inputs
(list extra-cmake-modules kdoctools))
@ -78,7 +80,7 @@
libvorbis
phonon
qtbase-5))
(home-page "https://kde.org/applications/multimedia/org.kde.kio_audiocd")
(home-page "https://apps.kde.org/kio_audiocd/")
(synopsis "Transparent audio CD integration for applications using the KDE
Platform")
(description "KIO AudioCD is a KIO slave that enables KIO-aware
@ -94,19 +96,20 @@ This package is part of the KDE multimedia module.")
(define-public dragon
(package
(name "dragon")
(version "20.04.1")
(version "22.04.3")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://kde/stable/release-service/" version
"/src/dragon-" version ".tar.xz"))
(sha256
(base32 "1sssg20a1vpwk816lp5jgwahilaswb9f3hgfqvc73il4g11ky1xj"))))
(base32 "0284shnqwbh1953ym197qaqgjwrnva77zi55lvvykg5cq42x512s"))))
(build-system qt-build-system)
(native-inputs
(list extra-cmake-modules kdoctools))
(inputs
(list kconfig
(list bash-minimal
kconfig
kconfigwidgets
kcoreaddons
kcrash
@ -119,12 +122,24 @@ This package is part of the KDE multimedia module.")
kwidgetsaddons
kwindowsystem
kxmlgui
oxygen-icons ; default icon set
breeze-icons ; default icon set
phonon
phonon-backend-gstreamer
gst-plugins-base
gst-plugins-good
qtbase-5
solid))
(home-page "https://kde.org/applications/multimedia/org.kde.dragonplayer")
(arguments
`(#:phases
(modify-phases %standard-phases
(add-after 'qt-wrap 'gst-wrap
(lambda* (#:key inputs outputs #:allow-other-keys)
(let ((out (assoc-ref outputs "out"))
(gst-plugin-path (getenv "GST_PLUGIN_SYSTEM_PATH")))
(wrap-program (string-append out "/bin/dragon")
`("GST_PLUGIN_SYSTEM_PATH" ":" prefix (,gst-plugin-path)))
#t))))))
(home-page "https://apps.kde.org/dragonplayer/")
(synopsis "Simple video player")
(description "Dragon Player is a multimedia player where the focus is on
simplicity, instead of features. Dragon Player does one thing, and only one
@ -139,14 +154,14 @@ This package is part of the KDE multimedia module.")
(define-public elisa
(package
(name "elisa")
(version "20.12.0")
(version "22.04.3")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://kde/stable/release-service/" version
"/src/elisa-" version ".tar.xz"))
(sha256
(base32 "02450lsnbd37fms1i2bb9qc9wir4vym6qqd9p5hr6a6s6qwfs6qf"))))
(base32 "1v2h7ayyrv6f6hdkl78x1nrv5x0l6n8dh0xrfm5fnii4f694iik8"))))
(build-system qt-build-system)
(native-inputs
(list extra-cmake-modules pkg-config dbus kdoctools
@ -162,6 +177,7 @@ This package is part of the KDE multimedia module.")
kdeclarative
kfilemetadata
ki18n
kiconthemes
kio
kirigami
kmediaplayer
@ -169,7 +185,7 @@ This package is part of the KDE multimedia module.")
kpackage
kwidgetsaddons
kxmlgui
oxygen-icons ; default icon set
breeze-icons ; default icon set
phonon
qtbase-5
qtdeclarative-5
@ -182,7 +198,8 @@ This package is part of the KDE multimedia module.")
;; TODO: upnpqt https://gitlab.com/homeautomationqt/upnp-player-qt
vlc))
(arguments
`(#:phases
`(#:tests? #f ;; many tests fail
#:phases
(modify-phases %standard-phases
(add-before 'check 'start-xorg-server
(lambda* (#:key inputs #:allow-other-keys)
@ -197,7 +214,7 @@ This package is part of the KDE multimedia module.")
(setenv "CTEST_OUTPUT_ON_FAILURE" "1")
(invoke "dbus-launch" "make" test-target))
#t)))))
(home-page "https://kde.org/applications/multimedia/org.kde.elisa")
(home-page "https://apps.kde.org/elisa/")
(synopsis "Powerful music player for Plasma 5")
(description "Elisa is a simple music player aiming to provide a nice
experience for its users. Elisa browses music by album, artist or
@ -210,20 +227,20 @@ its own database. You can build and play your own playlist.")
(define-public ffmpegthumbs
(package
(name "ffmpegthumbs")
(version "20.04.1")
(version "22.04.3")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://kde/stable/release-service/" version
"/src/ffmpegthumbs-" version ".tar.xz"))
(sha256
(base32 "17l50z33a1h5zkrrfkb261yi2hms66qj36l1mndq7mvs97y2ggmc"))))
(base32 "1jl7l3n2lfg71kbzwjn5nrm3qlgilhnvs67iil162mnv52gf3c0v"))))
(build-system qt-build-system)
(native-inputs
(list extra-cmake-modules pkg-config))
(inputs
(list ffmpeg kconfig ki18n kio qtbase-5))
(home-page "https://kde.org/applications/multimedia/org.kde.ffmpegthumbs")
(list ffmpeg kconfig ki18n kio taglib qtbase-5))
(home-page "https://apps.kde.org/ffmpegthumbs/")
(synopsis "Video thumbnail generator for KDE using ffmpeg")
(description "
FFMpegThumbs is a video thumbnail generator for KDE file managers
@ -236,24 +253,23 @@ This package is part of the KDE multimedia module.")
(define-public juk
(package
(name "juk")
(version "20.04.1")
(version "22.04.3")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://kde/stable/release-service/" version
"/src/juk-" version ".tar.xz"))
(sha256
(base32 "06vsh7knyhcbcbf632jhldbqpzfkdyils2l8dbcdw5nj5hhgzzmr"))))
(base32 "12pnbx17r1103w39gglybdzs8kcpwghy5lc4q9fqk89s1r7l3c7h"))))
(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
@ -265,13 +281,13 @@ This package is part of the KDE multimedia module.")
kwidgetsaddons
kwindowsystem
kxmlgui
oxygen-icons ; default icon set
breeze-icons ; default icon set
phonon
phonon-backend-gstreamer
qtbase-5
qtsvg-5
taglib))
(home-page "https://kde.org/applications/multimedia/org.kde.juk")
(home-page "https://apps.kde.org/juk/")
(synopsis "Music jukebox / music player")
(description "JuK is a powerful music player capable of managing a large
music collection.
@ -291,7 +307,7 @@ This package is part of the KDE multimedia module.")
(define-public kid3
(package
(name "kid3")
(version "3.9.0")
(version "3.9.1")
(source
(origin
(method git-fetch)
@ -300,7 +316,7 @@ This package is part of the KDE multimedia module.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "02r3cnwr05mcxjawzip3jl1lfijvzfbbafq3saipjjjp4kiq9bk4"))))
(base32 "1rq0742rm3y5ps7878qd7xhhiizy6d6ls6hdjqa6z5sq077s5lz9"))))
(build-system qt-build-system)
(arguments
(list
@ -349,14 +365,14 @@ variety of formats.")
(define-public k3b
(package
(name "k3b")
(version "20.04.2")
(version "22.04.3")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://kde/stable/release-service/" version
"/src/k3b-" version ".tar.xz"))
(sha256
(base32 "15wm987hz6rfs9ds9l1gbs6gdsardj1ywvk6zmpvj2i2190y4b3q"))))
(base32 "1bizk66ad2yq8xszjqvv2ghk069d0l6iczn5rlna1p3zigr43ysl"))))
(build-system qt-build-system)
(arguments
`(#:phases
@ -430,14 +446,14 @@ variety of formats.")
libsamplerate
libsndfile
libvorbis
oxygen-icons ; default icon set
breeze-icons ; default icon set
qtbase-5
shared-mime-info
solid
sox
taglib
zlib))
(home-page "https://kde.org/applications/multimedia/org.kde.k3b")
(home-page "https://apps.kde.org/k3b/")
(synopsis "Sophisticated CD/DVD burning application")
(description "K3b is CD-writing software which intends to be feature-rich
and provide an easily usable interface. Features include burning audio CDs
@ -473,7 +489,7 @@ available CD drives.")
kwindowsystem
kxmlgui
libxscrnsaver
oxygen-icons ; default icon set
breeze-icons ; default icon set
qtbase-5
qtx11extras
solid
@ -488,7 +504,7 @@ available CD drives.")
(("\\s*qPrintable\\(transponder\\.getTransmissionType\\(\\)\\)\\);")
"transponder.getTransmissionType());"))
#t)))))
(home-page "https://kde.org/applications/multimedia/org.kde.kaffeine")
(home-page "https://apps.kde.org/kaffeine/")
(synopsis "Versatile media player for KDE")
(description "Kaffeine is a media player for KDE. While it supports
multiple Phonon backends, its default backend is Xine, giving Kaffeine a wide
@ -503,14 +519,14 @@ autoloading of subtitle files for use while playing video.")
(define-public kamoso
(package
(name "kamoso")
(version "20.04.1")
(version "22.04.3")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://kde/stable/release-service/" version
"/src/kamoso-" version ".tar.xz"))
(sha256
(base32 "0c47j315kjfikd3b6x18786k3gqymicjjslpm0a58zdxl3wpqfay"))))
(base32 "0br7dbnm2ypdl55pscp8wr0vwrgprycrxxj206b5r1l9ysx9aqip"))))
(build-system qt-build-system)
(native-inputs
`(("extra-cmake-modules" ,extra-cmake-modules)
@ -526,7 +542,7 @@ autoloading of subtitle files for use while playing video.")
kirigami
knotifications
kparts
oxygen-icons ; default icon set
breeze-icons ; default icon set
purpose
qtbase-5
qtdeclarative-5
@ -535,12 +551,8 @@ autoloading of subtitle files for use while playing video.")
qtquickcontrols2-5 ; not listed as dependency
qtx11extras))
(arguments
(list #:tests? #f ; test program gets built, but is not found
#:configure-flags
#~(list (string-append "-DCMAKE_CXX_FLAGS=-I"
#$(this-package-input "gst-plugins-base")
"/include/gstreamer-1.0"))))
(home-page "https://kde.org/applications/multimedia/org.kde.kamoso")
(list #:tests? #f)) ; test program gets built, but is not found
(home-page "https://apps.kde.org/kamoso/")
(synopsis "Take pictures and videos out of your webcam")
(description "Kamoso is a simple and friendly program to use your
camera. Use it to take pictures and make videos to share.")
@ -550,17 +562,17 @@ camera. Use it to take pictures and make videos to share.")
(define-public kmix
(package
(name "kmix")
(version "20.04.1")
(version "22.04.3")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://kde/stable/release-service/" version
"/src/kmix-" version ".tar.xz"))
(sha256
(base32 "1na52ypp57wqrc6pl1khinx9i6fidv1k97nnxcy8zb4l7d5sh1nd"))))
(base32 "0zc96l9mnn763pw54ki715sw3wm4z6rjdz2zzsjc6l5iwcqzwqq8"))))
(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 +582,6 @@ camera. Use it to take pictures and make videos to share.")
kconfigwidgets
kcrash
kdbusaddons
kdoctools
kglobalaccel
ki18n
kiconthemes
@ -579,12 +590,12 @@ camera. Use it to take pictures and make videos to share.")
kwindowsystem
kxmlgui
libcanberra
oxygen-icons ; default icon set
breeze-icons ; default icon set
plasma-framework
pulseaudio
qtbase-5
solid))
(home-page "https://kde.org/applications/multimedia/org.kde.kmix")
(home-page "https://apps.kde.org/kmix/")
(synopsis "Volume control and mixer")
(description "KMix is an audio device mixer, used to adjust volume, select
recording inputs, and set other hardware options.
@ -594,54 +605,59 @@ This package is part of the KDE multimedia module.")
(list license:gpl2+ license:lgpl2.0+ license:fdl1.2+))))
(define-public kmplayer
(package
(name "kmplayer")
(version "0.12.0b")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://kde/stable/kmplayer/0.12"
"/kmplayer-" version ".tar.bz2"))
(sha256
(base32 "0wzdxym4fc83wvqyhcwid65yv59a2wvp1lq303cn124mpnlwx62y"))
(patches (search-patches
"kmplayer-aarch64.patch"
"kmplayer-upstream_Fix-build-with-Qt-5.9.patch"))))
(build-system qt-build-system)
(native-inputs
(list extra-cmake-modules pkg-config kdoctools))
(inputs
(list kconfig
kcoreaddons
kdelibs4support
ki18n
kinit
kio
kparts
kmediaplayer
kwidgetsaddons
libxcb ;; FIXME: why does cmake not find XEVIE and XPRINT?
oxygen-icons ; default icon set
phonon
qtbase-5
cairo
qtsvg-5
qtx11extras
xcb-util
xcb-util-cursor
xcb-util-errors
xcb-util-image
xcb-util-keysyms
xcb-util-wm))
(arguments
(list #:configure-flags
#~(list (string-append
"-DCMAKE_CXX_FLAGS=-I"
#$(this-package-input "qtx11extras")
"/include/qt5"))))
(home-page "https://kde.org/applications/multimedia/org.kde.kmplayer")
(synopsis "Media player using mplayer/phonon as backend")
(description "Kmplayer can play all the audio/video supported by
;; The latest release was in 2016, and does not work with the newer
;; KDE libraries.
(let ((commit "88e85308b71dc5e58cc655b5b9a13cd71b78233f")
(revision "1"))
(package
(name "kmplayer")
(version (git-version "0.12.0b" revision commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://invent.kde.org/multimedia/kmplayer")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32
"1pzk0js499diqabpwxjq6nnwpmj1ikpyyykzjbm844xcbm74cl19"))))
(build-system qt-build-system)
(native-inputs
(list extra-cmake-modules pkg-config kdoctools))
(inputs
(list kbookmarks
kconfig
kcoreaddons
kdelibs4support
ki18n
kinit
kio
kparts
kmediaplayer
kwidgetsaddons
libxcb ;; FIXME: why does cmake not find XEVIE and XPRINT?
breeze-icons ; default icon set
phonon
qtbase-5
cairo
qtsvg-5
qtx11extras
xcb-util
xcb-util-cursor
xcb-util-errors
xcb-util-image
xcb-util-keysyms
xcb-util-wm))
(arguments
(list #:configure-flags
#~(list (string-append
"-DCMAKE_CXX_FLAGS=-I"
#$(this-package-input "qtx11extras")
"/include/qt5"))))
(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
KHTML. It also plays DVDs.
@ -655,20 +671,20 @@ Some features:
@item Broadcasting, http streaming, using ffserver/ffmpeg
@item For TV sources, you need v4lctl (part of the xawtv package)
@end itemize")
(license ;; GPL for programs, LGPL for libraries, FDL for documentation
(list license:gpl2+ license:lgpl2.0+ license:fdl1.2+))))
(license ;; GPL for programs, LGPL for libraries, FDL for documentation
(list license:gpl2+ license:lgpl2.0+ license:fdl1.2+)))))
(define-public kwave
(package
(name "kwave")
(version "20.04.1")
(version "22.04.3")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://kde/stable/release-service/" version
"/src/kwave-" version ".tar.xz"))
(sha256
(base32 "0ysa873pc2gip95cxr8yv7ifd9qql5zg6h67i9n9q3iqa6v58iyw"))))
(base32 "0j6ck44lkfcnaa0rymv2aqvdcy0zbybbklm1s6mvbgdpfsh0rhkm"))))
(build-system qt-build-system)
(native-inputs
(list extra-cmake-modules (librsvg-for-system) pkg-config kdoctools))
@ -695,12 +711,12 @@ Some features:
libsamplerate
libvorbis
opus
oxygen-icons ; default icon set
breeze-icons ; default icon set
pulseaudio
qtbase-5
qtmultimedia-5
zlib))
(home-page "https://kde.org/applications/multimedia/org.kde.kwave")
(home-page "https://apps.kde.org/kwave/")
(synopsis "Sound editor for KDE")
(description "Kwave is a sound editor designed for the KDE Desktop
Environment.
@ -735,14 +751,14 @@ Its features include:
(define-public libkcddb
(package
(name "libkcddb")
(version "20.04.1")
(version "22.04.3")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://kde/stable/release-service/" version
"/src/libkcddb-" version ".tar.xz"))
(sha256
(base32 "1fwryaj8ldmsqhl5qxjda8by9i7xlb97r8p9rqzckw697hkfhs0h"))))
(base32 "1js5r8hxqabnygmavfjvjbfy5c7978bmwm2rqlgsfyn17fkmf2y8"))))
(build-system qt-build-system)
(native-inputs
(list extra-cmake-modules kdoctools))
@ -765,14 +781,14 @@ Its features include:
(define-public libkcompactdisc
(package
(name "libkcompactdisc")
(version "20.04.1")
(version "22.04.3")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://kde/stable/release-service/" version
"/src/libkcompactdisc-" version ".tar.xz"))
(sha256
(base32 "0iy4i0hxqsrnndd4iqkww7v1rqry7kvi5paxdw5qjfffwn8kcsbx"))))
(base32 "0fv9dbx74xs42iiw67bvjpxga0d126q2nfs8n4hiv3z2xda9n4ic"))))
(build-system qt-build-system)
(native-inputs
(list extra-cmake-modules))

File diff suppressed because it is too large Load Diff

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 © 2022 Brendan Tildesley <mail@brendan.scot>
;;;
;;; This file is part of GNU Guix.
;;;
@ -28,6 +29,7 @@
#:use-module (guix gexp)
#:use-module (guix build-system cmake)
#:use-module (guix build-system qt)
#:use-module (gnu packages admin)
#:use-module (gnu packages compression)
#:use-module (gnu packages freedesktop)
#:use-module (gnu packages glib)
@ -37,20 +39,21 @@
#: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))
(define-public breeze
(package
(name "breeze")
(version "5.19.5")
(version "5.25.3")
(source (origin
(method url-fetch)
(uri (string-append "mirror://kde/stable/plasma/" version "/"
name "-" version ".tar.xz"))
(sha256
(base32
"0dpk1w7zcafrzf46j060i1qb0fwqpsflkfzr6gcar81llmjnc4b1"))))
"0za75ckgfcdxrh2qxgyl2c1273g2xqwmd55njsis1yvwryadypqw"))))
(build-system qt-build-system)
;; TODO: Warning at /gnu/store/…-kpackage-5.34.0/…/KF5PackageMacros.cmake:
;; warnings during generation of metainfo for org.kde.breezedark.desktop:
@ -73,6 +76,7 @@
kdecoration
kguiaddons
ki18n
kirigami
kiconthemes ; for optional kde-frameworkintegration
kpackage
kwayland ; optional
@ -113,19 +117,19 @@ Breeze is the default theme for the KDE Plasma desktop.")
(define-public kdecoration
(package
(name "kdecoration")
(version "5.19.5")
(version "5.25.3")
(source (origin
(method url-fetch)
(uri (string-append "mirror://kde/stable/plasma/" version
"/kdecoration-" version ".tar.xz"))
(sha256
(base32
"0pn8n7zyb0adzjnn92vmbcf7pmpss60k9k1rk5llamj016xzfgnf"))))
"0b6ynqkndmlac89hv339k365m7wykp9y238df62jlq4vpr1r9x9y"))))
(build-system qt-build-system)
(native-inputs
(list extra-cmake-modules))
(inputs
(list ki18n qtbase-5))
(list kcoreaddons ki18n qtbase-5))
(home-page "https://invent.kde.org/plasma/kdecoration")
(synopsis "Plugin based library to create window decorations")
(description "KDecoration is a library to create window decorations.
@ -136,14 +140,14 @@ manager which re-parents a Client window to a window decoration frame.")
(define-public ksshaskpass
(package
(name "ksshaskpass")
(version "5.19.5")
(version "5.25.3")
(source (origin
(method url-fetch)
(uri (string-append "mirror://kde/stable/plasma/" version
"/ksshaskpass-" version ".tar.xz"))
(sha256
(base32
"1k2va2v9051f71w78dn3gihk642iyy5yzrkcfnp97fag8g6dpisi"))))
"0sfl77szvfq9c7v0gsv5nnf7h5kxigyy2z2p1cwmhm1pq4n606nk"))))
(build-system qt-build-system)
(native-inputs
(list extra-cmake-modules kdoctools))
@ -157,17 +161,43 @@ 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.25.3")
(source (origin
(method url-fetch)
(uri (string-append "mirror://kde/stable/plasma/" version
"/layer-shell-qt-" version ".tar.xz"))
(sha256
(base32
"06rxqm4wh4mcszrwb2dbgpxj3dqfx0rccyyjp091lbsncqm1gib0"))))
(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")
(version "5.19.5")
(version "5.25.3")
(source (origin
(method url-fetch)
(uri (string-append "mirror://kde/stable/plasma/" version
"/kscreenlocker-" version ".tar.xz"))
(sha256
(base32
"1fd5sqaqx9kj3kr0bgxpllhcm5arf8bc9pkpd9yk9c8xjy0j0fxi"))))
"1kii3r3j89avwyb00wrw80k5sj0q4wqgmy1q0yxfps9jk729k3wc"))))
(build-system qt-build-system)
(arguments
`(#:tests? #f ;; TODO: make tests pass
@ -185,35 +215,37 @@ call it if it is not associated to a terminal.")
(if tests?
(begin
(setenv "CTEST_OUTPUT_ON_FAILURE" "1")
(invoke "dbus-launch" "ctest" ".")))
(invoke "dbus-launch" "ctest")))
#t)))))
(native-inputs
(list extra-cmake-modules pkg-config
;; For tests.
dbus xorg-server-for-tests))
(inputs
`(("kcmutils" ,kcmutils)
("kcrash" ,kcrash)
("kdeclarative" ,kdeclarative)
("kglobalaccel" ,kglobalaccel)
("ki18n" ,ki18n)
("kidletime" ,kidletime)
("knotifications" ,knotifications)
("ktextwidgets" ,ktextwidgets)
("kwayland" ,kwayland)
("kwindowsystem" ,kwindowsystem)
("kxmlgui" ,kxmlgui)
("libseccomp" ,libseccomp) ;for sandboxing the look'n'feel package
("libxcursor" ,libxcursor) ;missing in CMakeList.txt
("libxi" ,libxi) ;XInput, required for grabbing XInput2 devices
("linux-pam" ,linux-pam)
("logind" ,elogind) ;optional loginctl support
("qtbase" ,qtbase-5)
("qtdeclarative-5" ,qtdeclarative-5)
("qtx11extras" ,qtx11extras)
("solid" ,solid)
("wayland" ,wayland)
("xcb-util-keysyms" ,xcb-util-keysyms)))
(list kcmutils
kconfig
kcrash
kdeclarative
kglobalaccel
ki18n
kidletime
knotifications
ktextwidgets
kwayland
kwindowsystem
kxmlgui
layer-shell-qt
libseccomp ;for sandboxing the look'n'feel package
libxcursor ;missing in CMakeList.txt
libxi ;XInput, required for grabbing XInput2 devices
linux-pam
elogind ;optional loginctl support
qtbase-5
qtdeclarative-5
qtx11extras
solid
wayland
xcb-util-keysyms))
(home-page "https://invent.kde.org/plasma/kscreenlocker")
(synopsis "Screen locking library")
(description
@ -223,21 +255,22 @@ call it if it is not associated to a terminal.")
(define-public libkscreen
(package
(name "libkscreen")
(version "5.19.5")
(version "5.25.3")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://kde/stable/plasma/" version "/"
name "-" version ".tar.xz"))
(sha256
(base32 "0rf1pm0yyc069f4n5s9ipdx4glzfr9zvv5cbrmn4q9i4v6z1qd8i"))))
(base32 "1mxkrk04wcyw4xbfiyxbp5iwnhqr10yk39zx5bbjd9zag0vdi7z5"))))
(build-system qt-build-system)
(native-inputs
(list extra-cmake-modules
;; For testing.
dbus))
(inputs
(list kwayland libxrandr qtbase-5 qtx11extras))
(list kwayland libxrandr plasma-wayland-protocols
qtbase-5 qtwayland wayland qtx11extras))
(arguments
'(#:tests? #f)) ; FIXME: 55% tests passed, 5 tests failed out of 11
(home-page "https://community.kde.org/Solid/Projects/ScreenManagement")
@ -250,56 +283,53 @@ basic needs and easy to configure for those who want special setups.")
(define-public libksysguard
(package
(name "libksysguard")
(version "5.19.5")
(version "5.25.3")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://kde//stable/plasma/" version
(uri (string-append "mirror://kde/stable/plasma/" version
"/libksysguard-" version ".tar.xz"))
(sha256
(base32 "1kd0h3p8bf9k5pqp0frhr81pa0yyrpkckg9zznirk9p1v88v7bfq"))))
(base32 "1mrrrxjvqmrnkjwafvqrd2hlvl9gr9y4hn7dv0gf70lp5bl06i89"))))
(native-inputs
(list extra-cmake-modules pkg-config))
(list extra-cmake-modules pkg-config qttools-5))
(inputs
`(("kconfigwidgets" ,kconfigwidgets)
("kiconthemes" ,kiconthemes)
("kwindowsystem" ,kwindowsystem)
("ki18n" ,ki18n)
("kauth" ,kauth)
("kcompletion" ,kcompletion)
("kconfig" ,kconfig)
("kcoreaddons" ,kcoreaddons)
("kdeclarative" ,kdeclarative)
("kglobalaccel" ,kglobalaccel)
("kio" ,kio)
("knewstuff" ,knewstuff)
("kwidgetsaddons" ,kwidgetsaddons)
("kservice" ,kservice)
("qtbase" ,qtbase-5)
("qtdeclarative-5" ,qtdeclarative-5)
("qtscript" ,qtscript)
("qtwebkit" ,qtwebkit)
("qtx11extras" ,qtx11extras)
("plasma" ,plasma-framework)
("zlib" ,zlib)))
(list kauth
kcompletion
kconfig
kconfigwidgets
kcoreaddons
kdeclarative
kglobalaccel
ki18n
kiconthemes
kio
knewstuff
kservice
kwidgetsaddons
kwindowsystem
libnl
libcap
libpcap
`(,lm-sensors "lib")
plasma-framework
qtbase-5
qtdeclarative-5
qtscript
qtwebchannel-5
qtwebengine-5
qtwebkit
qtx11extras
zlib))
(build-system qt-build-system)
(arguments
(list #:configure-flags
#~`(,(string-append "-DKDE_INSTALL_DATADIR="
#$output "/share"))
#:phases
(list #:phases
#~(modify-phases %standard-phases
(add-before 'configure 'patch-cmakelists
(lambda _
;; TODO: Verify: This should no longer be necessary, since
;; KF5AuthConfig.cmake.in contains this already.
(substitute* "processcore/CMakeLists.txt"
(("KAUTH_HELPER_INSTALL_DIR")
"KDE_INSTALL_LIBEXECDIR"))))
(replace 'check
(lambda _
;; TODO: Fix this failing test-case
(invoke "ctest" "-E" "processtest"))))))
(lambda* (#:key tests? #:allow-other-keys)
(when tests?
;; TODO: Fix this failing test-case
(invoke "ctest" "-E" "processtest")))))))
(home-page "https://userbase.kde.org/KSysGuard")
(synopsis "Network enabled task and system monitoring")
(description "KSysGuard can obtain information on system load and
@ -307,3 +337,52 @@ manage running processes. It obtains this information by interacting
with a ksysguardd daemon, which may also run on a remote system.")
(license license:gpl3+)))
(define-public kwayland-server
(package
(name "kwayland-server")
(version "5.24.4")
(source (origin
(method url-fetch)
(uri (string-append
"mirror://kde/stable/plasma/" version
"/" name "-" version ".tar.xz"))
(sha256
(base32
"1279nqhy1qyz84dkn23rvzak8bg71hbrp09jlhv9mkjdb3bhnyfi"))))
(build-system qt-build-system)
(native-inputs
(list extra-cmake-modules pkg-config))
(inputs
(list plasma-wayland-protocols
qtbase-5
qtwayland
kwayland
wayland
wayland-protocols-next))
(arguments
'(#:phases
(modify-phases %standard-phases
(add-after 'unpack 'patch-install-path
(lambda _
;; Fixes errors including nonexistant /include/KF5
(substitute* "src/server/CMakeLists.txt"
(("KF5_INSTALL") "KDE_INSTALL"))))
(replace 'check
(lambda* (#:key tests? #:allow-other-keys)
(when tests?
(setenv "HOME" (getcwd))
(setenv "XDG_RUNTIME_DIR" (getcwd))
(setenv "QT_QPA_PLATFORM" "offscreen")
(invoke "ctest" "-E"
;; This test fails inconsistently.
"kwayland-testDragAndDrop")))))))
(home-page "https://api.kde.org/kwayland-server/html/index.html")
(synopsis "KDE wayland server component")
(description
"KWayland is a Qt-style API to interact with the wayland-client and
wayland-server API.")
;; Most files are LGPL2.1 or LGPL3.0 only, at the users option.
(license (list license:lgpl2.1 license:lgpl3
;; src/server/drm_fourcc.h carries the MIT license.
license:expat))))

View File

@ -1,6 +1,8 @@
;;; GNU Guix --- Functional package management for GNU
;;; Copyright © 2017, 2020 Hartmut Goebel <h.goebel@crazy-compilers.com>
;;; Copyright © 2021 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2022 Brendan Tildesley <mail@brendan.scot>
;;; Copyright © 2022 Petr Hodina <phodina@protonmail.com>
;;;
;;; This file is part of GNU Guix.
;;;
@ -25,6 +27,7 @@
#:use-module (guix utils)
#:use-module (gnu packages)
#:use-module (gnu packages compression)
#:use-module (gnu packages freedesktop)
#:use-module (gnu packages kde)
#:use-module (gnu packages kde-frameworks)
#:use-module (gnu packages linux)
@ -39,14 +42,14 @@
(define-public dolphin
(package
(name "dolphin")
(version "20.04.1")
(version "22.04.3")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://kde/stable/release-service/" version
"/src/dolphin-" version ".tar.xz"))
(sha256
(base32 "0xr5s0s40i2bsfjfapvpa7dxh9s4604cxirg97xcaacd6fdvhpds"))))
(base32 "07ian9aai9mjygn6bgxanv8h16i83wf69nkl8c9qynwbz4fkwmwf"))))
(build-system qt-build-system)
(native-inputs
(list extra-cmake-modules kdoctools ruby ruby-test-unit))
@ -69,14 +72,15 @@
knotifications
kparts
ktextwidgets
kuserfeedback
kwindowsystem
oxygen-icons ;; default icon set
breeze-icons ;; default icon set
phonon
qtbase-5
solid))
(arguments
`(#:tests? #f)) ;; TODO: 4/15 tests fail even with offscreen
(home-page "https://kde.org/applications/system/org.kde.dolphin")
(home-page "https://apps.kde.org/dolphin/")
(synopsis "File manager for KDE")
(description "Dolphin is a file manager for KDE focusing on usability.
The main features of Dolphin are:
@ -95,14 +99,14 @@ The main features of Dolphin are:
(define-public dolphin-plugins
(package
(name "dolphin-plugins")
(version "20.04.1")
(version "22.04.3")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://kde/stable/release-service/" version
"/src/dolphin-plugins-" version ".tar.xz"))
(sha256
(base32 "12g44s6g7ma6avp15l45l42qyzbglswvahm2wji79zdls5vjnz7r"))))
(base32 "1ii1xrz22caxcgrr9ibzkh7nvw1h9d8xb5a2fadni0makk02qjif"))))
(build-system qt-build-system)
(native-inputs
(list extra-cmake-modules))
@ -111,8 +115,9 @@ The main features of Dolphin are:
ki18n
kio
ktexteditor
ksyntaxhighlighting
kxmlgui
oxygen-icons ;; default icon set
breeze-icons ;; default icon set
qtbase-5))
(home-page "http://www.kde.org/")
(synopsis "VCS-Plugins for Dolphin")
@ -123,14 +128,14 @@ Dolphin with the version control systems: Bzr, Git, Mercurial, Subversion.")
(define-public khelpcenter
(package
(name "khelpcenter")
(version "20.04.1")
(version "22.04.3")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://kde/stable/release-service/" version
"/src/khelpcenter-" version ".tar.xz"))
(sha256
(base32 "0wxzjragvjcfc7c4qja8wzpshhaywficj7f7wkmppzybcsxwn9qb"))))
(base32 "0ga270imh1ssifj0w3434z9hgrmn0dqrschygywy1z2hcpyx991d"))))
(build-system qt-build-system)
(native-inputs
(list extra-cmake-modules kdoctools))
@ -151,12 +156,22 @@ Dolphin with the version control systems: Bzr, Git, Mercurial, Subversion.")
kservice
kwindowsystem
libxml2
oxygen-icons ;; default icon set
breeze-icons ;; default icon set
qtbase-5
xapian))
(arguments
`(#:tests? #f)) ;; 1/1 test fails
(home-page "https://kde.org/applications/system/org.kde.Help")
`(#:tests? #f ;; 1/1 test fails
#:phases
(modify-phases %standard-phases
(add-after 'install 'wrap-executable
(lambda* (#:key inputs outputs #:allow-other-keys)
(let* ((out (assoc-ref outputs "out")))
;; Since qt-wrap selectors do not wrap for /share/kf5
;; directories, we need this so khelpcenter can find html4.css.
(wrap-program (string-append out "/bin/khelpcenter")
`("XDG_DATA_DIRS" suffix
(,(string-append (assoc-ref inputs "khtml") "/share"))))))))))
(home-page "https://apps.kde.org/khelpcenter/")
(synopsis "KDE documentation viewer")
(description "KHelpCenter uses meta data files which describe the
documentation available in the system. Each document is represented by a meta
@ -172,17 +187,17 @@ document meta data file.")
(define-public konsole
(package
(name "konsole")
(version "20.04.1")
(version "22.04.3")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://kde/stable/release-service/" version
"/src/konsole-" version ".tar.xz"))
(sha256
(base32 "0ckr7bjkyaw0gr5kx569jfnhkhwmlk4lqk41ng61qwxlb4bsdbdm"))))
(base32 "19yrhjjbwq7kaip05ig8raqnh87k5dg57jck2zrsdrhq2f4nb3ql"))))
(build-system qt-build-system)
(native-inputs
(list extra-cmake-modules kdoctools))
(list extra-cmake-modules kdoctools zlib))
(inputs
(list kbookmarks
kcompletion
@ -207,7 +222,7 @@ document meta data file.")
kwidgetsaddons
kwindowsystem
kxmlgui
oxygen-icons ;; default icon set
breeze-icons ;; default icon set
qtbase-5
qtscript))
(arguments
@ -226,14 +241,14 @@ This package is part of the KDE base applications module.")
(define-public krfb
(package
(name "krfb")
(version "20.04.1")
(version "22.04.3")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://kde/stable/release-service/" version
"/src/krfb-" version ".tar.xz"))
(sha256
(base32 "092ijn88jpmgk2zwz37vzf35jisl234mc3krc9jl7bd955akx51k"))))
(base32 "09h05al7ivf9pzf2p6mnja1124746fawmr3vdk6rggjjw0p0wgn1"))))
(build-system qt-build-system)
(native-inputs
(list extra-cmake-modules pkg-config kdoctools))
@ -247,19 +262,23 @@ This package is part of the KDE base applications module.")
ki18n
knotifications
kwallet
kwayland
kwidgetsaddons
kwindowsystem
kxmlgui
libvnc
libxcb
libxtst
oxygen-icons ;; default icon set
breeze-icons ;; default icon set
pipewire-0.3
plasma-wayland-protocols
qtbase-5
qtwayland
qtx11extras
wayland
xcb-util-image
zlib))
(home-page "https://kde.org/applications/internet/org.kde.krfb")
(home-page "https://apps.kde.org/krfb/")
(synopsis "Desktop Sharing utility")
(description "KDE Desktop Sharing is a server application that allows you
to share your current session with a user on another machine. The desktop
@ -276,14 +295,14 @@ This package is part of the KDE networking module.")
(define-public ksystemlog
(package
(name "ksystemlog")
(version "20.04.1")
(version "22.04.3")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://kde/stable/release-service/" version
"/src/ksystemlog-" version ".tar.xz"))
(sha256
(base32 "1826h89ynvlxdwzyqil2d79cvynglww6fax7qp41wxasgarxhsni"))))
(base32 "0x9j3m0kndbaxldsk2rh8zawz0nqqdpn1xf36m4zzymm3b034glv"))))
(build-system qt-build-system)
(native-inputs
(list extra-cmake-modules kdoctools))
@ -300,9 +319,9 @@ This package is part of the KDE networking module.")
ktextwidgets
kwidgetsaddons
kxmlgui
oxygen-icons ;; default icon set
breeze-icons ;; default icon set
qtbase-5))
(home-page "https://kde.org/applications/system/org.kde.ksystemlog")
(home-page "https://apps.kde.org/ksystemlog/")
(synopsis "System log viewer")
(description "This program is developed for being used by beginner users,
which don't know how to find information about their Linux system, and how the
@ -315,14 +334,14 @@ This package is part of the KDE administration module.")
(define-public yakuake
(package
(name "yakuake")
(version "20.12.1")
(version "22.04.3")
(source (origin
(method url-fetch)
(uri (string-append "mirror://kde/stable/release-service/" version
"/src/yakuake-" version ".tar.xz"))
(sha256
(base32
"02pal9xx1wbpw7dimvs2aw1xnyjqlvbjlybkkfhf8x7c6m1r63aa"))))
"0h5c8j65m6gylvwrj4sag4rlx92brbfllyrwpi7kwfjbwf7a5j1k"))))
(build-system qt-build-system)
(native-inputs
(list extra-cmake-modules))
@ -348,7 +367,7 @@ This package is part of the KDE administration module.")
qtbase-5
qtsvg-5
qtx11extras))
(home-page "https://www.kde.org/applications/system/yakuake/")
(home-page "https://apps.kde.org/yakuake/")
(synopsis "Quad-style terminal emulator for KDE")
(description "Yakuake is a drop-down terminal emulator based on KDE Konsole
technology. Features include:

View File

@ -2,6 +2,8 @@
;;; Copyright © 2017, 2019 Hartmut Goebel <h.goebel@crazy-compilers.com>
;;; Copyright © 2020, 2021 Tobias Geerinckx-Rice <me@tobias.gr>
;;; Copyright © 2021 Zheng Junjie <873216071@qq.com>
;;; Copyright © 2022 Brendan Tildesley <mail@brendan.scot>
;;; Copyright © 2022 Petr Hodina <phodina@protonmail.com>
;;;
;;; This file is part of GNU Guix.
;;;
@ -25,6 +27,7 @@
#:use-module (guix packages)
#:use-module (gnu packages)
#:use-module (gnu packages backup)
#:use-module (gnu packages bash)
#:use-module (gnu packages cmake)
#:use-module (gnu packages compression)
#:use-module (gnu packages gnome)
@ -40,14 +43,14 @@
(define-public ark
(package
(name "ark")
(version "20.04.1")
(version "22.04.3")
(source (origin
(method url-fetch)
(uri (string-append "mirror://kde/stable/release-service/" version
"/src/ark-" version ".tar.xz"))
(sha256
(base32
"0g5bfa1lc7mhrc2ngd4ldf33dpwr7gqrj95kp897pf632wwj23iw"))
"1wjy90qkkzafwcw8d4v9cyhmc3sgfipc1085hq2ghqhvrgdyzs00"))
;; The libarchive package in Guix does not support
;; xar; disable related tests.
(patches (search-patches "ark-skip-xar-test.patch"))))
@ -79,7 +82,8 @@
(native-inputs
(list extra-cmake-modules pkg-config kdoctools xorg-server))
(inputs
(list breeze-icons
(list bash-minimal
breeze-icons
karchive
kconfig
kcrash
@ -103,7 +107,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
@ -113,14 +117,14 @@ well as CD-ROM images.")
(define-public kate
(package
(name "kate")
(version "20.04.1")
(version "22.04.3")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://kde/stable/release-service/" version
"/src/kate-" version ".tar.xz"))
(sha256
(base32 "0nrby307syrqlxrf9lwdzc9c15ifw47418qwszqwg345ma2pww7i"))))
(base32 "0dnlr1cld6lqanqv98bss66w2bi2y78vqb8jx26addn2r1w4ygkf"))))
(build-system qt-build-system)
(native-inputs
(list extra-cmake-modules kdoctools))
@ -139,11 +143,12 @@ well as CD-ROM images.")
kjobwidgets
kparts
ktexteditor
ksyntaxhighlighting
kwallet
plasma-framework
kwindowsystem
kxmlgui
oxygen-icons ;; default icon set
breeze-icons ;; default icon set
qtbase-5
qtscript))
(arguments
@ -154,8 +159,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
@ -179,14 +183,14 @@ Kate's features include:
(define-public kmag
(package
(name "kmag")
(version "20.04.1")
(version "22.04.3")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://kde/stable/release-service/" version
"/src/kmag-" version ".tar.xz"))
(sha256
(base32 "18lk8i2r90gvw8q5j179xgpniih92mwk06krk7w4jv98yinqf6m5"))))
(base32 "08jwv2wnb67vjgz5pv1nn6rwl9ldj8dfd74l6va9vz4x5pk7d859"))))
(build-system qt-build-system)
(native-inputs
(list extra-cmake-modules kdoctools))
@ -194,10 +198,10 @@ Kate's features include:
(list ki18n
kio
kxmlgui
oxygen-icons ;; default icon set
breeze-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.
@ -209,14 +213,14 @@ artists to web-designers to people with low vision.")
(define-public kmousetool
(package
(name "kmousetool")
(version "20.04.1")
(version "22.04.3")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://kde/stable/release-service/" version
"/src/kmousetool-" version ".tar.xz"))
(sha256
(base32 "01j6bx8zihns4ip8maj0gb3w3bhx1ha2ljhfmsm6lcyay531ay98"))))
(base32 "13pvdhhf3fdkaiyjp0ijqm5qdffabyw7qq2051l1nqv6i7w6lgwx"))))
(build-system qt-build-system)
(native-inputs
(list extra-cmake-modules kdoctools))
@ -233,9 +237,9 @@ artists to web-designers to people with low vision.")
libxtst
libxt
phonon
oxygen-icons ;; default icon set
breeze-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
@ -247,14 +251,14 @@ whom pressing buttons hurts.")
(define-public kmouth
(package
(name "kmouth")
(version "20.04.1")
(version "22.04.3")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://kde/stable/release-service/" version
"/src/kmouth-" version ".tar.xz"))
(sha256
(base32 "1afgxlys9mvmc3rd33g7gchfb0ylx83x3x0a0qf3dra6cpgsgcg7"))))
(base32 "0lzaw7qqvpqzfz4nb2lk8l06c4yxacfg5982yk33g5q0j7r19bpy"))))
(build-system qt-build-system)
(native-inputs
(list extra-cmake-modules kdoctools))
@ -268,10 +272,10 @@ whom pressing buttons hurts.")
kio
kwidgetsaddons
kxmlgui
oxygen-icons ;; default icon set
breeze-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
@ -306,9 +310,9 @@ sentences to be re-spoken.")
ki18n
kwidgetsaddons
kxmlgui
oxygen-icons ;; default icon set
breeze-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
@ -349,11 +353,11 @@ to save the times and resume them later.")
kwidgetsaddons
kwindowsystem
kxmlgui
oxygen-icons ;; default icon set
breeze-icons ;; default icon set
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 +390,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
@ -396,15 +400,14 @@ either be created or generated from a image.")
(define-public okteta
(package
(name "okteta")
(version "17.12.3")
(version "0.26.9")
(source
(origin
(method url-fetch)
;; TODO: Why is this not in "stable" anymore
(uri (string-append "mirror://kde/Attic/applications/" version
(uri (string-append "mirror://kde/stable/okteta/" version
"/src/okteta-" version ".tar.xz"))
(sha256
(base32 "03wsv83l1cay2dpcsksad124wzan7kh8zxdw1h0yicn398kdbck4"))))
(base32 "1yszs3w78dqdr5d8djf6gp4abzc5lcms859imqcq50wl9r6lr18n"))))
(build-system qt-build-system)
(native-inputs
(list extra-cmake-modules kdoctools qttools-5 shared-mime-info))
@ -424,9 +427,10 @@ either be created or generated from a image.")
kservice
kwidgetsaddons
kxmlgui
oxygen-icons ;; default icon set
breeze-icons ;; default icon set
qca
qtbase-5
qtdeclarative-5
qtscript))
(arguments
`(#:phases
@ -435,9 +439,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.
@ -482,9 +485,9 @@ redone.")
ktextwidgets
kwindowsystem
kxmlgui
oxygen-icons ;; default icon set
breeze-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
@ -528,12 +531,12 @@ remind you to take a break now and then.")
kwindowsystem
kxmlgui
samba
oxygen-icons ;; default icon set
breeze-icons ;; default icon set
plasma-framework
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
@ -568,14 +571,14 @@ Features:
(define-public sweeper
(package
(name "sweeper")
(version "20.04.1")
(version "22.04.3")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://kde/stable/release-service/" version
"/src/sweeper-" version ".tar.xz"))
(sha256
(base32 "1az3c2khnh51bbmqpamj4p26d3a0ff4l5rd3vcrylg94mk7wgh59"))))
(base32 "0kda4a5d9a11am2y6f91bx8v3nb8mw9qh671nskvgkx46x1pww21"))))
(build-system qt-build-system)
(native-inputs
(list extra-cmake-modules kdoctools))
@ -590,9 +593,9 @@ Features:
kio
ktextwidgets
kxmlgui
oxygen-icons ;; default icon set
breeze-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

@ -15,6 +15,8 @@
;;; Copyright © 2021 Alexandros Theodotou <alex@zrythm.org>
;;; Copyright © 2021 la snesne <lasnesne@lagunposprasihopre.org>
;;; Copyright © 2021, 2022 Vinicius Monego <monego@posteo.net>
;;; Copyright © 2022 Brendan Tildesley <mail@brendan.scot>
;;; Copyright © 2022 Petr Hodina <phodina@protonmail.com>
;;;
;;; This file is part of GNU Guix.
;;;
@ -60,6 +62,7 @@
#:use-module (gnu packages ebook)
#:use-module (gnu packages flex)
#:use-module (gnu packages fontutils)
#:use-module (gnu packages freedesktop)
#:use-module (gnu packages geo)
#:use-module (gnu packages gettext)
#:use-module (gnu packages ghostscript)
@ -81,6 +84,7 @@
#:use-module (gnu packages perl)
#:use-module (gnu packages photo)
#:use-module (gnu packages pkg-config)
#:use-module (gnu packages polkit)
#:use-module (gnu packages protobuf)
#:use-module (gnu packages pulseaudio)
#:use-module (gnu packages python)
@ -95,26 +99,21 @@
(define-public baloo-widgets
(package
(name "baloo-widgets")
(version "20.04.1")
(version "22.04.3")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://kde/stable/release-service/" version
"/src/baloo-widgets-" version ".tar.xz"))
(sha256
(base32 "1x4v79vhvc5ixkbsf3jyjz5ig1lf78rfw3r7g3llpb4j1kcp3wh0"))))
(base32 "0084bnrlbdypdwzxi9gfxcywhyjd1z2cmh7p6gv0zhc9f7h6ffnp"))))
(build-system qt-build-system)
(native-inputs
(list extra-cmake-modules))
(inputs
(list baloo kconfig ki18n kio qtbase-5))
(arguments
`(#:phases
(modify-phases %standard-phases
(add-before 'check 'check-setup
(lambda _
(setenv "QT_QPA_PLATFORM" "offscreen")
#t)))))
`(#:tests? #f)) ;; tests fail
(home-page "https://community.kde.org/Baloo")
(synopsis "Wigets for use with Baloo")
(description "Baloo is a framework for searching and managing metadata.
@ -124,15 +123,14 @@ This package contains GUI widgets for baloo.")
(define-public grantleetheme
(package
(name "grantleetheme")
(version "20.04.1")
(version "22.04.3")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://kde/stable/release-service/" version
"/src/grantleetheme-" version ".tar.xz"))
(sha256
(base32 "0gabc5cb0sf00s7m5v2jnq55qsrdbrq6nqd15y1i15p788zifsjx"))
(patches (search-patches "grantlee-merge-theme-dirs.patch"))))
(base32 "50c6s1g3vp5sdhpiciz1j6rsryld7hcc6lvmxdlsvms2bbcmnj7l"))))
(build-system qt-build-system)
(arguments `(#:tests? #f)) ; unexpected error in the test suite.
(native-inputs
@ -153,14 +151,14 @@ This package contains GUI widgets for baloo.")
(define-public akregator
(package
(name "akregator")
(version "20.04.1")
(version "22.04.3")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://kde/stable/release-service/" version
"/src/akregator-" version ".tar.xz"))
(sha256
(base32 "1711yhwsdq9iyc3wm3a4xmz81p73hvvc0h58sasc89ifpry50k2p"))))
(base32 "9yy5c29zxpli4cddknmdvjkgii3j7pvw6lhwqfrqjc8jh83gm8f8"))))
(build-system qt-build-system)
(arguments
`(#:phases
@ -173,8 +171,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
@ -223,7 +220,7 @@ browser for easy news reading.")
(define-public kdenlive
(package
(name "kdenlive")
(version "21.12.3")
(version "22.04.3")
(source
(origin
(method git-fetch)
@ -232,7 +229,7 @@ browser for easy news reading.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "19fs5zhz1nv5cvf709c5741nri139pl5mzpf2xnd4sqj0rmyv228"))))
(base32 "0v545kd5rm5isy4cx21fp3pi49mvsv1r1ahp0jhim8s6b7ghrh64"))))
(build-system qt-build-system)
(arguments
;; XXX: there is a single test that spawns other tests and
@ -261,7 +258,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
@ -307,68 +304,65 @@ projects.")
(define-public kdevelop
(package
(name "kdevelop")
(version "5.6.1")
(version "22.04.3")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://kde/stable/kdevelop"
"/" version "/src/kdevelop-"
version ".tar.xz"))
(uri (string-append "mirror://kde/stable/release-service/" version
"/src/kdevelop-" version ".tar.xz"))
(sha256
(base32 "02ip5r67hjfpywkm3mz86n6wbqcr7996ifzfd2fyzsvm4998hi4y"))))
(base32 "03dwllxy96sy20kdsc3sll0n6bhh6gdmpjl821flsxv0jb5naplv"))))
(build-system qt-build-system)
(native-inputs
(list extra-cmake-modules pkg-config shared-mime-info qttools-5))
(inputs
`(("boost" ,boost)
("clang" ,clang)
("grantlee" ,grantlee)
("karchive" ,karchive)
("kcmutils" ,kcmutils)
("kcrash" ,kcrash)
("kdeclarative" ,kdeclarative)
("kdoctools" ,kdoctools)
("kguiaddons" ,kguiaddons)
("ki18n" ,ki18n)
("kiconthemes" ,kiconthemes)
("kio" ,kio) ;; not checked as requirement
("kitemmodels" ,kitemmodels)
("kitemviews" ,kitemviews)
("kjobwidgets" ,kjobwidgets)
("knotifications" ,knotifications)
("knotifyconfig" ,knotifyconfig)
("kparts" ,kparts)
("kservice" ,kservice)
("ktexteditor" ,ktexteditor)
("kwindowsystem" ,kwindowsystem)
("kxmlgui" ,kxmlgui)
("libkomparediff2" ,libkomparediff2)
("oxygen-icons" ,oxygen-icons)
("qtbase" ,qtbase-5)
("qtdeclarative-5" ,qtdeclarative-5)
("qtquickcontrols-5" ,qtquickcontrols-5) ;; not checked as requirement
("qtquickcontrols2-5" ,qtquickcontrols2-5) ;; not checked as requirement
("qtwebkit" ,qtwebkit)
("threadweaver" ,threadweaver)
;; recommendes
("astyle" ,astyle)
("kdevelop-pg-qt" ,kdevelop-pg-qt)
("libksysguard" ,libksysguard)
;; optional
("apr" ,apr) ; required for subversion support
("apr-util" ,apr-util) ; required for subversion support
("attica" ,attica)
("kconfigwidgets" ,kconfigwidgets)
("knewstuff" ,knewstuff)
("krunner" ,krunner)
;; TODO: OktetaGui, OktetaKastenControllers
("plasma" ,plasma-framework)
;; TODO: purpose
("sonnet" ,sonnet)
("subversion" ,subversion)))
(inputs (list boost
clang
grantlee
karchive
kcmutils
kcrash
kdeclarative
kdoctools
kguiaddons
ki18n
kiconthemes
kio ;; not checked as requirement
kitemmodels
kitemviews
kjobwidgets
knotifications
knotifyconfig
kparts
kservice
ksyntaxhighlighting
ktexteditor
kwindowsystem
kxmlgui
libkomparediff2
breeze-icons
qtbase-5
qtdeclarative-5
qtquickcontrols-5 ;; not checked as requirement
qtquickcontrols2-5 ;; not checked as requirement
qtwebkit
threadweaver
;; recommendes
astyle
kdevelop-pg-qt
libksysguard
;; optional
apr ; required for subversion support
apr-util ; required for subversion support
attica
kconfigwidgets
knewstuff
krunner
;; TODO: OktetaGui, OktetaKastenControllers
plasma-framework
;; TODO: purpose
sonnet
subversion))
;; run-time packages - TODO
;; ClazyStandalone
;; Cppcheck
@ -383,8 +377,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
@ -406,7 +399,7 @@ software (Git, Subversion, Mercurial, CVS and Bazaar).")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1kfab4p717acbdkcdi41d98vwch7v431gb2qi6s38hmclsf8bf8g"))))
(base32 "3kfab4p717acbdkcdi41d98vwch7v431gb2qi6s38hmclsf8bf8g"))))
(native-inputs
(list extra-cmake-modules))
(inputs
@ -424,14 +417,14 @@ for some KDevelop language plugins (Ruby, PHP, CSS...).")
(define-public kdiagram
(package
(name "kdiagram")
(version "2.7.0")
(version "2.8.0")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://kde/stable/kdiagram/" version
"/kdiagram-" version ".tar.xz"))
(sha256
(base32 "1pgvf2q8b59hw0jg5ajmj5nrn4q8cgnifpvdd0fynk2ml6zym8k3"))
(base32 "07s3kwv0mqvb64x8nz4w1yb3hbk28yzkw4qg1jibai7as4xsv7ap"))
(patches (search-patches
"kdiagram-Fix-missing-link-libraries.patch"))))
(build-system qt-build-system)
@ -462,7 +455,7 @@ illustrate project schedules.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "088q3kkv2wq426w000iq14wy3a45rrnn0bmsdks6caz4vq04ccay"))))
(base32 "888q3kkv2wq426w000iq14wy3a45rrnn0bmsdks6caz4vq04ccay"))))
(build-system qt-build-system)
(arguments
`(#:configure-flags (list "-DBUILD_TESTS=ON"))) ; disabled by default
@ -487,7 +480,7 @@ expression library, that is used in Krita.")
"mirror://kde/stable/krita/" version "/krita-" version
".tar.gz"))
(sha256
(base32 "0iaypyv21zxvhr989r9j9nlhx642jc89xphz1qaw9q1y0yjiy7gd"))))
(base32 "2iaypyv21zxvhr989r9j9nlhx642jc89xphz1qaw9q1y0yjiy7gd"))))
(build-system qt-build-system)
(arguments
`(#:tests? #f
@ -527,7 +520,7 @@ expression library, that is used in Krita.")
libheif
libmypaint
libpng
libraw-0.18
libraw
libtiff
libwebp
libx11
@ -579,7 +572,7 @@ features include brush stabilizers, brush engines and wrap-around mode.")
qtbase-5
qtsvg-5
qtxmlpatterns))
(home-page "https://apps.kde.org/en/massif-visualizer")
(home-page "https://apps.kde.org/massif-visualizer/")
(synopsis "Visualize massif data generated by Valgrind")
(description
"Massif Visualizer is a tool that visualizes massif data.
@ -591,14 +584,14 @@ compressed massif files can also be opened transparently.")
(define-public libkomparediff2
(package
(name "libkomparediff2")
(version "20.04.1")
(version "22.04.3")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://kde/stable/release-service/" version
"/src/libkomparediff2-" version ".tar.xz"))
(sha256
(base32 "0m8m7sgpf2f4nxpaaymyvihlk0pcyblyd99mcbibrnyr5kzkzzdc"))))
(base32 "1vaxbx7c6r7skh3452blxyrngfcsdyjmmvcg6j2wcsn04m01mw8k"))))
(native-inputs
(list extra-cmake-modules pkg-config))
(inputs
@ -622,14 +615,14 @@ used in KDE development tools Kompare and KDevelop.")
(define-public qca
(package
(name "qca")
(version "2.3.3")
(version "2.3.4")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://kde/stable/qca/" version
"/qca-" version ".tar.xz"))
(sha256
(base32 "0rvvf97la95lah67jcj0p06n4br0pc2mri0q1hn4x522hndqybjn"))))
(base32 "1i7m5y3dfwij9cyjp72ya5zd2skgp7mfmrmf7bvrbzg3ly0mhsbb"))))
(build-system cmake-build-system)
(native-inputs
(list pkg-config))
@ -646,16 +639,15 @@ cards.")
(define-public kpmcore
(package
(name "kpmcore")
(version "4.1.0")
(version "22.04.3")
(source (origin
(method url-fetch)
(uri (string-append
"mirror://kde/stable/kpmcore"
"/" version "/src/"
name "-" version ".tar.xz"))
"mirror://kde/stable/release-service/" version
"/src/" name "-" version ".tar.xz"))
(sha256
(base32
"0jsig7algmab9h0fb09my0axjqzw83zgscamhzl8931lribs6idm"))))
"04qslli4vnbnl329zynbinlwaigxr9xpswra5n0v710p92as0qif"))))
(build-system cmake-build-system)
(native-inputs
(list extra-cmake-modules pkg-config))
@ -664,9 +656,19 @@ cards.")
kcoreaddons
ki18n
kwidgetsaddons
polkit-qt
qtbase-5
qca
`(,util-linux "lib")))
(arguments
`(#:tests? #f ;; 4/6 tests fail do to no plugin instance
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'fix-cmake-install-directories
(lambda _
(substitute* "src/util/CMakeLists.txt"
(("DESTINATION \\$\\{POLKITQT-1_POLICY_FILES_INSTALL_DIR\\}")
"DESTINATION share/polkit-1/actions")))))))
(home-page "https://community.kde.org/Frameworks")
(synopsis "Library for managing partitions")
(description "Library for managing partitions.")
@ -701,7 +703,7 @@ different notification systems.")
(define-public kdeconnect
(package
(name "kdeconnect")
(version "20.04.2")
(version "22.04.3")
(source
(origin
(method url-fetch)
@ -710,47 +712,47 @@ different notification systems.")
version ".tar.xz"))
(sha256
(base32
"0yq3afbbcc9gmlcachvh3xz3gdj57092fpagp36l5knw8gr0d9ip"))))
"015gxglclds2vmjr4bv51yfv840bafzgrl71cnwgnwwy8rrh9x4x"))))
(build-system qt-build-system)
(arguments
`(#:configure-flags '("-DBUILD_TESTING=ON"
"-DKDE_INSTALL_LIBEXECDIR=libexec")
#:phases
(modify-phases %standard-phases
(add-after 'unpack 'adjust-include-header
(lambda _
(substitute* "plugins/runcommand/runcommandplugin.cpp"
(("<kcmutils_version.h>")
"<KF5/kcmutils_version.h>")))))
"-DKDE_INSTALL_LIBEXECDIR=libexec"
;; So kdeconnect.so isn't installed to lib/plugins
"-DPLUGIN_INSTALL_DIR=lib/qt5/plugins")
#:tests? #f)) ; tests fail hard in our build environment
(native-inputs
`(("extra-cmake-modules" ,extra-cmake-modules)
("kdoctools" ,kdoctools)
("libxtst" ,libxtst)
("pkg-config" ,pkg-config)
("python" ,python-wrapper)))
(list extra-cmake-modules
kdoctools
libxtst
pkg-config
python-wrapper))
(inputs
(list kcmutils
kconfigwidgets
kdbusaddons
kguiaddons
ki18n
kiconthemes
kio
kirigami
knotifications
kpackage
kpeople
kpeoplevcard
kwayland
libfakekey
pulseaudio-qt
qca
qqc2-desktop-style
qtbase-5
qtdeclarative-5
qtgraphicaleffects
qtmultimedia-5
qtquickcontrols-5
qtquickcontrols2-5
qtx11extras))
qtx11extras
qtwayland
wayland))
(home-page "https://community.kde.org/KDEConnect")
(synopsis "Enable your devices to communicate with each other")
(description "KDE Connect is a project that enables all your devices to
@ -772,7 +774,7 @@ communicate with each other. Here's a few things KDE Connect can do:
(define-public labplot
(package
(name "labplot")
(version "2.8.2")
(version "2.9.0")
(source
(origin
(method url-fetch)
@ -780,7 +782,7 @@ communicate with each other. Here's a few things KDE Connect can do:
"/" version "/labplot-"
version ".tar.xz"))
(sha256
(base32 "1yhxnchwb4n83sxrbn4im41g2sqr0xsim2y242mvyd8pjzd83icf"))))
(base32 "1wi19gj18yhrim1cb2dwgpnc2yvydm87h41fcg670ampy24i98z5"))))
(build-system qt-build-system)
(arguments
`(#:configure-flags
@ -797,14 +799,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|ReadStatFilterTest)")))))))
(native-inputs (list bison
extra-cmake-modules
pkg-config
python-wrapper
qttools-5))
(inputs
(list breeze ;for dark themes
breeze-icons ;for icons
@ -850,7 +850,7 @@ to perform data analysis.")
(define-public kqtquickcharts
(package
(name "kqtquickcharts")
(version "20.04.1")
(version "22.04.3")
(source
(origin
(method url-fetch)
@ -858,7 +858,7 @@ to perform data analysis.")
version "/src/kqtquickcharts-" version ".tar.xz"))
(sha256
(base32
"1wxp35mf9zlpgzi4msdl86b2krdq2ipqw371gyx23r7j84vdyxi3"))))
"0bm7rdysvlfnfnvy87ii3kxl238q83vw0ia58zsnwjmkxmlgf6mp"))))
(build-system cmake-build-system)
(native-inputs
(list extra-cmake-modules))
@ -874,14 +874,14 @@ charts.")
(define-public kdf
(package
(name "kdf")
(version "20.12.1")
(version "22.04.3")
(source (origin
(method url-fetch)
(uri (string-append "mirror://kde/stable/release-service/"
version "/src/kdf-" version ".tar.xz"))
(sha256
(base32
"0ba67hs4vlb3qyvdzhnpmf8p62df12s8aqw4hzf9vnxff3qix5k1"))))
"1m0dwk3inqzk9kjjzgsaam15lnpbhzjfmwrzv8sazfk44scnr2v1"))))
(build-system qt-build-system)
(native-inputs
(list extra-cmake-modules kdoctools))
@ -907,14 +907,14 @@ unmount drives and view them in a file manager.")
(define-public kcachegrind
(package
(name "kcachegrind")
(version "20.04.1")
(version "22.04.3")
(source (origin
(method url-fetch)
(uri (string-append "mirror://kde/stable/release-service/" version
"/src/kcachegrind-" version ".tar.xz"))
(sha256
(base32
"0fx17s6fj1pxl1mgfrqhchk8sihkbji1x8y3nhb1r0971wzd1nsc"))))
"12ckn90hqm2c5c58xqkzgcih64jk4kwkgz4q0f5ns1rxv3pidz5n"))))
(build-system cmake-build-system)
(native-inputs
(list extra-cmake-modules perl python qttools-5 kdoctools))
@ -941,14 +941,14 @@ Python, PHP, and Perl.")
(define-public libkdegames
(package
(name "libkdegames")
(version "20.04.1")
(version "22.04.3")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://kde/stable/release-service/" version
"/src/libkdegames-" version ".tar.xz"))
(sha256
(base32 "1xsrrvhwjwi5aajcaxydmzc69i4yx6shs8ly8vr85njc188ycg13"))))
(base32 "0igq87anam9x2mclb0lkvwhrxk62y1f4xl14a4dhd97mqsc5pbzn"))))
(build-system qt-build-system)
(native-inputs
(list extra-cmake-modules))
@ -979,7 +979,7 @@ Python, PHP, and Perl.")
qtbase-5
qtdeclarative-5
qtsvg-5))
(home-page "https://games.kde.org/")
(home-page "https://apps.kde.org/categories/games/")
(synopsis "Runtime library for kdegames")
(description "Runtime library for kdegames")
(license (list license:gpl2+ license:fdl1.2+))))
@ -987,7 +987,7 @@ Python, PHP, and Perl.")
(define-public marble-qt
(package
(name "marble-qt")
(version "21.12.3")
(version "22.04.3")
(source
(origin
(method git-fetch)
@ -996,7 +996,8 @@ Python, PHP, and Perl.")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1h5a7did4shi3z5l0ad9arl6xr79xpjr7dbzx5l8xpp771pb0pcj"))))
(base32
"1saacnrl0hkl32nq96l1bgn9yrsz455q96jdxzp7ax8iaa5nmdiz"))))
(build-system qt-build-system)
(arguments
;; FIXME: libmarblewidget-qt5.so.28 not found. Also enable the
@ -1007,13 +1008,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
@ -1044,14 +1044,14 @@ creating routes by drag and drop and more.")
(define-public okular
(package
(name "okular")
(version "20.12.1")
(version "22.04.3")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://kde/stable/release-service/" version
"/src/" name "-" version ".tar.xz"))
(sha256
(base32 "0gpm7n47yijsjg4yba561j5pbvd98hgvr93w1kvzk851nb87m89c"))))
(base32 "03jpwgrhjgyx14g1h3lxhnyib88ck0qkqcxh4fpc398xwdr3amkw"))))
(build-system qt-build-system)
;; The tests fail because they can't find the proper mimetype plugins:
;; "org.kde.okular.core: No plugin for mimetype '"image/jpeg"'."
@ -1099,7 +1099,7 @@ creating routes by drag and drop and more.")
threadweaver
kcrash
kjs))
(home-page "https://kde.org/applications/graphics/okular/")
(home-page "https://apps.kde.org/okular/")
(synopsis "Document viewer")
(description
"Okular is a document viewer developed for KDE. It can display files in
@ -1109,7 +1109,7 @@ a variety of formats, including PDF, PostScript, DejaVu, and EPub.")
(define-public poxml
(package
(name "poxml")
(version "20.12.1")
(version "22.04.3")
(source (origin
(method url-fetch)
(uri
@ -1117,13 +1117,13 @@ a variety of formats, including PDF, PostScript, DejaVu, and EPub.")
"/src/poxml-" version ".tar.xz"))
(sha256
(base32
"1smjvblx0jcv3afs2sr4qcmvhqd44iw24hvr9fppa3nxhrmjwmlk"))))
"1nrp0i3a39pw4pzcanpmjyks3pl1lyfj3zq61ii8xx402xw1ip2w"))))
(build-system cmake-build-system)
(native-inputs
(list extra-cmake-modules kdoctools))
(inputs
(list gettext-minimal qtbase-5))
(home-page "https://kde.org/applications/development")
(home-page "https://apps.kde.org/development/")
(synopsis "Tools for translating DocBook XML files with Gettext")
(description "This is a collection of tools that facilitate translating
DocBook XML files using Gettext message files (PO files). Also included are
@ -1134,14 +1134,14 @@ PO template files.")
(define-public kdegraphics-mobipocket
(package
(name "kdegraphics-mobipocket")
(version "20.12.0")
(version "22.04.3")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://kde/stable/release-service/" version
"/src/" name "-" version ".tar.xz"))
(sha256
(base32 "0fm880lp9g60zgrkjyh4jxws6x0s77l9ia4f8pza3w8sxcbbswk5"))))
(base32 "12yrwa22c4qxsf10fv76fzaaj5xlv5lmrwcqvf6qhgr6f9qsw7sj"))))
(build-system cmake-build-system)
(native-inputs
(list extra-cmake-modules))
@ -1156,14 +1156,14 @@ Mobipocket e-books in Dolphin and other KDE apps.")
(define-public libkexiv2
(package
(name "libkexiv2")
(version "20.12.0")
(version "22.04.3")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://kde/stable/release-service/" version
"/src/" name "-" version ".tar.xz"))
(sha256
(base32 "0k0iinf7s8qlk3fwvq7iic1b4zn2gm65rfd58q7d3wb1i1j2hjjk"))))
(base32 "0p43z69yh5jk8m1hn3xynjpgzxpkc89h0dafj5964qx4xp4vxl19"))))
(build-system cmake-build-system)
(native-inputs
(list extra-cmake-modules))
@ -1178,20 +1178,20 @@ picture metadata as EXIF/IPTC and XMP.")
(define-public zeroconf-ioslave
(package
(name "zeroconf-ioslave")
(version "20.04.1")
(version "22.04.3")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://kde/stable/release-service/" version
"/src/zeroconf-ioslave-" version ".tar.xz"))
(sha256
(base32 "1qck5jyc4psslpibhki8sz8aj0hsnx8z791vzyn10lmdzn71vx8c"))))
(base32 "0jbrdbphxn77dg2a4wzsm7q24455j4d1xhd4rj5iwhq4ywiig9i1"))))
(build-system qt-build-system)
(native-inputs
(list extra-cmake-modules))
(inputs
(list kdbusaddons kdnssd ki18n kio qtbase-5))
(home-page "https://kde.org/applications/internet/org.kde.zeroconf_ioslave")
(home-page "https://apps.kde.org/kio_zeroconf/")
(synopsis "DNS-SD Service Discovery Monitor")
(description "Adds an entry to Dolphin's Network page to show local
services such as printers which advertise themselves with DNSSD (called Avahi
@ -1205,14 +1205,14 @@ or Bonjour by other projects).")
;; FIXME: Check https://www.reddit.com/r/kde/comments/f7ojg9 for insights
(package
(name "kuserfeedback")
(version "1.0.0")
(version "1.2.0")
(source
(origin
(method url-fetch)
(uri (string-append "mirror://kde/stable/kuserfeedback/"
"/kuserfeedback-" version ".tar.xz"))
(sha256
(base32 "1dwx9fscnfp3zsxdir774skn8xvad2dvscnaaw3ji6mrnkmm6bss"))))
(base32 "0r7jcc88n5b4rc0asjzh7m7g33i35k3z99l08qkrn92kn4ickakn"))))
(build-system qt-build-system)
(native-inputs
(list extra-cmake-modules

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

@ -22,8 +22,9 @@
(define-module (gnu packages libunwind)
#:use-module (guix packages)
#:use-module (gnu packages)
#:use-module (guix download)
#:use-module (guix utils)
#:use-module (gnu packages)
#:use-module (guix build-system gnu)
#:use-module (guix licenses))
@ -40,10 +41,13 @@
"0xj9g6a9q7v7zz6lymf3f6011synibgawi4wi384bywid5kfqsja"))))
(build-system gnu-build-system)
(arguments
'(#:make-flags
;; Two tests are failing with newer toolchains:
`(;; Two tests are failing with newer toolchains:
;; https://github.com/libunwind/libunwind/issues/363
'("XFAIL_TESTS=run-coredump-unwind run-coredump-unwind-mdi")))
#:make-flags
'("XFAIL_TESTS=run-coredump-unwind run-coredump-unwind-mdi")
;; A different collection of tests fails for each architecture.
#:tests? ,(and (not (%current-target-system))
(target-x86-64?))))
(home-page "https://www.nongnu.org/libunwind")
(synopsis "Determining the call chain of a program")
(description

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
@ -8047,23 +8080,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
@ -8642,7 +8678,7 @@ of Linux application development.")
(package
(inherit pipewire)
(name "pipewire")
(version "0.3.43")
(version "0.3.56")
(source (origin
(method git-fetch)
(uri (git-reference
@ -8651,17 +8687,13 @@ of Linux application development.")
(file-name (git-file-name name version))
(sha256
(base32
"0gp2h0sidapcqmnifl0iipdmbzb18bdh8zdi7pfywr9gsksh0cxy"))))
"066g4ri2k8pdflclvr2919f6x98gmqrqyj1xyiingw2nn2pwgcf1"))))
(arguments
'(#:configure-flags
(list (string-append "-Dudevrulesdir=" (assoc-ref %outputs "out")
"/lib/udev/rules.d")
"-Dsystemd=disabled"
"-Dsession-managers=[]")
#:phases
(modify-phases %standard-phases
;; Skip shrink-runpath, otherwise validate-runpath fails.
(delete 'shrink-runpath))))
"-Dsession-managers=[]")))
(inputs (modify-inputs (package-inputs pipewire)
(prepend avahi
bluez
@ -8674,7 +8706,7 @@ of Linux application development.")
(define-public wireplumber
(package
(name "wireplumber")
(version "0.4.6")
(version "0.4.11")
(source
(origin
(method git-fetch)
@ -8684,7 +8716,7 @@ of Linux application development.")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "0g7xkgkjlxrhs49hqkwrjk2hb478gq55wwydafvvbsv78vsa7qfb"))))
(base32 "09pg5cki1xn9bwn3bcjdc54z7b4iqkk1dhn560qyjcglq8xg7nnw"))))
(build-system meson-build-system)
(arguments
`(#:configure-flags '("-Dsystemd=disabled"

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,19 +1,18 @@
From bc018b4bc816a3b51deb9739bedbf8a2268d0684 Mon Sep 17 00:00:00 2001
From: gnidorah <gnidorah@users.noreply.github.com>
Date: Fri, 22 Dec 2017 17:36:03 +0300
Subject: [PATCH] Revert "Make Akonadi installation properly relocatable"
From 4b90a0bd4411a66bbe6ecf85ce89a60a58bee969 Mon Sep 17 00:00:00 2001
From: Thomas Tuegel <ttuegel@mailbox.org>
Date: Sun, 25 Apr 2021 08:01:21 -0500
Subject: [PATCH 3/3] akonadi revert make relocatable
This reverts commit b2bb55f13f2ac783f89cc414de8c39f62fa2096a.
---
CMakeLists.txt | 3 ---
KF5AkonadiConfig.cmake.in | 6 +++---
2 files changed, 3 insertions(+), 6 deletions(-)
Index: akonadi-19.08.0/CMakeLists.txt
===================================================================
--- akonadi-19.08.0.orig/CMakeLists.txt
+++ akonadi-19.08.0/CMakeLists.txt
@@ -306,9 +306,6 @@ configure_package_config_file(
diff --git a/CMakeLists.txt b/CMakeLists.txt
index 4e8cc81..63161b7 100644
--- a/CMakeLists.txt
+++ b/CMakeLists.txt
@@ -368,9 +368,6 @@ configure_package_config_file(
"${CMAKE_CURRENT_SOURCE_DIR}/KF5AkonadiConfig.cmake.in"
"${CMAKE_CURRENT_BINARY_DIR}/KF5AkonadiConfig.cmake"
INSTALL_DESTINATION ${CMAKECONFIG_INSTALL_DIR}
@ -21,29 +20,25 @@ Index: akonadi-19.08.0/CMakeLists.txt
- AKONADI_INCLUDE_DIR
- KF5Akonadi_DATA_DIR
)
install(FILES
Index: akonadi-19.08.0/KF5AkonadiConfig.cmake.in
===================================================================
--- akonadi-19.08.0.orig/KF5AkonadiConfig.cmake.in
+++ akonadi-19.08.0/KF5AkonadiConfig.cmake.in
@@ -26,8 +26,8 @@ if(BUILD_TESTING)
find_dependency(Qt5Test "@QT_REQUIRED_VERSION@")
endif()
diff --git a/KF5AkonadiConfig.cmake.in b/KF5AkonadiConfig.cmake.in
index bcf7320..1574319 100644
--- a/KF5AkonadiConfig.cmake.in
+++ b/KF5AkonadiConfig.cmake.in
@@ -1,10 +1,10 @@
@PACKAGE_INIT@
-set_and_check(AKONADI_DBUS_INTERFACES_DIR "@PACKAGE_AKONADI_DBUS_INTERFACES_INSTALL_DIR@")
-set_and_check(AKONADI_INCLUDE_DIR "@PACKAGE_AKONADI_INCLUDE_DIR@")
+set_and_check(AKONADI_DBUS_INTERFACES_DIR "@AKONADI_DBUS_INTERFACES_INSTALL_DIR@")
+set_and_check(AKONADI_INCLUDE_DIR "@AKONADI_INCLUDE_DIR@")
find_dependency(Boost "@Boost_MINIMUM_VERSION@")
@@ -35,7 +35,7 @@ include(${CMAKE_CURRENT_LIST_DIR}/KF5Ako
include(${CMAKE_CURRENT_LIST_DIR}/KF5AkonadiMacros.cmake)
# The directory where akonadi-xml.xsd and kcfg2dbus.xsl are installed
-set(KF5Akonadi_DATA_DIR "@PACKAGE_KF5Akonadi_DATA_DIR@")
+set(KF5Akonadi_DATA_DIR "@KF5Akonadi_DATA_DIR@")
####################################################################################
# CMAKE_AUTOMOC
# set the directories
if(NOT AKONADI_INSTALL_DIR)
--
2.31.1

View File

@ -1,26 +1,26 @@
This is based on the respectve patch from NixPkgs, but with the parts pinning
mysql and postgresql executables removed. The our package definition on why.
mysql and postgresql executables removed. See our package definition on why.
diff --git a/src/akonadicontrol/agentmanager.cpp b/src/akonadicontrol/agentmanager.cpp
--- a/src/akonadicontrol/agentmanager.cpp
+++ b/src/akonadicontrol/agentmanager.cpp
@@ -61,7 +61,7 @@ public:
[]() {
QCoreApplication::instance()->exit(255);
});
@@ -47,7 +47,7 @@ public:
connect(this, &Akonadi::ProcessControl::unableToStart, this, []() {
QCoreApplication::instance()->exit(255);
});
- start(QStringLiteral("akonadiserver"), args, RestartOnCrash);
+ start(QLatin1String(NIX_OUT "/bin/akonadiserver"), args, RestartOnCrash);
+ start(QStringLiteral(NIX_OUT "/bin/akonadiserver"), args, RestartOnCrash);
}
~StorageProcessControl() override
@@ -84,7 +84,7 @@ public:
[]() {
qCCritical(AKONADICONTROL_LOG) << "Failed to start AgentServer!";
});
@@ -69,7 +69,7 @@ public:
connect(this, &Akonadi::ProcessControl::unableToStart, this, []() {
qCCritical(AKONADICONTROL_LOG) << "Failed to start AgentServer!";
});
- start(QStringLiteral("akonadi_agent_server"), args, RestartOnCrash);
+ start(QLatin1String(NIX_OUT "/bin/akonadi_agent_server"), args, RestartOnCrash);
+ start(QStringLiteral(NIX_OUT "/bin/akonadi_agent_server"), args, RestartOnCrash);
}
~AgentServerProcessControl() override
diff --git a/src/akonadicontrol/agentprocessinstance.cpp b/src/akonadicontrol/agentprocessinstance.cpp
--- a/src/akonadicontrol/agentprocessinstance.cpp
@ -37,12 +37,12 @@ diff --git a/src/akonadicontrol/agentprocessinstance.cpp b/src/akonadicontrol/ag
diff --git a/src/server/storage/dbconfigmysql.cpp b/src/server/storage/dbconfigmysql.cpp
--- a/src/server/storage/dbconfigmysql.cpp
+++ b/src/server/storage/dbconfigmysql.cpp
@@ -209,7 +209,7 @@ bool DbConfigMysql::startInternalServer()
@@ -215,7 +215,7 @@ bool DbConfigMysql::startInternalServer()
#endif
// generate config file
- const QString globalConfig = StandardDirs::locateResourceFile("config", QStringLiteral("mysql-global.conf"));
+ const QString globalConfig = QLatin1String(NIX_OUT "/etc/xdg/akonadi/mysql-global.conf");
const QString localConfig = StandardDirs::locateResourceFile("config", QStringLiteral("mysql-local.conf"));
const QString localConfig = StandardDirs::locateResourceFile("config", QStringLiteral("mysql-local.conf"));
const QString actualConfig = StandardDirs::saveDir("data") + QLatin1String("/mysql.conf");
if (globalConfig.isEmpty()) {

View File

@ -2,12 +2,12 @@ Index: akonadi-19.08.0/src/server/storage/dbconfigmysql.cpp
===================================================================
--- akonadi-19.08.0.orig/src/server/storage/dbconfigmysql.cpp
+++ akonadi-19.08.0/src/server/storage/dbconfigmysql.cpp
@@ -235,8 +235,7 @@ bool DbConfigMysql::startInternalServer(
@@ -260,8 +260,7 @@ bool DbConfigMysql::startInternalServer(
bool confUpdate = false;
QFile actualFile(actualConfig);
// update conf only if either global (or local) is newer than actual
- if ((QFileInfo(globalConfig).lastModified() > QFileInfo(actualFile).lastModified()) ||
- (QFileInfo(localConfig).lastModified() > QFileInfo(actualFile).lastModified())) {
- if ((QFileInfo(globalConfig).lastModified() > QFileInfo(actualFile).lastModified())
- || (QFileInfo(localConfig).lastModified() > QFileInfo(actualFile).lastModified())) {
+ if (true) {
QFile globalFile(globalConfig);
QFile localFile(localConfig);

View File

@ -1,180 +0,0 @@
Taken from upstream:
https://gitlab.gnome.org/GNOME/cheese/-/commit/7cf6268e54620bbbe5e6e61800c50fb0cb4bea57.patch.
From 7cf6268e54620bbbe5e6e61800c50fb0cb4bea57 Mon Sep 17 00:00:00 2001 From:
=?UTF-8?q?Corentin=20No=C3=ABl?= <corentin@elementary.io> Date: Fri, 16 Oct
2020 19:56:26 +0200 Subject: [PATCH] Change GLib.PtrArray into
GLib.GenericArray
This is the vala-friendly way of handling GPtrArray.
Fix several memory leaks on the go and unnecessary reference increase.
---
src/cheese-preferences.vala | 26 ++++++++++++--------------
src/cheese-window.vala | 22 +++++++++++-----------
src/vapi/cheese-common.vapi | 2 +-
3 files changed, 24 insertions(+), 26 deletions(-)
diff --git a/src/cheese-preferences.vala b/src/cheese-preferences.vala
index f56af7e0..80a92431 100644
--- a/src/cheese-preferences.vala
+++ b/src/cheese-preferences.vala
@@ -100,7 +100,7 @@ public PreferencesDialog (Cheese.Camera camera)
*/
private void initialize_camera_devices ()
{
- unowned GLib.PtrArray devices = camera.get_camera_devices ();
+ GLib.GenericArray<unowned Cheese.CameraDevice> devices = camera.get_camera_devices ();
camera_model = new Gtk.ListStore (2, typeof (string), typeof (Cheese.CameraDevice));
source_combo.model = camera_model;
@@ -357,13 +357,13 @@ public PreferencesDialog (Cheese.Camera camera)
*/
private void on_camera_update_num_camera_devices ()
{
- unowned GLib.PtrArray devices = camera.get_camera_devices ();
- Cheese.CameraDevice dev;
+ GLib.GenericArray<unowned Cheese.CameraDevice> devices = camera.get_camera_devices ();
+ unowned Cheese.CameraDevice dev;
// Add (if) / Remove (else) a camera device.
- if (devices.len > camera_model.iter_n_children (null))
+ if (devices.length > camera_model.iter_n_children (null))
{
- dev = (Cheese.CameraDevice) devices.index (devices.len - 1);
+ dev = devices.get (devices.length - 1);
add_camera_device(dev);
}
else
@@ -382,12 +382,11 @@ public PreferencesDialog (Cheese.Camera camera)
bool device_removed = false;
devices.foreach ((device) =>
{
- var old_device = (Cheese.CameraDevice) device;
Cheese.CameraDevice new_device;
camera_model.get (iter, 1, out new_device, -1);
// Found the device that was removed.
- if (old_device != new_device)
+ if (device != new_device)
{
remove_camera_device (iter, new_device, active_device);
device_removed = true;
@@ -418,17 +417,16 @@ public PreferencesDialog (Cheese.Camera camera)
*
* @param device a Cheese.CameraDevice to add to the device combo box model
*/
- private void add_camera_device (void *device)
+ private void add_camera_device (Cheese.CameraDevice device)
{
TreeIter iter;
- Cheese.CameraDevice dev = (Cheese.CameraDevice) device;
camera_model.append (out iter);
camera_model.set (iter,
- 0, dev.get_name (),
- 1, dev);
+ 0, device.get_name (),
+ 1, device);
- if (camera.get_selected_device () == dev)
+ if (camera.get_selected_device () == device)
source_combo.set_active_iter (iter);
if (camera_model.iter_n_children (null) > 1)
@@ -445,12 +443,12 @@ public PreferencesDialog (Cheese.Camera camera)
private void remove_camera_device (TreeIter iter, Cheese.CameraDevice device_node,
Cheese.CameraDevice active_device_node)
{
- unowned GLib.PtrArray devices = camera.get_camera_devices ();
+ GLib.GenericArray<unowned Cheese.CameraDevice> devices = camera.get_camera_devices ();
// Check if the camera that we want to remove, is the active one
if (device_node == active_device_node)
{
- if (devices.len > 0)
+ if (devices.length > 0)
set_new_available_camera_device (iter);
else
this.hide ();
diff --git a/src/cheese-window.vala b/src/cheese-window.vala
index ff069808..cc119b68 100644
--- a/src/cheese-window.vala
+++ b/src/cheese-window.vala
@@ -1216,9 +1216,9 @@ public class Cheese.MainWindow : Gtk.ApplicationWindow
*/
public void on_switch_camera_clicked ()
{
- Cheese.CameraDevice selected;
- Cheese.CameraDevice next = null;
- GLib.PtrArray cameras;
+ unowned Cheese.CameraDevice selected;
+ unowned Cheese.CameraDevice next = null;
+ GLib.GenericArray<unowned Cheese.CameraDevice> cameras;
uint i;
if (camera == null)
@@ -1235,9 +1235,9 @@ public class Cheese.MainWindow : Gtk.ApplicationWindow
cameras = camera.get_camera_devices ();
- for (i = 0; i < cameras.len; i++)
+ for (i = 0; i < cameras.length; i++)
{
- next = (Cheese.CameraDevice )cameras.index (i);
+ next = cameras.get (i);
if (next == selected)
{
@@ -1245,13 +1245,13 @@ public class Cheese.MainWindow : Gtk.ApplicationWindow
}
}
- if (i + 1 < cameras.len)
+ if (i + 1 < cameras.length)
{
- next = (Cheese.CameraDevice )cameras.index (i + 1);
+ next = cameras.get (i + 1);
}
else
{
- next = (Cheese.CameraDevice )cameras.index (0);
+ next = cameras.get (0);
}
if (next == selected)
@@ -1269,8 +1269,8 @@ public class Cheese.MainWindow : Gtk.ApplicationWindow
*/
public void set_switch_camera_button_state ()
{
- Cheese.CameraDevice selected;
- GLib.PtrArray cameras;
+ unowned Cheese.CameraDevice selected;
+ GLib.GenericArray<unowned Cheese.CameraDevice> cameras;
if (camera == null)
{
@@ -1288,7 +1288,7 @@ public class Cheese.MainWindow : Gtk.ApplicationWindow
cameras = camera.get_camera_devices ();
- if (cameras.len > 1)
+ if (cameras.length > 1)
{
switch_camera_button.set_visible (true);
return;
diff --git a/src/vapi/cheese-common.vapi b/src/vapi/cheese-common.vapi
index 6517cdfc..e4ae7ad3 100644
--- a/src/vapi/cheese-common.vapi
+++ b/src/vapi/cheese-common.vapi
@@ -35,7 +35,7 @@ namespace Cheese
[CCode (has_construct_function = false)]
public Camera (Clutter.Actor video_texture, string camera_device_node, int x_resolution, int y_resolution);
public bool get_balance_property_range (string property, double min, double max, double def);
- public unowned GLib.PtrArray get_camera_devices ();
+ public GLib.GenericArray<unowned Cheese.CameraDevice> get_camera_devices ();
public unowned Cheese.VideoFormat get_current_video_format ();
public int get_num_camera_devices ();
public unowned Cheese.CameraDevice get_selected_device ();
--
GitLab

View File

@ -1,32 +0,0 @@
Taken from upstream:
https://gitlab.gnome.org/GNOME/glade/-/commit/eb0429d318c017b57b9e59de1d5b3f142a0f455e.
From 6cf1d3e11d4f8035f33c3003d33f6465896025a5 Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Marco=20Trevisan=20=28Trevi=C3=B1o=29?= <mail@3v1n0.net>
Date: Tue, 18 May 2021 19:54:50 +0200
Subject: [PATCH] plugins: Define an invalid but non-null file path as script
path
This is following the gjs applications behaviors, setting a valid string
as the script path that will be shown in JS stack traces, even though
won't load a real file through g_file_new_for_commandline_arg()
---
plugins/gjs/glade-gjs.c | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/plugins/gjs/glade-gjs.c b/plugins/gjs/glade-gjs.c
index e1779665..aeae9906 100644
--- a/plugins/gjs/glade-gjs.c
+++ b/plugins/gjs/glade-gjs.c
@@ -93,7 +93,7 @@ glade_gjs_init (const gchar *name)
/* Importing the module will create all the GTypes so that glade can use them at runtime */
retval = gjs_context_eval (gjs_context_get_current (),
- import_sentence, -1, NULL,
+ import_sentence, -1, "<glade-gjs>",
&exit_status,
&error);
if (!retval && error)
--
GitLab

View File

@ -1,30 +0,0 @@
Taken from upstream:
https://gitlab.gnome.org/GNOME/glade/-/commit/6cf1d3e11d4f8035f33c3003d33f6465896025a5.
From eb0429d318c017b57b9e59de1d5b3f142a0f455e Mon Sep 17 00:00:00 2001
From: =?UTF-8?q?Marco=20Trevisan=20=28Trevi=C3=B1o=29?= <mail@3v1n0.net>
Date: Wed, 19 May 2021 00:10:29 +0200
Subject: [PATCH] tests: Do not create a file icon when no filename is provided
This would fail otherwise as GFileIcon requires a GFile parameter on
construction.
---
tests/create-widgets.c | 2 ++
1 file changed, 2 insertions(+)
diff --git a/tests/create-widgets.c b/tests/create-widgets.c
index 2094059d..db8311f8 100644
--- a/tests/create-widgets.c
+++ b/tests/create-widgets.c
@@ -106,6 +106,8 @@ main (int argc,
if (G_TYPE_IS_INSTANTIATABLE (adaptor_type) && !G_TYPE_IS_ABSTRACT (adaptor_type) &&
/* FIXME: can not create a themed icon without a name */
!g_type_is_a (adaptor_type, G_TYPE_THEMED_ICON) &&
+ /* FIXME: can not create a file icon without a file name */
+ !g_type_is_a (adaptor_type, G_TYPE_FILE_ICON) &&
/* FIXME: GtkPopoverMenu gives a few warnings */
!g_type_is_a (adaptor_type, GTK_TYPE_POPOVER_MENU) &&
/* FIXME: GtkFileChooserNative is hard to test here */
--
GitLab

View File

@ -1,163 +0,0 @@
Taken from nixpkgs, see
grantleetheme: merge themes across multiple prefixes
<https://github.com/NixOS/nixpkgs/commits/master/pkgs/applications/kde/grantleetheme/grantlee-merge-theme-dirs.patch>
diff --git a/src/grantleetheme.cpp b/src/grantleetheme.cpp
index 27d5bc8..8d43140 100644
--- a/src/grantleetheme.cpp
+++ b/src/grantleetheme.cpp
@@ -46,7 +46,7 @@ ThemePrivate::ThemePrivate(const ThemePrivate &other)
, description(other.description)
, name(other.name)
, dirName(other.dirName)
- , absolutePath(other.absolutePath)
+ , absolutePaths(other.absolutePaths)
, author(other.author)
, email(other.email)
, loader(other.loader)
@@ -64,12 +64,15 @@ void ThemePrivate::setupEngine()
void ThemePrivate::setupLoader()
{
- // Get the parent dir with themes, we set the theme directory separately
- QDir dir(absolutePath);
- dir.cdUp();
+ QStringList templateDirs;
+ for (const QString& path : absolutePaths) {
+ QDir dir(path);
+ dir.cdUp();
+ templateDirs << dir.absolutePath();
+ }
loader = QSharedPointer<GrantleeTheme::QtResourceTemplateLoader>::create();
- loader->setTemplateDirs({ dir.absolutePath() });
+ loader->setTemplateDirs(templateDirs);
loader->setTheme(dirName);
if (!sEngine) {
@@ -121,7 +124,7 @@ Theme::Theme(const QString &themePath, const QString &dirName, const QString &de
KConfigGroup group(&config, QStringLiteral("Desktop Entry"));
if (group.isValid()) {
d->dirName = dirName;
- d->absolutePath = themePath;
+ d->absolutePaths = QStringList(themePath);
d->name = group.readEntry("Name", QString());
d->description = group.readEntry("Description", QString());
d->themeFileName = group.readEntry("FileName", QString());
@@ -140,7 +143,7 @@ Theme::~Theme()
bool Theme::operator==(const Theme &other) const
{
- return isValid() && other.isValid() && d->absolutePath == other.absolutePath();
+ return isValid() && other.isValid() && d->absolutePaths == other.absolutePaths();
}
Theme &Theme::operator=(const Theme &other)
@@ -184,7 +187,15 @@ QString Theme::dirName() const
QString Theme::absolutePath() const
{
- return d->absolutePath;
+ if (! d->absolutePaths.isEmpty()) {
+ return d->absolutePaths.first();
+ };
+ return QString();
+}
+
+QStringList Theme::absolutePaths() const
+{
+ return d->absolutePaths;
}
QString Theme::author() const
@@ -223,6 +231,13 @@ QString Theme::render(const QString &templateName, const QVariantHash &data, con
return result;
}
+void Theme::addThemeDir(const QString& path)
+{
+ QDir dir(path);
+ dir.cdUp();
+ d->absolutePaths << dir.absolutePath();
+}
+
void Theme::addPluginPath(const QString &path)
{
if (!ThemePrivate::sEngine) {
diff --git a/src/grantleetheme.h b/src/grantleetheme.h
index a25c27b..be38299 100644
--- a/src/grantleetheme.h
+++ b/src/grantleetheme.h
@@ -48,11 +48,14 @@ public:
Q_REQUIRED_RESULT QStringList displayExtraVariables() const;
Q_REQUIRED_RESULT QString dirName() const;
Q_REQUIRED_RESULT QString absolutePath() const;
+ Q_REQUIRED_RESULT QStringList absolutePaths() const;
Q_REQUIRED_RESULT QString author() const;
Q_REQUIRED_RESULT QString authorEmail() const;
Q_REQUIRED_RESULT QString render(const QString &templateName, const QVariantHash &data, const QByteArray &applicationDomain = QByteArray());
+ void addThemeDir(const QString&);
+
static void addPluginPath(const QString &path);
private:
diff --git a/src/grantleetheme_p.h b/src/grantleetheme_p.h
index eb73dcb..00510e9 100644
--- a/src/grantleetheme_p.h
+++ b/src/grantleetheme_p.h
@@ -43,7 +43,7 @@ public:
QString description;
QString name;
QString dirName;
- QString absolutePath;
+ QStringList absolutePaths;
QString author;
QString email;
diff --git a/src/grantleethememanager.cpp b/src/grantleethememanager.cpp
index 606d717..dc99041 100644
--- a/src/grantleethememanager.cpp
+++ b/src/grantleethememanager.cpp
@@ -125,25 +125,18 @@ public:
for (const QString &directory : qAsConst(themesDirectories)) {
QDirIterator dirIt(directory, QStringList(), QDir::AllDirs | QDir::NoDotAndDotDot);
- QStringList alreadyLoadedThemeName;
while (dirIt.hasNext()) {
dirIt.next();
const QString dirName = dirIt.fileName();
GrantleeTheme::Theme theme = q->loadTheme(dirIt.filePath(), dirName, defaultDesktopFileName);
if (theme.isValid()) {
QString themeName = theme.name();
- if (alreadyLoadedThemeName.contains(themeName)) {
- int i = 2;
- const QString originalName(theme.name());
- while (alreadyLoadedThemeName.contains(themeName)) {
- themeName = originalName + QStringLiteral(" (%1)").arg(i);
- ++i;
- }
- theme.d->name = themeName;
+ QMap<QString, GrantleeTheme::Theme>::iterator i = themes.find(dirName);
+ if (i != themes.end()) {
+ i.value().addThemeDir(dirIt.filePath());
+ } else {
+ themes.insert(dirName, theme);
}
- alreadyLoadedThemeName << themeName;
- themes.insert(dirName, theme);
- //qDebug()<<" theme.name()"<<theme.name();
}
}
watch->addDir(directory);
@@ -366,7 +359,7 @@ QString ThemeManager::pathFromThemes(const QString &themesRelativePath, const QS
GrantleeTheme::Theme theme = loadTheme(dirIt.filePath(), dirName, defaultDesktopFileName);
if (theme.isValid()) {
if (dirName == themeName) {
- return theme.absolutePath();
+ return theme.absolutePaths().first();
}
}
}

View File

@ -1,15 +0,0 @@
Add placeholder for kinit's store file name.
diff --git a/src/kdeinitinterface.cpp b/src/kdeinitinterface.cpp
index 22fa5e5..3d40937 100644
--- a/src/kdeinitinterface.cpp
+++ b/src/kdeinitinterface.cpp
@@ -52,7 +52,7 @@ void KDEInitInterface::ensureKdeinitRunning()
// If not found in system paths, search other paths
if (srv.isEmpty()) {
const QStringList searchPaths = QStringList()
- << QCoreApplication::applicationDirPath() // then look where our application binary is located
+ << QString::fromUtf8("@SUBSTITUTEME@/bin") // using QStringLiteral would be more efficient, but breaks guix store reference detection.
<< QLibraryInfo::location(QLibraryInfo::BinariesPath); // look where exec path is (can be set in qt.conf)
srv = QStandardPaths::findExecutable(QStringLiteral("kdeinit5"), searchPaths);
if (srv.isEmpty()) {

View File

@ -21,27 +21,6 @@ pkgs/development/libraries/kde-frameworks/kinit/kdeinit-extra_libs.patch
#endif
};
#endif
@@ -1533,20 +1531,6 @@ static int initXconnection()
}
#endif
-#ifndef Q_OS_OSX
-// Find a shared lib in the lib dir, e.g. libkio.so.
-// Completely unrelated to plugins.
-static QString findSharedLib(const QString &lib)
-{
- QString path = QFile::decodeName(CMAKE_INSTALL_PREFIX "/" LIB_INSTALL_DIR "/") + lib;
- if (QFile::exists(path)) {
- return path;
- }
- // We could also look in LD_LIBRARY_PATH, but really, who installs the main libs in different prefixes?
- return QString();
-}
-#endif
-
extern "C" {
static void secondary_child_handler(int)
@@ -1673,7 +1673,7 @@
#if defined(Q_OS_UNIX) && !defined(Q_OS_OSX)
if (!d.suicide && qEnvironmentVariableIsEmpty("KDE_IS_PRELINKED")) {

View File

@ -1,37 +0,0 @@
Search libraries in GUIX_KF5INIT_LIB_PATH.
Based on an idea by NixOs
pkgs/development/libraries/kde-frameworks/kinit/kinit-libpath.patch
===================================================================
--- kinit-5.32.0/src/kdeinit/kinit.cpp.orig 2017-10-22 21:02:20.908765455 +0200
+++ kinit-5.32.0/src/kdeinit/kinit.cpp 2017-10-22 21:03:25.312818248 +0200
@@ -623,20 +623,18 @@
if (libpath_relative) {
// NB: Because Qt makes the actual dlopen() call, the
// RUNPATH of kdeinit is *not* respected - see
// https://sourceware.org/bugzilla/show_bug.cgi?id=13945
// - so we try hacking it in ourselves
- QString install_lib_dir = QFile::decodeName(
- CMAKE_INSTALL_PREFIX "/" LIB_INSTALL_DIR "/");
- QString orig_libpath = libpath;
- libpath = install_lib_dir + libpath;
- l.setFileName(libpath);
- if (!l.load()) {
- libpath = orig_libpath;
- l.setFileName(libpath);
- l.load();
- }
+ // Try to load the library relative to the active profiles.
+ QByteArrayList profiles = qgetenv("KDEINIT5_LIBRARY_PATH").split(':');
+ for (const QByteArray &profile: profiles) {
+ if (!profile.isEmpty()) {
+ l.setFileName(QFile::decodeName(profile) + QStringLiteral("/") + libpath);
+ if (l.load()) break;
+ }
+ }
} else {
l.load();
}
if (!l.isLoaded()) {
QString ltdlError(l.errorString());

View File

@ -1,30 +1,24 @@
Adopted from NixOS
pkgs/development/libraries/kde-frameworks/kio/samba-search-path.patch
From af54a2a37655df26a33bc6783cb472c38f65322f Mon Sep 17 00:00:00 2001
From: Thomas Tuegel <ttuegel@mailbox.org>
Date: Sun, 28 Mar 2021 10:31:12 -0500
Subject: [PATCH 1/2] Remove impure smbd search path
===================================================================
--- kio-5.17.0.orig/src/core/ksambashare.cpp
+++ kio-5.17.0/src/core/ksambashare.cpp
@@ -67,13 +67,18 @@ KSambaSharePrivate::~KSambaSharePrivate(
---
src/core/ksambashare.cpp | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/core/ksambashare.cpp b/src/core/ksambashare.cpp
index e810ce4..7cfb4e6 100644
--- a/src/core/ksambashare.cpp
+++ b/src/core/ksambashare.cpp
@@ -61,7 +61,7 @@ KSambaSharePrivate::~KSambaSharePrivate()
bool KSambaSharePrivate::isSambaInstalled()
{
- if (QFile::exists(QStringLiteral("/usr/sbin/smbd"))
- || QFile::exists(QStringLiteral("/usr/local/sbin/smbd"))) {
- return true;
+ const QByteArray pathEnv = qgetenv("PATH");
+ if (!pathEnv.isEmpty()) {
+ QLatin1Char pathSep(':');
+ QStringList paths = QFile::decodeName(pathEnv).split(pathSep, QString::SkipEmptyParts);
+ for (QStringList::iterator it = paths.begin(); it != paths.end(); ++it) {
+ it->append(QStringLiteral("/smbd"));
+ if (QFile::exists(*it)) {
+ return true;
+ }
+ }
const bool daemonExists =
- !QStandardPaths::findExecutable(QStringLiteral("smbd"), {QStringLiteral("/usr/sbin/"), QStringLiteral("/usr/local/sbin/")}).isEmpty();
+ !QStandardPaths::findExecutable(QStringLiteral("smbd")).isEmpty();
if (!daemonExists) {
qCDebug(KIO_CORE_SAMBASHARE) << "KSambaShare: Could not find smbd";
}
- //qDebug() << "Samba is not installed!";
-
return false;
}
--
2.30.1

View File

@ -1,41 +0,0 @@
From 6b0a3a60870499b20ce9ae2ea07cbc5ee53cbdd2 Mon Sep 17 00:00:00 2001
From: Hartmut Goebel <h.goebel@crazy-compilers.com>
Date: Tue, 21 Jan 2020 23:23:38 +0100
Subject: [PATCH] Fix missing link libraries.
See <https://phabricator.kde.org/D26821>
These are only actually missing if the libraries reside in different
prefixes, as it is the case in Guix or Nix.
---
agents/archivemailagent/CMakeLists.txt | 1 +
agents/followupreminderagent/CMakeLists.txt | 1 +
2 files changed, 2 insertions(+)
diff --git a/agents/archivemailagent/CMakeLists.txt b/agents/archivemailagent/CMakeLists.txt
index 95c6249de..d0ddcd475 100644
--- a/agents/archivemailagent/CMakeLists.txt
+++ b/agents/archivemailagent/CMakeLists.txt
@@ -22,6 +22,7 @@ ki18n_wrap_ui(libarchivemailagent_SRCS ui/archivemailwidget.ui )
add_library(archivemailagent STATIC ${libarchivemailagent_SRCS})
target_link_libraries(archivemailagent
KF5::MailCommon
+ KF5::Libkdepim
KF5::I18n
KF5::Notifications
KF5::KIOWidgets
diff --git a/agents/followupreminderagent/CMakeLists.txt b/agents/followupreminderagent/CMakeLists.txt
index 9ae7eaa29..527044807 100644
--- a/agents/followupreminderagent/CMakeLists.txt
+++ b/agents/followupreminderagent/CMakeLists.txt
@@ -27,6 +27,7 @@ target_link_libraries(followupreminderagent
KF5::AkonadiMime
KF5::AkonadiAgentBase
KF5::DBusAddons
+ KF5::FollowupReminder
KF5::XmlGui
KF5::KIOWidgets
KF5::Notifications
--
2.21.1

View File

@ -1,57 +0,0 @@
Index: b/src/moz-sdk/prcpucfg.h
===================================================================
--- a/src/moz-sdk/prcpucfg.h
+++ b/src/moz-sdk/prcpucfg.h
@@ -288,6 +288,52 @@
#define PR_BYTES_PER_WORD_LOG2 3
#define PR_BYTES_PER_DWORD_LOG2 3
+#elif defined(__aarch64__)
+
+#define IS_LITTLE_ENDIAN 1
+#undef IS_BIG_ENDIAN
+#define IS_64
+
+#define PR_BYTES_PER_BYTE 1
+#define PR_BYTES_PER_SHORT 2
+#define PR_BYTES_PER_INT 4
+#define PR_BYTES_PER_INT64 8
+#define PR_BYTES_PER_LONG 8
+#define PR_BYTES_PER_FLOAT 4
+#define PR_BYTES_PER_DOUBLE 8
+#define PR_BYTES_PER_WORD 8
+#define PR_BYTES_PER_DWORD 8
+
+#define PR_BITS_PER_BYTE 8
+#define PR_BITS_PER_SHORT 16
+#define PR_BITS_PER_INT 32
+#define PR_BITS_PER_INT64 64
+#define PR_BITS_PER_LONG 64
+#define PR_BITS_PER_FLOAT 32
+#define PR_BITS_PER_DOUBLE 64
+#define PR_BITS_PER_WORD 64
+
+#define PR_BITS_PER_BYTE_LOG2 3
+#define PR_BITS_PER_SHORT_LOG2 4
+#define PR_BITS_PER_INT_LOG2 5
+#define PR_BITS_PER_INT64_LOG2 6
+#define PR_BITS_PER_LONG_LOG2 6
+#define PR_BITS_PER_FLOAT_LOG2 5
+#define PR_BITS_PER_DOUBLE_LOG2 6
+#define PR_BITS_PER_WORD_LOG2 6
+
+#define PR_ALIGN_OF_SHORT 2
+#define PR_ALIGN_OF_INT 4
+#define PR_ALIGN_OF_LONG 8
+#define PR_ALIGN_OF_INT64 8
+#define PR_ALIGN_OF_FLOAT 4
+#define PR_ALIGN_OF_DOUBLE 8
+#define PR_ALIGN_OF_POINTER 8
+#define PR_ALIGN_OF_WORD 8
+
+#define PR_BYTES_PER_WORD_LOG2 3
+#define PR_BYTES_PER_DWORD_LOG2 3
+
#elif defined(__mc68000__)
#undef IS_LITTLE_ENDIAN

View File

@ -1,42 +0,0 @@
From 3def65075c09af4961cd399e8e78ed78cca72e65 Mon Sep 17 00:00:00 2001
From: Wolfgang Bauer <wbauer@tmo.at>
Date: Wed, 11 Oct 2017 22:16:02 +0200
Subject: [PATCH] Fix build with Qt 5.9
Summary:
moc 5.9 errors out when building:
Error: Plugin Metadata file "" could not be opened: file to open is a directory
Same issue and fix as https://phabricator.kde.org/D5392 for khtml.
CCBUG: 377490
Test Plan: builds fine now with Qt 5.9.0rc and also earlier versions.
Reviewers: vriezen, pino
Reviewed By: pino
Subscribers: pino
Differential Revision: https://phabricator.kde.org/D5985
---
src/kmplayer_part.h | 2 +-
1 file changed, 1 insertion(+), 1 deletion(-)
diff --git a/src/kmplayer_part.h b/src/kmplayer_part.h
index f90f85d..0fddbaa 100644
--- a/src/kmplayer_part.h
+++ b/src/kmplayer_part.h
@@ -36,7 +36,7 @@ namespace KMPlayer {
class KMPlayerFactory : public KPluginFactory {
Q_OBJECT
- Q_PLUGIN_METADATA(IID "org.kde.KPluginFactory" FILE "")
+ Q_PLUGIN_METADATA(IID "org.kde.KPluginFactory")
Q_INTERFACES(KPluginFactory)
public:
KMPlayerFactory();
--
2.14.2

View File

@ -1,13 +0,0 @@
diff --git a/src/kpackage/package.cpp b/src/kpackage/package.cpp
index 5aec9fd..b15c933 100644
--- a/src/kpackage/package.cpp
+++ b/src/kpackage/package.cpp
@@ -820,7 +820,7 @@ PackagePrivate::PackagePrivate()
: QSharedData(),
fallbackPackage(nullptr),
metadata(nullptr),
- externalPaths(false),
+ externalPaths(true),
valid(false),
checkedValid(false)
{

View File

@ -1,25 +0,0 @@
From 668010ebc9fd84d9dc60f90b9a4ebf3c7054977f Mon Sep 17 00:00:00 2001
From: Hartmut Goebel <h.goebel@crazy-compilers.com>
Date: Sun, 25 Oct 2020 20:11:13 +0000
Subject: [PATCH] Fix build errors if PREFIX is different from ECM's PREFIX.
See <https://bugs.kde.org/424483> for details.
---
KF5PackageMacros.cmake | 3 +--
1 file changed, 1 insertion(+), 2 deletions(-)
diff --git a/KF5PackageMacros.cmake b/KF5PackageMacros.cmake
index f4c1d1d..acd3798 100644
--- a/KF5PackageMacros.cmake
+++ b/KF5PackageMacros.cmake
@@ -1,6 +1,5 @@
-find_package(ECM 1.6.0 CONFIG REQUIRED)
-include(${ECM_KDE_MODULE_DIR}/KDEInstallDirs.cmake)
+include(KDEInstallDirs)
set(KPACKAGE_RELATIVE_DATA_INSTALL_DIR "kpackage")
--
GitLab

View File

@ -1,59 +1,23 @@
From 732861dda9c466841a09329a0b2c992f2b78c40a Mon Sep 17 00:00:00 2001
From: Hartmut Goebel <h.goebel@crazy-compilers.com>
Date: Tue, 21 Jan 2020 23:15:23 +0100
Subject: [PATCH] Fix missing link libraries.
See <https://phabricator.kde.org/D26818>
These are only actually missing if the libraries reside in different
prefixes, as it is the case in Guix or Nix.
---
src/ksieveui/autocreatescripts/tests/CMakeLists.txt | 2 ++
src/ksieveui/scriptsparsing/autotests/CMakeLists.txt | 2 +-
src/ksieveui/scriptsparsing/tests/CMakeLists.txt | 8 ++++++--
3 files changed, 9 insertions(+), 3 deletions(-)
diff --git a/src/ksieveui/autocreatescripts/tests/CMakeLists.txt b/src/ksieveui/autocreatescripts/tests/CMakeLists.txt
index 8a482b4..c43216c 100644
--- a/src/ksieveui/autocreatescripts/tests/CMakeLists.txt
+++ b/src/ksieveui/autocreatescripts/tests/CMakeLists.txt
@@ -15,6 +16,7 @@ set(parsingscript_gui_SRCS parsingscript_gui.cpp ../../tests/capability.cpp)
add_executable(parsingscript_gui ${parsingscript_gui_SRCS})
target_link_libraries(parsingscript_gui
KF5::KIOCore
+ KF5::SyntaxHighlighting
KF5::KSieveUi
KF5::KSieve
KF5::PimCommon
diff --git a/src/ksieveui/scriptsparsing/autotests/CMakeLists.txt b/src/ksieveui/scriptsparsing/autotests/CMakeLists.txt
index e41a74e..31703ef 100644
--- a/src/ksieveui/scriptsparsing/autotests/CMakeLists.txt
+++ b/src/ksieveui/scriptsparsing/autotests/CMakeLists.txt
@@ -5,7 +5,7 @@ macro(add_sieveeditor_xmlprintingscriptbuilding _source _extrasource)
ecm_add_test(${_test}
TEST_NAME ${_name}
NAME_PREFIX "sieveeditor-xmlprintingscriptbuilding-"
- LINK_LIBRARIES Qt5::Test KF5::I18n KF5::KSieveUi
+ LINK_LIBRARIES Qt5::Test KF5::I18n KF5::KSieveUi KF5::SyntaxHighlighting
)
endmacro()
add_sieveeditor_xmlprintingscriptbuilding(xmlprintingscriptbuildertest.cpp "" "")
diff --git a/src/ksieveui/scriptsparsing/tests/CMakeLists.txt b/src/ksieveui/scriptsparsing/tests/CMakeLists.txt
index a252039..99a1aaa 100644
--- a/src/ksieveui/scriptsparsing/tests/CMakeLists.txt
+++ b/src/ksieveui/scriptsparsing/tests/CMakeLists.txt
@@ -9,5 +9,9 @@ set(xmlsieveparsing_SRCS
)
add_executable(xmlsieveparsing ${xmlsieveparsing_SRCS} )
-target_link_libraries(xmlsieveparsing KF5::KSieveUi KF5::KSieve KF5::I18n)
-
+target_link_libraries(xmlsieveparsing
+ KF5::KSieveUi
+ KF5::SyntaxHighlighting
+ KF5::KSieve
+ KF5::I18n
+)
--
2.21.1
diff --git a/src/ksieveui/CMakeLists.txt b/src/ksieveui/CMakeLists.txt
--- a/src/ksieveui/CMakeLists.txt
+++ b/src/ksieveui/CMakeLists.txt
@@ -255,6 +255,7 @@ target_link_libraries(KF5KSieveUi
KF5::KManageSieve
KF5::KSieve
KF5::PimCommon
+ KF5::SyntaxHighlighting
PRIVATE
KF5::Libkdepim
KF5::Archive
@@ -269,7 +270,6 @@ target_link_libraries(KF5KSieveUi
KF5::I18n
KF5::SonnetUi
Qt::PrintSupport
- KF5::SyntaxHighlighting
)
set_target_properties(KF5KSieveUi PROPERTIES
--
2.33.0

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

@ -1,25 +0,0 @@
From ff5ed26f21d304e867ab57781878069567deb23d Mon Sep 17 00:00:00 2001
From: Hartmut Goebel <h.goebel@crazy-compilers.com>
Date: Mon, 3 Aug 2020 19:49:58 +0000
Subject: [PATCH] Fix build errors if PREFIX is different from ECM's PREFIX.
See <https://bugs.kde.org/424483> for details
---
KF5PlasmaMacros.cmake | 3 +--
1 file changed, 1 insertion(+), 2 deletions(-)
diff --git a/KF5PlasmaMacros.cmake b/KF5PlasmaMacros.cmake
index 494b42d56..80b3fd8dd 100644
--- a/KF5PlasmaMacros.cmake
+++ b/KF5PlasmaMacros.cmake
@@ -1,6 +1,5 @@
-find_package(ECM 1.6.0 CONFIG REQUIRED)
-include(${ECM_KDE_MODULE_DIR}/KDEInstallDirs.cmake)
+include(KDEInstallDirs)
set(PLASMA_RELATIVE_DATA_INSTALL_DIR "plasma")
set(PLASMA_DATA_INSTALL_DIR "${KDE_INSTALL_DATADIR}/${PLASMA_RELATIVE_DATA_INSTALL_DIR}")
--
GitLab

View File

@ -204,17 +204,6 @@ cameras (CRW/CR2, NEF, RAF, DNG, and others).")
;; both two licensing modes for your changes/additions."
(license (list license:lgpl2.1 license:cddl1.0))))
(define-public libraw-0.18
(package (inherit libraw)
(name "libraw")
(version "0.18.12")
(source (origin
(method url-fetch)
(uri (string-append "https://www.libraw.org/data/LibRaw-"
version ".tar.gz"))
(sha256
(base32
"1m2khr2cij8z6lawgbmdksjn14fpnjsy8ad4qahnpqapm1slsxap"))))))
(define-public libexif
(package

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

@ -743,6 +743,25 @@ variables into the markdown template")
Markdown. All extensions are found under the module namespace of pymdownx.")
(license license:expat)))
(define-public python-plotille
(package
(name "python-plotille")
(version "4.0.2")
(source (origin
(method url-fetch)
(uri (pypi-uri "plotille" version))
(sha256
(base32
"0fvsk6glxfphhqy405h05rj3v95jd1byl5hv2fyd5l31wln23shj"))))
(build-system python-build-system)
(native-inputs (list python-six))
(home-page "https://github.com/tammoippen/plotille")
(synopsis "Plot in the terminal using braille dots")
(description
"Plotille provides a figure class and graphing functions to create plots,
scatter plots, histograms and heatmaps in the terminal using braille dots.")
(license license:expat)))
(define-public python-mdx-gh-links
(package
(name "python-mdx-gh-links")
@ -2796,14 +2815,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))
@ -14597,43 +14616,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")
@ -21704,6 +21686,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")
@ -29404,6 +29401,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

@ -1945,59 +1945,76 @@ defined radio with support for rtl-sdr.")
(license license:gpl2+)))
(define-public csdr
;; No release since 2017, use commit directly.
(let ((commit "6ef2a74206887155290a54c7117636f66742f858")
(revision "1"))
(package
(name "csdr")
(version (git-version "0.15" revision commit))
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/ha7ilm/csdr")
(commit commit)))
(file-name (git-file-name name version))
(sha256
(base32 "0ic35130lf66lk3wawgc5bcg711l7chv9al1hzdc1xrmq9qf9hri"))))
(build-system gnu-build-system)
(inputs
(list fftwf))
(arguments
`(#:make-flags
(list (string-append "PREFIX=" (assoc-ref %outputs "out"))
;; Don't print summary of SIMD optimized functions.
"PARSEVECT=no")
#:tests? #f ; No check phase
#:phases
(modify-phases %standard-phases
(replace 'configure
(lambda* (#:key outputs #:allow-other-keys)
(substitute* "Makefile"
(("PARAMS_MISC = -Wno-unused-result" all)
;; The 'validate-runpath' phase fails without this.
(string-append
all " -Wl,-rpath=" (assoc-ref outputs "out") "/lib"))
(("PARAMS_SIMD =.*")
;; Disable to make reproducibility and cross-compilation work.
"")
(("gcc ")
,(string-append (cc-for-target) " "))
(("g\\+\\+ ")
,(string-append (cxx-for-target) " ")))))
(add-before 'install 'make-installation-directories
(lambda* (#:key outputs #:allow-other-keys)
(let ((out (assoc-ref outputs "out")))
(mkdir-p (string-append out "/bin"))
(mkdir-p (string-append out "/lib"))))))))
(home-page "https://github.com/ha7ilm/csdr")
(synopsis "DSP for software defined radio")
(description
"This package includes the @code{libcsdr} library of
(package
(name "csdr")
(version "0.18.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/jketterl/csdr")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "0sdni0p9qcf4yw1wf5jz1pyb9wv6wmdblirh2q6s7jblh50vfwz1"))))
(build-system cmake-build-system)
(native-inputs
(list pkg-config))
(inputs
(list fftwf libsamplerate))
(arguments
(list #:tests? #f)) ; No check phase
(home-page "https://github.com/jketterl/csdr")
(synopsis "DSP for software defined radio")
(description
"This package includes the @code{libcsdr} library of
@acronym{DSP, Digital Signal Processing} functions for
@acronym{SDRs, Software Defined Radios}, and the @code{csdr} command line
program that can be used to build simple signal processing flow graphs.")
(license license:gpl3+))))
(license license:gpl3+)))
(define-public convert-samples
(package
(name "convert-samples")
(version "3.0.0")
(source
(origin
(method git-fetch)
(uri (git-reference
(url "https://github.com/glv2/convert-samples")
(commit (string-append "v" version))))
(file-name (git-file-name name version))
(sha256
(base32 "1d9w9m5agi8fiv1wk8nhjrbm2jkm2fks4ymbxkn0xphbwj3gwr7i"))))
(build-system gnu-build-system)
(native-inputs
(list autoconf automake))
(inputs
(list liquid-dsp))
(synopsis "SDR samples converter")
(description
"@code{convert-samples} is a command-line program to convert samples
received from software defined radios from one format to another.
Supported formats:
@itemize
@item s8: signed 8 bit integer
@item u8: unsigned 8 bit integer
@item s16: signed 16 bit integer
@item u16: unsigned 16 bit integer
@item s32: signed 32 bit integer
@item u32: unsigned 32 bit integer
@item f32: 32 bit float
@item cs8: complex made of signed 8 bit integers
@item cu8: complex made of unsigned 8 bit integers
@item cs16: complex made of signed 16 bit integers
@item cu16: complex made of unsigned 16 bit integers
@item cs32: complex made of signed 32 bit integers
@item cu32: complex made of unsigned 32 bit integers
@item cf32: complex made of 32 bit floats
@end itemize")
(home-page "https://github.com/glv2/convert-samples")
(license license:gpl3+)))
(define-public serialdv
(package

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

@ -543,7 +543,7 @@ directory.")
(define-public guile-sdl
(package
(name "guile-sdl")
(version "0.5.3")
(version "0.6.1")
(source (origin
(method url-fetch)
(uri
@ -551,7 +551,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

@ -10340,6 +10340,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

@ -1547,6 +1547,9 @@ also walk each side of a merge and test those changes individually.")
(assoc-ref inputs "inetutils")
"/bin/logger\"")))
(substitute* "src/lib/Gitolite/Cache.pm"
(("/usr/sbin/redis-server") "redis-server"))
(substitute* "src/commands/svnserve"
(("/usr/bin/svnserve") "svnserve"))))
(replace 'install
@ -2458,7 +2461,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
@ -2466,7 +2469,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

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

View File

@ -22,6 +22,7 @@
#:use-module (ice-9 rdelim)
#:use-module (ice-9 vlist)
#:use-module (srfi srfi-1)
#:use-module (srfi srfi-26)
#:use-module (srfi srfi-34)
#:use-module (srfi srfi-35)
#:use-module (guix i18n)
@ -426,6 +427,34 @@ each line except the first one (they're assumed to be already there)."
(display (make-string indent #\space) port)
(loop tail)))))
(define %symbols-followed-by-octal-integers
;; Symbols for which the following integer must be printed as octal.
'(chmod umask mkdir mkstemp))
(define %symbols-followed-by-hexadecimal-integers
;; Likewise, for hexadecimal integers.
'(logand logior logxor lognot))
(define (integer->string integer context)
"Render INTEGER as a string using a base suitable based on CONTEXT."
(define base
(match context
((head . tail)
(cond ((memq head %symbols-followed-by-octal-integers) 8)
((memq head %symbols-followed-by-hexadecimal-integers)
(if (any (cut memq <> %symbols-followed-by-octal-integers)
tail)
8
16))
(else 10)))
(_ 10)))
(string-append (match base
(10 "")
(16 "#x")
(8 "#o"))
(number->string integer base)))
(define* (pretty-print-with-comments port obj
#:key
(format-comment
@ -661,9 +690,12 @@ FORMAT-VERTICAL-SPACE; a useful value of 'canonicalize-vertical-space'."
(display ")" port)
(+ column 1)))))
(_
(let* ((str (if (string? obj)
(escaped-string obj)
(object->string obj)))
(let* ((str (cond ((string? obj)
(escaped-string obj))
((integer? obj)
(integer->string obj context))
(else
(object->string obj))))
(len (string-width str)))
(if (and (> (+ column 1 len) max-width)
(not delimited?))

View File

@ -146,6 +146,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,
@ -155,6 +156,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

@ -35,7 +35,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)
@ -374,8 +373,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~%")))

View File

@ -247,6 +247,14 @@ mnopqrstuvwxyz.\")"
(+ a b))))
(list x y z))")
(test-pretty-print "\
(begin
(chmod \"foo\" #o750)
(chmod port
(logand #o644
(lognot (umask))))
(logand #x7f xyz))")
(test-pretty-print "\
(substitute-keyword-arguments (package-arguments x)
((#:phases phases)