Перейти к содержимому

Xdg desktop portal что это

  • автор:

[РЕШЕНО] Что Arch сделал с XFCE

Тормоза возможны только при определенных ситуациях. У меня одна прога притянула несколько зависимостей, связаных с xdg-desktop-portal.service, который не запускался и вызывал тормоза. Нашел решение для sway, сейчас все нормально — сервис запускается и тормоза исчезли.
Вот этот сервис, сейчас он нормально стартует
systemctl —user status xdg-desktop-portal.service

● xdg-desktop-portal.service - Portal service Loaded: loaded (/usr/lib/systemd/user/xdg-desktop-portal.service; static) Active: activating (start) since Fri 2022-05-06 17:37:14 MSK; 58s ago Main PID: 696 (xdg-desktop-por) . и так далее . 

PS — вот только пока не стал глубоко копать, в части удаления этих xdg-desktop-portal — нужно смотреть их назначение, привязку и др. . но понял одно, что это гадость, которую лучше убрать. Кстати, сразу после того обновления и reboot, стал тормозить и spectwm, но после все прошло, а вот на sway не прошло и пришлось искать лечение.
А потому предположу, если у кого появились тормоза, то сначала желательно проверить наличие пакетов xdg-desktop-portal-. и наличие ошибок в запуске сервиса. Вот эта гадость
pacman -Ss xdg-desktop-portal

extra/xdg-desktop-portal 1.14.4-1 [установлен] Desktop integration portals for sandboxed apps extra/xdg-desktop-portal-gnome 42.1-1 [установлен] A backend implementation for xdg-desktop-portal for the GNOME desktop environment extra/xdg-desktop-portal-gtk 1.14.0-1 [установлен] A backend implementation for xdg-desktop-portal using GTK extra/xdg-desktop-portal-kde 5.24.5-1 (plasma) A backend implementation for xdg-desktop-portal using Qt/KF5 community/xdg-desktop-portal-lxqt 0.2.0-1 A backend implementation for xdg-desktop-portal using Qt/KF5/libfm-qt community/xdg-desktop-portal-wlr 0.5.0-1 [установлен] xdg-desktop-portal backend for wlroots archlinuxcn/xdg-desktop-portal-lxqt-git 0.0.0.r13.9191efa-1 A backend implementation for xdg-desktop-portal using Qt/KF5

Ошибки не исчезают с опытом — они просто умнеют

Зачем нужно xdg-desktop-portal?

1) Если у меня X11, и нет flatpak, оно мне вообще нужно?

2) Почему без него в dolphin не работает правое меню «open with»?

devorg ★★
28.02.23 19:51:32 MSK

  1. Нужно, чтобы в dolphin работало правое меню «open with»
  2. Потому что нужен xdg-desktop-portal

alex1101 ☆
( 28.02.23 19:57:59 MSK )

Если у меня X11, и нет flatpak, оно мне вообще нужно?

Можно запускать десктопный софт в контейнерах, если он умеет в порталы.

annulen ★★★★★
( 28.02.23 20:06:02 MSK )
Ответ на: комментарий от alex1101 28.02.23 19:57:59 MSK

Пиши есчо побольше бесполезных комментариев.

xdg-desktop-portal/testing 1.16.0-2 amd64 desktop integration portal for Flatpak and Snap

devorg ★★
( 28.02.23 20:48:44 MSK ) автор топика

Почему без него в dolphin не работает правое меню «open with»?

Потому что большая часть софта из KDE — это бажный и хреново спроектированный хлам, использование которого может оправдать только его взаимная интеграция (и мб возможность кастомизации тулбаров, в отдельных случаях).

annulen ★★★★★
( 28.02.23 20:53:30 MSK )
Последнее исправление: annulen 28.02.23 20:55:07 MSK (всего исправлений: 1)

Если у меня X11, и нет flatpak, оно мне вообще нужно?

Иногда бывает нужно, если ты запускаешь GTK приложения в KDE и хочешь, чтобы они использовали стандартные кодоешные файловые диалоги вместо урезанных гномовских. Например у меня по умолчанию Visual Studio Code использует гномодиалоги для открытия папок и файлов. Но если поставить xdg-desktop-portal-kde и запустить вскод с переменной окружения GTK_USE_PORTAL=1 , то он начинает использовать KDE диалоги. Но далеко не весь GTK софт использует порталы. Гимп например такого до сих пор не умеет.

