remove all default packages,

add btop configs,
update ssh local ips,
add multiple programs to niri config and add more keybinds
This commit is contained in:
wo2wz 2025-08-01 00:36:00 -04:00
parent 3fa1c97cc8
commit a1196deb25
8 changed files with 191 additions and 47 deletions

View file

@ -14,7 +14,7 @@
environment = { environment = {
systemPackages = with pkgs; [ wget ]; systemPackages = with pkgs; [ wget ];
# remove perl from default packages # remove default packages
defaultPackages = with pkgs; lib.mkForce [ rsync strace ]; defaultPackages = lib.mkForce [ ];
}; };
} }

View file

@ -17,6 +17,15 @@
../../modules/home ../../modules/home
]; ];
programs.btop = {
package = pkgs.btop-rocm;
settings = {
shown_boxes = "cpu mem net proc gpu0";
custom_cpu_name = "Core i5-12400F";
custom_gpu_name0 = "RX 6700 XT";
};
};
home.file.".config/Yubico/u2f_keys".text = "wo2w:z53Q2IqyzYjUP22RRDsf+vfD9x+AJ1ymrOFslox0IeqHCHC5JecjjtQFGYwUPkP7KG7sEQ52ZG4ZhXxSg8/UZw==,8CnIjGYN5vD+jDyk4I4HQzUDJ5eMjcZ+s2209O76u/gynbPKAXX+U7/vrWHNqKz6YqHCpvD9KpJlLbzNh/xJJg==,es256,+presence"; home.file.".config/Yubico/u2f_keys".text = "wo2w:z53Q2IqyzYjUP22RRDsf+vfD9x+AJ1ymrOFslox0IeqHCHC5JecjjtQFGYwUPkP7KG7sEQ52ZG4ZhXxSg8/UZw==,8CnIjGYN5vD+jDyk4I4HQzUDJ5eMjcZ+s2209O76u/gynbPKAXX+U7/vrWHNqKz6YqHCpvD9KpJlLbzNh/xJJg==,es256,+presence";
home.stateVersion = "25.05"; home.stateVersion = "25.05";

View file

