re-running snapcraft when override-build dirty fails complaining about pip
Metadata
Current evaluation
Closed as stale. The python plugin has changed significantly since the report, rendering the original pip issue obsolete. A snapcraft clean workaround was noted, but no direct fix was applied.
Suggested action: —
No scores available.
Issue body
Filing on behalf of a user.
$ snapcraft --shell-after
Launching a VM.
Skipping pull copy-stuff (already ran)
Skipping pull desktop-gtk3 (already ran)
Skipping pull rubber-band-async (already ran)
Skipping build copy-stuff (already ran)
Skipping build desktop-gtk3 (already ran)
Copying needed target link from the system /lib/x86_64-linux-gnu/liblzma.so.5.2.2
Copying needed target link from the system /lib/x86_64-linux-gnu/libpcre.so.3.13.3
Cleaning later steps and re-building rubber-band-async ('override-build' property changed)
/root/parts/rubber-band-async/install/usr/bin/python3: No module named pip
Failed to run '/root/parts/rubber-band-async/install/usr/bin/python3 -m pip wheel --no-index --find-links /root/parts/rubber-band-async/python-packages --wheel-dir /tmp/tmpytyegx1n --requirement /root/project/requirements-linux.txt https://extras.wxpython.org/wxPython4/extras/linux/gtk3/ubuntu-18.04/wxPython-4.0.4-cp36-cp36m-linux_x86_64.whl': Exited with code 1.
Run the same command again with --debug to shell into the environment if you wish to introspect this failure.
An error occurred when trying to execute 'sudo -i env SNAPCRAFT_HAS_TTY=True snapcraft snap' with 'multipass': returned exit code 2.
I would think this user error if not for the fact that pip comes from the plugin itself, so on first inspection it looks like snapcraft is cleaning the pip installation but not reinstalling it prior to running again.
Here's the snapcraft.yaml:
name: rubber-band-async # you probably want to 'snapcraft register <name>'
version: '0.1' # just for humans, typically '1.2+git' or '1.3.2'
summary: Rubberband wxPython app with wxasync clock # 79 char long summary
description: |
...
grade: devel # must be 'stable' to release into candidate/stable channels
confinement: strict # use 'strict' once you have the right plugs and slots
base: core18
apps:
rubber-band-async:
command: desktop-launch python3 $SNAP/rubber_band_async.py
plugs: [x11, unity7, pulseaudio, home, gsettings, network]
environment:
LD_LIBRARY_PATH: $LD_LIBRARY_PATH:$SNAP/usr/lib/x86_64-linux-gnu/pulseaudio
python:
command: usr/bin/python -vvv
python3:
command: usr/bin/python3 -vvv
python-nopath:
command: python -vvv
python3-nopath:
command: python3 -vvv
report:
command: python3 $SNAP/report_snap_env.py
report-hack:
command: python3 $SNAP/report_snap_env.py
environment:
PATH: $PATH:$SNAP/bin/
PYTHONPATH: $PYTHONPATH:$SNAP/lib/python3.6/site-packages
parts:
desktop-gtk3:
build-packages:
- build-essential
- libgtk-3-dev
make-parameters:
- FLAVOR=gtk3
plugin: make
source: https://github.com/ubuntu/snapcraft-desktop-helpers.git
source-subdir: gtk
stage-packages:
- libxkbcommon0
- ttf-ubuntu-font-family
- dmz-cursor-theme
- light-themes
- adwaita-icon-theme
- gnome-themes-standard
- shared-mime-info
- libgtk-3-0
- libgdk-pixbuf2.0-0
- libglib2.0-bin
- libgtk-3-bin
- unity-gtk3-module
- libappindicator3-1
- locales-all
- xdg-user-dirs
- ibus-gtk3
- libibus-1.0-5
- fcitx-frontend-gtk3
copy-stuff:
plugin: dump
source: .
rubber-band-async:
# See 'snapcraft plugins'
plugin: python
python-version: python3
source: .
stage-packages:
# - libc6
- libssl-dev
- libjpeg-dev
- libtiff-dev
- libsdl1.2-dev
- libnotify-dev
- freeglut3
- ibus-gtk3
- libwebkitgtk-3.0-0
- zlib1g
- libsm6
- libpulse0
- libslang2
#after: [desktop-gtk3]
python-packages:
#- https://extras.wxpython.org/wxPython4/extras/linux/gtk3/ubuntu-18.04/wxPython-4.0.4-cp37-cp37m-linux_x86_64.whl
- https://extras.wxpython.org/wxPython4/extras/linux/gtk3/ubuntu-18.04/wxPython-4.0.4-cp36-cp36m-linux_x86_64.whl
requirements:
- /root/project/requirements-linux.txt
Evaluation history
| Date | Model | Scores | Action | Summary |
|---|---|---|---|---|
| qwen/qwen3.6-35b-a3b | — | — | Closed as stale. The python plugin has changed significantly since the report, rendering the original pip issue obsolete. A snapcraft clean workaround was noted, but no direct fix was applied. | |
| qwen/qwen3.6-35b-a3b |
Staleness:
95
Complexity:
45
Confidence:
90
Support Request:
15
|
close stale | Snapcraft python plugin fails with missing pip when rebuilding after a dirty override-build. Issue is 7+ years old, uses deprecated core18 base, and has zero maintainer interaction. | |
| qwen/qwen3.6-35b-a3b |
Staleness:
98
Complexity:
45
Confidence:
90
Support Request:
15
|
close stale | Snapcraft fails with missing pip module when re-running after a dirty override-build. Issue is 7+ years old, has no comments, and uses the deprecated core18 base. | |
| qwen3.6-35b-a3b-mtp-q6 |
Staleness:
98
Complexity:
45
Confidence:
90
Support Request:
20
|
close stale | Issue reports snapcraft python plugin failing with No module named pip when re-running after modifying override-build. Unaddressed for over 7 years, uses deprecated core18 base. | |
| qwen3.6-35b-a3b-mtp-q6 |
Staleness:
98
Complexity:
60
Confidence:
90
Support Request:
20
|
close stale | Fails with 'No module named pip' when re-running snapcraft after modifying override-build. Issue is 7+ years old, uses deprecated core18 base, and has seen no maintainer response. |
Update history
No update history recorded yet.
Related issues
| Issue | Project | State | Summary | Similarity |
|---|---|---|---|---|
| #1799925 snapcraft gives conflicting advice for cleaning parts | snapcraft (launchpad) | closed | Closed without a fix. Snapcraft incorrectly advised running snapcraft clean with part and step flags, which were unsupported. The author worked around it with a full clean. The report appears abandoned or superseded by later updates. | |
| #4575 The lpci snap build errors out when using snapcraft 8.x but works fine with 7.x | snapcraft | closed | Snapcraft 8.x build failures due to a pip version conflict were reported. A maintainer suggested removing python3-pip from stage-packages, but the reporter did not respond. The report was closed as stale without a fix or merge. | |
| #1973197 snapcraft 7.x not running override-build | snapcraft (launchpad) | closed | snapcraft 7.x failing to execute override-build was closed without a fix or resolution. Zero comments were posted, indicating the report was abandoned. | |
| #1615060 snapcraft clean is incomplete | snapcraft (launchpad) | closed | Reporting that snapcraft clean skips local .snap files was closed without comments or resolution, indicating the report was abandoned or left unresolved. | |
| #1911062 core18 built python snap not usable from override-build snippet in another snap's snapcraft.yaml | snapcraft (launchpad) | closed | Closed as stale. The core18 Python snap path resolution bug in override-build was superseded by substantial changes in newer Python plugin versions, rendering the reported sitecustomize.py behavior obsolete. | |
| #1882124 snapcraft does not properly surface an error message during the pip presence checking on the second and subsequent runs | snapcraft (launchpad) | open | Snapcraft's pip presence check swallows the real exception (ModuleNotFoundError: distutils.util) on second/subsequent runs, showing only 'Exited with code 1'. Legacy plugin code, Python 3.6 era, untriaged and inactive ~6 years. |