Commit graph

37191 commits

Author SHA1 Message Date
Yarny0 98c03bf8c6 nixos/tsm-client: stricter assertions
Check for spaces or duplicate names in server config keys.
Since server config keys are case insensitive,
a setting like

```
{
  compression = "yes";
  Compression = "no";
}
```

would lead to an ambiguous configuration.
2023-12-02 09:09:27 +01:00
Yarny0 3fb29fecd5 nixos/tsm-client: use freeformType for server config
`tsm-client` uses a global configuration
file that must contain coordinates for each
server that it is supposed to contact.
This configuration consists of text
lines with key-value pairs.

In the NixOS module, these servers may be declared
with an attribute set, where the attribute name
defines an alias for the server, and the value
is again an attribute set with the settings for
the respective server.
This is organized as an option of type `attrsOf submodule...`.

Before this commit:

Important settings have their own option within
the submodule.  For everything else, there is
the "catch-all" option `extraConfig` that may
be used to declare any key-value pairs.
There is also `text` that can be used to
add arbitrary text to each server's
section in the global config file.

After this commit:

`extraConfig` and `text` are gone,
the attribute names and values of each server's attribute
set are translated directly into key-value pairs,
with the following notable rules:

* Lists are translated into multiple lines
  with the same key, as such is permitted by
  the software for certain keys.
* `null` may be used to override/shadow a value that
  is defined elsewhere and hides the corresponding key.

