···253253 configuration.
254254 </para>
255255 </listitem>
256256+ <listitem>
257257+ <para>
258258+ The option <literal>services.duplicati.dataDir</literal> has
259259+ been added to allow changing the location of duplicati’s
260260+ files.
261261+ </para>
262262+ </listitem>
256263 </itemizedlist>
257264 </section>
258265</section>
+2
nixos/doc/manual/release-notes/rl-2205.section.md
···101101 e.g. Wayland.
102102103103- The `services.stubby` module was converted to a [settings-style](https://github.com/NixOS/rfcs/blob/master/rfcs/0042-config-option.md) configuration.
104104+105105+- The option `services.duplicati.dataDir` has been added to allow changing the location of duplicati's files.
+26-9
nixos/modules/services/backup/duplicati.nix
···1818 '';
1919 };
20202121+ dataDir = mkOption {
2222+ type = types.str;
2323+ default = "/var/lib/duplicati";
2424+ description = ''
2525+ The directory where Duplicati stores its data files.
2626+2727+ <note><para>
2828+ If left as the default value this directory will automatically be created
2929+ before the Duplicati server starts, otherwise you are responsible for ensuring
3030+ the directory exists with appropriate ownership and permissions.
3131+ </para></note>
3232+ '';
3333+ };
3434+2135 interface = mkOption {
2236 default = "127.0.0.1";
2337 type = types.str;
···4559 description = "Duplicati backup";
4660 after = [ "network.target" ];
4761 wantedBy = [ "multi-user.target" ];
4848- serviceConfig = {
4949- User = cfg.user;
5050- Group = "duplicati";
5151- StateDirectory = "duplicati";
5252- ExecStart = "${pkgs.duplicati}/bin/duplicati-server --webservice-interface=${cfg.interface} --webservice-port=${toString cfg.port} --server-datafolder=/var/lib/duplicati";
5353- Restart = "on-failure";
5454- };
6262+ serviceConfig = mkMerge [
6363+ {
6464+ User = cfg.user;
6565+ Group = "duplicati";
6666+ ExecStart = "${pkgs.duplicati}/bin/duplicati-server --webservice-interface=${cfg.interface} --webservice-port=${toString cfg.port} --server-datafolder=${cfg.dataDir}";
6767+ Restart = "on-failure";
6868+ }
6969+ (mkIf (cfg.dataDir == "/var/lib/duplicati") {
7070+ StateDirectory = "duplicati";
7171+ })
7272+ ];
5573 };
56745775 users.users = lib.optionalAttrs (cfg.user == "duplicati") {
5876 duplicati = {
5977 uid = config.ids.uids.duplicati;
6060- home = "/var/lib/duplicati";
6161- createHome = true;
7878+ home = cfg.dataDir;
6279 group = "duplicati";
6380 };
6481 };
+1-1
nixos/modules/services/misc/mautrix-telegram.nix
···145145 --config='${settingsFile}' \
146146 --registration='${registrationFile}'
147147 fi
148148-148148+ '' + lib.optionalString (pkgs.mautrix-telegram ? alembic) ''
149149 # run automatic database init and migration scripts
150150 ${pkgs.mautrix-telegram.alembic}/bin/alembic -x config='${settingsFile}' upgrade head
151151 '';
···2020 # The websites yt-dlp deals with are a very moving target. That means that
2121 # downloads break constantly. Because of that, updates should always be backported
2222 # to the latest stable release.
2323- version = "2021.12.25";
2323+ version = "2021.12.27";
24242525 src = fetchPypi {
2626 inherit pname;
2727 version = builtins.replaceStrings [ ".0" ] [ "." ] version;
2828- sha256 = "sha256-h8E1F8VVEM+sqGFyYN43YCkDXbwvhxWnQmulZS6P4hI=";
2828+ sha256 = "sha256-IkTfN1l1FIfnlrI7ZyFr7pjnCDKjpDwlJrCw4Lv7y1s=";
2929 };
30303131 propagatedBuildInputs = [ websockets mutagen ]