decadv_2024_15
2024-12-15
Today I wanted to get started on the [uxn sokoban game idea], but to get there I wanted to have a nicer development environment, as compared to what I used to have (it was NOT clean), so, figuring that I had no other options, I set out to package uxn
in a flake, by myself.
This mostly involved learning what a derivation is, how derivations work and how do I go about writing one for a C/SDL2 project. This went surprisingly smoothly, especially when compared to my other attempts to make headway in the nix ecosystem.
For reference, I found .. just .. grokking nix to be extremely difficult, when I started out. The concepts made sense at a high level, but trying to do anything with nix felt like stepping into quicksand. I'd just .. drown. That was about 10 months ago.
Anyways, I wrote the flake by following whatever documentation I could find, tested it, ran it in a devshell, found an uxn emulator that worked, and.....
realized that uxn
was available in nixpkgs all along. Beyond educational value, all of this work was for nothing.
Well, the result is available here, but I really advise just using pkgs.uxn
instead, the result is the same, but I can't promise the same diligence in updates as an actual package maintainer can.
This took the entire evening, partly because of IRL celebrations midway through, and it is past midnight as I write this, so I'm only keeping further work as a concept, for tomorrow.