···
75
-
default = "syncserver";
76
-
description = "User account under which syncserver runs.";
81
-
default = "syncserver";
82
-
description = "Group account under which syncserver runs.";
default = "http://localhost:5000/";
···
systemd.services.syncserver = let
syncServerEnv = pkgs.python.withPackages(ps: with ps; [ syncserver pasteScript ]);
129
+
user = "syncserver";
130
+
group = "syncserver";
after = [ "network.target" ];
description = "Firefox Sync Server";
···
path = [ pkgs.coreutils syncServerEnv ];
PermissionsStartOnly = true;
···
echo > ${cfg.privateConfig} '[syncserver]'
echo >> ${cfg.privateConfig} "secret = $(head -c 20 /dev/urandom | sha1sum | tr -d ' -')"
159
-
chown ${cfg.user}:${cfg.group} ${cfg.privateConfig}
149
+
chown ${user}:${group} ${cfg.privateConfig}
'' + optionalString (cfg.sqlUri == defaultSqlUri) ''
if ! test -e $(dirname ${defaultDbLocation}); then
mkdir -m 700 -p $(dirname ${defaultDbLocation})
163
-
chown ${cfg.user}:${cfg.group} $(dirname ${defaultDbLocation})
153
+
chown ${user}:${group} $(dirname ${defaultDbLocation})
# Move previous database file if it exists
oldDb="/var/db/firefox-sync-server.db"
mv $oldDb ${defaultDbLocation}
169
-
chown ${cfg.user}:${cfg.group} ${defaultDbLocation}
159
+
chown ${user}:${group} ${defaultDbLocation}
serviceConfig.ExecStart = "${syncServerEnv}/bin/paster serve ${syncServerIni}";
175
-
users.extraUsers = optionalAttrs (cfg.user == "syncserver")
177
-
name = "syncserver";
179
-
isSystemUser = true;
165
+
users.users.syncserver = {
166
+
group = "syncserver";
167
+
isSystemUser = true;
182
-
users.extraGroups = optionalAttrs (cfg.group == "syncserver")
184
-
name = "syncserver";
170
+
users.groups.syncserver = {};