Skip to content

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

'' &lt;Pass password&gt; Method = sha256 Hash = e2ce303c7ea75c571d80d8540a8699b46535be6a085be3414947d638e48d9e93 Salt = l5Xryew4g*!oa(ECfX2o &lt;/Pass&gt;''

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