weeeeeeeeeeeeeeeeeee

This commit is contained in:
Zastian Pretorius
2025-07-16 15:33:05 +01:00
parent 8eb707c900
commit 96bc1b1894
6 changed files with 102 additions and 136 deletions

65
flake.lock generated
View File

@@ -292,20 +292,16 @@
"gnome-shell": { "gnome-shell": {
"flake": false, "flake": false,
"locked": { "locked": {
"lastModified": 1748186689,
"narHash": "sha256-UaD7Y9f8iuLBMGHXeJlRu6U1Ggw5B9JnkFs3enZlap0=",
"lastModified": 1748186689, "lastModified": 1748186689,
"narHash": "sha256-UaD7Y9f8iuLBMGHXeJlRu6U1Ggw5B9JnkFs3enZlap0=", "narHash": "sha256-UaD7Y9f8iuLBMGHXeJlRu6U1Ggw5B9JnkFs3enZlap0=",
"owner": "GNOME", "owner": "GNOME",
"repo": "gnome-shell", "repo": "gnome-shell",
"rev": "8c88f917db0f1f0d80fa55206c863d3746fa18d0", "rev": "8c88f917db0f1f0d80fa55206c863d3746fa18d0",
"rev": "8c88f917db0f1f0d80fa55206c863d3746fa18d0",
"type": "github" "type": "github"
}, },
"original": { "original": {
"owner": "GNOME", "owner": "GNOME",
"ref": "48.2", "ref": "48.2",
"ref": "48.2",
"repo": "gnome-shell", "repo": "gnome-shell",
"type": "github" "type": "github"
} }
@@ -317,11 +313,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1751462021, "lastModified": 1751589297,
"narHash": "sha256-RUKSK5JFZ15hsQK8qgthbzP0iTuBlAYfnkH8tjz6SPU=", "narHash": "sha256-3q35cq6BPuwIRL3IoVKYPc72r3OleeuRyf4YAPjEqzA=",
"owner": "nix-community", "owner": "nix-community",
"repo": "home-manager", "repo": "home-manager",
"rev": "6c53df3b9c809e3b4b30d515e18bfa4c6f079254", "rev": "83f978812c37511ef2ffaf75ffa72160483f738a",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -382,14 +378,11 @@
"xwayland-satellite-unstable": "xwayland-satellite-unstable" "xwayland-satellite-unstable": "xwayland-satellite-unstable"
}, },
"locked": { "locked": {
"lastModified": 1751335430, "lastModified": 1751615996,
"narHash": "sha256-OVP1yknJHvRK+eIy56UZsf9kUXSmwlwitPa9dZ0/HWo=", "narHash": "sha256-Hys3QZbSRQLS+na6nitA2Pd7mADZXPR9fN4UpZdC01Q=",
"lastModified": 1751335430,
"narHash": "sha256-OVP1yknJHvRK+eIy56UZsf9kUXSmwlwitPa9dZ0/HWo=",
"owner": "sodiboo", "owner": "sodiboo",
"repo": "niri-flake", "repo": "niri-flake",
"rev": "fab3c874b28d95696225b4e575c3b6dc5d6058fe", "rev": "2f422b6ca7f4cd1f368b719fe27727e375b1fc39",
"rev": "fab3c874b28d95696225b4e575c3b6dc5d6058fe",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -500,11 +493,11 @@
"nixpkgs": "nixpkgs_2" "nixpkgs": "nixpkgs_2"
}, },
"locked": { "locked": {
"lastModified": 1751444861, "lastModified": 1751592500,
"narHash": "sha256-zEQOZt97TVDUxVX/s6JY+Yvjm7ri8uejXQ0zOrdaEy0=", "narHash": "sha256-yntDCqXzrfMzUkzvwPjCyK1AfKwkBXyVeXItmBRHAUo=",
"owner": "kaylorben", "owner": "kaylorben",
"repo": "nixcord", "repo": "nixcord",
"rev": "da2507d7613534513024ed07282f75ffef1cb8f0", "rev": "53ee7e4bd8cf17d055fcb89eea7465f0d96aca9b",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -515,14 +508,11 @@
}, },
"nixpkgs": { "nixpkgs": {
"locked": { "locked": {
"lastModified": 1751271578,
"narHash": "sha256-P/SQmKDu06x8yv7i0s8bvnnuJYkxVGBWLWHaU+tt4YY=",
"lastModified": 1751271578, "lastModified": 1751271578,
"narHash": "sha256-P/SQmKDu06x8yv7i0s8bvnnuJYkxVGBWLWHaU+tt4YY=", "narHash": "sha256-P/SQmKDu06x8yv7i0s8bvnnuJYkxVGBWLWHaU+tt4YY=",
"owner": "NixOS", "owner": "NixOS",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "3016b4b15d13f3089db8a41ef937b13a9e33a8df", "rev": "3016b4b15d13f3089db8a41ef937b13a9e33a8df",
"rev": "3016b4b15d13f3089db8a41ef937b13a9e33a8df",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -564,14 +554,11 @@
}, },
"nixpkgs-stable": { "nixpkgs-stable": {
"locked": { "locked": {
"lastModified": 1751211869, "lastModified": 1751479989,
"narHash": "sha256-1Cu92i1KSPbhPCKxoiVG5qnoRiKTgR5CcGSRyLpOd7Y=", "narHash": "sha256-M5KgdpVBVcW4HRVq9/OSRbrxlwsQ1ogEKqnvzsClDqU=",
"lastModified": 1751211869,
"narHash": "sha256-1Cu92i1KSPbhPCKxoiVG5qnoRiKTgR5CcGSRyLpOd7Y=",
"owner": "NixOS", "owner": "NixOS",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "b43c397f6c213918d6cfe6e3550abfe79b5d1c51", "rev": "34627c90f062da515ea358360f448da57769236e",
"rev": "b43c397f6c213918d6cfe6e3550abfe79b5d1c51",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -599,11 +586,11 @@
}, },
"nixpkgs_3": { "nixpkgs_3": {
"locked": { "locked": {
"lastModified": 1751064264, "lastModified": 1751271578,
"narHash": "sha256-FQQyEt6/Q3FNeCkY9Gu1JeKBLzRQnZL+WYkjc53shLM=", "narHash": "sha256-P/SQmKDu06x8yv7i0s8bvnnuJYkxVGBWLWHaU+tt4YY=",
"owner": "NixOS", "owner": "nixos",
"repo": "nixpkgs", "repo": "nixpkgs",
"rev": "c0874d923d0fd19d73d95a02820acd27ae11e320", "rev": "3016b4b15d13f3089db8a41ef937b13a9e33a8df",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -698,11 +685,11 @@
] ]
}, },
"locked": { "locked": {
"lastModified": 1751354716, "lastModified": 1751521639,
"narHash": "sha256-bLMNn3gh09gtkIEwZW3USt4ehLrmwmfnb3rqahYBI+4=", "narHash": "sha256-9Iy9VHgdMMIEZDn1XHkD0+AOy9RFGYBbXKEh3RiPlKE=",
"ref": "refs/heads/master", "ref": "refs/heads/master",
"rev": "f681e2016fd71b42985bd520b3a20c62488582e9", "rev": "0e6518a7061b49693e2d8d8b9a2b787c6221ae61",
"revCount": 599, "revCount": 601,
"type": "git", "type": "git",
"url": "https://git.outfoxxed.me/outfoxxed/quickshell" "url": "https://git.outfoxxed.me/outfoxxed/quickshell"
}, },
@@ -748,11 +735,11 @@
"tinted-zed": "tinted-zed" "tinted-zed": "tinted-zed"
}, },
"locked": { "locked": {
"lastModified": 1751405764, "lastModified": 1751602277,
"narHash": "sha256-romzrDMOWMPZioeChZnrugwaUSpROfkWClHhWHuRnRQ=", "narHash": "sha256-mlJeMDyj+B9QYNw/f9YdlBzvq6mcQ3dx5qjfepzV70I=",
"owner": "nix-community", "owner": "nix-community",
"repo": "stylix", "repo": "stylix",
"rev": "5b257989a8337dddc22aa04a70d3665d0384abef", "rev": "3c73dee2dbdf242a16a6e929f3e574dd0694d85a",
"type": "github" "type": "github"
}, },
"original": { "original": {
@@ -933,11 +920,11 @@
"nixpkgs": "nixpkgs_5" "nixpkgs": "nixpkgs_5"
}, },
"locked": { "locked": {
"lastModified": 1751440815, "lastModified": 1751599118,
"narHash": "sha256-cBEcG90ahVVPMKEHiyn13KT7cxpcEwSOqrLhgz5/M9k=", "narHash": "sha256-3a47LxEZ7751Wd5upwZa8psX5mRsYACQgS2WxY5zitc=",
"owner": "0xc000022070", "owner": "0xc000022070",
"repo": "zen-browser-flake", "repo": "zen-browser-flake",
"rev": "a37c444f51b3e7df8ea3333c57a4154c6b09dc39", "rev": "a3566f5b9c6ec2fa490976051889ebada20910b4",
"type": "github" "type": "github"
}, },
"original": { "original": {

View File

@@ -99,7 +99,7 @@ in
".config/nixpkgs/config.nix".text = '' ".config/nixpkgs/config.nix".text = ''
{ allowUnfree = true; } { allowUnfree = true; }
''; '';
".config/doom".source = ../dots/doom; #".config/doom".source = ../dots/doom;
".config/quickshell".source = ../dots/quickshell; ".config/quickshell".source = ../dots/quickshell;
#".config/kitty".source = ../../universal/dots/kitty; #".config/kitty".source = ../../universal/dots/kitty;
#".config/nvim".source = ../../universal/dots/nvim; #".config/nvim".source = ../../universal/dots/nvim;

View File

@@ -100,7 +100,7 @@ in
".config/nixpkgs/config.nix".text = '' ".config/nixpkgs/config.nix".text = ''
{ allowUnfree = true; } { allowUnfree = true; }
''; '';
".config/doom".source = ../dots/doom; #".config/doom".source = ../dots/doom;
".config/quickshell".source = ../dots/quickshell; ".config/quickshell".source = ../dots/quickshell;
#".config/kitty".source = ../../universal/dots/kitty; #".config/kitty".source = ../../universal/dots/kitty;
#".config/nvim".source = ../../universal/dots/nvim; #".config/nvim".source = ../../universal/dots/nvim;

View File

@@ -16,6 +16,9 @@
efi.canTouchEfiVariables = true; efi.canTouchEfiVariables = true;
}; };
initrd.kernelModules = lib.mkMerge [ initrd.kernelModules = lib.mkMerge [
[
"btusb"
]
(lib.mkIf (systemName == "laptop") [ (lib.mkIf (systemName == "laptop") [
"kvm" "kvm"
]) ])
@@ -25,9 +28,11 @@
]) ])
]; ];
kernelPackages = pkgs.linuxPackages_zen; kernelPackages = pkgs.linuxPackages_latest;
kernelModules = [ "v4l2loopback" ]; kernelModules = [ "v4l2loopback" ];
extraModulePackages = [ pkgs.linuxPackages_zen.v4l2loopback ]; extraModulePackages = [
pkgs.linuxPackages_latest.v4l2loopback
];
kernelParams = lib.mkMerge [ kernelParams = lib.mkMerge [
(lib.mkIf (systemName == "laptop") [ (lib.mkIf (systemName == "laptop") [
"ipv6e=1" "ipv6e=1"

View File

@@ -59,6 +59,7 @@ in
{ {
programs.gamescope = { programs.gamescope = {
enable = true; enable = true;
}; };
nixpkgs.config = { nixpkgs.config = {
allowUnfree = true; allowUnfree = true;
@@ -89,10 +90,17 @@ in
programs.virt-manager.enable = true; programs.virt-manager.enable = true;
programs.zsh.enable = true; programs.zsh.enable = true;
programs.corectrl.enable = true; programs.corectrl.enable = true;
programs.opengamepadui = {
enable = true;
gamescopeSession.enable = true;
};
programs.steam = { programs.steam = {
enable = true; enable = true;
remotePlay.openFirewall = true; # Open ports in the firewall for Steam Remote Play remotePlay.openFirewall = true; # Open ports in the firewall for Steam Remote Play
dedicatedServer.openFirewall = true; # Open ports in the firewall for Source Dedicated Server dedicatedServer.openFirewall = true; # Open ports in the firewall for Source Dedicated Server
gamescopeSession = {
enable = true;
};
}; };
# enable dynamic bin executables # enable dynamic bin executables
programs.nix-ld.enable = true; programs.nix-ld.enable = true;
@@ -178,6 +186,7 @@ in
gnumake gnumake
gcc gcc
libtool libtool
ladspaPlugins
inputs.nix-alien.packages.${pkgs.system}.nix-alien inputs.nix-alien.packages.${pkgs.system}.nix-alien
]; ];
} }

View File

@@ -40,62 +40,13 @@
pulse.enable = true; pulse.enable = true;
jack.enable = true; jack.enable = true;
extraConfig.pipewire = { extraConfig.pipewire = {
# the key "00-clock-rate" names the drop-in file "92-low-latency" = {
"00-clock-rate" = { "context.properties" = {
# these properties go under [context.properties] in pipewire.conf
context.properties = {
# force the graph sample rate
"default.clock.rate" = 48000; "default.clock.rate" = 48000;
# tell PipeWire which other rates you allow it to switch to "default.clock.allowed-rates" = [ 48000 ];
"default.clock.allowed-rates" = [
44100
48000
96000
];
# quantum = number of frames per period (i.e. buffer size)
"default.clock.min-quantum" = 32;
"default.clock.max-quantum" = 8192;
}; };
}; };
"99-input-denoising" = {
"context.modules" = [
{
"name" = "libpipewire-module-filter-chain";
"args" = {
"node.description" = "Noise Canceling source";
"media.name" = "Noise Canceling source";
"filter.graph" = {
"nodes" = [
{
"type" = "ladspa";
"name" = "rnnoise";
"plugin" = "${pkgs.rnnoise-plugin}/lib/ladspa/librnnoise_ladspa.so";
"label" = "noise_suppressor_mono";
"control" = {
"VAD Threshold (%)" = 20.0;
"VAD Grace Period (ms)" = 200;
"Retroactive VAD Grace (ms)" = 0;
};
}
];
};
"capture.props" = {
"node.name" = "effect_input.rnnoise";
"node.passive" = true;
"audio.rate" = 48000;
};
"playback.props" = {
"node.name" = "effect_output.rnnoise";
"media.class" = "Audio/Source";
"audio.rate" = 48000;
};
};
}
];
};
}; };
}) })
(lib.mkIf (systemName == "pc") { (lib.mkIf (systemName == "pc") {
enable = true; enable = true;
@@ -106,49 +57,63 @@
extraConfig.pipewire = { extraConfig.pipewire = {
"92-low-latency" = { "92-low-latency" = {
"context.properties" = { "context.properties" = {
"default.clock.rate" = 48000; "default.clock.rate" = 96000;
"default.clock.allowed-rates" = [ 48000 ]; "default.clock.allowed-rates" = [
44100
48000
96000
];
}; };
}; };
"99-input-denoising" = { #"93-mic-gain" = {
"context.modules" = [ # "context.modules" = [
{ # {
"name" = "libpipewire-module-filter-chain"; # name = "libpipewire-module-filter-chain";
"args" = { # args = {
"node.description" = "Noise Canceling source"; # node.description = "Mic Gain Boost";
"media.name" = "Noise Canceling source"; # media.name = "Mic Gain Boost";
"filter.graph" = { # filter.graph = {
"nodes" = [ # nodes = [
{ # {
"type" = "ladspa"; # type = "ladspa";
"name" = "rnnoise"; # name = "gain";
"plugin" = "${pkgs.rnnoise-plugin}/lib/ladspa/librnnoise_ladspa.so"; # plugin = "amp"; # LADSPA amplifier plugin
"label" = "noise_suppressor_mono"; # label = "amp_mono";
"control" = { # control = {
"VAD Threshold (%)" = 50.0; # "Gain" = 12.0; # Boost gain by 12 dB (adjust as needed)
"VAD Grace Period (ms)" = 200; # };
"Retroactive VAD Grace (ms)" = 0; # }
}; # ];
} # };
]; # capture.props = {
}; # "node.name" = "effect_input.mic_boost";
# "audio.position" = [ "MONO" ];
"capture.props" = { # };
"node.name" = "effect_input.rnnoise"; # playback.props = {
"node.passive" = true; # "node.name" = "effect_output.mic_boost";
"audio.rate" = 48000; # "audio.position" = [ "MONO" ];
}; # };
"playback.props" = { # };
"node.name" = "effect_output.rnnoise"; # }
"media.class" = "Audio/Source"; # ];
"audio.rate" = 48000; #};
};
};
}
];
};
}; };
#wireplumber.extraConfig = {
# "monitor.alsa.rules" = {
# rule1 = { # Give the rule a unique name
# matches = [
# { "node.name" = "~alsa_input.*"; }
# ];
# actions = {
# update-props = {
# "api.alsa.soft-mixer" = true;
# "api.alsa.volume" = "100%";
# "api.alsa.headroom" = 0;
# };
# };
# };
# };
#};
}) })
]; ];
@@ -165,7 +130,7 @@
# List services that you want to enable: # List services that you want to enable:
services.emacs = { services.emacs = {
enable = true; enable = true;
package = pkgs.emacs-gtk; # replace with emacs-gtk, or a version provided by the community overlay if desired. package = pkgs.emacs-pgtk; # replace with emacs-gtk, or a version provided by the community overlay if desired.
}; };
services.sunshine = lib.mkIf (systemName == "pc") { services.sunshine = lib.mkIf (systemName == "pc") {
enable = true; enable = true;