Bug 58352

Summary: Upgrade: System has X but no desktop -- Installing GNOME
Product: [Retired] Red Hat Linux Reporter: Pekka Savola <pekkas>
Component: anacondaAssignee: Jeremy Katz <katzj>
Status: CLOSED RAWHIDE QA Contact: Brock Organ <borgan>
Severity: high Docs Contact:
Priority: medium    
Version: 7.2   
Target Milestone: ---   
Target Release: ---   
Hardware: i386   
OS: Linux   
Whiteboard:
Fixed In Version: Doc Type: Bug Fix
Doc Text:
Story Points: ---
Clone Of: Environment:
Last Closed: 2006-02-21 18:48:20 UTC Type: ---
Regression: --- Mount Type: ---
Documentation: --- CRM:
Verified Versions: Category: ---
oVirt Team: --- RHEL 7.3 requirements from Atomic Host:
Cloudforms Team: --- Target Upstream Version:
Embargoed:

Description Pekka Savola 2002-01-14 21:23:39 UTC
In RHL72, a new feature was added to Upgrade option.

If one has 'XFree86' package installed, and not either gmc, nautilus or kdebase,
anaconda will automatically install gnome with a message:

Upgrade: System has X but no desktop -- Installing GNOME

This adds a *huge* load of gnome cruft to the system.

There are perfectly valid reasons for running with XFree86 but without a 'desktop', e.g.:

 1) have XFree86, XFree86-libs, XFree86-xfs, Mesa, Xaw3d installed; with these, you 
can install & run most simple X programs over X11 forwarding.  These are sufficiently minimal
so they can be installed on some servers too.  The above list could be shortened a bit too.

 2) above plus some very simple window manager like fvwm2 or twm -- no stuff like gmc 
or nautilus required!

==> Upgrades MUST NOT _silently_ add (about all) Gnome packages with these conditions.
Prompting the user would be ok I guess.

Comment 1 Jeremy Katz 2002-01-15 17:29:50 UTC
This is because otherwise, upgrading from a release which didn't use GNOME to
the current release can leave you without any desktop system.  Matt?

Comment 2 Matt Wilson 2002-03-12 22:06:22 UTC
diff -u -r1.63.10.2 upgrade.py
--- upgrade.py	27 Feb 2002 00:16:13 -0000	1.63.10.2
+++ upgrade.py	12 Mar 2002 22:05:36 -0000
@@ -20,6 +20,7 @@
 import rpm
 import sys
 import os.path
+import string
 from flags import flags
 from fsset import *
 from partitioning import *
@@ -420,9 +421,23 @@
             except rpm.error:
                 continue
 
+    currentVersion = 0.0
+    try:
+        recs = db.findbyprovides('redhat-release')
+    except rpm.error:
+        recs = None
+    for rec in recs:
+        try:
+            vers = string.atof(db[rec][rpm.RPMTAG_VERSION])
+        except ValueError:
+            vers = 0.0
+        if vers > currentVersion:
+            currentVersion = vers
+
     # if we have X but not gmc, we need to turn on GNOME.  We only
     # want to turn on packages we don't have installed already, though.
-    if hasX and not hasFileManager:
+    # Only do this mess if user is upgrading from version older than 6.0.
+    if hasX and not hasFileManager and currentVersion < 6.0:
         text = "Upgrade: System has X but no desktop -- Installing GNOME"
         id.upgradeDeps ="%s%s\n" % (id.upgradeDeps, text)
 	log(text)


Comment 3 Red Hat Bugzilla 2006-02-21 18:48:20 UTC
Changed to 'CLOSED' state since 'RESOLVED' has been deprecated.