nixos: gen 113 @ nix-pad — 2026-07-22 23:02

26.05.20260717.293d6ab (Yarara)
This commit is contained in:
2026-07-22 23:02:49 -06:00
parent 38819b3b23
commit 34d199639b
14 changed files with 280 additions and 28 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;
};
};
};
};
}
+1
View File
@@ -2,6 +2,7 @@
{
imports = [
./audio.nix
./boot.nix
./env.nix
./locale.nix
+5 -1
View File
@@ -8,6 +8,10 @@
nerd-fonts.hack
];
environment.sessionVariables = {
NIXOS_OZONE_WL = "1";
};
nix.settings = {
experimental-features = [ "nix-command" "flakes" ];
};
@@ -26,10 +30,10 @@
shellAliases = {
enix = "nvim $HOME/.dotfiles/flake.nix";
unix = "sudo nixos-rebuild switch --flake $HOME/.dotfiles#thinkpad";
ehome = "nvim $HOME/.dotfiles/home/jashton.nix";
l = "ls -la";
ports = "cat $HOME/.dotfiles/ports.registry";
accentum = "bluetoothctl connect 80:C3:BA:50:43:DF";
};
ohMyZsh = {
+50
View File
@@ -13,7 +13,16 @@
firefox
git
github-cli
gnomeExtensions.blur-my-shell
gnomeExtensions.caffeine
gnomeExtensions.clipboard-indicator
gnomeExtensions.dash-to-panel
gnomeExtensions.gjs-osk
gnomeExtensions.gsconnect
gnomeExtensions.just-perfection
gnomeExtensions.removable-drive-menu
gnome-keyring
gnome-network-displays
google-chrome
libnotify
mypy
@@ -23,13 +32,54 @@
picom
polkit_gnome
pulseaudioFull
rnote
tldr
tmux
unrar
unzip
v4l-utils
vim
wget
xclip
xournalpp
(pkgs.writeShellScriptBin "unix" ''
set -u
DOTFILES="$HOME/.dotfiles"
ERRFILE=$(mktemp)
trap "rm -f '$ERRFILE'" EXIT
echo "Building NixOS..."
sudo nixos-rebuild switch --flake "$DOTFILES#thinkpad" 2>&1 | tee "$ERRFILE"
STATUS=''${PIPESTATUS[0]}
if [ "$STATUS" -ne 0 ]; then
PATTERN=$(find "$DOTFILES" -type f -name "*.nix" -printf "%f\n" | sort -u | tr '\n' '|' | sed 's/|$//')
MATCHES=$(grep -E "$PATTERN" "$ERRFILE" | sort -u)
if [ -n "$MATCHES" ]; then
printf '\nErrors in repo files:\n%s\n' "$MATCHES"
fi
exit 1
fi
GEN=$(readlink /nix/var/nix/profiles/system | sed 's/system-\([0-9]*\)-link/\1/')
VER=$(nixos-version)
TIMESTAMP=$(date '+%Y-%m-%d %H:%M')
cd "$DOTFILES"
if [ -z "$(${pkgs.git}/bin/git status --porcelain)" ]; then
echo "Generation $GEN active no config changes to commit."
exit 0
fi
${pkgs.git}/bin/git add -A
${pkgs.git}/bin/git commit -m "nixos: gen $GEN @ $(hostname) $TIMESTAMP
$VER"
${pkgs.git}/bin/git push
'')
];
programs.firefox.enable = true;
+6
View File
@@ -10,5 +10,11 @@
security = {
polkit.enable = true;
rtkit.enable = true;
tpm2 = {
enable = true;
pkcs11.enable = true;
tctiEnvironment.enable = true;
};
};
}
+1 -1
View File
@@ -6,7 +6,7 @@
isNormalUser = true;
description = "Josh Ashton";
group = "jashton";
extraGroups = [ "networkmanager" "wheel" ];
extraGroups = [ "networkmanager" "wheel" "tss" "video" ];
shell = pkgs.zsh;
};
+6 -17
View File
@@ -2,8 +2,12 @@
{
services = {
displayManager = {
ly.enable = true;
displayManager.gdm.enable = true;
desktopManager.gnome.enable = true;
gnome = {
core-apps.enable = true;
core-developer-tools.enable = true;
games.enable = true;
};
xserver = {
@@ -27,13 +31,6 @@
};
};
picom = {
enable = true;
backend = "glx";
vSync = true;
};
libinput = {
enable = true;
};
@@ -46,13 +43,5 @@
gvfs.enable = true;
gnome.gnome-keyring.enable = true;
blueman.enable = true;
pipewire = {
enable = true;
alsa = {
enable = true;
support32Bit = true;
};
pulse.enable = true;
};
};
}