This is the latest article on Fedora on this website. To view the complete list of Fedora-related articles, visit the distribution’s category page at http://linuxbsdos.com/category/fedora.
So, it was released a lot later than expected. Big deal! The most important thing is, it was released. That’s the good part. The worst part is, it landed to a chorus of negative reviews.
Where those negative reviews warranted?
Yes, they were. Yes, they were. Fedora 18, aka Spherical Cow, earned its (bad) spots. And it wasn’t unexpected. Long before the stable version hit the download mirrors, I called attention to the reason Fedora 18 is getting so much flak. And unless you just dropped in from Pluto (is it a planet?), you’d know that the reason is Anaconda, the Fedora systems installer. (See Have you seen Anaconda’s new UI?).
The new Anaconda is just one feature, albeit a very important one, that shipped with Fedora 18. There are many other features, new and updated, that also shipped. So, this is not going to be all about Anaconda. It will form a major portion of this review, but, certainly, not all of it.
So before I get to Anaconda, let me introduce a few other parts of Fedora 18 that should be getting more attention than they have received so far.
Dnf: Dnf is a new package manager that will replace yum in future Fedora and related distributions. Together with Hawkey, the matching package management library, they are set to deliver to Fedora a “leaner codebase than Yum, … easier maintenance, better performance and memory footprint.” More information about it here. The dnf package is available in the repository. I installed and tested it and, so far, it works as advertised. To test it, install the dnf package, launch a shell terminal and have fun.
FedUp: From FEDora UPgrader, is the new tool for upgrading an existing installation of Fedora to Fedora 18. Compared to the old method, FedUp is a beauty. Though it involves working from the command-line, the entire process is very easy, even for a new user. All it requires is just typing or copying-and-pasting a command to a terminal, and rebooting the system. The tool takes over from there. It’s elegant and I love it.
Upgrading can be done over the network, from a local ISO installation image, and from other mountable storage devices. With respect to using the tool over the network, there is a security issue to take into account. From the official FedUp page:
FedUp does not yet ensure that only trusted software from Fedora is run on your system when you are doing upgrade over the network. Refer to Bugzilla: #877623 for more details. You can download the ISO release image and verify the authenticity independently before performing a upgrade with Fedup via media or ISO images methods to workaround this issue however a network upgrade is still the recommended option since it can handle updated packages better. Note that neither Anaconda or Preupgrade verified the authenticity of the source either and this is not a regression.
The other drawback is that it does not work for upgrading versions of Fedora earlier than Fedora 17. For those systems, the old method is still available. I’m sure by the time Fedora 19 rolls along, that FedUp should be able to handle upgrading any version of Fedora.
FedUp is the type of upgrade tool that every distribution not based on a rolling-release development model should have. Ubuntu could use its own version of FedUp. The folks at ROSA Laboratory have expressed an interest in having something similar for their distro, and I think a similar tool is cooking at Mageia. (See Fedora 18 and FedUp and Upgrading Fedora 17 to 18 with FedUp is elegant, but ….)
FirewallD: FirewallD is also new to Fedora, though it’s been around longer than FedUp. Technical issues kept delaying it, but the developer(s) finally tamed whatever was stopping it – just in time for inclusion in Fedora 18.
Unlike the old firewall application that it replaced. FirewallD is a dynamic firewall. In simple terms, that means a rule change will not require restarting the firewall. Aside from the daemon, it comes with a graphical interface, a command-line tool (firewall-cmd), and a panel applet (firewall-applet).
Firewall-config, the graphical interface, is very similar to the old system-config-firewall. Like its predecessor, it is not possible to set granular rules when it comes to opening up ports to external connections. So, for example, if you expose a service to other computers on your local network, there is no means within firewall-config’s interface (that I am aware of) to restrict connections from external networks. The screen shot below is of the main interface of Firewall-config.
With support for Zones, you can define the trust-level of network interface or connections, which comes in especially handy on a laptop computer. I haven’t been able to test the how well Zones work in FirewallD, but there’s time. Just know that out of the box, there are nine pre-defined zones, each with a specific set of services running.
And this is a screen shot of the firewall-applet. Some of the options are self-explanatory. The Change Zones of Connections… option does not really allow you to change a connection’s zone, just the network interface settings. So, this option is somewhat misleading, unless there is something I missed.
By enabling Block all network traffic, firewalld goes into Panic Mode.
In Panic mode, the manual page for firewall-cmd says that:
All incoming and outgoing packets are dropped, active connections will be terminated after a while of activity. Enable this only if there are serious problems with your network environment. For example if the machine is getting hacked in.
You can also block all network traffic when the system will be idle and you do not want to put the computer in Suspend or Hibernate mode. The net effect is that no network connection is allowed – in or out. Note that firewall-applet is not installed by default. yum install firewall-applet, dnf install firewall-applet will install it from the command-line. You can also install it from Apper, the graphical package manager.
Anaconda: So, Fedora got a new installer. It’s dubbed the NewInstaller, as opposed to the previous Anaconda, or the OldInstaller. I prefer to call them the New Anaconda and the Old Anaconda. The New Anaconda, has gotten a lot more press than any other feature of Fedora 18, and for good reason. It is the sole feature that caused the more than 2-month delay in the release of Fedora 18.
Like I wrote earlier, I drew attention to the New Anaconda right from the start. I didn’t like most of what I saw then and there are certain aspects that I still don’t like now. Several reasons have been given for jettisoning the Old Anaconda. Mostly, it is that it was old and was made up of a patch work of code that was difficult to maintain. And that it’s linear or wizard style was not very efficient for what it was designed for.
So a linear installer was replaced with a hub-and-spoke installer, a modular installer where each spoke is itself a linear or wizard-style. In essence, one linear application was replaced with another made up of several linear parts. I’m all for change and I like bleeding-edge stuff, but if you are going to replace an application, at least try to deliver a replacement with a UI that’s better than the old one.
And that’s where the problem with the New Anaconda lies – the UI. It is one heck of a mess. A graphical interface, a point-and-click application, is supposed to be intuitive and user-friendly and navigating its interface is supposed to offer a smooth experience. The New Anaconda is none of that. It is the antithesis of what a user-friendly UI is supposed to be. There is no doubt that the Old Anaconda’s code is old, but the UI was/is simple and very user-friendly.
For those not familiar with the Old Anaconda, here are two screen shots of it. I don’t want to get into a discussion of the merits and demerits of a linear (wizard-style) versus a hub-and-spoke installer, but these next two screen shots define what I like about the Old Anaconda’s UI. Keep in mind that I’m referring to the UI, not whether the code is old or a nightmare to maintain.
This is the disk partitioning methods step of the Old Anaconda. Every option here is simple and easy to understand. Even to a new user.
And this is the manual partitioning window. From here, you get a bird-eye view of the detected hard drives, their partitions, both free and used. There is no confusion here. The layout is simple to understand. Only a complete newbie will get lost at this step or the previous step of the installer. Notice how the buttons you will be using are all positioned at the bottom of the window. Keep this in mind as we walk through the important aspects of the New Anaconda.
retrospective on this subject. It’s a good read. But a case he makes against the Old Anaconda applies even more so to the New Anaconda. For example, he denounced the inefficient use of space in the Old Anaconda’s UI, but instances of wanton waste of space abound in the New Anaconda’s UI.
I have no doubt that (the New) Anaconda will improve with time, but for that to happen, the UI has to go back to the drawing board. Let’s just hope the designers don’t dig in like the GNOME 3 guys.
If you have not installed any Fedora 18, here are facts you need to know about it, and some of the questions I’ve raised about it.
General info: There are three partitioning schemes – LVM, btrfs, standard. In the Old Anaconda and in the installers of other Linux distributions, btrfs is available as a file system option. Here, it is a partitioning scheme.
When using the DVD installation image, you can install any desktop you want. Each selection on the left pane gives you all the applications you need for that particular desktop environment or selection. Options in the right pane are extras.
If you install, say, a KDE desktop from the above, or even from a Live installation image, you can still install other desktop environments from the graphical package manager. This is a screen shot of Apper, the graphical package manager, from a KDE installation. Cinnamon and MATE, two desktop environments that don’t have a dedicated installer image, can be installed from Apper, via yum or dnf. (See Install MATE on Fedora 18 and Install Cinnamon on Fedora 18.)