Commit Graph

50 Commits

Author SHA1 Message Date
Markus Kowalewski
b1cce3b54e
nixos/slurm: generate mpi.conf and add config options
mpi.conf is required for PMIx configuration.
Setting the PMIxCliTmpDirBase in mpi.conf per default
avoids PMIx errors complaining about a missing temporary directory.
2024-10-30 22:34:16 +01:00
Felix Buehler
7108ded8fe nixos/services.slurm: remove with lib; 2024-09-15 10:43:48 +02:00
stuebinm
6afb255d97 nixos: remove all uses of lib.mdDoc
these changes were generated with nixq 0.0.2, by running

  nixq ">> lib.mdDoc[remove] Argument[keep]" --batchmode nixos/**.nix
  nixq ">> mdDoc[remove] Argument[keep]" --batchmode nixos/**.nix
  nixq ">> Inherit >> mdDoc[remove]" --batchmode nixos/**.nix

two mentions of the mdDoc function remain in nixos/, both of which
are inside of comments.

Since lib.mdDoc is already defined as just id, this commit is a no-op as
far as Nix (and the built manual) is concerned.
2024-04-13 10:07:35 -07:00
h7x4
0a37316d6c
treewide: use mkPackageOption
This commit replaces a lot of usages of `mkOption` with the package
type, to be `mkPackageOption`, in order to reduce the amount of code.
2023-11-27 01:28:36 +01:00
Anthony Roussel
e30f48be94
treewide: fix redirected and broken URLs
Using the script in maintainers/scripts/update-redirected-urls.sh
2023-11-11 10:49:01 +01:00
Matthieu Coudron
ef5da70d66
services.openssh: rename several settings (#211991)
* services.openssh: rename several settings

... to match the sshd config format (makes transition smoother), namely:
services.openssh.forwardX11 -> services.openssh.settings.X11Forwarding
services.openssh.cyphers -> services.openssh.settings.Cyphers
services.openssh.macs -> services.openssh.settings.Macs
services.openssh.kexAlgorithms -> services.openssh.settings.KexAlgorithms
services.openssh.gatewayPorts -> services.openssh.settings.GatewayPorts

* release-notes: mention openssh renaming

* chore: regenerated release-notes
2023-02-07 00:11:18 +01:00
pennae
9547123258 nixos/*: convert internal option descriptions to MD
we'll have to do it eventually, may as well be now.
2022-08-31 16:32:54 +02:00
pennae
ef176dcf7e nixos/*: automatically convert option descriptions
conversions were done using https://github.com/pennae/nix-doc-munge
using (probably) rev f34e145 running

    nix-doc-munge nixos/**/*.nix
    nix-doc-munge --import nixos/**/*.nix

