Some Eclipse Foundation services are deprecated, or will be soon. Please ensure you've read this important communication.

Bug 241191

Summary: [shared] bundle pool should use better directory on Windows
Product: [Eclipse Project] Equinox Reporter: Gunnar Wagenknecht <gunnar>
Component: LauncherAssignee: Project Inbox <equinox.launcher-inbox>
Status: CLOSED WONTFIX QA Contact:
Severity: enhancement    
Priority: P3 CC: henrik.lindberg, pascal.rapicault, pascal
Version: 3.4Keywords: helpwanted
Target Milestone: ---   
Hardware: PC   
OS: Windows Vista   
Whiteboard: stalebug

Description Gunnar Wagenknecht CLA 2008-07-17 02:34:51 EDT
(extracted from bug 235496)

Currently, System.getProperty("user.home") is used to created the shared bundle pool. However, this directory resolves to the user's home directory on Windows. On Vista this is usually "C:\Users\<username>\" which results into "C:\Users\<username>\.eclipse".

The problem in Vista is that this is now presented in Explorer as a default path for users. It's just not right seeing all the nice folders for music, pictures, downloads and documents in there and then a bunch of dot-folders (eg. .gimp, .eclipse, .rssowl, .rssowl2, etc.) which disturbs the user experience of this folder.

User specific application data on Windows has their own folder structure which is hidden from the folder mentioned above.

On Vista:
 C:\Users\<username>\AppData\Local

On earlier versions of Windows:
 C:\Documents and Settings\<username>\Local Settings\Application Data

On Vista there is the environment variable LOCALAPPDATA pointing to the right directory ("C:\Users\<username>\AppData\Local"). Equinox should use this as a base location for the shared bundle pool.

Details on the new structure in Vista can be found here:
http://technet2.microsoft.com/WindowsVista/en/library/fb3681b2-da39-4944-93ad-dd3b6e8ca4dc1033.mspx?mfr=true
Comment 1 Gunnar Wagenknecht CLA 2009-09-03 01:51:39 EDT
This is still relevant for 3.5. Especially with Windows 7 I think Equinox really should try to be a better citizen and honor the Windows directory structure.

Maybe a solution would be to support additional environment variables in config.ini?
Comment 2 Henrik Lindberg CLA 2009-09-03 07:26:27 EDT
The same argument can be made for Mac (even if there is no immediate problem with having an .eclipse in user.home there, apps typically keep there data elsewhere).
Comment 3 Pascal Rapicault CLA 2009-09-03 11:14:05 EDT
I think it is a good idea to behave better on each platform. Gunnar do you want to take a look at that? The logic is around org.eclipse.equinox.internal.p2.touchpoint.eclipse.Util#getAggregatedBundleRepository
Comment 4 Pascal Rapicault CLA 2013-02-04 20:53:01 EST
Moving to the launcher since it is the responsibility of the launcher to create this folder.
Comment 5 Lars Vogel CLA 2019-11-27 07:34:34 EST
This bug hasn't had any activity in quite some time. Maybe the problem got
resolved, was a duplicate of something else, or became less pressing for some
reason - or maybe it's still relevant but just hasn't been looked at yet.

If you have further information on the current state of the bug, please add it.
The information can be, for example, that the problem still occurs, that you
still want the feature, that more information is needed, or that the bug is
(for whatever reason) no longer relevant.

If the bug is still relevant, please remove the stalebug whiteboard tag.