The Robservatory

Robservations on everything…

 

Click [and click and click …] to install

Tiger boxIn comparison to other platforms, installing software on OS X is a breeze. Usually, you just drag and drop the program from the disk image to its destination, and you’re done. Even some complex programs can be a snap to install — Office 2004, for instance, has its installer hidden in its code, and it’s smart enough to run the first time you launch any Office app. So even though it installs stuff to a bunch of places, it’s transparent to the user.

The third option is Apple’s installer, which helps guide the user through the software installation process. The installer is the ideal solution for programs that need to install things in many spots, and require administrative access to do so. And while using the installer is still a very simple process, I still find it a frustrating process at times.

As an example, consider my recent installation of a new version of Snapz Pro X, the indispensible screen capture tool. Please note that this is not intended to be a slam on Apple’s installer or Snapz Pro X (which I rely on every day!). Rather, it’s just an example of how the process can be a bit frustrating and confusing, along with a couple of suggested improvements.

The first thing to do, of course, is getting to the installer step itself. I’m assuming that the program has been downloaded, the archive expanded, and the disk image mounted. So now it’s time to run the installer, and again, I’m using Snapz Pro X for this walk-through.

  1. Double-click the Snapz installer package. [2 clicks]
  2. Wait a second, and you’ll see this screen appear:

    Installer warning

    Note that most OS X packages don’t cause this screen to appear. I’m not sure when it crops up, but sometimes it does (only for apps that install kernel extensions?).

    Now I consider myself a relatively astute OS X user. However, I have difficulty understanding the purpose of this dialog box. The top part seems to imply that the installer is about to run a program which will check to see if my system can handle the package I’m about to install. That makes some sense to me — perhaps it goes out to make sure I’ve got 10.4.1, for instance.

    But the second part of the dialog box delivers a different message: If you don’t know the source of this program, then cancel out now before it has a chance to check whether you can even use it or not. So I’m confused: is this a security screen, or is it really a compatibility check of some sort? According to a friend who should know, it is a security screen, and there’s no compatibility checking that goes on at all.

    Even if you’re not sure of the source of the software, there are plenty more opportunities to cancel the install, so I really don’t get the point of this dialog. Regardless, we need to click the Continue button to make it go away. [3 clicks total thus far]

  3. Introduction screen. Read the text. Click Continue. [4 clicks]
  4. Read Me screen. Read the text. Click Continue. [5 clicks]
  5. License. Read the license agreement. Understand none of it, thanks to legalese. Click Continue [6 clicks]
  6. Whoops, a new pop-up. Now we have to agree or disagree with the license agreement. Unfortunately, it’s popped-up right over the license itself, so if you want to go back and check what it says, you’ll have to click Disagree. I’m sure there’s a legal reason why an attention-grabbing pop-up is required here, but it really makes no sense — why can’t the Disagree and Agree buttons be located at the very bottom of the license agreement window? In any event, click
    Agree to keep the process rolling. [7 clicks]
  7. Select Destination screen. Pick which drive, if applicable, for the installation. Click Continue. [8 clicks]
  8. Installation Type. Assuming you don’t want to (or can’t) customize the installation, which is a whole series of more clicks, click Continue. [8 clicks]
  9. Enter password when prompted, and click (or press Return). [9 clicks]
  10. Finish Up screen. Click Close. [10 clicks]

Whew. Although there’s nothing complex in that process, if you were keeping score at home, you saw 10 mouse clicks, two pop-up windows, and one password dialog box. As I said, it’s a smooth process, but it still seems to involve a lot of user interaction. So how do I think it could be improved?

  • For those programs that require the initial pop-up warning, change the wording. If it’s designed to be a warning, then warn us: ‘This installer includes a kernel extension. Kernel extensions can do all sorts of Really Bad Things™ to your computer. Are you sure you trust the source of this program? Click Yes to continue installing or No to quit back to the Finder.’ That would let you know precisely why you should double-check the authenticity of the program prior to installing.
  • Put the legal acceptance buttons directly at the bottom of the license agreement. Even if it took a click to make them appear, at least it wouldn’t be dropping them down over the top of the agreement itself. Ideally, these buttons would be in a fixed frame, so you could scroll the agreement while keeping the two buttons onscreen.
  • If the “install type” options were listed below the drives in the location selection screen, you could combine these steps — highlight the drive to install, and then press the right button: Normal (highlighted), Custom, Upgrade, etc.

I’m sure there are other things that could be done to smooth the process. Those are just a few that struck me as I worked through my dozen-odd mouse clicks last night. And really, the installer is a great tool — installing a kernel extension on Linux would require a much higher degree of technical skill. It’s also relatively idiot-proof, so that people of all experience levels can use the installer without fear. But if they could eliminate a few mouse clicks from the process, I’d be a much happier user … and change that silly initial warning dialog!

