Упаковка Flatpak для Pygame
Flatpak - это система упаковки приложений для песочницы для Linux (Docs разработчика). Pygame - это основа для изготовления игр.
Я сосредоточился на использовании flatpak-builder с манифестами JSON, а не на инструменте Python, который я начал в прошлом году. Приложения, размещенные на Flathub, должны быть построены таким образом.
Основные файлы, представляющие интерес:
org.pygame.baseapp.jsonorg.pygame.baseapp-py35.jsonorg.pygame.aliens.jsonЭто экспериментальный инструмент для изготовления пакетов Flatpak для игр Pygame. Чтобы использовать его:
Вам понадобится система Linux с Flatpak> = 0,8 установлена, например, Fedora 25 или Ubuntu 17.10.
Установите с помощью pip install pygame_fpak . Инструмент нуждается в запуске Python 3, даже если ваша игра использует Python 2.
Создайте файл конфигурации pygame-fpak.toml
# At the moment, you can specify "3.6", "3.4" or "2.7".
# 3.6 produces a somewhat bigger app to download.
python = " 3.6 "
# User-visible name
name = " Solarwolf "
# Identifier based on a reverse domain name you control. E.g. if your
# project is on Github, you could use io.github.username.reponame
appid = " org.pygame.solarwolf "
# Files/directories needed to run the game - relative paths from where
# the config file lives.
files = [
" solarwolf "
]
# The function to start your game. This will be called like:
# from solarwolf.cli import main; main()
entry-point = " solarwolf.cli:main "
# Icons in different sizes. Icons should be square, sizes are pixels
# along one side of a square. 32, 48 and 64 are common.
[ icons ]
64 = " dist/solarwolf.png " Запустите python3 -m pygame_fpak pygame-fpak.toml .
Другой код в этом репо создает базовые приложения для инструмента, описанного выше. Чтобы построить и установить их:
# Slow, but only needed once:
make install-runtime
# Build the base applications and install them:
make install-baseapp-py36.done
make install-baseapp-py34.done
make install-baseapp-py27.doneЕсть три варианта базового применения:
-py36 включает в себя Python 3.6 As /app/bin/python3 . Это приблизительно 30 мибов для загрузки и 140 мибов при установке. Пример инопланетян основан на этом по умолчанию.-py34 использует Python 3.4, который предоставляется Freedesktop.org. Это делает его меньше - около 7 мибов для загрузки, и 40 MIB установлены - но вы не можете использовать новейшие функции Python в своем коде.py27 использует Python 2.7. Это аналогичный размер на базовое приложение Python 3.4.Приложения Flatpak используют время выполнения , пакет общих библиотек и исполняемых файлов. Если ваше приложение является первым, когда пользователь устанавливает со временем выполнения, FlatPak также загрузит время выполнения. Надеемся, что большинство приложений поделится несколькими времени запуска, так что эта установка быстро и проста.