or Connect
AppleInsider › Forums › Software › Mac OS X › Mac OS X Tiger to sport feature-rich Installer application
New Posts  All Forums:Forum Nav:

Mac OS X Tiger to sport feature-rich Installer application

post #1 of 31
Thread Starter 
Apple's Mac OS X "Tiger" Installer application will support several new features to aid developers in delivering a more robust installation experience for users, Apple developer sources say.

The new version--officially deemed "Installer 2.0"--packs several basic enhancements, in addition to some advanced features that will provide application developers with more control over their application's installation process through the creation of installer plug-ins and distribution scripts.

Basic Enhancements

Installer 2.0 will gain support for file version checking, ensuring that installers only replace outdated files on the user's machine, leaving up-to-date files alone. The software will also allow developers to create application upgrades that let the user select the application to be upgraded, whereas previously users could only select installation volumes.

Another feature of Installer 2.0 is a developer preference to provide minimal interface installations. Using this feature, developers can reduce the number of panels shown to the user during an installation or implement completely automated installs. The software will also gain true support for multiple CD/DVD installs, prompting the user for new discs as they are needed.

Advanced Developer Features

For those developers who would like to further customize their application's installation process, Tiger will offer Installer plug-ins. More specifically, Installer plug-ins are bundles that developers may use to display custom panes in the Installer of their applications. These panes may be used to display instructions or gather additional information, such as registration and license information.

Additionally, developers will be able to create custom distribution scripts that offer a flexible and convenient way to install multiple subpackages from a single installation package. The scripts combine a simple collection of XML elements and optional JavaScript code to deliver a very sophisticated set of installation options to the user. Developers who use a distribution script can establish package dependencies, offer highly configurable installation options, and provide code to prevent the user from installing software on an unsupported hardware or software configuration.

In recent weeks AppleInsider has provided extensive coverage of Mac OS X 10.4 Tiger. Previous reports include coverage of Tiger's Spotlight search, Safari with RSS, Mail 2.0 with smart mailboxes, iCal 1.5.3,
post #2 of 31
Quote:
Installer 2.0 will gain support for file version checking, ensuring that installers only replace outdated files on the user's machine, leaving up-to-date files alone. The software will also allow developers to create application upgrades that let the user select the application to be upgraded, whereas previously users could only select installation volumes.

Very cool. I can't tell you how many developers using Core Audio SDK where miffed when new version of Xcode had overwritten their newer CA SDK. This need to work without hitch.

Quote:
The software will also gain true support for multiple CD/DVD installs, prompting the user for new discs as they are needed.

With the Production Suite taking 64 gigs or more to install this is a welcome feature. Looks like future installs will have to take multiple Blu Ray discs....scary.

Quote:
In recent weeks AppleInsider has provided extensive coverage of Mac OS X 10.4 Tiger. Previous reports include coverage of Tiger's Spotlight search, Safari with RSS, Mail 2.0 with smart mailboxes, iCal 1.5.3,

Yes you have an I've enjoyed all of them.
He's a mod so he has a few extra vBulletin privileges. That doesn't mean he should stop posting or should start acting like Digital Jesus.
- SolipsismX
Reply
He's a mod so he has a few extra vBulletin privileges. That doesn't mean he should stop posting or should start acting like Digital Jesus.
- SolipsismX
Reply
post #3 of 31
Is this thing still going to only cost 129? Seems like this OS is a developer's dream...but also an end-user's dream.

10.0 to 10.2 have focused almost entirely on the end-user...but mostly on speed instead of actual features. 10.3 seems to have pleased end-users, but developers didn't get very much to play with. But 10.4!? Holy moley. This one is big.

Someone on 10.3 should have the incentive of upgrading but 10.3 is really quite good so it would be forgivable if a 10.3 user decided to stay with 10.3...but someone on 10.2 or earlier deciding not to get 10.4 would be crazy.

Hopefully, once 10.4 is released, Apple will only need to maintain 10.3 and 10.4 actively, 10.2 and below should probably not get any attention at all. This would send users the message to upgrade...yes, a strong-arm tactic, but I since Apple has decided to slow the pace on OS X upgrades, people should make the effort to upgrade to at least 10.3.

