https://github.com/pop-os/cosmic-notifications
https://github.com/pop-os/cosmic-notifications
Last synced: 5 months ago
JSON representation
- Host: GitHub
- URL: https://github.com/pop-os/cosmic-notifications
- Owner: pop-os
- License: gpl-3.0
- Created: 2023-06-24T02:40:26.000Z (almost 2 years ago)
- Default Branch: master
- Last Pushed: 2024-10-24T21:51:22.000Z (6 months ago)
- Last Synced: 2024-10-24T22:29:01.739Z (6 months ago)
- Language: Rust
- Size: 299 KB
- Stars: 20
- Watchers: 14
- Forks: 22
- Open Issues: 17
-
Metadata Files:
- Readme: README.md
- License: LICENSE.md
Awesome Lists containing this project
- stars - pop-os/cosmic-notifications - (Rust)
README
# Cosmic Notifications
Layer Shell notifications daemon which integrates with COSMIC.
# Building
Cosmic Notifications is set up to build a deb and a Nix flake, but it can be built using just.
Some Build Dependencies:
```
cargo,
just,
intltool,
appstream-util,
desktop-file-utils,
libxkbcommon-dev,
pkg-config,
desktop-file-utils,
```## Build Commands
For a typical install from source, use `just` followed with `sudo just install`.
```sh
just
sudo just install
```If you are packaging, run `just vendor` outside of your build chroot, then use `just build-vendored` inside the build-chroot. Then you can specify a custom root directory and prefix.
```sh
# Outside build chroot
just clean-dist
just vendor# Inside build chroot
just build-vendored
sudo just rootdir=debian/cosmic-notifications prefix=/usr install
```# Translators
Translation files may be found in the i18n directory. New translations may copy the English (en) localization of the project and rename `en` to the desired [ISO 639-1 language code](https://en.wikipedia.org/wiki/List_of_ISO_639-1_codes). Translations may be submitted through GitHub as an issue or pull request. Submissions by email or other means are also acceptable; with the preferred name and email to associate with the changes.
# Debugging & Profiling
## Profiling async tasks with tokio-console
To debug issues with asynchronous code, install [tokio-console](https://github.com/tokio-rs/console) and run it within a separate terminal. Then kill the **cosmic-notifications** process a couple times in quick succession to prevent **cosmic-session** from spawning it again. Then you can start **cosmic-notifications** with **tokio-console** support either by running `just tokio-console` from this repository to test code changes, or `env TOKIO_CONSOLE=1 cosmic-notifications` to enable it with the installed version of **cosmic-notifications**.