diff --git a/checks/pre-commit-hooks/default.nix b/checks/pre-commit-hooks/default.nix
index fa644a2..94f3878 100644
--- a/checks/pre-commit-hooks/default.nix
+++ b/checks/pre-commit-hooks/default.nix
@@ -1,6 +1,7 @@
{
inputs,
pkgs,
+ lib,
...
}:
let
@@ -11,9 +12,9 @@ pre-commit-hooks-nix.lib.${pkgs.system}.run {
hooks = {
pre-commit-hook-ensure-sops.enable = true;
treefmt = {
- enable = true;
- settings.fail-on-change = false;
+ enable = lib.mkForce true;
+ settings.fail-on-change = lib.mkForce false;
packageOverrides.treefmt = inputs.treefmt-nix.lib.mkWrapper pkgs ../../treefmt.nix;
};
};
-}
\ No newline at end of file
+}
diff --git a/flake.nix b/flake.nix
index ce2b341..dec2016 100644
--- a/flake.nix
+++ b/flake.nix
@@ -6,8 +6,8 @@
# The name "snowfall-lib" is required due to how Snowfall Lib processes your
# flake's inputs.
snowfall-lib = {
- url = "github:snowfallorg/lib";
- inputs.nixpkgs.follows = "nixpkgs";
+ url = "github:snowfallorg/lib";
+ inputs.nixpkgs.follows = "nixpkgs";
};
chaotic.url = "github:chaotic-cx/nyx/nyxpkgs-unstable";
@@ -18,7 +18,7 @@
};
impermanence.url = "github:nix-community/impermanence";
-
+
lanzaboote.url = "github:nix-community/lanzaboote/v0.4.2";
nixos-hardware.url = "github:NixOS/nixos-hardware/master";
@@ -84,179 +84,180 @@
};
# We will handle this in the next section.
- outputs = inputs:
- inputs.snowfall-lib.mkFlake {
- # You must provide our flake inputs to Snowfall Lib.
- inherit inputs;
+ outputs =
+ inputs:
+ inputs.snowfall-lib.mkFlake {
+ # You must provide our flake inputs to Snowfall Lib.
+ inherit inputs;
- # The `src` must be the root of the flake. See configuration
- # in the next section for information on how you can move your
- # Nix files to a separate directory.
- src = ./.;
+ # The `src` must be the root of the flake. See configuration
+ # in the next section for information on how you can move your
+ # Nix files to a separate directory.
+ src = ./.;
- # Add a module to a specific host.
- systems = {
- # common modules
- modules.nixos = with inputs; [
- authentik-nix.nixosModules.default
- chaotic.nixosModules.default
- crowdsec.nixosModules.crowdsec
- crowdsec.nixosModules.crowdsec-firewall-bouncer
- disko.nixosModules.disko
- impermanence.nixosModules.impermanence
- lanzaboote.nixosModules.lanzaboote
- sops-nix.nixosModules.sops
- home-manager.nixosModules.home-manager
- ];
-
- # common darwin modules
- modules.darwin = with inputs; [
- nix-homebrew.darwinModules.nix-homebrew
- home-manager.darwinModules.home-manager
- ];
-
- # Host config
- hosts = {
- # ######################################################
- # Desktop #
- # ######################################################
- desktop = {
- modules = with inputs; [
- nixos-hardware.nixosModules.common-cpu-amd
- nixos-hardware.nixosModules.common-cpu-amd-pstate
- nixos-hardware.nixosModules.common-cpu-amd-zenpower
- nixos-hardware.nixosModules.common-gpu-amd
- nixos-hardware.nixosModules.common-hidpi
- nixos-hardware.nixosModules.common-pc
- ];
- };
-
- # ######################################################
- # NAS #
- # ######################################################
- nas = {
- modules = with inputs; [
- nixos-hardware.nixosModules.common-pc
- nixos-hardware.nixosModules.common-cpu-amd
- nixos-hardware.nixosModules.common-cpu-amd-pstate
- nixos-hardware.nixosModules.common-cpu-amd-zenpower
- nixos-hardware.nixosModules.common-hidpi
- home-manager.nixosModules.home-manager
- ];
- # overlays = with inputs; [ crowdsec.overlays.default ];
- };
-
- # ######################################################
- # Steamdeck #
- # ######################################################
- steamdeck = {
- modules = with inputs; [
- disko.nixosModules.disko
- jovian.nixosModules.jovian
- nixos-hardware.nixosModules.common-cpu-amd
- nixos-hardware.nixosModules.common-cpu-amd-pstate
- nixos-hardware.nixosModules.common-cpu-amd-zenpower
- nixos-hardware.nixosModules.common-gpu-amd
- nixos-hardware.nixosModules.common-hidpi
- nixos-hardware.nixosModules.common-pc
- ];
- };
-
- # ######################################################
- # NUC #
- # ######################################################
- nuc = {
- modules = with inputs; [
- disko.nixosModules.disko
- nixos-hardware.nixosModules.common-cpu-amd
- nixos-hardware.nixosModules.common-cpu-amd-pstate
- nixos-hardware.nixosModules.common-cpu-amd-zenpower
- nixos-hardware.nixosModules.common-gpu-amd
- nixos-hardware.nixosModules.common-hidpi
- nixos-hardware.nixosModules.common-pc
- ];
- };
-
- # ######################################################
- # Pi4 #
- # ######################################################
- pi4 = {
- modules = with inputs; [
- disko.nixosModules.disko
- nixos-raspberrypi.nixosModules.raspberry-pi-4.base
- nixos-raspberrypi.nixosModules.raspberry-pi-4.display-vc4
- nixos-raspberrypi.lib.inject-overlays
- ];
- };
-
- # ######################################################
- # Pi5 #
- # ######################################################
- pi5 = {
- modules = with inputs; [
- disko.nixosModules.disko
- nixos-raspberrypi.nixosModules.raspberry-pi-5.base
- nixos-raspberrypi.nixosModules.raspberry-pi-5.display-vc4
- nixos-raspberrypi.nixosModules.raspberry-pi-5.bluetooth
- nixos-raspberrypi.lib.inject-overlays
- ];
- };
-
- # ######################################################
- # Mac #
- # ######################################################
- macbook-pro-nixos = {
- modules = with inputs; [
- nixos-apple-silicon.nixosModules.default
- ];
- };
- };
-
- overlays = with inputs; [ nix-vscode-extensions.overlays.default ];
-
- homes = {
- modules = with inputs; [
- nix-index-database.homeModules.nix-index
- sops-nix.homeManagerModules.sops
+ # Add a module to a specific host.
+ systems = {
+ # common modules
+ modules.nixos = with inputs; [
+ authentik-nix.nixosModules.default
+ chaotic.nixosModules.default
+ crowdsec.nixosModules.crowdsec
+ crowdsec.nixosModules.crowdsec-firewall-bouncer
+ disko.nixosModules.disko
+ impermanence.nixosModules.impermanence
+ lanzaboote.nixosModules.lanzaboote
+ sops-nix.nixosModules.sops
+ home-manager.nixosModules.home-manager
];
- overlays = with inputs; [
- nix-vscode-extensions.overlays.default
+ # common darwin modules
+ modules.darwin = with inputs; [
+ nix-homebrew.darwinModules.nix-homebrew
+ home-manager.darwinModules.home-manager
];
- users = {
- # "matt@desktop" = {
- # modules = with inputs; [
- # sops-nix.homeManagerModules.sops
- # ];
- # };
- "deck@steamdeck" = {
+ # Host config
+ hosts = {
+ # ######################################################
+ # Desktop #
+ # ######################################################
+ desktop = {
modules = with inputs; [
- steam-rom-manager.homeManagerModules.default
+ nixos-hardware.nixosModules.common-cpu-amd
+ nixos-hardware.nixosModules.common-cpu-amd-pstate
+ nixos-hardware.nixosModules.common-cpu-amd-zenpower
+ nixos-hardware.nixosModules.common-gpu-amd
+ nixos-hardware.nixosModules.common-hidpi
+ nixos-hardware.nixosModules.common-pc
+ ];
+ };
+
+ # ######################################################
+ # NAS #
+ # ######################################################
+ nas = {
+ modules = with inputs; [
+ nixos-hardware.nixosModules.common-pc
+ nixos-hardware.nixosModules.common-cpu-amd
+ nixos-hardware.nixosModules.common-cpu-amd-pstate
+ nixos-hardware.nixosModules.common-cpu-amd-zenpower
+ nixos-hardware.nixosModules.common-hidpi
+ home-manager.nixosModules.home-manager
+ ];
+ # overlays = with inputs; [ crowdsec.overlays.default ];
+ };
+
+ # ######################################################
+ # Steamdeck #
+ # ######################################################
+ steamdeck = {
+ modules = with inputs; [
+ disko.nixosModules.disko
+ jovian.nixosModules.jovian
+ nixos-hardware.nixosModules.common-cpu-amd
+ nixos-hardware.nixosModules.common-cpu-amd-pstate
+ nixos-hardware.nixosModules.common-cpu-amd-zenpower
+ nixos-hardware.nixosModules.common-gpu-amd
+ nixos-hardware.nixosModules.common-hidpi
+ nixos-hardware.nixosModules.common-pc
+ ];
+ };
+
+ # ######################################################
+ # NUC #
+ # ######################################################
+ nuc = {
+ modules = with inputs; [
+ disko.nixosModules.disko
+ nixos-hardware.nixosModules.common-cpu-amd
+ nixos-hardware.nixosModules.common-cpu-amd-pstate
+ nixos-hardware.nixosModules.common-cpu-amd-zenpower
+ nixos-hardware.nixosModules.common-gpu-amd
+ nixos-hardware.nixosModules.common-hidpi
+ nixos-hardware.nixosModules.common-pc
+ ];
+ };
+
+ # ######################################################
+ # Pi4 #
+ # ######################################################
+ pi4 = {
+ modules = with inputs; [
+ disko.nixosModules.disko
+ nixos-raspberrypi.nixosModules.raspberry-pi-4.base
+ nixos-raspberrypi.nixosModules.raspberry-pi-4.display-vc4
+ nixos-raspberrypi.lib.inject-overlays
+ ];
+ };
+
+ # ######################################################
+ # Pi5 #
+ # ######################################################
+ pi5 = {
+ modules = with inputs; [
+ disko.nixosModules.disko
+ nixos-raspberrypi.nixosModules.raspberry-pi-5.base
+ nixos-raspberrypi.nixosModules.raspberry-pi-5.display-vc4
+ nixos-raspberrypi.nixosModules.raspberry-pi-5.bluetooth
+ nixos-raspberrypi.lib.inject-overlays
+ ];
+ };
+
+ # ######################################################
+ # Mac #
+ # ######################################################
+ macbook-pro-nixos = {
+ modules = with inputs; [
+ nixos-apple-silicon.nixosModules.default
];
};
};
+
+ overlays = with inputs; [ nix-vscode-extensions.overlays.default ];
+
+ homes = {
+ modules = with inputs; [
+ nix-index-database.homeModules.nix-index
+ sops-nix.homeManagerModules.sops
+ ];
+
+ overlays = with inputs; [
+ nix-vscode-extensions.overlays.default
+ ];
+
+ users = {
+ # "matt@desktop" = {
+ # modules = with inputs; [
+ # sops-nix.homeManagerModules.sops
+ # ];
+ # };
+ "deck@steamdeck" = {
+ modules = with inputs; [
+ steam-rom-manager.homeManagerModules.default
+ ];
+ };
+ };
+ };
};
- };
- # Configure Snowfall Lib, all of these settings are optional.
- snowfall = {
- # Choose a namespace to use for your flake's packages, library,
- # and overlays.
- namespace = "mjallen";
+ # Configure Snowfall Lib, all of these settings are optional.
+ snowfall = {
+ # Choose a namespace to use for your flake's packages, library,
+ # and overlays.
+ namespace = "mjallen";
- # Add flake metadata that can be processed by tools like Snowfall Frost.
- meta = {
+ # Add flake metadata that can be processed by tools like Snowfall Frost.
+ meta = {
# A slug to use in documentation when displaying things like file paths.
name = "mjallen";
# A title to show for your flake, typically the name.
title = "mjallen Flake";
+ };
+ };
+
+ outputs-builder = channels: {
+ formatter = inputs.treefmt-nix.lib.mkWrapper channels.nixpkgs ./treefmt.nix;
};
};
-
- outputs-builder = channels: {
- formatter = inputs.treefmt-nix.lib.mkWrapper channels.nixpkgs ./treefmt.nix;
- };
- };
-}
\ No newline at end of file
+}
diff --git a/homes/aarch64-darwin/mattjallen@macbook-pro/default.nix b/homes/aarch64-darwin/mattjallen@macbook-pro/default.nix
index a8e432a..2f49d43 100755
--- a/homes/aarch64-darwin/mattjallen@macbook-pro/default.nix
+++ b/homes/aarch64-darwin/mattjallen@macbook-pro/default.nix
@@ -1,4 +1,9 @@
-{ lib, pkgs, home, ... }:
+{
+ lib,
+ pkgs,
+ home,
+ ...
+}:
let
shellAliases = {
update-switch = "darwin-rebuild switch --flake ~/nix-config";
diff --git a/homes/aarch64-linux/matt@macbook-pro-nixos/default.nix b/homes/aarch64-linux/matt@macbook-pro-nixos/default.nix
index 895fa8d..e70cf82 100755
--- a/homes/aarch64-linux/matt@macbook-pro-nixos/default.nix
+++ b/homes/aarch64-linux/matt@macbook-pro-nixos/default.nix
@@ -23,7 +23,7 @@ in
home.stateVersion = "23.11";
mjallen = {
- desktop.hyprland = {
+ desktop.hyprland = {
enable = true;
primaryDisplay = "eDP-1";
@@ -41,7 +41,6 @@ in
"name:steam, monitor:${display.input}, default:false, special, class:(.*[Ss]team.*)"
];
-
windowRule = [
"size 2160 3356, tag:horizonrdp"
];
@@ -95,7 +94,7 @@ in
tooltip = false;
exec = "waybar-hass --get_light light.living_room_lights";
interval = "once";
- format = "{text}";#"";
+ format = "{text}"; # "";
on-click = "waybar-hass --toggle_light light.living_room_lights";
return-type = "json";
};
diff --git a/homes/aarch64-linux/matt@pi4/default.nix b/homes/aarch64-linux/matt@pi4/default.nix
index c507e31..d888111 100755
--- a/homes/aarch64-linux/matt@pi4/default.nix
+++ b/homes/aarch64-linux/matt@pi4/default.nix
@@ -1,4 +1,4 @@
-{ lib, ... }:
+{ lib, ... }:
let
shellAliases = {
ll = "ls -alh";
@@ -19,40 +19,40 @@ in
home.username = "matt";
- sops = {
- age.keyFile = "/home/matt/.config/sops/age/keys.txt";
- defaultSopsFile = "/etc/nixos/secrets/secrets.yaml";
- validateSopsFiles = false;
- secrets = {
- "ssh-keys-public/pi4" = {
- path = "/home/matt/.ssh/id_ed25519.pub";
- mode = "0644";
- };
- "ssh-keys-private/pi4" = {
- path = "/home/matt/.ssh/id_ed25519";
- mode = "0600";
- };
-# "ssh-keys-public/desktop-nixos" = {
-# path = "/home/matt/.ssh/authorized_keys";
-# mode = "0600";
-# };
+ sops = {
+ age.keyFile = "/home/matt/.config/sops/age/keys.txt";
+ defaultSopsFile = "/etc/nixos/secrets/secrets.yaml";
+ validateSopsFiles = false;
+ secrets = {
+ "ssh-keys-public/pi4" = {
+ path = "/home/matt/.ssh/id_ed25519.pub";
+ mode = "0644";
+ };
+ "ssh-keys-private/pi4" = {
+ path = "/home/matt/.ssh/id_ed25519";
+ mode = "0600";
+ };
+ # "ssh-keys-public/desktop-nixos" = {
+ # path = "/home/matt/.ssh/authorized_keys";
+ # mode = "0600";
+ # };
-# "ssh-keys-public/desktop-nixos-root" = {
-# path = "/home/matt/.ssh/authorized_keys2";
-# mode = "0600";
-# };
+ # "ssh-keys-public/desktop-nixos-root" = {
+ # path = "/home/matt/.ssh/authorized_keys2";
+ # mode = "0600";
+ # };
-# "ssh-keys-public/desktop-windows" = {
-# path = "/home/matt/.ssh/authorized_keys3";
-# mode = "0600";
-# };
+ # "ssh-keys-public/desktop-windows" = {
+ # path = "/home/matt/.ssh/authorized_keys3";
+ # mode = "0600";
+ # };
-# "ssh-keys-public/macbook-macos" = {
-# path = "/home/matt/.ssh/authorized_keys4";
-# mode = "0600";
-# };
- };
- };
+ # "ssh-keys-public/macbook-macos" = {
+ # path = "/home/matt/.ssh/authorized_keys4";
+ # mode = "0600";
+ # };
+ };
+ };
programs = {
mangohud.enable = lib.mkForce true;
diff --git a/homes/aarch64-linux/matt@pi5/default.nix b/homes/aarch64-linux/matt@pi5/default.nix
index 866e684..7f0acd3 100755
--- a/homes/aarch64-linux/matt@pi5/default.nix
+++ b/homes/aarch64-linux/matt@pi5/default.nix
@@ -1,4 +1,10 @@
-{ pkgs, lib, config, namespace, ... }:
+{
+ pkgs,
+ lib,
+ config,
+ namespace,
+ ...
+}:
let
shellAliases = {
update-boot = "sudo nixos-rebuild boot --max-jobs 10 --build-host admin@10.0.1.3";
diff --git a/homes/aarch64-linux/root@pi4/default.nix b/homes/aarch64-linux/root@pi4/default.nix
index 78e871b..4523080 100644
--- a/homes/aarch64-linux/root@pi4/default.nix
+++ b/homes/aarch64-linux/root@pi4/default.nix
@@ -15,4 +15,4 @@ in
programs = {
zsh.shellAliases = shellAliases;
};
-}
\ No newline at end of file
+}
diff --git a/homes/x86_64-linux/admin@nuc/default.nix b/homes/x86_64-linux/admin@nuc/default.nix
index 44edc7f..70578c1 100755
--- a/homes/x86_64-linux/admin@nuc/default.nix
+++ b/homes/x86_64-linux/admin@nuc/default.nix
@@ -1,4 +1,4 @@
-{ pkgs,... }:
+{ pkgs, ... }:
let
shellAliases = {
update-boot = "sudo nixos-rebuild boot --max-jobs 10";
diff --git a/homes/x86_64-linux/deck@steamdeck/default.nix b/homes/x86_64-linux/deck@steamdeck/default.nix
index ca15c41..12e4c8d 100755
--- a/homes/x86_64-linux/deck@steamdeck/default.nix
+++ b/homes/x86_64-linux/deck@steamdeck/default.nix
@@ -30,13 +30,13 @@ in
steam-rom-manager = {
enable = true;
steamUsername = "mjallen18";
-
+
# Optional: override default paths if needed
environmentVariables = {
romsDirectory = "/home/deck/Emulation/roms";
steamDirectory = "/home/deck/.local/share/Steam";
};
-
+
emulators = {
ryujinx.enable = true;
@@ -44,13 +44,21 @@ in
enable = true;
package = pkgs.dolphin-emu;
romFolder = "gc";
- fileTypes = [ ".iso" ".ISO" ".gcm" ".GCM" ".ciso" ".CISO" "rvz" ];
+ fileTypes = [
+ ".iso"
+ ".ISO"
+ ".gcm"
+ ".GCM"
+ ".ciso"
+ ".CISO"
+ "rvz"
+ ];
extraArgs = "-b -e \"\${filePath}\"";
};
-
+
pcsx2.enable = true;
mgba.enable = true;
-
+
"Non-SRM Shortcuts" = {
enable = true;
parserType = "Non-SRM Shortcuts";
diff --git a/homes/x86_64-linux/root@nuc/default.nix b/homes/x86_64-linux/root@nuc/default.nix
index 6d8c3c7..ae274e6 100755
--- a/homes/x86_64-linux/root@nuc/default.nix
+++ b/homes/x86_64-linux/root@nuc/default.nix
@@ -14,4 +14,4 @@ in
programs = {
zsh.shellAliases = shellAliases;
};
-}
\ No newline at end of file
+}
diff --git a/modules/home/desktop/gnome/default.nix b/modules/home/desktop/gnome/default.nix
index 6163524..659c63b 100644
--- a/modules/home/desktop/gnome/default.nix
+++ b/modules/home/desktop/gnome/default.nix
@@ -1,4 +1,9 @@
-{ config, lib, pkgs, ... }:
+{
+ config,
+ lib,
+ pkgs,
+ ...
+}:
let
cfg = config.mjallen.desktop.gnome;
in
@@ -66,4 +71,4 @@ in
};
};
};
-}
\ No newline at end of file
+}
diff --git a/modules/home/desktop/gnome/options.nix b/modules/home/desktop/gnome/options.nix
index 549cc33..ac20cfd 100644
--- a/modules/home/desktop/gnome/options.nix
+++ b/modules/home/desktop/gnome/options.nix
@@ -4,4 +4,4 @@ with lib;
options.mjallen.desktop.gnome = {
enable = mkEnableOption "enable gnome settings";
};
-}
\ No newline at end of file
+}
diff --git a/modules/home/desktop/hyprland/default.nix b/modules/home/desktop/hyprland/default.nix
index 78503ac..2c085f6 100755
--- a/modules/home/desktop/hyprland/default.nix
+++ b/modules/home/desktop/hyprland/default.nix
@@ -1,4 +1,9 @@
-{ config, lib, pkgs, ... }:
+{
+ config,
+ lib,
+ pkgs,
+ ...
+}:
with lib;
let
cfg = config.mjallen.desktop.hyprland;
@@ -6,7 +11,7 @@ let
in
{
imports = [
- ./options.nix
+ ./options.nix
./packages.nix
./theme.nix
./variables.nix
@@ -21,7 +26,7 @@ in
programs = {
vscode.profiles.default.userSettings."window"."titleBarStyle" = "custom";
};
-
+
wayland.windowManager.hyprland = {
enable = true;
xwayland.enable = true;
@@ -151,7 +156,7 @@ in
render = {
cm_fs_passthrough = 1;
};
-
+
misc = {
vrr = 1;
};
@@ -231,7 +236,7 @@ in
"float, class:(.*nm-connection-editor.*)"
"move onscreen cursor 0% 0%, class:(.*nm-connection-editor.*)"
-
+
"float, title:(Media viewer)"
"float, class:(it.mijorus.smile),title:(Smile)"
"float, class:(.blueman-manager-wrapped)$,title:(Bluetooth Devices)"
@@ -326,7 +331,7 @@ in
# NOT recommended as it crashed a few times, once it's stabilized I'll make it the default
send_cancel = "0";
};
-
+
hyprgrass-bind = [
# swipe left from right edge
", edge:r:l, workspace, +1"
@@ -345,7 +350,7 @@ in
", swipe:3:ld, exec, foot"
# tap with 3 fingers
- ", tap:3, exec, foot"
+ ", tap:3, exec, foot"
# longpress can trigger mouse binds:
", longpress:2, movewindow"
@@ -390,14 +395,16 @@ in
};
};
- extraConfig = ''
- exec-once = dbus-update-activation-environment --systemd --all
- exec-once = systemctl --user import-environment WAYLAND_DISPLAY XDG_CURRENT_DESKTOP
- exec-once = /usr/lib/polkit-gnome/polkit-gnome-authentication-agent-1
- exec-once = xhost +SI:localuser:root
- exec-once = nwg-look -a
- exec-once = nwg-dock-hyprland -d
- '' + cfg.extraConfig or '''';
+ extraConfig =
+ ''
+ exec-once = dbus-update-activation-environment --systemd --all
+ exec-once = systemctl --user import-environment WAYLAND_DISPLAY XDG_CURRENT_DESKTOP
+ exec-once = /usr/lib/polkit-gnome/polkit-gnome-authentication-agent-1
+ exec-once = xhost +SI:localuser:root
+ exec-once = nwg-look -a
+ exec-once = nwg-dock-hyprland -d
+ ''
+ + cfg.extraConfig or '''';
};
};
}
diff --git a/modules/home/desktop/hyprland/options.nix b/modules/home/desktop/hyprland/options.nix
index 7972745..ff50c32 100644
--- a/modules/home/desktop/hyprland/options.nix
+++ b/modules/home/desktop/hyprland/options.nix
@@ -45,31 +45,31 @@ with lib;
wallpaper = mkOption {
type = with types; listOf str;
- default = [];
+ default = [ ];
description = "list of hyprland wallpaper configs";
};
monitor = mkOption {
type = with types; listOf str;
- default = [];
+ default = [ ];
description = "list of hyprland monitor configs";
};
monitorv2 = mkOption {
type = with types; listOf str;
- default = [];
+ default = [ ];
description = "list of hyprland monitorv2 configs";
};
workspace = mkOption {
type = with types; listOf str;
- default = [];
+ default = [ ];
description = "list of hyprland workspace definitions";
};
windowRule = mkOption {
type = with types; listOf str;
- default = [];
+ default = [ ];
description = "list of hyprland window rules";
};
@@ -79,12 +79,12 @@ with lib;
description = "any extra options";
};
- iconThemeName = mkOption {
+ iconThemeName = mkOption {
type = types.str;
default = "Colloid-Dark";
};
- gtkThemeName = mkOption {
+ gtkThemeName = mkOption {
type = types.str;
default = "Colloid-Dark";
};
@@ -92,14 +92,38 @@ with lib;
defaultApps = mkOption {
type = types.submodule {
options = {
- browser = mkOption { type = types.package; default = pkgs.firefox; };
- editor = mkOption { type = types.package; default = pkgs.micro; };
- fileExplorer = mkOption { type = types.package; default = pkgs.nemo; };
- visual = mkOption { type = types.package; default = pkgs.vscodium; };
- terminal = mkOption { type = types.package; default = pkgs.kitty; };
- office = mkOption { type = types.package; default = pkgs.onlyoffice-bin_latest; };
- video = mkOption { type = types.package; default = pkgs.vlc; };
- imageViewer = mkOption { type = types.package; default = pkgs.nomacs; };
+ browser = mkOption {
+ type = types.package;
+ default = pkgs.firefox;
+ };
+ editor = mkOption {
+ type = types.package;
+ default = pkgs.micro;
+ };
+ fileExplorer = mkOption {
+ type = types.package;
+ default = pkgs.nemo;
+ };
+ visual = mkOption {
+ type = types.package;
+ default = pkgs.vscodium;
+ };
+ terminal = mkOption {
+ type = types.package;
+ default = pkgs.kitty;
+ };
+ office = mkOption {
+ type = types.package;
+ default = pkgs.onlyoffice-bin_latest;
+ };
+ video = mkOption {
+ type = types.package;
+ default = pkgs.vlc;
+ };
+ imageViewer = mkOption {
+ type = types.package;
+ default = pkgs.nomacs;
+ };
};
};
description = "Default applications used across the system.";
@@ -120,4 +144,4 @@ with lib;
};
};
};
-}
\ No newline at end of file
+}
diff --git a/modules/home/desktop/hyprland/packages.nix b/modules/home/desktop/hyprland/packages.nix
index eefc1f3..c3c4b25 100644
--- a/modules/home/desktop/hyprland/packages.nix
+++ b/modules/home/desktop/hyprland/packages.nix
@@ -1,4 +1,9 @@
-{ config, lib, pkgs, ... }:
+{
+ config,
+ lib,
+ pkgs,
+ ...
+}:
with lib;
let
cfg = config.mjallen.desktop.hyprland;
@@ -64,4 +69,4 @@ in
xwayland
];
};
-}
\ No newline at end of file
+}
diff --git a/modules/home/desktop/hyprland/services/hypridle/default.nix b/modules/home/desktop/hyprland/services/hypridle/default.nix
index 70fb925..6da7c5d 100644
--- a/modules/home/desktop/hyprland/services/hypridle/default.nix
+++ b/modules/home/desktop/hyprland/services/hypridle/default.nix
@@ -1,4 +1,9 @@
-{ config, lib, namespace, ... }:
+{
+ config,
+ lib,
+ namespace,
+ ...
+}:
let
cfg = config.${namespace}.desktop.hyprland;
in
diff --git a/modules/home/desktop/hyprland/services/hyprlock/default.nix b/modules/home/desktop/hyprland/services/hyprlock/default.nix
index 1676dfa..bc2175a 100644
--- a/modules/home/desktop/hyprland/services/hyprlock/default.nix
+++ b/modules/home/desktop/hyprland/services/hyprlock/default.nix
@@ -1,4 +1,9 @@
-{ config, lib, namespace, ... }:
+{
+ config,
+ lib,
+ namespace,
+ ...
+}:
let
cfg = config.${namespace}.desktop.hyprland;
in
@@ -7,41 +12,41 @@ in
config = lib.mkIf cfg.enable {
programs.hyprlock = {
- enable = true;
- settings = {
- background = [
- {
- monitor = "";
- path = cfg.wallpaper; # supports png, jpg, webp (no animations, though)
- color = "rgba(25, 20, 20, 1.0)";
+ enable = true;
+ settings = {
+ background = [
+ {
+ monitor = "";
+ path = cfg.wallpaper; # supports png, jpg, webp (no animations, though)
+ color = "rgba(25, 20, 20, 1.0)";
- # all these options are taken from hyprland, see https://wiki.hyprland.org/Configuring/Variables/#blur for explanations
- blur_passes = "3"; # 0 disables blurring
- blur_size = "7";
- noise = "0.0117";
- contrast = "0.8916";
- brightness = "0.8172";
- vibrancy = "0.1696";
- vibrancy_darkness = "0.0";
- }
- ];
- input-field = [
- {
- size = "200, 50";
- position = "0, -80";
- monitor = cfg.primaryDisplay;
- dots_center = true;
- fade_on_empty = true;
- font_color = "rgb(202, 211, 245)";
- inner_color = "rgb(91, 96, 120)";
- outer_color = "rgb(24, 25, 38)";
- bothlock_color = -1;
- outline_thickness = 5;
- placeholder_text = ''Password...'';
- shadow_passes = 2;
- }
- ];
- };
+ # all these options are taken from hyprland, see https://wiki.hyprland.org/Configuring/Variables/#blur for explanations
+ blur_passes = "3"; # 0 disables blurring
+ blur_size = "7";
+ noise = "0.0117";
+ contrast = "0.8916";
+ brightness = "0.8172";
+ vibrancy = "0.1696";
+ vibrancy_darkness = "0.0";
+ }
+ ];
+ input-field = [
+ {
+ size = "200, 50";
+ position = "0, -80";
+ monitor = cfg.primaryDisplay;
+ dots_center = true;
+ fade_on_empty = true;
+ font_color = "rgb(202, 211, 245)";
+ inner_color = "rgb(91, 96, 120)";
+ outer_color = "rgb(24, 25, 38)";
+ bothlock_color = -1;
+ outline_thickness = 5;
+ placeholder_text = ''Password...'';
+ shadow_passes = 2;
+ }
+ ];
};
+ };
};
-}
\ No newline at end of file
+}
diff --git a/modules/home/desktop/hyprland/services/hyprpaper/default.nix b/modules/home/desktop/hyprland/services/hyprpaper/default.nix
index 8d2d0d2..c480201 100644
--- a/modules/home/desktop/hyprland/services/hyprpaper/default.nix
+++ b/modules/home/desktop/hyprland/services/hyprpaper/default.nix
@@ -1,4 +1,9 @@
-{ config, lib, namespace, ... }:
+{
+ config,
+ lib,
+ namespace,
+ ...
+}:
let
cfg = config.${namespace}.desktop.hyprland;
in
@@ -15,4 +20,4 @@ in
};
};
};
-}
\ No newline at end of file
+}
diff --git a/modules/home/desktop/hyprland/theme.nix b/modules/home/desktop/hyprland/theme.nix
index 23249cb..fb6c8f9 100644
--- a/modules/home/desktop/hyprland/theme.nix
+++ b/modules/home/desktop/hyprland/theme.nix
@@ -1,12 +1,17 @@
-{ config, lib, pkgs, ... }:
+{
+ config,
+ lib,
+ pkgs,
+ ...
+}:
with lib;
let
cfg = config.mjallen.desktop.hyprland;
- themeSize = "compact"; # [ "standard" "compact" ]
- themeAccent = "all"; # [ "default" "purple" "pink" "red" "orange" "yellow" "green" "teal" "grey" "all" ]
- themeVariant = "nord"; # [ "nord" "dracula" "gruvbox" "everforest" "catppuccin" "all" "black" "rimless" "normal" "float" ]
- themeColor = "dark"; # [ "standard" "light" "dark" ]
+ themeSize = "compact"; # [ "standard" "compact" ]
+ themeAccent = "all"; # [ "default" "purple" "pink" "red" "orange" "yellow" "green" "teal" "grey" "all" ]
+ themeVariant = "nord"; # [ "nord" "dracula" "gruvbox" "everforest" "catppuccin" "all" "black" "rimless" "normal" "float" ]
+ themeColor = "dark"; # [ "standard" "light" "dark" ]
iconThemeVariant = "all"; # [ "default" "purple" "pink" "red" "orange" "yellow" "green" "teal" "grey" "all" ]
iconScheme = "nord"; # [ "default" "nord" "dracula" "gruvbox" "everforest" "catppuccin" "all" ]
@@ -95,4 +100,4 @@ in
};
};
};
-}
\ No newline at end of file
+}
diff --git a/modules/home/desktop/hyprland/variables.nix b/modules/home/desktop/hyprland/variables.nix
index e7515e3..ccba10d 100644
--- a/modules/home/desktop/hyprland/variables.nix
+++ b/modules/home/desktop/hyprland/variables.nix
@@ -6,34 +6,34 @@ in
{
config = mkIf cfg.enable {
home.sessionVariables = {
- BROWSER = "${cfg.defaultApps.browser.pname}";
- CLUTTER_BACKEND = "wayland";
- EDITOR = "${cfg.defaultApps.editor.pname}";
- VISUAL = "${cfg.defaultApps.visual.pname}";
- ICON_THEME = cfg.iconThemeName;
- GTK_CSD = "0";
- GTK_THEME = cfg.gtkThemeName;
- GTK_USE_PORTAL = "1";
- HYPRCURSOR_THEME = config.home.pointerCursor.name;
- HYPRCURSOR_SIZE = config.home.pointerCursor.size;
- MOZ_ENABLE_WAYLAND = "1";
- NIXOS_OZONE_WL = "1";
- NIXOS_XDG_OPEN_USE_PORTAL = "1";
- QT_AUTO_SCREEN_SCALE_FACTOR = "1";
- QT_QPA_PLATFORM = "wayland-egl";
- QT_QPA_PLATFORMTHEME = "gtk3";
- QT_SCALE_FACTOR = "1";
+ BROWSER = "${cfg.defaultApps.browser.pname}";
+ CLUTTER_BACKEND = "wayland";
+ EDITOR = "${cfg.defaultApps.editor.pname}";
+ VISUAL = "${cfg.defaultApps.visual.pname}";
+ ICON_THEME = cfg.iconThemeName;
+ GTK_CSD = "0";
+ GTK_THEME = cfg.gtkThemeName;
+ GTK_USE_PORTAL = "1";
+ HYPRCURSOR_THEME = config.home.pointerCursor.name;
+ HYPRCURSOR_SIZE = config.home.pointerCursor.size;
+ MOZ_ENABLE_WAYLAND = "1";
+ NIXOS_OZONE_WL = "1";
+ NIXOS_XDG_OPEN_USE_PORTAL = "1";
+ QT_AUTO_SCREEN_SCALE_FACTOR = "1";
+ QT_QPA_PLATFORM = "wayland-egl";
+ QT_QPA_PLATFORMTHEME = "gtk3";
+ QT_SCALE_FACTOR = "1";
QT_WAYLAND_DISABLE_WINDOWDECORATION = "1";
- SDL_VIDEODRIVER = "wayland";
- TERMINAL = "${cfg.defaultApps.terminal.pname}";
- XCURSOR_THEME = config.home.pointerCursor.name;
- XCURSOR_SIZE = config.home.pointerCursor.size;
- XDG_CACHE_HOME = "\${HOME}/.cache";
- XDG_CONFIG_HOME = "\${HOME}/.config";
- XDG_CURRENT_DESKTOP = "Hyprland";
- XDG_DATA_HOME = "\${HOME}/.local/share";
- XDG_SESSION_DESKTOP = "Hyprland";
- XDG_SESSION_TYPE = "wayland";
+ SDL_VIDEODRIVER = "wayland";
+ TERMINAL = "${cfg.defaultApps.terminal.pname}";
+ XCURSOR_THEME = config.home.pointerCursor.name;
+ XCURSOR_SIZE = config.home.pointerCursor.size;
+ XDG_CACHE_HOME = "\${HOME}/.cache";
+ XDG_CONFIG_HOME = "\${HOME}/.config";
+ XDG_CURRENT_DESKTOP = "Hyprland";
+ XDG_DATA_HOME = "\${HOME}/.local/share";
+ XDG_SESSION_DESKTOP = "Hyprland";
+ XDG_SESSION_TYPE = "wayland";
};
};
-}
\ No newline at end of file
+}
diff --git a/modules/home/desktop/theme/nord.nix b/modules/home/desktop/theme/nord.nix
index 9678a1c..a195900 100644
--- a/modules/home/desktop/theme/nord.nix
+++ b/modules/home/desktop/theme/nord.nix
@@ -59,4 +59,4 @@
border-radius: 1rem 0rem 0rem 1rem;
margin-left: 0.5rem;
'';
-}
\ No newline at end of file
+}
diff --git a/modules/home/home/default.nix b/modules/home/home/default.nix
index 6574fe3..4304690 100644
--- a/modules/home/home/default.nix
+++ b/modules/home/home/default.nix
@@ -1,4 +1,9 @@
-{ config, lib, pkgs, ... }:
+{
+ config,
+ lib,
+ pkgs,
+ ...
+}:
{
home = {
enableNixpkgsReleaseCheck = lib.mkDefault false;
diff --git a/modules/home/programs/btop/options.nix b/modules/home/programs/btop/options.nix
index 9828d5e..c85c2e9 100644
--- a/modules/home/programs/btop/options.nix
+++ b/modules/home/programs/btop/options.nix
@@ -4,4 +4,4 @@ with lib;
options.mjallen.programs.btop = {
enable = mkEnableOption "enable btop";
};
-}
\ No newline at end of file
+}
diff --git a/modules/home/programs/code/default.nix b/modules/home/programs/code/default.nix
index ed7da44..66010fc 100644
--- a/modules/home/programs/code/default.nix
+++ b/modules/home/programs/code/default.nix
@@ -1,4 +1,10 @@
-{ config, lib, pkgs, system, ... }:
+{
+ config,
+ lib,
+ pkgs,
+ system,
+ ...
+}:
let
isArm = "aarch64-linux" == system;
open-remote-ssh = pkgs.vscode-utils.buildVscodeExtension {
@@ -27,44 +33,48 @@ in
default = {
enableUpdateCheck = false;
enableExtensionUpdateCheck = false;
- extensions = with pkgs; [
- vscode-extensions.arrterian.nix-env-selector
- vscode-extensions.bbenoist.nix
- vscode-extensions.brettm12345.nixfmt-vscode
- vscode-extensions.cweijan.vscode-database-client2
- vscode-extensions.dendron.dendron-markdown-preview-enhanced
- vscode-extensions.jnoortheen.nix-ide
- vscode-extensions.mkhl.direnv
- vscode-extensions.ms-python.debugpy
- vscode-extensions.ms-python.pylint
- vscode-extensions.ms-python.python
- # vscode-extensions.ms-python.vscode-pylance
- vscode-extensions.redhat.vscode-yaml
- vscode-extensions.yy0931.vscode-sqlite3-editor
+ extensions =
+ with pkgs;
+ [
+ vscode-extensions.arrterian.nix-env-selector
+ vscode-extensions.bbenoist.nix
+ vscode-extensions.brettm12345.nixfmt-vscode
+ vscode-extensions.cweijan.vscode-database-client2
+ vscode-extensions.dendron.dendron-markdown-preview-enhanced
+ vscode-extensions.jnoortheen.nix-ide
+ vscode-extensions.mkhl.direnv
+ vscode-extensions.ms-python.debugpy
+ vscode-extensions.ms-python.pylint
+ vscode-extensions.ms-python.python
+ # vscode-extensions.ms-python.vscode-pylance
+ vscode-extensions.redhat.vscode-yaml
+ vscode-extensions.yy0931.vscode-sqlite3-editor
- # open-remote-ssh
- # nix-vscode-extensions.open-vsx.jeanp413.open-remote-ssh
- # open-vsx.jeanp413.open-remote-ssh
- ] ++ ( if !isArm then x86_only else [ ] ) ++ pkgs.vscode-utils.extensionsFromVscodeMarketplace [
- {
- name = "copilot-mcp";
- publisher = "automatalabs";
- version = "0.0.49";
- sha256 = "sha256-+G2OQl5SCN7bh7MzGdYiRclIZefBE7lWnGg1kNpCvnA=";
- }
- {
- name = "mcp-server-runner";
- publisher = "zebradev";
- version = "0.1.0";
- sha256 = "sha256-StydVt3VzQUSS/pYp76jnIwtZlEj8gWAGzOARs93J+E=";
- }
- {
- name = "claude-dev";
- publisher = "saoudrizwan";
- version = "3.17.9";
- sha256 = "sha256-y3bFtMe5vZrO3DFb31KDvkzjD2jM76wK89mKhgJXC70=";
- }
- ];
+ # open-remote-ssh
+ # nix-vscode-extensions.open-vsx.jeanp413.open-remote-ssh
+ # open-vsx.jeanp413.open-remote-ssh
+ ]
+ ++ (if !isArm then x86_only else [ ])
+ ++ pkgs.vscode-utils.extensionsFromVscodeMarketplace [
+ {
+ name = "copilot-mcp";
+ publisher = "automatalabs";
+ version = "0.0.49";
+ sha256 = "sha256-+G2OQl5SCN7bh7MzGdYiRclIZefBE7lWnGg1kNpCvnA=";
+ }
+ {
+ name = "mcp-server-runner";
+ publisher = "zebradev";
+ version = "0.1.0";
+ sha256 = "sha256-StydVt3VzQUSS/pYp76jnIwtZlEj8gWAGzOARs93J+E=";
+ }
+ {
+ name = "claude-dev";
+ publisher = "saoudrizwan";
+ version = "3.17.9";
+ sha256 = "sha256-y3bFtMe5vZrO3DFb31KDvkzjD2jM76wK89mKhgJXC70=";
+ }
+ ];
userSettings = {
@@ -79,7 +89,7 @@ in
"confirmDelete" = false;
"confirmDragAndDrop" = false;
};
-
+
"git" = {
"confirmSync" = false;
"enableSmartCommit" = true;
@@ -110,10 +120,12 @@ in
# You can write arbitary Nix expressions here, to produce valid "options" declaration result.
# Tip: for flake-based configuration, utilize `builtins.getFlake`
"nixos" = {
- "expr" = "(builtins.getFlake \"${config.home.homeDirectory}/nix-config\").nixosConfigurations..options";
+ "expr" =
+ "(builtins.getFlake \"${config.home.homeDirectory}/nix-config\").nixosConfigurations..options";
};
"home-manager" = {
- "expr" = "(builtins.getFlake \"${config.home.homeDirectory}/nix-config\").homeConfigurations..options";
+ "expr" =
+ "(builtins.getFlake \"${config.home.homeDirectory}/nix-config\").homeConfigurations..options";
};
# # Tip: use ${workspaceFolder} variable to define path
# "nix-darwin" = {
@@ -149,4 +161,4 @@ in
enableZshIntegration = true;
};
};
-}
\ No newline at end of file
+}
diff --git a/modules/home/programs/git/default.nix b/modules/home/programs/git/default.nix
index 026e07c..99cc5ac 100644
--- a/modules/home/programs/git/default.nix
+++ b/modules/home/programs/git/default.nix
@@ -18,4 +18,4 @@ in
userEmail = "matt.l.jallen@gmail.com";
aliases = gitAliases;
};
-}
\ No newline at end of file
+}
diff --git a/modules/home/programs/kitty/default.nix b/modules/home/programs/kitty/default.nix
index ce5222f..0a7f126 100755
--- a/modules/home/programs/kitty/default.nix
+++ b/modules/home/programs/kitty/default.nix
@@ -29,33 +29,33 @@ in
background_opacity = "0.85";
# The basic colors
- foreground = nord.snowStorm.nord6;
- background = nord.polarNight.nord0;
- selection_foreground = nord.polarNight.nord0;
- selection_background = nord.aurora.nord15;
+ foreground = nord.snowStorm.nord6;
+ background = nord.polarNight.nord0;
+ selection_foreground = nord.polarNight.nord0;
+ selection_background = nord.aurora.nord15;
# Cursor colors
- cursor = nord.aurora.nord15;
- cursor_text_color = nord.polarNight.nord0;
+ cursor = nord.aurora.nord15;
+ cursor_text_color = nord.polarNight.nord0;
# URL underline color when hovering with mouse
url_color = nord.aurora.nord15;
# Kitty window border colors
- active_border_color = nord.frost.nord10;
+ active_border_color = nord.frost.nord10;
inactive_border_color = nord.polarNight.nord1;
- bell_border_color = nord.aurora.nord13;
+ bell_border_color = nord.aurora.nord13;
# OS Window titlebar colors
- wayland_titlebar_color = nord.polarNight.nord0;
- macos_titlebar_color = nord.polarNight.nord0;
+ wayland_titlebar_color = nord.polarNight.nord0;
+ macos_titlebar_color = nord.polarNight.nord0;
# Tab bar colors
- active_tab_foreground = nord.polarNight.nord3;
- active_tab_background = nord.aurora.nord15;
+ active_tab_foreground = nord.polarNight.nord3;
+ active_tab_background = nord.aurora.nord15;
inactive_tab_foreground = nord.snowStorm.nord6;
inactive_tab_background = nord.polarNight.nord1;
- tab_bar_background = nord.polarNight.nord3;
+ tab_bar_background = nord.polarNight.nord3;
# Colors for marks (marked text in the terminal)
mark1_foreground = nord.polarNight.nord0;
@@ -86,11 +86,11 @@ in
color11 = nord.aurora.nord13;
# blue
- color4 = nord.frost.nord10;
+ color4 = nord.frost.nord10;
color12 = nord.frost.nord10;
# magenta
- color5 = nord.aurora.nord15;
+ color5 = nord.aurora.nord15;
color13 = nord.aurora.nord15;
# cyan
@@ -98,7 +98,7 @@ in
color14 = nord.frost.nord8;
# white
- color7 = nord.snowStorm.nord5;
+ color7 = nord.snowStorm.nord5;
color15 = nord.snowStorm.nord4;
};
};
diff --git a/modules/home/programs/kitty/options.nix b/modules/home/programs/kitty/options.nix
index 53bc3f9..0759e52 100644
--- a/modules/home/programs/kitty/options.nix
+++ b/modules/home/programs/kitty/options.nix
@@ -24,4 +24,4 @@ with lib;
default = import ../../desktop/theme/nord.nix;
};
};
-}
\ No newline at end of file
+}
diff --git a/modules/home/programs/librewolf/default.nix b/modules/home/programs/librewolf/default.nix
index d13fe4b..28fda5f 100644
--- a/modules/home/programs/librewolf/default.nix
+++ b/modules/home/programs/librewolf/default.nix
@@ -36,7 +36,8 @@
"browser.newtabpage.activity-stream.topSitesRows" = 3; # Set number of rows for top sites on new tab page
"layout.css.light-dark.enabled" = true; # Enable light/dark theme support
"extensions.activeThemeID" = "default-theme@mozilla.org"; # Set active theme
- "extensions.webextensions.uuids" = "{\"formautofill@mozilla.org\" =\"851c83b7-26d5-449c-8cc9-d8951a0ce78d\",\"pictureinpicture@mozilla.org\" =\"42fa2650-5134-4bef-bafa-b73f9ae51bad\",\"screenshots@mozilla.org\" =\"efd2b692-43c4-433a-aea5-0cb79f8312d4\",\"webcompat-reporter@mozilla.org\" =\"c43a6be2-fb56-4253-b384-ce8e09a89999\",\"webcompat@mozilla.org\" =\"e25fd1bb-7c53-413f-9528-bb922c322a56\",\"default-theme@mozilla.org\" =\"610b67c3-9145-46f7-814f-d8ee2cc8edff\",\"addons-search-detection@mozilla.com\:\"caedb3ca-5cf5-4e23-a251-d742f23e6fc8\",\"uBlock0@raymondhill.net\" =\"7e7d9fd9-12bf-42d3-9c7c-9ffd05420ec7\",\"78272b6fa58f4a1abaac99321d503a20@proton.me\" =\"7242a067-06d8-430b-94a3-00d264cdd57b\",\"addon@darkreader.org\" =\"2f02b112-6acd-4bdc-af2c-1432eb527339\",\"jid1-xUfzOsOFlzSOXg@jetpack\" =\"d0c72046-9903-4118-8160-a028840bf928\",\"chrome-gnome-shell@gnome.org\" =\"a1ab53e6-b765-4f25-8349-383cc04682a0\",\"user-agent-switcher@ninetailed.ninja\" =\"259d07cc-bb32-4ed5-b90f-6d73abdeb7bb\",\"firefoxdav@icloud.com\" =\"110e6e2c-18f8-461d-9f26-b8f04482b6f1\",\"ciscowebexstart1@cisco.com\" =\"a4062240-e73a-4353-bddb-d608d84881f7\",\"{a6c4a591-f1b2-4f03-b3ff-767e5bedf4e7}\" =\"9164e437-812b-4a07-8dfd-2fd73b39329b\",\"{036a55b4-5e72-4d05-a06c-cba2dfcc134a}\" =\"648fc678-a6fb-47cd-9792-fb9520678c17\",\"{446900e4-71c2-419f-a6a7-df9c091e268b}\" =\"f0b43422-070e-466e-85c9-6543f209f075\",\"jid1-MnnxcxisBPnSXQ@jetpack\" =\"4c448202-c843-4cae-b5c3-d11f2da58fa3\",\"soundfixer@unrelenting.technology\" =\"59b35eb8-1c85-4919-a905-80d120993ddc\",\"floccus@handmadeideas.org\" =\"8ad2956c-8091-41af-a689-7d2108f5958d\",\"{79b9dbcf-cc5a-4cda-89ef-c4ab097eb074}\" =\"c2a223a7-32e0-4726-9f20-17236702b1f5\",\"linkgopher@oooninja.com\" =\"a257858c-0dce-415b-b123-6222876cf843\"}";
+ "extensions.webextensions.uuids" =
+ "{\"formautofill@mozilla.org\" =\"851c83b7-26d5-449c-8cc9-d8951a0ce78d\",\"pictureinpicture@mozilla.org\" =\"42fa2650-5134-4bef-bafa-b73f9ae51bad\",\"screenshots@mozilla.org\" =\"efd2b692-43c4-433a-aea5-0cb79f8312d4\",\"webcompat-reporter@mozilla.org\" =\"c43a6be2-fb56-4253-b384-ce8e09a89999\",\"webcompat@mozilla.org\" =\"e25fd1bb-7c53-413f-9528-bb922c322a56\",\"default-theme@mozilla.org\" =\"610b67c3-9145-46f7-814f-d8ee2cc8edff\",\"addons-search-detection@mozilla.com\:\"caedb3ca-5cf5-4e23-a251-d742f23e6fc8\",\"uBlock0@raymondhill.net\" =\"7e7d9fd9-12bf-42d3-9c7c-9ffd05420ec7\",\"78272b6fa58f4a1abaac99321d503a20@proton.me\" =\"7242a067-06d8-430b-94a3-00d264cdd57b\",\"addon@darkreader.org\" =\"2f02b112-6acd-4bdc-af2c-1432eb527339\",\"jid1-xUfzOsOFlzSOXg@jetpack\" =\"d0c72046-9903-4118-8160-a028840bf928\",\"chrome-gnome-shell@gnome.org\" =\"a1ab53e6-b765-4f25-8349-383cc04682a0\",\"user-agent-switcher@ninetailed.ninja\" =\"259d07cc-bb32-4ed5-b90f-6d73abdeb7bb\",\"firefoxdav@icloud.com\" =\"110e6e2c-18f8-461d-9f26-b8f04482b6f1\",\"ciscowebexstart1@cisco.com\" =\"a4062240-e73a-4353-bddb-d608d84881f7\",\"{a6c4a591-f1b2-4f03-b3ff-767e5bedf4e7}\" =\"9164e437-812b-4a07-8dfd-2fd73b39329b\",\"{036a55b4-5e72-4d05-a06c-cba2dfcc134a}\" =\"648fc678-a6fb-47cd-9792-fb9520678c17\",\"{446900e4-71c2-419f-a6a7-df9c091e268b}\" =\"f0b43422-070e-466e-85c9-6543f209f075\",\"jid1-MnnxcxisBPnSXQ@jetpack\" =\"4c448202-c843-4cae-b5c3-d11f2da58fa3\",\"soundfixer@unrelenting.technology\" =\"59b35eb8-1c85-4919-a905-80d120993ddc\",\"floccus@handmadeideas.org\" =\"8ad2956c-8091-41af-a689-7d2108f5958d\",\"{79b9dbcf-cc5a-4cda-89ef-c4ab097eb074}\" =\"c2a223a7-32e0-4726-9f20-17236702b1f5\",\"linkgopher@oooninja.com\" =\"a257858c-0dce-415b-b123-6222876cf843\"}";
};
};
-}
\ No newline at end of file
+}
diff --git a/modules/home/programs/mako/options.nix b/modules/home/programs/mako/options.nix
index 9911c57..a920ab2 100644
--- a/modules/home/programs/mako/options.nix
+++ b/modules/home/programs/mako/options.nix
@@ -9,4 +9,4 @@ with lib;
default = "DejaVu Sans";
};
};
-}
\ No newline at end of file
+}
diff --git a/modules/home/programs/nwg-dock/default.nix b/modules/home/programs/nwg-dock/default.nix
index 6c8b878..2e67342 100644
--- a/modules/home/programs/nwg-dock/default.nix
+++ b/modules/home/programs/nwg-dock/default.nix
@@ -1,4 +1,9 @@
-{ config, lib, pkgs, ... }:
+{
+ config,
+ lib,
+ pkgs,
+ ...
+}:
with lib;
let
cfg = config.mjallen.programs.nwg-dock;
@@ -9,7 +14,7 @@ in
config = mkIf cfg.enable {
home.packages = with pkgs; [ nwg-dock-hyprland ];
-
+
home.file = {
".config/nwg-dock-hyprland/drawer.css".text = ''
window {
diff --git a/modules/home/programs/nwg-dock/options.nix b/modules/home/programs/nwg-dock/options.nix
index 9cb6299..a37808f 100644
--- a/modules/home/programs/nwg-dock/options.nix
+++ b/modules/home/programs/nwg-dock/options.nix
@@ -4,4 +4,4 @@ with lib;
options.mjallen.programs.nwg-dock = {
enable = mkEnableOption "enable nwg-dock";
};
-}
\ No newline at end of file
+}
diff --git a/modules/home/programs/nwg-drawer/default.nix b/modules/home/programs/nwg-drawer/default.nix
index 4ce2b84..d57252b 100644
--- a/modules/home/programs/nwg-drawer/default.nix
+++ b/modules/home/programs/nwg-drawer/default.nix
@@ -1,4 +1,9 @@
-{ config, lib, pkgs, ... }:
+{
+ config,
+ lib,
+ pkgs,
+ ...
+}:
with lib;
let
cfg = config.mjallen.programs.nwg-drawer;
@@ -9,44 +14,44 @@ in
config = mkIf cfg.enable {
home.packages = with pkgs; [ nwg-drawer ];
-
+
home.file = {
- ".config/nwg-drawer/drawer.css".text = ''
- window {
- background-color: ${nord.polarNight.nord0}bf;
- color: ${nord.snowStorm.nord5}00
- }
+ ".config/nwg-drawer/drawer.css".text = ''
+ window {
+ background-color: ${nord.polarNight.nord0}bf;
+ color: ${nord.snowStorm.nord5}00
+ }
- /* search entry */
- entry {
- background-color: ${nord.polarNight.nord1}0f
- }
+ /* search entry */
+ entry {
+ background-color: ${nord.polarNight.nord1}0f
+ }
- button, image {
- background: none;
- border: none
- }
+ button, image {
+ background: none;
+ border: none
+ }
- button:hover {
- background-color: ${nord.frost.nord10}1a
- }
+ button:hover {
+ background-color: ${nord.frost.nord10}1a
+ }
- /* in case you wanted to give category buttons a different look */
- #category-button {
- margin: 0 10px 0 10px
- }
+ /* in case you wanted to give category buttons a different look */
+ #category-button {
+ margin: 0 10px 0 10px
+ }
- #pinned-box {
- padding-bottom: 5px;
- border-bottom: 1px dotted ${nord.polarNight.nord3}
- }
+ #pinned-box {
+ padding-bottom: 5px;
+ border-bottom: 1px dotted ${nord.polarNight.nord3}
+ }
- #files-box {
- padding: 5px;
- border: 1px dotted ${nord.polarNight.nord3};
- border-radius: 15px
- }
- '';
+ #files-box {
+ padding: 5px;
+ border: 1px dotted ${nord.polarNight.nord3};
+ border-radius: 15px
+ }
+ '';
};
};
-}
\ No newline at end of file
+}
diff --git a/modules/home/programs/nwg-drawer/options.nix b/modules/home/programs/nwg-drawer/options.nix
index 6064d53..a837354 100644
--- a/modules/home/programs/nwg-drawer/options.nix
+++ b/modules/home/programs/nwg-drawer/options.nix
@@ -4,4 +4,4 @@ with lib;
options.mjallen.programs.nwg-drawer = {
enable = mkEnableOption "enable nwg-drawer";
};
-}
\ No newline at end of file
+}
diff --git a/modules/home/programs/nwg-panel/default.nix b/modules/home/programs/nwg-panel/default.nix
index d1d17b7..96b4489 100644
--- a/modules/home/programs/nwg-panel/default.nix
+++ b/modules/home/programs/nwg-panel/default.nix
@@ -1,4 +1,4 @@
-{ config, lib, ... }:
+{ config, lib, ... }:
with lib;
let
cfg = config.mjallen.programs.nwg-panel;
@@ -12,15 +12,15 @@ in
'';
".config/nwg-panel/preferred-apps.json".text = ''
- {
- "\\.pdf$": "${cfg.defaultApps.browser.pname}",
- "\\.svg$": "inkscape",
- "\\.(jpg|png|tiff|gif)$": "${cfg.defaultApps.imageViewer.pname}",
- "\\.(mp3|ogg|flac|wav|wma)$": "audacious",
- "\\.(avi|mp4|mkv|mov|wav)$": "${cfg.defaultApps.video.pname}",
- "\\.(doc|docx|xls|xlsx)$": "${cfg.defaultApps.office.pname}"
- }
+ {
+ "\\.pdf$": "${cfg.defaultApps.browser.pname}",
+ "\\.svg$": "inkscape",
+ "\\.(jpg|png|tiff|gif)$": "${cfg.defaultApps.imageViewer.pname}",
+ "\\.(mp3|ogg|flac|wav|wma)$": "audacious",
+ "\\.(avi|mp4|mkv|mov|wav)$": "${cfg.defaultApps.video.pname}",
+ "\\.(doc|docx|xls|xlsx)$": "${cfg.defaultApps.office.pname}"
+ }
'';
};
};
-}
\ No newline at end of file
+}
diff --git a/modules/home/programs/nwg-panel/options.nix b/modules/home/programs/nwg-panel/options.nix
index c3a529b..7fdf6e4 100644
--- a/modules/home/programs/nwg-panel/options.nix
+++ b/modules/home/programs/nwg-panel/options.nix
@@ -7,17 +7,41 @@ with lib;
defaultApps = mkOption {
type = types.submodule {
options = {
- browser = mkOption { type = types.package; default = pkgs.firefox; };
- editor = mkOption { type = types.package; default = pkgs.micro; };
- fileExplorer = mkOption { type = types.package; default = pkgs.nemo; };
- visual = mkOption { type = types.package; default = pkgs.vscodium; };
- terminal = mkOption { type = types.package; default = pkgs.kitty; };
- office = mkOption { type = types.package; default = pkgs.onlyoffice-bin_latest; };
- video = mkOption { type = types.package; default = pkgs.vlc; };
- imageViewer = mkOption { type = types.package; default = pkgs.gnome-photos; };
+ browser = mkOption {
+ type = types.package;
+ default = pkgs.firefox;
+ };
+ editor = mkOption {
+ type = types.package;
+ default = pkgs.micro;
+ };
+ fileExplorer = mkOption {
+ type = types.package;
+ default = pkgs.nemo;
+ };
+ visual = mkOption {
+ type = types.package;
+ default = pkgs.vscodium;
+ };
+ terminal = mkOption {
+ type = types.package;
+ default = pkgs.kitty;
+ };
+ office = mkOption {
+ type = types.package;
+ default = pkgs.onlyoffice-bin_latest;
+ };
+ video = mkOption {
+ type = types.package;
+ default = pkgs.vlc;
+ };
+ imageViewer = mkOption {
+ type = types.package;
+ default = pkgs.gnome-photos;
+ };
};
};
description = "Default applications used across the system.";
};
};
-}
\ No newline at end of file
+}
diff --git a/modules/home/programs/onlyoffice/default.nix b/modules/home/programs/onlyoffice/default.nix
index 0151e12..23452fc 100644
--- a/modules/home/programs/onlyoffice/default.nix
+++ b/modules/home/programs/onlyoffice/default.nix
@@ -11,4 +11,4 @@ in
maximized = true;
};
};
-}
\ No newline at end of file
+}
diff --git a/modules/home/programs/waybar/default.nix b/modules/home/programs/waybar/default.nix
index 3c2a046..2df0513 100755
--- a/modules/home/programs/waybar/default.nix
+++ b/modules/home/programs/waybar/default.nix
@@ -33,7 +33,7 @@ let
'';
in
{
- imports = [
+ imports = [
./options.nix
./scripts/hass.nix
./scripts/weather.nix
@@ -91,7 +91,7 @@ in
critical-threshold = 110;
format-critical = "{temperatureC}°C ";
format = "{temperatureC}°C {icon}";
- format-icons = [
+ format-icons = [
"" # fa-temperature-empty
"" # fa-temperature-quarter
"" # fa-temperature-half
@@ -106,7 +106,7 @@ in
critical-threshold = 110;
format-critical = "{temperatureC}°C ";
format = "{temperatureC}°C {icon}";
- format-icons = [
+ format-icons = [
"" # fa-temperature-empty
"" # fa-temperature-quarter
"" # fa-temperature-half
@@ -193,7 +193,7 @@ in
connected = "";
};
};
-
+
network = {
interface = cfg.networkInterface;
on-click = "nm-connection-editor";
@@ -234,10 +234,10 @@ in
calendar = {
mode = "month";
format = {
- months = "{}";
- days = "{}";
- weekdays = "{}";
- today = "{}";
+ months = "{}";
+ days = "{}";
+ weekdays = "{}";
+ today = "{}";
};
};
};
@@ -247,8 +247,8 @@ in
interval = 60;
# statuses: 'Charging', 'Discharging'
states = {
- warning = 30;
- critical = 15;
+ warning = 30;
+ critical = 15;
};
format = "{capacity}% {icon}";
format-icons = {
@@ -296,239 +296,241 @@ in
# * { font-size: 13px; }
# window.eDP-1 * { font-size: 10px; }
- style = ''
- .blink_me {
- animation: blinker 1s linear infinite;
- }
-
- @keyframes blinker {
- 50% {
- color: ${nord.aurora.nord11};
+ style =
+ ''
+ .blink_me {
+ animation: blinker 1s linear infinite;
}
- }
-
- * {
- font-family:
- Jetbrains Mono Nerd Font,
- monospace;
- font-size: 14px;
- min-height: 0;
- }
- #waybar {
- background: transparent;
- color: ${nord.snowStorm.nord6};
- margin: 5px 5px;
- }
+ @keyframes blinker {
+ 50% {
+ color: ${nord.aurora.nord11};
+ }
+ }
- #workspaces {
- background-color: ${nord.polarNight.nord0};
- ${defaultBorderRadius}
- ${defaultOpacity}
- ${defaultCenterOptions}
- margin-left: 0.6rem;
- }
+ * {
+ font-family:
+ Jetbrains Mono Nerd Font,
+ monospace;
+ font-size: 14px;
+ min-height: 0;
+ }
- #workspaces button {
- color: ${nord.frost.nord10};
- ${defaultBorderRadius}
- padding: 0.4rem;
- }
+ #waybar {
+ background: transparent;
+ color: ${nord.snowStorm.nord6};
+ margin: 5px 5px;
+ }
- #workspaces button.active {
- color: ${nord.frost.nord8};
- ${defaultBorderRadius}
- }
+ #workspaces {
+ background-color: ${nord.polarNight.nord0};
+ ${defaultBorderRadius}
+ ${defaultOpacity}
+ ${defaultCenterOptions}
+ margin-left: 0.6rem;
+ }
- #workspaces button:hover {
- color: ${nord.frost.nord7};
- ${defaultBorderRadius}
- }
+ #workspaces button {
+ color: ${nord.frost.nord10};
+ ${defaultBorderRadius}
+ padding: 0.4rem;
+ }
- #workspaces button.focused {
- color: ${nord.snowStorm.nord6};
- background: ${nord.aurora.nord13};
- ${defaultBorderRadius}
- }
+ #workspaces button.active {
+ color: ${nord.frost.nord8};
+ ${defaultBorderRadius}
+ }
- #workspaces button.urgent {
- color: ${nord.polarNight.nord0};
- background: ${nord.snowStorm.nord6};
- ${defaultBorderRadius}
- }
+ #workspaces button:hover {
+ color: ${nord.frost.nord7};
+ ${defaultBorderRadius}
+ }
- #tooltip {
- background: ${nord.polarNight.nord0};
- border-color: ${nord.polarNight.nord0};
- ${defaultBorderRadius}
- border-width: 1rem;
- border-style: solid;
- }
+ #workspaces button.focused {
+ color: ${nord.snowStorm.nord6};
+ background: ${nord.aurora.nord13};
+ ${defaultBorderRadius}
+ }
- #window {
- color: ${nord.aurora.nord15};
- background-color: ${nord.polarNight.nord0};
- ${defaultOpacity}
- ${defaultBorderRadius}
- ${defaultCenterOptions}
- margin-left: 4rem;
- margin-right: 400rem;
- }
+ #workspaces button.urgent {
+ color: ${nord.polarNight.nord0};
+ background: ${nord.snowStorm.nord6};
+ ${defaultBorderRadius}
+ }
- /* make window module transparent when no windows present */
- #window.empty {
- background-color: transparent;
- }
+ #tooltip {
+ background: ${nord.polarNight.nord0};
+ border-color: ${nord.polarNight.nord0};
+ ${defaultBorderRadius}
+ border-width: 1rem;
+ border-style: solid;
+ }
- #custom-weather {
- color: ${nord.frost.nord10};
- background-color: ${nord.polarNight.nord0};
- ${defaultOpacity}
- ${borderRight}
- }
+ #window {
+ color: ${nord.aurora.nord15};
+ background-color: ${nord.polarNight.nord0};
+ ${defaultOpacity}
+ ${defaultBorderRadius}
+ ${defaultCenterOptions}
+ margin-left: 4rem;
+ margin-right: 400rem;
+ }
- #battery {
- color: ${nord.aurora.nord15};
- background-color: ${nord.polarNight.nord0};
- ${defaultOpacity}
- ${defaultCenterOptions}
- border-radius: 0;
- min-width: 3rem;
- }
+ /* make window module transparent when no windows present */
+ #window.empty {
+ background-color: transparent;
+ }
- #clock {
- color: ${nord.frost.nord9};
- background-color: ${nord.polarNight.nord0};
- ${defaultOpacity}
- ${borderLeft}
- }
+ #custom-weather {
+ color: ${nord.frost.nord10};
+ background-color: ${nord.polarNight.nord0};
+ ${defaultOpacity}
+ ${borderRight}
+ }
- /* ------------- */
+ #battery {
+ color: ${nord.aurora.nord15};
+ background-color: ${nord.polarNight.nord0};
+ ${defaultOpacity}
+ ${defaultCenterOptions}
+ border-radius: 0;
+ min-width: 3rem;
+ }
- #idle_inhibitor {
- color: ${nord.frost.nord10};
- background-color: ${nord.polarNight.nord0};
- ${defaultOpacity}
- ${borderRight}
- padding-right: 1rem;
- }
+ #clock {
+ color: ${nord.frost.nord9};
+ background-color: ${nord.polarNight.nord0};
+ ${defaultOpacity}
+ ${borderLeft}
+ }
- #idle_inhibitor:hover {
- background: ${nord.polarNight.nord3};
- }
+ /* ------------- */
- #network {
- color: ${nord.aurora.nord15};
- background-color: ${nord.polarNight.nord0};
- ${defaultOpacity}
- ${defaultCenterOptions}
- border-radius: 0;
- padding-right: 15px;
- }
+ #idle_inhibitor {
+ color: ${nord.frost.nord10};
+ background-color: ${nord.polarNight.nord0};
+ ${defaultOpacity}
+ ${borderRight}
+ padding-right: 1rem;
+ }
- #network:hover {
- background: ${nord.polarNight.nord3};
- }
+ #idle_inhibitor:hover {
+ background: ${nord.polarNight.nord3};
+ }
- #bluetooth {
- color: ${nord.frost.nord9};
- background-color: ${nord.polarNight.nord0};
- ${defaultOpacity}
- ${defaultCenterOptions}
- border-radius: 0;
- }
+ #network {
+ color: ${nord.aurora.nord15};
+ background-color: ${nord.polarNight.nord0};
+ ${defaultOpacity}
+ ${defaultCenterOptions}
+ border-radius: 0;
+ padding-right: 15px;
+ }
- #bluetooth:hover {
- background: ${nord.polarNight.nord3};
- }
+ #network:hover {
+ background: ${nord.polarNight.nord3};
+ }
- #wireplumber.source {
- color: ${nord.frost.nord8};
- background-color: ${nord.polarNight.nord0};
- ${defaultOpacity}
- ${defaultCenterOptions}
- border-radius: 0;
- }
+ #bluetooth {
+ color: ${nord.frost.nord9};
+ background-color: ${nord.polarNight.nord0};
+ ${defaultOpacity}
+ ${defaultCenterOptions}
+ border-radius: 0;
+ }
- #wireplumber.source.muted {
- animation-name: blinker;
- animation-duration: 2s;
- animation-timing-function: linear;
- animation-iteration-count: infinite;
- padding-right: 1rem;
- }
+ #bluetooth:hover {
+ background: ${nord.polarNight.nord3};
+ }
- #wireplumber.source:hover {
- background: ${nord.polarNight.nord3};
- }
+ #wireplumber.source {
+ color: ${nord.frost.nord8};
+ background-color: ${nord.polarNight.nord0};
+ ${defaultOpacity}
+ ${defaultCenterOptions}
+ border-radius: 0;
+ }
- #wireplumber.sink {
- color: ${nord.frost.nord7};
- background-color: ${nord.polarNight.nord0};
- ${defaultOpacity}
- ${defaultCenterOptions}
- border-radius: 0;
- }
+ #wireplumber.source.muted {
+ animation-name: blinker;
+ animation-duration: 2s;
+ animation-timing-function: linear;
+ animation-iteration-count: infinite;
+ padding-right: 1rem;
+ }
- #wireplumber.sink.muted {
- animation-name: blinker;
- animation-duration: 5s;
- animation-timing-function: linear;
- animation-iteration-count: infinite;
- }
+ #wireplumber.source:hover {
+ background: ${nord.polarNight.nord3};
+ }
- #wireplumber.sink:hover {
- background: ${nord.polarNight.nord3};
- }
+ #wireplumber.sink {
+ color: ${nord.frost.nord7};
+ background-color: ${nord.polarNight.nord0};
+ ${defaultOpacity}
+ ${defaultCenterOptions}
+ border-radius: 0;
+ }
- #keyboard-state.numlock {
- color: ${nord.frost.nord8};
- background-color: ${nord.polarNight.nord0};
- ${defaultOpacity}
- ${defaultCenterOptions}
- border-radius: 0;
- }
+ #wireplumber.sink.muted {
+ animation-name: blinker;
+ animation-duration: 5s;
+ animation-timing-function: linear;
+ animation-iteration-count: infinite;
+ }
- #keyboard-state.capslock {
- color: ${nord.frost.nord9};
- background-color: ${nord.polarNight.nord0};
- ${defaultOpacity}
- ${defaultCenterOptions}
- border-radius: 0;
- }
+ #wireplumber.sink:hover {
+ background: ${nord.polarNight.nord3};
+ }
- #temperature.gpu {
- color: ${nord.frost.nord10};
- background-color: ${nord.polarNight.nord0};
- ${defaultOpacity}
- ${defaultCenterOptions}
- border-radius: 0;
- }
+ #keyboard-state.numlock {
+ color: ${nord.frost.nord8};
+ background-color: ${nord.polarNight.nord0};
+ ${defaultOpacity}
+ ${defaultCenterOptions}
+ border-radius: 0;
+ }
- #temperature.gpu:hover {
- background: ${nord.polarNight.nord3};
- }
+ #keyboard-state.capslock {
+ color: ${nord.frost.nord9};
+ background-color: ${nord.polarNight.nord0};
+ ${defaultOpacity}
+ ${defaultCenterOptions}
+ border-radius: 0;
+ }
- #temperature {
- color: ${nord.frost.nord9};
- background-color: ${nord.polarNight.nord0};
- ${defaultOpacity}
- ${defaultCenterOptions}
- border-radius: 0
- }
+ #temperature.gpu {
+ color: ${nord.frost.nord10};
+ background-color: ${nord.polarNight.nord0};
+ ${defaultOpacity}
+ ${defaultCenterOptions}
+ border-radius: 0;
+ }
- /* ------------- */
+ #temperature.gpu:hover {
+ background: ${nord.polarNight.nord3};
+ }
- #tray {
- background-color: ${nord.polarNight.nord0};
- ${defaultOpacity}
- ${defaultCenterOptions}
- ${defaultBorderRadius}
- margin-right: 0.6rem;
- }
+ #temperature {
+ color: ${nord.frost.nord9};
+ background-color: ${nord.polarNight.nord0};
+ ${defaultOpacity}
+ ${defaultCenterOptions}
+ border-radius: 0
+ }
- /* ------------- */
- '' + cfg.extraModulesStyle or '''';
+ /* ------------- */
+
+ #tray {
+ background-color: ${nord.polarNight.nord0};
+ ${defaultOpacity}
+ ${defaultCenterOptions}
+ ${defaultBorderRadius}
+ margin-right: 0.6rem;
+ }
+
+ /* ------------- */
+ ''
+ + cfg.extraModulesStyle or '''';
};
};
}
diff --git a/modules/home/programs/waybar/options.nix b/modules/home/programs/waybar/options.nix
index 453d0b5..8571bc5 100644
--- a/modules/home/programs/waybar/options.nix
+++ b/modules/home/programs/waybar/options.nix
@@ -42,7 +42,7 @@ in
modules-right = mkOption {
type = with types; listOf str;
- default = [];
+ default = [ ];
};
networkInterface = mkOption {
@@ -92,4 +92,4 @@ in
# default = { };
# };
};
-}
\ No newline at end of file
+}
diff --git a/modules/home/programs/waybar/scripts/hass.nix b/modules/home/programs/waybar/scripts/hass.nix
index 1dbe288..1bdff04 100755
--- a/modules/home/programs/waybar/scripts/hass.nix
+++ b/modules/home/programs/waybar/scripts/hass.nix
@@ -1,4 +1,10 @@
-{ config, lib, namespace, pkgs, ... }:
+{
+ config,
+ lib,
+ namespace,
+ pkgs,
+ ...
+}:
let
cfg = config.mjallen.programs.waybar;
diff --git a/modules/home/programs/waybar/scripts/weather.nix b/modules/home/programs/waybar/scripts/weather.nix
index 36740f2..10ee8bb 100644
--- a/modules/home/programs/waybar/scripts/weather.nix
+++ b/modules/home/programs/waybar/scripts/weather.nix
@@ -1,4 +1,9 @@
-{ config, lib, pkgs, ... }:
+{
+ config,
+ lib,
+ pkgs,
+ ...
+}:
let
cfg = config.mjallen.programs.waybar;
diff --git a/modules/home/programs/wlogout/default.nix b/modules/home/programs/wlogout/default.nix
index ad92a90..5def23d 100644
--- a/modules/home/programs/wlogout/default.nix
+++ b/modules/home/programs/wlogout/default.nix
@@ -5,7 +5,7 @@ let
nord = import ../../desktop/theme/nord.nix;
in
{
- imports = [ ./options.nix ];
+ imports = [ ./options.nix ];
config = mkIf cfg.enable {
programs.wlogout = {
enable = false;
@@ -101,4 +101,4 @@ in
'';
};
};
-}
\ No newline at end of file
+}
diff --git a/modules/home/programs/wlogout/options.nix b/modules/home/programs/wlogout/options.nix
index fc51271..a019f74 100644
--- a/modules/home/programs/wlogout/options.nix
+++ b/modules/home/programs/wlogout/options.nix
@@ -9,4 +9,4 @@ with lib;
default = "Deja Vu Sans";
};
};
-}
\ No newline at end of file
+}
diff --git a/modules/home/programs/wofi/options.nix b/modules/home/programs/wofi/options.nix
index 0eb6a64..8389599 100644
--- a/modules/home/programs/wofi/options.nix
+++ b/modules/home/programs/wofi/options.nix
@@ -9,4 +9,4 @@ with lib;
default = "Deja Vu Sans";
};
};
-}
\ No newline at end of file
+}
diff --git a/modules/home/programs/zsh/default.nix b/modules/home/programs/zsh/default.nix
index 6298f16..7ac5ae8 100644
--- a/modules/home/programs/zsh/default.nix
+++ b/modules/home/programs/zsh/default.nix
@@ -26,4 +26,4 @@ in
# fi
# '';
};
-}
\ No newline at end of file
+}
diff --git a/modules/home/sops/default.nix b/modules/home/sops/default.nix
index 4473c09..34f1166 100644
--- a/modules/home/sops/default.nix
+++ b/modules/home/sops/default.nix
@@ -1,4 +1,9 @@
-{ config, lib, namespace, ... }:
+{
+ config,
+ lib,
+ namespace,
+ ...
+}:
let
cfg = config.mjallen.sops;
@@ -25,4 +30,4 @@ in
};
};
};
-}
\ No newline at end of file
+}
diff --git a/modules/home/sops/options.nix b/modules/home/sops/options.nix
index 7fda5ea..bd7485a 100644
--- a/modules/home/sops/options.nix
+++ b/modules/home/sops/options.nix
@@ -9,4 +9,4 @@ with lib;
default = null;
};
};
-}
\ No newline at end of file
+}
diff --git a/modules/home/user/default.nix b/modules/home/user/default.nix
index 8512ff9..d48af7b 100644
--- a/modules/home/user/default.nix
+++ b/modules/home/user/default.nix
@@ -34,7 +34,7 @@ in
default = "Austin Horstman";
description = "The full name of the user.";
};
- home = mkOption {
+ home = mkOption {
type = (types.nullOr types.str);
default = home-directory;
description = "The user's home directory.";
@@ -154,4 +154,4 @@ in
};
}
]);
-}
\ No newline at end of file
+}
diff --git a/modules/nixos/actual/default.nix b/modules/nixos/actual/default.nix
index 23ad96b..60c2c4b 100644
--- a/modules/nixos/actual/default.nix
+++ b/modules/nixos/actual/default.nix
@@ -1,4 +1,9 @@
-{ config, pkgs, lib, ... }:
+{
+ config,
+ pkgs,
+ lib,
+ ...
+}:
with lib;
let
cfg = config.nas-apps.actual;
@@ -24,7 +29,8 @@ in
};
};
- config = { lib, ... }:
+ config =
+ { lib, ... }:
{
services.actual = {
enable = true;
@@ -63,13 +69,13 @@ in
'';
systemd.services = {
- actual = {
+ actual = {
environment.ACTUAL_CONFIG_PATH = lib.mkForce "${dataDir}/config.json";
serviceConfig = {
ExecStart = lib.mkForce "${pkgs.actual-server}/bin/actual-server --config ${dataDir}/config.json";
WorkingDirectory = lib.mkForce dataDir;
StateDirectory = lib.mkForce dataDir;
- StateDirectoryMode = lib.mkForce 0700;
+ StateDirectoryMode = lib.mkForce 700;
DynamicUser = lib.mkForce false;
ProtectSystem = lib.mkForce null;
};
diff --git a/modules/nixos/amd/default.nix b/modules/nixos/amd/default.nix
index f7bc3f2..85b8a44 100755
--- a/modules/nixos/amd/default.nix
+++ b/modules/nixos/amd/default.nix
@@ -6,7 +6,7 @@
}:
let
cfg = config.share.hardware.amd;
- pkgsVersion = pkgs;#.unstable;
+ pkgsVersion = pkgs; # .unstable;
in
{
imports = [ ./options.nix ];
diff --git a/modules/nixos/appimage/default.nix b/modules/nixos/appimage/default.nix
index cde074e..b9df5f6 100644
--- a/modules/nixos/appimage/default.nix
+++ b/modules/nixos/appimage/default.nix
@@ -11,4 +11,4 @@
magicOrExtension = "\\x7fELF....AI\\x02";
};
};
-}
\ No newline at end of file
+}
diff --git a/modules/nixos/arrs/default.nix b/modules/nixos/arrs/default.nix
index d3340ba..28fcee7 100755
--- a/modules/nixos/arrs/default.nix
+++ b/modules/nixos/arrs/default.nix
@@ -40,9 +40,11 @@ in
{
nixpkgs.config = {
allowUnfree = lib.mkForce true;
- allowUnfreePredicate = pkg: builtins.elem (lib.getName pkg) [
- "unrar"
- ];
+ allowUnfreePredicate =
+ pkg:
+ builtins.elem (lib.getName pkg) [
+ "unrar"
+ ];
};
# Enable radarr service
@@ -207,7 +209,7 @@ in
};
networking = {
- nat = {
+ nat = {
forwardPorts = [
{
destination = "${cfg.localAddress}:${toString cfg.radarr.port}";
@@ -232,8 +234,22 @@ in
];
};
firewall = {
- allowedTCPPorts = [ cfg.radarr.port cfg.sonarr.port cfg.sabnzbd.port 8080 cfg.deluge.port cfg.jackett.port ];
- allowedUDPPorts = [ cfg.radarr.port cfg.sonarr.port cfg.sabnzbd.port 8080 cfg.deluge.port cfg.jackett.port ];
+ allowedTCPPorts = [
+ cfg.radarr.port
+ cfg.sonarr.port
+ cfg.sabnzbd.port
+ 8080
+ cfg.deluge.port
+ cfg.jackett.port
+ ];
+ allowedUDPPorts = [
+ cfg.radarr.port
+ cfg.sonarr.port
+ cfg.sabnzbd.port
+ 8080
+ cfg.deluge.port
+ cfg.jackett.port
+ ];
};
};
};
diff --git a/modules/nixos/boot/default.nix b/modules/nixos/boot/default.nix
index 49d9ea2..688ebf4 100644
--- a/modules/nixos/boot/default.nix
+++ b/modules/nixos/boot/default.nix
@@ -1,4 +1,9 @@
-{ pkgs, system, lib, ... }:
+{
+ pkgs,
+ system,
+ lib,
+ ...
+}:
let
isArm = ("aarch64-linux" == system);
in
@@ -14,7 +19,7 @@ in
mask = ''\xff\xff\xff\xff\xff\xfe\xfe\x00\xff\xff\xff\xff\xff\xff\xff\xff\xfe\xff\xff\xff'';
openBinary = true;
interpreter = "${pkgs.box64}/bin/box64";
- preserveArgvZero = true;
+ preserveArgvZero = true;
matchCredentials = true;
fixBinary = false;
};
@@ -22,4 +27,4 @@ in
};
zramSwap.enable = true;
-}
\ No newline at end of file
+}
diff --git a/modules/nixos/boot/lanzaboote/default.nix b/modules/nixos/boot/lanzaboote/default.nix
index 834677b..1e2c7cd 100644
--- a/modules/nixos/boot/lanzaboote/default.nix
+++ b/modules/nixos/boot/lanzaboote/default.nix
@@ -1,4 +1,9 @@
-{ config, lib, namespace, ... }:
+{
+ config,
+ lib,
+ namespace,
+ ...
+}:
with lib;
let
cfg = config.${namespace}.bootloader.lanzaboote;
@@ -15,4 +20,4 @@ in
configurationLimit = cfg.configLimit;
};
};
-}
\ No newline at end of file
+}
diff --git a/modules/nixos/boot/lanzaboote/options.nix b/modules/nixos/boot/lanzaboote/options.nix
index dc556f6..ddde028 100644
--- a/modules/nixos/boot/lanzaboote/options.nix
+++ b/modules/nixos/boot/lanzaboote/options.nix
@@ -9,4 +9,4 @@ with lib;
default = 10;
};
};
-}
\ No newline at end of file
+}
diff --git a/modules/nixos/boot/plymouth/default.nix b/modules/nixos/boot/plymouth/default.nix
index 702105c..d7f1e9f 100644
--- a/modules/nixos/boot/plymouth/default.nix
+++ b/modules/nixos/boot/plymouth/default.nix
@@ -3,4 +3,4 @@
boot.plymouth = {
enable = true;
};
-}
\ No newline at end of file
+}
diff --git a/modules/nixos/crowdsec/default.nix b/modules/nixos/crowdsec/default.nix
index 2890097..cacc4a4 100755
--- a/modules/nixos/crowdsec/default.nix
+++ b/modules/nixos/crowdsec/default.nix
@@ -1,4 +1,9 @@
-{ config, lib, pkgs, ... }:
+{
+ config,
+ lib,
+ pkgs,
+ ...
+}:
with lib;
let
cfg = config.nas-apps.crowdsec;
@@ -7,23 +12,25 @@ in
imports = [ ./options.nix ];
config = lib.mkIf cfg.enable {
services = {
- crowdsec = let
- yaml = (pkgs.formats.yaml {}).generate;
- acquisitions_file = yaml "acquisitions.yaml" {
- source = "journalctl";
- journalctl_filter = ["_SYSTEMD_UNIT=sshd.service"];
- labels.type = "syslog";
- };
- in {
- enable = true;
- enrollKeyFile = "${cfg.dataDir}/enroll.key";
- settings = {
- crowdsec_service.acquisition_path = acquisitions_file;
- api.server = {
- listen_uri = "0.0.0.0:${toString cfg.port}";
+ crowdsec =
+ let
+ yaml = (pkgs.formats.yaml { }).generate;
+ acquisitions_file = yaml "acquisitions.yaml" {
+ source = "journalctl";
+ journalctl_filter = [ "_SYSTEMD_UNIT=sshd.service" ];
+ labels.type = "syslog";
+ };
+ in
+ {
+ enable = true;
+ enrollKeyFile = "${cfg.dataDir}/enroll.key";
+ settings = {
+ crowdsec_service.acquisition_path = acquisitions_file;
+ api.server = {
+ listen_uri = "0.0.0.0:${toString cfg.port}";
+ };
};
};
- };
crowdsec-firewall-bouncer = {
enable = true;
@@ -35,17 +42,19 @@ in
};
systemd.services.crowdsec.serviceConfig = {
- ExecStartPre = let
- script = pkgs.writeScriptBin "register-bouncer" ''
- #!${pkgs.runtimeShell}
- set -eu
- set -o pipefail
+ ExecStartPre =
+ let
+ script = pkgs.writeScriptBin "register-bouncer" ''
+ #!${pkgs.runtimeShell}
+ set -eu
+ set -o pipefail
- if ! cscli bouncers list | grep -q "nas-bouncer"; then
- cscli bouncers add "nas-bouncer" --key "${cfg.apiKey}"
- fi
- '';
- in ["${script}/bin/register-bouncer"];
+ if ! cscli bouncers list | grep -q "nas-bouncer"; then
+ cscli bouncers add "nas-bouncer" --key "${cfg.apiKey}"
+ fi
+ '';
+ in
+ [ "${script}/bin/register-bouncer" ];
};
networking = {
@@ -55,4 +64,4 @@ in
};
};
};
-}
\ No newline at end of file
+}
diff --git a/modules/nixos/desktop/cosmic/default.nix b/modules/nixos/desktop/cosmic/default.nix
index 7fa4a95..0901bf8 100755
--- a/modules/nixos/desktop/cosmic/default.nix
+++ b/modules/nixos/desktop/cosmic/default.nix
@@ -1,4 +1,9 @@
-{ config, lib, namespace, ... }:
+{
+ config,
+ lib,
+ namespace,
+ ...
+}:
let
cfg = config.${namespace}.desktop.cosmic;
in
diff --git a/modules/nixos/desktop/cosmic/options.nix b/modules/nixos/desktop/cosmic/options.nix
index faa07e6..1458bd8 100644
--- a/modules/nixos/desktop/cosmic/options.nix
+++ b/modules/nixos/desktop/cosmic/options.nix
@@ -4,4 +4,4 @@ with lib;
options.${namespace}.desktop.cosmic = {
enable = mkEnableOption "enable cosmic settings";
};
-}
\ No newline at end of file
+}
diff --git a/modules/nixos/desktop/gnome/default.nix b/modules/nixos/desktop/gnome/default.nix
index f3cb352..4479dcf 100644
--- a/modules/nixos/desktop/gnome/default.nix
+++ b/modules/nixos/desktop/gnome/default.nix
@@ -1,4 +1,10 @@
-{ config, lib, pkgs, namespace, ... }:
+{
+ config,
+ lib,
+ pkgs,
+ namespace,
+ ...
+}:
let
cfg = config.${namespace}.desktop.gnome;
in
@@ -17,7 +23,7 @@ in
gnome.gnome-remote-desktop.enable = true;
};
-
+
xdg.portal.extraPortals = [ pkgs.xdg-desktop-portal-gtk ];
programs = {
@@ -27,4 +33,4 @@ in
};
};
};
-}
\ No newline at end of file
+}
diff --git a/modules/nixos/desktop/hyprland/default.nix b/modules/nixos/desktop/hyprland/default.nix
index b6f124b..ccb2bbb 100755
--- a/modules/nixos/desktop/hyprland/default.nix
+++ b/modules/nixos/desktop/hyprland/default.nix
@@ -1,4 +1,10 @@
-{ config, pkgs, lib, namespace, ... }:
+{
+ config,
+ pkgs,
+ lib,
+ namespace,
+ ...
+}:
let
cfg = config.${namespace}.desktop.hyprland;
@@ -26,7 +32,10 @@ in
imports = [ ../../../home/desktop/hyprland/options.nix ];
config = lib.mkIf cfg.enable {
- environment.systemPackages = [ bing-wallpaper pkgs.jq ];
+ environment.systemPackages = [
+ bing-wallpaper
+ pkgs.jq
+ ];
services = {
displayManager = {
@@ -66,7 +75,7 @@ in
xwayland.enable = true;
portalPackage = lib.mkDefault pkgs.xdg-desktop-portal-hyprland;
};
-
+
nm-applet.enable = true;
};
@@ -121,18 +130,18 @@ in
reload-bing-wallpaper = {
description = "Timer for reload-bing-wallpaper";
wantedBy = [ "timers.target" ];
-
+
# Timer configuration
timerConfig = {
- OnCalendar = "daily"; # Check every day
- Persistent = true; # Run immediately if last run was missed
+ OnCalendar = "daily"; # Check every day
+ Persistent = true; # Run immediately if last run was missed
Unit = "reload-bing-wallpaper.service";
};
};
};
};
extraConfig = ''
- DefaultTimeoutStopSec=10s
+ DefaultTimeoutStopSec=10s
'';
};
diff --git a/modules/nixos/desktop/hyprland/settings.nix b/modules/nixos/desktop/hyprland/settings.nix
index ec3cb54..c29ed5c 100644
--- a/modules/nixos/desktop/hyprland/settings.nix
+++ b/modules/nixos/desktop/hyprland/settings.nix
@@ -1,10 +1,10 @@
{ pkgs, ... }:
let
nord = import ./theme.nix;
- themeSize = "compact"; # [ "standard" "compact" ]
- themeAccent = "all"; # [ "default" "purple" "pink" "red" "orange" "yellow" "green" "teal" "grey" "all" ]
- themeVariant = "nord"; # [ "nord" "dracula" "gruvbox" "everforest" "catppuccin" "all" "black" "rimless" "normal" "float" ]
- themeColor = "dark"; # [ "standard" "light" "dark" ]
+ themeSize = "compact"; # [ "standard" "compact" ]
+ themeAccent = "all"; # [ "default" "purple" "pink" "red" "orange" "yellow" "green" "teal" "grey" "all" ]
+ themeVariant = "nord"; # [ "nord" "dracula" "gruvbox" "everforest" "catppuccin" "all" "black" "rimless" "normal" "float" ]
+ themeColor = "dark"; # [ "standard" "light" "dark" ]
iconThemeVariant = "all"; # [ "default" "purple" "pink" "red" "orange" "yellow" "green" "teal" "grey" "all" ]
iconScheme = "nord"; # [ "default" "nord" "dracula" "gruvbox" "everforest" "catppuccin" "all" ]
@@ -105,4 +105,4 @@ in
};
theme = nord;
-}
\ No newline at end of file
+}
diff --git a/modules/nixos/disko/aarch64-linux/default.nix b/modules/nixos/disko/aarch64-linux/default.nix
index 5984491..9c66f36 100644
--- a/modules/nixos/disko/aarch64-linux/default.nix
+++ b/modules/nixos/disko/aarch64-linux/default.nix
@@ -1,4 +1,9 @@
-{ config, lib, system, ... }:
+{
+ config,
+ lib,
+ system,
+ ...
+}:
let
isArm = builtins.match "aarch64*" system != null;
rootDisk = "/dev/nvme0n1";
diff --git a/modules/nixos/disko/options.nix b/modules/nixos/disko/options.nix
index ce3cd83..4889465 100644
--- a/modules/nixos/disko/options.nix
+++ b/modules/nixos/disko/options.nix
@@ -4,4 +4,4 @@ with lib;
options.${namespace}.hardware.disko = {
enable = mkEnableOption "enable disko";
};
-}
\ No newline at end of file
+}
diff --git a/modules/nixos/disko/x86_64-linux/default.nix b/modules/nixos/disko/x86_64-linux/default.nix
index 57cdf55..decf7ef 100644
--- a/modules/nixos/disko/x86_64-linux/default.nix
+++ b/modules/nixos/disko/x86_64-linux/default.nix
@@ -1,4 +1,10 @@
-{ config, lib, system, namespace, ... }:
+{
+ config,
+ lib,
+ system,
+ namespace,
+ ...
+}:
let
cfg = config.${namespace}.hardware.disko;
isArm = builtins.match "aarch64*" system != null;
diff --git a/modules/nixos/fonts/default.nix b/modules/nixos/fonts/default.nix
index 6750b14..90ba4fa 100644
--- a/modules/nixos/fonts/default.nix
+++ b/modules/nixos/fonts/default.nix
@@ -1,11 +1,14 @@
{ lib, pkgs, ... }:
{
- fonts.packages = with pkgs; [
- font-awesome
- noto-fonts
- noto-fonts-color-emoji
- meslo-lgs-nf
- ] ++ builtins.filter lib.attrsets.isDerivation (builtins.attrValues pkgs.nerd-fonts);
+ fonts.packages =
+ with pkgs;
+ [
+ font-awesome
+ noto-fonts
+ noto-fonts-color-emoji
+ meslo-lgs-nf
+ ]
+ ++ builtins.filter lib.attrsets.isDerivation (builtins.attrValues pkgs.nerd-fonts);
fonts.fontconfig.defaultFonts = {
emoji = [
diff --git a/modules/nixos/gaming/default.nix b/modules/nixos/gaming/default.nix
index 64d1249..a552bf8 100755
--- a/modules/nixos/gaming/default.nix
+++ b/modules/nixos/gaming/default.nix
@@ -1,7 +1,12 @@
-{ lib, config, pkgs, ... }:
+{
+ lib,
+ config,
+ pkgs,
+ ...
+}:
let
cfg = config.share.gaming;
- pkgsVersion = pkgs; #.unstable;
+ pkgsVersion = pkgs; # .unstable;
in
{
imports = [ ./options.nix ];
@@ -17,7 +22,7 @@ in
remotePlay.openFirewall = true;
# Open ports in the firewall for Source Dedicated Server
dedicatedServer.openFirewall = true;
- extraCompatPackages = with pkgsVersion; [ proton-ge-bin];
+ extraCompatPackages = with pkgsVersion; [ proton-ge-bin ];
gamescopeSession = {
enable = true;
args = [
diff --git a/modules/nixos/gitea/default.nix b/modules/nixos/gitea/default.nix
index 0e97053..c173537 100644
--- a/modules/nixos/gitea/default.nix
+++ b/modules/nixos/gitea/default.nix
@@ -34,7 +34,8 @@ in
};
};
- config = { lib, ... }:
+ config =
+ { lib, ... }:
{
services.gitea = {
enable = true;
@@ -71,7 +72,10 @@ in
networking = {
firewall = {
enable = true;
- allowedTCPPorts = [ cfg.httpPort cfg.sshPort ];
+ allowedTCPPorts = [
+ cfg.httpPort
+ cfg.sshPort
+ ];
};
# Use systemd-resolved inside the container
# Workaround for bug https://github.com/NixOS/nixpkgs/issues/162686
@@ -122,8 +126,14 @@ in
];
};
firewall = {
- allowedTCPPorts = [ cfg.httpPort cfg.sshPort ];
- allowedUDPPorts = [ cfg.httpPort cfg.sshPort ];
+ allowedTCPPorts = [
+ cfg.httpPort
+ cfg.sshPort
+ ];
+ allowedUDPPorts = [
+ cfg.httpPort
+ cfg.sshPort
+ ];
};
};
};
diff --git a/modules/nixos/hardware/btrfs/default.nix b/modules/nixos/hardware/btrfs/default.nix
index f5366bb..929d565 100644
--- a/modules/nixos/hardware/btrfs/default.nix
+++ b/modules/nixos/hardware/btrfs/default.nix
@@ -11,4 +11,4 @@
"/home"
];
};
-}
\ No newline at end of file
+}
diff --git a/modules/nixos/hardware/default.nix b/modules/nixos/hardware/default.nix
index a293ebc..3149ba0 100644
--- a/modules/nixos/hardware/default.nix
+++ b/modules/nixos/hardware/default.nix
@@ -1,6 +1,6 @@
{ lib, system, ... }:
let
- isArm = "aarch64-linux" == system;
+ isArm = "aarch64-linux" == system;
in
{
hardware = {
diff --git a/modules/nixos/home/default.nix b/modules/nixos/home/default.nix
index 52579e8..a1ec724 100644
--- a/modules/nixos/home/default.nix
+++ b/modules/nixos/home/default.nix
@@ -45,21 +45,26 @@ in
useGlobalPkgs = true;
useUserPackages = true;
- # Pass inputs so external modules can access them
- extraSpecialArgs = {
- inherit inputs;
+ # Pass inputs so external modules can access them
+ extraSpecialArgs = {
+ inherit inputs;
};
-
- # Make ALL external HM modules available globally
- sharedModules = with inputs; [
- sops-nix.homeManagerModules.sops
- # Add any other external HM modules here
- ] ++ (if (!isArm) then with inputs; [ steam-rom-manager.homeManagerModules.default ] else [ ]);
- users.${config.${namespace}.user.name} = lib.mkAliasDefinitions options.${namespace}.home.extraOptions;
+ # Make ALL external HM modules available globally
+ sharedModules =
+ with inputs;
+ [
+ sops-nix.homeManagerModules.sops
+ # Add any other external HM modules here
+ ]
+ ++ (if (!isArm) then with inputs; [ steam-rom-manager.homeManagerModules.default ] else [ ]);
+
+ users.${config.${namespace}.user.name} =
+ lib.mkAliasDefinitions
+ options.${namespace}.home.extraOptions;
# users.admin = lib.mkAliasDefinitions options.${namespace}.home.extraOptions;
verbose = true;
};
};
-}
\ No newline at end of file
+}
diff --git a/modules/nixos/homeassistant/default.nix b/modules/nixos/homeassistant/default.nix
index 89c8a2f..da09ed1 100755
--- a/modules/nixos/homeassistant/default.nix
+++ b/modules/nixos/homeassistant/default.nix
@@ -1,9 +1,15 @@
-{ config, lib, pkgs, namespace, ... }:
+{
+ config,
+ lib,
+ pkgs,
+ namespace,
+ ...
+}:
let
cfg = config.${namespace}.services.home-assistant;
mosquittoPort = 1883;
zigbee2mqttPort = 8080;
-
+
# In configuration.nix or a separate file
python-steam = pkgs.python3Packages.buildPythonPackage rec {
pname = "steam";
@@ -74,7 +80,7 @@ in
"wyoming"
"zha"
];
-
+
customComponents = with pkgs.home-assistant-custom-components; [
# nixpkgs
auth-header
@@ -106,113 +112,114 @@ in
zigbee2mqtt-networkmap
];
# use postgresql instead of sqlite
- extraPackages = ps: with ps; [
- # Core functionality
- aiohttp
- aiodns
- paho-mqtt
- pillow
- pytz
- pyyaml
- sqlalchemy
-
- # Discovery & networking
- zeroconf
- netdisco
- ifaddr
- ssdp
-
- # Device protocols
- pyserial # Serial communications
- bluepy # Bluetooth LE
-
- # Smart home ecosystems
- mutagen # Media file metadata
- pysonos # Sonos
- pywemo # Belkin WeMo
- python-miio # Xiaomi devices
- python-kasa # TP-Link
-
- # Sensors & monitoring
- meteocalc # Weather calculations
- speedtest-cli # Internet speed
-
- # Visualization & UI
- matplotlib # Graphing
-
- # Security
- bcrypt
- cryptography
- pyjwt
-
- # Media
- ha-ffmpeg # Camera streams
-
- # Specialized integrations
- python-matter-server # Matter protocol
-
- # System integrations
- psutil # System monitoring
-
- psycopg2
- numpy
- hassil
- pyturbojpeg
- paho-mqtt
- pychromecast
- pyatv
- python-otbr-api
- brother
- pyipp
- govee-ble
- adguardhome
- nextcord
- aiogithubapi
- jellyfin-apiclient-python
- pylitterbot
- dateparser
- aionut
- nextcloudmonitor
- ollama
- pynecil
- aiopyarr
- pysabnzbd
- getmac
- zigpy
- bellows # For Zigbee EmberZNet-based adapters
- zigpy-xbee # For XBee adapters
- zigpy-deconz # For ConBee/RaspBee adapters
- pyicloud # iCloud
- pyatv # Apple TV
- opencv-python
- face-recognition
- ibeacon-ble
- gehomesdk
- onedrive-personal-sdk
- python-roborock
- python-steam
- apple-weatherkit
+ extraPackages =
+ ps: with ps; [
+ # Core functionality
+ aiohttp
+ aiodns
+ paho-mqtt
+ pillow
+ pytz
+ pyyaml
+ sqlalchemy
- samsungctl
- samsungtvws
+ # Discovery & networking
+ zeroconf
+ netdisco
+ ifaddr
+ ssdp
- aiohomekit
+ # Device protocols
+ pyserial # Serial communications
+ bluepy # Bluetooth LE
+
+ # Smart home ecosystems
+ mutagen # Media file metadata
+ pysonos # Sonos
+ pywemo # Belkin WeMo
+ python-miio # Xiaomi devices
+ python-kasa # TP-Link
+
+ # Sensors & monitoring
+ meteocalc # Weather calculations
+ speedtest-cli # Internet speed
+
+ # Visualization & UI
+ matplotlib # Graphing
+
+ # Security
+ bcrypt
+ cryptography
+ pyjwt
+
+ # Media
+ ha-ffmpeg # Camera streams
+
+ # Specialized integrations
+ python-matter-server # Matter protocol
+
+ # System integrations
+ psutil # System monitoring
+
+ psycopg2
+ numpy
+ hassil
+ pyturbojpeg
+ paho-mqtt
+ pychromecast
+ pyatv
+ python-otbr-api
+ brother
+ pyipp
+ govee-ble
+ adguardhome
+ nextcord
+ aiogithubapi
+ jellyfin-apiclient-python
+ pylitterbot
+ dateparser
+ aionut
+ nextcloudmonitor
+ ollama
+ pynecil
+ aiopyarr
+ pysabnzbd
+ getmac
+ zigpy
+ bellows # For Zigbee EmberZNet-based adapters
+ zigpy-xbee # For XBee adapters
+ zigpy-deconz # For ConBee/RaspBee adapters
+ pyicloud # iCloud
+ pyatv # Apple TV
+ opencv-python
+ face-recognition
+ ibeacon-ble
+ gehomesdk
+ onedrive-personal-sdk
+ python-roborock
+ python-steam
+ apple-weatherkit
+
+ samsungctl
+ samsungtvws
+
+ aiohomekit
+
+ icmplib
+ aioelectricitymaps
+ wyoming
+ pysmartthings
+ wakeonlan
+ ephem
+ ];
- icmplib
- aioelectricitymaps
- wyoming
- pysmartthings
- wakeonlan
- ephem
- ];
-
config = {
# Includes dependencies for a basic setup
# https://www.home-assistant.io/integrations/default_config/
- default_config = {};
+ default_config = { };
cloud = false;
-
+
frontend = {
themes = "!include_dir_merge_named themes";
};
@@ -262,10 +269,12 @@ in
postgresql = {
enable = true;
ensureDatabases = [ "hass" ];
- ensureUsers = [{
- name = "hass";
- ensureDBOwnership = true;
- }];
+ ensureUsers = [
+ {
+ name = "hass";
+ ensureDBOwnership = true;
+ }
+ ];
};
# Enable and configure Mosquitto MQTT broker
@@ -303,7 +312,7 @@ in
permit_join = true;
# Web interface
frontend = {
- port = zigbee2mqttPort; # Choose an available port
+ port = zigbee2mqttPort; # Choose an available port
};
# MQTT configuration
mqtt = {
@@ -380,24 +389,24 @@ in
};
# Enable required hardware support for the Zigbee adapter
- hardware.bluetooth.enable = true; # Some adapters use Bluetooth
-
+ hardware.bluetooth.enable = true; # Some adapters use Bluetooth
+
# Ensure proper permissions for Zigbee USB devices
# services.udev.extraRules = ''
# # For CC2531, CC2530, CC1352P-2, CC2538 and similar adapters
# SUBSYSTEM=="tty", ATTRS{idVendor}=="0451", ATTRS{idProduct}=="16a8", SYMLINK+="zigbee", MODE="0666"
# SUBSYSTEM=="tty", ATTRS{idVendor}=="1a86", ATTRS{idProduct}=="7523", SYMLINK+="zigbee", MODE="0666"
-
+
# # For ConBee/RaspBee by Dresden Elektronik
# SUBSYSTEM=="tty", ATTRS{idVendor}=="1cf1", ATTRS{idProduct}=="0030", SYMLINK+="zigbee", MODE="0666"
-
+
# # For Electrolama zig-a-zig-ah (zzh!)
# SUBSYSTEM=="tty", ATTRS{idVendor}=="1a86", ATTRS{idProduct}=="7523", SYMLINK+="zigbee", MODE="0666"
# '';
environment.systemPackages = with pkgs; [
- mosquitto # MQTT command-line tools
- usbutils # For lsusb to help identify your adapter
+ mosquitto # MQTT command-line tools
+ usbutils # For lsusb to help identify your adapter
];
networking.firewall.allowedTCPPorts = [
diff --git a/modules/nixos/homeassistant/options.nix b/modules/nixos/homeassistant/options.nix
index 47b1f2b..c69c4de 100644
--- a/modules/nixos/homeassistant/options.nix
+++ b/modules/nixos/homeassistant/options.nix
@@ -4,4 +4,4 @@ with lib;
options.${namespace}.services.home-assistant = {
enable = mkEnableOption "enable home-assistant";
};
-}
\ No newline at end of file
+}
diff --git a/modules/nixos/immich/default.nix b/modules/nixos/immich/default.nix
index 14316e0..f76a8c1 100755
--- a/modules/nixos/immich/default.nix
+++ b/modules/nixos/immich/default.nix
@@ -1,4 +1,9 @@
-{ config, lib, namespace, ... }:
+{
+ config,
+ lib,
+ namespace,
+ ...
+}:
with lib;
let
cfg = config.${namespace}.services.immich;
@@ -8,7 +13,7 @@ let
dbPassword = config.sops.secrets."jallen-nas/immich/db-password".path;
in
{
- imports = [ ./options.nix ];
+ imports = [ ./options.nix ];
config = mkIf cfg.enable {
# Enable immich service
diff --git a/modules/nixos/immich/options.nix b/modules/nixos/immich/options.nix
index a003eae..e54acae 100644
--- a/modules/nixos/immich/options.nix
+++ b/modules/nixos/immich/options.nix
@@ -4,4 +4,4 @@ with lib;
options.${namespace}.services.immich = {
enable = mkEnableOption "enable immich";
};
-}
\ No newline at end of file
+}
diff --git a/modules/nixos/jellyfin/default.nix b/modules/nixos/jellyfin/default.nix
index 3714d6c..20e0199 100755
--- a/modules/nixos/jellyfin/default.nix
+++ b/modules/nixos/jellyfin/default.nix
@@ -1,10 +1,15 @@
-{ config, lib, namespace, ... }:
+{
+ config,
+ lib,
+ namespace,
+ ...
+}:
with lib;
let
cfg = config.${namespace}.services.jellyfin;
in
{
- imports = [ ./options.nix ];
+ imports = [ ./options.nix ];
config = mkIf cfg.enable {
services.jellyfin = {
diff --git a/modules/nixos/jellyfin/options.nix b/modules/nixos/jellyfin/options.nix
index 6187c4d..1f4353a 100644
--- a/modules/nixos/jellyfin/options.nix
+++ b/modules/nixos/jellyfin/options.nix
@@ -4,4 +4,4 @@ with lib;
options.${namespace}.services.jellyfin = {
enable = mkEnableOption "enable jellyfin";
};
-}
\ No newline at end of file
+}
diff --git a/modules/nixos/jellyseerr/default.nix b/modules/nixos/jellyseerr/default.nix
index 4d61a09..411c5c0 100755
--- a/modules/nixos/jellyseerr/default.nix
+++ b/modules/nixos/jellyseerr/default.nix
@@ -1,4 +1,9 @@
-{ config, lib, namespace, ... }:
+{
+ config,
+ lib,
+ namespace,
+ ...
+}:
with lib;
let
cfg = config.${namespace}.services.jellyseerr;
@@ -7,7 +12,7 @@ let
dataDir = "/var/lib/private/jellyseerr";
in
{
- imports = [ ./options.nix ];
+ imports = [ ./options.nix ];
config = mkIf cfg.enable {
containers.jellyseerr = {
diff --git a/modules/nixos/jellyseerr/options.nix b/modules/nixos/jellyseerr/options.nix
index 8960a13..f5ebe74 100644
--- a/modules/nixos/jellyseerr/options.nix
+++ b/modules/nixos/jellyseerr/options.nix
@@ -4,4 +4,4 @@ with lib;
options.${namespace}.services.jellyseerr = {
enable = mkEnableOption "enable jellyseerr";
};
-}
\ No newline at end of file
+}
diff --git a/modules/nixos/lubelogger/default.nix b/modules/nixos/lubelogger/default.nix
index ea209d3..f1d833c 100644
--- a/modules/nixos/lubelogger/default.nix
+++ b/modules/nixos/lubelogger/default.nix
@@ -1,17 +1,22 @@
-{ config, lib, namespace, ... }:
+{
+ config,
+ lib,
+ namespace,
+ ...
+}:
with lib;
let
cfg = config.${namespace}.services.lubelogger;
in
{
- imports = [ ./options.nix ];
+ imports = [ ./options.nix ];
config = mkIf cfg.enable {
virtualisation.oci-containers.containers.lubelogger = {
autoStart = true;
image = "ghcr.io/hargata/lubelogger";
ports = [ "6754:8080" ];
- volumes = [
+ volumes = [
"/media/nas/ssd/nix-app-data/lubelogger:/App/data"
"/media/nas/ssd/nix-app-data/lubelogger/keys:/root/.aspnet/DataProtection-Keys"
];
@@ -25,4 +30,4 @@ in
};
};
};
-}
\ No newline at end of file
+}
diff --git a/modules/nixos/lubelogger/options.nix b/modules/nixos/lubelogger/options.nix
index 1b062f2..f4b73db 100644
--- a/modules/nixos/lubelogger/options.nix
+++ b/modules/nixos/lubelogger/options.nix
@@ -4,4 +4,4 @@ with lib;
options.${namespace}.services.lubelogger = {
enable = mkEnableOption "enable lubelogger";
};
-}
\ No newline at end of file
+}
diff --git a/modules/nixos/network/default.nix b/modules/nixos/network/default.nix
index 6df1817..903baf6 100644
--- a/modules/nixos/network/default.nix
+++ b/modules/nixos/network/default.nix
@@ -10,7 +10,7 @@ let
in
{
options.${namespace}.network = with types; {
- hostName = lib.mkOption {
+ hostName = lib.mkOption {
type = str;
default = "nixos";
description = "The hostname of the system.";
@@ -56,8 +56,8 @@ in
id = "Joey's Jungle 6G";
type = "wifi";
};
- ipv4 = if (cfg.ipv4.method == "auto")
- then
+ ipv4 =
+ if (cfg.ipv4.method == "auto") then
{
method = "auto";
}
@@ -87,8 +87,8 @@ in
id = "Joey's Jungle 5G";
type = "wifi";
};
- ipv4 = if (cfg.ipv4.method == "auto")
- then
+ ipv4 =
+ if (cfg.ipv4.method == "auto") then
{
method = "auto";
}
@@ -126,4 +126,4 @@ in
};
};
};
-}
\ No newline at end of file
+}
diff --git a/modules/nixos/nextcloud/default.nix b/modules/nixos/nextcloud/default.nix
index b37dae8..6ab0f0e 100755
--- a/modules/nixos/nextcloud/default.nix
+++ b/modules/nixos/nextcloud/default.nix
@@ -1,11 +1,17 @@
-{ config, lib, pkgs, namespace, ... }:
+{
+ config,
+ lib,
+ pkgs,
+ namespace,
+ ...
+}:
with lib;
let
cfg = config.${namespace}.services.nextcloud;
adminpass = config.sops.secrets."jallen-nas/nextcloud/adminpassword".path;
- secretsFile = config.sops.secrets."jallen-nas/nextcloud/smtp_settings".path;
- jwtSecretFile = config.sops.secrets."jallen-nas/onlyoffice-key".path;
+ secretsFile = config.sops.secrets."jallen-nas/nextcloud/smtp_settings".path;
+ jwtSecretFile = config.sops.secrets."jallen-nas/onlyoffice-key".path;
nextcloudUserId = config.users.users.nix-apps.uid;
nextcloudGroupId = config.users.groups.jallen-nas.gid;
hostAddress = "10.0.1.3";
@@ -15,7 +21,7 @@ let
onlyofficePortExt = 9943;
in
{
- imports = [ ./options.nix ];
+ imports = [ ./options.nix ];
config = mkIf cfg.enable {
containers.nextcloud = {
@@ -33,7 +39,7 @@ in
isReadOnly = true;
mountPoint = "/run/secrets/jallen-nas/nextcloud";
};
-
+
secrets2 = {
hostPath = "/run/secrets/jallen-nas/onlyoffice-key";
isReadOnly = true;
@@ -60,12 +66,17 @@ in
};
config =
- { pkgs, lib, namespace, ... }:
+ {
+ pkgs,
+ lib,
+ namespace,
+ ...
+ }:
{
nixpkgs.config.allowUnfree = true;
networking.extraHosts = ''
- ${hostAddress} host.containers protonmail-bridge
- '';
+ ${hostAddress} host.containers protonmail-bridge
+ '';
services = {
nextcloud = {
diff --git a/modules/nixos/nextcloud/options.nix b/modules/nixos/nextcloud/options.nix
index c34526e..bb90614 100644
--- a/modules/nixos/nextcloud/options.nix
+++ b/modules/nixos/nextcloud/options.nix
@@ -4,4 +4,4 @@ with lib;
options.${namespace}.services.nextcloud = {
enable = mkEnableOption "enable nextcloud";
};
-}
\ No newline at end of file
+}
diff --git a/modules/nixos/nix/default.nix b/modules/nixos/nix/default.nix
index bd28867..d55c72a 100644
--- a/modules/nixos/nix/default.nix
+++ b/modules/nixos/nix/default.nix
@@ -33,4 +33,4 @@
];
};
};
-}
\ No newline at end of file
+}
diff --git a/modules/nixos/nvidia/default.nix b/modules/nixos/nvidia/default.nix
index 3c3a7f2..1028bfb 100755
--- a/modules/nixos/nvidia/default.nix
+++ b/modules/nixos/nvidia/default.nix
@@ -15,11 +15,11 @@ in
hardware = {
# Nvidia
nvidia = {
- package =
- if cfg.enableBeta then
- config.boot.kernelPackages.nvidiaPackages.beta
- else
- config.boot.kernelPackages.nvidiaPackages.latest;
+ package =
+ if cfg.enableBeta then
+ config.boot.kernelPackages.nvidiaPackages.beta
+ else
+ config.boot.kernelPackages.nvidiaPackages.latest;
# Modesetting is required.
modesetting.enable = true;
@@ -33,9 +33,9 @@ in
# Use the NVidia open source kernel module (not to be confused with the
# independent third-party "nouveau" open source driver).
- # Support is limited to the Turing and later architectures. Full list of
- # supported GPUs is at:
- # https://github.com/NVIDIA/open-gpu-kernel-modules#compatible-gpus
+ # Support is limited to the Turing and later architectures. Full list of
+ # supported GPUs is at:
+ # https://github.com/NVIDIA/open-gpu-kernel-modules#compatible-gpus
# Only available from driver 515.43.04+
# Currently alpha-quality/buggy, so false is currently the recommended setting.
open = cfg.enableOpen;
diff --git a/modules/nixos/ollama/default.nix b/modules/nixos/ollama/default.nix
index 2bf84fa..17cf37c 100755
--- a/modules/nixos/ollama/default.nix
+++ b/modules/nixos/ollama/default.nix
@@ -1,13 +1,19 @@
-{ config, lib, pkgs, namespace, ... }:
+{
+ config,
+ lib,
+ pkgs,
+ namespace,
+ ...
+}:
with lib;
let
cfg = config.${namespace}.services.ollama;
llamaPackage = pkgs.llama-cpp.overrideAttrs (old: {
src = pkgs.fetchFromGitHub {
- owner = "ggml-org";
- repo = "llama.cpp";
- rev = "b4920";
+ owner = "ggml-org";
+ repo = "llama.cpp";
+ rev = "b4920";
sha256 = "sha256-SnQIeY74JpAPRMxWcpklDH5D4CQvAgi0GYx5+ECk2J4=";
};
# Optionally override other attributes if you need to
@@ -16,7 +22,7 @@ let
});
in
{
- imports = [ ./options.nix ];
+ imports = [ ./options.nix ];
config = mkIf cfg.enable {
services.ollama = {
diff --git a/modules/nixos/ollama/options.nix b/modules/nixos/ollama/options.nix
index f0400f3..1ded552 100644
--- a/modules/nixos/ollama/options.nix
+++ b/modules/nixos/ollama/options.nix
@@ -4,4 +4,4 @@ with lib;
options.${namespace}.services.ollama = {
enable = mkEnableOption "enable ollama";
};
-}
\ No newline at end of file
+}
diff --git a/modules/nixos/paperless/default.nix b/modules/nixos/paperless/default.nix
index dd86340..723708c 100755
--- a/modules/nixos/paperless/default.nix
+++ b/modules/nixos/paperless/default.nix
@@ -1,4 +1,9 @@
-{ config, lib, namespace, ... }:
+{
+ config,
+ lib,
+ namespace,
+ ...
+}:
with lib;
let
cfg = config.${namespace}.services.paperless;
@@ -10,7 +15,7 @@ let
paperlessPkg = pkgs.paperless-ngx;
in
{
- imports = [ ./options.nix ];
+ imports = [ ./options.nix ];
config = mkIf cfg.enable {
containers.paperless = {
diff --git a/modules/nixos/paperless/options.nix b/modules/nixos/paperless/options.nix
index f3ce50e..56f29a0 100644
--- a/modules/nixos/paperless/options.nix
+++ b/modules/nixos/paperless/options.nix
@@ -4,4 +4,4 @@ with lib;
options.${namespace}.services.paperless = {
enable = mkEnableOption "enable paperless";
};
-}
\ No newline at end of file
+}
diff --git a/modules/nixos/programs/default.nix b/modules/nixos/programs/default.nix
index 0d9337c..f803ce2 100644
--- a/modules/nixos/programs/default.nix
+++ b/modules/nixos/programs/default.nix
@@ -75,4 +75,4 @@
nixd
];
};
-}
\ No newline at end of file
+}
diff --git a/modules/nixos/security/default.nix b/modules/nixos/security/default.nix
index 64e8dcd..372d702 100644
--- a/modules/nixos/security/default.nix
+++ b/modules/nixos/security/default.nix
@@ -28,4 +28,4 @@
];
};
};
-}
\ No newline at end of file
+}
diff --git a/modules/nixos/services/default.nix b/modules/nixos/services/default.nix
index 29c25f1..fd7340e 100644
--- a/modules/nixos/services/default.nix
+++ b/modules/nixos/services/default.nix
@@ -1,7 +1,7 @@
{ lib, pkgs, ... }:
{
services = {
-
+
kmscon = {
enable = lib.mkDefault false;
hwRender = true;
@@ -30,7 +30,7 @@
# Enable Avahi for .local hostname resolution
avahi = {
enable = lib.mkDefault true;
- nssmdns4 = lib.mkDefault true; # For modern systems, use nssmdns4 instead of nssmdns
+ nssmdns4 = lib.mkDefault true; # For modern systems, use nssmdns4 instead of nssmdns
openFirewall = lib.mkDefault true;
publish = {
enable = lib.mkDefault true;
diff --git a/modules/nixos/shell/default.nix b/modules/nixos/shell/default.nix
index 9bdba54..9d4e472 100644
--- a/modules/nixos/shell/default.nix
+++ b/modules/nixos/shell/default.nix
@@ -12,4 +12,4 @@
enableZshIntegration = lib.mkDefault true;
};
};
-}
\ No newline at end of file
+}
diff --git a/modules/nixos/traefik/default.nix b/modules/nixos/traefik/default.nix
index 093631a..e37c03b 100755
--- a/modules/nixos/traefik/default.nix
+++ b/modules/nixos/traefik/default.nix
@@ -1,4 +1,9 @@
-{ config, lib, namespace, ... }:
+{
+ config,
+ lib,
+ namespace,
+ ...
+}:
with lib;
let
cfg = config.${namespace}.services.traefik;
@@ -45,10 +50,10 @@ let
metricsPort = 8082;
forwardPorts = [
- httpPort
- httpsPort
- traefikPort
- metricsPort
+ httpPort
+ httpsPort
+ traefikPort
+ metricsPort
];
# misc
@@ -57,7 +62,7 @@ let
authentikAddress = "http://${serverIp}:9000/outpost.goauthentik.io/auth/traefik";
in
{
- imports = [ ./options.nix ];
+ imports = [ ./options.nix ];
config = mkIf cfg.enable {
sops = {
@@ -76,7 +81,9 @@ in
"traefik.env" = {
content = ''
CLOUDFLARE_DNS_API_TOKEN = ${config.sops.placeholder."jallen-nas/traefik/cloudflare-dns-api-token"}
- CLOUDFLARE_ZONE_API_TOKEN = ${config.sops.placeholder."jallen-nas/traefik/cloudflare-zone-api-token"}
+ CLOUDFLARE_ZONE_API_TOKEN = ${
+ config.sops.placeholder."jallen-nas/traefik/cloudflare-zone-api-token"
+ }
CLOUDFLARE_API_KEY = ${config.sops.placeholder."jallen-nas/traefik/cloudflare-api-key"}
CLOUDFLARE_EMAIL = ${config.sops.placeholder."jallen-nas/traefik/cloudflare-email"}
'';
@@ -95,7 +102,7 @@ in
services.traefik = {
enable = true;
dataDir = dataDir;
- group = "jallen-nas";#group;
+ group = "jallen-nas"; # group;
environmentFiles = [ "${config.services.traefik.dataDir}/traefik.env" ]; # todo: sops
staticConfigOptions = {
@@ -129,7 +136,12 @@ in
entryPoint = "metrics";
addEntryPointsLabels = true;
addServicesLabels = true;
- buckets = [0.1 0.3 1.2 5.0]; # Response time buckets
+ buckets = [
+ 0.1
+ 0.3
+ 1.2
+ 5.0
+ ]; # Response time buckets
};
};
@@ -215,8 +227,7 @@ in
};
};
};
- internal-ipallowlist =
- {
+ internal-ipallowlist = {
ipAllowList = {
sourceRange = [
"127.0.0.1/32"
@@ -305,7 +316,10 @@ in
entryPoints = [ "websecure" ];
rule = "HostRegexp(`{subdomain:[a-z]+}.mjallen.dev`) && PathPrefix(`/outpost.goauthentik.io/`)";
service = "auth";
- middlewares = [ "crowdsec" "whitelist-geoblock" ];
+ middlewares = [
+ "crowdsec"
+ "whitelist-geoblock"
+ ];
priority = 15;
tls.certResolver = "letsencrypt";
};
@@ -314,21 +328,30 @@ in
entryPoints = [ "websecure" ];
rule = "Host(`actual.${domain}`)";
service = "actual";
- middlewares = [ "crowdsec" "whitelist-geoblock" ];
+ middlewares = [
+ "crowdsec"
+ "whitelist-geoblock"
+ ];
tls.certResolver = "letsencrypt";
};
authentik = {
entryPoints = [ "websecure" ];
rule = "Host(`authentik.${domain}`)";
service = "authentik";
- middlewares = [ "crowdsec" "whitelist-geoblock" ];
+ middlewares = [
+ "crowdsec"
+ "whitelist-geoblock"
+ ];
tls.certResolver = "letsencrypt";
};
cache = {
entryPoints = [ "websecure" ];
rule = "Host(`cache.${domain}`)";
service = "cache";
- middlewares = [ "crowdsec" "whitelist-geoblock" ];
+ middlewares = [
+ "crowdsec"
+ "whitelist-geoblock"
+ ];
priority = 10;
tls.certResolver = "letsencrypt";
};
@@ -336,21 +359,31 @@ in
entryPoints = [ "websecure" ];
rule = "Host(`cloud.${domain}`)";
service = "cloud";
- middlewares = [ "crowdsec" "whitelist-geoblock" ];
+ middlewares = [
+ "crowdsec"
+ "whitelist-geoblock"
+ ];
tls.certResolver = "letsencrypt";
};
gitea = {
entryPoints = [ "websecure" ];
rule = "Host(`gitea.${domain}`)";
service = "gitea";
- middlewares = [ "crowdsec" "whitelist-geoblock" ];
+ middlewares = [
+ "crowdsec"
+ "whitelist-geoblock"
+ ];
tls.certResolver = "letsencrypt";
};
hass = {
entryPoints = [ "websecure" ];
rule = "Host(`hass.${domain}`)";
service = "hass";
- middlewares = [ "crowdsec" "whitelist-geoblock" "authentik" ];
+ middlewares = [
+ "crowdsec"
+ "whitelist-geoblock"
+ "authentik"
+ ];
priority = 10;
tls.certResolver = "letsencrypt";
};
@@ -358,35 +391,51 @@ in
entryPoints = [ "websecure" ];
rule = "Host(`immich.${domain}`)";
service = "immich";
- middlewares = [ "crowdsec" "whitelist-geoblock" ];
+ middlewares = [
+ "crowdsec"
+ "whitelist-geoblock"
+ ];
tls.certResolver = "letsencrypt";
};
jellyfin = {
entryPoints = [ "websecure" ];
rule = "Host(`jellyfin.${domain}`)";
service = "jellyfin";
- middlewares = [ "crowdsec" "whitelist-geoblock" ];
+ middlewares = [
+ "crowdsec"
+ "whitelist-geoblock"
+ ];
tls.certResolver = "letsencrypt";
};
jellyseerr = {
entryPoints = [ "websecure" ];
rule = "Host(`jellyseerr.${domain}`)";
service = "jellyseerr";
- middlewares = [ "crowdsec" "whitelist-geoblock" ];
+ middlewares = [
+ "crowdsec"
+ "whitelist-geoblock"
+ ];
tls.certResolver = "letsencrypt";
};
lubelogger = {
entryPoints = [ "websecure" ];
rule = "Host(`lubelogger.${domain}`)";
service = "lubelogger";
- middlewares = [ "crowdsec" "whitelist-geoblock" ];
+ middlewares = [
+ "crowdsec"
+ "whitelist-geoblock"
+ ];
tls.certResolver = "letsencrypt";
};
onlyoffice = {
entryPoints = [ "websecure" ];
rule = "Host(`office.${domain}`)";
service = "onlyoffice";
- middlewares = [ "crowdsec" "whitelist-geoblock" "onlyoffice-websocket" ];
+ middlewares = [
+ "crowdsec"
+ "whitelist-geoblock"
+ "onlyoffice-websocket"
+ ];
tls.certResolver = "letsencrypt";
};
};
diff --git a/modules/nixos/traefik/options.nix b/modules/nixos/traefik/options.nix
index bb19f87..6a5e541 100644
--- a/modules/nixos/traefik/options.nix
+++ b/modules/nixos/traefik/options.nix
@@ -4,4 +4,4 @@ with lib;
options.${namespace}.services.traefik = {
enable = mkEnableOption "enable traefik";
};
-}
\ No newline at end of file
+}
diff --git a/modules/nixos/user/default.nix b/modules/nixos/user/default.nix
index a0ce583..5b4947a 100644
--- a/modules/nixos/user/default.nix
+++ b/modules/nixos/user/default.nix
@@ -11,7 +11,7 @@ let
in
{
options.${namespace}.user = with types; {
- email = lib.mkOption {
+ email = lib.mkOption {
type = str;
default = "jalle008@proton.me";
description = "The email of the user.";
@@ -74,4 +74,4 @@ in
hashedPasswordFile = cfg.passwordFile;
} // cfg.extraOptions;
};
-}
\ No newline at end of file
+}
diff --git a/modules/nixos/wyoming/default.nix b/modules/nixos/wyoming/default.nix
index 4f58725..cd5b4c7 100755
--- a/modules/nixos/wyoming/default.nix
+++ b/modules/nixos/wyoming/default.nix
@@ -1,10 +1,15 @@
-{ config, lib, namespace, ... }:
+{
+ config,
+ lib,
+ namespace,
+ ...
+}:
with lib;
let
cfg = config.${namespace}.services.wyoming;
in
{
- imports = [ ./options.nix ];
+ imports = [ ./options.nix ];
config = mkIf cfg.enable {
services.wyoming = {
@@ -24,4 +29,4 @@ in
};
};
};
-}
\ No newline at end of file
+}
diff --git a/modules/nixos/wyoming/options.nix b/modules/nixos/wyoming/options.nix
index 46d7f0a..1388279 100644
--- a/modules/nixos/wyoming/options.nix
+++ b/modules/nixos/wyoming/options.nix
@@ -4,4 +4,4 @@ with lib;
options.${namespace}.services.wyoming = {
enable = mkEnableOption "enable wyoming";
};
-}
\ No newline at end of file
+}
diff --git a/overlays/unstable/default.nix b/overlays/unstable/default.nix
index b011ce5..385d78b 100644
--- a/overlays/unstable/default.nix
+++ b/overlays/unstable/default.nix
@@ -4,4 +4,4 @@ final: _prev: {
system = final.system;
config.allowUnfree = true;
};
-}
\ No newline at end of file
+}
diff --git a/overlays/waybar/default.nix b/overlays/waybar/default.nix
index 19e3c3d..2d37704 100644
--- a/overlays/waybar/default.nix
+++ b/overlays/waybar/default.nix
@@ -1,6 +1,6 @@
{ ... }:
final: prev: {
waybar = prev.waybar.overrideAttrs (old: {
- mesonFlags = (old.mesonFlags or []) ++ [ "-Dexperimental=true" ];
+ mesonFlags = (old.mesonFlags or [ ]) ++ [ "-Dexperimental=true" ];
});
}
diff --git a/packages/ha-anycubic/default.nix b/packages/ha-anycubic/default.nix
index d230d0e..e27b313 100644
--- a/packages/ha-anycubic/default.nix
+++ b/packages/ha-anycubic/default.nix
@@ -1,4 +1,9 @@
-{ buildHomeAssistantComponent, pkgs, namespace, ... }:
+{
+ buildHomeAssistantComponent,
+ pkgs,
+ namespace,
+ ...
+}:
buildHomeAssistantComponent rec {
owner = "adamoutler";
domain = "anycubic_wifi";
@@ -23,4 +28,4 @@ buildHomeAssistantComponent rec {
homepage = "https://github.com/adamoutler/anycubic-homeassistant";
maintainers = [ ];
};
-}
\ No newline at end of file
+}
diff --git a/packages/ha-bambulab/default.nix b/packages/ha-bambulab/default.nix
index 2a76053..b7d86a8 100644
--- a/packages/ha-bambulab/default.nix
+++ b/packages/ha-bambulab/default.nix
@@ -1,4 +1,9 @@
-{ buildHomeAssistantComponent, python3Packages, fetchFromGitHub, ... }:
+{
+ buildHomeAssistantComponent,
+ python3Packages,
+ fetchFromGitHub,
+ ...
+}:
buildHomeAssistantComponent rec {
owner = "greghesp";
domain = "bambu_lab";
@@ -21,4 +26,4 @@ buildHomeAssistantComponent rec {
homepage = "https://github.com/greghesp/ha-bambulab";
maintainers = [ ];
};
-}
\ No newline at end of file
+}
diff --git a/packages/ha-gehome/default.nix b/packages/ha-gehome/default.nix
index 30d953b..24319c3 100644
--- a/packages/ha-gehome/default.nix
+++ b/packages/ha-gehome/default.nix
@@ -1,4 +1,10 @@
-{ buildHomeAssistantComponent, fetchFromGitHub, python3Packages, namespace, ... }:
+{
+ buildHomeAssistantComponent,
+ fetchFromGitHub,
+ python3Packages,
+ namespace,
+ ...
+}:
buildHomeAssistantComponent rec {
owner = "simbaja";
domain = "ge_home";
@@ -29,4 +35,4 @@ buildHomeAssistantComponent rec {
homepage = "https://github.com/simbaja/ha_gehome";
maintainers = [ ];
};
-}
\ No newline at end of file
+}
diff --git a/packages/ha-icloud3/default.nix b/packages/ha-icloud3/default.nix
index a9b3402..847c9da 100644
--- a/packages/ha-icloud3/default.nix
+++ b/packages/ha-icloud3/default.nix
@@ -1,4 +1,9 @@
-{ buildHomeAssistantComponent, fetchFromGitHub, python3Packages, ... }:
+{
+ buildHomeAssistantComponent,
+ fetchFromGitHub,
+ python3Packages,
+ ...
+}:
buildHomeAssistantComponent rec {
owner = "gcobb321";
domain = "icloud3";
@@ -21,4 +26,4 @@ buildHomeAssistantComponent rec {
homepage = "https://github.com/gcobb321/icloud3";
maintainers = [ ];
};
-}
\ No newline at end of file
+}
diff --git a/packages/ha-mail-and-packages/default.nix b/packages/ha-mail-and-packages/default.nix
index b4a42aa..879e24a 100644
--- a/packages/ha-mail-and-packages/default.nix
+++ b/packages/ha-mail-and-packages/default.nix
@@ -1,4 +1,9 @@
-{ buildHomeAssistantComponent, fetchFromGitHub, python3Packages, ... }:
+{
+ buildHomeAssistantComponent,
+ fetchFromGitHub,
+ python3Packages,
+ ...
+}:
buildHomeAssistantComponent rec {
owner = "moralmunky";
domain = "mail_and_packages";
diff --git a/packages/ha-nanokvm/default.nix b/packages/ha-nanokvm/default.nix
index c251f33..41719b3 100644
--- a/packages/ha-nanokvm/default.nix
+++ b/packages/ha-nanokvm/default.nix
@@ -1,4 +1,10 @@
-{ buildHomeAssistantComponent, fetchFromGitHub, pkgs, namespace, ... }:
+{
+ buildHomeAssistantComponent,
+ fetchFromGitHub,
+ pkgs,
+ namespace,
+ ...
+}:
buildHomeAssistantComponent rec {
owner = "Wouter0100";
domain = "nanokvm";
diff --git a/packages/ha-overseerr/default.nix b/packages/ha-overseerr/default.nix
index a8fa36a..041039a 100644
--- a/packages/ha-overseerr/default.nix
+++ b/packages/ha-overseerr/default.nix
@@ -1,4 +1,10 @@
-{ buildHomeAssistantComponent, fetchFromGitHub, pkgs, namespace, ... }:
+{
+ buildHomeAssistantComponent,
+ fetchFromGitHub,
+ pkgs,
+ namespace,
+ ...
+}:
buildHomeAssistantComponent rec {
owner = "vaparr";
domain = "overseerr";
diff --git a/packages/ha-wyzeapi/default.nix b/packages/ha-wyzeapi/default.nix
index 1eb5c01..7e6e379 100644
--- a/packages/ha-wyzeapi/default.nix
+++ b/packages/ha-wyzeapi/default.nix
@@ -1,4 +1,10 @@
-{ buildHomeAssistantComponent, fetchFromGitHub, pkgs, namespace, ... }:
+{
+ buildHomeAssistantComponent,
+ fetchFromGitHub,
+ pkgs,
+ namespace,
+ ...
+}:
buildHomeAssistantComponent rec {
owner = "SecKatie";
domain = "wyzeapi";
diff --git a/packages/homeassistant-api/default.nix b/packages/homeassistant-api/default.nix
index 1ae547f..3a30dac 100644
--- a/packages/homeassistant-api/default.nix
+++ b/packages/homeassistant-api/default.nix
@@ -10,7 +10,10 @@ python3Packages.buildPythonPackage rec {
# do not run tests
doCheck = false;
- nativeBuildInputs = with python3Packages; [ poetry-core requests-cache ];
+ nativeBuildInputs = with python3Packages; [
+ poetry-core
+ requests-cache
+ ];
dependencies = with python3Packages; [
requests-cache
pydantic
diff --git a/packages/magicattr/default.nix b/packages/magicattr/default.nix
index 1f539fc..0f2ac82 100644
--- a/packages/magicattr/default.nix
+++ b/packages/magicattr/default.nix
@@ -1,4 +1,9 @@
-{ lib, python3Packages, fetchFromGitHub, ... }:
+{
+ lib,
+ python3Packages,
+ fetchFromGitHub,
+ ...
+}:
python3Packages.buildPythonPackage rec {
pname = "magicattr";
@@ -14,4 +19,4 @@ python3Packages.buildPythonPackage rec {
buildInputs = with python3Packages; [ setuptools ];
doCheck = false;
-}
\ No newline at end of file
+}
diff --git a/packages/pyoverseerr/default.nix b/packages/pyoverseerr/default.nix
index ba221f2..04c3245 100644
--- a/packages/pyoverseerr/default.nix
+++ b/packages/pyoverseerr/default.nix
@@ -13,4 +13,4 @@ python3Packages.buildPythonPackage rec {
buildInputs = with python3Packages; [ setuptools ];
doCheck = false; # no tests in the PyPI tarball
-}
\ No newline at end of file
+}
diff --git a/packages/python-nanokvm/default.nix b/packages/python-nanokvm/default.nix
index 32ef137..abd093c 100644
--- a/packages/python-nanokvm/default.nix
+++ b/packages/python-nanokvm/default.nix
@@ -11,7 +11,7 @@ python3Packages.buildPythonPackage rec {
sha256 = "sha256-jBBd+O3S/4AlxAhrF9j9Bi5vMKZNk0M17ok9JzcI8F8=";
};
- buildInputs = with python3Packages; [
+ buildInputs = with python3Packages; [
setuptools
setuptools-git-versioning
];
@@ -25,4 +25,4 @@ python3Packages.buildPythonPackage rec {
];
doCheck = false;
-}
\ No newline at end of file
+}
diff --git a/packages/wyzeapy/default.nix b/packages/wyzeapy/default.nix
index 00d497a..f6b800f 100644
--- a/packages/wyzeapy/default.nix
+++ b/packages/wyzeapy/default.nix
@@ -13,7 +13,7 @@ python3Packages.buildPythonPackage rec {
buildInputs = with python3Packages; [ poetry-core ];
- nativeBuildInputs = with python3Packages; [
+ nativeBuildInputs = with python3Packages; [
aiodns
aiohttp
pycryptodome
diff --git a/systems/aarch64-darwin/macbook-pro/default.nix b/systems/aarch64-darwin/macbook-pro/default.nix
index 9fb2592..8166bab 100755
--- a/systems/aarch64-darwin/macbook-pro/default.nix
+++ b/systems/aarch64-darwin/macbook-pro/default.nix
@@ -1,4 +1,9 @@
-{ config, inputs, pkgs, ... }:
+{
+ config,
+ inputs,
+ pkgs,
+ ...
+}:
{
imports = [
./nix.nix
diff --git a/systems/aarch64-darwin/macbook-pro/homebrew.nix b/systems/aarch64-darwin/macbook-pro/homebrew.nix
index b0fb0be..112aa6c 100644
--- a/systems/aarch64-darwin/macbook-pro/homebrew.nix
+++ b/systems/aarch64-darwin/macbook-pro/homebrew.nix
@@ -63,4 +63,4 @@
};
# homebrew.global.autoUpdate = true;
-}
\ No newline at end of file
+}
diff --git a/systems/aarch64-darwin/macbook-pro/nix.nix b/systems/aarch64-darwin/macbook-pro/nix.nix
index 70fe65a..c420d99 100644
--- a/systems/aarch64-darwin/macbook-pro/nix.nix
+++ b/systems/aarch64-darwin/macbook-pro/nix.nix
@@ -14,4 +14,4 @@
config.allowUnfree = true;
hostPlatform = "aarch64-darwin";
};
-}
\ No newline at end of file
+}
diff --git a/systems/aarch64-darwin/macbook-pro/programs.nix b/systems/aarch64-darwin/macbook-pro/programs.nix
index 8d6fdd4..b122a8f 100644
--- a/systems/aarch64-darwin/macbook-pro/programs.nix
+++ b/systems/aarch64-darwin/macbook-pro/programs.nix
@@ -19,6 +19,6 @@
};
};
- zsh.enable = true; # default shell on catalina
+ zsh.enable = true; # default shell on catalina
};
-}
\ No newline at end of file
+}
diff --git a/systems/aarch64-linux/macbook-pro-nixos/boot.nix b/systems/aarch64-linux/macbook-pro-nixos/boot.nix
index 7947750..cfdf2a4 100644
--- a/systems/aarch64-linux/macbook-pro-nixos/boot.nix
+++ b/systems/aarch64-linux/macbook-pro-nixos/boot.nix
@@ -20,4 +20,4 @@
'';
m1n1CustomLogo = ./NixOS.png;
};
-}
\ No newline at end of file
+}
diff --git a/systems/aarch64-linux/macbook-pro-nixos/default.nix b/systems/aarch64-linux/macbook-pro-nixos/default.nix
index fe01622..4d851ed 100755
--- a/systems/aarch64-linux/macbook-pro-nixos/default.nix
+++ b/systems/aarch64-linux/macbook-pro-nixos/default.nix
@@ -52,7 +52,6 @@ in
"name:steam, monitor:${display.input}, default:false, special, class:(.*[Ss]team.*)"
];
-
windowRule = [
"size 2160 3356, tag:horizonrdp"
];
@@ -78,7 +77,7 @@ in
"lp"
"video"
"i2c"
- ]; # Enable ‘sudo’ for the user.
+ ]; # Enable ‘sudo’ for the user.
shell = pkgs.zsh;
packages = with pkgs; [
firefox
diff --git a/systems/aarch64-linux/macbook-pro-nixos/hardware-configuration.nix b/systems/aarch64-linux/macbook-pro-nixos/hardware-configuration.nix
index 0dfef32..92c0ac4 100644
--- a/systems/aarch64-linux/macbook-pro-nixos/hardware-configuration.nix
+++ b/systems/aarch64-linux/macbook-pro-nixos/hardware-configuration.nix
@@ -4,61 +4,90 @@
{ lib, modulesPath, ... }:
{
- imports =
- [ (modulesPath + "/installer/scan/not-detected.nix")
- ];
+ imports = [
+ (modulesPath + "/installer/scan/not-detected.nix")
+ ];
- boot.initrd.availableKernelModules = [ "uas" "sdhci_pci" ];
+ boot.initrd.availableKernelModules = [
+ "uas"
+ "sdhci_pci"
+ ];
boot.initrd.kernelModules = [ ];
boot.kernelModules = [ ];
boot.extraModulePackages = [ ];
- fileSystems."/" =
- { device = "none";
- fsType = "tmpfs";
- };
+ fileSystems."/" = {
+ device = "none";
+ fsType = "tmpfs";
+ };
- fileSystems."/root" =
- { device = "/dev/disk/by-uuid/adcc14fa-8bf7-4b4b-a9e4-b038993b96cc";
- fsType = "btrfs";
- options = [ "compress=zstd" "noatime" "subvol=root" ];
- };
+ fileSystems."/root" = {
+ device = "/dev/disk/by-uuid/adcc14fa-8bf7-4b4b-a9e4-b038993b96cc";
+ fsType = "btrfs";
+ options = [
+ "compress=zstd"
+ "noatime"
+ "subvol=root"
+ ];
+ };
- fileSystems."/etc" =
- { device = "/dev/disk/by-uuid/adcc14fa-8bf7-4b4b-a9e4-b038993b96cc";
- fsType = "btrfs";
- options = [ "compress=zstd" "noatime" "subvol=etc" ];
- };
+ fileSystems."/etc" = {
+ device = "/dev/disk/by-uuid/adcc14fa-8bf7-4b4b-a9e4-b038993b96cc";
+ fsType = "btrfs";
+ options = [
+ "compress=zstd"
+ "noatime"
+ "subvol=etc"
+ ];
+ };
- fileSystems."/tmp" =
- { device = "/dev/disk/by-uuid/adcc14fa-8bf7-4b4b-a9e4-b038993b96cc";
- fsType = "btrfs";
- options = [ "compress=zstd" "noatime" "subvol=tmp" ];
- };
+ fileSystems."/tmp" = {
+ device = "/dev/disk/by-uuid/adcc14fa-8bf7-4b4b-a9e4-b038993b96cc";
+ fsType = "btrfs";
+ options = [
+ "compress=zstd"
+ "noatime"
+ "subvol=tmp"
+ ];
+ };
- fileSystems."/nix" =
- { device = "/dev/disk/by-uuid/adcc14fa-8bf7-4b4b-a9e4-b038993b96cc";
- fsType = "btrfs";
- options = [ "compress=zstd" "noatime" "subvol=nix" ];
- };
+ fileSystems."/nix" = {
+ device = "/dev/disk/by-uuid/adcc14fa-8bf7-4b4b-a9e4-b038993b96cc";
+ fsType = "btrfs";
+ options = [
+ "compress=zstd"
+ "noatime"
+ "subvol=nix"
+ ];
+ };
- fileSystems."/var/log" =
- { device = "/dev/disk/by-uuid/adcc14fa-8bf7-4b4b-a9e4-b038993b96cc";
- fsType = "btrfs";
- options = [ "compress=zstd" "noatime" "subvol=log" ];
- };
+ fileSystems."/var/log" = {
+ device = "/dev/disk/by-uuid/adcc14fa-8bf7-4b4b-a9e4-b038993b96cc";
+ fsType = "btrfs";
+ options = [
+ "compress=zstd"
+ "noatime"
+ "subvol=log"
+ ];
+ };
- fileSystems."/home" =
- { device = "/dev/disk/by-uuid/adcc14fa-8bf7-4b4b-a9e4-b038993b96cc";
- fsType = "btrfs";
- options = [ "compress=zstd" "subvol=home" ];
- };
+ fileSystems."/home" = {
+ device = "/dev/disk/by-uuid/adcc14fa-8bf7-4b4b-a9e4-b038993b96cc";
+ fsType = "btrfs";
+ options = [
+ "compress=zstd"
+ "subvol=home"
+ ];
+ };
- fileSystems."/boot" =
- { device = "/dev/disk/by-uuid/23FA-AD3E";
- fsType = "vfat";
- options = [ "fmask=0022" "dmask=0022" ];
- };
+ fileSystems."/boot" = {
+ device = "/dev/disk/by-uuid/23FA-AD3E";
+ fsType = "vfat";
+ options = [
+ "fmask=0022"
+ "dmask=0022"
+ ];
+ };
# swapDevices = [
# {
diff --git a/systems/aarch64-linux/macbook-pro-nixos/hyprland-settings.nix b/systems/aarch64-linux/macbook-pro-nixos/hyprland-settings.nix
index 603f1e4..78aa2bc 100644
--- a/systems/aarch64-linux/macbook-pro-nixos/hyprland-settings.nix
+++ b/systems/aarch64-linux/macbook-pro-nixos/hyprland-settings.nix
@@ -19,7 +19,7 @@ in
monitor = [
"${display.input},${display.resolution}@${display.refreshRate},0x0,1.25,bitdepth,10,cm,hdr,sdrbrightness,1.2,sdrsaturation,0.98"
];
-
+
# monitorv2 = {
# output = "eDP-1";
# mode = "3456x2234@60.00000";
@@ -27,7 +27,7 @@ in
# scale = "1.25";
# #bitdepth,10,cm,hdr,sdrbrightness,1.2,sdrsaturation,0.98"
# };
-
+
workspace = [
"name:firefox, monitor:${display.input}, default:false, special, class:(.*firefox.*)"
"name:discord, monitor:${display.input}, default:true, special, title:(.*vesktop.*), title:(.*Apple Music.*)"
@@ -79,4 +79,4 @@ in
};
};
};
-}
\ No newline at end of file
+}
diff --git a/systems/aarch64-linux/macbook-pro-nixos/networking.nix b/systems/aarch64-linux/macbook-pro-nixos/networking.nix
index 7f8c629..800ff5f 100644
--- a/systems/aarch64-linux/macbook-pro-nixos/networking.nix
+++ b/systems/aarch64-linux/macbook-pro-nixos/networking.nix
@@ -8,7 +8,7 @@
enable = true;
settings = {
General = {
- EnableNetworkConfiguration = true;
+ EnableNetworkConfiguration = true;
};
Rank = {
BandModifier2_4GHz = 1.0;
@@ -41,4 +41,4 @@
iptables -I INPUT -p udp -m udp --match multiport --dports 1990,2021 -j ACCEPT
'';
};
-}
\ No newline at end of file
+}
diff --git a/systems/aarch64-linux/macbook-pro-nixos/services.nix b/systems/aarch64-linux/macbook-pro-nixos/services.nix
index c7d03d3..b92e589 100644
--- a/systems/aarch64-linux/macbook-pro-nixos/services.nix
+++ b/systems/aarch64-linux/macbook-pro-nixos/services.nix
@@ -13,7 +13,7 @@
# minimum cpu frequency (in kHz)
# example: for 800 MHz = 800000 kHz --> scaling_min_freq = 800000
# Available: 912 MHz, 1284 MHz, 1752 MHz, 2004 MHz, 2256 MHz, 2424 MHz
- # 702000 948000 1188000 1452000 1704000 1968000 2208000 2400000 2568000 2724000 2868000 3000000 3132000 3264000
+ # 702000 948000 1188000 1452000 1704000 1968000 2208000 2400000 2568000 2724000 2868000 3000000 3132000 3264000
# see conversion info: https://www.rapidtables.com/convert/frequency/mhz-to-hz.html
# to use this feature, uncomment the following line and set the value accordingly
scaling_min_freq = 912000;
@@ -33,7 +33,7 @@
# minimum cpu frequency (in kHz)
# example: for 800 MHz = 800000 kHz --> scaling_min_freq = 800000
# Available: 912 MHz, 1284 MHz, 1752 MHz, 2004 MHz, 2256 MHz, 2424 MHz
- # 702000 948000 1188000 1452000 1704000 1968000 2208000 2400000 2568000 2724000 2868000 3000000 3132000 3264000
+ # 702000 948000 1188000 1452000 1704000 1968000 2208000 2400000 2568000 2724000 2868000 3000000 3132000 3264000
# see conversion info: https://www.rapidtables.com/convert/frequency/mhz-to-hz.html
# to use this feature, uncomment the following line and set the value accordingly
scaling_min_freq = 912000;
@@ -50,7 +50,7 @@
};
};
};
-
+
displayManager = {
sddm = {
enable = lib.mkForce true;
@@ -58,7 +58,7 @@
};
gdm.enable = lib.mkForce false;
};
-
+
desktopManager = {
plasma6.enable = lib.mkForce false;
gnome.enable = lib.mkForce false;
@@ -93,9 +93,9 @@
"`" = "A-f6";
# App shortcuts
- c = "C-insert"; # Copy
- v = "S-insert"; # Paste
- x = "S-delete"; # Cut
+ c = "C-insert"; # Copy
+ v = "S-insert"; # Paste
+ x = "S-delete"; # Cut
"1" = "A-1";
"2" = "A-2";
diff --git a/systems/aarch64-linux/pi4/boot.nix b/systems/aarch64-linux/pi4/boot.nix
index 99c1dbf..f7c82f3 100755
--- a/systems/aarch64-linux/pi4/boot.nix
+++ b/systems/aarch64-linux/pi4/boot.nix
@@ -21,18 +21,25 @@
# # cp -r ${uefi_pi4}/share/uefi_rpi4/* /boot/firmware/
# # '';
# }
-{ config, pkgs, lib, ... }:
+{
+ config,
+ pkgs,
+ lib,
+ ...
+}:
let
kernelBundle = pkgs.linuxAndFirmware.latest;
in
{
- system.nixos.tags = let
- cfg = config.boot.loader.raspberry-pi;
- in [
- "raspberry-pi-${cfg.variant}"
- cfg.bootloader
- config.boot.kernelPackages.kernel.version
- ];
+ system.nixos.tags =
+ let
+ cfg = config.boot.loader.raspberry-pi;
+ in
+ [
+ "raspberry-pi-${cfg.variant}"
+ cfg.bootloader
+ config.boot.kernelPackages.kernel.version
+ ];
boot = lib.mkForce {
loader.raspberry-pi = {
@@ -41,9 +48,10 @@ in
};
kernelPackages = kernelBundle.linuxPackages_rpi4;
};
-
+
hardware.raspberry-pi.config = {
- all = { # [all] conditional filter, https://www.raspberrypi.com/documentation/computers/config_txt.html#conditional-filters
+ all = {
+ # [all] conditional filter, https://www.raspberrypi.com/documentation/computers/config_txt.html#conditional-filters
base-dt-params = {
i2c_arm = {
@@ -63,14 +71,14 @@ in
options = {
# https://www.raspberrypi.com/documentation/computers/config_txt.html#enable_uart
# in conjunction with `console=serial0,115200` in kernel command line (`cmdline.txt`)
- # creates a serial console, accessible using GPIOs 14 and 15 (pins
+ # creates a serial console, accessible using GPIOs 14 and 15 (pins
# 8 and 10 on the 40-pin header)
enable_uart = {
enable = true;
value = true;
};
# https://www.raspberrypi.com/documentation/computers/config_txt.html#uart_2ndstage
- # enable debug logging to the UART, also automatically enables
+ # enable debug logging to the UART, also automatically enables
# UART logging in `start.elf`
uart_2ndstage = {
enable = true;
diff --git a/systems/aarch64-linux/pi4/default.nix b/systems/aarch64-linux/pi4/default.nix
index e7952a7..8b2625f 100755
--- a/systems/aarch64-linux/pi4/default.nix
+++ b/systems/aarch64-linux/pi4/default.nix
@@ -2,7 +2,13 @@
# your system. Help is available in the configuration.nix(5) man page, on
# https://search.nixos.org/options and in the NixOS manual (`nixos-help`).
-{ config, lib, pkgs, namespace, ... }:
+{
+ config,
+ lib,
+ pkgs,
+ namespace,
+ ...
+}:
let
user = "matt";
# password = config.sops.secrets."pi4/matt-password".path;
@@ -37,7 +43,7 @@ in
nixpkgs = {
overlays = lib.mkAfter [
(self: super: {
- # This is used in (modulesPath + "/hardware/all-firmware.nix") when at least
+ # This is used in (modulesPath + "/hardware/all-firmware.nix") when at least
# enableRedistributableFirmware is enabled
# I know no easier way to override this package
inherit (kernelBundle) raspberrypiWirelessFirmware;
diff --git a/systems/aarch64-linux/pi4/networking.nix b/systems/aarch64-linux/pi4/networking.nix
index a3658cd..5a212ad 100755
--- a/systems/aarch64-linux/pi4/networking.nix
+++ b/systems/aarch64-linux/pi4/networking.nix
@@ -24,7 +24,7 @@ in
settings.connectivity.uri = lib.mkDefault "http://nmcheck.gnome.org/check_network_status.txt";
ensureProfiles = {
environmentFiles = [
- config.sops.secrets.wifi.path
+ config.sops.secrets.wifi.path
];
profiles = {
diff --git a/systems/aarch64-linux/pi4/sops.nix b/systems/aarch64-linux/pi4/sops.nix
index fb8cfb0..4021023 100755
--- a/systems/aarch64-linux/pi4/sops.nix
+++ b/systems/aarch64-linux/pi4/sops.nix
@@ -5,10 +5,10 @@ in
{
sops = {
defaultSopsFile = lib.mkForce ../../../secrets/pi4-secrets.yaml;
-# age = {
-# generateKey = true;
-# sshKeyPaths = [ "/etc/ssd/ssh_host_ed25519_key" ];
-# };
+ # age = {
+ # generateKey = true;
+ # sshKeyPaths = [ "/etc/ssd/ssh_host_ed25519_key" ];
+ # };
age.keyFile = "/home/matt/.config/sops/age/keys.txt";
validateSopsFiles = false;
# ------------------------------
diff --git a/systems/aarch64-linux/pi5/boot.nix b/systems/aarch64-linux/pi5/boot.nix
index 6de3571..a990c1c 100755
--- a/systems/aarch64-linux/pi5/boot.nix
+++ b/systems/aarch64-linux/pi5/boot.nix
@@ -7,21 +7,22 @@ in
loader.raspberry-pi.firmwarePackage = kernelBundle.raspberrypifw;
kernelPackages = kernelBundle.linuxPackages_rpi5;
};
-
+
hardware.raspberry-pi.config = {
- all = { # [all] conditional filter, https://www.raspberrypi.com/documentation/computers/config_txt.html#conditional-filters
+ all = {
+ # [all] conditional filter, https://www.raspberrypi.com/documentation/computers/config_txt.html#conditional-filters
options = {
# https://www.raspberrypi.com/documentation/computers/config_txt.html#enable_uart
# in conjunction with `console=serial0,115200` in kernel command line (`cmdline.txt`)
- # creates a serial console, accessible using GPIOs 14 and 15 (pins
+ # creates a serial console, accessible using GPIOs 14 and 15 (pins
# 8 and 10 on the 40-pin header)
enable_uart = {
enable = true;
value = true;
};
# https://www.raspberrypi.com/documentation/computers/config_txt.html#uart_2ndstage
- # enable debug logging to the UART, also automatically enables
+ # enable debug logging to the UART, also automatically enables
# UART logging in `start.elf`
uart_2ndstage = {
enable = true;
diff --git a/systems/aarch64-linux/pi5/default.nix b/systems/aarch64-linux/pi5/default.nix
index bff1d5f..4af6cb0 100644
--- a/systems/aarch64-linux/pi5/default.nix
+++ b/systems/aarch64-linux/pi5/default.nix
@@ -2,7 +2,13 @@
# your system. Help is available in the configuration.nix(5) man page, on
# https://search.nixos.org/options and in the NixOS manual (`nixos-help`).
-{ config, lib, pkgs, namespace, ... }:
+{
+ config,
+ lib,
+ pkgs,
+ namespace,
+ ...
+}:
let
user = "matt";
password = config.sops.secrets."pi5/matt-password".path;
@@ -42,7 +48,7 @@ in
nixpkgs = {
overlays = lib.mkAfter [
(self: super: {
- # This is used in (modulesPath + "/hardware/all-firmware.nix") when at least
+ # This is used in (modulesPath + "/hardware/all-firmware.nix") when at least
# enableRedistributableFirmware is enabled
# I know no easier way to override this package
inherit (kernelBundle) raspberrypiWirelessFirmware;
@@ -53,13 +59,15 @@ in
];
};
- system.nixos.tags = let
- cfg = config.boot.loader.raspberry-pi;
- in [
- "raspberry-pi-${cfg.variant}"
- cfg.bootloader
- config.boot.kernelPackages.kernel.version
- ];
+ system.nixos.tags =
+ let
+ cfg = config.boot.loader.raspberry-pi;
+ in
+ [
+ "raspberry-pi-${cfg.variant}"
+ cfg.bootloader
+ config.boot.kernelPackages.kernel.version
+ ];
systemd.services.btattach = {
before = [ "bluetooth.service" ];
@@ -90,7 +98,7 @@ in
mutableUsers = false;
users."${user}" = {
isNormalUser = true;
-# hashedPasswordFile = password;
+ # hashedPasswordFile = password;
password = lib.mkForce "BogieDudie1";
extraGroups = [
"wheel"
diff --git a/systems/aarch64-linux/pi5/networking.nix b/systems/aarch64-linux/pi5/networking.nix
index a5418c4..28a39ee 100755
--- a/systems/aarch64-linux/pi5/networking.nix
+++ b/systems/aarch64-linux/pi5/networking.nix
@@ -15,4 +15,4 @@ in
allowPing = true;
};
};
-}
\ No newline at end of file
+}
diff --git a/systems/x86_64-linux/desktop/boot.nix b/systems/x86_64-linux/desktop/boot.nix
index 793c606..5e8fd3f 100755
--- a/systems/x86_64-linux/desktop/boot.nix
+++ b/systems/x86_64-linux/desktop/boot.nix
@@ -1,7 +1,7 @@
{ config, pkgs, ... }:
let
kernel = pkgs.linuxPackages_cachyos;
- pkgsVersion = pkgs; #.unstable;
+ pkgsVersion = pkgs; # .unstable;
in
{
# Configure bootloader with lanzaboot and secureboot
@@ -12,7 +12,7 @@ in
"i2c-dev"
"ddcci_backlight"
];
- extraModulePackages = [config.boot.kernelPackages.ddcci-driver];
+ extraModulePackages = [ config.boot.kernelPackages.ddcci-driver ];
loader = {
efi = {
canTouchEfiVariables = true;
diff --git a/systems/x86_64-linux/desktop/configuration.nix b/systems/x86_64-linux/desktop/configuration.nix
index 9b912f4..a36fe9f 100755
--- a/systems/x86_64-linux/desktop/configuration.nix
+++ b/systems/x86_64-linux/desktop/configuration.nix
@@ -8,7 +8,7 @@
...
}:
let
- pkgsVersion = pkgs; #.unstable;
+ pkgsVersion = pkgs; # .unstable;
environmentVariables = {
STEAM_FORCE_DESKTOPUI_SCALING = "1.0";
GDK_SCALE = "1";
diff --git a/systems/x86_64-linux/desktop/default.nix b/systems/x86_64-linux/desktop/default.nix
index 6eff834..0598354 100644
--- a/systems/x86_64-linux/desktop/default.nix
+++ b/systems/x86_64-linux/desktop/default.nix
@@ -1,22 +1,23 @@
-{ # Snowfall Lib provides a customized `lib` instance with access to your flake's library
- # as well as the libraries available from your flake's inputs.
- # lib,
- # # An instance of `pkgs` with your overlays and packages applied is also available.
- # pkgs,
- # # You also have access to your flake's inputs.
- # inputs,
+# Snowfall Lib provides a customized `lib` instance with access to your flake's library
+{
+ # as well as the libraries available from your flake's inputs.
+ # lib,
+ # # An instance of `pkgs` with your overlays and packages applied is also available.
+ # pkgs,
+ # # You also have access to your flake's inputs.
+ # inputs,
- # Additional metadata is provided by Snowfall Lib.
- namespace, # The namespace used for your flake, defaulting to "internal" if not set.
- # system, # The system architecture for this host (eg. `x86_64-linux`).
- # target, # The Snowfall Lib target for this system (eg. `x86_64-iso`).
- # format, # A normalized name for the system target (eg. `iso`).
- # virtual, # A boolean to determine whether this system is a virtual target using nixos-generators.
- # systems, # An attribute map of your defined hosts.
+ # Additional metadata is provided by Snowfall Lib.
+ namespace, # The namespace used for your flake, defaulting to "internal" if not set.
+ # system, # The system architecture for this host (eg. `x86_64-linux`).
+ # target, # The Snowfall Lib target for this system (eg. `x86_64-iso`).
+ # format, # A normalized name for the system target (eg. `iso`).
+ # virtual, # A boolean to determine whether this system is a virtual target using nixos-generators.
+ # systems, # An attribute map of your defined hosts.
- # All other arguments come from the system system.
- config,
- ...
+ # All other arguments come from the system system.
+ config,
+ ...
}:
let
passwordFile = config.sops.secrets."desktop/matt_password".path;
@@ -31,7 +32,6 @@ in
./nix.nix
./sops.nix
-
./specialisations/hyprland
];
@@ -45,4 +45,4 @@ in
passwordFile = passwordFile;
};
};
-}
\ No newline at end of file
+}
diff --git a/systems/x86_64-linux/desktop/filesystems.nix b/systems/x86_64-linux/desktop/filesystems.nix
index 85a11ad..d27b4db 100755
--- a/systems/x86_64-linux/desktop/filesystems.nix
+++ b/systems/x86_64-linux/desktop/filesystems.nix
@@ -13,10 +13,10 @@ let
];
defaultLocalOptions = [
"compress=zstd"
-# "autodefrag"
+ # "autodefrag"
"nofail"
-# "x-systemd.automount"
-# "auto"
+ # "x-systemd.automount"
+ # "auto"
"rw"
];
in
diff --git a/systems/x86_64-linux/desktop/hardware-configuration.nix b/systems/x86_64-linux/desktop/hardware-configuration.nix
index e8e6155..81aaf96 100755
--- a/systems/x86_64-linux/desktop/hardware-configuration.nix
+++ b/systems/x86_64-linux/desktop/hardware-configuration.nix
@@ -12,7 +12,7 @@ let
"compress=zstd"
"autodefrag"
];
-in
+in
{
imports = [ (modulesPath + "/installer/scan/not-detected.nix") ];
diff --git a/systems/x86_64-linux/desktop/networking.nix b/systems/x86_64-linux/desktop/networking.nix
index 1f904d4..35b474b 100755
--- a/systems/x86_64-linux/desktop/networking.nix
+++ b/systems/x86_64-linux/desktop/networking.nix
@@ -43,4 +43,4 @@ in
};
};
};
-}
\ No newline at end of file
+}
diff --git a/systems/x86_64-linux/desktop/nix.nix b/systems/x86_64-linux/desktop/nix.nix
index 9fdd262..1e9faec 100644
--- a/systems/x86_64-linux/desktop/nix.nix
+++ b/systems/x86_64-linux/desktop/nix.nix
@@ -26,8 +26,13 @@ in
system = "x86_64-linux";
maxJobs = 10;
sshUser = "admin";
- supportedFeatures = [ "nixos-test" "benchmark" "big-parallel" "kvm" ];
+ supportedFeatures = [
+ "nixos-test"
+ "benchmark"
+ "big-parallel"
+ "kvm"
+ ];
}
];
};
-}
\ No newline at end of file
+}
diff --git a/systems/x86_64-linux/desktop/services/btrfs/default.nix b/systems/x86_64-linux/desktop/services/btrfs/default.nix
index 6790088..f94e228 100644
--- a/systems/x86_64-linux/desktop/services/btrfs/default.nix
+++ b/systems/x86_64-linux/desktop/services/btrfs/default.nix
@@ -10,4 +10,4 @@
"/home"
];
};
-}
\ No newline at end of file
+}
diff --git a/systems/x86_64-linux/desktop/services/keyd/default.nix b/systems/x86_64-linux/desktop/services/keyd/default.nix
index be809d4..0985bb5 100644
--- a/systems/x86_64-linux/desktop/services/keyd/default.nix
+++ b/systems/x86_64-linux/desktop/services/keyd/default.nix
@@ -17,9 +17,9 @@
"`" = "A-f6";
# App shortcuts
- c = "C-insert"; # Copy
- v = "S-insert"; # Paste
- x = "S-delete"; # Cut
+ c = "C-insert"; # Copy
+ v = "S-insert"; # Paste
+ x = "S-delete"; # Cut
"1" = "A-1";
"2" = "A-2";
@@ -46,4 +46,4 @@
};
};
};
-}
\ No newline at end of file
+}
diff --git a/systems/x86_64-linux/desktop/services/ratbagd/default.nix b/systems/x86_64-linux/desktop/services/ratbagd/default.nix
index c2d53a6..6d5aad8 100644
--- a/systems/x86_64-linux/desktop/services/ratbagd/default.nix
+++ b/systems/x86_64-linux/desktop/services/ratbagd/default.nix
@@ -1,4 +1,4 @@
{ lib, ... }:
{
services.ratbagd.enable = lib.mkDefault true;
-}
\ No newline at end of file
+}
diff --git a/systems/x86_64-linux/desktop/services/restic/default.nix b/systems/x86_64-linux/desktop/services/restic/default.nix
index fe7670a..928520c 100644
--- a/systems/x86_64-linux/desktop/services/restic/default.nix
+++ b/systems/x86_64-linux/desktop/services/restic/default.nix
@@ -50,4 +50,4 @@
];
};
};
-}
\ No newline at end of file
+}
diff --git a/systems/x86_64-linux/desktop/sops.nix b/systems/x86_64-linux/desktop/sops.nix
index 7b30e62..4680dc5 100755
--- a/systems/x86_64-linux/desktop/sops.nix
+++ b/systems/x86_64-linux/desktop/sops.nix
@@ -129,7 +129,7 @@ in
RESTIC_REST_USER=${config.sops.placeholder."desktop/restic/user"}
RESTIC_REST_PASSWORD=${config.sops.placeholder."desktop/restic/password"}
'';
- restartUnits = [
+ restartUnits = [
"restic-backups-jallen-nas.service"
"restic-backups-proton-drive.service"
];
diff --git a/systems/x86_64-linux/desktop/specialisations/hyprland/default.nix b/systems/x86_64-linux/desktop/specialisations/hyprland/default.nix
index 24e0672..e28d3cc 100755
--- a/systems/x86_64-linux/desktop/specialisations/hyprland/default.nix
+++ b/systems/x86_64-linux/desktop/specialisations/hyprland/default.nix
@@ -31,7 +31,7 @@ in
"${displayLeft.input},${displayLeft.resolution}@${displayLeft.refreshRate},0x0,1,bitdepth,10,cm,hdr,sdrbrightness,1.2,sdrsaturation,0.98"
"${displayRight.input},${displayRight.resolution}@${displayRight.refreshRate},3840x0,1,bitdepth,10,cm,hdr,sdrbrightness,1.5,sdrsaturation,0.98"
];
-
+
workspace = [
"name:firefox, monitor:${displayRight.input}, default:false, special, class:(.*firefox.*)"
"name:discord, monitor:${displayRight.input}, default:true, special, title:(.*vesktop.*), title:(.*Apple Music.*)"
diff --git a/systems/x86_64-linux/desktop/specialisations/hyprland/home/default.nix b/systems/x86_64-linux/desktop/specialisations/hyprland/home/default.nix
index 09c1ff3..2cfb04d 100644
--- a/systems/x86_64-linux/desktop/specialisations/hyprland/home/default.nix
+++ b/systems/x86_64-linux/desktop/specialisations/hyprland/home/default.nix
@@ -6,7 +6,7 @@ let
in
{
mjallen = {
- desktop.hyprland = {
+ desktop.hyprland = {
enable = true;
defaultApps = {
browser = pkgs.firefox;
@@ -60,7 +60,7 @@ in
tooltip = false;
exec = "waybar-hass --get_light light.living_room_lights";
interval = "once";
- format = "{text}";#"";
+ format = "{text}"; # "";
on-click = "waybar-hass --toggle_light light.living_room_lights";
return-type = "json";
};
@@ -83,4 +83,4 @@ in
wofi.enable = true;
};
};
-}
\ No newline at end of file
+}
diff --git a/systems/x86_64-linux/desktop/users.nix b/systems/x86_64-linux/desktop/users.nix
index 3dc5878..8df4f8a 100644
--- a/systems/x86_64-linux/desktop/users.nix
+++ b/systems/x86_64-linux/desktop/users.nix
@@ -1,9 +1,14 @@
-{ config, namespace, lib, ... }:
+{
+ config,
+ namespace,
+ lib,
+ ...
+}:
let
passwordFile = config.sops.secrets."desktop/matt_password".path;
-in
+in
{
${namespace}.user = {
passwordFile = lib.mkForce passwordFile;
};
-}
\ No newline at end of file
+}
diff --git a/systems/x86_64-linux/desktop/wifi-fixer.nix b/systems/x86_64-linux/desktop/wifi-fixer.nix
index 90bddfa..2bbece6 100644
--- a/systems/x86_64-linux/desktop/wifi-fixer.nix
+++ b/systems/x86_64-linux/desktop/wifi-fixer.nix
@@ -1,5 +1,5 @@
{ lib, pkgs, ... }:
-let
+let
fixWifiScript = pkgs.writeScriptBin "fix-wifi" ''
#!/usr/bin/env python3
@@ -75,7 +75,7 @@ let
if __name__ == "__main__":
main()
'';
- pkgsVersion = pkgs; #.unstable;
+ pkgsVersion = pkgs; # .unstable;
in
{
systemd = {
@@ -98,4 +98,4 @@ in
};
};
};
-}
\ No newline at end of file
+}
diff --git a/systems/x86_64-linux/nas/apps.nix b/systems/x86_64-linux/nas/apps.nix
index 8d999fb..ce73418 100755
--- a/systems/x86_64-linux/nas/apps.nix
+++ b/systems/x86_64-linux/nas/apps.nix
@@ -23,7 +23,10 @@
reverseProxy = {
enable = true;
host = "actual.mjallen.dev";
- middlewares = [ "crowdsec" "whitelist-geoblock" ];
+ middlewares = [
+ "crowdsec"
+ "whitelist-geoblock"
+ ];
};
};
@@ -78,7 +81,10 @@
reverseProxy = {
enable = true;
host = "gitea.mjallen.dev";
- middlewares = [ "crowdsec" "whitelist-geoblock" ];
+ middlewares = [
+ "crowdsec"
+ "whitelist-geoblock"
+ ];
};
};
diff --git a/systems/x86_64-linux/nas/apps/options.nix b/systems/x86_64-linux/nas/apps/options.nix
index 96394ce..bfa2664 100644
--- a/systems/x86_64-linux/nas/apps/options.nix
+++ b/systems/x86_64-linux/nas/apps/options.nix
@@ -4,43 +4,48 @@ let
in
{
options.nas-apps = mkOption {
- type = types.attrsOf (types.submodule ({ config, name, ... }: {
- options = {
- enable = mkOption {
- type = types.bool;
- default = false;
- };
+ type = types.attrsOf (
+ types.submodule (
+ { config, name, ... }:
+ {
+ options = {
+ enable = mkOption {
+ type = types.bool;
+ default = false;
+ };
- port = mkOption {
- type = types.int;
- default = 80;
- };
+ port = mkOption {
+ type = types.int;
+ default = 80;
+ };
- localAddress = mkOption {
- type = types.str;
- default = "127.0.0.1";
- };
+ localAddress = mkOption {
+ type = types.str;
+ default = "127.0.0.1";
+ };
- dataDir = mkOption {
- type = types.str;
- default = "";
- };
+ dataDir = mkOption {
+ type = types.str;
+ default = "";
+ };
- reverseProxy = {
- enable = mkOption {
- type = types.bool;
- default = false;
+ reverseProxy = {
+ enable = mkOption {
+ type = types.bool;
+ default = false;
+ };
+ host = mkOption {
+ type = types.str;
+ default = "";
+ };
+ middlewares = mkOption {
+ type = with types; listOf str;
+ default = [ ];
+ };
+ };
};
- host = mkOption {
- type = types.str;
- default = "";
- };
- middlewares = mkOption {
- type = with types; listOf str;
- default = [ ];
- };
- };
- };
- }));
+ }
+ )
+ );
};
}
diff --git a/systems/x86_64-linux/nas/default.nix b/systems/x86_64-linux/nas/default.nix
index f5a52de..410d008 100755
--- a/systems/x86_64-linux/nas/default.nix
+++ b/systems/x86_64-linux/nas/default.nix
@@ -207,7 +207,9 @@
];
};
};
- nixpkgs.config.allowUnfreePredicate = pkg: builtins.elem (lib.getName pkg) [
- "vscode-extension-github-copilot"
- ];
+ nixpkgs.config.allowUnfreePredicate =
+ pkg:
+ builtins.elem (lib.getName pkg) [
+ "vscode-extension-github-copilot"
+ ];
}
diff --git a/systems/x86_64-linux/nas/grafana.nix b/systems/x86_64-linux/nas/grafana.nix
index 6dcdbb5..707baf7 100755
--- a/systems/x86_64-linux/nas/grafana.nix
+++ b/systems/x86_64-linux/nas/grafana.nix
@@ -14,7 +14,7 @@ in
"diskstats"
"meminfo"
"cpu"
- "systemd" # Ensures systemd collector is enabled
+ "systemd" # Ensures systemd collector is enabled
"processes"
];
extraFlags = [
@@ -40,15 +40,19 @@ in
scrapeConfigs = [
{
job_name = "node";
- static_configs = [{
- targets = [ "localhost:${toString config.services.prometheus.exporters.node.port}" ];
- }];
+ static_configs = [
+ {
+ targets = [ "localhost:${toString config.services.prometheus.exporters.node.port}" ];
+ }
+ ];
}
{
job_name = "traefik";
- static_configs = [{
- targets = [ "localhost:8082" ];
- }];
+ static_configs = [
+ {
+ targets = [ "localhost:8082" ];
+ }
+ ];
}
];
};
@@ -66,15 +70,17 @@ in
provision = {
enable = true;
- datasources.settings.datasources = [{
- name = "Prometheus";
- type = "prometheus";
- access = "proxy";
- url = "http://localhost:${toString config.services.prometheus.port}";
- }];
+ datasources.settings.datasources = [
+ {
+ name = "Prometheus";
+ type = "prometheus";
+ access = "proxy";
+ url = "http://localhost:${toString config.services.prometheus.port}";
+ }
+ ];
};
};
};
# Open firewall ports for Grafana
networking.firewall.allowedTCPPorts = [ 9999 ];
-}
\ No newline at end of file
+}
diff --git a/systems/x86_64-linux/nas/nix-serve.nix b/systems/x86_64-linux/nas/nix-serve.nix
index 00590fd..322882c 100755
--- a/systems/x86_64-linux/nas/nix-serve.nix
+++ b/systems/x86_64-linux/nas/nix-serve.nix
@@ -1,7 +1,7 @@
{ config, pkgs, ... }:
let
nix-build-mail = pkgs.writeShellScript "echo -e \"Content-Type: text/plain\\r\\nSubject: NixOS cache rebuild failed\\r\\n\\r\\nThe nix-rebuild-cache service failed at $(date).\" | sendmail jalle008@proton.me";
-in
+in
{
# "https://cache.mjallen.dev"
# "cache.mjallen.dev-1:IzFmKCd8/gggI6lcCXsW65qQwiCLGFFN9t9s2iw7Lvc="
@@ -9,10 +9,10 @@ in
enable = false;
package = pkgs.nix-serve-ng;
secretKeyFile = "/etc/nix/cache-priv-key.pem";
- port = 5000; # Choose your preferred port
+ port = 5000; # Choose your preferred port
openFirewall = true;
};
-
+
services.atticd = {
enable = true;
environmentFile = config.sops.secrets."jallen-nas/attic-key".path;
@@ -42,11 +42,11 @@ in
attic-client
];
script = ''
- #!/usr/bin/env bash
- attic watch-store nas-cache
+ #!/usr/bin/env bash
+ attic watch-store nas-cache
'';
};
-
+
nix-rebuild-cache-desktop = {
enable = true;
description = "Rebuild desktop NixOS configurations for cache";
@@ -71,12 +71,12 @@ in
];
script = ''
#!/usr/bin/env bash
-
+
# Pull latest changes if in a git repo
if [ -d .git ]; then
git pull || echo "Warning: Could not pull latest changes"
fi
-
+
echo "Starting build of matt-nixos at $(date)"
if nix flake update desktop-nixpkgs desktop-chaotic desktop-home-manager desktop-impermanence desktop-lanzaboote desktop-nixos-hardware desktop-sops-nix desktop-steam-rom-manager nixpkgs-unstable nixpkgs-stable nix-darwin; then
echo "matt-nixos flake updated successfully at $(date)"
@@ -117,12 +117,12 @@ in
];
script = ''
#!/usr/bin/env bash
-
+
# Pull latest changes if in a git repo
if [ -d .git ]; then
git pull || echo "Warning: Could not pull latest changes"
fi
-
+
echo "Starting build of steamdeck at $(date)"
if nix flake update steamdeck-nixpkgs steamdeck-chaotic steamdeck-home-manager steamdeck-impermanence steamdeck-jovian steamdeck-lanzaboote steamdeck-nixos-hardware steamdeck-sops-nix steamdeck-steam-rom-manager; then
echo "steamdeck flake updated successfully at $(date)"
@@ -164,12 +164,12 @@ in
];
script = ''
#!/usr/bin/env bash
-
+
# Pull latest changes if in a git repo
if [ -d .git ]; then
git pull || echo "Warning: Could not pull latest changes"
fi
-
+
echo "Starting build of pi4 at $(date)"
if nix flake update pi4-nixpkgs pi4-home-manager pi4-impermanence pi4-sops-nix pi4-nixos-hardware pi4-nixos-raspberrypi pi4-disko; then
echo "pi4 flake updated successfully at $(date)"
@@ -210,12 +210,12 @@ in
];
script = ''
#!/usr/bin/env bash
-
+
# Pull latest changes if in a git repo
if [ -d .git ]; then
git pull || echo "Warning: Could not pull latest changes"
fi
-
+
echo "Starting build of pi5 at $(date)"
if nix flake update pi5-nixpkgs pi5-home-manager pi5-impermanence pi5-nixos-hardware pi5-sops-nix nixos-raspberrypi; then
echo "pi5 flake updated successfully at $(date)"
@@ -256,12 +256,12 @@ in
];
script = ''
#!/usr/bin/env bash
-
+
# Pull latest changes if in a git repo
if [ -d .git ]; then
git pull || echo "Warning: Could not pull latest changes"
fi
-
+
echo "Starting build of jallen-nas at $(date)"
if nix flake update nas-nixpkgs nas-authentik-nix nas-cosmic nas-crowdsec nas-home-manager nas-impermanence nas-lanzaboote nas-nixos-hardware nas-sops-nix; then
echo "jallen-nas flake updated successfully at $(date)"
@@ -339,7 +339,12 @@ in
system = "aarch64-linux";
maxJobs = 4;
sshUser = "matt";
- supportedFeatures = [ "nixos-test" "benchmark" "big-parallel" "kvm" ];
+ supportedFeatures = [
+ "nixos-test"
+ "benchmark"
+ "big-parallel"
+ "kvm"
+ ];
}
];
};
diff --git a/systems/x86_64-linux/nas/nixpkgs.nix b/systems/x86_64-linux/nas/nixpkgs.nix
index 2b3df9e..3a7de92 100755
--- a/systems/x86_64-linux/nas/nixpkgs.nix
+++ b/systems/x86_64-linux/nas/nixpkgs.nix
@@ -8,7 +8,8 @@
# enable cuda support
cudaSupport = true;
- allowUnfreePredicate = p:
+ allowUnfreePredicate =
+ p:
builtins.all (
license:
license.free
@@ -21,4 +22,4 @@
) (if builtins.isList p.meta.license then p.meta.license else [ p.meta.license ]);
};
};
-}
\ No newline at end of file
+}
diff --git a/systems/x86_64-linux/nas/services.nix b/systems/x86_64-linux/nas/services.nix
index 0fc6b46..f4545c7 100755
--- a/systems/x86_64-linux/nas/services.nix
+++ b/systems/x86_64-linux/nas/services.nix
@@ -176,7 +176,7 @@ in
htpasswd-file = "/media/nas/main/backup/restic/.htpasswd";
};
};
-
+
systemd.user.services = {
protonmail-bridge = {
description = "Protonmail Bridge";
@@ -218,7 +218,7 @@ in
# This ensures the service only runs when the filesystem is mounted
requires = [ "local-fs.target" ];
after = [ "local-fs.target" ];
-
+
# The actual balance command
script = ''
# Start with lower usage to handle the most fragmented blocks first
@@ -229,14 +229,14 @@ in
serviceConfig = {
Type = "oneshot";
- Nice = 19; # Lowest CPU priority
- IOSchedulingClass = "idle"; # Lowest I/O priority
+ Nice = 19; # Lowest CPU priority
+ IOSchedulingClass = "idle"; # Lowest I/O priority
# Prevent multiple instances from running simultaneously
ExecStartPre = "${pkgs.coreutils}/bin/rm -f /var/run/btrfs-balance.stamp";
ExecStopPost = "${pkgs.coreutils}/bin/touch /var/run/btrfs-balance.stamp";
};
};
-
+
system-update-check = {
description = "Check for system configuration updates";
@@ -342,7 +342,7 @@ in
btrfs-balance = {
description = "Timer for BTRFS Balance Service";
wantedBy = [ "timers.target" ];
-
+
timerConfig = {
# Run weekly on Sunday at 2am
OnCalendar = "Sun *-*-* 02:00:00";
@@ -355,11 +355,11 @@ in
system-update-check = {
description = "Timer for system configuration updates";
wantedBy = [ "timers.target" ];
-
+
# Timer configuration
timerConfig = {
- OnCalendar = "daily"; # Check every day
- Persistent = true; # Run immediately if last run was missed
+ OnCalendar = "daily"; # Check every day
+ Persistent = true; # Run immediately if last run was missed
Unit = "system-update-check.service";
};
};
diff --git a/systems/x86_64-linux/nas/settings.nix b/systems/x86_64-linux/nas/settings.nix
index c626004..4c45353 100644
--- a/systems/x86_64-linux/nas/settings.nix
+++ b/systems/x86_64-linux/nas/settings.nix
@@ -2,4 +2,4 @@
username = "admin";
hostAddress = "10.0.1.3";
hostName = "jallen-nas";
-}
\ No newline at end of file
+}
diff --git a/systems/x86_64-linux/nas/sops.nix b/systems/x86_64-linux/nas/sops.nix
index e2cf4d2..5525aab 100755
--- a/systems/x86_64-linux/nas/sops.nix
+++ b/systems/x86_64-linux/nas/sops.nix
@@ -31,7 +31,7 @@ in
owner = config.users.users."${user}".name;
group = config.users.users."${user}".group;
};
-
+
"wifi" = {
sopsFile = ../../../secrets/secrets.yaml;
};
@@ -39,7 +39,7 @@ in
# ------------------------------
# ups
# ------------------------------
-
+
"jallen-nas/ups_password" = {
mode = "0777";
restartUnits = [
@@ -234,7 +234,7 @@ in
mode = "0640";
};
"jallen-nas/attic-key" = {
-# owner = "atticd";
+ # owner = "atticd";
};
};
@@ -264,7 +264,11 @@ in
PAPERLESS_SECRET = ${config.sops.placeholder."jallen-nas/paperless/secret"}
PAPERLESS_ENABLE_ALLAUTH = true
PAPERLESS_APPS = "allauth.socialaccount.providers.openid_connect"
- PAPERLESS_SOCIALACCOUNT_PROVIDERS = {"openid_connect":{"OAUTH_PKCE_ENABLED":true,"APPS":[{"provider_id":"authentik","name":"authentik","client_id":"${config.sops.placeholder."jallen-nas/paperless/authentik-client-id"}","secret":"${config.sops.placeholder."jallen-nas/paperless/authentik-client-secret"}","settings":{"server_url":"https://authentik.mjallen.dev/application/o/paperless/.well-known/openid-configuration"}}]}}
+ PAPERLESS_SOCIALACCOUNT_PROVIDERS = {"openid_connect":{"OAUTH_PKCE_ENABLED":true,"APPS":[{"provider_id":"authentik","name":"authentik","client_id":"${
+ config.sops.placeholder."jallen-nas/paperless/authentik-client-id"
+ }","secret":"${
+ config.sops.placeholder."jallen-nas/paperless/authentik-client-secret"
+ }","settings":{"server_url":"https://authentik.mjallen.dev/application/o/paperless/.well-known/openid-configuration"}}]}}
'';
mode = "0650";
owner = config.users.users."${user}".name;
diff --git a/systems/x86_64-linux/nas/users.nix b/systems/x86_64-linux/nas/users.nix
index 147e3ad..9ebc422 100755
--- a/systems/x86_64-linux/nas/users.nix
+++ b/systems/x86_64-linux/nas/users.nix
@@ -1,4 +1,9 @@
-{ pkgs, config, lib, ... }:
+{
+ pkgs,
+ config,
+ lib,
+ ...
+}:
let
user = "admin";
passwordFile = config.sops.secrets."jallen-nas/admin_password".path;
@@ -93,4 +98,4 @@ in
users.root.shell = pkgs.zsh;
};
-}
\ No newline at end of file
+}
diff --git a/systems/x86_64-linux/nuc/sops.nix b/systems/x86_64-linux/nuc/sops.nix
index 347c437..37f44b9 100755
--- a/systems/x86_64-linux/nuc/sops.nix
+++ b/systems/x86_64-linux/nuc/sops.nix
@@ -25,7 +25,7 @@ in
# Secrets
# ------------------------------
secrets = {
-
+
"wifi" = {
sopsFile = ../../../secrets/secrets.yaml;
};
diff --git a/systems/x86_64-linux/nuc/users.nix b/systems/x86_64-linux/nuc/users.nix
index 7c73234..13c5f75 100755
--- a/systems/x86_64-linux/nuc/users.nix
+++ b/systems/x86_64-linux/nuc/users.nix
@@ -43,4 +43,4 @@ in
};
};
};
-}
\ No newline at end of file
+}
diff --git a/systems/x86_64-linux/steamdeck/boot.nix b/systems/x86_64-linux/steamdeck/boot.nix
index 8b5e7cb..719c382 100755
--- a/systems/x86_64-linux/steamdeck/boot.nix
+++ b/systems/x86_64-linux/steamdeck/boot.nix
@@ -28,8 +28,8 @@ in
lanzaboote = {
settings = {
console-mode = "max";
- timeout = "0";
- };
+ timeout = "0";
+ };
};
plymouth = {
@@ -53,10 +53,10 @@ in
# Disable CPU mitigations messages
"mitigations=off"
];
-
+
bootspec.enable = true;
};
-
+
# Further reduce systemd output
systemd = {
services.systemd-udev-settle.enable = false;
diff --git a/systems/x86_64-linux/steamdeck/configuration.nix b/systems/x86_64-linux/steamdeck/configuration.nix
index 536dd1c..54ac6ed 100755
--- a/systems/x86_64-linux/steamdeck/configuration.nix
+++ b/systems/x86_64-linux/steamdeck/configuration.nix
@@ -2,7 +2,13 @@
# your system. Help is available in the configuration.nix(5) man page, on
# https://search.nixos.org/options and in the NixOS manual (`nixos-help`).
-{ config, lib, pkgs, namespace, ... }:
+{
+ config,
+ lib,
+ pkgs,
+ namespace,
+ ...
+}:
{
nix = {
@@ -22,7 +28,12 @@
system = "x86_64-linux";
maxJobs = 10;
sshUser = "admin";
- supportedFeatures = [ "nixos-test" "benchmark" "big-parallel" "kvm" ];
+ supportedFeatures = [
+ "nixos-test"
+ "benchmark"
+ "big-parallel"
+ "kvm"
+ ];
}
];
};
@@ -80,4 +91,3 @@
};
};
}
-
diff --git a/systems/x86_64-linux/steamdeck/default.nix b/systems/x86_64-linux/steamdeck/default.nix
index 287e02e..ac5cc5c 100644
--- a/systems/x86_64-linux/steamdeck/default.nix
+++ b/systems/x86_64-linux/steamdeck/default.nix
@@ -1,24 +1,25 @@
-{ # Snowfall Lib provides a customized `lib` instance with access to your flake's library
- # as well as the libraries available from your flake's inputs.
- lib,
- # An instance of `pkgs` with your overlays and packages applied is also available.
- pkgs,
- # You also have access to your flake's inputs.
- inputs,
+# Snowfall Lib provides a customized `lib` instance with access to your flake's library
+{
+ # as well as the libraries available from your flake's inputs.
+ lib,
+ # An instance of `pkgs` with your overlays and packages applied is also available.
+ pkgs,
+ # You also have access to your flake's inputs.
+ inputs,
- # Additional metadata is provided by Snowfall Lib.
- namespace, # The namespace used for your flake, defaulting to "internal" if not set.
- system, # The system architecture for this host (eg. `x86_64-linux`).
- target, # The Snowfall Lib target for this system (eg. `x86_64-iso`).
- format, # A normalized name for the system target (eg. `iso`).
- virtual, # A boolean to determine whether this system is a virtual target using nixos-generators.
- systems, # An attribute map of your defined hosts.
+ # Additional metadata is provided by Snowfall Lib.
+ namespace, # The namespace used for your flake, defaulting to "internal" if not set.
+ system, # The system architecture for this host (eg. `x86_64-linux`).
+ target, # The Snowfall Lib target for this system (eg. `x86_64-iso`).
+ format, # A normalized name for the system target (eg. `iso`).
+ virtual, # A boolean to determine whether this system is a virtual target using nixos-generators.
+ systems, # An attribute map of your defined hosts.
- # All other arguments come from the system system.
- config,
- ...
- }:
- {
+ # All other arguments come from the system system.
+ config,
+ ...
+}:
+{
imports = [
./boot.nix
./configuration.nix
@@ -26,7 +27,7 @@
./networking.nix
./sops.nix
];
-
+
${namespace} = {
hardware.disko.enable = true;
bootloader.lanzaboote.enable = true;
@@ -36,4 +37,4 @@
};
network.hostName = "steamdeck";
};
-}
\ No newline at end of file
+}
diff --git a/systems/x86_64-linux/steamdeck/jovian.nix b/systems/x86_64-linux/steamdeck/jovian.nix
index 2fabf8b..6984e52 100755
--- a/systems/x86_64-linux/steamdeck/jovian.nix
+++ b/systems/x86_64-linux/steamdeck/jovian.nix
@@ -21,4 +21,4 @@
hardware.has.amd.gpu = true;
};
-}
\ No newline at end of file
+}
diff --git a/systems/x86_64-linux/steamdeck/sops.nix b/systems/x86_64-linux/steamdeck/sops.nix
index 519bc2b..77fdf5b 100755
--- a/systems/x86_64-linux/steamdeck/sops.nix
+++ b/systems/x86_64-linux/steamdeck/sops.nix
@@ -1,4 +1,9 @@
-{ config, lib, namespace, ... }:
+{
+ config,
+ lib,
+ namespace,
+ ...
+}:
let
user = config.${namespace}.user.name;
in
@@ -67,37 +72,37 @@ in
# ------------------------------
"secureboot/GUID" = {
sopsFile = (lib.snowfall.fs.get-file "secrets/secrets.yaml");
-# path = "/etc/secureboot/GUID";
+ # path = "/etc/secureboot/GUID";
mode = "0600";
};
"secureboot/keys/db-key" = {
sopsFile = (lib.snowfall.fs.get-file "secrets/secrets.yaml");
-# path = "/etc/secureboot/keys/db/db.key";
+ # path = "/etc/secureboot/keys/db/db.key";
mode = "0600";
};
"secureboot/keys/db-pem" = {
sopsFile = (lib.snowfall.fs.get-file "secrets/secrets.yaml");
-# path = "/etc/secureboot/keys/db/db.pem";
+ # path = "/etc/secureboot/keys/db/db.pem";
mode = "0600";
};
"secureboot/keys/KEK-key" = {
sopsFile = (lib.snowfall.fs.get-file "secrets/secrets.yaml");
-# path = "/etc/secureboot/keys/KEK/KEK.key";
+ # path = "/etc/secureboot/keys/KEK/KEK.key";
mode = "0600";
};
"secureboot/keys/KEK-pem" = {
sopsFile = (lib.snowfall.fs.get-file "secrets/secrets.yaml");
-# path = "/etc/secureboot/keys/KEK/KEK.pem";
+ # path = "/etc/secureboot/keys/KEK/KEK.pem";
mode = "0600";
};
"secureboot/keys/PK-key" = {
sopsFile = (lib.snowfall.fs.get-file "secrets/secrets.yaml");
-# path = "/etc/secureboot/keys/PK/PK.key";
+ # path = "/etc/secureboot/keys/PK/PK.key";
mode = "0600";
};
"secureboot/keys/PK-pem" = {
sopsFile = (lib.snowfall.fs.get-file "secrets/secrets.yaml");
-# path = "/etc/secureboot/keys/PK/PK.pem";
+ # path = "/etc/secureboot/keys/PK/PK.pem";
mode = "0600";
};
};
diff --git a/treefmt.nix b/treefmt.nix
index 81fd4ee..600cdb0 100644
--- a/treefmt.nix
+++ b/treefmt.nix
@@ -2,17 +2,17 @@
projectRootFile = "flake.nix";
programs = {
- actionlint.enable = true;
+ actionlint.enable = false;
biome = {
- enable = true;
+ enable = false;
settings.formatter.formatWithErrors = true;
};
- clang-format.enable = true;
+ clang-format.enable = false;
deadnix = {
enable = true;
};
deno = {
- enable = true;
+ enable = false;
# Using biome for these
excludes = [
"*.ts"
@@ -21,26 +21,27 @@
"*.jsonc"
];
};
- fantomas.enable = true;
- fish_indent.enable = true;
- gofmt.enable = true;
- isort.enable = true;
+ fantomas.enable = false;
+ fish_indent.enable = false;
+ gofmt.enable = false;
+ isort.enable = false;
nixfmt.enable = true;
# nufmt.enable = true;
- ruff-check.enable = true;
- ruff-format.enable = true;
- rustfmt.enable = true;
+ ruff-check.enable = false;
+ ruff-format.enable = false;
+ rustfmt.enable = false;
shfmt = {
- enable = true;
+ enable = false;
indent_size = 4;
};
- statix.enable = true;
- stylua.enable = true;
- taplo.enable = true;
+ statix.enable = false;
+ stylua.enable = false;
+ taplo.enable = false;
yamlfmt.enable = true;
};
settings = {
+ fail-on-change = false;
global.excludes = [
"*.editorconfig"
"*.envrc"
@@ -77,6 +78,6 @@
"*makefile"
];
- formatter.ruff-format.options = [ "--isolated" ];
+ #formatter.ruff-format.options = [ "--isolated" ];
};
-}
\ No newline at end of file
+}