Everyone would benefit. The developers would be able to use 10.3 and 10.4 features without alienating a lot of people and therefore apps would be built in less time (by using the new frameworks to do things they had to code manually before) and become more powerful...and developers would only have to support 10.3 and 10.4. The users would get the speed benefits brought in 10.3 and all the new features 10.3 and 10.4 brought over 10.2 and previous versions.

Apple would have time to improve the OS instead of spending resources and time maintaining versions below 10.3.
post #4 of 31
This is really great. It's about time Apple added these features. Now all they need to add is an uninstaller.
<Arthur/>
Reply
<Arthur/>
Reply
post #5 of 31
Quote:
Originally posted by artooro
This is really great. It's about time Apple added these features. Now all they need to add is an uninstaller.

The uninstaller isn't needed for the most part since apps should be bundles that can be dragged and dropped into the trash and everything else installed by the installer (libraries, toolkits, drivers) should probably remain on the HD in case other apps are using it.

But if a developer so wishes, they can write a plugin to uninstall their app (if it doesn't conform to OS X guidelines and scatters files around instead of putting things in neat little bundles or if an installed framework must be removed.)

I can see the use of uninstallers on Windows...but very little use on OS X.
post #6 of 31
Quote:
Originally posted by kim kap sol
The uninstaller isn't needed for the most part since apps should be bundles that can be dragged and dropped into the trash and everything else installed by the installer (libraries, toolkits, drivers) should probably remain on the HD in case other apps are using it.

But if a developer so wishes, they can write a plugin to uninstall their app (if it doesn't conform to OS X guidelines and scatters files around instead of putting things in neat little bundles or if an installed framework must be removed.)

I can see the use of uninstallers on Windows...but very little use on OS X.

Yeah, your right for the most part. But simply removing an application bundle doesn't remove the preferences and any other files in the Library.

Also some things like MySQL which can't be in a single bundle would be a lot easier to uninstall using an uninstaller. Currently you have to do it manually or use a shell script.
Other than that there's also Perl, Apache, and other UNIX stuff.

But for the common Mac OS X application you wouldn't need an uninstaller.
<Arthur/>
Reply
<Arthur/>
Reply
post #7 of 31
There is an uninstaller... it's called Installer.

If you installed the application using Installer, double-click on the package a second time, after installation, and you'll see an Uninstall item in the File menu. Been there all along.
My brain is hung like a HORSE!
Reply
My brain is hung like a HORSE!
Reply
post #8 of 31
Quote:
Originally posted by Kickaha
There is an uninstaller... it's called Installer.

If you installed the application using Installer, double-click on the package a second time, after installation, and you'll see an Uninstall item in the File menu. Been there all along.

Hmm, interesting...I haven't run across any package that does this (yet). Can you provide an example? And why would a menu item suddenly appear? That's not going by the HIG guidelines if you ask me.
post #9 of 31
Quote:
Originally posted by Kickaha
There is an uninstaller... it's called Installer.

If you installed the application using Installer, double-click on the package a second time, after installation, and you'll see an Uninstall item in the File menu. Been there all along.

You must be talking about some 3rd party installation software because installer packages built using Apple's PackageMaker cannot uninstall. I tried what you wrote and from the two packages I tried it with there's no such menu item.

Unless you are talking about the installer in Tiger of course.
<Arthur/>
Reply
<Arthur/>
Reply
post #10 of 31
Nope, in 10.2 the Installer had an Uninstall menu item. Blast, will have to track this down now. Grr.
My brain is hung like a HORSE!
Reply
My brain is hung like a HORSE!
Reply
post #11 of 31
Does Tiger have an "iMac's ridiculous rumored price rebate protection" button? They might want to think of putting one of those in.
IBL!
Reply
IBL!
Reply
post #12 of 31
Quote:
Originally posted by hmurchison
Very cool. I can't tell you how many developers using Core Audio SDK where miffed when new version of Xcode had overwritten their newer CA SDK. This need to work without hitch.


This is why I haven't installed XCode 1.5 yet. I'm just getting started with CoreAudio/MIDI and finally have the MIDI piece working. I'd hate to have it blown out by updated dev tools.

I personally can't wait for 10.4. It sounds like a developer's dream release.
post #13 of 31
"I personally can't wait for 10.4. It sounds like a developer's dream release."

Apple is having major developer support problems right now. Xcode being the major problem, but not the only. Unless something dramatic changes soon I don't see any reason why 10.4 will be any better than what we have today.
post #14 of 31
That's good news because there are a few things that are absolutely wrong about installing software in OS X right now.

1) Lately, I've been bothered by a dialog that says something like, "Can I run a short program to see whether this program can be installed? (yes/no)" When would you ever say "no?" That checking program ought to run automatically and bother the user only if it fails, i.e., there is no user interaction if all is well.

2) The "Optimizing Volume" step takes several times longer to run than the rest of the installation steps combined. THAT should be the optional step and there should be a tool to do that optimizing independent of a software installation. My understanding is that it is updating the prebindings, so it appears that the installer is wasting 5-10 minutes of my time so that their new app starts a few seconds faster the FIRST time I use it. Does that make sense?

