Установка игры «2048» на Linux и FreeBSD и тестирование в экстремальных условиях

Так как на профильном, печально известном ресурсе по Linux и Open Source статью безосновательно удалили, было решено перенести и значительно развить её в гораздо более благоприятном месте.
13 мая 2026, среда 22:16
Hard-Workshop для раздела Блоги

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

Начнём с того, что на днях я вспомнил про печально известный ресурс linux.org.ru и решил написать там статью по установке игры «2048» в Linux и FreeBSD. Но представители администрации ресурса с первых же сообщений начали вести себя предвзято и токсично, и сразу же хотели убрать статью подальше в глубины форума, вместо того, чтобы поговорить с автором и попытаться доработать материал, указав на проблемы. Разумеется, я задал вопрос про перенос статьи, но ни один из модераторов так и не смог внятно обосновать решение, а история закончилась тем, что статью просто удалили.

Печально, конечно, что представители ресурса, содержащего в своём имени слово «Linux», откровенно препятствуют развитию того самого Linux и Open Source, задвигая подальше всех «неугодных» авторов и разработчиков, на основании какой-то личной неприязни. Я не удивлюсь, если токсичное, предвзятое и агрессивное отношение администрации профильного ресурса, могло сломить других разработчиков и авторов, особенно начинающих. Но для меня эта ситуация из разряда «собака лает, а караван идёт».

Хотя у меня сохранились скриншоты «неугодной» статьи на профильном ресурсе, я не буду полностью переписывать её слово в слово. Причина в том, что редактор статей на ресурсе linux.org.ru представлял собой текстовое поле и пару кнопок для публикации. У меня, как у автора статьи, были крайне скудные возможности по оформлению и написанию материала. Это был плохой пользовательский опыт. Не зря в названии «Linux».

                       

Но сейчас я пишу статью на ресурсе Overclockers.ru, и тут есть приличный редактор статей с достаточно широкими возможностями, чтобы писать полноценные материалы. Сейчас я могу написать гораздо более качественную статью про установку игры, чем технически позволял linux.org.ru. И что самое главное — если модераторы мне и выносят какие-либо замечания по материалу, они, как правило, обоснованы и имеют смысл, чего не могу сказать про администрацию ЛОРа.

Пара слов про Installer-SH

Так как игра распространяется в формате Installer-SH, я вижу необходимость немного рассказать про данный формат. Недавно я поработал над новой версией Installer-SH 2.7 и выяснил, что данный формат настолько развился, что оказался просто вне конкуренции, среди способов распространения софта под Linux и FreeBSD. Найти актуальные версии Installer-SH можно в моём репозитории на GitHub. Исходный код открыт, а проект находится в состоянии «живого примера».

Если же вы желаете создать свой установочный пакет в формате Installer-SH, вам следует ознакомиться с исходным кодом проекта, инструкцией для разработчиков в файле README и встроенными примерами. Также вы можете взять за основу уже существующий установочный пакет с игрой, так как формат самодостаточен и может быть воспроизведён из готовых установочных пакетов с другими программами.

О чём игра

«2048» — это популярная логическая игра-головоломка, цель которой — объединять плитки с одинаковыми числами, чтобы получить плитку с номиналом 2048. Игра не заканчивается, пока всё поле не будет заполнено.

Загрузка и установка игры «2048»

Первым делом нужно получить распространяемый архив с установочным пакетом игры. Скачать пакет можно вручную из репозитория GitHub.

Так же можно скачать и командой wget в терминале.

wget https://github.com/Shedou/Chimbalix-Software-Catalog/releases/download/2048c103mp/2048c-v103-mp-x64-Linux_FreeBSD-ISH27D.tar

В этом и суть установочного пакета Installer-SH: распространять софт в этом формате можно любыми разумными способами. Распространяемый tar-архив нужно распаковать; для этого можно воспользоваться любым исправным архиватором или командой tar в каталоге с архивом.

tar -xf 2048c-v103-mp-x64-Linux_FreeBSD-ISH27D.tar

Конечно, архив можно не распаковывать, а смонтировать как файловую систему и запустить напрямую, но это уже уровень продвинутых пользователей, да и мало какой дистрибутив Linux на такое способен, ввиду отсутствия необходимых инструментов «из коробки». У многих дистрибутивов Linux «из коробки» нет даже базового компилятора GCC. Так что обойдёмся наиболее простым и надёжным способом установки.

Для быстрой установки игры можно воспользоваться аргументом "-silent" при запуске главного скрипта.

./2048c-v103-mp-x64-Linux_FreeBSD-ISH27D/installer.sh -silent

Этот метод максимально прост и пригоден для пакетной установки программ через отдельные автоматизирующие скрипты. Но как-то не очень эффектно это выглядит.

