some updates mostly for bluetooth and games

This commit is contained in:
Matt Nish-Lapidus 2025-03-04 13:15:26 -05:00
parent 04c1b47619
commit 3a9fea436d
6 changed files with 103 additions and 80 deletions

View file

@ -7,6 +7,7 @@
}:
{
imports = with nix-config.nixosModules; [
./hardware-configuration.nix
./razer-speaker-fix.nix
@ -40,12 +41,6 @@
});
})
(fina: prev: {
development.python-modules.openrazer = pkgs.development.python-modules.openrazer.overrideAttrs (old: {
patches = old.patches ++ [ ../../patches/openrazer-384992.patch ];
});
})
(final: prev: {
bitwig-studio5-3 = nix-config.packages.x86_64-linux.bitwig-studio.bitwig-bubblewrap.override {
bitwig-studio = nix-config.packages.x86_64-linux.bitwig-studio.bitwig-studio5-3-unwrapped;
@ -104,7 +99,7 @@
# bright.cyan
# bright.white
"282c34"
"111111"
"e06c75"
"98c379"
"e5c07b"
@ -152,7 +147,7 @@
ddcutil
ddcui
greetd.tuigreet
bluez-tools
nix-config.pkgs-stable.bluez-tools
bluetui
qemu
@ -165,10 +160,6 @@
spice-protocol
win-virtio
win-spice
protonup
steam-run
mangohud
];
# Bootloader.
@ -187,10 +178,14 @@
"ddcci-backlight"
"amd_3d_vcache"
"uinput"
"hid-playstation"
"xpadneo"
"amd_pstate=active"
];
extraModulePackages = with config.boot.kernelPackages; [ ddcci-driver ];
extraModulePackages = with config.boot.kernelPackages; [ ddcci-driver xpadneo openrazer ];
extraModprobeConfig = ''
options bluetooth disable_ertm=Y
'';
initrd.systemd.enable = true;
initrd.kernelModules = [
"nvidia"
@ -270,8 +265,26 @@
};
brillo.enable = true;
xpadneo.enable = true;
steam-hardware.enable = true;
bluetooth = {
enable = true;
package = nix-config.pkgs-stable.bluez;
settings = {
General = {
Enable = "Source,Sink,Media,Socket";
AutoEnable = true;
ControllerMode = "bredr";
Privacy = "device";
JustWorksRepairing = "always";
Class = "0x000100";
FastConnectable = true;
};
};
};
};
services.blueman.enable = true;
services.fstrim.enable = true;
services.logind = {
@ -282,18 +295,19 @@
};
services.udev = {
extraRules = ''
KERNEL=="uinput", MODE="0660", GROUP="uinput", OPTIONS+="static_node=uinput"
DEVPATH=="/devices/virtual/misc/cpu_dma_latency", OWNER="root", GROUP="audio", MODE="0660"
ACTION=="add", SUBSYSTEM=="backlight", KERNEL=="ddcci*", RUN+="${pkgs.coreutils-full}/bin/chgrp video /sys/class/backlight/%k/brightness"
ACTION=="add", SUBSYSTEM=="backlight", KERNEL=="ddcci*", RUN+="${pkgs.coreutils-full}/bin/chmod a+w /sys/class/backlight/%k/brightness"
ACTION=="add", SUBSYSTEM=="i2c-dev", ATTR{name}=="AMDGPU DM*", TAG+="ddcci", TAG+="systemd", ENV{SYSTEMD_WANTS}+="ddcci@$kernel.service"
ACTION=="add", SUBSYSTEM=="i2c-dev", ATTR{name}=="NVIDIA i2c adapter*", TAG+="ddcci", TAG+="systemd", ENV{SYSTEMD_WANTS}+="ddcci@$kernel.service"
SUBSYSTEM=="i2c", ACTION=="add", ATTR{name}=="AMDGPU DM aux hw bus 3", RUN+="${pkgs.bash}/bin/bash -c 'sleep 30; printf ddcci\ 0x37 > /sys/bus/i2c/devices/i2c-17/new_device'"
KERNEL=="uinput", MODE="0660", GROUP="uinput", OPTIONS+="static_node=uinput"
DEVPATH=="/devices/virtual/misc/cpu_dma_latency", OWNER="root", GROUP="audio", MODE="0660"
ACTION=="add", SUBSYSTEM=="backlight", KERNEL=="ddcci*", RUN+="${pkgs.coreutils-full}/bin/chgrp video /sys/class/backlight/%k/brightness"
ACTION=="add", SUBSYSTEM=="backlight", KERNEL=="ddcci*", RUN+="${pkgs.coreutils-full}/bin/chmod a+w /sys/class/backlight/%k/brightness"
ACTION=="add", SUBSYSTEM=="i2c-dev", ATTR{name}=="AMDGPU DM*", TAG+="ddcci", TAG+="systemd", ENV{SYSTEMD_WANTS}+="ddcci@$kernel.service"
ACTION=="add", SUBSYSTEM=="i2c-dev", ATTR{name}=="NVIDIA i2c adapter*", TAG+="ddcci", TAG+="systemd", ENV{SYSTEMD_WANTS}+="ddcci@$kernel.service"
SUBSYSTEM=="i2c", ACTION=="add", ATTR{name}=="AMDGPU DM aux hw bus 3", RUN+="${pkgs.bash}/bin/bash -c 'sleep 30; printf ddcci\ 0x37 > /sys/bus/i2c/devices/i2c-17/new_device'"
'';
packages = [
pkgs.via
pkgs.vial
pkgs.ddcutil
pkgs.game-devices-udev-rules
(pkgs.writeTextFile {
name = "on-battery";
@ -505,32 +519,32 @@
services.qemuGuest.enable = true;
services.spice-vdagentd.enable = true;
systemd.network.enable = true;
# systemd.network.enable = true;
systemd.network.networks."10-lan" = {
matchConfig.Name = ["eno1" "vm-*"];
networkConfig = {
Bridge = "br0";
};
};
# systemd.network.networks."10-lan" = {
# matchConfig.Name = ["eno1" "vm-*"];
# networkConfig = {
# Bridge = "br0";
# };
# };
systemd.network.netdevs."br0" = {
netdevConfig = {
Name = "br0";
Kind = "bridge";
};
};
# systemd.network.netdevs."br0" = {
# netdevConfig = {
# Name = "br0";
# Kind = "bridge";
# };
# };
systemd.network.networks."10-lan-bridge" = {
matchConfig.Name = "br0";
networkConfig = {
Address = ["192.168.1.2/24" "2001:db8::a/64"];
Gateway = "192.168.1.1";
DNS = ["192.168.1.1"];
IPv6AcceptRA = true;
};
linkConfig.RequiredForOnline = "routable";
};
# systemd.network.networks."10-lan-bridge" = {
# matchConfig.Name = "br0";
# networkConfig = {
# Address = ["192.168.1.2/24" "2001:db8::a/64"];
# Gateway = "192.168.1.1";
# DNS = ["192.168.1.1"];
# IPv6AcceptRA = true;
# };
# linkConfig.RequiredForOnline = "routable";
# };
programs.appimage = {
enable = true;