Skip to main content
Config-Sway includes several Rofi-based menu scripts that provide a beautiful, user-friendly interface for common tasks. These scripts are located in ~/.config/rofi/scripts/ and integrate seamlessly with the Sway window manager.

Available Menus

selector-app.sh

Application launcher with icon support. Location: ~/.config/rofi/scripts/selector-app.sh

Features

  • Displays installed applications with icons
  • Searches applications by name
  • Custom theme with background image
  • Fast application launching

Usage

Bind to a keyboard shortcut in Sway config:

power-menu.sh

Power management menu for system operations. Location: ~/.config/rofi/scripts/power-menu.sh

Features

  • Shutdown, reboot, suspend, lock, and logout options
  • Shows last login time and system uptime
  • Custom background image
  • Safe with confirmation dialogs

Usage

  • Shutdown (systemctl poweroff) - Power off the system
  • Reboot (systemctl reboot) - Restart the system
  • Suspend (systemctl suspend) - Suspend to RAM
  • Lock (swaylock) - Lock the screen
  • Logout (swaymsg exit) - Exit Sway session
  • Cancel - Close the menu
The power menu requires systemctl, swaylock, and optionally mpc and amixer for full functionality.

Emoji and icon picker. Location: ~/.config/rofi/scripts/menu-iconos.sh

Features

  • 1200+ emojis organized by category
  • Searchable by name (in Spanish)
  • Copies emoji to clipboard
  • Auto-types emoji at cursor position
  • Works with Wayland via wl-copy and wtype

Usage

Categories

  • Faces and expressions
  • Hand gestures
  • People and body parts
  • Animals and nature
  • Food and drink
  • Activities and sports
  • Travel and places
  • Objects and symbols
  • Flags

theme-switcher.sh

System-wide theme switcher. Location: ~/.config/rofi/scripts/theme-switcher.sh

Features

  • Switches themes for Kitty, Waybar, Rofi, and Sway
  • Visual preview of themes with wallpaper thumbnails
  • Automatic configuration backup
  • Applies wallpaper with swaybg
  • Restarts Waybar and reloads Sway

Usage

Theme Structure

Themes are stored in ~/.config/themes/ with this structure:
1

Browse Themes

The script scans ~/.config/themes/ for available themes and displays them with wallpaper previews
2

Select Theme

Choose a theme from the Rofi menu
3

Backup Configs

Automatically backs up your current configuration with timestamp
4

Apply Theme

Copies theme files to active config directories and applies changes
5

Reload

Restarts Waybar and reloads Sway to apply the new theme
The script automatically converts Waybar configs from Hyprland to Sway format by replacing module names.

wallpaper-switcher.sh

Wallpaper browser and switcher. Location: ~/.config/rofi/scripts/wallpaper-switcher.sh

Features

  • Visual wallpaper browser with thumbnails
  • Searches wallpapers in ~/.config/wallpapers/
  • Applies wallpaper instantly with swaybg
  • Saves wallpaper choice for persistence
  • Notification with preview

Usage

Configuration

Rofi Theme Customization

All Rofi menus use themes from ~/.config/rofi/styles/_core/:
  • selector-app.rasi - Application launcher theme
  • power-menu.rasi - Power menu theme
  • menu-iconos.rasi - Emoji picker theme
  • theme-switcher.rasi - Theme browser theme
  • wallpaper-switcher.rasi - Wallpaper browser theme
  • palette.rasi - Color palette (auto-generated or custom)
Edit these files to customize appearance:

Sway Keybindings

Recommended keybindings for ~/.config/sway/config:

Troubleshooting

Rofi Not Launching

Verify Rofi is installed:

Icons Not Showing

Ensure an icon theme is installed:

Wallpaper Not Applying

Check swaybg is running:
Verify wallpaper path:

Theme Switcher Errors

Ensure theme directory exists:
Check for required files in theme:

Emoji Picker Not Working

Install Wayland clipboard tools:

Creating Custom Rofi Scripts

You can create your own Rofi menus following this template:
For more Rofi customization options, see the Rofi documentation.

Integration with Other Tools

The Rofi scripts integrate with:
  • Sway - Window manager control
  • Waybar - Status bar theming
  • Kitty - Terminal theming
  • swaybg - Wallpaper management
  • swaylock - Screen locking
  • systemctl - System power management
  • wl-clipboard - Wayland clipboard
  • wtype - Text input simulation
Ensure these tools are installed for full functionality.