summary refs log tree commit diff
path: root/nixos/modules/services/backup
Commit message (Collapse)AuthorAge
* nixos/mysqlBackup: set service TypeVlastimil Holer2022-02-18
| | | | | | | | fixes #158802 Sets the mysql backup systemd service type to "oneshot" to ensure the service is marked as started after the backup script fully proceeds. This allows to reliably depend on completing of this service by other services.
* nixos/borgbackup: remove literalDocBook in descriptionNaïm Favier2022-01-20
|
* Merge pull request #138386 from Yarny0/tsm-clientSandro2022-01-18
|\
| * nixos/tsm-{client,backup}: use new type `nonEmptyStr`Yarny02022-01-17
| | | | | | | | | | | | | | | | | | | | | | The module option type `nonEmptyStr` was introduced in commit https://github.com/NixOS/nixpkgs/commit/a3c5f0cba8fa9c4d9782ef83757be6e4028f54b7 The tsm modules previously simply used `strMatching ".+"` to prevent empty option strings, but the new type is more thorough as it also catches space-only strings.
| * nixos/tsm-backup: enable most systemd sandboxing optionsYarny02022-01-17
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | This enables some systemd sandboxing options for the `tsm-backup.service`. Those settings have been determined by expermentation. This commit tries hard to protect the filesystem from write access, but not to hide anything from read access, so users can backup all files they choose to backup. An exception are API filesystems (`/dev`, `/proc`, `/sys`): As their "files" are not stored on persistent storage, they are sandboxed away as much as possible. Note that the service still has to run with root privileges to reach files with limited access permissions. The obvious alternative to use a dedicated user account and the `CAP_DAC_READ_SEARCH` capability to permit system-wide read access while blocking write access does not work. Experiments have shown that `dsmc` verifies access permissions for each file before attempting to open it for reading. Hence `dsmc` refuses to copy files where the file permission mode blocks read access -- even if process capabilities would allow it to proceed irrespective of permissions.
| * nixos/tsm-{client,backup}: update links in module commentsYarny02022-01-17
| | | | | | | | | | | | IBM has changed the URL structures of their support web pages. The commit at hand updates URLs in two comments so they follow the new structure.
* | nixos/borgbackup: move systemd.timers logic into single blockFelix Buehler2022-01-18
| |
* | nixos/borgbackup: start remote backup only if network is availableFelix Buehler2022-01-17
| |
* | nixos/borgbackup: Add a persistentTimer option.blargg2022-01-17
| | | | | | | | | | Persistent starts the backup service on power on if it was missed while the system was powered down, for example.
* | nixos/borgbackup: allow empty archive base nameWinter2022-01-16
|/
* Merge pull request #149532 from pennae/split-docs-buildRobert Hensing2022-01-04
|\ | | | | nixos/*: split docs build
| * nixos/documentation: split options doc buildpennae2022-01-02
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | most modules can be evaluated for their documentation in a very restricted environment that doesn't include all of nixpkgs. this evaluation can then be cached and reused for subsequent builds, merging only documentation that has changed into the cached set. since nixos ships with a large number of modules of which only a few are used in any given config this can save evaluation a huge percentage of nixos options available in any given config. in tests of this caching, despite having to copy most of nixos/, saves about 80% of the time needed to build the system manual, or about two second on the machine used for testing. build time for a full system config shrank from 9.4s to 7.4s, while turning documentation off entirely shortened the build to 7.1s.
* | nixos/restic-rest-server: Autocreate empty .htpasswd if needed for service bootAneesh Agrawal2022-01-02
| | | | | | | | | | | | | | | | When `privateRepos = true`, the service will not start if the `.htpasswd` does not exist. Use `systemd-tmpfiles` to autocreate an (empty) file to ensure the service can boot before actual `htpasswd` contents are registered. This is safe as restic-rest-server will deny all entry if the file is empty.
* | nixos/duplicati: Add dataDir to serviceLyndon Sanche2021-12-29
|/ | | | | | | | Other services such as minecraft-server and plex allow configuration of the dataDir option, allowing the files stored by each service to be in a custom location. Co-authored-by: Aaron Andersen <aaron@fosslib.net>
* Merge pull request #148785 from pennae/more-option-doc-staticizingGraham Christensen2021-12-17
|\ | | | | treewide: more defaultText for options
| * nixos/tarsnap, nixos/neo4j: defaultText for submodule optionspennae2021-12-09
| | | | | | | | | | | | | | unfortunately we don't have a good way to represent defaults that reference other values of the current submodule, so we just use the relative path of the referenced value and assume that the submodule was declared as `rec`.
| * treewide: add defaultText for options using other shortcut bindingspennae2021-12-09
| |
* | tarsnap service: fix escaping (#150802)Nikolay Amiantov2021-12-16
| |
* | Merge pull request #146815 from ElvishJerricco/systemd-utils-expressionsajs1242021-12-08
|\ \ | | | | | | Move systemd-lib.nix and systemd-unit-options.nix into utils
| * | Move systemd-lib.nix and systemd-unit-options.nix into utilsWill Fancher2021-11-20
| | |
* | | Merge pull request #147441 from pennae/option-doc-staticizingRobert Hensing2021-12-06
|\ \ \ | | | | | | | | nixos/*: add trivial defaultText to options where applicable
| * | | nixos/*: add trivial defaultText for options with simple defaultspennae2021-12-02
| | |/ | |/|
* / | Revert "nixos/borgbackup: specify systemd WorkingDirectory"Kerstin Humm2021-12-03
|/ / | | | | | | | | | | | | This reverts commit 62ab77a322514cfcd24d7cfd41c7e00c9a20f0b8. This broke nixosTests.borgbackup: https://github.com/NixOS/nixpkgs/pull/143995#issuecomment-985136152
* / nixos/borgbackup: specify systemd WorkingDirectoryKerstin Humm2021-10-31
|/
* nixos/restic: rename s3CredentialsFile to environmentFileeyjhb2021-10-26
| | | | | | | This is done as the s3CredentialsFile specifies the environmentFile for the systemd service, which can be used for more than just s3. Co-authored-by: Cole Helbling <cole.e.helbling@outlook.com>
* nixos/borgbackup: allow dump scripts as stdin inputspennae2021-10-22
| | | | | | borg is able to process stdin during backups when backing up the special path -, which can be very useful for backing up things that can be streamed (eg database dumps, zfs snapshots).
* nixos/doc: clean up defaults and examplesNaïm Favier2021-10-04
|
* tarsnap: always ping ipv4 address in preStartWei Tang2021-09-29
|
* nixos/syncoid: Delegate permissions to parent dataset if target is missingElis Hirwing2021-09-27
| | | | | | | | | | | | | | This is to address a regression introduced in #131118. When syncing the first dataset, syncoid expects that the target dataset doesn't exist to have a clean slate to work with. So during runtime we'll check if the target dataset does exist and if it doesn't - delegate the permissions to the parent dataset instead. But then, on unallow, we do the unallow on both the target and the parent since the target dataset should have been created at this point, so the unallow can't know which dataset that got permissions just by which datasets exists.
* Merge master into staging-nextgithub-actions[bot]2021-09-14
|\
| * Merge pull request #133166 from symphorien/nonogroupGuillaume Girol2021-09-13
| |\ | | | | | | Don't default to nogroup for the primary group of users.
| | * nixos: define the primary group of users where neededGuillaume Girol2021-09-12
| | |
* | | Merge master into staging-nextgithub-actions[bot]2021-09-10
|\| |
| * | Merge pull request #136460 from misuzu/sanoid-recursive-zfsElis Hirwing2021-09-10
| |\ \ | | | | | | | | nixos/sanoid: allow zfs value for recursive
| | * | nixos/sanoid: allow zfs value for recursivemisuzu2021-09-02
| | |/
* | | Merge master into staging-nextgithub-actions[bot]2021-09-10
|\| |
| * | treewide: "does not exists" -> "does not exist"Alyssa Ross2021-09-09
| |/ | | | | | | | | | | | | I noticed this minor grammar mistake when running update.nix, and then while grepping to find the source I noticed we had it a few times in Nixpkgs. Just as easy to fix treewide as it was to fix the one occurrence I noticed.
* | Merge pull request #132916 from helsinki-systems/upd/mariadbajs1242021-08-19
|\ \ | |/ |/| mariadb: 10.5.11 -> 10.6.3, mariadb-galera: 26.4.8 -> 26.4.9, libmysqlclient: 3.1.13 -> 3.2.3
| * nixos/automysqlbackup: fix after mariadb 10.6 upgradeajs1242021-08-12
| | | | | | | | client tries to connect over TCP, which failes because this uses socket auth
* | Merge pull request #133716 from misuzu/syncoid-permissionsElis Hirwing2021-08-18
|\ \ | | | | | | nixos/syncoid: add global and per-dataset permissions options
| * | nixos/syncoid: add global and per-dataset permissions optionsmisuzu2021-08-16
| |/
* / treewide: runCommandNoCC -> runCommandRobert Hensing2021-08-15
|/ | | | This has been synonymous for ~5y.
* nixos postgresql-backup: add `compression` optionRobert Helgesson2021-08-05
| | | | | | This option allows basic configuration of the compression technique used in the backup script. Specifically it adds `none` and `zstd` as new alternatives, keeping `gzip` as the default.
* Merge pull request #110742 from siraben/deprecate-foldBen Siraphob2021-07-27
|\
| * treewide: fold -> foldrBen Siraphob2021-01-26
| |
* | nixos/syncoid: Drop ~[at]sync from the systemcallfilter to avoid coredumpsElis Hirwing2021-07-26
| |
* | nixos/sanoid: Reformat file with nixpkgs-fmtElis Hirwing2021-07-26
| |
* | nixos/syncoid: Reformat file with nixpkgs-fmtElis Hirwing2021-07-26
| |
* | nixos/sanoid: Use a function to build allow/unallow commandsElis Hirwing2021-07-26
| |
* | nixos/syncoid: Build unallow commands as a post job to drop permissionsElis Hirwing2021-07-26
| |