Subject: [PATCH] gnu: Add mons.

From: [email-masked]
Date: Thu, 18 Aug 2022 23:31:17 +0200

From: Simon Streit <[email-masked]>

* gnu/packages/xdisorg.scm (mons): New variable.
---
 gnu/packages/xdisorg.scm | 43 ++++++++++++++++++++++++++++++++++++++++
 1 file changed, 43 insertions(+)

diff --git a/gnu/packages/xdisorg.scm b/gnu/packages/xdisorg.scm
index 8360708445..bebd1e79cc 100644
--- a/gnu/packages/xdisorg.scm
+++ b/gnu/packages/xdisorg.scm
@@ -3157,3 +3157,46 @@ (define-public wlsunset
 light filter or night light.")
     (license license:expat)))
 
+(define-public mons
+  (package
+    (name "mons")
+    (version "0.8.2")
+    (source (origin
+              (method git-fetch)
+              (uri (git-reference
+                    (url "https://github.com/Ventto/mons")
+                    (commit (string-append "v" version))
+                    (recursive? #t)))
+              (file-name (git-file-name name version))
+              (sha256
+               (base32
+                "1dvfw40p81n24c28wvl39vn8acr2n0r4wh69fxp05afmp5lhp3vv"))))
+    (build-system gnu-build-system)
+    (arguments
+     `(#:tests? #f ;there are none.
+       #:phases (modify-phases %standard-phases
+                  (delete 'configure)
+                  (add-before 'build 'fix-prefix
+                    (lambda* (#:key outputs #:allow-other-keys)
+                      (substitute* "Makefile"
+                        (("/usr")
+                         ""))))
+                  (replace 'build
+                    (lambda* (#:key outputs #:allow-other-keys)
+                      (setenv "DESTDIR"
+                              (assoc-ref %outputs "out"))
+                      (invoke "make" "install")))
+                  (add-after 'build 'fix-lib-path
+                    (lambda* (#:key outputs #:allow-other-keys)
+                      (substitute* "mons"
+                        (("/usr/lib")
+                         (string-append (assoc-ref outputs "out") "/lib"))))))))
+    (native-inputs (list help2man))
+    (inputs (list xrandr))
+    (home-page "https://github.com/Ventto/mons")
+    (synopsis "POSIX Shell script to quickly manage monitors on X")
+    (description
+     "A POSIX compliant script that provides well-known modes like
+computer, duplicate, extend and projector mode as well as selecting
+and positioning one or two monitors among those plugged in.")
+    (license license:expat)))
-- 
2.37.2