- If this package can be used as a library and installs Python modules (*.so or *.py) into site-packages directories, then consider supporting installation for multiple Python versions. Please read section "Types of packages" in documentation [1] to decide if this package can support installation for multiple Python versions. - Ensure that the ebuilds do not use deprecated functions or variables. - Please check if Python 3 is supported by this package. You can temporarily set Python 3 as main active version of Python to properly test if this package supports Python 3. - If this package does not support Python 3: - Specify dependency on Python 2. You can use PYTHON_DEPEND helper variable, which should be set before inheriting of python eclass. Please read section "Specification of dependency on Python" in documentation [1]. - If this package cannot support installation for multiple versions of Python, then set active version of Python using python_set_active_version(). - Ensure that shebangs in installed scripts specify correct version of Python. If shebangs are too generic (e.g. '#!/usr/bin/python'), then you can use python_convert_shebangs() to convert shebangs. (Wrapper scripts generated by python_generate_wrapper_scripts() do not require any changes.) Please read section "Shebangs in installed scripts" in documentation [1]. - To ensure that changes applied to the ebuilds are sufficient, please temporarily set Python 3 as main active version of Python and test if this package can be properly installed and if it works at run time. Please see documentation [1] for more details. [1] http://www.gentoo.org/proj/en/Python/developersguide.xml
Created attachment 292705 [details, diff] ebuild patch all emerge well.
(In reply to comment #1) This package doesn't support Python 3. This package shouldn't install byte-compiled Python modules. python_mod_optimize() and python_mod_cleanup() should be called.
Created attachment 292917 [details, diff] revised ebuild patch
(In reply to comment #3) Such pkg_setup() is not needed. This patch doesn't disable installation of byte-compiled Python modules in src_install(). This patch causes call to die() in pkg_postinst() and pkg_postrm().
here is another you will need help with. ecompressdir: bzip2 -9 /usr/share/doc removing executable bit: usr/lib64/libkate.la removing executable bit: usr/lib64/liboggkate.la * ERROR: media-libs/libkate-0.3.8 failed (postinst phase): * python_mod_optimize(): Missing files or directories with your advised inclusions. The above is suspicious. The 2 files are selectively removed, then python_mod_optimize can't find some files. Needs a revision of either of the two.
(In reply to comment #5) > here is another you will need help with. I mentioned this call to die() in comment #4. > * python_mod_optimize(): Missing files or directories > with your advised inclusions. The above is suspicious. The 2 files are > selectively removed, then python_mod_optimize can't find some files. The error message says that you forgot to pass paths to files or directories to this function.
Created attachment 293337 [details, diff] revised ebuild patch
(In reply to comment #7) eutils.eclass isn't used, so don't inherit it. PYTHON_DEPEND="wxwidgets? 2" Delete 'wxwidgets? ( dev-lang/python )' from DEPEND. pkg_setup() { if use wxwidgets; then python_set_active_version 2 python_pkg_setup fi } This package shouldn't install byte-compiled Python modules: src_prepare() { echo "#!/bin/sh" > misc/autotools/py-compile } Don't change DESTDIR="${D}" to DESTDIR="${ED}". Shebang in /usr/bin/KateDJ should be fixed. (This script is installed only with USE="wxwidgets".) python_mod_optimize() and python_mod_cleanup() should be called with correct paths. This package installs Python modules in /usr/lib/python${version}/site-packages/kdj directory, so use: pkg_postinst() { python_mod_optimize kdj } pkg_postrm() { python_mod_cleanup kdj }
Created attachment 293703 [details, diff] revised ebuild patch grief. pkg_postinst() { python_mod_optimize kdj fi need be pkg_postinst() { if use wxwidgets; then python_mod_optimize kdj fi } pkg_postrm() { python_mod_cleanup kdj } seems ok as is
(In reply to comment #9) python_mod_cleanup() should also be called only with USE="wxwidgets": pkg_postrm() { if use wxwidgets; then python_mod_cleanup kdj fi }
Created attachment 293821 [details, diff] revised ebuild patch
(In reply to comment #11) src_prepare() can be now improved: src_prepare() { if use wxwidgets; then python_clean_py-compile_files fi }
Thanks for all the help Arfrever et al /var/cvsroot/gentoo-x86/media-libs/libkate/libkate-0.4.1.ebuild,v <-- libkate-0.4.1.ebuild new revision: 1.4; previous revision: 1.3 /var/cvsroot/gentoo-x86/media-libs/libkate/libkate-0.3.8.ebuild,v <-- libkate-0.3.8.ebuild new revision: 1.3; previous revision: 1.2 /var/cvsroot/gentoo-x86/media-libs/libkate/libkate-0.3.7.ebuild,v <-- libkate-0.3.7.ebuild new revision: 1.17; previous revision: 1.16
*** Bug 390321 has been marked as a duplicate of this bug. ***