David Nusinow wrote: > 3) Does not warn the user to install autodetection tools if they aren't > present Let me share some code with you. # X needs three packages installed before its debconf config is run # to make it do hardware autodetection. The only way to make sure these # are installed properly is to install them now, before packages are # selected. This way, even if the user picks xserver-xfree86 in # aptitude and installs using aptitude, they will be available. for pkg in discover mdetect read-edid ; do if ! dpkg --get-selections | grep "$pkg" | grep -q install; then extra="$pkg $extra" fi done if [ "$extra" ] ; then apt-get -y -f install $extra >/dev/null 2>&1 || true # They are removed later on if it looks like X was not selected. echo $extra > $TMPDIR/tmp-Xhack fi ... # If X was not installed, remove the three hardware detection # programs. Of course, this fails if the user manually picked # to install these, or wants them installed for some other reason. # But I cannot help that. if ! dpkg --get-selections | grep xserver-xfree86 | grep -q install; then if [ -f $TMPDIR/tmp-Xhack ] ; then extra=`cat $TMPDIR/tmp-Xhack` dpkg --purge $extra >/dev/null 2>&1 || true rm $TMPDIR/tmp-Xhack fi fi This is the ugliest specal case in base-config for any package, and I would love to remove it. if you are redesigning the X config tool, please consider putting it in a package that depends on read-edid and mdetect, and deferring the configuration to the postinst. Preconfiguration is not worth the pain. I would also hope to see an X config that did more autoconfiguration, perhaps by using X --config, if that actually mostly works in newer versions of X. -- see shy jo
Attachment:
signature.asc
Description: Digital signature