Commit graph

36086 commits

Author SHA1 Message Date
imlonghao 4a519fa142
borgmatic: 1.7.15 -> 1.8.1 2023-10-10 21:48:13 +08:00
Rebecca Kelly e648d46465 nixos/users-groups: add user option to enable lingering
Adapted from
https://gist.github.com/graham33/fdbdcc18317a621d9dd54beb36be6683

Fixes #3702

Lingering users can still be managed mutably by root with `loginctl`,
but the settings here will take precedence when `nixos-rebuild` is run.
2023-10-10 08:53:48 -04:00
Jörg Thalheim b7057368c8 systemd-boot-builder: add missing fsync in atomic writes
write(2) and close(2) doesn't ensure the file content actually got synched, so let's also fsync before doing the rename
2023-10-10 14:49:51 +02:00
Jörg Thalheim 8335022649 nixos/tests/systemd-boot: improve assertion error for update test 2023-10-10 14:49:51 +02:00
Jörg Thalheim 865a2cf8c1 Revert "nixos/systemd-boot: skip EFI update to 252"
This reverts commit 80665d606a.

Parsing the package version broke our systemd-boot builder test.

i.e. it won't be able to parse systemd-boot efi binaries coming from
ubuntu

We no longer use the faulty systemd-boot version so this code should no
longer be needed.
2023-10-10 14:49:51 +02:00
Jörg Thalheim b7fbd1ffd4 systemd-boot-builder: use regex prefix string
otherwise there are warnings for \.
2023-10-10 14:49:51 +02:00
Jörg Thalheim 5ee9fdf929 systemd-boot-builder: use new builtin typing style 2023-10-10 14:49:51 +02:00
Jörg Thalheim e20a886f87 systemd-boot-builder: drop unused import 2023-10-10 14:49:51 +02:00
Jörg Thalheim a17f41ed0b systemd-boot-builder: replace mkdir_p function with stdlib equivalent 2023-10-10 14:49:51 +02:00
Jörg Thalheim f4bf9702be systemd-boot-builder: always do syncfs, even after a failure 2023-10-10 14:49:51 +02:00
Jörg Thalheim dbac7467ad systemd-boot-builder: drop semicolons
this is python, not C.
2023-10-10 14:49:51 +02:00
Jörg Thalheim 1f70361d08 systemd-boot-builder: resort imports according to isort
foo
2023-10-10 14:49:51 +02:00
Robert Hensing a14f3f829d nixos/eval-config.nix: Rename arg nixosSystem -> configuration
For some time now the attrset returned by `evalModules` has
`type = "configuration"`.

This is a clean refactor because the name is not exposed.
(never is for simple lambda)
2023-10-10 13:25:15 +02:00
Robert Hensing 1c0427862e nixos/eval-config.nix: Rename let withExtraArgs -> withExtraAttrs
Presumably it only used to add `extraArgs`, but it also adds other
attributes now.
2023-10-10 13:24:55 +02:00
Robert Hensing 2eb706646a
Merge pull request #259797 from K900/eval-config-pkgs
eval-config.nix: set nixpkgs.pkgs instead of _module.args.pkgs
2023-10-10 13:18:30 +02:00
Vladimír Čunát 3b6389aa2f
nixos/release: don't block on firefox tests
I can't recall when these tests last discovered a real problem.
Having to do many manual restarts is annoying, e.g.
  https://hydra.nixos.org/build/237622614#tabs-buildsteps
2023-10-10 12:19:27 +02:00
Maximilian Bosch 3d3b99ad20
Merge pull request #259980 from Ma27/synapse-db-assertion
nixos/matrix-synapse: drop old DB check assertion, actually require DB to be up
2023-10-10 11:41:05 +02:00
Maximilian Bosch 791fe98a0d
Merge pull request #259888 from julianschacher/matrix-synapse-fix-media-store-access
nixos/matrix-synapse: add `media_store_path` to services `ReadWritePaths`
2023-10-10 11:40:45 +02:00
Luflosi cf8aa48605
nixos/tests/kubo: various improvements
Add new test to check if kubo.passthru.repoVersion is set correctly.
Also split the existing NixOS VM test into two independent parts. The test already used two independent VMs but just one testScript. This made experimenting with just one of the two VMs slower than it needed to be. It should also increase parallelism slightly since both test scripts can now run at the same time.
2023-10-10 10:46:25 +02:00
Ben Wolsieffer b6876d5c86
nixos/security/wrappers: don't force PIE hardening (#259509)
PIE causes problems with static binaries on ARM (see 76552e9). It is
enabled by default on other platforms anyway when musl is used, so we
don't need to specify it manually.
2023-10-10 10:13:29 +02:00
Lin Jian a75d4a5fd5
Merge pull request #260069 from doronbehar/doc/mkOptionType.typo
nixos/doc/mkOptionType: small typo fix
2023-10-10 15:23:08 +08:00
Majiir Paktu 6eea7fb194 nixos/pam: extract args field
Module arguments have common escaping rules for all PAMs.
2023-10-09 23:17:37 -04:00
Majiir Paktu 12a488e89c nixos/pam: extract modulePath field 2023-10-09 23:17:36 -04:00
Majiir Paktu 25bc21f19a nixos/pam: extract control field 2023-10-09 23:17:36 -04:00
Majiir Paktu 0563e0a379 nixos/pam: give each rule a name
These names are internal identifiers. They will be used as keys so that
users can reconfigure rules by merging a rule config with the same name.
The name is arbitrary. The built-in rules are named after the PAM where
practical.
2023-10-09 23:17:36 -04:00
Majiir Paktu fbd7427b14 nixos/pam: define rules as submodules
Allows us to decompose rules into multiple fields that we later format
as textual rules. Eventually allows users to override individual fields.
2023-10-09 23:17:36 -04:00
Majiir Paktu 3c85d159f7 nixos/pam: automatically populate rule type
Eliminates a redundancy between the 'rules' suboptions and the type
specified in each rule.

