[PATCH 0/4] fastfetch: Unbundle yyjson and package improvements

  • Done
  • quality assurance status badge
Details
3 participants
  • Dariqq
  • Christopher Baines
  • Sharlatan Hellseher
Owner
unassigned
Submitted by
Dariqq
Severity
normal
D
D
Dariqq wrote on 6 Jul 2024 09:03
(address . guix-patches@gnu.org)(name . Dariqq)(address . dariqq@posteo.net)
cover.1720249420.git.dariqq@posteo.net
Hi Guix,
This little patch series removes the bundled yyjson from fastfetch and adds more configure options to make the package work better with guix.

The most significant change is switching to dynamically linking against the optional dependencies of fastfetch (instead of dlopening them at runtime) to avoid manually writing out a wrapper setting LD_LIBRARY_PATH.

Finally there is an update to the latest version.

With the 2.17.0 release the option "ENABLE_PROPRIETARY_GPU_DRIVER_API" was removed (https://github.com/fastfetch-cli/fastfetch/blob/dev/CHANGELOG.md#2170).Is that a problem with FSDG?


Dariqq (4):
gnu: Add yyjson.
gnu: fastfetch: Unbundle yyjson.
gnu: fastfetch: Add more configure flags.
gnu: fastfetch: Update to 2.17.2.

gnu/packages/admin.scm | 25 +++++++++++++++++++++----
gnu/packages/c.scm | 38 ++++++++++++++++++++++++++++++++++++++
2 files changed, 59 insertions(+), 4 deletions(-)


base-commit: 5905b4728776d6a6e6e5587f46fc0d633df6907c
--
2.45.2
D
D
Dariqq wrote on 6 Jul 2024 09:29
[PATCH 1/4] gnu: Add yyjson.
(address . 71968@debbugs.gnu.org)(name . Dariqq)(address . dariqq@posteo.net)
f54a780553e716945a5ad4b76d6e38199448cc57.1720249420.git.dariqq@posteo.net
* gnu/packages/c.scm (yyjson): New variable.

Change-Id: Ica9ff2e1b6676aa8761eb33cbab76154f17e443f
---
gnu/packages/c.scm | 38 ++++++++++++++++++++++++++++++++++++++
1 file changed, 38 insertions(+)

Toggle diff (48 lines)
diff --git a/gnu/packages/c.scm b/gnu/packages/c.scm
index d13b62b5e2..b251e0334e 100644
--- a/gnu/packages/c.scm
+++ b/gnu/packages/c.scm
@@ -1678,3 +1678,41 @@ (define-public pcg-c
Linear Congruential Generator (LCG) with a permutation function to increase
output randomness while retaining speed, simplicity, and conciseness.")
(license (list license:expat license:asl2.0))))) ; dual licensed
+
+(define-public yyjson
+ (package
+ (name "yyjson")
+ (version "0.9.0")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/ibireme/yyjson")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "169rqh7mh01g5j4qkqjgfmgnyqjf9r8qxiywf4jkgcb7ln4j64w9"))))
+ (arguments
+ (list
+ #:configure-flags #~(list "-DBUILD_SHARED_LIBS=ON"
+ "-DYYJSON_BUILD_TESTS=ON")))
+ (build-system cmake-build-system)
+ (home-page "https://github.com/ibireme/yyjson")
+ (synopsis "High performance JSON library written in ANSI C")
+ (description
+ "Yyjson is a high performance JSON library written in ANSI C. Some features include
+@itemize
+@item Fast: can read or write gigabytes per second JSON data on modern CPUs.
+@item Portable: complies with ANSI C (C89) for cross-platform compatibility.
+@item Strict: complies with RFC 8259 JSON standard, ensuring strict
+number format and UTF-8 validation.
+@item Extendable: offers options to allow comments, trailing commas, NaN/Inf,
+ and custom memory allocator.
+@item Accuracy: can accurately read and write int64, uint64, and double numbers.
+@item Flexible: supports unlimited JSON nesting levels, \u0000 characters,
+and non null-terminated strings.
+@item Manipulation: supports querying and modifying using JSON Pointer,
+JSON Patch and JSON Merge Patch.
+@item Developer-Friendly: easy integration with only one .h and one .c file.
+@end itemize")
+ (license license:expat)))
--
2.45.2
D
D
Dariqq wrote on 6 Jul 2024 09:29
[PATCH 3/4] gnu: fastfetch: Add more configure flags.
(address . 71968@debbugs.gnu.org)(name . Dariqq)(address . dariqq@posteo.net)
d484786b11c0fd47a8e4be6014c3e27fff7a3229.1720249420.git.dariqq@posteo.net
Most importantly the dependencies are now linked dynamically to avoid writing out a
LD_LIBRARY_PATH wrapper.

Also build the tests and skip installing the license file.

Additionally provide custom paths to pci-ids and amdgpu-ids.

