Первым snap пакетом была упаковка LanguageTool. Вторым - музыкальный плеер deadbeef. Решив не становится сопровождающим, связался с автором данного превосходного музыкального проигрывателя и было совместно решено что в идеале upstream будет сам создавать и заливать готовый снап в Ubuntu Store. Но лидеру проекта требуется время на освоение инструмента упаковки snapcraft и чтобы не сидеть, сложа руки, взялся за TuxGuitar.
Статья носит исторический характер. Автор программы сам начал паковать своё детище в flatpak формате и мне лучше самоустраниться. Данную программу вы легко найдёте в графическом установщике Ubuntu Software и KDE Discover.
TuxGuitar — свободная программа для записи партитур и редактирования табулатур.
Снапкрафтить в целом прикольно и призываю вас "поиграть" в эту игру. Задача проста - нужно запихать в пакет всё что нужно программе и после первого своего общения со snapcraft, создание следующих пакетов даётся легче. Тут решил схитрожопить и вернулся к Java программам. Они не заслуженно обделены вниманием и количеством мест в официальных репозиториях. Хотя лукавлю. Джава - кроссплатформенный и самодостаточный язык программирования и паковать её программы в самодостаточные пакеты - легко и просто.
С TuxGuitar особых проблем не возникло, кроме одной шероховатости. TG не открывал свои файлы, если путь к ним содержал не английские буквы.
Когда бодался с DeaDBeeF, то обкатал вопрос локализации и поддержки китайских иероглифов, арабской вязи и т.д. Поэтому маловероятно что вина на мне и моих кривых руках. Попробовал добавить параметры java при вызове программы -Dsun.jnu.encoding="UTF-8" -Dfile.encoding="UTF-8". Не помогло. Так что если вы опытный java программист, то отпишитесь в комментариях, как исправить это недоразумение.
Ещё одна вещь в которой хотелось бы покаятся. Решил не делать мультиверсионный снап и запихивать 32 и 64 бита вместе, чтобы единый пакет работал везде. Мыслил так. Снап и так самодостаточный пакет и, не сказать чтобы он был ужасно жирный, но, образно говоря, склонный к полноте. Если в мире снап нет понятия зависимостей, то, ежу понятно, что чудес не бывает и свои файлы на борту не придают тебе стройности. Если ещё паковать и 2 версии архитектуры, то каков будет итог? Ещё одной коварной мыслью было добавить чуток своих маленьких плюсиков на чашу весов именно 64 битной платформе. Много раз вам выкатывал темы аля 32 vs 64, разрабы сами уже обсуждают планы бросать 32 бита и как-то тратить силы и время на 32 бита особо не хочется. Итог такой. Есть в Ubuntu Store TuxGuitar-vs для 64 битных платформ, так как TuxGuitar мне не дали использовать из-за занятой "торговой марки". Не стал протестовать и выяснять, просто добавил постфикс vs.
Если хотите потестить и конструктивно покритиковать, то sudo snap install tuxguitar-vs
или поищите в GNOME Software, если вам удобно через GUI.
Показать два моих пакета - sudo snap find vs
languagetool 3.4 vs - LanguageTool tuxguitar-vs 1.3.2-snap1 vs - TuxGuitar
Первый snap пакет. Java программа LanguageTool. sudo snap install languagetool
Второй snap пакет. GTK программа DeaDBeeF. sudo snap install deadbeef-vs
Четвёртый snap пакет. Java программа Vuze. sudo snap install vuze-vs
Пятый snap пакет. Java программа osddm. sudo snap install osddm
Шестой snap пакет. PAC (Perl Auto Connector). sudo snap install pac-vs