|RE: [p2-dev] The future of Eclipse upgrades|
Yes, this is a great point. I think you do need to always treat Windows Vista/7 installs as shared installs, at least if you install them into Program Files, which you should to take advantage of the security mechanisms there. That would mean running Eclipse as Admin when you want to install, or introduce a new exe that has the Administrator privs set in the exe’s manifest. You may be able to elevate your privs at run time but I’m not sure what the API would be for that.
And you are also correct that Window’s users won’t perceive what is happening. This is a general problem with the shared install scenario. It’s hard to know where the plug-ins you are installing end up. I’ve seen users accidentally delete them when cleaning up their file system. I’ll have to check if there’s anything in bugzilla about that.
From: p2-dev-bounces@xxxxxxxxxxx [mailto:p2-dev-bounces@xxxxxxxxxxx] On Behalf Of Ian Bull
I had the pleasure of running Eclipse on Windows 7 and the Eclipse upgrade story concerns me a bit. On Windows 7 (and maybe Vista, I'm not sure), I was able to unzip an Eclipse install the Program Files directory and launch. While this directory was writable by the unzip utility, it's not writable by Eclipse, and we are put into a shared install mode.
For the most part this works fine, however, we won't be able to upgrade (using p2) when SR1 comes out. Eclipse has been designed so that you can install new plugins in a shared install, but you cannot upgrade the base (without becoming a super user). Technically this is no different from *nix environments, however, I would argue that there is a perceived difference.
1. You never had to become a Super User before (Window XP)
2. And more importantly, you could 'install' Eclipse without becoming a super user, so why do I need to become an SU to upgrade?
I'm not even sure how to become a super user on Windows.
There are a number of bugs related to Eclipse and Windows 7, but most of these appear to be related to installing new plugins. The bugs don't concern me (too much), but the more general decision not to allow upgrades to the base seems like it will have serious consequences. This obviously isn't just an Eclipse problem, but an RCP problem too.
What do others think? I'm not a regular Windows user, so maybe this isn't really a problem. Would windows users expect to launch Eclipse in SU mode to upgrade it? Is there a way to put a p2 agent in SU mode (or at least bring up one of those helpful warnings when we upgrade "The Eclipse process is trying to write to the Program Files directory. Are you really really really sure you want to allow this?").
Is this something that we should be thinking about for our Indigo plan?