| .forgejo/workflows | ||
| i18n/en | ||
| resources | ||
| src | ||
| .gitignore | ||
| .mise.toml | ||
| Cargo.lock | ||
| Cargo.toml | ||
| i18n.toml | ||
| justfile | ||
| LICENSE | ||
| org.lerch.weather.desktop | ||
| README.md | ||
Cosmic Weather Applet
A weather applet for the COSMIC desktop environment that displays current conditions in the panel and a full forecast in a popup. Weather data is provided by wttr.in using IP-based geolocation.
Building
Requires a Rust toolchain and the following system dependencies:
# Debian/Ubuntu
sudo apt-get install pkg-config libxkbcommon-dev libwayland-dev
Install Rust via rustup if needed, then:
cargo build --release
Testing
For development, cargo run launches the applet in a standalone window in the center of the display. It behaves the same as when embedded in the panel.
cargo run
Deploying
To deploy to your local user session, build a release binary, replace the running instance, and restart the panel so it picks up the new binary:
cargo build --release
cp target/release/cosmic-weather-applet ~/.local/bin/
# Restart the applet and panel
killall cosmic-weather-applet
killall cosmic-panel
The panel will relaunch automatically and load the updated applet.
Localization
Fluent is used for localization. Translation files are in the i18n directory. To add a new language, copy the English (en) localization, rename the directory to the target ISO 639-1 language code, and translate the message values.