CE-Programming / toolchain

Toolchain and libraries for C/C++ programming on the TI-84+ CE calculator series
https://ce-programming.github.io/toolchain/index.html
GNU Lesser General Public License v3.0
527 stars 53 forks source link

Add Nix flake #506

Closed myclevorname closed 1 month ago

myclevorname commented 1 month ago

Here are some differences in the flake people might need to know.

  1. The comment in the resulting programs is "CE C Toolchain" by default and not the current time to ensure reproducibility.
  2. fasmg, conv, and ez80- are not included in the bin/ folder, but I overrode the paths to said programs in src/makefile.mk to be absolute paths to the actual programs within the Nix store. If you want access to those, use a devshell, like the one in examples/nix-flake, which stores a template for creating a new program with Nix.
  3. The cedev-nightly package has been tested, but the cedev-stable package hasn't been tested.
  4. When writing CE C programs with Nix, you can manually toggle to the stable or nightly toolchains using the stableToolchain flag.
  5. Instead of typing nix build .#cedev-nightly, you have to type .?submodules=1#cedev-nightly because Nix doesn't fetch submodules by default for some odd reason.
  6. The Flake file looks like a mess and may need to be cleaned up.
mateoconlechuga commented 1 month ago

There are so many things wrong here.