readme at the root, and fix what would break on a fresh machine
The repo landing page showed .config, .themes and .gtkrc-2.0 and nothing else,
so there was no sign the bootstrap existed. It has always been at
.config/rice/install.sh - that is just where it lands on disk. Root README now
carries the curl one-liner, a map of what is tracked, and a note that this is a
bare repo over $HOME so nobody goes looking for a wrapper folder again.
Things that would not have survived a replication:
- polybar's click and scroll handlers called $HOME/bin/system-info.sh and
$HOME/bin/volume.sh. That directory does not exist; the scripts are in
.config/scripts. The exec lines already pointed there, so only the
interactive bits were dead.
- bspwmrc hardcoded DisplayPort-0, so no desktops on any other machine.
Takes the xrandr primary now, falling back to the first monitor bspc sees.
- install.sh picked conflicting files out of git's checkout error with a
regex that required a dot inside the name, so .bashrc and .xinitrc were
never matched and never backed up - and .bashrc always exists on a fresh
Arch install, which is precisely when the checkout aborts.
- bspwmrc sourced ~/.env and merged ~/.Xresources unconditionally; neither
exists. Guarded.
packages.txt was missing programs whose configs this repo already carries:
fish, neovim, yazi, kitty, plus xrdb/xsetroot/xsettingsd/wmname that bspwmrc
launches, gtk3 for the control panel, and wireplumber for the wpctl calls.
Newly tracked: .xinitrc (the thing that actually starts bspwm), .bashrc (which
holds the dotfiles alias), greenclip, flameshot, kitty, Thunar, mimeapps and
user-dirs. Dropped six editor backups that had been committed by accident.
Skipped QtProject.conf - it is file-dialog history, not configuration.
Co-Authored-By: Claude Opus 5 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_011beBgzmH72WFn8wiWqRZPf
This commit is contained in:
parent
10fca7d9e4
commit
0780a3abf5
22 changed files with 358 additions and 262 deletions
|
|
@ -20,10 +20,13 @@ wmname LG3D
|
|||
|
||||
# Vars
|
||||
export XDG_CURRENT_DESKTOP="bspwm"
|
||||
sh -c 'function shenv() { export "$1=$2"; }; source ~/.env;'
|
||||
[ -f "$HOME/.env" ] && . "$HOME/.env"
|
||||
|
||||
# Workspaces Configuration
|
||||
bspc monitor DisplayPort-0 -d 1 2 3 4 5 6 7 8
|
||||
# Whatever the primary output is called on this machine.
|
||||
MONITOR="$(xrandr --query | awk '/ connected primary/{print $1; exit}')"
|
||||
[ -z "$MONITOR" ] && MONITOR="$(bspc query -M --names | head -n1)"
|
||||
bspc monitor "$MONITOR" -d 1 2 3 4 5 6 7 8
|
||||
|
||||
# Enable window focus follow mouse pointer
|
||||
bspc config focus_follows_pointer true
|
||||
|
|
@ -82,7 +85,7 @@ bspc rule -a 'legcord' desktop=10
|
|||
# (xdg-desktop-portal-gtk, used by browser file pickers) fail with "cannot open display".
|
||||
systemctl --user import-environment DISPLAY XAUTHORITY XDG_CURRENT_DESKTOP
|
||||
dbus-update-activation-environment --systemd DISPLAY XAUTHORITY XDG_CURRENT_DESKTOP
|
||||
xrdb merge $HOME/.Xresources
|
||||
[ -f "$HOME/.Xresources" ] && xrdb merge "$HOME/.Xresources"
|
||||
xsettingsd &
|
||||
dunst &
|
||||
flameshot &
|
||||
|
|
|
|||
|
|
@ -1,144 +0,0 @@
|
|||
# Animations
|
||||
animations = true;
|
||||
animation-stiffness-in-tag = 200;
|
||||
animation-stiffness-tag-change = 120.0;
|
||||
animation-window-mass = 0.5;
|
||||
animation-dampening = 20;
|
||||
animation-clamping = true;
|
||||
animation-for-open-window = "slide-up";
|
||||
animation-for-unmap-window = "slide-down";
|
||||
animation-for-menu-window = "slide-up";
|
||||
animation-for-transient-window = "slide-up";
|
||||
animation-for-prev-tag = "slide-up";
|
||||
enable-fading-prev-tag = true;
|
||||
animation-for-next-tag = "slide-down";
|
||||
enable-fading-next-tag = true;
|
||||
|
||||
# Shadow
|
||||
shadow = false;
|
||||
|
||||
# Fading
|
||||
fading = true;
|
||||
fade-in-step = 0.02;
|
||||
fade-out-step = 0.03;
|
||||
fade-delta = 8;
|
||||
no-fading-openclose = false;
|
||||
|
||||
# Transparency
|
||||
inactive-opacity-override = true;
|
||||
active-opacity-override = true;
|
||||
|
||||
focus-exclude = [
|
||||
"class_g = 'Cairo-clock'",
|
||||
];
|
||||
|
||||
opacity-rule = [
|
||||
# Fullscreen is not transparent
|
||||
"100:fullscreen",
|
||||
"100:_NET_WM_STATE@[*]:32a = '_NET_WM_STATE_FULLSCREEN'",
|
||||
|
||||
# Rest of the apps
|
||||
"75:class_g *?= 'firefox'",
|
||||
"75:class_g *?= 'Signal'",
|
||||
"75:class_g *?= 'Code'",
|
||||
"75:class_g *?= 'nemo'",
|
||||
"75:class_g *?= 'pavucontrol'",
|
||||
"75:class_g *?= 'qt5ct'",
|
||||
"75:class_g *?= 'qt6ct'",
|
||||
"75:class_g *?= 'Ark'",
|
||||
"75:class_g *?= 'Xarchiver'",
|
||||
"75:class_g *?= 'obs'",
|
||||
"75:class_g *?= 'kitty'",
|
||||
"75:class_g *?= 'Spotify'",
|
||||
"75:class_g *?= 'blueman-manager'",
|
||||
"75:class_g *?= 'Steam'",
|
||||
"75:class_g *?= 'steamwebhelper'",
|
||||
"75:class_g *?= 'Discord'",
|
||||
"75:class_g *?= 'Webcord'",
|
||||
"75:class_g *?= 'legcord'",
|
||||
"75:class_g *?= 'yad'",
|
||||
"75:class_g *?= 'org.kde.polkit-kde-authentication-agent-1'",
|
||||
"75:class_g *?= 'polkit-gnome-authentication-agent-1'",
|
||||
"75:class_g *?= 'org.freedesktop.impl.portal.desktop.gtk'",
|
||||
"75:class_g *?= 'Loupe'",
|
||||
"75:class_g *?= 'gnome-calculator'",
|
||||
"75:class_g *?= 'Evince'",
|
||||
"75:class_g *?= 'Polybar'",
|
||||
"75:class_g *?= 'Rofi'",
|
||||
];
|
||||
|
||||
|
||||
# Borders
|
||||
border-color = "#8b9151";
|
||||
corner-radius = 0;
|
||||
unredir-if-possible = true;
|
||||
no-ewmh-fullscreen = true;
|
||||
|
||||
rounded-corners-exclude = [
|
||||
"name = 'Polybar tray window'",
|
||||
"window_type = 'desktop'",
|
||||
"window_type = 'dropdown_menu'",
|
||||
"window_type = 'popup_menu'",
|
||||
"window_type = 'utility'",
|
||||
"window_type = 'tooltip'",
|
||||
"window_type = 'splash'",
|
||||
"class_g *?= 'dunst'",
|
||||
"class_g *?= 'Rofi'",
|
||||
"BSPWM_TILED@:c = 1",
|
||||
"_NET_WM_STATE@[*]:32a = '_NET_WM_STATE_FULLSCREEN'",
|
||||
];
|
||||
|
||||
|
||||
# Blur
|
||||
blur: {
|
||||
method = "dual_kawase";
|
||||
strength = 3;
|
||||
background = true;
|
||||
background-frame = false;
|
||||
background-fixed = false;
|
||||
}
|
||||
|
||||
blur-background-exclude = [
|
||||
"class_g = 'Dunst'",
|
||||
"window_type = 'desktop'",
|
||||
"window_type *= 'menu'",
|
||||
"window_type = 'utility'",
|
||||
"window_type = 'tooltip'",
|
||||
"window_type = 'splash'",
|
||||
"class_g *?= 'polybar'",
|
||||
"class_g *?= 'Rofi'",
|
||||
"class_g *?= 'screenkey'",
|
||||
"class_g *?= 'GLava'",
|
||||
"class_g *?= 'kdeconnectd'",
|
||||
"class_g *?= 'kdeconnect.daemon'",
|
||||
"class_g *?= 'activate-linux'",
|
||||
"_GTK_FRAME_EXTENTS@:c",
|
||||
];
|
||||
|
||||
# General settings
|
||||
backend = "glx"
|
||||
dithered-present = false;
|
||||
mark-wmwin-focused = true;
|
||||
mark-ovredir-focused = true;
|
||||
detect-rounded-corners = false;
|
||||
detect-client-opacity = false;
|
||||
use-ewmh-active-win = true;
|
||||
unredir-if-possible = false;
|
||||
detect-transient = true;
|
||||
#glx-no-stencil = true;
|
||||
use-damage = true;
|
||||
xrender-sync-fence = true;
|
||||
#window-shader-fg = "";
|
||||
transparent-clipping = false;
|
||||
log-level = "warn";
|
||||
|
||||
# Window types
|
||||
wintypes:
|
||||
{
|
||||
tooltip = { fade = true; shadow = false; opacity = 0.85; focus = true; full-shadow = false; };
|
||||
dock = { shadow = false; clip-shadow-above = true; }
|
||||
dnd = { shadow = false; }
|
||||
popup_menu = { opacity = 0.9; }
|
||||
dropdown_menu = { opacity = 0.9; }
|
||||
normal = { animation = "slide-down"; animation-unmap = "slide-up"; }
|
||||
};
|
||||
Loading…
Add table
Add a link
Reference in a new issue