blob: 5a108db429dadec87a7b8100110e27916c002088 [file] [log] [blame]
giobdaaa422026-07-23 10:22:54 +04001{
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
gioc98082b2026-07-23 12:47:35 +040037 pkgs.k3sup
38 pkgs.git
giob7df27f2026-07-28 10:36:17 +040039 pkgs.go
40 pkgs.gnumake
41 pkgs.nodejs
gio9d8e08f2026-07-23 16:31:48 +040042 pkgs.kubernetes-helm
giob7df27f2026-07-28 10:36:17 +040043 pkgs.procps
44 pkgs.playwright
45 pkgs.playwright.browsers
giobdaaa422026-07-23 10:22:54 +040046 alias-kubectl
47 ];
giob7df27f2026-07-28 10:36:17 +040048
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";
giobdaaa422026-07-23 10:22:54 +040055 };
56 }
57 );
58}