3) Since an installer is fully aware of all of the files it has updated or installed, why can't it repair those permissions during the installation. Now, it is common practice to run Repair Permissions on the entire system after a new installation. This is also a big waste of time and a cause of trouble for many people who don't practice such strict computer hygiene.

I hope all of these issues are addressed in the next version.
post #15 of 31
Quote:
Originally posted by artooro
Yeah, your right for the most part. But simply removing an application bundle doesn't remove the preferences and any other files in the Library.

Actually, most of the time your DON'T want to uninstall the preferences. That way, re-installing the app doesn't lose all your settings (or upgrading by uninstalling/installing). An option would be nice though...
post #16 of 31
Quote:
Originally posted by Tuttle
"I personally can't wait for 10.4. It sounds like a developer's dream release."

Apple is having major developer support problems right now. Xcode being the major problem, but not the only. Unless something dramatic changes soon I don't see any reason why 10.4 will be any better than what we have today.



You're kidding, right?
My brain is hung like a HORSE!
Reply
My brain is hung like a HORSE!
Reply
post #17 of 31
Quote:
Apple is having major developer support problems right now. Xcode being the major problem, but not the only. Unless something dramatic changes soon I don't see any reason why 10.4 will be any better than what we have today.

Tuttle I'm sorry. I had no idea you were blind. If you need help, you know descriptions of Tiger I'd be glad to help.
He's a mod so he has a few extra vBulletin privileges. That doesn't mean he should stop posting or should start acting like Digital Jesus.
- SolipsismX
Reply
He's a mod so he has a few extra vBulletin privileges. That doesn't mean he should stop posting or should start acting like Digital Jesus.
- SolipsismX
Reply
post #18 of 31
Quote:
Originally posted by Kickaha


You're kidding, right?

No, I'm not kidding at all.

Apple has major, major developer software/sdk issues. Just go take a peak at the Xcode developer list to see for yourself. They've got serious QA problems going on with updates shipping outdated versions of SDKs/tools clobbering newer versions. Either they are understaffed or there are some fundamental management problems going on with the Apple developer support/tools people.

Yes, Tiger will have a bunch cool new tech. But it is wishful thinking that the current problems will all magically go away by the time Tiger is released.
post #19 of 31
Look at the trend, and it's only getting better.

Documentation: sucked - now, not too shabby in many areas.

Tools: Xcode 1.1 - ow... 1.5 - much improved

SDKs: QA *is* getting better

Yeah, they've had problems. They're fixing them. On *TOP* of the kick-ass new APIs.

Give 'em a break. They're improving, and rather well.
My brain is hung like a HORSE!
Reply
My brain is hung like a HORSE!
Reply
post #20 of 31
Quote:
Originally posted by macFanDave
That's good news because there are a few things that are absolutely wrong about installing software in OS X right now.

1) Lately, I've been bothered by a dialog that says something like, "Can I run a short program to see whether this program can be installed? (yes/no)" When would you ever say "no?" That checking program ought to run automatically and bother the user only if it fails, i.e., there is no user interaction if all is well.

Because an evil package author could easily put malicious code in that checking program.

