3
0
Fork 0
forked from mirrors/nixpkgs
Commit graph

17456 commits

Author SHA1 Message Date
Andreas Rammhold 55c09a884a nixos/modules/system/boot/networkd: enable socket activation
Since cd1dedac67 systemd-networkd has it's
netlink socket created via a systemd.socket unit. One might think that
this doesn't make much sense since networkd is just going to create it's
own socket on startup anyway. The difference here is that we have
configuration-time control over things like socket buffer sizes vs
compile-time constants.

For larger setups where networkd has to create a lot of (virtual)
devices the default buffer size of currently 128MB is not enough.

A good example is a machine with >100 virtual interfaces (e.g.,
wireguard tunnels, VLANs, …) that all have to be brought up during
startup. The receive buffer size will spike due to all the generated
message from the new interfaces. Eventually some of the message will be
dropped since there is not enough (permitted) buffer space available.

By having networkd start through / with a netlink socket created by
systemd we can configure the `ReceiveBufferSize` parameter in the socket
options without recompiling networkd.

Since the actual memory requirements depend on hardware, timing, exact
configurations etc. it isn't currently possible to infer a good default
from within the NixOS module system. Administrators are advised to
monitor the logs of systemd-networkd for `rtnl: kernel receive buffer
overrun` spam and increase the memory as required.

Note: Increasing the ReceiveBufferSize doesn't allocate any memory.  It
just increases the upper bound on the kernel side. The memory allocation
depends on the amount of messages that are queued on the kernel side of
the netlink socket.
2020-06-16 00:41:41 +02:00
Samuel Dionne-Riel 04161c4c72
Merge pull request #90391 from samueldr/fix/manual-zstd-note
nixos/release-notes: Amend note about image compression
2020-06-15 14:58:39 -04:00
Samuel Dionne-Riel 0f7fb7d62f nixos/release-notes: Amend note about image compression 2020-06-15 14:46:22 -04:00
Florian Klink af3c1000a4
Merge pull request #90343 from flokli/hardware-u2f-remove
hardware/u2f: remove module
2020-06-15 17:53:47 +02:00
Frederik Rietdijk 59dda0a42a Merge master into staging-next 2020-06-15 08:07:00 +02:00
Silvan Mosberger 4c67f879f0
Merge pull request #90380 from mdlayher/mdl-corerad-passasfile
nixos/corerad: use passAsFile while converting settings JSON to TOML
2020-06-15 00:42:25 +02:00
Maximilian Bosch e8245546f8
Merge pull request #90297 from lheckemann/other-distro-tool-install-command
manual: use less weird way of installing nixos tools
2020-06-15 00:37:57 +02:00
Matt Layher 562beabff3
nixos/corerad: use passAsFile while converting settings JSON to TOML
Signed-off-by: Matt Layher <mdlayher@gmail.com>
2020-06-14 13:30:17 -04:00
Silvan Mosberger 00e448172f
Merge pull request #89781 from mdlayher/mdl-corerad-settings 2020-06-14 16:48:54 +02:00
Matt Layher f1a4b100fd
nixos/corerad: add settings option to supersede configFile
Signed-off-by: Matt Layher <mdlayher@gmail.com>
2020-06-14 10:07:16 -04:00
Florian Klink 89c3e73dad hardware/u2f: remove module
udev gained native support to handle FIDO security tokens, so we don't
need a module which only added the now obsolete udev rules.

