xdg-desktop-portal é um serviço D-Bus que permite que aplicativos interajam com a área de trabalho de forma segura. Vários aspectos da interação de área de trabalho, como seletor de arquivos, estilo da área de trabalho, etc, são implementados em diferentes APIs do D-Bus, conhecidas como portais. Os aplicativos em área restrita são os que mais se beneficiam desse serviço, pois não precisam de permissões especiais para usar as APIs do portal, mas qualquer aplicativo pode usá-lo. xdg-desktop-portal protege muitos recursos e funcionalidades com um sistema de permissão controlado pelo(a) usuário(a). Esse serviço precisa de uma estrutura de retaguarda que implemente interfaces de portal específicas de área de trabalho.
Esse pacote é conhecido por construir e funcionar corretamente usando uma plataforma LFS 12.3.
Transferência (HTTP): https://github.com/flatpak/xdg-desktop-portal/releases/download/1.20.0/xdg-desktop-portal-1.20.0.tar.xz
Soma de verificação MD5 da transferência: 9f6450322a359a95018b57960d1ca4fd
Tamanho da transferência: 1,1 MB
Espaço em disco estimado exigido: 21 MB (adicionar 2 MB para os testes)
Tempo de construção estimado: 0,1 UPC (adicionar 0,2 UPC para testes; com paralelismo=4)
Fuse-3.16.2, gdk-pixbuf-2.42.12, JSON-GLib-1.10.6, pipewire-1.2.7 e dbus-1.16.0 (em tempo de execução). Além disso, uma estrutura de retaguarda é necessária em tempo de execução para esse pacote ser de algum uso, seja xdg-desktop-portal-gtk-1.15.2, seja xdg-desktop-portal-gnome-47.3 ou xdg-desktop-portal-lxqt-1.1.0
bubblewrap-0.11.0 e docutils-0.21.2 (para construir as páginas de manual)
Embora exista uma opção para construir o pacote sem o bubblewrap, os(as) desenvolvedores(as) do fluxo de desenvolvimento e os(as) editores(as) do LFS recomendam fortemente não usar essa possibilidade, pois isso criará um grande problema de segurança.
GeoClue-2.7.2 (para o portal do “local”), e pytest-8.3.4 com libportal-0.9.1, dbusmock-0.34.3 e umockdev-0.19.1 (para executar testes)
sphinx-8.2.1 com sphinxext.opengraph, sphinx_copybutton, furo e flatpak
Instale xdg-desktop-portal executando os seguintes comandos:
mkdir build && cd build && meson setup --prefix=/usr --buildtype=release -D tests=disabled .. && ninja
Se as dependências opcionais estiverem instaladas, você consegue testar os resultados executando:
meson configure -D tests=enabled && ninja test
Sem as dependências externas, um teste, integration/dynamiclauncher, é conhecido por falhar.
Agora, como o(a) usuário(a) root
:
ninja install
Remova arquivos do systemd que são inúteis (como o(a) usuário(a)
root
):
rm -rvf /usr/lib/systemd
-D tests=disabled
: Evita
exigir diversas dependências opcionais que são necessárias somente
para testes.
Os principais arquivos de configuração são ~/.config/xdg-desktop-portal/portals.conf
,
/etc/xdg-desktop-portal/portals.conf
e
/usr/share/xdg-desktop-portal/portals.conf
.
Vários outros locais podem ser pesquisados em busca de arquivos
de configuração. Veja-se portals.conf(5).
Os vários arquivos de configuração são usados para escolher a estrutura de retaguarda, dependendo de várias condições. Veja-se portals.conf(5) para detalhes.