LINUX.ORG.RU

Не стартует xdg-desktop-portal-hyprland

 


1

1

Пытаюсь настроить скриншоты и скриншаринг для hyprland. В их вики есть https://wiki.hyprland.org/Useful-Utilities/Hyprland-desktop-portal/ статья Поставил сразу xdg-desktop-portal-hyprland, как они и рекомендовали. Запустил скрипт

#!/bin/bash
sleep 1
killall xdg-desktop-portal-hyprland
killall xdg-desktop-portal-wlr
killall xdg-desktop-portal
/usr/lib/xdg-desktop-portal-hyprland &
sleep 2
/usr/lib/xdg-desktop-portal &

Но systemctl --user status xdg-desktop-portal-hyprland вывел:

○ xdg-desktop-portal-hyprland.service - Portal service (Hyprland implementation)
     Loaded: loaded (/usr/lib/systemd/user/xdg-desktop-portal-hyprland.service; static)
     Active: inactive (dead)

на journalctl --user -xeu xdg-desktop-portal-hyprland.service вывел:

-- No entries --

для /usr/lib/xdg-desktop-portal -vr & /usr/lib/xdg-desktop-portal-hyprland -l DEBUG 2>&1 | teexdpw.log вывел: https://pastebin.com/Ypy2UZh4

для systemctl --user status pipewire вывело:

● pipewire.service - PipeWire Multimedia Service
     Loaded: loaded (/usr/lib/systemd/user/pipewire.service; disabled; preset: enabled)
     Active: active (running) since Fri 2023-04-07 09:40:57 MSK; 44min ago
TriggeredBy: ● pipewire.socket
   Main PID: 785 (pipewire)
      Tasks: 2 (limit: 38288)
     Memory: 19.4M
        CPU: 1min 27.975s
     CGroup: /user.slice/user-1000.slice/user@1000.service/session.slice/pipewire.service
             └─785 /usr/bin/pipewire

апр 07 09:40:57 Mars pipewire[785]: mod.rt: Can't find org.freedesktop.portal.Desktop. Is xd>
апр 07 09:40:57 Mars pipewire[785]: mod.rt: found session bus but no portal

для systemctl --user status pipewire.socket вывело:

pipewire.socket - PipeWire Multimedia System Socket
     Loaded: loaded (/usr/lib/systemd/user/pipewire.socket; enabled; preset: enabled)
     Active: active (running) since Fri 2023-04-07 09:40:52 MSK; 47min ago
   Triggers: ● pipewire.service
     Listen: /run/user/1000/pipewire-0 (Stream)
     CGroup: /user.slice/user-1000.slice/user@1000.service/app.slice/pipewire.socket

Не могу понять в чем проблема, куда стоит копать дальше?



Последнее исправление: Mars36 (всего исправлений: 1)

скорее проблема самой pipeware. У меня на дефолтной федоре и hyperland стартанул сразу без ошибок. Может химичил с конфигами pipeware? Я часто вижу в дотфайлах кастомные конфиги

Другое дело я никогда не расшаривал экран. Каким образом это можно сделать?

зы ошибка «mod.rt: found session bus but no portal» гуглится в такой теме конфиликта с пульсой

https://discussion.fedoraproject.org/t/help-with-potential-conflict-pipewire-pulseaudio/78002

monkdt
()
Последнее исправление: monkdt (всего исправлений: 1)
Ответ на: комментарий от monkdt

как я например. опытным путем выяснилось, что из-за этого пакета у меня очень долго стартовал waybar. скриншеринг в теории нужно чинить как-то, но я даже ума приложить не могу как его чинить и откуда у поломки растут ноги, потому что поломался он буквально сразу же после установки wayland и всяких там вейланд пакетов необходимых ему для работы

Долго запускается waybar (комментарий)

NorthernBlow
()
Последнее исправление: NorthernBlow (всего исправлений: 1)
Ответ на: комментарий от NorthernBlow

да это самое лучшее после sway, что есть в мире вм. Если на шикарном sway не хватало рюшек, то тут и анимации, и блур, и тени.

Что интересно после того как у меня появилась анимация воркспейсов я перестал использовать группировки в табы. Раньше я выбирал i3, а потом sway из-за суперудобных табов, то теперь развлекаешься воркспейсами. Еще раз доказывает как меняет твой стиль работы само десктопное окружение

monkdt
()
Последнее исправление: monkdt (всего исправлений: 3)
Ответ на: комментарий от NorthernBlow

