Unable to build usable Python snaps which use Ubuntu-provided python3-* dependencies using strict confinement with core24 using snapcraft 8.8.0 (8.x/stable)
Metadata
Current evaluation
Closed as completed. The author applied a PYTHONPATH workaround in snapcraft.yaml to access staged packages. Maintainers declined a code fix, marking the issue as a reference for a future Python plugin rewrite.
Suggested action: —
No scores available.
Issue body
### Bug Description
**Summary: If I want to use Ubuntu's python3-* packages for Python dependencies rather than pulling them via pip, it presently does not appear to work with the snapcraft Python plugin, even with PARTS_PYTHON_VENV_ARGS=--system-site-packages specified.**
I am unsure if this is truly an issue with strict confinement, or perhaps with the Python plugin. I can't test this with classic confinement because there I hit a different bug: #5407.
With strict confinement, I am able to build the snap. However, the built snap's library is unable to import from the python3-* packages; I suspect it only works with dependencies pulled via pip right now.
The closest I've managed to get is to install the needed libraries via stage-packages and to add ```--system-site-packages``` via the PARTS_PYTHON_VENV_ARGS environment variable. This indeed builds a snap, and the libraries are installed to /snap/sscce/x1/usr/lib/python3/dist-packages/. However, the venv pulls from /usr/lib/python3/dist-packages, a different dist-packages directory which I suspect comes from the Python provided by the core24 snap, and which does not contain the packages I staged.
Using ```python3 -m site``` I can compare the builds with ```--system-site-packages``` set or not. The only difference I see is that if ```--system-site-packages``` is set, /usr/lib/python3/dist-packages is included in sys.path; if not, it is not. In neither case is /snap/sscce/x1/usr/lib/python3/dist-packages/ included.
Whether this is a problem with strict confinement and/or the Python plugin (or perhaps it's a user education issue?), I'm hoping someone can take a look at this. While I likely could just avoid this problem by using pip packages, for security reasons I would prefer to use the packages from the Ubuntu repository.
### To Reproduce
To reproduce this bug, perform the following:
```
git clone https://github.com/Vultaire/python_snap_build_errors_sscce
cd python_snap_build_errors_sscce
git checkout strict-confinement-build
snapcraft
```
### Environment
Host system: Ubuntu 24.04 noble
Snap info: snapcraft on channel 8.x/stable, currently version 8.8.0, revision 14167.
### snapcraft.yaml
```yaml
name: sscce
summary: A short, self-contained complete example of a Python snap build
description: |
sscce is a short, self-contained complete example of a Python snap build.
version: test
base: core24
confinement: strict
parts:
sscce:
plugin: python
source: .
# Intent of the following: to depend on Ubuntu-provided Python packages
# to reduce the chance of supply chain attacks.
stage-packages:
- python3-minimal
- python3-typer
# Since a venv is created, this intuitively seems like it should allow
# us access to the Python packages staged above - but it alone is
# inadequate.
build-environment:
- PARTS_PYTHON_VENV_ARGS: "--system-site-packages"
apps:
sscce:
command: bin/sscce
plugs: []
```
### Relevant log output
```shell
NOTE: The snap does build. The problem is running it.
"snapcraft --verbose" output:
======================================================================
paul-goins@pdg-thinkpad:~/meh/python_snap_build_errors_sscce$ snapcraft --verbose
Starting snapcraft, version 8.8.0
Logging execution to '/home/paul-goins/.local/state/snapcraft/log/snapcraft-20250415-151922.707818.log'
Launching managed ubuntu 24.04 instance...
Creating instance from base instance
Starting instance
Starting snapcraft, version 8.8.0
Logging execution to '/tmp/snapcraft.log'
Initialising lifecycle
Installing build-packages
Installing build-snaps
Pulling sscce
Fetching stage-packages
Downloading package: python3-colorama/snap/snapcraft/14167/lib/python3.12/site-packages/apt/package.py:810: Warning: W:Download is performed unsandboxed as root as file '/root/.cache/snapcraft/download/python3-colorama_0.4.6-4_all.deb' couldn't be accessed by user '_apt'. - pkgAcquire::Run (13: Permission denied)
acq.run()
Downloading package: python3-minimal
Downloading package: python3-typing-extensions
Downloading package: python3-typer
Downloading package: python3-click
Extracting stage package: python3-colorama
Extracting stage package: python3-minimal
Extracting stage package: python3-typing-extensions
Extracting stage package: python3-typer
Extracting stage package: python3-click
Building sscce
:: + python3 -m venv --system-site-packages /root/parts/sscce/install
:: + PARTS_PYTHON_VENV_INTERP_PATH=/root/parts/sscce/install/bin/python3
:: + /root/parts/sscce/install/bin/pip install -U pip setuptools wheel
:: Requirement already satisfied: pip in /root/parts/sscce/install/lib/python3.12/site-packages (24.0)
:: Collecting pip
:: Downloading pip-25.0.1-py3-none-any.whl.metadata (3.7 kB)
:: Requirement already satisfied: setuptools in /usr/lib/python3/dist-packages (68.1.2)
:: Collecting setuptools
:: Downloading setuptools-78.1.0-py3-none-any.whl.metadata (6.6 kB)
:: Requirement already satisfied: wheel in /usr/lib/python3/dist-packages (0.42.0)
:: Collecting wheel
:: Downloading wheel-0.45.1-py3-none-any.whl.metadata (2.3 kB)
:: Downloading pip-25.0.1-py3-none-any.whl (1.8 MB)
:: ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 1.8/1.8 MB 40.1 MB/s eta 0:00:00
:: Downloading setuptools-78.1.0-py3-none-any.whl (1.3 MB)
:: ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 1.3/1.3 MB 44.6 MB/s eta 0:00:00
:: Downloading wheel-0.45.1-py3-none-any.whl (72 kB)
:: ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 72.5/72.5 kB 5.2 MB/s eta 0:00:00
:: Installing collected packages: wheel, setuptools, pip
:: Attempting uninstall: wheel
:: Found existing installation: wheel 0.42.0
:: Not uninstalling wheel at /usr/lib/python3/dist-packages, outside environment /root/parts/sscce/install
:: Can't uninstall 'wheel'. No files were found to uninstall.
:: Attempting uninstall: setuptools
:: Found existing installation: setuptools 68.1.2
:: Not uninstalling setuptools at /usr/lib/python3/dist-packages, outside environment /root/parts/sscce/install
:: Can't uninstall 'setuptools'. No files were found to uninstall.
:: Attempting uninstall: pip
:: Found existing installation: pip 24.0
:: Uninstalling pip-24.0:
:: Successfully uninstalled pip-24.0
:: Successfully installed pip-25.0.1 setuptools-78.1.0 wheel-0.45.1
:: + '[' -f setup.py ']'
:: + '[' -f pyproject.toml ']'
:: + /root/parts/sscce/install/bin/pip install -U .
:: Processing /root/parts/sscce/build
:: Installing build dependencies: started
:: Installing build dependencies: finished with status 'done'
:: Getting requirements to build wheel: started
:: Getting requirements to build wheel: finished with status 'done'
:: Preparing metadata (pyproject.toml): started
:: Preparing metadata (pyproject.toml): finished with status 'done'
:: Building wheels for collected packages: sscce
:: Building wheel for sscce (pyproject.toml): started
:: Building wheel for sscce (pyproject.toml): finished with status 'done'
:: Created wheel for sscce: filename=sscce-0.1.dev1-py3-none-any.whl size=1480 sha256=c92267e741087b1207e9cc79e52ef55c2de25d71cf834afb51485812ba87df5c
:: Stored in directory: /tmp/pip-ephem-wheel-cache-l7lm2ezl/wheels/df/e4/d1/957c6de665050650792ec2668b4f7128c7ba0596475cb9a687
:: Successfully built sscce
:: Installing collected packages: sscce
:: Successfully installed sscce-0.1.dev1
:: + find /root/parts/sscce/install -type f -executable -print0
:: + xargs --no-run-if-empty -0 sed -i '1 s|^#\!/root/parts/sscce/install/bin/python3.*$|#!/usr/bin/env python3|'
:: ++ set +o
:: ++ grep errexit
:: + opts_state='set +o errexit'
:: + set +e
:: + install_dir=/root/parts/sscce/install/usr/bin
:: + stage_dir=/root/stage/usr/bin
:: +++ readlink -f /root/parts/sscce/install/bin/python3
:: ++ basename /usr/bin/python3.12
:: + basename=python3.12
:: + echo Looking for a Python interpreter called '"python3.12"' in the payload...
:: Looking for a Python interpreter called "python3.12" in the payload...
:: ++ find /root/parts/sscce/install/usr/bin /root/stage/usr/bin -type f -executable -name python3.12 -print -quit
:: ++ true
:: + payload_python=
:: + '[' -n '' ']'
:: + echo 'Python interpreter not found in payload.'
:: Python interpreter not found in payload.
:: + symlink_target=/usr/bin/python3.12
:: + '[' -z /usr/bin/python3.12 ']'
:: + eval 'set +o errexit'
:: ++ set +o errexit
:: + ln -sf /usr/bin/python3.12 /root/parts/sscce/install/bin/python3
Staging sscce
Priming sscce
Packing...
Reading snap metadata...
Running linters...
Running linter: classic
Running linter: library
Creating snap package...
Packed sscce_test_amd64.snap
======================================================================
And, here is the traceback which the script generates when I try to run it, since it cannot find the python3-* libraries that I staged, even with "--system-site-packages" used when creating the venv:
======================================================================
(venv) paul-goins@pdg-thinkpad:~/meh/python_snap_build_errors_sscce$ sscce
Traceback (most recent call last):
File "/snap/sscce/x1/bin/sscce", line 5, in <module>
from sscce.main import main
File "/snap/sscce/x1/lib/python3.12/site-packages/sscce/main.py", line 1, in <module>
import typer
ModuleNotFoundError: No module named 'typer'
======================================================================
Finally, here is the content of /home/paul-goins/.local/state/snapcraft/log/snapcraft-20250415-151922.707818.log:
======================================================================
2025-04-15 15:19:22.708 Starting snapcraft, version 8.8.0
2025-04-15 15:19:22.708 Log verbosity level set to BRIEF
2025-04-15 15:19:22.712 Preparing application...
2025-04-15 15:19:22.712 Merging commands for group 'Lifecycle':
2025-04-15 15:19:22.712 - using application command for 'clean'.
2025-04-15 15:19:22.712 - using application command for 'pull'.
2025-04-15 15:19:22.712 - using application command for 'build'.
2025-04-15 15:19:22.712 - using application command for 'stage'.
2025-04-15 15:19:22.712 - using application command for 'prime'.
2025-04-15 15:19:22.712 - using application command for 'pack'.
2025-04-15 15:19:22.712 Merging commands for group 'Other':
2025-04-15 15:19:22.712 Configuring application...
2025-04-15 15:19:22.713 Setting up ConfigService
2025-04-15 15:19:22.720 Build plan: platform=None, build_for=None
2025-04-15 15:19:22.720 Loading project file '/home/paul-goins/meh/python_snap_build_errors_sscce/snap/snapcraft.yaml'
2025-04-15 15:19:22.722 Using parallel build count of 12 from CPU count
2025-04-15 15:19:22.722 Processing grammar (on amd64 for amd64)
2025-04-15 15:19:22.722 Processing grammar for plugin: python
2025-04-15 15:19:22.722 Processing grammar for source: .
2025-04-15 15:19:22.722 Processing grammar for stage-packages: ['python3-minimal', 'python3-typer']
2025-04-15 15:19:22.722 Processing grammar for build-environment: [{'PARTS_PYTHON_VENV_ARGS': '--system-site-packages'}]
2025-04-15 15:19:22.723 Running snapcraft:amd64 in amd64 instance...
2025-04-15 15:19:22.723 Setting up Provider
2025-04-15 15:19:22.723 Setting snapcraft to be injected from the host into the build environment because it is running as a snap.
2025-04-15 15:19:22.723 Preparing managed instance 'snapcraft-sscce-amd64-56260417'
2025-04-15 15:19:22.724 Using hostname 'snapcraft-sscce-amd64-56260417'
2025-04-15 15:19:22.731 Retrieved snap config: {}
2025-04-15 15:19:22.731 Using default provider 'lxd' on linux system.
2025-04-15 15:19:22.734 Checking if LXD is installed.
2025-04-15 15:19:22.757 LXD snap status: active
2025-04-15 15:19:22.757 Checking if LXD is installed.
2025-04-15 15:19:22.780 LXD snap status: active
2025-04-15 15:19:22.838 Executing on host: lxc --project default profile show local:default
2025-04-15 15:19:22.880 Launching managed ubuntu 24.04 instance...
2025-04-15 15:19:22.880 Executing on host: lxc remote list --format=yaml
2025-04-15 15:19:22.918 Remote 'craft-com.ubuntu.cloud-buildd-daily' already exists.
2025-04-15 15:19:22.918 Executing on host: lxc project list local: --format=yaml
2025-04-15 15:19:22.968 Converted name 'snapcraft-sscce-amd64-56260417' to instance name 'snapcraft-sscce-amd64-56260417'
2025-04-15 15:19:22.968 Checking for instance 'snapcraft-sscce-amd64-56260417' in project 'snapcraft' in remote 'local'
2025-04-15 15:19:22.968 Executing on host: lxc --project snapcraft list local: --format=yaml
2025-04-15 15:19:23.031 Instance 'snapcraft-sscce-amd64-56260417' does not exist.
2025-04-15 15:19:23.031 Converted name 'base-instance-snapcraft-buildd-base-v7-craft-com.ubuntu.cloud-buildd-daily-core24' to instance name 'base-instance-snapcraft-buildd-base-v7-c-f91ee4af44ccdf02cefb'
2025-04-15 15:19:23.031 Checking for base instance 'base-instance-snapcraft-buildd-base-v7-c-f91ee4af44ccdf02cefb' in project 'snapcraft' in remote 'local'
2025-04-15 15:19:23.031 Executing on host: lxc --project snapcraft list local: --format=yaml
2025-04-15 15:19:23.098 Checking validity of instance 'base-instance-snapcraft-buildd-base-v7-c-f91ee4af44ccdf02cefb'.
2025-04-15 15:19:23.098 Executing on host: lxc --project snapcraft info local:base-instance-snapcraft-buildd-base-v7-c-f91ee4af44ccdf02cefb
2025-04-15 15:19:23.143 Executing on host: lxc --project snapcraft info local:base-instance-snapcraft-buildd-base-v7-c-f91ee4af44ccdf02cefb
2025-04-15 15:19:23.192 Executing on host: lxc --project snapcraft config get local:base-instance-snapcraft-buildd-base-v7-c-f91ee4af44ccdf02cefb user.craft_providers.status
2025-04-15 15:19:23.229 Instance 'base-instance-snapcraft-buildd-base-v7-c-f91ee4af44ccdf02cefb' is ready.
2025-04-15 15:19:23.229 Instance is valid.
2025-04-15 15:19:23.229 Creating instance from base instance
2025-04-15 15:19:23.229 Creating instance from base instance 'base-instance-snapcraft-buildd-base-v7-c-f91ee4af44ccdf02cefb'.
2025-04-15 15:19:23.229 Executing on host: lxc --project snapcraft list local: --format=yaml
2025-04-15 15:19:23.284 Executing on host: lxc --project snapcraft copy local:base-instance-snapcraft-buildd-base-v7-c-f91ee4af44ccdf02cefb local:snapcraft-sscce-amd64-56260417
2025-04-15 15:19:25.113 Executing on host: lxc --project snapcraft list local: --format=yaml
2025-04-15 15:19:25.177 Executing on host: lxc --project snapcraft config set local:snapcraft-sscce-amd64-56260417 raw.idmap 'both 1000 0'
2025-04-15 15:19:25.253 Executing on host: lxc --project snapcraft config get local:snapcraft-sscce-amd64-56260417 raw.idmap
2025-04-15 15:19:25.295 Got LXD idmap for instance 'snapcraft-sscce-amd64-56260417': 'both 1000 0'
2025-04-15 15:19:25.295 Starting instance
2025-04-15 15:19:25.295 Executing on host: lxc --project snapcraft start local:snapcraft-sscce-amd64-56260417
2025-04-15 15:19:25.559 Executing on host: lxc --project snapcraft list local: --format=yaml
2025-04-15 15:19:25.619 Executing on host: lxc --project snapcraft file push /tmp/tmp3lrc1pib local:snapcraft-sscce-amd64-56260417/etc/hostname --mode=0644
2025-04-15 15:19:25.672 Executing in container: lxc --project snapcraft exec local:snapcraft-sscce-amd64-56260417 -- env CRAFT_MANAGED_MODE=1 DEBIAN_FRONTEND=noninteractive DEBCONF_NONINTERACTIVE_SEEN=true DEBIAN_PRIORITY=critical chown root:root /etc/hostname
2025-04-15 15:19:25.768 Executing in container: lxc --project snapcraft exec local:snapcraft-sscce-amd64-56260417 -- env CRAFT_MANAGED_MODE=1 DEBIAN_FRONTEND=noninteractive DEBCONF_NONINTERACTIVE_SEEN=true DEBIAN_PRIORITY=critical hostname -F /etc/hostname
2025-04-15 15:19:25.899 Executing in container: lxc --project snapcraft exec local:snapcraft-sscce-amd64-56260417 -- env CRAFT_MANAGED_MODE=1 DEBIAN_FRONTEND=noninteractive DEBCONF_NONINTERACTIVE_SEEN=true DEBIAN_PRIORITY=critical test -f /etc/craft-instance.conf
2025-04-15 15:19:26.017 Executing on host: lxc --project snapcraft file pull local:snapcraft-sscce-amd64-56260417/etc/craft-instance.conf /home/paul-goins/tmpd5kx2ncf.tmp-craft/tmpph2x2_0h
2025-04-15 15:19:26.066 Instance has already been setup.
2025-04-15 15:19:26.066 Executing in container: lxc --project snapcraft exec local:snapcraft-sscce-amd64-56260417 -- env CRAFT_MANAGED_MODE=1 DEBIAN_FRONTEND=noninteractive DEBCONF_NONINTERACTIVE_SEEN=true DEBIAN_PRIORITY=critical cat /etc/os-release
2025-04-15 15:19:26.148 Executing in container: lxc --project snapcraft exec local:snapcraft-sscce-amd64-56260417 -- env CRAFT_MANAGED_MODE=1 DEBIAN_FRONTEND=noninteractive DEBCONF_NONINTERACTIVE_SEEN=true DEBIAN_PRIORITY=critical test -f /etc/craft-instance.conf
2025-04-15 15:19:26.212 Executing on host: lxc --project snapcraft file pull local:snapcraft-sscce-amd64-56260417/etc/craft-instance.conf /home/paul-goins/tmpamkk8xuz.tmp-craft/tmp1zqihs96
2025-04-15 15:19:26.263 Instance is compatible with compatibility tag 'snapcraft-buildd-base-v7'
2025-04-15 15:19:26.263 No cache path set, not mounting cache directories.
2025-04-15 15:19:26.263 Waiting for environment to be ready...
2025-04-15 15:19:26.263 Executing in container: lxc --project snapcraft exec local:snapcraft-sscce-amd64-56260417 -- env CRAFT_MANAGED_MODE=1 DEBIAN_FRONTEND=noninteractive DEBCONF_NONINTERACTIVE_SEEN=true DEBIAN_PRIORITY=critical systemctl is-system-running
2025-04-15 15:19:26.337 Waiting for networking to be ready...
2025-04-15 15:19:26.337 Executing in container: lxc --project snapcraft exec local:snapcraft-sscce-amd64-56260417 -- env CRAFT_MANAGED_MODE=1 DEBIAN_FRONTEND=noninteractive DEBCONF_NONINTERACTIVE_SEEN=true DEBIAN_PRIORITY=critical getent hosts snapcraft.io
2025-04-15 15:19:26.419 Executing in container: lxc --project snapcraft exec local:snapcraft-sscce-amd64-56260417 -- env CRAFT_MANAGED_MODE=1 DEBIAN_FRONTEND=noninteractive DEBCONF_NONINTERACTIVE_SEEN=true DEBIAN_PRIORITY=critical snap unset system proxy.http
2025-04-15 15:19:26.624 Executing in container: lxc --project snapcraft exec local:snapcraft-sscce-amd64-56260417 -- env CRAFT_MANAGED_MODE=1 DEBIAN_FRONTEND=noninteractive DEBCONF_NONINTERACTIVE_SEEN=true DEBIAN_PRIORITY=critical snap unset system proxy.https
2025-04-15 15:19:26.830 Installing snap 'snapcraft' with channel=None and classic=True
2025-04-15 15:19:26.830 Installing snap 'snapcraft' from host (classic=True)
2025-04-15 15:19:26.832 Installing base snap 'core24' for 'snapcraft' from host
2025-04-15 15:19:26.832 Installing snap 'core24' from host (classic=False)
2025-04-15 15:19:26.834 Executing in container: lxc --project snapcraft exec local:snapcraft-sscce-amd64-56260417 -- env CRAFT_MANAGED_MODE=1 DEBIAN_FRONTEND=noninteractive DEBCONF_NONINTERACTIVE_SEEN=true DEBIAN_PRIORITY=critical test -f /etc/craft-instance.conf
2025-04-15 15:19:26.948 Executing on host: lxc --project snapcraft file pull local:snapcraft-sscce-amd64-56260417/etc/craft-instance.conf /home/paul-goins/tmpncxvroy7.tmp-craft/tmplqdki70v
2025-04-15 15:19:26.996 Revisions found: host='739', target='739'
2025-04-15 15:19:26.996 Skipping snap injection: target is already up-to-date with revision on host
2025-04-15 15:19:26.996 Executing in container: lxc --project snapcraft exec local:snapcraft-sscce-amd64-56260417 -- env CRAFT_MANAGED_MODE=1 DEBIAN_FRONTEND=noninteractive DEBCONF_NONINTERACTIVE_SEEN=true DEBIAN_PRIORITY=critical test -f /etc/craft-instance.conf
2025-04-15 15:19:27.110 Executing on host: lxc --project snapcraft file pull local:snapcraft-sscce-amd64-56260417/etc/craft-instance.conf /home/paul-goins/tmpt1zrvjbc.tmp-craft/tmp8uny4nlw
2025-04-15 15:19:27.155 Revisions found: host='14167', target='14167'
2025-04-15 15:19:27.155 Skipping snap injection: target is already up-to-date with revision on host
2025-04-15 15:19:27.216 Setting instance timezone to match host timezone 'America/Los_Angeles'.
2025-04-15 15:19:27.216 Executing on host: lxc --project snapcraft config set local:snapcraft-sscce-amd64-56260417 environment.TZ America/Los_Angeles
2025-04-15 15:19:27.279 Executing on host: lxc --project snapcraft config device show local:snapcraft-sscce-amd64-56260417
2025-04-15 15:19:27.320 Executing on host: lxc --project snapcraft config device add local:snapcraft-sscce-amd64-56260417 disk-/root/project disk source=/home/paul-goins/meh/python_snap_build_errors_sscce path=/root/project
2025-04-15 15:19:27.396 Instance launched and working directory mounted
2025-04-15 15:19:27.396 Pushing bashrc to instance
2025-04-15 15:19:27.396 Executing on host: lxc --project snapcraft file push /tmp/tmp17h8obld local:snapcraft-sscce-amd64-56260417/root/.bashrc --mode=644
2025-04-15 15:19:27.438 Executing in container: lxc --project snapcraft exec local:snapcraft-sscce-amd64-56260417 -- env CRAFT_MANAGED_MODE=1 DEBIAN_FRONTEND=noninteractive DEBCONF_NONINTERACTIVE_SEEN=true DEBIAN_PRIORITY=critical chown root:root /root/.bashrc
2025-04-15 15:19:27.516 Executing ['snapcraft', '--verbose'] in instance location /root/project with {'env': {'CRAFT_PLATFORM': 'amd64', 'CRAFT_VERBOSITY_LEVEL': 'VERBOSE'}}.
2025-04-15 15:19:27.516 Emitter: Pausing control of the terminal
2025-04-15 15:19:46.198 Emitter: Resuming control of the terminal
2025-04-15 15:19:46.198 Executing in container: lxc --project snapcraft exec local:snapcraft-sscce-amd64-56260417 -- env CRAFT_MANAGED_MODE=1 DEBIAN_FRONTEND=noninteractive DEBCONF_NONINTERACTIVE_SEEN=true DEBIAN_PRIORITY=critical test -f /tmp/snapcraft.log
2025-04-15 15:19:46.312 Executing on host: lxc --project snapcraft file pull local:snapcraft-sscce-amd64-56260417/tmp/snapcraft.log /home/paul-goins/tmptqfpe0pt.tmp-craft/tmp3v3g3ru1
2025-04-15 15:19:46.382 Logs retrieved from managed instance:
2025-04-15 15:19:46.382 :: 2025-04-15 15:19:29.971 Starting snapcraft, version 8.8.0
2025-04-15 15:19:46.382 :: 2025-04-15 15:19:29.971 Log verbosity level set to VERBOSE
2025-04-15 15:19:46.382 :: 2025-04-15 15:19:29.979 Preparing application...
2025-04-15 15:19:46.382 :: 2025-04-15 15:19:29.979 Merging commands for group 'Lifecycle':
2025-04-15 15:19:46.382 :: 2025-04-15 15:19:29.979 - using application command for 'clean'.
2025-04-15 15:19:46.382 :: 2025-04-15 15:19:29.979 - using application command for 'pull'.
2025-04-15 15:19:46.382 :: 2025-04-15 15:19:29.979 - using application command for 'build'.
2025-04-15 15:19:46.382 :: 2025-04-15 15:19:29.979 - using application command for 'stage'.
2025-04-15 15:19:46.382 :: 2025-04-15 15:19:29.979 - using application command for 'prime'.
2025-04-15 15:19:46.382 :: 2025-04-15 15:19:29.979 - using application command for 'pack'.
2025-04-15 15:19:46.382 :: 2025-04-15 15:19:29.979 Merging commands for group 'Other':
2025-04-15 15:19:46.382 :: 2025-04-15 15:19:29.979 Configuring application...
2025-04-15 15:19:46.382 :: 2025-04-15 15:19:29.979 Setting up ConfigService
2025-04-15 15:19:46.382 :: 2025-04-15 15:19:29.987 Build plan: platform=amd64, build_for=None
2025-04-15 15:19:46.382 :: 2025-04-15 15:19:29.987 Loading project file '/root/project/snap/snapcraft.yaml'
2025-04-15 15:19:46.382 :: 2025-04-15 15:19:29.989 Using parallel build count of 12 from CPU count
2025-04-15 15:19:46.382 :: 2025-04-15 15:19:29.989 Processing grammar (on amd64 for amd64)
2025-04-15 15:19:46.382 :: 2025-04-15 15:19:29.989 Processing grammar for plugin: python
2025-04-15 15:19:46.382 :: 2025-04-15 15:19:29.989 Processing grammar for source: .
2025-04-15 15:19:46.382 :: 2025-04-15 15:19:29.989 Processing grammar for stage-packages: ['python3-minimal', 'python3-typer']
2025-04-15 15:19:46.382 :: 2025-04-15 15:19:29.989 Processing grammar for build-environment: [{'PARTS_PYTHON_VENV_ARGS': '--system-site-packages'}]
2025-04-15 15:19:46.382 :: 2025-04-15 15:19:29.991 Initialising lifecycle manager in /root
2025-04-15 15:19:46.382 :: 2025-04-15 15:19:29.991 Project vars: {'version': 'test', 'grade': ''}
2025-04-15 15:19:46.382 :: 2025-04-15 15:19:29.991 Adopting part: None
2025-04-15 15:19:46.382 :: 2025-04-15 15:19:29.991 Using parallel build count of 12 from CPU count
2025-04-15 15:19:46.382 :: 2025-04-15 15:19:29.991 is_snap: True, SNAP_NAME set to snapcraft
2025-04-15 15:19:46.382 :: 2025-04-15 15:19:29.992 process sscce:1
2025-04-15 15:19:46.382 :: 2025-04-15 15:19:29.992 add action sscce:1(0)
2025-04-15 15:19:46.382 :: 2025-04-15 15:19:29.992 process sscce:3
2025-04-15 15:19:46.382 :: 2025-04-15 15:19:29.992 add action sscce:3(0)
2025-04-15 15:19:46.382 :: 2025-04-15 15:19:29.992 process sscce:4
2025-04-15 15:19:46.382 :: 2025-04-15 15:19:29.992 add action sscce:4(0)
2025-04-15 15:19:46.382 :: 2025-04-15 15:19:29.992 process sscce:5
2025-04-15 15:19:46.382 :: 2025-04-15 15:19:29.992 add action sscce:5(0)
2025-04-15 15:19:46.382 :: 2025-04-15 15:19:29.992 Initialising lifecycle
2025-04-15 15:19:46.382 :: 2025-04-15 15:19:29.993 ignore patterns: ['*.snap']
2025-04-15 15:19:46.382 :: 2025-04-15 15:19:29.993 plugin build packages: {'findutils', 'python3-dev', 'python3-venv'}
2025-04-15 15:19:46.382 :: 2025-04-15 15:19:29.993 Installing build-packages
2025-04-15 15:19:46.382 :: 2025-04-15 15:19:29.993 Requested build-packages: ['findutils', 'python3-dev', 'python3-venv']
2025-04-15 15:19:46.382 :: 2025-04-15 15:19:30.732 Marking findutils (and its dependencies) to be fetched
2025-04-15 15:19:46.382 :: 2025-04-15 15:19:30.732 package: findutils
2025-04-15 15:19:46.382 :: 2025-04-15 15:19:30.741 Marking python3-dev (and its dependencies) to be fetched
2025-04-15 15:19:46.382 :: 2025-04-15 15:19:30.741 package: python3-dev
2025-04-15 15:19:46.382 :: 2025-04-15 15:19:30.748 Marking python3-venv (and its dependencies) to be fetched
2025-04-15 15:19:46.382 :: 2025-04-15 15:19:30.748 package: python3-venv
2025-04-15 15:19:46.382 :: 2025-04-15 15:19:30.792 Executing: ['apt-get', 'update']
2025-04-15 15:19:46.382 :: 2025-04-15 15:19:31.085 :: Hit:1 http://archive.ubuntu.com/ubuntu noble InRelease
2025-04-15 15:19:46.382 :: 2025-04-15 15:19:31.095 :: Hit:2 http://security.ubuntu.com/ubuntu noble-security InRelease
2025-04-15 15:19:46.382 :: 2025-04-15 15:19:31.212 :: Get:3 http://archive.ubuntu.com/ubuntu noble-updates InRelease [126 kB]
2025-04-15 15:19:46.382 :: 2025-04-15 15:19:31.802 :: Hit:4 http://archive.ubuntu.com/ubuntu noble-backports InRelease
2025-04-15 15:19:46.382 :: 2025-04-15 15:19:31.934 :: Get:5 http://archive.ubuntu.com/ubuntu noble-updates/main amd64 Packages [992 kB]
2025-04-15 15:19:46.382 :: 2025-04-15 15:19:32.473 :: Fetched 1118 kB in 2s (674 kB/s)
2025-04-15 15:19:46.382 :: 2025-04-15 15:19:32.915 :: Reading package lists...
2025-04-15 15:19:46.382 :: 2025-04-15 15:19:32.923 Installing packages: findutils python3-dev python3-venv
2025-04-15 15:19:46.382 :: 2025-04-15 15:19:32.934 :: Reading package lists...
2025-04-15 15:19:46.382 :: 2025-04-15 15:19:33.039 :: Building dependency tree...
2025-04-15 15:19:46.382 :: 2025-04-15 15:19:33.039 :: Reading state information...
2025-04-15 15:19:46.382 :: 2025-04-15 15:19:33.162 :: findutils is already the newest version (4.9.0-5build1).
2025-04-15 15:19:46.382 :: 2025-04-15 15:19:33.162 :: python3-dev is already the newest version (3.12.3-0ubuntu2).
2025-04-15 15:19:46.382 :: 2025-04-15 15:19:33.162 :: The following additional packages will be installed:
2025-04-15 15:19:46.382 :: 2025-04-15 15:19:33.162 :: python3-pip-whl python3-setuptools-whl python3.12-venv
2025-04-15 15:19:46.382 :: 2025-04-15 15:19:33.176 :: The following NEW packages will be installed:
2025-04-15 15:19:46.382 :: 2025-04-15 15:19:33.176 :: python3-pip-whl python3-setuptools-whl python3-venv python3.12-venv
2025-04-15 15:19:46.382 :: 2025-04-15 15:19:33.454 :: 0 upgraded, 4 newly installed, 0 to remove and 102 not upgraded.
2025-04-15 15:19:46.382 :: 2025-04-15 15:19:33.454 :: Need to get 2425 kB of archives.
2025-04-15 15:19:46.382 :: 2025-04-15 15:19:33.454 :: After this operation, 2777 kB of additional disk space will be used.
2025-04-15 15:19:46.382 :: 2025-04-15 15:19:33.454 :: Get:1 http://archive.ubuntu.com/ubuntu noble-updates/universe amd64 python3-pip-whl all 24.0+dfsg-1ubuntu1.1 [1703 kB]
2025-04-15 15:19:46.382 :: 2025-04-15 15:19:34.574 :: Get:2 http://archive.ubuntu.com/ubuntu noble-updates/universe amd64 python3-setuptools-whl all 68.1.2-2ubuntu1.1 [716 kB]
2025-04-15 15:19:46.382 :: 2025-04-15 15:19:34.612 :: Get:3 http://archive.ubuntu.com/ubuntu noble-updates/universe amd64 python3.12-venv amd64 3.12.3-1ubuntu0.5 [5678 B]
2025-04-15 15:19:46.382 :: 2025-04-15 15:19:34.613 :: Get:4 http://archive.ubuntu.com/ubuntu noble-updates/universe amd64 python3-venv amd64 3.12.3-0ubuntu2 [1034 B]
2025-04-15 15:19:46.382 :: 2025-04-15 15:19:34.738 :: Fetched 2425 kB in 1s (1696 kB/s)
2025-04-15 15:19:46.382 :: 2025-04-15 15:19:34.760 :: Selecting previously unselected package python3-pip-whl.
2025-04-15 15:19:46.382 :: 2025-04-15 15:19:34.764 :: (Reading database ... 16785 files and directories currently installed.)
2025-04-15 15:19:46.382 :: 2025-04-15 15:19:34.765 :: Preparing to unpack .../python3-pip-whl_24.0+dfsg-1ubuntu1.1_all.deb ...
2025-04-15 15:19:46.382 :: 2025-04-15 15:19:34.776 :: Unpacking python3-pip-whl (24.0+dfsg-1ubuntu1.1) ...
2025-04-15 15:19:46.382 :: 2025-04-15 15:19:34.838 :: Selecting previously unselected package python3-setuptools-whl.
2025-04-15 15:19:46.382 :: 2025-04-15 15:19:34.838 :: Preparing to unpack .../python3-setuptools-whl_68.1.2-2ubuntu1.1_all.deb ...
2025-04-15 15:19:46.382 :: 2025-04-15 15:19:34.850 :: Unpacking python3-setuptools-whl (68.1.2-2ubuntu1.1) ...
2025-04-15 15:19:46.382 :: 2025-04-15 15:19:34.933 :: Selecting previously unselected package python3.12-venv.
2025-04-15 15:19:46.382 :: 2025-04-15 15:19:34.934 :: Preparing to unpack .../python3.12-venv_3.12.3-1ubuntu0.5_amd64.deb ...
2025-04-15 15:19:46.382 :: 2025-04-15 15:19:34.945 :: Unpacking python3.12-venv (3.12.3-1ubuntu0.5) ...
2025-04-15 15:19:46.382 :: 2025-04-15 15:19:35.013 :: Selecting previously unselected package python3-venv.
2025-04-15 15:19:46.382 :: 2025-04-15 15:19:35.015 :: Preparing to unpack .../python3-venv_3.12.3-0ubuntu2_amd64.deb ...
2025-04-15 15:19:46.382 :: 2025-04-15 15:19:35.026 :: Unpacking python3-venv (3.12.3-0ubuntu2) ...
2025-04-15 15:19:46.382 :: 2025-04-15 15:19:35.100 :: Setting up python3-setuptools-whl (68.1.2-2ubuntu1.1) ...
2025-04-15 15:19:46.382 :: 2025-04-15 15:19:35.146 :: Setting up python3-pip-whl (24.0+dfsg-1ubuntu1.1) ...
2025-04-15 15:19:46.382 :: 2025-04-15 15:19:35.180 :: Setting up python3.12-venv (3.12.3-1ubuntu0.5) ...
2025-04-15 15:19:46.382 :: 2025-04-15 15:19:35.243 :: Setting up python3-venv (3.12.3-0ubuntu2) ...
2025-04-15 15:19:46.382 :: 2025-04-15 15:19:35.499 Found installed version 24.0+dfsg-1ubuntu1.1 for package python3-pip-whl
2025-04-15 15:19:46.382 :: 2025-04-15 15:19:35.499 Found installed version 68.1.2-2ubuntu1.1 for package python3-setuptools-whl
2025-04-15 15:19:46.382 :: 2025-04-15 15:19:35.499 Found installed version 3.12.3-0ubuntu2 for package python3-venv
2025-04-15 15:19:46.382 :: 2025-04-15 15:19:35.499 Found installed version 3.12.3-1ubuntu0.5 for package python3.12-venv
2025-04-15 15:19:46.382 :: 2025-04-15 15:19:35.501 Installing build-snaps
2025-04-15 15:19:46.382 :: 2025-04-15 15:19:36.070 verify plugin environment for part 'sscce'
2025-04-15 15:19:46.382 :: 2025-04-15 15:19:36.071 Pulling sscce
2025-04-15 15:19:46.382 :: 2025-04-15 15:19:36.071 execute action sscce:Action(part_name='sscce', step=Step.PULL, action_type=ActionType.RUN, reason=None, project_vars=None, properties=ActionProperties(changed_files=None, changed_dirs=None))
2025-04-15 15:19:46.382 :: 2025-04-15 15:19:36.071 Fetching stage-packages
2025-04-15 15:19:46.382 :: 2025-04-15 15:19:36.072 Requested stage-packages: ['python3-minimal', 'python3-typer']
2025-04-15 15:19:46.382 :: 2025-04-15 15:19:36.628 Marking python3-typer (and its dependencies) to be fetched
2025-04-15 15:19:46.382 :: 2025-04-15 15:19:36.628 package: python3-typer
2025-04-15 15:19:46.382 :: 2025-04-15 15:19:36.657 Marking python3-minimal (and its dependencies) to be fetched
2025-04-15 15:19:46.382 :: 2025-04-15 15:19:36.657 package: python3-minimal
2025-04-15 15:19:46.382 :: 2025-04-15 15:19:36.937 Skipping filtered manifest packages: ['dpkg', 'gcc-14-base', 'libacl1', 'libbz2-1.0', 'libc6', 'libcrypt1', 'libdb5.3t64', 'libexpat1', 'libffi8', 'libgcc-s1', 'liblzma5', 'libmd0', 'libncursesw6', 'libpcre2-8-0', 'libpython3-stdlib', 'libpython3.12-minimal', 'libpython3.12-stdlib', 'libreadline8t64', 'libselinux1', 'libsqlite3-0', 'libssl3t64', 'libtinfo6', 'libzstd1', 'media-types', 'netbase', 'python3', 'python3.12', 'python3.12-minimal', 'readline-common', 'tar', 'tzdata', 'zlib1g']
2025-04-15 15:19:46.382 :: 2025-04-15 15:19:36.992 Downloading package: python3-colorama
2025-04-15 15:19:46.382 :: 2025-04-15 15:19:37.368 Get: 1 python3-colorama_0.4.6-4_all.deb [32.1 kB]
2025-04-15 15:19:46.382 :: 2025-04-15 15:19:37.549 Downloading package: python3-minimal
2025-04-15 15:19:46.382 :: 2025-04-15 15:19:37.728 Get: 2 python3-minimal_3.12.3-0ubuntu2_amd64.deb [27.4 kB]
2025-04-15 15:19:46.382 :: 2025-04-15 15:19:37.821 Downloading package: python3-typing-extensions
2025-04-15 15:19:46.382 :: 2025-04-15 15:19:37.985 Get: 3 python3-typing-extensions_4.10.0-1_all.deb [60.7 kB]
2025-04-15 15:19:46.382 :: 2025-04-15 15:19:38.155 Downloading package: python3-typer
2025-04-15 15:19:46.382 :: 2025-04-15 15:19:38.446 Get: 4 python3-typer_0.9.0-2_all.deb [38.9 kB]
2025-04-15 15:19:46.382 :: 2025-04-15 15:19:38.711 Downloading package: python3-click
2025-04-15 15:19:46.382 :: 2025-04-15 15:19:38.934 Get: 5 python3-click_8.1.6-2_all.deb [79.0 kB]
2025-04-15 15:19:46.382 :: 2025-04-15 15:19:39.137 Extracting stage package: python3-colorama
2025-04-15 15:19:46.382 :: 2025-04-15 15:19:39.137 Extracting stage package: python3-minimal
2025-04-15 15:19:46.382 :: 2025-04-15 15:19:39.137 Extracting stage package: python3-typing-extensions
2025-04-15 15:19:46.382 :: 2025-04-15 15:19:39.137 Extracting stage package: python3-typer
2025-04-15 15:19:46.382 :: 2025-04-15 15:19:39.137 Extracting stage package: python3-click
2025-04-15 15:19:46.382 :: 2025-04-15 15:19:39.216 Building sscce
2025-04-15 15:19:46.382 :: 2025-04-15 15:19:39.216 execute action sscce:Action(part_name='sscce', step=Step.BUILD, action_type=ActionType.RUN, reason=None, project_vars=None, properties=ActionProperties(changed_files=None, changed_dirs=None))
2025-04-15 15:19:46.382 :: 2025-04-15 15:19:39.216 load state file: /root/parts/sscce/state/pull
2025-04-15 15:19:46.382 :: 2025-04-15 15:19:39.276 fix artifacts: unpack_dir='/root/parts/sscce/install'
2025-04-15 15:19:46.382 :: 2025-04-15 15:19:39.282 remove directory /root/parts/sscce/build
2025-04-15 15:19:46.382 :: 2025-04-15 15:19:39.320 Executing PosixPath('/root/parts/sscce/run/build.sh')
2025-04-15 15:19:46.382 :: 2025-04-15 15:19:39.322 :: + python3 -m venv --system-site-packages /root/parts/sscce/install
2025-04-15 15:19:46.382 :: 2025-04-15 15:19:40.943 :: + PARTS_PYTHON_VENV_INTERP_PATH=/root/parts/sscce/install/bin/python3
2025-04-15 15:19:46.382 :: 2025-04-15 15:19:40.943 :: + /root/parts/sscce/install/bin/pip install -U pip setuptools wheel
2025-04-15 15:19:46.382 :: 2025-04-15 15:19:41.124 :: Requirement already satisfied: pip in /root/parts/sscce/install/lib/python3.12/site-packages (24.0)
2025-04-15 15:19:46.382 :: 2025-04-15 15:19:41.214 :: Collecting pip
2025-04-15 15:19:46.382 :: 2025-04-15 15:19:41.242 :: Downloading pip-25.0.1-py3-none-any.whl.metadata (3.7 kB)
2025-04-15 15:19:46.382 :: 2025-04-15 15:19:41.257 :: Requirement already satisfied: setuptools in /usr/lib/python3/dist-packages (68.1.2)
2025-04-15 15:19:46.382 :: 2025-04-15 15:19:41.365 :: Collecting setuptools
2025-04-15 15:19:46.382 :: 2025-04-15 15:19:41.369 :: Downloading setuptools-78.1.0-py3-none-any.whl.metadata (6.6 kB)
2025-04-15 15:19:46.382 :: 2025-04-15 15:19:41.383 :: Requirement already satisfied: wheel in /usr/lib/python3/dist-packages (0.42.0)
2025-04-15 15:19:46.382 :: 2025-04-15 15:19:41.411 :: Collecting wheel
2025-04-15 15:19:46.382 :: 2025-04-15 15:19:41.415 :: Downloading wheel-0.45.1-py3-none-any.whl.metadata (2.3 kB)
2025-04-15 15:19:46.382 :: 2025-04-15 15:19:41.451 :: Downloading pip-25.0.1-py3-none-any.whl (1.8 MB)
2025-04-15 15:19:46.382 :: 2025-04-15 15:19:41.499 :: ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 1.8/1.8 MB 40.1 MB/s eta 0:00:00
2025-04-15 15:19:46.382 :: 2025-04-15 15:19:41.503 :: Downloading setuptools-78.1.0-py3-none-any.whl (1.3 MB)
2025-04-15 15:19:46.382 :: 2025-04-15 15:19:41.532 :: ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 1.3/1.3 MB 44.6 MB/s eta 0:00:00
2025-04-15 15:19:46.382 :: 2025-04-15 15:19:41.536 :: Downloading wheel-0.45.1-py3-none-any.whl (72 kB)
2025-04-15 15:19:46.382 :: 2025-04-15 15:19:41.549 :: ━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━━ 72.5/72.5 kB 5.2 MB/s eta 0:00:00
2025-04-15 15:19:46.382 :: 2025-04-15 15:19:41.582 :: Installing collected packages: wheel, setuptools, pip
2025-04-15 15:19:46.382 :: 2025-04-15 15:19:41.582 :: Attempting uninstall: wheel
2025-04-15 15:19:46.382 :: 2025-04-15 15:19:41.583 :: Found existing installation: wheel 0.42.0
2025-04-15 15:19:46.382 :: 2025-04-15 15:19:41.583 :: Not uninstalling wheel at /usr/lib/python3/dist-packages, outside environment /root/parts/sscce/install
2025-04-15 15:19:46.382 :: 2025-04-15 15:19:41.584 :: Can't uninstall 'wheel'. No files were found to uninstall.
2025-04-15 15:19:46.382 :: 2025-04-15 15:19:41.628 :: Attempting uninstall: setuptools
2025-04-15 15:19:46.382 :: 2025-04-15 15:19:41.629 :: Found existing installation: setuptools 68.1.2
2025-04-15 15:19:46.382 :: 2025-04-15 15:19:41.629 :: Not uninstalling setuptools at /usr/lib/python3/dist-packages, outside environment /root/parts/sscce/install
2025-04-15 15:19:46.382 :: 2025-04-15 15:19:41.630 :: Can't uninstall 'setuptools'. No files were found to uninstall.
2025-04-15 15:19:46.382 :: 2025-04-15 15:19:42.049 :: Attempting uninstall: pip
2025-04-15 15:19:46.382 :: 2025-04-15 15:19:42.051 :: Found existing installation: pip 24.0
2025-04-15 15:19:46.382 :: 2025-04-15 15:19:42.069 :: Uninstalling pip-24.0:
2025-04-15 15:19:46.382 :: 2025-04-15 15:19:42.072 :: Successfully uninstalled pip-24.0
2025-04-15 15:19:46.382 :: 2025-04-15 15:19:42.582 :: Successfully installed pip-25.0.1 setuptools-78.1.0 wheel-0.45.1
2025-04-15 15:19:46.382 :: 2025-04-15 15:19:42.633 :: + '[' -f setup.py ']'
2025-04-15 15:19:46.382 :: 2025-04-15 15:19:42.633 :: + '[' -f pyproject.toml ']'
2025-04-15 15:19:46.382 :: 2025-04-15 15:19:42.633 :: + /root/parts/sscce/install/bin/pip install -U .
2025-04-15 15:19:46.382 :: 2025-04-15 15:19:42.850 :: Processing /root/parts/sscce/build
2025-04-15 15:19:46.382 :: 2025-04-15 15:19:42.852 :: Installing build dependencies: started
2025-04-15 15:19:46.382 :: 2025-04-15 15:19:43.617 :: Installing build dependencies: finished with status 'done'
2025-04-15 15:19:46.382 :: 2025-04-15 15:19:43.618 :: Getting requirements to build wheel: started
2025-04-15 15:19:46.382 :: 2025-04-15 15:19:43.667 :: Getting requirements to build wheel: finished with status 'done'
2025-04-15 15:19:46.382 :: 2025-04-15 15:19:43.668 :: Preparing metadata (pyproject.toml): started
2025-04-15 15:19:46.382 :: 2025-04-15 15:19:43.739 :: Preparing metadata (pyproject.toml): finished with status 'done'
2025-04-15 15:19:46.382 :: 2025-04-15 15:19:43.741 :: Building wheels for collected packages: sscce
2025-04-15 15:19:46.382 :: 2025-04-15 15:19:43.741 :: Building wheel for sscce (pyproject.toml): started
2025-04-15 15:19:46.382 :: 2025-04-15 15:19:43.768 :: Building wheel for sscce (pyproject.toml): finished with status 'done'
2025-04-15 15:19:46.382 :: 2025-04-15 15:19:43.768 :: Created wheel for sscce: filename=sscce-0.1.dev1-py3-none-any.whl size=1480 sha256=c92267e741087b1207e9cc79e52ef55c2de25d71cf834afb51485812ba87df5c
2025-04-15 15:19:46.383 :: 2025-04-15 15:19:43.768 :: Stored in directory: /tmp/pip-ephem-wheel-cache-l7lm2ezl/wheels/df/e4/d1/957c6de665050650792ec2668b4f7128c7ba0596475cb9a687
2025-04-15 15:19:46.383 :: 2025-04-15 15:19:43.770 :: Successfully built sscce
2025-04-15 15:19:46.383 :: 2025-04-15 15:19:43.775 :: Installing collected packages: sscce
2025-04-15 15:19:46.383 :: 2025-04-15 15:19:43.795 :: Successfully installed sscce-0.1.dev1
2025-04-15 15:19:46.383 :: 2025-04-15 15:19:43.907 :: + find /root/parts/sscce/install -type f -executable -print0
2025-04-15 15:19:46.383 :: 2025-04-15 15:19:43.907 :: + xargs --no-run-if-empty -0 sed -i '1 s|^#\!/root/parts/sscce/install/bin/python3.*$|#!/usr/bin/env python3|'
2025-04-15 15:19:46.383 :: 2025-04-15 15:19:43.919 :: ++ set +o
2025-04-15 15:19:46.383 :: 2025-04-15 15:19:43.919 :: ++ grep errexit
2025-04-15 15:19:46.383 :: 2025-04-15 15:19:43.920 :: + opts_state='set +o errexit'
2025-04-15 15:19:46.383 :: 2025-04-15 15:19:43.920 :: + set +e
2025-04-15 15:19:46.383 :: 2025-04-15 15:19:43.920 :: + install_dir=/root/parts/sscce/install/usr/bin
2025-04-15 15:19:46.383 :: 2025-04-15 15:19:43.920 :: + stage_dir=/root/stage/usr/bin
2025-04-15 15:19:46.383 :: 2025-04-15 15:19:43.920 :: +++ readlink -f /root/parts/sscce/install/bin/python3
2025-04-15 15:19:46.383 :: 2025-04-15 15:19:43.921 :: ++ basename /usr/bin/python3.12
2025-04-15 15:19:46.383 :: 2025-04-15 15:19:43.923 :: + basename=python3.12
2025-04-15 15:19:46.383 :: 2025-04-15 15:19:43.923 :: + echo Looking for a Python interpreter called '"python3.12"' in the payload...
2025-04-15 15:19:46.383 :: 2025-04-15 15:19:43.923 :: Looking for a Python interpreter called "python3.12" in the payload...
2025-04-15 15:19:46.383 :: 2025-04-15 15:19:43.923 :: ++ find /root/parts/sscce/install/usr/bin /root/stage/usr/bin -type f -executable -name python3.12 -print -quit
2025-04-15 15:19:46.383 :: 2025-04-15 15:19:43.924 :: ++ true
2025-04-15 15:19:46.383 :: 2025-04-15 15:19:43.924 :: + payload_python=
2025-04-15 15:19:46.383 :: 2025-04-15 15:19:43.924 :: + '[' -n '' ']'
2025-04-15 15:19:46.383 :: 2025-04-15 15:19:43.925 :: + echo 'Python interpreter not found in payload.'
2025-04-15 15:19:46.383 :: 2025-04-15 15:19:43.925 :: Python interpreter not found in payload.
2025-04-15 15:19:46.383 :: 2025-04-15 15:19:43.925 :: + symlink_target=/usr/bin/python3.12
2025-04-15 15:19:46.383 :: 2025-04-15 15:19:43.925 :: + '[' -z /usr/bin/python3.12 ']'
2025-04-15 15:19:46.383 :: 2025-04-15 15:19:43.925 :: + eval 'set +o errexit'
2025-04-15 15:19:46.383 :: 2025-04-15 15:19:43.925 :: ++ set +o errexit
2025-04-15 15:19:46.383 :: 2025-04-15 15:19:43.925 :: + ln -sf /usr/bin/python3.12 /root/parts/sscce/install/bin/python3
2025-04-15 15:19:46.383 :: 2025-04-15 15:19:44.284 Staging sscce
2025-04-15 15:19:46.383 :: 2025-04-15 15:19:44.285 execute action sscce:Action(part_name='sscce', step=Step.STAGE, action_type=ActionType.RUN, reason=None, project_vars=None, properties=ActionProperties(changed_files=None, changed_dirs=None))
2025-04-15 15:19:46.383 :: 2025-04-15 15:19:44.736 Priming sscce
2025-04-15 15:19:46.383 :: 2025-04-15 15:19:44.736 execute action sscce:Action(part_name='sscce', step=Step.PRIME, action_type=ActionType.RUN, reason=None, project_vars=None, properties=ActionProperties(changed_files=None, changed_dirs=None))
2025-04-15 15:19:46.383 :: 2025-04-15 15:19:45.049 patch_elf: not enabled for part 'sscce'
2025-04-15 15:19:46.383 :: 2025-04-15 15:19:45.050 Setting up Package
2025-04-15 15:19:46.383 :: 2025-04-15 15:19:45.050 Update project variables: {'version': 'test', 'grade': ''}
2025-04-15 15:19:46.383 :: 2025-04-15 15:19:45.051 Grade not specified, using default value 'stable'.
2025-04-15 15:19:46.383 :: 2025-04-15 15:19:45.051 finalize icon: None
2025-04-15 15:19:46.383 :: 2025-04-15 15:19:45.051 relative icon path: None
2025-04-15 15:19:46.383 :: 2025-04-15 15:19:45.051 Packing...
2025-04-15 15:19:46.383 :: 2025-04-15 15:19:45.051 Reading snap metadata...
2025-04-15 15:19:46.383 :: 2025-04-15 15:19:45.052 Running linters...
2025-04-15 15:19:46.383 :: 2025-04-15 15:19:45.052 Running linter: classic
2025-04-15 15:19:46.383 :: 2025-04-15 15:19:45.053 Running linter: library
2025-04-15 15:19:46.383 :: 2025-04-15 15:19:45.098 pack_snap: output='.', compression='xz'
2025-04-15 15:19:46.383 :: 2025-04-15 15:19:45.098 pack_snap: check skeleton
2025-04-15 15:19:46.383 :: 2025-04-15 15:19:45.106 Creating snap package...
2025-04-15 15:19:46.383 :: 2025-04-15 15:19:45.106 Pack command: ['snap', 'pack', '--filename', 'sscce_test_amd64.snap', '--compression', 'xz', PosixPath('/root/prime'), PosixPath('/root/project')]
2025-04-15 15:19:46.383 :: 2025-04-15 15:19:45.985 Packed sscce_test_amd64.snap
2025-04-15 15:19:46.395 Executing on host: lxc --project snapcraft config device show local:snapcraft-sscce-amd64-56260417
2025-04-15 15:19:46.446 Executing on host: lxc --project snapcraft config device remove local:snapcraft-sscce-amd64-56260417 disk-/root/project
2025-04-15 15:19:46.536 Executing on host: lxc --project snapcraft stop local:snapcraft-sscce-amd64-56260417
2025-04-15 15:19:50.364 Executing on host: lxc --project snapcraft list local: --format=yaml
2025-04-15 15:19:50.423 Executing on host: lxc --project snapcraft list local: --format=yaml
======================================================================
```
### Additional context
_No response_
Evaluation history
| Date | Model | Scores | Action | Summary |
|---|---|---|---|---|
| qwen/qwen3.6-35b-a3b | — | — | Closed as completed. The author applied a PYTHONPATH workaround in snapcraft.yaml to access staged packages. Maintainers declined a code fix, marking the issue as a reference for a future Python plugin rewrite. | |
| qwen/qwen3.6-35b-a3b | — | — | Closed as completed without a code fix. The author resolved the path mismatch by setting a PYTHONPATH environment variable to point to staged libraries. Maintainers marked it closed to use as a reference for a future Python plugin rewrite. | |
| qwen3.6-35b-a3b-mtp-q6 | — | — | Closed as completed. A PYTHONPATH workaround resolved the import path mismatch. The maintainer accepted this solution and will reference it during a future Python plugin rewrite. | |
| qwen3.6-35b-a3b-mtp-q6 | — | — | Resolved using a PYTHONPATH environment variable to locate staged Ubuntu Python packages. Maintainer closed as completed and will use the workaround as reference for future Python plugin rewrites. |
Update history
No update history recorded yet.
Related issues
| Issue | Project | State | Summary | Similarity |
|---|---|---|---|---|
| #5407 Unable to build Python snaps using classic confinement with core24 using snapcraft 8.8.0 (8.x/stable) | snapcraft | closed | Resolved as a configuration issue. Classic Python snaps on core24 require explicitly adding python3.12-minimal to stage-packages and adjusting the app command. The developer acknowledged documentation gaps and announced upcoming Python plugin improvements. | |
| #45 Fail to build snap python3 distutils project | snapcraft | closed | A Python3 build failure in snapcraft was reported. The author submitted PR #58 to fix it, but the maintainer closed the issue by announcing a return to Launchpad for bug tracking, superseding the fix and PR. | |
| #1882994 [4.0.4][strict] usage of the python plugin forces the python3 interpreter to be shipped in the snap | snapcraft (launchpad) | closed | Closed without resolution. The python plugin forces python3 into the snap, causing runtime path conflicts. Likely abandoned or superseded by newer snapcraft plugin versions. | |
| #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. | |
| #4615 snapcraft `8.0.2`+ python plugin classic core22 snap ModuleNotFoundError | snapcraft | closed | Closed. No code fix was merged. A workaround was identified for Snapcraft 8 dropping PATH settings in classic snaps. An internal ticket was created for tracking. | |
| #6020 Most Python-based snaps can't build on core26 | snapcraft | closed | Resolved in PR #6089 and released in snapcraft 8.14.3. The python plugin now correctly handles core26 builds without assuming a system interpreter. Uv and poetry plugins remain unaddressed and will be fixed in future updates. | |
| #1680538 It's not possible to depend on a python package build by a different part | snapcraft (launchpad) | closed | Closed without resolution. The cross-part Python package dependency limitation was abandoned, leaving the $SNAPCRAFT_STAGE path workaround as the only available solution. |