Minimal Workstation

Other distributions like Ubuntu or Manjaro provide a “minimal” installation option that strips out a lot of programs considered unnecessary. And I think Fedora should have a similar option in the installer. Most users will never need stuff like gnome-connections, gnome-contacts or cheese. It just makes the system (seem) more bloated. Users should decide for themselves what software they want to use.

You can already use the network installer to install whatever editions/packages you wish:

https://alt.fedoraproject.org/

6 Likes

Generally, the software Workstation includes is meant to cover various basic functionality. For example, Cheese is a straightforward way to test your camera and mic. That’s a conscious decision of the Workstation Working Group, and I think it’s the right one for a general audience.

However, Fedora’s mission is to provide the tools for interested contributors to build what they believe are the perfect solutions for users. If you think this is really important and can find a few other people that agree, I think there’s plenty of room for a “Minimal GNOME” spin.

If it’s just for your personal setup, you might consider creating a Kickstart you use for future installs that builds just exactly what you like. This is the first step in creating a spin – but useful on its own too.

5 Likes

I’m curious who exactly are these “most users” that you speak for who don’t need productivity software… When I hear “bloat” as the reason I instantly become uninterested because that’s so subjective. What exactly do you use your computer for? I use mine for real work so productivity software is appreciated (and I’d certainly expect a distro with “Workstation” in the name to come with those apps). If all you use your computer for is gaming and ricing a tiling window manager setup then sure, maybe you don’t need them, but I (and I’m guessing many others) definitely do.

It especially strikes me as odd that you single out Cheese as a “bloat” app considering we’ve been in a pandemic for the last few years, meaning a lot of work and schooling has gone remote. How are you going to test if your webcam works without webcam software?!

“Users should decide for themselves what software they want to use.” - and they can. Nothing’s stopping you from simply running sudo dnf remove (whatever you don’t want) or just installing from the Fedora Everything installer so you can avoid these so called “bloat” apps to begin with. Fedora Workstation is deliberately a curated desktop experience for general use - Fedora Everything is the “assemble it yourself” experience, which seems to be more what you want.

Another thing worth pointing out is that currently Fedora Silverblue does not ship with much software by default. Don’t count on it to remain the case forever in future as, as far as I remember, the goal is to bring it on par with the regular Workstation setup at some point in the future, specifically with regards to pre-installed software on the system. (I might be wrong, though.)

As it is right now, in Silverblue you really get the bare minimum pre-installed and you can install additional packages via Flatpak, in a toolbx container or layered on the base system with rpm-ostree. The last two variants use the regular Fedora repositories and install from there. The setup is very flexible and you can decide what you want to install, and what not.

It is very stable in practical day-to-day use (I’ve relied on it for quite some time now), but the usual caveats apply: this is an upcoming release and various parts are under active development. If you don’t do something too unusual, you should be fine. If you do, you can ask here, in Ask Fedora, or in the Silverblue channel on Matrix/IRC and there will probalby someone who is able to help you as they know about the subject deeply and maybe tried out something very similar themselves.

There is no right answer to the default software set. If you strip everything except the core DE components someone will complain it is too bloated. Alternatively if you preinstall every package in the Fedora repo someone else will complain it doesn’t include enough software to be usable out of the box.

8 Likes

I know there is no right answer to this. I am just suggesting an opt-in option in the installer for the people who do not want so much preinstalled. Similarly to Ubuntu’s installer it should strip mainly graphical applications that have rather specific than general use cases.

Determined by who? Some people would argue that the current set of applications already does that. Others would argue that whatever packages you think should be removed are still too many. There is no “right” answer here.

Better just to use the net install media if you want to tailor the installed software.

1 Like

I see much interest in a minimal install of Fedora. (For example, a search of reddit.com).

Perhaps the Everything install image can be better promoted to this audience.

Myself, when I was looking for a minimal install, I overlooked the Everything image, thinking it must be an extremely large image containing every package: the direct opposite of minimal.

I suggest adding the following wording to https://alt.fedoraproject.org/:

Everything. Choose this image for a custom or minimal desktop install. For a minimal server, use the netinstall image linked above. In both cases, a network connection is required.

In addition, I’ve long wondered if some of the use cases for Spins and Labs could be satisfied with a minimal install followed by installation of a list of packages recommended by the associated SIG.

1 Like

Theoretically, I would agree to make it clearer that there is an Everything, since there are users who want to customize more than intended by Workstation installations. However, as far as I know, the Everything installations are not equal to the other Fedoras. They don’t create the “well aligned concert of configurations/packages collectively tailored to harmonize together” but just put things together. E.g., you have two different possibilities in Everything to install KDE, both installing completely different packages. One is “KDE packages only” without considering anything else, the other one was as far as I remember also not equal to the well-aligned KDE spin (I was testing it a long time ago). This also implies less testing of the outcome. I think that was the reason why they remain not actively promoted.

