• Python installation paths

    From Alec Leamas@21:1/5 to All on Thu Jun 2 19:30:01 2022
    Dear list,

    I try handle a package which installs a partly compiled,
    architecture-dependent python module. Until now this has been done in /usr/lib/triplet/python3.10/site-packages. This scheme has basically
    worked fine.

    However, here is an Ubuntu bug [1] where a user runs into problems
    because this installation path is not in sys.path by default.

    I have been trying to look in the python policy docs, but cannot find
    the exact way to install code like this, in the policy [2]
    parlance an "extension module".

    Any thoughts out there?

    Cheers!
    --alec






    [1] https://bugs.launchpad.net/ubuntu/+source/lirc/+bug/1843988
    [2] https://www.debian.org/doc/packaging-manuals/python-policy/

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Andrey Rahmatullin@21:1/5 to Alec Leamas on Thu Jun 2 20:20:01 2022
    On Thu, Jun 02, 2022 at 07:19:56PM +0200, Alec Leamas wrote:
    Dear list,

    I try handle a package which installs a partly compiled, architecture-dependent python module. Until now this has been done in /usr/lib/triplet/python3.10/site-packages. This scheme has basically worked fine.

    However, here is an Ubuntu bug [1] where a user runs into problems because this installation path is not in sys.path by default.

    I have been trying to look in the python policy docs, but cannot find the exact way to install code like this, in the policy [2]
    parlance an "extension module".
    Not sure where is this documented but you can easily check on your system.
    It should be /usr/lib/python3/dist-packages/*.cpython-3*-x86_64-linux-gnu.so


    --
    WBR, wRAR

    -----BEGIN PGP SIGNATURE-----

    iQJhBAABCgBLFiEEolIP6gqGcKZh3YxVM2L3AxpJkuEFAmKY/pEtFIAAAAAAFQAP cGthLWFkZHJlc3NAZ251cGcub3Jnd3JhckBkZWJpYW4ub3JnAAoJEDNi9wMaSZLh Q/UP/0Zfu+WFC66MmXSbTB7i/NApgQFbd2wE1w3NyglUH4wvjgTgQUNbbTRrjk1L 71+iPZrG0w+qeZ1cG2xvD1DTPRtup5HxqMhkrkGPjrCnqTLABKhqFftGwuNtBYva KbGXzXl41LQ/2rOtKrYMGKodF7yD1H9sYJmYZbGcQs77TmfeloeXgB4lhF3rDqkt Q0g1CvTmxjSN6Mfw7DFq06PRvO15fxFhJDNymbLFpQoJLa+woFqhHsNAcIE5qcnE Soltq8c/YKj48abcALnTWc72AGpbu+dqCRmRk8RS/DtwoOFL3PdOq/zg7C70o/3A EeNrVUkBQ9ovxOiDMy32sZwcYHoCTetUSvFCFcCOB7zHHE9NBh2oqQJuJpE01w8d KcZWeWmwxJukp1piuFOYzht5UjF9ieME7MVDjX3FJRQ/yDm8+DrxwN1oTM1DujmN O366ZBlG+tlZTsb95Hl4vpj+q5en0IlxztjZGqYLWdBTBY3pUZ7vpyjc3zaH2z4N INdRmKY5WV86vfEtpHLPI2KRMXLtaURmyO8QiabkQHaYo0SEmJzKJSMzaawdapAF cYZ5O3LuSVt0jjF2ebEpfRbrYUExv0ZIiVRYyU07f9Hz6WO4OWdNVyG4zal8XZzA HV1nLgPbh//80LI08tijAIanbD9JTpS0u0j7Uh/fteos83bB
    =Zo08
    -----END PGP SIGNATURE-----

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Richard Laager@21:1/5 to All on Thu Jun 2 21:40:02 2022
    This is an OpenPGP/MIME signed message (RFC 4880 and 3156) --------------tzshuwwj0IZb5bA3Kq7Six1K
    Content-Type: text/plain; charset=UTF-8; format=flowed Content-Transfer-Encoding: base64

    T24gNi8yLzIyIDE0OjE1LCBBbGVjIExlYW1hcyB3cm90ZToNCj4gSGkgQXVkcmV5DQo+IA0K PiBPbiAwMi8wNi8yMDIyIDIwOjE2LCBBbmRyZXkgUmFobWF0dWxsaW4gd3JvdGU6DQo+PiBP biBUaHUsIEp1biAwMiwgMjAyMiBhdCAwNzoxOTo1NlBNICswMjAwLCBBbGVjIExlYW1hcyB3 cm90ZToNCj4+PiBEZWFyIGxpc3QsDQo+Pj4NCj4+PiBJIHRyeSBoYW5kbGUgYSBwYWNrYWdl IHdoaWNoIGluc3RhbGxzIGEgcGFydGx5IGNvbXBpbGVkLA0KPj4+IGFyY2hpdGVjdHVyZS1k ZXBlbmRlbnQgcHl0aG9uIG1vZHVsZS4gVW50aWwgbm93wqAgdGhpcyBoYXMgYmVlbiBkb25l IGluDQo+Pj4gL3Vzci9saWIvdHJpcGxldC9weXRob24zLjEwL3NpdGUtcGFja2FnZXMuIFRo aXMgc2NoZW1lIGhhcyBiYXNpY2FsbHkgDQo+Pj4gd29ya2VkDQo+Pj4gZmluZS4NCj4+Pg0K Pj4+IEhvd2V2ZXIsIGhlcmUgaXMgYW4gVWJ1bnR1IGJ1ZyBbMV0gd2hlcmUgYSB1c2VyIHJ1 bnMgaW50byBwcm9ibGVtcyANCj4+PiBiZWNhdXNlDQo+Pj4gdGhpcyBpbnN0YWxsYXRpb24g cGF0aCBpcyBub3QgaW4gc3lzLnBhdGggYnkgZGVmYXVsdC4NCj4+Pg0KPj4+IEkgaGF2ZSBi ZWVuIHRyeWluZyB0byBsb29rIGluIHRoZSBweXRob24gcG9saWN5IGRvY3MsIGJ1dCBjYW5u b3QgZmluZCANCj4+PiB0aGUNCj4+PiBleGFjdCB3YXkgdG8gaW5zdGFsbCBjb2RlIGxpa2Ug dGhpcywgaW4gdGhlIHBvbGljeSBbMl0NCj4+PiBwYXJsYW5jZSBhbiAiZXh0ZW5zaW9uIG1v ZHVsZSIuDQo+PiBOb3Qgc3VyZSB3aGVyZSBpcyB0aGlzIGRvY3VtZW50ZWQgYnV0IHlvdSBj YW4gZWFzaWx5IGNoZWNrIG9uIHlvdXIgDQo+PiBzeXN0ZW0uDQo+PiBJdCBzaG91bGQgYmUg DQo+PiAvdXNyL2xpYi9weXRob24zL2Rpc3QtcGFja2FnZXMvKi5jcHl0aG9uLTMqLXg4Nl82 NC1saW51eC1nbnUuc28NCj4gDQo+IA0KPiBIbS4uLnRoaXMgaXMgbm90IHdoYXQgSSBoYXZl LiBEaWQgSSBnZXQgZ2V0IHRoZSB0ZXJtICJFeHRlbnNpb24gbW9kdWxlIiANCj4gd3Jvbmc/ DQoNClRoZXJlIGFyZSBhIGNvdXBsZSBkaWZmZXJlbnQgd2F5cyB0byBkbyBQeXRob24gdG8g Qy4gSSB0aGluayB0aGUgdGVybXMgDQphcmUgQ0ZGSSAob3IgRkZJIG9yIGN0eXBlcywgbWF5 YmUgc29tZSBvZiB0aG9zZSBhcmUgZGlmZmVyZW50IHRob3VnaD8pIA0KdnMgQ1B5dGhvbiBl eHRlbnNpb24sIGJ1dCBJJ20gbm90IDEwMCUgY2VydGFpbiBvZiB0aGF0Lg0KDQpJIG1haW50 YWluIHRoZSBudHBzZWMgcGFja2FnZS4gSUlSQywgdXBzdHJlYW0gaXMgdHJhbnNpdGlvbmlu ZyAoYnV0IEkgDQp0aGluayBzdGlsbCBzdXBwb3J0cyBib3RoIGF0IHRoZSBtb21lbnQpLg0K DQpPbiBhbiBvbGRlciB2ZXJzaW9uLCBJIGhhZCB0aGlzIChmcm9tIHRoZSBweXRob24zLW50 cCBiaW5hcnkgcGFja2FnZSk6DQoNCi91c3IvbGliL3B5dGhvbjMvZGlzdC1wYWNrYWdlcy9u dHANCi91c3IvbGliL3B5dGhvbjMvZGlzdC1wYWNrYWdlcy9udHAvX19pbml0X18ucHkNCihv dGhlciAucHkgZmlsZXMgb21pdHRlZCkNCi91c3IvbGliL3B5dGhvbjMvZGlzdC1wYWNrYWdl cy9udHAvbnRwYy5jcHl0aG9uLTM4LXg4Nl82NC1saW51eC1nbnUuc28NCg0KSSBiZWxpZXZl IHRoYXQgaXMgdGhlIGV4dGVuc2lvbiBhcHByb2FjaC4gSSB0aGluayB0aGUgd2F5IHRoaXMg d29ya3MgaXMgDQp0aGF0IGlmIHlvdSBpbXBvcnQgbnRwYywgaXQgaW1wb3J0cyB0aGUgLnNv LiBOb3RlIHRoYXQgdGhlcmUgaXMgbm8gbnRwYy5weS4NCg0KT24gbmV3ZXIgcHl0aG9uMy1u dHAsIHVzaW5nIHRoZSBGRkkgYXBwcm9hY2gsIEkgaGF2ZSB0aGlzOg0KDQovdXNyL2xpYi9w eXRob24zL2Rpc3QtcGFja2FnZXMvbnRwL19faW5pdF9fLnB5DQovdXNyL2xpYi9weXRob24z L2Rpc3QtcGFja2FnZXMvbnRwL250cGMucHkNCihvdGhlciAucHkgZmlsZXMgb21pdHRlZCkN Ci91c3IvbGliL3g4Nl82NC1saW51eC1nbnUvbnRwL2xpYm50cGMuc28NCi91c3IvbGliL3g4 Nl82NC1saW51eC1nbnUvbnRwL2xpYm50cGMuc28uMQ0KL3Vzci9saWIveDg2XzY0LWxpbnV4 LWdudS9udHAvbGlibnRwYy5zby4xLjEuMA0KDQpJbiB0aGlzIGFwcHJvYWNoLCBudHBjLnB5 IGhhcyBleHBsaWNpdCBjb2RlIHRvIGxvYWQgbGlibnRwYy5zbyBmcm9tIA0KL3Vzci9saWIv eDg2XzY0LWxpbnV4LWdudS9udHAvICh0aGF0IHBhdGggYmVpbmcgc3Vic3QnZWQgaW4gdG8g bnRwYy5weSANCmJ5IHRoZSBidWlsZCBwcm9jZXNzKS4NCg0KSSBob3BlIHRoYXQgaGVscHMu DQoNCi0tIA0KUmljaGFyZA0K

    --------------tzshuwwj0IZb5bA3Kq7Six1K--

    -----BEGIN PGP SIGNATURE-----

    iQIzBAEBCgAdFiEE1Ot9lOeOTujs4H+U+HlhmcBFhs4FAmKZEAQACgkQ+HlhmcBF hs5ImQ//SKhvCGfmgT+lvSLb5ppJpMdt82UmAPbNHJb+waug7nLaZR9geIpvwmJi AnktCIMrY2wO5dXKADMzk9+ZgfjdtWpJIpp745zUS6+BBDLjKOztOs3CsXrb6zXH +ab3bZcGulZupIVFyE54zOC7QqfvYk7NN/Rua654DU9AFmUo07cPOPJGTIuRrJZ4 o5hmWxrEYdVW2kbBVOCi8YIAMLLSN5CkFF0n+IaABb1AdgqeyAWZC7xaHFoYONu1 7DGK1hfJPWycPaXqkZ+JGl3mUT1mBGLb16unGhULZSQ6W2ivhpNlVdPadhodgVRo Mb0psTVqwtqUdFqJEHRNKsiu0rP6QfiETCKFegVH+SAztz8tVAKbtgKGZ54VCLi9 CZTYY610FpGRLhApYUs7ObL7cnryq0jxpYk8BZ9bMAWNHmNhwkqHsdn23X16ITA4 olNoiWGKM8pJV2YNkOoYpXDETTHWkFJ0z+05XBWLyvFLKf1TpB/UF5S6iKOUJFFq Y6p2Wcar8QVizhgwIwi9wtJqrY0umDQzzMX0qYERR+Vor6M79KYM8/DmV/qoZARw 3BbKa0G/J9yFoP11tjx1M1hn5EgKDrFVSiS+k+bPhycn4s1SOXjm1xMMmaFiRrPo Ltg9LqMPxUaB1YZBDTDozoXm9YX7f5iCCtvWczf38M930XjlUHU=
    =l55g
    -----END PGP SIGNATURE-----

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Alec Leamas@21:1/5 to Andrey Rahmatullin on Thu Jun 2 21:20:01 2022
    Hi Audrey

    On 02/06/2022 20:16, Andrey Rahmatullin wrote:
    On Thu, Jun 02, 2022 at 07:19:56PM +0200, Alec Leamas wrote:
    Dear list,

    I try handle a package which installs a partly compiled,
    architecture-dependent python module. Until now this has been done in
    /usr/lib/triplet/python3.10/site-packages. This scheme has basically worked >> fine.

    However, here is an Ubuntu bug [1] where a user runs into problems because >> this installation path is not in sys.path by default.

    I have been trying to look in the python policy docs, but cannot find the
    exact way to install code like this, in the policy [2]
    parlance an "extension module".
    Not sure where is this documented but you can easily check on your system.
    It should be /usr/lib/python3/dist-packages/*.cpython-3*-x86_64-linux-gnu.so


    Hm...this is not what I have. Did I get get the term "Extension module"
    wrong?


    That aside, what I have is some python3 scripts and a compiled .so
    library invoked form the python code. The whole thing designed to be in
    the same directory. And the question is how this should be installed...

    Cheers!
    --aled

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From julien.puydt@gmail.com@21:1/5 to All on Thu Jun 2 21:40:02 2022
    Le jeudi 02 juin 2022 à 14:31 -0500, Richard Laager a écrit :

    There are a couple different ways to do Python to C. I think the
    terms are CFFI (or FFI or ctypes, maybe some of those are different
    though?) vs CPython extension, but I'm not 100% certain of that.

    May I suggest debian-python@lists.debian.org as a better venue to
    discuss packaging Python software for Debian ?

    Cheers,

    J.Puydt

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)
  • From Andrey Rahmatullin@21:1/5 to Alec Leamas on Thu Jun 2 23:10:01 2022
    On Thu, Jun 02, 2022 at 09:15:40PM +0200, Alec Leamas wrote:
    I try handle a package which installs a partly compiled, architecture-dependent python module. Until now this has been done in /usr/lib/triplet/python3.10/site-packages. This scheme has basically worked
    fine.

    However, here is an Ubuntu bug [1] where a user runs into problems because
    this installation path is not in sys.path by default.

    I have been trying to look in the python policy docs, but cannot find the exact way to install code like this, in the policy [2]
    parlance an "extension module".
    Not sure where is this documented but you can easily check on your system. It should be /usr/lib/python3/dist-packages/*.cpython-3*-x86_64-linux-gnu.so


    Hm...this is not what I have. Did I get get the term "Extension module" wrong?
    Well, we don't know what do you have.
    Extension modules are ones you import.

    That aside, what I have is some python3 scripts and a compiled .so library invoked form the python code. The whole thing designed to be in the same directory. And the question is how this should be installed...
    Invoked how?

    --
    WBR, wRAR

    -----BEGIN PGP SIGNATURE-----

    iQJhBAABCgBLFiEEolIP6gqGcKZh3YxVM2L3AxpJkuEFAmKZJMQtFIAAAAAAFQAP cGthLWFkZHJlc3NAZ251cGcub3Jnd3JhckBkZWJpYW4ub3JnAAoJEDNi9wMaSZLh Wx0P/RFY3ct0uwdo+KNvroJBdeLMnSuw0mjzU1MPHHV1ZC3BWk+7QmOPrHjFMExG gGkb2abHVqlxO65Ujn5FAwUwTYWEMONvV6BXbiQBIPHW02kdG8GTBgxlEey3yZNk rdTxLNpyJwKoxOHD0JdGbg6EC0C+oWr1961SSQNbnVrEPwHZBwK50rHZ0hsQFMjU n/i42Fxu/saFmSQ9pnmKw0ett4uyUYCH1cRy5mU/akgSGEmLqKTodd9Xq26IXr1b BFI/pQdtBHlOjP8YULva6BHqH2hMfp5x6VMVEZ3DaaTLFxxeo0fmWb3b/RrTindf Dw3Y/nlIWhB5wxw0WOBE1EYwvwc3KH2LhtRA0NcmTfuOuMKliTt2mrock3QUk9Tn b7Ne9XeVUn51YHt8du6QngZf6CjVKV0jVtBybSYu239r2xoyLZj623+Xs/XmHC0y 18LBHRjDny9dTe/0RZ7wzKr8HWlB3YDBWXHdrpsVjbTSHf5/Ni/7hRoIyPmB10Lh tG13tl78gUInrh427s658kY3CoCHyrBbtDKqF/wD5KxCVKeonpcXv2sP0LdeG80a p9TJyvDE+ifSN0acIb6Ynor/pUzMlBd1GqP/c+Bh4F/QskO8SQQRzl8b8Wxzp6K/ 6K0W9XGI/WIvGH1/mzg/5u/rf64I6qmTgtFkhpLmudrf1xwn
    =0PN+
    -----END PGP SIGNATURE-----

    --- SoupGate-Win32 v1.05
    * Origin: fsxNet Usenet Gateway (21:1/5)