Switching to Fedora from Ubuntu

I’ve run Ubuntu on my desktop (well… and laptop) since roughly the first release back in 2004. I’ve upgraded along the way, with reinstalls on the laptop limited to changing CPU architecture and switching full disk encryption.

Yesterday I wiped Ubuntu and installed Fedora.

Previously to Ubuntu I ran Debian. I actually ran Debian unstable on my desktop/laptop. I ran Debian Stable on any machines that had to sit there and “just work” and were largely headless. Back then Debian stable just didn’t have even remotely recent enough kernel, X and desktop apps to really be usable with any modern hardware. The downside to this was that having an IRC client open to #debian-devel and reading the topic to find if sid (codename for the unstable distribution) was pretty much a requirement if you ever thought about running “apt-get dist-upgrade”. This was exactly the kind of system that you wouldn’t give to non-expert family members as a desktop and expect them to maintain it.

Then along came Ubuntu. The basic premise was “a Debian derived distribution for the desktop, done right.” Brilliant. Absolutely amazingly brilliant. This is exactly what I wanted. I had a hope that I’d be able to focus on things other than “will dist-upgrade lead to 4 hours of fixing random things only to discover that X is fundamentally broken” and a possibility that I could actually recommend something to people who weren’t experts in the field.

For many years, Ubuntu served well. Frequent updates and relatively flawless upgrades between releases. A modern desktop environment, support for current hardware – heck, even non computer literate family members started applying their own security updates and even upgrading between versions!

Then, something started to go awry…. Maybe it was when Ubuntu shipped a kernel that helpfully erased the RAID superblock of the array in the MythTV machine… Maybe it was when I realized that Unity was failing as a basic window manager and that I swore less at fvwm…. Or maybe it was when I had a bug open for about 14,000 years on that if you left a Unity session logged in for too long all the icons in the dock would end up on top of each other at the top left of the screen making it rather obvious that nobody working on Ubuntu actually managed to stay logged in for more than a week. Or could it be that on the MythTV box and on my desktop having the login manager start (so you can actually log in to a graphical environment) is a complete crapshoot, with the MythTV box never doing it (even though it is enabled in upstart… trust me).

I think the final straw was the 13.04 upgrade. Absolutely nothing improved for me. If I ran Unity I got random graphics artifacts (a pulldown menu would remain on the screen) and with GNOME3 the unlock from screensaver screen was half corrupted and often just didn’t show – just type in your password and hope you’re typing it into the unlock screen and it hasn’t just pasted it into an IM or twitter or something. Oh, and the number of times I was prompted for my WiFi network password when it was saved in the keyring for AT LEAST TWO YEARS was roughly equivalent to the number of coffee beans in my morning espresso. The giant regressions in graphics further removed any trust I had that Mir may actually work when it becomes default(!?) in the next Ubuntu release.

GNOME3 is not perfect… I have to flip a few things in the tweak tool to have it not actively irritate me but on the whole there’s a number of things I quite like about it. It wins over Unity in an important respect: it actually functions as a window manager. A simple use case: scanning photos and then using GIMP to edit the result. I have a grand total of two applications open, one being the scanning software (a single window) and the other being the GIMP. At least half the time, when I switch back to the scanning program (i.e. it is the window at the front, maximized) I get GIMP toolbars on top of it. Seriously. It’s 2013 and we still can’t get this right?

So… I went and tried installing Fedora 19 (after ensuring I had an up to date backup).

The install went pretty smoothly, I cheated and found an external DVD drive and used a burnt DVD (this laptop doesn’t have an optical drive and I just CBF finding a suitably sized USB key and working out how to write the image to it correctly).

The installer booted… I then managed to rather easily decrypt my disk and set it to preserve /home and just format / and /boot (as XFS and ext3 respectively) and use the existing swap. Brilliant – I was hoping I wouldn’t have to format and restore from backup (a downside to using Maildir is that you end up with an awful lot of files). Install was flawless, didn’t take any longer than expected and I was able to reboot into a new Fedora environment. It actually worked.

