guix-commits
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

03/04: gnu: xfdesktop: Stick a Guix logo in the background image.


From: guix-commits
Subject: 03/04: gnu: xfdesktop: Stick a Guix logo in the background image.
Date: Fri, 26 Apr 2019 12:27:24 -0400 (EDT)

civodul pushed a commit to branch master
in repository guix.

commit a9a0790376c54c9f205a1633ce54dadd204e784e
Author: Ludovic Courtès <address@hidden>
Date:   Fri Apr 26 18:23:56 2019 +0200

    gnu: xfdesktop: Stick a Guix logo in the background image.
    
    * gnu/packages/xfce.scm (xfdesktop)[source](modules, snippet): New
    fields.
    [arguments]: New field.
    [native-inputs]: Add INKSCAPE and IMAGEMAGICK.
---
 gnu/packages/xfce.scm | 37 +++++++++++++++++++++++++++++++++++--
 1 file changed, 35 insertions(+), 2 deletions(-)

diff --git a/gnu/packages/xfce.scm b/gnu/packages/xfce.scm
index d4cb20f..cc79fb4 100644
--- a/gnu/packages/xfce.scm
+++ b/gnu/packages/xfce.scm
@@ -29,17 +29,21 @@
   #:use-module ((guix licenses) #:hide (freetype))
   #:use-module (guix packages)
   #:use-module (guix download)
+  #:use-module (guix gexp)
   #:use-module (guix utils)
   #:use-module (guix build-system cmake)
   #:use-module (guix build-system glib-or-gtk)
   #:use-module (guix build-system gnu)
   #:use-module (guix build-system trivial)
+  #:use-module (gnu artwork)
   #:use-module (gnu packages)
   #:use-module (gnu packages calendar)
   #:use-module (gnu packages cdrom)
   #:use-module (gnu packages pkg-config)
   #:use-module (gnu packages glib)
   #:use-module (gnu packages gtk)
+  #:use-module (gnu packages imagemagick)
+  #:use-module (gnu packages inkscape)
   #:use-module (gnu packages xorg)
   #:use-module (gnu packages xdisorg)
   #:use-module (gnu packages web)
@@ -692,11 +696,40 @@ on the screen.")
                                   name "-" version ".tar.bz2"))
               (sha256
                (base32
-                "1jzi851arljq5lza9inyq4ss513l62lbzbfm64a7x4320m8kb2h9"))))
+                "1jzi851arljq5lza9inyq4ss513l62lbzbfm64a7x4320m8kb2h9"))
+              (modules '((guix build utils)))
+              (snippet
+               #~(begin
+                   (copy-file #$(file-append %artwork-repository 
"/logo/Guix.svg")
+                              "backgrounds/guix-logo.svg")
+                   #t))))
     (build-system gnu-build-system)
+    (arguments
+     `(#:phases (modify-phases %standard-phases
+                  (add-before 'configure 'prepare-background-image
+                    (lambda _
+                      ;; Stick a Guix logo in the background image.  XXX: It
+                      ;; has to go to the center because the image might be
+                      ;; truncated on the edges.  :-/
+                      (invoke "inkscape" "--export-dpi=120"
+                              "--export-png=/tmp/guix.png"
+                              "backgrounds/guix-logo.svg")
+                      (for-each (lambda (image)
+                                  (invoke "composite" "-gravity" "center"
+                                          "/tmp/guix.png" image
+                                          "/tmp/final.jpg")
+                                  (copy-file "/tmp/final.jpg" image))
+                                '(;; "backgrounds/xfce-blue.jpg"
+                                  "backgrounds/xfce-teal.jpg"))
+                      #t)))
+
+       #:disallowed-references (,inkscape ,imagemagick)))
     (native-inputs
      `(("pkg-config" ,pkg-config)
-       ("intltool" ,intltool)))
+       ("intltool" ,intltool)
+
+       ("inkscape" ,inkscape)
+       ("imagemagick" ,imagemagick)))
     (inputs
      `(("exo" ,exo)
        ("garcon" ,garcon)



reply via email to

[Prev in Thread] Current Thread [Next in Thread]