Commit Graph

2208 Commits

Author SHA1 Message Date
Scriptkiddi
679e369ba2
nixos/hostapd: add interface type 2021-01-29 13:04:50 +01:00
Sandro
1f730f2918
Merge pull request #111126 from helsinki-systems/gogoclient
nixos/gogoclient: add types
2021-01-29 09:52:35 +01:00
Scriptkiddi
5f40e68c9c nixos/consul: add types 2021-01-29 00:32:32 -08:00
Scriptkiddi
f2764e1f71
nixos/gogoclient: add types 2021-01-29 08:39:51 +01:00
Scriptkiddi
103ea99b99 nixos/gvpe: add types 2021-01-28 13:58:33 -08:00
Scriptkiddi
f2ce0f543d nixos/flashpolicyd: add types 2021-01-27 11:44:15 -08:00
Ninjatrappeur
ab224b550c
Merge pull request #103138 from NinjaTrappeur/nin-pleroma 2021-01-27 13:28:44 +01:00
Robert Hensing
d2a41be2f3
Merge pull request #110707 from Infinisil/functionTo
Bring back `types.functionTo`
2021-01-27 10:50:13 +01:00
Scriptkiddi
26c4dcf8fa nixos/babeld: add type extraConfig 2021-01-26 20:06:29 -08:00
Scriptkiddi
5f472181f2 nixos/cntlm: add types 2021-01-26 13:17:19 -08:00
Félix Baylac-Jacqué
231c5a576a
nixos/pleroma: init
Adding a new pleroma NixOS module and its associated documentation.

co-authored-by: duponin <duponin@locahlo.st>
2021-01-26 18:11:38 +01:00
Florian Klink
b2f3bd4d79
Merge pull request #100155 from primeos/nixos-add-fqdn-option
nixos/networking: Add a read-only option for the FQDN
2021-01-25 16:45:45 +01:00
Bernardo Meurer
105b9eb1b8
Merge pull request #109768 from cpcloud/nomad-datadir-cleanup
nixos/nomad: enforce specific data_dir semantics
2021-01-24 18:20:08 +00:00
Bas van Dijk
8ac4b251c8
nixos: use functionTo to prevent evaluation errors while merging
Without this patch merging options like
services.xserver.windowManager.xmonad.extraPackages
results in the evaluation error:

  error: value is a list while a set was expected, at nixpkgs/lib/options.nix:77:23

With this patch we get the desired merging behaviour that just concatenates the
resulting package lists.

(cherry picked from commit 6e99f9fdecb1f28308c8e0aed0fc851737354864)

