Gentoo Websites Logo
Go to: Gentoo Home Documentation Forums Lists Bugs Planet Store Wiki Get Gentoo!

Bug 313475

Summary: mail-filter/ask: Verify and potentially improve Python-related code
Product: Gentoo Linux Reporter: Arfrever Frehtes Taifersar Arahesis (RETIRED) <arfrever>
Component: Current packagesAssignee: Net-Mail Packages <net-mail+disabled>
Severity: normal CC: idella4
Priority: High    
Version: unspecified   
Hardware: All   
OS: All   
Package list:
Runtime testing required: ---
Bug Depends on:    
Bug Blocks: 308257    
Attachments: ebuild patch
revised ebuild patch

Description Arfrever Frehtes Taifersar Arahesis (RETIRED) gentoo-dev 2010-04-06 17:19:14 UTC
- 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

  - 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.
Comment 1 Ian Delaney (RETIRED) gentoo-dev 2011-11-28 05:33:16 UTC
Created attachment 294029 [details, diff]
ebuild patch
Comment 2 Arfrever Frehtes Taifersar Arahesis 2011-11-28 19:14:49 UTC
(In reply to comment #1)

Delete dev-lang/python from RDEPEND.

src_install() {
	python_convert_shebangs -r 2 "${ED}"

pkg_postinst() {
	python_mod_optimize /usr/$(get_libdir)/ask

pkg_postrm() {
	python_mod_cleanup /usr/$(get_libdir)/ask
Comment 3 Ian Delaney (RETIRED) gentoo-dev 2011-11-29 08:12:11 UTC
I don't know what's going on here.  Your recommended line draws
 * ERROR: mail-filter/ask-2.5.3 failed (install phase):
 *   python_convert_shebangs(): '' does not exist

python_convert_shebangs 2 "${ED}"/usr/bin/asksetup draws;

* Converting shebang in '/usr/bin/askfilter'
ACCESS DENIED  rename:       /usr/bin/sedR8Hih9

python_convert_shebangs -r 2 . works (draws); 

* Converting shebang in 'askfilter'
 * Converting shebang in 'asksetup'
 * Converting shebang in 'utils/asksenders'
 * Converting shebang in ''
 * Converting shebang in ''
Must be to do with where the location dir is at at that point.  as much As I can do for now.
Comment 4 Arfrever Frehtes Taifersar Arahesis 2011-11-30 22:01:44 UTC
(In reply to comment #3)

${ED} is available in src_install() in EAPI >=3. In earlier EAPIs, ${D} should be used.
Comment 5 Ian Delaney (RETIRED) gentoo-dev 2011-11-30 23:31:40 UTC
Created attachment 294397 [details, diff]
revised ebuild patch

Arfrever, you were right ofcourse.  Found that confusion came from an accidental EAP="4" from the last session.  Little wonder!
Comment 6 Arfrever Frehtes Taifersar Arahesis 2011-12-04 00:05:20 UTC
(In reply to comment #5)

Comment 7 Pacho Ramos gentoo-dev 2015-10-03 09:28:25 UTC
This approach was changed by the -r1 python eclasses