diff mbox series

[bug#58356] Add xtrlock

Message ID CAHHeYzLRAA6ohu2KPNwfkjJ=KzKLd6uEakZzU3ARBzOegpdnCg@mail.gmail.com
State New
Headers show
Series [bug#58356] Add xtrlock | expand

Checks

Context Check Description
cbaines/comparison success View comparision
cbaines/git-branch success View Git branch
cbaines/applying patch success
cbaines/issue success View issue
cbaines/comparison success View comparision
cbaines/git-branch success View Git branch
cbaines/applying patch success View Laminar job
cbaines/issue success View issue

Commit Message

Mehmet Tekman Oct. 11, 2022, 11:27 a.m. UTC
I've just noticed that though the package builds without the CFLAGS,
it doesn't work well in context to the shadow file.
I've reincluded it in this next patch (diff from master).

Best,
Mehmet
diff mbox series

Patch

From aced8b924a194495233b0698f2185b9b80d10963 Mon Sep 17 00:00:00 2001
From: Mehmet Tekman <mtekman89@gmail.com>
Date: Tue, 11 Oct 2022 12:38:13 +0200
Subject: [PATCH] gnu: Add xtrlock.

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

diff --git a/gnu/packages/xdisorg.scm b/gnu/packages/xdisorg.scm
index 9908f29191..fc25c14ea7 100644
--- a/gnu/packages/xdisorg.scm
+++ b/gnu/packages/xdisorg.scm
@@ -56,6 +56,7 @@ 
 ;;; Copyright © 2022 Jai Vetrivelan <jaivetrivelan@gmail.com>
 ;;; Copyright © 2022 Derek Chuank <derekchuank@outlook.com>
 ;;; Copyright © 2022 Wamm K. D. <jaft.r@outlook.com>
+;;; Copyright © 2022 Mehmet Tekman <mtekman89@gmail.com>
 ;;;
 ;;; This file is part of GNU Guix.
 ;;;
@@ -1099,6 +1100,54 @@  (define-public xlockmore
     (license (license:non-copyleft #f "See xlock.c.")
              ))) ; + GPLv2 in modes/glx/biof.c.
 
+(define-public xtrlock
+  (package
+    (name "xtrlock")
+    (version "2.15")
+    (source (origin
+              (method url-fetch)
+              (uri (string-append
+                    "mirror://debian/pool/main/x/xtrlock/xtrlock_" version
+                    ".tar.xz"))
+              (sha256
+               (base32
+                "0mgpysbvipd5h6x6zz4hng6b13gp3qjnpgny3azyj8k8dv85bppw"))))
+    (build-system gnu-build-system)
+    (arguments
+     ;; LDLIBS are required for the package to build.
+     ;; CFLAGS are required for it to use the shadow file, and to
+     ;; be compatible with multi-touch devices.
+     '(#:make-flags (list "CFLAGS=-Wall -DSHADOW_PWD -DMULTITOUCH"
+                          "LDLIBS=-lX11 -lcrypt -lXi")
+       #:phases (modify-phases %standard-phases
+                  (delete 'configure)
+                  (delete 'check)
+                  (add-after 'unpack 'rename-makefile
+                    (lambda _
+                      (rename-file "Makefile.noimake" "Makefile")
+                      (rename-file "xtrlock.man" "xtrlock.1")))
+                  (replace 'install
+                    (lambda* (#:key outputs #:allow-other-keys)
+                      (let* ((out (assoc-ref outputs "out")))
+                        (install-file "xtrlock"
+                                      (string-append out "/bin/"))
+                        (install-file "xtrlock.1"
+                                      (string-append out "/share/man/man1/"))))))))
+    (inputs (list libx11 libxi libxfixes))
+    (home-page "https://packages.debian.org/sid/xtrlock")
+    (synopsis "Minimal X display lock program")
+    (description
+     "xtrlock locks the X server till the user enters their password at the
+keyboard.  While xtrlock is running, the mouse and keyboard are grabbed and
+the mouse cursor becomes a padlock.  Output displayed by X programs, and
+windows put up by new X clients, continue to be visible, and any new output is
+displayed normally.  The mouse and keyboard are returned when the user types
+their password, followed by Enter or Newline.  If an incorrect password is
+entered the bell is sounded.  Pressing Backspace or Delete erases one
+character of a password partially typed; pressing Escape or Clear clears
+anything that has been entered.")
+    (license license:gpl3+)))
+
 (define-public xosd
   (package
     (name "xosd")
-- 
2.38.0