I read somewhere that Fedora produces an initramfs that is rather specific to the hardware you’re currently running on, which just fills me with dread for my next hardware upgrade. I remember switching hard disks from one Windows 98 machine to another and it WAS NOT FUN. I hope we haven’t made 2013 the year of Windows 98 emulation, because I lived through that without ever running the damn thing at home and I don’t want to repeat it.

Some preferences had to be set again, there’s probably some incompatibility between how Ubuntu does things and how Fedora does things. I’m not too fussed about that though.

I did have to go and delete every sign of Google accounts in GNOME Online Accounts as it kept asking for a password (it turns out that two-factor-auth on Google accounts doesn’t play too nice). To be fair, this never worked in Ubuntu anyway.

In getting email going, I had to manually configure postfix (casually annoying to have to do it again) and procmail was actually a real pain. Why? SELinux. It turns out I needed to run “restorecon -r /home”. The way it would fail was silently and without any error anywhere. If I did “setenforce 0” it would magically work, but I actually would like to run with SELinux: better security is better. It seems that the restorecon step is absolutely essential if you’re bringing across an existing partition.

Getting tor, polipo and spamassasin going was fairly easy. I recompiled notmuch, tweaked my .emacs and I had email back too. Unfortunately, it appears that Chromium is not packaged for Fedora (well.. somebody has an archive, but the packages don’t appear to be GPG signed, so I’m not going to do that). There’s a complaint that Chromium is hard to package blah blah blah but if Debian and Ubuntu manage it, surely Fedora can. I use different browsers for different jobs and although I can use multiple instances of Firefox, it doesn’t show up as different instances in alt-tab menu, which is just annoying.

It appears that the version of OTR is old, so I filed a bug for that (and haven’t yet had the time to build+package libotr 4.0.0 – but it’s sorely needed). The pytrainer app that is used to look at the results of my Garmin watch was missing some depedencies (bug filed) and I haven’t yet tried to get the Garmin watch to sync… but that shouldn’t be too hard…

The speakers on my laptop still don’t work – so it’s somebody screwing up either the kernel driver or pulseaudio that makes the speakers only sometimes work for a few seconds and then stop working (while the headphone port works fine).

On the whole, I’m currently pretty happy with it. We’ll see how the upgrade to Fedora 20 goes though…. It’s nice using a desktop environment that’s actually supported by my distribution and that actually remotely works.

