Compare commits
No commits in common. "8bb3d9dba9f7be2b01067310715a292c7eb0ad47" and "95e99962d6855266e89520a881d4652db1adc7c0" have entirely different histories.
8bb3d9dba9
...
95e99962d6
5 changed files with 23 additions and 81 deletions
|
@ -4,14 +4,11 @@
|
||||||
pkgs,
|
pkgs,
|
||||||
...
|
...
|
||||||
}: let
|
}: let
|
||||||
inherit (lib.meta) getExe;
|
|
||||||
inherit (lib.modules) mkIf;
|
|
||||||
inherit (lib.options) mkOption mkEnableOption;
|
|
||||||
inherit (lib.types) str listOf;
|
|
||||||
|
|
||||||
inherit (config.meta.mainUser) username;
|
|
||||||
cfg = config.modules.services.greetd;
|
cfg = config.modules.services.greetd;
|
||||||
uwsmEnabled = config.modules.services.uwsm.enable;
|
uwsmEnabled = config.modules.services.uwsm.enable;
|
||||||
|
inherit (lib.options) mkOption mkEnableOption;
|
||||||
|
inherit (lib.types) str listOf;
|
||||||
|
inherit (lib.modules) mkIf;
|
||||||
in {
|
in {
|
||||||
options.modules.services.greetd = {
|
options.modules.services.greetd = {
|
||||||
enable = mkEnableOption "greetd";
|
enable = mkEnableOption "greetd";
|
||||||
|
@ -28,31 +25,24 @@ in {
|
||||||
type = str;
|
type = str;
|
||||||
default =
|
default =
|
||||||
if uwsmEnabled
|
if uwsmEnabled
|
||||||
then "${getExe config.programs.uwsm.package} start Hyprland"
|
then "uwsm start Hyprland"
|
||||||
else "Hyprland";
|
else "Hyprland";
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
config = mkIf cfg.enable {
|
config = mkIf cfg.enable {
|
||||||
services.greetd = let
|
services.greetd = {
|
||||||
session = {
|
|
||||||
# command = ''
|
|
||||||
# ${pkgs.greetd.tuigreet}/bin/tuigreet \
|
|
||||||
# -c \"${cfg.session}\" \
|
|
||||||
# -r
|
|
||||||
# -t --time-format "DD.MM.YYYY"
|
|
||||||
# --asteriks'';
|
|
||||||
command = "${getExe config.programs.uwsm.package} start hyprland-uwsm.desktop";
|
|
||||||
user = username;
|
|
||||||
};
|
|
||||||
in {
|
|
||||||
enable = true;
|
enable = true;
|
||||||
package = pkgs.greetd;
|
package = pkgs.greetd;
|
||||||
vt = 7;
|
settings.default_session = {
|
||||||
settings = {
|
command = ''
|
||||||
default_session = session;
|
${pkgs.greetd.tuigreet}/bin/tuigreet \
|
||||||
initial_session = session;
|
-c \"${cfg.session}\" \
|
||||||
|
-r
|
||||||
|
-t --time-format "DD.MM.YYYY"
|
||||||
|
--asteriks'';
|
||||||
};
|
};
|
||||||
|
vt = 7;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -18,7 +18,6 @@ in {
|
||||||
Set the boot loader's timeout. This is 0 by default, but preferably longer on remote servers to make switching to previous generations easier.
|
Set the boot loader's timeout. This is 0 by default, but preferably longer on remote servers to make switching to previous generations easier.
|
||||||
'';
|
'';
|
||||||
type = int;
|
type = int;
|
||||||
# I love spamming space
|
|
||||||
default = 0;
|
default = 0;
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
@ -36,20 +35,16 @@ in {
|
||||||
boot = {
|
boot = {
|
||||||
tmp.useTmpfs = true;
|
tmp.useTmpfs = true;
|
||||||
initrd = {
|
initrd = {
|
||||||
verbose = false;
|
verbose = true;
|
||||||
systemd.enable = true;
|
systemd.enable = true;
|
||||||
};
|
};
|
||||||
loader = {
|
loader = {
|
||||||
efi.canTouchEfiVariables = true;
|
efi.canTouchEfiVariables = true;
|
||||||
|
# I love spamming space
|
||||||
timeout = cfg.timeout;
|
timeout = cfg.timeout;
|
||||||
systemd-boot = {
|
systemd-boot = {
|
||||||
enable = cfg.systemd-boot.enable;
|
enable = cfg.systemd-boot.enable;
|
||||||
# INFO: Leaving this enabled is a security vulneratibility,
|
|
||||||
# since we can just start /bin/sh from there and get root access.
|
|
||||||
# Since I have FDE, this isn't _as_ critical, but it would still be
|
|
||||||
# a bad idea to leave it enabled
|
|
||||||
editor = mkForce false;
|
editor = mkForce false;
|
||||||
consoleMode = "auto";
|
|
||||||
configurationLimit = 5;
|
configurationLimit = 5;
|
||||||
};
|
};
|
||||||
grub = {
|
grub = {
|
||||||
|
@ -60,25 +55,11 @@ in {
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
plymouth = {
|
plymouth = {
|
||||||
enable = true;
|
enable = false;
|
||||||
themePackages = [
|
# font = "${pkgs.jetbrains-mono}/share/fonts/truetype/JetBrainsMono-Regular.ttf";
|
||||||
(pkgs.adi1090x-plymouth-themes.override
|
themePackages = [pkgs.plymouth-matrix-theme];
|
||||||
{
|
theme = "matrix";
|
||||||
selected_themes = [
|
|
||||||
"hud_3"
|
|
||||||
];
|
|
||||||
})
|
|
||||||
];
|
|
||||||
theme = "hud_3";
|
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
powerManagement = {
|
|
||||||
powerDownCommands = ''
|
|
||||||
${pkgs.plymouth} --show-splash
|
|
||||||
'';
|
|
||||||
resumeCommands = ''
|
|
||||||
${pkgs.plymouth} --quit
|
|
||||||
'';
|
|
||||||
};
|
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -6,17 +6,6 @@ in {
|
||||||
];
|
];
|
||||||
networking = {
|
networking = {
|
||||||
enableIPv6 = true;
|
enableIPv6 = true;
|
||||||
|
|
||||||
# INFO: This disables wpa_supplicant,
|
|
||||||
# I use nenetworkmanager instead.
|
|
||||||
wireless.enable = false;
|
|
||||||
|
|
||||||
dhcpcd = {
|
|
||||||
# faster boot times
|
|
||||||
wait = "background";
|
|
||||||
extraConfig = "noarp";
|
|
||||||
};
|
|
||||||
|
|
||||||
nameservers = [
|
nameservers = [
|
||||||
# quad9 DNS
|
# quad9 DNS
|
||||||
"9.9.9.9"
|
"9.9.9.9"
|
||||||
|
@ -25,16 +14,8 @@ in {
|
||||||
};
|
};
|
||||||
services.resolved = {
|
services.resolved = {
|
||||||
enable = true;
|
enable = true;
|
||||||
dnssec = "false";
|
|
||||||
# quad9 dns
|
# quad9 dns
|
||||||
fallbackDns = ["9.9.9.9" "2620::fe::fe"];
|
fallbackDns = ["9.9.9.9" "2620::fe::fe"];
|
||||||
};
|
};
|
||||||
users.users.${username}.extraGroups = ["networkmanager"];
|
users.users.${username}.extraGroups = ["networkmanager"];
|
||||||
|
|
||||||
systemd = {
|
|
||||||
network = {
|
|
||||||
enable = true;
|
|
||||||
wait-online.anyInterface = true;
|
|
||||||
};
|
|
||||||
};
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,12 +1,7 @@
|
||||||
{lib, ...}: let
|
{pkgs, ...}: {
|
||||||
inherit (lib.modules) mkForce;
|
|
||||||
in {
|
|
||||||
config.systemd = {
|
config.systemd = {
|
||||||
# faster startup
|
# faster startup
|
||||||
targets.network-online.wantedBy = mkForce []; # Normally ["multi-user.target"]
|
targets.network-online.wantedBy = pkgs.lib.mkForce []; # Normally ["multi-user.target"]
|
||||||
services = {
|
services.NetworkManager-wait-online.wantedBy = pkgs.lib.mkForce []; # Normally ["network-online.target"]
|
||||||
NetworkManager-wait-online.wantedBy = mkForce []; # Normally ["network-online.target"]
|
|
||||||
systemd-udev-settle.enable = false;
|
|
||||||
};
|
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
|
@ -1,18 +1,15 @@
|
||||||
{
|
{
|
||||||
config,
|
config,
|
||||||
lib,
|
|
||||||
pkgs,
|
pkgs,
|
||||||
...
|
...
|
||||||
}: let
|
}: let
|
||||||
# inherit (config.modules.style) cursor;
|
# inherit (config.modules.style) cursor;
|
||||||
inherit (lib.meta) getExe;
|
inherit (builtins) toString;
|
||||||
in {
|
in {
|
||||||
programs.hyprland.settings = {
|
programs.hyprland.settings = {
|
||||||
# Hyprland settings
|
# Hyprland settings
|
||||||
# Programs which get executed at Hyprland start.
|
# Programs which get executed at Hyprland start.
|
||||||
exec-once = [
|
exec-once = [
|
||||||
"uwsm finalize"
|
|
||||||
|
|
||||||
"hyprctl setcursor BreezeX-RosePine-Linux 32"
|
"hyprctl setcursor BreezeX-RosePine-Linux 32"
|
||||||
|
|
||||||
"[workspace special:keepassxc; silent;tile] ${pkgs.keepassxc}/bin/keepassxc"
|
"[workspace special:keepassxc; silent;tile] ${pkgs.keepassxc}/bin/keepassxc"
|
||||||
|
@ -25,8 +22,6 @@ in {
|
||||||
"${pkgs.wlsunset}/bin/wlsunset -S 06:00 -s 20:00"
|
"${pkgs.wlsunset}/bin/wlsunset -S 06:00 -s 20:00"
|
||||||
"${pkgs.lxqt.lxqt-policykit}/bin/lxqt-policykit-agent"
|
"${pkgs.lxqt.lxqt-policykit}/bin/lxqt-policykit-agent"
|
||||||
"hyprctl dispatch split-workspace 1"
|
"hyprctl dispatch split-workspace 1"
|
||||||
|
|
||||||
"${getExe pkgs.hyprlock}"
|
|
||||||
];
|
];
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
Loading…
Add table
Add a link
Reference in a new issue