Think about it: Thanks to Internet-enabled disk images, you could be browsing a Web page, which could stealthily redirect you to a .dmg file (maybe in a window behind the current one to make it even more sneaky). If it was small, this .dmg file could download in seconds, and then if it was Internet-enabled and you had "automatically open safe files" turned on, it would automatically launch the .pkg installer on it. Under the current system, it would stop at that dialog box, thus alerting you to its presence and giving you a chance to stop it. If it just ran the checker, that would be an exceedingly easy way for a web page to run rm -rf ~ or install a virus/trojan or do anything they wanted, really, as long as it could be done by the currently logged-in user. At least the current system requires some user interaction.
Proud member of AppleInsider since before the World Wide Web existed.
Reply
Proud member of AppleInsider since before the World Wide Web existed.
Reply
post #21 of 31
Quote:
Originally posted by Tuttle
No, I'm not kidding at all.

Apple has major, major developer software/sdk issues. Just go take a peak at the Xcode developer list to see for yourself. They've got serious QA problems going on with updates shipping outdated versions of SDKs/tools clobbering newer versions. Either they are understaffed or there are some fundamental management problems going on with the Apple developer support/tools people.

Yes, Tiger will have a bunch cool new tech. But it is wishful thinking that the current problems will all magically go away by the time Tiger is released.


LOL ...you bring up some good points. That's why I smiled when I read about Installer 2.0 fixing some nasty issues with overwriting newer files. I have to agree with Kickaha though. Xcode 1.5 seems to be integrating much easier than some of those earlier versions. We have to remember at times that the Xcode mailing list is filled with programmers of varying experience and judging from the Core Audio list I'd bet that the same issue keeps cropping up. Mailing lists need "stickies"
He's a mod so he has a few extra vBulletin privileges. That doesn't mean he should stop posting or should start acting like Digital Jesus.
- SolipsismX
Reply
He's a mod so he has a few extra vBulletin privileges. That doesn't mean he should stop posting or should start acting like Digital Jesus.
- SolipsismX
Reply
post #22 of 31
Actually the XCode 1.5 header issue has only come up once on the CoreAudio list. Kinda sucks for the original poster, but everyone else learned to do a custom install and uncheck the install headers option.

Does it suck? Yes. Is it some grevious error? No.

I'm looking forward to the new imaging APIs in Tiger. I also hope they add some sample code to help shorten the learning curve.
post #23 of 31
Quote:
Originally posted by CharlesS
Because an evil package author could easily put malicious code in that checking program.

...If it just ran the checker, that would be an exceedingly easy way for a web page to run rm -rf ~ or install a virus/trojan or do anything they wanted,...

Well, I'm very glad and very scared that there are people who think like you out there.

That sounds like a long shot scenario to justify an extra step (and level of complexity) to the standard installation process where simplicity is a key factor. Every installer I've ever seen makes you choose a disk to install the app on. This is a chance to stop a rogue program from installing itself.

I think Apple could make an installer that is both secure and requires minimal user interaction.
post #24 of 31
Not possible.

The script runs as the very first stage - by the time you get to 'choose a disk', it's way too late for malicious scripts to be stopped.

You get security, or user interaction. Pick one. I'll take the latter, thanks, I *like* knowing when an installer package is going to run a script. Lets me back out, and manually look at the script if I want to before moving forward. Essentially, it's saying "This package has a script. I have no idea what's in it, and you're going to have to tell me it's okay before I run it, since it could do anything it wants. If you trust the source, click OK. If not, don't."
My brain is hung like a HORSE!
Reply
My brain is hung like a HORSE!
Reply
post #25 of 31
Quote:
Originally posted by macFanDave
Well, I'm very glad and very scared that there are people who think like you out there.

That sounds like a long shot scenario to justify an extra step (and level of complexity) to the standard installation process where simplicity is a key factor. Every installer I've ever seen makes you choose a disk to install the app on. This is a chance to stop a rogue program from installing itself.

I think Apple could make an installer that is both secure and requires minimal user interaction.

Were you around for the major security hole a few months ago? The one that allowed any web page to arbitrarily launch code on your machine through either the Help Viewer or a fantasy protocol attack? The one that was a very big deal and caused panic all over the Mac world until it was fixed?

The situation with installer scripts would be worse. The reason is that they would be much easier for evil people to implement. The fantasy protocol exploit and others required the user to click on (or get redirected to) two links, with a delay in between. Exploiting the installer would only require one link. Plus, the danger from install scripts was known long before the other exploits. If Apple were to remove that dialog, I would frankly not be surprised at all if a trojan showed up very quickly utilizing it. It would be dead simple to create.
Proud member of AppleInsider since before the World Wide Web existed.
Reply
Proud member of AppleInsider since before the World Wide Web existed.
Reply
post #26 of 31
CharlesS and Kickaha:

