LINUX.ORG.RU

Потыкайте мой AppImage, пожалуйста

 ,


0

1

Привет, ЛОР.

Вооружившись appimagetool и башем, я склепал AppImage для DoubleContact с условным номером версии 0.2.5beta2. Собирал под Ubuntu 18.04, по идее на практически любом x86_64-дистрибутиве моложе 7 лет должно работать. Кому интересен мой проект – просьба потыкать и отписаться, что за дистрибутив и каков результат. В отличие от предыдущей статической сборки, рут не требуется.

Не получилось добавить в программу Appstream. Проблема очень похожа на описанную в крике души по ссылке: сначала она предупреждает, что Id должен быть в формате обратного доменного имени, когда я делаю его таким, склоняет переименовать сам файл, когда я это делаю, не видит файл метаданных вообще. Если кто-то знает, что с этим делать – добро пожаловать в комментарии. Но на работоспособность самой программы это не влияет, только на предупреждение при вызове appimagetool.

Скачать с гитхаба

Основная тема по DoubleContact

★★★★★

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

Запускается на арче. У меня кеды, учитывая, что приложение на qt, может это и не имеет особого значения…

Я не понял зачем там Полное имя, если оно не отображается. Чтобы ввести Имя, нужно Добавит нажать, а до этого доступна только фамилия… Картинку урлом вставляешь и она нигде не видна. Не очень понятно что такое приставки и суффиксы. Сейчас, наверное, актуальнее гендерные местоимения типа Оно/Вертолет

8 в +7 предлагает номер конвертировать в +375 по умолчанию…

без функции звонилки с мобилы через комп не взлетит

rtxtxtrx ★★★
()
Последнее исправление: rtxtxtrx (всего исправлений: 2)

Это пичатает в терминале при запуске, но ес-но работает:

~/Downloads
❯ ./DoubleContact-0.2.5beta2-x86_64.AppImage
qt.qpa.plugin: Could not find the Qt platform plugin "wayland" in ""
Case insensitive sorting unsupported in the posix collation implementation
Numeric mode unsupported in the posix collation implementation
rtxtxtrx ★★★
()
Последнее исправление: rtxtxtrx (всего исправлений: 1)

Запустился, работает. В настройках почему-то «Беларусь» по-умолчанию выбралась :)

При старте в терминале:

$ ./Downloads/DoubleContact-0.2.5beta2-x86_64.AppImage
Warning: Ignoring XDG_SESSION_TYPE=wayland on Gnome. Use QT_QPA_PLATFORM=wayland to run on Wayland anyway.

и нормально работает.

Если попробовать запустить с предлагаемым ключом, то:

$ QT_QPA_PLATFORM=wayland ./Downloads/DoubleContact-0.2.5beta2-x86_64.AppImage 
Warning: Ignoring XDG_SESSION_TYPE=wayland on Gnome. Use QT_QPA_PLATFORM=wayland to run on Wayland anyway.
qt.qpa.plugin: Could not find the Qt platform plugin "wayland" in ""
This application failed to start because no Qt platform plugin could be initialized. Reinstalling the application may fix this problem.

Available platform plugins are: xcb.

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

Работает.

Язык предложило выбрать. Сохранил «report.html» на рабочий стол, появился (просто так я хз чёита).

dron@gnu:~$ uname -a
Linux gnu 6.12.22-amd64 #1 SMP PREEMPT_DYNAMIC Debian 6.12.22-1 (2025-04-10) x86_64 GNU/Linux
dron@gnu:~$ lsb_release -a
Distributor ID:	Debian
Description:	Debian GNU/Linux trixie/sid
Release:	n/a
Codename:	trixie
dron@gnu:~$ 

Иконка только мутноватая, но она есть

В настройках страна по умолчанию Беларусь, а я в России и язык такой выбрал

dron@gnu:~$ echo $LANG
ru_RU.UTF-8

Некоторые кнопочки не переведены

