fastfetch-cli / fastfetch-cli/fastfetch
[FEAT] Add version detection for Umbriel window manager
- Dominant language
- C
- Stars
- 24.6k
- Forks
- 890
- Avg merge
- 1d 42m
- Merged PRs (30d)
- 17
Description
### Description
### Feature description
Fastfetch already detects the [Umbriel](https://github.com/noctalia-dev/umbriel) Wayland compositor as the WM process name (`umbriel`), but the `{version}` format variable comes back empty since `wm_linux.c` has no parser registered for it.
```
$ umbriel --version
umbriel 0.1.0 (7a448abe550e)
```
This is the same `name version (hash)` shape that `niri --version` produces, which fastfetch already parses. I'd like to add an equivalent `getUmbriel()` following that existing pattern.
### Motivation
Native detection matches how fastfetch already handles other Wayland compositors (niri, sway, labwc, Hyprland), the `WM` module reports the compositor's actual version consistently across the ecosystem, without per-user config.
A `command` module workaround is possible, but it means every Umbriel user has to manually patch their own config to get parity with what niri/sway/etc. users already get for free. Since Umbriel already appears natively as the WM process name (`umbriel`) and its `--version` output follows the same `name version (hash)` format fastfetch already parses for niri, adding a dedicated parser seems reasonable to do.
### Additional context
Umbriel is part of the [Noctalia](https://github.com/noctalia-dev) ecosystem, an independent Wayland compositor built on wlroots/umbrielfx (highly patched scenefx fork).
I already have a tested patch ready to submit as a PR if this is welcome:
```json
{
"type": "WM",
"result": {
"processName": "umbriel",
"prettyName": "umbriel",
"protocolName": "Wayland",
"pluginName": "",
"version": "0.1.0"
}
}
```
Contributor guide
Assessment
This issue has not been assessed yet.