А так да, порталы изначально разрабатывались для флатпак приложений и без флатпака особого смысла не имеют. Нативные файловые диалоги в GTK приложениях — это всего лишь полезный побочный эффект.

archie
( 28.02.23 21:07:14 MSK )

aptitude show xdg-desktop-portal Пакет: xdg-desktop-portal Версия: 1.8.1-1 Состояние: установлен Установлен автоматически: да Мультиархитектура: сторонняя Приоритет: необязательный Раздел: admin Сопровождающий: Utopia Maintenance Team Архитектура: amd64 Размер в распакованном виде: 1 459 k

Ого, целых 1,5 мегабайта на диске. Наверно на флешку на 128 мегабайт устанавливаешь.

Polugnom ★★★★★
( 28.02.23 21:11:46 MSK )
Последнее исправление: Polugnom 28.02.23 21:11:55 MSK (всего исправлений: 1)

Ответ на: комментарий от archie 28.02.23 21:07:14 MSK

без флатпака особого смысла не имеют

Под вяленым через них реализуют шаринг экрана во всяких зумах, без флатпака. Правда по опыту это, скорее, не работает, чем работает, но может у меня слишком кривые руки чтобы это завести

grazor ★★
( 28.02.23 21:14:49 MSK )
Ответ на: комментарий от archie 28.02.23 21:07:14 MSK

Только непонятно почему Dolphin меню «Open with. » не работает без этого пакета. На Debian testing.

devorg ★★
( 28.02.23 21:31:53 MSK ) автор топика
Ответ на: комментарий от Polugnom 28.02.23 21:11:46 MSK

До чего унылый аргумент.

utanho ★★★★★
( 28.02.23 21:34:38 MSK )
Ответ на: комментарий от utanho 28.02.23 21:34:38 MSK

На самом деле отличный аргумент. Не, ну ведь разумеется создатели софта должны думать о тараканах в голове у каждого поехавшего. Кому-то блютуз ненужен, кому-то вай-фай, кто-то не пользуется захватом экрана, у кого-то тулкитофобия в острой стадии. Под каждого не подстроиться. И уж 1,5 мегабайта в такой ситуации совершенно не проблема.

Polugnom ★★★★★
( 28.02.23 21:43:17 MSK )
Ответ на: комментарий от Polugnom 28.02.23 21:43:17 MSK

Так это ты же пишешь о каких-то мегабайтах. У тебя эти тараканы в голове и есть.

Кстате не подскажешь какая зависимость размера на диске и размера в оперативной памяти, если уж ты такой умный.

devorg ★★
( 28.02.23 21:57:57 MSK ) автор топика
Последнее исправление: devorg 28.02.23 21:58:40 MSK (всего исправлений: 1)

Ответ на: комментарий от grazor 28.02.23 21:14:49 MSK

Под вяленым через них реализуют шаринг экрана во всяких зумах, без флатпака. Правда по опыту это, скорее, не работает, чем работает

Да, точно, под вяленым используются порталы и pipewire. Помню в ковидные 20-21 годы видеозвонки в зуме и скайпе под вяленым у меня не работали от слова совсем, что окончательно отбило охоту пробовать wayland сессии. Как сейчас не знаю. Возможно уже допилили.

archie
( 28.02.23 22:12:59 MSK )
Ответ на: комментарий от devorg 28.02.23 21:31:53 MSK

Только непонятно почему Dolphin меню «Open with…» не работает без этого пакета. На Debian testing.

Да хрен его знает. Нагуглил вот такой баг:

Особо не вникал, но судя по всему разрабы Dolphin выпилили старый диалог «Open with» и поменяли его на новый диалог, который открывается только через портал и требует пакет xdg-desktop-portal в обязательном порядке. К багу приложены скриншоты старого диалога «Open with» из Krusader и нового портального диалога из Dolphin. Видно, что окошки совершенно разные.

Проблему починили в плазме 5.27.1. Ну как починили. Просто добавили xdg-desktop-portal в обязательные зависимости 🙂 Так что хочешь не хочешь, а пакет все равно придется поставить.

archie
( 28.02.23 22:30:22 MSK )
Ответ на: комментарий от archie 28.02.23 22:30:22 MSK

Просто добавили xdg-desktop-portal в обязательные зависимости

Отличное решение. Хорошо что все нужные мне пакеты собираются без плазмы.

annulen ★★★★★
( 28.02.23 22:33:53 MSK )
Ответ на: комментарий от archie 28.02.23 22:30:22 MSK

Баг «исправлял» видимо тот чувак выше, который про мегабайты писал.