Еле-еле нашёл конфиг .config/DarkHobbit :D удалил и далее

dron@gnu:~/$ export LANG=POSIX
dron@gnu:~/$ ./DoubleContact-0.2.5beta2-x86_64.AppImage

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


Не пользуюсь, просто потыкал, на всё подряд, ничего не отвалилось.
Всё, успехов там и всё такое.

Ой и да Cinnamon 6.4.9 + Xorg

LINUX-ORG-RU ★★★★★
()
Последнее исправление: LINUX-ORG-RU (всего исправлений: 3)
Ответ на: комментарий от rtxtxtrx

без функции звонилки с мобилы через комп не взлетит

Нууу… Это не замена KDE Connect. Это программа прежде всего для приведения адресных книг в порядок. Поэтому упор на экспорт-импорт разных форматов, разных версий vCard, сравнение двух адресных книг, всякие фишки по очистке вроде той же «8 в +7», обмен имени и фамилии (в VCF, импортированных с телефона, с этим часто бардак) и др. В мануале эти моменты разжёваны.

Без чего действительно не взлетит – это поиск дубликатов ВНУТРИ ОДНОЙ адресной книги. Этого сейчас не хватает, и это запланировано на версию 0.3.0. Ещё в планах прямая работа с телефонами, скорее всего, через ADB и синхронизация по сети со всякими оун/некстклаудами.

Я не понял зачем там Полное имя, если оно не отображается

Отображается, в настройках можно выбирать столбцы.

Картинку урлом вставляешь и она нигде не видна.

Сейчас в окне редактирования отображаются картинки, встроенные в сам vCard. Отображение по урлу начал делать, но отложил до времён, когда буду затаскивать в программу поддержку сети. Но вообще, показывать такие картинки прямо в программе – палка о двух концах, пользователь может считать, что фото есть в адресной книге, а на самом деле его там нет, только ссылка, и закачав полученный VCF на девайс без интернета, он это фото уже не увидит. Я пока так и не решил, как это «доходчиво» представлять.

Не очень понятно что такое приставки и суффиксы.

Если те, которые в имени – это понятия из стандартов на vCard, в разных программах могут именоваться по-разному. В адресной книге моего Самсунга (Android 9), например, обозваны как «Форма обращения» и «Именной суффикс». Примеры (только англоязычные, к сожалению) есть в RFC. Я мимоходом про них в мануале упомянул (раздел «Редактирование контактов»), наверное, стоит подробнее разжевать.

Сейчас, наверное, актуальнее гендерные местоимения типа Оно/Вертолет

Всё уже придумано до нас, пол – это отдельный тег в vCard 4. Большинство андроидфонов ориентируются на vCard 2.1, и такой графы в них нет. Поэтому, наверное, и у меня руки до этого тега не дошли, он отображается на закладке с нередактируемыми.

8 в +7 предлагает номер конвертировать в +375 по умолчанию…

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

Вообще в этой теме я хотел получить отзывы о работоспособности конкретно сборки с AppImage в разных дистрибутивах. Про работу DoubleContact в целом есть отдельная тема. Ссылку в ОП я давал, но наверное, надо было чётче выделить. Поправил.

hobbit ★★★★★
() автор топика
Последнее исправление: hobbit (всего исправлений: 3)
Ответ на: комментарий от LINUX-ORG-RU

Некоторые кнопочки не переведены

Похоже, qt_ru.qm не подхватился, буду смотреть…

Про Беларусь написал выше.

hobbit ★★★★★
() автор топика
Последнее исправление: hobbit (всего исправлений: 1)
$ uname -a
Linux fedora 6.9.12-200.fc40.x86_64 #1 SMP PREEMPT_DYNAMIC Sat Jul 27 15:56:15 UTC 2024 x86_64 GNU/Linux

Запустилось.

$ uname -a
Linux EOL_Bridge 5.15.19 #1 SMP PREEMPT Wed Feb 2 01:50:51 CST 2022 x86_64 Intel(R) Core(TM) i5-3210M CPU @ 2.50GHz GenuineIntel GNU/Linux

