| gio | bdaaa42 | 2026-07-23 10:22:54 +0400 | [diff] [blame] | 1 | { |
| 2 | description = "dodo dev shell"; |
| 3 | inputs = { |
| 4 | nixpkgs.url = "github:NixOS/nixpkgs/nixpkgs-unstable"; |
| 5 | systems.url = "github:nix-systems/default"; |
| 6 | flake-utils = { |
| 7 | url = "github:numtide/flake-utils"; |
| 8 | inputs.systems.follows = "systems"; |
| 9 | }; |
| 10 | # v1.33.1 |
| 11 | nixpkgs-kubectl.url = "github:NixOS/nixpkgs/076e8c6678d8c54204abcb4b1b14c366835a58bb"; |
| 12 | # v2.8.8 |
| 13 | nixpkgs-fluxcd.url = "github:NixOS/nixpkgs/e1ea2e5ee3decc21eaf91862bd3de37701e57595"; |
| 14 | }; |
| 15 | |
| 16 | outputs = |
| 17 | { nixpkgs, flake-utils, nixpkgs-kubectl, nixpkgs-fluxcd, ... }: |
| 18 | flake-utils.lib.eachDefaultSystem ( |
| 19 | system: |
| 20 | let |
| 21 | pkgs = nixpkgs.legacyPackages.${system}; |
| 22 | pkgs-kubectl = import nixpkgs-kubectl { inherit system; }; |
| 23 | pkgs-fluxcd = import nixpkgs-fluxcd { inherit system; }; |
| 24 | kubectl = pkgs-kubectl.kubectl; |
| 25 | fluxcd = pkgs-fluxcd.fluxcd; |
| 26 | alias-kubectl = pkgs.writeShellScriptBin "k" '' |
| 27 | exec ${kubectl}/bin/kubectl "$@" |
| 28 | ''; |
| 29 | in |
| 30 | { |
| 31 | devShells.default = pkgs.mkShell { |
| 32 | packages = [ |
| 33 | pkgs.bashInteractive |
| 34 | kubectl |
| 35 | fluxcd |
| 36 | pkgs.k9s |
| 37 | alias-kubectl |
| 38 | ]; |
| 39 | }; |
| 40 | } |
| 41 | ); |
| 42 | } |