Bug 764395 - Wrong hw supplements in video drivers --> minimal install has X11
Wrong hw supplements in video drivers --> minimal install has X11
Status: VERIFIED FIXED
Classification: openSUSE
Product: openSUSE 12.2
Classification: openSUSE
Component: X.Org
Factory
All openSUSE 12.2
: P2 - High : Minor (vote)
: ---
Assigned To: Stefan Dirsch
E-mail List
:
Depends on:
Blocks:
  Show dependency treegraph
 
Reported: 2012-05-28 14:29 UTC by Bernhard Wiedemann
Modified: 2012-06-19 05:16 UTC (History)
5 users (show)

See Also:
Found By: Development
Services Priority:
Business Priority:
Blocker: ---
Marketing QA Status: ---
IT Deployment: ---


Attachments
yast2 logs from installed system (340.80 KB, application/x-bzip)
2012-05-29 05:34 UTC, Bernhard Wiedemann
Details
DVD solver testcase without xdm (1.22 MB, application/x-compressed-tar)
2012-05-29 16:43 UTC, Bernhard Wiedemann
Details

Note You need to log in before you can comment on or make changes to this bug.
Description Bernhard Wiedemann 2012-05-28 14:29:10 UTC
I found that selecting "Minimal Server Selection (Text Mode)" pulled in X11+xdm

http://openqa.opensuse.org/results/openSUSE-NET-x86_64-Build0386-textmode
Comment 1 Stephan Kulow 2012-05-28 18:53:56 UTC
please get your yast2 log - pulling xdm sounds like something yast did
Comment 2 Bernhard Wiedemann 2012-05-29 05:34:31 UTC
Created attachment 492716 [details]
yast2 logs from installed system
Comment 3 Stephan Kulow 2012-05-29 07:20:13 UTC
Hi Jiri and Lukas,

I wonder how this could have ever worked :)

The textmode has desktop and logon in the XML - and not just since yesterday, which confuses me highly.

Anyway, can I just remove those entries or do I need to add dummies?

            <one_supported_desktop>
                <name>textmode</name>
                <desktop>twm</desktop>
                <label_id>desktop_textmode</label_id>
                <logon>xdm</logon>
                <cursor>DMZ</cursor>
                <packages>branding-openSUSE</packages>
                <order config:type="integer">8</order>
                <patterns>minimal_base minimal_base-conflicts</patterns>
                <icon>yast-sshd</icon>
            </one_supported_desktop>
Comment 4 Jiří Suchomel 2012-05-29 07:44:00 UTC
The question is, if "desktop" and/or "logon" actually pull the packages. Lukas, I cannot find a code which is handling it...
Comment 5 Stephan Kulow 2012-05-29 07:51:55 UTC
Check yast2-packager:

