LINUX.ORG.RU
ФорумTalks

Грустная история про WebDAV и KDE

 , , ,


0

2

Привет, LOR!

Я расскажу тебе грустную историю о том, как я пытался расшарить базу KeePassXC через WebDAV. Мой друг недавно упомянул о переходе с Bitwarden на KeePassXC, я тоже решил попробовать. Выкинуть SaaS – всегда хорошая идея.

Arch Linux, Plasma 6.5, последний стабильный релиз.

Сначала я думал про Syncthing (он у меня уже есть) и на десктопе/ноутбуке он работает отлично. Но у меня также есть iPhone и там с Syncthing все плохо. Поэтому я решил взял другой SaaS, который у меня есть: WebDAV от Fastmail.

На iPhone всё работает хорошо. Всё, что нужно сделать – указать KeePassium на файл в WebDAV. Он будет игнорировать mtime и скачивать базу каждый раз, но это не то чтобы проблема, там пара килобайт.

Теперь к ноутбуку с KDE.

KeePassXC работает только с локальными файлами, так что идея была такой:

  • Создать точку монтирования WebDAV (например, ~/Cloud)
  • Попросить KDE её автомонтировать
  • Указать KeePassXC на ~/Cloud/Foo/Bar/Keychain.kdbx

Всё хорошо? Не совсем. В KDE нет способа создать точку монтирования WebDAV в конкретное место. Но можно создать «Remote > Network > Cloud» в Dolphin.

Всё хорошо? Не совсем. Это виртуальная абстракция KIO, поэтому приложения, которые не умеют в KIO (т.е. все приложения кроме KDE), не могут получить к нему доступ. Однако есть решение: kio-fuse. Он экспортирует директории для сторонних приложений, не использующих KIO.

Всё хорошо? Не совсем. kio-fuse монтирует FUSE в /run/user/<uid>/kio-fuse-<random>. Что, конечно же, ломает KeePassXC, так как меняется на каждом ребуте. Для этого есть обходной путь, требующий переопределить директиву ExecStart в юните systemd. Да, в bugzilla есть несколько тикетов на эту тему.

Всё хорошо? Не совсем. Нет (по крайней мере, известного мне) способа заставить KDE показать что-либо в /run/user/1000/kio-fuse, если к нему не обращалось в Dolphin приложение, которое не умеет KIO. Не поможет даже открыть в Dolphin «Remote > Network > Cloud». Вероятно есть какая-то магия dbus для этого.

Всё хорошо? Не совсем. После всех этих страданий я обнаружил, что KIO не может переименовывать файлы WebDAV. mv говорит «I/O error», Dolphin тоже что-то говорит.

Я попробовал GVFS:

$ gio mount davs://myfiles.fastmail.com
$ ln -s /run/user/1000/gvfs/dav:host=myfiles.fastmail.com,ssl=true ~/Cloud

Всё работает. Можно положить это в ~/.config/systemd/user/home-user-Cloud.automount, и оно будет работать с KeePassXC. Всё ещё не так просто, как в Windows, но хотя бы работает.

Такие дела. «Год Линукса на Декстопе», дамы и господа.

Перемещено dataman из desktop



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

Я никогда не пользовался странными форматами «образ диска», но насколько я знаю для них есть разметка.

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

sin_a ★★★★★
()
Ответ на: комментарий от CrX

Ну как бы доля Линукса, регистрируемая от 4% до 12%

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

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

James_Holden ★★★★★
()
Ответ на: комментарий от sin_a

Это просто очень смешно. О чем тут говорить. То есть, ничего нет, ничего нельзя сделать с текущим софтом. Надо пилить с нуля все. О чем я и говорил.

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

но насколько я знаю для них есть разметка

В стандарте xspf нету как бэ.

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

Плееры есть, нет управления коллекциями. И колекции музыки в плерах это ни о чём. Музыка была в фильме а фильм по книге.

Узкое место форматов «образ диска» это частный случай и решаемо. А вот такое управление коллекцией – это бездна.

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

Я согласен что технически все это решаемо, можно гипотетически создать некий единый стандарт, по которому любой сможет залить треки в очередь плеера (собственно, с mpd это можно делать по tcp например и движок будет это играть, но с mpd проблема с развитыми фронтендами сейчас). Если смотреть реально а не теоретически, то никто до ума этот подход доводить уже не будет, я считаю. Не верю.

James_Holden ★★★★★
()

kio настолько убог вне KDE, что я даже пробовал вместо dolphin запускать PCManFM-Qt (который gvfs). В итоге плюнул и всё монтирую руками в /etc/fstab.

Shadow ★★★★★
()
Ответ на: комментарий от James_Holden

Взаимодействие с плеером это самое простое. Клиент (не браузер) формирует файл и вызывает плеер. А вот проектировать такую БД, может оказаться сложнее.

sin_a ★★★★★
()
Ответ на: комментарий от tinykey

В syncthing и в, например, kdeconnect (который ты почему-то даже не рассмотрел) совсем не сложно создать облачную директорию.

