Expand description
Theme system for Pacsea.
Split from a monolithic file into submodules for maintainability. Public
re-exports keep the crate::theme::* API stable.
Structs§
- KeyChord
- A single keyboard chord (modifiers + key).
- KeyMap
- Application key bindings. Each action can have multiple chords.
- Settings
- User-configurable application settings parsed from
pacsea.conf. - Theme
- Application theme palette used by rendering code.
Enums§
- Package
Marker - User-configurable application settings parsed from
pacsea.conf.
Functions§
- config_
dir - What: Resolve the Pacsea configuration directory, ensuring it exists on disk.
- ensure_
settings_ keys_ present - What: Ensure all expected settings keys exist in
settings.conf, appending defaults as needed. - lists_
dir - What: Obtain the lists subdirectory inside the Pacsea config folder.
- logs_
dir - What: Obtain the logs subdirectory inside the Pacsea config folder.
- maybe_
migrate_ legacy_ confs - What: Migrate legacy
pacsea.confinto the splittheme.confandsettings.conffiles. - reload_
theme - What: Reload the theme configuration on demand.
- save_
app_ start_ mode - Persist start mode (package/news).
- save_
fuzzy_ search - What: Persist the fuzzy search toggle.
- save_
mirror_ count - What: Persist the numeric limit on ranked mirrors.
- save_
news_ filter_ installed_ only - Persist whether to restrict advisories to installed packages.
- save_
news_ filter_ show_ advisories - Persist whether to show security advisories.
- save_
news_ filter_ show_ arch_ news - Persist whether to show Arch news items.
- save_
news_ filter_ show_ aur_ comments - Persist whether to show AUR comments in the News view.
- save_
news_ filter_ show_ aur_ updates - Persist whether to show AUR package updates in the News view.
- save_
news_ filter_ show_ pkg_ updates - Persist whether to show installed package updates in the News view.
- save_
news_ filters_ collapsed - Persist whether news filters are collapsed behind the Filters button.
- save_
news_ max_ age_ days - Persist the maximum age of news items (None = all).
- save_
scan_ do_ clamav - What: Persist the
ClamAVscan toggle. - save_
scan_ do_ custom - What: Persist the custom scan toggle.
- save_
scan_ do_ semgrep - What: Persist the Semgrep scan toggle.
- save_
scan_ do_ shellcheck - What: Persist the
ShellCheckscan toggle. - save_
scan_ do_ sleuth - What: Persist the Sleuth scan toggle.
- save_
scan_ do_ trivy - What: Persist the Trivy scan toggle.
- save_
scan_ do_ virustotal - What: Persist the
VirusTotalscan toggle. - save_
selected_ countries - What: Persist the comma-separated list of preferred mirror countries.
- save_
show_ install_ pane - What: Persist the visibility flag for the Install pane.
- save_
show_ keybinds_ footer - What: Persist the visibility flag for the keybinds footer.
- save_
show_ recent_ pane - What: Persist the visibility flag for the Search history pane.
- save_
sort_ mode - What: Persist the user-selected sort mode into
settings.conf(or legacypacsea.conf). - save_
startup_ news_ configured - Persist whether startup news popup setup has been completed.
- save_
startup_ news_ max_ age_ days - Persist the maximum age of news items for startup news popup (None = all).
- save_
startup_ news_ show_ advisories - Persist whether to show security advisories in startup news popup.
- save_
startup_ news_ show_ arch_ news - Persist whether to show Arch news in startup news popup.
- save_
startup_ news_ show_ aur_ comments - Persist whether to show AUR comments in startup news popup.
- save_
startup_ news_ show_ aur_ updates - Persist whether to show AUR updates in startup news popup.
- save_
startup_ news_ show_ pkg_ updates - Persist whether to show official package updates in startup news popup.
- save_
virustotal_ api_ key - What: Persist the
VirusTotalAPI key used for scanning packages. - settings
- What: Load user settings and keybinds from config files under HOME/XDG.
- theme
- What: Access the application’s theme palette, loading or caching as needed.