summary refs log tree commit diff
diff options
context:
space:
mode:
authorFederico Beffa <beffa@fbengineering.ch>2015-01-13 09:11:51 +0100
committerFederico Beffa <beffa@fbengineering.ch>2015-01-13 09:16:47 +0100
commitf5895dab8a99c758b2591de334e7ac3ba9eb66fb (patch)
tree531464d4383d58766e3a30cee9c55e23e07c958c
parent65cd77db204b611009368da704e15add51fd9ba7 (diff)
downloadguix-f5895dab8a99c758b2591de334e7ac3ba9eb66fb.tar.gz
build/glib-or-gtk-build-system: Fix 'generate-icon-cache'.
Reported by Mark H Weaver <mhw@netris.org>

* guix/build/glib-or-gtk-build-system.scm (generate-icon-cache): Add check for
  existence of icons directory.
-rw-r--r--guix/build/glib-or-gtk-build-system.scm33
1 files changed, 17 insertions, 16 deletions
diff --git a/guix/build/glib-or-gtk-build-system.scm b/guix/build/glib-or-gtk-build-system.scm
index 2fe7aa4474..a404a84f3f 100644
--- a/guix/build/glib-or-gtk-build-system.scm
+++ b/guix/build/glib-or-gtk-build-system.scm
@@ -217,22 +217,23 @@ needed."
           ((output . directory)
            (let ((iconsdir (string-append directory
                                             "/share/icons")))
-             (with-directory-excursion iconsdir
-               (for-each
-                (lambda (dir)
-                  (unless (file-exists?
-                           (string-append iconsdir "/" dir "/"
-                                          "icon-theme.cache"))
-                    (system* "gtk-update-icon-cache"
-                             "--ignore-theme-index"
-                             (string-append iconsdir "/" dir))))
-                (scandir "."
-                         (lambda (name)
-                           (and
-                            (not (equal? name "."))
-                            (not (equal? name ".."))
-                            (equal? 'directory
-                                    (stat:type (stat name))))))))
+             (when (file-exists? iconsdir)
+               (with-directory-excursion iconsdir
+                 (for-each
+                  (lambda (dir)
+                    (unless (file-exists?
+                             (string-append iconsdir "/" dir "/"
+                                            "icon-theme.cache"))
+                      (system* "gtk-update-icon-cache"
+                               "--ignore-theme-index"
+                               (string-append iconsdir "/" dir))))
+                  (scandir "."
+                           (lambda (name)
+                             (and
+                              (not (equal? name "."))
+                              (not (equal? name ".."))
+                              (equal? 'directory
+                                      (stat:type (stat name)))))))))
              #t)))
          outputs))