# ## vmdk ### nixops-vmdk: $(dir $(NIXOPS_STATE))/virtualbox/nixops.vmdk .PHONY: $(dir $(NIXOPS_STATE))/virtualbox/nixops.vmdk $(dir $(NIXOPS_STATE))/virtualbox/nixops.vmdk: # NOTE: user's TMPDIR may be too small TMPDIR=/tmp \ time nix $(NIX_FLAGS) build \ --out-link .cache/nixops/virtualbox \ --argstr system x86_64-linux \ -f "" # ## create ### nixops-create: $(dir $(NIXOPS_STATE)) $(if $(filter $(NIXOPS_DEPLOYMENT),$(nixops-deployment)),,\ nixops create \ $(NIXOPS_CREATE) \ install/logical.nix \ install/physical.nix) nixops-modify: $(NIXOPS_STATE) nixops modify \ $(NIXOPS_MODIFY) \ install/logical.nix \ install/physical.nix $(dir $(NIXOPS_STATE)): mkdir -p $@ nixops-deployment = $(shell \ test ! -f $(NIXOPS_STATE) || \ sqlite3 $(NIXOPS_STATE) \ "select value from DeploymentAttrs \ where name='name' and value='$(NIXOPS_DEPLOYMENT)';") # ## deploy ### nixops-deploy: nixops-create sudo modprobe vboxnetadp sudo modprobe vboxnetflt time nixops deploy $(NIXOPS_OPTS) $(NIX_DEPLOY_FLAGS) #TMPDIR=/tmp \ #time disnixos-env --use-nixops \ # -s install/disnix/services.nix \ # -d install/disnix/distribution.nix \ # -n install/logical.nix \ # -n install/physical.nix %/offline: NIX_BUILD_FLAGS+=--option substituters "" %/offline: NIX_DEPLOY_FLAGS+=--option substituters "" %/offline: % %/verbose: NIX_FLAGS+=-v -v -v %/verbose: % nixops-stop: nixops stop # ## state ### nixops-state-dump: $(NIXOPS_STATE) sqlite3 $(NIXOPS_STATE) .dump nixops-privateIpv4: sqlite3 $(NIXOPS_STATE) \ 'update ResourceAttrs set value = "$(IPv4)" where name="privateIpv4"'