Re: Draft proposal for using full anaconda as the default Fedora download

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

 



On Fri, 21 Jan 2011, M?ir?n Duffy wrote:

Hi,

After some discussion in #anaconda earlier this week I put together a
proposal for using a full anaconda environment as the default
installation method for Fedora rather than the current live installation
environment. Before I sent this to fedora-devel (which I'm admittedly
terrified of) I was hoping you folks might be willing to look over it
below and sanity-check it for me?

The next step I think is maybe to have some discussion on fedora-devel
and propose it to FESCo.

I really appreciate any feedback!

Thanks,
~m

---

PROPOSAL:
Use full installer environment as default Fedora install method

Currently (and since ~Fedora 12) the default media promoted for
installation of Fedora both via our website at fedoraproject.org and at
conferences and other events is the Desktop Live Media ISO, delivered
via pressed optical media at events, and typically delivered via
home-burned optical media or live usb media created via dd,
livecd-creator on the command line, or the Live USB Creator GUI (the
latter the most popular for non-Linux systems.)

Live Media affords some clear advantages over traditional installers,
primarily in its ability to be used via USB sticks as optical drives are
less ubiquitous in laptops and its singularity as one image you can
try-before-you-buy to test out drivers, rescue machines, and use as a
full installer. It also affords a gee-whiz factor.

However, there are some serious concerns about the stability and overall
user experience in promoting live media as the primary installation
method of Fedora. There is also a larger concern about the future
direction and maintenance of the spins project. Creating and maintaining
usable live media is not a trivial task and many of our spins
maintainers have understandably burnt out. Reconsidering how we deliver
installation of Fedora to our end users may offer an opportunity to help
this situation.

First we'll walk through the advantages and disadvantages of live media,
then we'll specifically address how switching to a full install
environment affects each point and try to assess via discussion whether
or not this is a proposal worth considering.

= Advantages of Live Media: =
=============================

1. Try-before-you buy - not sure if Fedora will work with your video
card or other hardware? You can easily pop it in and test it out without
the trouble of a full install.

To me, this is the best advantage of the live media.

2. Very fast install time (due to use of dd?)

Internally it just uses the os.read() and os.write() Python functions.
8MB at a time.

3. Convenient transition from trying to buying

4. Only one image to download for try, install, and rescue

5. Constrained / curated package set, no burden on the user to configure
too much up front

6. Live environment means it's easier to take screenshots of crashes and
look up helpful information on line to assist with installation

7. Viable long-term solution for those with computer access but no
administrative control (e.g., children with access to school & library
computer labs) to provide access to free software (if persistence worked
well)

8. It works off of USB, which is good for the many laptops and slim
towers today that come without optical drives.


= Disadvantages of Live Media: = ================================

1. Live environment is confusing to novice users who don't understand
what's going on. They may not realize the environment is on the USB
stick, and pull it out while it's running losing data (I have witnessed
this multiple times.) They also may think their system is 'installed'
when it's not, go about their work, and then lose it on reboot.)

