1
0
Fork 0
mirror of https://github.com/nix-community/home-manager synced 2024-11-14 15:19:45 +01:00

mbsync: option for configuring a group

A group is a grouping of channels together, so that many channels with
very different names can be handled as a single entity.

Groups are unique in mbsync because they will shadow channels that
have the same name on the command-line.
This commit is contained in:
Karl Hallsby 2020-06-26 13:41:25 +02:00
parent d6dcf9f106
commit 8bee65350b

View file

@ -1,4 +1,4 @@
{ lib, ... }: { config, lib, ... }:
with lib; with lib;
@ -6,6 +6,32 @@ let
extraConfigType = with lib.types; attrsOf (either (either str int) bool); extraConfigType = with lib.types; attrsOf (either (either str int) bool);
perAccountGroups = { name, config, ... }: {
options = {
groupName = mkOption {
type = types.str;
default = name;
description = ''
The name of this group for this account. These names are different than
some others, because they will hide channel names that are the same.
'';
};
channels = mkOption {
type = types.listOf (types.submodule groupChannel);
default = { };
description = ''
List of channels that should be grouped together into this group. When
performing a synchronization, the groups are synchronized, rather than
the individual channels.
</para><para>
Using these channels and then grouping them together allows for you to
define the maildir hierarchy as you see fit.
'';
};
};
};
# Options for configuring channel(s) that will be composed together into a group. # Options for configuring channel(s) that will be composed together into a group.
groupChannel = { config, ... }: { groupChannel = { config, ... }: {
options = { options = {