--- /dev/null
+# vim: filetype=bash
+export PASSWORD_STORE_DIR=$(expand_path nixops/secrets)
+export NIXOPS_STATE=$(expand_path nixops/state/immaeEu.nixops)
+export NIXOPS_DEPLOYMENT=cef694f3-081d-11e9-b31f-0242ec186adf
+export NIX_PATH=nixpkgs=$(cat $(expand_path nix/sources.json) | jq -r '."nixpkgs-nixops".url')
+
+export NIXOPS_ENV_LOADED=1
+
+PATH_add $(expand_path scripts)
+PATH_add $(expand_path nixops/scripts)
+
+use nix
+watch_file $(expand_path nix/sources.json)
/result*
/versions_log
+.direnv/
mariadb = self.mariadb_pam;
}) # don’t put them as generic overlay because of home-manager
];
- _module.args = {
- pkgsNext = import <nixpkgsNext> {};
- pkgsPrevious = import <nixpkgsPrevious> {};
- };
services.journald.extraConfig = ''
MaxLevelStore="warning"
"url": "https://github.com/NixOS/nixpkgs-channels/archive/840c782d507d60aaa49aa9e3f6d0b0e780912742.tar.gz",
"url_template": "https://github.com/<owner>/<repo>/archive/<rev>.tar.gz"
},
- "nixpkgs-nixops-next": {
- "branch": "nixos-19.03",
- "description": "A read-only mirror of NixOS/nixpkgs tracking the released channels. Send issues and PRs to",
- "homepage": "https://github.com/NixOS/nixpkgs",
- "owner": "NixOS",
- "repo": "nixpkgs-channels",
- "rev": "34c7eb7545d155cc5b6f499b23a7cb1c96ab4d59",
- "sha256": "11z6ajj108fy2q5g8y4higlcaqncrbjm3dnv17pvif6avagw4mcb",
- "type": "tarball",
- "url": "https://github.com/NixOS/nixpkgs-channels/archive/34c7eb7545d155cc5b6f499b23a7cb1c96ab4d59.tar.gz",
- "url_template": "https://github.com/<owner>/<repo>/archive/<rev>.tar.gz"
- },
- "nixpkgs-nixops-previous": {
- "branch": "nixos-19.03",
- "description": "A read-only mirror of NixOS/nixpkgs tracking the released channels. Send issues and PRs to",
- "homepage": "https://github.com/NixOS/nixpkgs",
- "owner": "NixOS",
- "repo": "nixpkgs-channels",
- "rev": "34c7eb7545d155cc5b6f499b23a7cb1c96ab4d59",
- "sha256": "11z6ajj108fy2q5g8y4higlcaqncrbjm3dnv17pvif6avagw4mcb",
- "type": "tarball",
- "url": "https://github.com/NixOS/nixpkgs-channels/archive/34c7eb7545d155cc5b6f499b23a7cb1c96ab4d59.tar.gz",
- "url_template": "https://github.com/<owner>/<repo>/archive/<rev>.tar.gz"
- },
"overlays-ldapvi": {
"ref": "master",
"repo": "http://www.lichteblau.com/git/ldapvi.git",
-export
-PASSWORD_STORE_DIR = $(shell pwd)/secrets
-NIXOPS_STATE ?= ./state/eldiron.nixops
-NIXOPS_DEPLOYMENT = cef694f3-081d-11e9-b31f-0242ec186adf
-nixpkgs ?= $(shell cat ../nix/sources.json | jq -r '."nixpkgs-nixops".url')
-nixpkgsNext ?= $(shell cat ../nix/sources.json | jq -r '."nixpkgs-nixops-next".url')
-nixpkgsPrevious ?= $(shell cat ../nix/sources.json | jq -r '."nixpkgs-nixops-previous".url')
-NIX_PATH = nixpkgs=${nixpkgs}:nixpkgsNext=${nixpkgsNext}:nixpkgsPrevious=${nixpkgsPrevious}
-
-NIXOPS := $(shell NIX_PATH=$(NIX_PATH) nix-build --no-out-link -E "with import <nixpkgs> { overlays = builtins.attrValues (import ../overlays); }; nixops")/bin/nixops
-NIXOPS_PRIV = ./scripts/with_env $(NIXOPS)
+ifndef NIXOPS_ENV_LOADED
+ $(error "Please load environment with direnv")
+endif
+
+NIXOPS_PRIV = ./scripts/with_env nixops
###### Current channel information
nix-info:
###### Pull environment and deployment from remote
pull_deployment:
- @if $(NIXOPS) info -d $(NIXOPS_DEPLOYMENT) 2>/dev/null >/dev/null ; then \
+ @if nixops info -d $(NIXOPS_DEPLOYMENT) 2>/dev/null >/dev/null ; then \
echo "This will remove your current deployment file and recreate it!. Continue? [y/N]" && \
read y && \
[ "$$y" = "y" -o "$$y" = "Y" ] && \
- $(NIXOPS) delete --force -d $(NIXOPS_DEPLOYMENT); \
+ nixops delete --force -d $(NIXOPS_DEPLOYMENT); \
fi
- pass show Nixops/Deployment | $(NIXOPS) import
- $(NIXOPS) modify -d $(NIXOPS_DEPLOYMENT) "$$(pwd)/default.nix"
+ pass show Nixops/Deployment | nixops import
+ nixops modify -d $(NIXOPS_DEPLOYMENT) "$$(pwd)/default.nix"
.PHONY: pull_deployment
deployment_is_set:
- $(NIXOPS) info -d $(NIXOPS_DEPLOYMENT) 2>/dev/null >/dev/null
+ nixops info -d $(NIXOPS_DEPLOYMENT) 2>/dev/null >/dev/null
.PHONY: deployment_is_set
###### Push deployment information to password store
push_deployment:
- $(NIXOPS) export | pass insert -m Nixops/Deployment
+ nixops export | pass insert -m Nixops/Deployment
.PHONY: push
#!/usr/bin/env bash
-if [ -z "$NIXOPS" ]; then
- echo "Please set NIXOPS to the nixops command"
+if [ -z "$NIXOPS_ENV_LOADED" ]; then
+ echo "Please load the environment with direnv"
exit 1;
fi
finish() {
rm -rf "$TEMP"
- $NIXOPS set-args --unset privateFiles
+ nixops set-args --unset privateFiles
}
trap finish EXIT
for file in $files; do
pass show "Nixops/files/$file" > $TEMP/$file
done
-$NIXOPS set-args --argstr privateFiles "$TEMP"
+nixops set-args --argstr privateFiles "$TEMP"
"$@"
--- /dev/null
+{ pkgs ? import <nixpkgs> { overlays = builtins.attrValues (import ./overlays); } }:
+pkgs.mkShell {
+ buildInputs = [ pkgs.nixops pkgs.niv pkgs.pass pkgs.curl pkgs.shellcheck pkgs.jq pkgs.gnumake ];
+}