{ pkgs, lib, config, ... }: with lib; { nix = { extraOptions = "experimental-features = nix-command flakes"; package = pkgs.nixVersions.unstable; }; # This adds hyprland cache to cachix nix.settings = { substituters = ["https://hyprland.cachix.org"]; trusted-public-keys = ["hyprland.cachix.org-1:a7pgxzMz7+chwVL3/pzj6jIBMioiJM7ypFP8PwtkuGc="]; }; boot.supportedFilesystems = [ "ntfs" ]; services.xserver = { enable = true; autorun = false; # windowManager.awesome = { # enable = true; # package = pkgs.awesome; # }; displayManager = { startx.enable = true; sddm = { enable = false; }; session = [ { manage = "desktop"; name = "Hyprland"; start = '' /home/chris/bin/hyprland & waitPID=$! ''; } ]; }; desktopManager.plasma5 = { enable = true; runUsingSystemd = true; }; # desktopManager.gnome.enable = true; }; services.greetd = { enable = true; settings = rec { initial_session = { command = "dbus-run-session startplasma-wayland"; user = "chris"; }; default_session = { command = "${pkgs.greetd.tuigreet}/bin/tuigreet --time -r --window-padding 2 --cmd 'dbus-run-session startplasma-wayland'"; user = "greeter"; }; plasma_session = { command = "dbus-run-session startplasma-wayland"; user = "chris"; }; hyprland_session = { command = "/home/chris/bin/hyprland"; user = "chris"; }; }; }; environment.etc."greetd/environments".text = '' /home/chris/bin/hyprland fish bash dbus-run-session startplasma-wayland ''; programs.hyprland = { enable = true; }; services.avahi = { enable = true; nssmdns = true; }; }