diff options
Diffstat (limited to 'nixops/scripts')
-rwxr-xr-x | nixops/scripts/setup | 90 | ||||
-rwxr-xr-x | nixops/scripts/with_env | 22 |
2 files changed, 0 insertions, 112 deletions
diff --git a/nixops/scripts/setup b/nixops/scripts/setup deleted file mode 100755 index db0f353..0000000 --- a/nixops/scripts/setup +++ /dev/null | |||
@@ -1,90 +0,0 @@ | |||
1 | #!/usr/bin/env bash | ||
2 | |||
3 | set -euo pipefail | ||
4 | |||
5 | if ! which nix 2>/dev/null >/dev/null; then | ||
6 | cat <<-EOF | ||
7 | nix is needed, please install it: | ||
8 | > curl https://nixos.org/nix/install | sh | ||
9 | (or any other way handled by your distribution) | ||
10 | EOF | ||
11 | exit 1 | ||
12 | fi | ||
13 | |||
14 | if [ "${NIX_STORE:-/nix/store}" != "/nix/store" ]; then | ||
15 | cat <<-EOF | ||
16 | Nix store outside of /nix/store is not supported | ||
17 | EOF | ||
18 | exit 1 | ||
19 | fi | ||
20 | |||
21 | if ! which direnv 2>/dev/null >/dev/null; then | ||
22 | cat <<-EOF | ||
23 | direnv is needed, please install it | ||
24 | EOF | ||
25 | exit 1 | ||
26 | fi | ||
27 | |||
28 | if [ -z "$NIXOPS_ENV_LOADED" ]; then | ||
29 | cat <<-EOF | ||
30 | direnv environment needs to be loaded | ||
31 | EOF | ||
32 | exit 1 | ||
33 | fi | ||
34 | |||
35 | if [ "$(git config --get include.path)" != "../.gitconfig" ]; then | ||
36 | cat <<-EOF | ||
37 | it is recommended to include the .gitconfig file into (local) git configuration: | ||
38 | git config --local include.path '../.gitconfig' | ||
39 | Run this command? [y/N] | ||
40 | EOF | ||
41 | read y | ||
42 | if [ "$y" = "y" -o "$y" = "Y" ]; then | ||
43 | git config --local include.path '../.gitconfig' | ||
44 | fi | ||
45 | fi | ||
46 | |||
47 | for key in public_keys/*; do | ||
48 | fpr=$(cat "$key" | gpg --import-options show-only --import --with-colons | grep -e "^pub" | cut -d':' -f5) | ||
49 | gpg --list-key "$fpr" >/dev/null 2>/dev/null && imported=yes || imported=no | ||
50 | # /usr/share/doc/gnupg/DETAILS field 2 | ||
51 | (cat "$key" | gpg --import-options show-only --import --with-colons | | ||
52 | grep -E '^pub:' | | ||
53 | cut -d':' -f2 | | ||
54 | grep -q '[fu]') && signed=yes || signed=no | ||
55 | if [ "$signed" = no -o "$imported" = no ] ; then | ||
56 | echo "The key for $key needs to be imported and signed (a local signature is enough)" | ||
57 | cat "$key" | gpg --import-options show-only --import | ||
58 | echo "Continue? [y/N]" | ||
59 | read y | ||
60 | if [ "$y" = "y" -o "$y" = "Y" ]; then | ||
61 | cat "$key" | gpg --import | ||
62 | gpg --expert --edit-key "$fpr" lsign quit | ||
63 | else | ||
64 | echo "Aborting" | ||
65 | exit 1 | ||
66 | fi | ||
67 | fi | ||
68 | done | ||
69 | |||
70 | if nix show-config --json | jq -e '.sandbox.value == "true"' >/dev/null; then | ||
71 | cat <<-EOF | ||
72 | There used to be some impure derivations (grep __noChroot), you may need | ||
73 | sandbox = "relaxed" | ||
74 | in /etc/nix/nix.conf | ||
75 | you may also want to add | ||
76 | keep-outputs = true | ||
77 | keep-derivations = true | ||
78 | to prevent garbage collector from deleting build dependencies (they take a lot of time to build) | ||
79 | and | ||
80 | allow-import-from-derivation = false | ||
81 | as an attempt to avoid having build-time derivations (doesn’t work for all packages) | ||
82 | press key to continue | ||
83 | EOF | ||
84 | read y | ||
85 | fi | ||
86 | |||
87 | cat <<-EOF | ||
88 | All set up. | ||
89 | Please make sure you’re using make commands when deploying | ||
90 | EOF | ||
diff --git a/nixops/scripts/with_env b/nixops/scripts/with_env deleted file mode 100755 index c570ccf..0000000 --- a/nixops/scripts/with_env +++ /dev/null | |||
@@ -1,22 +0,0 @@ | |||
1 | #!/usr/bin/env bash | ||
2 | |||
3 | if [ -z "$NIXOPS_ENV_LOADED" ]; then | ||
4 | echo "Please load the environment with direnv" | ||
5 | exit 1; | ||
6 | fi | ||
7 | |||
8 | umask 0077 | ||
9 | TEMP=$(mktemp -d /tmp/XXXXXX-nixops-files) | ||
10 | chmod go-rwx $TEMP | ||
11 | |||
12 | finish() { | ||
13 | rm -rf "$TEMP" | ||
14 | } | ||
15 | |||
16 | trap finish EXIT | ||
17 | |||
18 | sops -d secrets/vars.yml | yq -r .ssl_keys.nix_repository > $TEMP/id_ed25519 | ||
19 | |||
20 | export SSH_IDENTITY_FILE="$TEMP/id_ed25519" | ||
21 | |||
22 | "$@" | ||