Bug 10425 - missing dependency in drakxtools can lead to not working tools
Summary: missing dependency in drakxtools can lead to not working tools
Status: RESOLVED OLD
Alias: None
Product: Mageia
Classification: Unclassified
Component: RPM Packages (show other bugs)
Version: 3
Hardware: All Linux
Priority: Low minor
Target Milestone: ---
Assignee: Thierry Vignaud
QA Contact:
URL:
Whiteboard:
Keywords: Triaged
: 6362 (view as bug list)
Depends on:
Blocks:
 
Reported: 2013-06-04 12:08 CEST by Pablo Saratxaga
Modified: 2015-03-31 16:07 CEST (History)
2 users (show)

See Also:
Source RPM: drakxtools
CVE:
Status comment:


Attachments

Description Pablo Saratxaga 2013-06-04 12:08:14 CEST
the graphical drakx tools test if they are in a graphical session trough
a method (check_for_x_server) contained in "drakxtools-backend" rpm package, which in turn calls a method (xf86main::main::Xtest) contained in "libdrakx-kbd-mouse-x11"

if, for whatever reason, the version of libdrakx-kbd-mouse-x11 is no longer n sync with drakxtools-backend (for example, an aborted in the middle update); then the whole set of drakx tools will think they are in console mode as the above test will fail.
That is particularly important for rpmdrake, which doesn't has a text mode version.

The bug has already popped in the past: #6362
note it is not related to hostname; I can launch any other graphical program (eg: launching xeyes as root works; launching rpmdrake doesn't)

Steps to Reproduce:
1. install or upgrade to cauldron (mga4)
2. install force libdrakx-kbd-mouse-x11 from mga3 (to simulate an update that went wrong): rpm -Uv libdrakx-kbd-mouse-x11-*mga3*rpm
3. try to run rpmdrake

Googling a bit shows that this problem has already happened to some people.

a possible solution would be to add "Requires: libdrakx-kbd-mouse-x11 >= someversion" to "drakxtools-backend" rpm package (but what triggers that incompatibility? which version to set?)

or maybe do a more lax test to see if the graphical display is available shouldn't testing on $DISPLAY be enough? or maybe try to display a (possibly invisible) small gtk window?

For configuration of Xserver a more complex test may make sense; but for standard tools, and in particular for rpmdrake, a simpler test will allow people struck with an incomplete update to resume it; without being completly lost with a non working rpmdrake, just because it thinks there is no X.

maybe adding "libdrakx-kbd-mouse-x11" as a (possibly unversioned) requires to "drakxtools-backend" would make them more closelty tied, and have better chances to be installed/updated together?



Reproducible: 

Steps to Reproduce:
Comment 1 Pablo Saratxaga 2013-06-04 12:12:15 CEST
related bug:
https://bugs.mageia.org/show_bug.cgi?id=6362
(it was wrongly diagnostiqued; what is there described is not the hostname problem, but the same as I describe here)
Comment 2 Pablo Saratxaga 2013-06-04 12:14:55 CEST
*** Bug 6362 has been marked as a duplicate of this bug. ***

CC: (none) => tac

Pablo Saratxaga 2013-06-04 12:16:17 CEST

CC: (none) => pablo

Manuel Hiebel 2013-06-08 16:46:24 CEST

Keywords: (none) => Triaged
Assignee: bugsquad => thierry.vignaud

Comment 3 Thierry Vignaud 2013-06-08 19:10:18 CEST
There's not much we can do here.
If not all packages are updated to work with new perl, then...

Priority: Normal => Low
Severity: normal => minor

Comment 4 Pablo Saratxaga 2013-06-11 10:10:33 CEST
so the problem is perl dependency?

the problem here is that rpmdrake itself is functional, but doesn't load because wrong detection of X11.

rpmdrake is, among all tools, a bit special, as it is what allow users to save their system by updating packages. If rpmdrake fails, an advanced user will be able to run urpmi on cli; but a non-advanced user will be completly lost, and have a bad experience on the distro.

Could rpmdrake, alone, be modified to just check existence of $DISPLAY variable instead of using xf86main::main::Xtest ?

Maybe also xf86main::main::Xtest, when it fails but $DISPLAY exists, could show a small text telling that maybe perl and/or drakx tools are out of date and should be updated. That will save some people.
Comment 5 Marja Van Waes 2015-03-31 16:07:00 CEST
Mageia 3 changed to end-of-life (EOL) status 4 months ago.
http://blog.mageia.org/en/2014/11/26/lets-say-goodbye-to-mageia-3/ 

Mageia 3 is no longer maintained, which means that it will not receive any further security or bug fix updates. As a result we are closing this bug.

If you can reproduce this bug against a currently maintained version of Mageia
please feel free to click on "Version" change it against that version of Mageia
and reopen this bug.

Thank you for reporting this bug and we are sorry it could not be fixed.

--
The Mageia Bugsquad

Status: NEW => RESOLVED
Resolution: (none) => OLD


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