From dd91f06de0694002f444c481aa1a1dca789b4b44 Mon Sep 17 00:00:00 2001 From: Gustav Bruhn Date: Sat, 22 Mar 2025 11:54:44 +0100 Subject: [PATCH] 65 current 2025-03-22 11:54:41 25.05.20250315.c80f6a7 6.12.19 * --- hosts/framework/configuration.nix | 3 ++- modules/nixos/greeter.nix | 38 +++++++++++++++++++++++++++++++ modules/nixos/niri.nix | 7 ++++++ 3 files changed, 47 insertions(+), 1 deletion(-) create mode 100644 modules/nixos/greeter.nix create mode 100644 modules/nixos/niri.nix diff --git a/hosts/framework/configuration.nix b/hosts/framework/configuration.nix index 7737822..a45d5da 100644 --- a/hosts/framework/configuration.nix +++ b/hosts/framework/configuration.nix @@ -8,7 +8,8 @@ # Include the results of the hardware scan. ./hardware-configuration.nix inputs.home-manager.nixosModules.default - ../../modules/nixos/cosmic.nix + # ../../modules/nixos/cosmic.nix + ../../modules/nixos/niri.nix ]; # Bootloader. boot.loader.systemd-boot.enable = true; diff --git a/modules/nixos/greeter.nix b/modules/nixos/greeter.nix new file mode 100644 index 0000000..af9eb93 --- /dev/null +++ b/modules/nixos/greeter.nix @@ -0,0 +1,38 @@ +{ + pkgs, + lib, + config, + inputs, + ... +}: let + tuigreet = "${pkgs.greetd.tuigreet}/bin/tuigreet"; +in { + options.greeter = { + session = lib.mkOption { + type = lib.types.str; + description = "Path to the session binary"; + }; + }; + config = { + environment.etc.session.text = toString config.greeter.session; + services.greetd = { + enable = true; + settings = { + default_session = { + command = "${tuigreet} --time --rememeber --remember-session --sessions ${config.greeter.session}"; + user = "greeter"; + }; + }; + }; + }; + # systemd.services.greetd.serviceConfig = { + # Type = "idle"; + # StandardInput = "tty"; + # StandardOutput = "tty"; + # StandardError = "journal"; + + # TTYReset = true; + # TTYVHangup = true; + # TTYVDisallocate = true; + # }; +} diff --git a/modules/nixos/niri.nix b/modules/nixos/niri.nix new file mode 100644 index 0000000..724d104 --- /dev/null +++ b/modules/nixos/niri.nix @@ -0,0 +1,7 @@ +{pkgs, ...}: { + imports = [ + ./greeter.nix + ]; + greeter.session = "${pkgs.niri}/bin/niri-session"; + programs.niri.enable = true; +}