Bug 911337 - Forbid the update of bundles from eclipse-platform to maintain "Fedora" experience
Summary: Forbid the update of bundles from eclipse-platform to maintain "Fedora" exper...
Keywords:
Status: CLOSED UPSTREAM
Alias: None
Product: Fedora
Classification: Fedora
Component: eclipse
Version: 18
Hardware: Unspecified
OS: Unspecified
unspecified
low
Target Milestone: ---
Assignee: Krzysztof Daniel
QA Contact: Fedora Extras Quality Assurance
URL:
Whiteboard:
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2013-02-14 18:59 UTC by Germano Massullo
Modified: 2014-01-13 00:27 UTC (History)
9 users (show)

Fixed In Version:
Doc Type: Bug Fix
Doc Text:
Clone Of:
Environment:
Last Closed: 2013-06-18 12:54:01 UTC
Type: Bug
Embargoed:


Attachments (Terms of Use)
screenshot (104.42 KB, image/png)
2013-02-14 18:59 UTC, Germano Massullo
no flags Details
/home/user/.eclipse/org.eclipse.platform_4.2.0_793567567/configuration/org.eclipse.equinox.simpleconfigurator/bundles.info (84.02 KB, application/octet-stream)
2013-03-25 23:20 UTC, Germano Massullo
no flags Details
/usr/lib64/eclipse/configuration/org.eclipse.equinox.simpleconfigurator/bundles.info (32.05 KB, application/octet-stream)
2013-03-25 23:23 UTC, Germano Massullo
no flags Details
(Before WDT plugin installation) /usr/lib64/eclipse/configuration/org.eclipse.equinox.simpleconfigurator/bundles.info (21.78 KB, application/octet-stream)
2013-03-29 16:23 UTC, Germano Massullo
no flags Details
(Before WDT plugin installation) /home/user/.eclipse/org.eclipse.platform_4.2.0_793567567/configuration/org.eclipse.equinox.simpleconfigurator/bundles.info (213.77 KB, application/octet-stream)
2013-03-29 16:23 UTC, Germano Massullo
no flags Details
(After WDT plugin installation) /usr/lib64/eclipse/configuration/org.eclipse.equinox.simpleconfigurator/bundles.info (21.78 KB, application/octet-stream)
2013-03-29 16:24 UTC, Germano Massullo
no flags Details
(After WDT plugin installation) /home/user/.eclipse/org.eclipse.platform_4.2.0_793567567/configuration/org.eclipse.equinox.simpleconfigurator/bundles.info (259.63 KB, application/octet-stream)
2013-03-29 16:25 UTC, Germano Massullo
no flags Details


Links
System ID Private Priority Status Summary Last Updated
Eclipse Project 378329 0 None None None Never

Description Germano Massullo 2013-02-14 18:59:22 UTC
Created attachment 697338 [details]
screenshot

Description of problem:
In Eclipse user interface, there are many menu entries that have no icon, then Eclipse replace them with a red square.

Version-Release number of selected component (if applicable):
***From Eclipse->About***
Version: 4.2.1
Build id: @build@

***From yum***
Nome         : eclipse-platform
Arch         : x86_64
Epoch        : 1
Versione     : 4.2.2
Rilascio     : 0.1.git20121217.fc18
Dimensione   : 48 M
Repo         : installed

Additional info:
Isn't wrong the version in Eclipse->About? 4.2.1 VS 4.2.2 in yum...

Comment 1 Krzysztof Daniel 2013-02-15 07:22:07 UTC
Hey,
regarding versions - it's a snapshot made from a 4.2.2 development branch, although not all versions were updated yet. It will be done before final Eclipse 4.2.2 is out.

Regarding the red icons - there is one bug associated with it - when you change the number of plugins, Eclipse changes the caching, but the part that loads icons from the cache is unaware of that.

Could you describe the steps that led to the problem?

Comment 2 Germano Massullo 2013-02-18 14:52:30 UTC
I installed from yum eclipse-platform and eclipse-cdt, together with their package dependencies

Comment 3 Canyon Bliss 2013-03-18 21:42:14 UTC
I'm experiencing this as well. I tried 'eclipse -clean', which did not resolve this issue.
In addition, if you start with a new workspace, most of the Perspectives are missing (java, CDT, Fedora Packaging, etc).