Co-Authored-By: Silvan Mosberger <contact@infinisil.com>
2021-01-24 17:18:37 +01:00
Sandro
81e3b9d15b
Merge pull request #110670 from siraben/double-quotes-fix
treewide: fix double quoted strings in one-liners
2021-01-24 16:17:14 +01:00
Sandro
0dd579a3e6
Merge pull request #110686 from helsinki-systems/chrony_types
nixos/chrony: add types
2021-01-24 14:18:51 +01:00
volth
bc0d605cf1 treewide: fix double quoted strings in meta.description
Signed-off-by: Ben Siraphob <bensiraphob@gmail.com>
2021-01-24 19:56:59 +07:00
Fritz Otlinghaus
31345193f0
nixos/chrony: add types 2021-01-24 13:50:35 +01:00
Fritz Otlinghaus
6054aa2bc1
nixos/amuled: add types 2021-01-24 13:37:09 +01:00
Phillip Cloud
c7c3b9e4ae nixos/nomad: remove User setting entirely 2021-01-23 19:44:37 -05:00
Phillip Cloud
2a3cb407b0 nixos/nomad: only set User if privileges are dropped 2021-01-23 19:44:37 -05:00
Phillip Cloud
5ce4ce6174 nixos/nomad: make formatting consistent in mkMerge call 2021-01-23 19:44:37 -05:00
Phillip Cloud
12b9249cf3 nixos/nomad: unconditionally set user to nomad 2021-01-23 19:44:37 -05:00
Phillip Cloud
5d0b3b7228 nixos/nomad: fix markup and remove suggestion 2021-01-23 19:44:37 -05:00
Phillip Cloud
bddb7ac406 nixos/nomad: fix typo and spell out ExecStartPre usage 2021-01-23 19:44:37 -05:00
Phillip Cloud
b72a46713f nixos/nomad: reformat SupplementaryGroups expression 2021-01-23 19:44:37 -05:00
Phillip Cloud
b80c454459 nixos/nomad: add mkIf for StateDirectory 2021-01-23 19:44:37 -05:00
Phillip Cloud
58fe45936e nixos/nomad: move serviceConfig into mkMerge and mkIf for docker SupplementaryGroups 2021-01-23 19:44:37 -05:00
Phillip Cloud
f3aa71b7ec nixos/nomad: describe the nomad cluster manager responsibilities 2021-01-23 19:44:37 -05:00
Phillip Cloud
3e00482ba8 nixos/nomad: add assertion for the value of dropPrivileges and its relation to data_dir 2021-01-23 19:44:37 -05:00
Phillip Cloud
f1778cd90e
nixos/nomad: add extraSettingsFiles option to nomad service (#109761) 2021-01-23 23:52:19 +01:00
Phillip Cloud
2861d26df5 nixos/nomad: move data_dir default setting to allow propagation of default 2021-01-23 12:50:01 -05:00
Phillip Cloud
0bbed1c273 nixos/nomad: add newline 2021-01-23 12:50:01 -05:00
Michael Weiss
237c20ac61
nixos/smokeping: Replace the tabs in cfg.targetConfig
This was inconsistent with the rest of the module.
2021-01-23 14:03:16 +01:00
Michael Weiss
87fb5d381f
nixos/smokeping: Add a PoC for using networking.fqdn 2021-01-23 14:03:16 +01:00
Anderson Torres
0f31f03f22
Merge pull request #108578 from ctem/feature/chrony
nixos/chrony: add support for Network Time Security (NTS) authentication
2021-01-22 09:36:08 -03:00
Fritz Otlinghaus
800b90ea3f
nixos/bitlbee: Add types to options (#110446) 2021-01-22 11:07:29 +01:00
Scriptkiddi
2800882b4b
bind: Add types for options 2021-01-20 14:34:34 +01:00
Scriptkiddi
1572940688
networking, chrony, ntpd, timesyncd: add timeServers option type 2021-01-20 10:54:24 +01:00
Jonathan Ringer
e2fcf81d2a nixos/modules: pkgconfig -> pkg-config 2021-01-19 01:16:25 -08:00
Bernardo Meurer
e1340190a9
nixos/nomad: default enableDocker to true 2021-01-17 18:54:06 -08:00
Bernardo Meurer
1f8d0d771c
nixos/nomad: init
Co-authored-by: Niklas Hambüchen <mail@nh2.me>
2021-01-17 15:11:16 -08:00
Michele Guerini Rocco
721a4ecfa6
Merge pull request #109114 from illustris/searx
searx: 0.17.0 -> 0.18.0
2021-01-14 10:15:37 +01:00
rnhmjoj
f741cccd45
nixos/searx: remove settings.yml merging script
Starting with 0.18.0, searx can merge the settings.yml automatically
with the default values, so the script is obsolete.
2021-01-14 09:48:02 +01:00
Silvan Mosberger
ffdefb66c0
Merge pull request #108966 from pstn/murmurPswitch
nixos/murmur: Add overrideable package switch
2021-01-14 01:07:56 +01:00
rnhmjoj
623664e84f
nixos/searx: add support for running in uWSGI 2021-01-11 08:41:15 +01:00
rnhmjoj
cce415c743
nixos/searx: declarative configuration 2021-01-11 08:41:15 +01:00
Philipp
06c0f16555
nixos/murmur: Add overrideable package switch 2021-01-11 00:08:23 +01:00
Jörg Thalheim
b815fb2fd9
Merge pull request #105775 from xaverdh/iwd-link-unit 2021-01-10 12:35:25 +00:00
Dominik Xaver Hörl
713b60460f nixos/iwd: add networkd link configuration matching the upstream .link unit file
It is meant to fix the race condition between iwd and udev trying to
rename the interface.
2021-01-09 10:26:57 +01:00
Ctem
54778551d6
nixos/chrony: add option to change package 2021-01-06 20:05:05 +09:00
Ctem
2aec205bd2
nixos/chrony: add option to change state directory 2021-01-06 20:04:50 +09:00
Ctem
2e131e1f45
nixos/chrony: add option to choose between two commonly used server directive options 2021-01-06 20:04:41 +09:00
Ctem
9550d865e9
nixos/chrony: add option to enable NTS authentication 2021-01-06 20:04:20 +09:00
Jörg Thalheim
a14ea3aecc
Merge pull request #97740 from ju1m/tor
nixos/tor: improve type-checking and hardening
2021-01-05 16:00:40 +00:00
Julien Moutinho
0ccdd6f2b0 nixos/tor: improve type-checking and hardening
Fixes #77395.
Fixes #82790.
2021-01-04 01:02:26 +01:00
snicket2100
2bab1a76c6 nixos/dnscrypt-proxy2: more service hardening
added 'ProtectClock' and made the seccomp filter a bit more restrictive
have been running with these settings for a while with zero problems
2021-01-02 18:09:49 +01:00
kvtb
0c8f5c0f15
kresd.nix: fix string escaping
\+ has no effect in single quoted strings
2020-12-31 23:48:05 +00:00
Silvan Mosberger
ff97a25fc6
Merge pull request #104419 from otavio/topic/shellhub
shellhub-agent: Add service and package expressions
2020-12-31 00:07:42 +01:00
Otavio Salvador
06edbabe06 nixos/shellhub-agent: initial service expression
This provides the service to configure the ShellHub Agent.

Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
2020-12-30 19:24:13 -03:00
Matt Layher
071c02a4b2
nixos/corerad: use pkgs.formats.toml to generate TOML configuration
Signed-off-by: Matt Layher <mdlayher@gmail.com>
2020-12-29 17:47:01 -05:00
Vladimír Čunát
2b131c97bb
nixos/kresd: set .stopIfChanged = false
Since version 5.2.0 there's non-empty stop phase:
    ExecStopPost=/usr/bin/env rm -f "/run/knot-resolver/control/%i"
but it's perfectly OK to run that from a different version
(and typically it's no-op anyway).  Real-life example where this helps:
https://github.com/NixOS/nixpkgs/issues/49528#issuecomment-747723198
2020-12-25 09:54:04 +01:00
rnhmjoj
9f52d1f234
Revert "nixos/wireless: fix failure with no interfaces"
This reverts commit 8f177612b1.

Attempting to start any service from udev when systemd-udev-settle is
used at all hangs the boot for 2min. See issue #107341.
2020-12-22 10:17:32 +01:00
Silvan Mosberger
e52f705248
Merge pull request #84324 from Emantor/init/icecc_icemon
Icecream support
2020-12-19 17:54:28 +01:00
Michele Guerini Rocco
d7b52849f8
Merge pull request #97362 from martinetd/wakeonlan
wakeonlan service: use powerUpCommands
2020-12-18 08:39:02 +01:00
Alyssa Ross
e17d4b05a1 nixos/tor: don't do privoxy stuff by default
It's very surprising that services.tor.client.enable would set
services.privoxy.enable.  This violates the principle of least
astonishment, because it's Privoxy that can integrate with Tor, rather
than the other way around.

So this patch moves the Privoxy Tor integration to the Privoxy module,
and it also disables it by default.  This change is documented in the
release notes.

Reported-by: V <v@anomalous.eu>
2020-12-16 12:20:03 +00:00
Guillaume Girol
824d2c92bd
Merge pull request #82584 from Atemu/dnscrypt-default-config
dnscrypt-proxy2: base settings on example config
2020-12-15 19:47:43 +00:00
Michele Guerini Rocco
12f367b51c
Merge pull request #104722 from rnhmjoj/wpa-fix
nixos/wireless: fix failure with no interfaces
2020-12-15 08:37:33 +01:00
Linus Heckemann
c40f06022a
Merge pull request #106073 from minijackson/tinc-rfc42-and-tests
nixos/tinc: rfc42 and tests
2020-12-14 21:52:57 +01:00
Minijackson
499e366d7b
nixos/tinc: add settings and hostSettings for RFC42-style options 2020-12-13 21:33:38 +01:00
Atemu
e4c49db668 nixos/dnscrypt-proxy2: base settings on example config
Dnscrypt-proxy needs some options to be set before it can do anything useful.

Currently, we only apply what the user configured which, by default, is nothing.

This leads to the dnscrypt-proxy2 service failing to start when you only set
`enable = true;` which is not a great user experience.

This patch makes the module take the example config from the upstream repo as a
base on top of which the user-specified settings are applied (it contains sane
defaults).

An option has been added to restore the old behaviour.
2020-12-12 09:15:11 +01:00
Jörg Thalheim
2cdec00dd2
nixos/tinc: add reload command 2020-12-12 07:37:16 +01:00
Peng Mei Yu
3cd1a6706c unbound: Add AF_NETLINK to allowed address families.
Unbound throws the following error:

--8<---------------cut here---------------start------------->8---
error: failed to list interfaces: getifaddrs: Address family not supported by protocol
fatal error: could not open ports
--8<---------------cut here---------------end--------------->8---

The solution is pulled from upstream:
https://github.com/NLnetLabs/unbound/pull/351
2020-12-08 14:31:15 +08:00
Christine Dodrill
3d55480bf8
nixos/tailscale: add package as an option
This simplifies testing changes to the tailscale service on a local
machine. You can use this as such:

```nix
let
  tailscale_patched = magic {};
in {
  services.tailscale = {
    enable = true;
    package = tailscale_patched;
  };
};
```

Signed-off-by: Christine Dodrill <me@christine.website>
2020-12-01 12:30:31 +01:00
Silvan Mosberger
a87ab948d2
Merge pull request #104836 from ncfavier/master
nixos/nat: support IPv6 NAT
2020-12-01 04:40:09 +01:00
Valérian Galliat
b93a5a1746
nixos/nat: support IPv6 NAT 2020-12-01 00:51:58 +01:00
Sandro
a390213f85
Merge pull request #85133 from snicket2100/mosquitto-service-sandboxing
mosquitto: systemd service sandboxing
2020-11-27 18:53:36 +01:00
Graham Christensen
d9c3f13df3
Merge pull request #104776 from grahamc/utillinux
utillinux: rename to util-linux
2020-11-24 15:14:36 -05:00
Graham Christensen
bc49a0815a
utillinux: rename to util-linux 2020-11-24 12:42:06 -05:00
adisbladis
302df2a9a1
Merge pull request #81661 from adisbladis/ssh-pam-sudo-keys
pam_ssh_agent_auth: Honour services.openssh.authorizedKeysFiles
2020-11-24 16:06:47 +01:00
Artturin
4db239272c mullvad-vpn: add iproute2 2020-11-24 06:12:32 -08:00
adisbladis
ba1fa0c604
pam_ssh_agent_auth: Honour services.openssh.authorizedKeysFiles
If a system administrator has explicitly configured key locations this
should be taken into account by `sudo`.
2020-11-24 02:47:07 +01:00
rnhmjoj
8f177612b1
nixos/wireless: fix failure with no interfaces
This resolves issue #101963.

When the service is started and no interface is ready yet, wpa_supplicant
is being exec'd with no `-i` flags, thus failing. Once the interfaces
are ready, the udev rule would fire but wouldn't restart the unit because
it wasn't currently running (see systemctl(1) try-restart).

The solution is to exit (with a clear error message) but always restart
wpa_supplicant when the interfaces are modified.
2020-11-24 00:18:18 +01:00
zowoq
dbbd289982 nixos/*: fix indentation 2020-11-23 08:42:51 +10:00
Vladimír Čunát
e61ef63e4e
kresd service: switch .listenDoH to new implementation
Beware: extraFeatures are not needed *for this* anymore,
but their removal may still cause a regression in some configs
(example: prefill module).
2020-11-17 20:04:56 +01:00
Ninjatrappeur
5f5d38e88f
Merge pull request #101218 from andir/unbound-systemd 2020-11-08 16:55:29 +01:00
Andika Demas Riyandi
038497d3b3
nar-serve: init at 0.3.0 (#95420)
* nar-serve: init at 0.3.0

* nixos/nar-serve: add new module

Co-authored-by: zimbatm <zimbatm@zimbatm.com>
2020-11-06 18:59:51 +01:00
Aaron Andersen
33d8766feb
Merge pull request #102202 from danderson/danderson/post-stop
nixos/tailscale: use upstream systemd service config.
2020-11-05 20:22:53 -05:00
Daniel Schaefer
d4905b1370
Merge pull request #99003 from martinetd/stunnel-doc 2020-11-04 17:40:48 +08:00
Jörg Thalheim
f2ec450424
Merge pull request #101249 from Izorkin/dhcpd-ipv6
nixos/dhcpcd: if disabled IPv6 don't solicit or accept IPv6
2020-11-04 08:09:08 +01:00
David Anderson
503caab776 nixos/tailscale: use upstream systemd service config.
Signed-off-by: David Anderson <dave@natulte.net>
2020-11-03 19:37:48 -08:00
Andreas Rammhold
5903ea5395
nixos/unbond: unbound should be required for nss-lookup.target
Other units depend on nss-lookup.target and expect the DNS resolution to
work once that target is reached. The previous version
`wants=nss-lookup.target` made this unit require the nss-lookup.target
to be reached before this was started.

Another change that we can probalby do is drop the before relationship
with the nss-lookup.target. That might just be implied with the current
version.
2020-11-03 19:21:39 +01:00
Andreas Rammhold
2aa64e5df5
nixos/unbound: add option to configure the local control socket path
This option allows users to specify a local UNIX control socket to
"remote control" the daemon. System users, that should be permitted to
access the daemon, must be in the `unbound` group in order to access the
socket. When a socket path is configured we are also creating the
required group.

Currently this only supports the UNIX socket mode while unbound actually
supports more advanced types. Users are still able to configure more
complex scenarios via the `extraConfig` attribute.

When this option is set to `null` (the default) it doesn't affect the
system configuration at all. The unbound defaults for control sockets
apply and no additional groups are created.
2020-11-03 19:21:25 +01:00
Andreas Rammhold
aadc07618a
nixos/unbound: drop ReadWritePaths from systemd unit configuration
Both of the configured paths should be implicit due to RuntimeDirectory
& StateDirectory.
2020-11-03 19:21:24 +01:00
Andreas Rammhold
72fbf05c17
nixos/unbound: note about the AmbientCapabilities 2020-11-03 19:21:24 +01:00
Andreas Rammhold
5e602f88d1
nixos/modules/services/networking/unbound: update systemd unit
Previously we just applied a very minimal set of restrictions and
trusted unbound to properly drop root privs and capabilities.

With this change I am (for the most part) just using the upstream
example unit file for unbound. The main difference is that we start
unbound was `unbound` user with the required capabilities instead of
letting unbound do the chroot & uid/gid changes.

The upstream unit configuration this is based on is a lot stricter with
all kinds of permissions then our previous variant. It also came with
the default of having the `Type` set to `notify`, therefore we are also
using the `unbound-with-systemd` package here. Unbound will start up,
read the configuration files and start listening on the configured ports
before systemd will declare the unit "running". This will likely help
with startup order and the occasional race condition during system
activation where the DNS service is started but not yet ready to answer
queries.

Aditionally to the much stricter runtime environmet I removed the
`/dev/urandom` mount lines we previously had in the code (that would
randomly fail during `stop`-phase).

The `preStart` script is now only required if we enabled the trust
anchor updates (which are still enabled by default).

Another beneefit of the refactoring is that we can now issue reloads via
either `pkill -HUP unbound` or `systemctl reload unbound` to reload the
running configuration without taking the daemon offline. A prerequisite
of this was that unbound configuration is available on a well known path
on the file system. I went for /etc/unbound/unbound.conf as that is the
default in the CLI tooling which in turn enables us to use
`unbound-control` without passing a custom configuration location.
2020-11-03 19:21:24 +01:00
Ricardo M. Correia
48f8b85e1c nixos/chrony: fix owner of chrony drift file
It had become owned by root due to #97546.
2020-11-02 21:41:49 +01:00
Dominique Martinet
1fb299064b stunnel: make servers accept more lenient
stunnel config's accept syntax is [host:]port -- this is required to e.g. listen on ipv6
where one would set :::port
2020-11-02 10:51:00 +01:00
Dominique Martinet
05eef8051b stunnel service: fix servers example
examples incorrectly had 'enable' set, the option is not defined
and reproducing would error out
2020-11-01 18:17:57 +01:00
Rouven Czerwinski
733181d766 nixos/icecream: add modules
This adds modules for the icecream scheduler and daemon.
Icecream can be used for distributed compilation, especially in
environments with diverse toolchains, since it sends the complete build
environment to the daemon.
Unfortunatley the daemon can't be run with DynamicUser = true, since the
daemon requires to be started as root in order to accept other build
environments, see [1].

[1]: https://github.com/icecc/icecream#using-icecream-in-heterogeneous-environments
2020-11-01 08:13:08 +01:00