summary refs log tree commit diff
path: root/mixins/greet.nix
diff options
context:
space:
mode:
authortzlil <tzlils@protonmail.com>2022-12-13 15:21:30 +0200
committertzlil <tzlils@protonmail.com>2022-12-13 15:21:30 +0200
commitf51f8e398fffe33dcbb4b9f9db95708e7a3dde82 (patch)
tree08a9c853a29b01c53be526aecc8d2505f5086af5 /mixins/greet.nix
parent24637dfdfdd6dc8d116542f16a07d808c9e43c36 (diff)
stuff
Diffstat (limited to 'mixins/greet.nix')
-rw-r--r--mixins/greet.nix34
1 files changed, 34 insertions, 0 deletions
diff --git a/mixins/greet.nix b/mixins/greet.nix
new file mode 100644
index 0000000..5c46792
--- /dev/null
+++ b/mixins/greet.nix
@@ -0,0 +1,34 @@
+{
+  pkgs,
+  lib,
+  ...
+}: let
+  user = "tzlil";
+
+  users.users.greeter.packages = [pkgs.sway];
+  greetd = "${pkgs.greetd.greetd}/bin/greetd";
+  gtkgreet = "${pkgs.greetd.gtkgreet}/bin/gtkgreet";
+
+  sway-kiosk = command: "${pkgs.sway}/bin/sway --unsupported-gpu --config ${pkgs.writeText "kiosk.config" ''
+    output * bg #000000 solid_color
+    exec "${command}; ${pkgs.sway}/bin/swaymsg exit"
+  ''}";
+in {
+  environment.etc."greetd/environments".text =
+    "sway\n"
+    + "$SHELL -l\n";
+
+  services.greetd = {
+    enable = true;
+    settings = {
+      default_session = {
+        inherit user;
+        command = sway-kiosk "${gtkgreet} -l &>/dev/null";
+      };
+      initial_session = {
+        inherit user;
+        command = "sh -c sway";
+      };
+    };
+  };
+}
\ No newline at end of file