diff --git a/flake.nix b/flake.nix index 69bbba9..a36559e 100644 --- a/flake.nix +++ b/flake.nix @@ -22,6 +22,7 @@ flake-utils.lib.eachDefaultSystem ( system: let + idfVersion = "v6.0.1"; pkgs = import nixpkgs { inherit system; overlays = [ (import "${nixpkgs-esp-dev}/overlay.nix") ]; @@ -52,7 +53,7 @@ echo "$PORT" ''; esp-idf = pkgs.esp-idf-full.override { - rev = "v6.0.1"; + rev = idfVersion; sha256 = "sha256-4KJa686qc+u7XkF/GS2o53l1SpwP2EmdqAn/qmlL1yU="; }; in @@ -60,18 +61,21 @@ apps = { menuconfig = { type = "app"; + meta.description = "โš™๏ธ Open ESP-IDF configuration menu (sdkconfig)"; program = "${pkgs.writeShellScriptBin "idf-menuconfig" '' ${esp-idf}/tools/idf.py menuconfig ''}/bin/idf-menuconfig"; }; build = { type = "app"; + meta.description = "๐Ÿงฑ Build ESP32 firmware using ESP-IDF ${idfVersion}"; program = "${pkgs.writeShellScriptBin "idf-build" '' ${esp-idf}/tools/idf.py build ''}/bin/idf-build"; }; flash = { type = "app"; + meta.description = "โšก Flash firmware to ESP32-S3 over auto-detected serial port"; program = "${pkgs.writeShellScriptBin "idf-flash" '' set -euo pipefail @@ -83,6 +87,7 @@ }; monitor = { type = "app"; + meta.description = "๐Ÿ“ก Open serial monitor for ESP32 logs"; program = "${pkgs.writeShellScriptBin "idf-monitor" '' set -euo pipefail @@ -94,22 +99,24 @@ }; clean = { type = "app"; + meta.description = "๐Ÿงน Clean ESP-IDF build directory"; program = "${pkgs.writeShellScriptBin "idf-clean" '' ${esp-idf}/tools/idf.py clean ''}/bin/idf-clean"; }; full = { type = "app"; + meta.description = "๐Ÿš€ Full pipeline: build โ†’ flash โ†’ monitor"; program = "${pkgs.writeShellScriptBin "idf-full" '' set -euo pipefail PORT=$(${autoSerialPort}/bin/esp-port) - echo "Building..." + echo "๐Ÿงฑ Building..." ${esp-idf}/tools/idf.py build - echo "Flashing on $PORT..." + echo "โšก Flashing on $PORT..." ${esp-idf}/tools/idf.py -p "$PORT" flash - echo "Starting monitor..." + echo "๐Ÿ“ก Starting monitor..." ${esp-idf}/tools/idf.py -p "$PORT" monitor ''}/bin/idf-full"; }; @@ -129,4 +136,3 @@ } ); } -