Собственно, сабж. Для новичков и просто ленивых до сборки простого бинарника людей я собираю отдельные тарболлы и так, как неизвестна ситуация с работоспособностью бинарей везде, где есть линукс и можно запускать нормально игры, то необходимо собирать максимум информации. Прежде чем сломя голову бежать орать в эту тему или в чат после неудачных попыток запуска бинарников, читайте весь этот пост. Для работы требуются: openal, xmp (libxmp), modplug (libmodplug) [для headless-бинаря], vorbis (libvorbis), opus (libopus), opusfile (libopusfile), gme (libgme) и sdl2 (SDL2, libsdl2 и тд), enet (libenet)
Как правильно оформить репорт: 1. Сама игра может упасть как при запуске, так и при некоторой продолжительной работе, поэтому в начале всегда пишем предпринимаемые действия при запуске и то, чего вы делаете после (если игру удалось нормально запустить и она не вылетает). Желательно по существу и без флуда. 2. В спойлер прикрепить последние ~30-50 строчек из лога Doom2DF.log, а то и прикрепить сам файл - чтобы разобраться не только мне, как мантайнеру тарболлов, так и разработчикам в случае чего. ТОЛЬКО НЕ ЗАПУСКАЙТЕ ИГРУ ПОСЛЕ ВЫЛЕТА, ЛОГИ САМОСТОЯТЕЛЬНО НЕ СОХРАНЯЮТСЯ ПОД РАЗНЫМИ ИМЕНАМИ! 3. В конце оставить вывод команды uname -a и если там нет названия вашего дистрибутива - написать его отдельно и полностью. Если запускается из под терминала - то и вводимую команду. Флуд, оффтоп и прочее будет пропускаться мимо глаз, неграмотные репорты и требования работы будут удаляться из темы.
Установка: Самым первым шагом к полноценной установке тарболла является установка зависимостей. Под практически каждый дистрибутив требуется писать название либ по-разному, поэтому я приведу некоторые команды для установки оных под спойлером ниже.
Второй шаг - уже, собственно, работа с тарболлом. Разницы как копировать особо нет - вы можете расположить всё в одной папке, например, у себя в домашней директории и запускать так. Но если вы хотите получить рабочие пункты меню, то или копируйте как указано, или изменяйте desktop-файлы, а именно директорию в команде запуска на ту, куда вы закинули ДФ.
1. Распаковываешь архив; 2. Пихаешь содержимое папки usr - в /usr; 3. Пихаешь содержимое папки home/doom2df - в ~/.doom2df (/home/<username>/.doom2df). 4. ... 5. PROFIT! Причина в такой структуре потому, что редактор банально не научен искать файлы по всей файловой системе, а только возле себя. Куда бинарник положишь - там он и будет искать необходимые ему файлы.
Changelog:
[24.03.22 -- 25.03.22] -- Обновлены оба тарболла до свежайших коммитов.
[7.03.22] -- Обновлены оба тарболла до свежайших коммитов.
[13.01.22] -- Обновлены 32х бинарники на основе последних изменений (повышение протокола и тд).
[25.12.21] -- Обновлены 64х бинарники на основе последних изменений [на то число] (повышение протокола и тд).
[14.07.21] -- Обновлены 64х бинарники на основе последних коммитов.
[7.06.21] -- Обновлены 32х бинарники на основе последних коммитов.
[9.05.21] -- Обновлены сборки на основе последних коммитов.
[1.05.2021] -- Добавлена x64 сборка.
[25.04.2021] -- Обновлены бинарники - убрал mpg123 из поставки, ибо в Mageia он кривой. -- Привёл ресурсы в порядок, теперь добавленные карты точно работают. -- Обновил ман - добавил возможные пути расположения ресурсов, ссылки.
[10.04.2021] -- Запакован мануал, чтобы через команду man он отображался, заодно маленько обновлен. -- Обновлены бинарники игры в связи с последними коммитами.
[8.04.2021 18:26] -- Обновлен FAIL.wad. -- Выпилен anthill.wad. -- Добавлен franken.dfz. -- Editor перемещён в usr/bin, туда же добавлен специальный скрипт для правильного открытия редактора. -- В честь пункта выше обновлен desktop-файл для редактора.
[8.04.2021] -- Точно выпилен LSD (вчера недоглядел). -- Добавлен небольшой man со всеми имеющимися командами (кроме специфических).
[7.04.2021] -- Оставил в поставке модели TerminalHash и SovietPony. -- Обновил CTF2_NFK, PrikolSoft_CTF. -- Залил DarkLab, CTF1_NFK. -- Безжалостно выпилил LSD(ЛАГИИИИИИИИИИ), DOOM2D_v.1.888, dm_damage (ибо дубликат), damned (неотточено). -- Переместил MA в просто вады.
FAQ:
1. Почему редактор невозможно запустить, например, из /usr/bin? Он банально не научен читать файлы по всей файловой системе и так же не может создать лог в специально отведённых для того папках, из-за чего вы будете наблюдать только падения при попытке запустить. Эксперименты со скриптами не дают никаких успехов - редактор игнорирует такие ухищрения (либо что-то я делаю не так).
2. В чём сложность сделать Appimage? В его ненужности.
3. А в пакетировании? SPEC-файл для rpm есть в репозитории игры, но мякотка в том, что он заточен под Mageia, а пока что времени для корректировки спека у меня не особо нет, чтобы сделать его универсальным или хотя бы сделать вариации. Под deb-пакеты пока всё в процессе. Мантайнерством заниматься у меня нет возможности и к тому же это крайне осложнено поставляемыми ресурсами (там есть ресурсы из Doom/Doom II), поэтому пакетов под свои системы можно не ждать. Да и бестолку ждать.
4. У меня старые версии либ, что делать? Перейти на дистр, который предоставляет свежие версии, либо поставить из сторонней репы свежак, либо собирать бинарники самому. У меня не такой обширный парк устройств, чтобы я мог учесть такой момент и собрать на дистрибутиве с протухшими либами, всё собирается на домашних машинах с более-менее свежими версиями библиотек.
5. Игра не запускается! Выдаёт ошибку "WAD GAME not found in data directories." Внимательно перечитывайте инструкцию, а именно шаг копирования ресурсов. Расположить можно в две директории - /usr/lib/share/doom2df и /home/<учётная-запись>/.doom2df, если вы скопировали бинарник в /usr/bin. Если всё равно не работает, то здесь я абсолютно бессилен.