2. Live environment means it's possible to put the system into a state
that anaconda won't know how to deal with it and install-to-disk will
fail ("a system that actively encourages you to go screw around with
things until anaconda can no longer trust how things are set up")

3. Getting it onto the USB stick is non-trivial. There are three ways to
do it (dd, liveusb-creator command line, liveusb-creator UI) and no
single clear path is promoted.

4. Having to download both the ISO and a client to put the image on a
USB stick afterwards is a lot to download and hard to figure out for
novice users.

5. Requires use of isohybrid which means media can't boot on Macs
without bootcamp

6. Dangerous option for long-term use because persistence is still not
reliable and depending on the brand of USB key it may just die
unpredictably.

The other big limitation people point out is the forced filesystem
selection.  Or is that still a problem?

= Can the full installer provide the advantages of Live Media? = =================================================================

Let's walk through the advantages of live media and see if the full
installer can also provide them:

1. Try-before-you-buy

While it's not advertised or often talked about, you can use the
anaconda UI to install Fedora to a USB key or external hard drive to try
before you buy.

2. Very fast install time

When I installed Fedora 14 via DVD, it took:
 ? 1.5 hours (mostly idle) to download the ISO
 ? 10 minutes to burn the ISO to a DVD and set the computer to burn to
DVD
 ? 45 minutes from starting the install to booting into a running
desktop

When I installed Fedora 14 via LiveMedia, it took:
 ? > 2 active hours and pain to get it downloaded and onto a USB stick
 ? 10-15 minutes for the meat of the install process, but varies based
on drive type (that was an SSD)
 ? Total elapsed install time after that, including media check, was 45
minutes.
3. Convenient transition from trying to buying

It would be a little less convenient. You would need two USB keys - one
for your 'trial' installation of Fedora, the other for the full
installer - which you'd use both to create your 'trial' install and your
real install-to-hard-disk install. You couldn't click a button from the
running 'trial' USB install to install to disk - you'd have to reboot
using the installer USB key.

4. Only one image to download for try, install, and rescue

You only need to download one ISO with the DVD as well for try &
install. I'm not sure about rescue. Can the full installer media be used
as a rescue disk or would we need an additional image for this?

Yes, rescue is the same.  Just pass "rescue" as a boot option.

5. Constrained / curated package set, no burden on the user to configure
too much up front

It would be possible to make the full installer behave this way too via
comps groups juggling.

This really becomes a matter of solidifying what we call the "Fedora" tree
vs. the Everything tree.

6. Live environment means it's easier to take screenshots of crashes and
look up helpful information on line to assist with installation

This is definitely harder to do in the full installer, but you could
always use a camera to take screenshots. There isn't a lot of evidence
to indicate that users actually take advantage of the live install
environment to look up documentation. Anaconda used to have a
documentation pane and it was removed because it simply wasn't being
used. Note that some developers told me they like the live environment
because they can debug anaconda while it's running and get it working
again without a reboot. Definitely a narrow edge-case, though.

You can do this in the regular installer.  Hit PrintScreen and you'll get
a PNG of the current screen in root's home directory on the target system,
/root/anaconda-screenshots.  If you don't complete installation, you can
still get to the screenshots via tty2 in /tmp/anaconda-screenshots.

If you are doing a kickstart install, you can add "autoscreenshot" to the
ks file and anaconda will take a screenshot of each screen it comes to and
place them in the above directories.

7. Viable long-term solution for those with computer access but no
administrative control...

You can use anaconda to install directly to a USB key. How easy this is
to produce live USB keys en masse, I'm not sure.

8. It works off of USB, which is good for the many laptops and slim
towers today that come without optical drives.

With some modifications LiveUSB-creator could make a bootable full
install environment on a USB key.


= Can the full installer improve the disadvantages of Live Media? =
===================================================================

1. Live environment is confusing to novice users who don't understand
what's going on.
The full install environment is clearly its own world and there is no
confusion regarding the state of the system when it is fully running,
nor is there any temptation to start working on documents that you would
then lose if you weren't sure what was really going on.

IMHO, I think it's easier to provide instructions to a complete novice for
a limited environment (regular installer) vs. a live system.  There are
far to many things a user can click on under the live image.

2.Live environment means it's possible to put the system into a state
that anaconda won't know how to deal with it.

The full install environment is far more stable and reliable and would
likely result in a better overall success rate for users.

3. Getting it onto the USB stick is non-trivial. There are three ways to
do it (dd, liveusb-creator command line, liveusb-creator UI) and no
single clear path is promoted.

Since this would be a new delivery method for Fedora, we have the
opportunity to develop clear & consistent messaging for it.
4. Having to download both the ISO and a client to put the image on a
USB stick afterwards is a lot to download and hard to figure out for
novice users.

This would still be an issue, but there are other solutions to this
(e.g., offer the liveusb-creator as the default download.
LiveUSB-creator can download ISOs for you!)

anaconda could also be used for this functionality, though it would
require some better instructions and messaging for users.  But as you
state above, you can use the regular installer to install to a USB
flashdrive.  We provide a bootable self-contained system on a CD/DVD image
and it does the rest.  The LiveUSB-creator requires another system already
installed and up and running, which some people may not have.

5. Requires use of isohybrid which means media can't boot on Macs
without bootcamp

We would still need isohybrid to run anaconda off of a USB stick
unfortunately.

6. Dangerous option for long-term use because persistence is still not
reliable and depending on the brand of USB key it may just die
unpredictably.

Data persistence would NOT be an issue with an anaconda-installed USB
stick since it's not a live environment.

= Summary =
===========

In summary, we could say that moving to the full installer would have
the potential disadvantages:

? Require a modification of liveusb-creator to support the creation of
bootable usb media for the full installer

? Might possibly require a separate rescue image

? Not require much more time for installation if you start out
media-less (the website use-case), but would require more time if you
are handed a disc or USB key (the conference / LUG / office case).

? Require a minor inconvenience - users will need to reboot to install
fully while trying out Fedora off of the bootable Fedora USB stick.

? Make it a little bit harder to take screenshots and debug the
installation process when it fails.

It would bring several compelling advantages:

? Anaconda-installed Bootable USB media are going to be more reliable
and pose less risk to user data and thus less risk to the impact of
outreach efforts such as the Girl Scouts program we recently engaged in.

? Bootable USB media for Fedora may be easier to create as well as the
installer is a single robust method and the same method used for real
computer installations.

? There will be less confusion about the state of the computer when full
anaconda is running.

? Less temptation for users to create documents / bookmarks /
conversations / other media that will be lost post-install.

? The opportunity to present a single, clear and consistent path to
getting the bootable installer onto a USB stick.

? No live environment means no opportunity for changing the state of the
system in unpredictable ways, causing difficult-to-impossible-to-debug
crashes in installations.

Suggested Path to Getting There

? Modify comps-groups / anaconda appropriately to provide a sane,
curated default package set via the full installer.
	? Consult with desktop SIG on this

? Modify the website:
	?  to provide links to the full installer by default
	? Or (even better) modify the website to provide links to liveUSB
creator (link may change based on sniffed OS, offer Win / OS X links to
the creator as well)
	? (if needed) Add links to rescue media

? Modify liveusb-creator:
	? streamline live USB creator to make it clear how to download the
appropriate ISO
	? Usability review & redesign for Live USB creator to optimize for new
use cases:
		? create bootable anaconda
		? create bootable Fedora or install Fedora to disk
	? Modify liveusb-creator to support the creation of bootable usb media
for the installer
	? Modify liveusb-creator to support OS X

? If additional rescue media images are needed, the creation of these
added to the release engineering processes

? Modify docs to clearly outline new installation steps

? Development of docs / website tutorials to outline the new
try-before-you-buy USB creation process

? Spins.fedoraproject.org and spins in general.... :( I don't know.
Replaced with comps groups?

Open Questions
? Is separate rescue media necessary if we opt for full installer?

No.

? What happens to spins.fedoraproject.org?
? What happens to spins in general
? Is the LiveUSB-creator work required to make this happen feasible? Is
it something we can put more effort behind?

--
David Cantrell <dcantrell@xxxxxxxxxx>
Supervisor, Installer Engineering Team
Red Hat, Inc. | Honolulu, HI | UTC-10

_______________________________________________
Anaconda-devel-list mailing list
Anaconda-devel-list@xxxxxxxxxx
https://www.redhat.com/mailman/listinfo/anaconda-devel-list


[Index of Archives]     [Kickstart]     [Fedora Users]     [Fedora Legacy List]     [Fedora Maintainers]     [Fedora Desktop]     [Fedora SELinux]     [Big List of Linux Books]     [Yosemite News]     [Yosemite Photos]     [KDE Users]     [Fedora Tools]
  Powered by Linux