summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--maintainers/maintainer-list.nix10
-rw-r--r--nixos/doc/manual/release-notes/rl-2103.xml8
-rw-r--r--nixos/modules/installer/cd-dvd/iso-image.nix7
-rw-r--r--nixos/modules/module-list.nix2
-rw-r--r--nixos/modules/services/hardware/udev.nix2
-rw-r--r--nixos/modules/services/networking/wpa_supplicant.nix11
-rw-r--r--nixos/modules/services/web-apps/hedgedoc.nix (renamed from nixos/modules/services/web-apps/codimd.nix)108
-rw-r--r--nixos/tests/all-tests.nix2
-rw-r--r--nixos/tests/codimd.nix60
-rw-r--r--nixos/tests/hedgedoc.nix60
-rw-r--r--nixos/tests/kafka.nix9
-rw-r--r--pkgs/applications/blockchains/monero-gui/default.nix9
-rw-r--r--pkgs/applications/blockchains/monero/default.nix4
-rw-r--r--pkgs/applications/networking/browsers/chromium/default.nix25
-rwxr-xr-xpkgs/applications/networking/browsers/chromium/update.py44
-rw-r--r--pkgs/applications/networking/browsers/chromium/upstream-info.json1
-rw-r--r--pkgs/applications/networking/cluster/nomad/1.0.nix7
-rw-r--r--pkgs/applications/networking/instant-messengers/element/element-desktop-package.json2
-rw-r--r--pkgs/applications/networking/instant-messengers/element/element-desktop-yarndeps.nix8
-rw-r--r--pkgs/applications/networking/instant-messengers/element/element-desktop.nix4
-rw-r--r--pkgs/applications/networking/instant-messengers/element/element-web.nix4
-rw-r--r--pkgs/applications/networking/sniffers/wireshark/default.nix4
-rw-r--r--pkgs/applications/radio/sdrangel/default.nix1
-rw-r--r--pkgs/applications/version-management/git-and-tools/git-machete/default.nix4
-rw-r--r--pkgs/data/icons/luna-icons/default.nix10
-rw-r--r--pkgs/development/libraries/nuspell/default.nix8
-rw-r--r--pkgs/development/python-modules/hvac/default.nix4
-rw-r--r--pkgs/development/python-modules/pulp/default.nix4
-rw-r--r--pkgs/development/python-modules/pyvips/default.nix4
-rw-r--r--pkgs/development/python-modules/requests-hawk/default.nix4
-rw-r--r--pkgs/development/python-modules/sqlite-utils/default.nix4
-rw-r--r--pkgs/development/python-modules/tlslite-ng/default.nix4
-rw-r--r--pkgs/development/python-modules/toposort/default.nix4
-rw-r--r--pkgs/development/python-modules/ufonormalizer/default.nix4
-rw-r--r--pkgs/development/tools/continuous-integration/gitlab-runner/default.nix8
-rw-r--r--pkgs/development/tools/misc/docopts/default.nix31
-rw-r--r--pkgs/development/tools/misc/docopts/deps.nix11
-rw-r--r--pkgs/development/tools/misc/unused/default.nix23
-rw-r--r--pkgs/development/tools/packer/default.nix4
-rw-r--r--pkgs/games/manaplus/default.nix32
-rw-r--r--pkgs/os-specific/linux/kernel/linux-testing-bcachefs.nix8
-rw-r--r--pkgs/servers/apache-kafka/default.nix45
-rw-r--r--pkgs/servers/web-apps/hedgedoc/default.nix (renamed from pkgs/servers/web-apps/codimd/default.nix)32
-rw-r--r--pkgs/servers/web-apps/hedgedoc/package.json (renamed from pkgs/servers/web-apps/codimd/package.json)133
-rw-r--r--pkgs/servers/web-apps/hedgedoc/yarn.lock (renamed from pkgs/servers/web-apps/codimd/yarn.lock)5360
-rw-r--r--pkgs/servers/web-apps/hedgedoc/yarn.nix (renamed from pkgs/servers/web-apps/codimd/yarn.nix)4842
-rw-r--r--pkgs/tools/admin/lexicon/default.nix4
-rw-r--r--pkgs/tools/filesystems/bcachefs-tools/default.nix26
-rw-r--r--pkgs/tools/misc/nvimpager/default.nix47
-rw-r--r--pkgs/tools/misc/youtube-dl/default.nix4
-rw-r--r--pkgs/tools/security/sudo/default.nix4
-rw-r--r--pkgs/tools/text/chroma/default.nix24
-rw-r--r--pkgs/top-level/aliases.nix10
-rw-r--r--pkgs/top-level/all-packages.nix24
54 files changed, 6701 insertions, 4417 deletions
diff --git a/maintainers/maintainer-list.nix b/maintainers/maintainer-list.nix
index b6d16311a817..43e47a23dd3e 100644
--- a/maintainers/maintainer-list.nix
+++ b/maintainers/maintainer-list.nix
@@ -4942,6 +4942,12 @@
githubId = 45168934;
name = "Louis Blin";
};
+ lucc = {
+ email = "lucc+nix@posteo.de";
+ github = "lucc";
+ githubId = 1104419;
+ name = "Lucas Hoffmann";
+ };
ldelelis = {
email = "ldelelis@est.frba.utn.edu.ar";
github = "ldelelis";
@@ -5228,6 +5234,10 @@
githubId = 10626;
name = "Andreas Wagner";
};
+ lrworth = {
+ email = "luke@worth.id.au";
+ name = "Luke Worth";
+ };
lschuermann = {
email = "leon.git@is.currently.online";
github = "lschuermann";
diff --git a/nixos/doc/manual/release-notes/rl-2103.xml b/nixos/doc/manual/release-notes/rl-2103.xml
index 793c7acc58ef..e1638e8b7469 100644
--- a/nixos/doc/manual/release-notes/rl-2103.xml
+++ b/nixos/doc/manual/release-notes/rl-2103.xml
@@ -293,6 +293,14 @@
Packages depending on <literal>wafHook</literal> need to include any Python into their <literal>nativeBuildInputs</literal>.
</para>
</listitem>
+ <listitem>
+ <para>
+ Starting with version 1.7.0, the project formerly named <literal>CodiMD</literal>
+ is now named <literal>HedgeDoc</literal>.
+ New installations will no longer use the old name for users, state directories and such, this needs to be considered when moving state to a more recent NixOS installation.
+ Based on <xref linkend="opt-system.stateVersion" />, existing installations will continue to work.
+ </para>
+ </listitem>
</itemizedlist>
</section>
diff --git a/nixos/modules/installer/cd-dvd/iso-image.nix b/nixos/modules/installer/cd-dvd/iso-image.nix
index 405fbfa10dbf..43d20a556f8d 100644
--- a/nixos/modules/installer/cd-dvd/iso-image.nix
+++ b/nixos/modules/installer/cd-dvd/iso-image.nix
@@ -143,6 +143,13 @@ let
LINUX /boot/${config.system.boot.loader.kernelFile}
APPEND init=${config.system.build.toplevel}/init ${toString config.boot.kernelParams} loglevel=7
INITRD /boot/${config.system.boot.loader.initrdFile}
+
+ # A variant to boot with a serial console enabled
+ LABEL boot-serial
+ MENU LABEL NixOS ${config.system.nixos.label}${config.isoImage.appendToMenuLabel} (serial console=ttyS0,115200n8)
+ LINUX /boot/${config.system.boot.loader.kernelFile}
+ APPEND init=${config.system.build.toplevel}/init ${toString config.boot.kernelParams} console=ttyS0,115200n8
+ INITRD /boot/${config.system.boot.loader.initrdFile}
'';
isolinuxMemtest86Entry = ''
diff --git a/nixos/modules/module-list.nix b/nixos/modules/module-list.nix
index 213048da500f..3b67a8574938 100644
--- a/nixos/modules/module-list.nix
+++ b/nixos/modules/module-list.nix
@@ -856,7 +856,6 @@
./services/web-apps/atlassian/confluence.nix
./services/web-apps/atlassian/crowd.nix
./services/web-apps/atlassian/jira.nix
- ./services/web-apps/codimd.nix
./services/web-apps/convos.nix
./services/web-apps/cryptpad.nix
./services/web-apps/documize.nix
@@ -865,6 +864,7 @@
./services/web-apps/gerrit.nix
./services/web-apps/gotify-server.nix
./services/web-apps/grocy.nix
+ ./services/web-apps/hedgedoc.nix
./services/web-apps/icingaweb2/icingaweb2.nix
./services/web-apps/icingaweb2/module-monitoring.nix
./services/web-apps/ihatemoney
diff --git a/nixos/modules/services/hardware/udev.nix b/nixos/modules/services/hardware/udev.nix
index a212adb7342d..63027f7744dc 100644
--- a/nixos/modules/services/hardware/udev.nix
+++ b/nixos/modules/services/hardware/udev.nix
@@ -205,7 +205,7 @@ in
extraRules = mkOption {
default = "";
example = ''
- KERNEL=="eth*", ATTR{address}=="00:1D:60:B9:6D:4F", NAME="my_fast_network_card"
+ SUBSYSTEM=="net", ACTION=="add", DRIVERS=="?*", ATTR{address}=="00:1D:60:B9:6D:4F", KERNEL=="eth*", NAME="my_fast_network_card"
'';
type = types.lines;
description = ''
diff --git a/nixos/modules/services/networking/wpa_supplicant.nix b/nixos/modules/services/networking/wpa_supplicant.nix
index 3cfcb535ef5b..395139879036 100644
--- a/nixos/modules/services/networking/wpa_supplicant.nix
+++ b/nixos/modules/services/networking/wpa_supplicant.nix
@@ -233,10 +233,9 @@ in {
path = [ pkgs.wpa_supplicant ];
script = ''
- if [ -f /etc/wpa_supplicant.conf -a "/etc/wpa_supplicant.conf" != "${configFile}" ]; then
- echo >&2 "<3>/etc/wpa_supplicant.conf present but ignored. Generated ${configFile} is used instead."
+ if [ -f /etc/wpa_supplicant.conf -a "/etc/wpa_supplicant.conf" != "${configFile}" ]
+ then echo >&2 "<3>/etc/wpa_supplicant.conf present but ignored. Generated ${configFile} is used instead."
fi
-
iface_args="-s -u -D${cfg.driver} -c ${configFile}"
${if ifaces == [] then ''
for i in $(cd /sys/class/net && echo *); do
@@ -249,10 +248,6 @@ in {
fi
fi
done
- if [ -z "$args" ]; then
- echo >&2 "<3>No wireless interfaces detected (yet)."
- exit 1
- fi
'' else ''
args="${concatMapStringsSep " -N " (i: "-i${i} $iface_args") ifaces}"
''}
@@ -266,7 +261,7 @@ in {
# Restart wpa_supplicant when a wlan device appears or disappears.
services.udev.extraRules = ''
- ACTION=="add|remove", SUBSYSTEM=="net", ENV{DEVTYPE}=="wlan", RUN+="/run/current-system/systemd/bin/systemctl restart wpa_supplicant.service"
+ ACTION=="add|remove", SUBSYSTEM=="net", ENV{DEVTYPE}=="wlan", RUN+="/run/current-system/systemd/bin/systemctl try-restart wpa_supplicant.service"
'';
};
diff --git a/nixos/modules/services/web-apps/codimd.nix b/nixos/modules/services/web-apps/hedgedoc.nix
index 0fbc9ee820e6..3f646d7db0cd 100644
--- a/nixos/modules/services/web-apps/codimd.nix
+++ b/nixos/modules/services/web-apps/hedgedoc.nix
@@ -3,10 +3,14 @@
with lib;
let
- cfg = config.services.codimd;
+ cfg = config.services.hedgedoc;
+
+ name = if versionAtLeast config.system.stateVersion "21.03"
+ then "hedgedoc"
+ else "codimd";
prettyJSON = conf:
- pkgs.runCommandLocal "codimd-config.json" {
+ pkgs.runCommandLocal "hedgedoc-config.json" {
nativeBuildInputs = [ pkgs.jq ];
} ''
echo '${builtins.toJSON conf}' | jq \
@@ -14,22 +18,26 @@ let
'';
in
{
- options.services.codimd = {
- enable = mkEnableOption "the CodiMD Markdown Editor";
+ imports = [
+ (mkRenamedOptionModule [ "services" "codimd" ] [ "services" "hedgedoc" ])
+ ];
+
+ options.services.hedgedoc = {
+ enable = mkEnableOption "the HedgeDoc Markdown Editor";
groups = mkOption {
type = types.listOf types.str;
default = [];
description = ''
- Groups to which the codimd user should be added.
+ Groups to which the user ${name} should be added.
'';
};
workDir = mkOption {
type = types.path;
- default = "/var/lib/codimd";
+ default = "/var/lib/${name}";
description = ''
- Working directory for the CodiMD service.
+ Working directory for the HedgeDoc service.
'';
};
@@ -38,17 +46,17 @@ in
domain = mkOption {
type = types.nullOr types.str;
default = null;
- example = "codimd.org";
+ example = "hedgedoc.org";
description = ''
- Domain name for the CodiMD instance.
+ Domain name for the HedgeDoc instance.
'';
};
urlPath = mkOption {
type = types.nullOr types.str;
default = null;
- example = "/url/path/to/codimd";
+ example = "/url/path/to/hedgedoc";
description = ''
- Path under which CodiMD is accessible.
+ Path under which HedgeDoc is accessible.
'';
};
host = mkOption {
@@ -69,7 +77,7 @@ in
path = mkOption {
type = types.nullOr types.str;
default = null;
- example = "/run/codimd.sock";
+ example = "/run/hedgedoc.sock";
description = ''
Specify where a UNIX domain socket should be placed.
'';
@@ -77,7 +85,7 @@ in
allowOrigin = mkOption {
type = types.listOf types.str;
default = [];
- example = [ "localhost" "codimd.org" ];
+ example = [ "localhost" "hedgedoc.org" ];
description = ''
List of domains to whitelist.
'';
@@ -201,7 +209,7 @@ in
'';
description = ''
Specify which database to use.
- CodiMD supports mysql, postgres, sqlite and mssql.
+ HedgeDoc supports mysql, postgres, sqlite and mssql.
See <link xlink:href="https://sequelize.readthedocs.io/en/v3/">
https://sequelize.readthedocs.io/en/v3/</link> for more information.
Note: This option overrides <option>db</option>.
@@ -213,12 +221,12 @@ in
example = literalExample ''
{
dialect = "sqlite";
- storage = "/var/lib/codimd/db.codimd.sqlite";
+ storage = "/var/lib/${name}/db.${name}.sqlite";
}
'';
description = ''
Specify the configuration for sequelize.
- CodiMD supports mysql, postgres, sqlite and mssql.
+ HedgeDoc supports mysql, postgres, sqlite and mssql.
See <link xlink:href="https://sequelize.readthedocs.io/en/v3/">
https://sequelize.readthedocs.io/en/v3/</link> for more information.
Note: This option overrides <option>db</option>.
@@ -227,7 +235,7 @@ in
sslKeyPath= mkOption {
type = types.nullOr types.str;
default = null;
- example = "/var/lib/codimd/codimd.key";
+ example = "/var/lib/hedgedoc/hedgedoc.key";
description = ''
Path to the SSL key. Needed when <option>useSSL</option> is enabled.
'';
@@ -235,7 +243,7 @@ in
sslCertPath = mkOption {
type = types.nullOr types.str;
default = null;
- example = "/var/lib/codimd/codimd.crt";
+ example = "/var/lib/hedgedoc/hedgedoc.crt";
description = ''
Path to the SSL cert. Needed when <option>useSSL</option> is enabled.
'';
@@ -243,7 +251,7 @@ in
sslCAPath = mkOption {
type = types.listOf types.str;
default = [];
- example = [ "/var/lib/codimd/ca.crt" ];
+ example = [ "/var/lib/hedgedoc/ca.crt" ];
description = ''
SSL ca chain. Needed when <option>useSSL</option> is enabled.
'';
@@ -251,7 +259,7 @@ in
dhParamPath = mkOption {
type = types.nullOr types.str;
default = null;
- example = "/var/lib/codimd/dhparam.pem";
+ example = "/var/lib/hedgedoc/dhparam.pem";
description = ''
Path to the SSL dh params. Needed when <option>useSSL</option> is enabled.
'';
@@ -260,10 +268,10 @@ in
type = types.str;
default = "/tmp";
description = ''
- Path to the temp directory CodiMD should use.
+ Path to the temp directory HedgeDoc should use.
Note that <option>serviceConfig.PrivateTmp</option> is enabled for
- the CodiMD systemd service by default.
- (Non-canonical paths are relative to CodiMD's base directory)
+ the HedgeDoc systemd service by default.
+ (Non-canonical paths are relative to HedgeDoc's base directory)
'';
};
defaultNotePath = mkOption {
@@ -271,7 +279,7 @@ in
default = "./public/default.md";
description = ''
Path to the default Note file.
- (Non-canonical paths are relative to CodiMD's base directory)
+ (Non-canonical paths are relative to HedgeDoc's base directory)
'';
};
docsPath = mkOption {
@@ -279,7 +287,7 @@ in
default = "./public/docs";
description = ''
Path to the docs directory.
- (Non-canonical paths are relative to CodiMD's base directory)
+ (Non-canonical paths are relative to HedgeDoc's base directory)
'';
};
indexPath = mkOption {
@@ -287,7 +295,7 @@ in
default = "./public/views/index.ejs";
description = ''
Path to the index template file.
- (Non-canonical paths are relative to CodiMD's base directory)
+ (Non-canonical paths are relative to HedgeDoc's base directory)
'';
};
hackmdPath = mkOption {
@@ -295,7 +303,7 @@ in
default = "./public/views/hackmd.ejs";
description = ''
Path to the hackmd template file.
- (Non-canonical paths are relative to CodiMD's base directory)
+ (Non-canonical paths are relative to HedgeDoc's base directory)
'';
};
errorPath = mkOption {
@@ -304,7 +312,7 @@ in
defaultText = "./public/views/error.ejs";
description = ''
Path to the error template file.
- (Non-canonical paths are relative to CodiMD's base directory)
+ (Non-canonical paths are relative to HedgeDoc's base directory)
'';
};
prettyPath = mkOption {
@@ -313,7 +321,7 @@ in
defaultText = "./public/views/pretty.ejs";
description = ''
Path to the pretty template file.
- (Non-canonical paths are relative to CodiMD's base directory)
+ (Non-canonical paths are relative to HedgeDoc's base directory)
'';
};
slidePath = mkOption {
@@ -322,13 +330,13 @@ in
defaultText = "./public/views/slide.hbs";
description = ''
Path to the slide template file.
- (Non-canonical paths are relative to CodiMD's base directory)
+ (Non-canonical paths are relative to HedgeDoc's base directory)
'';
};
uploadsPath = mkOption {
type = types.str;
default = "${cfg.workDir}/uploads";
- defaultText = "/var/lib/codimd/uploads";
+ defaultText = "/var/lib/${name}/uploads";
description = ''
Path under which uploaded files are saved.
'';
@@ -766,7 +774,7 @@ in
type = types.str;
default = "";
description = ''
- LDAP field which is used as the username on CodiMD.
+ LDAP field which is used as the username on HedgeDoc.
By default <option>useridField</option> is used.
'';
};
@@ -774,7 +782,7 @@ in
type = types.str;
example = "uid";
description = ''
- LDAP field which is a unique identifier for users on CodiMD.
+ LDAP field which is a unique identifier for users on HedgeDoc.
'';
};
tlsca = mkOption {
@@ -840,7 +848,7 @@ in
requiredGroups = mkOption {
type = types.listOf types.str;
default = [];
- example = [ "Hackmd-users" "Codimd-users" ];
+ example = [ "Hedgedoc-Users" ];
description = ''
Required group names.
'';
@@ -883,7 +891,7 @@ in
environmentFile = mkOption {
type = with types; nullOr path;
default = null;
- example = "/var/lib/codimd/codimd.env";
+ example = "/var/lib/hedgedoc/hedgedoc.env";
description = ''
Environment file as defined in <citerefentry>
<refentrytitle>systemd.exec</refentrytitle><manvolnum>5</manvolnum>
@@ -894,9 +902,9 @@ in
setting these variables accordingly in the environment file.
<programlisting>
- # snippet of CodiMD-related config
- services.codimd.configuration.dbURL = "postgres://codimd:\''${DB_PASSWORD}@db-host:5432/codimddb";
- services.codimd.configuration.minio.secretKey = "$MINIO_SECRET_KEY";
+ # snippet of HedgeDoc-related config
+ services.hedgedoc.configuration.dbURL = "postgres://hedgedoc:\''${DB_PASSWORD}@db-host:5432/hedgedocdb";
+ services.hedgedoc.configuration.minio.secretKey = "$MINIO_SECRET_KEY";
</programlisting>
<programlisting>
@@ -906,15 +914,15 @@ in
</programlisting>
Note that this file needs to be available on the host on which
- <literal>CodiMD</literal> is running.
+ <literal>HedgeDoc</literal> is running.
'';
};
package = mkOption {
type = types.package;
- default = pkgs.codimd;
+ default = pkgs.hedgedoc;
description = ''
- Package that provides CodiMD.
+ Package that provides HedgeDoc.
'';
};
};
@@ -924,20 +932,20 @@ in
{ assertion = cfg.configuration.db == {} -> (
cfg.configuration.dbURL != "" && cfg.configuration.dbURL != null
);
- message = "Database configuration for CodiMD missing."; }
+ message = "Database configuration for HedgeDoc missing."; }
];
- users.groups.codimd = {};
- users.users.codimd = {
- description = "CodiMD service user";
- group = "codimd";
+ users.groups.${name} = {};
+ users.users.${name} = {
+ description = "HedgeDoc service user";
+ group = name;
extraGroups = cfg.groups;
home = cfg.workDir;
createHome = true;
isSystemUser = true;
};
- systemd.services.codimd = {
- description = "CodiMD Service";
+ systemd.services.hedgedoc = {
+ description = "HedgeDoc Service";
wantedBy = [ "multi-user.target" ];
after = [ "networking.target" ];
preStart = ''
@@ -947,14 +955,14 @@ in
'';
serviceConfig = {
WorkingDirectory = cfg.workDir;
- ExecStart = "${cfg.package}/bin/codimd";
+ ExecStart = "${cfg.package}/bin/hedgedoc";
EnvironmentFile = mkIf (cfg.environmentFile != null) [ cfg.environmentFile ];
Environment = [
"CMD_CONFIG_FILE=${cfg.workDir}/config.json"
"NODE_ENV=production"
];
Restart = "always";
- User = "codimd";
+ User = name;
PrivateTmp = true;
};
};
diff --git a/nixos/tests/all-tests.nix b/nixos/tests/all-tests.nix
index f878b63e02b8..306aca79d13c 100644
--- a/nixos/tests/all-tests.nix
+++ b/nixos/tests/all-tests.nix<