Swtich greetd to its own enable module
This commit is contained in:
parent
ad43501d8a
commit
24cf8ddb9f
|
@ -29,7 +29,6 @@
|
||||||
useOSProber = true;
|
useOSProber = true;
|
||||||
};
|
};
|
||||||
virtualisation.vmware.guest.enable = true;
|
virtualisation.vmware.guest.enable = true;
|
||||||
services.greetd.enable = false;
|
|
||||||
# Setup system configuration
|
# Setup system configuration
|
||||||
nathan = {
|
nathan = {
|
||||||
programs = { games = false; };
|
programs = { games = false; };
|
||||||
|
@ -42,6 +41,7 @@
|
||||||
setupGrub = false;
|
setupGrub = false;
|
||||||
nix.autoUpdate = false;
|
nix.autoUpdate = false;
|
||||||
harden = false;
|
harden = false;
|
||||||
|
hyprland.enableGreetd = false;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
# Configure networking
|
# Configure networking
|
||||||
|
|
|
@ -182,6 +182,12 @@ in {
|
||||||
description = "Whether to setup hyprland";
|
description = "Whether to setup hyprland";
|
||||||
type = lib.types.bool;
|
type = lib.types.bool;
|
||||||
};
|
};
|
||||||
|
enableGreetd = mkOption {
|
||||||
|
default = config.nathan.config.isDesktop;
|
||||||
|
example = true;
|
||||||
|
description = "Whether to setup greetd";
|
||||||
|
type = lib.types.bool;
|
||||||
|
};
|
||||||
};
|
};
|
||||||
# Virtualization configuration
|
# Virtualization configuration
|
||||||
# All on by default if the system is a desktop
|
# All on by default if the system is a desktop
|
||||||
|
|
|
@ -1,72 +1,78 @@
|
||||||
{ config, lib, pkgs, inputs, ... }:
|
{ config, lib, pkgs, inputs, ... }:
|
||||||
let nc = config.nathan.config;
|
let nc = config.nathan.config;
|
||||||
in with lib; {
|
in with lib; {
|
||||||
config = mkIf nc.hyprland.enable {
|
config = mkMerge [
|
||||||
# Turn on GDM for login
|
(mkIf nc.hyprland.enableGreetd {
|
||||||
services.xserver = {
|
# Greetd for login
|
||||||
enable = true;
|
programs.regreet = {
|
||||||
autorun = false;
|
|
||||||
# Enable plasma for the applications
|
|
||||||
desktopManager.plasma5.enable = true;
|
|
||||||
};
|
|
||||||
# Greetd for login
|
|
||||||
programs.regreet = {
|
|
||||||
enable = true;
|
|
||||||
settings = { GTK = { font_name = "Roboto 16"; }; };
|
|
||||||
};
|
|
||||||
services.greetd = {
|
|
||||||
enable = lib.mkDefault true;
|
|
||||||
settings = { default_session.command = "cage -s -- regreet"; };
|
|
||||||
};
|
|
||||||
# Setup drivers
|
|
||||||
hardware.opengl = {
|
|
||||||
# Enable vulkan
|
|
||||||
driSupport = true;
|
|
||||||
# Same as above, but enable 32 bit legacy support (for games)
|
|
||||||
driSupport32Bit = true;
|
|
||||||
};
|
|
||||||
# Basic packages that are effectively required for a graphical system
|
|
||||||
environment.systemPackages = with pkgs; [
|
|
||||||
# Greeter packages
|
|
||||||
cage
|
|
||||||
config.programs.regreet.package
|
|
||||||
gnome.adwaita-icon-theme
|
|
||||||
# GTK Theming
|
|
||||||
gtk-engine-murrine
|
|
||||||
gtk_engines
|
|
||||||
gsettings-desktop-schemas
|
|
||||||
lxappearance
|
|
||||||
kde-gtk-config
|
|
||||||
(stdenv.mkDerivation rec {
|
|
||||||
pname = "sddm-sugar-dark-theme";
|
|
||||||
version = "1.2";
|
|
||||||
dontBuild = true;
|
|
||||||
installPhase = ''
|
|
||||||
mkdir -p $out/share/sddm/themes
|
|
||||||
cp -aR $src $out/share/sddm/themes/sugar-dark
|
|
||||||
'';
|
|
||||||
src = fetchFromGitHub {
|
|
||||||
owner = "MarianArlt";
|
|
||||||
repo = "sddm-sugar-dark";
|
|
||||||
rev = "v${version}";
|
|
||||||
sha256 = "0gx0am7vq1ywaw2rm1p015x90b75ccqxnb1sz3wy8yjl27v82yhb";
|
|
||||||
};
|
|
||||||
})
|
|
||||||
];
|
|
||||||
qt.platformTheme = "qt5ct";
|
|
||||||
# Enable and configure hyperland
|
|
||||||
programs.hyprland = {
|
|
||||||
enable = true;
|
|
||||||
xwayland = {
|
|
||||||
enable = true;
|
enable = true;
|
||||||
hidpi = false;
|
settings = { GTK = { font_name = "Roboto 16"; }; };
|
||||||
};
|
};
|
||||||
};
|
services.greetd = {
|
||||||
# Make swaylock work
|
enable = true;
|
||||||
# https://github.com/NixOS/nixpkgs/issues/158025
|
settings = { default_session.command = "cage -s -- regreet"; };
|
||||||
security.pam.services.swaylock = { };
|
};
|
||||||
|
environment.systemPackages = with pkgs; [
|
||||||
|
# Greeter packages
|
||||||
|
cage
|
||||||
|
config.programs.regreet.package
|
||||||
|
gnome.adwaita-icon-theme
|
||||||
|
];
|
||||||
|
})
|
||||||
|
(mkIf nc.hyprland.enable {
|
||||||
|
# Turn on GDM for login
|
||||||
|
services.xserver = {
|
||||||
|
enable = true;
|
||||||
|
autorun = false;
|
||||||
|
# Enable plasma for the applications
|
||||||
|
desktopManager.plasma5.enable = true;
|
||||||
|
};
|
||||||
|
# Setup drivers
|
||||||
|
hardware.opengl = {
|
||||||
|
# Enable vulkan
|
||||||
|
driSupport = true;
|
||||||
|
# Same as above, but enable 32 bit legacy support (for games)
|
||||||
|
driSupport32Bit = true;
|
||||||
|
};
|
||||||
|
# Basic packages that are effectively required for a graphical system
|
||||||
|
environment.systemPackages = with pkgs; [
|
||||||
|
# GTK Theming
|
||||||
|
gtk-engine-murrine
|
||||||
|
gtk_engines
|
||||||
|
gsettings-desktop-schemas
|
||||||
|
lxappearance
|
||||||
|
kde-gtk-config
|
||||||
|
(stdenv.mkDerivation rec {
|
||||||
|
pname = "sddm-sugar-dark-theme";
|
||||||
|
version = "1.2";
|
||||||
|
dontBuild = true;
|
||||||
|
installPhase = ''
|
||||||
|
mkdir -p $out/share/sddm/themes
|
||||||
|
cp -aR $src $out/share/sddm/themes/sugar-dark
|
||||||
|
'';
|
||||||
|
src = fetchFromGitHub {
|
||||||
|
owner = "MarianArlt";
|
||||||
|
repo = "sddm-sugar-dark";
|
||||||
|
rev = "v${version}";
|
||||||
|
sha256 = "0gx0am7vq1ywaw2rm1p015x90b75ccqxnb1sz3wy8yjl27v82yhb";
|
||||||
|
};
|
||||||
|
})
|
||||||
|
];
|
||||||
|
qt.platformTheme = "qt5ct";
|
||||||
|
# Enable and configure hyperland
|
||||||
|
programs.hyprland = {
|
||||||
|
enable = true;
|
||||||
|
xwayland = {
|
||||||
|
enable = true;
|
||||||
|
hidpi = false;
|
||||||
|
};
|
||||||
|
};
|
||||||
|
# Make swaylock work
|
||||||
|
# https://github.com/NixOS/nixpkgs/issues/158025
|
||||||
|
security.pam.services.swaylock = { };
|
||||||
|
|
||||||
environment.sessionVariables = { MOZ_ENABLE_WAYLAND = "1"; };
|
environment.sessionVariables = { MOZ_ENABLE_WAYLAND = "1"; };
|
||||||
|
|
||||||
};
|
})
|
||||||
|
];
|
||||||
}
|
}
|
||||||
|
|
Loading…
Reference in New Issue