On Sat, 14 Feb 2009, Andrew Doran wrote:
I've put a script from one of our (my company's) projects at ftp://ftp.netbsd.org/pub/NetBSD/misc/sborrill/xdriverLooks like it is actually here: ftp://ftp.netbsd.org/pub/NetBSD/misc/sborrill/xconfig
Oops.
In essence the script runs X -probeonly -configure and then post processes the generated Xorg.conf to determine the driver being used (which can be stored for future reference if there is any local storage). Certain quirks are applied based on experience. These include falling back to VESA in certain circumstances (namely DDC failing with the intel driver) and selecting software cursor on some chipsets. The Xorg.conf actually used for X is then autogenerated. The script I've uploaded is just part of this.This is great, thank you!
The other thing is a fallback routine that will try VESA+DDC then VESA+800x600 if X fails to start.
Then once in X, we check on the resolutions with xrandr and do some sanity checking (switch out of square resolutions, e.g. 1280x1280 and set some upper and lower bounds on resolution). The user is then asked whether they want to save the settings for later. They will only get prompted once as the product is designed for kiosk-type operation.
Can we figure out how to set the keyboard layout given what we ask in sysinst? Is it worth looking at what Ubuntu/Fedora do? Anyone want to add the code to sysinst? Should be simple enough.That's got to be pretty simple. What we actually do with the keyboard layout determined depends on how we generate the Xorg.confIf I recall we presently only ask for the timezone which is a bit different from asking for the keyboard layout. If so it could use improvement but I suppose it is not critical for producing a prototype.
The very first sysinst asks for (after language) is keyboard layout (I select UK-English for example), so we just need to make map this through to an appropriate value for xkb/xmodmap.
-- Stephen