Znc
services.znc.confOptions.extraZncConf
Extra config to znc.conf
file.
Type: strings concatenated with "\n"
Default
""
Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/networking/znc/options.nix
services.znc.confOptions.modules
A list of modules to include in the znc.conf
file.
Type: list of string
Default
["webadmin""adminlog"]
Example
["partyline""webadmin""adminlog""log"]
Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/networking/znc/options.nix
services.znc.confOptions.networks
IRC networks to connect the user to.
Type: attribute set of (submodule)
Default
{ }
Example
{"libera" = {server = "irc.libera.chat";port = 6697;useSSL = true;modules = [ "simple_away" ];};};
Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/networking/znc/options.nix
services.znc.confOptions.networks.<name>.channels
IRC channels to join.
Type: list of string
Default
[ ]
Example
["nixos"]
Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/networking/znc/options.nix
services.znc.confOptions.networks.<name>.extraConf
Extra config for the network. Consider using
{option}services.znc.config
instead.
Type: strings concatenated with "\n"
Default
""
Example
'' Encoding = ^UTF-8 FloodBurst = 4 FloodRate = 1.00 IRCConnectEnabled = true Ident = johntron JoinDelay = 0 Nick = johntron''
Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/networking/znc/options.nix
services.znc.confOptions.networks.<name>.hasBitlbeeControlChannel
Whether to add the special Bitlbee operations channel.
Type: boolean
Default
false
Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/networking/znc/options.nix
services.znc.confOptions.networks.<name>.modules
ZNC network modules to load.
Type: list of string
Default
["simple_away"]
Example
[ "simple_away" "sasl" ]
Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/networking/znc/options.nix
services.znc.confOptions.networks.<name>.password
IRC server password, such as for a Slack gateway.
Type: string
Default
""
Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/networking/znc/options.nix
services.znc.confOptions.networks.<name>.port
IRC server port.
Type: 16 bit unsigned integer; between 0 and 65535 (both inclusive)
Default
6697
Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/networking/znc/options.nix
services.znc.confOptions.networks.<name>.server
IRC server address.
Type: string
Example
"irc.libera.chat"
Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/networking/znc/options.nix
services.znc.confOptions.networks.<name>.useSSL
Whether to use SSL to connect to the IRC server.
Type: boolean
Default
true
Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/networking/znc/options.nix
services.znc.confOptions.nick
The IRC nick.
Type: string
Default
"znc-user"
Example
"john"
Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/networking/znc/options.nix
services.znc.confOptions.passBlock
Generate with {command}nix-shell -p znc --command "znc --makepass"
.
This is the password used to log in to the ZNC web admin interface.
You can also set this through
{option}services.znc.config.User.<username>.Pass.Method
and co.
Type: string
Example
'' <Pass password> Method = sha256 Hash = e2ce303c7ea75c571d80d8540a8699b46535be6a085be3414947d638e48d9e93 Salt = l5Xryew4g*!oa(ECfX2o </Pass>''
Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/networking/znc/options.nix
services.znc.confOptions.port
Specifies the port on which to listen.
Type: 16 bit unsigned integer; between 0 and 65535 (both inclusive)
Default
5000
Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/networking/znc/options.nix
services.znc.confOptions.uriPrefix
An optional URI prefix for the ZNC web interface. Can be used to make ZNC available behind a reverse proxy.
Type: null or string
Default
null
Example
"/znc/"
Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/networking/znc/options.nix
services.znc.confOptions.useSSL
Indicates whether the ZNC server should use SSL when listening on the specified port. A self-signed certificate will be generated.
Type: boolean
Default
true
Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/networking/znc/options.nix
services.znc.confOptions.userModules
A list of user modules to include in the znc.conf
file.
Type: list of string
Default
["chansaver""controlpanel"]
Example
["chansaver""controlpanel""fish""push"]
Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/networking/znc/options.nix
services.znc.confOptions.userName
The user name used to log in to the ZNC web admin interface.
Type: string
Default
"znc"
Example
"johntron"
Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/networking/znc/options.nix
services.znc.config
Configuration for ZNC, see
https://wiki.znc.in/Configuration for details. The
Nix value declared here will be translated directly to the xml-like
format ZNC expects. This is much more flexible than the legacy options
under {option}services.znc.confOptions.*
, but also can't do
any type checking.
You can use {command}nix-instantiate --eval --strict '<nixpkgs/nixos>' -A config.services.znc.config
to view the current value. By default it contains a listener for port
5000 with SSL enabled.
Nix attributes called extraConfig
will be inserted
verbatim into the resulting config file.
If {option}services.znc.useLegacyConfig
is turned on, the
option values in {option}services.znc.confOptions.*
will be
gracefully be applied to this option.
If you intend to update the configuration through this option, be sure
to disable {option}services.znc.mutable
, otherwise none of the
changes here will be applied after the initial deploy.
Type: attribute set of (znc values (null, atoms (str, int, bool), list of atoms, or attrsets of znc values))
Default
{ }
Example
{LoadModule = [ "webadmin" "adminlog" ];User.paul = {Admin = true;Nick = "paul";AltNick = "paul1";LoadModule = [ "chansaver" "controlpanel" ];Network.libera = {Server = "irc.libera.chat +6697";LoadModule = [ "simple_away" ];Chan = {"#nixos" = { Detached = false; };"##linux" = { Disabled = true; };};};Pass.password = {Method = "sha256";Hash = "e2ce303c7ea75c571d80d8540a8699b46535be6a085be3414947d638e48d9e93";Salt = "l5Xryew4g*!oa(ECfX2o";};};}
Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/networking/znc/default.nix
services.znc.configFile
Configuration file for ZNC. It is recommended to use the
{option}config
option instead.
Setting this option will override any auto-generated config file
through the {option}confOptions
or {option}config
options.
Type: path
Example
~/.znc/configs/znc.conf
Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/networking/znc/default.nix
services.znc.dataDir
The state directory for ZNC. The config and the modules will be linked to from this directory as well.
Type: path
Default
"/var/lib/znc"
Example
"/home/john/.znc"
Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/networking/znc/default.nix
services.znc.enable
Whether to enable ZNC.
Type: boolean
Default
false
Example
true
Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/networking/znc/default.nix
services.znc.extraFlags
Extra arguments to use for executing znc.
Type: list of string
Default
[ ]
Example
["--debug"]
Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/networking/znc/default.nix
services.znc.group
Group to own the ZNC process.
Type: string
Default
"znc"
Example
"users"
Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/networking/znc/default.nix
services.znc.modulePackages
A list of global znc module packages to add to znc.
Type: list of package
Default
[ ]
Example
[ pkgs.zncModules.fish pkgs.zncModules.push ]
Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/networking/znc/default.nix
services.znc.mutable
Indicates whether to allow the contents of the
dataDir
directory to be changed by the user at
run-time.
If enabled, modifications to the ZNC configuration after its initial creation are not overwritten by a NixOS rebuild. If disabled, the ZNC configuration is rebuilt on every NixOS rebuild.
If the user wants to manage the ZNC service using the web admin interface, this option should be enabled.
Type: boolean
Default
true
Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/networking/znc/default.nix
services.znc.openFirewall
Whether to open ports in the firewall for ZNC. Does work with
ports for listeners specified in
{option}services.znc.config.Listener
.
Type: boolean
Default
false
Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/networking/znc/default.nix
services.znc.useLegacyConfig
Whether to propagate the legacy options under
{option}services.znc.confOptions.*
to the znc config. If this
is turned on, the znc config will contain a user with the default name
"znc", global modules "webadmin" and "adminlog" will be enabled by
default, and more, all controlled through the
{option}services.znc.confOptions.*
options.
You can use {command}nix-instantiate --eval --strict '<nixpkgs/nixos>' -A config.services.znc.config
to view the current value of the config.
In any case, if you need more flexibility,
{option}services.znc.config
can be used to override/add to
all of the legacy options.
Type: boolean
Default
true
Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/networking/znc/options.nix
services.znc.user
The name of an existing user account to use to own the ZNC server process. If not specified, a default user will be created.
Type: string
Default
"znc"
Example
"john"
Declared by: https://github.com/nixos/nixpkgs/blob/master/nixos/modules/services/networking/znc/default.nix