~ruther/guix-local

f5895dab8a99c758b2591de334e7ac3ba9eb66fb — Federico Beffa 11 years ago 65cd77d
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.
1 files changed, 17 insertions(+), 16 deletions(-)

M guix/build/glib-or-gtk-build-system.scm
M guix/build/glib-or-gtk-build-system.scm => guix/build/glib-or-gtk-build-system.scm +17 -16
@@ 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))