using debconf to clean up conflicting files

Russ Allbery rra at debian.org
Tue Dec 7 16:41:25 UTC 2010


Andreas Beckmann <debian at abeckmann.de> writes:

> what about using debconf to clean up the problem of files left over from
> ancient installations? I never used debconf before and don't have time
> to learn it now, so someone else would have to implement this.

> What could be done:

> in the nvidia-glx postinst there is already a check that lists possibly
> conflicting files. Collect a list of them and ask the user what to do
> with them:

>   "The following files from ancient nvidia driver installations have
> been found on your system:
>       /usr/lib/libGL.so.11.22.33
>       /usr/lib/libGL.so.22.33.44
>   "These files conflict with the new nvidia driver. What do you want to do?
>     * Delete them. (default)
>     * Spawn a shell.
>     * Ignore and fail the configuration.

Oh, hey, yeah, that could work.  Unfortunately, I'm also in a similar
situation: work is really, really busy right now, and I won't have time to
look at this before the squeeze release.

> In addition to this, we should have a preinst check for remains of the
> nvidia installer. Ideally this should go into its own package (e.g.
> nvidia-common, better names welcome) and (nearly) every package should
> have Pre-Depends: nvidia-common. But as we cannot introduce new packages
> now, best would be to stick this into the preinst of
> libgl1-nvidia-alternatives. The new nvidia-common should also include
> the pre-install hook for the nvidia-installer (to prevent using
> nvidia-installer after the Debian packages were installed) I recently
> added to libgl1-nvidia-alternatives in SVN.

> In the preinst of libgl1-nvidia-alternatives (or the postinst of
> nvidia-common to be introduced later), check for the existance of
>   /usr/bin/nvidia-installer
>   /usr/bin/nvidia-uninstall
> and if one of them exists, ask the user

>   "You previously used the nvidia-installer to install the nvidia
> graphics driver. This method is incompatible with the Debian packaging
> and it is highly recommended to run the nvidia uninstall procedure
> before proceeding with the nvidia driver Debian package installation.
>   * run nvidia-uninstall (default)
>   * spawn a shell to examine this manually
>   * abort the Debian package nvidia driver installation

> If nvidia-uninstall (or nvidia-installer --uninstall) failed, add
> another choice:
>   * manually remove the files remaining from nvidia installer
> although I currently don't know what to remove besides
> /usr/bin/nvidia-installer and /usr/bin/nvidia-uninstall

> The (pre-)configuration should fail as long as /usr/bin/nvidia-installer
> does still exist.

That also sounds like a really solid idea.

-- 
Russ Allbery (rra at debian.org)               <http://www.eyrie.org/~eagle/>



More information about the pkg-nvidia-devel mailing list