We are making some great progress on Anaconda’s UI revamp mockups after last week’s Anaconda team meetings. Here’s the storage flow diagram, now annotated with the screen #’s from the mockups:
So let’s dive into the screens as they look so far. These are hot-of-the-press and may suck, so of course we’re posting them here for your perusal, critique, and feedback so we can make them better! I’ve tried to highlight areas where we’d like the most feedback just like this.
9-1-1 / Install Destination Simple
So the deal with this screen is that it’s the main / default interface for selecting disks connected to your system for installation. As mocked up here, you could say we’ve got a laptop with a blank SSD and some other smaller peripheral storage devices plugged in.
Local / Standard Drives
The top half shows your run-of-the-mill laptop hard drives, external USB drives, etc.:
- There’s a small piechart in the upper right that roughly & quickly shows how much space is taken up (filled in) and how much is free (unpartitioned + free on fs).
- If you hover over any of these standard drives, you’ll get a tooltip breaking down how much free space there is exactly, and what type is chunk is.
- The disks in this widget are listed from largest capacity to smallest capacity.
- If necessary, the list will scroll horizontally.
Specialized & Network disks
Most folks won’t need to use this at all, but this is how you’d go about adding ‘special’ disks such as iscsi/fibre, multipath/otherwise SANs or DASDs or things like that. For Fedora installations, we may, just may, hide this widget using an install class since Fedora’s main target is desktop. (If this would break your heart please let us know.)
Status bar area
Maybe it’s a bit heavy-handed, but we thought for some sticky situations between the selected software requiring ridiculous amounts of space vs there not being possibly enough disk space available for installation it might be good to have a status area that lets you know how you’re doing in terms of readiness for kicking off the install. So here we see a little note that says we haven’t selected any disks and we really need to! We don’t want this area to be chatty; it should just explicitly list out any items that need to be done before the install can be started. What do you think about the status bar?
There’s also a little summary above it, a link-style line of text that gives a summary of the current selections. In this mockup there are no selections, but if you click on it you’ll get a full summary of any selections you might have.
9-1-2 / Install Destination with Pre-existing OS
Here we’ve got the same screen as earlier, showing what the screen might look like with a desktop that has multiple hard disks installed and another OS (Windows 7) already installed to one of them.
Not too much to add here except that we’ll be running osprobe immediately preceding entry to this screen in which case we’ll seek out any OSes we know about and display them here. I’m a bit torn over this, because on the one hand it is helpful to know which drive is which, and knowing which OS is installed on which can help identifying disks. However, it might also scare folks away from using a drive because they assume selecting a drive that has Windows or whatever else on it means it’ll get blown away (it doesn’t.) So… I’ve been stewing on this. Any ideas?
9-1-3 / Install Destination plot thickens
- We’ve got some network disks in the list (you get whisked away to a different UI to select them then taken back to this screen to summarize the selections. We’ll not review those screens in this post.)
- We also see selected disks in the local/standard area. Is this clunky? I’m thinking ctrl+click to select but maybe that’s not obvious enough. Maybe they could have little checkboxes in the corner too and rather than be shift+click they’d just be click once to select, click one more time to deselect?
- If you hover over a ‘special’ disk, then you get some extended ‘special’ information about it. (WWPN, LUN, etc)
9-1-4 / Disk shopping cart
If you click on the summary link in the lower left, you’ll get a nice summary of the disks you’ve got selected for install here. Note that this screen would only have the top two disks in the list in it according to the selections on screen 9-1-3 just before this.
9-1-5 / You’ve got space!
So if you already cleared off space on your drives, added and selected a new drive, or simply had enough unpartitioned space lying around on your selected disks, you are good to go. On this screen, you can select the checkbox to go to advanced partitioning anyway, or you can avoid clicking on it and hit continue to go back to the main pre-install hub. Or you can cancel and add more disks.
9-1-6 / You could scrounge some space together…
You’ve got enough space, you really do. It’s just that it lay wasted within pre-existing filesystems at the moment. We can guide you through squeezing it out (mockup not covered in this post), or you can check off the advanced partitioning checkbox and shrink/delete partitions by yourself (again mockup not covered in this post. But wait until you see it. It’s… different!)
So we offer you some choices here:
- Reclaim your space, we’ll guide you through shrinking your filesystems.
- Reclaim your space through the advanced partitioning screen.
- Modify your software selection so it doesn’t require so much darn space!
- Go back and add more disks and come back later.
9-1-7 / Gimme more, gimme gimme more
Well, even if you deleted all of those photos of your cat, Britney and LadyGaga albums, and your KVM disk images… you’re just not going to have enough space at all, sorry.
We’ll still try to offer constructive solutions though:
- Back out and add more disks.
- Select a smaller version of Fedora to install.
- Quit the installer, and come back after you drop by BestBuy or order a new hard drive from newegg.com.
I promised mockups earlier this week so I hope these please you. There are more, I promise; I am prepping them for your perusal. If you cannot wait I advise you click below and turn up your speakers:
“If this is checked grey out the cancel and modify sw buttons”
because it only applies to the ‘reclaim space’ button 🙂
i thought it was weird. i’m not sure how else to arrange it though. i don’t want to make yet another button for advanced partitioning.
I know you don’t want to add another button, but… the checkbox seemed a little funny to me too.
Maybe you could replace the checkbox and label with a reminder that they can change their package selection (above), or change their disk or partitioning selections using the buttons below?
This would *really* hide advanced partitioning, but what if the ‘reclaim space’ button was one of those fancy ones with the arrow in it, and if you click the arrow you could choose the advanced partitioning?
Or we could send you off to hand-holding partitioning and give you an escape hatch on *that* screen?
Do you think in that proposal the change software selection option is too hidden? I was gonna go that route at one point but I felt a more explicit button at the bottom would be more obvious, but now I’m not sure…
For drive selection, I think that a simple click-to-select/click-again to unselect would work very well. That way the user doesn’t need to use modifier keys.
I regret that I won’t be able to see this, because I’m switching from Ubuntu to Fedora 15 this week. >.>b Hopefully.
Please let me know how it goes; if you see any design issues in the F15 installer that we should address in this redesign we would *love* to hear about them!
Okay, I will!
First, about your mockups: I like the status bar, and where a pre-existing OS is concerned maybe there could be some way to indicate when you can install alongside it. Like, beneath the red Windows 7 “button” there could be an “Install on this disk” button. If that’s not how you’re having people select drives, the button could serve as an unlock mechanism instead of a selector.
Now the install process: I wrote out a thing with my thoughts on each step. I used to write bug reports for Ubuntu, so I tried to be thorough. The tl;dr is that I thought it was inconsistently designed and awkwardly written, and the way it described technical stuff as though I was supposed to know what it was kept making me doubt myself.
Beyond that, there were a couple of speed bumps; one where the functions of “Back” and “Continue” in a dialog box appeared to be reversed, and one where it asked me to restart but there was no visible restart option. I’m just glad I looked at a GNOME Shell cheat sheet while I was reading everything I could about it.
I’m hoping I’ll be able to stay. My inner idealist really wants to use Fedora, and from what I’ve seen on your blog it looks like people are starting to care about usability and accessibility to a nontechnical audience here. I’ve been cheering for you while reading about it. >.>b If there’s a way I can help, please let me know.
Tachyon, thanks for the suggestions and the the *awesome* usability walk-through report for the current installer!! Let me know if you’d like to become a usability contributor for Fedora because you’ve got a talent for it and we really need more folks to produce walkthroughs like this!
Okay … what do you want me to do, and where do I go to sign up and/or find out about it?
Hi Tachyon, we have a design team in Fedora that you could join; from time to time we get requests for usability assessments from free software developers. Our ticket system is here:
One of the usability walkthroughs that’s been waiting for someone like you to go through it is this ticket here, for system-config-firewall:
Let me know if you’re up for it and I can walk you through creating an account to claim the ticket and running through the app.
It’s more than a little belated, but I’m up for it now. With a slightly new online persona. >.>b
I’ve already created a Fedora account, and I’ve been tagging a few of the packages with that web app.
What do I need to do to help with this? I’ve been wanting to write walkthroughs for Empathy and PackageKit as well, but I’m not sure where I would send those.
Hey Taryn! For PackageKit, you’ll want to send it to the package kit mailing list:
(Although I’d love to see what you came up with for that too! If you don’t mind, send both to the design-team fedora list as well!)
An area of concern that I haven’t seen raised in this and previous posts relates to btrfs and RAID devices.
The current Version of Anaconda is poor at handling configurations of RAID, and is actually broken for RAID 1 since requested settings are overridden. For example, if you try to configure RAID 1 partitions where /dev/sda1 and /dev/sdb1 are the boot partition, Anaconda will reconfigure these to be called /dev/sda2 and /dev/sdb2.
However leaving that issue aside, in the future there will be btrfs for which some will want to configure with RAID, and since btrfs RAID will no longer use mdadm, will require a new set of UI options.
Has any thought been given to supporting btrfs and RAID?
Hi Frank, I just made a blog post that shows BTRFS raid support so you might want to check it out (http://blog.linuxgrrl.com/2011/10/03/slicing-and-dicing-disks-first-draft/ ) However, I guess BTRFS doesn’t support RAID 5 and maybe it’s a bit unstable, so we’re thinking about providing RAID options for it but using mdraid under the covers. What do you think?
Hi, will this revamped installer be available in F16?
Hi Razz; no, it’s currently targeted for Fedora 17!
These look great! Nice job!
At the point of disk selection the user needs to be told:
1. What happens if they install Fedora onto a disk with an existing operating system on it?
2. What happens to their existing data and documents on that disk?
And ideally short circuit disk selection entirely if their is only one hard disk.
I like the new design, but it comes across as an ‘advanced users’ design for people with multiple disks.
Nearly all desktop machines ship with a single hard disk with Windows pre-installed so the installer should be optimised for this common case (for every user that wants to blow away the pre-installed Windows there will be another that wants to keep it).
As a user, at the highest level, I want to do one of two things:
1. Replace my existing operating system with Fedora.
2. Install Fedora alongside my existing operating system.
Case 1: I want my existing data and documents to be preserved, so if I replace, e.g. Windows with Fedora I would want My Documents migrated to my new Fedora user’s Documents, and so on, or at least be told in VERY BIG LETTERS that all my data will be blown away and I should make a backup before installing.
Most computer users understand about files, some about ‘drives’ (e.g. external USB hard disk), but few users know or understand about partitions. They won’t know that replacing their existing NTFS partition with an ext4/btrfs one will wipe all their data and documents because they happened to be on the same partition as Windows.
Case 2: I must decide how much disk space to dedicate to Fedora. Remember, for a lot, probably the majority, of desktop machines, there will only be one hard disk so a slider is all that’s needed, e.g.:
How much hard disk space do you want to assign to Fedora?
If you are not sure, just click Ok to accept the default.
So if I look at your mockups in the light of the above:
9-1-1 asks me what hard disk I want to install Fedora on. Why am I being asked to choose a hard disk if there is only one option? (or maybe you short-circuit this screen in the single hard disk case – you don’t say.)
9-1-2 asks me if I want to install on the only hard disk on the machine, the one that already has Windows on it. Well this scares me off, as you say, because I am not re-assured that I can install Fedora alongside Windows without replacing it and it doesn’t say what happens to my existing data and documents on the Windows partition. If I choose to replace Windows with Fedora am I warned that all my data and documents are lost? (or will they be newly migrated in Fedora 17?)
Excellent analysis. We don’t cover the case where there’s only one hard disk (although the first mockup shows one hard disk + an sd card + a usb key… assuming you’re installing via USB key so that’s why that’s there, so that is kind of the case). But you’re right, if you’ve only got one real HDD then why do we ask you? We’ll make mockup changes based on your suggestions here.
We are going to have a slider for when you click ‘make room’; it’s not mocked up yet but in the whiteboards (we called it ‘Tug o’ War’ 🙂 http://www.flickr.com/photos/mairin/6175669502/in/photostream ) but you have to grow through this stuff first which is probably wrong if you’ve only got one disk.
Thanks again for taking the time to provide such excellent analysis; this is quite helpful!!!
For Pete’s sake, don’t forget to optimize your PNG files with optipng. I’ve shrunk on the size of the PNG files of my Fedora install to nearly 55%.
Valid, good point: A+
Attitude in delivery: B-
Kind of think St. Peter has more pressing issues… 🙂
Looking forward to it.
[…] with no extra surprises. I do know that the Anaconda team is working very hard with Máirín Duffy on a UI overhaul. That’s supposed to see the light of day in the next release, Fedora 17. For now we’ll […]
Hi there, maybe I missed this in previous comments or blog posts, but can I hope that the new anaconda will do some magic to handle SSDs correctly, like enabling TRIM by default (“discard” option in fstab; and “noatime” could possibly be helpful too)?
Hi Jeff, I agree with Adam on this; I’ve spoke to some folks who work on the storage stack and they have said SSDs don’t necessarily need any special configuration and that trim doesn’t always do anything productive. It seems like folks have mixed opinions on it; I think ideally we’d detect whether or not a given disk was an SSD and just do the right thing automatically under the covers without UI options. The main problem is no one agrees on what the right thing to do is.
“Specialized & Network disks
Most folks won’t need to use this at all, but this is how you’d go about adding ‘special’ disks such as iscsi/fibre, multipath/otherwise SANs or DASDs or things like that. For Fedora installations, we may, just may, hide this widget using an install class since Fedora’s main target is desktop. (If this would break your heart please let us know.)”
‘Fedora’s main target is desktop’ seems like an overbroad assertion, I’m not aware that determination had been made by any group with the authority to do so. I don’t think the Board’s ‘target user’ discussion came out and said ‘our main target is the desktop’, did it?
Anyway, with the current basic/advanced disks split, BIOS RAID is considered ‘advanced’, and that’s certainly used on some desktops. Heck, my laptop came configured with BIOS RAID from the factory.
Jeff: “Hi there, maybe I missed this in previous comments or blog posts, but can I hope that the new anaconda will do some magic to handle SSDs correctly, like enabling TRIM by default (“discard” option in fstab; and “noatime” could possibly be helpful too)?”
That’s not part of the UI re-design.
We would not simply set ‘discard’ wholesale, anyway, as there are some folks at RH who do a lot of in-depth testing of SSDs, and they’ve said before that not all SSDs actually benefit from using the discard mount option. Check the devel archives, threads should be in there somewhere.
Hi Adam, so I can imagine that some SSDs don’t handle realtime TRIM (the discard option) nicely, what about FITRIM?
“Is this clunky? I’m thinking ctrl+click to select but maybe that’s not obvious enough. Maybe they could have little checkboxes in the corner too and rather than be shift+click they’d just be click once to select, click one more time to deselect?”
Yes, I think click/shift-click to select is not obvious enough, and checkboxes would be better.
Cool I think that’s the way to go then.
[…] So, last time we chatted about Fedora’s installer redesign, we walked through how users would select which disks they’d like to be part of the install. […]
[…] Written by l1nux on October 4, 2011. Posted in Fedora Tutorials So, last time we chatted about Fedora’s installer redesign, we walked through how users would select which disks they’d like to be part of the install. […]