Mon Oct 17 16:01:54 CEST 2011 - locilka@suse.cz
- Readding missing feature supported in control file: Packages
  required by a selected desktop in DefaultDesktop (bnc#724491).
Comment 6 Jiří Suchomel 2012-05-29 08:02:21 UTC
Ladislav, maybe you will know? Seems like desktop selection is part of yast2-packager...
Comment 7 Jiří Suchomel 2012-05-29 08:07:15 UTC
(In reply to comment #5)
> Check yast2-packager:
> 
> Mon Oct 17 16:01:54 CEST 2011 - locilka@suse.cz
> - Readding missing feature supported in control file: Packages
>   required by a selected desktop in DefaultDesktop (bnc#724491).

This was probably only fixing <packages/> and <patterns>, nothing about <desktop> or <logon>.

BTW, couldn't it be caused by branding package?
Comment 8 Lukas Ocilka 2012-05-29 08:52:47 UTC
(In reply to comment #3)
> Anyway, can I just remove those entries or do I need to add dummies?
> 
>             <one_supported_desktop>
>                 <name>textmode</name>
>                 <desktop>twm</desktop>
>                 <label_id>desktop_textmode</label_id>
>                 <logon>xdm</logon>
>                 <cursor>DMZ</cursor>
>                 <packages>branding-openSUSE</packages>
>                 <order config:type="integer">8</order>
>                 <patterns>minimal_base minimal_base-conflicts</patterns>
>                 <icon>yast-sshd</icon>
>             </one_supported_desktop>

<desktop/> sets the default desktop in sysconfig

<logon/> sets the default logon application in sysconfig

<packages/> pulls in all listed packages

<patterns/> pulls in all listed patterns

See also http://doc.opensuse.org/projects/YaST/openSUSE11.3/tdg/inst_in_general_chap.html#control_software_supported_desktops

These entries

  <logon>xdm</logon>
  <desktop>twm</desktop>

are actually not dummies, they are there just in case user decides to
install some more packages (X11) later just to have something as the
default there.

I'll check the logs too.
Comment 9 Lukas Ocilka 2012-05-29 09:11:07 UTC
I've checked the code in DefaultDesktop.ycp and you will get warning in
log if any definition/key) is missing in supported_desktops, of course
except packages and patterns.

And now the logs:
...
This might look suspicious, but it actually says that PackagesProposal
will require the listed resolvables - when it comes to the installation
proposal of course:

DefaultDesktop.ycp:134 Default desktop: 'kde'
PackagesProposal.ycp:194 Adjusting resolvables ["kde", "x11", "base"]
type `pattern for DefaultDesktopPatterns
PackagesProposal.ycp:194 Adjusting resolvables ["kdm", "branding-openSUSE"]
type `package for DefaultDesktopPackages

Then we can see this:

DefaultDesktop.ycp:244 New desktop has been set: textmode
PackagesProposal.ycp:194 Adjusting resolvables ["minimal_base",
"minimal_base-conflicts"] type `pattern for DefaultDesktopPatterns
PackagesProposal.ycp:194 Adjusting resolvables ["branding-openSUSE"]
type `package for DefaultDesktopPackages

The same with PackagesProposal also applies here
And then inst_new_desktop client is finished

2012-05-29 01:25:29
Next mentions about x11:
Kernel.ycp:629 Computed kernel packages: ["kernel-default"]
Packages.ycp:1023 Pkg Builtin called: IsSelected
Package.cc(IsSelected):491 Tag xorg-x11 is not selected to install
Packages.ycp:1029 Not selecting graphic packages

2012-05-29 01:25:29
clients/runlevel_proposal.ycp:26 Runlevel proposal started
Package.cc(IsSelected):486 Tag xorg-x11 provided by xorg-x11 is selected to install
clients/runlevel_proposal.ycp:212 x11_setup_needed: true, x11_selected: true, vnc: false, ssh false, serial: false, forced: , live_medium: false

As you can see, between the two above, X11 was selected. And BTW, solved
was actually called in-between.
Comment 10 Jiří Suchomel 2012-05-29 09:41:41 UTC
Are we able to get the information about when exactly and why was X11 selected by solver?
Comment 11 Lukas Ocilka 2012-05-29 09:42:27 UTC
OK, it seems I should add some more info:

PackagesProposal is a YCP module that holds the info which packages
  and patterns are required by which part of YaST; this info is later
  used in packages proposal before the solver is called. These
  requirements are set by PackagesProposal and if any other part of
  YaST changes them later, solver just gets new input while the old
  one is deleted.

runlevel_proposal has chosen runlevel 5 because X11 were already
  selected for installation

Solver input can be found in y2log
  Install U_Th_(2)product:openSUSE-12.2-1.13.i586
  Install U_Th_(2)product:openSUSE-12.2-1.13.i586
  Install U_Th_(2326)kernel-default-3.4.0-2.1.i586
  Install U_Th_(2330)kexec-tools-2.0.2-13.1.i586
  Install U_Th_(5508)openSUSE-release-12.2-1.13.i586
  Install U_Th_r(8771)branding-openSUSE-12.2-7.5.noarch
  Install U_Th_(12419)yast2-installation-2.22.6-1.2.noarch
  Install UBTh_(22264)pattern:minimal_base-12.2-2.1.i586
  Install UBTh_(22265)pattern:minimal_base-conflicts-12.2-2.1.i586

Right after calling the solver, X11 is already selected as indicates
  the runlevel_proposal log

Solver testcase should tell us more
Comment 13 Stephan Kulow 2012-05-29 15:35:32 UTC
I got the solver test case and it looks sane, but I see xdm selected for installation. But when I test the solver test case, I don't get it - I get 321 packages to install, while I get > 600 from DVD.

Pretty strange
Comment 14 Bernhard Wiedemann 2012-05-29 16:43:01 UTC
Created attachment 492815 [details]
DVD solver testcase without xdm

Just did a minimal install from openSUSE-DVD-x86_64-Build0389-Media.iso
and found that it did not include xdm or X11.
Also NET seems good now.
Has this already been fixed?
Comment 15 Stephan Kulow 2012-05-31 08:04:34 UTC
Cristian caused this in adding hardware supplements to the cirrus driver. So if you have a gfx card, you get the full X stack ;(

So if you see the problem or not depends on your hardware.
Comment 16 Ludwig Nussel 2012-05-31 08:28:26 UTC
I've filed a feature to allow combining packageand and modalias:
https://features.opensuse.org/313500
Comment 17 Ludwig Nussel 2012-05-31 08:43:09 UTC
I was too fast. We apparently already support the feature.
Comment 18 Ludwig Nussel 2012-05-31 12:29:19 UTC
reassigning to coolo who takes care of the supplements
Comment 19 Stephan Kulow 2012-05-31 13:01:48 UTC
I already filed SRs for some
Comment 20 Cristian Rodríguez 2012-05-31 16:42:46 UTC
I had no idea that this syntax was supported.. what is the SR's numbers to fix the other drivers if any ?
Comment 21 Stephan Kulow 2012-06-01 07:35:50 UTC
these hardware supplements are a complete waste of meta data anyway and should never have been added (especially without a tool to keep the list auto generated).

The drivers are installed anyway as they supplement xorg-x11-server. The only thing these hardware supplements do is adding more lines to the factory metadata - and ruin minimal installs ;(
Comment 22 Stefan Dirsch 2012-06-01 08:31:47 UTC
(In reply to comment #20)
> I had no idea that this syntax was supported.. what is the SR's numbers to fix
> the other drivers if any ?

Coolo fixed it for

xf86-video-cirrus ("hw" provided by qemu)
xf86-video-trident
xorg-x11-driver-video-nouveau (hw still in use)

Still to be done:

vaapi-intel-driver (most critical one, since hw still in use) (*)
xf86-video-ark
xf86-video-intel (most critical one, since hw still in use) ==> reopen
xf86-video-mga
xf86-video-neomagic
xf86-video-savage
xf86-video-sis
xorg-x11-driver-video-unichrome

(*) I would suggest to replace the hw supplements with a "Recommends:vaapi-intel-driver" in xf86-video-intel instead.
Comment 23 Stefan Dirsch 2012-06-01 09:54:14 UTC
(In reply to comment #22)
> Still to be done:
> 
> vaapi-intel-driver (most critical one, since hw still in use) (*)
> xf86-video-ark
> xf86-video-intel (most critical one, since hw still in use) ==> reopen
> xf86-video-mga
> xf86-video-neomagic
> xf86-video-savage
> xf86-video-sis
> xorg-x11-driver-video-unichrome
> 
> (*) I would suggest to replace the hw supplements with a
> "Recommends:vaapi-intel-driver" in xf86-video-intel instead.

Fixed in obs://X11:XOrg and submitrequested for openSUSE:Factory.
Comment 24 Bernhard Wiedemann 2012-06-01 10:00:10 UTC
This is an autogenerated message for OBS integration:
This bug (764395) was mentioned in
https://build.opensuse.org/request/show/123181 Factory / vaapi-intel-driver
https://build.opensuse.org/request/show/123182 Factory / xf86-video-intel
https://build.opensuse.org/request/show/123183 Factory / xf86-video-ark
https://build.opensuse.org/request/show/123184 Factory / xf86-video-mga
https://build.opensuse.org/request/show/123185 Factory / xf86-video-neomagic
https://build.opensuse.org/request/show/123186 Factory / xf86-video-savage
https://build.opensuse.org/request/show/123188 Factory / xf86-video-sis
https://build.opensuse.org/request/show/123190 Factory / xorg-x11-driver-video-unichrome
Comment 25 Bernhard Wiedemann 2012-06-01 15:00:09 UTC
This is an autogenerated message for OBS integration:
This bug (764395) was mentioned in
https://build.opensuse.org/request/show/123229 Factory / xf86-video-intel
Comment 26 Cristian Rodríguez 2012-06-01 17:03:51 UTC
Apparently I am wasting my time trying to improve things, instead of using the modalias([packagename:]subsystem:expression) syntax that is supported it the supplements were removed.

Talking to deaf ears here, I rest my case.
Comment 27 Stephan Kulow 2012-06-04 07:48:48 UTC
see #21 - they are no improvement, they are just making it more fragile without any (visible to me) improvement.