initial restructuring

This commit is contained in:
2026-08-08 21:12:37 -06:00
parent d1e4ae22d2
commit bb038bfba0
62 changed files with 0 additions and 3 deletions
+78
View File
@@ -0,0 +1,78 @@
{ config, lib, pkgs, ... }:
{
security.rtkit.enable = true;
services.avahi.enable = true;
services.pulseaudio.enable = false;
systemd.user.services.mpris-proxy = {
description = "Mpris proxy";
after = [ "network.target" "sound.target" ];
wantedBy = [ "default.target" ];
};
services.pipewire = {
enable = true;
alsa = {
enable = true;
support32Bit = true;
};
pulse.enable = true;
wireplumber.enable = true;
raopOpenFirewall = true;
# Dynamic, optimized buffer sizes to eliminate data starvation
extraConfig.pipewire = {
"context.properties" = {
"default.clock.rate" = 48000;
"default.clock.quantum" = 1024;
"default.clock.min-quantum" = 512;
"default.clock.max-quantum" = 2048;
};
"10-airplay" = {
"context-modules" = [
{
name = "libpipewire-module-raop-discover";
}
];
};
};
wireplumber.extraConfig = {
"10-bluetooth-policy" = {
"wireplumber.settings" = {
"bluetooth.autoswitch-to-headset" = false;
};
};
# Properly disables node suspension using WirePlumber 0.5+ syntax
"10-disable-suspend" = {
"monitor.bluez.rules" = [
{
matches = [
{
"node.name" = "~bluez_output.*";
}
];
actions = {
update-props = {
"session.suspend-timeout-seconds" = 0;
};
};
}
];
};
# Force High Quality Audio profiles ONLY (Blocks Handsfree Mic Downgrades)
"11-bluetooth-enhancements" = {
"monitor.bluez.properties" = {
"bluez5.roles" = [ "a2dp_sink" "a2dp_source" ];
"bluez5.codecs" = [ "aac" "aptx" "sbc" ];
"bluez5.enable-sbc-xq" = false;
"bluez5.enable-hw-volume" = true;
};
};
};
};
}
+10
View File
@@ -0,0 +1,10 @@
{ config, pkgs, ... }:
{
boot.loader.systemd-boot.enable = true;
boot.loader.efi.canTouchEfiVariables = true;
boot.kernelPackages = pkgs.linuxPackages_latest;
boot.kernelModules = [ "uinput" ];
system.nixos.label = "niri-v.1.2";
environment.pathsToLink = [ "/libexec" ];
}
+11
View File
@@ -0,0 +1,11 @@
{ config, pkgs, ... }:
{
imports = [
./audio.nix
./boot.nix
./env.nix
./locale.nix
./power.nix
];
}
+53
View File
@@ -0,0 +1,53 @@
{ config, pkgs, ... }:
{
environment.shells = with pkgs; [ zsh ];
users.defaultUserShell = pkgs.zsh;
fonts.packages = with pkgs; [
nerd-fonts.hack
];
environment.sessionVariables = {
NIXOS_OZONE_WL = "1";
};
nix.settings = {
experimental-features = [ "nix-command" "flakes" ];
};
programs.zsh = {
enable = true;
enableCompletion = true;
autosuggestions.enable = true;
syntaxHighlighting.enable = true;
histSize = 1000000;
setOptions = [
"HIST_IGNORE_ALL_DUPS"
];
shellAliases = {
enix = "nvim $HOME/.dotfiles/flake.nix";
ehome = "nvim $HOME/.dotfiles/home/jashton.nix";
l = "ls -la";
ports = "cat $HOME/.dotfiles/ports.registry";
};
ohMyZsh = {
enable = true;
theme = "aussiegeek";
plugins = [
"git"
];
};
interactiveShellInit = ''
if [ -f "/run/secrets/vaultwarden_clientid" ]; then
export BW_CLIENTID=$(cat /run/secrets/vaultwarden_clientid)
export BW_CLIENTSECRET=$(cat /run/secrets/vaultwarden_clientsecret)
fi
'';
};
}
+20
View File
@@ -0,0 +1,20 @@
{ config, pkgs, ... }:
{
time.timeZone = "America/Denver";
i18n = {
defaultLocale = "en_US.UTF-8";
extraLocaleSettings = {
LC_ADDRESS = "en_US.UTF-8";
LC_IDENTIFICATION = "en_US.UTF-8";
LC_MEASUREMENT = "en_US.UTF-8";
LC_MONETARY = "en_US.UTF-8";
LC_NAME = "en_US.UTF-8";
LC_NUMERIC = "en_US.UTF-8";
LC_PAPER = "en_US.UTF-8";
LC_TELEPHONE = "en_US.UTF-8";
LC_TIME = "en_US.UTF-8";
LC_CTYPE = "en_US.UTF-8";
};
};
}
+32
View File
@@ -0,0 +1,32 @@
{ config, pkgs, ... }:
{
boot.kernelParams = [ "mem_sleep_default=deep" ];
services.power-profiles-daemon.enable = false;
services.tlp = {
enable = true;
settings = {
USB_AUTOSUSPEND = 0;
# AC
CPU_SCALING_GOVERNOR_ON_AC = "performance";
CPU_ENERGY_PERF_POLICY_ON_AC = "performance";
SOUND_POWER_SAVE_ON_AC = 0;
PCIE_ASPM_ON_AC = "default";
CPU_BOOST_ON_BAT = 0;
# Battery
CPU_SCALING_GOVERNOR_ON_BAT = "powersave";
CPU_ENERGY_PERF_POLICY_ON_BAT = "power";
SOUND_POWER_SAVE_ON_BAT = 1;
PCIE_ASPM_ON_BAT = "powersupersave";
CPU_BOOST_ON_AC = 1;
# Battery Thresholds
START_CHARGE_THRESH_BAT0 = 40;
STOP_CHARGE_THRESH_BAT0 = 80;
};
};
}