debian/0000775000000000000000000000000012316536740007177 5ustar debian/source/0000775000000000000000000000000011770435610010474 5ustar debian/source/format0000664000000000000000000000001411654565026011710 0ustar 3.0 (quilt) debian/copyright0000664000000000000000000000522212103532066011122 0ustar Format: http://www.debian.org/doc/packaging-manuals/copyright-format/1.0/ Upstream-Name: pybik Upstream-Contact: B. Clausius Source: https://launchpad.net/pybik/+download Comment: Originally this package was derived from GNUbik 2.3 and ported from C to Python. Authors of GNUbik: * John Mark Darrington is the main author and maintainer of GNUbik. * Dale Mellor Files: * Copyright: 2009-2013 B. Clausius License: GPL-3+ Files: data/ui/images/BEAMED?EIGHTH?NOTES.png data/ui/images/ATOM?SYMBOL.png data/ui/images/SNOWFLAKE.png data/ui/images/WHITE?SUN?WITH?RAYS.png Copyright: 2002-2010 Free Software Foundation 2012 B. Clausius License: GPL-3+ Comment: Images created from font FreeSerif: U+266B BEAMED EIGHTH NOTES U+269B ATOM SYMBOL U+2744 SNOWFLAKE Image created from font FreeMono: U+263C WHITE SUN WITH RAYS Files: data/ui/images/SHAMROCK.png data/ui/images/SKULL?AND?CROSSBONES.png data/ui/images/PEACE?SYMBOL.png data/ui/images/YIN?YANG.png data/ui/images/BLACK?SMILING?FACE.png data/ui/images/WHITE?SMILING?FACE.png Copyright: DejaVu Authors 2012 B. Clausius License: public-domain The DejaVu fonts are a font family based on the Vera Fonts. License of DejaVu (http://dejavu-fonts.org/wiki/Main_Page): Fonts are © Bitstream (…). DejaVu changes are in public domain. …. Glyphs imported from Arev fonts are © Tavmjung Bah (…). . The used symbols where added in version 2.4 as stated by DejaVu in the file status.txt and therefore are in the public domain. Comment: Images were created from font DejaVu-Sans-Oblique: U+2618 SHAMROCK U+2620 SKULL AND CROSSBONES U+262E PEACE SYMBOL U+262F YIN YANG U+263A WHITE SMILING FACE U+263B BLACK SMILING FACE License: GPL-3+ This program is free software: you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation, either version 3 of the License, or (at your option) any later version. . This program is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. . You should have received a copy of the GNU General Public License along with this program. If not, see . . The full text of the GPL is distributed in /usr/share/common-licenses/GPL-3 on Debian systems. debian/pybik-bin.install0000664000000000000000000000003412103532066012437 0ustar usr/lib/pybik/pybiklib/*.so debian/pybik.menu0000664000000000000000000000014312206166057011177 0ustar ?package(pybik): \ needs="X11" \ section="Games/Puzzles" \ title="Pybik" \ command="pybik" debian/changelog0000664000000000000000000001004712316536740011053 0ustar pybik (1.1-2build2) trusty; urgency=medium * No change rebuild to drop python3.3 compiled extension. -- Dimitri John Ledkov Tue, 01 Apr 2014 14:23:44 +0100 pybik (1.1-2build1) trusty; urgency=medium * Rebuild for python3.4 as a supported python version. -- Matthias Klose Sat, 04 Jan 2014 19:32:10 +0000 pybik (1.1-2) unstable; urgency=low [ Martin Pitt ] * Use xvfb in autopkgtest. (Closes: #717126) * Only run the "min" and "preferences" tests in autopkgtest, as the full test suite takes way too long (and might not even succeed) under xvfb. [ Scott Kitterman ] * Add python3:Depends for pybik-bin since it builds python3 version specific files * Override dh_python3 and call dh_python3 a second time to look in pybik-bin's private dir * Add build-dep on dh-python (>= 1.20130901-1) for pybuild (this is the lowest version that will generate correct depends for pybik bin) [ B. Clausius ] * Switch to pybuild * Add menu file * Added patches from upstream: + Heavily reduce the size of the binary package pybik: lp-pybik-r2126_reduce-model-size.patch lp-pybik-r2127_reduce-model-size.patch + Fix test for newer Python version: lp-pybik-r2308_fix-tests-for-newer-python.patch * Updated Standards-Version to 3.9.5, no changes needed -- B. Clausius Thu, 14 Nov 2013 08:21:46 +0100 pybik (1.1-1) unstable; urgency=low * New upstream release + Rendering engine now uses modern OpenGL - should be faster on most systems - improved lighting effect + New and updated translations * Updated for Python 2 -> Python 3 transition * Pybik no longer works with PySide * Recommends python3-icu * Added autopkgtest -- B. Clausius Mon, 17 Jun 2013 20:55:24 +0200 pybik (1.0.1-2) unstable; urgency=low [ B. Clausius ] * Upload to unstable (Closes: #710606) * Change binary package compression to xz [ Jakub Wilk ] * Use canonical URIs for Vcs-* fields. * Use empty lines to separate paragraphs in debian/control. -- B. Clausius Sat, 01 Jun 2013 16:13:31 +0200 pybik (1.0.1-1) experimental; urgency=low * New upstream release + Improved user interface. + Added Towers and Bricks (non cubic puzzles). + Added an option to show the back faces. + The cube can be manipulated with the keyboard. + Animation is faster and rendering more beautiful. + Added more pretty patterns. + Added a new solver. + Added new translations. * More generic watch file based on the proposal by Bart Martens * Updated debhelper dependency and compat to 9 * Updated Standards-Version to 3.9.4, no changes needed * debian/copyright: + Updated Format URL for final copyright format 1.0 + Added paragraphs for image files * Updated Build-Depends: new: python-numpy, python-qt4, help2man * Updated Depends for transitions: + GTK2/GConf -> Qt4 (PySide or PyQt4) + GtkGlExt -> QtOpenGL (PySide or PyQt4) * Suggests python-opengl (unusual usage) and gconf2 (config transition) * Splittet into an arch dependent and an arch independent package (increased size and build time) * Enabled parallel build for the architecture independent part * Install autogenerated README file without install paragraph * Replace the license file (displayed in the about box) by a link to usr/share/common-licenses/GPL-3 and add lintian override -- B. Clausius Sun, 03 Feb 2013 17:35:32 +0100 pybik (0.5-1) unstable; urgency=low * New upstream release. + New solutions: - Spiegel improved - Solution for the 2×2×2 Cube + New file format for solutions + Improved mouse control - Mouse button with control key rotates the whole cube - Right button moves in the opposite direction + Changeable background color -- B. Clausius Sun, 08 Jan 2012 04:55:40 +0100 pybik (0.4.2-1) unstable; urgency=low * Initial release (Closes: #647390, LP: #806433) -- B. Clausius Mon, 28 Nov 2011 23:22:50 +0100 debian/pybik.install0000664000000000000000000000021112160357277011702 0ustar usr/share/ usr/lib/pybik/pybik usr/lib/pybik/pybiklib/ui/ usr/lib/pybik/pybiklib/*.py usr/lib/pybik/*.egg-info usr/lib/pybik/pybiktest/* debian/control0000664000000000000000000000430012316536740010577 0ustar Source: pybik Section: games Priority: optional Maintainer: Ubuntu Developers XSBC-Original-Maintainer: Python Applications Packaging Team Uploaders: B. Clausius Build-Depends: debhelper (>= 9), cython3, python3-all-dev (>= 3.2), libgl1-mesa-dev, libglm-dev, dh-python (>= 1.20130902-1~) Build-Depends-Indep: python3-numpy, gettext, intltool, help2man, Standards-Version: 3.9.5 X-Python3-Version: >= 3.2 XS-Testsuite: autopkgtest Homepage: https://launchpad.net/pybik/ Vcs-Svn: svn://anonscm.debian.org/python-apps/packages/pybik/trunk/ Vcs-Browser: http://anonscm.debian.org/viewvc/python-apps/packages/pybik/trunk/ Package: pybik Architecture: all Depends: ${python3:Depends}, ${misc:Depends}, python3-pyqt4, python3-pyqt4.qtopengl, python3-numpy, pybik-bin (>= ${source:Version}), pybik-bin (<< ${source:Version}.1~) Recommends: python3-icu, Suggests: gconf2, Description: 3D Rubik's cube game Pybik is an interactive, graphical, single player puzzle about the cube invented by Ernő Rubik. Besides the cube the program can handle towers and bricks (non cubic puzzles). Pybik also has solvers, pretty patterns and a collection of various moves. The cube can be manipulated with the mouse or keyboard. You can change the colors or images on the faces of the cube. Package: pybik-bin Architecture: any Depends: ${python3:Depends}, ${shlibs:Depends}, ${misc:Depends}, Recommends: pybik Replaces: pybik (<< ${source:Version}) Breaks: pybik (<< ${source:Version}) Description: 3D Rubik's cube game - binary files Pybik is an interactive, graphical, single player puzzle about the cube invented by Ernő Rubik. Besides the cube the program can handle towers and bricks (non cubic puzzles). Pybik also has solvers, pretty patterns and a collection of various moves. The cube can be manipulated with the mouse or keyboard. You can change the colors or images on the faces of the cube. . This package contains the architecture dependent files for Pybik. debian/rules0000775000000000000000000000251612246675050010263 0ustar #!/usr/bin/make -f #export DH_VERBOSE=1 #export PYBUILD_VERBOSE=1 ifneq (,$(filter parallel=%,$(DEB_BUILD_OPTIONS))) NUMJOBS = $(patsubst parallel=%,%,$(filter parallel=%,$(DEB_BUILD_OPTIONS))) else NUMJOBS = auto endif %: dh $@ --with python3 --buildsystem=pybuild override_dh_auto_clean: dh_auto_clean # Remove __pycache__ directories created by "setup.py clean" rm -rf pybiklib/__pycache__ tools/__pycache__ rm -f debian/README override_dh_auto_build-arch: dh_auto_build -- --build-args="--arch-only" override_dh_auto_build-indep: python3 tools/create_docs.py --skip-install README=debian/README dh_auto_build -- --build-args="--indep-only --parallel=$(NUMJOBS)" override_dh_auto_install-arch: dh_auto_install -- --install-args=" \ --arch-only \ --install-lib=/usr/lib/pybik" override_dh_auto_install-indep: dh_auto_install -- --install-args=" \ --indep-only \ --install-lib=/usr/lib/pybik \ --install-scripts=/usr/lib/pybik \ --data-dir=/usr/share" override_dh_auto_test: # Pybik has no unittests, skip autodetection due to false positive override_dh_python3: dh_python3 -p pybik dh_python3 -p pybik-bin usr/lib/pybik/pybiklib/ override_dh_builddeb: dh_builddeb -- -Zxz debian/watch0000664000000000000000000000013412103532066010215 0ustar version=3 https://launchpad.net/pybik/+download .*/pybik-(\d.*)\.(?:tgz|tar\.(?:gz|bz2|xz)) debian/patches/0000775000000000000000000000000012246675050010626 5ustar debian/patches/lp-pybik-r2308_fix-tests-for-newer-python.patch0000664000000000000000000000111212246675050021374 0ustar Description: Fix test for newer Python version Origin: upstream, http://bazaar.launchpad.net/~barcc/pybik/trunk/revision/2308 --- This patch header follows DEP-3: http://dep.debian.net/deps/dep3/ --- a/pybiktest/testrunner.py +++ b/pybiktest/testrunner.py @@ -97,6 +97,7 @@ def mkState(fields): _State = namedtuple('_State', fields) class State(_State): # pylint: disable=W0232 + __slots__ = () def tostr(self, other=None): def field_tostr(i): if self[i] is matchall: debian/patches/lp-pybik-r2126_reduce-model-size.patch0000664000000000000000000000571512246675050017555 0ustar Description: Heavily reduce the size of the binary package pybik, part 1 Data structures are modified in a way that the pickled files in /usr/share/pybik/models/ are smaller. Origin: upstream, http://bazaar.launchpad.net/~barcc/pybik/trunk/revision/2126 --- This patch header follows DEP-3: http://dep.debian.net/deps/dep3/ --- a/pybiklib/cubestate.py +++ b/pybiklib/cubestate.py @@ -92,7 +92,7 @@ for index, (pos, rot) in enumerate(self._blocksn): if rot != allrot: return False # Cubie rotated - block = self.model.rotated_position[index, rot] + block = self.model.rotated_position[index][rot] if pos != block: return False # Cubie at wrong place return True --- a/pybiklib/model.py +++ b/pybiklib/model.py @@ -143,9 +143,10 @@ self.inplace_rotations = [] def init_inplace_rotations(self, model): - for (blocknum, rotsym), blocknum2 in model.rotated_position.items(): - if blocknum == blocknum2 == self.index and rotsym: - self.inplace_rotations.append(rotsym) + for blocknum, rotsym_blocknum2 in enumerate(model.rotated_position): + for rotsym, blocknum2 in rotsym_blocknum2.items(): + if blocknum == blocknum2 == self.index and rotsym: + self.inplace_rotations.append(rotsym) self.inplace_rotations = sorted(self.inplace_rotations, key=len)[:2] def __repr__(self): @@ -370,13 +371,13 @@ return face_permutations def _create_rotated_position(self): - rotated_position = {} + rotated_position = [{} for block in self.blocks] for b, block in enumerate(self.blocks): for sym, rotation in self.rotation_matrices.items(): coords = (np.matrix([block.coords]) * rotation).A.tolist()[0] for p, pos in enumerate(self.blocks): if pos.coords == coords: - rotated_position[b, sym] = p + rotated_position[b][sym] = p break else: assert False, 'not a permutation' @@ -385,10 +386,10 @@ @classmethod def get_datafilename(cls, sizes): x, y, unused_z = sizes - if x <= 2: - return 'mdata_01-02' + if x <= 3: + return 'mdata_01-03' else: - return 'mdata_{:02}_{}'.format(x, 0 if x<=5 else y%2 if x<=8 else y%3) + return 'mdata_{:02}_{}'.format(x, 0 if x<=6 else y%2 if x<=10 else y%3) def get_savedata(self): self.calc_data() @@ -466,7 +467,7 @@ def rotate_symbolic(self, axis, rdir, block, sym): rsym = (self.symbols if not rdir else self.symbolsI)[axis] - block = self.rotated_position[block, rsym] + block = self.rotated_position[block][rsym] sym = self.norm_symbol(sym + rsym) return block, sym debian/patches/lp-pybik-r2127_reduce-model-size.patch0000664000000000000000000000505512246675050017553 0ustar Description: Heavily reduce the size of the binary package pybik, part 2 Data structures are modified in a way that the pickled files in /usr/share/pybik/models/ are smaller. Origin: upstream, http://bazaar.launchpad.net/~barcc/pybik/trunk/revision/2127 --- This patch header follows DEP-3: http://dep.debian.net/deps/dep3/ --- a/pybiklib/cubestate.py +++ b/pybiklib/cubestate.py @@ -92,7 +92,7 @@ for index, (pos, rot) in enumerate(self._blocksn): if rot != allrot: return False # Cubie rotated - block = self.model.rotated_position[index][rot] + block = self.model.rotated_position[rot][index] if pos != block: return False # Cubie at wrong place return True --- a/pybiklib/model.py +++ b/pybiklib/model.py @@ -143,8 +143,8 @@ self.inplace_rotations = [] def init_inplace_rotations(self, model): - for blocknum, rotsym_blocknum2 in enumerate(model.rotated_position): - for rotsym, blocknum2 in rotsym_blocknum2.items(): + for rotsym, blocknum_blocknum2 in model.rotated_position.items(): + for blocknum, blocknum2 in enumerate(blocknum_blocknum2): if blocknum == blocknum2 == self.index and rotsym: self.inplace_rotations.append(rotsym) self.inplace_rotations = sorted(self.inplace_rotations, key=len)[:2] @@ -371,13 +371,15 @@ return face_permutations def _create_rotated_position(self): - rotated_position = [{} for block in self.blocks] + rotated_position = {} for b, block in enumerate(self.blocks): for sym, rotation in self.rotation_matrices.items(): coords = (np.matrix([block.coords]) * rotation).A.tolist()[0] for p, pos in enumerate(self.blocks): if pos.coords == coords: - rotated_position[b][sym] = p + if sym not in rotated_position: + rotated_position[sym] = [0 for block in self.blocks] + rotated_position[sym][b] = p break else: assert False, 'not a permutation' @@ -467,7 +469,7 @@ def rotate_symbolic(self, axis, rdir, block, sym): rsym = (self.symbols if not rdir else self.symbolsI)[axis] - block = self.rotated_position[block][rsym] + block = self.rotated_position[rsym][block] sym = self.norm_symbol(sym + rsym) return block, sym debian/patches/series0000664000000000000000000000017612246675050012047 0ustar lp-pybik-r2126_reduce-model-size.patch lp-pybik-r2127_reduce-model-size.patch lp-pybik-r2308_fix-tests-for-newer-python.patch debian/docs0000664000000000000000000000001612103532066010036 0ustar debian/README debian/compat0000664000000000000000000000000212103532066010364 0ustar 9 debian/tests/0000775000000000000000000000000012175223162010333 5ustar debian/tests/control0000664000000000000000000000003412175223162011733 0ustar Tests: all Depends: @, xvfb debian/tests/all0000664000000000000000000000006712175223162011031 0ustar #!/bin/sh xvfb-run pybik --test=min --test=preferences debian/links0000664000000000000000000000013212103532066010225 0ustar usr/lib/pybik/pybik usr/games/pybik usr/share/common-licenses/GPL-3 usr/share/pybik/GPL-3 debian/pybik.lintian-overrides0000664000000000000000000000012612103532066013663 0ustar pybik: package-contains-broken-symlink usr/share/pybik/GPL-3 ../common-licenses/GPL-3