Commit Graph

25606 Commits

Author SHA1 Message Date
AndersonTorres
a2658f4633 nixos/tests/mpd.nix: mpc_cli -> mpc-cli 2022-01-24 23:24:06 -03:00
Marijan Petričević
7765670c8a make output_directory an optional parameter 2022-01-25 01:18:52 +01:00
Marijan Petričević
f9b5f9dba7 nixos/test-driver: use an argument instead of the out env-var 2022-01-25 01:17:29 +01:00
github-actions[bot]
bbbd0a92af
Merge master into staging-next 2022-01-25 00:02:13 +00:00
Luflosi
1c58cdbeed
nixos/modprobe: add boot.initrd.extraModprobeConfig option
This option behaves exactly like `boot.extraModprobeConfig`, except that it also includes the generated modprobe.d file in the initrd.
Many years ago, someone tried to include the normal modprobe.d/nixos.conf file generated by `boot.extraModprobeConfig` in the initrd: 0aa2c1dc46. This file contains a reference to a directory with firmware files inside. Including firmware in the initrd made it too big, so the commit was reverted again in 4a4c051a95.
The `boot.extraModprobeConfig` option not changing the initrd caused me much confusion because I tried to set the maximum cache size for ZFS and it didn't work.
Closes https://github.com/NixOS/nixpkgs/issues/25456.
2022-01-24 22:56:14 +01:00
Bernardo Meurer
16f77e1412
Merge pull request #153932 from jmc-figueira/wine-wayland
wine-wayland: added derivation for building the experimental Wayland driver for Wine
2022-01-24 20:52:24 +00:00
Guillaume Girol
1b1fe46bb1
Merge pull request #156314 from B4dM4n/nixos-tests-missing
nixos/tests: add missing tests
2022-01-24 19:32:15 +00:00
github-actions[bot]
a45818989a
Merge master into staging-next 2022-01-24 18:01:03 +00:00
Franz Pletz
6e71fca817
Merge pull request #156408 from dali99/nixos-nginx-defaultAddresses 2022-01-24 16:40:57 +01:00
Robert Hensing
48dbe26229 nixos/doc: Document types.unique 2022-01-24 16:31:59 +01:00
Robert Hensing
4800f30841 nixos: Explain system.build.installBootLoader's odd default
I don't really approve of this solution, but documenting its
purpose was the least I could do for now.
2022-01-24 16:17:20 +01:00
Robert Hensing
511e89f5a6 nixos: Make system.build.installBootLoader a proper option
This improves the error message when the configuration contains
more than one boot loader.
2022-01-24 16:17:19 +01:00
Robert Hensing
2aa7c25808 nixos: Document system.build.toplevel 2022-01-24 16:16:46 +01:00
Patrick Hilhorst
746c4bdb22
Merge pull request #155904 from houstdav000/patch/quorum_module_test 2022-01-24 15:17:08 +01:00
pennae
865a9ed3f5
Merge pull request #155669 from schuelermine/patch-mkPackageOption
lib/options: Add mkPackageOption
2022-01-24 13:35:32 +00:00
Renaud
454272e7ff
Merge pull request #155847 from onny/dokuwikicleanup
nixos/dokuwiki: Minor code cleanup
2022-01-24 13:42:57 +01:00
github-actions[bot]
6fee71d339
Merge master into staging-next 2022-01-24 12:01:16 +00:00
Jonas Chevalier
e7dbfd7ece
terraform.withPlugins: clean and remove 0.12 support (#155477)
Now that the terraform 0.12 compatibility is not needed anymore, the
`terraform.withPlugins` and `terraform-providers.mkProvider`
implementations can be simplified.

Instead of building a bunch of bin wrappers on instantiation, the
providers are now stored in
`$out/libexec/terraform-providers/<registry>/<owner>/<name>/<version>/<os>_<arch>/terraform-provider-<name>_v<version>`
and then a simple `buildEnv` can be used to merge them.

This breaks back-compat so it's not possible to mix-and-match with
previous versions of nixpkgs. In exchange, it now becomes possible to
use the providers from
[nixpkgs-terraform-providers-bin](https://github.com/numtide/nixpkgs-terraform-providers-bin)
directly.
2022-01-24 12:53:05 +01:00
Patrick Hilhorst
4ed7bed68d
Merge branch 'master' into nixos-tests-missing 2022-01-24 12:05:30 +01:00
Scott Worley
3f70c90d7a nixos/tests/installer: Fix race in bcache test
It looks like "make-bcache" also registers the devices, so the separate
registration afterwords is unnecessary.

Previously, the separate registration right afterwords didn't cause
a problem, presumably because it won the race with make-bcache's
registration.  After 1640359f33 slightly
changed the timing of command execution in tests, the separate
registration often fails with the error message "device already
registered", stopping the test.
2022-01-24 10:58:23 +01:00
github-actions[bot]
b261cac75a
Merge master into staging-next 2022-01-24 06:01:18 +00:00
Bernardo Meurer
7e395a4f40
Merge pull request #154180 from lovesegfault/roon-server-firewall-fix
nixos/roon-server: open TCP ports 9330-9332 in firewall
2022-01-24 02:36:14 +00:00
Samuel Dionne-Riel
18ebd1c330
Merge pull request #153409 from tpwrules/fix-nonx86-iso-reproducibility
installer/cd-dvd/iso-image: avoid leaking build timestamps on non-x86
2022-01-23 21:15:26 -05:00
João Figueira
ae10fad86b
Merge branch 'master' into wine-wayland 2022-01-24 01:33:13 +00:00
Daniel Olsen
ab7e6995ac nixos/nginx: Add defaultListenAddresses option
Lets you specify the default listen address if none are listed in the vhost configuration.

Useful for hosts with more than one ip
2022-01-24 02:20:30 +01:00
Sandro
983a352d8f
Merge pull request #143687 from Synthetica9/handbrake-installcheck 2022-01-24 01:06:37 +01:00
github-actions[bot]
11cced7438
Merge master into staging-next 2022-01-24 00:01:45 +00:00
Robert Hensing
ccb85a53b6 nixos: Make system.build a submodule with freeformType
This allows the values below it to be specified as options, while
remaining compatible with existing code.
2022-01-24 00:52:46 +01:00
Robert Hensing
3ac955acf4 nixos/system/build: Extract
Modules that do not depend on e.g. toplevel should not have to include it just to set
things in `system.build`. As a general rule, this keeps tests simple, usage flexible
and evaluation fast. While one module is insignificant, consistency and good practices
are.
2022-01-24 00:47:57 +01:00
0x4A6F
98590033ad
Merge pull request #154372 from zhaofengli/sd-image-rv64-installer
sd-image-riscv64: Add an -installer variant like others
2022-01-24 00:46:24 +01:00
Eirik Nygaard
d53ef8b822
nixos/locate Add support for plocate (#156185) 2022-01-24 00:36:51 +01:00
Michael Weiss
a3d847c3bd
Merge pull request #151902 from primeos/sway
sway: 1.6.1 -> 1.7
2022-01-23 21:46:19 +01:00
Guillaume Girol
64a18f1a8e
Merge pull request #152877 from cleeyv/jitsi-update
Update of all Jitsi Meet components
2022-01-23 20:44:55 +00:00
Anselm Schüler
c008b3d100 nixos/docs/option-declarations: Document mkEnableOption and mkPackageOption
This is a squashed commit. These are the original commit messages:

lib/option: Improve comment

better comment

Update documentation

Updated nixos/doc/manual/development/options-declarations.md with info on mkEnableOption and mkPackageOption.
Updated the comment on mkEnableOption in lib/options.nix

remove trailing whitespace

nixos/doc/option-declarations: Update IDs & formatting

nixos/docs/option-declarations: Escape angle brackets

Build DB from MD

(Amended) Fix typo
Co-authored-by: pennae <82953136+pennae@users.noreply.github.com>

(Amended) Build DB from MD (again)
2022-01-23 19:44:21 +01:00
Michael Weiss
2e719d1cda
sway: 1.6.1 -> 1.7
Release notes: https://github.com/swaywm/sway/releases/tag/1.7

Notable (backward incompatible) changes:
- The default terminal changed from Alacritty to foot

Known issues:
- `swaynag` will crash when Sway 1.6.1 is still running while the Nix
  package (and thus `swaynag`) is already updated to version 1.7.
- The experimental Ozone/Wayland support of Electron apps will be broken
  for a while. Electron version 17 should work but the Chromium fixes
  haven't yet been backported to Electron version 16.

NixOS module: programs.sway.extraPackages: The "alacritty" package was
replaced with "foot".

VM test: We switched from the OpenGL ES 2.0 renderer to Pixman. The
terminal was also changed to foot but Alacritty is still used for the
XWayland test (since foot doesn't support X11).

Co-authored-by: Patrick Hilhorst <git@hilhorst.be>
2022-01-23 19:21:37 +01:00
github-actions[bot]
93a9821309
Merge master into staging-next 2022-01-23 18:01:11 +00:00
Patrick Hilhorst
8b86f9816d
handbrake: convert nixos test to runCommand 2022-01-23 16:42:27 +01:00
Janne Heß
ce8c102a46
Merge pull request #155054 from jonringer/fix-systemd-boot
nixos/systemd-boot: fix error output
2022-01-23 16:23:13 +01:00
Jonas Heinrich
c95e816c65
nixos/wordpress: Drop old deprecated interface (#152674) 2022-01-23 23:17:01 +09:00
Linus Heckemann
3e4ce97430 nixos/promtail: use promtail package 2022-01-23 14:01:29 +01:00
github-actions[bot]
8d5200b415
Merge master into staging-next 2022-01-23 12:02:06 +00:00
Lara
2a701e8061 nixos/matrix-synapse: Wrap register_new_matrix_user
`register_new_matrix_user` is a script provided by the matrix-synapse
package to create a new matrix user on the command line.

This commit provides a wrapper around `register_new_matrix_user` that
automatically passes the url (and `registration_shared_secret`, if
present) as CLI arguments.
2022-01-23 11:27:39 +00:00
Fabian Möller
fd6b95db22
nixos/tests: add missing tests
Some tests from the `nixos/tests` folder were missing in the `all-tests.nix`
file. This meant they couldn't be run from the `nixosTests` attribute
set and therefore not be linked to their packages.
2022-01-23 12:11:05 +01:00
Scott Worley
e7a1007725 nixos/tests/installer: Fix after sandboxed-docs change fc614c3 2022-01-23 00:09:19 -08:00
Sandro
053e56be55
Merge pull request #154036 from K900/regener8n 2022-01-23 07:22:41 +01:00
github-actions[bot]
591c66a4e3
Merge master into staging-next 2022-01-23 06:00:56 +00:00
Jonathan Ringer
4cf0848fc8 nixosTests.boot-stage1: fix kernel build with 5.15 2022-01-22 17:45:39 -08:00
Kevin Amado
6aaf4938f8
nixos/virtualisation.virtualbox.guest: remove override
- See nixos/nixpkgs#156242 for further information
2022-01-22 20:36:24 -05:00
github-actions[bot]
429249f120
Merge master into staging-next 2022-01-23 00:01:54 +00:00
Janne Heß
80a29b0d92
Merge pull request #149684 from helsinki-systems/feat/multiple-mariadb-versions
mariadb: support multiple versions
2022-01-22 22:24:45 +01:00
Fabian Möller
af628f46a1
nixos/tests/geth: fix api check
Since https://github.com/ethereum/go-ethereum/pull/21686 the `chainId`
API returns an error when the chain is not synced. So use
`blockNumber` as a basic function test.
2022-01-22 22:07:14 +01:00
K900
6cecc1f603 n8n: 0.105.0 -> 0.160.0, fix build
- regenerate everything
- hardcode to build with node 14 (upstream doesn't support 16 yet)
- remove optional deps to make things build without python2
- set HOME in service environment to prevent crashing

Changes in node-*.nix are autogenerated.
2022-01-22 23:43:56 +03:00
Guillaume Girol
4bbd574b2b
Merge pull request #152367 from helsinki-systems/fix/dovecot-ssh_dh
nixos/dovecot: make ssl_dh optional
2022-01-22 18:07:16 +00:00
github-actions[bot]
6922792376
Merge master into staging-next 2022-01-22 18:01:07 +00:00
pennae
06a70d2e08
Merge pull request #153594 from hercules-ci/flake-avoid-copying-nixpkgs-path
pkgs.path: Avoid copying when used via flake
2022-01-22 17:14:53 +00:00
Guillaume Girol
cb19ae8afe
Merge pull request #156004 from ju1m/redis
nixos/redis: fix port option
2022-01-22 15:51:32 +00:00
Robert Hensing
5d29853c38 nixos/documentation.nix: Use builtins.storePath when appropriate 2022-01-22 16:47:02 +01:00
Robert Hensing
0b222173db flake.nix: Set nixpkgs.config.path 2022-01-22 16:43:05 +01:00
Robert Hensing
fecf325059 nixos/documentation.nix: Only use store non-flake pkgs.path directly when already copied 2022-01-22 16:42:08 +01:00
Robert Hensing
15a00be189 nixos/documentation: avoid copying nixpkgs subpaths, iteration 2
This kind of reverts commit 893ffee286.
2022-01-22 16:42:08 +01:00
github-actions[bot]
bc45bc6d10
Merge master into staging-next 2022-01-22 06:01:28 +00:00
ajs124
5833536257 mariadb: mention multiple release support in release notes 2022-01-22 02:28:55 +01:00
ajs124
ef5d714f8c nixos/tests/mysql-backup: test multiple mariadb versions 2022-01-22 02:27:05 +01:00
ajs124
37ba30c494 nixos/tests/mysql-autobackup: test multiple mariadb versions 2022-01-22 02:27:05 +01:00
ajs124
a2ec554e83 nixos/tests/mysql-replication: test multiple mariadb versions 2022-01-22 02:27:05 +01:00
ajs124
65dfe147b7 nixos/tests/mariadb-galera: test multiple mariadb versions
merge both tests and completely refactor
2022-01-22 02:27:04 +01:00
ajs124
38998112c1 nixos/tests/mysql: test multiple mariadb versions 2022-01-22 02:27:04 +01:00
pennae
745802b18e
Merge pull request #156083 from Luflosi/fix-test-networking.networkd.static
nixos/networkd: fix networking.networkd.static test
2022-01-22 01:04:48 +00:00
github-actions[bot]
1ca0ba653f
Merge master into staging-next 2022-01-22 00:01:46 +00:00
pennae
ce49a1d98c
Merge pull request #155517 from Radvendii/knownHosts
programs.ssh.knownHosts.<name>.hostNames -> extraHostNames
2022-01-21 23:24:05 +00:00
Julien Moutinho
32368f32d1 nixos/redis: fix port option 2022-01-21 23:02:20 +01:00
Luflosi
64560de406
nixos/networkd: fix networking.networkd.static test
Commit ca58bd0a50 broke the test networking.networkd.static. This happened because the test sets `networking.defaultGateway`. This is implemented by adding the gateway to the list of `routes` using `mkDefault`. The `routes` are then overridden by an empty list in the newly added code. Replace `mkDefault` with `id` so the two lists are merged and everything (hopefully) works as expected.
See https://github.com/NixOS/nixpkgs/pull/144590 for a more context.
2022-01-21 19:35:17 +01:00
github-actions[bot]
fd5336b13e
Merge master into staging-next 2022-01-21 18:01:25 +00:00
Robert Hensing
c4a5efa965
Merge pull request #155522 from Julow/single_line_str
types.singleLineStr: strings that don't contain '\n'
2022-01-21 17:39:13 +01:00
Janne Heß
45048dfd0a
Merge pull request #153095 from Madouura/dev/bcachefs-init
nixos/stage-1: colon-separated multi-device support
2022-01-21 16:35:10 +01:00
Robert Hensing
2f17ba1d36
Merge pull request #155962 from NixOS/containers-bootloader
nixos/container-config: Only use `true` as fallback
2022-01-21 15:13:51 +01:00
github-actions[bot]
e156d59d2b
Merge master into staging-next 2022-01-21 12:01:24 +00:00
Fabian Möller
28b3e689bf
nixos/tests/teeworlds: fix blocking execute calls 2022-01-21 12:05:58 +01:00
Lassulus
0defcc063b
Merge pull request #155894 from ivanbrennan/xmonad-tests-remove-sleeps
nixosTests.xmonad: avoid sleep()
2022-01-21 11:33:03 +01:00
Maximilian Bosch
588fd794b3
Merge pull request #155502 from yayayayaka/nextcloud-optional-headers
nixos/nextcloud: Optionally disable setting HTTP response headers
2022-01-21 10:53:28 +01:00
Naïm Favier
a298b23c10
nixos/tests: also set TimeoutStart in systemd.user.extraConfig 2022-01-21 04:18:05 +01:00
github-actions[bot]
fc3ddb8979
Merge master into staging-next 2022-01-21 00:01:42 +00:00
Naïm Favier
23cfef7ec0
nixos: make GIO_EXTRA_MODULES a session variable
Allow applications started by the systemd user session manager to find
their GIO_EXTRA_MODULES.
2022-01-21 00:44:35 +01:00
Naïm Favier
d25ffc3a0c
nixos/gdm: add gdm to XDG_DATA_DIRS
This is necessary so that gnome-session can find GDM's gnome-login.session,
see https://gitlab.gnome.org/GNOME/gdm/-/issues/756
2022-01-21 00:44:35 +01:00
Michele Guerini Rocco
3e5848ef15
Merge pull request #144590 from Luflosi/networkd-routes
nixos/networkd: Add routes from interfaces to [Route] section of .network file
2022-01-21 00:33:50 +01:00
Naïm Favier
1147d72481
nixos: use uniq in the type of system.build
`unspecified` will happily concatenate strings together from two
unrelated modules, causing spurious errors (see #155925).
2022-01-20 23:28:09 +01:00
Jan Tojnar
b1f7021657
nixos/container-config: Only use true as fallback
LXC containers like those used by VPSAdminOS might want to install a bootloader
so passing `true` to `system.build.installBootLoader` without any priority specified,
causes a conflict for such systems with the recent `system.build` changes:

4014fb6a64

Fixes: https://github.com/NixOS/nixpkgs/issues/155839
2022-01-20 23:10:13 +01:00
pennae
2ed91b7349
Merge pull request #155854 from datafoo/networkd-IPMasquerade-assert
nixos/networking: fix assertion on IPMasquerade
2022-01-20 20:56:55 +00:00
Jan Tojnar
5ac7a55c73
Merge pull request #155862 from ncfavier/revert-150980-gdm-test
nixosTests.gnome: Revert "add autologin delay to catch GDM failures"
2022-01-20 21:38:21 +01:00
Alyssa Ross
b1724b2f81 nixos/activation-script: ensure gcroots dir exists
If the Nix daemon has never been enabled (nix.enable has always been
set to false), the gcroots directory won't exist.  If the Nix daemon
is later enabled, the GC roots for booted-system and current-system
will be missing, and they might end up being garbage collected.  Since
it's cheap to add GC roots even if the daemon will never be enabled,
let's just always add them so we're okay in the case where the daemon
is enabled later.
2022-01-20 20:24:32 +00:00
pennae
530b033563
Merge pull request #155928 from ncfavier/borgbackup-literalDocBook
nixos/borgbackup: remove literalDocBook in description
2022-01-20 19:57:26 +00:00
Luflosi
ca58bd0a50
nixos/networkd: Add routes from interfaces to [Route] section of .network file
Closes https://github.com/NixOS/nixpkgs/pull/93635.
2022-01-20 20:14:55 +01:00
Maximilian Bosch
fde7c9d409
Merge pull request #155499 from bachp/gitea-dump-file
nixos/gitea: allow specifying dump format and name
2022-01-20 20:11:51 +01:00
Naïm Favier
6565458f9d
nixos/borgbackup: remove literalDocBook in description 2022-01-20 20:10:26 +01:00
Patrick Hilhorst
ffccc4c558
nixosTests.quorum: use succeed everywhere 2022-01-20 19:58:42 +01:00
Patrick Hilhorst
a7c72013c8
nixosTests.quorum: use less opaque strings and more nix objects 2022-01-20 19:58:19 +01:00
github-actions[bot]
ce88a19065
Merge master into staging-next 2022-01-20 18:01:19 +00:00
David Houston
1bbd418013
nixos/quorum: Patch test to not run indefinitely
As written, the nixos/quorum module will simply run forever, and has
been timing out in Hydra. Implement a fix for such by changing the final
statement from a wait_until_succeeds to simply succeed, forcing the test
to succeed or fail instead of run indefinitely.
2022-01-20 11:35:23 -05:00
ivanbrennan
8a1d379992 nixosTests.xmonad: add ivanbrennan to maintainers 2022-01-20 11:17:03 -05:00
Janne Heß
b52372675d
nixos/switch-to-configuration: Clean up lower part of the script
- Fully get rid of `parseKeyValues` and use systemctl features for that
- Add some regex modifiers recommended by perlcritic
- Get rid of a postfix if
- Sort units when showing their status
- Clean the logic for showing what failed from `elif` to `next`
- Switch from `state` to `substate` for `auto-restart` because that's
  actually where the value is stored
- Show status of units with one single systemctl call and get rid of
  COLUMNS in favor of --full
- Add a test for failing units
2022-01-20 17:10:02 +01:00
ivanbrennan
51ff3add1a nixosTests.xmonad: avoid sleep()
Replace sleep() calls where possible, using wait_for_* methods. This
should provide more robustness in cases where tests are running on a
congested system.
2022-01-20 09:58:05 -05:00
rnhmjoj
79b4b7eaa1
docs/release-notes: document dhcpd hardening 2022-01-20 15:54:38 +01:00
rnhmjoj
1c1ade5062
nixos/tests/systemd-networkd-ipv6-prefix-delegation: fix
Since dhcpd has been hardened (DynamicUser → NoNewPrivileges) it can't
use a setcap wrapper. Instead, we add the net_admin capability to it's
ambient set and run `ip route` directly. This is also safer that giving
everyone permisison to change the routing table.
2022-01-20 15:54:38 +01:00
rnhmjoj
59e51f359b
Revert "Revert "nixos/dhcpd: switch to DynamicUser""
This reverts commit 0e5dab9db7,
thus bringing back dd9883b2fb.
2022-01-20 15:52:53 +01:00
Janne Heß
96d36b0c2e
nixos/switch-to-configuration: Proper unit file parser
This replaces the naive K=V unit parser with a proper INI parser from a
library and adds proper support for override files. Also adds a bunch of
comments about parsing, I hope this makes it easier to understand and
maintain in the future.

There are multiple reasons to do so, the first one is just general
correctness with is nice imo. But to get to more serious reasons (I
didn't put in all that effort for nothing) is that this is the first
step torwards more clever restart/reload handling. By using a library
like Data::Compare a future PR could replace the current way of
fingerprinting units (which is to compare store paths) by comparing the
hashes. This is more precise because units won't get restarted because
the order of the options change, comments are added, some dependency of
writeText changes, .... Also this allows us to add a feature like
`X-Reload-Triggers` so the unit can either be reloaded when these change
or restarted when everything else changes, giving module authors the
ability to have their services reloaded without having to fear that
updates are not applied because the service doesn't get restarted.
Another reason why this feature is nice is that now that the unit files
are parsed correctly (and values are just extracted from one section),
potential future rewrites can just rely on some INI library without
having to implement their own weird parser that is compatible with this
script.

This also comes with a new subroutine to handle systemd booleans because
I thought the current way of handling it was just ugly. This also allows
overriding values this script reads in an override file.

Apart from making this script more compatible with the world around it,
this also fixes two issues I saw bugging exactly 0 (zero) people. First
is that this script now supports multiple override files, also ones that
are not called override.conf and the second one is that `1` and `on` are
treated as bools by systemd but were previously not parsed as such by
switch-to-configuration.
2022-01-20 15:10:23 +01:00
Jonas Heinrich
80475b46f5
nixos/invoiceplane: init module and package at 1.5.11 (#146909) 2022-01-20 22:45:35 +09:00
Robert Hensing
98ae5a9298
Merge pull request #153211 from hercules-ci/minimal-nixos
Add minimal NixOS entrypoint
2022-01-20 14:42:46 +01:00
datafoo
9bfb803dce nixos/networking: fix assertion on IPMasquerade 2022-01-20 13:43:12 +01:00
Naïm Favier
e869dc0ce0
Revert "nixosTests.gnome: add autologin delay to catch GDM failures" 2022-01-20 13:04:47 +01:00
github-actions[bot]
264c91d4e8
Merge master into staging-next 2022-01-20 12:01:11 +00:00
Jonas Heinrich
884daaafcb nixos/dokuwiki: Minor code cleanup 2022-01-20 12:01:09 +01:00
Lassulus
634bcb85e2
Merge pull request #155478 from ivanbrennan/xmonad-enable-configured-recompile
XMonad: enable configured recompile
2022-01-20 11:27:13 +01:00
ivanbrennan
44af29e6f5 nixosTests.xmonad: test configured recompilation
Add test coverage for the enableConfiguredRecompile option, checking
that we can compile and exec a new xmonad from a user's local config, as
well as restart the originally configured xmonad.

As I needed a reliable way to wait for recompilation to finish before
proceeding with subsequent test steps, I adjusted the startup behavior
to write a file ("oldXMonad" or "newXMonad") to /etc upon startup, and
replaced some "sleep" calls with "wait_for_file".
2022-01-20 01:48:05 -05:00
github-actions[bot]
360ff20100
Merge master into staging-next 2022-01-20 06:01:09 +00:00
Sandro
67f0e333d6
Merge pull request #142706 from euank/k3s-tests-update 2022-01-20 03:22:26 +01:00
Sandro
ecebce4031
Merge pull request #153075 from mattchrist/bind-forward-only 2022-01-20 03:04:47 +01:00
ivanbrennan
6c72deb51b nixos/xmonad: update example config
Update the example config to show a working example for xmonad 0.17.0, which
added an argument to the `launch` function and adjusted the location of the
recompiled binary.
2022-01-19 20:31:05 -05:00
github-actions[bot]
b74b591fbe
Merge master into staging-next 2022-01-20 00:01:46 +00:00
ajs124
0efda5e2d0 nixos/dovecot: make use of mkEnableOption 2022-01-20 00:37:02 +01:00
Michele Guerini Rocco
2da332aa2d
Merge pull request #155535 from risicle/ris-libreswan-4.6
libreswan: 4.5 -> 4.6
2022-01-19 22:42:49 +01:00
ajs124
c6683b4f27 nixos/dovecot: make ssl_dh optional
hasn't been needed since 2.3.3, in fact it is encouraged not to use such cipher suites anymore
2022-01-19 22:39:57 +01:00
Pascal Bach
e34a112c18
Merge pull request #155510 from yayayayaka/fix-nextcloud-test
nixos/nextcloud: Fix nixos test on master
2022-01-19 21:48:43 +01:00
Daniel Olsen
88362d1a35 nixos/matrix-synapse: Remove webclient from default listener
Webclient only allows serving a web directory under /_matrix/client
This only incentivizes running the client under the same domain as the homeserver.
Which is not recommended due to CORS.
2022-01-19 19:45:57 +01:00
github-actions[bot]
9e9e41da09
Merge master into staging-next 2022-01-19 18:01:22 +00:00
pennae
989fd06cb8 nixos/ssh: add release notes for extraHostNames option 2022-01-19 17:21:11 +01:00
datafoo
1d3f0903a8 nixos/mosquitto: add package option 2022-01-19 15:59:53 +01:00
Taeer Bar-Yam
552b80dc51
add defaultText
Co-authored-by: pennae <82953136+pennae@users.noreply.github.com>
2022-01-19 09:39:50 -05:00
Taeer Bar-Yam
aa99bd69f0
fix punctuation
Co-authored-by: pennae <82953136+pennae@users.noreply.github.com>
2022-01-19 09:38:13 -05:00
Maciej Krüger
8f086db04f
nixos/cinnamon: fix gnome alias deperaction 2022-01-19 15:33:57 +01:00
Taeer Bar-Yam
8fa2e787f1 modules/programs/ssh: knownHosts -> extraKnownHosts 2022-01-19 08:48:41 -05:00
Robert Hensing
f22ffbc14e
Merge pull request #155598 from hercules-ci/cleanup-nixos-test-lorri
nixos/tests/lorri: Remove redundant stdout redirect
2022-01-19 13:25:28 +01:00
github-actions[bot]
28abf69ffd
Merge master into staging-next 2022-01-19 12:01:24 +00:00
Sandro
42cbcca501
Merge pull request #125474 from jojosch/dnsdist-1.6.0 2022-01-19 11:55:12 +01:00
rnhmjoj
741a585052
nixos/tests/libreswan: fixup 739c51ae4e 2022-01-19 11:43:01 +01:00
Robert Hensing
54a62ae266 nixos/tests/lorri: Remove redundant stdout redirect
Introduced accidentally in https://github.com/NixOS/nixpkgs/pull/144679
2022-01-19 11:22:23 +01:00
Johannes Schleifenbaum
612ad7776a
nixos/dnsdist: add test 2022-01-19 08:24:02 +01:00
Jörg Thalheim
966ea2c020
Merge pull request #150360 from Enzime/fix-netboot-cmdline
netboot: Support cmdline variable from netboot.xyz
2022-01-19 06:53:04 +00:00
github-actions[bot]
0fdca24272
Merge master into staging-next 2022-01-19 00:01:38 +00:00
sternenseemann
48965506a1 lib/asserts: use throw to display message for assertMsg
`assert` has the annoying property that it dumps a lot of code at the
user without the built in capability to display a nicer message. We have
worked around this using `assertMsg` which would *additionally* display
a nice message. We can do even better: By using `throw` we can make
evaluation fail before assert draws its conclusions and prevent it from
displaying the code making up the assert condition, so we get the nicer
message of `throw` and the syntactical convenience of `assert`.

Before:

    nix-repl> python.override { reproducibleBuild = true; stripBytecode = false; }
    trace: Deterministic builds require stripping bytecode.
    error: assertion (((lib).assertMsg  (reproducibleBuild -> stripBytecode))  "Deterministic builds require stripping bytecode.") failed at /home/lukas/src/nix/nixpkgs/pkgs/development/interpreters/python/cpython/2.7/default.nix:45:1

After:

    nix-repl> python.override { reproducibleBuild = true; stripBytecode = false; }
    error: Deterministic builds require stripping bytecode.
2022-01-19 00:50:06 +01:00
Robert Hensing
ef6f8783ea nixos/doc/rl-2205.section.md: Hint to avoid merge conflicts 2022-01-18 23:40:28 +01:00
Nikolay Amiantov
e5e160e08e
Merge pull request #155367 from talyz/keycloak-loadcredential
nixos/keycloak: Use LoadCredential to load secrets + module formatting
2022-01-19 00:47:58 +03:00
Jules Aguillon
df590070b0 types.singleLineStr: strings that don't contain '\n'
Add a new type, inheriting 'types.str' but checking whether the value
doesn't contain any newline characters.

The motivation comes from a problem with the
'users.users.${u}.openssh.authorizedKeys' option.
It is easy to unintentionally insert a newline character at the end of a
string, or even in the middle, for example:

    restricted_ssh_keys = command: keys:
      let
        prefix = ''
          command="${command}",no-pty,no-agent-forwarding,no-port-forwarding,no-X11-forwarding
        '';
      in map (key: "${prefix} ${key}") keys;

The 'prefix' string ends with a newline, which ends up in the middle of
a key entry after a few manipulations.

This is problematic because the key file is built by concatenating all
the keys with 'concatStringsSep "\n"', with result in two entries for
the faulty key:

    ''
      command="...",options...
      MY_KEY
    ''

This is hard to debug and might be dangerous. This is now caught at
build time.
2022-01-18 22:06:34 +01:00
Sandro
5c4fa6964f
Merge pull request #138386 from Yarny0/tsm-client 2022-01-18 20:50:28 +01:00
Lara
909536115d nixos/nextcloud: Fix nixos test on master
Resolves #155509
2022-01-18 19:09:22 +00:00
Lara
7109660b9a nixos/nextcloud: Optionally disable setting HTTP response headers
This commit introduces a new option
`services.nextcloud.nginx.recommendedHttpHeaders` that can be used to
optionally disable serving recommended HTTP Response Headers in nginx.
This is especially useful if some headers are already configured
elsewhere to be served in nginx and thus result in duplicate headers.

Resolves #120223
2022-01-18 18:33:11 +00:00
bb2020
272fc86d2c nixos/mbpfan: convert to structural settings 2022-01-18 21:31:33 +03:00
bb2020
6f7bf7bc46 nixos/mbpfan: set aggressive default values 2022-01-18 21:26:52 +03:00
github-actions[bot]
1b0315af15
Merge master into staging-next 2022-01-18 18:01:04 +00:00
pennae
54fcd869d8
Merge pull request #155009 from domenkozar/cachix-agent
nixos: add cachix-agent service
2022-01-18 17:06:39 +00:00
Pascal Bach
fa233bca31 nixos/gitea: allow specifying dump format and name 2022-01-18 18:05:33 +01:00
Vladimír Čunát
24bb158cf0
Merge #143715: nixos/malloc: fix scudo on aarch64-linux 2022-01-18 17:39:33 +01:00
pennae
21115ea8f9
Merge pull request #155041 from tokudan/ssh-rename-optionCRA
openssh: Rename option, old option is deprecated upstream
2022-01-18 16:07:20 +00:00
Domen Kožar
91cc0cf63b
Update nixos/modules/services/system/cachix-agent/default.nix
Co-authored-by: pennae <82953136+pennae@users.noreply.github.com>
2022-01-18 16:49:18 +01:00
talyz
07b64a2ad7
nixos/bookstack: Add option config to replace extraConfig
The `extraConfig` parameter only handles text - it doesn't support
arbitrary secrets and, with the way it's processed in the setup
script, it's very easy to accidentally unescape the echoed string and
run shell commands / feed garbage to bash.

To fix this, implement a new option, `config`, which instead takes a
typed attribute set, generates the `.env` file in nix and does
arbitrary secret replacement. This option is then used to provide the
configuration for all other options which change the `.env` file.
2022-01-18 15:16:23 +01:00
talyz
a0b54a0626
nixos/bookstack: Simplify the nginx setup
Use the recommended defaults and remove unnecessary configuration.
2022-01-18 15:16:17 +01:00
talyz
df607c1d1f
nixos/bookstack: Make the hostname configurable...
...and set a reasonable default `appURL` based on it.

This is pretty much required when configuring ACME, and useful in
general.
2022-01-18 15:16:11 +01:00
talyz
e7fa7fdffc
nixos/bookstack: Clear the cache more reliably
When upgrading bookstack, if something in the cache conflicts with the
new installation, the artisan commands might fail. To solve this, make
the cache lifetime bound to the setup service. This also removes the
`cacheDir` option, since the path is now handled automatically by
systemd.
2022-01-18 15:16:04 +01:00
Franz Pletz
70630b4a19
Merge pull request #155299 from numinit/mattermost-6.3 2022-01-18 14:27:54 +01:00
Daniel Frank
d851c11a9f
openssh: add release-notes entry for services.openssh.{challengeResponseAuthentication -> kbdInteractiveAuthentication} 2022-01-18 14:01:20 +01:00
Daniel Frank
11b2191b74
openssh: Update tests to use new option name 2022-01-18 13:58:33 +01:00
Daniel Frank
6d985ef174
openssh: Rename option, old option is deprecated upstream 2022-01-18 13:58:29 +01:00
pennae
363577461d
Merge pull request #153346 from Stunkymonkey/borg-persistent
nixos/borgbackup: Add a persistentTimer option.
2022-01-18 12:29:17 +00:00
Janne Heß
44cb0a4c67
Merge pull request #155443 from vs49688/sy
nixos/modules/syncthing: add 22000/udp to firewall
2022-01-18 13:27:06 +01:00
Franz Pletz
76aa0af628
Merge branch 'master' into mattermost-6.3 2022-01-18 13:23:38 +01:00
github-actions[bot]
50e9a1df18
Merge master into staging-next 2022-01-18 12:01:20 +00:00
Felix Buehler
7caa6f4de4 nixos/borgbackup: move systemd.timers logic into single block 2022-01-18 12:53:36 +01:00
pennae
42d6774dc7
Merge pull request #155295 from InternetUnexplorer/nix-serve-open-firewall
nixos/nix-serve: add openFirewall option
2022-01-18 09:36:12 +00:00
Domen Kožar
42994be64b nixos: add cachix-agent service 2022-01-18 10:26:47 +01:00
Artturi
78ff70f529
Merge pull request #153762 from Artturin/ananicymod1 2022-01-18 10:49:13 +02:00
github-actions[bot]
3dc95a4459
Merge master into staging-next 2022-01-18 06:01:20 +00:00
ivanbrennan
a3ea1bc599 nixos/xmonad: enableConfiguredRecompile
Commit 9a5b5d9fe858f33f7f5ce0870be2b8a38516a1d4 added Haskell
dependencies (GHC and packages) to the xmonad binary's environment even
if xmonad had been preconfigured (via the "config" option). The intent
was to enable one-off recompiling using a local config file (e.g.
~/.config/xmonad/xmonad.hs), so the user can get quick feedback while
developing their config.

While this works, it may not be a common use-case, and it requires some
careful crafting in xmonad.hs itself. On top of that, it significantly
increases the size of the closure.

Given all that, commit b69d9d3c23 removed
GHC and packages from the binary's environment.

But there are still those among us who want to be able to recompile from
a preconfigured xmonad, so let's provide a way to opt-into configured
recompilation.
2022-01-18 00:04:15 -05:00
Zane van Iperen
f533a6d2bd
nixos/modules/syncthing: add 22000/udp to firewall 2022-01-18 11:40:06 +10:00
piegames
71358dd070
Merge pull request #154659: nixos/heisenbridge: Improve hardening 2022-01-18 01:30:12 +01:00
github-actions[bot]
b456d67c98
Merge master into staging-next 2022-01-18 00:01:41 +00:00
InternetUnexplorer
ecda6429f2 nixos/nix-serve: add openFirewall option 2022-01-17 15:14:02 -08:00
Bernardo Meurer
eaf7be02b9
Merge pull request #150859 from helsinki-systems/feat/redo-restart-by-activation-script 2022-01-17 21:11:09 +00:00
Martin Weinelt
e5b47c5c21
Merge pull request #155407 from pennae/mosquitto-startup 2022-01-17 21:29:37 +01:00
pennae
dc101d9fef nixos/mosquitto: wait for network-online.target, not network.target
network.target is reached earlier, but with much fewer services
available. DNS is likely to be not functional before
network-online.target, so waiting for that seems better for that reason
alone. the existing backends for network-online.target all seem to do
reasonable things (wait until all links are in *some* stable state), so
we shouldn't lose anything from waiting.
2022-01-17 20:58:50 +01:00
legendofmiracles
59a07c683a
Merge pull request #154791 from CRTified/fix-154775-adguardhome-settings 2022-01-17 12:45:24 -06:00
Janne Heß
2cf157c781
nixos/switch-to-configuration: Rework activation script restarts
This removes `/run/nixos/activation-reload-list` (which we will need in
the future when reworking the reload logic) and makes
`/run/nixos/activation-restart-list` honor `restartIfChanged` and
`reloadIfChanged`. This way activation scripts don't have to bother with
choosing between reloading and restarting.
2022-01-17 17:57:23 +01:00
Pasquale
45db27da2e
xxh: added tests 2022-01-17 17:01:20 +01:00
Frederik Rietdijk
4d125692e5 Merge master into staging-next 2022-01-17 16:10:06 +01:00
Felix Buehler
91dfaa5453 nixos/borgbackup: start remote backup only if network is available 2022-01-17 15:42:39 +01:00
blargg
697198834c nixos/borgbackup: Add a persistentTimer option.
Persistent starts the backup service on power on if it was missed while
the system was powered down, for example.
2022-01-17 15:42:37 +01:00
Spencer Janssen
ed5883c1b6 zrepl: 0.4.0 -> 0.5.0 2022-01-17 15:35:45 +01:00
github-actions[bot]
0eee7ee8c8
Merge master into staging-next 2022-01-17 12:01:25 +00:00
talyz
95430e31f5
nixos/keycloak: Reformat the code with nixpkgs-fmt 2022-01-17 12:47:53 +01:00
talyz
21b1de2bcd
nixos/keycloak: Inherit library functions and builtins
Instead of referencing all library functions through `lib.` and
builtins through `builtins.` at every invocation, inherit them into
the appropriate scope.
2022-01-17 12:42:30 +01:00
Yarny0
f6dca95c5d tsm-client: add test derivation and a module test
The tsm-client needs a tsm-server to do anything useful.
Without a server, automated tests can just
check diagnostic outputs for plausibility.

The commit at hand adds two tests:

1.
The command line interface `dsmc` is called,
then it is verified that the program does

* report the correct client version,
* find its configuration file,
* report a connection error.

2.
To check the GUI (and the tsm-client nixos module), we add a
vm test which uses the module to install `tsm-client-withGui`.
To verify that the GUI's basic functionality is present,
we skip over all connection failure related error
messages and open the "Connection Information"
dialog from the main application window.
This dialog presents the node name and the client version;
both are verified by the test.

Note: Our `tsm-client` build recipe consists of two packages:
The "unwrapped" package and the final package.
This commit puts the unwrapped one into the final
package's `passthru` so that tests can access
the original version string that is needed to check
the client version reported by the application.
2022-01-17 12:09:27 +01:00
Yarny0
c2192ed77a nixos/tsm-{client,backup}: use new type nonEmptyStr
The module option type `nonEmptyStr` was introduced in commit

a3c5f0cba8

The tsm modules previously simply used
`strMatching ".+"` to prevent empty option strings,
but the new type is more thorough as
it also catches space-only strings.
2022-01-17 12:09:27 +01:00
Yarny0
c5effcaaea nixos/tsm-backup: enable most systemd sandboxing options
This enables some systemd sandboxing
options for the `tsm-backup.service`.
Those settings have been determined by expermentation.
This commit tries hard to protect the filesystem from
write access, but not to hide anything from read access,
so users can backup all files they choose to backup.
An exception are API filesystems (`/dev`, `/proc`, `/sys`):
As their "files" are not stored on persistent storage,
they are sandboxed away as much as possible.

Note that the service still has to run with root
privileges to reach files with limited access permissions.
The obvious alternative to use a dedicated user account and
the `CAP_DAC_READ_SEARCH` capability to permit system-wide
read access while blocking write access does not work.
Experiments have shown that `dsmc` verifies access permissions
for each file before attempting to open it for reading.
Hence `dsmc` refuses to copy files where the file permission
mode blocks read access -- even if process capabilities
would allow it to proceed irrespective of permissions.
2022-01-17 12:09:27 +01:00
Yarny0
3f6d1f5f60 nixos/tsm-{client,backup}: update links in module comments
IBM has changed the URL structures of their support web pages.
The commit at hand updates URLs in two comments
so they follow the new structure.
2022-01-17 12:09:27 +01:00
talyz
5010f4fff9
nixos/keycloak: Use LoadCredential to load secrets
Use systemd's LoadCredential mechanism to make the secret files
available to the service.

This gets rid of the privileged part of the ExecPreStart script which
only served to copy these files and assign the correct
permissions. There's been issues with this approach when used in
combination with DynamicUser, where sometimes the user isn't created
before the ExecPreStart script runs, causing the error

install: invalid user ‘keycloak’

This should fix that issue.

Unfortunately, all of the ExecPreStart script had to be moved to
ExecStart, since credentials aren't provided to ExecPreStart. See
https://github.com/systemd/systemd/issues/19604.
2022-01-17 11:46:51 +01:00
Timo Kaufmann
e3b041ac07
Merge pull request #145767 from midchildan/fix/noto-cjk
noto-fonts-cjk: add missing serif font
2022-01-17 11:23:40 +01:00
Ivan Kovnatsky
32c8a5de66
nixos/chromium: Add DefaultSearchProviderEnabled option
Without this option `DefaultSearchProviderSearchURL` and
`DefaultSearchProviderSuggestURL` are really wastefull as it does not
set search engine, at least for me.

Co-authored-by: Sandro <sandro.jaeckel@gmail.com>
2022-01-17 08:04:55 +02:00
github-actions[bot]
f0a71fe6f3
Merge master into staging-next 2022-01-17 06:01:22 +00:00
Morgan Jones
9db1fb4772 nixos/mattermost: update release notes 2022-01-16 22:34:37 -07:00
CRTified
f9bc03e3c7 nixos/adguardhome: add test 2022-01-17 01:39:27 +01:00
github-actions[bot]
a407424e1f
Merge master into staging-next 2022-01-17 00:01:45 +00:00
Ben Darwin
43047ec128
nixos/rstudio-server: add to 22.05 release notes 2022-01-17 10:26:24 +11:00