Merge remote-tracking branch 'lass/master'

This commit is contained in:
makefu 2017-06-28 08:47:23 +02:00
commit 74bbb2c0b1
No known key found for this signature in database
GPG key ID: 36F7711F3FC0F225
4 changed files with 33 additions and 27 deletions
Makefile
krebs/3modules
tv
1systems
2configs

View file

@ -51,13 +51,23 @@ $(if $(target_user),,$(error unbound variable: target_user))
$(if $(target_port),,$(error unbound variable: target_port))
$(if $(target_path),,$(error unbound variable: target_path))
whatsupnix = \
if type whatsupnix >/dev/null 2>&1; then \
whatsupnix $(1); \
else \
cat; \
fi
build = \
nix-build \
-Q \
--no-out-link \
--show-trace \
-I nixos-config=$(nixos-config) \
-I stockholm=$(stockholm) \
-E "with import <stockholm>; $(1)"
-E "with import <stockholm>; $(1)" \
$(2) \
|& $(call whatsupnix)
evaluate = \
nix-instantiate \
@ -66,7 +76,8 @@ evaluate = \
--show-trace \
-I nixos-config=$(nixos-config) \
-I stockholm=$(stockholm) \
-E "let eval = import <stockholm>; in with eval; $(1)"
-E "let eval = import <stockholm>; in with eval; $(1)" \
$(2)
ifeq ($(MAKECMDGOALS),)
$(error No goals specified)
@ -84,11 +95,7 @@ deploy:
$(ssh) $(target_user)@$(target_host) -p $(target_port) \
env STOCKHOLM_VERSION="$$STOCKHOLM_VERSION" \
nixos-rebuild -Q $(rebuild-command) --show-trace -I $(target_path) \
|& if type whatsupnix 2>/dev/null; then \
whatsupnix $(target_user)@$(target_host):$(target_port); \
else \
cat; \
fi
|& $(call whatsupnix,$(target_user)@$(target_host):$(target_port))
# usage: make populate system=foo
populate: populate-target = \
@ -126,10 +133,10 @@ install:
# usage: make test system=foo [target=bar] [method={eval,build}]
method ?= eval
ifeq ($(method),build)
test: command = nix-build --no-out-link
test: test = $(call build,$(1),$(2))
else
ifeq ($(method),eval)
test: command ?= nix-instantiate --eval --json --readonly-mode --strict
test: test ?= $(call evaluate,$(1),$(2)) --json --strict | jq -r .
else
$(error bad method: $(method))
endif
@ -141,6 +148,4 @@ else
test: wrapper = $(ssh) $(target_user)@$(target_host) -p $(target_port)
endif
test: populate
$(wrapper) \
$(command) --show-trace -I $(target_path) \
-A config.system.build.toplevel $(target_path)/stockholm
$(wrapper) $(call test,config.system.build.toplevel,-I $(target_path))

View file

@ -24,4 +24,6 @@ with import <stockholm/lib>;
type = types.user;
};
};
config.krebs.build.source.stockholm.file = mkDefault (toString <stockholm>);
}

View file

@ -79,15 +79,12 @@ with import <stockholm/lib>;
gimp
xsane
firefoxWrapper
chromiumDev
chromium
skype
libreoffice
kde4.l10n.de
kde4.plasma-nm
pidgin-with-plugins
pidginotr
kde4.print_manager
#foomatic_filters
#gutenprint
#cups_pdf_filter
@ -101,7 +98,7 @@ with import <stockholm/lib>;
security.wrappers = {
sendmail.source = "${pkgs.exim}/bin/sendmail"; # for cron
slock.slock = "${pkgs.slock}/bin/slock";
slock.source = "${pkgs.slock}/bin/slock";
};
security.pam.loginLimits = [
@ -138,7 +135,9 @@ with import <stockholm/lib>;
twoFingerScroll = true;
};
services.xserver.desktopManager.kde4.enable = true;
services.xserver.desktopManager.plasma5 = {
enable = true;
};
services.xserver.displayManager.auto = {
enable = true;
user = "vv";

View file

@ -1,20 +1,20 @@
{ config, lib, pkgs, ... }:
with import <stockholm/lib>;
{
{ config, lib, pkgs, ... }: let
builder = if getEnv "dummy_secrets" == "true"
then "buildbot"
else "tv";
in {
krebs.enable = true;
krebs.build = {
user = config.krebs.users.tv;
source = let inherit (config.krebs.build) host; in {
nixos-config.symlink = "stockholm/tv/1systems/${host.name}.nix";
secrets.file =
if getEnv "dummy_secrets" == "true"
then toString <stockholm/tv/dummy_secrets>
else "/home/tv/secrets/${host.name}";
secrets.file = getAttr builder {
buildbot = toString <stockholm/tv/dummy_secrets>;
tv = "/home/tv/secrets/${host.name}";
};
secrets-common.file = "/home/tv/secrets/common";
stockholm.file = "/home/tv/stockholm";
nixpkgs.git = {
url = https://github.com/NixOS/nixpkgs;
ref = "412b0a17aa2975e092c7ab95a38561c5f82908d4"; # nixos-17.03