substituters, sway mod preference per user, move hosts/absolution to hosts/apalapucia, etc

This commit is contained in:
alyx 2026-02-23 12:17:05 +00:00
parent d0bb2fe776
commit d8d3f43c53
Signed by: alyx
SSH key fingerprint: SHA256:ikXQIBRoakFdxVU/cImm2/V8XxM0gMJU8QybMfU66H0
10 changed files with 275 additions and 279 deletions

View file

@ -1,16 +1,15 @@
{config, pkgs, lib, inputs, vars, ...}:{
{config, pkgs, lib, inputs, vars, osConfig, ...}:{
imports = [
# things we import later
];
home = rec {
username = vars.user;
username = osConfig.var.username;
homeDirectory = "/home/${username}";
stateVersion = "26.05";
shell.enableBashIntegration = true;
file = {
".config/waybar/config".source = (if vars.user == "alyx" then config.lib.file.mkOutOfStoreSymlink "${homeDirectory}/.config/nixos/home/waybar/cyberhack" else config.lib.file.mkOutOfStoreSymlink "${homeDirectory}/.config/nixos/home/waybar/modern");
".config/waybar/style.css".source = (if vars.user == "alyx" then config.lib.file.mkOutOfStoreSymlink "${homeDirectory}/.config/nixos/home/waybar/cyberhack.css" else config.lib.file.mkOutOfStoreSymlink "${homeDirectory}/.config/nixos/home/waybar/modern.css");
".config/waybar/config".source = (if osConfig.var.username == "alyx" then config.lib.file.mkOutOfStoreSymlink "${homeDirectory}/.config/nixos/home/waybar/cyberhack" else config.lib.file.mkOutOfStoreSymlink "${homeDirectory}/.config/nixos/home/waybar/modern");
".config/waybar/style.css".source = (if osConfig.var.username == "alyx" then config.lib.file.mkOutOfStoreSymlink "${homeDirectory}/.config/nixos/home/waybar/cyberhack.css" else config.lib.file.mkOutOfStoreSymlink "${homeDirectory}/.config/nixos/home/waybar/modern.css");
};
pointerCursor = {
gtk.enable = true;
@ -42,7 +41,7 @@
programs.home-manager.enable = true;
programs.foot = {
enable = true;
settings.main.font = (if vars.user == "alyx" then "monospace:size=20" else "monospace:size=12");
settings.main.font = (if osConfig.var.username == "alyx" then "monospace:size=20" else "monospace:size=12");
settings.colors.alpha = "0.9";
};
@ -55,7 +54,7 @@
services.mpd = {
enable = true;
musicDirectory = "/home/${vars.user}/Music";
musicDirectory = "/home/${osConfig.var.username}/Music";
extraConfig = ''
audio_output {
type "pipewire"
@ -73,8 +72,8 @@
programs.git = {
enable = true;
settings = {
user.name = vars.user;
user.email = (if vars.user == "alyx" then "alyxwren@proton.me" else "beanigit@protonmail.com");
user.name = osConfig.var.username;
user.email = (if osConfig.var.username == "alyx" then "alyxwren@proton.me" else "beanigit@protonmail.com");
commit.gpgsign = true;
gpg.format = "ssh";
user.signingKey = "~/.ssh/id_ed25519.pub";
@ -96,13 +95,32 @@
wayland.windowManager.sway.xwayland = true;
wayland.windowManager.sway.package = pkgs.swayfx;
wayland.windowManager.sway.config = null;
wayland.windowManager.sway.extraConfigEarly = (if osConfig.var.username == "alyx" then ''set $mod Mod1'' else ''set $mod Mod4'');
wayland.windowManager.sway.extraConfig = ''
include ~/.config/nixos/home/wms/sway
'';
wayland.windowManager.sway.checkConfig = false;
services.kanshi = {
enable = true;
settings = [
{
profile.name = "alyx-desktop";
profile.outputs = [
{ criteria = "Microstep MSI G273Q CA8A463100033"; position = "1600,0"; mode = "2560x1440@164.835007"; }
{ criteria = "Dell Inc. Dell 2007FP MY546856GT2L"; position = "0,0"; mode = "1600x1200@60.000000"; }
{ criteria = "Valve Corporation index HMD 0xEDE55842"; status = "disable"; }
];
}
];
};
programs.obs-studio.enable = true;
home.packages = with pkgs; [
grim
slurp
fzf
libsForQt5.qt5ct
kdePackages.qt6ct

View file

@ -1,201 +0,0 @@
input {
keyboard {
xkb {
layout "gb"
model ""
rules ""
}
repeat-delay 600
repeat-rate 25
track-layout "global"
}
touchpad {
natural-scroll
accel-profile "flat"
click-method "clickfinger"
scroll-factor 0.300000
}
mouse { accel-profile "flat"; }
trackpoint { accel-profile "flat"; }
trackball { accel-profile "flat"; }
focus-follows-mouse
disable-power-key-handling
mod-key "Alt"
}
screenshot-path "~/Pictures/Screenshots/Screenshot from %Y-%m-%d %H-%M-%S.png"
prefer-no-csd
layout {
gaps 16
struts {
left 0
right 0
top 0
bottom 0
}
focus-ring {
width 2
active-color "rgb(0, 255, 255)"
inactive-color "rgb(0, 146, 148)"
}
border { off; }
default-column-width
center-focused-column "never"
}
cursor {
xcursor-theme "default"
xcursor-size 24
}
hotkey-overlay { skip-at-startup; }
binds {
Alt+Print { screenshot-window; }
Ctrl+Print { screenshot-screen; }
Mod+1 { focus-workspace 1; }
Mod+2 { focus-workspace 2; }
Mod+3 { focus-workspace 3; }
Mod+4 { focus-workspace 4; }
Mod+5 { focus-workspace 5; }
Mod+6 { focus-workspace 6; }
Mod+7 { focus-workspace 7; }
Mod+8 { focus-workspace 8; }
Mod+9 { focus-workspace 9; }
Mod+C { center-column; }
Mod+Comma { consume-window-into-column; }
Mod+Ctrl+End { move-column-to-last; }
Mod+Ctrl+Home { move-column-to-first; }
Mod+Ctrl+I { move-column-to-workspace-up; }
"Mod+Ctrl+Page_Down" { move-column-to-workspace-down; }
"Mod+Ctrl+Page_Up" { move-column-to-workspace-up; }
Mod+Ctrl+Shift+WheelScrollDown { move-column-right; }
Mod+Ctrl+Shift+WheelScrollUp { move-column-left; }
Mod+Ctrl+U { move-column-to-workspace-down; }
Mod+Ctrl+WheelScrollDown cooldown-ms=150 { move-column-to-workspace-down; }
Mod+Ctrl+WheelScrollLeft { move-column-left; }
Mod+Ctrl+WheelScrollRight { move-column-right; }
Mod+Ctrl+WheelScrollUp cooldown-ms=150 { move-column-to-workspace-up; }
Mod+D { spawn "foot" "--title" "launch" "--app-id" "fzf-launcher-foot" "bash" "-c" "niri msg action spawn -- bash -c \"$(compgen -c | sort -u | fzf --bind=enter:replace-query+print-query) >/dev/null\""; }
Mod+Down { focus-window-down; }
Mod+End { focus-column-last; }
Mod+Equal { set-column-width "+10%"; }
Mod+F { maximize-column; }
Mod+H { focus-column-left; }
Mod+Home { focus-column-first; }
Mod+I { focus-workspace-down; }
Mod+J { focus-window-down; }
Mod+K { focus-window-up; }
Mod+L { focus-column-right; }
Mod+Left { focus-column-left; }
Mod+Minus { set-column-width "-10%"; }
Mod+N { spawn "swaync-client" "-t"; }
"Mod+Page_Down" { focus-workspace-down; }
"Mod+Page_Up" { focus-workspace-up; }
Mod+Period { expel-window-from-column; }
Mod+R { switch-preset-column-width; }
Mod+Return { spawn "foot"; }
Mod+Right { focus-column-right; }
Mod+Shift+1 { move-column-to-workspace 1; }
Mod+Shift+2 { move-column-to-workspace 2; }
Mod+Shift+3 { move-column-to-workspace 3; }
Mod+Shift+4 { move-column-to-workspace 4; }
Mod+Shift+5 { move-column-to-workspace 5; }
Mod+Shift+6 { move-column-to-workspace 6; }
Mod+Shift+7 { move-column-to-workspace 7; }
Mod+Shift+8 { move-column-to-workspace 8; }
Mod+Shift+9 { move-column-to-workspace 9; }
Mod+Shift+Ctrl+Down { move-column-to-monitor-down; }
Mod+Shift+Ctrl+H { move-column-to-monitor-left; }
Mod+Shift+Ctrl+J { move-column-to-monitor-down; }
Mod+Shift+Ctrl+K { move-column-to-monitor-up; }
Mod+Shift+Ctrl+L { move-column-to-monitor-right; }
Mod+Shift+Ctrl+Left { move-column-to-monitor-left; }
Mod+Shift+Ctrl+Right { move-column-to-monitor-right; }
Mod+Shift+Ctrl+Up { move-column-to-monitor-up; }
Mod+Shift+Down { move-window-down; }
Mod+Shift+E { quit; }
Mod+Shift+Equal { set-window-height "+10%"; }
Mod+Shift+F { fullscreen-window; }
Mod+Shift+H { move-column-left; }
Mod+Shift+I { move-workspace-up; }
Mod+Shift+J { move-window-down; }
Mod+Shift+K { move-window-up; }
Mod+Shift+L { move-column-right; }
Mod+Shift+Left { move-column-left; }
Mod+Shift+Minus { set-window-height "-10%"; }
Mod+Shift+P { power-off-monitors; }
"Mod+Shift+Page_Down" { move-workspace-down; }
"Mod+Shift+Page_Up" { move-workspace-up; }
Mod+Shift+Q repeat=false { close-window; }
Mod+Shift+R { reset-window-height; }
Mod+Shift+Right { move-column-right; }
Mod+Shift+Space { toggle-window-floating; }
Mod+Shift+U { move-workspace-down; }
Mod+Shift+Up { move-window-up; }
Mod+Shift+WheelScrollDown { focus-column-right; }
Mod+Shift+WheelScrollUp { focus-column-left; }
Mod+T { spawn "foot" "--title" "music" "--app-id" "mpd-control-foot" "ncmpcpp"; }
Mod+U { focus-workspace-up; }
Mod+Up { focus-window-up; }
Mod+V { spawn "/home/alyx/.binaries/wooz"; }
Mod+WheelScrollDown cooldown-ms=150 { focus-workspace-down; }
Mod+WheelScrollLeft { focus-column-left; }
Mod+WheelScrollRight { focus-column-right; }
Mod+WheelScrollUp cooldown-ms=150 { focus-workspace-up; }
Print { screenshot; }
XF86AudioLowerVolume { spawn "wpctl" "set-volume" "@DEFAULT_AUDIO_SINK@" "5%-"; }
XF86AudioMicMute allow-when-locked=true { spawn "wpctl" "set-mute" "@DEFAULT_AUDIO_SOURCE@" "toggle"; }
XF86AudioMute { spawn "wpctl" "set-mute" "@DEFAULT_AUDIO_SINK@" "toggle"; }
XF86AudioNext { spawn "playerctl" "next"; }
XF86AudioPlay { spawn "playerctl" "play-pause"; }
XF86AudioPrev { spawn "playerctl" "previous"; }
XF86AudioRaiseVolume { spawn "wpctl" "set-volume" "@DEFAULT_AUDIO_SINK@" "5%+"; }
XF86AudioStop { spawn "playerctl" "stop"; }
XF86MonBrightnessDown { spawn "brightnessctl" "s" "10%-"; }
XF86MonBrightnessUp { spawn "brightnessctl" "s" "+10%"; }
}
output "DP-3" {
mode "2560x1440@164.835"
scale 1.0
position x=0 y=0
focus-at-startup
}
overview {
backdrop-color "#002428"
}
spawn-at-startup "waybar"
spawn-at-startup "mpdscribble"
spawn-at-startup "corectrl" "--minimize-systray"
spawn-at-startup "swww-daemon"
spawn-at-startup "udiskie" "--appindicator"
spawn-at-startup "swaync"
spawn-at-startup "/usr/libexec/polkit-mate-authentication-agent-1"
spawn-at-startup "sh" "-c" "EPYTHON=python3.12 mpdlcd &"
window-rule {
match title="^launch$"
open-floating true
default-column-width { fixed 1000; }
default-window-height { fixed 800; }
}
window-rule {
match title="^music$"
open-floating true
}
window-rule {
match title="^(Picture-in-Picture)$"
open-floating true
default-column-width { fixed 480; }
default-window-height { fixed 270; }
}
window-rule {
match title="^music$"
open-floating true
default-column-width { fixed 1000; }
default-window-height { fixed 800; }
}
window-rule {
draw-border-with-background false
geometry-corner-radius 12.000000 12.000000 12.000000 12.000000
clip-to-geometry true
}
animations { slowdown 0.500000; }

View file

@ -1,5 +1,5 @@
font pango:monospace 8.000000
floating_modifier Mod4
floating_modifier $mod
default_border pixel 2
default_floating_border normal 2
hide_edge_borders none
@ -12,62 +12,62 @@ workspace_auto_back_and_forth no
client.urgent #2f343a #900000 #ffffff #900000 #900000
client.placeholder #000000 #0c0c0c #ffffff #000000 #0c0c0c
client.background #ffffff
bindsym Mod4+1 workspace number 1
bindsym Mod4+0 workspace number 10
bindsym Mod4+2 workspace number 2
bindsym Mod4+3 workspace number 3
bindsym Mod4+4 workspace number 4
bindsym Mod4+5 workspace number 5
bindsym Mod4+6 workspace number 6
bindsym Mod4+7 workspace number 7
bindsym Mod4+8 workspace number 8
bindsym Mod4+9 workspace number 9
bindsym Mod4+Control+h workspace prev_on_output
bindsym Mod4+Control+l workspace next_on_output
bindsym Mod4+Down focus down
bindsym Mod4+Left focus left
bindsym Mod4+Return exec foot
bindsym Mod4+Right focus right
bindsym Mod4+Shift+0 move container to workspace number 10
bindsym Mod4+Shift+1 move container to workspace number 1
bindsym Mod4+Shift+2 move container to workspace number 2
bindsym Mod4+Shift+3 move container to workspace number 3
bindsym Mod4+Shift+4 move container to workspace number 4
bindsym Mod4+Shift+5 move container to workspace number 5
bindsym Mod4+Shift+6 move container to workspace number 6
bindsym Mod4+Shift+7 move container to workspace number 7
bindsym Mod4+Shift+8 move container to workspace number 8
bindsym Mod4+Shift+9 move container to workspace number 9
bindsym Mod4+Shift+Down move down
bindsym Mod4+Shift+Left move left
bindsym Mod4+Shift+Right move right
bindsym Mod4+Shift+Up move up
bindsym Mod4+Shift+c reload
bindsym Mod4+Shift+e exec swaynag -t warning -m 'You pressed the exit shortcut. Do you really want to exit sway? This will end your Wayland session.' -b 'Yes, exit sway' 'swaymsg exit'
bindsym Mod4+Shift+h move left
bindsym Mod4+Shift+j move down
bindsym Mod4+Shift+k move up
bindsym Mod4+Shift+l move right
bindsym Mod4+Shift+minus move scratchpad
bindsym Mod4+Shift+q kill
bindsym Mod4+Shift+s move scratchpad
bindsym Mod4+Shift+space floating toggle
bindsym Mod4+Up focus up
bindsym Mod4+a focus parent
bindsym Mod4+b splith
bindsym Mod4+d exec foot --title launch --app-id fzf-launcher-foot bash -c 'compgen -c | sort -u | fzf --bind=enter:replace-query+print-query | xargs swaymsg exec --'
bindsym Mod4+e layout toggle split
bindsym Mod4+f fullscreen toggle
bindsym Mod4+h focus left
bindsym Mod4+j focus down
bindsym Mod4+k focus up
bindsym Mod4+l focus right
bindsym Mod4+minus scratchpad show
bindsym Mod4+r mode resize
bindsym Mod4+s scratchpad show
bindsym Mod4+space focus mode_toggle
bindsym Mod4+t exec foot --title music --app-id mpd-control-foot ncmpcpp
bindsym Mod4+v splitv
bindsym $mod+1 workspace number 1
bindsym $mod+0 workspace number 10
bindsym $mod+2 workspace number 2
bindsym $mod+3 workspace number 3
bindsym $mod+4 workspace number 4
bindsym $mod+5 workspace number 5
bindsym $mod+6 workspace number 6
bindsym $mod+7 workspace number 7
bindsym $mod+8 workspace number 8
bindsym $mod+9 workspace number 9
bindsym $mod+Control+h workspace prev_on_output
bindsym $mod+Control+l workspace next_on_output
bindsym $mod+Down focus down
bindsym $mod+Left focus left
bindsym $mod+Return exec foot
bindsym $mod+Right focus right
bindsym $mod+Shift+0 move container to workspace number 10
bindsym $mod+Shift+1 move container to workspace number 1
bindsym $mod+Shift+2 move container to workspace number 2
bindsym $mod+Shift+3 move container to workspace number 3
bindsym $mod+Shift+4 move container to workspace number 4
bindsym $mod+Shift+5 move container to workspace number 5
bindsym $mod+Shift+6 move container to workspace number 6
bindsym $mod+Shift+7 move container to workspace number 7
bindsym $mod+Shift+8 move container to workspace number 8
bindsym $mod+Shift+9 move container to workspace number 9
bindsym $mod+Shift+Down move down
bindsym $mod+Shift+Left move left
bindsym $mod+Shift+Right move right
bindsym $mod+Shift+Up move up
bindsym $mod+Shift+c reload
bindsym $mod+Shift+e exec swaynag -t warning -m 'You pressed the exit shortcut. Do you really want to exit sway? This will end your Wayland session.' -b 'Yes, exit sway' 'swaymsg exit'
bindsym $mod+Shift+h move left
bindsym $mod+Shift+j move down
bindsym $mod+Shift+k move up
bindsym $mod+Shift+l move right
bindsym $mod+Shift+minus move scratchpad
bindsym $mod+Shift+q kill
bindsym $mod+Shift+s move scratchpad
bindsym $mod+Shift+space floating toggle
bindsym $mod+Up focus up
bindsym $mod+a focus parent
bindsym $mod+b splith
bindsym $mod+d exec foot --title launch --app-id fzf-launcher-foot bash -c 'compgen -c | sort -u | fzf --bind=enter:replace-query+print-query | xargs swaymsg exec --'
bindsym $mod+e layout toggle split
bindsym $mod+f fullscreen toggle
bindsym $mod+h focus left
bindsym $mod+j focus down
bindsym $mod+k focus up
bindsym $mod+l focus right
bindsym $mod+minus scratchpad show
bindsym $mod+r mode resize
bindsym $mod+s scratchpad show
bindsym $mod+space focus mode_toggle
bindsym $mod+t exec foot --title music --app-id mpd-control-foot ncmpcpp
bindsym $mod+v splitv
bindsym Print exec grim -g "$(slurp)" ~/Pictures/screenshots/screenshot-`date +%F-%T`.png
bindsym Shift_L+Control_L+B exec playerctl position 10-
@ -140,7 +140,7 @@ exec kanshi
exec swaync
exec swaybg -m fill -i ~/.config/nixos/assets/twilight.png
exec awww -d
exec kde-indicator