We eventually want to give each rule a name so that we can merge config
overrides. The PAM name is a natural choice for rule name, but a PAM is
often used in multiple rule types. Organizing rules by type and rule
name avoids name collisions.
2023-10-09 23:17:15 -04:00
Majiir Paktu d6bb805932 nixos/pam: extract header comments
Unblocks converting the rules from one big string to a rich data
structure.
2023-10-09 20:40:19 -04:00
Ryan Lahfa bfc5d57d66
Merge pull request #259886 from RaitoBezarius/drop-varnish 2023-10-10 00:46:20 +02:00
Madoura 6f39d63688
nixos/doc: rocm-opencl-icd -> rocmPackages.clr.icd 2023-10-09 16:38:54 -05:00
Madoura fb93210205
nixos/doc: note ROCm changes 2023-10-09 16:38:53 -05:00
Doron Behar 6843abd5fb
Merge pull request #231152 from tcheronneau/nixos.tinyproxy
Adding tinyproxy service to NixOS
2023-10-09 23:53:58 +03:00
Anderson Torres 52058530ce nixos/connman: refactor 2023-10-09 17:49:02 -03:00
Doron Behar 3c34a1a464 nixos/doc/mkOptionType: small typo fix 2023-10-09 23:38:32 +03:00
Thiago Kenji Okada e7a621f8e9
Merge pull request #259066 from thiagokokada/add-renice-sway
nixos/sway: add enableRealtime option
2023-10-09 19:53:51 +01:00
Sarah Brofeldt a655e7a1aa
Merge pull request #259240 from haenoe/oci-containers-labels-option
nixos/oci-containers: add labels option
2023-10-09 18:52:20 +02:00
Maximilian Bosch 9f1d4b79e3
nixos/postgresql: fix identMap example
This was causing the following warning before when building the manual:

    warning: literalExample is deprecated, use literalExpression instead, or use literalMD for a non-Nix description.

Rather than using `literalExpression`, nothing is used. This option
expects a string and the example is a string, no special handling
required. Both `literalExample` from the docbook ages and
`literalExpression` now are only required if the example is
a Nix expression rather than a value of the option's type.
2023-10-09 17:41:44 +02:00
Maximilian Bosch cb67bb0335
nixos/matrix-synapse: mergeable log configuration
Right now there's no trivial way to override parts of synapse's log
config such as the log-level because the only thing that's changeable is
the path to the log-file used by synapse and its workers.

Now, there's a new option called `services.matrix-synapse.log`
which contains the default log config as Nix attribute-set (except
`handlers.journal.SYSLOG_IDENTIFIER`). It has default priority, so new
things can be added like

    services.matrix-synapse.log = {
      my.extra.field = 23;
    }

without discarding the rest. If desired, this can still be done via
`lib.mkForce`.

If the log configuration for a single worker or synapse, but not all
workers should be changed, `services.matrix-synapse.settings.log_config`
or `services.matrix-synapse.workers._name_.worker_log_config`
can be used.
2023-10-09 17:34:15 +02:00
Weijia Wang ad855375b4
Merge pull request #244197 from wexder/netclient
netclient: init at 0.21.0
2023-10-09 16:55:22 +02:00
Vladimír Zahradník 9053490648 nixos/netclient: init 2023-10-09 15:58:05 +02:00
Bobby Rong f5ec74729c
Merge pull request #259787 from bobby285271/upd/pantheon-test
nixosTests.pantheon: Extend the tests
2023-10-09 20:41:32 +08:00
ajs124 6e45bee3b3 nixos/rl-2311: add varnish upgrade notes 2023-10-09 14:18:50 +02:00
ajs124 dbe4e6d2c0 varnish74: init at 7.4.1 2023-10-09 14:14:21 +02:00
Maximilian Bosch 7f08d0ebd8
nixos/matrix-synapse: drop old DB check assertion, actually require DB to be up
Closes #236062

The PR #236062 was submitted because of the following problem: a synapse
instance was running in a NixOS container attached to the host network
and a postgresql instance on the host as database. In this setup,
synapse connected to its DB via 127.0.0.1, but the DB wasn't locally set
up and thus not configured in NixOS (i.e.
`config.services.postgresql.enable` was `false`). This caused the
assertion removed in this patch to fail.

Over three years ago this assertion was introduced when this module
stopped doing autoconfiguration of postgresql entirely[1] because a
breaking change in synapse couldn't be managed via an auto-upgrade on
our side. To make sure people don't deploy their DB away by accident,
this assertion was introduced.

Nowadays this doesn't serve any value anymore because people with
existing instances should've upgraded by now (otherwise it's their job
to carefully read the release notes when missing upgrades for
several years) and people deploying fresh instances are instructed by
the docs to also configure postgresql[2].

Instead, it only causes issues in corner cases like #236062, so after
some discussion in that PR I think it's time to remove the assertion
altogether.

Also, there's no `Requires=` for `postgresql.service` in the systemd
units which means that it's not strictly guaranteed that the DB is up
when synapse starts up. This is fixed now by adding `requires`. To avoid
being bitten by above mentioned cases again, this only happens if
`config.services.postgresql.enable` is `true`.

If somebody uses a non-local postgresql, but has also deployed a local
postgresql instance on the synapse server (rather unlikely IMHO), it's
their job to opt out of this behavior with `mkForce` (this is precisely one
of the use-cases `mkForce` and friends were built for IMHO).

[1] https://github.com/NixOS/nixpkgs/pull/80447
[2] https://nixos.org/manual/nixos/stable/#module-services-matrix-synapse
2023-10-09 14:06:50 +02:00
Maximilian Bosch ad57ad1ff5
nixos/nextcloud: update / clean up the nginx configuration
First of all, a few cleanups were made to make it more readable:

* Reordered the sections by their priority so what you're reading in Nix
  is also what you get in the final nginx.conf.
* Unified media/asset locations

Most notably, this fixes the

    Your web server is not properly set up to resolve "/ocm-provider/".

