Faith based partitioning...

Chris Murphy lists at
Sat Dec 21 20:27:43 UTC 2013

On Dec 20, 2013, at 7:19 AM, Tom Horsley <horsley1953 at> wrote:

> I see the partitioning interface still hasn't improved in f20.
> You still simply must go on faith that you might be allowed
> to make the changes you want sometime after you press a
> button labeled "Done".

I forget the rationalization for Done coming after the choice of device to install to. Clearly we aren't done with the installation destination spoke, which includes all of guided and custom partitioning paths. The Done button has been a thorn in my side UI wise since inception but all I ever got was ridiculously bad examples of how such upper left UI is used in other programs, which don't also split their navigation UI, or clutter the upper left with other text or UI elements. But it's really an ordinary example of bad UI, i.e. it's not especially bad.

> I've been installing several different distros in virtual
> machines recently, for an example of a near perfect interface
> I'd point you to opensuse (I don't really like opensuse much,
> but the partitioning interface is close to flawless).

Short learning curve, but overly complicated Btrfs layout with a large pile of subvolumes. Maybe other layouts are similar I'm not sure.

This is necessarily a challenge for any really capable installer. Does opensuse's installer let you create bootable raid 0, 1, 10, 5 and 6? Does it do bootable LVM on raid? Or bootable LVM on raid on LUKS? Anaconda does. It's massively complex.

The Guided partition path alone, with a simple unidirectional (no reversal) test matrix of not fewer than 80 tests. And a bulk of those are repeated for every test compose and release candidate. It's a lot of testing and is maybe 1% of what the installer can do. Custom partitioning is so massively complex that I don't think it should be in the installer at all. Windows and OS X installers are brain dead simple because they have essentially no options at all. The volume is supposed to be preformatted and empty, you point the installer to it and it installs. Windows does have a rudimentary partitioning tool integrated in their installer, and a way to reformat partitions. OS X doesn't, you have to use a separate tool, including preparation of bootable RAID1 setups.

I think it's challenging to imagine how custom partitioning gets much better when it creates complex storage layouts for installation of an OS only, rather than general purpose create and modify. And also it's also effectively only an RHEL/Fedora tool.

> Instead of relying on faith, it shows you exactly what
> it would do in a summary at the top of the screen and
> has checkboxes for the most common things you'd want
> to change (separate /home or not, etc). As you click
> the checkboxes, you see exactly what the partitioning will
> look like in the summary at the top. No faith required.

The idea in anaconda's custom partitioning is that you're directly modifying what you're calling the summary in opensuse. The things you create in anaconda's custom partitioner aren't even partitions, they're mount points. So "Manual Partitioning" is actually weirdly named. You first specify mount points, and then how they get created rather than the reverse. A big part of the challenge is that most people who use custom partitioners don't think in terms of top level mount points until they've built what they want from the ground up. Anaconda is top down to the degree that the lowest part of the stack, the physical block device, is quite a hidden feature and isn't intended the user needs to choose which physical devices the parts appear on.

Chris Murphy

More information about the users mailing list