gnu: Add cl-ana.statistical-learning.
[jackhill/guix/guix.git] / gnu / packages / ratpoison.scm
index dc6db72..42e17b6 100644 (file)
@@ -1,6 +1,7 @@
 ;;; GNU Guix --- Functional package management for GNU
-;;; Copyright © 2013, 2014 Ludovic Courtès <ludo@gnu.org>
+;;; Copyright © 2013, 2014, 2019 Ludovic Courtès <ludo@gnu.org>
 ;;; Copyright © 2015 Mathieu Lirzin <mthl@openmailbox.org>
+;;; Copyright © 2017 Mathieu Othacehe <m.othacehe@gmail.com>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
   #:use-module (gnu packages pkg-config)
   #:use-module (gnu packages fontutils))
 
-(define ratpoison.desktop
-  (origin
-    (method url-fetch)
-    (uri (string-append "https://sources.gentoo.org/cgi-bin/viewvc.cgi/"
-                        "gentoo-x86/x11-wm/ratpoison/files/ratpoison.desktop"
-                        "?revision=1.1"))
-    (file-name "ratpoison.desktop")
-    (sha256
-     (base32
-      "1rh3f4c3rhn6q2hmkraam0831xqcqyj3qkqf019ahaxsxaan3553"))))
-
 (define-public ratpoison
   (package
     (name "ratpoison")
-    (version "1.4.8")
+    (version "1.4.9")
     (source
      (origin (method url-fetch)
              (uri (string-append "mirror://savannah/ratpoison/ratpoison-"
                                  version ".tar.xz"))
              (sha256
               (base32
-               "1w502z55vv7zs45l80nsllqh9fvfwjfdfi11xy1qikhzdmirains"))
-             (patches (list (search-patch "ratpoison-shell.patch")))))
+               "1wfir1gvh5h7izgvx2kd1pr2k7wlncd33zq7qi9s9k2y0aza93yr"))
+             (patches (search-patches "ratpoison-shell.patch"))))
     (build-system gnu-build-system)
     (arguments
-     '(#:phases
+     `(#:modules ((ice-9 format)
+                  ,@%gnu-build-system-modules)
+       #:phases
        (modify-phases %standard-phases
          (add-after 'install 'install-xsession
-                    (lambda* (#:key inputs outputs #:allow-other-keys)
-                      (let ((rpd "ratpoison.desktop")
-                            (dst (string-append (assoc-ref outputs "out")
-                                                "/share/xsessions/")))
-                        (mkdir-p dst)
-                        (copy-file (assoc-ref inputs rpd)
-                                   (string-append dst rpd))))))))
+           (lambda* (#:key outputs #:allow-other-keys)
+             ;; Add a .desktop file to xsessions.
+             (let* ((output    (assoc-ref outputs "out"))
+                    (xsessions (string-append output "/share/xsessions")))
+               (mkdir-p xsessions)
+               (call-with-output-file (string-append xsessions
+                                                     "/ratpoison.desktop")
+                 (lambda (port)
+                   (format port
+                           "[Desktop Entry]~@
+                            Name=ratpoison~@
+                            Comment=Tiling window manager: say goodbye to the rodent!~@
+                            Exec=~a/bin/ratpoison~@
+                            TryExec=~@*~a/bin/ratpoison~@
+                            Type=Application~%"
+                           output)))
+               #t))))))
     (inputs
-     `(("inputproto" ,inputproto)
-       ("fontconfig" ,fontconfig)
+     `(("fontconfig" ,fontconfig)
        ("freetype" ,freetype)
        ("libXft" ,libxft)
        ("libXi" ,libxi)
-       ("libxinerama" ,libxinerama)
+       ("libxrandr" ,libxrandr)
        ("libXpm" ,libxpm)
        ("libXt" ,libxt)
        ("libXtst" ,libxtst)
        ("libX11" ,libx11)
        ("readline" ,readline)
-       ("xextproto" ,xextproto)))
+       ("xorgproto" ,xorgproto)))
     (native-inputs
-     `(("perl",perl)
-       ("pkg-config" ,pkg-config)
-       ("ratpoison.desktop" ,ratpoison.desktop)))
-    (home-page "http://www.nongnu.org/ratpoison/")
+     `(("perl" ,perl)
+       ("pkg-config" ,pkg-config)))
+    (home-page "https://www.nongnu.org/ratpoison/")
     (synopsis "Simple mouse-free tiling window manager")
     (description
      "Ratpoison is a simple window manager with no fat library