28 thoughts on “Switching to Fedora from Ubuntu

  1. Welcome to Fedora! It’s a shame you didn’t give Korora 19 a spin first, http://kororaproject.org as I would have appreciated any feedback on it :-)

    SELinux is obviously a gotcha, although I thought that if you create a user where a home dir already exists it will chown and restorecon on it for you. Strange that it didn’t do that, although now that I think about it, it might have been part of the firstboot package which is now deprecated. I’ll test and log a bug.

    I don’t think the initramfs is unique for your machine by default, but there is now an option for it to be of you want use it (not that you’re saying you do):
    dracut –force –verbose –hostonly

    As for chromium, it’s not that packaging it is hard per se, it’s that packaging it to meet Fedora’s standards is harder because we do not allow static libraries like are built into Chromium. I highly recommend this entertaining post by Tom “spot” Callaway on why it’s not yet packaged for Fedora:

    Having said that, feel free to use his repo (like an Ubuntu style PPA):

    You can enable and install it easily:
    wget http://repos.fedorapeople.org/repos/spot/chromium/fedora-chromium-stable.repo -O /etc/yum.repos.d/fedora-chromium-stable.repo && yum install chromium

    Of course you can also install Chrome if you prefer (Korora comes with this Google repo by default).


  2. The problem with that repo is that GPG signing isn’t set up (at least according to the .repo file, which is fetched over HTTP) and I don’t particularly want to open up a web browser to be MiTM attacked during download.

  3. The Fedora policy is specifically is around bundled copies of system libs with your program. The program should use upstream libs and be able to be compiled against the libs we ship with the system (like how a distro normally works). That’s not the case with Chromium and if you read Spot’s excellent explanation he mentions that he can apply for an exemption but he’d prefer to clean it up and make it work like a normal piece of open source software. I’d be curious to know whether Ubuntu/Debian ship it compiled against their own upstream libs or bundled libs. If the former, that explains why they ship it and Fedora doesn’t, if the latter then I wonder why it hasn’t been shared.

    Point taken about lack of https, although the checksums would still need to match those in your local database (or they’d need to MiTM attack your downloading of the database to set the checksum to match the MiTM attached download of the rpm).


  4. My guess is there’s just an exemption. There are 392232 installs out of ~2 million reports in Ubuntu’s popcon of Chromium, so it’s a fairly popular bit of software – which is why it’s puzzling that it’s not in Fedora even with its problems.

    MITM both the checksums and the RPMS doesn’t sound that hard though.. and certainly no replacement for GPG signatures. FWIW every PPA package is signed, it’s part of the Ubuntu build infrastructure.

  5. 1. apt-get dist upgrade works flawlessly on a server. been using it for years. Fedora dist upgrade seems too flaky for server use. Plus, dpkg still tons faster than yum, with less dependency failures.
    2. so much software already packaged for Ubuntu, harder to get on Fedora in some cases.
    3. Fedoras policy of throwing out new kernels between releases is great for laptops/desktops, but i don’t want that on my server.
    4. comparing them for their desktops is unfair, because it’s trivial on both to swap out the DE to/from Gnome3,XFCE etc. I like a lot about Gnome3, but my laptop is not powerful enough so I use xfce instead. My server has a good GPU but I still prefer the speed and the tweak features of XFCE over Gnome3, even if I loose some really nice features.

  6. I’m not that into the idea of switching away from Debian/Ubuntu server side, but my real issues with Ubuntu have been on the desktop, sitting in front of a laptop or desktop machine and actually using it for actual work. Fedora has all the packages I need for my development, and so much development happens in VMs or remote machines now anyway that it’s not that big of a problem for me if something is only packaged for Debian.

    Swapping out desktop environments? Well… yes, technically you can, but the GNOME3 and other support in Ubuntu has been lacking, and fundamental things have been broken on machines that are way lower than simply what UI you run.

  7. RPM hell has long been gone since yum was implemented. Using fedoras for servers is ok but if you want rock solid stable servers always go with RHEL or centOS. People are so used to Ubuntu when they try Fedora and it don’t work the same they get frustrated because they aren’t familiar with it. Ubuntu fans keep saying fedora is crap and so people believe it. Fedora is a fine OS and so is Ubuntu. I just like Fedora more. I noticed people who are having issues are just used to how Ubuntu works and now how other linux distros work. I say 99% of all problems is because of the user now knowing what they are doing.

  8. Our company is moving away from ubuntu, primarily to fedora 20. This is mainly due to the concerns and stability with unity, but more to do with the concerns of its security and privacy. The direction canonical and their partners seem to be going is a real worry – money first, security and privacy second!
    We tried the Kubuntu but still had issues, even though the KDE is more to my liking, and many others.
    Fedora seems to be a good choice and works well with the Centos servers and also makes the transition a bit easier.
    A few packages had to be redone and we had a slight hitch with a couple of wireless cards but all in all is going smooth. We did a clean install as most data was on the server or on backups, so it went fairly easy.
    We decided to stick with KDE and besides a few grumbles, most users are finding it much better, and overall the systems seem to be running smooth.

  9. Thank you for this post. I’ve found it in Google because I’ve been getting so frustrated with Ubuntu in the last year or so. I am not sure what is starting to go wrong at Ubuntu but let me list a few lately: Upgrades at home that prevent X from working (install/reinstall video drivers, etc, too time consuming), a distribution upgrade failed at work (another resintallation), another server 12.04 with a simple update that made a server useless (another reinstallation), not to mention Unity. Why do we need to change the simple things that worked just fine? Ubuntu used to be less time consuming that it is nowadays.

    I guess it is time to move back to Fedora.

Leave a Reply

This site uses Akismet to reduce spam. Learn how your comment data is processed.