Move picom config to home-manager, add setup for xfce desktop with bspwm window manager
This commit is contained in:
parent
9ca27329bd
commit
ca888abcaf
|
@ -3,11 +3,4 @@
|
||||||
imports = [
|
imports = [
|
||||||
./common.nix
|
./common.nix
|
||||||
];
|
];
|
||||||
services.picom = {
|
|
||||||
enable = true;
|
|
||||||
shadow = true;
|
|
||||||
fade = true;
|
|
||||||
activeOpacity = 1.0;
|
|
||||||
inactiveOpacity = 1.0;
|
|
||||||
};
|
|
||||||
}
|
}
|
||||||
|
|
|
@ -3,7 +3,6 @@
|
||||||
imports = [
|
imports = [
|
||||||
./common.nix
|
./common.nix
|
||||||
./xserver.nix
|
./xserver.nix
|
||||||
./picom.nix
|
|
||||||
];
|
];
|
||||||
# Enable the X11 windowing system.
|
# Enable the X11 windowing system.
|
||||||
services.xserver.enable = true;
|
services.xserver.enable = true;
|
||||||
|
|
19
nixos/desktop/xfce.nix
Normal file
19
nixos/desktop/xfce.nix
Normal file
|
@ -0,0 +1,19 @@
|
||||||
|
{ ... }:
|
||||||
|
|
||||||
|
{
|
||||||
|
imports = [
|
||||||
|
./common.nix
|
||||||
|
./xserver.nix
|
||||||
|
];
|
||||||
|
services.xserver = {
|
||||||
|
enable = true;
|
||||||
|
desktopManager.xterm.enable = false;
|
||||||
|
desktopManager.xfce = {
|
||||||
|
enable = true;
|
||||||
|
enableXfwm = false;
|
||||||
|
};
|
||||||
|
windowManager.bspwm.enable = true;
|
||||||
|
displayManager.sddm.enable = true;
|
||||||
|
displayManager.defaultSession = "xfce+bspwm";
|
||||||
|
};
|
||||||
|
}
|
17
nixos/home-manager/env/bspwm.nix
vendored
Normal file
17
nixos/home-manager/env/bspwm.nix
vendored
Normal file
|
@ -0,0 +1,17 @@
|
||||||
|
{ ... }:
|
||||||
|
{
|
||||||
|
xsession.windowManager.bspwm = {
|
||||||
|
enable = true;
|
||||||
|
settings = {
|
||||||
|
window_gap = 12;
|
||||||
|
border_width = 2;
|
||||||
|
split_ratio = 0.5;
|
||||||
|
borderless_monocle = true;
|
||||||
|
gapless_monocle = true;
|
||||||
|
pointer_modifier = "mod1";
|
||||||
|
pointer_action1 = "move";
|
||||||
|
pointer_action2 = "resize_side";
|
||||||
|
pointer_action3 = "resize_corner";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
2
nixos/home-manager/env/default.nix
vendored
2
nixos/home-manager/env/default.nix
vendored
|
@ -1,6 +1,6 @@
|
||||||
{ ... }:
|
{ ... }:
|
||||||
{
|
{
|
||||||
imports = [
|
imports = [
|
||||||
./i3.nix
|
./xfce.nix
|
||||||
];
|
];
|
||||||
}
|
}
|
||||||
|
|
24
nixos/home-manager/env/picom.nix
vendored
Normal file
24
nixos/home-manager/env/picom.nix
vendored
Normal file
|
@ -0,0 +1,24 @@
|
||||||
|
{ ... }:
|
||||||
|
{
|
||||||
|
services.picom = {
|
||||||
|
enable = true;
|
||||||
|
shadow = true;
|
||||||
|
fade = true;
|
||||||
|
activeOpacity = 1.0;
|
||||||
|
inactiveOpacity = 0.8;
|
||||||
|
settings = {
|
||||||
|
blur = {
|
||||||
|
# requires: https://github.com/ibhagwan/picom
|
||||||
|
# method = "dual_kawase";
|
||||||
|
method = "kernel";
|
||||||
|
strength = 7;
|
||||||
|
deviation = 1.0;
|
||||||
|
kernel = "11x11gaussian";
|
||||||
|
background = false;
|
||||||
|
background-frame = false;
|
||||||
|
background-fixed = false;
|
||||||
|
kern = "3x3box";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
4
nixos/home-manager/env/polybar.nix
vendored
Normal file
4
nixos/home-manager/env/polybar.nix
vendored
Normal file
|
@ -0,0 +1,4 @@
|
||||||
|
{ ... }:
|
||||||
|
{
|
||||||
|
services.polybar.enable = true;
|
||||||
|
}
|
1
nixos/home-manager/env/rofi.nix
vendored
1
nixos/home-manager/env/rofi.nix
vendored
|
@ -4,6 +4,5 @@
|
||||||
enable = true;
|
enable = true;
|
||||||
location = "right";
|
location = "right";
|
||||||
pass.enable = true;
|
pass.enable = true;
|
||||||
#theme = "$HOME/.dotfiles/nixos/home-manager/env/config/rofi/catppuccin-macchiato.rasi";
|
|
||||||
};
|
};
|
||||||
}
|
}
|
||||||
|
|
94
nixos/home-manager/env/sxhkd.nix
vendored
Normal file
94
nixos/home-manager/env/sxhkd.nix
vendored
Normal file
|
@ -0,0 +1,94 @@
|
||||||
|
{ ... }:
|
||||||
|
{
|
||||||
|
services.sxhkd = {
|
||||||
|
enable = true;
|
||||||
|
keybindings = {
|
||||||
|
"super + w" = "firefox";
|
||||||
|
# terminal emulator
|
||||||
|
"super + Return" = "kitty";
|
||||||
|
"super + t" = "al-terminal";
|
||||||
|
"alt + shift + Return" = "al-terminal";
|
||||||
|
# file manager
|
||||||
|
"super + f" = "kitty -e ranger";
|
||||||
|
"super + shift + f" = "al-filemanager";
|
||||||
|
# program launcher
|
||||||
|
"super + @space" = "rofi_run -r";
|
||||||
|
"alt + p" = "rofi_run -r";
|
||||||
|
#to change tabs ig
|
||||||
|
# Switch to recent window
|
||||||
|
"alt + Tab" = "bspc node -f last.local";
|
||||||
|
# make sxhkd reload its configuration files:
|
||||||
|
"super + shift + r" = "pkill -USR1 -x sxhkd";
|
||||||
|
# quit bspwm normally
|
||||||
|
"super + x" = "rofi_run -l";
|
||||||
|
# Send the window to another edge of the screen
|
||||||
|
"super + {_,shift + }{Left,Down,Up,Right}" = "bspc node -{f,s} {west,south,north,east}";
|
||||||
|
# close and kill
|
||||||
|
"super + {_,shift + }q" = "bspc node -{c,k}";
|
||||||
|
# alternate between the tiled and monocle layout
|
||||||
|
#super + shift + m
|
||||||
|
"alt + Return" = "bspc desktop -l next";
|
||||||
|
# if the current node is automatic, send it to the last manual, otherwise pull the last leaf
|
||||||
|
"super + y" = "bspc query -N -n focused.automatic && bspc node -n last.!automatic || bspc node last.leaf -n focused";
|
||||||
|
# swap the current node and the biggest node
|
||||||
|
"super + g" = "bspc node -s biggest";
|
||||||
|
#
|
||||||
|
# state/flags
|
||||||
|
#
|
||||||
|
# set the window state
|
||||||
|
#super + {t,shift + t,s,f}
|
||||||
|
# bspc node -t {tiled,pseudo_tiled,floating,fullscreen}
|
||||||
|
"alt + f" = "bspc node -t \"~\"{floating,tiled}";
|
||||||
|
# set the node flags
|
||||||
|
"super + ctrl + {x,y,z}" = "bspc node -g {locked,sticky,private}";
|
||||||
|
#
|
||||||
|
# focus/swap
|
||||||
|
#
|
||||||
|
# focus the node in the given direction
|
||||||
|
"super + {_,shift + }{h,j,k,l}" = "bspc node -{f,s} {west,south,north,east}";
|
||||||
|
# focus the node for the given path jump
|
||||||
|
"super + {p,b,comma,period}" = "bspc node -f @{parent,brother,first,second}";
|
||||||
|
# focus the next/previous node in the current desktop
|
||||||
|
"super + {_,shift + }c" = "bspc node -f {next,prev}.local";
|
||||||
|
# focus the next/previous desktop in the current monitor
|
||||||
|
"super + bracket{left,right}" = "bspc desktop -f {prev,next}.local";
|
||||||
|
# focus the last node/desktop
|
||||||
|
"super + {grave,Tab}" = "bspc {node,desktop} -f last";
|
||||||
|
# focus the older or newer node in the focus history
|
||||||
|
"super + {o,i}" = "bspc wm -h off\; bspc node {older,newer} -f\; bspc wm -h on";
|
||||||
|
# focus or send to the given desktop
|
||||||
|
"super + {_,shift + }{1-9,0}" = "bspc {desktop -f,node -d} '^{1-9,10}'";
|
||||||
|
#
|
||||||
|
# preselect
|
||||||
|
#
|
||||||
|
# preselect the direction
|
||||||
|
"super + ctrl + {h,j,k,l}" = "bspc node -p {west,south,north,east}";
|
||||||
|
# preselect the ratio
|
||||||
|
"super + ctrl + {1-9}" = "bspc node -o 0.{1-9}";
|
||||||
|
# cancel the preselection for the focused node
|
||||||
|
"super + ctrl + space" = "bspc node -p cancel";
|
||||||
|
# cancel the preselection for the focused desktop
|
||||||
|
"super + ctrl + shift + space" = "bspc query -N -d | xargs -I id -n 1 bspc node id -p cancel";
|
||||||
|
#
|
||||||
|
# move/resize
|
||||||
|
#
|
||||||
|
# expand a window by moving one of its side outward
|
||||||
|
"space + shift + {Left,Down,Up,Right}" = "bspc node -z {left -20 0,bottom 0 20,top 0 -20,right 20 0}";
|
||||||
|
# contract a window by moving one of its side inward
|
||||||
|
"super + alt + shift + {h,j,k,l}" = "bspc node -z {right -20 0,top 0 20,bottom 0 -20,left 20 0}";
|
||||||
|
# move a floating window
|
||||||
|
#super + {Left,Down,Up,Right}
|
||||||
|
# bspc node -v {-20 0,0 20,0 -20,20 0}
|
||||||
|
## Move floating windows
|
||||||
|
"alt + shift + {Left,Down,Up,Right}" = "bspc node -v {-20 0,0 20,0 -20,20 0}";
|
||||||
|
# volume control keys
|
||||||
|
"XF86AudioMute" = "pamixer -t";
|
||||||
|
"XF86AudioRaiseVolume" = "pamixer -i 2";
|
||||||
|
"XF86AudioLowerVolume" = "pamixer -d 2";
|
||||||
|
"XF86MonBrightnessUp" = "xbacklight +10";
|
||||||
|
"XF86MonBrightnessDown" = "xbacklight -10";
|
||||||
|
# screenshot
|
||||||
|
"Print" = "flameshot gui";
|
||||||
|
};
|
||||||
|
};
|
||||||
|
}
|
14
nixos/home-manager/env/xfce.nix
vendored
Normal file
14
nixos/home-manager/env/xfce.nix
vendored
Normal file
|
@ -0,0 +1,14 @@
|
||||||
|
{ pkgs, ... }:
|
||||||
|
{
|
||||||
|
imports = [
|
||||||
|
./bspwm.nix
|
||||||
|
./sxhkd.nix
|
||||||
|
./picom.nix
|
||||||
|
./rofi.nix
|
||||||
|
./polybar.nix
|
||||||
|
];
|
||||||
|
home.packages = with pkgs; [
|
||||||
|
xfce.thunar
|
||||||
|
ranger
|
||||||
|
];
|
||||||
|
}
|
Loading…
Reference in a new issue