Slackware 15 через ssh c X11 forwarding, запустилось без ошибок. В терминале вылезло сообщение в какой-то момент:

Case insensitive sorting unsupported in the posix collation implementation
Numeric mode unsupported in the posix collation implementation

Воспроизвести повторно не смог. :)

Jullyfish
()

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

  • Описания опций, что такое, например, USE_GPL2?
  • Поддержку GnuInstallDirs вместо велосипедных APP_*_PATH
  • Qt стоит бы перебирать со старшей версии. Потому что она останется, а древнее г-но типа 4 если и оказалось на машине то чисто случайно, завтра будет удалено и приложение сломается. При опакечивании также зависимость сделают от 6 версии, а определение 4 и 5 придётся выпиливать чтобы они не подхватились вместо 6.
  • И вообще добавь в readme что можно собирать с 6 версией - если бы я не посмотрел в CMakeLists оно пошло бы в помойку сразу после «Libraries: Qt4/5».
  • Почини CI.
anonymous
()
Ответ на: комментарий от anonymous

Для начала умерь категоричность, если что-то тебе лично не нужно, это не значит, что оно не нужно никому. Это и к AppImage относится, и к старым версиям Qt.

И вообще добавь в readme что можно собирать с 6 версией

Собирать-то можно, но пока она полноценно не поддерживается, там слишком большие ломки были. И даже когда я эту поддержку доведу до ума, поддержка Qt5 останется. В частности, если в репах какого-то дистрибутива есть Qt 5 и Qt6<6.4 – использовать надо Qt5, поскольку Qt версий 6.0-6.3 – недоразумение, в котором старую работу с кодировками уже сломали, а новую наладить ещё не соглашались. Принятие наступило в 6.4. Дебиан, к счастью, с пятёрки сразу на 6.8.2 прыгнул, Федора вляпалась в 37 версии, опять-таки к счастью, ненадолго. По убунтам, новее чем 18.10, на дистровотче информации почему-то вообще нет, прочерки стоят.

Qt стоит бы перебирать со старшей версии.

Это про содержимое CMakeLists.txt? Возможно. Поддержка cmake вообще реанимирована благодаря усилиям @u-235, и прислушиваться в этом вопросе я буду в первую очередь к нему.

Описания опций, что такое, например, USE_GPL2?

Оно, в принципе, откомментировано в core.pri, но да, у меня есть файлик с инструкцией по сборке, стоит всё это туда поместить.

Почини CI.

Его сломал не я, но таки да, надо будет этим заняться.

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

И даже когда я эту поддержку доведу до ума, поддержка Qt5 останется.

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

В частности, если в репах какого-то дистрибутива есть Qt 5 и Qt6<6.4 – использовать надо Qt5, поскольку Qt версий 6.0-6.3 – недоразумение

Это, кстати, выражается в CMake через ограничение версии (передайте вашему специалисту по cmake). Не в .pri, не в файлике с инструкцией по сборке, а в CMake.

Федора вляпалась в 37 версии, опять-таки к счастью, ненадолго.

Кому сейчас какое дело до систем EoL’нувшихся несколько лет назад? На них ваш софт никто собирать уже никогда не будет.

По убунтам, новее чем 18.10, на дистровотче информации почему-то вообще нет, прочерки стоят

А что вы пытаетесь смотреть на дистровоче? Версии пакетов обычно смотрят в repology.

Это про содержимое CMakeLists.txt? Возможно. Поддержка cmake вообще реанимирована благодаря усилиям @u-235

То есть у вас две системы сборки, за одну из которых вы не отвечаете, а другая использует deprecate’нутый qmake, которым пользоваться никому в голову не придёт? Ну такое себе, оценка падает ещё ниже.

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

Ну просто знайте что тот кто писал ваши CMakeLists.txt cmake знает плохо, а если из-под анонимуса тут писал оскорбления действительно он, то он ещё и хам, не принимающий критику.