Установить игру для всех пользователей ОС можно, используя аргумент "-modesystem".

./2048c-v103-mp-x64-Linux_FreeBSD-ISH27D/installer.sh -silent -modesystem

Важно! Не используйте sudo и не запускайте установочный пакет от имени пользователя root. Installer-SH сам запросит пароль root, если программа устанавливается в системном режиме.

Давайте закроем терминал и сделаем всё по-человечески. Заходим в каталог с установочной программой и запускаем главный скрипт. Так же можно воспользоваться вспомогательными скриптами для переключения локализации.

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

Запустив установочный пакет, мы видим подробную информацию об устанавливаемой игре. Если же ваш дистрибутив не соответствует спецификациям PortSoft, то вместо информации о программе появится окно базовой подготовки операционной системы согласно спецификациям. Работа по спецификациям PortSoft необходима, чтобы предотвратить замусоривание домашнего каталога пользователя и операционной системы в целом.

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

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

Запуск игры и удаление

Теперь можно зайти в меню приложений и запустить установленную игру. Я запустил игру сразу в четырёх вариантах оформления и немного поиграл. Важно! Для наилучшего пользовательского опыта ваш дистрибутив Linux должен соответствовать спецификациям XDG, а меню должно поддерживать вложенные категории согласно спецификациям XDG.

Если же игра надоела, её в любой момент можно удалить из системы, запустив соответствующий ярлык деинсталлятора в разделе «Service».

Также можно запустить и удалить игру через терминал. Важно отметить: по умолчанию Installer-SH устанавливает приложение в домашний каталог пользователя, поэтому root-права для установки не нужны. Однако это также означает, что приложение может не запускаться короткой командой в терминале, если ваш дистрибутив Linux/FreeBSD настроен неправильно и не считывает файлы из каталога «~/.local/bin/».

Если всё совсем печально

Если же ваш дистрибутив Linux/FreeBSD непригоден для полноценного использования, не соответствует спецификациям XDG, в нём отсутствуют базовые утилиты вроде sed, grep, cp, uname и так далее — вы можете просто распаковать архив «program_files.tar.xz» в каталоге «installer-data» и вручную запустить исполняемый файл игры, соответствующий вашей платформе.

Исходный код

Данный пакет игры «2048» также содержит исходный код игры в отдельной директории src (внутри архива program_files). Поэтому любой желающий может собрать свою версию при наличии компилятора GCC в операционной системе. Благодаря эффективному сжатию, Installer-SH позволил упаковать игру вместе с исходным кодом без увеличения размера распространяемого пакета.

Расширенное тестирование

Сейчас я использую приличный редактор статей и имею возможность загружать изображения в статью (не забывая про оптимизацию качества для снижения размера), в отличие от токсичного ресурса linux.org.ru. Так что давайте протестируем распространяемый пакет с игрой в разнообразных операционных системах. Чтобы всё происходило максимально честно, я воспользуюсь чистыми образами разнообразных операционных систем, а устанавливать игру буду прямо в Live-CD режиме.

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

Так как в прочих виртуальных машинах ещё только запускались современные дистрибутивы, я первым делом протестировал уже запустившийся Debian 7.0. Просто запустил установочный пакет игры в тихом режиме и установил. Всё работает как положено. Я только не подумал о том, что инсталлер в тихом режиме не показывает информацию о дистрибутиве, поэтому пришлось через терминал вывести содержимое файла os-release для наглядности.

Далее устанавливаю игру в дистрибутиве Ubuntu 24.04.1 LTS. На этот раз запускаю по-человечески, чтобы было видно окно установочного пакета. Никаких проблем с запуском и установкой игры. Только ярлыки разбросаны по меню приложений GNOME, потому что разработчики не следуют спецификациям XDG в полной мере. Об этом, кстати, установочный пакет предупреждал пользователя.

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

Также протестировал установочный пакет в очень кривом дистрибутиве Gentoo 2016 года. Этот дистрибутив настолько поломан и крив, что даже с терминалом есть серьёзные проблемы, я уже не говорю о множестве проблем в рабочем окружении. Мне пришлось даже переключить язык установочного пакета на английский, чтобы было видно содержимое.

Тем не менее, даже в такой изуродованной и поломанной операционной системе, Installer-SH отработал и установил игру. Да, сама игра работает с некоторыми проблемами по вине кривого терминала, но она работает и в неё можно играть.

На этом можно завершить тестирование.

Заключение

Я не вижу смысла что-то писать в заключении. Мой установочный пакет в очередной раз доказал состоятельность реальными случаями использования в экстремальных условиях.

Благодарю за внимание, больше интересных статей в блоге Hard-Workshop.