fix network reset service

This commit is contained in:
mjallen18
2024-06-10 19:35:13 -05:00
parent f42575eb38
commit 6a561c0def
3 changed files with 58 additions and 46 deletions

View File

@@ -104,6 +104,11 @@
home-manager.useUserPackages = true; home-manager.useUserPackages = true;
home-manager.users.admin = import ./hosts/nas/home.nix; home-manager.users.admin = import ./hosts/nas/home.nix;
} }
nixos-hardware.nixosModules.common-pc
nixos-hardware.nixosModules.common-cpu-amd
nixos-hardware.nixosModules.common-hidpi
nixos-hardware.nixosModules.common-gpu-nvidia
]; ];
}; };

View File

@@ -15,6 +15,19 @@ let
hostname = "matt-nixos"; hostname = "matt-nixos";
gnome = false; gnome = false;
plasma = true; plasma = true;
resetNetworkScript = pkgs.writeScriptBin "reset-network" ''
#!/usr/bin/env bash
echo "checking network..."
if nmcli -t -f STATE general | grep -q "connected"; then
exit 0
else
echo "resetting network..."
echo 1 | tee /sys/bus/pci/devices/0000\:09\:00.0/reset
rmmod iwlwifi
modprobe iwlwifi
fi
'';
in in
{ {
imports = [ imports = [
@@ -61,7 +74,7 @@ in
default = "@saved"; default = "@saved";
console-mode = "max"; console-mode = "max";
}; };
configurationLimit = 2; configurationLimit = 5;
}; };
# Override kernel to latest # Override kernel to latest
@@ -120,25 +133,15 @@ in
]; ];
}; };
# systemd.services.fix-wifi = { systemd.services.fix-wifi = {
# path = [ pkgs.bash ]; path = [ pkgs.bash pkgs.networkmanager pkgs.kmod ];
# script = '' wantedBy = [ "multi-user.target" ];
# sleep 5 after = [ "network.target" ];
# if ping -q -c1 10.0.1.1 &>/dev/null; then serviceConfig = {
# echo "No need to fix wifi" Type="oneshot";
# else ExecStart = [ "${resetNetworkScript}/bin/reset-network" ];
# echo 1 | tee /sys/bus/pci/devices/0000\:09\:00.0/reset };
# rmmod iwlwifi };
# modprobe iwlwifi
# fi
# '';
# wantedBy = [ "multi-user.target" ];
# after = [ "NetworkManager.target" ];
# serviceConfig = {
# Type="oneshot";
# RemainAfterExit=true;
# };
# };
# Networking configs # Networking configs
networking = { networking = {
@@ -173,6 +176,7 @@ in
fishPlugins.bass fishPlugins.bass
fishPlugins.sponge fishPlugins.sponge
gparted gparted
kmod
lact lact
nano nano
os-prober os-prober

View File

@@ -1,4 +1,7 @@
{ pkgs, ... }: { pkgs, ... }:
# let
# gnome = false;
# in
{ {
home.username = "matt"; home.username = "matt";
@@ -62,30 +65,30 @@
vorta vorta
]; ];
# dconf = { dconf = {
# enable = true; enable = false;
# settings = { settings = {
# "org/gnome/desktop/interface".clock-format = "12h"; "org/gnome/desktop/interface".clock-format = "12h";
# "org/gnome/desktop/interface".color-scheme = "prefer-dark"; "org/gnome/desktop/interface".color-scheme = "prefer-dark";
# "org/gnome/desktop/interface".enable-hot-corners = false; "org/gnome/desktop/interface".enable-hot-corners = false;
# "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".icon-theme = "Papirus-Dark"; "org/gnome/desktop/interface".icon-theme = "Papirus-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;
# "org/gnome/mutter".experimental-features = [ "scale-monitor-framebuffer" "variable-refresh-rate" ]; "org/gnome/mutter".experimental-features = [ "scale-monitor-framebuffer" "variable-refresh-rate" ];
# "org/gnome/tweaks".show-extensions-notice = false; "org/gnome/tweaks".show-extensions-notice = false;
# "org/gnome/shell".enabled-extensions = [ "org/gnome/shell".enabled-extensions = [
# "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" "dash-to-panel@jderose9.github.com"
# "tiling-assistant@leleat-on-github" "tiling-assistant@leleat-on-github"
# ]; ];
# "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;
# "org/gtk/settings/file-chooser".clock-format = "12h"; "org/gtk/settings/file-chooser".clock-format = "12h";
# }; };
# }; };
} }