Directory structure
Scripts are organized by purpose:Tmux scripts
tmux-ch.sh - Cheat sheet chooser
This script provides quick access to programming cheat sheets using cht.sh within tmux.scripts/tmux/tmux-ch.sh
How it works
Select a language or command
Uses
fzf to fuzzy-find from lists of programming languages and commands stored in ~/.tmux/.tmux-cht-languages and ~/.tmux/.tmux-cht-command.Usage
Bind this script to a tmux keybinding in your.tmux.conf:
prefix + C-h to launch the cheat sheet chooser.
Login scripts
These scripts automate system updates on first login of the day.first_login.sh - System update
Runs system updates using the appropriate package manager:scripts/login/first_login.sh
login.sh - First login check
Triggers the first login script once per day:scripts/login/login.sh
The
.first_login marker file should be removed daily by a cron job or systemd timer to ensure updates run on the first login each day.Setup
Add to your.bashrc or .zshrc:
Waybar scripts
Waybar scripts integrate with the Waybar status bar for displaying media information and system controls.spotify.sh - Media player status
Displays currently playing track from Spotify or other media players usingplayerctl:
.config/waybar/scripts/spotify.sh
Features
- Shows artist and track title
- Displays play/pause icons
- Uses Spotify green (
#1db954) for album tracks - Updates every second
- Handles no active player gracefully
Requires
playerctl to be installed: sudo pacman -S playerctl or sudo apt install playerctlpowermenu.sh - Power management
Provides a rofi-based power menu for system control:.config/waybar/scripts/power-menu/powermenu.sh
Features
- Shutdown, reboot, suspend, logout, and lock options
- Confirmation dialog before executing
- Shows hostname and uptime
- Integrates with Hyprland, i3lock, or swaylock
- Mutes audio before suspend
Making scripts executable
All scripts should have execute permissions:If you install dotfiles with the
install.sh script, permissions are set automatically.Related resources
Tmux configuration
Learn about tmux setup and keybindings
Waybar configuration
Customize your Waybar status bar
Installation
Install dotfiles and set up scripts