[4.0.4][strict] usage of the python plugin forces the python3 interpreter to be shipped in the snap
Affects | Status | Importance | Assigned to | Milestone | |
---|---|---|---|---|---|
Snapcraft |
Expired
|
Undecided
|
Unassigned |
Bug Description
The python plugin uses the following command to set up a venv in the installation directory:
https:/
${SNAPCRAFT_
This forces python3 to be copied into the snap without any explicit configuration:
snapcraft-
File: parts/openstack
Size: 23 Blocks: 0 IO Block: 4096 symbolic link
Device: 10fc80h/1113216d Inode: 7210747 Links: 1
Access: (0777/lrwxrwxrwx) Uid: ( 0/ root) Gid: ( 0/ root)
Access: 2020-06-10 17:27:10.515782934 +0000
Modify: 2020-06-10 17:27:10.511782914 +0000
Change: 2020-06-10 17:27:10.511782914 +0000
Birth: -
snapcraft-
snapcraft-
snapcraft-
File: parts/openstack
Size: 23 Blocks: 0 IO Block: 4096 symbolic link
Device: 10fc80h/1113216d Inode: 7210747 Links: 1
Access: (0777/lrwxrwxrwx) Uid: ( 0/ root) Gid: ( 0/ root)
Access: 2020-06-10 17:27:28.487873571 +0000
Modify: 2020-06-10 17:27:28.483873551 +0000
Change: 2020-06-10 17:27:28.483873551 +0000
Birth: -
Meanwhile, I would like to avoid this and the one shipped with core20.
And at runtime the lack of that leads to subtle failures like this:
# a shell in the snap environment:
# sha256sum /usr/bin/python3.8
3fe2b9781ccb82b
# sha256sum /snap/microstac
3fe2b9781ccb82b
# python3.8
Python 3.8.2 (default, Apr 27 2020, 15:53:34)
[GCC 9.3.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import keystone
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ModuleNotFoundE
>>> import sys
>>> sys.path
['', '/usr/lib/
# python3
Python 3.8.2 (default, Apr 27 2020, 15:53:34)
[GCC 9.3.0] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>> import keystone
>>> import sys
>>> sys.path
['', '/usr/lib/
# outside the confined environment:
$ sha256sum /snap/core20/
3fe2b9781ccb82b
$ sha256sum /snap/core20/
3fe2b9781ccb82b
$ sha256sum /snap/microstac
05d75e4d16006f7
description: | updated |
We had a symlink issue in the past which caused *cyclic symlinking farm* that has since been solved, is this still an issue today?