Those "important settings" that have previously been
defined as dedicated options are still defined as such,
but they have been renamed to match their
corresponding key names in the configuration file.
There is a notable exception:
"Our" boolean option `genPasswd` influences the "real"
option `passwordaccess', but the latter one is
uncomfortable to use and might lead
to undesirable outcome if used the wrong way.
So it seems advisable to keep the boolean option
and the warning in its description.
To this end, the value of `getPasswd` itself is
later filtered out when the config file is generated.

The tsm-backup service module and the vm test are adapted.

Migration code will be added in a separate
commit to permit easy reversal later, when the
migration code is no longer deemed necessary.
2023-12-02 09:09:27 +01:00
Yarny0 8b918ed8ab nixos/tsm-client: submodule doesn't need singleton list 2023-12-02 09:09:27 +01:00
Yarny0 5bc6eb731e nixos/tsm-client: server alias names cannot have spaces 2023-12-02 09:09:27 +01:00
Yarny0 fe96d79adf nixos/tsm-client: drop own checkIUnique for allUnique 2023-12-02 09:09:27 +01:00
Yarny0 363cf1e363 nixos/tsm-client: use mkPackageOption for wrappedPackage 2023-12-02 09:08:47 +01:00
Yarny0 d5f337809e nixos/backup/tsm: use lib.getExe' for service command line 2023-12-02 09:05:45 +01:00
Yarny0 cec6d7f51a nixos/tsm*: update product name and URLs
With the tsm-client 8.1.19.0 release,
IBM renamed the product brand from
"IBM Spectrum Protect" to "IBM Storage Protect":
https://www.ibm.com/support/pages/node/6964770 .

The package already got updated in commits
5ff5b2ae4c and
a4b7a62532 .

The commit at hand updates the modules accordingly.
2023-12-02 09:05:45 +01:00
Emily Trau 00bee09724
Merge pull request #264419 from Noodlez1232/joycond-cemuhook
joycond-cemuhook: init at unstable-2023-08-09
2023-12-01 22:00:55 +11:00
Emily Trau 61bc4eb133
Merge pull request #271246 from otavio/rio
rio: 0.0.27 -> 0.0.28
2023-12-01 21:17:10 +11:00
Weijia Wang a06a0562f1
Merge pull request #271302 from SohamG/patch-1
nixos/oddjobd: add SohamG as maintainer
2023-12-01 09:19:46 +01:00
Soham Gumaste e1c0473dc4 nixos/oddjobd: add SohamG as maintainer 2023-12-01 09:17:45 +01:00
Lin Jian cdc1b4599f
Merge pull request #270096 from slotThe/emacs/192019-2
nixos/emacs: Remove absolute paths from documentation
2023-12-01 01:31:04 -06:00
Weijia Wang 07183914f1
Merge pull request #257692 from telotortium/anki-sync-server
nixos/anki-sync-server: init
2023-12-01 08:30:36 +01:00
Sarah Brofeldt 110828e412
Merge pull request #271243 from shyim/fix-opensearch-boot
nixos/opensearch: check plugins directory exists before checking content
2023-12-01 06:33:50 +01:00
Emily Trau 7edd128431
Merge pull request #266746 from serpent213/patch-2
nixos/roundcube: Ignore newline at end of password file
2023-12-01 15:50:05 +11:00
lgoette d14a788127 nixos/pulseaudio: set permission of pulse home directory
Closes #114399
2023-12-01 15:47:22 +11:00
Mario Rodas 15b5295311
Merge pull request #270847 from anthonyroussel/updates/tomcat_10_1_16
tomcat10: 10.1.15 -> 10.1.16
2023-11-30 22:38:23 -05:00
Emily Trau f3814afdc6
Merge pull request #269353 from kylehendricks/snapraid-fix-split-parity2
snapraid: fix split parity files
2023-12-01 13:40:32 +11:00
Silvan Mosberger 54c8a15650
Merge pull request #271247 from h7x4/treewide-mkpackageoptionmd-to-mkpackageoption
treewide: replace `mkPackageOptionMD` with `mkPackageOption`
2023-12-01 02:09:10 +01:00
Franz Pletz 9619439772
Merge pull request #270004 from Stunkymonkey/libvirtd-add-netcat 2023-11-30 21:04:02 +01:00
Franz Pletz 32caf62376
Merge pull request #268887 from jchw-forks/libvirt-nss 2023-11-30 20:48:24 +01:00
Franz Pletz c4b7e013aa
Merge pull request #243834 from LunNova/lunnova/i3-update-session-environment 2023-11-30 20:42:13 +01:00
Peder Bergebakken Sundt 23fb8f614b
Merge pull request #261378 from lamarios/auto-epp
auto-epp: init at 1.2.1
2023-11-30 19:47:12 +01:00
Otavio Salvador b06b8857e0 rio: 0.0.27 -> 0.0.28
Signed-off-by: Otavio Salvador <otavio@ossystems.com.br>
2023-11-30 15:33:27 -03:00
Soner Sayakci 87b3a98c36
nixos/opensearch: check plugins directory exists before checking content 2023-11-30 19:09:11 +01:00
h7x4 79d3d59f58
treewide: replace mkPackageOptionMD with mkPackageOption 2023-11-30 19:03:14 +01:00
Niklas Sombert d3ccd1aa2f nixos/sysctl: Move changelog entry for yama
#256159 removed the default settings disabling it,
but it was not merged in time for 23.11.
2023-11-30 18:29:55 +01:00
Peder Bergebakken Sundt 637577f1bb
Merge pull request #261704 from baloo/baloo/dublin-traceroute/init
dublin-traceroute: init at 2023.04.12
2023-11-30 18:17:24 +01:00
Weijia Wang b474de4779 nixos/anki-sync-server: minor cleanup 2023-11-30 17:32:03 +01:00
Dominique Martinet f0f6c77781 nixos/tests/anki-sync-server: add anki sync test
Start anki-sync-server service and drive anki manually through its
python lib to test sync.
The anki python part isn't a stable API and might require freqent
rework, let's see if it holds up...
2023-11-30 17:25:27 +01:00
Robert Irelan 8fe9c18ed3 nixos/anki-sync-server: init
Provide a NixOS module for the [built-in Anki Sync
Server](https://docs.ankiweb.net/sync-server.html) included in recent
versions of Anki. This supersedes the `ankisyncd` module, but we should
keep that for now because `ankisyncd` supports older versions of Anki
clients than this module.
2023-11-30 17:25:17 +01:00
Maciej Krüger 50bb5d3338
Merge pull request #264929 from adamcstephens/incus/generator 2023-11-30 16:01:35 +01:00
emilylange 9b58faad99 nixosTests.jitsi-meet: test cfg.caddy.enable 2023-11-30 06:13:38 +00:00
emilylange 9a821ebe0f nixos/jitsi-meet: fix cfg.caddy.enable
This fixes the following error:

```
error: failed processing files:
        FailedJobs(
        "static/404.html": Permission denied (os error 13) at path "/build/static/.tmpRMzDXu"
)
```
2023-11-30 06:13:38 +00:00
Weijia Wang 8c734937d6 nixos/sourcehut: fix eval 2023-11-30 02:52:50 +01:00
Weijia Wang feeae486de
Merge pull request #261702 from h7x4/replace-mkoption-with-mkpackageoption
treewide: use `mkPackageOption`
2023-11-30 02:49:30 +01:00
Weijia Wang babc0d5e96
Merge pull request #257400 from wineee/deepin-23
deepin desktop environment: v20 -> v23Beta
2023-11-30 02:47:08 +01:00
Kyle Hendricks 463424129d snapraid: fix split parity files
SnapRAID has a feature where you can specify "split" parity files. This
is useful when you're using 16tb or bigger ext4-formatted disks for
parity. ext4 doesn't support files bigger than 16tb so this "split
parity file" can be used to specify two parity files on a single parity
disk and SnapRAID will automatically use the subsequent file when the current
cannot grow anymore (hits 16TB). You specify these split parity files by
separating them with commas in the "parity" config option. This
mostly already works except when it comes to the scheduled systemd sync
job where it specifies ReadWritePaths. If you specify a parity with
multiple files you'll get an error when the systemd job runs: Failed to
set up mount namespacing:
/run/systemd/unit-root/mnt/parity1/snapraid1.parity,/mnt/parity1/snapraid2.parity: No such file or directory
Essentially, when the parity file paths are passed into ReadWritePaths,
they're always treated as a single path.  This change makes sure to
split the paths if they contain a comma.

The big concern for this change is if it would break users who have
commas in their actual parity file paths.  This won't be an issue because SnapRAID
itself blindly splits on commas for parity files, so legitimate commas in a parity
file path wouldn't work in SnapRAID anyway. See here:
978d812153/cmdline/state.c (L692)

SnapRAID doc for split parity files: https://www.snapraid.it/manual#7.1
2023-11-29 20:10:29 -05:00
Felix Bühler b80ad550a8
Merge pull request #270519 from Stunkymonkey/esphome-fix-bwrap
nixos/esphome: fix bwrap
2023-11-29 19:40:48 +01:00
figsoda 7e562b74c3
Merge pull request #270980 from figsoda/release
Release NixOS 23.11
2023-11-29 13:25:05 -05:00
Silvan Mosberger 5057a89f57 rl-2311: Minor fixes
Rename the "Nixpkgs Library Changes" section to just "Nixpkgs Library",
matching the "NixOS" section.

Correct some formatting
2023-11-29 18:18:50 +01:00
figsoda 04220ed676
Release NixOS 23.11 2023-11-29 12:17:49 -05:00
Alejandro Sánchez Medina b460856efa
23.11 release notes: editing updates (#270967)
Co-authored-by: Lennart Mühlenmeier <lennart@cope.cool>
2023-11-29 12:10:40 -05:00
Nick Cao a1ecbe2ea9
Merge pull request #270701 from sumnerevans/matrix-synapse-1.97
matrix-synapse: 1.95.1 -> 1.97.0
2023-11-29 10:57:58 -05:00
Nick Cao fd522b612d
nixosTests.matrix-synapse: fix requests certificate validation by using minica instead of openssl 2023-11-29 10:49:49 -05:00
fasheng 52c81e882b nixos/fail2ban: fix default value for banaction-allports
It's iptables-allports instead of iptables-allport.

https://github.com/fail2ban/fail2ban/tree/master/config/action.d
2023-11-29 16:17:53 +01:00
Stig 9f060c688e
Merge pull request #265661 from TomaSajt/lanraragi
lanraragi: 0.8.90 -> 0.9.0
2023-11-29 13:01:07 +01:00
Adam Joseph c946245c7a tests.nixops: fix broken eval 2023-11-29 09:44:46 +01:00
TomaSajt eac5dfd20f
lanraragi: 0.8.90 -> 0.9.0 2023-11-29 08:52:48 +01:00