mirror of
https://github.com/ilyakooo0/nixpkgs.git
synced 2024-09-22 04:57:56 +03:00
nixos/dhcpcd: Add an explicit interfaces option
This commit is contained in:
parent
8e99197c99
commit
320a82dd7f
@ -6,6 +6,8 @@ let
|
|||||||
|
|
||||||
dhcpcd = if !config.boot.isContainer then pkgs.dhcpcd else pkgs.dhcpcd.override { udev = null; };
|
dhcpcd = if !config.boot.isContainer then pkgs.dhcpcd else pkgs.dhcpcd.override { udev = null; };
|
||||||
|
|
||||||
|
cfg = config.networking.dhcpcd;
|
||||||
|
|
||||||
# Don't start dhcpcd on explicitly configured interfaces or on
|
# Don't start dhcpcd on explicitly configured interfaces or on
|
||||||
# interfaces that are part of a bridge.
|
# interfaces that are part of a bridge.
|
||||||
ignoredInterfaces =
|
ignoredInterfaces =
|
||||||
@ -37,7 +39,10 @@ let
|
|||||||
# (Xen) and virbr* and vnet* (libvirt).
|
# (Xen) and virbr* and vnet* (libvirt).
|
||||||
denyinterfaces ${toString ignoredInterfaces} lo peth* vif* tap* tun* virbr* vnet* vboxnet*
|
denyinterfaces ${toString ignoredInterfaces} lo peth* vif* tap* tun* virbr* vnet* vboxnet*
|
||||||
|
|
||||||
${config.networking.dhcpcd.extraConfig}
|
# Use the list of allowed interfaces if specified
|
||||||
|
${optionalString (cfg.allowInterfaces != [ ]) "allowinterfaces ${toString cfg.allowInterfaces}"}
|
||||||
|
|
||||||
|
${cfg.extraConfig}
|
||||||
'';
|
'';
|
||||||
|
|
||||||
# Hook for emitting ip-up/ip-down events.
|
# Hook for emitting ip-up/ip-down events.
|
||||||
@ -80,6 +85,17 @@ in
|
|||||||
'';
|
'';
|
||||||
};
|
};
|
||||||
|
|
||||||
|
networking.dhcpcd.allowInterfaces = mkOption {
|
||||||
|
type = types.listOf types.str;
|
||||||
|
default = [];
|
||||||
|
description = ''
|
||||||
|
Enable the DHCP client for any interface whose name matches
|
||||||
|
any of the shell glob patterns in this list. Any interface not
|
||||||
|
explicitly matched by this pattern will be denied. This pattern only
|
||||||
|
applies when the list is non-empty.
|
||||||
|
'';
|
||||||
|
};
|
||||||
|
|
||||||
networking.dhcpcd.extraConfig = mkOption {
|
networking.dhcpcd.extraConfig = mkOption {
|
||||||
type = types.lines;
|
type = types.lines;
|
||||||
default = "";
|
default = "";
|
||||||
|
Loading…
Reference in New Issue
Block a user