Merge remote-tracking branch 'lass/master'
This commit is contained in:
commit
74bbb2c0b1
29
Makefile
29
Makefile
|
@ -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))
|
||||
|
|
|
@ -24,4 +24,6 @@ with import <stockholm/lib>;
|
|||
type = types.user;
|
||||
};
|
||||
};
|
||||
|
||||
config.krebs.build.source.stockholm.file = mkDefault (toString <stockholm>);
|
||||
}
|
||||
|
|
|
@ -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";
|
||||
|
|
|
@ -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
|
||||
|
|
Loading…
Reference in a new issue