{ config, pkgs, lib, ... }: let user = "tzlil"; users.users.greeter.packages = [pkgs.sway]; greet = "${pkgs.greetd.gtkgreet.out}/bin/gtkgreet -l -s ${pkgs.writeText "gtkgreet.css" " window { background-image: url(\"${pkgs.fetchurl { url = "https://external-content.duckduckgo.com/iu/?u=https%3A%2F%2Fget.wallhere.com%2Fphoto%2FSerial-Experiments-Lain-anime-1363057.jpg&f=1&nofb=1&ipt=ba4bec61767537f6da6f0298f40e6a8ff2a5f1dc0e075a40bf77ba3a98654e15&ipo=images"; sha256 = "sha256-oFUfNBdodHP7p/tAlwttzsY2SIyfsEgya6sN2GXEGy8="; }}\"); background-size: cover; background-position: center; } box#body { background-color: rgba(50, 50, 50, 0.5); border-radius: 10px; padding: 50px; } "}"; kiosk = command: "${pkgs.cage.out}/bin/cage -- ${command}"; in { options.greeter.initialSession = lib.mkOption { type = lib.types.str; default = "sh -c ${pkgs.sway}/bin/sway"; }; config = { environment.etc."greetd/environments".text = "sway\n" + "$SHELL -l\n"; services.greetd = { enable = true; settings = { default_session = { inherit user; command = kiosk "${greet} -l &>/dev/null"; }; # initial_session = { # inherit user; # command = config.greeter.initialSession; # }; }; }; }; }