Compare commits

..

9 commits

6 changed files with 122 additions and 41 deletions

48
flake.lock generated
View file

@ -263,11 +263,11 @@
"nixpkgs-stable": "nixpkgs-stable"
},
"locked": {
"lastModified": 1763802616,
"narHash": "sha256-NAM5+fVkVZVG9jKJIASrim7vWnvTBuiQE6jNGrBZ/+o=",
"lastModified": 1763889031,
"narHash": "sha256-bwPx3lhUTzpZ4q1REJiXpBlnPZPh4/vUkvvE0Pe0H0Y=",
"owner": "nix-community",
"repo": "emacs-overlay",
"rev": "11685793fdec8620af31ededc13d4fbb9880b3cf",
"rev": "16c77c439f89eacc4d665741114b763513869ef1",
"type": "github"
},
"original": {
@ -781,11 +781,11 @@
]
},
"locked": {
"lastModified": 1763748372,
"narHash": "sha256-AUc78Qv3sWir0hvbmfXoZ7Jzq9VVL97l+sP9Jgms+JU=",
"lastModified": 1763869804,
"narHash": "sha256-2lw+MnkrnygEyUl+3qZjnlCCJF/kJ57GUtYkAQPfLDA=",
"owner": "nix-community",
"repo": "home-manager",
"rev": "d10a9b16b2a3ee28433f3d1c603f4e9f1fecb8e1",
"rev": "04c27d743d069cad58f9707ee8e165c471b1c7cd",
"type": "github"
},
"original": {
@ -1314,11 +1314,11 @@
]
},
"locked": {
"lastModified": 1763769887,
"narHash": "sha256-Viyww4Atra7fD4IuhUwFGBtkyIgzuG3lLXu9gdGdEaU=",
"lastModified": 1763856300,
"narHash": "sha256-OXe/ZZqYoDmjqy19fuJzE9oR6XQH8IEGYjkDGGdQB5M=",
"owner": "nix-community",
"repo": "neovim-nightly-overlay",
"rev": "34efe16d64996dca36f9bae9fb954a867f9d2680",
"rev": "3e067256eaa258df675cafaed2bcef55b41ecb60",
"type": "github"
},
"original": {
@ -1330,11 +1330,11 @@
"neovim-src": {
"flake": false,
"locked": {
"lastModified": 1763766790,
"narHash": "sha256-GLflfd2+d4KEwvwapZGvjVuYUFAsbpDxEkgmOni89JM=",
"lastModified": 1763846764,
"narHash": "sha256-MTdbS6zBlxLJCMtPU394xUHk+wnK8aqVj4egblAiGGo=",
"owner": "neovim",
"repo": "neovim",
"rev": "1c12073db6c64eb365748f153f96be9b0fe61070",
"rev": "4bbdffe8298e8bf6e0590684092a25f5effc0f14",
"type": "github"
},
"original": {
@ -1412,11 +1412,11 @@
]
},
"locked": {
"lastModified": 1763265660,
"narHash": "sha256-Ad9Rd3ZAidrH01xP73S3CjPiyXo7ywZs3uCESjPwUdc=",
"lastModified": 1763870992,
"narHash": "sha256-NPyc76Wxmv/vAsXJ8F+/8fXECHYcv2YGSqdiSHp/F/A=",
"owner": "nix-community",
"repo": "nix-index-database",
"rev": "469ef53571ea80890c9497952787920c79c1ee6e",
"rev": "d7423982c7a26586aa237d130b14c8b302c7a367",
"type": "github"
},
"original": {
@ -1551,11 +1551,11 @@
},
"nixpkgs_4": {
"locked": {
"lastModified": 1763421233,
"narHash": "sha256-Stk9ZYRkGrnnpyJ4eqt9eQtdFWRRIvMxpNRf4sIegnw=",
"lastModified": 1763678758,
"narHash": "sha256-+hBiJ+kG5IoffUOdlANKFflTT5nO3FrrR2CA3178Y5s=",
"owner": "nixos",
"repo": "nixpkgs",
"rev": "89c2b2330e733d6cdb5eae7b899326930c2c0648",
"rev": "117cc7f94e8072499b0a7aa4c52084fa4e11cc9b",
"type": "github"
},
"original": {
@ -1832,11 +1832,11 @@
"tinted-zed": "tinted-zed"
},
"locked": {
"lastModified": 1763767967,
"narHash": "sha256-BMiqCHUxp2zoAjWCpvj5Scf0J+yTiXpkBlFuRo2nFIg=",
"lastModified": 1763845141,
"narHash": "sha256-o8TKdZluj/yC8qPIVNe2g4qopyFmQglH52+lvQx82kE=",
"owner": "danth",
"repo": "stylix",
"rev": "cd11c057b054609b8463c20e6065de424b30b89d",
"rev": "adc650610085adbe130b9860d5bdb869f96050af",
"type": "github"
},
"original": {
@ -2183,11 +2183,11 @@
]
},
"locked": {
"lastModified": 1763780714,
"narHash": "sha256-n2T7r5HkxofkT3mIbb2bNkzacBdhP/bVeph/yGNnBek=",
"lastModified": 1763875162,
"narHash": "sha256-D47ODwc9dzggJkEpnXWVT7//OscV95oRgDYPZKLZBy8=",
"owner": "0xc000022070",
"repo": "zen-browser-flake",
"rev": "ef951ed2d976bcd1f57a09f358fdda9fa9425018",
"rev": "485ae582204e904b59cb8f8f6492ae8c6991f8c5",
"type": "github"
},
"original": {

View file

@ -23,11 +23,11 @@
# Use the xanmod kernel
boot.kernelPackages = pkgs.linuxPackages_cachyos-lto;
# services.scx = {
# enable = true;
# scheduler = "scx_lavd";
# extraArgs = ["--performance" "--no-core-compaction"];
# };
services.scx = {
enable = true;
scheduler = "scx_lavd";
extraArgs = ["--performance" "--no-core-compaction"];
};
# Get nicer hostname
networking.hostName = "skadi"; # Define your hostname.
@ -140,13 +140,45 @@
enable = true;
support32Bit = true;
};
extraConfig = {
pipewire."99-silent.bell.conf" = {
"context.properties" = {
"modules.x11.bell" = false;
};
};
pipewire."92-low-latency" = {
"context.properties" = {
"default.clock.rate" = 48000;
"default.clock.quantum" = 64;
"default.clock.min-quantum" = 64;
"default.clock.max-quantum" = 64;
};
};
pipewire-pulse."92-low-latency" = {
"context.properties" = [
{
name = "libpipewire-module-protocol-pulse";
args = {};
}
];
"pulse.properties" = {
"pulse.min.req" = "64/48000";
"pulse.default.req" = "64/48000";
"pulse.max.req" = "64/48000";
"pulse.min.quantum" = "64/48000";
"pulse.max.quantum" = "64/48000";
};
"stream.properties" = {
"node.latency" = "64/48000";
"resample.quality" = 1;
};
};
};
};
# Fix not saving my state
hardware.alsa.enablePersistence = true;
programs.niri.enable = true;
# Enable appimages
programs.appimage = {
enable = true;
@ -259,7 +291,6 @@
lm_sensors
libva-utils
alsa-utils
xwayland-satellite
];
# Enable nixd to see nixpkgs path