Perspectives available after updating to eclipse-platform 4.2.2-4.fc18
CVS Repository Exploring
Debug
Resource
Team Synchronizing

Downgrading got me back to a working state:
yum downgrade eclipse-platform eclipse-pde eclipse-jdt eclipse-swt eclipse-equinox-osgi

Comment 4 Canyon Bliss 2013-03-21 16:56:44 UTC
I think this may have to do with presto/deltaRPM .

I updated eclipse to 4.2.2-5 from updates-testing repository and did not observe the problem above.
I updated eclipse from 4.2.1-21 to 4.2.2-5 (now in updates) and I observed the same problem as above.
I reinstalled eclipse 4.2.2-5 and did not observed the problem above.

The problem only occurs (for me at least) when updating using a drpm .

Comment 5 Krzysztof Daniel 2013-03-22 16:10:34 UTC
Hey Canyon,

Thanks for all the info.

There is a way to debug it - you need to find two bundles.info files. One is in the Eclipse installation (somewhere in /usr/lib64/eclipse/configuration) referred as master one, and one is deep in your ~/.eclipse folder. 

If you go to help->about->details->configuration, properties
osgi.sharedConfiguration.area and osgi.configuration.area will tell you exactly where you should look for those files.

If you're feeling adventurous and would like to help with the investigation - find an entry that is present in the master bundles.info, but is not present in the user bundles.info, when red squares appear.

You may as well attach those files to this bug entry, and I will look into this.

Comment 6 Canyon Bliss 2013-03-25 18:55:17 UTC
I wish I could help. I tried to go back to the failed state but it seems fine now. I'm guessing the reinstall cleaned out whatever the problem was.

Comment 7 Krzysztof Daniel 2013-03-25 19:26:12 UTC
Ok, then I'm closing this bug.

Comment 8 Germano Massullo 2013-03-25 23:20:55 UTC
Created attachment 716277 [details]
/home/user/.eclipse/org.eclipse.platform_4.2.0_793567567/configuration/org.eclipse.equinox.simpleconfigurator/bundles.info

Comment 9 Germano Massullo 2013-03-25 23:23:37 UTC
Created attachment 716278 [details]
/usr/lib64/eclipse/configuration/org.eclipse.equinox.simpleconfigurator/bundles.info

Comment 10 Germano Massullo 2013-03-25 23:23:59 UTC
I attached the files you required

Comment 11 Krzysztof Daniel 2013-03-26 09:27:03 UTC
Hey Germano,

Thanks for those files.

It looks like you've removed the lock that prevents Eclipse from running in an administrative mode (as root). This locked your "master" configuration at a certain point of time, and no further updates will work.

You can only reinstall your core Eclipse packages now. Ensure that after you uninstall Eclipse, the entire Eclipse directory (/usr/lib64/eclipse) is empty or not existing.

Eclipse should be never run in an administrative mode. Avoid it in the future.