the tool ensures that only changes that could affect the generated
manual *but don't* are committed, other changes require manual review
and are discarded.
2022-08-31 16:32:53 +02:00
pennae
51a11254a7 nixos/*: literalDocBook -> literalMD
no change to rendered output
2022-08-27 19:18:29 +02:00
pennae
087472b1e5 nixos/*: automatically convert option docs 2022-08-06 20:39:12 +02:00
pennae
423545fe48 nixos/*: normalize manpage references to single-line form
now nix-doc-munge will not introduce whitespace changes when it replaces
manpage references with the MD equivalent.

no change to the manpage, changes to the HTML manual are whitespace only.
2022-08-05 18:34:50 +02:00
pennae
2e751c0772 treewide: automatically md-convert option descriptions
the conversion procedure is simple:

 - find all things that look like options, ie calls to either `mkOption`
   or `lib.mkOption` that take an attrset. remember the attrset as the
   option
 - for all options, find a `description` attribute who's value is not a
   call to `mdDoc` or `lib.mdDoc`
 - textually convert the entire value of the attribute to MD with a few
   simple regexes (the set from mdize-module.sh)
 - if the change produced a change in the manual output, discard
 - if the change kept the manual unchanged, add some text to the
   description to make sure we've actually found an option. if the
   manual changes this time, keep the converted description

this procedure converts 80% of nixos options to markdown. around 2000
options remain to be inspected, but most of those fail the "does not
change the manual output check": currently the MD conversion process
does not faithfully convert docbook tags like <code> and <package>, so
any option using such tags will not be converted at all.
2022-07-30 15:16:34 +02:00
Markus Kowalewski
b6020f42a5
nixos/slurm: update systemd service for slurmd
Adjust according to upstream recommendation
2022-05-29 17:17:01 +02:00
Markus Kowalewski
270da0a115
nixos/slurm: fix startup of slurmd
* make slurmd depend on network target to ensure basic networking
  is available on startup. This fixes behaviour
  where slurmd fails with "error: get_addr_info: getaddrinfo() failed".
* Use tmpfiles.d to ensure spool directory exists on start up.
2022-01-31 23:08:55 +01:00
Graham Christensen
06edb74413
Merge pull request #148785 from pennae/more-option-doc-staticizing
treewide: more defaultText for options
2021-12-17 11:14:08 -05:00
pennae
2d564521c0 treewide: add literalDocBook text to options with complex defaults
some options have default that are best described in prose, such as
defaults that depend on the system stateVersion, defaults that are
derivations specific to the surrounding context, or those where the
expression is much longer and harder to understand than a simple text
snippet.
2021-12-09 01:38:24 +01:00
pennae
e24a8775a8 treewide: set defaultText for options using simple path defaults
adds defaultText for all options that set their default to a path expression
using the ubiquitous `cfg` shortcut bindings.
2021-12-09 01:12:13 +01:00
pennae
2512455639 nixos/*: add trivial defaultText for options with simple defaults 2021-12-02 22:35:04 +01:00
Naïm Favier
2ddc335e6f
nixos/doc: clean up defaults and examples 2021-10-04 12:47:20 +02:00
Markus Kowalewski
d07185f986
nixos/slurm: fix creation of slurmdbd config file
replace cp/chmod by install to avoid security issues.
See https://github.com/NixOS/nixpkgs/issues/121293
2021-05-01 00:15:55 +02:00
Markus Kowalewski
c923b4c71b
nixos/slurm: expose to path config files
This adds a new internal option, services.slurm.etcSlurm such
that other modules can access slurm's config files. This is
needed, for example, when a service wants to run a slurm command.
2021-03-10 23:12:47 +01:00
volth
bc0d605cf1 treewide: fix double quoted strings in meta.description
Signed-off-by: Ben Siraphob <bensiraphob@gmail.com>
2021-01-24 19:56:59 +07:00
Markus Kowalewski
5df0cf7461
nixos/slurm: fix dbdserver config file handling
Since slurm-20.11.0.1 the dbd server requires slurmdbd.conf to be
in mode 600 to protect the database password. This change creates
slurmdbd.conf on-the-fly at service startup and thus avoids that
the database password ends up in the nix store.
2020-12-16 20:34:14 +01:00
Samuel Gräfenstein
850d7d1790
nixos/*: wether -> whether 2020-07-04 15:17:03 +02:00
Lengyel Balázs
dc71384f67 SLURM/NixOS: increase ulimit for IB/RDMA 2020-02-21 11:32:16 +01:00
Markus Kowalewski
472e165b56
nixos/slurm: add option for external slurmdbd.conf
Slurmdbd requires a password database which is stored in slurmdbd.conf.
A seperate config file avoids that the password ends up in the nix store.

Slurmdbd does 19.5 does not support MySQL socket conections.
Adapated the slurm test to provide username and password.
2019-11-10 21:28:09 +01:00
Markus Kowalewski
8219a3b713
nixos/slurm: fix X11 with spank module
* Fix path in module for slurm to find plugstack.conf
* Fix configure flags so that slurm can be compiled
  without internal X11 support (required for spank-x11).
2019-11-10 14:04:54 +01:00
Markus Kowalewski
25af518845
nixos/slurm: add extraConfigPaths options 2018-11-22 11:43:05 +01:00
Markus Kowalewski
ae93ed0f0d
nixos/slurm: set slurmd KillMode to process
The default of systemd is to kill the
the whole cgroup of a service. For slurmd
this means that all running jobs get killed
as well whenever the configuration is updated (and activated).

To avoid this behaviour we set "KillMode=process"
to kill only slurmd on reload. This is how
slurm configures the systemd service.

See:
https://bugs.schedmd.com/show_bug.cgi?id=2095#c24
508f866ea1
2018-11-20 22:26:42 +01:00
Markus Kowalewski
b388beeca3
nixos/slurm: add maintainer to module and test 2018-10-30 19:50:52 +01:00
Markus Kowalewski
d2799d1835
nixos/slurm: node/partitionName option -> list
Make the node and partitionname options lists.
There can be more than paratition or set of nodes.

Add changes to release notes
2018-10-30 19:50:52 +01:00
Markus Kowalewski
f51f753416
nixos/slurm: fix obselete string type 2018-10-30 19:50:52 +01:00
Markus Kowalewski
79c9dbfb40
nixos/slurm: add slurmdbd to module
* New options "services.slurm.dbdserver.[enable,config]"
* Add slurmdbd to test slurm.nix
2018-10-30 19:50:52 +01:00
Markus Kowalewski
111d4eb090
nixos/slurm: run ctld as user and fix spool dir
* run as user 'slurm' per default instead of root
* add user/group slurm to ids.nix
* fix default location for the state dir of slurmctld:
  (/var/spool -> /var/spool/slurmctld)
* Update release notes with the above changes
2018-10-30 19:50:46 +01:00
Markus Kowalewski
0051772890
nixos/slurm: add option clusterName
slurm 18.08 requires ClusterName to be set
(set to default).
2018-09-08 23:14:54 +02:00
Markus Kowalewski
d7412d0b16
nixos/slurm: remove propagatedBuidInputs from slurmWrapped
propagatedBuildInputs = [ cfg.package etcSlurm ]; had no effect
2018-06-02 14:01:24 +02:00
Markus Kowalewski
8026127e47
slurm: add freeipmi, readline, libssh2, fix hwloc
* add freeipmi to get power meter readings
* readline support for scontrol
* libssh2 support for X11 supporta
* Add note to enableSrunX11 in module
* fix hwloc support (was detected by configure)
2018-06-02 00:18:29 +02:00
Markus Kowalewski
b7e91f096a
nixos/slurm: Add man pages to wrapedSlurm
The nixos module adds a new derivation to
systemPackages to make sure that the binaries
get the generated config file. This derivation
did not contain the man pages so far.
Activating the module now makes the man pages
available in the system environment.
2018-06-02 00:18:28 +02:00
Markus Kowalewski
995d2ec928
nixos/slurm: Extend configuration options
* Updated SrunX11 option
* Added extraPlugstackConfig parameter
* Added option enableStools
* Add cgroup.conf to module
* Fix some typos
2018-06-02 00:17:59 +02:00
Uli Baum
7ba417aeca nixos/slurm: fix xml tag mismatch in manual
build of nixos manual broke because of mismatched xml tags
in an option description introduced in #41016.
2018-05-24 22:56:57 +02:00
Markus Kowalewski
fb7428c506
nixos/slurm: enable munge by default, added note to slurm description 2018-05-24 16:59:48 +02:00
Markus Kowalewski
2a14e898bc
slurm/module: add ProcTrackType option to unbreak default setup 2018-05-24 11:11:37 +02:00
Markus Kowalewski
85ca8f121b slurm-spank-x11: init at 0.2.5 2018-01-25 13:58:14 -08:00
Dmitry Kalinkin
b917a8760e slurm: 15-08-5-1 -> 17.02.6, slurm-llnl -> slurm 2017-07-13 03:13:05 -04:00
Joachim Fasting
b05bb30361
slurm service: robust reference to slurm bin output 2016-05-28 15:28:21 +02:00
Joachim Fasting
c420d0fb28
slurm service: fix typo in option description 2016-05-28 15:28:21 +02:00
aszlig
7bdcfb33f4
nixos: Provide a defaultText for type = package
We don't want to build all those things along with the manual, so that's
what the defaultText attribute is for.

Unfortunately a few of them were missing, so let's add them.

Signed-off-by: aszlig <aszlig@redmoonstudios.org>
2016-02-17 21:12:24 +01:00
Lancelot SIX
ca4c354789 slurm service: improve config 2015-12-25 15:54:35 +01:00
Arseniy Seroka
30e6f1b4ea slurm: impl basic configuration 2015-03-07 00:26:57 +03:00
Arseniy Seroka
0b1cc3cd51 slurm: impl simple service 2015-03-07 00:26:57 +03:00