summary refs log tree commit diff
path: root/nixos/modules/services/networking/wicd.nix
blob: aa10a50f876a7cd3663b87ace7557449aa2d13b0 (plain) (blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
{ config, lib, pkgs, ... }:

with lib;

{

  ###### interface

  options = {

    networking.wicd.enable = mkOption {
      type = types.bool;
      default = false;
      description = ''
        Whether to start <command>wicd</command>. Wired and
        wireless network configurations can then be managed by
        wicd-client.
      '';
    };
  };


  ###### implementation

  config = mkIf config.networking.wicd.enable {

    environment.systemPackages = [pkgs.wicd];

    systemd.services.wicd = {
      after = [ "network-pre.target" ];
      before = [ "network.target" ];
      wants = [ "network.target" ];
      wantedBy = [ "multi-user.target" ];
      script = "${pkgs.wicd}/sbin/wicd -f";
    };

    services.dbus.enable = true;
    services.dbus.packages = [pkgs.wicd];
  };
}