[bug#78100] guix: gtk-icon-themes: Generate output if no icons

Message ID 6a181010b8ad2c22063a64ab848303bc243e5f79.1745787923.git.rutherther@ditigal.xyz
State New
Headers
Series [bug#78100] guix: gtk-icon-themes: Generate output if no icons |

Commit Message

Rutherther April 27, 2025, 9:05 p.m. UTC
  When there are no icon themes, but gtk+ is referenced in the manifest,
the output won't be produced in the gtk-icon-themes derivation.
This will lead to an error.

The problem has been reported by lilyp on IRC. I can't find any packages in
Guix that use gtk+ in inputs and don't have any icons, but this low-effort
package replicates the issue:
```
(package
  (inherit bash)
  (inputs
    (modify-inputs
      (package-inputs bash)
      (append gtk+))))
```

* guix/profiles.scm (gtk-icon-themes): Produce output when no icon cache is created.

Change-Id: I2aa5ab0023c9c584182c67f79102fb66b46a3a7d
---
 guix/profiles.scm | 3 +++
 1 file changed, 3 insertions(+)


base-commit: 4e79ec48af8173f0f2a86fa2c8f971dc8234b941
  

Patch

diff --git a/guix/profiles.scm b/guix/profiles.scm
index 64d669c353..086280329e 100644
--- a/guix/profiles.scm
+++ b/guix/profiles.scm
@@ -1379,6 +1379,9 @@  (define* (gtk-icon-themes manifest #:optional system)
                          (srfi srfi-26)
                          (ice-9 ftw))
 
+            ;; Ensure output is produced when no cache files are created.
+            (mkdir-p #$output)
+
             (let* ((destdir  (string-append #$output "/share/icons"))
                    (icondirs (filter file-exists?
                                      (map (cut string-append <> "/share/icons")