summaryrefslogtreecommitdiff
path: root/doc/todo
diff options
context:
space:
mode:
authorspwhitton2017-09-02 02:56:11 +0000
committeradmin2017-09-02 02:56:11 +0000
commit2c41836bd7eb0695ff0cfc49f0bc8e4a7266e7b0 (patch)
tree04ac5d984e3e1dc68f66b99998574ce1db5bf4ae /doc/todo
parent603044d6af5730c95bf89d2a9e9cb4c437e2fc0f (diff)
unpropellor a host: raise issues
Diffstat (limited to 'doc/todo')
-rw-r--r--doc/todo/unpropelling_a_host.mdwn9
1 files changed, 9 insertions, 0 deletions
diff --git a/doc/todo/unpropelling_a_host.mdwn b/doc/todo/unpropelling_a_host.mdwn
new file mode 100644
index 00000000..0e1ee2b5
--- /dev/null
+++ b/doc/todo/unpropelling_a_host.mdwn
@@ -0,0 +1,9 @@
+We discussed at DebConf the need for a property that removes propellor from a host. It would run itself at the end of the spin. It needs to nuke `/usr/local/propellor`. To what extent can it remove propellor's build dependencies? I can see two problems to be resolved before writing any code.
+
+1. There is no standard way to remove cabal and stack packages from `/root` without potentially nuking stuff the user wants to keep. So maybe the property should remove only OS packages? I.e. best used on `OSOnly` hosts/chroots.
+
+2. What if another property on the host installs some or all of those build dependencies? This property would be cancelled out by the unpropellor property. Maybe properties that install packages need to set info about the packages that are meant to remain installed?
+
+The unpropellor property could just nuke `/usr/local/propellor` and leave it at that. But then the sbuild module would need to maintain a list of propellor's build deps to remove from the newly created chroot, which is a third copy of the list..
+
+--spwhitton