Commit Graph

20555 Commits

Author SHA1 Message Date
Guillaume Girol
f9fe536c8f
Merge pull request #165873 from symphorien/rkjnsn-master
xfce4-screensaver: init at 4.16.0
2022-04-03 15:09:08 +00:00
Janne Heß
371504ac8e
Merge pull request #167019 from NixOS/fix/systemd-env
nixos/stage-2-init: Don't clear environment
2022-04-03 16:36:26 +02:00
Janne Heß
7cdc4dd5d1
Merge pull request #164943 from ElvishJerricco/systemd-initrd-reuse-systemd-module
initrd: Opt-in bare bones systemd-based initrd
2022-04-03 15:53:02 +02:00
Lassulus
e65b825672
Merge pull request #165684 from helsinki-systems/clean/stage-2-init
nixos/stage-2-init: Clean up legacy commands
2022-04-03 14:12:52 +02:00
Janne Heß
ea473fac72
nixos/stage-2-init: Don't clear environment
This breaks NixOS Containers because systemd needs some env variables
from the outside.
2022-04-03 11:12:00 +01:00
7c6f434c
8188f10752
Merge pull request #166430 from alyssais/openssl-static-retry
treewide: use lib.getLib for OpenSSL libraries
2022-04-02 12:59:55 +00:00
Jan Solanti
f665340b6c pipewire: 0.3.48 -> 0.3.49 2022-04-02 12:10:35 +02:00
Florian Klink
c57c5c42a4 prometheus-bird-exporter: update birdSocket default path
a5276e1fbd updated bird to use
/run/bird/bird.ctl, but didn't update the default used for
prometheus-bird-exporter.

Reported-In: https://github.com/NixOS/nixpkgs/pull/161193#issuecomment-1086228985
2022-04-01 22:59:48 +02:00
Florian Klink
401cb86da1
Merge pull request #166142 from ncfavier/wait-online
nixos/networkd: add `wait-online` options
2022-04-01 22:54:28 +02:00
Zhaofeng Li
e42f06f93f nixos/podman: Add zfs to wrapper if enabled 2022-04-02 06:38:16 +10:00
P. R. d. O
eeb3206a29 nixos/jenkinsSlave: install java
Installs Java into the Jenkins agent and allows specifying the JDK/JRE package to use. This is necessary as Jenkins verifies if the agent contains Java installed through the java -fullversion command, which if not, the connection will fail.
2022-04-01 22:11:18 +02:00
pennae
cc1d86d759
Merge pull request #166822 from WolfangAukang/sslmate-agent-fix
nixos/sslmate-agent: add to module-list
2022-04-01 17:04:03 +00:00
Bobby Rong
3c583c8226
Merge pull request #166569: unbreak GNOME Flashback and reintroduce gnome-bluetooth_1_0
- Add missing geocode-glib dependency for gnome-panel
- Reintroduce gnome-bluetooth_1_0 for gnome-flashback, blueberry and gnome-bluetooth-contract

Related:
- https://gitlab.gnome.org/GNOME/gnome-panel/-/merge_requests/49
- https://github.com/NixOS/nixpkgs/pull/166569#issuecomment-1084658550
- https://github.com/linuxmint/blueberry/issues/123
- https://github.com/elementary/gnome-bluetooth-contract/issues/1
2022-04-01 23:50:36 +08:00
P. R. d. O
cf6af1933b
nixos/sslmate-agent: add to module-list 2022-04-01 07:23:45 -06:00
Janne Heß
7ebb4ebe40
nixos/systemd-stage-1: Append (Initrd) to /etc/initrd-release
This is more in line with what dracut does (it appends "Initramfs") and
makes it clear where the boot is currently at when it hangs.
2022-04-01 13:54:09 +02:00
Aaron Andersen
fc5df319cf
Merge pull request #165764 from notgne2/oauth2-proxy-group
nixos/oauth2_proxy: add user group
2022-04-01 13:32:21 +02:00
Janne Heß
5653209ed9
nixos/systemd-initrd: Redo object specifications
As requested by @roberth, we now have an option similar to
environment.etc. There's also extra store paths to copy and a way to
suppress store paths to make customizations possible.

We also link mount and umount to /bin to make recovery easier when
something fails
2022-04-01 13:26:06 +02:00
Janne Heß
c465c8d719
nixos/systemd-initrd: Make emergency access more flexible 2022-04-01 11:58:31 +02:00
Janne Heß
b7c62b8238
nixos/systemd-initrd: Remove unit options that don't work 2022-04-01 11:58:30 +02:00
Artturi
c7ac6ff789
Merge pull request #162063 from martinetd/logrotate_size
logrotate: update to freeform
2022-04-01 06:21:11 +03:00
Silvan Mosberger
fda16bfd32
Merge pull request #165532 from Infinisil/syncplay-password 2022-04-01 04:37:22 +02:00
Dominique Martinet
829c611b48 logrotate: add logrotate-checkconf.service
the build-time check is not safe (e.g. doesn't protect from bad users or nomissingok
paths missing), so add a new unit for configuration switch time check
2022-04-01 07:09:27 +09:00
Dominique Martinet
b0a04e4105 nginx/logrotate: run logrotate as nginx user 2022-04-01 07:09:27 +09:00
Dominique Martinet
45ef5c1741 logrotate: add configuration check at build time
Now the service no longer starts immediately,
check if the config we generated makes sense as soon as possible.

