this post was submitted on 18 Oct 2023
28 points (100.0% liked)

Linux

47893 readers
1355 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
 

At the moment I am using Debian Bookworm and I can setup/configure 100% of my setup automatically everything via Ansible. (Only thing left after the Ansible script is login to my online accounts/email which I would rather not automate.)

Is there a way/does anyone have this working/running on Silverblue?

To be more concrete: After I install Silverblue with default settings, I want to automatically install all needed flatpaks, configure them (and link configuration files to a github repository) and also setup some toolboxes for development. With one command/step, like running Ansible.

all 23 comments
sorted by: hot top controversial new old
[–] [email protected] 9 points 1 year ago (1 children)

Check ublue approach like for example in this repo: https://github.com/ublue-os/beyond

In other words, leverage native OCI containers.

[–] [email protected] 2 points 1 year ago (1 children)

Thank you, looks very interesting.

According to the readme one has to login and issue commands at the shell - is there a way to use a kickstart file/some kind of provisioning tool like Ansible with native support for rpm-ostree?

[–] [email protected] 4 points 1 year ago (1 children)

Yeah, look at the examples here: https://github.com/coreos/layering-examples for an ansible example.

Though some modules don't work (the flatpak one doesn't work unfortunately). This is also useful: https://github.com/j1mc/ansible-silverblue

Hope it helps!

[–] [email protected] 2 points 1 year ago (2 children)

Thanks a lot, will check your links tonight. I'll try to wrap my head around why Ansible doesn't work OOTB, given Red Hats involvement with Fedora and Ansible. Am I the only who tries to use Silverblue as cattle instead of a desktop pet?!

[–] [email protected] 3 points 1 year ago (1 children)

I was curious and I was able to use ansible to install a list of flatpaks without problem

[–] [email protected] 1 points 1 year ago (1 children)

Very nice, thanks for giving it a try! :-)

[–] [email protected] 2 points 1 year ago

No problem. If you can't get it working hit me up and I'll see what I can do to help.

[–] [email protected] 3 points 1 year ago

The OCI features are pretty new (they won't hit Fedora until F40) so there's catching up to do still. They'll get there at some point, there's just a vast amount of existing work out there that they need to account for.

[–] [email protected] 6 points 1 year ago (1 children)

Yes, I do this with Ansible :).

There are Flatpak modules and gsettings modules to set up Gnome to your liking.

I also build my own toolbox using ansible-container.

[–] [email protected] 1 points 1 year ago

Perfect, this was the answer I was looking for! :-)

[–] [email protected] 6 points 1 year ago (3 children)

Have you looked into NixOS instead of silverblue?

[–] [email protected] 5 points 1 year ago (1 children)

Came here to say this. NixOS does exactly what you want built in and has a lot of the same advantages as silverblue

[–] [email protected] 3 points 1 year ago

Thirded -- OP described a usecase for NixOS perfectly.

[–] [email protected] 4 points 1 year ago (1 children)

Reusing my other answer: Thanks, I am mostly motivated by having less work using an immutable operating system. ;-)

To elaborate more: By now I want an OS that is stable, has updates automatically in the background and just a reboot away. NiXOS sounds like too much work for too little benefit for my current usage/use cases.

[–] [email protected] 2 points 1 year ago

If you want to automate your installation there's going to be work involved no matter what you use to achieve it

NixOS is actually quite stable provided you don't use the unstable branch

[–] [email protected] 3 points 1 year ago

lol ... I give up - installing NixOS in a VM right now. ;-)

[–] [email protected] 5 points 1 year ago

You can see Universal Blue's custom images feature to set up an automatic image building system. You would no longer need to layer stuff since it would get cleanly built into your image already, and you can modify a list of Flatpaks to be installed on install time. You can then use Fleek with Nix to manage your dotfiles.

[–] [email protected] 4 points 1 year ago

Definitely OT, but at this point you may want to checkout NixOS.

[–] [email protected] 3 points 1 year ago (1 children)

In fedora podcast #30 just a week or so ago there was some discussion about ansible and silverblue. I don't think it specifically answers your questions, but may be an interesting listen since you're looking into this. https://fedoraproject.org/podcast/

[–] [email protected] 2 points 1 year ago

Nice! Listening right now, and didn't even know about this podcast! :-)

[–] [email protected] 3 points 1 year ago (1 children)

If your not scared of poor documentation, a born tinkerer, and have a lot of time on your hands, you should try Nix

[–] [email protected] 3 points 1 year ago

Thanks, I am mostly motivated by having less work using an immutable operating system. ;-)