{ description = "Flake to work with homelab setup"; inputs = { nixpkgs.url = "github:NixOS/nixpkgs/nixpkgs-unstable"; flake-utils.url = "github:numtide/flake-utils"; }; outputs = { nixpkgs, flake-utils, ... }: flake-utils.lib.eachDefaultSystem (system: let lib = nixpkgs.lib; # Import nixpkgs to access packages pkgs = import nixpkgs { inherit system; config = { allowUnfreePredicate = pkg: builtins.elem (lib.getName pkg) [ "terraform" ]; }; }; in { # Define the devShell for the current system devShell = pkgs.mkShell { buildInputs = with pkgs; [ kubernetes-helm kubectl nil terraform tflint typescript-language-server prettier jq openssl awscli2 # Adding node for copilot nodejs_24 # cli tools nodePackages.cdktf-cli ]; }; } ); }