Оно, в принципе, откомментировано в core.pri, но да, у меня есть файлик с инструкцией по сборке, стоит всё это туда поместить.

Как я уже писал, это не должно быть откомментировано, тем более в core.pri, а ещё тем более в каком-то файлике. Сейчас XXI век, никаких инструкций не нужно потому что сборка на любой платформе это cmake && ninja, а описание опций и ограничения версий зависимостей выражаются в системе сборки же. Передайте также вашему специалисту по cmake что в option кавычечки не просто так чтобы лишние символы писать, а туда можно добавить описание опции.

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

deprecate’нутый qmake

4.2, qmake вполне живой, вы наверное, с QBS перепутали.

сборка на любой платформе это cmake && ninja

Авторам meson это, например, расскажите. Его, кстати, наконец-то начали прикручивать к Qt, но поддержка пока экспериментальная. Если вы всё успешно делаете через cmake, я рад, но не надо свой опыт возводить в абсолют и доводить до фанатизма.

За ссылку на repology спасибо.

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

Похоже, qt_ru.qm не подхватился

Ну это мелочи, видно только при закрытии без сохранения

Про Беларусь написал выше.

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

Короче мелочь, готово к продакшону :)

не видит файл метаданных вообще.

Они тут грозят что если есть _ то желательно заменить на - а то плохо будет.

А ещё, ну, в теории, я то не знаю, может оно у себя кеширует что-то, где-то. Ну типа ты уже запускал для appname с метаданными appname.darkhobbit.lalala.org, а оно фигак и где-то у себя это сохранило, а теперь делаешь appname c org.lalala.darkhobbit.appname, а оно у себя сверяет путается и говорит тебе кря, у меня лапки, я не знаю что это такое, если бы я знала что это такое :D

Просто не помню с чем уже, но у меня такая фигня была (в смысле вообще не твой случай), при этом я не в курсе был что по $HOME/.config/blabla $HOME/.cache/blabla были разбросаны артефакты анунаков вредной программы, я ей A, она мне B и пока не запустил под firejail с виртуальным хомяком пустым не понимал, чё не так-то блин. Но это так, мысли в слух, мало ли.

LINUX-ORG-RU ★★★★★
()
Последнее исправление: LINUX-ORG-RU (всего исправлений: 1)
Ответ на: комментарий от hobbit

4.2, qmake вполне живой, вы наверное, с QBS перепутали.

Нет, не перепутал.

Авторам meson это, например, расскажите.

Ну у вас-то meson нет. А так без разницы, cmake && ninja или meson && ninja - обе эти системы позволяют собрать проект без пердолинга. А вот qmake нет.

Если вы всё успешно делаете через cmake, я рад, но не надо свой опыт возводить в абсолют и доводить до фанатизма.

CMake - стандарт де-факто в отрасли. Вы мне что, предъявляете что я «возвожу в абсолют» стандарт?! Сука, стандарты на то и стандарты что если им следовать то всем будет удобно. Но к великому сожалению, я не удивлён, а к ещё большему сожалению я скорее привык видеть именно среди соотечественников кустарей, плюющих на всё общепринятое и идущих своей дорогой, делающих всё что бы из проекты нельзя было собрать, опакетить, удобно использовать, но при этом почему-то стремящихся о них рассказывать и просить тестировать. У вас проекту 10 лет скоро стукнет, не задумывались почему он только в AUR опакечен до сих пор? Или вам это не нужно, вы для себя делаете, и по доброте душевной выкладываете «авось кому»? Штош, удачи и спасибо хоть что не на Tk, не на паскале и не на gitflic.

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

обе эти системы позволяют собрать проект без пердолинга. А вот qmake нет.

