emacscollective/no-littering

Migration guide/script

Fuco1 opened this issue · 2 comments

Fuco1 commented

Suppose I have my own setup with a bunch of custom paths configured with emacs customize interface.

Is there some way I could start using this package while keeping all the data files? I.e. I imagine some feature that would walk all the definitions, look for the current values and move the files over to the expected locations (set by this package).

This should probably be done while emacs is shut down to prevent weird caching issues.

It should also remove all the customizations because they would probably conflict with the settings in this package.

Does this make sense? Is it safe?

I don't see how we could easily and safely do that. Currently we essentially have an alist that maps variables to the intended values. But actually it is code, which we would have to parse somehow or convert to data permanently. And the default values we would have to collect somehow.

Alternatively a script could be provided and maintained separately, but a fear that would quickly end up being outdated.

When I wrote this I have knowingly decided against writing some migration script. I found that I didn't care much about preserving the persistent data -- just using Emacs regenerated it over time. A handful of files I moved manually. And ~/.emacs.d ... well that doesn't even exist in my case.

So yes, having a migration tool would be nice, but I think it would be to hard to get it right.

Closing because I don't think this is feasible.