Project Setup Made Simple
Started Last edited
Flow
Simplicity
And it used to be the case that just setting the damn thing up already took me ages.
Since Progress Happens In Jumps, there have been a few big jumps along the way.
- Reproducibility, Part #1: Using Docker whenever possible. This definitely adds complexity, but makes everything way more reproducible. Runs on my machine-type errors should be few now.
- Uniformity: All my flakes use flake.parts.
- Speed, Part #1 | Setup: Setting everything up with Nix Flakes is fine, but it’s tedious to write them by hand in the beginning of every project. Enter Flake Templates:
Nix Flakes can define a template folder output that then gets copied to whereever you want. When you want to start a new project (Pollen, in this case), you can just do this:Terminal window mkdir pollen-projectcd pollen-projectnix flake init --template github:haglobah/flakes#pollen - Speed, Part #2 | Development: Writing and maintaining those Flake Templates, however, is a pain in the ass.
Flake Templates just aren’t made for the usecase I’m trying to use them for. Which is why I wrote a new, small utility that just works: Templater.
I’m regularly starting projects in old and new Programming Languages, with old and new tools, and in old and new frameworks.