Nix revisited


I realized I was in error in not using Nix, and have been addressing that. (The primary artifact so far that is public is hdx, a response to Installing an HDL toolchain from source.) I have some knowledge of it from previous experiments. Some observations:


  1. If my internal sense of what a Git alias should be called is occupied by a base system command that itself is in muscle memory—which only occurs for 2-letter aliases—I transpose the two letters, or repeat a letter somewhere.

    • git checkout -p thus becomes pc to avoid cp(1).
    • git cherry-pick is uncommon enough that it loses the fight for pc and gets pcp.
    • git rm gets mrm, because mr on its own feels like it should be obviously merge-related — there are 9 aliases beginning with m that are merge-related — but at 3 characters, mrm is unique enough to be recognizable.
    • Why not cpc or rmr? iirc, checkout -p got pc first; when it was time to introduce a cherry-pick alias, there was no consideration of giving it cpcpc was an established metaphor for this initialism, whereas cpc would break that and introduce confusion. Moving checkout -p to cpc for consistency’s sake is unacceptable and leaves no clear answer for cherry-pick. rmr seems fine, but continuing with the weirdness is what makes a beautiful natural language :)
  2. Which I have to do once every 8–10 minutes on average, at a guess.