19 Comments

Add a Comment
  1. License. Read the license agreement. Understand none of it, thanks to legalese. Click Continue – couldn’t stop laughing for a while. yes, installing is tedious, especially if you’re setting up a new system. I’m still hoping, that someone comes up with a hint “Auto-Install known applications without having to click …”

  2. It has nothing to do with kernel extensions, it’s just a checkup to see if the app is running, if there are missing files and so on… and so on…

    Where did you get that idea from the extensions????

  3. It is a security measure. Usually, an installer just installs an application and you’ll have to run it manually afterwards.

    This warning will pop up if the installation requires the installer to run a script bundled with the installer package. Meaning the installation process itself could do malicious things to your system without you actually launching the installed application.

  4. The warning as noted is a security measure and doesn’t have anything to do with what eventually gets installed. It pops up if the installer got a custom pre-install script inside which is meant to be used to determine if the package could be installed on your system — but since it’s a custom script, it can pretty much do anything it pleases.

    The odd thing is that post-install scripts which are run after the installation process has finished does not result in a similar warning.

    I guess it’s this way so you can at least safely double-click on an installer package and check out the first screen so you will know what XYZ.pkg really is.

    Most of the other screens, such as Readme and License, are of course optional and up to the creator of the installer package to decide whether to include those.

  5. d, there’s an easy answer for why post-install scripts don’t give a similar warning.

    If you’re using the Safari web browser, when you download a .zip or .dmg containing a singular .pkg file, the Installer.app automatically opens. The first thing you see, if there is a ‘pre-flight’ script, is that security warning about giving permission to check if the software’s compatible with your system and cancelling if you’re unsure of the installer’s origin. This makes sense, though the wording of the warning could admittedly stand for a change.

    However, if you’ve gotten through, as rob counted, the “10 clicks” to get to where the software actually is installing, it’s assumed that you conciously are installing the software and therefore would (assumedly) know where the software came from. So why bother warning about post-flight scripts after you’ve already gone through 10 clicks and given your admin password to the installer?

  6. Hopefully as more and more people upgrade to Panther or Tiger the number of installers u sing preflight scripts will decrease (thus eliminating the security warning as well). Panther’s installer added support for lots of built-in checks, which previously had to be done via preflight scripts.

    Software meant to run on Jaguar or earlier has to use the preflight scripts, but software targeting recent versions of Mac OS X can skip the preflight script (and its security warning) by using the new built-in tests.

    (of course, a lot of Panther-only or Tiger-only software installers use the preflight check, even though it’s not necessary anymore .. developers simply haven’t learned to use the cool new stuff added to the recent versions of Installer. Part of this is Apple’s fault .. these new abilities are not exposed in the PackageMaker interface, so those who haven’t read the updated documentation or release notes might not even know that these features exist.)

  7. Well, I for one think you cheated. You should have counted the clicks to:

    Click a web page link to download the software.

    If it’s on SourceForge, click another link to choose a mirror.

    Then click another link when you get impatient that it takes more than a second to start downloading.

    Then, double-click (does that count as 2?) to decompress the archive.

    Then, double-click (ok, 1 1/2; so two double-clicks make three clicks) to mount the disk image.

    Double-click again to open the folder containing the installer package.

    Double-click to read the Read Me. (Natch.)

    Then, all the clicks you counted…

    Then, click to Restart, or click to quit the installer.

    Man, no wonder there’s so much RSI around…

  8. I, too, am annoyed at the escalating number of clicks required for installation. The NeXT version of Installer.app required 2 or sometimes 3 clicks. It wasn’t doing any less work – in fact it did more work – it just didn’t pester you throughout the process.

    Other things I miss about the NeXT installer:
    – You could view the BOM to see what files will be installed and examine the pre- & post-install scripts.
    – You could toggle between the process view and log view during the install to see detailed status.
    – You could examine the installation log to see what files were installed where and what existing files were modified.
    – It was smart enough not to ask which disk if there was only 1 valid target disk.

  9. What I’d like to see, if some sort of system, where when you put a .app file in the Trash Can, the Finder will pop up a box that says, “You are deleting application ‘AppName.’ Would you also like to delete associated preference and support files?” with the options [Yes] [No (default)] [Details (which lists the extra files to be deleted)]. Apple could just publish a spec that says, “Change the info.plist in your application to list support files, and they’ll be put on the chopping block,” to make this work. This would make the uninstalling process a little cleaner. We wouldn’t be stuck with the ugly uninstaller system of Windows, but even non-technical could get applications back into a pristine preferences state.

  10. I don’t know if this has changed at all in Tiger (I am running Panther), but why can’t I use the keyboard to do all of this. None of the continue buttons are default (with the exception of the preflight script dialog box) and even with extended keyboard access turned on, I still have to click on the installer disk and the “disagree” button is selected by default instead of “agree” (is there a legal reason for this?) I don’t mind so many screens, but why can’t I install entirely with the keyboard?

  11. Why can’t the first three screens be combined, with the button at the bottom being “Agree”/”Disagree”, get rid of the disk selection if there’s only one, and just *ignore* the security warning? I swear, by making us always accept that confusing warning, they *reduce* security by desensitizing us to it.

    Finally, you can view the files to be installed or the log – look on the File menu after you accept the agreement. Now sit and ask yourself WHY the file list is not hierarchical and instead thousands of lines long (for an OS combo updater, for instance). I use Pacifist exclusively because of that braindead file list.

  12. In addition to the pre-[install|upgrade] and post-[install|upgrade] scripts, there’s an InstallationCheck script, and as I understood it, that’s the one that generates the dialogue in point 2.

    If your app depends on a component that is not installed by default (X11, for instance, or the BSD subsystem on 10.2) or otherwise only works on a specific version of Mac OS X, this script is important to include in your installer.

    It’s a lot better to get a support enquiry “the installer won’t instally MyCoolApp.app” than one like “your stupid app won’t launch and crashes after I installed it”, not only for troubleshooting purposes (InstallationCheck has ruled out missing dependencies or incompatible OS/component versisons from the start) but for user-developer relations as well….

    The Installer.app dialogue is performing both functions: alerting the user that it needs to run this compatibility-check script and asking for permission to do so (warning the user in case you randomnly and wildly download and install things). Because InstallationCheck is a shell script (rather than some limited set of Installer.app calls or something), it can do anything a shell script can, so it’s potentially dangerous and could do damage before an app is even installed were it malicious. I agree the dialogue is confusing, but I can’t think of any better way of presenting the function(s).

  13. Honestly, are you people so annoyed with 10 clicks or so ? Looks like none of you have gone through punch cards. No it is not usual “Good old days ..” rant, but there are far more wasteful activities we do everyday. For example people spent an aweful lot time customizing and changing desktop frequently. Granted that it is a good idea to keep the place tidy where you spend a lot of time, but they will never rearrange or clean the houses that frequently either. Well why don’t we have something which just reads my mind and make the desktop accordingly.

    And how often and how frequently is everyone installing softwares ? Is it once in a day or once in a week ? And is it worth the cry ( please please make the installation few less clicks) ?

    Yes, a true jedi only uses a vt100 terminal ! :)

  14. With extended keyboard access turned on, it’s possible to go through all the install step without the mouse:
    use to cycle through different buttons
    use or to choose the default highlighted button
    use to choose button with border-only higlight

    A lot of people don’t know it but the space bar allow you to validate for button which are not the default one but which have their border highlighted :)

  15. Sorry, but in my previous post all the keys (that I put inside bracket) disapeared.
    for clarity I’ll repeat:
    use “tab” to cycle through different buttons
    use “enter” or “return” to choose the default highlighted button
    use “space” to choose button with border-only higlight

  16. Amen to the comments above re keyboard shortcuts in the installer application: it’s atrociously inconsistent and has been for quite some time now. You can use the keyboard for the first piece of the puzzle (space bar to select the option with the halo), but post then it’s mouse mouse mouse all the way until you get to quit out of the thing at the end (or restart). Yuck…

  17. There’s one thing in your article that I found somewhat confusing, Rob. You write:

    Office 2004, for instance, has its installer hidden in its code, and it’s smart enough to run the first time you launch any Office app. So even though it installs stuff to a bunch of places, it’s transparent to the user.

    I think “transparent” is not the proper word to use. The process for the user (even for the experienced user) is totally opaque; (s)he has absolutely no idea what is being installed where. The process is *easy*: it doesn’t require any user interaction, it doesn’t ask the user to answer question about his system, e.g. And that’s a sort of behavior that I see more and more with installers: instead of really telling what they do, some well-meaning but overly authoritarian engineers decided that users are idiots anyway and that it’s better to hide the entire installation routine from them. Often, you can’t download the entire software, you just download some tiny installer which will then basically take over your computer, download more and more parts of itself and then install the application – and god knows what else. This really gives me the willies, and I find it extremely annoying.

Leave a Reply

The Robservatory © 2018 • Privacy Policy Built from the Frontier theme