severity 221570 normal
retitle 221570 xserver-xfree86: [debconf] monitor/mode-list can be used to choose a mode not in display/modes's default list
thanks
On Tue, Nov 18, 2003 at 11:26:55PM -0500, Joe Drew wrote:
> Package: xserver-xfree86
> Version: 4.2.1-14
> Severity: important
>
> On my iBook with my debconf priority set to High, I got the option to
> set my highest resolution supported (via the medium-complexity modeline
> selector), but the default for resolutions to be used by X was set to
> 800x600 and 640x480, not including 1024x768 (which is all my iBook
> supports). Since my priority was set to High, I couldn't add 1024x768 to
> this and I got a useless screen until manually running dpkg-reconfigure.
I'm writing up a fix for this that makes the logic look a little like
this:
db_get xserver-xfree86/config/monitor/selection-method
case "$RET" in
Simple)
[...]
Medium)
run db_input "$PRIORITY" \
xserver-xfree86/config/monitor/mode-list
db_go
db_get xserver-xfree86/config/monitor/mode-list
case "$RET" in
"640x480 @ 60Hz")
db_set xserver-xfree86/config/monitor/horiz-sync "28-33"
db_set xserver-xfree86/config/monitor/vert-refresh "43-72"
DEFAULT_MODES="640x480"
;;
"640x480 @ 72Hz")
db_set xserver-xfree86/config/monitor/horiz-sync "28-38"
db_set xserver-xfree86/config/monitor/vert-refresh "43-72"
DEFAULT_MODES="640x480"
;;
"800x600 @ 60Hz")
db_set xserver-xfree86/config/monitor/horiz-sync "28-38"
db_set xserver-xfree86/config/monitor/vert-refresh "43-72"
DEFAULT_MODES="800x600"
;;
"800x600 @ 72Hz")
db_set xserver-xfree86/config/monitor/horiz-sync "28-48"
db_set xserver-xfree86/config/monitor/vert-refresh "43-72"
DEFAULT_MODES="800x600"
;;
"800x600 @ 85Hz")
db_set xserver-xfree86/config/monitor/horiz-sync "30-54"
db_set xserver-xfree86/config/monitor/vert-refresh "50-85"
DEFAULT_MODES="800x600"
;;
"1024x768 @ 60Hz")
db_set xserver-xfree86/config/monitor/horiz-sync "28-49"
db_set xserver-xfree86/config/monitor/vert-refresh "43-72"
DEFAULT_MODES="1024x768"
;;
"1024x768 @ 70Hz")
db_set xserver-xfree86/config/monitor/horiz-sync "30-57"
db_set xserver-xfree86/config/monitor/vert-refresh "43-72"
DEFAULT_MODES="1024x768"
;;
"1024x768 @ 75Hz")
db_set xserver-xfree86/config/monitor/horiz-sync "30-60"
db_set xserver-xfree86/config/monitor/vert-refresh "50-75"
DEFAULT_MODES="1024x768"
;;
"1152x864 @ 75Hz")
db_set xserver-xfree86/config/monitor/horiz-sync "30-68"
db_set xserver-xfree86/config/monitor/vert-refresh "50-85"
DEFAULT_MODES="1152x864"
;;
"1280x960 @ 60Hz")
db_set xserver-xfree86/config/monitor/horiz-sync "30-60"
db_set xserver-xfree86/config/monitor/vert-refresh "50-75"
DEFAULT_MODES="1280x960"
;;
"1280x960 @ 85Hz")
db_set xserver-xfree86/config/monitor/horiz-sync "30-92"
db_set xserver-xfree86/config/monitor/vert-refresh "50-85"
DEFAULT_MODES="1280x960"
;;
"1600x1200 @ 60Hz")
db_set xserver-xfree86/config/monitor/horiz-sync "30-75"
db_set xserver-xfree86/config/monitor/vert-refresh "50-85"
DEFAULT_MODES="1600x1200"
;;
"1600x1200 @ 75Hz")
db_set xserver-xfree86/config/monitor/horiz-sync "30-94"
db_set xserver-xfree86/config/monitor/vert-refresh "50-75"
DEFAULT_MODES="1600x1200"
;;
"1600x1200 @ 85Hz")
db_set xserver-xfree86/config/monitor/horiz-sync "30-107"
db_set xserver-xfree86/config/monitor/vert-refresh "50-85"
DEFAULT_MODES="1600x1200"
;;
"1792x1344 @ 75Hz")
db_set xserver-xfree86/config/monitor/horiz-sync "30-107"
db_set xserver-xfree86/config/monitor/vert-refresh "50-85"
DEFAULT_MODES="1792x1344"
;;
"1792x1344 @ 60Hz")
db_set xserver-xfree86/config/monitor/horiz-sync "30-84"
db_set xserver-xfree86/config/monitor/vert-refresh "50-75"
DEFAULT_MODES="1792x1344"
;;
"1856x1392 @ 60Hz")
db_set xserver-xfree86/config/monitor/horiz-sync "30-87"
db_set xserver-xfree86/config/monitor/vert-refresh "50-75"
DEFAULT_MODES="1856x1392"
;;
"1856x1392 @ 75Hz")
db_set xserver-xfree86/config/monitor/horiz-sync "30-113"
db_set xserver-xfree86/config/monitor/vert-refresh "50-75"
DEFAULT_MODES="1856x1392"
;;
"1920x1440 @ 60Hz")
db_set xserver-xfree86/config/monitor/horiz-sync "30-90"
db_set xserver-xfree86/config/monitor/vert-refresh "50-75"
DEFAULT_MODES="1920x1440"
;;
"1920x1440 @ 75Hz")
db_set xserver-xfree86/config/monitor/horiz-sync "30-130"
db_set xserver-xfree86/config/monitor/vert-refresh "60-160"
DEFAULT_MODES="1920x1440"
;;
esac
;;
Advanced)
[...]
esac
# Configure available video modes. For certain drivers we will override any
# existing value of $DEFAULT_MODES, because they only support certain modes.
# Otherwise, the existing value of $DEFAULT_MODES is preserved.
db_get xserver-xfree86/config/device/driver
case "$RET" in
newport)
DEFAULT_DEPTH=8
DEFAULT_MODES="1280x1024"
;;
vga)
DEFAULT_DEPTH=4
DEFAULT_MODES="640x480"
;;
*)
DEFAULT_DEPTH=24
DEFAULT_MODES=${DEFAULT_MODES:="800x600, 640x480"}
;;
esac
observe "\"xserver-xfree86/config/device/driver\" is \"$RET\"; set default" \
"color depth to $DEFAULT_DEPTH and available video modes to" \
"\"$DEFAULT_MODES\""
set_db_priority "medium"
# list of desired display modes
auto_answer db_input "$PRIORITY" xserver-xfree86/config/display/modes \
"$DEFAULT_MODES"
This should ensure that if a mode is picked explicitly, it ends up as
the sole default video mode (unless there are extenuating circumstances
like the newport or vga drivers). People configuring at a lower
question priority will be asked the display/modes question and can
remove the default mode, add others, etc.
Comments?
--
G. Branden Robinson | If God had intended for man to go
Debian GNU/Linux | about naked, we would have been
branden@debian.org | born that way.
http://people.debian.org/~branden/ |
Attachment:
signature.asc
Description: Digital signature