Tips for packaging games?

Open forum for end-user questions about Wine. Before asking questions, check out the Wiki as a first step.
Forum Rules
Locked
Marcus Carlson

Tips for packaging games?

Post by Marcus Carlson »

Hi list,

I intend to package a few games of mine using Debian packages for easy
installation and would like some tips on how to do it properly.

I thought of creating packages that depends on wine and to create a
wineprefix for each game somewhere in /usr or /var mostly because
different games want it's own settings and to control them separately.
But this way I don't think updates of wine would be handled well.

Another alternative is to include all the wine files in the package -
but this seems to be a lot of work.

I also would not like to have each user have an own copy of each
game/wineprefix in ~, even with symlinks - it's just "feels" wrong...
This is the way wine-doors do it I think.


How are you handling this or do you have any tip?

TIA,
Marcus
austin987
Wine Developer
Wine Developer
Posts: 2383
Joined: Fri Feb 22, 2008 8:19 pm

Tips for packaging games?

Post by austin987 »

On Mon, Jan 5, 2009 at 12:38 PM, Marcus Carlson <[email protected]> wrote:
Hi list,

I intend to package a few games of mine using Debian packages for easy
installation and would like some tips on how to do it properly.

I thought of creating packages that depends on wine and to create a
wineprefix for each game somewhere in /usr or /var mostly because different
games want it's own settings and to control them separately. But this way I
don't think updates of wine would be handled well.
This sounds reasonable. You're best bet would be to test new wine
versions (or git), regularly, to be sure to catch regression early.
Another alternative is to include all the wine files in the package - but
this seems to be a lot of work.
Yes, and if they had multiple games, a lot of wasted space/overhead.
I also would not like to have each user have an own copy of each
game/wineprefix in ~, even with symlinks - it's just "feels" wrong... This
is the way wine-doors do it I think.
Well, Wine doesn't yet support multiple users per prefix, so you'd
need to do this, or hack around it manually.

--
-Austin
Bamm
Level 4
Level 4
Posts: 136
Joined: Thu May 22, 2008 3:18 am

Re: Tips for packaging games?

Post by Bamm »

Marcus Carlson wrote: I intend to package a few games of mine using Debian packages for easy
installation and would like some tips on how to do it properly.

I thought of creating packages that depends on wine and to create a
wineprefix for each game somewhere in /usr or /var mostly because
different games want it's own settings and to control them separately.
But this way I don't think updates of wine would be handled well.

Another alternative is to include all the wine files in the package -
but this seems to be a lot of work.
Take a look at the pptview package in Ubuntu, it is a Windows program (Powerpoint Viewer) with Wine as a dependency.

On the other hand also take a look at Google's Picasa, which bundles it own Wine version to prevent regressions.

The two programs above are examples of the two approaches you mentioned. They both work. By studying how they did it, you will have a better idea which approach you want.
Marcus Carlson

Tips for packaging games?

Post by Marcus Carlson »

Bamm wrote:
Take a look at the pptview package in Ubuntu, it is a Windows program (Powerpoint Viewer) with Wine as a dependency.

On the other hand also take a look at Google's Picasa, which bundles it own Wine version to prevent regressions.

The two programs above are examples of the two approaches you mentioned. They both work. By studying how they did it, you will have a better idea which approach you want.
Took a quick look at the pptview package because it sounded interesting.
But what I could see it doesn't create/use a custom wineprefix but
relies on the user's.

Picasa looks likes it having it's own wineprefix but for what I can see
it also creates a wineprefix in ~/.google/picasa. Maybe I should look in
too a little bit more, but I'm not liking the idea to package Wine, as
other guys already doing it fine.

As Austin says, Wine doesn't handle multiple users using the same
wineprefix at the same time - right? But if I set the owner of a games
files to group "games" or something and have a wineprefix in
/usr/lib/mygame/wineprefix that's created automatically on install or
first run. Would that work as long as only one user runs the program at
a time?

As I see it the wineprefix would autoupgrade (if the exe is setuid) and
I could have my special registry and dll settings controlled AND not
having duplicated files or work :-)

Marcus
Bamm
Level 4
Level 4
Posts: 136
Joined: Thu May 22, 2008 3:18 am

Re: Tips for packaging games?

Post by Bamm »

Marcus Carlson wrote:Took a quick look at the pptview package because it sounded interesting.
But what I could see it doesn't create/use a custom wineprefix but
relies on the user's.

Picasa looks likes it having it's own wineprefix but for what I can see
it also creates a wineprefix in ~/.google/picasa. Maybe I should look in
too a little bit more, but I'm not liking the idea to package Wine, as
other guys already doing it fine.
You can try IEs4Linux, it creates its own wineprefix and runs from there. It actually creates three wineprefixes, one for IE5.5, another for IE6 and another for IE7, and creates shortcuts for them based on the wineprefix.
Marcus Carlson wrote: As Austin says, Wine doesn't handle multiple users using the same
wineprefix at the same time - right? But if I set the owner of a games
files to group "games" or something and have a wineprefix in
/usr/lib/mygame/wineprefix that's created automatically on install or
first run. Would that work as long as only one user runs the program at
a time?
That seems to be a good idea. Let me know if it works.
Locked