devorg ★★
( 28.02.23 22:51:40 MSK ) автор топика
Ответ на: комментарий от archie 28.02.23 21:07:14 MSK

и без флатпака особого смысла не имеют

ИИМХО неправильное утверждение. По большому счёту, портал — это стандартизированный (важно) IPC-интерфейс (в Линукс D-BUS, а что ещё-то, собственно) и какая-то хрень за ним, что-то там сама себе делающая и общающаяся с вызывающим через этот интерфейс. В чём смысл: у нас есть единая удобная точка контроля доступа к ресурсу — интерфейс.

Почему тут и pipewire сгодился, для скринкастов: потому что его интерфейсы абстрагированы в файловые дескрипторы (fd), которые легко и пробрасываются по шине и контролирются.

Почему и диалоги разные можно использовать: потому что интерфейсу портала, в принцие, пофигу, что реализуется там в бэкенде, как и бэкенду пофигу, что его вызывает. Если совсем упростить, достаточно в интерфейс постучаться. Но бэкенды таки должны быть (кто серверную часть портала реализовывать-то будет), поэтому xdg-desktop-portal-kde/gnome/wlr и тд.

SkyMaverick ★★★★★
( 28.02.23 22:54:23 MSK )
Последнее исправление: SkyMaverick 28.02.23 22:57:03 MSK (всего исправлений: 1)

Ответ на: комментарий от SkyMaverick 28.02.23 22:54:23 MSK

Портал — это стандартизированный (важно) IPC-интерфейс

в Линукс D-BUS, а что ещё-то, собственно

А привзяка к копротехнологии «D-Bus» — это плохо. Если бы оно работало через обычные unix-сокеты или какую-то адекватную шину (предподчтительно, но не обязательно, реализованную на уровне ядра), то было бы зашибись.

annulen ★★★★★
( 28.02.23 23:03:30 MSK )
Ответ на: комментарий от annulen 28.02.23 23:03:30 MSK

Де-факто стандартный высокоуроневый IPC в Линукс. Другого нет.

Если бы оно работало через обычные unix-сокеты

Так D-Bus через них и работает, собственно. Тамже фишка, собственно в сериализации и доставке.

Да сойдёт. С обвязками кодить нормально. А вот демон — это да. Я всё жду, когда его на хороший-годный dbus-broker повсеместно заменят.

SkyMaverick ★★★★★
( 28.02.23 23:29:00 MSK )
Ответ на: комментарий от SkyMaverick 28.02.23 23:29:00 MSK

Как минимум, zeromq есть. Но я все-таки надеюсь, что Гугол подкатит замену для Android Binder и kdbus, которая устроит всех и будет использовать адекватный протокол, и тогда d-bus наконец-то отправится на свалку истории.

annulen ★★★★★
( 28.02.23 23:38:02 MSK )
Ответ на: комментарий от devorg 28.02.23 21:57:57 MSK

Так это ты же пишешь о каких-то мегабайтах. У тебя эти тараканы в голове и есть.

Чего? Это что за глупости? Это же тебя беспокоит 1,5 мегабайта на жестком диске ненужного лично тебе, но нужного много кому еще пакета. Кстати, там еще сотни и сотни пакетов, которые возможно тебе не нужны, тоже можешь попереживать о них.

Кстате не подскажешь какая зависимость размера на диске и размера в оперативной памяти, если уж ты такой умный.

Не подскажу. Но можешь поделиться своими наблюдениями.

Polugnom ★★★★★
( 28.02.23 23:47:56 MSK )
Ответ на: комментарий от Polugnom 28.02.23 23:47:56 MSK

Чего? Это что за глупости? Это же тебя беспокоит 1,5 мегабайта на жестком диске ненужного лично тебе, но нужного много кому еще пакета.

Это тебя беспокоят какие-то 1.5 мегабайта на диске. Это же ты уже третий раз об этом пишешь, я об этом _ни_разу_ не писал.

Кстати, там еще сотни и сотни пакетов, которые возможно тебе не нужны, тоже можешь попереживать о них.

Вот вот, смотри не переживай там сильно.

devorg ★★
( 01.03.23 06:23:15 MSK ) автор топика
Ответ на: комментарий от SkyMaverick 28.02.23 22:54:23 MSK

По большому счёту, портал — это стандартизированный (важно) IPC-интерфейс (в Линукс D-BUS, а что ещё-то, собственно) и какая-то хрень за ним, что-то там сама себе делающая и общающаяся с вызывающим через этот интерфейс.

