Skip to content

build: migrate packaging to Ubuntu Resolute / core26#66

Merged
alexsander-souza merged 1 commit intoresolute_supportfrom
pr-01/release-snap-packaging
Mar 31, 2026
Merged

build: migrate packaging to Ubuntu Resolute / core26#66
alexsander-souza merged 1 commit intoresolute_supportfrom
pr-01/release-snap-packaging

Conversation

@alexsander-souza
Copy link
Copy Markdown
Contributor

Declare Ubuntu Resolute as the release target and bring the snap build into line with core26 conventions, where /bin is a symlink to /usr/bin.

  • debian/changelog: set distribution to resolute
  • snapcraft.yaml: base core24 → core26, add build-base: devel, grade stable → devel
  • Replace venv-based install with pip install --prefix=.../usr to avoid /bin symlink conflicts; remove venv artefact stage filters (activate*, pyvenv.cfg)
  • Move all snap app commands and wrapper scripts from bin/ to usr/bin/
  • Add organize mappings usr/local/bin/* → usr/bin/ and usr/local/lib/python3.14/* → usr/lib/python3.14/ for the pip-prefix layout
  • Pebble part: add organize bin → usr/sbin
  • maas-agent, maas-openfga parts: drop per-binary organize blocks, use prime: [usr/sbin/]; update Makefile install targets to match
  • Remove separate maas-netmon snap part; its artefact is now captured by the maas-agent part's prime: [usr/sbin/]

Declare Ubuntu Resolute as the release target and bring the snap build
into line with core26 conventions, where /bin is a symlink to /usr/bin.

- debian/changelog: set distribution to resolute
- snapcraft.yaml: base core24 → core26, add build-base: devel,
  grade stable → devel
- Replace venv-based install with pip install --prefix=.../usr to avoid
  /bin symlink conflicts; remove venv artefact stage filters
  (activate*, pyvenv.cfg)
- Move all snap app commands and wrapper scripts from bin/ to usr/bin/
- Add organize mappings usr/local/bin/* → usr/bin/ and
  usr/local/lib/python3.14/* → usr/lib/python3.14/ for the pip-prefix layout
- Pebble part: add organize bin → usr/sbin
- maas-agent, maas-openfga parts: drop per-binary organize blocks, use
  prime: [usr/sbin/]; update Makefile install targets to match
- Remove separate maas-netmon snap part; its artefact is now captured
  by the maas-agent part's prime: [usr/sbin/]
Copy link
Copy Markdown
Contributor

@r00ta r00ta left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The build crashes with

:: # github.com/mattn/go-sqlite3
:: sqlite3-binding.c: In function ‘sqlite3ShadowTableName’:
:: sqlite3-binding.c:123934:9: warning: assignment discards ‘const’ qualifier from pointer target type [-Wdiscarded-qualifiers]
:: 123934 |   zTail = strrchr(zName, '_');
::        |         ^
:: # command-line-arguments
:: /usr/lib/go-1.26/pkg/tool/linux_amd64/link: running x86_64-linux-gnu-gcc failed: exit status 1
:: /usr/bin/x86_64-linux-gnu-gcc -m64 -Wl,--build-id=0x5a42a91108f9df9ab42be50121954d1caae0fc62 -o $WORK/b001/exe/a.out -Wl,--export-dynamic-symbol=_cgoe
:: /usr/bin/x86_64-linux-gnu-ld.bfd: /tmp/go-link-878777512/000037.o: in function `unixDlOpen':
:: /tmp/tmp.go-mod-cachelvD/github.com/mattn/go-sqlite3@v1.14.24/sqlite3-binding.c:45109:(.text+0x821d): warning: Using 'dlopen' in statically linked apg
:: /usr/bin/x86_64-linux-gnu-ld.bfd: /tmp/go-link-878777512/000022.o: in function `mygetgrgid_r':
:: /_/GOROOT/src/os/user/cgo_lookup_cgo.go:45:(.text+0x44): warning: Using 'getgrgid_r' in statically linked applications requires at runtime the sharedg
:: /usr/bin/x86_64-linux-gnu-ld.bfd: /tmp/go-link-878777512/000022.o: in function `mygetgrnam_r':
:: /_/GOROOT/src/os/user/cgo_lookup_cgo.go:54:(.text+0xe5): warning: Using 'getgrnam_r' in statically linked applications requires at runtime the sharedg
:: /usr/bin/x86_64-linux-gnu-ld.bfd: /tmp/go-link-878777512/000023.o: in function `mygetgrouplist':
:: /_/GOROOT/src/os/user/getgrouplist_unix.go:15:(.text+0x22): warning: Using 'getgrouplist' in statically linked applications requires at runtime the sg
:: /usr/bin/x86_64-linux-gnu-ld.bfd: /tmp/go-link-878777512/000004.o: in function `_cgo_77133bf98b3a_C2func_getaddrinfo':
:: /tmp/go-build/cgo-gcc-prolog:60:(.text+0x37): warning: Using 'getaddrinfo' in statically linked applications requires at runtime the shared librariesg
:: /usr/bin/x86_64-linux-gnu-ld.bfd: /tmp/go-link-878777512/000022.o: in function `mygetpwnam_r':
:: /_/GOROOT/src/os/user/cgo_lookup_cgo.go:36:(.text+0x18a): warning: Using 'getpwnam_r' in statically linked applications requires at runtime the shareg
:: /usr/bin/x86_64-linux-gnu-ld.bfd: /tmp/go-link-878777512/000022.o: in function `mygetpwuid_r':
:: /_/GOROOT/src/os/user/cgo_lookup_cgo.go:27:(.text+0x249): warning: Using 'getpwuid_r' in statically linked applications requires at runtime the shareg
:: /usr/bin/x86_64-linux-gnu-ld.bfd: /usr/lib/gcc/x86_64-linux-gnu/15/../../../x86_64-linux-gnu/liblz4.a(lz4frame.c.o): in function `LZ4F_makeBlock':
:: (.text+0x255): undefined reference to `XXH32'
:: /usr/bin/x86_64-linux-gnu-ld.bfd: /usr/lib/gcc/x86_64-linux-gnu/15/../../../x86_64-linux-gnu/liblz4.a(lz4frame.c.o): in function `LZ4F_decodeHeader.p:
:: (.text+0x7a9): undefined reference to `XXH32'
:: /usr/bin/x86_64-linux-gnu-ld.bfd: /usr/lib/gcc/x86_64-linux-gnu/15/../../../x86_64-linux-gnu/liblz4.a(lz4frame.c.o): in function `LZ4F_compressBegin_:
:: (.text+0xfd2): undefined reference to `XXH32_reset'
:: /usr/bin/x86_64-linux-gnu-ld.bfd: (.text+0x10c3): undefined reference to `XXH32'
:: /usr/bin/x86_64-linux-gnu-ld.bfd: /usr/lib/gcc/x86_64-linux-gnu/15/../../../x86_64-linux-gnu/liblz4.a(lz4frame.c.o): in function `LZ4F_compressUpdate:
:: (.text+0x1940): undefined reference to `XXH32_update'
:: /usr/bin/x86_64-linux-gnu-ld.bfd: /usr/lib/gcc/x86_64-linux-gnu/15/../../../x86_64-linux-gnu/liblz4.a(lz4frame.c.o): in function `LZ4F_compressEnd':
:: (.text+0x1b28): undefined reference to `XXH32_digest'
:: /usr/bin/x86_64-linux-gnu-ld.bfd: /usr/lib/gcc/x86_64-linux-gnu/15/../../../x86_64-linux-gnu/liblz4.a(lz4frame.c.o): in function `LZ4F_decompress':
:: (.text+0x23ed): undefined reference to `XXH32_digest'
:: /usr/bin/x86_64-linux-gnu-ld.bfd: (.text+0x26c6): undefined reference to `XXH32_digest'
:: /usr/bin/x86_64-linux-gnu-ld.bfd: (.text+0x2baa): undefined reference to `XXH32'
:: /usr/bin/x86_64-linux-gnu-ld.bfd: (.text+0x2d62): undefined reference to `XXH32_reset'
:: /usr/bin/x86_64-linux-gnu-ld.bfd: (.text+0x2daa): undefined reference to `XXH32_reset'
:: /usr/bin/x86_64-linux-gnu-ld.bfd: (.text+0x2e52): undefined reference to `XXH32_update'
:: /usr/bin/x86_64-linux-gnu-ld.bfd: (.text+0x2e92): undefined reference to `XXH32_update'
:: /usr/bin/x86_64-linux-gnu-ld.bfd: (.text+0x2eb6): undefined reference to `XXH32_update'
:: /usr/bin/x86_64-linux-gnu-ld.bfd: (.text+0x2ecd): undefined reference to `XXH32_update'
:: collect2: error: ld returned 1 exit status
::
:: make[1]: Leaving directory '/root/parts/maas-agent/build'
:: make[1]: *** [Makefile:41: build/maas-agent] Error 1
:: make: *** [Makefile:36: build] Error 2
Failed to run the build script for part 'maas-agent'.
Detailed information: 
:: + make -j14
:: go: downloading github.com/cilium/ebpf v0.18.0
:: # get https://proxy.golang.org/github.com/cilium/ebpf/@v/v0.18.0.zip
:: go: downloading github.com/cilium/ebpf v0.18.0
:: # get https://proxy.golang.org/github.com/cilium/ebpf/@v/v0.18.0.zip: 200 OK (1.036s)
:: # get https://proxy.golang.org/github.com/cilium/ebpf/@v/v0.18.0.mod
:: # get https://proxy.golang.org/github.com/cilium/ebpf/@v/v0.18.0.mod
:: # get https://proxy.golang.org/github.com/cilium/ebpf/@v/v0.18.0.mod: 200 OK (0.296s)
:: go: downloading golang.org/x/sys v0.32.0
:: # get https://proxy.golang.org/golang.org/x/sys/@v/v0.32.0.zip
:: # get https://proxy.golang.org/golang.org/x/sys/@v/v0.32.0.zip: 200 OK (0.250s)
:: # get https://proxy.golang.org/github.com/cilium/ebpf/@v/v0.18.0.mod: 200 OK (0.756s)
:: go: downloading golang.org/x/sys v0.32.0
:: # get https://proxy.golang.org/golang.org/x/sys/@v/v0.32.0.mod
:: # get https://proxy.golang.org/golang.org/x/sys/@v/v0.32.0.mod
:: # get https://proxy.golang.org/golang.org/x/sys/@v/v0.32.0.mod: 200 OK (0.246s)
:: go run github.com/cilium/ebpf/cmd/bpf2go -makebase /root/parts/maas-agent/build -tags linux bpf xdp.c -- -I../../ebpf/include
:: # get https://proxy.golang.org/golang.org/x/sys/@v/v0.32.0.mod: 200 OK (0.247s)
:: go run github.com/cilium/ebpf/cmd/bpf2go -makebase /root/parts/maas-agent/build -tags linux bpf xdp.c -- -I../../ebpf/include
:: Makefile:78: warning: pattern recipe did not update peer target 'internal/dhcp/xdp/bpf_bpfeb_bpfeb.go'.
:: Makefile:78: warning: pattern recipe did not update peer target 'internal/dhcp/xdp/bpf_bpfeb_bpfel.go'.
:: Makefile:78: warning: pattern recipe did not update peer target 'internal/dhcp/xdp/bpf_bpfel_bpfeb.go'.
:: Makefile:78: warning: pattern recipe did not update peer target 'internal/dhcp/xdp/bpf_bpfel_bpfel.go'.
:: go: downloading golang.org/x/sync v0.13.0
:: go: downloading golang.org/x/sync v0.13.0
:: go: downloading github.com/spf13/cobra v1.9.1
:: go: downloading github.com/cenkalti/backoff/v4 v4.3.0
:: go: downloading github.com/dustin/go-humanize v1.0.1
:: go: downloading github.com/google/uuid v1.6.0
:: go: downloading github.com/prometheus/client_golang v1.21.1
:: go: downloading github.com/spf13/afero v1.12.0
:: go: downloading go.opentelemetry.io/otel/exporters/prometheus v0.50.0
:: go: downloading go.opentelemetry.io/otel/metric v1.35.0
:: go: downloading go.opentelemetry.io/otel/sdk/metric v1.34.0
:: go: downloading go.opentelemetry.io/otel/sdk v1.35.0
:: go: downloading go.opentelemetry.io/otel v1.35.0
:: go: downloading github.com/google/gopacket v1.1.19
:: go: downloading golang.org/x/net v0.39.0
:: go: downloading github.com/packetcap/go-pcap v0.0.0-20230509084824-080a85fb093e
:: go: downloading go.opentelemetry.io/otel/trace v1.35.0
:: go: downloading go.temporal.io/api v1.49.1
:: go: downloading go.temporal.io/sdk v1.35.0
:: go: downloading gopkg.in/yaml.v3 v3.0.1
:: go: downloading golang.org/x/sys v0.32.0
:: go: downloading github.com/sirupsen/logrus v1.9.3
:: go: downloading github.com/spf13/pflag v1.0.6
:: go: downloading golang.org/x/text v0.24.0
:: go: downloading github.com/canonical/lxd v0.0.0-20250312164442-b13c4f528bf7
:: go: downloading github.com/canonical/microcluster/v2 v2.1.1-0.20250331093222-1e95efcf4f08
:: go: downloading github.com/prometheus/client_model v0.6.1
:: go: downloading google.golang.org/protobuf v1.36.5
:: go: downloading github.com/hashicorp/golang-lru/v2 v2.0.7
:: go: downloading go.temporal.io/sdk/contrib/opentelemetry v0.6.0
:: go: downloading github.com/canonical/pebble v1.10.2
:: go: downloading github.com/miekg/dns v1.1.63
:: go: downloading github.com/cilium/ebpf v0.18.0
:: go: downloading github.com/insomniacslk/dhcp v0.0.0-20250417080101-5f8cf70e8c5f
:: go: downloading github.com/klauspost/compress v1.18.0
:: go: downloading github.com/prometheus/common v0.62.0
:: go: downloading github.com/beorn7/perks v1.0.1
:: go: downloading github.com/cespare/xxhash/v2 v2.3.0
:: go: downloading github.com/prometheus/procfs v0.15.1
:: go: downloading github.com/go-logr/logr v1.4.2
:: go: downloading github.com/go-logr/stdr v1.2.2
:: go: downloading go.opentelemetry.io/auto/sdk v1.1.0
:: go: downloading github.com/nexus-rpc/sdk-go v0.3.0
:: go: downloading github.com/gogo/protobuf v1.3.2
:: go: downloading google.golang.org/grpc v1.71.0
:: go: downloading github.com/gorilla/websocket v1.5.3
:: go: downloading github.com/grpc-ecosystem/grpc-gateway/v2 v2.26.3
:: go: downloading google.golang.org/genproto/googleapis/api v0.0.0-20250303144028-a0af3efb3deb
:: go: downloading github.com/facebookgo/clock v0.0.0-20150410010913-600d898af40a
:: go: downloading github.com/golang/mock v1.6.0
:: go: downloading github.com/grpc-ecosystem/go-grpc-middleware v1.4.0
:: go: downloading github.com/robfig/cron v1.2.0
:: go: downloading github.com/stretchr/testify v1.10.0
:: go: downloading golang.org/x/time v0.8.0
:: go: downloading github.com/munnerz/goautoneg v0.0.0-20191010083416-a7dc8b61c822
:: go: downloading github.com/u-root/uio v0.0.0-20230220225925-ffce2a382923
:: go: downloading github.com/canonical/go-dqlite/v2 v2.0.0
:: go: downloading github.com/mattn/go-sqlite3 v1.14.24
:: go: downloading github.com/gorilla/mux v1.8.1
:: go: downloading github.com/fsnotify/fsnotify v1.8.0
:: # command-line-arguments
:: /usr/bin/x86_64-linux-gnu-ld.bfd: /tmp/go-link-1174462755/000004.o: in function `_cgo_77133bf98b3a_C2func_getaddrinfo':
:: /tmp/go-build/cgo-gcc-prolog:60:(.text+0x37): warning: Using 'getaddrinfo' in statically linked applications requires at runtime the shared librariesg
:: go: downloading google.golang.org/genproto/googleapis/rpc v0.0.0-20250303144028-a0af3efb3deb
:: go: downloading github.com/davecgh/go-spew v1.1.2-0.20180830191138-d8f796af33cc
:: go: downloading github.com/pmezard/go-difflib v1.0.1-0.20181226105442-5d4384ee4fb2
:: go: downloading github.com/stretchr/objx v0.5.2
:: go: downloading github.com/josharian/native v1.1.0
:: go: downloading github.com/pierrec/lz4/v4 v4.1.14
:: go: downloading github.com/pkg/errors v0.9.1
:: go: downloading github.com/google/renameio v1.0.1
:: go: downloading gopkg.in/yaml.v2 v2.4.0
:: go: downloading github.com/Rican7/retry v0.3.1
:: go: downloading golang.org/x/crypto v0.37.0
:: go: downloading github.com/kballard/go-shellquote v0.0.0-20180428030007-95032a82bc51
:: go: downloading github.com/robfig/cron/v3 v3.0.1
:: go: downloading github.com/armon/go-proxyproto v0.1.0
:: go: downloading github.com/flosch/pongo2 v0.0.0-20200913210552-0d938eb266f3
:: go: downloading github.com/pkg/xattr v0.4.10
:: go: downloading github.com/pkg/sftp v1.13.8
:: go: downloading github.com/zitadel/oidc/v3 v3.36.0
:: go: downloading golang.org/x/oauth2 v0.28.0
:: go: downloading github.com/kr/fs v0.1.0
:: go: downloading github.com/gorilla/securecookie v1.1.2
:: go: downloading github.com/go-jose/go-jose/v4 v4.0.5
:: go: downloading github.com/zitadel/logging v0.6.1
:: go: downloading github.com/zitadel/schema v1.3.0
:: go: downloading github.com/muhlemmer/gu v0.3.1
:: # github.com/mattn/go-sqlite3
:: sqlite3-binding.c: In function ‘sqlite3ShadowTableName’:
:: sqlite3-binding.c:123934:9: warning: assignment discards ‘const’ qualifier from pointer target type [-Wdiscarded-qualifiers]
:: 123934 |   zTail = strrchr(zName, '_');
::        |         ^
:: # command-line-arguments
:: /usr/lib/go-1.26/pkg/tool/linux_amd64/link: running x86_64-linux-gnu-gcc failed: exit status 1
:: /usr/bin/x86_64-linux-gnu-gcc -m64 -Wl,--build-id=0x5a42a91108f9df9ab42be50121954d1caae0fc62 -o $WORK/b001/exe/a.out -Wl,--export-dynamic-symbol=_cgoe
:: /usr/bin/x86_64-linux-gnu-ld.bfd: /tmp/go-link-878777512/000037.o: in function `unixDlOpen':
:: /tmp/tmp.go-mod-cachelvD/github.com/mattn/go-sqlite3@v1.14.24/sqlite3-binding.c:45109:(.text+0x821d): warning: Using 'dlopen' in statically linked apg
:: /usr/bin/x86_64-linux-gnu-ld.bfd: /tmp/go-link-878777512/000022.o: in function `mygetgrgid_r':
:: /_/GOROOT/src/os/user/cgo_lookup_cgo.go:45:(.text+0x44): warning: Using 'getgrgid_r' in statically linked applications requires at runtime the sharedg
:: /usr/bin/x86_64-linux-gnu-ld.bfd: /tmp/go-link-878777512/000022.o: in function `mygetgrnam_r':
:: /_/GOROOT/src/os/user/cgo_lookup_cgo.go:54:(.text+0xe5): warning: Using 'getgrnam_r' in statically linked applications requires at runtime the sharedg
:: /usr/bin/x86_64-linux-gnu-ld.bfd: /tmp/go-link-878777512/000023.o: in function `mygetgrouplist':
:: /_/GOROOT/src/os/user/getgrouplist_unix.go:15:(.text+0x22): warning: Using 'getgrouplist' in statically linked applications requires at runtime the sg
:: /usr/bin/x86_64-linux-gnu-ld.bfd: /tmp/go-link-878777512/000004.o: in function `_cgo_77133bf98b3a_C2func_getaddrinfo':
:: /tmp/go-build/cgo-gcc-prolog:60:(.text+0x37): warning: Using 'getaddrinfo' in statically linked applications requires at runtime the shared librariesg
:: /usr/bin/x86_64-linux-gnu-ld.bfd: /tmp/go-link-878777512/000022.o: in function `mygetpwnam_r':
:: /_/GOROOT/src/os/user/cgo_lookup_cgo.go:36:(.text+0x18a): warning: Using 'getpwnam_r' in statically linked applications requires at runtime the shareg
:: /usr/bin/x86_64-linux-gnu-ld.bfd: /tmp/go-link-878777512/000022.o: in function `mygetpwuid_r':
:: /_/GOROOT/src/os/user/cgo_lookup_cgo.go:27:(.text+0x249): warning: Using 'getpwuid_r' in statically linked applications requires at runtime the shareg
:: /usr/bin/x86_64-linux-gnu-ld.bfd: /usr/lib/gcc/x86_64-linux-gnu/15/../../../x86_64-linux-gnu/liblz4.a(lz4frame.c.o): in function `LZ4F_makeBlock':
:: (.text+0x255): undefined reference to `XXH32'
:: /usr/bin/x86_64-linux-gnu-ld.bfd: /usr/lib/gcc/x86_64-linux-gnu/15/../../../x86_64-linux-gnu/liblz4.a(lz4frame.c.o): in function `LZ4F_decodeHeader.p:
:: (.text+0x7a9): undefined reference to `XXH32'
:: /usr/bin/x86_64-linux-gnu-ld.bfd: /usr/lib/gcc/x86_64-linux-gnu/15/../../../x86_64-linux-gnu/liblz4.a(lz4frame.c.o): in function `LZ4F_compressBegin_:
:: (.text+0xfd2): undefined reference to `XXH32_reset'
:: /usr/bin/x86_64-linux-gnu-ld.bfd: (.text+0x10c3): undefined reference to `XXH32'
:: /usr/bin/x86_64-linux-gnu-ld.bfd: /usr/lib/gcc/x86_64-linux-gnu/15/../../../x86_64-linux-gnu/liblz4.a(lz4frame.c.o): in function `LZ4F_compressUpdate:
:: (.text+0x1940): undefined reference to `XXH32_update'
:: /usr/bin/x86_64-linux-gnu-ld.bfd: /usr/lib/gcc/x86_64-linux-gnu/15/../../../x86_64-linux-gnu/liblz4.a(lz4frame.c.o): in function `LZ4F_compressEnd':
:: (.text+0x1b28): undefined reference to `XXH32_digest'
:: /usr/bin/x86_64-linux-gnu-ld.bfd: /usr/lib/gcc/x86_64-linux-gnu/15/../../../x86_64-linux-gnu/liblz4.a(lz4frame.c.o): in function `LZ4F_decompress':
:: (.text+0x23ed): undefined reference to `XXH32_digest'
:: /usr/bin/x86_64-linux-gnu-ld.bfd: (.text+0x26c6): undefined reference to `XXH32_digest'
:: /usr/bin/x86_64-linux-gnu-ld.bfd: (.text+0x2baa): undefined reference to `XXH32'
:: /usr/bin/x86_64-linux-gnu-ld.bfd: (.text+0x2d62): undefined reference to `XXH32_reset'
:: /usr/bin/x86_64-linux-gnu-ld.bfd: (.text+0x2daa): undefined reference to `XXH32_reset'
:: /usr/bin/x86_64-linux-gnu-ld.bfd: (.text+0x2e52): undefined reference to `XXH32_update'
:: /usr/bin/x86_64-linux-gnu-ld.bfd: (.text+0x2e92): undefined reference to `XXH32_update'
:: /usr/bin/x86_64-linux-gnu-ld.bfd: (.text+0x2eb6): undefined reference to `XXH32_update'
:: /usr/bin/x86_64-linux-gnu-ld.bfd: (.text+0x2ecd): undefined reference to `XXH32_update'
:: collect2: error: ld returned 1 exit status
:: make[1]: *** [Makefile:41: build/maas-agent] Error 1
:: make: *** [Makefile:36: build] Error 2
Recommended resolution: Check the build output and verify the project can work with the 'make' plugin.
For more information, check out: https://documentation.ubuntu.com/snapcraft/8.14.4/reference/plugins/
Failed to run snapcraft in instance
Full execution log: '/home/jacopo.rota@canonical.com/.local/state/snapcraft/log/snapcraft-20260331-091834.606272.log'
make: *** [Makefile:482: dev-snap/maas.snap] Error 1

@alexsander-souza
Copy link
Copy Markdown
Contributor Author

@r00ta I don't expect the build to work at this point. I'll push all Go fixes in another PR

@r00ta
Copy link
Copy Markdown
Contributor

r00ta commented Mar 31, 2026

@r00ta I don't expect the build to work at this point. I'll push all Go fixes in another PR

I don't know how to review this code if I can't build it. I believe you can self approve and move on?

@alexsander-souza alexsander-souza merged commit e4da870 into resolute_support Mar 31, 2026
3 of 6 checks passed
@alexsander-souza alexsander-souza deleted the pr-01/release-snap-packaging branch March 31, 2026 13:01
alexsander-souza added a commit that referenced this pull request Apr 8, 2026
Declare Ubuntu Resolute as the release target and bring the snap build
into line with core26 conventions, where /bin is a symlink to /usr/bin.

- debian/changelog: set distribution to resolute
- snapcraft.yaml: base core24 → core26, add build-base: devel, grade
stable → devel
- Replace venv-based install with pip install --prefix=.../usr to avoid
/bin symlink conflicts; remove venv artefact stage filters (activate*,
pyvenv.cfg)
- Move all snap app commands and wrapper scripts from bin/ to usr/bin/
- Add organize mappings usr/local/bin/* → usr/bin/ and
usr/local/lib/python3.14/* → usr/lib/python3.14/ for the pip-prefix
layout
- Pebble part: add organize bin → usr/sbin
- maas-agent, maas-openfga parts: drop per-binary organize blocks, use
prime: [usr/sbin/]; update Makefile install targets to match
- Remove separate maas-netmon snap part; its artefact is now captured by
the maas-agent part's prime: [usr/sbin/]
alexsander-souza added a commit that referenced this pull request Apr 8, 2026
Declare Ubuntu Resolute as the release target and bring the snap build
into line with core26 conventions, where /bin is a symlink to /usr/bin.

- debian/changelog: set distribution to resolute
- snapcraft.yaml: base core24 → core26, add build-base: devel, grade
stable → devel
- Replace venv-based install with pip install --prefix=.../usr to avoid
/bin symlink conflicts; remove venv artefact stage filters (activate*,
pyvenv.cfg)
- Move all snap app commands and wrapper scripts from bin/ to usr/bin/
- Add organize mappings usr/local/bin/* → usr/bin/ and
usr/local/lib/python3.14/* → usr/lib/python3.14/ for the pip-prefix
layout
- Pebble part: add organize bin → usr/sbin
- maas-agent, maas-openfga parts: drop per-binary organize blocks, use
prime: [usr/sbin/]; update Makefile install targets to match
- Remove separate maas-netmon snap part; its artefact is now captured by
the maas-agent part's prime: [usr/sbin/]
alexsander-souza added a commit that referenced this pull request Apr 9, 2026
Declare Ubuntu Resolute as the release target and bring the snap build
into line with core26 conventions, where /bin is a symlink to /usr/bin.

- debian/changelog: set distribution to resolute
- snapcraft.yaml: base core24 → core26, add build-base: devel, grade
stable → devel
- Replace venv-based install with pip install --prefix=.../usr to avoid
/bin symlink conflicts; remove venv artefact stage filters (activate*,
pyvenv.cfg)
- Move all snap app commands and wrapper scripts from bin/ to usr/bin/
- Add organize mappings usr/local/bin/* → usr/bin/ and
usr/local/lib/python3.14/* → usr/lib/python3.14/ for the pip-prefix
layout
- Pebble part: add organize bin → usr/sbin
- maas-agent, maas-openfga parts: drop per-binary organize blocks, use
prime: [usr/sbin/]; update Makefile install targets to match
- Remove separate maas-netmon snap part; its artefact is now captured by
the maas-agent part's prime: [usr/sbin/]
alexsander-souza added a commit that referenced this pull request Apr 17, 2026
Declare Ubuntu Resolute as the release target and bring the snap build
into line with core26 conventions, where /bin is a symlink to /usr/bin.

- debian/changelog: set distribution to resolute
- snapcraft.yaml: base core24 → core26, add build-base: devel, grade
stable → devel
- Replace venv-based install with pip install --prefix=.../usr to avoid
/bin symlink conflicts; remove venv artefact stage filters (activate*,
pyvenv.cfg)
- Move all snap app commands and wrapper scripts from bin/ to usr/bin/
- Add organize mappings usr/local/bin/* → usr/bin/ and
usr/local/lib/python3.14/* → usr/lib/python3.14/ for the pip-prefix
layout
- Pebble part: add organize bin → usr/sbin
- maas-agent, maas-openfga parts: drop per-binary organize blocks, use
prime: [usr/sbin/]; update Makefile install targets to match
- Remove separate maas-netmon snap part; its artefact is now captured by
the maas-agent part's prime: [usr/sbin/]
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.

2 participants