xfce+bspwm make up to date and make workspaces more sensible

This commit is contained in:
Evie Litherland-Smith 2023-07-03 14:26:14 +01:00
parent f0a94b3c5c
commit 5f42675e2e
9 changed files with 90 additions and 168 deletions

View file

@ -1,16 +0,0 @@
{pkgs, ...}: {
imports = [
./xserver.nix
./sddm.nix
];
services.xserver = {
windowManager.i3.enable = true;
displayManager = {
defaultSession = "i3";
};
};
programs.i3lock = {
enable = true;
package = pkgs.i3lock-fancy;
};
}

View file

@ -1,22 +1,34 @@
{pkgs, ...}: { {pkgs, ...}: {
imports = [./sddm.nix]; imports = [./sddm.nix];
services.xserver = { environment.systemPackages = with pkgs; [
gsettings-desktop-schemas
pavucontrol
pamixer
pulseaudio
flameshot
];
programs.thunar = {
enable = true; enable = true;
desktopManager = { plugins = with pkgs.xfce; [
xterm.enable = false; thunar-archive-plugin
xfce = { thunar-volman
enable = true; ];
enableXfwm = false;
noDesktop = true;
};
};
windowManager.bspwm.enable = true;
displayManager = {
defaultSession = "xfce+bspwm";
};
}; };
programs.i3lock = { services = {
enable = true; xserver = {
package = pkgs.i3lock-fancy; desktopManager = {
xterm.enable = false;
xfce = {
enable = true;
enableXfwm = false;
noDesktop = true;
};
};
windowManager.bspwm.enable = true;
displayManager.defaultSession = "xfce+bspwm";
};
blueman.enable = true;
gvfs.enable = true;
tumbler.enable = true;
}; };
} }

View file

@ -1,19 +0,0 @@
{pkgs, ...}: {
imports = [./sddm.nix];
services.xserver = {
enable = true;
desktopManager.xfce.enable = true;
displayManager = {
defaultSession = "xfce";
sessionCommands = ''
[ -f "$HOME/.config/nitrogen/bg-saved.cfg" ]\
&& ${pkgs.nitrogen}/bin/nitrogen --restore\
|| ${pkgs.nitrogen}/bin/nitrogen --set-auto $HOME/.dotfiles/wallpaper/images_dark/5120x2880.png --save
'';
};
};
programs.i3lock = {
enable = true;
package = pkgs.i3lock-fancy;
};
}

View file