warning since 27.1.2 where `ocm-provider` was moved from a static
directory in the source tarball to a dynamic HTTP route[1].

Additionally, the following things were fixed:

* The 404 checks for build/tests/etc. are now guaranteed to be before
  the `.php` location match and it's not implicitly relied upon Nix's
  internal attribute sorting anymore.

* `.wasm` files are supported properly and a correct `Content-Type` is
  set.

* For "legacy" routes (e.g. `ocs-provider`/`cron`/etc) a `rewrite` rule
  inside the location for fastcgi is used as recommended by upstream[2].
  This also makes it easier to understand the purpose of the location
  itself (i.e. use fastcgi for PHP code).

[1] https://github.com/nextcloud/documentation/pull/11179
[2] https://docs.nextcloud.com/server/27/admin_manual/installation/nginx.html
2023-10-09 12:40:57 +02:00
Maximilian Bosch 8702ae0110
nixos/nextcloud: drop enableBrokenCiphersForSSE
🎉
2023-10-09 12:40:57 +02:00
Michele Guerini Rocco 2e54187399
Merge pull request #258347 from Benjamin-L/gnupg-agent-extraconfig
nixos/gnupg: add agent.settings option
2023-10-09 11:12:55 +02:00
HaeNoe 2f021def6e nixos/oci-containers: add labels option 2023-10-09 10:43:29 +02:00
Lorenzo Manacorda afb15c6513 nixos/manual: no DocBook for mkPackageOption
`mkPackageOptionMD` is now an alias of `mkPackageOption`, and the transition
from DocBook to CommonMark has been completed.
2023-10-09 08:54:29 +02:00
Kid bb2c03f0a1
nixos/system-path: remove nano from defaultPackages description 2023-10-09 14:14:40 +08:00
Lin Jian 98edbf83ae
Merge pull request #259009 from bobvanderlinden/pr-locate-package
nixos/locate: rename option `locate` -> `package`
2023-10-09 09:34:16 +08:00
Raito Bezarius f9f7fd208a varnish72: drop, varnish73: drop
All of them are EOL according to https://endoflife.date/varnish
2023-10-09 03:06:32 +02:00
Julian Schacher 722e9df2fb
nixos/matrix-synapse: add media_store_path to services ReadWritePaths
Currently, when setting a custom media_store_path, which lies outside of
cfg.dataDir, the current ReadWritePaths make it so that Synapse can't
access the media_store_path. So add the media_store_path to
ReadWritePaths to fix that.
2023-10-09 02:27:05 +02:00
Maximilian Bosch 669da9ccdb
Merge pull request #246117 from Ralith/fix-synapse-well-known-example
nixos/matrix-synapse: fix duplicate Content-Type header in example
2023-10-08 19:53:26 +02:00
K900 93cfbb253c eval-config.nix: set nixpkgs.pkgs instead of _module.args.pkgs
This allows nixpkgs.overlays to work, and also the nixpkgs.config check.
2023-10-08 20:41:44 +03:00
ners dccd00027e
nixos/azure: add contents module option (#244364) 2023-10-08 19:35:14 +02:00
Bobby Rong 585164f759
nixosTests.pantheon: Extend the tests
This help me discover issues when I do manual testing.
2023-10-09 00:14:30 +08:00
Doron Behar 50a077328a
Merge pull request #259259 from Lassulus/syncthing_stale
nixos/syncthing: match stale ids by subtracting in jq
2023-10-08 12:53:34 +03:00
Vladimír Čunát 2ec92384d7
Merge #258361: nixos/knot: compatibility with 23.05 config 2023-10-08 10:16:06 +02:00
Vladimír Čunát 6b66e2fc9c
nixos/knot: compatibility with 23.05 config
- run conf-check iff keyFiles == [] (like in 23.05; this was my bug)
- support extraConfig + keyFiles

- but warning will still be shown if extraConfig is used,
  and it might be slightly confusing
2023-10-08 10:14:54 +02:00
Bob van der Linden 423c86a70b
nixos/locate: rename option locate -> package 2023-10-08 10:09:12 +02:00
Sarah Brofeldt 9b73af9b27
Merge pull request #259498 from TLATER/tlater/gitea-metrics
gitea: Add option to supply the metrics token via file
2023-10-08 07:53:33 +02:00
natsukium abd8c26137
python311Packages.factory-boy: rename from factory_boy 2023-10-08 12:32:12 +09:00
Majiir Paktu f5f1751b1f refactor: combine scripted and networkd WakeOnLan config 2023-10-07 21:02:46 -04:00
Majiir Paktu d290c309f4 nixos/network-interfaces-systemd: fix WakeOnLan
WakeOnLan= was configured when using the scripted backend but not the
networkd backend. The other link options are set in the .network file
when using networkd, but WakeOnLan= is only available in a .link file.
2023-10-07 20:58:51 -04:00
Luflosi 70c8adce8d
kubo: 0.22.0 -> 0.23.0
https://github.com/ipfs/kubo/releases/tag/v0.23.0

Support for /quic (Draft 29) was removed, so remove it from `services.kubo.settings.Addresses.Swarm`.

The changelog says that there have been some fixes to the FUSE mountpoint functionality but the test still requires the workaround, so leave that unchanged.
2023-10-08 02:04:02 +02:00
Majiir Paktu c3e90f5667 nixos/network-interfaces-systemd: require defaultGateway.interface
The logic for configuring a gateway without an interface specified adds
a route with Gateway= to *every interface* configured by NixOS for
networkd. This leads to nonsensical configurations like the following:

    [Network]
    DHCP=no
    Address=192.168.0.1/24

    [Route]
    Gateway=10.0.0.1
    GatewayOnLink=false

We remove this logic and make defaultGateway.interface required to
configure a default gateway when using networkd.

We can ignore the removal of GatewayOnLink because systemd defaults it
to "no" anyway.
2023-10-07 16:09:11 -04:00
Majiir Paktu c11b788d1a nixos/network-interfaces-systemd: support defaultGateway.interface
When interface and address are both specified, we can set Gateway= on
the named interface. The existing logic assumes interface is not set
(since it's guarded by assertion) so we now disable it when interface
has a value.

As a bonus, we now support the defaultGateway.metric option when
interface is set.
2023-10-07 16:09:11 -04:00
Majiir Paktu 088da23f9e nixos/test-instrumentation: fix unsetting of defaultGateway
The empty string is coerced to an attrset:

    { address = ""; interface = null; metric = null; }

The new defaultGateway logic (correctly) complains that interface must
be defined when using networkd. We instead clear defaultGateway by
setting it to its actual default value, which is null.
2023-10-07 16:09:11 -04:00
Tristan Daniël Maat b59e5a34e7
nixos/gitea: Add option to supply the metrics token via file 2023-10-07 21:53:02 +02:00
Lin Jian 021da9bf62
Merge pull request #259549 from woojiq/keyd
nixos/keyd: add `extraConfig` option
2023-10-07 23:18:51 +08:00
Lin Jian 249ef1a69b
Merge pull request #259558 from amesgen/borgbackup-package-option
nixos/borgbackup: add package option
2023-10-07 23:16:46 +08:00
amesgen bbf7f58b57
nixos/borgbackup: add package option
Co-authored-by: Lin Jian <me@linj.tech>
2023-10-07 16:27:57 +02:00
Maximilian Bosch efc5c80e18
nextcloud25: remove
EOL of Nextcloud v25 is scheduled by the end of this month.
2023-10-07 16:16:42 +02:00
Lin Jian 4a5f3d5a50
Merge pull request #259228 from nbdd0121/patch-1
nixos/dnsmasq: allow custom package
2023-10-07 21:04:22 +08:00
Bobby Rong 383b753bba
Merge pull request #259363 from bobby285271/fix/gnome-flashback
gnome.gnome-flashback: Fix x-d-p-gnome launch
2023-10-07 20:56:26 +08:00
Mario Rodas 5103716b44
Merge pull request #252800 from 1000101/prometheus-pgbouncer-exporter
prometheus-pgbouncer-exporter: init at 0.7.0
2023-10-07 06:37:06 -05:00
Doron Behar 34888cd1d1 nixos/tests/syncthing-init: Remove unused testName attribute 2023-10-07 14:04:43 +03:00
Gary Guo 7094f1ec0e nixos/dnsmasq: allow custom package
Allow a custom package to be used for dnsmasq service.
2023-10-07 11:53:25 +01:00
1000101 3b094812b1 prometheus-pgbouncer-exporter: init at 0.7.0 2023-10-07 11:44:40 +02:00
woojiq fee1832e84 nixos/keyd: add extraConfig option 2023-10-07 11:50:04 +03:00
Linus Heckemann 2de1be5b51
Merge pull request #258677 from Majiir/fix-networkd-search-domains
nixos/network-interfaces-systemd: don't set network-level domains
2023-10-07 08:43:49 +02:00
K900 b7a3aaae38
Merge pull request #259460 from K900/test-eval-fixes
treewide: test eval fixes
2023-10-07 07:36:46 +03:00
Ryan Lahfa 5fa3ea862b
Merge pull request #251898 from ktrinh-anduril/ktrinh/improve-devicetree-infra 2023-10-07 00:55:35 +02:00
Ryan Lahfa ae7d5d59b8
Merge pull request #258569 from alyssais/linux-6.4-drop 2023-10-07 00:35:08 +02:00
K900 320fcb409c nixos/tests/tracee: fix eval
Test still doesn't pass.
2023-10-07 00:17:54 +03:00
K900 b854f27f47 nixos/tests/sftpgo: fix eval 2023-10-07 00:10:50 +03:00
K900 29535e40ef nixos/tests/lxd-image-server: fix eval 2023-10-07 00:07:50 +03:00
K900 93d52c5609 nixos/tests/mongodb: remove non-existent maintainer 2023-10-07 00:07:40 +03:00
K900 2c596b216a nixos/orangefs: fix typo in group name
This would have broken eval and has broken the test.
2023-10-07 00:07:23 +03:00
K900 3626143f19 nixos/tests/litestream: fix eval
Test still doesn't pass.
2023-10-07 00:07:11 +03:00
Artturi 34c738fb3d
Merge pull request #152631 from jonringer/pgmanage-use-package 2023-10-07 00:05:58 +03:00
K900 a4e7f5011d nixos/tests: remove reference to non-existent test 2023-10-06 23:55:21 +03:00
K900 969a309b9e nixos/tests/sftpgo: fix eval 2023-10-06 23:55:20 +03:00
K900 a101216526 nixos/tests/osquery: fix eval 2023-10-06 23:55:20 +03:00
K900 16753291fa nixos/tests/legit: fix eval 2023-10-06 23:55:20 +03:00
K900 a3323f68a7 nixos/tests/hardened: fix eval 2023-10-06 23:54:57 +03:00
K900 1bc5af0f6a nixos/tests/dconf: fix config format
This was changed in the module, but not in the test
2023-10-06 23:52:52 +03:00
K900 d4eca0e8bb nixos/gollum: remove non-existent maintainer 2023-10-06 23:52:42 +03:00
K900 80cc25eb51 nixos/testing: fix eval for tests created without make-python-test.nix
We have too many test entrypoints and this is a problem.
2023-10-06 23:52:04 +03:00
Robert Scott 3a60f9bf63
Merge pull request #258943 from techknowlogick/bump-teleport
teleport_11: 11.3.10 -> 11.3.25, teleport_12: 12.4.7 -> 12.4.20, teleport_13: init at 13.4.1, teleport_14: init at 14.0.1
2023-10-06 20:56:01 +01:00
Lin Jian 272dba1e31
Merge pull request #257415 from ehmry/yggdrasil
nixos/yggdrasil: add extraArgs option
2023-10-07 02:05:36 +08:00
Aaron Andersen 76fb9da41f nixos/openssh: add support for authorized principals 2023-10-06 13:57:19 -04:00
Bjørn Forsman e5b8b12ac9 nixos/coredns: add extraArgs option 2023-10-06 19:38:38 +02:00
Bjørn Forsman fa8ace3618 nixos: don't implicitly map missing user groups to nogroup
Before: `users.users.user1.group = "group-not-defined-anywhere-else"`
would result in user1 having the primary group `nogroup`, assigned at
activation time and only with a (easy to miss) warning from the
activation script. This behaviour is a security issue becase no files
should be owned by `nogroup` and it allows for unrelated users (and
services) to accidentally have access to files they shouldn't have.

After: The configuration above results in this eval error:
  - The following users have a primary group that is undefined: user1
  Hint: Add this to your NixOS config:
    users.groups.group-not-defined-anywhere-else = {};
2023-10-06 19:33:01 +02:00
Emery Hemingway 3fc4ecafeb nixos/yggdrasil: add extraArgs option 2023-10-06 17:59:14 +01:00
Weijia Wang 39edffebe6
Merge pull request #253548 from Quantenzitrone/rimgo
rimgo: init at 1.2.0 & module
2023-10-06 17:50:58 +02:00
K900 944e26dc60
Merge pull request #259318 from K900/fix-externally-defined-nixos-tests
nixosTest: fix tests defined with pkgs.nixosTest
2023-10-06 18:04:29 +03:00
Lin Jian de26e61f7e
Merge pull request #258582 from returntoreality/gpsd-extra-args
nixos/gpsd: add extraArgs option
2023-10-06 22:54:51 +08:00
K900 8a7282f90b nixosTest: fix tests defined with pkgs.nixosTest 2023-10-06 16:33:15 +03:00
Ryan Lahfa c22f1c1cfa
Merge pull request #257828 from mbey-mw/nginx-tmpfiles-rules 2023-10-06 15:28:36 +02:00
Marek Beyer ea1eb4ee0f
nixos/nginx: add systemd-tmpfiles exclusion of temporary directories
Directories used by nginx in the tmp path are only created upon startup and
must not be deleted while nginx is running.
2023-10-06 14:26:37 +02:00
Marek Beyer 040cf48d28
nixos/tests: add test for nginx temp directories removal
The default temp directories for nginx must not be removed by
systemd-tmpfiles-clean.service. This test lowers the age parameter for /tmp and
triggers a cleanup that would normally only occur after 10 days of nginx
inactivity. After that, the functionality of nginx that requires a temporary
directory is tested again.
2023-10-06 14:26:37 +02:00
Atemu eae761dcb0
Merge pull request #245593 from wamserma/grocy-add-package-option
grocy: add package option
2023-10-06 13:56:58 +02:00
7c6f434c 8a2cb1f05f
Merge pull request #259362 from tomfitzhenry/sgt-puzzles-name
sgt-puzzles: rename all "sgtpuzzles" -> "sgt-puzzles"
2023-10-06 11:50:49 +00:00
Pierre Bourdon e462c9172c
Merge pull request #259039 from edef1c/cve-2023-4911-mitigation
nixos/security/wrappers: use musl rather than glibc and explicitly unset insecure env vars
2023-10-06 12:50:39 +02:00
Bobby Rong 3db8e68328
nixos/tests/gnome-flashback: Restore wait_for_x test
Should be passing now.
2023-10-06 18:39:10 +08:00
Tom Fitzhenry 736884108d sgt-puzzles: rename all "sgtpuzzles" -> "sgt-puzzles"
nixpkgs currently mixes sgtpuzzles/sgt-puzzles across filenames,
packages, tests.

This inconsistency is frequently annoying.

Let's unify on "sgt-puzzles", on the basis that:
* "sgt-puzzles" is the package filename.
* Alpine/FreeBSD/Debian use "sgt-puzzles". No other distro uses
"sgtpuzzles". https://repology.org/project/sgt-puzzles/versions
2023-10-06 21:36:48 +11:00
Bobby Rong ba82dd7148
gnome.gnome-flashback: Add mkGnomeSession
Having this in environment.systemPackages shouldn't be worse than
adding as XDG_DATA_DIRS in gnome-session.
2023-10-06 18:27:49 +08:00
Bobby Rong 21f5cd377a
gnome.gnome-flashback: Add mkWmApplication
Having this in environment.systemPackages shouldn't be worse than
adding as XDG_DATA_DIRS in gnome-session.
2023-10-06 18:22:07 +08:00
Bobby Rong f6345cd259
gnome.gnome-panel-with-modules: init
Setting X_GNOME_PANEL_MODULESDIR in gnome-session wrapper is confusing to me.
2023-10-06 18:22:07 +08:00
Bobby Rong 49dda70dbc
Merge pull request #259222 from bobby285271/fix/gnome-flashback-eval
nixosTests.gnome-flashback: Fix eval
2023-10-06 17:31:44 +08:00
Bobby Rong 190a819ecb
nixosTests.gnome-flashback: Ensure gnome-flashback-media-keys starts 2023-10-06 16:04:24 +08:00
Bobby Rong fc096a6d9c
nixosTests.gnome-flashback: Fix eval
The option `nodes.machine.environment.variables.XDG_CONFIG_DIRS' is defined multiple times while it's expected to be unique.
2023-10-06 12:18:53 +08:00
Benjamin Lee f0a8e05a5d
nixos/gnupg: add agent.settings option 2023-10-05 18:43:23 -07:00
edef 09325d24b6 nixos/security/wrappers: use musl rather than glibc and explicitly unset insecure env vars
This mitigates CVE-2023-4911, crucially without a mass-rebuild.

We drop insecure environment variables explicitly, including
glibc-specific ones, since musl doesn't do this by default.

Change-Id: I591a817e6d4575243937d9ccab51c23a96bed6f9
2023-10-05 22:04:05 +00:00
lassulus 82b59a8fb2 nixos/syncthing: match stale ids by subtracting in jq 2023-10-05 23:08:05 +02:00
techknowlogick 8de9bf9112 teleport: add note to changelog about upgrade process 2023-10-05 11:30:13 -04:00
Thiago Kenji Okada 63fce4ce48 nixos/sway: add enableRealtime option
This option wraps the `sway` binary to allow it to request realtime
scheduling (SCHED_RR). This allow for possible lower latency, specially
when the system is under high load.

Available since Sway 1.8. See:
- https://github.com/swaywm/sway/pull/6994
- https://github.com/swaywm/sway/releases/tag/1.8
2023-10-05 15:26:47 +01:00
Leona Maroni 65209cbc21
nixosTests.paperless: add additional test using postgresql as db
With that test we also test, that paperless can connect to the outside
postgresql socket.

Co-Authored-By: Erik Arvstedt <erik.arvstedt@gmail.com>
2023-10-05 12:58:09 +02:00
Leona Maroni 6249a0983d
nixos/paperless: fix start with latest systemd 2023-10-05 12:56:37 +02:00
Martin Weinelt 9a20605910
nixos/home-assistant: update bluetooth integrations 2023-10-05 05:09:55 +02:00
Eric Bailey b90ac4c0ec kops: 1.27.1 -> 1.28.0
- Drop kops_1_25
- kops_1_26: 1.26.5 -> 1.26.6
- Update 23.11 release notes
2023-10-04 19:27:49 -05:00
Anselm Schüler a5bc9ee49b
nixos/nano: enable syntaxHighlight by default 2023-10-05 00:15:32 +02:00
Anselm Schüler 8679b69dcd
nixos/nano: include extra syntax highlight files when syntaxHighlight is true 2023-10-05 00:12:42 +02:00
Jörg Thalheim 07c70a41ab nixos/mediawiki: add nginx option
mediawiki: configure uploadsDir
2023-10-04 22:21:55 +01:00
Thiago Kenji Okada 1e79cca679 release-notes: document nixos-rebuild changes 2023-10-04 20:45:23 +01:00
Tobias Stenzel 1261914a96 percona-server_8_0: init at 8.0.34 2023-10-04 20:58:50 +02:00
Maximilian Bosch 4305d167a2
Merge pull request #256407 from Ma27/motd-ordering
nixos/rust-motd: allow ordering sections
2023-10-04 19:25:18 +02:00
Weijia Wang 6e8e41ec9b
Merge pull request #250149 from ebardie/ebardie/fusuma-update
fusuma: enable "essential" plugins
2023-10-04 18:59:44 +02:00
edef 77225e33c0
Merge pull request #248627 from edef1c/gpg-agent-sockets 2023-10-04 12:32:29 -04:00
ebardie 6d30f6d579 fusuma: enable "essential" plugins
Specifically the following plugins:

    fusuma-plugin-appmatcher
    fusuma-plugin-keypress
    fusuma-plugin-sendkey
    fusuma-plugin-tap
    fusuma-plugin-wmctrl

I've not enabled the other plugins available on rubygems for the
following reasons:

  * remap : seems niche functionality and requires further configuration
            to grant the user access permissions to event devices

  * thumbsense : pulls in remap (see above)

  * touchscreen : I've no way of testing.  Note: enabling didn't appear
                  to cause any problems.

Ideally the plugin functionality would be made available as separate
pkgs, but that would require patching Fusuma to search outside of the
Gem directory.  Enabling this subset of packages for what appears to be
widely useful functionality seems a good option.
2023-10-04 12:22:34 +02:00
Doron Behar 34585a2b76
Merge pull request #256866 from kirillrdy/transmission
transmission, transmission_4: set mainProgram and restore nixosTests
2023-10-04 13:20:46 +03:00
Florian Klink 7239f0198e
Merge pull request #258920 from ElvishJerricco/systemd-stage-1-full-build
systemd-stage-1: Default to full systemd build.
2023-10-04 12:02:36 +03:00
Florian Klink 42f2e2dadd
Merge pull request #257510 from ign0tus/fix/wake-on-lan-policy
Fix: WakeOnLan policy
2023-10-04 11:36:16 +03:00
Will Fancher 710b96b191 systemd-stage-1: Default to full systemd build. 2023-10-04 04:21:35 -04:00
Florian Klink d89aa11c89
Merge pull request #258345 from lf-/jade/wait-for-online
nixos/networkd: fix wait-online on networking.useDHCP default configuration
2023-10-04 10:58:14 +03:00
Will Fancher 37601de942
Merge pull request #237154 from ElvishJerricco/sd-s1-networkd-flush-with-keep-configuration
systemd stage 1 networking: Use KeepConfiguration
2023-10-03 23:37:03 -04:00
K900 76917ca3ae nixos/sddm: add option to enable Wayland support via Weston 2023-10-03 12:48:58 +03:00
K900 9d2e9d8ddf
Merge pull request #258434 from SuperSandro2000/locate-dbfile
nixos/locate: #258575 followup
2023-10-03 08:58:20 +03:00
Ruby Juric 638d19ac92
zitadel: init at 2.37.2; nixos/zitadel: init (#254896) 2023-10-03 07:11:18 +02:00
Sandro Jäckel b53f817088
nixos/locate: cleanup optional parenthesis 2023-10-03 00:19:57 +02:00
Jade Lovelace 28ab2b278d nixos/networkd: make wait-online not time out
A further bug to our strange multi-user.target depending on
network-online.target issue is that systemd recently changed the
behaviour of systemd-networkd-wait-online to no longer consider the
absence of interfaces with RequiredForOnline to be sufficient to be
online: https://github.com/systemd/systemd/pull/27825

On the advice of the systemd developers
(https://github.com/systemd/systemd/issues/29388), this commit changes
the configuration of systemd-networkd-wait-online to pass --any by
default, and lets the default DHCP interfaces be RequiredForOnline
as they would be by default if the option is omitted.

It is plausible that systemd-networkd-wait-online may still fail if
there are no interfaces at all. However, that probably cannot be
avoided.
2023-10-02 14:47:21 -07:00
Majiir Paktu 0ba49949b0 nixos/network-interfaces-systemd: don't set network-level domains
systemd.network(5) describes Domains= as a "list of domains which should
be resolved using the DNS servers on this link." This setting is read by
systemd-resolved.service, and it's used to configure both search domains
and DNS query routing.

Adding the search domains from `networking.search` is unnecessary
because these are already configured globally in `resolved.conf` through
the default value of `services.resolved.domains`.

Adding the system's `networking.domain` to each network is unexpected
and probably incorrect. A user may not expect that the domain is in
effect automatically added to the search domains even if not specified
in `networking.search`.

Both of these network-level assignments are problematic in cases where
the NixOS networkd module is not managing every interface on the system.
In that scenario, the managed interfaces will have Domains= set while
the others do not. That will cause systemd-resolved to route DNS queries
for the search domains and the system domain to only those managed
interfaces.
2023-10-02 17:36:08 -04:00
Alyssa Ross dc439e41db nixos/environment: move XDG_CONFIG_DIRS to sessionVariables
Otherwise, in non-interactive contexts (e.g. systemd units), this
entry (the default) won't be in the list.  Only the profile relative
ones would be, since they were already using session variables.  This
is clearly not the correct behavior.
2023-10-02 18:47:48 +00:00
Nick Cao a431dcd07d
Merge pull request #258486 from tazjin/gonic-resolve-conf
nixos/gonic: allow gonic to perform non-local DNS resolution
2023-10-02 13:40:12 -04:00
Alyssa Ross ae3682cb17
linux_6_4: drop (EOL)
It's still in kernels-org.json, because even if I remove it the update
script will keep putting it back, but nothing references it, and it'll
be removed from that file when kernels are next updated after it's
been delisted from kernel.org.

linux_testing_bcachefs still needs to be updated for >6.4, so for now
I've just inlined the Linux 6.4 definition in linux_testing_bcachefs's
definition.
2023-10-02 17:27:32 +00:00
Linus Karl 342cc761df nixos/gpsd: add extraArgs option
Allows setting addtional arguments to gpsd
2023-10-02 15:10:12 +02:00
K900 524181b5b8 nixos/locate: rip out dbfile overrides
All the locate versions we have support LOCATE_PATH, so just use that
instead of adding indirections all over the place AND forcing people
to rebuild their locate implementation if they want the path changed.
2023-10-02 15:10:22 +03:00
Ryan Lahfa 6f4a420057
Merge pull request #257719 from CardboardTurkey/regreet-fix-group 2023-10-02 13:28:37 +02:00
Ryan Lahfa 06f013e0cd
Merge pull request #238847 from nikstur/qemu-vm-external-disk-image 2023-10-02 13:27:03 +02:00
Linus Heckemann 313d0245a8
Merge pull request #256666 from lheckemann/bcachefs-keyring
bcachefs tests: unlock directly to the right keyring
2023-10-02 11:35:16 +02:00
nikstur 62e95d095d nixos/qemu-vm: optionally disable overriding fileSystems
Allow the user to disable overriding the fileSystems option with
virtualisation.fileSystems by setting
`virtualisation.fileSystems = lib.mkForce { };`.

With this change you can use the qemu-vm module to boot from an external
image that was not produced by the qemu-vm module itself. The user can
now re-use the modularly set fileSystems option instead of having to
reproduce it in virtualisation.fileSystems.
2023-10-02 11:13:26 +02:00
Cabia Rangris 6f7933059d
Merge pull request #237404 from cab404/cab/moonraker-gpiod
moonraker: add useGpiod
2023-10-02 06:45:16 +04:00
Vladimir Serov 5edabf7c0b
moonraker: add useGpiod 2023-10-02 06:09:58 +04:00
Jörg Thalheim f8be2c43b4 nixos/buildbot: allow to prepend imports 2023-10-02 09:11:39 +10:00
Jörg Thalheim e2106a5dbb nixos/buildbot: make configurators configurable 2023-10-02 09:11:39 +10:00
Vincent Ambo 259d112c05 nixos/gonic: allow gonic to perform non-local DNS resolution
Gonic accesses external services (e.g. Listenbrainz or last.FM) for
scrobbling, but it was previously not allowed to read
`/etc/resolv.conf`.

This had the effect that, unless a local resolver was configured on
the system, any connection attempt would fail due to DNS resolution
being unavailable.
2023-10-02 01:05:00 +03:00
K900 e53c99eb17 treewide: use pkgs.config instead of config.nixpkgs.config
`pkgs` may be passed in externally, in which case `config.nixpkgs.config` will not be set.

Follow-up to #257458.
2023-10-01 20:48:40 +03:00
Ryan Lahfa 8bc4e1927c
Merge pull request #255321 from p-h/ulogd-multiple-logging-stacks 2023-10-01 17:53:19 +02:00
K900 eb8ce7930d
Merge pull request #257458 from K900/die-nixpkgs-config-die
treewide: fail when `nixpkgs.config` is set with explicit `pkgs`, remove all `nixpkgs.config` usages in in-tree modules
2023-10-01 10:11:15 +03:00
Martin Weinelt f33abce165
Merge pull request #257555 from mweinelt/wyoming-1.2.0
wyoming (1.1.0 -> 1.2.0), wyoming-piper (1.2.0 -> 1.3.2), webrtc-noise-gain (init), wyoming-openwakeword (init)
2023-09-30 16:00:34 +02:00
Reno Reckling 612035c45f
Fix broken genJqSecretsReplacementSnippet for jq 1.7 (#257932)
jq 1.7 updated it's behaviour and now throws an error
if the first argument is an empty string. It now needs
"." to pass the input through.
2023-09-30 14:00:13 +02:00
Jörg Thalheim f1450e660f nixos/test-driver: whitelist variable names that don't follow pep8
https://docs.astral.sh/ruff/rules/invalid-argument-name/
2023-09-30 10:31:22 +02:00
Jörg Thalheim 1810265b57 nixos/test-driver: name exception according to pep8
see https://docs.astral.sh/ruff/rules/error-suffix-on-exception-name/
2023-09-30 10:31:22 +02:00
Jörg Thalheim a1f01abe53 nixos/test-driver: apply ruff fixes & suggestions 2023-09-30 10:31:22 +02:00
Jörg Thalheim 93b1fa09d5 nixos/test-driver: disable typecheck for dependencies where don't have typing 2023-09-30 10:18:07 +02:00
Jörg Thalheim d746557260 nixos/test-driver: add shell.nix
this useful for local development
2023-09-30 10:18:07 +02:00
Jörg Thalheim 9ac9e8407f nixos/test-driver: fix type errors in extract-docstrings 2023-09-30 10:18:06 +02:00
Jörg Thalheim a1666863fd nixos/test-driver: convert to pyproject from setup.py
This also makes configuration available if you just run those tools locally.
Also use ruff instead of pylint because it's faster and more
comprehensive.
2023-09-30 10:17:47 +02:00
Martin Weinelt b571d96667
nixos/wyoming/openwakeword: init
The wyoming server for providing access to openWakeWord.
2023-09-30 03:40:40 +02:00
Ryan Lahfa 3c3ef90189
Merge pull request #242191 from tie/systemd-required-for-online-range 2023-09-30 01:16:21 +02:00
Wietse de Vries 86dbce6d07 audiobookshelf: init module 2023-09-29 22:01:45 +02:00
pennae bb6c5f9f87
Merge pull request #244324 from SuperSandro2000/nixos-nano
nixos/nano: add enable, package option, do not create /etc/nanorc by …
2023-09-29 18:05:59 +02:00
K900 95c3abfda0 nixos/doc: add release note for nixpkgs.config removal 2023-09-29 16:01:46 +03:00
Mario Rodas fbf686309f
Merge pull request #256725 from trofi/modules-xmr-stak-cudaSupport-removal
modules/xmr-stak: drop broken cudaSupport option
2023-09-29 06:13:19 -05:00
Thiago Kenji Okada 88c5afe153
Merge pull request #257433 from thiagokokada/graalvm-bump
graalvm-ce: 22.3.1 -> 21.0.0
2023-09-29 11:12:22 +01:00
Maximilian Bosch 57de6a8550
nixos/rust-motd: refactor assertion and TOML generation
* `sort (<)` also works for strings (TIL!), so no need for comparing
  length and whether all keys from `cfg.settings` exist in `cfg.order`
  (slightly less overhead).

* Don't build another piece of JSON (`orderedSections`), simply use
  `cfg.settings`/`cfg.order` with `__structuredAttrs` to ensure a
  properly ordered TOML.

  This also has the upside of not having to do quote hackery.

* Also, a freeform submodule isn't strictly needed because we don't have
  any special options defined, so replacing that with
  `attrsOf format.type`.

Co-authored-by: Silvan Mosberger <github@infinisil.com>
2023-09-29 11:13:27 +02:00
asymmetric 4a359e2106
Merge pull request #250810 from asonix/btrbk-fix-btrfs-path
nixos/btrbk: fix btrfs path for passwordless execution
2023-09-29 10:37:21 +02:00
Jacek Galowicz 47a9fc3fb3
Merge pull request #257937 from RaitoBezarius/reduce-spam-for-boot
nixos/lib/test-driver: reduce spam at boot hangs
2023-09-29 09:34:00 +02:00
Quantenzitrone f857cfd5be rimgo: add module 2023-09-29 08:59:59 +02:00
Raito Bezarius 81becd3c44 nixos/lib/test-driver: reduce spam at boot hangs
Since 008f9f0cd4
 ("nixos/test-driver: actually use the backdoor message to wait for backdoor"),

when boot is still computering, we can get a tons of empty strings in response to the shell.

This is not really useful to print and waste the disk space for any CI system that logs them.

We stop logging chunks whenever they are empty.
2023-09-29 03:45:31 +02:00
Sandro Jäckel 5b9cdda1c2
nixos/nano: add enable, package option, do not create /etc/nanorc by default
and remove nano from environment.defaultPackages. In addition also cleanup the file in general.

This is a follow up to #220481

Co-authored-by: pennae <82953136+pennae@users.noreply.github.com>
2023-09-29 00:24:34 +02:00
Thiago Kenji Okada 61ead0290d
Merge pull request #257900 from thiagokokada/oci-useNetworkd-default-but-optional
nixos/virtualisation: use mkDefault in networking.useNetworkd in oci-common
2023-09-28 23:17:31 +01:00
Weijia Wang 5c9b48143d
Merge pull request #257887 from yayayayaka/matrix-sliding-sync-fix-missing-mddoc
nixos/matrix-sliding-sync: Fix missing lib.mdDoc
2023-09-28 23:19:02 +02:00
Thiago Kenji Okada e514178339 nixos/virtualisation: use mkDefault in networking.useNetworkd in oci-common
To make it easier to disable for those folks who don't want to use
systemd-networkd.
2023-09-28 22:05:34 +01:00
asonix a8c1811bf6 nixos/btrbk: fix btrfs path for passwordless execution 2023-09-28 14:51:19 -05:00
Yaya 0951dbcc9b nixos/matrix-sliding-sync: Fix missing lib.mdDoc 2023-09-28 19:37:07 +00:00
Weijia Wang a8498722d0
Merge pull request #257862 from pbsds/typos
treewide: Fix typos
2023-09-28 21:09:18 +02:00
ign0tus 27d0a8a0cd network.interfaces: Add option to configure WakeOnLan policy
Adds an option to configure a custom WakeOnLan policy instead of the
hard-coded "magic" policy. To ensure compatibility with current
behavior, "magic" is kept as default.
2023-09-28 20:14:02 +02:00