{ config, lib, pkgs, system, stablePkgs, ... }: let cfg = config.nixcfg; in { options = { nixcfg.dev.enable = lib.mkEnableOption "Development Programs to be available outside of a devshell"; }; config = lib.mkIf cfg.dev.enable { virtualisation.podman.enable = true; environment = { systemPackages = with pkgs; [ bison bruno bun stablePkgs.cargo-generate cargo-make cargo-watch ccache cmake dfu-util dioxus-cli dotnet-sdk # esp-idf-full flex gh gnumake gperf icu jujutsu libffi libiconv libusb1 ninja nodejs pipenv pkg-config pnpm pnpm prettier rustup systemfd uv ] ++ lib.optionals stdenv.hostPlatform.isLinux [ gcc clang ] ++ lib.optionals (builtins.elem system [ "aarch64-darwin" "aarch64-linux" "x86_64-linux" ]) [ deno neovide ]; }; }; }