about summary refs log tree commit diff
path: root/machines
diff options
context:
space:
mode:
authorProfpatsch <mail@profpatsch.de>2020-09-21 21:26:50 +0200
committerProfpatsch <mail@profpatsch.de>2020-09-21 21:26:50 +0200
commit0ff0e3d70fb99b18dcfaf51cd3094a5497371fcc (patch)
tree830056bfa56263998f1fd205a36e5dadf7a54c2d /machines
parentabbb91b6d77761b5a2d1fe34841fd9f777bfed63 (diff)
machines/shiki: alock -> i3lock
alock is really bad locking software. It is slow, it becomes
transparent, it even crashes sometimes. All the things a good lock
screen should never do.

i3lock is the trusted “standard” featureless locksceen, so this switch
has been procrastinated for way too long.
Diffstat (limited to 'machines')
-rw-r--r--machines/profpatsch/shiki.nix16
1 files changed, 13 insertions, 3 deletions
diff --git a/machines/profpatsch/shiki.nix b/machines/profpatsch/shiki.nix
index 22c274ff..e2b563f5 100644
--- a/machines/profpatsch/shiki.nix
+++ b/machines/profpatsch/shiki.nix
@@ -4,6 +4,18 @@ let
   myLib  = import ./lib.nix  { inherit pkgs lib; };
   myPkgs = import ./pkgs.nix { inherit pkgs lib myLib unfreeAndNonDistributablePkgs; };
 
+  lock-screen = pkgs.writers.writeDashBin "lock-screen" ''
+    set -e
+    revert() {
+      ${pkgs.xorg.xset}/bin/xset dpms 0 0 0
+    }
+    trap revert HUP INT TERM EXIT
+    ${pkgs.xorg.xset}/bin/xset +dpms dpms 2 2 2
+    ${pkgs.i3lock}/bin/i3lock \
+      --nofork \
+      --color=000000
+  '';
+
 in {
 
   imports = [
@@ -147,9 +159,7 @@ in {
         networkmanagerapplet # for nm-connection-editor
       ];
       xPkgs = [
-        dunst             # notification daemon (interfaces with libnotify)
-        # TODO: replace by xscreensaver or i3lock
-        alock             # lock screen
+        lock-screen       # lock screen
         libnotify         # notification library
         xclip             # clipboard thingy
         xorg.xkill        # X11 application kill