borgmatic: 1.7.15 -> 1.8.1
This commit is contained in:
parent
26b39be933
commit
4a519fa142
3 changed files with 45 additions and 18 deletions
|
@ -264,6 +264,8 @@
|
|||
|
||||
- Setting `nixpkgs.config` options while providing an external `pkgs` instance will now raise an error instead of silently ignoring the options. NixOS modules no longer set `nixpkgs.config` to accomodate this. This specifically affects `services.locate`, `services.xserver.displayManager.lightdm.greeters.tiny` and `programs.firefox` NixOS modules. No manual intervention should be required in most cases, however, configurations relying on those modules affecting packages outside the system environment should switch to explicit overlays.
|
||||
|
||||
- `service.borgmatic.settings.location` and `services.borgmatic.configurations.<name>.location` are deprecated, please move your options out of sections to the global scope.
|
||||
|
||||
## Other Notable Changes {#sec-release-23.11-notable-changes}
|
||||
|
||||
- The Cinnamon module now enables XDG desktop integration by default. If you are experiencing collisions related to xdg-desktop-portal-gtk you can safely remove `xdg.portal.extraPortals = [ pkgs.xdg-desktop-portal-gtk ];` from your NixOS configuration.
|
||||
|
|
|
@ -6,32 +6,50 @@ let
|
|||
cfg = config.services.borgmatic;
|
||||
settingsFormat = pkgs.formats.yaml { };
|
||||
|
||||
repository = with types; submodule {
|
||||
options = {
|
||||
path = mkOption {
|
||||
type = str;
|
||||
description = mdDoc ''
|
||||
Path to the repository
|
||||
'';
|
||||
};
|
||||
label = mkOption {
|
||||
type = str;
|
||||
description = mdDoc ''
|
||||
Label to the repository
|
||||
'';
|
||||
};
|
||||
};
|
||||
};
|
||||
cfgType = with types; submodule {
|
||||
freeformType = settingsFormat.type;
|
||||
options.location = {
|
||||
options = {
|
||||
source_directories = mkOption {
|
||||
type = listOf str;
|
||||
type = nullOr (listOf str);
|
||||
default = null;
|
||||
description = mdDoc ''
|
||||
List of source directories to backup (required). Globs and
|
||||
tildes are expanded.
|
||||
List of source directories and files to backup. Globs and tildes are
|
||||
expanded. Do not backslash spaces in path names.
|
||||
'';
|
||||
example = [ "/home" "/etc" "/var/log/syslog*" ];
|
||||
example = [ "/home" "/etc" "/var/log/syslog*" "/home/user/path with spaces" ];
|
||||
};
|
||||
repositories = mkOption {
|
||||
type = listOf str;
|
||||
type = nullOr (listOf repository);
|
||||
default = null;
|
||||
description = mdDoc ''
|
||||
Paths to local or remote repositories (required). Tildes are
|
||||
expanded. Multiple repositories are backed up to in
|
||||
sequence. Borg placeholders can be used. See the output of
|
||||
"borg help placeholders" for details. See ssh_command for
|
||||
SSH options like identity file or port. If systemd service
|
||||
is used, then add local repository paths in the systemd
|
||||
service file to the ReadWritePaths list.
|
||||
A required list of local or remote repositories with paths and
|
||||
optional labels (which can be used with the --repository flag to
|
||||
select a repository). Tildes are expanded. Multiple repositories are
|
||||
backed up to in sequence. Borg placeholders can be used. See the
|
||||
output of "borg help placeholders" for details. See ssh_command for
|
||||
SSH options like identity file or port. If systemd service is used,
|
||||
then add local repository paths in the systemd service file to the
|
||||
ReadWritePaths list.
|
||||
'';
|
||||
example = [
|
||||
"ssh://user@backupserver/./sourcehostname.borg"
|
||||
"ssh://user@backupserver/./{fqdn}"
|
||||
"/var/local/backups/local.borg"
|
||||
{ path="ssh://user@backupserver/./sourcehostname.borg"; label="backupserver"; }
|
||||
{ path="/mnt/backup"; label="local"; }
|
||||
];
|
||||
};
|
||||
};
|
||||
|
@ -62,6 +80,13 @@ in
|
|||
|
||||
config = mkIf cfg.enable {
|
||||
|
||||
warnings = []
|
||||
++ optional (cfg.settings != null && cfg.settings.location != null)
|
||||
"`services.borgmatic.settings.location` is deprecated, please move your options out of sections to the global scope"
|
||||
++ optional (catAttrs "location" (attrValues cfg.configurations) != [])
|
||||
"`services.borgmatic.configurations.<name>.location` is deprecated, please move your options out of sections to the global scope"
|
||||
;
|
||||
|
||||
environment.systemPackages = [ pkgs.borgmatic ];
|
||||
|
||||
environment.etc = (optionalAttrs (cfg.settings != null) { "borgmatic/config.yaml".source = cfgfile; }) //
|
||||
|
|
|
@ -13,11 +13,11 @@
|
|||
|
||||
python3Packages.buildPythonApplication rec {
|
||||
pname = "borgmatic";
|
||||
version = "1.7.15";
|
||||
version = "1.8.1";
|
||||
|
||||
src = fetchPypi {
|
||||
inherit pname version;
|
||||
sha256 = "sha256-esTvcybCPTayA9LCSukNc9ba8eGCTyjB883eZYy91II=";
|
||||
sha256 = "sha256-XbihTQJtoiRRfwjMCP+XEPmbt7//zFPx1fIWOvn92Nc=";
|
||||
};
|
||||
|
||||
nativeCheckInputs = with python3Packages; [ flexmock pytestCheckHook pytest-cov ];
|
||||
|
|
Loading…
Reference in a new issue