From 46428ed85d599baa9572a570ce7f1603f7c52692 Mon Sep 17 00:00:00 2001 From: Ophestra Date: Mon, 13 Apr 2026 01:59:28 +0900 Subject: internal/rosa/python: url pip wheel helper This enables a cleaner higher-level helper. Signed-off-by: Ophestra --- internal/rosa/python.go | 20 ++++++++++++++++++++ 1 file changed, 20 insertions(+) (limited to 'internal/rosa/python.go') diff --git a/internal/rosa/python.go b/internal/rosa/python.go index fded5dca..323ad3f9 100644 --- a/internal/rosa/python.go +++ b/internal/rosa/python.go @@ -1,6 +1,7 @@ package rosa import ( + "path" "slices" "strings" @@ -80,6 +81,25 @@ func init() { } } +// newViaPip installs a pip wheel from a url. +func (t Toolchain) newViaPip( + name, version, url, checksum string, + extra ...PArtifact, +) pkg.Artifact { + return t.New(name+"-"+version, 0, t.AppendPresets(nil, + slices.Concat(P{Python}, extra)..., + ), nil, nil, ` +pip3 install \ + --no-index \ + --prefix=/system \ + --root=/work \ + '/usr/src/`+path.Base(url)+`' +`, pkg.Path(AbsUsrSrc.Append(path.Base(url)), false, pkg.NewHTTPGet( + nil, url, + mustDecode(checksum), + ))) +} + // newViaPip is a helper for installing python dependencies via pip. func newViaPip( name, description, version, interpreter, abi, platform, checksum, prefix string, -- cgit v1.3.1