Closed Bug 633989 Opened 9 years ago Closed 3 years ago

Can not update app to new version from "Check for Updates" dialog, manual update fails if not launched "as admin"

Categories

(Toolkit :: Application Update, defect)

1.9.1 Branch
x86_64
Windows 7
defect
Not set

Tracking

()

RESOLVED INCOMPLETE

People

(Reporter: peter.c.slacik, Unassigned)

References

(Depends on 1 open bug)

Details

User-Agent:       Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US; rv:1.9.1.16) Gecko/20101123 SeaMonkey/2.0.11
Build Identifier: Mozilla/5.0 (Windows; U; Windows NT 6.1; en-US; rv:1.9.1.16) Gecko/20101123 SeaMonkey/2.0.11

I'm working logged in as a plain user without admin rights. SeaMonkey ver. 2.0.9 + 2.0.10's "Check for Updates" dialog showed a sort of "There is an update available, but you have insufficient rights for updating the app." I believe previous versions were doing it anyway and asking for sufficient rights through UAC dialog. (If not, they really should.)

A bad solution would be to run the application as an admin (although the app is not set up for such user at all), just to do the update somehow in an automated manner...

My solution was to find and manually download the executable for update and launch it. Twice (in December and February) I've omitted to launch 2.0.11 "as an admin" and after two installations (apparently successful, without any error notice) I've wondered that I'm still running 2.0.10 ????

Finally when I've started the installer "as an admin", I've got the expected 2.0.11. At end of the installation, the installer asks (with a checkbox), whether to launch the application after having finished. But it will be launched under the admin user's account! Instead, it should note which user initiated the installation and run under this user's account (usually the logged-in user, but not necessarily?)

Reproducible: Always

Steps to Reproduce:
1. Log in as a plain user
2. Run SeaMonkey 2.0.10, press "Check for Updates"
3. Although there is a newer version, SeaMonkey refuses to download and run the installer
4. Download "SeaMonkey Setup 2.0.11.exe" and launch it without "Run as admin"
5. The installer would run "as usual" without any complaints during install and optionally start afterwards.
6. About:SeaMonkey states you are still running the old version 2.0.10.
7. At end of the installation, installer asks (with a checkbox), whether to launch the app. Afterwards it will be launched under the admin's account!




This bug report is somehow identical to Bug 621279 (concerning FireFox 4.0b7), feel free to mark any duplicates.
Version: unspecified → SeaMonkey 2.0 Branch
Setting dependency for the time being. Probably a DUP.
Depends on: 621279
Assignee: installer → nobody
Component: Installer → Application Update
No longer depends on: 621279
Product: SeaMonkey → Toolkit
QA Contact: xpi-packages → application.update
Version: SeaMonkey 2.0 Branch → Trunk
Version: Trunk → 1.9.1 Branch
(In reply to comment #0)
> I'm working logged in as a plain user without admin rights. SeaMonkey ver.
> 2.0.9 + 2.0.10's "Check for Updates" dialog showed a sort of "There is an
> update available, but you have insufficient rights for updating the app."
> [...]
> My solution was to find and manually download the executable for update and
> launch it. Twice (in December and February) I've omitted to launch 2.0.11 "as
> an admin" and after two installations (apparently successful, without any error
> notice) I've wondered that I'm still running 2.0.10 ????
> 
Upon installing 2.0.12 (while forgetting again to launch the installer as an admin) I've noticed, that it unexpectedly tries to install into "C:\Users\(myusername)\AppData\Local\SeaMonkey\" - I've also found the "missed" 2.0.11 there, instead of in "C:\Program Files (x86)\SeaMonkey\" (where all previously installed versions resided).

Please please fix the installation logic...
The installer defaulting to the user's profile is due to many users not having admin privileges and not knowing where to install.
http://blog.mozilla.com/metrics/2009/07/30/an-improved-experience-for-2000000-non-firefox-users/

Is that the cause of this bug?
Possibly. But this is not the way the installers behave now. Imagine machines, where no plain user belongs to Administrators group and none such administering a machine gets ever (OK, nearly never) logged in to any admin account...