Ню ню. Вот мне надо иметь поддержку 3 мажорных версий Qt, например. Чтобы проект можно было подхватить и на старых, и на новых системах. В проекте qmake буквально пару строчек надо добавить, от них состав модулей зависит. В проекте cmake надо городить несколько десятков строк. Где, говорите, пердолинг? И синтаксис файла .pro для стандартных вещей лаконичен и довольно близок к декларативному (хотя meson лучше, а ещё лучше bazel, но там свои тараканы, и там поддержки Qt точно нет). Язык же cmake – это просто скриптота, ориентированная на сборку. Многословная и плохо читаемая. И про то, что это стандарт, расскажите, ну например, Поттерингу, а то он, бедолага, в systemd нестандартный meson зачем-то потащил, от жиру, наверное, бесится.

Я, если что, от cmake отказываться не собираюсь и скрипты для неё полировать буду. Только без фанатизма и без криков «не должно, не нужно, в помойку».

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

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

Это может помешать только тем, кто из-за раздутого ЧСВ не читают инструкций.

Это, кстати, выражается в CMake через ограничение версии (передайте вашему специалисту по cmake). Не в .pri, не в файлике с инструкцией по сборке, а в CMake.

Это если считать сборщика софта тупицей, который не знает что делает и которого надо всячески оберегать.

Ну просто знайте что тот кто писал ваши CMakeLists.txt cmake знает плохо, а если из-под анонимуса тут писал оскорбления действительно он, то он ещё и хам

Всё так, я вообще не программист, а быдлан с завода, у станка стою. Только вот критики я пока не видел. Видел только «ко-ко-ко, бест пракактикс, так не делают в 2к25».

Сейчас XXI век, никаких инструкций не нужно потому что сборка на любой платформе это cmake && ninja, а описание опций и ограничения версий зависимостей выражаются в системе сборки же.

Ну и как ты узнаешь описание опций и ограничения версий, методом научного тыка?

Передайте также вашему специалисту по cmake что в option кавычечки не просто так чтобы лишние символы писать, а туда можно добавить описание опции.

Я искренне надеялся, что человек, знающий проект лучше меня, впишет туда что-нибудь действительно полезное. Но зачем лично тебе описание опций мне решительно не понятно.

PS Мне как то неловко напоминать такому крутому специалисту, но на гитхабе можно завести issue со своими претензиями, а то и PR прислать.

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

Ну и как ты узнаешь описание опций и ограничения версий, методом научного тыка?

Насколько я понял, он намекает на то, что описания должны быть исключительно и непосредственно в CMakeLists.txt и нигде более.

Насчёт нигде более – это явный перегрев, конечно, но в CMakeLists.txt почему бы и не добавить. Сделаю.

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

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

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

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

Может намёк на ccmake и cmake-gui, в которые попадают описания из set/option, через них сильно проще собирать, но это касается скорее сборки всякого крупняка, где огромного количество опций сборки, те же Qt, FLTK например.

Dr64h ★★★★
()

Gentoo, Wayland, 4k монитор. Всё очень мелко, видимо дело в том что из AppImage не подхватывает системное масштабирование.

А может дело в том что собрано с Qt5, а вяленного только в 6й версии нормально допилили.

Или вот в этом дело(это я исправил) qt.qpa.plugin: Could not find the Qt platform plugin «wayland» in «»

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

Могу вписать, этот флажок появился в Qt 5.6. У меня просто ничего больше FullHD нет, вписывать буду вслепую.

Also, я на 4pda пару лет назад предлагал выкладывать скриншоты с 4к и подобных мониторов, чтобы понять, как моя программа с ними работает. Никто не откликнулся, хотя вообще народ программой интересуется.

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

Сам не проверял, стянул себе где-то с КДЕшных сырцов. Дока с того времени поменялась, надо будет перечитать.

#if QT_VERSION < QT_VERSION_CHECK(6, 0, 0)
    QCoreApplication::setAttribute(Qt::AA_UseHighDpiPixmaps,    true);
    QCoreApplication::setAttribute(Qt::AA_EnableHighDpiScaling, true);
#endif

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