mirror of
https://github.com/NixOS/nixpkgs.git
synced 2024-11-01 07:01:54 +00:00
nixos/captive-browser: fix module
Fixes the broken metrics evaluation which was caused by a `trace` warning in stdout which confused `jq` in `pkgs/top-level/metrics.nix`. Also made the `bind-device` feature optional as suggested after the merge.
This commit is contained in:
parent
b8c827c266
commit
d9f7bac91f
@ -15,6 +15,8 @@ in
|
|||||||
package = mkOption {
|
package = mkOption {
|
||||||
type = types.package;
|
type = types.package;
|
||||||
default = pkgs.captive-browser;
|
default = pkgs.captive-browser;
|
||||||
|
defaultText = "pkgs.captive-browser";
|
||||||
|
description = "Which package to use for captive-browser";
|
||||||
};
|
};
|
||||||
|
|
||||||
interface = mkOption {
|
interface = mkOption {
|
||||||
@ -35,7 +37,7 @@ in
|
|||||||
''http://cache.nixos.org/''
|
''http://cache.nixos.org/''
|
||||||
];
|
];
|
||||||
description = ''
|
description = ''
|
||||||
the shell (/bin/sh) command executed once the proxy starts.
|
The shell (/bin/sh) command executed once the proxy starts.
|
||||||
When browser exits, the proxy exits. An extra env var PROXY is available.
|
When browser exits, the proxy exits. An extra env var PROXY is available.
|
||||||
|
|
||||||
Here, we use a separate Chrome instance in Incognito mode, so that
|
Here, we use a separate Chrome instance in Incognito mode, so that
|
||||||
@ -51,7 +53,7 @@ in
|
|||||||
dhcp-dns = mkOption {
|
dhcp-dns = mkOption {
|
||||||
type = types.str;
|
type = types.str;
|
||||||
description = ''
|
description = ''
|
||||||
the shell (/bin/sh) command executed to obtain the DHCP
|
The shell (/bin/sh) command executed to obtain the DHCP
|
||||||
DNS server address. The first match of an IPv4 regex is used.
|
DNS server address. The first match of an IPv4 regex is used.
|
||||||
IPv4 only, because let's be real, it's a captive portal.
|
IPv4 only, because let's be real, it's a captive portal.
|
||||||
'';
|
'';
|
||||||
@ -62,6 +64,16 @@ in
|
|||||||
default = "localhost:1666";
|
default = "localhost:1666";
|
||||||
description = ''the listen address for the SOCKS5 proxy server'';
|
description = ''the listen address for the SOCKS5 proxy server'';
|
||||||
};
|
};
|
||||||
|
|
||||||
|
bindInterface = mkOption {
|
||||||
|
default = true;
|
||||||
|
type = types.bool;
|
||||||
|
description = ''
|
||||||
|
Binds <package>captive-browser</package> to the network interface declared in
|
||||||
|
<literal>cfg.interface</literal>. This can be used to avoid collisions
|
||||||
|
with private subnets.
|
||||||
|
'';
|
||||||
|
};
|
||||||
};
|
};
|
||||||
};
|
};
|
||||||
|
|
||||||
@ -99,7 +111,9 @@ in
|
|||||||
browser = """${cfg.browser}"""
|
browser = """${cfg.browser}"""
|
||||||
dhcp-dns = """${cfg.dhcp-dns}"""
|
dhcp-dns = """${cfg.dhcp-dns}"""
|
||||||
socks5-addr = """${cfg.socks5-addr}"""
|
socks5-addr = """${cfg.socks5-addr}"""
|
||||||
bind-device = """${cfg.interface}"""
|
${optionalString cfg.bindInterface ''
|
||||||
|
bind-device = """${cfg.interface}"""
|
||||||
|
''}
|
||||||
''}
|
''}
|
||||||
exec ${cfg.package}/bin/captive-browser
|
exec ${cfg.package}/bin/captive-browser
|
||||||
'';
|
'';
|
||||||
|
Loading…
Reference in New Issue
Block a user