XDG Desktop Portal
XDG Desktop Portal adalah antarmuka standar yang digunakan oleh aplikasi (terutama Flatpak, Snap, dan aplikasi sandboxed lainnya) untuk berinteraksi dengan sistem host secara aman — termasuk dialog buka/simpan file, clipboard, screencasting, membuka URL, dan lain-lain.
Instalasi
Sistem harus menjalankan D-Bus user session bus sebelum menggunakan XDG Desktop Portal.
Instal paket utama:
sudo xbps-install -S xdg-desktop-portal
Lalu instal setidaknya satu backend yang sesuai dengan desktop environment atau compositor yang digunakan:
| Backend | Keterangan |
|---|---|
xdg-desktop-portal-gtk | Pilihan default — UI berbasis GTK+, kompatibel dengan hampir semua DE |
xdg-desktop-portal-gnome | Antarmuka umum + fitur spesifik GNOME |
xdg-desktop-portal-kde | Antarmuka umum + fitur spesifik KDE (UI berbasis Qt/KF5) |
xdg-desktop-portal-wlr | Wajib untuk Wayland wlroots (Sway, Hyprland) — screenshot & screenshare |
xdg-desktop-portal-lxqt | Hanya file picker (berbasis libfm-qt) |
io.elementary.files | Hanya file picker |
Jika ragu, instal
xdg-desktop-portal-gtk— kompatibel dengan hampir semua lingkungan desktop.
Konfigurasi
Konfigurasi bawaan di /usr/share/xdg-desktop-portal/portals.conf sudah mencukupi untuk sebagian besar kebutuhan.
Override Konfigurasi
Untuk menyesuaikan portal per DE atau per antarmuka, buat file override di salah satu lokasi berikut:
- Level sistem:
/etc/xdg-desktop-portal/portals.conf - Level pengguna:
~/.config/xdg-desktop-portal/portals.confatau$XDG_CONFIG_HOME/xdg-desktop-portal/$XDG_CURRENT_DESKTOP-portals.conf
File konfigurasi ini memungkinkan penentuan backend per layanan — misalnya backend KDE untuk file chooser, tapi backend GTK untuk notifikasi. Lihat dokumentasi lengkap:
man 5 portals.conf
Verifikasi
Pastikan portal berjalan setelah instalasi dengan memeriksa proses D-Bus atau mencoba membuka file dialog dari aplikasi Flatpak. Jika menggunakan lingkungan minimal seperti window manager, pastikan dbus-run-session sudah aktif saat memulai sesi desktop.