Merge remote-tracking branch 'origin/master' into kde-updates

This commit is contained in:
宋文武 2023-08-17 18:38:23 +08:00
commit 0ffbdf3456
No known key found for this signature in database
GPG key ID: D415BF253B515976
123 changed files with 31513 additions and 5513 deletions

View file

@ -5,7 +5,7 @@
;;; Copyright © 2015-2017, 2019, 2021-2022 Ludovic Courtès <ludo@gnu.org>
;;; Copyright © 2015, 2017, 2018, 2019, 2021, 2022, 2023 Ricardo Wurmus <rekado@elephly.net>
;;; Copyright © 2015 David Hashe <david.hashe@dhashe.com>
;;; Copyright © 2016, 2017, 2019, 2021, 2022 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2016, 2017, 2019, 2021-2023 Efraim Flashner <efraim@flashner.co.il>
;;; Copyright © 2016 Kei Kebreau <kkebreau@posteo.net>
;;; Copyright © 2017 Nikita <nikita@n0.is>
;;; Copyright © 2017, 2018 Mark H Weaver <mhw@netris.org>
@ -339,7 +339,7 @@ tests.")
(define-public malcontent
(package
(name "malcontent")
(version "0.8.0")
(version "0.11.1")
(source
(origin
(method git-fetch)
@ -348,7 +348,7 @@ tests.")
(commit version)))
(file-name (git-file-name name version))
(sha256
(base32 "0vnf0pk516fwwh41v96c29l2i7h1pnwhivlkbf53kkx1q35g7lb3"))))
(base32 "0g622ig5ffrzk9184xff3lardk7rnmkvj8y5g6h6s41bfh51b71m"))))
(build-system meson-build-system)
(arguments
`(#:glib-or-gtk? #t
@ -359,25 +359,26 @@ tests.")
(lambda _
(substitute* "libmalcontent/tests/app-filter.c"
(("g_test_add_func \\(\"/app-filter/appinfo\", test_app_filter_appinfo\\);")
""))
#t)))))
"")))))))
(native-inputs
`(("desktop-file-utils" ,desktop-file-utils)
("gettext" ,gettext-minimal)
("glib:bin" ,glib "bin")
("gobject-introspection" ,gobject-introspection)
("gtk+:bin" ,gtk+ "bin")
("itstool" ,itstool)
("libglib-testing" ,libglib-testing)
("libxml2" ,libxml2)
("pkg-config" ,pkg-config)))
(list desktop-file-utils
gettext-minimal
`(,glib "bin")
gobject-introspection
`(,gtk "bin")
itstool
libglib-testing
libxml2
pkg-config))
(inputs
(list accountsservice
appstream
appstream-glib
dbus
flatpak
glib
gtk+
gtk
libadwaita
libostree
linux-pam
polkit))
@ -644,7 +645,7 @@ the freedesktop.org XDG Base Directory specification.")
(define-public elogind
(package
(name "elogind")
(version "246.10")
(version "252.9")
(source (origin
(method git-fetch)
(uri (git-reference
@ -653,25 +654,30 @@ the freedesktop.org XDG Base Directory specification.")
(file-name (git-file-name name version))
(sha256
(base32
"16045bhpwjq2nqgswln67ipg1zrz2djxlgkfngqng3jqpwagmnzq"))
(patches (search-patches
"elogind-revert-polkit-detection.patch"))))
"049cfv97975x700s7lx4p9i22nv6v7j046iwkspxba7kr5qq7akw"))
(patches (search-patches "elogind-fix-rpath.patch"))))
(build-system meson-build-system)
(arguments
`(#:configure-flags
,#~(let* ((out #$output)
(sysconf (string-append out "/etc"))
(libexec (string-append out "/libexec/elogind"))
(dbuspolicy (string-append out "/etc/dbus-1/system.d"))
(dbus-data (string-append out "/share/dbus-1"))
(dbuspolicy (string-append dbus-data "/system.d"))
(dbussessionservice (string-append dbus-data "/services"))
(dbussystemservice (string-append dbus-data
"/system-services"))
(dbusinterfaces (string-append dbus-data "/interfaces"))
#$@(if (not (target-riscv64?))
#~((kexec-tools #$(this-package-input "kexec-tools")))
#~())
#~((kexec-tools #$(this-package-input "kexec-tools")))
#~())
(shadow #$(this-package-input "shadow"))
(shepherd #$(this-package-input "shepherd"))
(halt-path (string-append shepherd "/sbin/halt"))
#$@(if (not (target-riscv64?))
#~((kexec-path (string-append kexec-tools "/sbin/kexec")))
#~())
#~((kexec-path (string-append kexec-tools "/sbin/kexec")))
#~())
(nologin-path (string-append shadow "/sbin/nologin"))
(poweroff-path (string-append shepherd "/sbin/shutdown"))
(reboot-path (string-append shepherd "/sbin/reboot")))
@ -680,12 +686,15 @@ the freedesktop.org XDG Base Directory specification.")
(string-append "-Dsysconfdir=" sysconf)
(string-append "-Drootlibexecdir=" libexec)
(string-append "-Ddbuspolicydir=" dbuspolicy)
(string-append "-Ddbussessionservicedir=" dbussessionservice)
(string-append "-Ddbussystemservicedir=" dbussystemservice)
(string-append "-Ddbus-interfaces-dir=" dbusinterfaces)
(string-append "-Dc_link_args=-Wl,-rpath=" libexec)
(string-append "-Dcpp_link_args=-Wl,-rpath=" libexec)
(string-append "-Dhalt-path=" halt-path)
#$@(if (not (target-riscv64?))
#~((string-append "-Dkexec-path=" kexec-path))
#~())
#~((string-append "-Dkexec-path=" kexec-path))
#~())
(string-append "-Dpoweroff-path=" poweroff-path)
(string-append "-Dreboot-path=" reboot-path)
(string-append "-Dnologin-path=" nologin-path)
@ -704,21 +713,28 @@ the freedesktop.org XDG Base Directory specification.")
;; XXX There is no run-time setting to set this per-process, only a
;; build-time, hard-coded list of global directories.
(lambda _
(substitute* (list "src/login/elogind-dbus.c"
"src/sleep/sleep.c")
(substitute* (list "src/login/logind-core.c"
"src/login/logind-dbus.c"
"src/sleep/sleep.c"
"src/shared/sleep-config.c")
(("PKGSYSCONFDIR") "\"/etc/elogind\""))))
(add-after 'unpack 'adjust-tests
(lambda _
;; Skip the following test, which depends on users such as 'root'
;; existing in the build environment.
(invoke "sed" "/src\\/test\\/test-user-util.c/,+2s/^/#/g"
"-i" "src/test/meson.build")
;; Skip the user-util tests, which depends on users such as
;; 'root' existing in the build environment.
(substitute* "src/test/meson.build"
((".*'test-user-util.c'.*") "")
((".*'test-cgroup.c'.*") ""))
;; This test tries to copy some bytes from /usr/lib/os-release,
;; which does not exist in the build container. Choose something
;; more likely to be available.
(substitute* "src/test/test-copy.c"
(("/usr/lib/os-release")
"/etc/passwd"))
"/etc/passwd")
;; Skip the copy_holes test, which fails for unknown reasons
;; (see: https://github.com/elogind/elogind/issues/261).
(("TEST_RET\\(copy_holes).*" all)
(string-append all " return 77;\n")))
;; Use a shebang that works in the build container.
(substitute* "src/test/test-exec-util.c"
(("#!/bin/sh")
@ -743,41 +759,37 @@ the freedesktop.org XDG Base Directory specification.")
;; loopback device, but that fails because /sys is unavailable.
(substitute* "src/libelogind/sd-device/test-sd-device-thread.c"
((".*sd_device_new_from_syspath.*/sys/class/net/lo.*")
"return 77;"))
;; Most of these tests require cgroups or an actual live
;; logind system so that it can flicker the monitor, etc.
;; Just skip it until a more narrow selection can be made.
(substitute* "src/libelogind/sd-login/test-login.c"
(("test_login\\(\\);")
"return 77;"))))
(add-after 'unpack 'change-pid-file-path
(lambda _
(substitute* "src/login/elogind.c"
(("\"/run/elogind.pid\"") "\"/run/systemd/elogind.pid\"")))))))
(native-inputs
`(("docbook-xml" ,docbook-xml-4.5)
("docbook-xml-4.2" ,docbook-xml-4.2)
("docbook-xsl" ,docbook-xsl)
("gettext" ,gettext-minimal)
("gperf" ,gperf)
("libxml2" ,libxml2) ;for XML_CATALOG_FILES
("m4" ,m4)
("pkg-config" ,pkg-config)
("python" ,python)
("xsltproc" ,libxslt)))
(list docbook-xml-4.5
docbook-xml-4.2
docbook-xsl
gettext-minimal
gperf
libxml2 ;for XML_CATALOG_FILES
m4
pkg-config
python
python-jinja2
libxslt))
(inputs
(append
(if (not (target-riscv64?))
(list kexec-tools)
'())
(list linux-pam
libcap
shadow ; for 'nologin'
shepherd ; for 'halt' and 'reboot', invoked
; when pressing the power button
dbus
eudev
acl))) ; to add individual users to ACLs on /dev nodes
(if (not (target-riscv64?))
(list kexec-tools)
'())
(list linux-pam
libcap
`(,util-linux "lib") ;for 'libmount'
shadow ;for 'nologin'
shepherd ;for 'halt' and 'reboot', invoked
;when pressing the power button
dbus
eudev
acl))) ; to add individual users to ACLs on /dev nodes
(home-page "https://github.com/elogind/elogind")
(synopsis "User, seat, and session management service")
(description "Elogind is the systemd project's \"logind\" service,