@ -1,5 +1,4 @@
{...}: { {...}: {
imports = [./default.nix];
services.xserver = { services.xserver = {
enable = true; enable = true;
layout = "gb"; layout = "gb";

View file

@ -36,61 +36,6 @@
}; };
}; };
}; };
xfce-bspwm-config = {pkgs, ...}: {
environment.systemPackages = with pkgs; [
nitrogen
power-profiles-daemon
xfce.thunar
flameshot
polybar
ranger
];
services.xserver = {
enable = true;
layout = "gb";
xkbVariant = "";
desktopManager = {
xterm.enable = false;
xfce = {
enable = true;
enableXfwm = false;
noDesktop = true;
};
};
windowManager.bspwm.enable = true;
displayManager = {
sddm = {
enable = true;
# theme = "catppuccin-macchiato";
settings = {General = {InputMethod = "";};};
};
defaultSession = "xfce+bspwm";
};
};
programs.i3lock = {
enable = true;
package = pkgs.i3lock-fancy;
};
};
wallpaper-config = {pkgs, ...}: {
xdg.configFile."nitrogen/bg-saved.cfg".text = ''
[xin_0]
file=${wallpapers.outputs.default}
mode=5
bgcolor=#000000
[xin_1]
file=${wallpapers.outputs.default}
mode=5
bgcolor=#000000
[xin_2]
file=${wallpapers.outputs.default}
mode=5
bgcolor=#000000
'';
xsession.windowManager.bspwm.extraConfig = ''${pkgs.nitrogen}/bin/nitrogen --restore '';
};
in { in {
nixosConfigurations = { nixosConfigurations = {
Legion = nixpkgs.lib.nixosSystem { Legion = nixpkgs.lib.nixosSystem {
@ -122,8 +67,8 @@
}; };
modules = [ modules = [
home-config home-config
xfce-bspwm-config
./hosts/Vanguard ./hosts/Vanguard
./desktop/xfce-bspwm.nix
./services/sshd ./services/sshd
./services/syncthing/Vanguard.nix ./services/syncthing/Vanguard.nix
({pkgs, ...}: { ({pkgs, ...}: {
@ -146,7 +91,6 @@
./home/personal.nix ./home/personal.nix
./home/desktop/bspwm.nix ./home/desktop/bspwm.nix
./home/gui ./home/gui
wallpaper-config
]; ];
home = { home = {
username = "xenia"; username = "xenia";
@ -154,6 +98,9 @@
stateVersion = "22.11"; stateVersion = "22.11";
}; };
programs.neovim.package = pkgs.neovim-nightly; programs.neovim.package = pkgs.neovim-nightly;
xsession.windowManager.bspwm.extraConfig = ''
${pkgs.feh}/bin/feh --no-fehbg --bg-fill ${wallpapers.outputs.default}
'';
}; };
}) })
]; ];
@ -166,8 +113,8 @@
}; };
modules = [ modules = [
home-config home-config
xfce-bspwm-config
./hosts/Ronin ./hosts/Ronin
./desktop/xfce-bspwm.nix
./services/syncthing/Ronin.nix ./services/syncthing/Ronin.nix
({pkgs, ...}: { ({pkgs, ...}: {
services.xserver.displayManager.autoLogin.user = "elitherl"; services.xserver.displayManager.autoLogin.user = "elitherl";
@ -176,7 +123,6 @@
./home/work.nix ./home/work.nix
./home/desktop/bspwm.nix ./home/desktop/bspwm.nix
./home/gui ./home/gui
wallpaper-config
]; ];
home = { home = {
username = "elitherl"; username = "elitherl";
@ -184,18 +130,29 @@
stateVersion = "22.11"; stateVersion = "22.11";
}; };
programs.neovim.package = pkgs.neovim-nightly; programs.neovim.package = pkgs.neovim-nightly;
xdg.configFile."screenlayout.sh".text = '' xsession.windowManager.bspwm.extraConfig = ''
#!/usr/bin/env bash
if [[ "$(xrandr --query | grep -E '^DP-1-1 connected')" ]]; then if [[ "$(xrandr --query | grep -E '^DP-1-1 connected')" ]]; then
xrandr --output eDP-1 --off\ xrandr --output eDP-1 --off\
--output DP-1-1 --primary --mode 1920x1200 --pos 0x185 --rotate normal\ --output DP-1-1 --primary --mode 1920x1200 --pos 0x185 --rotate normal\
--output DP-1-2 --mode 1920x1080 --pos 1920x0 --rotate left --output DP-1-3 --off --output DP-1-2 --mode 1920x1080 --pos 1920x0 --rotate left
bspc monitor eDP-1 -r
bspc monitor DP-1-1 -g 1920x1200+0+185
bspc monitor DP-1-2 -g 1080x1920+1920+0
else else
xrandr --output eDP-1 --primary --mode 1920x1080 --pos 0x0 --rotate normal xrandr --output eDP-1 --primary --mode 1920x1080 --pos 0x0 --rotate normal\
--output DP-1-1 --off\
--output DP-1-2 --off
bspc monitor eDP-1 -g 1920x1080+0+0
bspc monitor DP-1-1 -r
bspc monitor DP-1-2 -r
fi fi
''; for desktop in "dev" "browser" "files" "chat" "remote"; do
xsession.windowManager.bspwm.extraConfig = '' bspc desktop $desktop --to-monitor primary
${pkgs.bash}/bin/bash $HOME/.config/screenlayout.sh done
bspc monitor primary -o dev browser files chat remote
bspc monitor primary -d dev browser files chat remote
bspc wm -o
${pkgs.feh}/bin/feh --no-fehbg --bg-fill ${wallpapers.outputs.default}
''; '';
}; };
}) })

View file

