This commit is contained in:
mjallen18
2024-11-08 22:31:09 -06:00
parent 2743309214
commit 96a05612c6
13 changed files with 193 additions and 94 deletions

118
flake.lock generated
View File

@@ -14,11 +14,11 @@
"systems": "systems" "systems": "systems"
}, },
"locked": { "locked": {
"lastModified": 1730387901, "lastModified": 1730835992,
"narHash": "sha256-XnO0bx330mgfiLGIEnUEH4fBhKx5DcZTXl47VjLCeok=", "narHash": "sha256-XYr4WQMxJdZkrQlsouyURMY4iNL5SS2RlQ7XGnjEQBU=",
"owner": "nix-community", "owner": "nix-community",
"repo": "authentik-nix", "repo": "authentik-nix",
"rev": "74b5a8c5ffbca16f7af1def137e06a97a958a098", "rev": "5af11599eaec65b5b6e6e39d77b541db361c08aa",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -30,16 +30,16 @@
"authentik-src": { "authentik-src": {
"flake": false, "flake": false,
"locked": { "locked": {
"lastModified": 1730315123, "lastModified": 1730826392,
"narHash": "sha256-UYOdBlkGeIGCG/pCGLANWv1bKTdBEUp6jTiLG7BpY7E=", "narHash": "sha256-EuNOfMy7yVa1OqWwCtNtmdeIQeQCTCKBXgJdz0QCPIU=",
"owner": "goauthentik", "owner": "goauthentik",
"repo": "authentik", "repo": "authentik",
"rev": "e8b5e4c1272151f4a3666e53754f7deefb8e2fb3", "rev": "665de8ef2211524f3cc13dce9344bd59c61c3a5c",
"type": "github" "type": "github"
}, },
"original": { "original": {
"owner": "goauthentik", "owner": "goauthentik",
"ref": "version/2024.8.4", "ref": "version/2024.10.1",
"repo": "authentik", "repo": "authentik",
"type": "github" "type": "github"
} }
@@ -52,11 +52,11 @@
"nixpkgs": "nixpkgs" "nixpkgs": "nixpkgs"
}, },
"locked": { "locked": {
"lastModified": 1730555728, "lastModified": 1730767100,
"narHash": "sha256-jBr4WUPat+R/79DBdk85hKyqDfoJII4Z+V+GoevYNDY=", "narHash": "sha256-SGkgP2H+i1jewNFBuAs4+grutNrfm5by+JUERUdXIRo=",
"owner": "chaotic-cx", "owner": "chaotic-cx",
"repo": "nyx", "repo": "nyx",
"rev": "e734744bc2e9ca9aa577555bf028c5ea51eb5f77", "rev": "f8969fe1947ed81785a9e52f62622c03d3e58971",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -76,11 +76,11 @@
"rust-overlay": "rust-overlay" "rust-overlay": "rust-overlay"
}, },
"locked": { "locked": {
"lastModified": 1730597759, "lastModified": 1730830166,
"narHash": "sha256-DStWygV/fV3aU8VWN4wIG4Mjpq7s540gUD4A103u+Zo=", "narHash": "sha256-F2SA8PkrV+Ed8WZKwEimO2oBxQJFJU2ni/wqIbupX4Y=",
"owner": "lilyinstarlight", "owner": "lilyinstarlight",
"repo": "nixos-cosmic", "repo": "nixos-cosmic",
"rev": "db3975340480a6c2532398991f3a47f74df17eed", "rev": "49ee81f51e7449314af27915f3719cc76e9abe1f",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -178,11 +178,11 @@
"nixpkgs-lib": "nixpkgs-lib" "nixpkgs-lib": "nixpkgs-lib"
}, },
"locked": { "locked": {
"lastModified": 1726153070, "lastModified": 1727826117,
"narHash": "sha256-HO4zgY0ekfwO5bX0QH/3kJ/h4KvUDFZg8YpkNwIbg1U=", "narHash": "sha256-K5ZLCyfO/Zj9mPFldf3iwS6oZStJcU4tSpiXTMYaaL0=",
"owner": "hercules-ci", "owner": "hercules-ci",
"repo": "flake-parts", "repo": "flake-parts",
"rev": "bcef6817a8b2aa20a5a6dbb19b43e63c5bf8619a", "rev": "3d04084d54bedc3d6b8b736c70ef449225c361b1",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -295,11 +295,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1730016908, "lastModified": 1730633670,
"narHash": "sha256-bFCxJco7d8IgmjfNExNz9knP8wvwbXU4s/d53KOK6U0=", "narHash": "sha256-ZFJqIXpvVKvzOVFKWNRDyIyAo+GYdmEPaYi1bZB6uf0=",
"owner": "nix-community", "owner": "nix-community",
"repo": "home-manager", "repo": "home-manager",
"rev": "e83414058edd339148dc142a8437edb9450574c8", "rev": "8f6ca7855d409aeebe2a582c6fd6b6a8d0bf5661",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -373,11 +373,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1730248099, "lastModified": 1730625581,
"narHash": "sha256-Fl7BSdpLk0uTXF6ol/MR0q1EB4XQ8tn0ftig0pyYh5Y=", "narHash": "sha256-vFxtzNCxtUIrmv8tluquZHjNTwMkCGtT0NCoVuwlqd4=",
"owner": "Jovian-Experiments", "owner": "Jovian-Experiments",
"repo": "Jovian-NixOS", "repo": "Jovian-NixOS",
"rev": "c11bab124fc55a37cbd854ed28ea121ed609231f", "rev": "e6195c6bfc037617e20d6d7d4d6c9cdeee6aba6d",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -444,11 +444,11 @@
"nixpkgs": "nixpkgs_2" "nixpkgs": "nixpkgs_2"
}, },
"locked": { "locked": {
"lastModified": 1730600078, "lastModified": 1730779758,
"narHash": "sha256-BoyFmE59HDF3uybBySsWVoyjNuHvz3Wv8row/mSb958=", "narHash": "sha256-5WI9AnsBwhLzVRnQm3Qn9oAbROnuLDQTpaXeyZCK8qw=",
"owner": "LnL7", "owner": "LnL7",
"repo": "nix-darwin", "repo": "nix-darwin",
"rev": "4652874d014b82cb746173ffc64f6a70044daa7e", "rev": "0e3f3f017c14467085f15d42343a3aaaacd89bcb",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -466,11 +466,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1703863825, "lastModified": 1729742964,
"narHash": "sha256-rXwqjtwiGKJheXB43ybM8NwWB8rO2dSRrEqes0S7F5Y=", "narHash": "sha256-B4mzTcQ0FZHdpeWcpDYPERtyjJd/NIuaQ9+BV1h+MpA=",
"owner": "nix-community", "owner": "nix-community",
"repo": "nix-github-actions", "repo": "nix-github-actions",
"rev": "5163432afc817cf8bd1f031418d1869e4c9d5547", "rev": "e04df33f62cdcf93d73e9a04142464753a16db67",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -524,11 +524,11 @@
}, },
"nixos-hardware": { "nixos-hardware": {
"locked": { "locked": {
"lastModified": 1730537918, "lastModified": 1730828750,
"narHash": "sha256-GJB1/aaTnAtt9sso/EQ77TAGJ/rt6uvlP0RqZFnWue8=", "narHash": "sha256-XrnZLkLiBYNlwV5gus/8DT7nncF1TS5la6Be7rdVOpI=",
"owner": "NixOS", "owner": "NixOS",
"repo": "nixos-hardware", "repo": "nixos-hardware",
"rev": "f6e0cd5c47d150c4718199084e5764f968f1b560", "rev": "2e78b1af8025108ecd6edaa3ab09695b8a4d3d55",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -540,11 +540,11 @@
}, },
"nixpkgs": { "nixpkgs": {
"locked": { "locked": {
"lastModified": 1730200266, "lastModified": 1730531603,
"narHash": "sha256-l253w0XMT8nWHGXuXqyiIC/bMvh1VRszGXgdpQlfhvU=", "narHash": "sha256-Dqg6si5CqIzm87sp57j5nTaeBbWhHFaVyG7V6L8k3lY=",
"owner": "NixOS", "owner": "NixOS",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "807e9154dcb16384b1b765ebe9cd2bba2ac287fd", "rev": "7ffd9ae656aec493492b44d0ddfb28e79a1ea25d",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -556,23 +556,23 @@
}, },
"nixpkgs-lib": { "nixpkgs-lib": {
"locked": { "locked": {
"lastModified": 1725233747, "lastModified": 1727825735,
"narHash": "sha256-Ss8QWLXdr2JCBPcYChJhz4xJm+h/xjl4G0c0XlP6a74=", "narHash": "sha256-0xHYkMkeLVQAMa7gvkddbPqpxph+hDzdu1XdGPJR+Os=",
"type": "tarball", "type": "tarball",
"url": "https://github.com/NixOS/nixpkgs/archive/356624c12086a18f2ea2825fed34523d60ccc4e3.tar.gz" "url": "https://github.com/NixOS/nixpkgs/archive/fb192fec7cc7a4c26d51779e9bab07ce6fa5597a.tar.gz"
}, },
"original": { "original": {
"type": "tarball", "type": "tarball",
"url": "https://github.com/NixOS/nixpkgs/archive/356624c12086a18f2ea2825fed34523d60ccc4e3.tar.gz" "url": "https://github.com/NixOS/nixpkgs/archive/fb192fec7cc7a4c26d51779e9bab07ce6fa5597a.tar.gz"
} }
}, },
"nixpkgs-stable": { "nixpkgs-stable": {
"locked": { "locked": {
"lastModified": 1730327045, "lastModified": 1730602179,
"narHash": "sha256-xKel5kd1AbExymxoIfQ7pgcX6hjw9jCgbiBjiUfSVJ8=", "narHash": "sha256-efgLzQAWSzJuCLiCaQUCDu4NudNlHdg2NzGLX5GYaEY=",
"owner": "NixOS", "owner": "NixOS",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "080166c15633801df010977d9d7474b4a6c549d7", "rev": "3c2f1c4ca372622cb2f9de8016c9a0b1cbd0f37c",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -600,11 +600,11 @@
}, },
"nixpkgs-stable_3": { "nixpkgs-stable_3": {
"locked": { "locked": {
"lastModified": 1730327045, "lastModified": 1730741070,
"narHash": "sha256-xKel5kd1AbExymxoIfQ7pgcX6hjw9jCgbiBjiUfSVJ8=", "narHash": "sha256-edm8WG19kWozJ/GqyYx2VjW99EdhjKwbY3ZwdlPAAlo=",
"owner": "NixOS", "owner": "NixOS",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "080166c15633801df010977d9d7474b4a6c549d7", "rev": "d063c1dd113c91ab27959ba540c0d9753409edf3",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -648,11 +648,11 @@
}, },
"nixpkgs-unstable-small": { "nixpkgs-unstable-small": {
"locked": { "locked": {
"lastModified": 1730642263, "lastModified": 1730815137,
"narHash": "sha256-UXqvGZOHUDeAo8Sv5A5oObiQgBPELVgHQi130TU0jMU=", "narHash": "sha256-/SMEl8lpjVJOH5OQ11OLn6O2DeHb0yo3oIz1mi2bvWY=",
"owner": "NixOS", "owner": "NixOS",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "650fe87347086b30a6dbcc32b55987ce5a23c6ae", "rev": "78366fc8acbc8092d898f021354ab61ca161c412",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -726,11 +726,11 @@
"treefmt-nix": "treefmt-nix" "treefmt-nix": "treefmt-nix"
}, },
"locked": { "locked": {
"lastModified": 1727169160, "lastModified": 1730284601,
"narHash": "sha256-m/3tT0Wvk2V4H15riZC/yT7i7t+8V58HTDpthKV5yhk=", "narHash": "sha256-eHYcKVLIRRv3J1vjmxurS6HVdGphB53qxUeAkylYrZY=",
"owner": "nix-community", "owner": "nix-community",
"repo": "poetry2nix", "repo": "poetry2nix",
"rev": "7624b3e0275d9b52dbdda46ef7ffee66b36ff823", "rev": "43a898b4d76f7f3f70df77a2cc2d40096bc9d75e",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -792,11 +792,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1730514457, "lastModified": 1730687492,
"narHash": "sha256-cjFX208s9pyaOfMvF9xI6WyafyXINqdhMF7b1bMQpLI=", "narHash": "sha256-xQVadjquBA/tFxDt5A55LJ1D1AvkVWsnrKC2o+pr8F4=",
"owner": "oxalica", "owner": "oxalica",
"repo": "rust-overlay", "repo": "rust-overlay",
"rev": "1ff38ca26eb31858e4dfe7fe738b6b3ce5d74922", "rev": "41814763a2c597755b0755dbe3e721367a5e420f",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -852,11 +852,11 @@
"nixpkgs-stable": "nixpkgs-stable_4" "nixpkgs-stable": "nixpkgs-stable_4"
}, },
"locked": { "locked": {
"lastModified": 1730605784, "lastModified": 1730746162,
"narHash": "sha256-1NveNAMLHbxOg0BpBMSVuZ2yW2PpDnZLbZ25wV50PMc=", "narHash": "sha256-ZGmI+3AbT8NkDdBQujF+HIxZ+sWXuyT6X8B49etWY2g=",
"owner": "Mic92", "owner": "Mic92",
"repo": "sops-nix", "repo": "sops-nix",
"rev": "e9b5eef9b51cdf966c76143e13a9476725b2f760", "rev": "59d6988329626132eaf107761643f55eb979eef1",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -904,11 +904,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1719749022, "lastModified": 1730120726,
"narHash": "sha256-ddPKHcqaKCIFSFc/cvxS14goUhCOAwsM1PbMr0ZtHMg=", "narHash": "sha256-LqHYIxMrl/1p3/kvm2ir925tZ8DkI0KA10djk8wecSk=",
"owner": "numtide", "owner": "numtide",
"repo": "treefmt-nix", "repo": "treefmt-nix",
"rev": "8df5ff62195d4e67e2264df0b7f5e8c9995fd0bd", "rev": "9ef337e492a5555d8e17a51c911ff1f02635be15",
"type": "github" "type": "github"
}, },
"original": { "original": {

View File

@@ -84,7 +84,7 @@
nixosConfigurations = { nixosConfigurations = {
# Desktop # Desktop
"matt-nixos" = nixpkgs-unstable-small.lib.nixosSystem { "matt-nixos" = nixpkgs-stable.lib.nixosSystem {
system = "x86_64-linux"; system = "x86_64-linux";
specialArgs = { specialArgs = {
inherit inputs outputs; inherit inputs outputs;
@@ -95,7 +95,7 @@
./hosts/desktop/configuration.nix ./hosts/desktop/configuration.nix
./share/impermanence ./share/impermanence
chaotic.nixosModules.default chaotic.nixosModules.default
home-manager.nixosModules.home-manager home-manager-stable.nixosModules.home-manager
{ {
home-manager.useGlobalPkgs = true; home-manager.useGlobalPkgs = true;
home-manager.useUserPackages = true; home-manager.useUserPackages = true;

View File

@@ -38,7 +38,7 @@ in
enableAllFirmware = lib.mkForce true; enableAllFirmware = lib.mkForce true;
# Disable pulse audio in favor of pipewire # Disable pulse audio in favor of pipewire
pulseaudio.enable = lib.mkDefault false; pulseaudio.enable = lib.mkForce false;
}; };
# Services configs # Services configs

View File

@@ -2,7 +2,7 @@
let let
configLimit = 5; configLimit = 5;
default = "@saved"; default = "@saved";
kernel = pkgs.linuxPackages_latest; kernel = pkgs.unstable.linuxPackages_latest;
in in
{ {
# Configure bootloader with lanzaboot and secureboot # Configure bootloader with lanzaboot and secureboot

View File

@@ -4,7 +4,7 @@
{ {
config, config,
# outputs, outputs,
lib, lib,
pkgs, pkgs,
... ...
@@ -27,8 +27,80 @@ let
fi fi
''; '';
fixWifiScript = pkgs.writeScriptBin "fix-wifi" '' fixWifiScript = pkgs.writeScriptBin "fix-wifi" ''
/home/matt/nix-config/scripts/fix-wifi.py #!/usr/bin/env python3
'';
import subprocess
import socket
import logging
from typing import List, Optional
def check_internet_connection(hosts_to_check: Optional[List[str]] = None) -> bool:
"""
Check internet connectivity by attempting to connect to reliable hosts.
:param hosts_to_check: Optional list of hosts to check.
:return: Boolean indicating if internet connection is available
"""
if hosts_to_check is None:
hosts_to_check = [
"8.8.8.8", # Google DNS
"1.1.1.1", # Cloudflare DNS
"9.9.9.9" # Quad9 DNS
]
for host in hosts_to_check:
try:
# Create a socket connection with a 5-second timeout
socket.create_connection((host, 53), timeout=5)
return True
except (socket.error, socket.timeout):
continue
return False
def reset_wifi_card() -> bool:
"""
Execute WiFi card reset commands.
:return: Boolean indicating if reset commands were successful
"""
reset_commands = [
"echo 1 | sudo -u root tee /sys/bus/pci/devices/0000:09:00.0/reset",
"sudo rmmod iwlwifi",
"sudo modprobe iwlwifi"
]
try:
for command in reset_commands:
result = subprocess.run(
command,
shell=True,
check=True,
stdout=subprocess.PIPE,
stderr=subprocess.PIPE,
text=True
)
print(f"Executed: {command}")
print(f"Output: {result.stdout}")
return True
except subprocess.CalledProcessError as e:
print(f"Error resetting WiFi: {e}")
print(f"Error output: {e.stderr}")
return False
def main():
"""
Check internet connection and reset WiFi if not connected.
"""
if not check_internet_connection():
print("No internet connection detected. Attempting WiFi reset...")
reset_wifi_card()
else:
print("Internet connection is stable. No reset needed.")
if __name__ == "__main__":
main()
'';
in in
{ {
imports = [ imports = [
@@ -211,7 +283,9 @@ in
kdePackages.ksvg kdePackages.ksvg
lact lact
memtest86-efi memtest86-efi
memtest86plus memtest86plus
unstable.mesa
unstable.driversi686Linux.mesa
nano nano
onlyoffice-bin onlyoffice-bin
os-prober os-prober
@@ -270,9 +344,12 @@ in
}; };
# Configure nixpkgs # Configure nixpkgs
nixpkgs.config.permittedInsecurePackages = [ nixpkgs = {
# ... overlays = [ outputs.overlays.nixpkgs-unstable ];
]; config.permittedInsecurePackages = [
# ...
];
};
# Define a user account. Don't forget to set a password with passwd. # Define a user account. Don't forget to set a password with passwd.
users.users."${user}" = { users.users."${user}" = {

View File

@@ -18,7 +18,7 @@
displayManager.defaultSession = "gnome"; displayManager.defaultSession = "gnome";
# Enable Flatpak # Enable Flatpak
flatpak.enable = true; flatpak.enable = false;
# disable plasma # disable plasma
displayManager.sddm.enable = false; displayManager.sddm.enable = false;
@@ -28,9 +28,10 @@
environment = { environment = {
systemPackages = with pkgs; [ systemPackages = with pkgs; [
colloid-gtk-theme colloid-gtk-theme
gnome-tweaks unstable.gnome-tweaks
gnomeExtensions.appindicator gnomeExtensions.appindicator
gnomeExtensions.arcmenu gnomeExtensions.arcmenu
gnomeExtensions.dash-to-dock
gnomeExtensions.dash-to-panel gnomeExtensions.dash-to-panel
gnomeExtensions.tiling-assistant gnomeExtensions.tiling-assistant
]; ];

View File

@@ -9,7 +9,7 @@
"org/gnome/desktop/interface".font-antialiasing = "grayscale"; "org/gnome/desktop/interface".font-antialiasing = "grayscale";
"org/gnome/desktop/interface".font-hinting = "slight"; "org/gnome/desktop/interface".font-hinting = "slight";
"org/gnome/desktop/interface".gtk-theme = lib.mkDefault "Colloid-Dark"; "org/gnome/desktop/interface".gtk-theme = lib.mkDefault "Colloid-Dark";
"org/gnome/desktop/interface".icon-theme = lib.mkDefault "Colloid-Dark"; "org/gnome/desktop/interface".icon-theme = lib.mkDefault "Colloid-dark";
"org/gnome/desktop/peripherals/mouse".accel-profile = "flat"; "org/gnome/desktop/peripherals/mouse".accel-profile = "flat";
"org/gnome/desktop/peripherals/touchpad".two-finger-scrolling-enabled = true; "org/gnome/desktop/peripherals/touchpad".two-finger-scrolling-enabled = true;
"org/gnome/desktop/peripherals/touchpad".tap-to-click = true; "org/gnome/desktop/peripherals/touchpad".tap-to-click = true;
@@ -22,8 +22,8 @@
"appindicatorsupport@rgcjonas.gmail.com" "appindicatorsupport@rgcjonas.gmail.com"
"arcmenu@arcmenu.com" "arcmenu@arcmenu.com"
"user-theme@gnome-shell-extensions.gcampax.github.com" "user-theme@gnome-shell-extensions.gcampax.github.com"
"dash-to-panel@jderose9.github.com"
"tiling-assistant@leleat-on-github" "tiling-assistant@leleat-on-github"
"dash-to-dock@micxgx.gmail.com"
]; ];
"org/gnome/shell/extensions/dash-to-panel".primary-monitor = 1; "org/gnome/shell/extensions/dash-to-panel".primary-monitor = 1;
"org/gnome/shell/extensions/dash-to-panel".multi-monitors = false; "org/gnome/shell/extensions/dash-to-panel".multi-monitors = false;

View File

@@ -58,23 +58,21 @@ in
programs.command-not-found.enable = true; programs.command-not-found.enable = true;
home.packages = with pkgs; [ home.packages = with pkgs; [
# gamescope # using chaotic git version
# gamescope-wsi # using chaotic git version
age age
apple-cursor apple-cursor
bottles bottles
chromium chromium
colloid-icon-theme colloid-icon-theme
colloid-kde colloid-kde
compose2nix unstable.compose2nix
coolercontrol.coolercontrol-gui coolercontrol.coolercontrol-gui
deadnix deadnix
discord discord
fastfetch fastfetch
firefox firefox
freerdp freerdp
gamescope_git gamescope
gamescope-wsi_git gamescope-wsi
goverlay goverlay
heroic heroic
home-manager home-manager

View File

@@ -11,7 +11,7 @@ let
in in
{ {
environment.systemPackages = with pkgs; [ environment.systemPackages = with pkgs; [
adwaita-icon-theme unstable.adwaita-icon-theme
apple-cursor apple-cursor
catppuccin-sddm catppuccin-sddm
colloid-gtk-theme colloid-gtk-theme
@@ -19,19 +19,19 @@ in
ddcutil ddcutil
dunst dunst
egl-wayland egl-wayland
file-roller unstable.file-roller
glib glib
gnome-tweaks unstable.gnome-tweaks
gnome-disk-utility unstable.gnome-disk-utility
gnome-system-monitor unstable.gnome-system-monitor
gsettings-desktop-schemas unstable.gsettings-desktop-schemas
hyprcursor hyprcursor
hyprland hyprland
hyprshot hyprshot
libnotify libnotify
mako mako
meson meson
nautilus unstable.nautilus
networkmanagerapplet networkmanagerapplet
nm-tray nm-tray
nwg-drawer nwg-drawer

View File

@@ -17,6 +17,10 @@
group = "authentik"; group = "authentik";
mode = "u=rwx,g=,o="; mode = "u=rwx,g=,o=";
} }
{
directory = "/var/lib/private";
mode = "u=rwx,g=rx,o=";
}
{ {
directory = "/var/lib/colord"; directory = "/var/lib/colord";
user = "colord"; user = "colord";

View File

@@ -6,6 +6,24 @@ in
# Services configs # Services configs
services = { services = {
caddy = {
enable = false;
email = "jalle008@proton.me";
enableReload = true;
user = "nix-apps";
group = "jallen-nas";
dataDir = "/media/nas/ssd/nix-app-data/caddy";
virtualHosts = {
"authentik.mjallen.dev".extraConfig = ''
reverse_proxy http://10.0.1.18:9000
'';
"jellyfin.mjallen.dev".extraConfig = ''
reverse_proxy http://10.0.1.18:8096
'';
};
};
minecraft-server = { minecraft-server = {
enable = true; enable = true;
eula = true; eula = true;
@@ -135,6 +153,7 @@ in
"--advertise-exit-node" "--advertise-exit-node"
"--accept-dns=false" "--accept-dns=false"
"--advertise-routes=10.0.1.0/24" "--advertise-routes=10.0.1.0/24"
"--hostname=jallen-nas"
]; ];
extraSetFlags = [ extraSetFlags = [
"--advertise-exit-node" "--advertise-exit-node"

View File

@@ -4,14 +4,13 @@
config, config,
... ...
}: }:
with lib;
let let
cfg = config.share.hardware.amd; cfg = config.share.hardware.amd;
in in
{ {
imports = [ ./options.nix ]; imports = [ ./options.nix ];
config = mkIf cfg.enable { config = lib.mkIf cfg.enable {
boot.kernelParams = [ (if cfg.enable then "amdgpu.ppfeaturemask=0xffffffff" else null) ]; boot.kernelParams = [ (if cfg.enable then "amdgpu.ppfeaturemask=0xffffffff" else null) ];
# Configure programs # Configure programs
@@ -26,9 +25,11 @@ in
# Hardware configs # Hardware configs
hardware = { hardware = {
# Enable graphics # Enable graphics
graphics = { opengl = {
enable = true; enable = true;
enable32Bit = true; extraPackages = [ pkgs.unstable.mesa ];
driSupport32Bit = true;
extraPackages32 = [ pkgs.unstable.pkgsi686Linux.mesa ];
}; };
}; };
@@ -49,7 +50,7 @@ in
}; };
# nixpkg is broken so need to manually define # nixpkg is broken so need to manually define
systemd.services.lactd = mkIf cfg.lact.enable { systemd.services.lactd = lib.mkIf cfg.lact.enable {
description = "AMDGPU Control Daemon"; description = "AMDGPU Control Daemon";
path = [ path = [
pkgs.bash pkgs.bash
@@ -64,7 +65,7 @@ in
# Configure environment # Configure environment
environment = { environment = {
systemPackages = mkIf cfg.lact.enable [ pkgs.lact ]; systemPackages = lib.mkIf cfg.lact.enable [ pkgs.lact ];
sessionVariables = lib.mkDefault { STEAM_FORCE_DESKTOPUI_SCALING = "1"; }; sessionVariables = lib.mkDefault { STEAM_FORCE_DESKTOPUI_SCALING = "1"; };
}; };
}; };

View File

@@ -1,12 +1,11 @@
{ lib, config, ... }: { lib, config, ... }:
with lib;
let let
cfg = config.share.gaming; cfg = config.share.gaming;
in in
{ {
imports = [ ./options.nix ]; imports = [ ./options.nix ];
config = mkIf cfg.enable { config = lib.mkIf cfg.enable {
# Network option required using sysctl to let Ubisoft Connect work as of 7-12-2023 # Network option required using sysctl to let Ubisoft Connect work as of 7-12-2023
boot.kernel.sysctl."net.ipv4.tcp_mtu_probing" = 1; boot.kernel.sysctl."net.ipv4.tcp_mtu_probing" = 1;