Fixes: https://github.com/NixOS/nixpkgs/issues/76482
2020-06-14 15:13:31 +02:00
Linus Heckemann 01ee5c9271 manual: use less weird way of installing nixos tools 2020-06-14 10:39:43 +02:00
Peter Hoeg eb62c7edc8
Merge pull request #90261 from prusnak/installer-zstd-rm
images: remove original files when using zstd for compression
2020-06-14 10:39:10 +08:00
Pavol Rusnak 490fc040be
images: remove original files when using zstd for compression 2020-06-14 00:19:11 +02:00
Michele Guerini Rocco 1d924f0354
Merge pull request #89772 from rnhmjoj/dnschain
dnschain: remove
2020-06-13 13:37:02 +02:00
rnhmjoj 8fa6c0d12d
nixos/release-notes: document dnschain removal 2020-06-13 12:33:31 +02:00
rnhmjoj 2e5019b92c
dnschain: remove package and NixOS module
The software is unmaintained since ~2014 and the package
can't be built anymore (issue #89205).
2020-06-13 12:33:31 +02:00
Arian van Putten 71a6d32c18 nixos/timesyncd: Make dbus-activatible
Upstream has this alias too; so that dbus activation works.
What I don't fully understand is why this would ever be useful given
this unit is already started way in early boot; even before dbus is up.
But lets just keep behaviour similar to upstream and then ask these
questions to upstream.
2020-06-13 12:23:45 +02:00
Arian van Putten cd1dedac67 nixos/networkd: Make activatible through dbus and netlink
With this systemd buffers netlink messages in early boot from the kernel
itself; and passes them on to networkd for processing once it's started.
Makes sure no routing messages are missed.

Also makes an alias so that dbus can activate this unit. Upstream has
this too.
2020-06-13 12:23:45 +02:00
Arian van Putten 0e18e5db99 nixos/resolved: Include dbus alias of resolved unit
This will make dbus socket activation for it work

When `systemd-resolved` is restarted; this would lead to unavailability
of DNS lookups.  You're supposed to use DBUS socket activation to buffer
resolved requests; such that restarts happen without downtime
2020-06-13 12:23:45 +02:00
Frederik Rietdijk 1523382160 Merge master into staging-next 2020-06-13 11:02:21 +02:00
Emery Hemingway b8a9e3eea1 nixos/lib/make-disk-image.nix: VDI support 2020-06-13 11:08:48 +05:30
John Ericson 1c4480e931
Merge pull request #90157 from obsidiansystems/socket-based-ipfs
Add socket-based IPFS support
2020-06-12 18:31:01 -04:00
Matthew Bauer 2c2f6c0b38 nixos/ipfs: only set listenstream when gateway/api is default 2020-06-12 17:15:34 -05:00
Matthew Bauer 982a17a48e nixos/ipfs: always expose sockets 2020-06-12 17:15:34 -05:00
Matthew Bauer fa06d8f961 nixos/ipfs: actually use upstream systemd units 2020-06-12 17:15:34 -05:00
Matthew Bauer b36ef706fb nixos/ipfs: add startWhenNeeded option
This makes it possible to only start IPFS when needed. So a user’s
IPFS daemon only starts when they actually use it.

A few important warnings though:

  - This probably shouldn’t be mixed with services.ipfs.autoMount
    since you want /ipfs and /ipns aren’t activated like this
  - ipfs.socket assumes that you are using ports 5001 and 8080 for the
    API and gateway respectively. We could do some parsing to figure
    out what is in apiAddress and gatewayAddress, but that’s kind of
    difficult given the nonstandard address format.
  - Apparently? this doesn’t work with the --api commands used in the tests.

Of course you can always start automatically with startWhenNeeded =
false, or just running ‘systemctl start ipfs.service’.

Tested with the following test (modified from tests/ipfs.nix):

  import ./make-test-python.nix ({ pkgs, ...} : {
    name = "ipfs";

    nodes.machine = { ... }: {
      services.ipfs = {
        enable = true;
        startWhenNeeded = true;
      };
    };

    testScript = ''
      start_all()

      machine.wait_until_succeeds("ipfs id")
      ipfs_hash = machine.succeed("echo fnord | ipfs add | awk '{ print $2 }'")

      machine.succeed(f"ipfs cat /ipfs/{ipfs_hash.strip()} | grep fnord")
    '';
  })

Fixes #90145

Update nixos/modules/services/network-filesystems/ipfs.nix

