This repository has been archived by the owner on Oct 21, 2024. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 1
/
shell.nix
49 lines (45 loc) · 1.83 KB
/
shell.nix
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
{pkgs}: let
mergeShells = shells:
pkgs.mkShell {
shellHook = builtins.concatStringsSep "\n" (map (s: s.shellHook or "") shells);
buildInputs = builtins.concatLists (map (s: s.buildInputs or []) shells);
nativeBuildInputs = builtins.concatLists (map (s: s.nativeBuildInputs or []) shells);
paths = builtins.concatLists (map (s: s.paths or []) shells);
};
frontend_shell = pkgs.callPackage ./kontrol-frontend/shell.nix {inherit pkgs;};
backend_shell = pkgs.callPackage ./kontrol-service/shell.nix {inherit pkgs;};
kardinal_shell = with pkgs;
pkgs.mkShell {
buildInputs = [awscli dive kubectl kustomize kubernetes-helm minikube istioctl tilt reflex];
shellHook = ''
source <(kubectl completion bash)
source <(minikube completion bash)
printf '\u001b[31m
:::::
:::::::
:: :::
::: ::
:: ::- :::
::: :::
::: ::: :::
::: :: ::
::: :: :::
::: ::: ::
::: :: ::
:::: :::: ::
:::: :::: :::
:::::::::::::: ::::
::::::
:::::::::::::::::::::
::::::
:::::
:::
\u001b[0m
Starting Kardinal dev shell.
\e[32m
\e[0m
'
'';
};
in
mergeShells [backend_shell frontend_shell kardinal_shell]