Разрешение для приложений (Permissions)

Коллеги, добрый день!

На борту Fedora 42 (на 43 не смог обновиться из - за отсутствия NVidia Driver).

Запустил приложение “Камера” и случайно запретил ему доступ к камере.
В итоге это стало проблемой. В настройках “конфиденциальность и безопасность” >> “Камеры” >> “доступ к камере” галочка активна. Однако в списке приложений нет.

Пакет установлен через rpm (не Flatpak) - это стандартное приложение “Snapshot”
Следовательно во Flatseal приложение не отображается.

Далее была проведена диагностика (только конечный результат):

xxx@fedora42:~$ timeout 3 /usr/bin/snapshot 2>&1 | grep -iE 'camera|portal|denied'
2026-03-05T10:02:28.114674Z  INFO ashpd::desktop::request: Creating a org.freedesktop.portal.Request /org/freedesktop/portal/desktop/request/1_127/ashpd_KaXv7spDef
2026-03-05T10:02:28.119429Z  INFO ashpd::desktop::request: Received signal 'Response' on 'org.freedesktop.portal.Request'
2026-03-05T10:02:28.119486Z  INFO ashpd::proxy: Calling method org.freedesktop.portal.Camera:OpenPipeWireRemote
2026-03-05T10:02:28.121581Z  WARN snapshot::widgets::camera: Permission to use the camera portal denied: "Permission denied"
Завершено
xxx@fedora42:~$ busctl --user call org.freedesktop.impl.portal.PermissionStore \
  /org/freedesktop/impl/portal/PermissionStore \
  org.freedesktop.impl.portal.PermissionStore Lookup ss devices camera
a{sas}v 1 "" 1 "no" y 0

Помогла команда:

gdbus call --session \
  --dest org.freedesktop.impl.portal.PermissionStore \
  --object-path /org/freedesktop/impl/portal/PermissionStore \
  --method org.freedesktop.impl.portal.PermissionStore.Delete \
  devices camera

Вопрос:

Каждый раз проводить такое расследование с разрешениями для приложений как - то не хочется. Скрипт писать пока что лень ^.^

Может у кого - нибудь есть готовое решение для мониторинга разрешений приложений?

I use a script like this for inspecting the current permissions:

mkdir -p -Z ~/.local/bin
tee ~/.local/bin/app-permissions << "EOF" > /dev/null
#!/usr/bin/bash
PERMISSION_DIR="${HOME}/.local/share/flatpak/db"
find "${PERMISSION_DIR}" -type "f" \
| while read -r PERMISSION_DB
do
	busctl -j --user call \
		org.freedesktop.impl.portal.PermissionStore \
		/org/freedesktop/impl/portal/PermissionStore \
		org.freedesktop.impl.portal.PermissionStore \
		List s "${PERMISSION_DB##*/}" \
	| jq -r ".data[][]" \
	| while read -r PERMISSION_ID
	do
		jq <<- EOI
		{"db":"${PERMISSION_DB##*/}",
		"access":"${PERMISSION_ID}",
		"apps":$(busctl -j --user call \
			org.freedesktop.impl.portal.PermissionStore \
			/org/freedesktop/impl/portal/PermissionStore \
			org.freedesktop.impl.portal.PermissionStore \
			Lookup ss "${PERMISSION_DB##*/}" "${PERMISSION_ID}" \
			| jq -r ".data[0]")}
		EOI
	done
done
EOF
chmod +x ~/.local/bin/app-permissions
app-permissions

An alternative option for resetting permissions is removing the relevant database file.