Co-authored-by: Florian Klink <flokli@flokli.de>
2020-06-12 17:15:27 -05:00
Jörg Thalheim 8df5edc153
Merge pull request #87178 from hax404/teeworlds-module-test
nixos/{modules,tests}/teeworlds: init
2020-06-12 19:52:06 +01:00
Maximilian Bosch 267b93da34
Merge pull request #89662 from aanderse/ssmtp
nixos/ssmtp: add settings option
2020-06-12 16:09:13 +02:00
Michele Guerini Rocco a2fd1ba544
Merge pull request #89159 from datafoo/fix-issue-89158
nixos/networking: check interface state files exist before acting on them
2020-06-12 15:31:57 +02:00
Aaron Andersen ad2330f642 nixos/ssmtp: drop authPass option in favor of authPassFile, or services.ssmtp.settings.AuthPass if absolutely required 2020-06-12 06:41:56 -04:00
Frederik Rietdijk febc27b59a Merge master into staging-next 2020-06-12 08:57:26 +02:00
Matthew Bauer c5f40198f3 nixos/ipfs: consolidate services into one ipfs.service
Previously we had three services for different config flavors. This is
confusing because only one instance of IPFS can run on a host / port
combination at once. So move all into ipfs.service, which contains the
configuration specified in services.ipfs.

Also remove the env wrapper and just use systemd env configuration.
2020-06-11 15:27:22 -05:00
Matthew Bauer 74ff433320 nixos/ipfs: remove unused auto migrate feature 2020-06-11 14:32:06 -05:00
adisbladis a5a52e8c73
Merge pull request #88718 from adisbladis/vmware-xorg-driver-defaults
services.x11.videoDrivers: Don't include vmware driver on non-x86 platforms
2020-06-11 19:03:24 +02:00
adisbladis 1a5dafcd5b
services.x11.videoDrivers: Don't include vmware driver by default
A better option for vmware guests is to set `virtualisation.vmware.guest.enable`.
2020-06-11 18:49:29 +02:00
Martin Milata 876bf3abc9 nixos/prometheus-lnd-exporter: init 2020-06-11 18:23:54 +02:00
Matthew Bauer 656783a3d1
Merge pull request #89540 from Patryk27/fixes/lxd-lxcfs
Fix `lxd`, so that it works with `lxcfs`
2020-06-11 10:49:40 -05:00
Matthew Bauer a4959d36ef
Merge pull request #90128 from vcunat/p/locales-priority
nixos i18n.supportedLocales: increase systemPackages priority
2020-06-11 10:44:35 -05:00
WilliButz 3190ba12f7
Merge pull request #90077 from mdlayher/mdl-nixos-apcupsd
nixos/prometheus-apcupsd-exporter: new module
2020-06-11 15:23:33 +02:00
WilliButz 016a538f71
Merge pull request #89810 from mdlayher/mdl-keylight-exporter
prometheus-keylight-exporter: init at 0.1.1
2020-06-11 15:14:17 +02:00
Vladimír Čunát 92aa60918f
nixos i18n.supportedLocales: increase systemPackages priority
https://discourse.nixos.org/t/conflict-between-glibc-and-glibclocales-workaround-inside/7608
2020-06-11 10:22:20 +02:00
Matt Layher e45146d94b
nixos/prometheus-apcupsd-exporter: new module
Signed-off-by: Matt Layher <mdlayher@gmail.com>
2020-06-10 17:33:41 -04:00
Jörg Thalheim 7a4ee350b0
Merge pull request #90027 from Mic92/redis
nixos/redis: add redis group
2020-06-10 19:02:15 +01:00
Vladimír Čunát 13add13388
Merge branch 'master' into staging-next
... to resolve a trivial conflict in libpcap.
2020-06-10 20:00:44 +02:00
David Izquierdo f2d1568282 transmission: add libstdc++ and libgcc_s permissions to apparmor profile 2020-06-10 19:50:24 +02:00
Matt Layher e77426822f
nixos/prometheus-keylight-exporter: new module
Signed-off-by: Matt Layher <mdlayher@gmail.com>
2020-06-10 13:12:43 -04:00
Vladimír Čunát a5f5d020c6
Merge branch 'staging-next' 2020-06-10 16:13:48 +02:00
José Romildo Malaquias a421af29e4
nixos/opensmtpd: add a setgid wrapper for smtpctl (#89962)
The setgid is currently required for offline enqueuing, and
unfortunately smtpctl is currently not split from sendmail so there's
little running around it.
2020-06-10 15:08:36 +02:00
Jörg Thalheim 10acf9ae00
nixos/redis: add redis group 2020-06-10 08:58:34 +01:00