gnu: libkmahjongg: Make its tilset available to games.

* gnu/packages/kde-games.scm (libkmahjongg)[arguments]: Add a phase
to add its "$out/share" to XDG_DATA_DIRS.
This commit is contained in:
宋文武 2023-08-05 19:36:49 +08:00
parent 1e4085670a
commit 4c0a6635d8
No known key found for this signature in database
GPG key ID: D415BF253B515976

View file

@ -27,6 +27,7 @@ (define-module (gnu packages kde-games)
#:use-module (guix packages)
#:use-module (guix download)
#:use-module (guix build-system qt)
#:use-module (guix gexp)
#:use-module (gnu packages bash)
#:use-module (gnu packages compression)
#:use-module (gnu packages gl)
@ -184,6 +185,24 @@ (define-public libkmahjongg
(sha256
(base32 "1a0c0q34h5yxwx76y6934ibn6hm1ip1hc2xvl11q1kaazq0alca3"))))
(build-system qt-build-system)
(arguments
(list
#:phases
#~(modify-phases %standard-phases
(add-after 'unpack 'patch-tileset-dir
(lambda* (#:key inputs outputs #:allow-other-keys)
;; Add "$out/share" to XDG_DATA_DIRS so that the default tileset
;; is always available.
(substitute* "src/kmahjonggtileset.cpp"
(("_inited = true;")
(format #f "QByteArray x = qgetenv(\"XDG_DATA_DIRS\");
if (!x.isEmpty()) {
QString datadirs = QString::fromLocal8Bit(x) + QLatin1String(\":~a\");
qputenv(\"XDG_DATA_DIRS\", datadirs.toLocal8Bit());
}
_inited = true;"
(string-append
(assoc-ref outputs "out") "/share")))))))))
(native-inputs
(list extra-cmake-modules))
(inputs