guix_mirror_bot pushed a commit to branch gnome-team
in repository guix.
commit 37d44184cdb3c77d4c8d39286cff007cc64e9524
Author: NoƩ Lopez <[email protected]>
AuthorDate: Thu Jan 15 17:44:13 2026 +0100
gnu: Add cartridges.
* gnu/packages/gnome-circle.scm (cartridges): New variable.
* gnu/packages/patches/cartridges-fix-non-parallel-build.patch:
New patch.
* gnu/local.mk (dist_patch_DATA): Register it.
Change-Id: Ie5fe37fdc8f87d2e2d378b565feb2f5e3d0c6463
Signed-off-by: Liliana Marie Prikler <[email protected]>
---
gnu/local.mk | 1 +
gnu/packages/gnome-circle.scm | 68 ++++++++++++++++++++++
.../cartridges-fix-non-parallel-build.patch | 57 ++++++++++++++++++
3 files changed, 126 insertions(+)
diff --git a/gnu/local.mk b/gnu/local.mk
index 1cd06041ec..4bb896c39a 100644
--- a/gnu/local.mk
+++ b/gnu/local.mk
@@ -1077,6 +1077,7 @@ dist_patch_DATA =
\
%D%/packages/patches/calls-disable-sip-test.patch \
%D%/packages/patches/camlboot-dynamically-allocate-stack-signal.patch
\
%D%/packages/patches/capstone-fix-python-constants.patch \
+ %D%/packages/patches/cartridges-fix-non-parallel-build.patch \
%D%/packages/patches/catdoc-CVE-2017-11110.patch \
%D%/packages/patches/chez-irregex-import-cond-expand.patch \
%D%/packages/patches/chez-scheme-bin-sh.patch \
diff --git a/gnu/packages/gnome-circle.scm b/gnu/packages/gnome-circle.scm
index 49d04280cd..484676e487 100644
--- a/gnu/packages/gnome-circle.scm
+++ b/gnu/packages/gnome-circle.scm
@@ -196,6 +196,74 @@ to with the goal of improving your focus and enhancing
your productivity.
You can also use it to fall asleep in a noisy environment.")
(license license:gpl3+)))
+(define-public cartridges
+ (package
+ (name "cartridges")
+ (version "2.13.1")
+ (source (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://codeberg.org/kramo/cartridges.git")
+ (commit (string-append "v" version))))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32
+ "1vykylz4wm8zvccqsfvfy02hrnm2lygv8yrwmkhdj0l44fqqlqsm"))
+ (patches
+ ;; See <https://codeberg.org/kramo/cartridges/pulls/433>.
+ (search-patches "cartridges-fix-non-parallel-build.patch"))))
+ (build-system meson-build-system)
+ (arguments
+ (list
+ #:configure-flags
+ #~(list "-Dtiff_compression=jpeg") ;webp compression leads to error
+ #:glib-or-gtk? #t
+ #:phases
+ #~(modify-phases %standard-phases
+ (add-after 'unpack 'skip-gnome-post-install
+ (lambda _
+ (substitute* "meson.build"
+ (("gtk_update_icon_cache: true")
+ "gtk_update_icon_cache: false")
+ (("update_desktop_database: true")
+ "update_desktop_database: false"))))
+ (add-after 'install 'wrap-program
+ (lambda* (#:key inputs #:allow-other-keys)
+ (wrap-program (string-append #$output "/bin/cartridges")
+ `("GUIX_PYTHONPATH" =
+ (,(string-append #$output "/lib/python3.11/site-packages:"
+ (getenv "GUIX_PYTHONPATH"))))
+ `("GI_TYPELIB_PATH" = (,(getenv "GI_TYPELIB_PATH")))
+ `("GDK_PIXBUF_MODULE_FILE" =
+ (,(getenv "GDK_PIXBUF_MODULE_FILE")))
+ `("PATH" ":" prefix
+ (,(dirname (search-input-file inputs "/bin/gtk4-launch"))
+ ,(dirname (search-input-file inputs
"/bin/xdg-open"))))))))))
+ (native-inputs
+ (list blueprint-compiler
+ gettext-minimal
+ gobject-introspection
+ `(,glib "bin")
+ pkg-config))
+ (inputs
+ (list adwaita-icon-theme
+ bash-minimal
+ gtk
+ `(,gtk "bin") ;for gtk-launch
+ libadwaita
+ python
+ python-pillow
+ python-pygobject
+ python-pyyaml
+ python-requests
+ xdg-utils)) ;for xdg-open
+ (home-page "https://apps.gnome.org/Cartridges/")
+ (synopsis "Game launcher for GNOME")
+ (description "Cartridges is a game launcher for multiple game libraries.
+It can import and launch games from Steam, Lutris, Heroic, Bottles, itch,
+Legendary, RetroArch, Flatpak and desktop files.")
+ (license license:gpl3+)))
+
(define-public deja-dup
(package
(name "deja-dup")
diff --git a/gnu/packages/patches/cartridges-fix-non-parallel-build.patch
b/gnu/packages/patches/cartridges-fix-non-parallel-build.patch
new file mode 100644
index 0000000000..c40f1bcb3c
--- /dev/null
+++ b/gnu/packages/patches/cartridges-fix-non-parallel-build.patch
@@ -0,0 +1,57 @@
+From e3924e08382e180764b8118a3f002fc39fc02e96 Mon Sep 17 00:00:00 2001
+From: =?UTF-8?q?No=C3=A9=20Lopez?= <[email protected]>
+Date: Thu, 29 Jan 2026 22:40:37 +0100
+Subject: [PATCH] data/meson.build: Correct dependencies for
+ cartridges.gresource.xml.in.
+
+---
+ data/meson.build | 26 +++++++++++++-------------
+ 1 file changed, 13 insertions(+), 13 deletions(-)
+
+diff --git a/data/meson.build b/data/meson.build
+index ea17413..5c5b782 100644
+--- a/data/meson.build
++++ b/data/meson.build
+@@ -17,19 +17,6 @@ blueprints = custom_target(
+ ],
+ )
+
+-gnome.compile_resources(
+- 'cartridges',
+- configure_file(
+- input: 'cartridges.gresource.xml.in',
+- output: 'cartridges.gresource.xml',
+- configuration: conf,
+- ),
+- gresource_bundle: true,
+- install: true,
+- install_dir: pkgdatadir,
+- dependencies: blueprints,
+-)
+-
+ if host_machine.system() == 'windows'
+ desktop_file = configure_file(
+ input: 'page.kramo.Cartridges.desktop.in',
+@@ -82,6 +69,19 @@ else
+ )
+ endif
+
++gnome.compile_resources(
++ 'cartridges',
++ configure_file(
++ input: 'cartridges.gresource.xml.in',
++ output: 'cartridges.gresource.xml',
++ configuration: conf,
++ ),
++ gresource_bundle: true,
++ install: true,
++ install_dir: pkgdatadir,
++ dependencies: [blueprints, appstream_file],
++)
++
+ if host_machine.system() != 'windows'
+ appstreamcli = find_program('appstreamcli', required: false)
+ if appstreamcli.found()
+--
+2.52.0
+