Merge remote-tracking branch 'ni/master'
This commit is contained in:
commit
25c07e2c0a
tv
|
@ -52,9 +52,6 @@ with import <stockholm/lib>;
|
|||
networking.networkmanager.enable = true;
|
||||
|
||||
environment.systemPackages = with pkgs; [
|
||||
(pkgs.kdeApplications.callPackage
|
||||
(import <nixpkgs/pkgs/applications/kde/kde-locale-5.nix> "de" {})
|
||||
{})
|
||||
chromium
|
||||
firefoxWrapper
|
||||
gimp
|
||||
|
|
|
@ -80,6 +80,12 @@ with import <stockholm/lib>;
|
|||
dmesg = "dmesg -L --reltime";
|
||||
view = "vim -R";
|
||||
|
||||
deploy = pkgs.writeDash "deploy" ''
|
||||
set -eu
|
||||
cd ~/stockholm
|
||||
export SYSTEM="$1"
|
||||
exec nix-shell -I stockholm="$PWD" --run 'deploy --system="$SYSTEM"'
|
||||
'';
|
||||
reload = "systemctl reload";
|
||||
restart = "systemctl restart";
|
||||
start = "systemctl start";
|
||||
|
|
|
@ -31,7 +31,7 @@ with import <stockholm/lib>;
|
|||
|
||||
## other
|
||||
|
||||
https://nixos.org/channels/nixos-17.03/git-revision
|
||||
https://nixos.org/channels/nixos-17.09/git-revision
|
||||
https://nixos.org/channels/nixos-unstable/git-revision
|
||||
|
||||
## 2014-10-17
|
||||
|
|
|
@ -34,18 +34,24 @@ in {
|
|||
hosts = mkOption {
|
||||
type = with types; listOf str;
|
||||
};
|
||||
pkgs.ejabberdctl = mkOption {
|
||||
pkgs.ejabberd = mkOption {
|
||||
type = types.package;
|
||||
default = pkgs.writeDashBin "ejabberdctl" ''
|
||||
exec ${pkgs.ejabberd}/bin/ejabberdctl \
|
||||
--config ${toFile "ejabberd.yaml" (import ./config.nix {
|
||||
inherit pkgs;
|
||||
config = cfg;
|
||||
})} \
|
||||
--logs ${shell.escape cfg.user.home} \
|
||||
--spool ${shell.escape cfg.user.home} \
|
||||
"$@"
|
||||
'';
|
||||
default = pkgs.symlinkJoin {
|
||||
name = "ejabberd-wrapper";
|
||||
paths = [
|
||||
(pkgs.writeDashBin "ejabberdctl" ''
|
||||
exec ${pkgs.ejabberd}/bin/ejabberdctl \
|
||||
--config ${toFile "ejabberd.yaml" (import ./config.nix {
|
||||
inherit pkgs;
|
||||
config = cfg;
|
||||
})} \
|
||||
--logs ${shell.escape cfg.user.home} \
|
||||
--spool ${shell.escape cfg.user.home} \
|
||||
"$@"
|
||||
'')
|
||||
pkgs.ejabberd
|
||||
];
|
||||
};
|
||||
};
|
||||
registration_watchers = mkOption {
|
||||
type = types.listOf types.str;
|
||||
|
@ -66,7 +72,21 @@ in {
|
|||
};
|
||||
};
|
||||
config = lib.mkIf cfg.enable {
|
||||
environment.systemPackages = [ cfg.pkgs.ejabberdctl ];
|
||||
environment.systemPackages = [
|
||||
(pkgs.symlinkJoin {
|
||||
name = "ejabberd-sudo-wrapper";
|
||||
paths = [
|
||||
(pkgs.writeDashBin "ejabberdctl" ''
|
||||
set -efu
|
||||
cd ${shell.escape cfg.user.home}
|
||||
exec /run/wrappers/bin/sudo \
|
||||
-u ${shell.escape cfg.user.name} \
|
||||
${cfg.pkgs.ejabberd}/bin/ejabberdctl "$@"
|
||||
'')
|
||||
cfg.pkgs.ejabberd
|
||||
];
|
||||
})
|
||||
];
|
||||
|
||||
krebs.secret.files = {
|
||||
ejabberd-certfile = cfg.certfile;
|
||||
|
@ -79,7 +99,7 @@ in {
|
|||
after = [ "network.target" "secret.service" ];
|
||||
serviceConfig = {
|
||||
ExecStartPre = "${gen-dhparam} ${cfg.dhfile.path}";
|
||||
ExecStart = "${cfg.pkgs.ejabberdctl}/bin/ejabberdctl foreground";
|
||||
ExecStart = "${cfg.pkgs.ejabberd}/bin/ejabberdctl foreground";
|
||||
PermissionsStartOnly = true;
|
||||
SyslogIdentifier = "ejabberd";
|
||||
User = cfg.user.name;
|
||||
|
|
Loading…
Reference in a new issue