Merge remote-tracking branch 'cd/master'
This commit is contained in:
commit
52f5027565
|
@ -1,19 +1,12 @@
|
|||
{ config, lib, ... }:
|
||||
_:
|
||||
|
||||
let
|
||||
lib = import <stockholm/lib>;
|
||||
in
|
||||
|
||||
with builtins;
|
||||
with lib;
|
||||
|
||||
let out = import <stockholm/lib> // rec {
|
||||
|
||||
eq = x: y: x == y;
|
||||
ne = x: y: x != y;
|
||||
|
||||
mod = x: y: x - y * (x / y);
|
||||
|
||||
addName = name: set:
|
||||
set // { inherit name; };
|
||||
|
||||
addNames = mapAttrs addName;
|
||||
let out = lib // rec {
|
||||
|
||||
guard = spec@{ type, value, ... }:
|
||||
assert isOptionType type;
|
||||
|
@ -26,12 +19,9 @@ let out = import <stockholm/lib> // rec {
|
|||
]));
|
||||
|
||||
types = import ./types.nix {
|
||||
inherit config;
|
||||
lib = lib // { inherit genid optionalTrace; };
|
||||
};
|
||||
|
||||
dir.has-default-nix = path: pathExists (path + "/default.nix");
|
||||
|
||||
genid = import ./genid.nix { lib = lib // out; };
|
||||
genid_signed = x: ((genid x) + 16777216) / 2;
|
||||
git = import ./git.nix { lib = lib // out; };
|
||||
|
|
|
@ -1,7 +1,12 @@
|
|||
{ lib, ... }:
|
||||
|
||||
with lib;
|
||||
|
||||
let
|
||||
inherit (lib) addNames escapeShellArg makeSearchPath optionalString;
|
||||
addName = name: set:
|
||||
set // { inherit name; };
|
||||
|
||||
addNames = mapAttrs addName;
|
||||
|
||||
commands = addNames {
|
||||
git-receive-pack = {};
|
||||
|
|
|
@ -1,14 +1,9 @@
|
|||
{ config, lib, ... }:
|
||||
{ lib, ... }:
|
||||
|
||||
with builtins;
|
||||
with lib;
|
||||
with types;
|
||||
|
||||
let
|
||||
# Inherited attributes are used in submodules that have their own `config`.
|
||||
inherit (config.krebs) build users;
|
||||
in
|
||||
|
||||
types // rec {
|
||||
|
||||
host = submodule ({ config, ... }: {
|
||||
|
@ -27,7 +22,6 @@ types // rec {
|
|||
|
||||
owner = mkOption {
|
||||
type = user;
|
||||
default = users.krebs;
|
||||
};
|
||||
|
||||
extraZones = mkOption {
|
||||
|
@ -49,10 +43,6 @@ types // rec {
|
|||
ssh.pubkey = mkOption {
|
||||
type = nullOr ssh-pubkey;
|
||||
default = null;
|
||||
apply = x:
|
||||
optionalTrace (x == null && config.owner.name == build.user.name)
|
||||
"The option `krebs.hosts.${config.name}.ssh.pubkey' is unused."
|
||||
x;
|
||||
};
|
||||
ssh.privkey = mkOption {
|
||||
type = nullOr ssh-privkey;
|
||||
|
@ -187,7 +177,6 @@ types // rec {
|
|||
};
|
||||
owner = mkOption {
|
||||
type = user;
|
||||
default = users.root;
|
||||
};
|
||||
group-name = mkOption {
|
||||
type = str;
|
||||
|
|
|
@ -17,7 +17,7 @@ with config.krebs.lib;
|
|||
in {}
|
||||
// import ./builders.nix args
|
||||
// mapAttrs (_: flip callPackage {})
|
||||
(filterAttrs (_: dir.has-default-nix)
|
||||
(filterAttrs (_: dir: pathExists (dir + "/default.nix"))
|
||||
(subdirsOf ./.))
|
||||
// {
|
||||
empty = pkgs.runCommand "empty-1.0.0" {} "mkdir $out";
|
||||
|
|
|
@ -1,6 +1,10 @@
|
|||
let
|
||||
lib = import <nixpkgs/lib> // builtins // {
|
||||
shell = import ./shell.nix { inherit lib; };
|
||||
|
||||
eq = x: y: x == y;
|
||||
ne = x: y: x != y;
|
||||
mod = x: y: x - y * (x / y);
|
||||
};
|
||||
in
|
||||
|
||||
|
|
|
@ -138,6 +138,11 @@ with config.krebs.lib;
|
|||
fsType = "btrfs";
|
||||
options = ["defaults" "noatime" "ssd" "compress=lzo"];
|
||||
};
|
||||
"/bku" = {
|
||||
device = "/dev/mapper/xuvga-bku";
|
||||
fsType = "btrfs";
|
||||
options = ["defaults" "noatime" "ssd" "compress=lzo"];
|
||||
};
|
||||
"/home" = {
|
||||
device = "/dev/mapper/xuvga-home";
|
||||
fsType = "btrfs";
|
||||
|
|
|
@ -178,6 +178,11 @@ in
|
|||
pkgs.writeBashBin "q" ''
|
||||
set -eu
|
||||
export PATH=/var/empty
|
||||
(${q-todo}) || :
|
||||
if [ "$PWD" != "$HOME" ]; then
|
||||
(HOME=$PWD; ${q-todo}) || :
|
||||
fi
|
||||
echo
|
||||
${q-cal}
|
||||
echo
|
||||
${q-isodate}
|
||||
|
@ -189,8 +194,4 @@ pkgs.writeBashBin "q" ''
|
|||
(${q-online}) &
|
||||
(${q-thermal_zone}) &
|
||||
wait
|
||||
${q-todo}
|
||||
if [ "$PWD" != "$HOME" ]; then
|
||||
(HOME=$PWD; ${q-todo})
|
||||
fi
|
||||
''
|
||||
|
|
Loading…
Reference in a new issue