* gnu/packages/admin.scm (fastfetch)
(arguments): Move above inputs.
[#:configure-flags]: Add -DBUILD_TESTS=ON, -DINSTALL_LICENSE=OFF,
-DBINARY_LINK_TYPE=dynamic and set -DCUSTOM_PCI_IDS_PATH and
-DCUSTOM_AMDGPU_IDS_PATH.
[#:tests]: Remove as now there are tests available.
[inputs]: Add hwdata and libdrm for the custom paths.

Change-Id: I9f86b49f0a116bcee91ca15b6e77cfbb3867e290
---
gnu/packages/admin.scm | 17 ++++++++++++++---
1 file changed, 14 insertions(+), 3 deletions(-)

Toggle diff (39 lines)
diff --git a/gnu/packages/admin.scm b/gnu/packages/admin.scm
index a9651b49d0..e97fe76a5a 100644
--- a/gnu/packages/admin.scm
+++ b/gnu/packages/admin.scm
@@ -4280,18 +4280,29 @@ (define-public fastfetch
(snippet '(begin
(delete-file-recursively "src/3rdparty")))))
(build-system cmake-build-system)
+ (arguments
+ (list
+ #:configure-flags #~(list "-DENABLE_SYSTEM_YYJSON=YES"
+ "-DBINARY_LINK_TYPE=dynamic"
+ "-DBUILD_TESTS=ON"
+ "-DINSTALL_LICENSE=OFF"
+ (string-append "-DCUSTOM_PCI_IDS_PATH="
+ #$(this-package-input "hwdata")
+ "/share/hwdata/pci.ids")
+ (string-append "-DCUSTOM_AMDGPU_IDS_PATH="
+ #$(this-package-input "libdrm")
+ "share/libdrm/amdgpu.ids"))))
(inputs (list dbus
glib
+ hwdata
imagemagick
+ libdrm
libxcb
mesa
wayland
yyjson
zlib)) ;for imagemagick and an #ifdef
(native-inputs (list pkg-config))
- (arguments
- (list #:tests? #f ; no test target
- #:configure-flags #~(list "-DENABLE_SYSTEM_YYJSON=YES")))
(home-page "https://github.com/fastfetch-cli/fastfetch")
(synopsis "Display system information in a stylized manner")
(description
--
2.45.2
D
D
Dariqq wrote on 6 Jul 2024 09:29
[PATCH 4/4] gnu: fastfetch: Update to 2.17.2.
(address . 71968@debbugs.gnu.org)(name . Dariqq)(address . dariqq@posteo.net)
97f5d9b15446614aba21eb7f824aef9689a942b8.1720249420.git.dariqq@posteo.net
Also add python to minify the help.json file at build time.

* gnu/packages/admin.scm (fastfetch): Update to 2.17.2.
[native-inputs]: Add python.

Change-Id: I135be0447061896ec2f133e11d50ced92b9e79b5
---
gnu/packages/admin.scm | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)

Toggle diff (33 lines)
diff --git a/gnu/packages/admin.scm b/gnu/packages/admin.scm
index e97fe76a5a..678ae29e84 100644
--- a/gnu/packages/admin.scm
+++ b/gnu/packages/admin.scm
@@ -4266,7 +4266,7 @@ (define-public pfetch
(define-public fastfetch
(package
(name "fastfetch")
- (version "2.16.0")
+ (version "2.17.2")
(source
(origin
(method git-fetch)
@@ -4275,7 +4275,7 @@ (define-public fastfetch
(commit version)))
(file-name (git-file-name name version))
(sha256
- (base32 "112dvfx7gvp6n20i1lkd0jbh897jf7bxjxq96bj4099j3x313y3m"))
+ (base32 "0yhpxn7idb1c9fs84x6qqk4f6975cdax0f1ymhqj33lswzah03ax"))
(modules '((guix build utils)))
(snippet '(begin
(delete-file-recursively "src/3rdparty")))))
@@ -4302,7 +4302,7 @@ (define-public fastfetch
wayland
yyjson
zlib)) ;for imagemagick and an #ifdef
- (native-inputs (list pkg-config))
+ (native-inputs (list pkg-config python))
(home-page "https://github.com/fastfetch-cli/fastfetch")
(synopsis "Display system information in a stylized manner")
(description
--
2.45.2
D
D
Dariqq wrote on 6 Jul 2024 09:29
[PATCH 2/4] gnu: fastfetch: Unbundle yyjson.
(address . 71968@debbugs.gnu.org)(name . Dariqq)(address . dariqq@posteo.net)
1003d8cbcf97529531efe256c833ad365eb4baaf.1720249420.git.dariqq@posteo.net
* gnu/packages/admin.scm (fastftech)
[origin]: Add snippet to remove third party code.
[#_configure-flags]: Add "-DENABLE_SYSTEM_YYJSON=YES"
[inputs]: Add yyjson.

Change-Id: I8175b8f4a8d55ff3b9d5fa4cb99f1fc1ad15fd97
---
gnu/packages/admin.scm | 10 ++++++++--
1 file changed, 8 insertions(+), 2 deletions(-)

Toggle diff (32 lines)
diff --git a/gnu/packages/admin.scm b/gnu/packages/admin.scm
index f0aa6adc85..a9651b49d0 100644
--- a/gnu/packages/admin.scm
+++ b/gnu/packages/admin.scm
@@ -4275,7 +4275,10 @@ (define-public fastfetch
(commit version)))
(file-name (git-file-name name version))
(sha256
- (base32 "112dvfx7gvp6n20i1lkd0jbh897jf7bxjxq96bj4099j3x313y3m"))))
+ (base32 "112dvfx7gvp6n20i1lkd0jbh897jf7bxjxq96bj4099j3x313y3m"))
+ (modules '((guix build utils)))
+ (snippet '(begin
+ (delete-file-recursively "src/3rdparty")))))
(build-system cmake-build-system)
(inputs (list dbus
glib
@@ -4283,9 +4286,12 @@ (define-public fastfetch
libxcb
mesa
wayland
+ yyjson
zlib)) ;for imagemagick and an #ifdef
(native-inputs (list pkg-config))
- (arguments (list #:tests? #f)) ; no test target
+ (arguments
+ (list #:tests? #f ; no test target
+ #:configure-flags #~(list "-DENABLE_SYSTEM_YYJSON=YES")))
(home-page "https://github.com/fastfetch-cli/fastfetch")
(synopsis "Display system information in a stylized manner")
(description
--
2.45.2
D
D
Dariqq wrote on 14 Jul 2024 09:42
[PATCH v2 0/5] fastfetch: Unbundle yyjson and package improvements
(address . 71968@debbugs.gnu.org)(name . Dariqq)(address . dariqq@posteo.net)
cover.1720942674.git.dariqq@posteo.net
Hi Guix,
This little patch series removes the bundled yyjson from fastfetch and adds more configure options to make the package work better with guix.

The most significant change is switching to dynamically linking against the optional dependencies of fastfetch (instead of dlopening them at runtime) to avoid manually writing out a wrapper setting LD_LIBRARY_PATH.

Finally there is an update to the latest version.

With the 2.17.0 release the option "ENABLE_PROPRIETARY_GPU_DRIVER_API" was removed (https://github.com/fastfetch-cli/fastfetch/blob/dev/CHANGELOG.md#2170).Isthat a problem with FSDG?

Changes in v2:
Update to the latest fastfetch release which also needs a newer yyjson.

Dariqq (5):
gnu: Add yyjson.
gnu: fastfetch: Unbundle yyjson.
gnu: fastfetch: Add more configure flags.
gnu: yyjson: Update to 0.10.0.
gnu: fastfetch: Update to 2.18.1.

gnu/packages/admin.scm | 23 ++++++++++++++++++++---
gnu/packages/c.scm | 38 ++++++++++++++++++++++++++++++++++++++
2 files changed, 58 insertions(+), 3 deletions(-)


base-commit: c1d367f57e89c3f2efd964e6d638bd89b0b1df97
--
2.45.2
D
D
Dariqq wrote on 14 Jul 2024 09:42
[PATCH v2 1/5] gnu: Add yyjson.
(address . 71968@debbugs.gnu.org)(name . Dariqq)(address . dariqq@posteo.net)
3e36fd6549aaab789429853f304ed9d925f1f91a.1720942674.git.dariqq@posteo.net
* gnu/packages/c.scm (yyjson): New variable.

Change-Id: Ica9ff2e1b6676aa8761eb33cbab76154f17e443f
---
gnu/packages/c.scm | 38 ++++++++++++++++++++++++++++++++++++++
1 file changed, 38 insertions(+)

Toggle diff (48 lines)
diff --git a/gnu/packages/c.scm b/gnu/packages/c.scm
index d13b62b5e2..b251e0334e 100644
--- a/gnu/packages/c.scm
+++ b/gnu/packages/c.scm
@@ -1678,3 +1678,41 @@ (define-public pcg-c
Linear Congruential Generator (LCG) with a permutation function to increase
output randomness while retaining speed, simplicity, and conciseness.")
(license (list license:expat license:asl2.0))))) ; dual licensed
+
+(define-public yyjson
+ (package
+ (name "yyjson")
+ (version "0.9.0")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/ibireme/yyjson")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "169rqh7mh01g5j4qkqjgfmgnyqjf9r8qxiywf4jkgcb7ln4j64w9"))))
+ (arguments
+ (list
+ #:configure-flags #~(list "-DBUILD_SHARED_LIBS=ON"
+ "-DYYJSON_BUILD_TESTS=ON")))
+ (build-system cmake-build-system)
+ (home-page "https://github.com/ibireme/yyjson")
+ (synopsis "High performance JSON library written in ANSI C")
+ (description
+ "Yyjson is a high performance JSON library written in ANSI C. Some features include
+@itemize
+@item Fast: can read or write gigabytes per second JSON data on modern CPUs.
+@item Portable: complies with ANSI C (C89) for cross-platform compatibility.
+@item Strict: complies with RFC 8259 JSON standard, ensuring strict
+number format and UTF-8 validation.
+@item Extendable: offers options to allow comments, trailing commas, NaN/Inf,
+ and custom memory allocator.
+@item Accuracy: can accurately read and write int64, uint64, and double numbers.
+@item Flexible: supports unlimited JSON nesting levels, \u0000 characters,
+and non null-terminated strings.
+@item Manipulation: supports querying and modifying using JSON Pointer,
+JSON Patch and JSON Merge Patch.
+@item Developer-Friendly: easy integration with only one .h and one .c file.
+@end itemize")
+ (license license:expat)))
--
2.45.2
D
D
Dariqq wrote on 14 Jul 2024 09:42
[PATCH v2 3/5] gnu: fastfetch: Add more configure flags.
(address . 71968@debbugs.gnu.org)(name . Dariqq)(address . dariqq@posteo.net)
446b9098aa7f012c68629ca27b8d9435134ae953.1720942674.git.dariqq@posteo.net
Most importantly the dependencies are now linked dynamically to avoid writing out a
LD_LIBRARY_PATH wrapper.

Also build the tests and skip installing the license file.

Additionally provide custom paths to pci-ids and amdgpu-ids.

* gnu/packages/admin.scm (fastfetch)
(arguments): Move above inputs.
[#:configure-flags]: Add -DBUILD_TESTS=ON, -DINSTALL_LICENSE=OFF,
-DBINARY_LINK_TYPE=dynamic and set -DCUSTOM_PCI_IDS_PATH and
-DCUSTOM_AMDGPU_IDS_PATH.
[#:tests]: Remove as now there are tests available.
[inputs]: Add hwdata and libdrm for the custom paths.

Change-Id: I9f86b49f0a116bcee91ca15b6e77cfbb3867e290
---
gnu/packages/admin.scm | 17 ++++++++++++++---
1 file changed, 14 insertions(+), 3 deletions(-)

Toggle diff (39 lines)
diff --git a/gnu/packages/admin.scm b/gnu/packages/admin.scm
index a9651b49d0..e97fe76a5a 100644
--- a/gnu/packages/admin.scm
+++ b/gnu/packages/admin.scm
@@ -4280,18 +4280,29 @@ (define-public fastfetch
(snippet '(begin
(delete-file-recursively "src/3rdparty")))))
(build-system cmake-build-system)
+ (arguments
+ (list
+ #:configure-flags #~(list "-DENABLE_SYSTEM_YYJSON=YES"
+ "-DBINARY_LINK_TYPE=dynamic"
+ "-DBUILD_TESTS=ON"
+ "-DINSTALL_LICENSE=OFF"
+ (string-append "-DCUSTOM_PCI_IDS_PATH="
+ #$(this-package-input "hwdata")
+ "/share/hwdata/pci.ids")
+ (string-append "-DCUSTOM_AMDGPU_IDS_PATH="
+ #$(this-package-input "libdrm")
+ "share/libdrm/amdgpu.ids"))))
(inputs (list dbus
glib
+ hwdata
imagemagick
+ libdrm
libxcb
mesa
wayland
yyjson
zlib)) ;for imagemagick and an #ifdef
(native-inputs (list pkg-config))
- (arguments
- (list #:tests? #f ; no test target
- #:configure-flags #~(list "-DENABLE_SYSTEM_YYJSON=YES")))
(home-page "https://github.com/fastfetch-cli/fastfetch")
(synopsis "Display system information in a stylized manner")
(description
--
2.45.2
D
D
Dariqq wrote on 14 Jul 2024 09:42
[PATCH v2 4/5] gnu: yyjson: Update to 0.10.0.
(address . 71968@debbugs.gnu.org)(name . Dariqq)(address . dariqq@posteo.net)
70415579683fab45423fb0108892e17cc49eb55a.1720942674.git.dariqq@posteo.net
* gnu/packages/c.scm (yyjson): Update to 0.10.0.

Change-Id: Id8be82026eb0d102272b1128cce80a5609d309d0
---
gnu/packages/c.scm | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)

Toggle diff (24 lines)
diff --git a/gnu/packages/c.scm b/gnu/packages/c.scm
index b251e0334e..83c09c850f 100644
--- a/gnu/packages/c.scm
+++ b/gnu/packages/c.scm
@@ -1682,7 +1682,7 @@ (define-public pcg-c
(define-public yyjson
(package
(name "yyjson")
- (version "0.9.0")
+ (version "0.10.0")
(source
(origin
(method git-fetch)
@@ -1691,7 +1691,7 @@ (define-public yyjson
(commit version)))
(file-name (git-file-name name version))
(sha256
- (base32 "169rqh7mh01g5j4qkqjgfmgnyqjf9r8qxiywf4jkgcb7ln4j64w9"))))
+ (base32 "0kmzgs24v0rxlibg4qwlm6yplzs96pgxb1gyviijhkra9z7lx7ws"))))
(arguments
(list
#:configure-flags #~(list "-DBUILD_SHARED_LIBS=ON"
--
2.45.2
D
D
Dariqq wrote on 14 Jul 2024 09:42
[PATCH v2 2/5] gnu: fastfetch: Unbundle yyjson.
(address . 71968@debbugs.gnu.org)(name . Dariqq)(address . dariqq@posteo.net)
bde233caeb11d1bff630f72f2b75cb1c4ebb393f.1720942674.git.dariqq@posteo.net
* gnu/packages/admin.scm (fastftech)
[origin]: Add snippet to remove third party code.
[#_configure-flags]: Add "-DENABLE_SYSTEM_YYJSON=YES"
[inputs]: Add yyjson.

Change-Id: I8175b8f4a8d55ff3b9d5fa4cb99f1fc1ad15fd97
---
gnu/packages/admin.scm | 10 ++++++++--
1 file changed, 8 insertions(+), 2 deletions(-)

Toggle diff (32 lines)
diff --git a/gnu/packages/admin.scm b/gnu/packages/admin.scm
index f0aa6adc85..a9651b49d0 100644
--- a/gnu/packages/admin.scm
+++ b/gnu/packages/admin.scm
@@ -4275,7 +4275,10 @@ (define-public fastfetch
(commit version)))
(file-name (git-file-name name version))
(sha256
- (base32 "112dvfx7gvp6n20i1lkd0jbh897jf7bxjxq96bj4099j3x313y3m"))))
+ (base32 "112dvfx7gvp6n20i1lkd0jbh897jf7bxjxq96bj4099j3x313y3m"))
+ (modules '((guix build utils)))
+ (snippet '(begin
+ (delete-file-recursively "src/3rdparty")))))
(build-system cmake-build-system)
(inputs (list dbus
glib
@@ -4283,9 +4286,12 @@ (define-public fastfetch
libxcb
mesa
wayland
+ yyjson
zlib)) ;for imagemagick and an #ifdef
(native-inputs (list pkg-config))
- (arguments (list #:tests? #f)) ; no test target
+ (arguments
+ (list #:tests? #f ; no test target
+ #:configure-flags #~(list "-DENABLE_SYSTEM_YYJSON=YES")))
(home-page "https://github.com/fastfetch-cli/fastfetch")
(synopsis "Display system information in a stylized manner")
(description
--
2.45.2
D
D
Dariqq wrote on 14 Jul 2024 09:42
[PATCH v2 5/5] gnu: fastfetch: Update to 2.18.1.
(address . 71968@debbugs.gnu.org)(name . Dariqq)(address . dariqq@posteo.net)
65ef9fac28898ac4f9a992a8cdcebeb57a546ce0.1720942674.git.dariqq@posteo.net
* gnu/packages/admin.scm (fastfetch): Update to 2.18.1.

Change-Id: I257954b6f21f5a9fc35b45785f6addff604513b9
---
gnu/packages/admin.scm | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)

Toggle diff (24 lines)
diff --git a/gnu/packages/admin.scm b/gnu/packages/admin.scm
index e97fe76a5a..5699bf32b4 100644
--- a/gnu/packages/admin.scm
+++ b/gnu/packages/admin.scm
@@ -4266,7 +4266,7 @@ (define-public pfetch
(define-public fastfetch
(package
(name "fastfetch")
- (version "2.16.0")
+ (version "2.18.1")
(source
(origin
(method git-fetch)
@@ -4275,7 +4275,7 @@ (define-public fastfetch
(commit version)))
(file-name (git-file-name name version))
(sha256
- (base32 "112dvfx7gvp6n20i1lkd0jbh897jf7bxjxq96bj4099j3x313y3m"))
+ (base32 "0iqww3iq52kdvd7nm35jbba3n4ysds8brnrv7gx5dvzhkna0lvdy"))
(modules '((guix build utils)))
(snippet '(begin
(delete-file-recursively "src/3rdparty")))))
--
2.45.2
D
D
Dariqq wrote on 25 Aug 2024 09:45
[PATCH v3 1/5] gnu: Add yyjson.
(address . 71968@debbugs.gnu.org)(name . Dariqq)(address . dariqq@posteo.net)
7209dd72bc48dc788690a2ffacc30f938f7bd1a9.1724571928.git.dariqq@posteo.net
* gnu/packages/c.scm (yyjson): New variable.

Change-Id: Ica9ff2e1b6676aa8761eb33cbab76154f17e443f
---
gnu/packages/c.scm | 38 ++++++++++++++++++++++++++++++++++++++
1 file changed, 38 insertions(+)

Toggle diff (50 lines)
diff --git a/gnu/packages/c.scm b/gnu/packages/c.scm
index 87d3df193e..aa7b9fe35f 100644
--- a/gnu/packages/c.scm
+++ b/gnu/packages/c.scm
@@ -1730,3 +1730,41 @@ (define-public pcg-c
Linear Congruential Generator (LCG) with a permutation function to increase
output randomness while retaining speed, simplicity, and conciseness.")
(license (list license:expat license:asl2.0))))) ; dual licensed
+
+(define-public yyjson
+ (package
+ (name "yyjson")
+ (version "0.9.0")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/ibireme/yyjson")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "169rqh7mh01g5j4qkqjgfmgnyqjf9r8qxiywf4jkgcb7ln4j64w9"))))
+ (arguments
+ (list
+ #:configure-flags #~(list "-DBUILD_SHARED_LIBS=ON"
+ "-DYYJSON_BUILD_TESTS=ON")))
+ (build-system cmake-build-system)
+ (home-page "https://github.com/ibireme/yyjson")
+ (synopsis "High performance JSON library written in ANSI C")
+ (description
+ "Yyjson is a high performance JSON library written in ANSI C. Some features include
+@itemize
+@item Fast: can read or write gigabytes per second JSON data on modern CPUs.
+@item Portable: complies with ANSI C (C89) for cross-platform compatibility.
+@item Strict: complies with RFC 8259 JSON standard, ensuring strict
+number format and UTF-8 validation.
+@item Extendable: offers options to allow comments, trailing commas, NaN/Inf,
+ and custom memory allocator.
+@item Accuracy: can accurately read and write int64, uint64, and double numbers.
+@item Flexible: supports unlimited JSON nesting levels, \u0000 characters,
+and non null-terminated strings.
+@item Manipulation: supports querying and modifying using JSON Pointer,
+JSON Patch and JSON Merge Patch.
+@item Developer-Friendly: easy integration with only one .h and one .c file.
+@end itemize")
+ (license license:expat)))

base-commit: f25ea6847fa4eb1bc0a6bfb965e145b94f20a6f8
--
2.45.2
D
D
Dariqq wrote on 25 Aug 2024 09:45
[PATCH v3 2/5] gnu: fastfetch: Unbundle yyjson.
(address . 71968@debbugs.gnu.org)(name . Dariqq)(address . dariqq@posteo.net)
c37e458072e838a1be5209cc90c81afd226aaa5b.1724571928.git.dariqq@posteo.net
* gnu/packages/admin.scm (fastftech)
[origin]: Add snippet to remove third party code.
[#:configure-flags]: Add "-DENABLE_SYSTEM_YYJSON=YES"
[inputs]: Add yyjson.

Change-Id: I8175b8f4a8d55ff3b9d5fa4cb99f1fc1ad15fd97
---
gnu/packages/admin.scm | 10 ++++++++--
1 file changed, 8 insertions(+), 2 deletions(-)

Toggle diff (32 lines)
diff --git a/gnu/packages/admin.scm b/gnu/packages/admin.scm
index e96c555e6a..497324c195 100644
--- a/gnu/packages/admin.scm
+++ b/gnu/packages/admin.scm
@@ -4277,7 +4277,10 @@ (define-public fastfetch
(commit version)))
(file-name (git-file-name name version))
(sha256
- (base32 "112dvfx7gvp6n20i1lkd0jbh897jf7bxjxq96bj4099j3x313y3m"))))
+ (base32 "112dvfx7gvp6n20i1lkd0jbh897jf7bxjxq96bj4099j3x313y3m"))
+ (modules '((guix build utils)))
+ (snippet '(begin
+ (delete-file-recursively "src/3rdparty")))))
(build-system cmake-build-system)
(inputs (list dbus
glib
@@ -4285,9 +4288,12 @@ (define-public fastfetch
libxcb
mesa
wayland
+ yyjson
zlib)) ;for imagemagick and an #ifdef
(native-inputs (list pkg-config))
- (arguments (list #:tests? #f)) ; no test target
+ (arguments
+ (list #:tests? #f ; no test target
+ #:configure-flags #~(list "-DENABLE_SYSTEM_YYJSON=YES")))
(home-page "https://github.com/fastfetch-cli/fastfetch")
(synopsis "Display system information in a stylized manner")
(description
--
2.45.2
D
D
Dariqq wrote on 25 Aug 2024 09:45
[PATCH v3 3/5] gnu: fastfetch: Add more configure flags.
(address . 71968@debbugs.gnu.org)(name . Dariqq)(address . dariqq@posteo.net)
bbf27735a725e396084aeb9cbd372eded65103d2.1724571928.git.dariqq@posteo.net
Most importantly the dependencies are now linked dynamically to avoid writing out a
LD_LIBRARY_PATH wrapper.

Also build the tests and skip installing the license file.

Additionally provide custom paths to pci-ids and amdgpu-ids.

* gnu/packages/admin.scm (fastfetch)
(arguments): Move above inputs.
[#:configure-flags]: Add -DBUILD_TESTS=ON, -DINSTALL_LICENSE=OFF,
-DBINARY_LINK_TYPE=dynamic and set -DCUSTOM_PCI_IDS_PATH and
-DCUSTOM_AMDGPU_IDS_PATH.
[#:tests]: Remove as now there are tests available.
[inputs]: Add hwdata and libdrm for the custom paths.

Change-Id: I9f86b49f0a116bcee91ca15b6e77cfbb3867e290
---
gnu/packages/admin.scm | 17 ++++++++++++++---
1 file changed, 14 insertions(+), 3 deletions(-)

Toggle diff (39 lines)
diff --git a/gnu/packages/admin.scm b/gnu/packages/admin.scm
index 497324c195..eb495bd25c 100644
--- a/gnu/packages/admin.scm
+++ b/gnu/packages/admin.scm
@@ -4282,18 +4282,29 @@ (define-public fastfetch
(snippet '(begin
(delete-file-recursively "src/3rdparty")))))
(build-system cmake-build-system)
+ (arguments
+ (list
+ #:configure-flags #~(list "-DENABLE_SYSTEM_YYJSON=YES"
+ "-DBINARY_LINK_TYPE=dynamic"
+ "-DBUILD_TESTS=ON"
+ "-DINSTALL_LICENSE=OFF"
+ (string-append "-DCUSTOM_PCI_IDS_PATH="
+ #$(this-package-input "hwdata")
+ "/share/hwdata/pci.ids")
+ (string-append "-DCUSTOM_AMDGPU_IDS_PATH="
+ #$(this-package-input "libdrm")
+ "share/libdrm/amdgpu.ids"))))
(inputs (list dbus
glib
+ hwdata
imagemagick
+ libdrm
libxcb
mesa
wayland
yyjson
zlib)) ;for imagemagick and an #ifdef
(native-inputs (list pkg-config))
- (arguments
- (list #:tests? #f ; no test target
- #:configure-flags #~(list "-DENABLE_SYSTEM_YYJSON=YES")))
(home-page "https://github.com/fastfetch-cli/fastfetch")
(synopsis "Display system information in a stylized manner")
(description
--
2.45.2
D
D
Dariqq wrote on 25 Aug 2024 09:45
[PATCH v3 4/5] gnu: yyjson: Update to 0.10.0.
(address . 71968@debbugs.gnu.org)(name . Dariqq)(address . dariqq@posteo.net)
bbc998ae137b28b3c9a8a3e385f556f2523c588a.1724571928.git.dariqq@posteo.net
* gnu/packages/c.scm (yyjson): Update to 0.10.0.

Change-Id: Id8be82026eb0d102272b1128cce80a5609d309d0
---
gnu/packages/c.scm | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)

Toggle diff (24 lines)
diff --git a/gnu/packages/c.scm b/gnu/packages/c.scm
index aa7b9fe35f..08e572aec6 100644
--- a/gnu/packages/c.scm
+++ b/gnu/packages/c.scm
@@ -1734,7 +1734,7 @@ (define-public pcg-c
(define-public yyjson
(package
(name "yyjson")
- (version "0.9.0")
+ (version "0.10.0")
(source
(origin
(method git-fetch)
@@ -1743,7 +1743,7 @@ (define-public yyjson
(commit version)))
(file-name (git-file-name name version))
(sha256
- (base32 "169rqh7mh01g5j4qkqjgfmgnyqjf9r8qxiywf4jkgcb7ln4j64w9"))))
+ (base32 "0kmzgs24v0rxlibg4qwlm6yplzs96pgxb1gyviijhkra9z7lx7ws"))))
(arguments
(list
#:configure-flags #~(list "-DBUILD_SHARED_LIBS=ON"
--
2.45.2
D
D
Dariqq wrote on 25 Aug 2024 09:45
[PATCH v3 5/5] gnu: fastfetch: Update to 2.21.3.
(address . 71968@debbugs.gnu.org)(name . Dariqq)(address . dariqq@posteo.net)
4fb61b4ebc534698c0f3b65b0250f969f8a541e8.1724571928.git.dariqq@posteo.net
* gnu/packages/admin.scm (fastfetch): Update to 2.21.3.

Change-Id: I5f672fdc0cc36ceb7e32dbb2e5edc7ca212131e6
---
gnu/packages/admin.scm | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)

Toggle diff (24 lines)
diff --git a/gnu/packages/admin.scm b/gnu/packages/admin.scm
index eb495bd25c..0b629f712c 100644
--- a/gnu/packages/admin.scm
+++ b/gnu/packages/admin.scm
@@ -4268,7 +4268,7 @@ (define-public pfetch
(define-public fastfetch
(package
(name "fastfetch")
- (version "2.16.0")
+ (version "2.21.3")
(source
(origin
(method git-fetch)
@@ -4277,7 +4277,7 @@ (define-public fastfetch
(commit version)))
(file-name (git-file-name name version))
(sha256
- (base32 "112dvfx7gvp6n20i1lkd0jbh897jf7bxjxq96bj4099j3x313y3m"))
+ (base32 "0npsjh1hgj2qm64c6v6p38dq7qxcwdcfqhdvdhk8qj3dgq012x82"))
(modules '((guix build utils)))
(snippet '(begin
(delete-file-recursively "src/3rdparty")))))
--
2.45.2
D
D
Dariqq wrote on 27 Aug 2024 17:18
[PATCH v4 2/5] gnu: fastfetch: Unbundle yyjson.
(address . 71968@debbugs.gnu.org)(name . Dariqq)(address . dariqq@posteo.net)
532053e6d3b7af67ece28f5ff37e2dd912873ecd.1724771914.git.dariqq@posteo.net
* gnu/packages/admin.scm (fastftech)
[origin]: Add snippet to remove third party code.
[#:configure-flags]: Add "-DENABLE_SYSTEM_YYJSON=YES"
[inputs]: Add yyjson.

Change-Id: I8175b8f4a8d55ff3b9d5fa4cb99f1fc1ad15fd97
---
gnu/packages/admin.scm | 10 ++++++++--
1 file changed, 8 insertions(+), 2 deletions(-)

Toggle diff (32 lines)
diff --git a/gnu/packages/admin.scm b/gnu/packages/admin.scm
index 4b05f4c367..fd2d10eeda 100644
--- a/gnu/packages/admin.scm
+++ b/gnu/packages/admin.scm
@@ -4277,7 +4277,10 @@ (define-public fastfetch
(commit version)))
(file-name (git-file-name name version))
(sha256
- (base32 "112dvfx7gvp6n20i1lkd0jbh897jf7bxjxq96bj4099j3x313y3m"))))
+ (base32 "112dvfx7gvp6n20i1lkd0jbh897jf7bxjxq96bj4099j3x313y3m"))
+ (modules '((guix build utils)))
+ (snippet '(begin
+ (delete-file-recursively "src/3rdparty")))))
(build-system cmake-build-system)
(inputs (list dbus
glib
@@ -4285,9 +4288,12 @@ (define-public fastfetch
libxcb
mesa
wayland
+ yyjson
zlib)) ;for imagemagick and an #ifdef
(native-inputs (list pkg-config))
- (arguments (list #:tests? #f)) ; no test target
+ (arguments
+ (list #:tests? #f ; no test target
+ #:configure-flags #~(list "-DENABLE_SYSTEM_YYJSON=YES")))
(home-page "https://github.com/fastfetch-cli/fastfetch")
(synopsis "Display system information in a stylized manner")
(description
--
2.45.2
D
D
Dariqq wrote on 27 Aug 2024 17:18
[PATCH v4 1/5] gnu: Add yyjson.
(address . 71968@debbugs.gnu.org)(name . Dariqq)(address . dariqq@posteo.net)
78a863e4becfe0996e04c2aee08ac5b8afa900a0.1724771914.git.dariqq@posteo.net
* gnu/packages/c.scm (yyjson): New variable.

Change-Id: Ica9ff2e1b6676aa8761eb33cbab76154f17e443f
---
gnu/packages/c.scm | 38 ++++++++++++++++++++++++++++++++++++++
1 file changed, 38 insertions(+)

Toggle diff (50 lines)
diff --git a/gnu/packages/c.scm b/gnu/packages/c.scm
index 87d3df193e..aa7b9fe35f 100644
--- a/gnu/packages/c.scm
+++ b/gnu/packages/c.scm
@@ -1730,3 +1730,41 @@ (define-public pcg-c
Linear Congruential Generator (LCG) with a permutation function to increase
output randomness while retaining speed, simplicity, and conciseness.")
(license (list license:expat license:asl2.0))))) ; dual licensed
+
+(define-public yyjson
+ (package
+ (name "yyjson")
+ (version "0.9.0")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/ibireme/yyjson")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "169rqh7mh01g5j4qkqjgfmgnyqjf9r8qxiywf4jkgcb7ln4j64w9"))))
+ (arguments
+ (list
+ #:configure-flags #~(list "-DBUILD_SHARED_LIBS=ON"
+ "-DYYJSON_BUILD_TESTS=ON")))
+ (build-system cmake-build-system)
+ (home-page "https://github.com/ibireme/yyjson")
+ (synopsis "High performance JSON library written in ANSI C")
+ (description
+ "Yyjson is a high performance JSON library written in ANSI C. Some features include
+@itemize
+@item Fast: can read or write gigabytes per second JSON data on modern CPUs.
+@item Portable: complies with ANSI C (C89) for cross-platform compatibility.
+@item Strict: complies with RFC 8259 JSON standard, ensuring strict
+number format and UTF-8 validation.
+@item Extendable: offers options to allow comments, trailing commas, NaN/Inf,
+ and custom memory allocator.
+@item Accuracy: can accurately read and write int64, uint64, and double numbers.
+@item Flexible: supports unlimited JSON nesting levels, \u0000 characters,
+and non null-terminated strings.
+@item Manipulation: supports querying and modifying using JSON Pointer,
+JSON Patch and JSON Merge Patch.
+@item Developer-Friendly: easy integration with only one .h and one .c file.
+@end itemize")
+ (license license:expat)))

base-commit: 1166035acb4e1b0dc61bf9122b68f2afa0c35790
--
2.45.2
D
D
Dariqq wrote on 27 Aug 2024 17:18
[PATCH v4 4/5] gnu: yyjson: Update to 0.10.0.
(address . 71968@debbugs.gnu.org)(name . Dariqq)(address . dariqq@posteo.net)
1b93731a2081ff21ecf9c841a57c48586d118f9d.1724771914.git.dariqq@posteo.net
* gnu/packages/c.scm (yyjson): Update to 0.10.0.

Change-Id: Id8be82026eb0d102272b1128cce80a5609d309d0
---
gnu/packages/c.scm | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)

Toggle diff (24 lines)
diff --git a/gnu/packages/c.scm b/gnu/packages/c.scm
index aa7b9fe35f..08e572aec6 100644
--- a/gnu/packages/c.scm
+++ b/gnu/packages/c.scm
@@ -1734,7 +1734,7 @@ (define-public pcg-c
(define-public yyjson
(package
(name "yyjson")
- (version "0.9.0")
+ (version "0.10.0")
(source
(origin
(method git-fetch)
@@ -1743,7 +1743,7 @@ (define-public yyjson
(commit version)))
(file-name (git-file-name name version))
(sha256
- (base32 "169rqh7mh01g5j4qkqjgfmgnyqjf9r8qxiywf4jkgcb7ln4j64w9"))))
+ (base32 "0kmzgs24v0rxlibg4qwlm6yplzs96pgxb1gyviijhkra9z7lx7ws"))))
(arguments
(list
#:configure-flags #~(list "-DBUILD_SHARED_LIBS=ON"
--
2.45.2
D
D
Dariqq wrote on 27 Aug 2024 17:18
[PATCH v4 5/5] gnu: fastfetch: Update to 2.22.0.
(address . 71968@debbugs.gnu.org)(name . Dariqq)(address . dariqq@posteo.net)
6c841c2b10e431365360ceb4b488cf4f9df3fc67.1724771914.git.dariqq@posteo.net
Also add python-minimal to minify the help.json file at build time.

* gnu/packages/admin.scm (fastfetch): Update to 2.22.0.
[native-inputs]: Add python-minimal.

Change-Id: I52d5cf244726bf4362f658f818094a483e3b3d01
---
gnu/packages/admin.scm | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)

Toggle diff (33 lines)
diff --git a/gnu/packages/admin.scm b/gnu/packages/admin.scm
index 8a315ada64..1a2e1360f6 100644
--- a/gnu/packages/admin.scm
+++ b/gnu/packages/admin.scm
@@ -4268,7 +4268,7 @@ (define-public pfetch
(define-public fastfetch
(package
(name "fastfetch")
- (version "2.16.0")
+ (version "2.22.0")
(source
(origin
(method git-fetch)
@@ -4277,7 +4277,7 @@ (define-public fastfetch
(commit version)))
(file-name (git-file-name name version))
(sha256
- (base32 "112dvfx7gvp6n20i1lkd0jbh897jf7bxjxq96bj4099j3x313y3m"))
+ (base32 "0yfvhyikb9bipxnwpf5g7dpvrrmz856fiyvd0daq97vv4lqq3ilx"))
(modules '((guix build utils)))
(snippet '(begin
(delete-file-recursively "src/3rdparty")))))
@@ -4304,7 +4304,7 @@ (define-public fastfetch
wayland
yyjson
zlib)) ;for imagemagick and an #ifdef
- (native-inputs (list pkg-config))
+ (native-inputs (list pkg-config python-minimal))
(home-page "https://github.com/fastfetch-cli/fastfetch")
(synopsis "Display system information in a stylized manner")
(description
--
2.45.2
D
D
Dariqq wrote on 27 Aug 2024 17:18
[PATCH v4 3/5] gnu: fastfetch: Add more configure flags.
(address . 71968@debbugs.gnu.org)(name . Dariqq)(address . dariqq@posteo.net)
dc3f5da7be0b99333ce528ceae4cde5706f12be7.1724771914.git.dariqq@posteo.net
Most importantly the dependencies are now linked dynamically to avoid writing out a
LD_LIBRARY_PATH wrapper.

Also build the tests and skip installing the license file.

Additionally provide custom paths to pci-ids and amdgpu-ids.

* gnu/packages/admin.scm (fastfetch)
(arguments): Move above inputs.
[#:configure-flags]: Add -DBUILD_TESTS=ON, -DINSTALL_LICENSE=OFF,
-DBINARY_LINK_TYPE=dynamic and set -DCUSTOM_PCI_IDS_PATH and
-DCUSTOM_AMDGPU_IDS_PATH.
[#:tests]: Remove as now there are tests available.
[inputs]: Add hwdata and libdrm for the custom paths.

Change-Id: I9f86b49f0a116bcee91ca15b6e77cfbb3867e290
---
gnu/packages/admin.scm | 17 ++++++++++++++---
1 file changed, 14 insertions(+), 3 deletions(-)

Toggle diff (39 lines)
diff --git a/gnu/packages/admin.scm b/gnu/packages/admin.scm
index fd2d10eeda..8a315ada64 100644
--- a/gnu/packages/admin.scm
+++ b/gnu/packages/admin.scm
@@ -4282,18 +4282,29 @@ (define-public fastfetch
(snippet '(begin
(delete-file-recursively "src/3rdparty")))))
(build-system cmake-build-system)
+ (arguments
+ (list
+ #:configure-flags #~(list "-DENABLE_SYSTEM_YYJSON=YES"
+ "-DBINARY_LINK_TYPE=dynamic"
+ "-DBUILD_TESTS=ON"
+ "-DINSTALL_LICENSE=OFF"
+ (string-append "-DCUSTOM_PCI_IDS_PATH="
+ #$(this-package-input "hwdata")
+ "/share/hwdata/pci.ids")
+ (string-append "-DCUSTOM_AMDGPU_IDS_PATH="
+ #$(this-package-input "libdrm")
+ "share/libdrm/amdgpu.ids"))))
(inputs (list dbus
glib
+ hwdata
imagemagick
+ libdrm
libxcb
mesa
wayland
yyjson
zlib)) ;for imagemagick and an #ifdef
(native-inputs (list pkg-config))
- (arguments
- (list #:tests? #f ; no test target
- #:configure-flags #~(list "-DENABLE_SYSTEM_YYJSON=YES")))
(home-page "https://github.com/fastfetch-cli/fastfetch")
(synopsis "Display system information in a stylized manner")
(description
--
2.45.2
D
D
Dariqq wrote on 18 Sep 2024 17:27
[PATCH v5 1/5] gnu: Add yyjson.
(address . 71968@debbugs.gnu.org)(name . Dariqq)(address . dariqq@posteo.net)
507a634c0db389695c2df167beaf31d63a5ad403.1726673231.git.dariqq@posteo.net
* gnu/packages/c.scm (yyjson): New variable.

Change-Id: Ica9ff2e1b6676aa8761eb33cbab76154f17e443f
---
gnu/packages/c.scm | 38 ++++++++++++++++++++++++++++++++++++++
1 file changed, 38 insertions(+)

Toggle diff (50 lines)
diff --git a/gnu/packages/c.scm b/gnu/packages/c.scm
index 62234d3c9a..435a70b7be 100644
--- a/gnu/packages/c.scm
+++ b/gnu/packages/c.scm
@@ -1766,3 +1766,41 @@ (define-public pcg-c
Linear Congruential Generator (LCG) with a permutation function to increase
output randomness while retaining speed, simplicity, and conciseness.")
(license (list license:expat license:asl2.0))))) ; dual licensed
+
+(define-public yyjson
+ (package
+ (name "yyjson")
+ (version "0.9.0")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/ibireme/yyjson")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "169rqh7mh01g5j4qkqjgfmgnyqjf9r8qxiywf4jkgcb7ln4j64w9"))))
+ (arguments
+ (list
+ #:configure-flags #~(list "-DBUILD_SHARED_LIBS=ON"
+ "-DYYJSON_BUILD_TESTS=ON")))
+ (build-system cmake-build-system)
+ (home-page "https://github.com/ibireme/yyjson")
+ (synopsis "High performance JSON library written in ANSI C")
+ (description
+ "Yyjson is a high performance JSON library written in ANSI C. Some features include
+@itemize
+@item Fast: can read or write gigabytes per second JSON data on modern CPUs.
+@item Portable: complies with ANSI C (C89) for cross-platform compatibility.
+@item Strict: complies with RFC 8259 JSON standard, ensuring strict
+number format and UTF-8 validation.
+@item Extendable: offers options to allow comments, trailing commas, NaN/Inf,
+ and custom memory allocator.
+@item Accuracy: can accurately read and write int64, uint64, and double numbers.
+@item Flexible: supports unlimited JSON nesting levels, \u0000 characters,
+and non null-terminated strings.
+@item Manipulation: supports querying and modifying using JSON Pointer,
+JSON Patch and JSON Merge Patch.
+@item Developer-Friendly: easy integration with only one .h and one .c file.
+@end itemize")
+ (license license:expat)))

base-commit: 1b6ce1796abdf497f61f426d61339318f4f4f23d
--
2.46.0
D
D
Dariqq wrote on 18 Sep 2024 17:27
[PATCH v5 4/5] gnu: yyjson: Update to 0.10.0.
(address . 71968@debbugs.gnu.org)(name . Dariqq)(address . dariqq@posteo.net)
d208c1203568f527199cde9791d2242a8a5b7421.1726673231.git.dariqq@posteo.net
* gnu/packages/c.scm (yyjson): Update to 0.10.0.

Change-Id: Id8be82026eb0d102272b1128cce80a5609d309d0
---
gnu/packages/c.scm | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)

Toggle diff (24 lines)
diff --git a/gnu/packages/c.scm b/gnu/packages/c.scm
index 435a70b7be..c2bec93938 100644
--- a/gnu/packages/c.scm
+++ b/gnu/packages/c.scm
@@ -1770,7 +1770,7 @@ (define-public pcg-c
(define-public yyjson
(package
(name "yyjson")
- (version "0.9.0")
+ (version "0.10.0")
(source
(origin
(method git-fetch)
@@ -1779,7 +1779,7 @@ (define-public yyjson
(commit version)))
(file-name (git-file-name name version))
(sha256
- (base32 "169rqh7mh01g5j4qkqjgfmgnyqjf9r8qxiywf4jkgcb7ln4j64w9"))))
+ (base32 "0kmzgs24v0rxlibg4qwlm6yplzs96pgxb1gyviijhkra9z7lx7ws"))))
(arguments
(list
#:configure-flags #~(list "-DBUILD_SHARED_LIBS=ON"
--
2.46.0
D
D
Dariqq wrote on 18 Sep 2024 17:27
[PATCH v5 5/5] gnu: fastfetch: Update to 2.24.0.
(address . 71968@debbugs.gnu.org)(name . Dariqq)(address . dariqq@posteo.net)
6b90849881fe2e4801b74753c6e1a931ef88f8d0.1726673231.git.dariqq@posteo.net
Also add python-minimal to minify the help.json file at build time.

* gnu/packages/admin.scm (fastfetch): Update to 2.24.0.
[native-inputs]: Add python-minimal.

Change-Id: I52d5cf244726bf4362f658f818094a483e3b3d01
---
gnu/packages/admin.scm | 6 +++---
1 file changed, 3 insertions(+), 3 deletions(-)

Toggle diff (33 lines)
diff --git a/gnu/packages/admin.scm b/gnu/packages/admin.scm
index 2c47e43b4e..a2f9e7207a 100644
--- a/gnu/packages/admin.scm
+++ b/gnu/packages/admin.scm
@@ -4284,7 +4284,7 @@ (define-public pfetch
(define-public fastfetch
(package
(name "fastfetch")
- (version "2.16.0")
+ (version "2.24.0")
(source
(origin
(method git-fetch)
@@ -4293,7 +4293,7 @@ (define-public fastfetch
(commit version)))
(file-name (git-file-name name version))
(sha256
- (base32 "112dvfx7gvp6n20i1lkd0jbh897jf7bxjxq96bj4099j3x313y3m"))
+ (base32 "19hys66a2z0in1h2f653p1sffd5hgf91gayfak33a8p2jifpwwrj"))
(modules '((guix build utils)))
(snippet '(begin
(delete-file-recursively "src/3rdparty")))))
@@ -4320,7 +4320,7 @@ (define-public fastfetch
wayland
yyjson
zlib)) ;for imagemagick and an #ifdef
- (native-inputs (list pkg-config))
+ (native-inputs (list pkg-config python-minimal))
(home-page "https://github.com/fastfetch-cli/fastfetch")
(synopsis "Display system information in a stylized manner")
(description
--
2.46.0
D
D
Dariqq wrote on 18 Sep 2024 17:27
[PATCH v5 2/5] gnu: fastfetch: Unbundle yyjson.
(address . 71968@debbugs.gnu.org)(name . Dariqq)(address . dariqq@posteo.net)
3e279b05eba2c4a1a913c1afbb5c981f16763ab8.1726673231.git.dariqq@posteo.net
* gnu/packages/admin.scm (fastftech)
[origin]: Add snippet to remove third party code.
[#:configure-flags]: Add "-DENABLE_SYSTEM_YYJSON=YES"
[inputs]: Add yyjson.

Change-Id: I8175b8f4a8d55ff3b9d5fa4cb99f1fc1ad15fd97
---
gnu/packages/admin.scm | 10 ++++++++--
1 file changed, 8 insertions(+), 2 deletions(-)

Toggle diff (32 lines)
diff --git a/gnu/packages/admin.scm b/gnu/packages/admin.scm
index d73f017912..29e8c38ef3 100644
--- a/gnu/packages/admin.scm
+++ b/gnu/packages/admin.scm
@@ -4293,7 +4293,10 @@ (define-public fastfetch
(commit version)))
(file-name (git-file-name name version))
(sha256
- (base32 "112dvfx7gvp6n20i1lkd0jbh897jf7bxjxq96bj4099j3x313y3m"))))
+ (base32 "112dvfx7gvp6n20i1lkd0jbh897jf7bxjxq96bj4099j3x313y3m"))
+ (modules '((guix build utils)))
+ (snippet '(begin
+ (delete-file-recursively "src/3rdparty")))))
(build-system cmake-build-system)
(inputs (list dbus
glib
@@ -4301,9 +4304,12 @@ (define-public fastfetch
libxcb
mesa
wayland
+ yyjson
zlib)) ;for imagemagick and an #ifdef
(native-inputs (list pkg-config))
- (arguments (list #:tests? #f)) ; no test target
+ (arguments
+ (list #:tests? #f ; no test target
+ #:configure-flags #~(list "-DENABLE_SYSTEM_YYJSON=YES")))
(home-page "https://github.com/fastfetch-cli/fastfetch")
(synopsis "Display system information in a stylized manner")
(description
--
2.46.0
D
D
Dariqq wrote on 18 Sep 2024 17:27
[PATCH v5 3/5] gnu: fastfetch: Add more configure flags.
(address . 71968@debbugs.gnu.org)(name . Dariqq)(address . dariqq@posteo.net)
ee1d32acc5a517a070f72fb6471253c76264c683.1726673231.git.dariqq@posteo.net
Most importantly the dependencies are now linked dynamically to avoid writing out a
LD_LIBRARY_PATH wrapper.

Also build the tests and skip installing the license file.

Additionally provide custom paths to pci-ids and amdgpu-ids.

* gnu/packages/admin.scm (fastfetch)
(arguments): Move above inputs.
[#:configure-flags]: Add -DBUILD_TESTS=ON, -DINSTALL_LICENSE=OFF,
-DBINARY_LINK_TYPE=dynamic and set -DCUSTOM_PCI_IDS_PATH and
-DCUSTOM_AMDGPU_IDS_PATH.
[#:tests]: Remove as now there are tests available.
[inputs]: Add hwdata and libdrm for the custom paths.

Change-Id: I9f86b49f0a116bcee91ca15b6e77cfbb3867e290
---
gnu/packages/admin.scm | 17 ++++++++++++++---
1 file changed, 14 insertions(+), 3 deletions(-)

Toggle diff (39 lines)
diff --git a/gnu/packages/admin.scm b/gnu/packages/admin.scm
index 29e8c38ef3..2c47e43b4e 100644
--- a/gnu/packages/admin.scm
+++ b/gnu/packages/admin.scm
@@ -4298,18 +4298,29 @@ (define-public fastfetch
(snippet '(begin
(delete-file-recursively "src/3rdparty")))))
(build-system cmake-build-system)
+ (arguments
+ (list
+ #:configure-flags #~(list "-DENABLE_SYSTEM_YYJSON=YES"
+ "-DBINARY_LINK_TYPE=dynamic"
+ "-DBUILD_TESTS=ON"
+ "-DINSTALL_LICENSE=OFF"
+ (string-append "-DCUSTOM_PCI_IDS_PATH="
+ #$(this-package-input "hwdata")
+ "/share/hwdata/pci.ids")
+ (string-append "-DCUSTOM_AMDGPU_IDS_PATH="
+ #$(this-package-input "libdrm")
+ "share/libdrm/amdgpu.ids"))))
(inputs (list dbus
glib
+ hwdata
imagemagick
+ libdrm
libxcb
mesa
wayland
yyjson
zlib)) ;for imagemagick and an #ifdef
(native-inputs (list pkg-config))
- (arguments
- (list #:tests? #f ; no test target
- #:configure-flags #~(list "-DENABLE_SYSTEM_YYJSON=YES")))
(home-page "https://github.com/fastfetch-cli/fastfetch")
(synopsis "Display system information in a stylized manner")
(description
--
2.46.0
D
D
Dariqq wrote on 19 Oct 2024 09:56
[PATCH v6 1/5] gnu: Add yyjson.
(address . 71968@debbugs.gnu.org)(name . Dariqq)(address . dariqq@posteo.net)
0f29d3c61209681e684687686cf650e309aa63b8.1729324600.git.dariqq@posteo.net
* gnu/packages/c.scm (yyjson): New variable.

Change-Id: Ica9ff2e1b6676aa8761eb33cbab76154f17e443f
---
gnu/packages/c.scm | 38 ++++++++++++++++++++++++++++++++++++++
1 file changed, 38 insertions(+)

Toggle diff (50 lines)
diff --git a/gnu/packages/c.scm b/gnu/packages/c.scm
index 13fdb99424..2e46b7a10d 100644
--- a/gnu/packages/c.scm
+++ b/gnu/packages/c.scm
@@ -1764,3 +1764,41 @@ (define-public pcg-c
Linear Congruential Generator (LCG) with a permutation function to increase
output randomness while retaining speed, simplicity, and conciseness.")
(license (list license:expat license:asl2.0))))) ; dual licensed
+
+(define-public yyjson
+ (package
+ (name "yyjson")
+ (version "0.9.0")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/ibireme/yyjson")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "169rqh7mh01g5j4qkqjgfmgnyqjf9r8qxiywf4jkgcb7ln4j64w9"))))
+ (arguments
+ (list
+ #:configure-flags #~(list "-DBUILD_SHARED_LIBS=ON"
+ "-DYYJSON_BUILD_TESTS=ON")))
+ (build-system cmake-build-system)
+ (home-page "https://github.com/ibireme/yyjson")
+ (synopsis "High performance JSON library written in ANSI C")
+ (description
+ "Yyjson is a high performance JSON library written in ANSI C. Some features include
+@itemize
+@item Fast: can read or write gigabytes per second JSON data on modern CPUs.
+@item Portable: complies with ANSI C (C89) for cross-platform compatibility.
+@item Strict: complies with RFC 8259 JSON standard, ensuring strict
+number format and UTF-8 validation.
+@item Extendable: offers options to allow comments, trailing commas, NaN/Inf,
+ and custom memory allocator.
+@item Accuracy: can accurately read and write int64, uint64, and double numbers.
+@item Flexible: supports unlimited JSON nesting levels, \u0000 characters,
+and non null-terminated strings.
+@item Manipulation: supports querying and modifying using JSON Pointer,
+JSON Patch and JSON Merge Patch.
+@item Developer-Friendly: easy integration with only one .h and one .c file.
+@end itemize")
+ (license license:expat)))

base-commit: 48097f511929053468ce6f09e0a24644c90fe670
--
2.46.0
D
D
Dariqq wrote on 19 Oct 2024 09:56
[PATCH v6 2/5] gnu: fastfetch: Unbundle yyjson.
(address . 71968@debbugs.gnu.org)(name . Dariqq)(address . dariqq@posteo.net)
67c7a01f7d5c1be6dba6a134dca28f416b453972.1729324600.git.dariqq@posteo.net
* gnu/packages/admin.scm (fastftech)
[origin]: Add snippet to remove third party code.
[#:configure-flags]: Add "-DENABLE_SYSTEM_YYJSON=ON"
[inputs]: Add yyjson.

Change-Id: I8175b8f4a8d55ff3b9d5fa4cb99f1fc1ad15fd97
---
gnu/packages/admin.scm | 10 ++++++++--
1 file changed, 8 insertions(+), 2 deletions(-)

Toggle diff (32 lines)
diff --git a/gnu/packages/admin.scm b/gnu/packages/admin.scm
index 2cb50ed4a8..bbea957a87 100644
--- a/gnu/packages/admin.scm
+++ b/gnu/packages/admin.scm
@@ -4289,7 +4289,10 @@ (define-public fastfetch
(commit version)))
(file-name (git-file-name name version))
(sha256
- (base32 "112dvfx7gvp6n20i1lkd0jbh897jf7bxjxq96bj4099j3x313y3m"))))
+ (base32 "112dvfx7gvp6n20i1lkd0jbh897jf7bxjxq96bj4099j3x313y3m"))
+ (modules '((guix build utils)))
+ (snippet '(begin
+ (delete-file-recursively "src/3rdparty")))))
(build-system cmake-build-system)
(inputs (list dbus
glib
@@ -4297,9 +4300,12 @@ (define-public fastfetch
libxcb
mesa
wayland
+ yyjson
zlib)) ;for imagemagick and an #ifdef
(native-inputs (list pkg-config))
- (arguments (list #:tests? #f)) ; no test target
+ (arguments
+ (list #:tests? #f ; no test target
+ #:configure-flags #~(list "-DENABLE_SYSTEM_YYJSON=ON")))
(home-page "https://github.com/fastfetch-cli/fastfetch")
(synopsis "Display system information in a stylized manner")
(description
--
2.46.0
D
D
Dariqq wrote on 19 Oct 2024 09:56
[PATCH v6 3/5] gnu: fastfetch: Add more configure flags.
(address . 71968@debbugs.gnu.org)(name . Dariqq)(address . dariqq@posteo.net)
951b3e902e8584d12af678c624e7bc3e808facdc.1729324600.git.dariqq@posteo.net
Most importantly the dependencies are now linked dynamically to avoid writing out a
LD_LIBRARY_PATH wrapper.

Also build the tests and skip installing the license file.

Additionally provide custom paths to pci-ids and amdgpu-ids.

* gnu/packages/admin.scm (fastfetch)
(arguments): Move above inputs.
[#:configure-flags]: Add -DBUILD_TESTS=ON, -DINSTALL_LICENSE=OFF,
-DBINARY_LINK_TYPE=dynamic and set -DCUSTOM_PCI_IDS_PATH and
-DCUSTOM_AMDGPU_IDS_PATH.
[#:tests]: Remove as now there are tests available.
[inputs]: Add hwdata and libdrm for the custom paths.

Change-Id: I9f86b49f0a116bcee91ca15b6e77cfbb3867e290
---
gnu/packages/admin.scm | 17 ++++++++++++++---
1 file changed, 14 insertions(+), 3 deletions(-)

Toggle diff (39 lines)
diff --git a/gnu/packages/admin.scm b/gnu/packages/admin.scm
index bbea957a87..ed6cd7de95 100644
--- a/gnu/packages/admin.scm
+++ b/gnu/packages/admin.scm
@@ -4294,18 +4294,29 @@ (define-public fastfetch
(snippet '(begin
(delete-file-recursively "src/3rdparty")))))
(build-system cmake-build-system)
+ (arguments
+ (list
+ #:configure-flags #~(list "-DENABLE_SYSTEM_YYJSON=ON"
+ "-DBINARY_LINK_TYPE=dynamic"
+ "-DBUILD_TESTS=ON"
+ "-DINSTALL_LICENSE=OFF"
+ (string-append "-DCUSTOM_PCI_IDS_PATH="
+ #$(this-package-input "hwdata")
+ "/share/hwdata/pci.ids")
+ (string-append "-DCUSTOM_AMDGPU_IDS_PATH="
+ #$(this-package-input "libdrm")
+ "share/libdrm/amdgpu.ids"))))
(inputs (list dbus
glib
+ hwdata
imagemagick
+ libdrm
libxcb
mesa
wayland
yyjson
zlib)) ;for imagemagick and an #ifdef
(native-inputs (list pkg-config))
- (arguments
- (list #:tests? #f ; no test target
- #:configure-flags #~(list "-DENABLE_SYSTEM_YYJSON=ON")))
(home-page "https://github.com/fastfetch-cli/fastfetch")
(synopsis "Display system information in a stylized manner")
(description
--
2.46.0
D
D
Dariqq wrote on 19 Oct 2024 09:56
[PATCH v6 4/5] gnu: yyjson: Update to 0.10.0.
(address . 71968@debbugs.gnu.org)(name . Dariqq)(address . dariqq@posteo.net)
580e765e1ebbf0c90e4908d5d72a69e561ac66c4.1729324600.git.dariqq@posteo.net
* gnu/packages/c.scm (yyjson): Update to 0.10.0.

Change-Id: Id8be82026eb0d102272b1128cce80a5609d309d0
---
gnu/packages/c.scm | 4 ++--
1 file changed, 2 insertions(+), 2 deletions(-)

Toggle diff (24 lines)
diff --git a/gnu/packages/c.scm b/gnu/packages/c.scm
index 2e46b7a10d..2e368ad884 100644
--- a/gnu/packages/c.scm
+++ b/gnu/packages/c.scm
@@ -1768,7 +1768,7 @@ (define-public pcg-c
(define-public yyjson
(package
(name "yyjson")
- (version "0.9.0")
+ (version "0.10.0")
(source
(origin
(method git-fetch)
@@ -1777,7 +1777,7 @@ (define-public yyjson
(commit version)))
(file-name (git-file-name name version))
(sha256
- (base32 "169rqh7mh01g5j4qkqjgfmgnyqjf9r8qxiywf4jkgcb7ln4j64w9"))))
+ (base32 "0kmzgs24v0rxlibg4qwlm6yplzs96pgxb1gyviijhkra9z7lx7ws"))))
(arguments
(list
#:configure-flags #~(list "-DBUILD_SHARED_LIBS=ON"
--
2.46.0
D
D
Dariqq wrote on 19 Oct 2024 09:56
[PATCH v6 5/5] gnu: fastfetch: Update to 2.27.1.
(address . 71968@debbugs.gnu.org)(name . Dariqq)(address . dariqq@posteo.net)
867deba90ff9736a1c59b376a9915d6df125a882.1729324600.git.dariqq@posteo.net
Also add python-minimal to minify the help.json file at build time.
Disable DIRECTX_HEADERS.

* gnu/packages/admin.scm (fastfetch): Update to 2.27.1.
[#:configure-flags]: Add ENABLE_DIRECTX_HEADERS=OFF
[native-inputs]: Add python-minimal.

Change-Id: I52d5cf244726bf4362f658f818094a483e3b3d01
---
gnu/packages/admin.scm | 7 ++++---
1 file changed, 4 insertions(+), 3 deletions(-)

Toggle diff (41 lines)
diff --git a/gnu/packages/admin.scm b/gnu/packages/admin.scm
index ed6cd7de95..5b2c7f1a6f 100644
--- a/gnu/packages/admin.scm
+++ b/gnu/packages/admin.scm
@@ -4280,7 +4280,7 @@ (define-public pfetch
(define-public fastfetch
(package
(name "fastfetch")
- (version "2.16.0")
+ (version "2.27.1")
(source
(origin
(method git-fetch)
@@ -4289,7 +4289,7 @@ (define-public fastfetch
(commit version)))
(file-name (git-file-name name version))
(sha256
- (base32 "112dvfx7gvp6n20i1lkd0jbh897jf7bxjxq96bj4099j3x313y3m"))
+ (base32 "07k9lch7av7146m81h36grnwgasfl4yiqs8lwm8f2v2ycfybmw1p"))
(modules '((guix build utils)))
(snippet '(begin
(delete-file-recursively "src/3rdparty")))))
@@ -4300,6 +4300,7 @@ (define-public fastfetch
"-DBINARY_LINK_TYPE=dynamic"
"-DBUILD_TESTS=ON"
"-DINSTALL_LICENSE=OFF"
+ "-DENABLE_DIRECTX_HEADERS=OFF"
(string-append "-DCUSTOM_PCI_IDS_PATH="
#$(this-package-input "hwdata")
"/share/hwdata/pci.ids")
@@ -4316,7 +4317,7 @@ (define-public fastfetch
wayland
yyjson
zlib)) ;for imagemagick and an #ifdef
- (native-inputs (list pkg-config))
+ (native-inputs (list pkg-config python-minimal))
(home-page "https://github.com/fastfetch-cli/fastfetch")
(synopsis "Display system information in a stylized manner")
(description
--
2.46.0
D
D
Dariqq wrote on 20 Nov 2024 09:32
[PATCH v7 3/3] gnu: fastfetch: Add more configure flags.
(address . 71968@debbugs.gnu.org)(name . Dariqq)(address . dariqq@posteo.net)
dda640c73d7fa0d87ad726f794011566e4ba0890.1732090301.git.dariqq@posteo.net
Use dynamic linking for dependencies instead of dlopening them at runtime which requries a wrapper with LD_LIBRARY_PATH.

Additionally provide custom paths to pci-ids and amdgpu-ids.

* gnu/packages/admin.scm (fastfetch)
[#:configure-flags]: Enable dynamic linking and disable directx-headers. Set
custom paths to hwdata and libdrm.
[inputs]: Add hwdata and libdrm for the custom paths.

Change-Id: I9f86b49f0a116bcee91ca15b6e77cfbb3867e290
---
gnu/packages/admin.scm | 12 +++++++++++-
1 file changed, 11 insertions(+), 1 deletion(-)

Toggle diff (28 lines)
diff --git a/gnu/packages/admin.scm b/gnu/packages/admin.scm
index 78c6e904b8..ca1deaf520 100644
--- a/gnu/packages/admin.scm
+++ b/gnu/packages/admin.scm
@@ -4325,10 +4325,20 @@ (define-public fastfetch
(list
#:configure-flags #~(list "-DENABLE_SYSTEM_YYJSON=ON"
"-DBUILD_TESTS=ON"
- "-DINSTALL_LICENSE=OFF")))
+ "-DINSTALL_LICENSE=OFF"
+ "-DBINARY_LINK_TYPE=dynamic"
+ "-DENABLE_DIRECTX_HEADERS=OFF"
+ (string-append "-DCUSTOM_PCI_IDS_PATH="
+ #$(this-package-input "hwdata")
+ "/share/hwdata/pci.ids")
+ (string-append "-DCUSTOM_AMDGPU_IDS_PATH="
+ #$(this-package-input "libdrm")
+ "share/libdrm/amdgpu.ids"))))
(inputs (list dbus
glib
+ hwdata
imagemagick
+ libdrm
libxcb
mesa
wayland
--
2.46.0
D
D
Dariqq wrote on 20 Nov 2024 09:32
[PATCH v7 0/3] fastfetch: Unbundle yyjson, update and package improvements
(address . 71968@debbugs.gnu.org)(name . Dariqq)(address . dariqq@posteo.net)
cover.1732090301.git.dariqq@posteo.net
In the rare case that someone is reading this, I rebased things again and bumped the fastfetch version to the latest version.


I simplified things a bit by doing the unbundling of yyjson and the package update in the same commit s.t. I don't have to add the previous yyjson version as well.

* The package currently is violating the guix packaging guidelines by bundling dependencies
* Some of the optional features that are currently enabled don't work because fastfetch wants to dlopen the relevant so at runtime:
Look at 'fastfetch -c all --show-errors' and observe e.g.
Media: Failed to load DBus library
OpenGL: dlopen egl failed

To avoid writing out a wrapper for LD_LIBRARY_PATH I am changing to dynamic linking instead (which also makes it easier if others want to create a variant that has more stuff enabled)

Lastly overwriting the path to pci.ids and amdgpu.ids , the default paths assume a FHS layout.


Dariqq (3):
gnu: Add yyjson.
gnu: fastfetch: Update to 2.30.1.
gnu: fastfetch: Add more configure flags.

gnu/packages/admin.scm | 26 ++++++++++++++++++++++----
gnu/packages/c.scm | 38 ++++++++++++++++++++++++++++++++++++++
2 files changed, 60 insertions(+), 4 deletions(-)


base-commit: 129641fcd2956d6c571b792efe703da545f18c0a
--
2.46.0
D
D
Dariqq wrote on 20 Nov 2024 09:32
[PATCH v7 2/3] gnu: fastfetch: Update to 2.30.1.
(address . 71968@debbugs.gnu.org)(name . Dariqq)(address . dariqq@posteo.net)
55fe752934bfe8a7ec52a1c9d31f6e7c3985e27d.1732090301.git.dariqq@posteo.net
* gnu/packages/admin.scm (fastfetch): Update to 2.30.1.
[origin]: Add snippet to remove third party code.
[#:configure-flags]: Disable bundled yyjson, enable tests and skip installing license.
[native-inputs]: Add python-minimal.
[inputs]: Add yyjson.

Change-Id: I52d5cf244726bf4362f658f818094a483e3b3d01
---
gnu/packages/admin.scm | 16 ++++++++++++----
1 file changed, 12 insertions(+), 4 deletions(-)

Toggle diff (44 lines)
diff --git a/gnu/packages/admin.scm b/gnu/packages/admin.scm
index 9c765b51a9..78c6e904b8 100644
--- a/gnu/packages/admin.scm
+++ b/gnu/packages/admin.scm
@@ -4307,7 +4307,7 @@ (define-public pfetch
(define-public fastfetch
(package
(name "fastfetch")
- (version "2.16.0")
+ (version "2.30.1")
(source
(origin
(method git-fetch)
@@ -4316,17 +4316,25 @@ (define-public fastfetch
(commit version)))
(file-name (git-file-name name version))
(sha256
- (base32 "112dvfx7gvp6n20i1lkd0jbh897jf7bxjxq96bj4099j3x313y3m"))))
+ (base32 "0q4q7pc28iwa34wq9crh3k5kdlzivjxlkwyin6k4vv7282qnpphs"))
+ (modules '((guix build utils)))
+ (snippet '(begin
+ (delete-file-recursively "src/3rdparty")))))
(build-system cmake-build-system)
+ (arguments
+ (list
+ #:configure-flags #~(list "-DENABLE_SYSTEM_YYJSON=ON"
+ "-DBUILD_TESTS=ON"
+ "-DINSTALL_LICENSE=OFF")))
(inputs (list dbus
glib
imagemagick
libxcb
mesa
wayland
+ yyjson
zlib)) ;for imagemagick and an #ifdef
- (native-inputs (list pkg-config))
- (arguments (list #:tests? #f)) ; no test target
+ (native-inputs (list pkg-config python-minimal))
(home-page "https://github.com/fastfetch-cli/fastfetch")
(synopsis "Display system information in a stylized manner")
(description
--
2.46.0
D
D
Dariqq wrote on 20 Nov 2024 09:32
[PATCH v7 1/3] gnu: Add yyjson.
(address . 71968@debbugs.gnu.org)(name . Dariqq)(address . dariqq@posteo.net)
bab6c7f3b28ff98876107c78152e06e939156eb8.1732090301.git.dariqq@posteo.net
* gnu/packages/c.scm (yyjson): New variable.

Change-Id: Ica9ff2e1b6676aa8761eb33cbab76154f17e443f
---
gnu/packages/c.scm | 38 ++++++++++++++++++++++++++++++++++++++
1 file changed, 38 insertions(+)

Toggle diff (48 lines)
diff --git a/gnu/packages/c.scm b/gnu/packages/c.scm
index 13fdb99424..2e368ad884 100644
--- a/gnu/packages/c.scm
+++ b/gnu/packages/c.scm
@@ -1764,3 +1764,41 @@ (define-public pcg-c
Linear Congruential Generator (LCG) with a permutation function to increase
output randomness while retaining speed, simplicity, and conciseness.")
(license (list license:expat license:asl2.0))))) ; dual licensed
+
+(define-public yyjson
+ (package
+ (name "yyjson")
+ (version "0.10.0")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/ibireme/yyjson")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "0kmzgs24v0rxlibg4qwlm6yplzs96pgxb1gyviijhkra9z7lx7ws"))))
+ (arguments
+ (list
+ #:configure-flags #~(list "-DBUILD_SHARED_LIBS=ON"
+ "-DYYJSON_BUILD_TESTS=ON")))
+ (build-system cmake-build-system)
+ (home-page "https://github.com/ibireme/yyjson")
+ (synopsis "High performance JSON library written in ANSI C")
+ (description
+ "Yyjson is a high performance JSON library written in ANSI C. Some features include
+@itemize
+@item Fast: can read or write gigabytes per second JSON data on modern CPUs.
+@item Portable: complies with ANSI C (C89) for cross-platform compatibility.
+@item Strict: complies with RFC 8259 JSON standard, ensuring strict
+number format and UTF-8 validation.
+@item Extendable: offers options to allow comments, trailing commas, NaN/Inf,
+ and custom memory allocator.
+@item Accuracy: can accurately read and write int64, uint64, and double numbers.
+@item Flexible: supports unlimited JSON nesting levels, \u0000 characters,
+and non null-terminated strings.
+@item Manipulation: supports querying and modifying using JSON Pointer,
+JSON Patch and JSON Merge Patch.
+@item Developer-Friendly: easy integration with only one .h and one .c file.
+@end itemize")
+ (license license:expat)))
--
2.46.0
C
C
Christopher Baines wrote on 29 Dec 2024 12:29
(name . Dariqq)(address . dariqq@posteo.net)(address . 71968@debbugs.gnu.org)
87ed1qafs1.fsf@cbaines.net
Dariqq <dariqq@posteo.net> writes:

Toggle quote (48 lines)
> * gnu/packages/c.scm (yyjson): New variable.
>
> Change-Id: Ica9ff2e1b6676aa8761eb33cbab76154f17e443f
> ---
> gnu/packages/c.scm | 38 ++++++++++++++++++++++++++++++++++++++
> 1 file changed, 38 insertions(+)
>
> diff --git a/gnu/packages/c.scm b/gnu/packages/c.scm
> index 13fdb99424..2e368ad884 100644
> --- a/gnu/packages/c.scm
> +++ b/gnu/packages/c.scm
> @@ -1764,3 +1764,41 @@ (define-public pcg-c
> Linear Congruential Generator (LCG) with a permutation function to increase
> output randomness while retaining speed, simplicity, and conciseness.")
> (license (list license:expat license:asl2.0))))) ; dual licensed
> +
> +(define-public yyjson
> + (package
> + (name "yyjson")
> + (version "0.10.0")
> + (source
> + (origin
> + (method git-fetch)
> + (uri (git-reference
> + (url "https://github.com/ibireme/yyjson")
> + (commit version)))
> + (file-name (git-file-name name version))
> + (sha256
> + (base32 "0kmzgs24v0rxlibg4qwlm6yplzs96pgxb1gyviijhkra9z7lx7ws"))))
> + (arguments
> + (list
> + #:configure-flags #~(list "-DBUILD_SHARED_LIBS=ON"
> + "-DYYJSON_BUILD_TESTS=ON")))
> + (build-system cmake-build-system)
> + (home-page "https://github.com/ibireme/yyjson")
> + (synopsis "High performance JSON library written in ANSI C")
> + (description
> + "Yyjson is a high performance JSON library written in ANSI C. Some features include
> +@itemize
> +@item Fast: can read or write gigabytes per second JSON data on modern CPUs.
> +@item Portable: complies with ANSI C (C89) for cross-platform compatibility.
> +@item Strict: complies with RFC 8259 JSON standard, ensuring strict
> +number format and UTF-8 validation.
> +@item Extendable: offers options to allow comments, trailing commas, NaN/Inf,
> + and custom memory allocator.
> +@item Accuracy: can accurately read and write int64, uint64, and double numbers.
> +@item Flexible: supports unlimited JSON nesting levels, \u0000 characters,

Just one observation, here you've written a null character where I'm
guessing you might want \\u0000 instead.
-----BEGIN PGP SIGNATURE-----

iQKlBAEBCgCPFiEEPonu50WOcg2XVOCyXiijOwuE9XcFAmdxMp5fFIAAAAAALgAo
aXNzdWVyLWZwckBub3RhdGlvbnMub3BlbnBncC5maWZ0aGhvcnNlbWFuLm5ldDNF
ODlFRUU3NDU4RTcyMEQ5NzU0RTBCMjVFMjhBMzNCMEI4NEY1NzcRHG1haWxAY2Jh
aW5lcy5uZXQACgkQXiijOwuE9XfEbw//dRAmT1aXvtPDQoJZwPWwEeIQfiLsI6t4
yU0ju7S5HkkBbQ95iz4CDLARlWMxJX+4Z2ifBTXKTouKG+nRJMOMb0WYFuVhFuTx
bTH2/7j34m7VBqhRpi/hraf+EYa9aEv1mxq257T6lRtEqKnyfyS4BlJEOT/y39PA
9hbWYu8ozxFp3bdUBF0py3xbcgyMkng+MFUmHZiUAXGKSFI9soWJg5Hdp+Doq4ik
MHyVjePOrFjOKxHm3bhqCfg+KZOpzo14XwZoWFmJp8ZgW65Md3IzXq1YK4y7Zc7W
YGAsFE8O0QYLTuWez4bY+prmgtgwQEYvNKDH51rHBveGTgtydHKCCbadMFfz0605
tnaksjBHcQYOj17OXcWlcWmASBY9V1PFp3nCmjl3MF9pBPzmQUh/DloQ559CQ8fH
FVMkDOuiix2/2Firz2kiyNBM5PuHNN79Aoe//B/s5sYV68zdt7LZrLOJkA28or04
O8XHaPTxxaFdzSxHdm8LHYEsZATf/FGLeeVYJ80F1xJ6QXVraBtPMoCBXi6S9YxG
YrOrSSP4TIzq0NmflqkjTQ77zFyi/Yzjhgc5jjRE3ek6PqDEyClNRiQQP0mCpcb4
JM6GyzeMfjcahUhLHs6NLRzJ+JpbZBVhLa2e3Zlwhd4G3l5okVcj2TKvVJdCVu00
GTJgfkHciJo=
=VUxy
-----END PGP SIGNATURE-----

D
D
Dariqq wrote on 30 Dec 2024 18:20
(name . Christopher Baines)(address . mail@cbaines.net)(address . 71968@debbugs.gnu.org)
69135684-2682-4f0c-aae2-5a029d8f73bf@posteo.net
Hello Christopher,

On 29.12.24 12:29, Christopher Baines wrote:

Toggle quote (4 lines)
>
> Just one observation, here you've written a null character where I'm
> guessing you might want \\u0000 instead.

Thanks for the hint.

I am not not sure if it is worth my time resending this for the eighth
time (despite the package currently violating guix packaging guidelines).


The latest fastfetch release
new configure flag -DBUILD_FLASHFETCH=OFF which probably should be added
aswell)

Have a nice day,
Dariqq
D
D
Dariqq wrote on 15 Jan 21:16 +0100
[PATCH v8 0/3] fastfetch: Unbundle yyjson and other tweaks
(address . 71968@debbugs.gnu.org)(name . Dariqq)(address . dariqq@posteo.net)
cover.1736971588.git.dariqq@posteo.net
In the rare case that someone is reading this, I rebased things once again again.

* The package currently is violating the guix packaging guidelines by bundling dependencies
* Some of the optional features that are currently enabled don't work because fastfetch wants to dlopen the relevant so at runtime:

Look at 'fastfetch -c all --show-errors' and observe e.g.
Media: Failed to load DBus library
OpenGL: dlopen libEGL.so failed

To avoid writing out a wrapper for LD_LIBRARY_PATH I am changing to dynamic linking instead (which also makes it easier if others want to create a variant that has more stuff enabled).


Per the request of upstream [1] building of flashfetch is also disabled.

Lastly overwriting the path to pci.ids and amdgpu.ids , the default paths assume a FHS layout.


Also fixed the accidental null character in the yyjson descritpion.


Dariqq (3):
gnu: Add yyjson.
gnu: fastfetch: Update to 2.34.1.
gnu: fastfetch: Add more configure flags.

gnu/packages/admin.scm | 27 +++++++++++++++++++++++----
gnu/packages/c.scm | 38 ++++++++++++++++++++++++++++++++++++++
2 files changed, 61 insertions(+), 4 deletions(-)


base-commit: 9d7a9b6dc655ec6dd3cdb6f50fea1ca98f12fb8d
--
2.47.1
D
D
Dariqq wrote on 15 Jan 21:16 +0100
[PATCH v8 1/3] gnu: Add yyjson.
(address . 71968@debbugs.gnu.org)(name . Dariqq)(address . dariqq@posteo.net)
80ca7c9342b8da1fef39a19f3054d38ef666d794.1736971588.git.dariqq@posteo.net
* gnu/packages/c.scm (yyjson): New variable.

Change-Id: Ica9ff2e1b6676aa8761eb33cbab76154f17e443f
---
gnu/packages/c.scm | 38 ++++++++++++++++++++++++++++++++++++++
1 file changed, 38 insertions(+)

Toggle diff (48 lines)
diff --git a/gnu/packages/c.scm b/gnu/packages/c.scm
index 07df24d4e1..25c0587227 100644
--- a/gnu/packages/c.scm
+++ b/gnu/packages/c.scm
@@ -1764,3 +1764,41 @@ (define-public pcg-c
Linear Congruential Generator (LCG) with a permutation function to increase
output randomness while retaining speed, simplicity, and conciseness.")
(license (list license:expat license:asl2.0))))) ; dual licensed
+
+(define-public yyjson
+ (package
+ (name "yyjson")
+ (version "0.10.0")
+ (source
+ (origin
+ (method git-fetch)
+ (uri (git-reference
+ (url "https://github.com/ibireme/yyjson")
+ (commit version)))
+ (file-name (git-file-name name version))
+ (sha256
+ (base32 "0kmzgs24v0rxlibg4qwlm6yplzs96pgxb1gyviijhkra9z7lx7ws"))))
+ (arguments
+ (list
+ #:configure-flags #~(list "-DBUILD_SHARED_LIBS=ON"
+ "-DYYJSON_BUILD_TESTS=ON")))
+ (build-system cmake-build-system)
+ (home-page "https://github.com/ibireme/yyjson")
+ (synopsis "High performance JSON library written in ANSI C")
+ (description
+ "Yyjson is a high performance JSON library written in ANSI C. Some features include
+@itemize
+@item Fast: can read or write gigabytes per second JSON data on modern CPUs.
+@item Portable: complies with ANSI C (C89) for cross-platform compatibility.
+@item Strict: complies with RFC 8259 JSON standard, ensuring strict
+number format and UTF-8 validation.
+@item Extendable: offers options to allow comments, trailing commas, NaN/Inf,
+ and custom memory allocator.
+@item Accuracy: can accurately read and write int64, uint64, and double numbers.
+@item Flexible: supports unlimited JSON nesting levels, \\u0000 characters,
+and non null-terminated strings.
+@item Manipulation: supports querying and modifying using JSON Pointer,
+JSON Patch and JSON Merge Patch.
+@item Developer-Friendly: easy integration with only one .h and one .c file.
+@end itemize")
+ (license license:expat)))
--
2.47.1
D
D
Dariqq wrote on 15 Jan 21:16 +0100
[PATCH v8 2/3] gnu: fastfetch: Update to 2.34.1.
(address . 71968@debbugs.gnu.org)(name . Dariqq)(address . dariqq@posteo.net)
c6fa8f078f0f0a66cb9f28a693377321e91ab9b9.1736971588.git.dariqq@posteo.net
* gnu/packages/admin.scm (fastfetch): Update to 2.34.1.
[origin]: Add snippet to remove third party code.
[#:configure-flags]: Disable bundled yyjson, disable flashfetch, enable tests and skip installing license.
[native-inputs]: Add python-minimal.
[inputs]: Add yyjson.

Change-Id: I52d5cf244726bf4362f658f818094a483e3b3d01
---
gnu/packages/admin.scm | 17 +++++++++++++----
1 file changed, 13 insertions(+), 4 deletions(-)

Toggle diff (45 lines)
diff --git a/gnu/packages/admin.scm b/gnu/packages/admin.scm
index 4e977d97ee..f3bc7652f0 100644
--- a/gnu/packages/admin.scm
+++ b/gnu/packages/admin.scm
@@ -4450,7 +4450,7 @@ (define-public pfetch
(define-public fastfetch
(package
(name "fastfetch")
- (version "2.34.0")
+ (version "2.34.1")
(source
(origin
(method git-fetch)
@@ -4459,17 +4459,26 @@ (define-public fastfetch
(commit version)))
(file-name (git-file-name name version))
(sha256
- (base32 "17033prhikj3aajfcfzi0mjc4487hyq5r2av38rw59yb95hl6fv5"))))
+ (base32 "1fb8ix2wxvqb414gvc6174dwigpixswbysq7yp9c3rw3c55r294h"))
+ (modules '((guix build utils)))
+ (snippet '(begin
+ (delete-file-recursively "src/3rdparty")))))
(build-system cmake-build-system)
+ (arguments
+ (list
+ #:configure-flags #~(list "-DENABLE_SYSTEM_YYJSON=ON"
+ "-DBUILD_FLASHFETCH=OFF"
+ "-DBUILD_TESTS=ON"
+ "-DINSTALL_LICENSE=OFF")))
(inputs (list dbus
glib
imagemagick
libxcb
mesa
wayland
+ yyjson
zlib)) ;for imagemagick and an #ifdef
- (native-inputs (list pkg-config))
- (arguments (list #:tests? #f)) ; no test target
+ (native-inputs (list pkg-config python-minimal))
(home-page "https://github.com/fastfetch-cli/fastfetch")
(synopsis "Display system information in a stylized manner")
(description
--
2.47.1
D
D
Dariqq wrote on 15 Jan 21:16 +0100
[PATCH v8 3/3] gnu: fastfetch: Add more configure flags.
(address . 71968@debbugs.gnu.org)(name . Dariqq)(address . dariqq@posteo.net)
c6afb360687caf92604fadf854688b8dc14db8b1.1736971588.git.dariqq@posteo.net
Use dynamic linking for dependencies instead of dlopening them at runtime which requries a wrapper with LD_LIBRARY_PATH.

Additionally provide custom paths to pci-ids and amdgpu-ids.

* gnu/packages/admin.scm (fastfetch)
[#:configure-flags]: Enable dynamic linking and disable directx-headers. Set
custom paths to hwdata and libdrm.
[inputs]: Add hwdata and libdrm for the custom paths.

Change-Id: I9f86b49f0a116bcee91ca15b6e77cfbb3867e290
---
gnu/packages/admin.scm | 12 +++++++++++-
1 file changed, 11 insertions(+), 1 deletion(-)

Toggle diff (28 lines)
diff --git a/gnu/packages/admin.scm b/gnu/packages/admin.scm
index f3bc7652f0..97cb3aaf78 100644
--- a/gnu/packages/admin.scm
+++ b/gnu/packages/admin.scm
@@ -4469,10 +4469,20 @@ (define-public fastfetch
#:configure-flags #~(list "-DENABLE_SYSTEM_YYJSON=ON"
"-DBUILD_FLASHFETCH=OFF"
"-DBUILD_TESTS=ON"
- "-DINSTALL_LICENSE=OFF")))
+ "-DINSTALL_LICENSE=OFF"
+ "-DBINARY_LINK_TYPE=dynamic"
+ "-DENABLE_DIRECTX_HEADERS=OFF"
+ (string-append "-DCUSTOM_PCI_IDS_PATH="
+ #$(this-package-input "hwdata")
+ "/share/hwdata/pci.ids")
+ (string-append "-DCUSTOM_AMDGPU_IDS_PATH="
+ #$(this-package-input "libdrm")
+ "share/libdrm/amdgpu.ids"))))
(inputs (list dbus
glib
+ hwdata
imagemagick
+ libdrm
libxcb
mesa
wayland
--
2.47.1
S
S
Sharlatan Hellseher wrote on 15 Jan 22:38 +0100
[PATCH 0/4] fastfetch: Unbundle yyjson and package improvements
(address . 71968-done@debbugs.gnu.org)
871px3kb9u.fsf@gmail.com
Hi,

Thank you for your patience and work on nicely crafted patches!

I've reviewed them, applied some relaxation to description of jjson and
pushed as:

- 7eb3a5ac7dd * master gnu: fastfetch: Add more configure flags.
- a0b40f26cf4 * gnu: fastfetch: Update to 2.34.1.
- ab73372eec4 * gnu: Add yyjson.

Toggle snippet (29 lines)
> $(./pre-inst-env guix build fastfetch)/bin/fastfetch
.. `. sharlatan@guxtil
`--..```..` `..```..--` ----------------
.-:///-:::. `-:::///:-. OS: Guix System x86_64
````.:::` `:::.```` Kernel: Linux 6.11.10
-//:` -::- Uptime: 10 days, 35 mins
://: -::- Packages: 237 (guix-system), 156 (guix-user)
`///- .:::` Shell: bash 5.1.16
-+++-:::. Display (DELL U2412M): 1920x1200 @ 60 Hz in 24" [External] *
:+/:::- Display (DELL U2412M): 1920x1200 @ 60 Hz in 24" [External]
`-....` DE: GNOME 44.10
WM: Mutter (X11)
WM Theme: Adwaita
Theme: Adwaita [GTK2/3/4]
Icons: Adwaita [GTK2/3/4]
Font: Sans (11pt) [GTK2/3/4]
Cursor: Adwaita (24px)
Terminal: guix
CPU: AMD Ryzen 7 3800X (16) @ 4.56 GHz
GPU: AMD Radeon Pro WX 4100 [Discrete]
Memory: 10.10 GiB / 62.73 GiB (16%)
Swap: 744.75 MiB / 3.72 GiB (20%)
Disk (/): 150.90 GiB / 453.71 GiB (33%) - ext4
Disk (/mnt/library): 806.87 GiB / 5.46 TiB (14%) - xfs
**********************************
Locale: en_GB.utf8


Diff:

Toggle snippet (51 lines)
@@ -1784,21 +1784,26 @@ (define-public yyjson
"-DYYJSON_BUILD_TESTS=ON")))
(build-system cmake-build-system)
(home-page "https://github.com/ibireme/yyjson")
- (synopsis "High performance JSON library written in ANSI C")
+ (synopsis "C implementation of JSON RFC 8259")
(description
- "Yyjson is a high performance JSON library written in ANSI C. Some features include
+ "This package provides an implementation of JSON in ANSI C as specified
+in RFC 8259.
+Features:
@itemize
@item Fast: can read or write gigabytes per second JSON data on modern CPUs.
@item Portable: complies with ANSI C (C89) for cross-platform compatibility.
-@item Strict: complies with RFC 8259 JSON standard, ensuring strict
-number format and UTF-8 validation.
+@item Strict: complies with
+@url{https://datatracker.ietf.org/doc/html/rfc8259,RFC 8259} JSON standard,
+ensuring strict number format and UTF-8 validation.
@item Extendable: offers options to allow comments, trailing commas, NaN/Inf,
and custom memory allocator.
-@item Accuracy: can accurately read and write int64, uint64, and double numbers.
-@item Flexible: supports unlimited JSON nesting levels, \\u0000 characters,
-and non null-terminated strings.
+@item Accuracy: can accurately read and write @code{int64}, @code{uint64}, and
+@code{double} numbers.
+@item Flexible: supports unlimited JSON nesting levels, @code{\\u0000}
+characters, and non null-terminated strings.
@item Manipulation: supports querying and modifying using JSON Pointer,
JSON Patch and JSON Merge Patch.
-@item Developer-Friendly: easy integration with only one .h and one .c file.
+@item Developer-Friendly: easy integration with only one @code{.h} and one
+@code{.c} file.
@end itemize")
(license license:expat)))

@@ -1779,11 +1779,11 @@ (define-public yyjson
(file-name (git-file-name name version))
(sha256
(base32 "0kmzgs24v0rxlibg4qwlm6yplzs96pgxb1gyviijhkra9z7lx7ws"))))
+ (build-system cmake-build-system)
(arguments
(list
#:configure-flags #~(list "-DBUILD_SHARED_LIBS=ON"
"-DYYJSON_BUILD_TESTS=ON")))
- (build-system cmake-build-system)
(home-page "https://github.com/ibireme/yyjson")
(synopsis "C implementation of JSON RFC 8259")
(description

--
Thanks,
Oleg
-----BEGIN PGP SIGNATURE-----

iQIzBAEBCgAdFiEEmEeB3micIcJkGAhndtcnv/Ys0rUFAmeIKu0ACgkQdtcnv/Ys
0rUG1w//erZWe2pA3NpGdocVutrPpWc293r63iDxWURh8cwHoul9P90Y5kK3vZuE
c12mrSLuekFkNnxO+sFDP/FXWO1T91TF+GbXufNX3fLRg5BElrJeDUsXfV4WcB7/
fw5ujfdzh1sueNY7LroJ/MGjyX+1bWuVGusxu5Qnx+JqiJcgxaH8Hmh/RrCD+hou
9Z0+1fjSGxwJL36UmoG8XIH8fOCuZwXtswVCXMeQgbjDIHAXM9L60pfWJ5AastDR
KwGcmJ6q5flQd7ymYwhslIuLM2tSpxvZ2V3ytpLB02vcdyycz0jeuzrilJ/ZFVND
puMlsJxfwiNd+GpMSu8RrsZQvXHFyNJZjsEIYxxyO8wLogrSK1BV2Ib7moVDUl++
M7PE8We21hXgqrxnL49o1alvrPJd/QAUnRJQOAJWT9I+cUvHf8xn34nm64X+QfOA
FAW/12+iueSsWfbCX65WjYNeMer6ukNCbMpv0s0a58LfARALHSr5dPXpbns6Ygx8
amoqxyg92ETW3+Y+vDs4COrn5Fbyv6L1F4AIBi0nrk6hTabwMCsSxjgUqE1IKXC6
8mgZCpp6r3RIXeBHKgWebPV4fNARwdKujvY5/a1LLG2byqHIxE5HFCVBHPecoHfi
G5ffBsbAo4AtaJgp+CAwlYS5dzHRBNd/7+EW/2EbQHUrX+MXp+s=
=3YnA
-----END PGP SIGNATURE-----

Closed
?
Your comment

Commenting via the web interface is currently disabled.

To comment on this conversation send an email to 71968@debbugs.gnu.org

To respond to this issue using the mumi CLI, first switch to it
mumi current 71968
Then, you may apply the latest patchset in this issue (with sign off)
mumi am -- -s
Or, compose a reply to this issue
mumi compose
Or, send patches to this issue
mumi send-email *.patch