# Owlry Configuration # Copy to: ~/.config/owlry/config.toml # # File Locations (XDG Base Directory compliant): # ┌─────────────────────────────────────────────────────────────────────┐ # │ Config: ~/.config/owlry/config.toml Main configuration │ # │ Themes: ~/.config/owlry/themes/*.css Custom theme files │ # │ Style: ~/.config/owlry/style.css CSS overrides │ # │ Plugins: ~/.config/owlry/plugins/ User Lua/Rune plugins │ # │ Scripts: ~/.local/share/owlry/scripts/ Executable scripts │ # │ Data: ~/.local/share/owlry/frecency.json Usage history │ # └─────────────────────────────────────────────────────────────────────┘ # # System Plugin Locations: # ┌─────────────────────────────────────────────────────────────────────┐ # │ Native: /usr/lib/owlry/plugins/*.so Installed plugins │ # │ Runtimes: /usr/lib/owlry/runtimes/*.so Lua/Rune runtimes │ # └─────────────────────────────────────────────────────────────────────┘ # ═══════════════════════════════════════════════════════════════════════ # DMENU MODE # ═══════════════════════════════════════════════════════════════════════ # # Dmenu mode provides interactive selection from piped input. # The selected item is printed to stdout (not executed), so pipe # the output to execute it: # # ┌─────────────────────────────────────────────────────────────────────┐ # │ # Screenshot menu │ # │ printf '%s\n' \ │ # │ "grimblast --notify copy screen" \ │ # │ "grimblast --notify copy area" \ │ # │ | owlry -m dmenu -p "Screenshot" \ │ # │ | sh │ # │ │ # │ # Git branch checkout │ # │ git branch | owlry -m dmenu -p "checkout" | xargs git checkout │ # │ │ # │ # Package search │ # │ pacman -Ssq | owlry -m dmenu -p "install" | xargs sudo pacman -S │ # └─────────────────────────────────────────────────────────────────────┘ # ═══════════════════════════════════════════════════════════════════════ # GENERAL # ═══════════════════════════════════════════════════════════════════════ [general] show_icons = true max_results = 100 # Terminal emulator for SSH, scripts, etc. # Auto-detection order: $TERMINAL → xdg-terminal-exec → DE-native → Wayland → X11 → xterm # Uncomment to override: # terminal_command = "kitty" # Enable uwsm (Universal Wayland Session Manager) for launching apps. # When enabled, apps are launched via "uwsm app --" which starts them # in a proper systemd user session for better process management. # Requires: uwsm to be installed # use_uwsm = true # Header tabs — provider tabs shown in the UI bar (Ctrl+1..9 to toggle) # Core values: app, cmd, dmenu # Plugin values: uuctl, calc, clip, emoji, file, script, ssh, sys, web, bm # Any installed plugin's type_id is valid (e.g. "weather", "media") tabs = ["app", "cmd", "uuctl"] # ═══════════════════════════════════════════════════════════════════════ # APPEARANCE # ═══════════════════════════════════════════════════════════════════════ [appearance] width = 850 height = 650 font_size = 14 border_radius = 12 # Theme name - loads ~/.config/owlry/themes/{name}.css # Built-in: owl # Or leave unset/empty for GTK default # theme = "owl" # Color overrides (applied on top of theme) # [appearance.colors] # background = "#1a1b26" # background_secondary = "#24283b" # border = "#414868" # text = "#c0caf5" # text_secondary = "#565f89" # accent = "#7aa2f7" # accent_bright = "#89b4fa" # # Provider badge colors (optional) # badge_app = "#7aa2f7" # badge_cmd = "#9ece6a" # badge_bookmark = "#e0af68" # badge_calc = "#bb9af7" # badge_clip = "#7dcfff" # badge_dmenu = "#c0caf5" # badge_emoji = "#f7768e" # badge_file = "#73daca" # badge_script = "#ff9e64" # badge_ssh = "#2ac3de" # badge_sys = "#f7768e" # badge_uuctl = "#9ece6a" # badge_web = "#7aa2f7" # badge_media = "#bb9af7" # badge_weather = "#7dcfff" # badge_pomo = "#f7768e" # ═══════════════════════════════════════════════════════════════════════ # PLUGINS # ═══════════════════════════════════════════════════════════════════════ # # All installed plugins are loaded by default. Use 'disabled_plugins' to blacklist. # Plugin IDs: calculator, system, ssh, clipboard, emoji, scripts, bookmarks, # websearch, filesearch, systemd, weather, media, pomodoro [plugins] enabled = true # Master switch for all plugins # Plugins to disable (by ID) disabled_plugins = [] # Examples: # disabled_plugins = ["emoji", "pomodoro"] # Disable specific plugins # disabled_plugins = ["weather", "media"] # Disable widget plugins # Custom plugin registry URL (defaults to official registry) # registry_url = "https://my-registry.example.com/plugins.json" # ───────────────────────────────────────────────────────────────────────── # Sandbox settings (for Lua/Rune script plugins) # ───────────────────────────────────────────────────────────────────────── # [plugins.sandbox] # allow_filesystem = false # Allow file system access beyond plugin dir # allow_network = false # Allow network requests # allow_commands = false # Allow shell command execution # memory_limit = 67108864 # Memory limit in bytes (64 MB default) # ═══════════════════════════════════════════════════════════════════════ # PROVIDERS # ═══════════════════════════════════════════════════════════════════════ # # Controls built-in providers only. Plugins are enabled/disabled via # [plugins] disabled_plugins or `owlry plugin enable/disable `. [providers] # Core providers applications = true # .desktop applications from XDG dirs commands = true # Executables from $PATH # Built-in providers (compiled into owlry-core) calculator = true # Math expressions (= or calc trigger) converter = true # Unit/currency conversion (> trigger) system = true # System actions: shutdown, reboot, lock, etc. # Frecency — boost frequently/recently used items # Data stored in: ~/.local/share/owlry/frecency.json frecency = true frecency_weight = 0.3 # 0.0 = disabled, 1.0 = strong boost # Web search engine (used by owlry-plugin-websearch) # Options: google, duckduckgo, bing, startpage, searxng, brave, ecosia # Or a custom URL: "https://search.example.com/?q={query}" search_engine = "duckduckgo"