πͺ Main
This page contains the base configuration options for Ashell.
It allows you to configure things like the log level, the monitor(s) used to render the status bar, and the barβs position.
All these configurations are defined in the root of the toml
file.
Log Levelβ
The log level controls the verbosity of logs.
You can set it to a general level like debug
, info
, warn
, or error
,
or specify fine-grained control to enable logs from specific modules
in the codebase, e.g., ashell::services::network=debug
.
See more about log levels.
This configuration requires restarting Ashell to take effect.
Log Examplesβ
Set the global log level to debug
for all modules:
log_level = "debug"
Set the log level for the ashell
module only:
log_level = "ashell=debug"
Set the log level to warn
for all modules, info
for Ashell modules,
and debug
only for the network service:
log_level = "warn,ashell=info,ashell::services::network=debug"
To understand all possible module names you can use, check
the source code.
The src
folder is the root of the ashell
module, and every directory
or file under it declares a module or submodule.
For example, the file src/modules/media_player.rs
maps to the module ashell::modules::media_player
.
Donβt confuse Ashell features (called βmodulesβ) with Rust modules
(defined with mod.rs
or in files).
In this configuration, we're referring to Rust modules.
Outputsβ
You can configure which monitor(s) should display the status bar.
It can render on all monitors, only on the active one (the focused monitor when Ashell starts), or on a list of specified monitors.
Output Examplesβ
Render the status bar on all monitors:
outputs = "All"
Render the status bar on the active monitor:
outputs = "Active"
Render the status bar on a specific list of monitors:
outputs = { Targets = ["DP-1", "eDP-1"] }
Positionβ
You can set the position of the status bar to either Top
or Bottom
.
Position Examplesβ
Set the bar position to the top:
position = "Top"
Set the bar position to the bottom:
position = "Bottom"