@ -25,22 +25,23 @@
}; };
environment.systemPackages = with pkgs; [ environment.systemPackages = with pkgs; [
# necessary to make the camera not look like the sun cameractrls # necessary to make the camera not look like the sun
cameractrls xautomation # for key replacement macros
# for key replacement macros
xautomation
]; ];
home-manager.users.wo2w = home-manager.users.wo2w = {
let
ifHomeProgramEnable =
name:
if config.programs.${name}.enable then true else false;
in {
imports = [ imports = [
../../modules/home ../../modules/home
]; ];
programs.btop = {
package = pkgs.btop-cuda;
settings = {
shown_boxes = "cpu mem net proc gpu0";
custom_cpu_name = "Core i7-8750H";
};
};
home.file = { home.file = {
# yubikey config # yubikey config
".config/Yubico/u2f_keys".text = "wo2w:aKYaBOjCImRE58XcYJCqxpY0vABEIYWbk2Lvx4UqnN3M/A1uyr3boV4FZLkfxUwmlfBdMDm4caSaX1/SrNoNgw==,zruscj30G6zEt8xmlvTXBBEKIzg+fPCSq/FvhZO3X0HyP2uBLsWSXqCyRKXM8H9F/GJwJWBpyoHj/dhkxj7eZg==,es256,+presence"; ".config/Yubico/u2f_keys".text = "wo2w:aKYaBOjCImRE58XcYJCqxpY0vABEIYWbk2Lvx4UqnN3M/A1uyr3boV4FZLkfxUwmlfBdMDm4caSaX1/SrNoNgw==,zruscj30G6zEt8xmlvTXBBEKIzg+fPCSq/FvhZO3X0HyP2uBLsWSXqCyRKXM8H9F/GJwJWBpyoHj/dhkxj7eZg==,es256,+presence";

View file

@ -1,31 +1,68 @@
{ inputs, config, pkgs, ... }: { inputs, config, pkgs, ... }:
{ {
# compositor: niri
# bar: waybar
# application launcher: rofi
# idle daemon: hypridle
# screen locker: hyprlock
# wallpaper daemon: wpaperd
# notification daemon: mako
# screenshot tool: flameshot
imports = [ inputs.niri.nixosModules.niri ]; imports = [ inputs.niri.nixosModules.niri ];
nixpkgs.overlays = [ inputs.niri.overlays.niri ]; nixpkgs.overlays = [ inputs.niri.overlays.niri ];
programs = { programs.niri.enable = true;
niri.enable = true;
waybar.enable = true;
};
environment.systemPackages = with pkgs; [ environment.systemPackages = with pkgs; [
mako # notif daemon, may replace wpaperd # wallpaper daemon (higher memory usage than average, could replace)
swaybg # wayland compositor wallpaper program
xwayland-satellite # necessary for xwayland on niri xwayland-satellite # necessary for xwayland on niri
(flameshot.override { enableWlrSupport = true; }) # screenshot program (flameshot.override { enableWlrSupport = true; }) # screenshot program
]; ];
home-manager.users.wo2w = { home-manager.users.wo2w = {
xdg.configFile."wpaperd/config.toml".text = ''
[default]
duration = "2h"
mode = "stretch"
path = "/home/wo2w/Pictures/Wallpapers"
initial-transition = false
'';
programs = { programs = {
niri = { niri = {
settings = { settings = {
hotkey-overlay.skip-at-startup = true;
prefer-no-csd = true;
environment.DISPLAY = ":0";
screenshot-path = "~/Pictures/Screenshots/%F_%H-%M-%S";
outputs = {
"Sharp Corporation 0x148D Unknown".scale = 2.25; # Laptop builtin screen
};
binds = { binds = {
# custom binds # custom binds
"Mod+Space".action.spawn = [ "rofi" "-show" "drun" ]; "Mod+Space".action.spawn = [ "rofi" "-show" "drun" ];
"Print".action.spawn = [ "sh" "-c" "QT_QPA_PLATFORM=xcb" "DISPLAY=:0" "flameshot" "screen" ]; "Print".action.screenshot-screen = {};
"Shift+Print".action.spawn = [ "sh" "-c" "QT_QPA_PLATFORM=xcb" "DISPLAY=:0" "flameshot" "gui" ]; "Shift+Print".action.screenshot = {};
"Alt+Print".action.screenshot-window = {};
"Mod+Print".action.spawn = [ "sh" "-c" "QT_QPA_PLATFORM=xcb" "DISPLAY=:0" "flameshot" "full" ]; "Mod+Print".action.spawn = [ "sh" "-c" "QT_QPA_PLATFORM=xcb" "DISPLAY=:0" "flameshot" "full" ];
"Mod+T".action.spawn = "kitty";
"Super+Alt+L".action.spawn = "hyprlock";
"Super+Alt+S".action.spawn = [ "systemctl" "sleep" ];
"Super+Alt+E".action.quit.skip-confirmation = true;
"Super+Alt+Shift+S".action.spawn = "poweroff";
"Super+Alt+Shift+R".action.spawn = "reboot";
"Mod+O".action.open-overview = {};
"Mod+V".action.toggle-window-floating = {};
"Mod+Shift+V".action.switch-focus-between-floating-and-tiling = {};
# default binds # default binds
@ -34,10 +71,6 @@
# shows a list of important hotkeys. # shows a list of important hotkeys.
"Mod+Shift+Slash".action.show-hotkey-overlay = {}; "Mod+Shift+Slash".action.show-hotkey-overlay = {};
# Suggested binds for running programs: terminal, app launcher, screen locker.
"Mod+T".action.spawn = "kitty";
"Super+Alt+L".action.spawn = "swaylock";
# You can also use a shell. Do this if you need pipes, multiple commands, etc. # You can also use a shell. Do this if you need pipes, multiple commands, etc.
# Note: the entire command goes as a single argument in the end. # Note: the entire command goes as a single argument in the end.
# Mod+T { spawn "bash" "-c" "notify-send hello && exec alacritty"; } # Mod+T { spawn "bash" "-c" "notify-send hello && exec alacritty"; }
@ -245,9 +278,6 @@
"Ctrl+Print".action.screenshot-screen = {}; "Ctrl+Print".action.screenshot-screen = {};
"Alt+Print".action.screenshot-window = {}; "Alt+Print".action.screenshot-window = {};
# The quit action will show a confirmation dialog to avoid accidental exits.
"Mod+Shift+E".action.quit = {};
# Powers off the monitors. To turn them back on, do any input like # Powers off the monitors. To turn them back on, do any input like
# moving the mouse or pressing any other key. # moving the mouse or pressing any other key.
"Mod+Shift+P".action.power-off-monitors = {}; "Mod+Shift+P".action.power-off-monitors = {};
@ -255,34 +285,94 @@
spawn-at-startup = [ spawn-at-startup = [
{ command = [ "xwayland-satellite" ]; } { command = [ "xwayland-satellite" ]; }
{ command = [ "wpaperd" "-d" ]; }
]; ];
workspaces = {
"01-DP-1-misc" = {
name = "Miscellaneous";
open-on-output = "DP-1";
};
"02-DP-1-game" = {
name = "Gaming";
open-on-output = "DP-1";
};
"03-DP-2-fullscreen" = {
name = "Fullscreen";
open-on-output = "DP-2";
};
"04-DP-2-misc" = {
name = "Miscellaneous 2";
open-on-output = "DP-2";
};
};
window-rules = [ window-rules = [
{ {
matches = [{ title = "^Bitwarden$"; }]; matches = [{ title = "^Bitwarden$"; }];
block-out-from = "screencast"; block-out-from = "screen-capture";
} }
{ {
matches = [{ title = "PolicyKit1 KDE Agent$"; }]; matches = [{ app-id = "^org.kde.polkit-kde-authentication-agent-1$"; }];
block-out-from = "screencast"; block-out-from = "screen-capture";
open-floating = true; open-floating = true;
} }
# put steam notifications in the bottom right # put steam notifications in the bottom right
{ {
matches = [{ matches = [
app-id = "steam"; { app-id = "steam"; }
title = "^notificationtoasts_\d+_desktop$"; { title = "^notificationtoasts_\d+_desktop$"; }
}]; ];
default-floating-position = { default-floating-position = {
x = 10; x = 10;
y = 10; y = 10;
relative-to = "bottom-right"; relative-to = "bottom-right";
}; };
} }
# Gaming (DP-1)
{
matches = [
{ app-id = "steam"; }
{ title = "^Steam$"; }
];
open-on-workspace = "Gaming";
}
{
matches = [{ app-id = "heroic"; }];
open-on-workspace = "Gaming";
}
{
matches = [{ app-id = "org.prismlauncher.PrismLauncher"; }];
open-on-workspace = "Gaming";
}
{
matches = [{ app-id = "vesktop"; }];
open-on-workspace = "Gaming";
}
# Text Editing
# Fullscreen (DP-2)
{
matches = [{ app-id = "librewolf"; }];
open-on-workspace = "Fullscreen";
}
{
matches = [{ app-id = "spotify"; }];
open-on-workspace = "Fullscreen";
}
# Miscellaneous 2 (DP-2)
{
matches = [{ app-id = "com.dec05eba.gpu_screen_recorder"; }];
open-on-workspace = "Miscellaneous 2";
}
]; ];
}; };
}; };
waybar = {
enable = true;
systemd.enable = true;
};
rofi = { rofi = {
enable = true; enable = true;
package = pkgs.rofi-wayland; package = pkgs.rofi-wayland;
@ -294,26 +384,46 @@
hyprlock = { hyprlock = {
enable = true; enable = true;
settings = { settings = {
# stop hm complaining about the default config conflicting with custom config (bug?) general.grace = 5;
background = { background = {
path = "/home/wo2w/Pictures/uni1.jpg"; path = "/home/wo2w/Pictures/uni1.jpg";
blur_passes = 3; blur_passes = 3;
color = "rgb(1a1b26)";
}; };
label = { label = [
text = "$DESC"; {
}; valign = "top";
position = "0, -400";
font_size = 128;
text = "$TIME";
}
{
position = "0, 180";
font_size = 64;
text = "$DESC";
}
];
input-field = { input-field = {
size = "200, 50";
position = "0, -80"; position = "0, -80";
size = "400, 100";
}; };
}; };
}; };
}; };
services = { services = {
# notif daemon
mako = {
enable = true;
settings = {
max-history = 10;
default-timeout = 5000;
anchor = "bottom-right";
};
};
hypridle = { hypridle = {
enable = true; enable = true;
settings = { settings = {

View file

@ -10,17 +10,29 @@
fontconfig.enable = false; fontconfig.enable = false;
font-packages.enable = false; font-packages.enable = false;
}; };
fonts.sizes = { fonts = {
applications = 12; sizes = {
desktop = 10; applications = 12;
popups = 10; desktop = 10;
terminal = 12; popups = 10;
terminal = 12;
};
monospace = {
package = pkgs.nerd-fonts.hack;
name = "Hack Nerd Font";
};
emoji = {
package = pkgs.noto-fonts-color-emoji;
name = "Noto Color Emoji";
};
}; };
}; };
home-manager.users.wo2w.stylix = { home-manager.users.wo2w.stylix = {
enable = true; enable = true;
targets = { targets = {
btop.enable = false;
spicetify.enable = false; spicetify.enable = false;
vesktop.enable = false; vesktop.enable = false;
vscode.enable = false; vscode.enable = false;

11
modules/home/btop.nix Normal file
View file

@ -0,0 +1,11 @@
{ config, ... }:
{
programs.btop = {
enable = true;
settings = {
color_theme = "tokyo-night";
update_ms = 500;
};
};
}

View file

@ -2,6 +2,7 @@
{ {
imports = [ imports = [
./btop.nix
./bash.nix ./bash.nix
./git.nix ./git.nix
./kitty.nix ./kitty.nix

View file

@ -11,10 +11,10 @@
Hostname 192.168.2.221 Hostname 192.168.2.221
Port 22 Port 22
Host Swordsmachine Host Swordsmachine
Hostname 192.168.2.122 Hostname 192.168.2.84
Port 8743 Port 8743
Host Earthmover Host Earthmover
Hostname 192.168.2.147 Hostname 192.168.2.87
Port 8743 Port 8743
"; ";
}; };