[game-data-packager] 10/17: Add support for installing individual files in a different data directory

Simon McVittie smcv at debian.org
Fri Jan 2 21:11:56 UTC 2015


This is an automated email from the git hooks/post-receive script.

smcv pushed a commit to branch master
in repository game-data-packager.

commit 1016aa21654fcf31a6c88c4a23ce159855a458d3
Author: Simon McVittie <smcv at debian.org>
Date:   Fri Jan 2 19:23:25 2015 +0000

    Add support for installing individual files in a different data directory
---
 data/rott-data.yaml                | 6 +++---
 lib/game_data_packager/__init__.py | 6 +++++-
 2 files changed, 8 insertions(+), 4 deletions(-)

diff --git a/data/rott-data.yaml b/data/rott-data.yaml
index 08f94e9..080c20f 100644
--- a/data/rott-data.yaml
+++ b/data/rott-data.yaml
@@ -1,8 +1,5 @@
 %YAML 1.2
 ---
-# This file is not used yet: the YAML-driven code does not support
-# everything it needs. It's just a sketch of how this could look later.
-
 package: rott-data
 install_to: usr/share/games/rott
 
@@ -18,6 +15,9 @@ install_files_from_cksums: |
   4153237746 7752    VENDOR.DOC
 
 files:
+  VENDOR.DOC:
+    install_to: usr/share/doc/rott-data
+
   1rott13.zip:
     size: 3668139
     download:
diff --git a/lib/game_data_packager/__init__.py b/lib/game_data_packager/__init__.py
index 2598991..8f62b33 100644
--- a/lib/game_data_packager/__init__.py
+++ b/lib/game_data_packager/__init__.py
@@ -149,6 +149,7 @@ class WantedFile(HashedFile):
         self.distinctive_size = False
         self.download = None
         self._install_as = None
+        self.install_to = None
         self._look_for = []
         self.optional = False
         self._provides = set()
@@ -206,6 +207,7 @@ class WantedFile(HashedFile):
             'download': self.download,
             'install': self.install,
             'install_as': self.install_as,
+            'install_to': self.install_to,
             'look_for': list(self.look_for),
             'name': self.name,
             'optional': self.optional,
@@ -373,6 +375,7 @@ class GameDataPackage(object):
                     'download',
                     'install',
                     'install_as',
+                    'install_to',
                     'look_for',
                     'md5',
                     'optional',
@@ -867,7 +870,8 @@ class GameDataPackage(object):
             with TemporaryUmask(0o22):
                 logger.debug('Found %s at %s', wanted.name, copy_from)
                 copy_to = os.path.join(destdir,
-                        self.install_to,
+                        (wanted.install_to if wanted.install_to is not None
+                            else self.install_to),
                         wanted.install_as)
                 copy_to_dir = os.path.dirname(copy_to)
                 logger.debug('Copying to %s', copy_to)

-- 
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