feat: various things, particularly vr

This commit is contained in:
Kat Inskip 2025-11-11 22:28:30 -08:00
parent e9b291078d
commit 7e70c182e5
Signed by: kat
GPG key ID: 465E64DECEA8CF0F
24 changed files with 337 additions and 65 deletions

View file

@ -1,6 +1,8 @@
{pkgs, ...}: {
fonts = {
packages = with pkgs; [
atkinson-hyperlegible-next
atkinson-hyperlegible-mono
twitter-color-emoji
cozette
monaspace

View file

@ -1,5 +1,6 @@
{pkgs, ...}: {
environment.systemPackages = [
pkgs.magic-wormhole
pkgs.ntfy-sh
];
}

View file

@ -1,5 +1,6 @@
ssh-notify: ENC[AES256_GCM,data:Dyuw8cxipVPKOI7/OYiK7OyyrDrIbqp8YxyLfAbY/YJZ8xVOqv1hyrrqhRYWQo+jUi9BRA==,iv:lKUdpiWBvKr5qpo5Z/Ky2SwKk5fDGAysbbDTYrjV+m4=,tag:JwbJXiA/e3qAUsLFLatUxg==,type:str]
tailscale-key: ENC[AES256_GCM,data:FK237Or4qtZGon9tevPh4q568+IUSWxfuG8s2ZNLXWgoa76GoyO+qwCmvXiVibRH1Ljo/LXoNQjb2pYV7w==,iv:UZv+EnlRDOWh86sOFh7ZNryPz1r55u+Dbr/dDL/USjo=,tag:B8DJwPXR/50ARbfyfxPtcw==,type:str]
notify-token: ENC[AES256_GCM,data:Cb6ssSkclOoqlxTvTjbbzqfJHpw6oRGZfq3csIZQoi5bqxRulF6sjFehP+zzJJP7,iv:/pG5UvuFB/eWgulmjbZtEPB2R/HVmTcwr+DuSNmhePk=,tag:8PBAgt0wPX0n539W2JV5EA==,type:str]
sops:
shamir_threshold: 1
age:
@ -84,8 +85,8 @@ sops:
RGova3pLS2VpRzB2VWhIcnRISlVUS3cKGyKpvwd5wr1melbtgbXAoo2qRYhWoJ8x
ZCn/vismSmoM+OR/JVXpDiSHGfvxWBEnLj41yV82wsT1hSqigXjdUw==
-----END AGE ENCRYPTED FILE-----
lastmodified: "2025-10-13T19:36:20Z"
mac: ENC[AES256_GCM,data:FZwCV9hd3lZfN9qXzGHPmUcRfpZhaFoZZYECIrMPdqfxQG87THS53rk1Iy0It/+G1S68I5aNR0ednVCEUO/x/T+Is3a5F+RSqIwvH4ndMKmjlFhb4Uh8cp9txJyabnuRexx08OXEC/Dz0ad7VbcmG8KCo56MJm2wbbPaBEgeY04=,iv:i/CCqPJCKOsKBkmAOo/6/zjM82LL7+YDb/v95HpISfE=,tag:hgmnmb4+PIOjSKp1STjgtg==,type:str]
lastmodified: "2025-10-28T11:05:18Z"
mac: ENC[AES256_GCM,data:OGYjjVtNUxiGIwYPc5S6eEhAAEhqZC7oWo0lH+egfpojlpFkaswoj2LhvNoehfUGuedw5hed+B3vXuKT5Cs7m+9cQWCF4wneDDikUB+j+H9L1Nfzpni/b1/xfo0sQN7p48mqRKKz3a79hefGcAbx3ntrBK2Na9aSxzS70bMuKBg=,iv:impbp557hKM5dUPvYTVtaUZ/uy7+p6tNPDewfzc195o=,tag:HfxGX6QSkdr5UMWvcL1N/w==,type:str]
pgp:
- created_at: "2025-06-27T20:11:08Z"
enc: |-

View file

@ -26,16 +26,16 @@
polarity = "dark";
fonts = {
sansSerif = {
name = "CozetteCrossedSevenVector";
package = pkgs.cozette;
name = "Atkinson Hyperlegible Next";
package = pkgs.atkinson-hyperlegible-next;
};
serif = {
name = "Libre Baskerville";
package = pkgs.libre-baskerville;
};
monospace = {
name = "CozetteCrossedSevenVector";
package = pkgs.cozette;
name = "Atkinson Hyperlegible Mono";
package = pkgs.atkinson-hyperlegible-mono;
};
};
autoEnable = true;

View file

@ -1,7 +1,18 @@
{pkgs, ...}: {
{
pkgs,
inputs,
...
}: {
environment.systemPackages = with pkgs; [
gsettings-desktop-schemas
slimevr
slimevr-server
inputs.slimevr-wrangler.packages.${pkgs.system}.slimevr-wrangler
];
networking.firewall = {
allowedUDPPorts = [6969 8266 35903];
allowedTCPPorts = [21110];
};
programs.adb.enable = true;
users.users.kat.extraGroups = ["adbusers"];
services.udev.extraRules = ''

View file

@ -1,14 +1,15 @@
{pkgs, ...}: {
{
pkgs,
inputs,
...
}: {
programs.steam = {
enable = true;
package = pkgs.steam.override {
extraProfile = ''
unset TZ
'';
};
remotePlay.openFirewall = true;
platformOptimizations.enable = true;
extraCompatPackages = [
inputs.chaotic.packages.${pkgs.system}.proton-cachyos_x86_64_v3
inputs.chaotic.packages.${pkgs.system}.proton-ge-custom
];
};
}

View file

@ -1,8 +1,27 @@
{pkgs, ...}: {
{
pkgs,
lib,
...
}: {
services.wivrn = {
enable = true;
openFirewall = true;
package = pkgs.wivrn.override {cudaSupport = true;};
package = pkgs.wivrn.overrideAttrs (old: rec {
cudaSupport = true;
version = "84e5203be3019278925ac03708567f2982360f8a";
src = pkgs.fetchFromGitHub {
owner = "notpeelz";
repo = "WiVRn";
rev = version;
# This will throw an error when evaluating and give you the correct hash - put that here
hash = "sha256-2s3j6vRtIRf6x+lQPobcuT1vzlCh1lMA54EUiCnxoFI=";
};
cmakeFlags =
old.cmakeFlags
++ [
(lib.cmakeBool "WIVRN_FEATURE_SOLARXR" true)
];
});
defaultRuntime = true;
config = {
enable = true;

View file

@ -27,17 +27,8 @@ in {
];
runnerEnvironments = {
common = {
# inherit WINEDEBUG;
PROTON_LOG = builtins.toString 1;
WINEDEBUG = concatStringsSep "," [
"+warn"
"+timestamp"
"+pid"
"+tid"
"+seh"
"+debugstr"
#"+module"
"trace:-module"
];
WINEUSERSANDBOX = builtins.toString 1;
};
dxvk = {
@ -85,6 +76,7 @@ in {
protonCommon = {
runner = "proton";
variant = "PROTON_GE";
enableGamemode = true;
environments = [
"common"
"proton"
@ -169,7 +161,10 @@ in {
gw1 = mkMerge [
protonCommon
#wineCommon
rec {
#variant = mkForce "PROTON_CACHYOS";
#variant = mkForce "PROTON_GE";
long_name = "Guild Wars 1";
prefixFolder = gameStorage + "/guild-wars";
gameFolder = prefixFolder + "/drive_c/Program Files/Guild Wars";
@ -256,6 +251,9 @@ in {
driversi686Linux.mesa
];
};
programs.gamemode = {
enable = true;
};
programs.gamescope = {
enable = true;
package = pkgs.gamescope;
@ -275,6 +273,7 @@ in {
};
pfxes = [
"Games/VNs/drive_c/windows"
"Games/guild-wars/drive_c/windows"
];
arches = {
"x32" = "system32";

View file

@ -7,7 +7,7 @@
waylandFrontend = true;
addons = with pkgs; [
fcitx5-anthy
fcitx5-gtk
fcitx5-gtk # TODO: Broken: 2025-10-28
];
};
};

View file

@ -1,4 +1,16 @@
{pkgs, ...}: {
{pkgs, ...}: let
bitrate_int = 48 * 1000;
bitrate = toString bitrate_int;
ll_quant_int = 512;
ll_quant = toString ll_quant_int;
ml_quant_int = 1024;
ml_quant = toString hl_quant_int;
hl_quant_int = 2048;
hl_quant = toString hl_quant_int;
minQuant = "${ll_quant}/${bitrate}";
midQuant = "${ml_quant}/${bitrate}";
maxQuant = "${hl_quant}/${bitrate}";
in {
environment.systemPackages = with pkgs; [pulsemixer pwvucontrol easyeffects];
services = {
@ -12,10 +24,10 @@
extraConfig = {
pipewire."92-low-latency" = {
"context.properties" = {
"default.clock.rate" = 48000;
"default.clock.quantum" = 256;
"default.clock.min-quantum" = 256;
"default.clock.max-quantum" = 256;
"default.clock.rate" = bitrate_int;
"default.clock.quantum" = ml_quant_int;
"default.clock.min-quantum" = ll_quant_int;
"default.clock.max-quantum" = hl_quant_int;
};
};
pipewire-pulse = {
@ -25,7 +37,7 @@
matches = [{"application.process.binary" = "Discord";}];
actions = {
update-props = {
"pulse.min.quantum" = "1024/48000";
"pulse.min.quantum" = midQuant;
};
};
}
@ -39,14 +51,14 @@
}
];
"pulse.properties" = {
"pulse.min.req" = "512/48000";
"pulse.default.req" = "512/48000";
"pulse.max.req" = "512/48000";
"pulse.min.quantum" = "512/48000";
"pulse.max.quantum" = "512/48000";
"pulse.min.req" = minQuant;
"pulse.default.req" = midQuant;
"pulse.max.req" = maxQuant;
"pulse.min.quantum" = minQuant;
"pulse.max.quantum" = maxQuant;
};
"stream.properties" = {
"node.latency" = "256/48000";
"node.latency" = minQuant;
"resample.quality" = 1;
};
};

View file

@ -1,4 +1,4 @@
{pkgs, ...}: {
boot.zfs.package = pkgs.zfs_cachyos;
boot.kernelPackages = pkgs.linuxPackages_cachyos-lto;
boot.kernelPackages = pkgs.linuxPackages_cachyos;
}

View file

@ -1,7 +1,7 @@
{pkgs, ...}: {
services.scx = {
enable = true;
package = pkgs.scx_git.full;
scheduler = "scx_lavd";
package = pkgs.scx.full;
scheduler = "scx_bpfland";
};
}

View file

@ -1,5 +1,5 @@
{pkgs, ...}: {
environment.systemPackages = with pkgs; [bluez5-experimental];
environment.systemPackages = with pkgs; [bluez5-experimental bluetuith];
services.pipewire.wireplumber.configPackages = [
(pkgs.writeTextDir "share/wireplumber/wireplumber.conf.d/10-bluez.conf" ''
@ -18,6 +18,8 @@
settings = {
General = {
Enable = "Source,Sink,Media,Socket";
Experimental = true;
KernelExperimental = true;
};
};
};