If you have to install non-standard things into master installation (you've advanced setup where you have many users using the same installation) please prepare binary rpms.

Comment 12 Germano Massullo 2013-03-26 10:38:54 UTC
(In reply to comment #11)
> It looks like you've removed the lock that prevents Eclipse from running in
> an administrative mode (as root). This locked your "master" configuration at
> a certain point of time, and no further updates will work.
> 
> You can only reinstall your core Eclipse packages now. Ensure that after you
> uninstall Eclipse, the entire Eclipse directory (/usr/lib64/eclipse) is
> empty or not existing.
> 
> Eclipse should be never run in an administrative mode. Avoid it in the
> future.
> 
> If you have to install non-standard things into master installation (you've
> advanced setup where you have many users using the same installation) please
> prepare binary rpms.

I have never heard before about that lock. I usually use plugins from:
- Fedora repositories RPMs;
- upstream Eclipse's repositories in Help->Install new software-> Juno - http://download.eclipse.org/releases/juno
I needed the second option too because the Fedora's RPM of Web Development Tools is not complete as the upstream (Akurtatov told me).
I don't remember any strange thing I could have done to have the administrative mode triggered on. Do you have any ideas about?

Comment 13 Krzysztof Daniel 2013-03-26 11:29:52 UTC
Germano,

there is another possibility - you could have installed upstream Juno Platform on the top of the Fedora packaged one. This could have the same effect :-(.

Comment 14 Krzysztof Daniel 2013-03-26 11:30:59 UTC
Anyway, running Fedora Eclipse as an administrator is a bad idea. I have introduced a lock to prevent that, but apparently it can be bypassed. Will think about that.

Comment 15 Germano Massullo 2013-03-26 21:42:14 UTC
(In reply to comment #13)
> Germano,
> 
> there is another possibility - you could have installed upstream Juno
> Platform on the top of the Fedora packaged one. This could have the same
> effect :-(.

Platform is a very general concept. Can you be more specific? Do you mean plugins?

Comment 16 Krzysztof Daniel 2013-03-27 07:32:46 UTC
Eclipse consists of plugins and features. Plugins contains actual code, and features group plugins into sets providing certain functionality. You can go to /usr/lib64/eclipse/features and open any feature.xml to see how this looks like on a technical level.

Eclipse update mechanism allows you to update any plugin at any time. So, if you update any of those features listed in /usr/lib64/eclipse/features, you get Eclipse from eclipse.org, which is not able to handle other Eclipse packages properly. 

It also breaks updates.

Comment 17 Germano Massullo 2013-03-29 16:20:54 UTC
(In reply to comment #11) 
> You can only reinstall your core Eclipse packages now. Ensure that after you
> uninstall Eclipse, the entire Eclipse directory (/usr/lib64/eclipse) is
> empty or not existing.

I:
1) removed all Eclipse packages except for eclipse-equinox-osgi.x86_64 eclipse-swt because they were taking away other softwares like freemind;
2) erased /usr/lib64/eclipse/ ;
3) reinstalled Eclipse from Fedora repos;
4) reinstalled eclipse-equinox-osgi.x86_64 eclipse-swt because I erased their files when I deleted /usr/lib64/eclipse/

I am going to attach four bundles.info files:
- first two are immediately after Eclipse reinstallation from yum
- last two are after I installed WebDevelopmentTools from upstream Eclipse's repositories in Help->Install new software-> Juno - http://download.eclipse.org/releases/juno   I need that because Web Development Tools in Fedora repos are incomplete/non existent.


(In reply to comment #16)
> Eclipse update mechanism allows you to update any plugin at any time. So, if
> you update any of those features listed in /usr/lib64/eclipse/features, you
> get Eclipse from eclipse.org, which is not able to handle other Eclipse
> packages properly. 
> 
> It also breaks updates.

So, in a few words:
installing plugins from upstream Eclipse's repositories in Help->Install new software-> Juno - http://download.eclipse.org/releases/juno
does it break Fedora Eclipse?

Comment 18 Germano Massullo 2013-03-29 16:23:00 UTC
Created attachment 718129 [details]
(Before WDT plugin installation) /usr/lib64/eclipse/configuration/org.eclipse.equinox.simpleconfigurator/bundles.info

Comment 19 Germano Massullo 2013-03-29 16:23:43 UTC
Created attachment 718130 [details]
(Before WDT plugin installation) /home/user/.eclipse/org.eclipse.platform_4.2.0_793567567/configuration/org.eclipse.equinox.simpleconfigurator/bundles.info

Comment 20 Germano Massullo 2013-03-29 16:24:41 UTC
Created attachment 718131 [details]
(After WDT plugin installation) /usr/lib64/eclipse/configuration/org.eclipse.equinox.simpleconfigurator/bundles.info

Comment 21 Germano Massullo 2013-03-29 16:25:13 UTC
Created attachment 718132 [details]
(After WDT plugin installation) /home/user/.eclipse/org.eclipse.platform_4.2.0_793567567/configuration/org.eclipse.equinox.simpleconfigurator/bundles.info

Comment 22 Germano Massullo 2013-03-30 07:28:26 UTC
An update (sorry for the little offtopic):
I found out that Fedora packages for web development tools have been improved a lot last year. Then I completely erased again Eclipse and installed only Fedora RPM packages for Eclipse plugins.
Then you can not care about last 4 attachment I committed. I am sorry for the mess.

Comment 23 Krzysztof Daniel 2013-06-18 12:54:01 UTC
This is all about bridging P2 and RPM. The work will happen upstream.
http://wiki.eclipse.org/Equinox/p2/Plan/3rd_party_installers


Note You need to log in before you can comment on or make changes to this bug.