[game-data-packager] 01/01: fedora port: replace hard-coded paths by constants, write no lintian
Alexandre Detiste
detiste-guest at moszumanska.debian.org
Sun Nov 1 23:41:09 UTC 2015
This is an automated email from the git hooks/post-receive script.
detiste-guest pushed a commit to branch master
in repository game-data-packager.
commit d4324bdd39628f09152e961b6ecafbfd27ca2869
Author: Alexandre Detiste <alexandre.detiste at gmail.com>
Date: Mon Nov 2 00:36:57 2015 +0100
fedora port: replace hard-coded paths by constants, write no lintian
the behaviour on Debian remain identical
---
debian/rules | 3 +++
game_data_packager/__init__.py | 6 +++---
game_data_packager/build.py | 5 +++++
game_data_packager/games/doom_common.py | 4 ++++
game_data_packager/games/ecwolf_common.py | 4 ++++
game_data_packager/games/residualvm_common.py | 4 ++++
game_data_packager/games/scummvm_common.py | 18 ++++++++++--------
game_data_packager/games/z_code.py | 5 +++--
game_data_packager/version.py | 20 +++++++++++++++++---
9 files changed, 53 insertions(+), 16 deletions(-)
diff --git a/debian/rules b/debian/rules
index f5354c4..2f6485b 100755
--- a/debian/rules
+++ b/debian/rules
@@ -32,6 +32,9 @@ override_dh_auto_clean:
override_dh_install:
dh_install
echo 'GAME_PACKAGE_VERSION = """$(DEB_VERSION)"""' > debian/game-data-packager/usr/share/games/game-data-packager/game_data_packager/version.py
+ echo 'FORMAT = "deb"' >> debian/game-data-packager/usr/share/games/game-data-packager/game_data_packager/version.py
+ echo 'BINDIR = "usr/games"' >> debian/game-data-packager/usr/share/games/game-data-packager/game_data_packager/version.py
+ echo 'ASSETS = "usr/share/games"' >> debian/game-data-packager/usr/share/games/game-data-packager/game_data_packager/version.py
if dpkg-vendor --derives-from Ubuntu; then \
touch debian/game-data-packager/usr/share/games/game-data-packager/is-ubuntu-derived; \
fi
diff --git a/game_data_packager/__init__.py b/game_data_packager/__init__.py
index 0c52c7a..ceaadd1 100644
--- a/game_data_packager/__init__.py
+++ b/game_data_packager/__init__.py
@@ -34,7 +34,7 @@ from .gog import run_gog_meta_mode
from .paths import (DATADIR,USE_VFS)
from .util import ascii_safe
from .steam import run_steam_meta_mode
-from .version import GAME_PACKAGE_VERSION
+from .version import (GAME_PACKAGE_VERSION, ASSETS)
logging.basicConfig()
logger = logging.getLogger('game-data-packager')
@@ -150,9 +150,9 @@ class GameDataPackage(object):
# put 'usr/share/games/quake3/baseq3/pak1.pk3' in the .deb.
# The default is 'usr/share/games/' plus the binary package's name.
if name.endswith('-data'):
- self.install_to = 'usr/share/games/' + name[:len(name) - 5]
+ self.install_to = ASSETS + '/' + name[:len(name) - 5]
else:
- self.install_to = 'usr/share/games/' + name
+ self.install_to = ASSETS + '/' + name
# Prefixes of files that get installed to /usr/share/doc/PACKAGE
# instead
diff --git a/game_data_packager/build.py b/game_data_packager/build.py
index a47ab9d..8af4e47 100644
--- a/game_data_packager/build.py
+++ b/game_data_packager/build.py
@@ -54,6 +54,8 @@ from .util import (AGENT,
recursive_utime,
which)
+from .version import (FORMAT)
+
logging.basicConfig()
logger = logging.getLogger('game-data-packager.build')
@@ -1331,6 +1333,8 @@ class PackagingTask(object):
continue
license_file = self.game.files[f].install_as
licenses.add("/usr/share/doc/%s/%s" % (package.name, license_file))
+ if FORMAT != 'deb':
+ continue
if os.path.splitext(license_file)[0].lower() == 'license':
lintiandir = os.path.join(destdir, 'usr/share/lintian/overrides')
mkdir_p(lintiandir)
@@ -1546,6 +1550,7 @@ class PackagingTask(object):
os.chmod(full, 0o755)
elif ((stat.S_IMODE(stat_res.st_mode) & 0o111) != 0
and (fn.endswith('.sh')
+ or dirpath.endswith('/usr/bin')
or dirpath.endswith('/usr/games')
or dirpath.endswith('/DEBIAN'))):
# make executable files rwxr-xr-x
diff --git a/game_data_packager/games/doom_common.py b/game_data_packager/games/doom_common.py
index 9625fe4..321780a 100644
--- a/game_data_packager/games/doom_common.py
+++ b/game_data_packager/games/doom_common.py
@@ -25,6 +25,7 @@ from .. import GameData
from ..build import (PackagingTask)
from ..paths import DATADIR
from ..util import (copy_with_substitutions, mkdir_p)
+from ..version import (FORMAT)
logger = logging.getLogger('game-data-packager.games.doom-common')
@@ -165,6 +166,9 @@ class DoomTask(PackagingTask):
'w', encoding='utf-8') as output:
desktop.write(output, space_around_delimiters=False)
+ if FORMAT != 'deb':
+ return
+
lintiandir = os.path.join(destdir, 'usr/share/lintian/overrides')
mkdir_p(lintiandir)
diff --git a/game_data_packager/games/ecwolf_common.py b/game_data_packager/games/ecwolf_common.py
index 01f7be8..2ccc42c 100644
--- a/game_data_packager/games/ecwolf_common.py
+++ b/game_data_packager/games/ecwolf_common.py
@@ -24,6 +24,7 @@ from .. import GameData
from ..build import (PackagingTask)
from ..paths import DATADIR
from ..util import mkdir_p
+from ..version import (FORMAT)
logger = logging.getLogger('game-data-packager.games.ecwolf-common')
@@ -100,6 +101,9 @@ class EcwolfTask(PackagingTask):
'w', encoding='utf-8') as output:
desktop.write(output, space_around_delimiters=False)
+ if FORMAT != 'deb':
+ return
+
lintiandir = os.path.join(destdir, 'usr/share/lintian/overrides')
mkdir_p(lintiandir)
diff --git a/game_data_packager/games/residualvm_common.py b/game_data_packager/games/residualvm_common.py
index 33c5c36..18a6040 100644
--- a/game_data_packager/games/residualvm_common.py
+++ b/game_data_packager/games/residualvm_common.py
@@ -25,6 +25,7 @@ from .. import GameData
from ..build import (PackagingTask)
from ..paths import DATADIR
from ..util import mkdir_p
+from ..version import (FORMAT)
logger = logging.getLogger('game-data-packager.games.residualvm-common')
@@ -114,6 +115,9 @@ class ResidualvmTask(PackagingTask):
'w', encoding='utf-8') as output:
desktop.write(output, space_around_delimiters=False)
+ if FORMAT != 'deb':
+ return
+
lintiandir = os.path.join(destdir, 'usr/share/lintian/overrides')
mkdir_p(lintiandir)
with open(os.path.join(lintiandir, package.name),
diff --git a/game_data_packager/games/scummvm_common.py b/game_data_packager/games/scummvm_common.py
index 7b93706..5479c2c 100644
--- a/game_data_packager/games/scummvm_common.py
+++ b/game_data_packager/games/scummvm_common.py
@@ -25,6 +25,7 @@ from .. import GameData
from ..build import (PackagingTask)
from ..paths import DATADIR
from ..util import mkdir_p
+from ..version import (FORMAT, BINDIR)
logger = logging.getLogger('game-data-packager.games.scummvm-common')
@@ -130,17 +131,18 @@ class ScummvmTask(PackagingTask):
gameid = package.gameid or self.game.gameid
if len(package.langs) == 1:
entry['Exec'] = 'scummvm -p /%s %s' % (package.install_to, gameid)
- lintiandir = os.path.join(destdir, 'usr/share/lintian/overrides')
- mkdir_p(lintiandir)
- with open(os.path.join(lintiandir, package.name),
- 'a', encoding='utf-8') as o:
- o.write('%s: desktop-command-not-in-package '
- 'usr/share/applications/%s.desktop scummvm\n'
- % (package.name, package.name))
+ if FORMAT == 'deb':
+ lintiandir = os.path.join(destdir, 'usr/share/lintian/overrides')
+ mkdir_p(lintiandir)
+ with open(os.path.join(lintiandir, package.name),
+ 'a', encoding='utf-8') as o:
+ o.write('%s: desktop-command-not-in-package '
+ 'usr/share/applications/%s.desktop scummvm\n'
+ % (package.name, package.name))
else:
pgm = package.name[0:len(package.name)-len('-data')]
entry['Exec'] = pgm
- bindir = os.path.join(destdir, 'usr/games')
+ bindir = os.path.join(destdir, BINDIR)
mkdir_p(bindir)
path = os.path.join(bindir, pgm)
if 'en' not in package.langs:
diff --git a/game_data_packager/games/z_code.py b/game_data_packager/games/z_code.py
index 10ccb19..6c9ee54 100644
--- a/game_data_packager/games/z_code.py
+++ b/game_data_packager/games/z_code.py
@@ -23,6 +23,7 @@ import os
from .. import GameData
from ..build import (PackagingTask)
from ..util import (TemporaryUmask, PACKAGE_CACHE, mkdir_p)
+from ..version import (BINDIR)
logger = logging.getLogger('game-data-packager.games.z_code')
@@ -88,13 +89,13 @@ class ZCodeTask(PackagingTask):
% (package.name, package.name, engine))
if engine == 'frotz':
- bindir = os.path.join(destdir, 'usr/games')
+ bindir = os.path.join(destdir, BINDIR)
mkdir_p(bindir)
pgm = package.name[0:len(package.name)-len('-data')]
path = os.path.join(bindir, pgm)
with open(path, 'w') as f:
f.write('#!/bin/sh\n')
- f.write('test -x /usr/games/frotz && exec frotz $@ %s\n' % arg)
+ f.write('test -x /%s/frotz && exec frotz $@ %s\n' % (BINDIR, arg))
f.write('echo "You need to install some engine '
'like frotz to play this game"\n')
os.chmod(path, 0o755)
diff --git a/game_data_packager/version.py b/game_data_packager/version.py
index c2bbf78..e9bc759 100644
--- a/game_data_packager/version.py
+++ b/game_data_packager/version.py
@@ -3,7 +3,21 @@
# This version of this file is only used when run uninstalled. It is replaced
# with a generated version during installation.
-from debian.changelog import Changelog
+import os
-cl = Changelog(open('debian/changelog', encoding='utf-8'), strict=False)
-GAME_PACKAGE_VERSION = str(cl.full_version)
+if os.path.isfile('/etc/debian_version'):
+ FORMAT = 'deb'
+ BINDIR = 'usr/games'
+ ASSETS = 'usr/share/games'
+
+ from debian.changelog import Changelog
+ cl = Changelog(open('debian/changelog', encoding='utf-8'), strict=False)
+ GAME_PACKAGE_VERSION = str(cl.full_version)
+
+elif os.path.isfile('/etc/redhat-release'):
+ FORMAT = 'rpm'
+ BINDIR = 'usr/bin'
+ ASSETS = 'usr/share'
+
+ cl = open('debian/changelog', encoding='utf-8').readline()
+ GAME_PACKAGE_VERSION = cl.split('(')[1].split(')')[0]
--
Alioth's /usr/local/bin/git-commit-notice on /srv/git.debian.org/git/pkg-games/game-data-packager.git
More information about the Pkg-games-commits
mailing list