Subject: bug#71968: closed ([PATCH 0/4] fastfetch: Unbundle yyjson and package improvements)

From: [email-masked] (GNU bug Tracking System)
Date: Wed, 15 Jan 2025 21:40:02 +0000

Your bug report

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

which was filed against the guix-patches package, has been closed.

The explanation is attached below, along with your original report.
If you require more details, please reply to [email-masked].

-- 
71968: https://debbugs.gnu.org/cgi/bugreport.cgi?bug=71968
GNU Bug Tracking System
Contact [email-masked] with problems

Subject: [PATCH 0/4] fastfetch: Unbundle yyjson and package improvements
From: Sharlatan Hellseher <[email-masked]>
To: [email-masked]
Date: Wed, 15 Jan 2025 21:38:53 +0000
List-Id: <debbugs-submit.debbugs.gnu.org>

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.

--8<---------------cut here---------------start------------->8---
> $(./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

--8<---------------cut here---------------end--------------->8---

Diff:

--8<---------------cut here---------------start------------->8---
@@ -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
--8<---------------cut here---------------end--------------->8---

--
Thanks,
Oleg

Subject: [PATCH 0/4] fastfetch: Unbundle yyjson and package improvements
From: Dariqq <[email-masked]>
To: [email-masked]
Cc: Dariqq <[email-masked]>
Date: Sat, 6 Jul 2024 07:03:46 +0000
List-Id: <debbugs-submit.debbugs.gnu.org>

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