А вот webdav, к сожалению, умирающий вслед за ftp протокол, точнее убиваемый. Я удивлён, что у тебя вообще что-то вышло через KDE с ним. Если бы не поддержка в самом менеджере паролей, то лососнцул бы ты вебдавца на своём айфоне.

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

Syncthing нет для iOS. Есть мебиус, но там проприетарное хз что. Есть sushitrain, но там региональные ограничения. Остается WebDAV.

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

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

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

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

Согласен, но я ни разу этого не делал и не могу поддержать этот разговор :)

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

У меня в детстве была коллекция значков и китайский клон Sony Walkman. И я вообще без понятия как и зачем аудиоплеер должен управлять коллекциями. Судя по всему нас таких в линуксе большинство. Поэтому и.

ugoday ★★★★★
()
Ответ на: комментарий от James_Holden

Проблема - kio-fuse монтирует в динамическую папку. Почему так сделано?

ИМХО, ОП можно сократить до фичреквеста рядом с динамическим каталогом создавать симлинк по маске хост-шара (KIO крашнется, перемонтирует в новый каталог, обновит симлинк). И это вполне разумный реквест в сложившихся условиях.

А остальное (включая рассуждения про «серверную\несерверную» ОСь) - пустое.

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

разница в том, что тут демон пускается в юзерсессии и зависит от кучи его компонентов. Всё будто специально расчитано на то, чтобы в любой неудобный момент взять и схлопнуться. И ЧСХ, схлопывается

mittorn ★★★★★
()
Ответ на: комментарий от James_Holden

В плейлисте это возможно, если не ошибаюсь. Тут я не специалист, но если нельзя в обычном плейлисте, то точно можно в .cue, так что проблемы нет.

Только вот причём тут менеджер коллекции и проигрывание треков не от начала или не до конца? Такой функциональности я не помню в том же foobar2000 и его менеджере коллекции.

CrX ★★★★★
()
Ответ на: комментарий от James_Holden

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

Нет, это цифры именно отдельно по десктопам. Остальное обычно считается отдельно. Бывает, конечно, и сводная статистика, но там у Линукса доля ниже, а не выше (хотя и всё ещё больше, чем 1%), а лидирует в ней андроид.

CrX ★★★★★
()
Ответ на: комментарий от James_Holden

Конечно, в целом я имел в виду в беседе с @CrX, что сам «каталогизатор» будет сложнее плеера (чистой функции плеера).

Если делать прям хорошо (не уровня foobar2000, а так, чтобы это был каталогизатор всего, не только музыки, но и кино, книжек, и т.д. и т.п.), то сложность будет примерно одного порядка с полноценным плеером. Если только для музыки и «как в foobar», то проще, чем большой продвинутый плеер (вроде deadbeef) — с поддержкой множества форматов, включая те, что не PCM закодированный, а всякая трекерная музыка и чиптюн с консолей, плагинной архитектурой, поддержкой gapless playback, cuesheet, различными настройками вывода звука (причём и через ALSA и через pipewire и т.д.) на конкретное устройство, эквалайзерами и прочими «эфектами», оверрайдом сложности сэмплинга, и т.д. и т.п. Но конечно же сложнее, чем «плеер» уровня helloworld, который просто умеет включать файлы, поддерживаемые ffmpeg.

CrX ★★★★★
()
Ответ на: комментарий от sin_a

Ну фубар из тегов берёт. Но если делать по уму, то надо делать БД небольшую отдельно, которая изначально заполняется из тегов, но которую можно из самого этого менеджера коллекции править по-своему, не меняя файлов (а для некоторых типов файлов в принципе с тегами не густо, если мы выходим за пределы аудио).

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

Со стилями всё гораздо хуже, да, отдельную, наверно не БД а таблицу или набор таблиц. Плюс какое-никакое автоматическое распознавание: быстрое-медленное, громкое-тихое, вокал-инструменты, и т.д. И, собственно, что такое стиль и какими они бывают, по сути описать пространство стилей, в котором произведение будет иметь некую координату.

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

Но дальше тебе понадобится информация о людях. Авторы, исполнители, издатели …

Лучше не заглядывай в бездну.

sin_a ★★★★★
()
Последнее исправление: sin_a (всего исправлений: 2)
Ответ на: комментарий от CrX

В фубаре как раз набор sqlite баз, которые можно править не меняя файлов. Можно сохранять правки в специальных файлах tag. Можно править сами теги. Можно хранить информацию для форматов, не поддерживающих теги. Можно править теги автоматически на основании онлайн сервисов. Можно генерировать плейлист SQL запросом по базе прямо в интерфейсе плеера. Там можно что угодно, поэтому сравнение фубара с линуксовыми плеерами это очень смешно. Это конечно круто, сидеть на клоне 10% фубара годами и гордиться, но реальность несколько иная.

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

набор sqlite баз, которые можно править не меняя файлов. Можно сохранять правки в специальных файлах tag. Можно править сами теги. Можно хранить информацию для форматов, не поддерживающих теги. Можно править теги автоматически на основании онлайн сервисов.

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

