Skip to content

Add spkg-legacy-uninstall scripts for most standard packages #25140

@embray

Description

@embray

This is a followup to #25139 and represents work that was originally done in #22510 to convert most packages to use spkg-legacy-uninstall and remove uninstall-related commands from their spkg-install scripts.

This work was brought over from an older branch and still needs some adjustment: It should incorporate the changes from the #24024 metaticket which conflict with some of these changes. There are also some additional optional and experimental packages (and maybe a couple standard packages) that still need to be updated as well.

Probably won't bother with that until and unless #25139 is approved of in some form that still includes the spkg-legacy-uninstall feature.


To summarize what this is about: Part of the goal in implementing the new installation/uninstallation system for packages is that spkg-install should, ideally, not modify $SAGE_LOCAL in any way, at least for packages that support DESTDIR-based installation. This allows more separation from the building of packages from their runtime installation target.

However, many packages' spkg-install or spkg-build include commands (mostly in the form of rm -rf's) to clean up files from previous installs of those packages. This is no longer necessary for new-style package installations that track exactly what files are installed by a package. But it is still necessary when upgrading from old installs of packages that don't have a file manifest. This is what the spkg-legacy-uninstall script is for. It's just taking the rm -rf's from spkg-install and moving it into a separate script that is called by the uninstaller if it doesn't have a file manifest for that package.

So this ticket is just creating the spkg-legacy-uninstall for many packages that already have DESTDIR support.

Component: build

Keywords: uninstall

Author: Erik Bray

Branch/Commit: u/embray/build/spkg-uninstall/legacy-uninstallers @ e2d2b01

Reviewer: Julian Rüth

Issue created by migration from https://trac.sagemath.org/ticket/25140

Metadata

Metadata

Assignees

Type

No type

Projects

No projects

Milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions