flake.nix (1742B)
1 { 2 description = "Arduino TNC"; 3 4 inputs = { 5 stablePkgs.url = "github:nixos/nixpkgs?ref=nixos-25.11"; 6 fenixLib = { 7 url = "github:nix-community/fenix"; 8 inputs.nixpkgs.follows = "stablePkgs"; 9 }; 10 }; 11 12 outputs = 13 { 14 self, 15 stablePkgs, 16 fenixLib, 17 }: 18 let 19 system = "x86_64-linux"; 20 stable = import stablePkgs { 21 inherit system; 22 config = { }; 23 overlays = [ ]; 24 }; 25 fenix = import fenixLib { 26 inherit system; 27 }; 28 rust = fenix.fromToolchainFile { 29 file = ./firmware/rust-toolchain.toml; 30 sha256 = "sha256-DnyK5MS+xYySA+csnnMogu2gtEfyiy10W0ATmAvmjGg="; 31 }; 32 libInputs = [ stable.stdenv.cc.cc.lib ]; 33 lib-path = with stable; lib.makeLibraryPath libInputs; 34 fastgoertzel = stable.python313Packages.buildPythonPackage { 35 name = "fastgoertzel"; 36 src = stable.fetchurl { 37 url = "https://files.pythonhosted.org/packages/86/9d/cbe1f6b4a74c5816cdfa201485db4dd6f85a2900b57287ae2e601886f314/fastgoertzel-1.0.2-cp313-cp313-manylinux_2_24_x86_64.manylinux_2_28_x86_64.whl"; 38 hash = "sha256-XgQ4h3hW14fcEG664F6l94zlzDVi+FGe0I8ldT20JH8="; 39 }; 40 format = "wheel"; 41 }; 42 in 43 { 44 devShells.${system}.default = stable.mkShell { 45 packages = with stable; [ 46 avrdude 47 direwolf 48 fastgoertzel 49 pkgsCross.avr.buildPackages.gcc 50 python313Packages.matplotlib 51 python313Packages.numpy 52 python313Packages.scipy 53 ravedude 54 ruff 55 rust 56 ty 57 ]; 58 59 shellHook = '' 60 export "LD_LIBRARY_PATH=$LD_LIBRARY_PATH:${lib-path}" 61 ''; 62 }; 63 }; 64 }