I can just agree with following comments (I've just picked some from a bug report, mentioned on the improved-experience page; a lot to read...):
https://bugzilla.mozilla.org/show_bug.cgi?id=404541#c0 https://bugzilla.mozilla.org/show_bug.cgi?id=404541#c22 https://bugzilla.mozilla.org/show_bug.cgi?id=404541#c28 https://bugzilla.mozilla.org/show_bug.cgi?id=404541#c36
The installer part should be filed as a SeaMonkey installer bug... SeaMonkey can choose not to use the common macro that sets the installation directory to a directory in the user's profile directory. The Firefox UX team prefers this behavior so inexperienced users are able to install. If you think Firefox shouldn't have this behavior as well please file a Firefox installer bug and the UX team can re-evaluate the decision.
The last comment: I believe that if a version of application is already installed somewhere, the installer should first try to update it there, where it already resides.
It does but if the installer is unable to because it doesn't have privileges to it can't so it then installs into the user's profile directory. I have been considering ways to better deal with this situation for quite some time but it isn't a priority over other work at the moment.
While installing SeaMonkey 2.2->2.3 update directly from the application, the update ask for elevated rights using UAC and the installation tun just fine.

(The behavior apparently changed somewhere past the 2.0.14 line, but I've not tried it when installing 2.2 a few weeks ago.)

I guess this can be tagged as fixed. Thanks to all.
Spoken too soon :-(

V 2.3 was displaying "Help / Apply Downloaded Update Now..." for some time, but it effectively did nothing relevant (or maybe always updated my "private copy" somewhere in ...\AppData\Local\Mozilla\SeaMonkey\), I was still starting the same 2.3 from \ProgramFiles(x6)\...

After manually upgrading (launch update executable as admin) to 2.3.2, I'm starting 2.3.1 (???) and still can see "Help / Apply Downloaded Update Now..."

Lets see after the 2.3.3 update.
I've started 2.3.1 as an admin and let it update itself to 2.3.3. Afterwards started 2.3.3 as a plain user - it still displays "Help / Apply Downloaded Update Now...", which opens "Software Update" dialog, containing "A security and stability update ... has been downloaded and is ready to be installed. Update: SeaMonkey 2.3".

So, this is another problem (how to get rid of the out-of-date 2.3 copy) in addition to this bug's original topic (installer not asking for rights elevation).
The "plain user account prohibits auto update" problem exists in the latest Firefox nightly too. 

User is tricked by giving him the "Apply Update" button which does nothing but restarting the browser. At least a hint "Run Firefox as Admin for Updating" would be helpful.
Status: UNCONFIRMED → NEW
Ever confirmed: true
Version: 1.9.1 Branch → Trunk
Correcting my comment #11:
The "plain user account prohibits auto update" problem exists in the latest Firefox nightly *ONLY*. 

In current Seamonkey plain users get a good message pointing them to the necessary rights elevation.
 
The "Apply Update" button failed here because previously downloaded update data was present in %LOCALAPPDATA%\Mozilla\Seamonkey\Seamonkey\updates. After deleting the xml files and the folder "0" manually the automatic update worked as expected.
Status: NEW → UNCONFIRMED
Ever confirmed: false
Version: Trunk → 1.9.1 Branch
Running as a normal user on 64bit Windows 7, I did not get any notification of available updates from Seamonkey 2.2 or 2.3 when 2.3 and 2.4 came out, despite having automatic updates enabled. There is no check for updates option in the help menu. If I hadn't looked at the Seamonkey home page by chance I would probably still be running Seamonkey 2.1. To me this seems to be a serious security problem.

(Incidentally, with 2.4 the help menu appears to have gained an "Apply Downloaded Update Now..." option. When I click on it I am told:
"A security and stability update for SeaMonkey has been downloaded and is ready to be installed.
Update: SeaMonkey 2.1 RC2   Details

The update will be installed the next time SeaMonkey starts. You can restart SeaMonkey now, or continue working and restart later.")
(In reply to Roger Lynn from comment #13)
> (Incidentally, with 2.4 the help menu appears to have gained an "Apply
> Downloaded Update Now..." option. [...] -> "An [...] update for SeaMonkey
> has been downloaded and is ready to be installed. Update: SeaMonkey 2.1 RC2"
> 
Thank you for letting me (indirectly) know that 2.4.1 is available to download.
My 2.3.3 was still suggesting me to "install the downloaded 2.3", and so does also the new 2.4.1 :-(
(In reply to Peter Slacik from comment #14)
> Thank you for letting me (indirectly) know that 2.4.1 is available to download.

For the benefit of those whose Seamonkey won't have told them, by chance I've just noticed that Seamonkey 2.5 was released about two weeks ago.
(In reply to Roger Lynn from comment #15)
> (In reply to Peter Slacik from comment #14)
> > Thank you for letting me (indirectly) know that 2.4.1 is available to download.
> 
> For the benefit of those whose Seamonkey won't have told them, by chance
> I've just noticed that Seamonkey 2.5 was released about two weeks ago.
With the default settings (e.g. the person hasn't specifically set app update to now tell them about any updates), users are notified when there is an update available even when they don't have write access to update the application.
(In reply to Roger Lynn from comment #15)
> (In reply to Peter Slacik from comment #14)
> > Thank you for letting me (indirectly) know that 2.4.1 is available to download.
> 
> For the benefit of those whose Seamonkey won't have told them, by chance
> I've just noticed that Seamonkey 2.5 was released about two weeks ago.
Again, thanks for letting know ;-)

(In reply to Robert Strong [:rstrong] (do not email) from comment #16)
> With the default settings (e.g. the person hasn't specifically set app
> update to now tell them about any updates), users are notified when there is
> an update available even when they don't have write access to update the
> application.
My settings are "Auto check for updates (o) daily" + "Auto download and install update", but I suspect the "Apply Downloaded Update Now..." entry in the "Help" menu being the culprit for not notifying me about any subsequent updates.

If it is of any value, I've just noticed the "Show Update History..." button in the "Prefs" dialog - "Advanced - SW Installation tree page. It logs 2.0.4, 2.0.5, 2.0.6, 2.0.7 + 2.0.8 updates as being successfully installed and 2.0.9 as having "Failed (unknown reason)". And yes, according to my ancient notes from back then, I had to install 2.0.10 and upwards manually - possibly each one released version, but they are all missing in the log.

If I could reset the already "Downloaded Update" which waits to be "Applied Now...", maybe the notifications would be functional again? Sure it can be done manually by discarding some file somewhere, but the mentioned dialog could also get some prominent button to "Skip this Downloaded Update"?
(In reply to Peter Slacik from comment #17)
> (In reply to Robert Strong [:rstrong] (do not email) from comment #16)
> > With the default settings (e.g. the person hasn't specifically set app
> > update to now tell them about any updates), users are notified when there is
> > an update available even when they don't have write access to update the
> > application.

I am only notified if I run Seamonkey as Administrator. I have "Automatically check for updates daily" selected.

> If it is of any value, I've just noticed the "Show Update History..." button
> in the "Prefs" dialog - "Advanced - SW Installation tree page. It logs
> 2.0.4, 2.0.5, 2.0.6, 2.0.7 + 2.0.8 updates as being successfully installed
> and 2.0.9 as having "Failed (unknown reason)". And yes, according to my
> ancient notes from back then, I had to install 2.0.10 and upwards manually -
> possibly each one released version, but they are all missing in the log.

This was a new computer in October 2010, so I probably initially installed 2.0.8. Since then I have upgraded to various versions of 2.1, 2.2, 2.3, 2.4 and 2.5. The only thing listed in my Update History is 2.0.9, with status: "The integrity of the update could not be verified".

Judging from the contents of my downloads folder I installed 2.1 RC 1 and 2 and 2.1.0 manually. Maybe that has something to do with the fact that the Downloaded Update which is Ready to Install is 2.1 RC 2.
(In reply to Peter Slacik from comment #17)
> If I could reset the already "Downloaded Update" which waits to be "Applied
> Now...", maybe the notifications would be functional again? Sure it can be
> done manually by discarding some file somewhere, but the mentioned dialog
> could also get some prominent button to "Skip this Downloaded Update"?
Finally got the idea, where to find out the responsible v2.3 files:
 Users\myself\AppData\Local\Mozilla\SeaMonkey\SeaMonkey\active-update.xml
and
 Users\PeterS\AppData\Local\Mozilla\SeaMonkey\SeaMonkey\updates\0\*

After renaming these, my SeaMonkey at least is willing to "Check for Updates...". (There is off course no one available, because I've already installed 2.12 from an admin session.)
I hope at least SeaMonkey will now notify me when 2.13 gets available!
Depends on: 715803
No longer depends on: 481815
Closing old bugs as incomplete. If this is still an issue please file a new bug.
Status: UNCONFIRMED → RESOLVED
Closed: 3 years ago
Resolution: --- → INCOMPLETE
You need to log in before you can comment on or make changes to this bug.