@ -1,41 +1,39 @@
{pkgs, ...}: { {...}: {
imports = [ imports = [
./xfce.nix ./xfce.nix
./sxhkd.nix ./sxhkd.nix
]; ];
home.packages = with pkgs; [dex];
xsession.windowManager.bspwm = { xsession.windowManager.bspwm = {
enable = true; enable = true;
settings = { settings = {
window_gap = 12; window_gap = 12;
border_width = 2; border_width = 2;
split_ratio = 0.5; split_ratio = 0.5;
borderless_monocle = true; borderless_monocle = false;
gapless_monocle = true; gapless_monocle = false;
pointer_modifier = "mod1"; pointer_modifier = "mod4";
pointer_action1 = "move"; pointer_action1 = "move";
pointer_action2 = "resize_side"; pointer_action2 = "resize_side";
pointer_action3 = "resize_corner"; pointer_action3 = "resize_corner";
}; };
monitors = { monitors."primary" = ["dev" "browser" "files" "chat" "remote"];
"primary" = ["I" "II" "III" "IV" "V" "VI" "VII" "VIII" "IX"];
};
rules = { rules = {
"Xfce4-terminal".state = "floating"; "Xfce4-terminal".state = "floating";
"Nm-connection-editor".state = "floating"; "Nm-connection-editor".state = "floating";
"Qemu-system-x86_64".state = "floating"; "Qemu-system-x86_64".state = "floating";
"Pavucontrol".state = "floating"; "Pavucontrol".state = "floating";
"kitty".desktop = "^1"; "Otpclient".state = "floating";
"firefox".desktop = "^2"; ".blueman-manager-wrapped".state = "floating";
"Thunar".desktop = "^3"; "org.wezfurlong.wezterm".desktop = "dev";
"thunderbird".desktop = "^4"; "firefox".desktop = "browser";
"Mailspring".desktop = "^4"; "Thunar".desktop = "files";
"Element".desktop = "^5"; "Element".desktop = "chat";
"Signal".desktop = "^5"; "Signal".desktop = "chat";
"TelegramDesktop".desktop = "^5"; "teams-for-linux".desktop = "chat";
"Steam".desktop = "^6"; "Nxplayer.bin" = {
"Bitwarden".desktop = "^7"; desktop = "remote";
"Nxplayer.bin".desktop = "^8"; state = "floating";
};
}; };
extraConfig = '' extraConfig = ''
xsetroot -cursor_name left_ptr xsetroot -cursor_name left_ptr
@ -43,7 +41,6 @@
echo "---" | tee -a /tmp/polybar.log echo "---" | tee -a /tmp/polybar.log
polybar 2>&1 | tee -a /tmp/polybar.log & disown polybar 2>&1 | tee -a /tmp/polybar.log & disown
echo "Bars launched..." echo "Bars launched..."
dex -a
''; '';
}; };
} }

View file

@ -103,14 +103,11 @@ click-left = "powermenu"
[module/xworkspaces] [module/xworkspaces]
type = internal/xworkspaces type = internal/xworkspaces
icon-0 = "I; " icon-0 = "dev;󰅴"
icon-1 = "II; " icon-1 = "browser;󰈹"
icon-2 = "III; " icon-2 = "files;󰝰"
icon-3 = "IV; " icon-3 = "chat;󰭹"
icon-4 = "V; " icon-4 = "remote;"
icon-5 = "VI; "
icon-6 = "VII; "
icon-7 = "VIII; "
icon-default = " " icon-default = " "
label-active = %icon% label-active = %icon%
@ -195,8 +192,12 @@ battery = BAT0
adapter = AC adapter = AC
format-charging = <animation-charging> <label-charging> format-charging = <animation-charging> <label-charging>
format-discharging = <ramp-capacity> <label-discharging> format-discharging = <ramp-capacity> <label-discharging>
format-full = <label-full>
format-low = <animation-low> <label-low>
label-charging = %percentage%% %time% %consumption%W label-charging = %percentage%% %time% %consumption%W
label-discharging = %percentage%% %time% %consumption%W label-discharging = %percentage%% %time% %consumption%W
label-full = 󱟢
label-low = %percentage%% %time%
ramp-capacity-0 = 󰁺 ramp-capacity-0 = 󰁺
ramp-capacity-1 = 󰁻 ramp-capacity-1 = 󰁻
ramp-capacity-2 = 󰁼 ramp-capacity-2 = 󰁼
@ -207,8 +208,8 @@ ramp-capacity-6 = 󰂀
ramp-capacity-7 = 󰂁 ramp-capacity-7 = 󰂁
ramp-capacity-8 = 󰂂 ramp-capacity-8 = 󰂂
ramp-capacity-9 = 󰁹 ramp-capacity-9 = 󰁹
animation-low-0 = 󱃍 animation-low-0 = 󰂎
animation-low-1 = animation-low-1 = 󰂃
animation-low-framerate = 200 animation-low-framerate = 200
animation-charging-0 = 󰢜 animation-charging-0 = 󰢜
animation-charging-1 = 󰂆 animation-charging-1 = 󰂆

View file