All right, all right, you've convinced me: there needs to be user response at that first stage of an installation.

However, I feel that the wording of the dialog should be improved. The current message is relatively innocuous and it is possible that an inexperienced user who isn't paying attention to accept it without thinking about it (even if it comes from an unknown source). Remember, the clever hackers are constantly finding ways to trick people to accepting their malware.

Perhaps it should read something like this, "You are about to install/upgrade <name of app>. If this is what you want, click on 'Continue'. If this is not what you want or the name of the application is not what you expect, click 'Quit'" and the default button ought to be "Quit." The safest action should always be the default, right? So instead of sounding like a bureaucratic hassle, the note would be a security reminder.
post #27 of 31
I'd make it more explicit, because the user is going to go "Well DUH I want to install something you moron, I just opened it didn't I?" and just get used to clicking through it.

"The installer package "Insert Package Info Here" wishes to run a script before the installation proceeds. This script will be allowed to do anything it wishes, by default. If you trust the source of this installer, click Continue. If you do not, or have questions, please click Stop and contact the developer."

A 'More Info' button could display the script for those who are savvy to read it and determine for themselves if the script is safe.
My brain is hung like a HORSE!
Reply
My brain is hung like a HORSE!
Reply
post #28 of 31
Quote:
Originally posted by macFanDave
Perhaps it should read something like this, "You are about to install/upgrade <name of app>. If this is what you want, click on 'Continue'. If this is not what you want or the name of the application is not what you expect, click 'Quit'" and the default button ought to be "Quit."

What if the name of the application is what they expect? What's to stop a malware writer from calling his installer package "Safari.pkg"?

Myself, I wish that internet-enabled .dmg files wouldn't automatically launch installers at all. I mean, come on, how hard is it for me to just go double-click the thing myself? Not very hard, and it makes it a lot harder to compromise users' machines. But at least having some warning is better than none at all...
Proud member of AppleInsider since before the World Wide Web existed.
Reply
Proud member of AppleInsider since before the World Wide Web existed.
Reply
post #29 of 31
Quote:
Originally posted by CharlesS
What if the name of the application is what they expect? What's to stop a malware writer from calling his installer package "Safari.pkg"?

Myself, I wish that internet-enabled .dmg files wouldn't automatically launch installers at all. I mean, come on, how hard is it for me to just go double-click the thing myself? Not very hard, and it makes it a lot harder to compromise users' machines. But at least having some warning is better than none at all...

Yeah, but if you download a file named "Safari.pkg" off of LimeWire, you can't expect anything less IMHO..

I personally hate all the dialog boxes and security warnings. Look at how bad it is in (the not so secure) Windows..
post #30 of 31
Quote:
Originally posted by Sopphode
Yeah, but if you download a file named "Safari.pkg" off of LimeWire, you can't expect anything less IMHO..

What if you're just browsing some random web site, and the site includes a JavaScript redirect that downloads the .dmg file in the background without your noticing? And then, the .dmg automatically opens the pkg installer? With no warning, you are screwed no matter what. With the warning, those who know what they're doing will know that they didn't download this package intentionally and will not allow it to run, but newbies might see a package named "Safari.pkg", think "Oh, that's Safari, I was using it. This must be an auto-update" and allow it to run. All in all a non-ideal situation. But at least it's better than having the script run without even asking...
Proud member of AppleInsider since before the World Wide Web existed.
Reply
Proud member of AppleInsider since before the World Wide Web existed.
Reply
post #31 of 31
Has there been pressure from devs to Apple to backport the updated Tiger Packagemaker to Jaguar? That would be useful, but perhaps not a marketing hype move like iChat AV's earlyier preview.

Tiger is still a long ways away, and I've heard some devs are going to Loki in the meantime for their installer...
New Posts  All Forums:Forum Nav:
  Return Home
  Back to Forum: Mac OS X
AppleInsider › Forums › Software › Mac OS X › Mac OS X Tiger to sport feature-rich Installer application