| 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 |
| gio | c98082b | 2026-07-23 12:47:35 +0400 | [diff] [blame] | 37 | pkgs.k3sup |
| 38 | pkgs.git |
| gio | b7df27f | 2026-07-28 10:36:17 +0400 | [diff] [blame] | 39 | pkgs.go |
| 40 | pkgs.gnumake |
| 41 | pkgs.nodejs |
| gio | 9d8e08f | 2026-07-23 16:31:48 +0400 | [diff] [blame] | 42 | pkgs.kubernetes-helm |
| gio | b7df27f | 2026-07-28 10:36:17 +0400 | [diff] [blame] | 43 | pkgs.procps |
| 44 | pkgs.playwright |
| 45 | pkgs.playwright.browsers |
| gio | bdaaa42 | 2026-07-23 10:22:54 +0400 | [diff] [blame] | 46 | alias-kubectl |
| 47 | ]; |
| gio | b7df27f | 2026-07-28 10:36:17 +0400 | [diff] [blame] | 48 | |
| 49 | PLAYWRIGHT_NODEJS_PATH = "${pkgs.nodejs}/bin/node"; |
| 50 | PLAYWRIGHT_CLI_PATH = "${pkgs.playwright}/cli.js"; |
| 51 | PLAYWRIGHT_BROWSERS_PATH = "${pkgs.playwright.browsers}"; |
| 52 | |
| 53 | PLAYWRIGHT_SKIP_BROWSER_DOWNLOAD = "1"; |
| 54 | PLAYWRIGHT_SKIP_VALIDATE_HOST_REQUIREMENTS = "true"; |
| gio | 3a375eb | 2026-07-29 16:00:22 +0400 | [diff] [blame^] | 55 | |
| 56 | GOPROXY = "https://goproxy.v1.dodo.cloud"; |
| 57 | GONOPROXY = "none"; |
| gio | bdaaa42 | 2026-07-23 10:22:54 +0400 | [diff] [blame] | 58 | }; |
| 59 | } |
| 60 | ); |
| 61 | } |