Flake for my NixOS devices
1{...}: {
2 config,
3 lib,
4 pkgs,
5 ...
6}: {
7 options.cow.gdi = {
8 enable = lib.mkEnableOption "Niri with graphical apps, etc.";
9 doIdle = lib.mkEnableOption "Idling the system";
10 showGreet = lib.mkEnableOption "Show a greeter interface that runs Niri";
11 };
12
13 config = lib.mkIf config.cow.gdi.enable {
14 environment.pathsToLink = [
15 "/share/applications"
16 "/share/xdg-desktop-portal"
17 ];
18
19 # Services needed for shell
20 services.upower.enable = lib.mkDefault true;
21 services.udisks2.enable = lib.mkDefault true;
22
23 services.greetd = lib.mkIf config.cow.gdi.showGreet {
24 enable = true;
25 useTextGreeter = true;
26 settings.default_session.command = let
27 greeting = ''--greeting "Authenticate into ${lib.toUpper config.networking.hostName}"'';
28 in "${pkgs.tuigreet}/bin/tuigreet --time ${greeting} --cmd niri-session";
29 };
30 };
31}