summaryrefslogtreecommitdiff
path: root/modules
diff options
context:
space:
mode:
Diffstat (limited to 'modules')
-rw-r--r--modules/hosts/tiamat/hardware.nix52
-rw-r--r--modules/hosts/tiamat/tiamat.nix17
-rw-r--r--modules/nixosModules/desktop/default.nix10
-rw-r--r--modules/nixosModules/desktop/mullvad.nix9
-rw-r--r--modules/nixosModules/desktop/pipewire.nix2
-rw-r--r--modules/nixosModules/desktop/tailscale.nix19
-rw-r--r--modules/nixosModules/server/default.nix5
-rw-r--r--modules/nixosModules/server/navidrome.nix4
-rw-r--r--modules/nixosModules/server/tailscale.nix9
-rw-r--r--modules/packages/environment.nix2
-rw-r--r--modules/packages/fish.nix6
-rw-r--r--modules/packages/kitty.nix1
-rw-r--r--modules/packages/niri/hosts/tiamat.nix15
-rw-r--r--modules/packages/niri/package.nix9
-rw-r--r--modules/packages/niri/settings.nix71
-rw-r--r--modules/packages/noctalia/noctalia.json31
-rw-r--r--modules/packages/nvf/_nvfConfig.nix12
-rw-r--r--modules/packages/nvf/package.nix14
-rw-r--r--modules/packages/zen-browser.nix6
19 files changed, 205 insertions, 89 deletions
diff --git a/modules/hosts/tiamat/hardware.nix b/modules/hosts/tiamat/hardware.nix
index eadfd00..e9f84f4 100644
--- a/modules/hosts/tiamat/hardware.nix
+++ b/modules/hosts/tiamat/hardware.nix
@@ -1,28 +1,38 @@
-{ self, inputs, ... }: {
- flake.nixosModules.tiamatHardware = { config, lib, pkgs, modulesPath, ... }: {
- imports =
- [ (modulesPath + "/installer/scan/not-detected.nix")
- ];
+{
+ self,
+ inputs,
+ ...
+}: {
+ flake.nixosModules.tiamatHardware = {
+ config,
+ lib,
+ pkgs,
+ modulesPath,
+ ...
+ }: {
+ imports = [
+ (modulesPath + "/installer/scan/not-detected.nix")
+ ];
- boot.initrd.availableKernelModules = [ "nvme" "xhci_pci" "thunderbolt" "usb_storage" "uas" "sd_mod" ];
- boot.initrd.kernelModules = [ ];
- boot.kernelModules = [ "kvm-amd" ];
- boot.extraModulePackages = [ ];
+ boot.initrd.availableKernelModules = ["nvme" "xhci_pci" "thunderbolt" "usb_storage" "uas" "sd_mod"];
+ boot.initrd.kernelModules = [];
+ boot.kernelModules = ["kvm-amd"];
+ boot.extraModulePackages = [];
- fileSystems."/" =
- { device = "/dev/disk/by-uuid/0983bf69-0f71-4c49-885b-0b5c09a19429";
- fsType = "ext4";
- };
+ fileSystems."/" = {
+ device = "/dev/disk/by-uuid/0983bf69-0f71-4c49-885b-0b5c09a19429";
+ fsType = "ext4";
+ };
- fileSystems."/boot" =
- { device = "/dev/disk/by-uuid/756C-8B9B";
- fsType = "vfat";
- options = [ "fmask=0077" "dmask=0077" ];
- };
+ fileSystems."/boot" = {
+ device = "/dev/disk/by-uuid/756C-8B9B";
+ fsType = "vfat";
+ options = ["fmask=0077" "dmask=0077"];
+ };
- swapDevices =
- [ { device = "/dev/disk/by-uuid/50dd07e0-bf93-450c-a91b-aa73a18a8224"; }
- ];
+ swapDevices = [
+ {device = "/dev/disk/by-uuid/50dd07e0-bf93-450c-a91b-aa73a18a8224";}
+ ];
# Enables DHCP on each ethernet and wireless interface. In case of scripted networking
# (the default) this is the recommended approach. When using systemd-networkd it's
diff --git a/modules/hosts/tiamat/tiamat.nix b/modules/hosts/tiamat/tiamat.nix
index 317df61..d41ce40 100644
--- a/modules/hosts/tiamat/tiamat.nix
+++ b/modules/hosts/tiamat/tiamat.nix
@@ -1,6 +1,8 @@
-{ inputs, self, ... }:
-
{
+ inputs,
+ self,
+ ...
+}: {
imports = [
inputs.home-manager.flakeModules.home-manager
];
@@ -16,22 +18,29 @@
self.nixosModules.tiamatNiri
self.nixosModules.desktop
+ self.nixosModules.nasClient
];
};
- flake.nixosModules.tiamat = { pkgs, ... }: {
+ flake.nixosModules.tiamat = {pkgs, ...}: {
hostOptions = {
host.name = "tiamat";
user.name = "jck";
user.email = "jckrinsky@gmail.com";
};
+ boot.kernelParams = ["quiet"];
+
hardware.graphics = {
enable = true;
enable32Bit = true;
};
- networking.nameservers = [ "1.1.1.1" "9.9.9.9" ];
+ boot.initrd.kernelModules = ["amdgpu"];
+
+ hardware.cpu.amd.updateMicrocode = true;
+
+ networking.nameservers = ["1.1.1.1" "9.9.9.9"];
services.automatic-timezoned.enable = true;
diff --git a/modules/nixosModules/desktop/default.nix b/modules/nixosModules/desktop/default.nix
index 411c361..3c48310 100644
--- a/modules/nixosModules/desktop/default.nix
+++ b/modules/nixosModules/desktop/default.nix
@@ -1,4 +1,8 @@
-{ self, inputs, ... }: {
+{
+ self,
+ inputs,
+ ...
+}: {
flake.nixosModules.desktop = {pkgs, ...}: {
imports = [
self.nixosModules.gaming
@@ -10,7 +14,7 @@
];
hardware.bluetooth.enable = true;
- environment.systemPackages = [
+ environment.systemPackages = [
self.packages.${pkgs.stdenv.hostPlatform.system}.zen-browser
pkgs.bitwarden-desktop
@@ -30,6 +34,8 @@
pkgs.wineWow64Packages.stable
];
+ boot.plymouth.enable = true;
+
programs.nix-ld.enable = true;
services.upower.enable = true;
diff --git a/modules/nixosModules/desktop/mullvad.nix b/modules/nixosModules/desktop/mullvad.nix
index 9f2892c..0ac8fb9 100644
--- a/modules/nixosModules/desktop/mullvad.nix
+++ b/modules/nixosModules/desktop/mullvad.nix
@@ -1,22 +1,25 @@
{lib, ...}: {
- flake.nixosModules.mullvad = { pkgs, ... }: {
+ flake.nixosModules.mullvad = {pkgs, ...}: {
services.mullvad-vpn = {
enable = true;
package = pkgs.mullvad-vpn;
enableExcludeWrapper = true;
};
+ services.resolved.enable = true;
+
# allow tailscale traffic through
+ networking.nftables.enable = true;
networking.nftables.tables.mullvad_tailscale = {
content = ''
chain output {
- type route hook output priority 0; policy accept;
+ type route hook output priority -100; policy accept;
ip daddr 100.64.0.0/10 ct mark set 0x00000f41 meta mark set 0x6d6f6c65;
}
'';
family = "inet";
};
- systemd.services.tailscaled.serviceConfig.Environment = [ "TS_DEBUG_FIREWALL_MODE=nftables" ];
+ systemd.services.tailscaled.serviceConfig.Environment = ["TS_DEBUG_FIREWALL_MODE=nftables"];
};
}
diff --git a/modules/nixosModules/desktop/pipewire.nix b/modules/nixosModules/desktop/pipewire.nix
index bf05dbd..ec663fb 100644
--- a/modules/nixosModules/desktop/pipewire.nix
+++ b/modules/nixosModules/desktop/pipewire.nix
@@ -9,6 +9,6 @@
socketActivation = true;
};
- environment.systemPackages = [ pkgs.pwvucontrol ];
+ environment.systemPackages = [pkgs.pwvucontrol];
};
}
diff --git a/modules/nixosModules/desktop/tailscale.nix b/modules/nixosModules/desktop/tailscale.nix
index f2ab9fc..a9d2968 100644
--- a/modules/nixosModules/desktop/tailscale.nix
+++ b/modules/nixosModules/desktop/tailscale.nix
@@ -1,22 +1,23 @@
-{ lib, ... }: {
- flake.nixosModules.tailscaleDesktop = { config, ... }: {
+{lib, ...}: {
+ flake.nixosModules.tailscaleDesktop = {config, ...}: {
services.tailscale = {
enable = true;
useRoutingFeatures = "client";
openFirewall = true;
+ extraUpFlags = [ "--accept-dns=false" ];
};
-
+
networking.firewall = {
- enable = lib.mkDefault true;
- trustedInterfaces = [ "tailscale0" ];
- allowedUDPPorts = [ config.services.tailscale.port ];
+ enable = lib.mkDefault false;
+ trustedInterfaces = ["tailscale0"];
+ allowedUDPPorts = [config.services.tailscale.port];
};
};
- flake.nixosModules.nasClient = { pkgs, ... }: {
- boot.supportedFilesystems = [ "nfs" ];
+ flake.nixosModules.nasClient = {pkgs, ...}: {
+ boot.supportedFilesystems = ["nfs"];
- environment.systemPackages = with pkgs; [ nfs-utils ];
+ environment.systemPackages = with pkgs; [nfs-utils];
fileSystems."/mnt/data" = {
device = "100.64.0.2:/tank/data";
diff --git a/modules/nixosModules/server/default.nix b/modules/nixosModules/server/default.nix
index a32f049..5a475b1 100644
--- a/modules/nixosModules/server/default.nix
+++ b/modules/nixosModules/server/default.nix
@@ -1,5 +1,8 @@
-{ self, inputs, ... }:
{
+ self,
+ inputs,
+ ...
+}: {
flake.nixosModules.server = {
imports = [
self.nixosModules.arr
diff --git a/modules/nixosModules/server/navidrome.nix b/modules/nixosModules/server/navidrome.nix
index 5e319ca..903e574 100644
--- a/modules/nixosModules/server/navidrome.nix
+++ b/modules/nixosModules/server/navidrome.nix
@@ -1,5 +1,5 @@
-{ self, ... }: {
- flake.nixosModules.navidrome = { config, ... }: let
+{self, ...}: {
+ flake.nixosModules.navidrome = {config, ...}: let
cfg = config.hostOptions.server;
in {
imports = [
diff --git a/modules/nixosModules/server/tailscale.nix b/modules/nixosModules/server/tailscale.nix
index 41d4b5d..432e155 100644
--- a/modules/nixosModules/server/tailscale.nix
+++ b/modules/nixosModules/server/tailscale.nix
@@ -1,6 +1,5 @@
-{ self, ... }: {
-
- flake.nixosModules.tailscaleServer = { config, ... }: let
+{self, ...}: {
+ flake.nixosModules.tailscaleServer = {config, ...}: let
cfg = config.hostOptions.server;
in {
imports = [
@@ -17,7 +16,7 @@
};
};
- flake.nixosModules.headscale = { config, ... }: let
+ flake.nixosModules.headscale = {config, ...}: let
cfg = config.hostOptions.server;
in {
imports = [
@@ -31,7 +30,7 @@
server_url = "https://headscale.${cfg.domain}";
dns = {
magic_dns = false;
- nameservers.global = [ "1.1.1.1" "9.9.9.9" ];
+ nameservers.global = ["1.1.1.1" "9.9.9.9"];
};
prefixes = {
v4 = "100.64.0.0/10";
diff --git a/modules/packages/environment.nix b/modules/packages/environment.nix
index e1fa882..8fadce7 100644
--- a/modules/packages/environment.nix
+++ b/modules/packages/environment.nix
@@ -28,6 +28,8 @@
pkgs.alejandra
pkgs.bluetui
+ pkgs.brightnessctl
+ pkgs.btop
pkgs.lazygit
pkgs.p7zip
pkgs.rsync
diff --git a/modules/packages/fish.nix b/modules/packages/fish.nix
index 8467dd1..f33b5a5 100644
--- a/modules/packages/fish.nix
+++ b/modules/packages/fish.nix
@@ -3,7 +3,11 @@
lib,
...
}: {
- perSystem = {pkgs, self', ...}: let
+ perSystem = {
+ pkgs,
+ self',
+ ...
+ }: let
fishConf = pkgs.writeText "fishConf" ''
function fish_greeting
${lib.getExe self'.packages.fastfetch}
diff --git a/modules/packages/kitty.nix b/modules/packages/kitty.nix
index 4e204ad..53580cb 100644
--- a/modules/packages/kitty.nix
+++ b/modules/packages/kitty.nix
@@ -19,6 +19,7 @@
shell_integration = "enabled";
allow_remote_control = "yes";
+ confirm_os_window_close = -1;
# Gruvbox Material Dark Hard
background = "#1d2021";
diff --git a/modules/packages/niri/hosts/tiamat.nix b/modules/packages/niri/hosts/tiamat.nix
index a088940..3fdf6aa 100644
--- a/modules/packages/niri/hosts/tiamat.nix
+++ b/modules/packages/niri/hosts/tiamat.nix
@@ -16,10 +16,20 @@
xdg.portal = {
enable = true;
- extraPortals = [ pkgs.xdg-desktop-portal-gtk ];
+ extraPortals = [pkgs.xdg-desktop-portal-gtk];
};
- services.displayManager.ly.enable = true;
+ environment.systemPackages = [pkgs.wlr-randr];
+
+ services.greetd = {
+ enable = true;
+ settings = {
+ default_session = {
+ command = "${pkgs.tuigreet}/bin/tuigreet --time --remember --asterisks --cmd niri";
+ user = "jck";
+ };
+ };
+ };
};
perSystem = {
@@ -36,6 +46,7 @@
output "eDP-1" {
mode "2880x1920@120"
scale 1.67
+ variable-refresh-rate
}
'';
}
diff --git a/modules/packages/niri/package.nix b/modules/packages/niri/package.nix
index baae9a6..ad1144e 100644
--- a/modules/packages/niri/package.nix
+++ b/modules/packages/niri/package.nix
@@ -16,14 +16,13 @@
xdg.portal = {
enable = true;
- extraPortals = [ pkgs.xdg-desktop-portal-gtk ];
+ extraPortals = [pkgs.xdg-desktop-portal-gtk];
};
+
+ environment.systemPackages = [pkgs.wlr-randr];
};
- perSystem = {
- pkgs,
- ...
- }: {
+ perSystem = {pkgs, ...}: {
packages.niri = inputs.wrapper-modules.wrappers.niri.wrap {
inherit pkgs;
imports = [self.wrapperModules.niri];
diff --git a/modules/packages/niri/settings.nix b/modules/packages/niri/settings.nix
index 52ad72f..897bc50 100644
--- a/modules/packages/niri/settings.nix
+++ b/modules/packages/niri/settings.nix
@@ -1,5 +1,10 @@
-{inputs, self, ...}: {
- flake.wrapperModules.niri = {lib, config, pkgs, ...}: {
+{self, ...}: {
+ flake.wrapperModules.niri = {
+ lib,
+ config,
+ pkgs,
+ ...
+ }: {
settings = {
input = {
focus-follows-mouse = {};
@@ -35,6 +40,7 @@
xwayland-satellite.path = lib.getExe config.pkgs.xwayland-satellite;
prefer-no-csd = {};
+ hotkey-overlay.skip-at-startup = {};
binds = {
"Mod+Shift+M".quit = {};
@@ -42,10 +48,69 @@
"Mod+F1".spawn-sh = "${lib.getExe self.packages.${config.pkgs.stdenv.hostPlatform.system}.noctalia-shell} ipc call launcher toggle";
"Mod+F2".spawn = lib.getExe self.packages.${config.pkgs.stdenv.hostPlatform.system}.terminal;
- "Mod+F3".spawn = "${lib.getExe self.packages.${config.pkgs.stdenv.hostPlatform.system}.terminal} -e yazi";
+ "Mod+F3".spawn = lib.getExe config.pkgs.thunar;
"Mod+F4".close-window = {};
"Mod+R".switch-preset-column-width = {};
+
+ "Mod+1".focus-workspace = "w0";
+ "Mod+2".focus-workspace = "w1";
+ "Mod+3".focus-workspace = "w2";
+ "Mod+4".focus-workspace = "w3";
+ "Mod+5".focus-workspace = "w4";
+ "Mod+6".focus-workspace = "w5";
+ "Mod+7".focus-workspace = "w6";
+ "Mod+8".focus-workspace = "w7";
+ "Mod+9".focus-workspace = "w8";
+ "Mod+0".focus-workspace = "w9";
+
+ "Mod+Shift+1".move-column-to-workspace = "w0";
+ "Mod+Shift+2".move-column-to-workspace = "w1";
+ "Mod+Shift+3".move-column-to-workspace = "w2";
+ "Mod+Shift+4".move-column-to-workspace = "w3";
+ "Mod+Shift+5".move-column-to-workspace = "w4";
+ "Mod+Shift+6".move-column-to-workspace = "w5";
+ "Mod+Shift+7".move-column-to-workspace = "w6";
+ "Mod+Shift+8".move-column-to-workspace = "w7";
+ "Mod+Shift+9".move-column-to-workspace = "w8";
+ "Mod+Shift+0".move-column-to-workspace = "w9";
+
+ "Mod+WheelScrollDown".focus-column-left = {};
+ "Mod+WheelScrollUp".focus-column-right = {};
+ "Mod+Shift+WheelScrollDown".focus-workspace-down = {};
+ "Mod+Shift+WheelScrollUp".focus-workspace-up = {};
+
+ "XF86AudioPrev".spawn-sh = "playerctl previous";
+ "XF86AudioPause".spawn-sh = "playerctl play-pause";
+ "XF86AudioPlay".spawn-sh = "playerctl play-pause";
+ "XF86AudioNext".spawn-sh = "playerctl next";
+ "XF86AudioStop".spawn-sh = "playerctl stop";
+
+ "Shift+XF86AudioPrev".spawn-sh = "playerctl --player=Feishin previous";
+ "Shift+XF86AudioPause".spawn-sh = "playerctl --player=Feishin play-pause";
+ "Shift+XF86AudioPlay".spawn-sh = "playerctl --player=Feishin play-pause";
+ "Shift+XF86AudioNext".spawn-sh = "playerctl --player=Feishin next";
+ "Shift+XF86AudioStop".spawn-sh = "playerctl --player=Feishin stop";
+
+ "XF86AudioRaiseVolume".spawn-sh = "wpctl set-volume -l 1.5 @DEFAULT_AUDIO_SINK@ 5%+";
+ "XF86AudioLowerVolume".spawn-sh = "wpctl set-volume -l 1.5 @DEFAULT_AUDIO_SINK@ 5%-";
+ "XF86AudioMute".spawn-sh = "wpctl set-mute @DEFAULT_AUDIO_SINK@ toggle";
+
+ "XF86MonBrightnessUp".spawn-sh = "${lib.getExe config.pkgs.brightnessctl} set 5%+";
+ "XF86MonBrightnessDown".spawn-sh = "${lib.getExe config.pkgs.brightnessctl} set 5%-";
+ };
+
+ workspaces = {
+ "w0" = {};
+ "w1" = {};
+ "w2" = {};
+ "w3" = {};
+ "w4" = {};
+ "w5" = {};
+ "w6" = {};
+ "w7" = {};
+ "w8" = {};
+ "w9" = {};
};
spawn-at-startup = [
diff --git a/modules/packages/noctalia/noctalia.json b/modules/packages/noctalia/noctalia.json
index f2eb387..8d19654 100644
--- a/modules/packages/noctalia/noctalia.json
+++ b/modules/packages/noctalia/noctalia.json
@@ -3,7 +3,7 @@
"settingsVersion": 59,
"bar": {
"barType": "simple",
- "position": "left",
+ "position": "top",
"monitors": [],
"density": "default",
"showOutline": false,
@@ -206,11 +206,11 @@
"telemetryEnabled": false,
"enableLockScreenCountdown": true,
"lockScreenCountdownDuration": 10000,
- "autoStartAuth": false,
+ "autoStartAuth": true,
"allowPasswordWithFprintd": true,
"clockStyle": "custom",
"clockFormat": "hh\\nmm",
- "passwordChars": false,
+ "passwordChars": true,
"lockScreenMonitors": [],
"lockScreenBlur": 0,
"lockScreenTint": 0,
@@ -306,14 +306,9 @@
"automationEnabled": false,
"wallpaperChangeMode": "random",
"randomIntervalSec": 300,
- "transitionDuration": 1500,
+ "transitionDuration": 500,
"transitionType": [
- "fade",
- "disc",
- "stripes",
- "wipe",
- "pixelate",
- "honeycomb"
+ "pixelate"
],
"skipStartupTransition": false,
"transitionEdgeSmoothness": 0.05,
@@ -609,8 +604,10 @@
"spectrumFrameRate": 30,
"visualizerType": "linear",
"spectrumMirrored": true,
- "mprisBlacklist": [],
- "preferredPlayer": "",
+ "mprisBlacklist": [
+ "zen-twilight"
+ ],
+ "preferredPlayer": "feishin",
"volumeFeedback": false,
"volumeFeedbackSoundFile": ""
},
@@ -673,10 +670,10 @@
"notifyUpdates": true
},
"idle": {
- "enabled": false,
+ "enabled": true,
"screenOffTimeout": 600,
- "lockTimeout": 660,
- "suspendTimeout": 1800,
+ "lockTimeout": 360,
+ "suspendTimeout": 0,
"fadeDuration": 5,
"screenOffCommand": "",
"lockCommand": "",
@@ -717,12 +714,12 @@
"physical_height": 190,
"refresh_rate": 120000,
"vrr_supported": true,
- "vrr_enabled": false,
+ "vrr_enabled": true,
"transform": "Normal"
}
},
"notificationsState": {
- "lastSeenTs": 1775259926000
+ "lastSeenTs": 1775262614000
},
"changelogState": {
"lastSeenVersion": "v4.7.1"
diff --git a/modules/packages/nvf/_nvfConfig.nix b/modules/packages/nvf/_nvfConfig.nix
index 2746966..d0080cf 100644
--- a/modules/packages/nvf/_nvfConfig.nix
+++ b/modules/packages/nvf/_nvfConfig.nix
@@ -1,4 +1,8 @@
-{ pkgs, lib, ... }: {
+{
+ pkgs,
+ lib,
+ ...
+}: {
config.vim = {
viAlias = true;
vimAlias = true;
@@ -108,14 +112,14 @@
'';
};
};
-
+
autocmds = [
{
- event = [ "InsertEnter" ];
+ event = ["InsertEnter"];
command = "set norelativenumber";
}
{
- event = [ "InsertLeave" ];
+ event = ["InsertLeave"];
command = "set relativenumber";
}
];
diff --git a/modules/packages/nvf/package.nix b/modules/packages/nvf/package.nix
index 8189d29..cac61d2 100644
--- a/modules/packages/nvf/package.nix
+++ b/modules/packages/nvf/package.nix
@@ -1,11 +1,9 @@
-{
- inputs,
- ...
-}: {
+{inputs, ...}: {
perSystem = {pkgs, ...}: {
- packages.neovim = (inputs.nvf.lib.neovimConfiguration {
- inherit pkgs;
- modules = [ ./_nvfConfig.nix ];
- }).neovim;
+ packages.neovim =
+ (inputs.nvf.lib.neovimConfiguration {
+ inherit pkgs;
+ modules = [./_nvfConfig.nix];
+ }).neovim;
};
}
diff --git a/modules/packages/zen-browser.nix b/modules/packages/zen-browser.nix
index c770602..b615cee 100644
--- a/modules/packages/zen-browser.nix
+++ b/modules/packages/zen-browser.nix
@@ -1,5 +1,9 @@
{inputs, ...}: {
- perSystem = {system, pkgs, ...}: {
+ perSystem = {
+ system,
+ pkgs,
+ ...
+ }: {
packages.zen-browser = inputs.wrappers.lib.wrapPackage {
inherit pkgs;
package = inputs.zen-browser.packages.${system}.twilight.unwrapped.override {