But to serve the “customizers” in our community, I would agree to more actively promote the netinstall and make clearer that this is not just a server installation. At the moment, netinstall is explicitly declared as “Fedora Server”, and a very small text below states “Note: You can select different editions of Fedora to install with this netinstall. You are not limited to Server edition only.”

So for me this would be the point to start, and maybe also a compromise that could be accepted by the wider community? This critique is not new, and in most cases it can be tackled by making clear what @ankursinha already noted above.


Supplement: I became curious as I was not using them for long, so I just checked out Everything and Netinst in VMs. Today, it seems these two are equal, at least the selections seem to be the same (including the two KDE possibilities, at which the user has to be aware of the differences) :confused: I expect there is no difference in the installed outcome? When I was testing it back then, in any configuration/selection, Everything was installing packages that are not installed by Workstation or KDE spin.

HMMmm… I’m not sure who the intended beneficiaries of this are. New novice users who are not tech savvy would likely find the standard installed app’s useful. For myself, I just have a script that removes things I don’t want, installs things I do want, and sets preferences. This doesn’t seem to be an issue for the tech savvy folks who can readily use a Kickstart, a script, or any of the other means we have available to accomplish this.

1 Like

Ironically, I would suggest to people to adopt your approach instead of making it more complicated. I’m a fan of standardization, massive testing, and keeping and transferring stability and security guarantees wherever possible (which is not limited to automated testing/guarantees, and not limited to packages). Just removing some packages ensures to keep all the guarantees contained in Workstation, which comes with a well aligned and tested configuration, not just packages.

Everything"/“netinst” already differ more than just having less packages in total, at least in some configurations/selections. I see an increased chance that firewalls at Everything/netinst end up disabled more often than in Workstation as they are - in at least some selections - not prepared for average users as those in Workstation are; just an example. In other configurations they still install vast amounts of desktop apps, even if nothing is selected. I have to partly revoke my comment above as “netinst” seems atm indeed equal to “Everything”. I’m not sure about Kickstart but I expect it to be a comparable case in this respect.

However, although I think in most cases it is not a good compromise, I assume you are right that Kickstart should fill the gap for those who want to customize much more to have something tailored for themselves, anything beyond might be already going towards Arch or Gentoo. I have to admit, I have not yet had a need to get into Kickstart and so I did not think about it when writing my comment above :smiley:

But practically, we still have regularly users who consider it important to not install packages they don’t need without being that level of tech savyy folks able to make use of Kickstart - maybe they consider it important for obsolete reasons. I think we should more focus on explaining them reasons why we do things the way we do, why it is not a problem to get rid of packages after install (dnf & rpm remove packages in a clean way; unlike what people maybe have in mind from some other os when removing software) in conjunction with the advantages of using something that has undergone such widespread and deep testing, which includes the overall configuration beyond installed packages.

In my perception, these discussions tend to end often with telling these users, casually speaking, “take what we provide, we know it best, you don’t need something else”. However, instead, just explaining our reasons to users can possibly help. Or ask at first: Why do you think you need that? The question is directed to those who want to have a Workstation/spin installation without pre-installed packages - feel free to answer it here :smiley: I don’t say it is right/wrong, but focusing this question might be more constructive than jumping between yes and no without clarifying the “why” that constitutes the discussion.

<Essay end :face_with_hand_over_mouth:>

Yes, I think maintaining the overall system configuration is important. My script uses dnf for the removes and installs. gsettings is used for setting preferences. I wish the Gnome folks would make all of the setting available through gsettings, but they don’t so other means must be employed to change the ones gsettings can not access. I like using dnf and gsettings in my script because with the exception of changing preferences of relocatable applications like Gnome Terminal they are easy to understand.

Bugs not withstanding, I rely on dnf and gsettings to complete their tasks cleanly. I also set up my script so a list of everything done along with any errors goes to a file. At the end the file is cat’ed to the screen so I can review it and see that everything was done and if there were errors.

Also using a script to do these things is necessary for me. I maintain PCs for myself and a small group of users. In the group there is a wide variety of needs. We all agreed on a standard system configuration. The script takes what would be a two day manual click and type process and reduces it to a couple of hours that are, except for starting the script and reviewing the results, unattended. Which often provides an excuse for a long lunch.

In case someone is thinking everything would be easier/faster if I used upgrades. Well my experience with upgrades over a wide variety of systems and OS’es is that they often break things. Also the things that get broken aren’t always immediately obvious. Even with Fedora Linux I have noted that each release cycle there are often bugs reported with regard to upgrade. So here the cycle is: Run Fedora Workstation Live install, run the script. Yes, the script also copies a Home backup to the new Home so when the script is done. Just reboot and use.

1 Like