Согласен. Я имел в виду, что система порталов разрабатывалась в первую очередь для контейнеризации, а потом ее постфактум начали использовать для вяленого и прикручивать портальное API к приложениям. Так-то раньше все прекрасно жили без порталов. Файловые диалоги открывались через какие-нибудь KFileDialog/GtkFileChooser . Скринкасты делались через расширения иксов. И только после того, как флатпак и вяленый набрали относительную популярность, разработчикам приложений пришлось задуматься: а) как собрать флатпак версию приложения и выложить ее на флатхаб б) как запустить приложение нативно под вяленым, а не через XWayland. Вот они и начали переводить свои приложения на портальное API. Думаю, если бы флатпак и вяленый не взлетели, то большинство разработчиков даже не стали бы заморачиваться с портальным API. Сами по себе (т.е. вне экосистемы флатпака и вяленого) порталы в общем-то особого смысла не имеют. Все нормально работало и без них.

В чём смысл: у нас есть единая удобная точка контроля доступа к ресурсу — интерфейс.

И это хорошо. Возможно десктопный онтопик со временем придет к полной изоляции приложений по умолчанию и системе рантайм пермишенов, как в андроиде. Ну например запускаешь ты приложение, а оно выдает стандартное окошко типа «хочу доступ к сети, папке закачек и адресной книге еще». И ты разрешаешь, если все выглядит нормально.

archie
( 01.03.23 18:57:04 MSK )
Ответ на: комментарий от archie 28.02.23 22:12:59 MSK

Кстати, оффтопну, вот сегодня пишут про Pipewire. Как я понял в WebRTC влили код, который напрямую взаимодействует с pw. Соответственно, можно будет получить все плюшки pw.

It means PipeWire will be in charge of camera handling in Firefox (and soon Chrome) which will enable things like easier camera sharing between applications and also allow for a smooth transition from v4l to libcamera. It also makes the transition to Flatpaked browsers easier.

XDG Desktop Portal

Portals are the framework for securely accessing resources from outside an application sandbox. They provide a range of common features to applications, including: Determining network status, opening a file with a file chooser, opening URIs, taking screenshots and screencasts [. ]

Portals were designed for use with applications sandboxed through Flatpak, but any application can use portals to provide uniform access to features independent of desktops and toolkits. This is commonly used, for example, to allow screen sharing on Wayland via PipeWire, or to use file open and save dialogs on Firefox that use the same toolkit as your current desktop environment.

Installation

Install xdg-desktop-portal and one or more backends. The package includes a systemd/User service that will be automatically started via D-Bus.

Backends

When an application makes a request through a portal, it is handled by xdg-desktop-portal , which then forwards it to a backend implementation. This allows a clean way to provide suitable user interfaces that fit into different desktop environments, and access environment-specific APIs for requests like showing notifications or recording the screen. Multiple backends can be installed: for example, a Sway user may use xdg-desktop-portal-wlr for screen sharing support and xdg-desktop-portal-gtk as a fallback for all other interfaces that xdg-desktop-portal-wlr does not implement.

