this post was submitted on 22 Apr 2024
18 points (95.0% liked)

Linux

47952 readers
1939 users here now

From Wikipedia, the free encyclopedia

Linux is a family of open source Unix-like operating systems based on the Linux kernel, an operating system kernel first released on September 17, 1991 by Linus Torvalds. Linux is typically packaged in a Linux distribution (or distro for short).

Distributions include the Linux kernel and supporting system software and libraries, many of which are provided by the GNU Project. Many Linux distributions use the word "Linux" in their name, but the Free Software Foundation uses the name GNU/Linux to emphasize the importance of GNU software, causing some controversy.

Rules

Related Communities

Community icon by Alpár-Etele Méder, licensed under CC BY 3.0

founded 5 years ago
MODERATORS
 

Status:

There are bootable images of CentOS Stream.

CentOS-bootc images

Repo


Note: I got the info that the CentOS people are working on this. Still, I think thats too slow XD

Note 2: See below for word explanations


CentOS is the downstream of Fedora and upstream of the extremely stable RHEL.

Debian is stable and has a release cycle of 2 years, RHEL uses 5 years. So using RHEL on a desktop is overkill.

But unlike all the hate about RedHat converting CentOS to CentOS Stream, I think this makes it a very very good candidate for a normal workstation!

It has EPEL and COPR repo support, so you can get tons of external packages, desktops etc. You can also just clone COPR repos you like, or ask the maintainers to add CentOS Stream to the builds.

I would not want to use a "traditionally" package-managed distro anymore though, it is just not reliable enough for me.

rpm-ostree is perfect, Fedora Atomic Desktops (Silverblue, Kinoite, Sericea, ...), uBlue, Bazzite, Bluefin, Aurora. Even a COSMIC image is there.

rpm-ostree needs 2 things:

  1. An ostree remote OR OCI container registry, to pull the main image
  2. Optional, for layering: traditional RPM package repositories

The repos are already there, but an OCI image is needed. There are OCI images of CentOS stream.

But uBlues framework can not just be used, as they download the image from Fedora, chroot into it and use the builtin tools. This requires the presence of rpm-ostree and a kernel, which are both missing in the CentOS Stream image.

So, the question:

Do you know how to manipulate OCI images, to pull it in, add packages from the CentOS repos (kernel) and COPR (rpm-ostree), do some changes and build an OCI image again?

Word explanations

word explanation
OCI Open container initiative, a container format which docker, podman, ublue and more use. With ostree native containers these may replace ostree remotes in the future
upstream where code first occurs. The official developers repo for example.
downstream some place where code arrives later, for example through (distro) packaging, or in stable distros
distro distribution, a form of packaging the kernel, utils and software into a usable form
RHEL RedHat enterprise linux, product of RedHat
CentOS discontinued clone of RHEL, (ab)used by many companies to get a rock solid and compliant OS for free
CentOS Stream continuation of CentOS, upstream of RHEL, downstream of Fedora. The middleground so to say
EPEL extra packages for enterprise linux, a repo to get more software onto RHEL, CentOS Stream and RHEL clones like AlmaLinux and RockyLinux
COPR "cool other package repos" (I think), the AUR or OpenBuildService of Fedora, building RPMs and creating repos very easily
rpm-ostree a package manager that uses ostree and rpm, to manage the system using ostree, and add or remove packages using rpm, from traditional repos
ostree something like git for your OS, making sure it is 100% what is upstream on the servers, ensuring perfectly reproducable bugs, reducing entropy etc. Also has support for rebase other git-like concepts. In my opinion an incredibly awesome way to manage a distro
entropy physical concept of "chaos". Here: the amount of variables you can have in an OS, like adding and removing packages, installing external repos, changing configs, ...
Fedora Atomic Desktops Fedora Desktop variants using rpm-ostree. Silverblue=GNOME, Kinoite=KDE, Sericea=Sway, also Budgie and more
uBlue a project "consuming" Fedoras various images, adding packages, configurations etc, making them painless. They have a ton of desktops, HWE images, server images etc
HWE hardware enablement, here adding proprietary NVIDIA Drivers and the needed configs, using the Surface kernel or ASUS patches
Bazzite uBlues Gaming variant, to replace SteamOS or to use on other handhelds and desktops
Bluefin uBlues custom Silverblue variant with lots of cool modern stuff and also a developer edition
Aurora Bluefin but with KDE instead of GNOME
COSMIC System76' new desktop, Wayland only, written from scratch in Rust, using the Iced toolkit and the Smithay library
all 12 comments
sorted by: hot top controversial new old
[–] j0rge@lemmy.ml 7 points 6 months ago (1 children)

This requires the presence of rpm-ostree and a kernel, which are both missing in the CentOS Stream image.

There are ostree-enabled OCI containers of centos if you know where to look. :D

This should be enough until they start publishing official ones, never used it:

https://quay.io/repository/centos-bootc/centos-bootc-dev?tab=tags

[–] boredsquirrel 1 points 6 months ago* (last edited 6 months ago) (1 children)

Damn good find! So, this image could be pulled in using bluebuild, then adding rpm-ostree using dnf, and doing all the stuff like that?

Thinking about it, the image will be very different from Fedoras, being a mutable minimal CentOS. So all the linking and making immutable would need to be done.

[–] j0rge@lemmy.ml 2 points 6 months ago (1 children)

being a mutable minimal CentOS. So all the linking and making immutable would need to be done.

No it's designed to be consumed as a base image for ostree enabled OCI containers.

[–] boredsquirrel 1 points 6 months ago

Ok then lets go! I hope I can get something going in a few days

[–] Guenther_Amanita@feddit.de 3 points 6 months ago

I sadly can't give you any input or help, but I really appreciate your idea and, coincidentally, thought about the exact same thing today 😁

I think a more stable (slower release) variant of Fedora Atomic would be absolutely great for people who don't like change as much as current Fedora users.

A more conservative variant would be great, especially for companies.
The combination of a stable system (in terms of update frequency and changes) with the unbreakability and deployability would be a huge win.

Imagine being the admin of a small company, class or department and just creating your own uBlue-image with all software your team needs and rebase a dozen PCs to that image. Would be awesome!

I think, currently, Fedora is sometimes too experimental and leading edge, which might be a problem for some people, especially in the business world. Having a more stable variant would be great.

[–] just_another_person@lemmy.world 1 points 6 months ago (1 children)

Firstly, I think some of your reasoning for doing things this way are a bit misguided. Relax a tad.

Second, when you're asking a community for help, just assume not everyone knows what you are talking about. You're jumping over logic loops like we're all supposed to know what you mean, and then moving on to acronym clouds that could mean multiple things.

Lastly, are you talking about Oracle images, or the Open Container Initiative? If you're taking about the former: no. If the latter: yes you can, that's the whole point.

[–] boredsquirrel 2 points 6 months ago (1 children)

I will look over it and add an acronym legend at the end

[–] boredsquirrel 1 points 6 months ago