a vim plugin that displays stuff on an led matrix
1{
2 description = "Daedalus - RP2350 firmware and Vim plugin";
3
4 inputs = {
5 nixpkgs.url = "github:NixOS/nixpkgs/nixos-unstable";
6 flake-utils.url = "github:numtide/flake-utils";
7 };
8
9 outputs =
10 {
11 nixpkgs,
12 flake-utils,
13 ...
14 }:
15 flake-utils.lib.eachDefaultSystem (
16 system:
17 let
18 pkgs = import nixpkgs {
19 inherit system;
20 };
21
22 # Needs to be synced past
23 # https://github.com/NixOS/nixpkgs/pull/321786
24 local-pico-sdk = pkgs.pico-sdk.override {
25 withSubmodules = true;
26 };
27 in
28 {
29 devShells.default = pkgs.mkShell {
30 buildInputs = with pkgs; [
31 # C/C++ development
32 gcc
33 gcc-arm-embedded
34 cmake
35 gnumake
36
37 # Pico SDK dependencies
38 git
39 python3
40 python3Packages.pip
41 python3Packages.setuptools
42 picotool
43
44 # Debugging tools
45 gdb
46 openocd
47
48 # Utilities
49 pkg-config
50 minicom
51
52 # Code quality
53 clang-tools # clang-format, clang-tidy
54 cppcheck
55 ];
56
57 shellHook = ''
58 # Set environment variables
59 export PICO_SDK_PATH="${local-pico-sdk}/lib/pico-sdk"
60
61 echo "Daedalus development environment ready!"
62 '';
63 };
64 }
65 );
66}