Portal backend definitions are located in /usr/share/xdg-desktop-portal/portals/*.portal . Each portal backend file contains a list of interfaces that it can handle, and the desktop environments that it can be used in. When a request is made, xdg-desktop-portal will use the /usr/share/xdg-desktop-portal/DE-portals.conf file to determine which backend it will use for the request, where DE is based on the XDG_CURRENT_DESKTOP environment variable.

Users may also create their own portal configuration file at $XDG_CONFIG_HOME/xdg-desktop-portal/portals.conf to determine which backends they want to use, either generally or for each individual interface. See portals.conf(5) for more information.

Tip: To use the gtk portal as a fallback, it may be necessary to create the configuration file DE-portals.conf or portals.conf . See this forum discussion.

List of backends and interfaces

The following table lists all backends available and their support for certain common interfaces.

Troubleshooting

xdg-desktop-portal-wlr does not start automatically on sway

For xdg-desktop-portal-wlr to work, the XDG_CURRENT_DESKTOP and WAYLAND_DISPLAY environment variables have to be set in the systemd user session. XDG_CURRENT_DESKTOP has to be set to the name of your compositor, e.g. XDG_CURRENT_DESKTOP=sway . WAYLAND_DISPLAY is set automatically by the compositor.

Check whether these variables are set with systemctl —user show-environment . If they are not set, import these environment variables into the systemd user session and dbus by running the following commands after launching the compositor (e.g., include them in the compositor’s configuration file).

$ systemctl --user import-environment WAYLAND_DISPLAY XDG_CURRENT_DESKTOP $ dbus-update-activation-environment --systemd WAYLAND_DISPLAY XDG_CURRENT_DESKTOP=compositor_name 

Tip: Sway provides a drop-in file which does this automatically, see Sway#Configuration.

See [1] and [2] for more details.

Using multiple monitors with xdg-desktop-portal-wlr

xdg-desktop-portal-wlr requires an external chooser to select the shared monitor. By default, it looks for slurp , wofi and bemenu in this order. When using slurp, after a request for screen sharing you will be presented with a crosshair cursor and you will need to click the screen you want to share. When using wofi or bemenu, you will be presented with a menu of available displays to share. If no choosers are available, xdg-desktop-portal-wlr will fallback to the first monitor found. For more information, see xdg-desktop-portal-wlr(5) § SCREENCAST OPTIONS .

See also

  • Portal Documentation: Lists all APIs applications and backends can implement.

Retrieved from «https://wiki.archlinux.org/index.php?title=XDG_Desktop_Portal&oldid=790544»

Февральские новости Ubuntu.

Ещё немного, ещё чуть-чуть. Не успеют расцвести подснежники, как Ubuntu 18.04 Бобёр выйдет в свет. Но темп разработки не сбавляется, раз стек Gnome уже точно доступен в своём релизе 3.27, а есть попытки уже задействовать 3.28. Из непонятного и таинственного — разрабы пока деактивируют индексатор Tracker и объяснений — нет!

GNOME

  • Проект Ubuntu One начинался как облачное хранилище от Canonical, но теперь это имя зарезервировали и переопределили для единой точки входа (Single Sign On) во множество сервисов компании. Ведутся работы над плагином GNOME Online Accounts для Ubuntu One, что позволит управлять вашими учётными данными, например Canonical LivePatch.
  • Исправлена ​​ошибка, из-за которой в настройках системы (System Settings) отсутствовали некоторые значки в режиме «Высокая контрастность».
  • Исправен баг с неверной центровкой заголовка. Патч принят апстримом.

    Так же апстрим рассматривает проделанную работу над громкостью звука свыше 100%.
  • Начата относительно недавно работа над аппаратным ускорением видео и уже найдены регрессии. Связка GLX + VA-API + clutter-gst в Mesa 17.3 повреждает изображение кадров. Найден commit ошибочных изменений и проблема устранена в апстриме.
  • Есть проблемы с производительностью GNOME Shell при наличии 2 мониторов. Ситуацию когда gnome-shell тратит 70% своего реального времени в блокировке meta_monitor_manager_kms_wait_for_flip, обещают скоро исправить.
  • Порталы (Portals) — это фундаментальная концепция технологии flatpak. Порталы — это путь, через который изолированное приложение может получить безопасный и контролируемый доступ к какой-либо информации. Большинство порталов реализованы модулем xdg-desktop-portal, который обладает бэкендами Gtk+ (xdg-desktop-portal-gtk) и KDE (xdg-desktop-portal-kde). Александр Ларссон (Alexander Larsson) и Джеймс Хенстридж (James Henstridge) реализовали для snap поддержку порталов. Программы в snap пакетах должны улучшить свой внешний вид, за счёт облегчённого доступа к графическим ресурсам десктопа.
  • Индексатор Tracker и связанные с ним инструменты не будут установлены по умолчанию в Ubuntu 18.04 и снова включённый по умолчанию он появится лишь в 18.10. Причина пока не ясна.
  • GNOME Software получил поддержку понятия каналов в мире snap.

Общее

  • В дневных образах будущего релиза Ubuntu 18.04 Bionic Beaver программа GNOME Calculator сразу идёт через snap, а не deb. Разработчики проводят своеобразный тест, который поможет сгладить ошибки перед будущим бо́льшим внедрением программ в snap.
  • Network Manager 1.10 доступен Bionic в секции proposed.
  • Обновлены патчи, включающие аппаратное ускорение видео в Chromium. Улучшена поддержка экранной клавиатуры (onscreen keyboard) в Chromium в среде GNOME Shell.
  • BAMF получил улучшения, чтобы в Unity 7 программы в snap выглядели лучше.
  • BlueZ 5.48 появился в Bionic.

Обновляшки

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *

Luxury Car Rental in Miami | Reserve a Premium Vehicle with RealCar