Nice, looks very similar to a dot-file manager I wrote for myself except actually documented and fleshed out. I may need to look into it to see if I can switch :)
Oh this is very nice! I like how you’re noting using different package managers for tasks. May have to rip this off :P
Thanks for sharing! I love dotfiles managers and I like your approach.
Why is this tagged nix?
Because we don’t have an immutable-x tag and chatting with a bunch of Nix folks was fairly instrumental in growing my thinking and this design. Dropped since evidently you object.
I came to ask the very same question :) I don’t think cram uses Nix, as it states:
That No previous statefile warning is the secret sauce of Cram. Cram works in terms not just of this log of what changes it will make, but in terms of a persisted log of what changes it has made. This allows Cram to optimize repeated executions to remove installation steps that haven’t changed, while still retaining a precise log of how to get where you are now from an empty slate. This also allows Cram to clean up after itself.
Repo doesn’t contain anything nix-related, either. Interestingly, this python project is built using Bazel, that’s something I rarely see.
That’s a story for another time :P
Having tried to use Bazel for Python… ouch, that’s gotta have some very complicated justification because Bazel’s python support is terrible on top of the already pretty terrible user experience of Bazel.