❄️ The toolkit to build, ship and maintain cloud-init driven Linux derivatives based on container images
Go to file
David Cassany a8982b16ce Use chroot to label previously binded mountpoints
This prevents errors with non chrooted setfiles calls
in which fail due to policy divergences between host and
target.

For that purpose a new option to chroot utility has
been included to allow chroot without setting the default
bind mounts for /dev/, /sys and /proc.

Signed-off-by: David Cassany <dcassany@suse.com>
2025-09-26 17:26:52 +02:00
.github Bump actions/setup-go from 5 to 6 2025-09-08 09:45:02 +02:00
.obs Fix elemental-toolkit build for Dev env 2025-02-04 13:28:15 +01:00
cmd Adapt code and unit tests 2025-08-06 13:53:10 +02:00
docs Update copyright year (2025) 2025-01-07 16:43:28 +01:00
examples Permissive mode for green selinux 2025-08-06 13:53:10 +02:00
internal/version Update copyright year (2025) 2025-01-07 16:43:28 +01:00
make Expand downgrade test by upgrading back to origin after downgrading (#2224) 2024-11-12 11:12:51 +01:00
pkg Use chroot to label previously binded mountpoints 2025-09-26 17:26:52 +02:00
scripts Simplify podman calls in CI steup 2024-12-13 11:27:38 +01:00
tests Update copyright year (2025) 2025-01-07 16:43:28 +01:00
vendor Bump github.com/jaypipes/ghw from 0.15.0 to 0.19.1 2025-09-22 11:18:24 +02:00
.codecov.yaml
.dockerignore Ensure the cache is renewed on source changes 2023-10-11 12:32:56 +02:00
.gitignore Test qemu secure boot 2024-03-21 14:58:49 +01:00
.gitmodules
.golangci.yml golangci-lint: use new formats config property 2025-02-17 11:15:53 +01:00
.goreleaser.yaml Drop ARM32 build 2023-11-27 16:10:25 +01:00
CODEOWNERS
CONTRIBUTING.md Update CONTRIBUTING.md 2023-07-10 21:50:51 +02:00
Dockerfile Bump go version to 1.24 in Dockerfile 2025-08-07 13:26:12 +02:00
LICENSE
Makefile Fix Makefile for riscv64 2024-12-03 12:44:21 +01:00
README.md Fix status badge in README 2024-05-23 09:05:26 +02:00
config.yaml.example Make EFI partition size configurable at install time (#2105) 2024-06-19 06:23:33 +02:00
go.mod Bump github.com/jaypipes/ghw from 0.15.0 to 0.19.1 2025-09-22 11:18:24 +02:00
go.sum Bump github.com/jaypipes/ghw from 0.15.0 to 0.19.1 2025-09-22 11:18:24 +02:00
main.go Update copyright year (2025) 2025-01-07 16:43:28 +01:00

README.md

Elemental Toolkit

Build nightly

Elemental-toolkit is a toolkit to build, ship and maintain cloud-init driven Linux derivatives based on container images with a common featureset - allows container images to be bootable in VMs, baremetals, embedded devices, and much more.

It is designed to reduce the maintenance surface, with a flexible approach to provide upgrades from container registries. It is cloud-init driven and also designed to be adaptive-first, allowing easily to build changes on top.

Documentation is available at https://rancher.github.io/elemental-toolkit/docs

Design goals

  • A Manifest for container-based OS. It contains just the common bits to make a container image bootable and to be upgraded from, with little customization on top
  • Immutable-first, but with a flexible layout
  • Cloud-init driven
  • Based on systemd
  • Built and upgraded from containers
  • OTA updates
  • Easy to customize
  • Cryptographically verified

Quick start

Check out our getting-started section in the documentation.

License

Copyright (c) 2020-2024 SUSE, LLC

Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at

http://www.apache.org/licenses/LICENSE-2.0

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.