@ -8,41 +8,39 @@
# Launcher # Launcher
"super + @space" = "rofi -show drun"; "super + @space" = "rofi -show drun";
"super + shift + p" = "powermenu";
# bspwm hotkeys # bspwm hotkeys
"super + Escape" = "pkill -USR1 -x sxhkd"; "super + Escape" = "pkill -USR1 -x sxhkd";
"super + alt + {q,r}" = "bspc {quit,wm -r}"; "super + alt + {q,r}" = "bspc {quit,wm -r}";
"super + {_,shift + }q" = "bspc node -{c,k}"; "super + {_,shift + }q" = "bspc node -{c,k}";
"super + m" = "bspc desktop -l next"; "super + m" = "bspc desktop -l next";
"super + g" = "bspc node -s biggest";
# State/Flags # State/Flags
"super + {t,shift + t,s,f}" = "bspc node -t {tiled,pseudo_tiled,floating,fullscreen}"; "super + {t,shift + t,s,shift + m}" = "bspc node -t {tiled,pseudo_tiled,floating,fullscreen}";
# Focus/Scap # Focus/Scap
"super + {_,shift + }{h,j,k,l}" = "bspc node -{f,s} {west,south,north,east}"; "super + {_,shift + }{h,j,k,l}" = "bspc node -{f,s} {west,south,north,east}";
"super + {_,shift + }{Left,Down,Up,Right}" = "bspc node -{f,s} {west,south,north,east}"; "super + {_,shift + }{Left,Down,Up,Right}" = "bspc node -{f,s} {west,south,north,east}";
#"super + {p,b,comma,period}" = "bspc node -f @{parent,brother,first,second}"; "super + {_,shift + }{comma,period}" = "bspc {desktop -f,node -d} {prev,next}.local.occupied --follow";
"super + {_,shift + }c" = "bspc node -f {next,prev}.local.!hidden.window"; "super + {_,shift + }n" = "bspc {desktop -f,node -d} next.local --follow";
"super + {_,shift + }bracket{left,right}" = "bspc {desktop -f,node -d} {prev,next} --follow"; "super + {_,shift + }bracket{left,right}" = "bspc {monitor -f,node -m} {prev,next} --follow";
"super + {_,shift + }{comma,period}" = "bspc {monitor -f,node -m} {prev,next} --follow";
"super + {grave,Tab}" = "bspc {node,desktop} -f last"; "super + {grave,Tab}" = "bspc {node,desktop} -f last";
"super + {_,shift + }{1-9,0}" = "bspc {desktop -f,node -d} '^{1-9,10}' --follow"; "super + {_,shift + }{1-9}" = "bspc {desktop -f,node -d} '^{1-9}' --follow";
# Named workspaces
"super + {_,shift + }{d,w,f,c,r}" = "bspc {desktop -f,node -d} '{dev,browser,files,chat,remote}' --follow";
# Preselect # Preselect
"super + ctrl + {h,j,k,l}" = "bspc node -p {west,south,north,east}"; "super + ctrl + {h,j,k,l}" = "bspc node -p {west,south,north,east}";
"super + ctrl + {1-9}" = "bspc node -o 0.{1-9}";
"super + ctrl + space" = "bspc node -p cancel"; "super + ctrl + space" = "bspc node -p cancel";
"super + ctrl + shift + space" = "bspc query -N -d | xargs -I id -n 1 bspc node id -p cancel"; "super + ctrl + shift + space" = "bspc query -N -d | xargs -I id -n 1 bspc node id -p cancel";
# screenshot # Screenshot
"Print" = "flameshot gui"; "Print" = "flameshot gui";
# Shortcuts # Shortcuts
"super + w" = "firefox";
"super + e" = "thunar"; "super + e" = "thunar";
"super + p" = "i3lock"; "super + p" = "powermenu";
"super + F1" = "xfce4-screensaver-command --lock";
# Volume control keys # Volume control keys
"XF86AudioMute" = "pamixer -t"; "XF86AudioMute" = "pamixer -t";

View file

@ -5,12 +5,5 @@
./rofi.nix ./rofi.nix
./polybar.nix ./polybar.nix
]; ];
xfconf.settings = { xfconf.settings.xsettings."Gtk/MonospaceFontName" = "FiraCode Nerd Font 12";
xfce4-session = {
"general/LockCommand" = "i3lock-fancy";
};
xsettings = {
"Gtk/MonospaceFontName" = "FiraCode Nerd Font 12";
};
};
} }