View file

@ -27,9 +27,6 @@
# Let Home Manager install and manage itself.
programs.home-manager.enable = true;
# Easyeffects
services.easyeffects.enable = true;
# Fix missing icons
gtk = {
enable = true;

View file

@ -155,7 +155,7 @@ in {
cursor = {
# Breaks mouse in fullscreen
# no_break_fs_vrr = 1;
no_break_fs_vrr = 1;
no_hardware_cursors = 1;
# use_cpu_buffer = 0;
};
@ -202,7 +202,7 @@ in {
};
misc = {
vrr = 2;
vrr = 3;
};
input = {
@ -330,6 +330,15 @@ in {
"idle_inhibit fullscreen, match:class ^(*)$"
"idle_inhibit fullscreen, match:title ^(*)$"
"idle_inhibit fullscreen, match:fullscreen 1"
# Set game type for gamescope windows
"match:class ^(gamescope)$, content game"
# Set game type for steam_app games
"match:class ^(steam_app_.*), content game"
# Enable tearing for games
"immediate yes, match:content 3"
];
};
};

View file

@ -1,15 +1,56 @@
{
config,
pkgs,
lib,
...
}: {
}: let
inherit (pkgs) rnnoise-plugin;
in {
options = {
crony.pipewire.enable = lib.mkEnableOption "Setup some config files for my pipewire/wireplumber setup.";
};
config = lib.mkIf config.crony.pipewire.enable {
home.file = {
".config/pipewire" = {source = ./configs/pipewire;};
xdg.configFile."pipewire/pipewire.conf.d/99-rnnoise.conf" = {
text = builtins.toJSON {
"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 = "${rnnoise-plugin}/lib/ladspa/librnnoise_ladspa.so";
label = "noise_suppressor_mono";
control = {
"VAD Threshold (%)" = 80.0;
"VAD Grace Period (ms)" = 200;
"Retroactive VAD Grace (ms)" = 0;
};
}
];
};
"capture.props" = {
"node.name" = "capture.rnnoise_source";
"node.passive" = true;
"audio.rate" = 48000;
};
"playback.props" = {
"node.name" = "rnnoise_source";
"media.class" = "Audio/Source";
"audio.rate" = 48000;
};
};
}
];
};
};
};
}

View file

@ -19,7 +19,7 @@
# Enable gamescope
programs.gamescope = {
enable = true;
capSysNice = true;
# capSysNice = true;
package = pkgs.gamescope_git;
};
# Install gamemode
@ -31,6 +31,9 @@
softrealtime = "auto";
renice = 10;
};
cpu = {
pin_cores = "no";
};
custom = {
start = "${pkgs.libnotify}/bin/notify-send 'GameMode started'";
end = "${pkgs.libnotify}/bin/notify-send 'GameMode ended'";