I want to configure a Raspberry Pi 4 as a web (application) server.
Although I could of course simply do it via Raspbian, I would love to use an Immutable/auto updating OS like Fedora Core OS/Fedora IoT/OpenSUSE MicroOS.
To my surprise, every solution does not look very turnkey ready for Raspberry Pi 4.
Please correct me, if I am wrong but it seems:
-
For Fedora Core OS/OpenSUSE MicroOS it seems like I have to download the firmware for the Raspberry Pi, partition the sd card by hand and afterwards login to configure WiFi and/or use an ignition file on a separate USB stick on boot
-
For Fedora IoT it seems I need a running Fedora system first (yes, I know about LiveCDs) and I still need to edit by hand the Wifi configuration How to install Fedora IoT on Raspberry Pi 4. Further, it seems Fedora IoT has ‘fixed’ version numbers and no automatic updates.
So, my questions:
- It seems Fedora IoT is the nearest fit for my use case and comparatively the easiest version to setup?
- Am I missing out on Fedora Core OS or OpenSUSE MicroOS?
- Are there other viable immutable options from reputable sources?
- Does anyone know about an immutable distribution, where the initial setup is basically like Raspbians ‘dd image to sdcard and copy user credentials and wifi config to the /boot partition.’?
- How does Fedora IoT handle updates between versions (like Fedora 38 to Fedora 39)
- Is it a regular update or do I have to tell the OS to update explicitly
- Most important question: Anyone here has experience with running Rasbian and one of my options in practice and can give some advice/recommendations if immutable is worth it?
I seem to recall downloading image for pi here https://en.opensuse.org/Portal:MicroOS
Then using pi imager to transfer it to SD card card
And then adding combustion and ignition files using this slick file builder https://opensuse.github.io/fuel-ignition/
Nice, looks exactly like what I was looking for, thank you so much! :-)
One more question: Can I put the created ignition file somewhere on the SD card like /boot or do I need an additional USB pen drive for it? Just found this 4 years old reddit answer, which looks not promising. It seems the official documentation also insists on an additional media for the ignition file, or could I just use an /ignition folder on the SD card itself?
I’m pretty sure it wants it separate for reasons I am not aware of.
Thank you for suggesting Ubuntu Core.
In the setup instructions it explicitly says to connect the Pi to a monitor.
Do I miss a magic config file for headless setups?
Why do you suggest Ubuntu Core over Core/Micro OS or Fedora IoT?
I know of dietpi, but I don’t see any benefits compared to a properly configured Raspbian setup (The smaller memory footprint and lower process count is IMHO offset by having an additional party in my software supply chain).
The setups are security critical and at the same time, I would like to have one setup which I can ‘forget’ about until the hardware fails. Daily backups are done and of course my servers are provisioned automatically.
Can’t you just setup automatic updates? Is this for educational purposes or lazy purposes?