How to pack a game for Linux?

I have a game that currently runs on Windows and Mac OS X, and I would like to make it available on Linux. Porting should be fairly straightforward as it is based on Java and uses the portable libraries available on all three platforms.

The tough part and the reason for this question is its packaging so that it works as many modern Linux distributions as possible. The main goal will be Ubuntu 9.

Webstart is not an acceptable way .tar.gz is a last resort. I would prefer a package that correctly defines the dependencies (like Java) and installs easily.

I also need to be able to create a package in a Windows environment, as some of the tools in my build chain are Windows only.

+3
source share
5 answers

Start with how a similar project achieved this. The one that comes to mind is Freecol , a cross-platform Java game. Their download page has pretty clear information about installing it on several platforms. They also have packages available on sites such as GetDEB for Ubuntu and PackMan for OpenSuse.

As a rule, if you want to hit as many distributions as possible, then the formats you should consider (in a rough order of importance):

  • Ubuntu.deb (also create a repository if you can)
  • OpenSUSE rpm or .ypm (1 click installation)
  • Fedora.rpm
  • .tar.gz

. , , Debian, Mandriva BSD

, . . ubuntu :

(EDIT: , .)

+5

Zero Install (http://0install.net/).

, []

( - ), Zero Install; []

, Zero Install []

, ; , ; - ; , r

+2

deb Ubuntu. .

.

+1

- ( , , ), , , Linux.

, .tar.gz( .tar.bz2) . Linux , , , . Windows, .

(, ?) JRE, , RPM deb ( JRE, RPM deb), . ( JRE ( JDK), /usr/local/java.) , , zip/gz/bz2 .

, RPM Java, JPackage.

+1

, .
Ubuntu java- /usr/share/java. , commons-cli liblog4j, . - , , deb . outisde , Ubuntu, , deb . /usr/share/ [name]/, script . script /usr/bin (/usr/games) .

Remember to also depend on the appropriate java package (I suggest sun-java # -jre packages), because gjc is shit, and open-jdk is not 100% yet (at least METAL LaF is fubar, I still don't know anything .)

+1
source

Source: https://habr.com/ru/post/1708881/


All Articles