The check isn't perfect because logrotate --debug wants to check
users required, there are two problems:
 - /etc/passwd and /etc/group are sandboxed and we don't have
visibility of system users
 - the check phase runs as nixbld which cannot su to other users
and logrotate fails on this

Until these two problems can be addressed, users-related checks
are filtered out, it's still much better than no check.
The check can be disabled with services.logrotate.checkConfig
if required
(bird also has a preCheck param, to prepare the environment
before check, but we can add it if it becomes necessary)

Since this makes for very verbose builds, we only show errors:
There is no way to control log level, but logrotate hardcodes
'error:' at common log level, so we can use grep, taking care
to keep error codes

Some manual tests:
───────┬──────────────────────────────────────────
       │ File: valid-config.conf
───────┼──────────────────────────────────────────
   1   │ missingok
───────┴──────────────────────────────────────────
logrotate --debug ok
grep ok

───────┬──────────────────────────────────────────
       │ File: postrotate-no-end.conf
───────┼──────────────────────────────────────────
   1   │ missingok
   2   │ /file {
   3   │    postrotate
   4   │      test
   5   │ }
───────┴──────────────────────────────────────────
error: postrotate-no-end.conf:prerotate, postrotate or preremove without endscript

───────┬──────────────────────────────────────────
       │ File: missing-file.conf
───────┼──────────────────────────────────────────
   1   │ "test" { daily }
───────┴──────────────────────────────────────────
error: stat of test failed: No such file or directory

───────┬──────────────────────────────────────────
       │ File: unknown-option.conf
───────┼──────────────────────────────────────────
   1   │ some syntax error
───────┴──────────────────────────────────────────
logrotate --debug ok
error: unknown-option.conf:1 unknown option 'some' -- ignoring line

───────┬──────────────────────────────────────────
       │ File: unknown-user.conf
───────┼──────────────────────────────────────────
   1   │ su notauser notagroup
───────┴──────────────────────────────────────────
error: unknown-user.conf:1 unknown user 'notauser'

In particular note that logrotate would not error on unknown option
(it just ignores the line) but this change makes the check fail.
2022-04-01 07:09:27 +09:00
Dominique Martinet
e92c05349c nixos/logrotate: convert to freeform
using freeform is the new standard way of using modules and should replace
extraConfig.
In particular, this will allow us to place a condition on mails
2022-04-01 07:09:26 +09:00
Dominique Martinet
3cc8ea28d1 logrotate: add services.logrotate.configFile escape hatch 2022-04-01 07:09:26 +09:00
Dominique Martinet
3a2fa0d049 logrotate: run through nixpkgs-fmt
Running once now will make further patches formatting easier
2022-04-01 07:09:26 +09:00
Dominique Martinet
b457d917dc logrotate: move mail dependency from package to service
having pkgs.logrotate depend on mailutils brings in quite a bit of dependencies
through mailutil itself and recursive dependency to guile when most people
do not need it.

Remove mailutils dependency from the package, and conditionally add it to the
service if the user specify the mail option either at top level or in a path

