You are not logged in.
^ kanshi as an extension of wlr-randr I guess? I don't grasp it 100% but it looks to me like automation to choose a display when it's plugged in?
Maybe it wouldn't be too hard to make a CLI wrapper for wlr-randr that lets the user choose a config set from wlr-randr's list, offer to apply it (with a confirmation timeout in case the mode setting is broken) and write it to a file that is run from the user's autostart?
Of course a pretty GUI that did all that would be better. For a moment I thought nwg-displays might be it, but it doesn't support wlroots compositors.
(wdisplays ships no man page btw
)
Last edited by johnraff (2026-09-11 05:01:03)
...elevator in the Brain Hotel, broken down but just as well...
( a boring Japan blog (currently paused), now on Bluesky and Mastodon, there's also some GitStuff )
Offline
There's also something called shikane but no deb package yet.
...elevator in the Brain Hotel, broken down but just as well...
( a boring Japan blog (currently paused), now on Bluesky and Mastodon, there's also some GitStuff )
Offline
^Yesterday I downloaded labwc-menu-generator from here and installed it using apt. There were no errors; the application menu was available immediately after logging out and back in. ![]()
Offline
^Thanks for checking that. So for BL Nitrogen we can just use labwc-menu-generator from the regular Debian repos.
Meanwhile, for BL Carbon it might be an easy package to backport to Trixie. I'll have a look.
@unklar what Debian version are you testing on?
...elevator in the Brain Hotel, broken down but just as well...
( a boring Japan blog (currently paused), now on Bluesky and Mastodon, there's also some GitStuff )
Offline
inxi-system-info ![]()
inxi -Fzxr
System:
Kernel: 6.12.113+deb13-amd64 arch: x86_64 bits: 64 compiler: gcc v: 14.2.0
Desktop: LabWC v: N/A Distro: BunsenLabs 13 (Carbon)
base: Debian GNU/Linux 13
Machine:
Type: Desktop Mobo: Shuttle model: DS50U v: 1.0 serial: <superuser required>
UEFI: American Megatrends LLC. v: 1.07 date: 10/24/2023
CPU:
Info: 5-core model: Intel Celeron 7305 bits: 64 type: MCP arch: Alder Lake
rev: 4 cache: L1: 464 KiB L2: 3.2 MiB L3: 8 MiB
Speed (MHz): avg: 500 min/max: 400/1100:900 cores: 1: 500 2: 500 3: 500
4: 500 5: 500 bogomips: 11136
Flags: avx avx2 ht lm nx pae sse sse2 sse3 sse4_1 sse4_2 ssse3 vmx
Graphics:
Device-1: Intel Alder Lake-UP3 GT1 [UHD Graphics] vendor: Holco Enterprise
Co /Shuttle driver: i915 v: kernel arch: Xe bus-ID: 00:02.0
Display: wayland server: X.org v: 1.21.1.16 with: Xwayland v: 24.1.6
compositor: LabWC driver: X: loaded: modesetting unloaded: fbdev,vesa
dri: iris gpu: i915 resolution: 1920x1080~60Hz
API: EGL v: 1.5 drivers: iris,swrast platforms:
active: gbm,wayland,x11,surfaceless,device inactive: N/A
API: OpenGL v: 4.6 compat-v: 4.5 vendor: intel mesa v: 25.0.7-2+deb13u1
glx-v: 1.4 direct-render: yes renderer: Mesa Intel Graphics (ADL GT2)
Info: Tools: api: eglinfo,glxinfo wl: kanshi,wlr-randr x11: xdriinfo,
xdpyinfo, xprop, xrandr
Audio:
Device-1: Intel Alder Lake PCH-P High Definition Audio vendor: Holco
Enterprise Co /Shuttle driver: snd_hda_intel v: kernel bus-ID: 00:1f.3
API: ALSA v: k6.12.113+deb13-amd64 status: kernel-api
Server-1: PipeWire v: 1.4.2 status: active
Network:
Device-1: Intel Ethernet I219-LM vendor: Holco Enterprise Co /Shuttle
driver: e1000e v: kernel port: N/A bus-ID: 00:1f.6
IF: eno1 state: down mac: <filter>
Device-2: Intel Ethernet I226-LM vendor: Holco Enterprise Co /Shuttle
driver: igc v: kernel port: N/A bus-ID: 02:00.0
IF: enp2s0 state: up speed: 1000 Mbps duplex: full mac: <filter>
Device-3: Intel Wi-Fi 6 AX200 driver: iwlwifi v: kernel bus-ID: 03:00.0
IF: wlp3s0 state: up mac: <filter>
Bluetooth:
Device-1: Intel AX200 Bluetooth driver: btusb v: 0.8 type: USB
bus-ID: 1-10:6
Report: hciconfig ID: hci0 rfk-id: 1 state: down
bt-service: enabled,running rfk-block: hardware: no software: yes
address: <filter>
Drives:
Local Storage: total: 942.7 GiB used: 56.8 GiB (6.0%)
ID-1: /dev/nvme0n1 vendor: Micron model: MTFDKBA512QFM-1BD1AABGB
size: 476.94 GiB temp: 25.9 C
ID-2: /dev/sda vendor: Samsung model: SSD 870 EVO 500GB size: 465.76 GiB
temp: 27.0 C
Partition:
ID-1: / size: 81.24 GiB used: 10.64 GiB (13.1%) fs: ext4 dev: /dev/sda8
ID-2: /boot/efi size: 98.8 MiB used: 6.9 MiB (7.0%) fs: vfat
dev: /dev/nvme0n1p1
Swap:
ID-1: swap-1 type: partition size: 2 GiB used: 0 KiB (0.0%)
dev: /dev/nvme0n1p3
Sensors:
System Temperatures: cpu: 29.2 C mobo: N/A
Fan Speeds (rpm): N/A
Repos:
Packages: 1696
No active apt repos in: /etc/apt/sources.list
Active apt repos in: /etc/apt/sources.list.d/home:antonbatenev:medit.list
1: deb http://download.opensuse.org/repositories/home:/antonbatenev:/medit/Debian_13/ /
Active apt repos in: /etc/apt/sources.list.d/bunsen-trixie-backports.sources
1: deb https://pkg.bunsenlabs.org/debian/ trixie-backports main
Active apt repos in: /etc/apt/sources.list.d/bunsen.sources
1: deb https://pkg.bunsenlabs.org/debian/ carbon main
Active apt repos in: /etc/apt/sources.list.d/debian-trixie-backports.sources
1: deb https://deb.debian.org/debian/ trixie-backports main contrib non-free non-free-firmware
Active apt repos in: /etc/apt/sources.list.d/debian.sources
1: deb https://deb.debian.org/debian/ trixie main contrib non-free non-free-firmware
2: deb https://deb.debian.org/debian-security/ trixie-security main contrib non-free non-free-firmware
3: deb https://deb.debian.org/debian/ trixie-updates main contrib non-free non-free-firmware
Info:
Memory: total: 32 GiB note: est. available: 30.93 GiB used: 1.33 GiB (4.3%)
Processes: 203 Uptime: 7h 57m Init: systemd
Compilers: N/A Shell: Bash v: 5.2.37 inxi: 3.3.38Last edited by unklar (2026-10-27 15:42:53)
Offline
For a moment I thought nwg-displays might be it, but it doesn't support wlroots compositors.
Typo? It absolutely does...
https://github.com/nwg-piotr/nwg-displays
https://packages.debian.org/trixie/nwg-displays
Why why why why?!!???
Offline
johnraff wrote:For a moment I thought nwg-displays might be it, but it doesn't support wlroots compositors.
Typo?
What typo?
I had already studied both those pages before making my claim that wlroots compositors weren't supported. Some nwg-displays github issues too as I recall.
The program is expected to:
support sway, Hyprland, Niri and mangowm only.
- support sway and Hyprland only.
and: https://hypr.land/news/independentHyprland/
Hyprland is no longer a wlroots-based Wayland compositor
So it looks to me like no wlroots support.
...elevator in the Brain Hotel, broken down but just as well...
( a boring Japan blog (currently paused), now on Bluesky and Mastodon, there's also some GitStuff )
Offline
Huh, mangowm says it's wlroots right on its homepage...
https://mangowm.github.io/
I confess to being very confused as to what wlroots means. It's modules (or libraries) written in C that save time when building a compositor? So the compositor itself has to be written in C as well? Sway is written in C, hyrpland is now rust, niri is rust as well, and labwc is written in C but is wlroots based? Don't answer, I'm just saying it's confusing to the end user.
Why why why why?!!???
Offline
For a moment I thought nwg-displays might be it, but it doesn't support wlroots compositors.
mangowm says it's wlroots right on its homepage
So it does! So you win that one. ![]()
But nwg-displays looks quite firm in its list of supported compositors. I think I tested it with labwc and found it didn't work. I still have it installed so I'll log into a Wayland session and check it one more time.
PS:
$ nwg-displays
Neither sway nor Hyprland detected, terminatingSo it's quite picky about which compositor is trying to run it. Maybe the Forky version is more forgiving.
Last edited by johnraff (Today 02:38:18)
...elevator in the Brain Hotel, broken down but just as well...
( a boring Japan blog (currently paused), now on Bluesky and Mastodon, there's also some GitStuff )
Offline