1{ config, lib, pkgs, ... }:
2
3with lib;
4
5let
6 cfg = config.programs.openvpn3;
7in
8{
9 options.programs.openvpn3 = {
10 enable = mkEnableOption (lib.mdDoc "the openvpn3 client");
11 };
12
13 config = mkIf cfg.enable {
14 services.dbus.packages = with pkgs; [
15 openvpn3
16 ];
17
18 users.users.openvpn = {
19 isSystemUser = true;
20 uid = config.ids.uids.openvpn;
21 group = "openvpn";
22 };
23
24 users.groups.openvpn = {
25 gid = config.ids.gids.openvpn;
26 };
27
28 environment.systemPackages = with pkgs; [
29 openvpn3
30 ];
31 };
32
33}