Hi, I cannot select screen on OBS. Steps to reproduce:
- Add source, select Screen Capture (PipeWire).
- Select +Add a new Screen Capture (PipeWire).
- Click Open Selector.
The button shows click animation, but nothing happens. In the terminal, the message appears:
info: PipeWire initialized
info: [pipewire] Screencast session created
warning: [pipewire] Failed to select source, denied or cancelled by user
I realised that other screenrecord apps, such as kooha and openscreen, were also unable to select a screen, thus I looked at xdg-desktop-portal-wlr:
● xdg-desktop-portal-wlr.service - Portal service (wlroots implementation)
Loaded: loaded (/etc/systemd/user/xdg-desktop-portal-wlr.service; linked-runtime; preset: ignored)
Drop-In: /nix/store/6spbba5jk6kvzwlzk7pgsi8x9fcx0g4v-user-units/xdg-desktop-portal-wlr.service.d
└─overrides.conf
Active: active (running) since Tue 2026-11-10 00:16:20 +08; 23min ago
Invocation: b588d92a46894c7fab0ee0eb2415a2ef
Main PID: 1186 (.xdg-desktop-po)
Tasks: 2 (limit: 18752)
Memory: 2.4M (peak: 4.1M)
CPU: 132ms
CGroup: /user.slice/user-1000.slice/user@1000.service/app.slice/xdg-desktop-portal-wlr.service
└─1186 /nix/store/xi2s5lzp554c4sl0cn2ckp9j6hh3xbia-xdg-desktop-portal-wlr-0.8.5/libexec/xdg-desktop-portal-wlr --config=/nix/store/ifpmm3k7n1qq0lf0rhyc1i84m5km562z-xdg-desktop-p>
Nov 10 00:37:41 pyramid xdg-desktop-portal-wlr[5588]: /bin/sh: line 1: mew: command not found
Nov 10 00:37:41 pyramid xdg-desktop-portal-wlr[5589]: /bin/sh: line 1: fuzzel: command not found
Nov 10 00:37:41 pyramid xdg-desktop-portal-wlr[1186]: 2026/11/10 00:37:41 [ERROR] - wlroots: no output found
Nov 10 00:37:51 pyramid xdg-desktop-portal-wlr[5590]: /bin/sh: line 1: wmenu: command not found
Nov 10 00:37:51 pyramid xdg-desktop-portal-wlr[5594]: /bin/sh: line 1: mew: command not found
Nov 10 00:37:51 pyramid xdg-desktop-portal-wlr[5595]: /bin/sh: line 1: fuzzel: command not found
Nov 10 00:37:51 pyramid xdg-desktop-portal-wlr[1186]: 2026/11/10 00:37:51 [ERROR] - wlroots: no output found
Nov 10 00:38:56 pyramid xdg-desktop-portal-wlr[5605]: /bin/sh: line 1: wmenu: command not found
Nov 10 00:38:56 pyramid xdg-desktop-portal-wlr[1186]: 2026/11/10 00:38:56 [ERROR] - wlroots: no output found
Nov 10 00:38:57 pyramid xdg-desktop-portal-wlr[1186]: 2026/11/10 00:38:57 [ERROR] - wlroots: no output found
if I installed fuzzel or wmenu, their respective error messages would go away, leaving only mew, so it must have sensed the installed programs, but nothing changed. xdg-desktop-portal gives:
● xdg-desktop-portal.service - Portal service
Loaded: loaded (/etc/systemd/user/xdg-desktop-portal.service; linked-runtime; preset: ignored)
Active: active (running) since Tue 2026-11-10 00:16:20 +08; 29min ago
Invocation: 199745592d7d40e4a4f8e592bc598a75
Main PID: 1140 (.xdg-desktop-po)
Tasks: 6 (limit: 18752)
Memory: 10.1M (peak: 10.6M)
CPU: 85ms
CGroup: /user.slice/user-1000.slice/user@1000.service/session.slice/xdg-desktop-portal.service
└─1140 /nix/store/52ihln918zclkrrwxsmpyzq3rps05168-xdg-desktop-portal-1.22.1/libexec/xdg-desktop-portal
Nov 10 00:16:20 pyramid systemd[886]: Starting Portal service...
Nov 10 00:16:20 pyramid systemd[886]: Started Portal service.
Nov 10 00:16:21 pyramid /nix/store/52ihln918zclkrrwxsmpyzq3rps05168-xdg-desktop-portal-1.22.1/libexec/xdg-desktop-portal[1140]: ../gobject/gtype.c:4158: type id '2' is invalid
Nov 10 00:16:21 pyramid /nix/store/52ihln918zclkrrwxsmpyzq3rps05168-xdg-desktop-portal-1.22.1/libexec/xdg-desktop-portal[1140]: can't peek value table for type '<unknown>' which is not currently referenced
Nov 10 00:16:21 pyramid /nix/store/52ihln918zclkrrwxsmpyzq3rps05168-xdg-desktop-portal-1.22.1/libexec/xdg-desktop-portal[1140]: g_value_unset: assertion 'value_table' failed
The strangest part of all this is that I can record fine using my browser, firefox. An example is that Online Screen Recorder, https://screenrecorderonline.net/, works completely fine.
My window manager is programs.mango.enable. I have tried both nix-shell -p obs-studio and programs.obs-studio.enable, with the same result. I suspected that it could be graphical-session.target not being set following XDG Desktop Portal - ArchWiki, but according to NixOS module does not activate graphical-session.target · Issue #1046 · mangowm/mango · GitHub it seems to have been set.