Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Apk allows to install multiple packages with same provides #251

Draft
wants to merge 1 commit into
base: main
Choose a base branch
from

Conversation

xnox
Copy link
Contributor

@xnox xnox commented Apr 30, 2024

As long as their provider priorities are straight.

I am very skeptical if this is deterministic, or just lucky.

As long as their provider priorities are straight.

Signed-off-by: Dimitri John Ledkov <dimitri.ledkov@chainguard.dev>
@xnox xnox marked this pull request as draft April 30, 2024 16:34
@xnox
Copy link
Contributor Author

xnox commented Apr 30, 2024

Rebuild melange with this go-apk; and with my replaces-provides PR. and now trying to build my python-dev wolfi-dev/os stuff and struggling to comprehend this:

$ make package/py3-installer
...
2024/04/30 17:30:32 INFO melange is building:
2024/04/30 17:30:32 INFO   configuration file: ./py3-installer.yaml
2024/04/30 17:30:32 INFO   workspace dir: /tmp/melange-workspace-3823899984
2024/04/30 17:30:32 INFO image configuration:
2024/04/30 17:30:32 INFO   contents:
2024/04/30 17:30:32 INFO     repositories: []
2024/04/30 17:30:32 INFO     keyring:      []
2024/04/30 17:30:32 INFO     packages:     [binutils build-base busybox ca-certificates-bundle git py3-supported-pip py3-supported-python scanelf wolfi-base]
...
2024/04/30 17:30:33 INFO installing python-3.12-base (3.12.3-r1)
2024/04/30 17:30:33 INFO installing py3.12-flit-core (3.9.0-r2)
2024/04/30 17:30:33 INFO installing py3.12-setuptools (69.5.1-r1)
2024/04/30 17:30:33 INFO installing py3.12-pip (24.0-r2)

2024/04/30 17:30:33 INFO installing python-3.10-base (3.10.14-r1)
2024/04/30 17:30:33 INFO installing py3.10-flit-core (3.9.0-r2)
2024/04/30 17:30:33 INFO installing py3.10-setuptools (69.5.1-r1)
2024/04/30 17:30:33 INFO installing py3.10-pip (24.0-r2)

2024/04/30 17:30:33 INFO installing python-3.11-base (3.11.9-r1)
2024/04/30 17:30:34 INFO installing py3.11-setuptools (69.5.1-r1)
2024/04/30 17:30:34 INFO installing python-3.11 (3.11.9-r1)
2024/04/30 17:30:34 INFO installing py3.11-pip (24.0-r0)

2024/04/30 17:30:34 INFO installing py3-supported-pip (24.0-r2)
2024/04/30 17:30:34 INFO installing py3-supported-python (1-r1)

2024/04/30 17:30:44 INFO running pipeline for subpackage py3.10-installer
2024/04/30 17:30:44 INFO ==> /usr/bin/pip <==
2024/04/30 17:30:44 INFO #!/usr/bin/python3.12
2024/04/30 17:30:44 INFO
2024/04/30 17:30:44 INFO ==> /usr/bin/pip3 <==
2024/04/30 17:30:44 INFO #!/usr/bin/python3.12
2024/04/30 17:30:44 INFO
2024/04/30 17:30:44 INFO ==> /usr/bin/pip3.10 <==
2024/04/30 17:30:44 INFO #!/usr/bin/python3.10
2024/04/30 17:30:44 INFO
2024/04/30 17:30:44 INFO ==> /usr/bin/pip3.11 <==
2024/04/30 17:30:44 INFO #!/usr/bin/python
2024/04/30 17:30:44 INFO
2024/04/30 17:30:44 INFO ==> /usr/bin/pip3.12 <==
2024/04/30 17:30:44 INFO #!/usr/bin/python3.12
2024/04/30 17:30:44 INFO Processing /home/build
...
2024/04/30 17:30:47 INFO scanning for shared object dependencies...
2024/04/30 17:30:47 INFO scanning for commands...
2024/04/30 17:30:47 INFO scanning for pkg-config data...
2024/04/30 17:30:47 INFO scanning for python modules...
2024/04/30 17:30:47 INFO scanning for shbang deps...
2024/04/30 17:30:47 INFO   runtime:
2024/04/30 17:30:47 INFO     py3.10-installer
2024/04/30 17:30:47 INFO     py3.11-installer
2024/04/30 17:30:47 INFO     py3.12-installer
2024/04/30 17:30:47 INFO   installed-size: 21652
2024/04/30 17:30:47 INFO   data.tar.gz digest: 83e2df79f8717e949dce7a79fc78255158155443162ee89276f19b8dc64d1aca
2024/04/30 17:30:47 INFO wrote packages/x86_64/py3-supported-installer-0.7.0-r6.apk
2024/04/30 17:30:47 INFO generating apk index from packages in packages/x86_64
2024/04/30 17:30:47 INFO processing package packages/x86_64/py3.12-installer-0.7.0-r6.apk
2024/04/30 17:30:47 INFO processing package packages/x86_64/py3.10-installer-0.7.0-r6.apk
2024/04/30 17:30:47 INFO processing package packages/x86_64/py3-installer-0.7.0-r6.apk
2024/04/30 17:30:47 INFO processing package packages/x86_64/py3.11-installer-0.7.0-r6.apk
2024/04/30 17:30:47 INFO processing package packages/x86_64/py3-supported-installer-0.7.0-r6.apk
2024/04/30 17:30:47 INFO loaded 28/28 packages from index packages/x86_64/APKINDEX.tar.gz
2024/04/30 17:30:47 INFO updating index at packages/x86_64/APKINDEX.tar.gz with new packages: [py3-installer-0.7.0-r6 py3.10-installer-0.7.0-r6 py3.11-installer-0.7.0-r6 py3.12-installer-0.7.0-r6 py3-supported-installer-0.7.0-r6]
2024/04/30 17:30:47 INFO signing apk index at packages/x86_64/APKINDEX.tar.gz
2024/04/30 17:30:47 INFO signing index packages/x86_64/APKINDEX.tar.gz with key local-melange.rsa
2024/04/30 17:30:47 INFO appending signature to index packages/x86_64/APKINDEX.tar.gz
2024/04/30 17:30:47 INFO writing signed index to packages/x86_64/APKINDEX.tar.gz
2024/04/30 17:30:47 INFO signed index packages/x86_64/APKINDEX.tar.gz with key local-melange.rsa
make[1]: Leaving directory '/home/xnox/wolfi-dev/os'

Why is py3.11 flit-core msising? and why was older epoch py3.11-pip installed (with broken shebang btw)?

@xnox
Copy link
Contributor Author

xnox commented Apr 30, 2024

ahahaha

py3.11-pip-24.0-r2.apk disqualified because py3.10-pip-24.0-r2.apk already provides py3-pip

@xnox
Copy link
Contributor Author

xnox commented Apr 30, 2024

ok something funny is going on. It seems like provides are always enforced, even when they shouldn't be.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

None yet

1 participant