Subject: cwm
From: [email-masked]
To: [email-masked]
Date: Sun, 04 Feb 2018 11:19:40 +0000
List-Id: <debbugs-submit.debbugs.gnu.org>

Trying to reduce the amount of software I keep in my domain.
Here's cwm, the OpenBSD window manager.

From 6c3d991fd5b99dded91e00b6f98d79c041e4be7d Mon Sep 17 00:00:00 2001
From: ng0 <[email-masked]>
Date: Sun, 4 Feb 2018 11:15:19 +0000
Subject: [PATCH] gnu: Add cwm.

* gnu/packages/wm.scm (cwm): New variable.
---
 gnu/packages/wm.scm | 56 ++++++++++++++++++++++++++++++++++++++++++++++++++++-
 1 file changed, 55 insertions(+), 1 deletion(-)

diff --git a/gnu/packages/wm.scm b/gnu/packages/wm.scm
index 0cf6c1a2d..09015126c 100644
--- a/gnu/packages/wm.scm
+++ b/gnu/packages/wm.scm
@@ -9,7 +9,7 @@
 ;;; Copyright © 2016 Al McElrath <[email-masked]>
 ;;; Copyright © 2016 Carlo Zancanaro <[email-masked]>
 ;;; Copyright © 2016, 2017 Ludovic Courtès <[email-masked]>
-;;; Copyright © 2016, 2017 ng0 <[email-masked]>
+;;; Copyright © 2016, 2017, 2018 ng0 <[email-masked]>
 ;;; Copyright © 2016 doncatnip <[email-masked]>
 ;;; Copyright © 2016 Ivan Vilata i Balaguer <[email-masked]>
 ;;; Copyright © 2017 Mekeor Melire <[email-masked]>
@@ -46,6 +46,7 @@
   #:use-module (gnu packages haskell-check)
   #:use-module (gnu packages haskell-web)
   #:use-module (gnu packages autotools)
+  #:use-module (gnu packages bison)
   #:use-module (gnu packages gawk)
   #:use-module (gnu packages base)
   #:use-module (gnu packages pkg-config)
@@ -915,3 +916,56 @@ It is inspired by Xmonad and dwm.  Its major features include:
 @end itemize\n")
     (home-page "https://github.com/conformal/spectrwm")
     (license license:isc)))
+
+(define-public cwm
+  (package
+    (name "cwm")
+    (version "6.2")
+    (source
+     (origin
+       (method url-fetch)
+       (uri (string-append "http://chneukirchen.org/releases/cwm-"
+                           version ".tar.gz"))
+       (sha256
+        (base32
+         "1b8k2hjxpb0bzqjh2wj6mn2nf2360zacf8z19sw2rw5lxvmfy89x"))))
+    (build-system gnu-build-system)
+    (arguments
+     `(#:make-flags (list "CC=gcc"
+                          (string-append "PREFIX=" %output))
+       #:tests? #f
+       #:phases
+       (modify-phases %standard-phases
+         (delete 'configure)
+         (add-after 'build 'install-xsession
+           (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)
+               (with-output-to-file
+                   (string-append xsessions "/cwm.desktop")
+                 (lambda _
+                   (format #t
+                           "[Desktop Entry]~@
+                     Name=cwm~@
+                     Comment=OpenBSD Calm Window Manager fork~@
+                     Exec=~a/bin/cwm~@
+                     TryExec=~@*~a/bin/cwm~@
+                     Icon=~@
+                     Type=Application~%"
+                           output)))
+               #t))))))
+    (inputs
+     `(("libxft" ,libxft)
+       ("libxrandr" ,libxrandr)
+       ("libxinerama" ,libxinerama)))
+    (native-inputs
+     `(("pkg-config" ,pkg-config)
+       ("bison" ,bison)))
+    (home-page "https://github.com/chneukirchen/cwm")
+    (synopsis "OpenBSD fork of calmwm")
+    (description
+     "Cwm is a OpenBSD fork of the clean and lightweight window manager
+calmwm.")
+    (license license:isc)))
-- 
2.16.1

-- 
ng0 :: https://ea.n0.is
A88C8ADD129828D7EAC02E52E22F9BBFEE348588 :: https://ea.n0.is/keys/