add nova-plugin: in-process cxx-qt stats plugin replacing nova-stats subprocess
This commit is contained in:
parent
40cc681e9a
commit
e39d47177b
19 changed files with 1893 additions and 233 deletions
|
|
@ -60,17 +60,16 @@ imports = [ inputs.nova-shell.nixosModules.default ];
|
|||
You poor thing. Here's what the Nix packaging does for you, manually:
|
||||
|
||||
1. Build [quickshell](https://quickshell.outfoxxed.me) from source. You'll need Qt 6.
|
||||
2. Build `nova-stats` from `stats-daemon/` (`cargo build --release`). Put the binary in your PATH.
|
||||
2. Build the stats plugin from `plugin/` (`cargo build --release`). Copy `libnova_plugin.so` and `target/qml_modules/NovaStats/qmldir` into a `NovaStats/` directory on Qt's QML import path. Set `QMAKE` to your `qmake6` before building.
|
||||
3. Put `gdbus` (from glib) in your PATH. The lock screen needs it.
|
||||
4. Compile the shaders: `for f in shell/modules/*.frag; do qsb --qt6 -o "${f}.qsb" "$f"; done`
|
||||
5. Install [Symbols Nerd Font](https://www.nerdfonts.com/).
|
||||
6. Create `~/.config/nova-shell/theme.json` and `~/.config/nova-shell/modules.json`. The Nix module generates these from your config. Without it, you write JSON by hand like a human. See the theme and module tables below for keys.
|
||||
7. Run: `quickshell -p /path/to/nova-shell/shell/shell.qml`
|
||||
7. Run: `quickshell -I /path/to/qml-modules -p /path/to/nova-shell/shell/shell.qml`
|
||||
|
||||
Optional runtime dependencies, depending on which modules you enable:
|
||||
- `wttrbar` for weather
|
||||
- `cava` for the audio visualizer on album art
|
||||
- `coreutils` (df) for disk usage
|
||||
|
||||
If something breaks, the Nix module would have handled it. You chose this path. I respect it in the same way I respect people who free-climb skyscrapers.
|
||||
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue