Context
About a month ago now I endeavored on a new hobby. Setting up a homeserver. I back then made a post here of that endeavor.
This one:
In the replies a got a lot of advice on what I should try and was good and bad with the work I had done so far.
Some of these suggestions were:
- Try Proxmox
- Dont run TrueNAS in a vm
- Run TrueNAS in a vm
- Dont mix drives of differing rpms
etc…
Basically what it came down to was try a bunch of stuff and see what you like.
I didnt have a lot of time in the last month but in that time. I have a tried and experimented with a lot of the suggestions and why eventually stuck with my original approach even if its in hindsight maybe the most difficult out of the options I know of.
Trying alternatives
The first time I booted proxmox I thought “wow this enterprise!” but after experimenting with it that reaction became “wow, this is enterprise… I dont need it”. Its good to good option to keep in mind in the future if I ever need to run clusters or something like that but I dont need it. I am mostly going to use containers anyways so I dont see the point in the hypervisor features. Also proxmox uses LXC containers which I learnt dont fit my usecases very well.
As a test I tried TrueNAS in a vm on proxmox since might as well and yeah its great. Its easy look at all those plugins and buttons. Except containers are still kind of an issue and furthermore well… its boring. I didnt consider it until this point but with my first approach I was enjoying figuring stuff out and feeling the burn of having to figure out why my git container really likes to crash at startup.
I had also thought of trying open media vault but that would have a lot of the problems as TrueNAS.
So back to fedora server I went.
Fedora server was a bad idea
I had an iso from the previous attempt but I thought It would be nicer to start fresh and since the last installation ended up a bit messy.
So with all things I learnt previously I had all the containers setup surprisingly quickly and a lot more cleanly. Next was to some apply the feedback you all gave me.
LTS Kernel
First being getting some sort of a stable base.
This should be easy even ArchLinux provides alternative kernels in its repositories, surely fedora does as well… hm… the lts kernel isnt there.
I eventually find someone uploading and updating lts kernels in the copr repositories(third party repositories). Its a bit weird having to rely on an unofficial volunteer for my security updates but he seems to be very on the ball and the repo was popular. I have more examples of this like installing proprietary nvidia drivers or god forbid flatpaks that arent blessed by the fedora team but this one imo was the most egregious.
A smidgen iffy but should be fine.
Installing ZFS
Next and where Im currently at, zfs.
I read it as heavily recommended and something I should use in my first post so I found it in the official repos and installed it. Only to find out that this version of zfs is ancient. Ancient to the point that the outdated zfs dashboard plugin I wanted use considered it too old. I looked at the copr repositories for packages but they were all out of date experiments by randos so that wasnt an option either.
Thats when I did a bit of research and learnt that openzfs plays a dangerous game of hokey-pokey with oracle(them again…). Therefore openzfs isnt packaged with fedora. This is fine but what made it the most annoying was that the official methods for installing zfs on fedora doesnt work or is outdated. I eventually had to compile it in from source to get a functional installation.
COPR
I tried solving a lot of my issues through copr while it sometimes worked a lot of the time the state of packaging on copr isnt very good. Theres a lot duplicate uploads of things and a lot of packages that arent maintained. Its not like the aur which is looks to be in a better state. Not that its a bad experience overall. Its very easy to see which packages to trust but it makes me a lot less comfortable relying on it. Especially for packages like the bloody kernel. It wouldnt be so bad if I hadnt have to turn to it so often as I have.
The Good
I have more complaints but they boil down to more of the same either its not available or I have to jump through hoops to get it. However if you play by fedora’s rules it might be one of the smoothest Linux experiences out there. If… If you play by their rules which is why it is so popular despite the shortcomings, I guess. The package manager is very feature rich and easy to operate at the same time. The installation experience might be the nicest out there and the installation package configurations are genuinely useful and not full of bs. The overall feel of polish exudes even through the terminal interface. There is literally no weirdness until that is, you start to try some things.
Summary on Fedora Server
In practice fedora post install is frustrating distro to use use. Arch and Gentoo might be harder to install but once installed their straight forward. Especially if you have a decent amount of Linux experience. It basically boils down to packaging.
With Arch and Gentoo the packaging is far more lenient with licenses than fedora is. They also keep generally useful alternatives like gpu drivers and alternative kernels in their main repositories making them a lot more flexible. Fedora doesnt like giving easy access to alternatives it seems. You have to play by the rules.
Sticking with Fedora?
Which is why its strange Im sticking with it. I looked for alternatives but as I said I enjoy the pain to certain extent and I feel like a learn a lot more from this than if I were to go with something like Ubuntu server.