Fixes #162001
2022-04-01 07:09:24 +09:00
Robert Hensing
60554e4686
Merge pull request #166578 from Enzime/nix-run-vm
nixos/qemu-vm: Set `mainProgram` for `nix run`
2022-03-31 19:00:38 +02:00
Martin Weinelt
3344cea254
Merge pull request #164627 from mkg20001/fix-matrix 2022-03-31 18:26:03 +02:00
pennae
3807bedb36
Merge pull request #166338 from cole-h/1p
nixos/_1password{,-gui}: cleanup
2022-03-31 15:36:40 +00:00
Bobby Rong
7ce8bc5d48
pantheon.gnome-bluetooth-contract: use gnome-bluetooth_1_0 2022-03-31 23:32:29 +08:00
Silvan Mosberger
2da8e63ce8
Merge pull request #111595 from Luflosi/add-cherry-usb-kb-kernel-module
nixos/availableKernelModules: add cherry hid
2022-03-31 17:14:29 +02:00
Martin Weinelt
e80642bdcb
Merge pull request #165772 from alarsyo/paperless-ng-mail-fix 2022-03-31 16:52:06 +02:00
Michael Hoang
2c102d19c0 nixos/qemu-vm: Set mainProgram for nix run 2022-04-01 01:34:26 +11:00
Janne Heß
5b09ceff27
Merge pull request #166563 from K900/wireplumber-derp
nixos/wireplumber: fix Lua syntax
2022-03-31 14:46:31 +02:00
Sandro
9b074b8ee9
Merge pull request #166526 from witchof0x20/some_docs_fixes 2022-03-31 14:12:02 +02:00
K900
9febd97f98 nixos/wireplumber: fix Lua syntax 2022-03-31 15:11:15 +03:00
Erik Jensen
e0d0ff64b2 xfce4-screensaver: init at 4.16.0
A simple screen saver and locker for the Xfce desktop environment.
2022-03-31 12:00:00 +00:00
Kerstin Humm
f44b12fb52 mastodon: use correct GitHub Url
The tootsuite organization was renamed to mastodon ages ago.
2022-03-31 13:17:11 +02:00
Kerstin Humm
23a1971a4e nixos/mastodon: preload libjemalloc.so
Co-authored-by: Izorkin <izorkin@elven.pw>
2022-03-31 13:17:11 +02:00
Jade
e50bc2f36d
nixos/nix-gc, nixos/auto-upgrade: Minor documentation fixes.
The gc documentation had some artifacts (presumably being copied from
autoupgrade) and the autoupgrade docs had a typo
2022-03-31 00:24:25 -04:00
Matthew Toohey
a0f7d98c19 nixos/jitsi-meet: fix typo 2022-03-30 20:56:29 -04:00
ajs124
35619ce1e5
Merge pull request #165453 from helsinki-systems/feat/systemd-manager-environment
nixos/systemd: Switch to ManagerEnvironment=
2022-03-31 01:35:09 +02:00
Ember 'n0emis' Keske
dbd49febb5
netbox: init module 2022-03-30 22:24:34 +02:00
Janne Heß
a3e0698bf6
nixos/systemd: Switch to ManagerEnvironment=
This accomplishes multiple things:
- Allows us to start systemd without stage-2-init.sh. This was not
  possible before because the environment would have been wrong
- `systemctl daemon-reexec` also changes the environment, giving us
  newer tools for the fs packages
- Starts systemd in a fully clean environment, making everything more
  consistent and pure
2022-03-30 20:24:27 +02:00
Matt Layher
bb22a2debc nixos/zrepl: note about systemd unit, add snapshot test
Signed-off-by: Matt Layher <mdlayher@gmail.com>
2022-03-30 08:55:15 -07:00
Cole Helbling
cdd202757d nixos/_1password: cleanup
* Change groupId to gid to align with the rest of NixOS modules
* Add a check to the gid option to ensure it is greater than or equal
to 1000
2022-03-30 08:23:27 -07:00
Cole Helbling
6e6558711f nixos/_1password-gui: cleanup
* Change groupId to gid to align with the rest of NixOS modules
* Add a check to the gid option to ensure it is greater than or equal
to 1000
* Use the overridden package for the wrappers
2022-03-30 08:23:27 -07:00
Alyssa Ross
fd78240ac8
treewide: use lib.getLib for OpenSSL libraries
At some point, I'd like to make another attempt at
71f1f4884b ("openssl: stop static binaries referencing libs"), which
was reverted in 195c7da07d.  One problem with my previous attempt is
that I moved OpenSSL's libraries to a lib output, but many dependent
packages were hardcoding the out output as the location of the
libraries.  This patch fixes every such case I could find in the tree.
It won't have any effect immediately, but will mean these packages
will automatically use an OpenSSL lib output if it is reintroduced in
future.

This patch should cause very few rebuilds, because it shouldn't make
any change at all to most packages I'm touching.  The few rebuilds
that are introduced come from when I've changed a package builder not
to use variable names like openssl.out in scripts / substitution
patterns, which would be confusing since they don't hardcode the
output any more.

I started by making the following global replacements:

    ${pkgs.openssl.out}/lib -> ${lib.getLib pkgs.openssl}/lib
    ${openssl.out}/lib -> ${lib.getLib openssl}/lib

Then I removed the ".out" suffix when part of the argument to
lib.makeLibraryPath, since that function uses lib.getLib internally.

Then I fixed up cases where openssl was part of the -L flag to the
compiler/linker, since that unambigously is referring to libraries.

Then I manually investigated and fixed the following packages:

 - pycurl
 - citrix-workspace
 - ppp
 - wraith
 - unbound
 - gambit
 - acl2

I'm reasonably confindent in my fixes for all of them.

For acl2, since the openssl library paths are manually provided above
anyway, I don't think openssl is required separately as a build input
at all.  Removing it doesn't make a difference to the output size, the
file list, or the closure.

I've tested evaluation with the OfBorg meta checks, to protect against
introducing evaluation failures.
2022-03-30 15:10:00 +00:00