···5050done
51515252popd
5353+5454+# now handle module chapters. we'll need extra checks to ensure that we don't process
5555+# markdown files we're not interested in, so we'll require an x.nix file for ever x.md
5656+# that we'll convert to xml.
5757+pushd "$DIR/../../modules"
5858+5959+mapfile -t MD_FILES < <(find . -type f -regex '.*\.md$')
6060+6161+for mf in ${MD_FILES[*]}; do
6262+ [ -f "${mf%.md}.nix" ] || continue
6363+6464+ pandoc --top-level-division=chapter "$mf" "${pandoc_flags[@]}" -o "${mf%.md}.xml"
6565+done
6666+6767+popd
+1-2
nixos/modules/i18n/input-method/default.nix
···66666767 meta = {
6868 maintainers = with lib.maintainers; [ ericsagnes ];
6969- # Don't edit the docbook xml directly, edit the md and generate it:
7070- # `pandoc default.md -t docbook --top-level-division=chapter --extract-media=media -f markdown+smart --lua-filter ../../../../doc/build-aux/pandoc-filters/myst-reader/roles.lua --lua-filter ../../../../doc/build-aux/pandoc-filters/docbook-writer/rst-roles.lua > default.xml`
6969+ # Don't edit the docbook xml directly, edit the md and generate it using md-to-db.sh
7170 doc = ./default.xml;
7271 };
7372
+1-1
nixos/modules/i18n/input-method/default.xml
···234234};
235235</programlisting>
236236 <para>
237237- Note: The <xref linkend="opt-i18n.inputMethod.uim.toolbar"></xref>
237237+ Note: The <xref linkend="opt-i18n.inputMethod.uim.toolbar" />
238238 option can be used to choose uim toolbar.
239239 </para>
240240 </section>
+2-3
nixos/modules/programs/digitalbitbox/default.nix
···3333 };
34343535 meta = {
3636- # Don't edit the docbook xml directly, edit the md and generate it:
3737- # `pandoc doc.md -t docbook --top-level-division=chapter --extract-media=media -f markdown+smart > doc.xml`
3838- doc = ./doc.xml;
3636+ # Don't edit the docbook xml directly, edit the md and generate it using md-to-db.sh
3737+ doc = ./default.xml;
3938 maintainers = with lib.maintainers; [ vidbina ];
4039 };
4140}
···1313</programlisting>
1414 <para>
1515 and bundles the <literal>digitalbitbox</literal> package (see
1616- <xref linkend="sec-digitalbitbox-package"></xref>), which contains
1717- the <literal>dbb-app</literal> and <literal>dbb-cli</literal>
1818- binaries, along with the hardware module (see
1919- <xref linkend="sec-digitalbitbox-hardware-module"></xref>) which
2020- sets up the necessary udev rules to access the device.
1616+ <xref linkend="sec-digitalbitbox-package" />), which contains the
1717+ <literal>dbb-app</literal> and <literal>dbb-cli</literal> binaries,
1818+ along with the hardware module (see
1919+ <xref linkend="sec-digitalbitbox-hardware-module" />) which sets up
2020+ the necessary udev rules to access the device.
2121 </para>
2222 <para>
2323 Enabling the digitalbitbox module is pretty much the easiest way to
···2525 </para>
2626 <para>
2727 For more information, see
2828- <link xlink:href="https://digitalbitbox.com/start_linux" role="uri">https://digitalbitbox.com/start_linux</link>.
2828+ <link xlink:href="https://digitalbitbox.com/start_linux">https://digitalbitbox.com/start_linux</link>.
2929 </para>
3030 <section xml:id="sec-digitalbitbox-package">
3131 <title>Package</title>
+1-2
nixos/modules/programs/plotinus.nix
···88{
99 meta = {
1010 maintainers = pkgs.plotinus.meta.maintainers;
1111- # Don't edit the docbook xml directly, edit the md and generate it:
1212- # `pandoc plotinus.md -t docbook --top-level-division=chapter --extract-media=media -f markdown+smart --lua-filter ../../../doc/build-aux/pandoc-filters/myst-reader/roles.lua --lua-filter ../../../doc/build-aux/pandoc-filters/docbook-writer/rst-roles.lua > plotinus.xml`
1111+ # Don't edit the docbook xml directly, edit the md and generate it using md-to-db.sh
1312 doc = ./plotinus.xml;
1413 };
1514
+1-1
nixos/modules/programs/plotinus.xml
···66 </para>
77 <para>
88 <emphasis>Upstream documentation:</emphasis>
99- <link xlink:href="https://github.com/p-e-w/plotinus" role="uri">https://github.com/p-e-w/plotinus</link>
99+ <link xlink:href="https://github.com/p-e-w/plotinus">https://github.com/p-e-w/plotinus</link>
1010 </para>
1111 <para>
1212 Plotinus is a searchable command palette in every modern GTK
+1-2
nixos/modules/programs/zsh/oh-my-zsh.nix
···142142143143 };
144144145145- # Don't edit the docbook xml directly, edit the md and generate it:
146146- # `pandoc oh-my-zsh.md -t docbook --top-level-division=chapter --extract-media=media -f markdown+smart --lua-filter ../../../../doc/build-aux/pandoc-filters/myst-reader/roles.lua --lua-filter ../../../../doc/build-aux/pandoc-filters/docbook-writer/rst-roles.lua > oh-my-zsh.xml`
145145+ # Don't edit the docbook xml directly, edit the md and generate it using md-to-db.sh
147146 meta.doc = ./oh-my-zsh.xml;
148147 }
+1-1
nixos/modules/programs/zsh/oh-my-zsh.xml
···9393 <section xml:id="module-programs-oh-my-zsh-packaging-customizations">
9494 <title>Package your own customizations</title>
9595 <para>
9696- If third-party customizations (e.g. new themes) are supposed to be
9696+ If third-party customizations (e.g. new themes) are supposed to be
9797 added to <literal>oh-my-zsh</literal> there are several pitfalls
9898 to keep in mind:
9999 </para>
+2-3
nixos/modules/security/acme/default.nix
···916916917917 meta = {
918918 maintainers = lib.teams.acme.members;
919919- # Don't edit the docbook xml directly, edit the md and generate it:
920920- # `pandoc doc.md -t docbook --top-level-division=chapter --extract-media=media -f markdown+smart --lua-filter ../../../../doc/build-aux/pandoc-filters/myst-reader/roles.lua --lua-filter ../../../../doc/build-aux/pandoc-filters/docbook-writer/rst-roles.lua > doc.xml`
921921- doc = ./doc.xml;
919919+ # Don't edit the docbook xml directly, edit the md and generate it using md-to-db.sh
920920+ doc = ./default.xml;
922921 };
923922}
···1919 <para>
2020 To use the ACME module, you must accept the provider’s terms of
2121 service by setting
2222- <xref linkend="opt-security.acme.acceptTerms"></xref> to
2222+ <xref linkend="opt-security.acme.acceptTerms" /> to
2323 <literal>true</literal>. The Let’s Encrypt ToS can be found
2424 <link xlink:href="https://letsencrypt.org/repository/">here</link>.
2525 </para>
2626 <para>
2727 You must also set an email address to be used when creating
2828 accounts with Let’s Encrypt. You can set this for all certs with
2929- <xref linkend="opt-security.acme.defaults.email"></xref> and/or on
3030- a per-cert basis with
3131- <xref linkend="opt-security.acme.certs._name_.email"></xref>. This
2929+ <xref linkend="opt-security.acme.defaults.email" /> and/or on a
3030+ per-cert basis with
3131+ <xref linkend="opt-security.acme.certs._name_.email" />. This
3232 address is only used for registration and renewal reminders, and
3333 cannot be used to administer the certificates in any way.
3434 </para>
3535 <para>
3636 Alternatively, you can use a different ACME server by changing the
3737- <xref linkend="opt-security.acme.defaults.server"></xref> option
3838- to a provider of your choosing, or just change the server for one
3939- cert with
4040- <xref linkend="opt-security.acme.certs._name_.server"></xref>.
3737+ <xref linkend="opt-security.acme.defaults.server" /> option to a
3838+ provider of your choosing, or just change the server for one cert
3939+ with <xref linkend="opt-security.acme.certs._name_.server" />.
4140 </para>
4241 <para>
4342 You will need an HTTP server or DNS server for verification. For
···173172 <filename>/var/lib/acme/foo.example.com</filename>.
174173 </para>
175174 <para>
176176- Refer to <xref linkend="ch-options"></xref> for all available
175175+ Refer to <xref linkend="ch-options" /> for all available
177176 configuration options for the
178177 <link linkend="opt-security.acme.certs">security.acme</link>
179178 module.
···275274 <para>
276275 You must follow the guide above on configuring DNS-01 validation
277276 first, however instead of setting the options for one certificate
278278- (e.g. <xref linkend="opt-security.acme.certs._name_.dnsProvider"></xref>)
279279- you will set them as defaults
280280- (e.g. <xref linkend="opt-security.acme.defaults.dnsProvider"></xref>).
277277+ (e.g.
278278+ <xref linkend="opt-security.acme.certs._name_.dnsProvider" />) you
279279+ will set them as defaults (e.g.
280280+ <xref linkend="opt-security.acme.defaults.dnsProvider" />).
281281 </para>
282282 <programlisting>
283283# Configure ACME appropriately
+1-2
nixos/modules/services/backup/borgbackup.nix
···226226227227in {
228228 meta.maintainers = with maintainers; [ dotlambda ];
229229- # Don't edit the docbook xml directly, edit the md and generate it:
230230- # `pandoc borgbackup.md -t docbook --top-level-division=chapter --extract-media=media -f markdown+smart --lua-filter ../../../../doc/build-aux/pandoc-filters/myst-reader/roles.lua --lua-filter ../../../../doc/build-aux/pandoc-filters/docbook-writer/rst-roles.lua > borgbackup.xml`
229229+ # Don't edit the docbook xml directly, edit the md and generate it using md-to-db.sh
231230 meta.doc = ./borgbackup.xml;
232231233232 ###### interface
+3-3
nixos/modules/services/backup/borgbackup.xml
···66 </para>
77 <para>
88 <emphasis>Upstream documentation:</emphasis>
99- <link xlink:href="https://borgbackup.readthedocs.io/" role="uri">https://borgbackup.readthedocs.io/</link>
99+ <link xlink:href="https://borgbackup.readthedocs.io/">https://borgbackup.readthedocs.io/</link>
1010 </para>
1111 <para>
1212 <link xlink:href="https://www.borgbackup.org/">BorgBackup</link>
···200200 protect your data from disk failure, ransomware and theft.
201201 </para>
202202 <para>
203203- It can be installed in NixOS e.g. by adding
203203+ It can be installed in NixOS e.g. by adding
204204 <literal>pkgs.vorta</literal> to
205205- <xref linkend="opt-environment.systemPackages"></xref>.
205205+ <xref linkend="opt-environment.systemPackages" />.
206206 </para>
207207 <para>
208208 Details about using Vorta can be found under
+1-2
nixos/modules/services/databases/foundationdb.nix
···424424 };
425425 };
426426427427- # Don't edit the docbook xml directly, edit the md and generate it:
428428- # `pandoc foundationdb.md -t docbook --top-level-division=chapter --extract-media=media -f markdown+smart --lua-filter ../../../../doc/build-aux/pandoc-filters/myst-reader/roles.lua --lua-filter ../../../../doc/build-aux/pandoc-filters/docbook-writer/rst-roles.lua > foundationdb.xml`
427427+ # Don't edit the docbook xml directly, edit the md and generate it using md-to-db.sh
429428 meta.doc = ./foundationdb.xml;
430429 meta.maintainers = with lib.maintainers; [ thoughtpolice ];
431430}
+2-2
nixos/modules/services/databases/foundationdb.xml
···66 </para>
77 <para>
88 <emphasis>Upstream documentation:</emphasis>
99- <link xlink:href="https://apple.github.io/foundationdb/" role="uri">https://apple.github.io/foundationdb/</link>
99+ <link xlink:href="https://apple.github.io/foundationdb/">https://apple.github.io/foundationdb/</link>
1010 </para>
1111 <para>
1212 <emphasis>Maintainer:</emphasis> Austin Seipp
···417417 FoundationDB is a complex piece of software, and requires careful
418418 administration to properly use. Full documentation for
419419 administration can be found here:
420420- <link xlink:href="https://apple.github.io/foundationdb/" role="uri">https://apple.github.io/foundationdb/</link>.
420420+ <link xlink:href="https://apple.github.io/foundationdb/">https://apple.github.io/foundationdb/</link>.
421421 </para>
422422 </section>
423423</chapter>
+1-2
nixos/modules/services/databases/postgresql.nix
···585585586586 };
587587588588- # Don't edit the docbook xml directly, edit the md and generate it:
589589- # `pandoc postgresql.md -t docbook --top-level-division=chapter --extract-media=media -f markdown+smart --lua-filter ../../../../doc/build-aux/pandoc-filters/myst-reader/roles.lua --lua-filter ../../../../doc/build-aux/pandoc-filters/docbook-writer/rst-roles.lua > postgresql.xml`
588588+ # Don't edit the docbook xml directly, edit the md and generate it using md-to-db.sh
590589 meta.doc = ./postgresql.xml;
591590 meta.maintainers = with lib.maintainers; [ thoughtpolice danbst ];
592591}
+12-14
nixos/modules/services/databases/postgresql.xml
···66 </para>
77 <para>
88 <emphasis>Upstream documentation:</emphasis>
99- <link xlink:href="http://www.postgresql.org/docs/" role="uri">http://www.postgresql.org/docs/</link>
99+ <link xlink:href="http://www.postgresql.org/docs/">http://www.postgresql.org/docs/</link>
1010 </para>
1111 <para>
1212- PostgreSQL is an advanced, free relational database. <!-- MORE -->
1212+ PostgreSQL is an advanced, free relational database.
1313 </para>
1414 <section xml:id="module-services-postgres-configuring">
1515 <title>Configuring</title>
···2323</programlisting>
2424 <para>
2525 Note that you are required to specify the desired version of
2626- PostgreSQL (e.g. <literal>pkgs.postgresql_11</literal>). Since
2626+ PostgreSQL (e.g. <literal>pkgs.postgresql_11</literal>). Since
2727 upgrading your PostgreSQL version requires a database dump and
2828 reload (see below), NixOS cannot provide a default value for
2929- <xref linkend="opt-services.postgresql.package"></xref> such as
3030- the most recent release of PostgreSQL.
2929+ <xref linkend="opt-services.postgresql.package" /> such as the
3030+ most recent release of PostgreSQL.
3131 </para>
3232 <para>
3333 By default, PostgreSQL stores its databases in
3434 <filename>/var/lib/postgresql/$psqlSchema</filename>. You can
3535 override this using
3636- <xref linkend="opt-services.postgresql.dataDir"></xref>, e.g.
3636+ <xref linkend="opt-services.postgresql.dataDir" />, e.g.
3737 </para>
3838 <programlisting>
3939services.postgresql.dataDir = "/data/postgresql";
···122122 the new one. You may supply arguments like
123123 <literal>--jobs 4</literal> and <literal>--link</literal> to
124124 speedup migration process. See
125125- <link xlink:href="https://www.postgresql.org/docs/current/pgupgrade.html" role="uri">https://www.postgresql.org/docs/current/pgupgrade.html</link>
125125+ <link xlink:href="https://www.postgresql.org/docs/current/pgupgrade.html">https://www.postgresql.org/docs/current/pgupgrade.html</link>
126126 for details.
127127 </para>
128128 </listitem>
···130130 <para>
131131 Change postgresql package in NixOS configuration to the one
132132 you were upgrading to via
133133- <xref linkend="opt-services.postgresql.package"></xref>.
134134- Rebuild NixOS. This should start new postgres using upgraded
135135- data directory and all services you stopped during the
136136- upgrade.
133133+ <xref linkend="opt-services.postgresql.package" />. Rebuild
134134+ NixOS. This should start new postgres using upgraded data
135135+ directory and all services you stopped during the upgrade.
137136 </para>
138137 </listitem>
139138 <listitem>
···151150 <para>
152151 For PostgreSQL < 14, run (as
153152 <literal>su -l postgres</literal> in the
154154- <xref linkend="opt-services.postgresql.dataDir"></xref>,
155155- in this example
156156- <filename>/var/lib/postgresql/13</filename>):
153153+ <xref linkend="opt-services.postgresql.dataDir" />, in
154154+ this example <filename>/var/lib/postgresql/13</filename>):
157155 </para>
158156 <programlisting>
159157$ ./analyze_new_cluster.sh
+1-2
nixos/modules/services/desktops/flatpak.nix
···77 cfg = config.services.flatpak;
88in {
99 meta = {
1010- # Don't edit the docbook xml directly, edit the md and generate it:
1111- # `pandoc flatpak.md -t docbook --top-level-division=chapter --extract-media=media -f markdown+smart --lua-filter ../../../../doc/build-aux/pandoc-filters/myst-reader/roles.lua --lua-filter ../../../../doc/build-aux/pandoc-filters/docbook-writer/rst-roles.lua > flatpak.xml`
1010+ # Don't edit the docbook xml directly, edit the md and generate it using md-to-db.sh
1211 doc = ./flatpak.xml;
1312 maintainers = pkgs.flatpak.meta.maintainers;
1413 };
+1-1
nixos/modules/services/desktops/flatpak.xml
···66 </para>
77 <para>
88 <emphasis>Upstream documentation:</emphasis>
99- <link xlink:href="https://github.com/flatpak/flatpak/wiki" role="uri">https://github.com/flatpak/flatpak/wiki</link>
99+ <link xlink:href="https://github.com/flatpak/flatpak/wiki">https://github.com/flatpak/flatpak/wiki</link>
1010 </para>
1111 <para>
1212 Flatpak is a system for building, distributing, and running
+1-2
nixos/modules/services/development/blackfire.nix
···1111in {
1212 meta = {
1313 maintainers = pkgs.blackfire.meta.maintainers;
1414- # Don't edit the docbook xml directly, edit the md and generate it:
1515- # `pandoc blackfire.md -t docbook --top-level-division=chapter --extract-media=media -f markdown+smart --lua-filter ../../../../doc/build-aux/pandoc-filters/myst-reader/roles.lua --lua-filter ../../../../doc/build-aux/pandoc-filters/docbook-writer/rst-roles.lua > blackfire.xml`
1414+ # Don't edit the docbook xml directly, edit the md and generate it using md-to-db.sh
1615 doc = ./blackfire.xml;
1716 };
1817
···9999 environment.variables.EDITOR = mkIf cfg.defaultEditor (mkOverride 900 "${editorScript}/bin/emacseditor");
100100 };
101101102102- # Don't edit the docbook xml directly, edit the md and generate it:
103103- # `pandoc emacs.md -t docbook --top-level-division=chapter --extract-media=media -f markdown+smart --lua-filter ../../../../doc/build-aux/pandoc-filters/myst-reader/roles.lua --lua-filter ../../../../doc/build-aux/pandoc-filters/docbook-writer/rst-roles.lua > emacs.xml`
102102+ # Don't edit the docbook xml directly, edit the md and generate it using md-to-db.sh
104103 meta.doc = ./emacs.xml;
105104}
+16-16
nixos/modules/services/editors/emacs.xml
···1010 <para>
1111 Emacs runs within a graphical desktop environment using the X Window
1212 System, but works equally well on a text terminal. Under macOS, a
1313- "Mac port" edition is available, which uses Apple's native
1414- GUI frameworks.
1313+ <quote>Mac port</quote> edition is available, which uses Apple’s
1414+ native GUI frameworks.
1515 </para>
1616 <para>
1717- Nixpkgs provides a superior environment for running Emacs. It's
1717+ Nixpkgs provides a superior environment for running Emacs. It’s
1818 simple to create custom builds by overriding the default packages.
1919 Chaotic collections of Emacs Lisp code and extensions can be brought
2020 under control using declarative package management. NixOS even
···2525 <title>Installing Emacs</title>
2626 <para>
2727 Emacs can be installed in the normal way for Nix (see
2828- <xref linkend="sec-package-management"></xref>). In addition, a
2929- NixOS <emphasis>service</emphasis> can be enabled.
2828+ <xref linkend="sec-package-management" />). In addition, a NixOS
2929+ <emphasis>service</emphasis> can be enabled.
3030 </para>
3131 <section xml:id="module-services-emacs-releases">
3232 <title>The Different Releases of Emacs</title>
···6363 </term>
6464 <listitem>
6565 <para>
6666- Emacs with the "Mac port" patches, providing a
6767- more native look and feel under macOS.
6666+ Emacs with the <quote>Mac port</quote> patches, providing
6767+ a more native look and feel under macOS.
6868 </para>
6969 </listitem>
7070 </varlistentry>
7171 </variablelist>
7272 <para>
7373- If those aren't suitable, then the following imitation Emacs
7373+ If those aren’t suitable, then the following imitation Emacs
7474 editors are also available in Nixpkgs:
7575 <link xlink:href="https://www.gnu.org/software/zile/">Zile</link>,
7676 <link xlink:href="http://homepage.boetes.org/software/mg/">mg</link>,
···207207 <para>
208208 If you are on NixOS, you can install this particular Emacs for
209209 all users by adding it to the list of system packages (see
210210- <xref linkend="sec-declarative-package-mgmt"></xref>). Simply
211211- modify your file <filename>configuration.nix</filename> to make
212212- it contain:
210210+ <xref linkend="sec-declarative-package-mgmt" />). Simply modify
211211+ your file <filename>configuration.nix</filename> to make it
212212+ contain:
213213 <anchor xml:id="module-services-emacs-configuration-nix" />
214214 </para>
215215 <programlisting>
···224224 In this case, the next <command>nixos-rebuild switch</command>
225225 will take care of adding your <command>emacs</command> to the
226226 <varname>PATH</varname> environment variable (see
227227- <xref linkend="sec-changing-config"></xref>).
227227+ <xref linkend="sec-changing-config" />).
228228 </para>
229229 <para>
230230 If you are not on NixOS or want to install this particular Emacs
···292292 NixOS provides an optional <command>systemd</command> service
293293 which launches
294294 <link xlink:href="https://www.gnu.org/software/emacs/manual/html_node/emacs/Emacs-Server.html">Emacs
295295- daemon</link> with the user's login session.
295295+ daemon</link> with the user’s login session.
296296 </para>
297297 <para>
298298 <emphasis>Source:</emphasis>
···315315 <literal>emacsWithPackages</literal>.
316316 </para>
317317 <para>
318318- Ensure that the Emacs server is enabled for your user's Emacs
318318+ Ensure that the Emacs server is enabled for your user’s Emacs
319319 configuration, either by customizing the
320320 <varname>server-mode</varname> variable, or by adding
321321 <literal>(server-start)</literal> to
···353353 <section xml:id="module-services-emacs-editor-variable">
354354 <title>Configuring the <varname>EDITOR</varname> variable</title>
355355 <para>
356356- If <xref linkend="opt-services.emacs.defaultEditor"></xref> is
356356+ If <xref linkend="opt-services.emacs.defaultEditor" /> is
357357 <literal>true</literal>, the <varname>EDITOR</varname> variable
358358 will be set to a wrapper script which launches
359359 <command>emacsclient</command>.
···452452 <para>
453453 To install the DocBook 5.0 schemas, either add
454454 <varname>pkgs.docbook5</varname> to
455455- <xref linkend="opt-environment.systemPackages"></xref>
455455+ <xref linkend="opt-environment.systemPackages" />
456456 (<link linkend="sec-declarative-package-mgmt">NixOS</link>), or
457457 run <literal>nix-env -f '<nixpkgs>' -iA docbook5</literal>
458458 (<link linkend="sec-ad-hoc-packages">Nix</link>).
+1-2
nixos/modules/services/hardware/trezord.nix
···88 ### docs
991010 meta = {
1111- # Don't edit the docbook xml directly, edit the md and generate it:
1212- # `pandoc trezord.md -t docbook --top-level-division=chapter --extract-media=media -f markdown+smart --lua-filter ../../../../doc/build-aux/pandoc-filters/myst-reader/roles.lua --lua-filter ../../../../doc/build-aux/pandoc-filters/docbook-writer/rst-roles.lua > trezord.xml`
1111+ # Don't edit the docbook xml directly, edit the md and generate it using md-to-db.sh
1312 doc = ./trezord.xml;
1413 };
1514
+1-1
nixos/modules/services/hardware/trezord.xml
···1212 <link xlink:href="https://wiki.trezor.io/GPG">GPG</link> and a
1313 <link xlink:href="https://wiki.trezor.io/Trezor_Password_Manager">password
1414 manager</link>. For more information, guides and documentation, see
1515- <link xlink:href="https://wiki.trezor.io" role="uri">https://wiki.trezor.io</link>.
1515+ <link xlink:href="https://wiki.trezor.io">https://wiki.trezor.io</link>.
1616 </para>
1717 <para>
1818 To enable Trezor support, add the following to your
+1-2
nixos/modules/services/mail/mailman.nix
···642642643643 meta = {
644644 maintainers = with lib.maintainers; [ lheckemann qyliss ma27 ];
645645- # Don't edit the docbook xml directly, edit the md and generate it:
646646- # `pandoc mailman.md -t docbook --top-level-division=chapter --extract-media=media -f markdown+smart --lua-filter ../../../../doc/build-aux/pandoc-filters/myst-reader/roles.lua --lua-filter ../../../../doc/build-aux/pandoc-filters/docbook-writer/rst-roles.lua > mailman.xml`
645645+ # Don't edit the docbook xml directly, edit the md and generate it using md-to-db.sh
647646 doc = ./mailman.xml;
648647 };
649648
+1-2
nixos/modules/services/matrix/mjolnir.nix
···236236 };
237237238238 meta = {
239239- # Don't edit the docbook xml directly, edit the md and generate it:
240240- # `pandoc mjolnir.md -t docbook --top-level-division=chapter --extract-media=media -f markdown+smart --lua-filter ../../../../doc/build-aux/pandoc-filters/myst-reader/roles.lua --lua-filter ../../../../doc/build-aux/pandoc-filters/docbook-writer/rst-roles.lua > mjolnir.xml`
239239+ # Don't edit the docbook xml directly, edit the md and generate it using md-to-db.sh
241240 doc = ./mjolnir.xml;
242241 maintainers = with maintainers; [ jojosch ];
243242 };
+1-2
nixos/modules/services/matrix/synapse.nix
···801801802802 meta = {
803803 buildDocsInSandbox = false;
804804- # Don't edit the docbook xml directly, edit the md and generate it:
805805- # `pandoc synapse.md -t docbook --top-level-division=chapter --extract-media=media -f markdown+smart --lua-filter ../../../../doc/build-aux/pandoc-filters/myst-reader/roles.lua --lua-filter ../../../../doc/build-aux/pandoc-filters/docbook-writer/rst-roles.lua > synapse.xml`
804804+ # Don't edit the docbook xml directly, edit the md and generate it using md-to-db.sh
806805 doc = ./synapse.xml;
807806 maintainers = teams.matrix.members;
808807 };
+6-6
nixos/modules/services/matrix/synapse.xml
···131131 <literal>services.matrix-synapse.settings.enable_registration = true;</literal>.
132132 Otherwise, or you can generate a registration secret with
133133 <command>pwgen -s 64 1</command> and set it with
134134- <xref linkend="opt-services.matrix-synapse.settings.registration_shared_secret"></xref>.
134134+ <xref linkend="opt-services.matrix-synapse.settings.registration_shared_secret" />.
135135 To create a new user or admin, run the following after you have
136136 set the secret and have rebuilt NixOS:
137137 </para>
···151151 <warning>
152152 <para>
153153 When using
154154- <xref linkend="opt-services.matrix-synapse.settings.registration_shared_secret"></xref>,
154154+ <xref linkend="opt-services.matrix-synapse.settings.registration_shared_secret" />,
155155 the secret will end up in the world-readable store. Instead it’s
156156 recommended to deploy the secret in an additional file like
157157 this:
···173173 <citerefentry><refentrytitle>nixops</refentrytitle><manvolnum>1</manvolnum></citerefentry>
174174 or
175175 <link xlink:href="https://github.com/Mic92/sops-nix/">sops-nix</link>
176176- to
177177- e.g. <filename>/run/secrets/matrix-shared-secret</filename>
178178- and ensure that it’s readable by
176176+ to e.g.
177177+ <filename>/run/secrets/matrix-shared-secret</filename> and
178178+ ensure that it’s readable by
179179 <literal>matrix-synapse</literal>.
180180 </para>
181181 </listitem>
···217217 <literal>https://element.myhostname.example.org</literal> and
218218 <literal>https://element.example.org</literal>. Alternatively, you
219219 can use the hosted copy at
220220- <link xlink:href="https://app.element.io/" role="uri">https://app.element.io/</link>,
220220+ <link xlink:href="https://app.element.io/">https://app.element.io/</link>,
221221 or use other web clients or native client applications. Due to the
222222 <literal>/.well-known</literal> urls set up done above, many
223223 clients should fill in the required connection details
+1-2
nixos/modules/services/misc/gitlab.nix
···1502150215031503 };
1504150415051505- # Don't edit the docbook xml directly, edit the md and generate it:
15061506- # `pandoc gitlab.md -t docbook --top-level-division=chapter --extract-media=media -f markdown+smart --lua-filter ../../../../doc/build-aux/pandoc-filters/myst-reader/roles.lua --lua-filter ../../../../doc/build-aux/pandoc-filters/docbook-writer/rst-roles.lua > gitlab.xml`
15051505+ # Don't edit the docbook xml directly, edit the md and generate it using md-to-db.sh
15071506 meta.doc = ./gitlab.xml;
1508150715091508}
+1-1
nixos/modules/services/misc/gitlab.xml
···9797 enabled for fetching incoming mail.
9898 </para>
9999 <para>
100100- Refer to <xref linkend="ch-options"></xref> for all available
100100+ Refer to <xref linkend="ch-options" /> for all available
101101 configuration options for the
102102 <link linkend="opt-services.gitlab.enable">services.gitlab</link>
103103 module.
+2-3
nixos/modules/services/misc/sourcehut/default.nix
···13901390 '')
13911391 ];
1392139213931393- # Don't edit the docbook xml directly, edit the md and generate it:
13941394- # `pandoc sourcehut.md -t docbook --top-level-division=chapter --extract-media=media -f markdown+smart --lua-filter ../../../../../doc/build-aux/pandoc-filters/myst-reader/roles.lua --lua-filter ../../../../../doc/build-aux/pandoc-filters/docbook-writer/rst-roles.lua > sourcehut.xml`
13951395- meta.doc = ./sourcehut.xml;
13931393+ # Don't edit the docbook xml directly, edit the md and generate it using md-to-db.sh
13941394+ meta.doc = ./default.xml;
13961395 meta.maintainers = with maintainers; [ tomberek ];
13971396}
···9797 </para>
9898 </section>
9999 <section xml:id="module-services-sourcehut-httpd">
100100- <title>Using an alternative webserver as reverse-proxy
101101- (e.g. <literal>httpd</literal>)</title>
100100+ <title>Using an alternative webserver as reverse-proxy (e.g.
101101+ <literal>httpd</literal>)</title>
102102 <para>
103103 By default, <literal>nginx</literal> is used as reverse-proxy for
104104- <literal>sourcehut</literal>. However, it’s possible to use
105105- e.g. <literal>httpd</literal> by explicitly disabling
104104+ <literal>sourcehut</literal>. However, it’s possible to use e.g.
105105+ <literal>httpd</literal> by explicitly disabling
106106 <literal>nginx</literal> using
107107- <xref linkend="opt-services.nginx.enable"></xref> and fixing the
107107+ <xref linkend="opt-services.nginx.enable" /> and fixing the
108108 <literal>settings</literal>.
109109 </para>
110110 </section>
···77 </para>
88 <para>
99 <emphasis>Upstream documentation:</emphasis>
1010- <link xlink:href="https://taskwarrior.org/docs/#taskd" role="uri">https://taskwarrior.org/docs/#taskd</link>
1010+ <link xlink:href="https://taskwarrior.org/docs/#taskd">https://taskwarrior.org/docs/#taskd</link>
1111 </para>
1212 <section xml:id="module-services-taskserver-configuration">
1313 <title>Configuration</title>
···4343 imperatively, the <command>nixos-taskserver</command> tool is used
4444 for addition and deletion of organisations along with users and
4545 groups defined by
4646- <xref linkend="opt-services.taskserver.organisations"></xref> and
4747- as well for imperative set up.
4646+ <xref linkend="opt-services.taskserver.organisations" /> and as
4747+ well for imperative set up.
4848 </para>
4949 <para>
5050 The tool is designed to not interfere if the command is used to
+1-2
nixos/modules/services/misc/weechat.nix
···5959 };
6060 };
61616262- # Don't edit the docbook xml directly, edit the md and generate it:
6363- # `pandoc weechat.md -t docbook --top-level-division=chapter --extract-media=media -f markdown+smart --lua-filter ../../../../doc/build-aux/pandoc-filters/myst-reader/roles.lua --lua-filter ../../../../doc/build-aux/pandoc-filters/docbook-writer/rst-roles.lua > weechat.xml`
6262+ # Don't edit the docbook xml directly, edit the md and generate it using md-to-db.sh
6463 meta.doc = ./weechat.xml;
6564}
+2-2
nixos/modules/services/monitoring/parsedmarc.md
···2525Note that GeoIP provisioning is disabled in the example for
2626simplicity, but should be turned on for fully functional reports.
27272828-## Local mail
2828+## Local mail {#module-services-parsedmarc-local-mail}
2929Instead of watching an external inbox, a local inbox can be
3030automatically provisioned. The recipient's name is by default set to
3131`dmarc`, but can be configured in
···4949};
5050```
51515252-## Grafana and GeoIP
5252+## Grafana and GeoIP {#module-services-parsedmarc-grafana-geoip}
5353The reports can be visualized and summarized with parsedmarc's
5454official Grafana dashboard. For all views to work, and for the data to
5555be complete, GeoIP databases are also required. The following example
+1-2
nixos/modules/services/monitoring/parsedmarc.nix
···539539 };
540540 };
541541542542- # Don't edit the docbook xml directly, edit the md and generate it:
543543- # `pandoc parsedmarc.md -t docbook --top-level-division=chapter --extract-media=media -f markdown+smart > parsedmarc.xml`
542542+ # Don't edit the docbook xml directly, edit the md and generate it using md-to-db.sh
544543 meta.doc = ./parsedmarc.xml;
545544 meta.maintainers = [ lib.maintainers.talyz ];
546545}
+2-2
nixos/modules/services/monitoring/parsedmarc.xml
···3131 simplicity, but should be turned on for fully functional reports.
3232 </para>
3333 </section>
3434- <section xml:id="local-mail">
3434+ <section xml:id="module-services-parsedmarc-local-mail">
3535 <title>Local mail</title>
3636 <para>
3737 Instead of watching an external inbox, a local inbox can be
···5757};
5858</programlisting>
5959 </section>
6060- <section xml:id="grafana-and-geoip">
6060+ <section xml:id="module-services-parsedmarc-grafana-geoip">
6161 <title>Grafana and GeoIP</title>
6262 <para>
6363 The reports can be visualized and summarized with parsedmarc’s
···311311312312 meta = {
313313 maintainers = with lib.maintainers; [ pennae ];
314314- # Don't edit the docbook xml directly, edit the md and generate it:
315315- # `pandoc firefox-syncserver.md -t docbook --top-level-division=chapter --extract-media=media -f markdown+smart > firefox-syncserver.xml`
314314+ # Don't edit the docbook xml directly, edit the md and generate it using md-to-db.sh
316315 doc = ./firefox-syncserver.xml;
317316 };
318317}
+1-2
nixos/modules/services/networking/mosquitto.nix
···671671672672 meta = {
673673 maintainers = with lib.maintainers; [ pennae ];
674674- # Don't edit the docbook xml directly, edit the md and generate it:
675675- # `pandoc mosquitto.md -t docbook --top-level-division=chapter --extract-media=media -f markdown+smart > mosquitto.xml`
674674+ # Don't edit the docbook xml directly, edit the md and generate it using md-to-db.sh
676675 doc = ./mosquitto.xml;
677676 };
678677}
+1-2
nixos/modules/services/networking/pleroma.nix
···147147148148 };
149149 meta.maintainers = with lib.maintainers; [ ninjatrappeur ];
150150- # Don't edit the docbook xml directly, edit the md and generate it:
151151- # `pandoc pleroma.md -t docbook --top-level-division=chapter --extract-media=media -f markdown+smart --lua-filter ../../../../doc/build-aux/pandoc-filters/myst-reader/roles.lua --lua-filter ../../../../doc/build-aux/pandoc-filters/docbook-writer/rst-roles.lua > pleroma.xml`
150150+ # Don't edit the docbook xml directly, edit the md and generate it using md-to-db.sh
152151 meta.doc = ./pleroma.xml;
153152}
+7-8
nixos/modules/services/networking/pleroma.xml
···6060 </para>
6161 <para>
6262 This is an example of configuration, where
6363- <xref linkend="opt-services.pleroma.configs"></xref> option
6464- contains the content of the file <literal>config.exs</literal>,
6565- generated
6363+ <xref linkend="opt-services.pleroma.configs" /> option contains
6464+ the content of the file <literal>config.exs</literal>, generated
6665 <link linkend="module-services-pleroma-generate-config">in the
6766 first section</link>, but with the secrets (database password,
6867 endpoint secret key, salts, etc.) removed. Removing secrets is
···109108</programlisting>
110109 <para>
111110 Secrets must be moved into a file pointed by
112112- <xref linkend="opt-services.pleroma.secretConfigFile"></xref>, in
113113- our case <literal>/var/lib/pleroma/secrets.exs</literal>. This
114114- file can be created copying the previously generated
111111+ <xref linkend="opt-services.pleroma.secretConfigFile" />, in our
112112+ case <literal>/var/lib/pleroma/secrets.exs</literal>. This file
113113+ can be created copying the previously generated
115114 <literal>config.exs</literal> file and then removing all the
116115 settings, except the secrets. This is an example
117116 </para>
···136135</programlisting>
137136 <para>
138137 Note that the lines of the same configuration group are comma
139139- separated (i.e. all the lines end with a comma, except the last
138138+ separated (i.e. all the lines end with a comma, except the last
140139 one), so when the lines with passwords are added or removed,
141140 commas must be adjusted accordingly.
142141 </para>
···156155</programlisting>
157156 <para>
158157 and then accessing
159159- <link xlink:href="http://localhost:4000" role="uri">http://localhost:4000</link>
158158+ <link xlink:href="http://localhost:4000">http://localhost:4000</link>
160159 from a web browser.
161160 </para>
162161 </section>
+1-2
nixos/modules/services/networking/prosody.nix
···905905906906 };
907907908908- # Don't edit the docbook xml directly, edit the md and generate it:
909909- # `pandoc prosody.md -t docbook --top-level-division=chapter --extract-media=media -f markdown+smart --lua-filter ../../../../doc/build-aux/pandoc-filters/myst-reader/roles.lua --lua-filter ../../../../doc/build-aux/pandoc-filters/docbook-writer/rst-roles.lua > prosody.xml`
908908+ # Don't edit the docbook xml directly, edit the md and generate it using md-to-db.sh
910909 meta.doc = ./prosody.xml;
911910}
+1-2
nixos/modules/services/networking/yggdrasil.nix
···193193 environment.systemPackages = [ cfg.package ];
194194 });
195195 meta = {
196196- # Don't edit the docbook xml directly, edit the md and generate it:
197197- # `pandoc yggdrasil.md -t docbook --top-level-division=chapter --extract-media=media -f markdown+smart --lua-filter ../../../../doc/build-aux/pandoc-filters/myst-reader/roles.lua --lua-filter ../../../../doc/build-aux/pandoc-filters/docbook-writer/rst-roles.lua > yggdrasil.xml`
196196+ # Don't edit the docbook xml directly, edit the md and generate it using md-to-db.sh
198197 doc = ./yggdrasil.xml;
199198 maintainers = with lib.maintainers; [ gazally ehmry ];
200199 };
+1-1
nixos/modules/services/networking/yggdrasil.xml
···66 </para>
77 <para>
88 <emphasis>Upstream documentation:</emphasis>
99- <link xlink:href="https://yggdrasil-network.github.io/" role="uri">https://yggdrasil-network.github.io/</link>
99+ <link xlink:href="https://yggdrasil-network.github.io/">https://yggdrasil-network.github.io/</link>
1010 </para>
1111 <para>
1212 Yggdrasil is an early-stage implementation of a fully end-to-end
+1-2
nixos/modules/services/search/meilisearch.nix
···99{
10101111 meta.maintainers = with maintainers; [ Br1ght0ne happysalada ];
1212- # Don't edit the docbook xml directly, edit the md and generate it:
1313- # `pandoc meilisearch.md -t docbook --top-level-division=chapter --extract-media=media -f markdown+smart > meilisearch.xml`
1212+ # Don't edit the docbook xml directly, edit the md and generate it using md-to-db.sh
1413 meta.doc = ./meilisearch.xml;
15141615 ###### interface
+1-2
nixos/modules/services/web-apps/discourse.nix
···10801080 ];
10811081 };
1082108210831083- # Don't edit the docbook xml directly, edit the md and generate it:
10841084- # `pandoc discourse.md -t docbook --top-level-division=chapter --extract-media=media -f markdown+smart --lua-filter ../../../../doc/build-aux/pandoc-filters/myst-reader/roles.lua --lua-filter ../../../../doc/build-aux/pandoc-filters/docbook-writer/rst-roles.lua > discourse.xml`
10831083+ # Don't edit the docbook xml directly, edit the md and generate it using md-to-db.sh
10851084 meta.doc = ./discourse.xml;
10861085 meta.maintainers = [ lib.maintainers.talyz ];
10871086}
+27-30
nixos/modules/services/web-apps/discourse.xml
···3636 <title>Using a regular TLS certificate</title>
3737 <para>
3838 To set up TLS using a regular certificate and key on file, use the
3939- <xref linkend="opt-services.discourse.sslCertificate"></xref> and
4040- <xref linkend="opt-services.discourse.sslCertificateKey"></xref>
3939+ <xref linkend="opt-services.discourse.sslCertificate" /> and
4040+ <xref linkend="opt-services.discourse.sslCertificateKey" />
4141 options:
4242 </para>
4343 <programlisting>
···6161 <para>
6262 Discourse uses PostgreSQL to store most of its data. A database
6363 will automatically be enabled and a database and role created
6464- unless
6565- <xref linkend="opt-services.discourse.database.host"></xref> is
6464+ unless <xref linkend="opt-services.discourse.database.host" /> is
6665 changed from its default of <literal>null</literal> or
6767- <xref linkend="opt-services.discourse.database.createLocally"></xref>
6666+ <xref linkend="opt-services.discourse.database.createLocally" />
6867 is set to <literal>false</literal>.
6968 </para>
7069 <para>
7170 External database access can also be configured by setting
7272- <xref linkend="opt-services.discourse.database.host"></xref>,
7373- <xref linkend="opt-services.discourse.database.username"></xref>
7474- and
7575- <xref linkend="opt-services.discourse.database.passwordFile"></xref>
7676- as appropriate. Note that you need to manually create a database
7171+ <xref linkend="opt-services.discourse.database.host" />,
7272+ <xref linkend="opt-services.discourse.database.username" /> and
7373+ <xref linkend="opt-services.discourse.database.passwordFile" /> as
7474+ appropriate. Note that you need to manually create a database
7775 called <literal>discourse</literal> (or the name you chose in
7878- <xref linkend="opt-services.discourse.database.name"></xref>) and
7979- allow the configured database user full access to it.
7676+ <xref linkend="opt-services.discourse.database.name" />) and allow
7777+ the configured database user full access to it.
8078 </para>
8179 </section>
8280 <section xml:id="module-services-discourse-mail">
···127125 If you want to use a different domain for your outgoing email (for
128126 example <literal>example.com</literal> instead of
129127 <literal>discourse.example.com</literal>) you should set
130130- <xref linkend="opt-services.discourse.mail.notificationEmailAddress"></xref>
128128+ <xref linkend="opt-services.discourse.mail.notificationEmailAddress" />
131129 and
132132- <xref linkend="opt-services.discourse.mail.contactEmailAddress"></xref>
130130+ <xref linkend="opt-services.discourse.mail.contactEmailAddress" />
133131 manually.
134132 </para>
135133 <note>
136134 <para>
137135 Setup of TLS for incoming email is currently only configured
138138- automatically when a regular TLS certificate is used, i.e. when
139139- <xref linkend="opt-services.discourse.sslCertificate"></xref>
140140- and
141141- <xref linkend="opt-services.discourse.sslCertificateKey"></xref>
142142- are set.
136136+ automatically when a regular TLS certificate is used, i.e. when
137137+ <xref linkend="opt-services.discourse.sslCertificate" /> and
138138+ <xref linkend="opt-services.discourse.sslCertificateKey" /> are
139139+ set.
143140 </para>
144141 </note>
145142 </section>
···148145 <para>
149146 Additional site settings and backend settings, for which no
150147 explicit NixOS options are provided, can be set in
151151- <xref linkend="opt-services.discourse.siteSettings"></xref> and
152152- <xref linkend="opt-services.discourse.backendSettings"></xref>
148148+ <xref linkend="opt-services.discourse.siteSettings" /> and
149149+ <xref linkend="opt-services.discourse.backendSettings" />
153150 respectively.
154151 </para>
155152 <section xml:id="module-services-discourse-site-settings">
···158155 <quote>Site settings</quote> are the settings that can be
159156 changed through the Discourse UI. Their
160157 <emphasis>default</emphasis> values can be set using
161161- <xref linkend="opt-services.discourse.siteSettings"></xref>.
158158+ <xref linkend="opt-services.discourse.siteSettings" />.
162159 </para>
163160 <para>
164161 Settings are expressed as a Nix attribute set which matches the
165162 structure of the configuration in
166163 <link xlink:href="https://github.com/discourse/discourse/blob/master/config/site_settings.yml">config/site_settings.yml</link>.
167164 To find a setting’s path, you only need to care about the first
168168- two levels; i.e. its category (e.g. <literal>login</literal>)
169169- and name (e.g. <literal>invite_only</literal>).
165165+ two levels; i.e. its category (e.g. <literal>login</literal>)
166166+ and name (e.g. <literal>invite_only</literal>).
170167 </para>
171168 <para>
172169 Settings containing secret data should be set to an attribute
···245242 <title>Plugins</title>
246243 <para>
247244 You can install Discourse plugins using the
248248- <xref linkend="opt-services.discourse.plugins"></xref> option.
245245+ <xref linkend="opt-services.discourse.plugins" /> option.
249246 Pre-packaged plugins are provided in
250247 <literal><your_discourse_package_here>.plugins</literal>. If
251248 you want the full suite of plugins provided through
252249 <literal>nixpkgs</literal>, you can also set the
253253- <xref linkend="opt-services.discourse.package"></xref> option to
250250+ <xref linkend="opt-services.discourse.package" /> option to
254251 <literal>pkgs.discourseAllPlugins</literal>.
255252 </para>
256253 <para>
···284281 Some plugins provide
285282 <link linkend="module-services-discourse-site-settings">site
286283 settings</link>. Their defaults can be configured using
287287- <xref linkend="opt-services.discourse.siteSettings"></xref>, just
288288- like regular site settings. To find the names of these settings,
289289- look in the <literal>config/settings.yml</literal> file of the
290290- plugin repo.
284284+ <xref linkend="opt-services.discourse.siteSettings" />, just like
285285+ regular site settings. To find the names of these settings, look
286286+ in the <literal>config/settings.yml</literal> file of the plugin
287287+ repo.
291288 </para>
292289 <para>
293290 For example, to add the
+1-2
nixos/modules/services/web-apps/grocy.nix
···167167168168 meta = {
169169 maintainers = with maintainers; [ ma27 ];
170170- # Don't edit the docbook xml directly, edit the md and generate it:
171171- # `pandoc grocy.md -t docbook --top-level-division=chapter --extract-media=media -f markdown+smart --lua-filter ../../../../doc/build-aux/pandoc-filters/myst-reader/roles.lua --lua-filter ../../../../doc/build-aux/pandoc-filters/docbook-writer/rst-roles.lua > grocy.xml`
170170+ # Don't edit the docbook xml directly, edit the md and generate it using md-to-db.sh
172171 doc = ./grocy.xml;
173172 };
174173}
+1-2
nixos/modules/services/web-apps/jitsi-meet.nix
···451451 };
452452 };
453453454454- # Don't edit the docbook xml directly, edit the md and generate it:
455455- # `pandoc jitsi-meet.md -t docbook --top-level-division=chapter --extract-media=media -f markdown+smart --lua-filter ../../../../doc/build-aux/pandoc-filters/myst-reader/roles.lua --lua-filter ../../../../doc/build-aux/pandoc-filters/docbook-writer/rst-roles.lua > jitsi-meet.xml`
454454+ # Don't edit the docbook xml directly, edit the md and generate it using md-to-db.sh
456455 meta.doc = ./jitsi-meet.xml;
457456 meta.maintainers = lib.teams.jitsi.members;
458457}
+1-2
nixos/modules/services/web-apps/keycloak.nix
···674674 mkIf createLocalMySQL (mkDefault dbPkg);
675675 };
676676677677- # Don't edit the docbook xml directly, edit the md and generate it:
678678- # `pandoc keycloak.md -t docbook --top-level-division=chapter --extract-media=media -f markdown+smart --lua-filter ../../../../doc/build-aux/pandoc-filters/myst-reader/roles.lua --lua-filter ../../../../doc/build-aux/pandoc-filters/docbook-writer/rst-roles.lua > keycloak.xml`
677677+ # Don't edit the docbook xml directly, edit the md and generate it using md-to-db.sh
679678 meta.doc = ./keycloak.xml;
680679 meta.maintainers = [ maintainers.talyz ];
681680}
+23-25
nixos/modules/services/web-apps/keycloak.xml
···1515 An administrative user with the username <literal>admin</literal>
1616 is automatically created in the <literal>master</literal> realm.
1717 Its initial password can be configured by setting
1818- <xref linkend="opt-services.keycloak.initialAdminPassword"></xref>
1919- and defaults to <literal>changeme</literal>. The password is not
1818+ <xref linkend="opt-services.keycloak.initialAdminPassword" /> and
1919+ defaults to <literal>changeme</literal>. The password is not
2020 stored safely and should be changed immediately in the admin
2121 panel.
2222 </para>
···3232 <para>
3333 Keycloak can be used with either PostgreSQL, MariaDB or MySQL.
3434 Which one is used can be configured in
3535- <xref linkend="opt-services.keycloak.database.type"></xref>. The
3535+ <xref linkend="opt-services.keycloak.database.type" />. The
3636 selected database will automatically be enabled and a database and
3737 role created unless
3838- <xref linkend="opt-services.keycloak.database.host"></xref> is
3939- changed from its default of <literal>localhost</literal> or
4040- <xref linkend="opt-services.keycloak.database.createLocally"></xref>
4141- is set to <literal>false</literal>.
3838+ <xref linkend="opt-services.keycloak.database.host" /> is changed
3939+ from its default of <literal>localhost</literal> or
4040+ <xref linkend="opt-services.keycloak.database.createLocally" /> is
4141+ set to <literal>false</literal>.
4242 </para>
4343 <para>
4444 External database access can also be configured by setting
4545- <xref linkend="opt-services.keycloak.database.host"></xref>,
4646- <xref linkend="opt-services.keycloak.database.name"></xref>,
4747- <xref linkend="opt-services.keycloak.database.username"></xref>,
4848- <xref linkend="opt-services.keycloak.database.useSSL"></xref> and
4949- <xref linkend="opt-services.keycloak.database.caCert"></xref> as
4545+ <xref linkend="opt-services.keycloak.database.host" />,
4646+ <xref linkend="opt-services.keycloak.database.name" />,
4747+ <xref linkend="opt-services.keycloak.database.username" />,
4848+ <xref linkend="opt-services.keycloak.database.useSSL" /> and
4949+ <xref linkend="opt-services.keycloak.database.caCert" /> as
5050 appropriate. Note that you need to manually create the database
5151 and allow the configured database user full access to it.
5252 </para>
5353 <para>
5454- <xref linkend="opt-services.keycloak.database.passwordFile"></xref>
5454+ <xref linkend="opt-services.keycloak.database.passwordFile" />
5555 must be set to the path to a file containing the password used to
5656 log in to the database. If
5757- <xref linkend="opt-services.keycloak.database.host"></xref> and
5858- <xref linkend="opt-services.keycloak.database.createLocally"></xref>
5757+ <xref linkend="opt-services.keycloak.database.host" /> and
5858+ <xref linkend="opt-services.keycloak.database.createLocally" />
5959 are kept at their defaults, the database role
6060 <literal>keycloak</literal> with that password is provisioned on
6161 the local database instance.
···7272 <para>
7373 The hostname is used to build the public URL used as base for all
7474 frontend requests and must be configured through
7575- <xref linkend="opt-services.keycloak.settings.hostname"></xref>.
7575+ <xref linkend="opt-services.keycloak.settings.hostname" />.
7676 </para>
7777 <note>
7878 <para>
7979 If you’re migrating an old Wildfly based Keycloak instance and
8080 want to keep compatibility with your current clients, you’ll
8181 likely want to set
8282- <xref linkend="opt-services.keycloak.settings.http-relative-path"></xref>
8282+ <xref linkend="opt-services.keycloak.settings.http-relative-path" />
8383 to <literal>/auth</literal>. See the option description for more
8484 details.
8585 </para>
8686 </note>
8787 <para>
8888- <xref linkend="opt-services.keycloak.settings.hostname-strict-backchannel"></xref>
8888+ <xref linkend="opt-services.keycloak.settings.hostname-strict-backchannel" />
8989 determines whether Keycloak should force all requests to go
9090 through the frontend URL. By default, Keycloak allows backend
9191 requests to instead use its local hostname or IP address and may
···110110 both
111111 <link xlink:href="https://en.wikipedia.org/wiki/Privacy-Enhanced_Mail">PEM
112112 formatted</link>. Their paths should be set through
113113- <xref linkend="opt-services.keycloak.sslCertificate"></xref> and
114114- <xref linkend="opt-services.keycloak.sslCertificateKey"></xref>.
113113+ <xref linkend="opt-services.keycloak.sslCertificate" /> and
114114+ <xref linkend="opt-services.keycloak.sslCertificateKey" />.
115115 </para>
116116 <warning>
117117 <para>
···124124 <title>Themes</title>
125125 <para>
126126 You can package custom themes and make them visible to Keycloak
127127- through <xref linkend="opt-services.keycloak.themes"></xref>. See
128128- the
127127+ through <xref linkend="opt-services.keycloak.themes" />. See the
129128 <link xlink:href="https://www.keycloak.org/docs/latest/server_development/#_themes">Themes
130129 section of the Keycloak Server Development Guide</link> and the
131130 description of the aforementioned NixOS option for more
···136135 <title>Configuration file settings</title>
137136 <para>
138137 Keycloak server configuration parameters can be set in
139139- <xref linkend="opt-services.keycloak.settings"></xref>. These
138138+ <xref linkend="opt-services.keycloak.settings" />. These
140139 correspond directly to options in
141140 <filename>conf/keycloak.conf</filename>. Some of the most
142141 important parameters are documented as suboptions, the rest can be
···150149 containing the attribute <literal>_secret</literal> - a string
151150 pointing to a file containing the value the option should be set
152151 to. See the description of
153153- <xref linkend="opt-services.keycloak.settings"></xref> for an
154154- example.
152152+ <xref linkend="opt-services.keycloak.settings" /> for an example.
155153 </para>
156154 </section>
157155 <section xml:id="module-services-keycloak-example-config">
+1-2
nixos/modules/services/web-apps/lemmy.nix
···66in
77{
88 meta.maintainers = with maintainers; [ happysalada ];
99- # Don't edit the docbook xml directly, edit the md and generate it:
1010- # `pandoc lemmy.md -t docbook --top-level-division=chapter --extract-media=media -f markdown+smart > lemmy.xml`
99+ # Don't edit the docbook xml directly, edit the md and generate it using md-to-db.sh
1110 meta.doc = ./lemmy.xml;
12111312 imports = [
···3838 <literal>matomo</literal> database user (without needing a
3939 password), but no other users. For more information on
4040 passwordless login, see
4141- <link xlink:href="https://mariadb.com/kb/en/mariadb/unix_socket-authentication-plugin/" role="uri">https://mariadb.com/kb/en/mariadb/unix_socket-authentication-plugin/</link>.
4141+ <link xlink:href="https://mariadb.com/kb/en/mariadb/unix_socket-authentication-plugin/">https://mariadb.com/kb/en/mariadb/unix_socket-authentication-plugin/</link>.
4242 </para>
4343 <para>
4444- Of course, you can use password based authentication as well,
4545- e.g. when the database is not on the same host.
4444+ Of course, you can use password based authentication as well, e.g.
4545+ when the database is not on the same host.
4646 </para>
4747 </section>
4848 <section xml:id="module-services-matomo-archive-processing">
···7575 <filename>/var/lib/matomo/config/config.ini.php</filename> file.
7676 Use a user in the <literal>matomo</literal> group or root to
7777 access the file. For more information, see
7878- <link xlink:href="https://matomo.org/faq/how-to-install/faq_138/" role="uri">https://matomo.org/faq/how-to-install/faq_138/</link>.
7878+ <link xlink:href="https://matomo.org/faq/how-to-install/faq_138/">https://matomo.org/faq/how-to-install/faq_138/</link>.
7979 </para>
8080 </section>
8181 <section xml:id="module-services-matomo-issues">
+2-3
nixos/modules/services/web-apps/matomo.nix
···325325 };
326326327327 meta = {
328328- # Don't edit the docbook xml directly, edit the md and generate it:
329329- # `pandoc matomo-doc.md -t docbook --top-level-division=chapter --extract-media=media -f markdown+smart --lua-filter ../../../../doc/build-aux/pandoc-filters/myst-reader/roles.lua --lua-filter ../../../../doc/build-aux/pandoc-filters/docbook-writer/rst-roles.lua > matomo-doc.xml`
330330- doc = ./matomo-doc.xml;
328328+ # Don't edit the docbook xml directly, edit the md and generate it using md-to-db.sh
329329+ doc = ./matomo.xml;
331330 maintainers = with lib.maintainers; [ florianjacob ];
332331 };
333332}
+1-2
nixos/modules/services/web-apps/nextcloud.nix
···11461146 }
11471147 ]);
1148114811491149- # Don't edit the docbook xml directly, edit the md and generate it:
11501150- # `pandoc nextcloud.md -t docbook --top-level-division=chapter --extract-media=media -f markdown+smart --lua-filter ../../../../doc/build-aux/pandoc-filters/myst-reader/roles.lua --lua-filter ../../../../doc/build-aux/pandoc-filters/docbook-writer/rst-roles.lua > nextcloud.xml`
11491149+ # Don't edit the docbook xml directly, edit the md and generate it using md-to-db.sh
11511150 meta.doc = ./nextcloud.xml;
11521151}
+13-13
nixos/modules/services/web-apps/nextcloud.xml
···192192 external storage such as S3. Please note that this won’t work
193193 anymore when using OpenSSL 3 for PHP’s openssl extension
194194 because this is implemented using the legacy cipher RC4. If
195195- <xref linkend="opt-system.stateVersion"></xref> is
195195+ <xref linkend="opt-system.stateVersion" /> is
196196 <emphasis>above</emphasis> <literal>22.05</literal>, this is
197197 disabled by default. To turn it on again and for further
198198 information please refer to
199199- <xref linkend="opt-services.nextcloud.enableBrokenCiphersForSSE"></xref>.
199199+ <xref linkend="opt-services.nextcloud.enableBrokenCiphersForSSE" />.
200200 </para>
201201 </listitem>
202202 </itemizedlist>
203203 </section>
204204 <section xml:id="module-services-nextcloud-httpd">
205205- <title>Using an alternative webserver as reverse-proxy
206206- (e.g. <literal>httpd</literal>)</title>
205205+ <title>Using an alternative webserver as reverse-proxy (e.g.
206206+ <literal>httpd</literal>)</title>
207207 <para>
208208 By default, <literal>nginx</literal> is used as reverse-proxy for
209209- <literal>nextcloud</literal>. However, it’s possible to use
210210- e.g. <literal>httpd</literal> by explicitly disabling
209209+ <literal>nextcloud</literal>. However, it’s possible to use e.g.
210210+ <literal>httpd</literal> by explicitly disabling
211211 <literal>nginx</literal> using
212212- <xref linkend="opt-services.nginx.enable"></xref> and fixing the
212212+ <xref linkend="opt-services.nginx.enable" /> and fixing the
213213 settings <literal>listen.owner</literal> &
214214 <literal>listen.group</literal> in the
215215 <link linkend="opt-services.phpfpm.pools">corresponding
···268268 Nextcloud apps are installed statefully through the web interface.
269269 Some apps may require extra PHP extensions to be installed. This
270270 can be configured with the
271271- <xref linkend="opt-services.nextcloud.phpExtraExtensions"></xref>
271271+ <xref linkend="opt-services.nextcloud.phpExtraExtensions" />
272272 setting.
273273 </para>
274274 <para>
275275 Alternatively, extra apps can also be declared with the
276276- <xref linkend="opt-services.nextcloud.extraApps"></xref> setting.
277277- When using this setting, apps can no longer be managed statefully
276276+ <xref linkend="opt-services.nextcloud.extraApps" /> setting. When
277277+ using this setting, apps can no longer be managed statefully
278278 because this can lead to Nextcloud updating apps that are managed
279279 by Nix. If you want automatic updates it is recommended that you
280280 use web interface to install apps.
···292292 While minor and patch-level updates are no problem and can be done
293293 directly in the package-expression (and should be backported to
294294 supported stable branches after that), major-releases should be
295295- added in a new attribute (e.g. Nextcloud
295295+ added in a new attribute (e.g. Nextcloud
296296 <literal>v19.0.0</literal> should be available in
297297 <literal>nixpkgs</literal> as
298298 <literal>pkgs.nextcloud19</literal>). To provide simple upgrade
···323323</programlisting>
324324 <para>
325325 Ideally we should make sure that it’s possible to jump two NixOS
326326- versions forward: i.e. the warnings and the logic in the module
327327- should guard a user to upgrade from a Nextcloud on e.g. 19.09 to a
326326+ versions forward: i.e. the warnings and the logic in the module
327327+ should guard a user to upgrade from a Nextcloud on e.g. 19.09 to a
328328 Nextcloud on 20.09.
329329 </para>
330330 </section>
+1-2
nixos/modules/services/web-apps/pict-rs.nix
···55in
66{
77 meta.maintainers = with maintainers; [ happysalada ];
88- # Don't edit the docbook xml directly, edit the md and generate it:
99- # `pandoc pict-rs.md -t docbook --top-level-division=chapter --extract-media=media -f markdown+smart > pict-rs.xml`
88+ # Don't edit the docbook xml directly, edit the md and generate it using md-to-db.sh
109 meta.doc = ./pict-rs.xml;
11101211 options.services.pict-rs = {
+37-3
nixos/modules/services/web-apps/pict-rs.xml
···3030 <para>
3131 This endpoint returns the following JSON structure on success
3232 with a 201 Created status
3333- <literal>json { "files": [ { "delete_token": "JFvFhqJA98", "file": "lkWZDRvugm.jpg" }, { "delete_token": "kAYy9nk2WK", "file": "8qFS0QooAn.jpg" }, { "delete_token": "OxRpM3sf0Y", "file": "1hJaYfGE01.jpg" } ], "msg": "ok" }</literal>
3433 </para>
3434+ <programlisting language="json">
3535+{
3636+ "files": [
3737+ {
3838+ "delete_token": "JFvFhqJA98",
3939+ "file": "lkWZDRvugm.jpg"
4040+ },
4141+ {
4242+ "delete_token": "kAYy9nk2WK",
4343+ "file": "8qFS0QooAn.jpg"
4444+ },
4545+ {
4646+ "delete_token": "OxRpM3sf0Y",
4747+ "file": "1hJaYfGE01.jpg"
4848+ }
4949+ ],
5050+ "msg": "ok"
5151+}
5252+</programlisting>
3553 </listitem>
3654 <listitem>
3755 <para>
···5371 <literal>GET /image/details/original/{file}</literal> for
5472 getting the details of a full-resolution image. The returned
5573 JSON is structured like so:
5656- <literal>json { "width": 800, "height": 537, "content_type": "image/webp", "created_at": [ 2020, 345, 67376, 394363487 ] }</literal>
5774 </para>
7575+ <programlisting language="json">
7676+{
7777+ "width": 800,
7878+ "height": 537,
7979+ "content_type": "image/webp",
8080+ "created_at": [
8181+ 2020,
8282+ 345,
8383+ 67376,
8484+ 394363487
8585+ ]
8686+}
8787+</programlisting>
5888 </listitem>
5989 <listitem>
6090 <para>
···111141 </para>
112142 <para>
113143 An example of usage could be
114114- <literal>GET /image/process.jpg?src=asdf.png&thumbnail=256&blur=3.0</literal>
144144+ </para>
145145+ <programlisting>
146146+GET /image/process.jpg?src=asdf.png&thumbnail=256&blur=3.0
147147+</programlisting>
148148+ <para>
115149 which would create a 256x256px JPEG thumbnail and blur it
116150 </para>
117151 </listitem>
+1-2
nixos/modules/services/web-apps/plausible.nix
···292292 };
293293294294 meta.maintainers = with maintainers; [ ma27 ];
295295- # Don't edit the docbook xml directly, edit the md and generate it:
296296- # `pandoc plausible.md -t docbook --top-level-division=chapter --extract-media=media -f markdown+smart --lua-filter ../../../../doc/build-aux/pandoc-filters/myst-reader/roles.lua --lua-filter ../../../../doc/build-aux/pandoc-filters/docbook-writer/rst-roles.lua > plausible.xml`
295295+ # Don't edit the docbook xml directly, edit the md and generate it using md-to-db.sh
297296 meta.doc = ./plausible.xml;
298297}
···1616 <title>General considerations on upgrades</title>
1717 <para>
1818 Garage provides a cookbook documentation on how to upgrade:
1919- <link xlink:href="https://garagehq.deuxfleurs.fr/documentation/cookbook/upgrading/" role="uri">https://garagehq.deuxfleurs.fr/documentation/cookbook/upgrading/</link>
1919+ <link xlink:href="https://garagehq.deuxfleurs.fr/documentation/cookbook/upgrading/">https://garagehq.deuxfleurs.fr/documentation/cookbook/upgrading/</link>
2020 </para>
2121 <warning>
2222 <para>
···3636 <para>
3737 Until 1.0 is released, patch-level upgrades are considered as
3838 minor version upgrades. Minor version upgrades are considered as
3939- major version upgrades. i.e. 0.6 to 0.7 is a major version
3939+ major version upgrades. i.e. 0.6 to 0.7 is a major version
4040 upgrade.
4141 </para>
4242 </warning>
···4545 <para>
4646 <emphasis role="strong">Straightforward upgrades (patch-level
4747 upgrades).</emphasis> Upgrades must be performed one by one,
4848- i.e. for each node, stop it, upgrade it : change
4848+ i.e. for each node, stop it, upgrade it : change
4949 <link linkend="opt-system.stateVersion">stateVersion</link> or
5050 <link linkend="opt-services.garage.package">services.garage.package</link>,
5151 restart it if it was not already by switching.
···110110 </listitem>
111111 <listitem>
112112 <para>
113113- Backup the metadata folder of ALL your nodes, e.g. for a
113113+ Backup the metadata folder of ALL your nodes, e.g. for a
114114 metadata directory (the default one) in
115115 <literal>/var/lib/garage/meta</literal>, you can run
116116 <literal>pushd /var/lib/garage; tar -acf meta-v0.7.tar.zst meta/; popd</literal>.
···166166 While patch-level updates are no problem and can be done directly
167167 in the package-expression (and should be backported to supported
168168 stable branches after that), major-releases should be added in a
169169- new attribute (e.g. Garage <literal>v0.8.0</literal> should be
169169+ new attribute (e.g. Garage <literal>v0.8.0</literal> should be
170170 available in <literal>nixpkgs</literal> as
171171 <literal>pkgs.garage_0_8_0</literal>). To provide simple upgrade
172172 paths it’s generally useful to backport those as well to stable
···196196</programlisting>
197197 <para>
198198 Ideally we should make sure that it’s possible to jump two NixOS
199199- versions forward: i.e. the warnings and the logic in the module
200200- should guard a user to upgrade from a Garage on e.g. 22.11 to a
199199+ versions forward: i.e. the warnings and the logic in the module
200200+ should guard a user to upgrade from a Garage on e.g. 22.11 to a
201201 Garage on 23.11.
202202 </para>
203203 </section>
+2-3
nixos/modules/services/web-servers/garage.nix
···99in
1010{
1111 meta = {
1212- # Don't edit the docbook xml directly, edit the md and generate it:
1313- # `pandoc garage-doc.md -t docbook --top-level-division=chapter --extract-media=media -f markdown+smart --lua-filter ../../../../doc/build-aux/pandoc-filters/myst-reader/roles.lua --lua-filter ../../../../doc/build-aux/pandoc-filters/docbook-writer/rst-roles.lua > garage-doc.xml`
1414- doc = ./garage-doc.xml;
1212+ # Don't edit the docbook xml directly, edit the md and generate it using md-to-db.sh
1313+ doc = ./garage.xml;
1514 maintainers = with pkgs.lib.maintainers; [ raitobezarius ];
1615 };
1716
···4848 <para>
4949 If you’d only like to omit a subset of the core utilities, you
5050 can use
5151- <xref linkend="opt-environment.gnome.excludePackages"></xref>.
5252- Note that this mechanism can only exclude core utilities, games
5353- and core developer tools.
5151+ <xref linkend="opt-environment.gnome.excludePackages" />. Note
5252+ that this mechanism can only exclude core utilities, games and
5353+ core developer tools.
5454 </para>
5555 </section>
5656 <section xml:id="sec-gnome-disabling-services">
···103103 <para>
104104 It is also possible to create custom sessions that replace
105105 Metacity with a different window manager using
106106- <xref linkend="opt-services.xserver.desktopManager.gnome.flashback.customSessions"></xref>.
106106+ <xref linkend="opt-services.xserver.desktopManager.gnome.flashback.customSessions" />.
107107 </para>
108108 <para>
109109 The following example uses <literal>xmonad</literal> window
···128128 </para>
129129 <para>
130130 You can add them to
131131- <xref linkend="opt-environment.systemPackages"></xref> and switch
132132- to them with GNOME Tweaks. If you’d like to do this manually in
131131+ <xref linkend="opt-environment.systemPackages" /> and switch to
132132+ them with GNOME Tweaks. If you’d like to do this manually in
133133 dconf, change the values of the following keys:
134134 </para>
135135 <programlisting>
···204204 </warning>
205205 <para>
206206 You can override the default GSettings values using the
207207- <xref linkend="opt-services.xserver.desktopManager.gnome.extraGSettingsOverrides"></xref>
207207+ <xref linkend="opt-services.xserver.desktopManager.gnome.extraGSettingsOverrides" />
208208 option.
209209 </para>
210210 <para>
211211 Take note that whatever packages you want to override GSettings
212212 for, you need to add them to
213213- <xref linkend="opt-services.xserver.desktopManager.gnome.extraGSettingsOverridePackages"></xref>.
213213+ <xref linkend="opt-services.xserver.desktopManager.gnome.extraGSettingsOverridePackages" />.
214214 </para>
215215 <para>
216216 You can use <literal>dconf-editor</literal> tool to explore which