This commit is contained in:
2025-08-29 15:25:40 +02:00
parent 26440bfeee
commit f3821f0dfa
201 changed files with 2461 additions and 1546 deletions

View File

@@ -2,10 +2,12 @@
config,
lib,
...
}: let
}:
let
inherit (lib) mkIf mkEnableOption;
cfg = config.nixos.programs.android;
in {
in
{
options = {
nixos.programs.android.enable = mkEnableOption "Enables android tools";
};

View File

@@ -3,10 +3,12 @@
config,
lib,
...
}: let
}:
let
inherit (lib) mkIf mkEnableOption;
cfg = config.nixos.programs.anyrun;
in {
in
{
options = {
nixos.programs.anyrun.enable = mkEnableOption "Enables anyrun";
};

View File

@@ -3,10 +3,12 @@
config,
lib,
...
}: let
}:
let
inherit (lib) mkIf mkEnableOption;
cfg = config.nixos.programs.beekeeper;
in {
in
{
options = {
nixos.programs.beekeeper.enable = mkEnableOption "Enables Beekeeper Studio";
};

View File

@@ -3,10 +3,12 @@
config,
lib,
...
}: let
}:
let
inherit (lib) mkIf mkEnableOption mkOption;
cfg = config.nixos.programs.blender;
in {
in
{
options = {
nixos.programs.blender = {
enable = mkEnableOption "Enables Blender";
@@ -19,11 +21,7 @@ in {
};
config = mkIf cfg.enable {
environment.systemPackages = [
(
if cfg.hip.enable
then pkgs.blender-hip
else pkgs.blender
)
(if cfg.hip.enable then pkgs.blender-hip else pkgs.blender)
];
};
}

View File

@@ -2,10 +2,12 @@
config,
lib,
...
}: let
}:
let
inherit (lib) mkIf mkEnableOption;
cfg = config.nixos.programs.corectrl;
in {
in
{
options = {
nixos.programs.corectrl.enable = mkEnableOption "Enables CoreCtrl";
};

View File

@@ -2,10 +2,12 @@
config,
lib,
...
}: let
}:
let
inherit (lib) mkIf mkEnableOption;
cfg = config.nixos.programs.fish;
in {
in
{
options = {
nixos.programs.fish.enable = mkEnableOption "Enables fish shell";
};

View File

@@ -4,11 +4,13 @@
pkgs,
inputs,
...
}: let
}:
let
inherit (lib) mkIf mkEnableOption mkOption;
cfg = config.nixos.programs.gamemode;
pipewireLowLatencyModule = inputs.nix-gaming.nixosModules.pipewireLowLatency;
in {
in
{
imports = [
pipewireLowLatencyModule
];

View File

@@ -2,10 +2,12 @@
config,
lib,
...
}: let
}:
let
inherit (lib) mkIf mkEnableOption;
cfg = config.nixos.programs.gamescope;
in {
in
{
options = {
nixos.programs.gamescope.enable = mkEnableOption "Enables gamescope";
};

View File

@@ -3,10 +3,12 @@
pkgs,
lib,
...
}: let
}:
let
inherit (lib) mkIf mkEnableOption;
cfg = config.nixos.programs.gimp;
in {
in
{
options = {
nixos.programs.gimp.enable = mkEnableOption "Enables gimp";
};

View File

@@ -2,10 +2,12 @@
config,
lib,
...
}: let
}:
let
inherit (lib) mkIf mkEnableOption;
cfg = config.nixos.programs.gnome;
in {
in
{
options = {
nixos.programs.gnome.enable = mkEnableOption "Enables gnome";
};

View File

@@ -2,12 +2,15 @@
lib,
config,
...
}: let
}:
let
inherit (lib) mkIf mkEnableOption;
cfg = config.nixos.programs.hyprland;
in {
in
{
options = {
nixos.programs.hyprland.appearance.enable = mkEnableOption "Enables appearance settings in Hyprland";
nixos.programs.hyprland.appearance.enable =
mkEnableOption "Enables appearance settings in Hyprland";
};
config = mkIf cfg.appearance.enable {
programs.hyprland.settings = {

View File

@@ -4,10 +4,17 @@
inputs,
pkgs,
...
}: let
inherit (lib) mkIf mkEnableOption mkOption mkDefault;
}:
let
inherit (lib)
mkIf
mkEnableOption
mkOption
mkDefault
;
cfg = config.nixos.programs.hyprland;
in {
in
{
imports = [
inputs.hyprland.nixosModules.default
./appearance.nix

View File

@@ -2,11 +2,13 @@
lib,
config,
...
}: let
}:
let
inherit (lib) mkIf mkEnableOption mkMerge;
cfg = config.nixos.programs.hyprland;
host = config.networking.hostName;
in {
in
{
options = {
nixos.programs.hyprland.inputs.enable = mkEnableOption "Enables input settings in Hyprland";
};

View File

@@ -3,17 +3,22 @@
config,
pkgs,
...
}: let
}:
let
inherit (lib) mkIf mkEnableOption mkMerge;
cfg = config.nixos.programs.hyprland;
host = config.networking.hostName;
toggle = program: let
prog = builtins.substring 0 14 program;
in "pkill ${prog} || uwsm app -- ${program}";
toggle =
program:
let
prog = builtins.substring 0 14 program;
in
"pkill ${prog} || uwsm app -- ${program}";
runOnce = program: "pgrep ${program} || uwsm app -- ${program}";
in {
in
{
options = {
nixos.programs.hyprland.keybinds.enable = mkEnableOption "Enables keybind settings in Hyprland";
};

View File

@@ -2,11 +2,13 @@
lib,
config,
...
}: let
}:
let
inherit (lib) mkIf mkEnableOption mkMerge;
host = config.networking.hostName;
cfg = config.nixos.programs.hyprland.rules;
in {
in
{
options = {
nixos.programs.hyprland.rules.enable = mkEnableOption "Enables window rule settings in Hyprland";
};
@@ -14,37 +16,30 @@ in {
config = mkIf cfg.enable (mkMerge [
{
programs.hyprland.settings = {
monitor =
map (
m: let
resolution =
if m.width != null && m.height != null
then "${toString m.width}x${toString m.height}@${toString m.refreshRate}"
else "preferred";
monitor = map (
m:
let
resolution =
if m.width != null && m.height != null then
"${toString m.width}x${toString m.height}@${toString m.refreshRate}"
else
"preferred";
position = m.position or "auto";
scale = m.scale;
position = m.position or "auto";
scale = m.scale;
transformStr =
if m.transform != 0
then ",transform,${toString m.transform}"
else "";
transformStr = if m.transform != 0 then ",transform,${toString m.transform}" else "";
bitdepthStr =
if m.bitDepth != null
then ",bitdepth,${toString m.bitDepth}"
else "";
in "${m.name},${
if m.enable
then "${resolution},${position},${scale}${transformStr}${bitdepthStr}"
else "disable"
}"
)
config.settings.monitors;
bitdepthStr = if m.bitDepth != null then ",bitdepth,${toString m.bitDepth}" else "";
in
"${m.name},${
if m.enable then "${resolution},${position},${scale}${transformStr}${bitdepthStr}" else "disable"
}"
) config.settings.monitors;
workspace = map (
m: "${m.workspace},monitor:${m.name}"
) (lib.filter (m: m.enable && m.workspace != null) config.settings.monitors);
workspace = map (m: "${m.workspace},monitor:${m.name}") (
lib.filter (m: m.enable && m.workspace != null) config.settings.monitors
);
windowrule = [
"size 843 650, initialTitle:^(floatcal)$"

View File

@@ -2,7 +2,8 @@
lib,
config,
...
}: let
}:
let
inherit (lib) mkIf mkEnableOption mkMerge;
cfg = config.nixos.programs.hyprland;
host = config.networking.hostName;
@@ -12,7 +13,8 @@
"uwsm app -- keepassxc"
"uwsm app -- nm-applet --indicator"
];
in {
in
{
options = {
nixos.programs.hyprland.startup.enable = mkEnableOption "Enables startup settings in Hyprland";
};
@@ -28,30 +30,27 @@ in {
}
(mkIf (host == "kima") {
programs.hyprland.settings.exec-once =
[
"uwsm app -- mullvad-vpn"
"uwsm app -- solaar -w hide -b regular"
"uwsm app -- blueman-applet"
]
++ commonExecOnce;
programs.hyprland.settings.exec-once = [
"uwsm app -- mullvad-vpn"
"uwsm app -- solaar -w hide -b regular"
"uwsm app -- blueman-applet"
]
++ commonExecOnce;
})
(mkIf (host == "bunk") {
programs.hyprland.settings.exec-once =
[
"uwsm app -- blueman-applet"
]
++ commonExecOnce;
programs.hyprland.settings.exec-once = [
"uwsm app -- blueman-applet"
]
++ commonExecOnce;
})
(mkIf (host == "toothpc") {
programs.hyprland.settings.exec-once =
[
"uwsm app -- mullvad-vpn"
"uwsm app -- solaar -w hide -b regular"
]
++ commonExecOnce;
programs.hyprland.settings.exec-once = [
"uwsm app -- mullvad-vpn"
"uwsm app -- solaar -w hide -b regular"
]
++ commonExecOnce;
})
]);
}

View File

@@ -3,10 +3,12 @@
config,
lib,
...
}: let
}:
let
inherit (lib) mkIf mkEnableOption;
cfg = config.nixos.programs.inkscape;
in {
in
{
options = {
nixos.programs.inkscape.enable = mkEnableOption "Enables inkscape";
};

View File

@@ -3,10 +3,12 @@
lib,
pkgs,
...
}: let
}:
let
inherit (lib) mkIf mkEnableOption;
cfg = config.nixos.programs.lact;
in {
in
{
options = {
nixos.programs.lact.enable = mkEnableOption "Enables lact for GPU monitoring and tweaking";
};
@@ -18,8 +20,8 @@ in {
systemd.services.lact = {
enable = cfg.enable;
description = "GPU Control Daemon";
after = ["multi-user.target"];
wantedBy = ["multi-user.target"];
after = [ "multi-user.target" ];
wantedBy = [ "multi-user.target" ];
serviceConfig = {
ExecStart = "${pkgs.lact}/bin/lact daemon";
};

View File

@@ -3,10 +3,12 @@
config,
lib,
...
}: let
}:
let
inherit (lib) mkIf mkEnableOption;
cfg = config.nixos.programs.lutris;
in {
in
{
options = {
nixos.programs.lutris.enable = mkEnableOption "Enables lutris";
};

View File

@@ -3,14 +3,16 @@
lib,
pkgs,
...
}: let
}:
let
inherit (lib) mkIf mkEnableOption;
cfg = config.nixos.programs.microfetch;
in {
in
{
options = {
nixos.programs.microfetch.enable = mkEnableOption "Enables microfetch";
};
config = mkIf cfg.enable {
environment.systemPackages = [pkgs.microfetch];
environment.systemPackages = [ pkgs.microfetch ];
};
}

View File

@@ -3,10 +3,12 @@
config,
lib,
...
}: let
}:
let
inherit (lib) mkIf mkEnableOption;
cfg = config.nixos.programs.mysql-workbench;
in {
in
{
options = {
nixos.programs.mysql-workbench.enable = mkEnableOption "Enables MySQL Workbench";
};

View File

@@ -2,10 +2,12 @@
config,
lib,
...
}: let
}:
let
inherit (lib) mkIf mkEnableOption mkOption;
cfg = config.nixos.programs.nh;
in {
in
{
options = {
nixos.programs.nh = {
enable = mkEnableOption "Enables nix helper";

View File

@@ -2,10 +2,12 @@
config,
lib,
...
}: let
}:
let
inherit (lib) mkIf mkEnableOption;
cfg = config.nixos.programs.npm;
in {
in
{
options = {
nixos.programs.npm.enable = mkEnableOption "Enables npm";
};

View File

@@ -3,10 +3,12 @@
lib,
pkgs,
...
}: let
}:
let
inherit (lib) mkIf mkEnableOption;
cfg = config.nixos.programs.obsidian;
in {
in
{
options = {
nixos.programs.obsidian.enable = mkEnableOption "Enables obsidian";
};

View File

@@ -3,10 +3,17 @@
config,
lib,
...
}: let
inherit (lib) mkIf mkOption mkMerge types;
}:
let
inherit (lib)
mkIf
mkOption
mkMerge
types
;
cfg = config.nixos.programs.pkgs;
in {
in
{
options = {
nixos.programs.pkgs = {
enable = mkOption {
@@ -44,7 +51,8 @@ in {
};
config = mkIf cfg.enable {
environment.systemPackages = with pkgs;
environment.systemPackages =
with pkgs;
mkMerge [
[
pciutils

View File

@@ -2,10 +2,12 @@
config,
lib,
...
}: let
}:
let
inherit (lib) mkIf mkEnableOption;
cfg = config.nixos.programs.steam;
in {
in
{
options = {
nixos.programs.steam.enable = mkEnableOption "Enables steam";
};

View File

@@ -3,10 +3,12 @@
lib,
pkgs,
...
}: let
}:
let
inherit (lib) mkIf mkEnableOption;
cfg = config.nixos.programs.thunar;
in {
in
{
options = {
nixos.programs.thunar.enable = mkEnableOption "Enables thunar file manager";
};

View File

@@ -3,10 +3,12 @@
config,
lib,
...
}: let
}:
let
inherit (lib) mkIf mkEnableOption;
cfg = config.nixos.programs.yubikey;
in {
in
{
options = {
nixos.programs.yubikey.enable = mkEnableOption "Enables yubikey utilities";
};

View File

@@ -2,10 +2,12 @@
config,
lib,
...
}: let
}:
let
inherit (lib) mkIf mkEnableOption;
cfg = config.nixos.programs.zsh;
in {
in
{
options = {
nixos.programs.zsh.enable = mkEnableOption "Enables zsh shell";
};