До этого использовал просто i3 с иксами. Конешно на мои фламастеры мне очень зашло. Правда подводных комней действительно больше, по сути все сложности из за вейланда возникли. Для моего кейса просто поставить пакет с драйверами nvidia не помогло. Нужно было выкачивать заголовочники ядра, nvidia-dkms прописывать отдельные модули, возможно на встройке или радионе таких проблем не будет. Ну и остальные более мелкие не приятности были с зависимостями.

В остальном по сравнению с i3 всяких рюшечек очень не хватало, теперь полностью удовлетворен) Как написали выше похоже ничего лучше в плане всяких графических приколов и прочих красивостей еще не придумали. Вот только портал не запускается без него скриншейринг в дисе, телеге и т.д. не работает, флеймшот не запускался, собрал его из исходников с дополнительным флагом симейка для грима и нормально пошел. Только из за отсутсвия портала во время скрина черный экран и если любой скрин делать будет черный экран, т.к. нет инструментов для захвата экрана, а пакет из шапки как раз и должен это делать.

Mars36
() автор топика
Ответ на: комментарий от monkdt

Для меня это важный параметр, т.к. для работы нужно шарить экран и тыкать в код во всяких телеграмах и скайпах. В их вики написано про портал и по идее он должен сразу стартавать, но я пока не могу понять что ему не нравится.

Mars36
() автор топика
Ответ на: комментарий от monkdt

Думаю стоит попробовать, но возмножно решение простое и все обойдется. В любом случае мне интересно в чем проблема)

Mars36
() автор топика
Последнее исправление: Mars36 (всего исправлений: 1)
Ответ на: комментарий от monkdt

У waybar как у других баров по моему опыту тормоза начинаются со скриптами, которые регулярно шлют запросы кудато с большой частотой. Не разбирался как тот же waybar работает, но мб если запросы совать в карутины или потоки будет лучше, у меня пока не один бар не тормозил до такой степени.

Mars36
() автор топика
Последнее исправление: Mars36 (всего исправлений: 1)

В общем пакет запустился, но проблема со криншотами осталась. Выводит:

● xdg-desktop-portal-hyprland.service - Portal service (Hyprland implementation)
     Loaded: loaded (/usr/lib/systemd/user/xdg-desktop-portal-hyprland.service; static)
     Active: active (running) since Fri 2023-04-07 21:18:29 MSK; 25min ago
   Main PID: 972 (xdg-desktop-por)
      Tasks: 2 (limit: 38288)
     Memory: 1.2M
        CPU: 20ms
     CGroup: /user.slice/user-1000.slice/user@1000.service/session.slice/xdg-desktop-portal->
             └─972 /usr/lib/xdg-desktop-portal-hyprland
Mars36
() автор топика
Последнее исправление: Mars36 (всего исправлений: 1)
Ответ на: комментарий от Mars36

Да я писал ведь, что с кастомными скриптами и конфигом это вообще никак не связано. Ну ладно, ты зато убедился. Он не работает просто потому что не работает. Если удастся выяснить причину отпишитесь пожалуйста где-нибудь

NorthernBlow
()
Ответ на: комментарий от NorthernBlow

Стартует быстро, полный запуск секунд 15 вместе с биосом(т.е. время от нажатия на кнопку питания). i3 у меня загружался примерно секунд 18-19

Mars36
() автор топика
Ответ на: комментарий от hateWin

Разработчики рекомендовали xdg-desktop-portal-hyprland. Скриншейринг работает, затестил. А вот запись видео и скрины нет - тупо черный экран при попытке захвата.

Mars36
() автор топика
Последнее исправление: Mars36 (всего исправлений: 1)
Ответ на: комментарий от NorthernBlow

Я давольно сильно его загрузил и по крайней мере у меня без проблем работает, как писал выше 5 скритов, один с частатой в 1 минуту делает запрос, остальное 1 секунда или 0.5 сек.

Mars36
() автор топика
Ответ на: комментарий от NorthernBlow

Решил в итоге окончательно проблему, тестил с flameshot и OBS. Все норм. Как оказалось для случаев с картами nvidia нужно доставить пакеты: hyprland-nvidia-git и wlrobs-hg для OBS. И подправить исходники в зависимости Hyprland'a - wlroots. Контретно в файле wlroots/types/output/render.c В функции wlr_output_preferred_read_format захардкодить формат. В итоге должно быть вот так:

uint32_t wlr_output_preferred_read_format(struct wlr_output *output) {
    return DRM_FORMAT_XRGB8888;
}

Mars36
() автор топика