Dots Scripts - ulises-jeremias/dotfiles GitHub Wiki
As part of this dotfiles installation, we provide a curated collection of utility scripts that help automate and enhance your desktop experience. These scripts handle everything from brightness control to network checks, and theyβre neatly organized under a single command: dots
.
Tip
All scripts are fully customizable. You can modify them, add your own, or extend existing ones β and manage them with chezmoi
just like any other part of your dotfiles.
dots
is a wrapper utility that exposes various helpful scripts for configuring modules and interacting with your system.
You can use it directly from the terminal to:
- Run scripts individually
- Discover available helpers
- Simplify your workflow
dots --help # Show help menu
dots --list # List all available scripts
dots <script> # Run a specific script (with optional flags)
π Pro Tip: You can use
chezmoi edit ~/.local/bin/dots
to customize the wrapper script if needed.
π This list may evolve. To check the current list on your system, run:
dots --list
-
brightness
β Adjust screen brightness viaxbacklight
,brightnessctl
,blight
, orxrandr
-
check-network
β Check if youβre connected to the internet -
checkupdates
β Query available package updates -
config-manager
β Manage configuration snapshots and backups -
dependencies
β Check and install required system dependencies -
feh-blur
β Blur the background when using feh to set wallpaper -
git-notify
β Send notifications when git commits are made -
gtk-theme
β [NEW] Intelligent GTK theme management with rice integration and auto-detection -
i3-resurrect-rofi
β Manage i3-resurrect workspace profiles via Rofi menu -
jgmenu
β Launch jgmenu application launcher -
microphone
β Monitor and toggle microphone mute status with visual indicators -
monitor
β Get the name of the currently active monitor -
next-workspace
β Switch to the next existing i3 workspace -
night-mode
β Toggle night mode/blue light filter -
performance
β Monitor system performance and run benchmarks -
popup-calendar
β Display a calendar in a popup window -
rofi-bluetooth
β Manage Bluetooth device connections via Rofi menu -
rofi-randr
β Display resolution management via Rofi menu -
rofi-rice-selector
β Select and apply desktop rice themes via Rofi menu -
rofi-run
β Enhanced Rofi application and command launcher -
rofi-xrandr
β Advanced display configuration with charts via Rofi -
screenshooter
β Take screenshots with various options and formats -
scripts
β Interactive menu to browse and launch available dots scripts -
security-audit
β Run comprehensive security audits and apply security fixes -
smart-colors
β [NEW] Analyze color palettes and suggest optimal semantic colors -
sysupdate
β Perform comprehensive system updates -
toggle
β Toggle state of applications like polybar, compositor, notifications -
updates
β Check and display available package updates with notifications -
wal-reload
β [ENHANCED] Reload pywal colorscheme and apply smart colors to i3, rofi, eww, polybar, betterlockscreen -
weather-info
β Display current weather information and forecasts
Purpose: Intelligent color palette analysis and theme-adaptive color selection.
Usage Examples:
# Quick palette analysis
dots-smart-colors
# Detailed analysis with recommendations
dots-smart-colors --analyze
# Get specific semantic color
dots-smart-colors --concept=error
dots-smart-colors --concept=success --format=polybar
# Export for different applications
dots-smart-colors --export # Shell variables
dots-smart-colors --export --format=eww # EWW SCSS
dots-smart-colors --export --format=i3 # i3 configuration
Key Features:
- π Light/Dark Theme Detection: Automatically detects theme brightness and optimizes colors accordingly
- π Smart Foreground Optimization: Light themes get softer foreground colors for better readability
- Theme-adaptive: Colors automatically adjust to any palette
- Semantic mapping: Intelligent error/success/warning color selection
- Multiple formats: Shell, Polybar, EWW, i3 export support
- Fallback system: Always provides valid colors
- Simple variables: Clean COLORERROR, COLOR_SUCCESS format (no SMART prefix)
Purpose: Complete theme refresh with smart color integration.
Automatic Integration:
When you change wallpapers via wpg
, the system now:
- Generates pywal colors from wallpaper
- Analyzes palette with smart colors algorithm
-
Applies optimized colors to all applications:
-
EWW: Enhanced
colors.scss
with semantic variables - Polybar: Smart environment variables + auto-restart
-
i3: Generated
colors-smart.conf
file - Scripts: Weather, player, jgmenu with smart colors
-
EWW: Enhanced
No manual configuration needed - everything happens automatically!
Purpose: Intelligent GTK theme management integrated with the rice system.
Core Features:
- π¨ Rice Integration: Automatically applies GTK themes based on rice configuration
- π€ Smart Detection: Analyzes wallpaper brightness to suggest optimal themes
-
π Auto-Application: Integrated with
dots-wal-reload
for seamless theme switching - π Theme Management: List, apply, and analyze installed GTK themes
Usage Examples:
# List all installed GTK themes
dots gtk-theme list
# Show current theme
dots gtk-theme current
# Apply specific theme
dots gtk-theme apply Orchis-Dark-Compact
# Auto-detect optimal theme for current wallpaper
dots gtk-theme auto
# Apply GTK theme for specific rice
dots gtk-theme rice space
# Analyze wallpaper and suggest theme
dots gtk-theme detect ~/Pictures/wallpaper.jpg
Automatic Integration: When you switch rice themes or change wallpapers:
- Rice Configuration: Each rice can specify preferred GTK theme
- Smart Analysis: System analyzes wallpaper brightness and colors
- Theme Selection: Automatically chooses light/dark theme variants
- Live Application: GTK theme updates immediately for all applications
Rice Configuration Support:
# In rice config.sh files:
GTK_THEME="Orchis-Dark-Compact" # Specific theme
ICON_THEME="Numix-Circle" # Icon theme
PREFER_DARK_THEME="true" # Dark preference
# Or use auto-detection:
GTK_THEME="auto" # Auto-detect based on wallpaper
PREFER_DARK_THEME="auto" # Auto-detect light/dark preference
All scripts can be found in your dotfiles repo (usually under ~/.local/bin/
). To customize:
chezmoi edit ~/.local/bin/<script-name>
chezmoi apply
You can also add your own scripts and link them via the dots
interface for quick access.
- Explore the script source code:
chezmoi edit ~/.local/bin/dots
- Join the Dotfiles Discussions
Use the dots
utility to take your workflow to the next level. Automate, simplify, and enjoy the full power of your environment! β‘