In this installment of our co-published Fedora Interviews, Jeremy Katz, David Cantrell, and Chris Lumens talk about the improvements to Anaconda in Fedora 9.
What motivated you work on Anaconda for Fedora 9?
Jeremy Katz: Well, it’s part of most of our jobs We’re full-time employees with Red Hat and have the installer as one of areas that we tend to work on.
David Cantrell: Anaconda is the first program that people will use when they use Fedora for the first time. We are the first impression of the OS, and we are always trying to improve that experience and make Anaconda do what people are wanting.
Chris Lumens: It’s my job to work on Anaconda, so that was all the motivation I needed. Actually it was pretty nice to work on F9 Anaconda, as it was a chance to step away from the bug-fixing grind and work on some new stuff.
Could you explain more about new features in Anaconda? What’ll be the first impression for users?
Jeremy Katz: There’s a fair bit of new stuff this time around. The most obvious thing will probably be that some of the steps have been moved around with partitioning being later. There’s also support for partition resizing, encrypted partitions, and a whole lot more.
David Cantrell: Improved yum repository handling during installation.
Chris Lumens: As Jeremy said, the first impression will probably be that the steps have moved around. Partitioning now happens before package selection, which should surprise a fair number of people. I’m working on a brief presentation about what we’ve done in F9 and our reasoning behind it, but most of it’s aimed at developers and regular users won’t ever encounter those changes.
What’s important about the change from boot.iso to netinst.iso?
Jeremy Katz: The main benefit is that it lets us move more of the “hard” stuff into the second stage of the installer, as we can guarantee it’s available more often. This opens the door for better support of retrying downloads, editing repositories, proxies, mirror lists and more. It also helps with the (mistaken) impression that we don’t have an easy way to start off a network installation.
Chris Lumens: Jeremy’s exactly right here. From the developer point of view, it also got rid of a ton of code, simplifying the maintainence and development burden. This should translate into fewer bugs in the future.
Why did the work to support resizing NTFS partitions happen?
Jeremy Katz: It’s been a long-standing feature request. We’ve been waiting on support to land in some of the libraries we use for a long time, but we finally decided to bite the bullet and just do the implementation in Anaconda-land. We hope it will make the transition for someone who is new to Fedora easier and not require them to run Partition Magic or some other third-party utility to set up for installation. I posted a pretty good movie showing the resize UI in action.
David Cantrell: NTFS won’t be enough; someone will ask for HFS+ resizing from within Anaconda.
Chris Lumens: I like to look at this as a sort of impulse sale. If you get the live CD into a potential new user’s hands, and they can boot it up, play around with it, and like what they see, they may have the desire to install it right that second and get to using Fedora. Before having NTFS partition resizing support, they would have to reboot, redo their partitioning, and then install Fedora. That’s a pretty high hurdle, and I think we lose a lot of people there. Now they can just resize right from within the live CD and be running Fedora a lot faster.
What does allowing the user to set the second stage source actually mean?
Jeremy Katz: Realistically, this isn’t something we expect an end-user to care about, but it helps enabling other things, such as preupgrade and some of the netinst.iso benefits mentioned above.
Chris Lumens: For the user, it really only means better support for recovering from errors. So if your HTTP repository disappears before installing packages or a package download is corrupt, we can handle these cases better. Most users won’t ever really know that they’re specifying the stage2 location, nor will they care.
What are the benefits of udev and HAL hardware probing and detection instead of kudzu?
Jeremy Katz: We’re now using the same stack as the rest of the OS. This has its ups and its downs, as kudzu was tailored to Anaconda’s needs. But it should let us have more consistent information about what a device is named, etc throughout the user experience.
Chris Lumens: Right. The biggest benefit for users is that we (Anaconda developers) will be spending less time chasing down bugs in device detection code and more time chasing down bugs in Anaconda itself. Using the same stuff as the rest of the system frees up a lot of our time to work on more interesting problems.
What does native EFI support buy us?
David Cantrell: Booting on Intel Macs without needing the MBR shim.
How’s the work going on getting this ready to be easily available for Fedora 9?
Jeremy Katz: We’re making a lot of progress. There’s still a lot of testing and bug fixing to go so that we can have as solid of a release as we can. Any testing that can be provided through the betas, the snapshots and the preview release goes a long way.
David Cantrell: Trying to get users other than ourselves to test out the nightly trees or betas is really difficult. We’ve got some things in place now to make that easier, but still actually getting people to test the installation is difficult.
Chris Lumens: The hard stuff is done, but I’m sure there are plenty of bugs still around. There are always bugs hiding in the corner cases, especially with the amount of stuff we have changed for F9. More testing and testing earlier on will be a big help in making sure no serious problems make it into the release.
And to finish, you could tell us a little bit about yourselves? What got you interested in free software originally? What do you like to do with your spare time when you’re not working with computers?
Jeremy Katz: I’ve been involved in free software and distro development for many years now… originally it was to learn and it’s grown a bit from there. As far as spare time, I have that? I’m actually a pretty avid cyclist and am also currently attending a graduate program at MIT while continuing to work at Red Hat on all things Fedora.
David Cantrell: Free software development was interesting to me, and it was similar to the platforms I was using at school (mostly SunOS). I’ve been doing some form of FOSS work for a long time.
Chris Lumens: I’ve been working with Linux for quite a while now, originally just to play around with and make the computer do something more interesting. I think the original reason was to play Doom via TCP/IP. Something like that. Eventually it turned into a broader interest in computers and programming, then into a way to make a living. It’s a pretty good way to spend your work day.
In my spare time I am an active hiker (White Mountains, mostly) and homebrewer. Sometimes I read really dense books.