Там можно что угодно, поэтому сравнение фубара с линуксовыми плеерами это очень смешно.

Плеер должен быть плеером.

Это конечно круто, сидеть на клоне 10% фубара годами и гордиться, но реальность несколько иная.

Именно с плеерной функциональностью проблем нет. В том, что в для линукса нет (видимо) подходящего домохозяйкам менеджера коллекций, повода для гордости нет — я же не спорю. Я лишь говорю, что это следует делать отдельным приложением, а не пытаться запихнуть в плеер. И что из воздуха оно не возьмётся — кто-то, кому оно надо, должен взяться и хотя бы начать пилить. Мне не надо, поэтому я не берусь, иначе давно бы уже написал. Не факт, что написал подходящее всем, потому что писал бы под свои задачи, но это было бы начало, от которого можно форкнуться и допилить под свои хотелки. Кстати, в каком-то виде оно есть в mpd, а также есть beets. Если кто-то таки решит пилить подобное, можно начинать не с нуля, а взять их за основу.

CrX ★★★★★
()
Ответ на: комментарий от tinykey

Я не хочу сам хостить почту и календарь. Есть пределы разумного.

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

Но хостить свой календарь - это просто элементарно.

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

Это примерно одного порядка сложности вещи, на самом деле. Один раз настроить DKIM это не то чтобы проблема.

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

Нет. Для почты надо поднять два сервера (SMTP и IMAP), первый из которых достаточно сложно и долго настраивается. Допустим, что DKIM надо настроить лишь один раз, но это всё равно не совсем тривиальная задача. Пока я настроил SPF и DKIM, чтобы GMail перестал отправлять мои письма в спам, пришлось сделать 2-3 итерации.

Сервер же календаря просто устанавливается, настраивать там ничего не надо, и не существует проблема взаимодействия с другими серверами в сети, которые по желанию левой пятки могут прекратить принимать от тебя письма (смотрю на тот же GMail, и это не только мой опыт). Один раз установил - и сколько угодно пользуешься. В разы проще.

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

Я в лавке через него бекапы передаю. А чо делать.

legolegs ★★★★★
()
Ответ на: комментарий от Shadow

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

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

в виде передачи логинов с паролями плэйном

Правильно, поэтому:
1. По возможности использовать внутри VPN (частной сети, а не вот это всё безумие)
2. Если нужно передавать в открытую, то использовать chrooted папочки для аплоада и юзеров заводить отдельных для ftp сервера в его отдельной базе юзеров.

При выполнении этих несложных правил ftp - очень удобный, легковесный и универсальный протокол.

Shadow ★★★★★
()
Ответ на: комментарий от Chiffchaff

Нет. Для почты надо поднять два сервера (SMTP и IMAP), первый из которых достаточно сложно и долго настраивается. Допустим, что DKIM надо настроить лишь один раз, но это всё равно не совсем тривиальная задача. Пока я настроил SPF и DKIM, чтобы GMail перестал отправлять мои письма в спам, пришлось сделать 2-3 итерации.

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

Сервер же календаря просто устанавливается, настраивать там ничего не надо, и не существует проблема взаимодействия с другими серверами в сети, которые по желанию левой пятки могут прекратить принимать от тебя письма (смотрю на тот же GMail, и это не только мой опыт). Один раз установил - и сколько угодно пользуешься. В разы проще.

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

tinykey
() автор топика
Ответ на: комментарий от Shadow
  1. По возможности использовать внутри VPN (частной сети, а не вот это всё безумие)

У меня уже два VPN, а телефоны не умеют больше одного. Третий совсем не хочется.

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

И ты до сих пор ни сам не пофиксил, ни целевой платёж на фикс конкретно этих багов не внёс, но претензии имеешь?

mogwai ★★★★★
()
Ответ на: комментарий от tinykey

Ну, у меня домашняя сеть, один VPN. До рабочего VPN настроена маршрутизация из домашней сети.

Shadow ★★★★★
()
Ответ на: комментарий от tinykey

особой разницы между WebDAV и FTP нет.

ты ещё, наверно, из тех, кто любит потоковые данные по протоколу SOAP слать (если не в курсе: SOAP - это XML внутри zip файла, передаваемый по HTTP. Вещь часто нужная, но нередко применяемая максимально упоротым способом, вплоть до потока)

Shadow ★★★★★
()
Ответ на: комментарий от mogwai

И ты до сих пор ни сам не пофиксил, ни целевой платёж на фикс конкретно этих багов не внёс, но претензии имеешь?

Я имею грустную историю о фрагментации и бессмысленных усилиях. Но ты можешь агриться на что тебе больше нравится.

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

Но у меня также есть iPhone и там с Syncthing все плохо.

Но виноват конечно же линукс десктоп в принципе и kde в частности.

vtVitus ★★★★★
()
Закрыто добавление комментариев для недавно зарегистрированных пользователей (со score < 50)