inspircd: 3.18.0 -> 4.7.0

https://docs.inspircd.org/4/breaking-changes/
https://docs.inspircd.org/4/overview/

https://docs.inspircd.org/4/change-log/#inspircd-401
https://docs.inspircd.org/4/change-log/#inspircd-410
https://docs.inspircd.org/4/change-log/#inspircd-420
https://docs.inspircd.org/4/change-log/#inspircd-430
https://docs.inspircd.org/4/change-log/#inspircd-440
https://docs.inspircd.org/4/change-log/#inspircd-450
https://docs.inspircd.org/4/change-log/#inspircd-460
https://docs.inspircd.org/4/change-log/#inspircd-470

Packaging-relevant changes:

- inspircd no longer has the start subcommand, but needs to be invoked
  directly.
- New extra modules: log_syslog and log_json
- Removed extra modules: regex_tre, regex_pcre, ssl_mbedtls
  You probably should not use them anymore, but they can be
  obtained via the module manager in theory — though I doubt it works
  with Nix (another item for the todo list, I guess):
  https://docs.inspircd.org/4/module-manager/
This commit is contained in:
sternenseemann
2025-07-14 14:51:39 +02:00
parent 54b5c7b431
commit 0f56042556
3 changed files with 10 additions and 11 deletions

View File

@@ -47,6 +47,8 @@
The binary name remains `webfontkitgenerator`. The binary name remains `webfontkitgenerator`.
The `webfontkitgenerator` package is an alias to `webfont-bundler`. The `webfontkitgenerator` package is an alias to `webfont-bundler`.
- `inspircd` has been updated to the v4 release series. Please refer to the upstream documentation for [general information](https://docs.inspircd.org/4/overview/#v4-overview) and a list of [breaking changes](https://docs.inspircd.org/4/breaking-changes/).
- `lima` package now only includes the guest agent for the host's architecture by default. If your guest VM's architecture differs from your Lima host's, you'll need to enable the `lima-additional-guestagents` package by setting `withAdditionalGuestAgents = true` when overriding lima with this input. - `lima` package now only includes the guest agent for the host's architecture by default. If your guest VM's architecture differs from your Lima host's, you'll need to enable the `lima-additional-guestagents` package by setting `withAdditionalGuestAgents = true` when overriding lima with this input.
- `vmware-horizon-client` was renamed to `omnissa-horizon-client`, following [VMware's sale of their end-user business to Omnissa](https://www.omnissa.com/insights/introducing-omnissa-the-former-vmware-end-user-computing-business/). The binary has been renamed from `vmware-view` to `horizon-client`. - `vmware-horizon-client` was renamed to `omnissa-horizon-client`, following [VMware's sale of their end-user business to Omnissa](https://www.omnissa.com/insights/introducing-omnissa-the-former-vmware-end-user-computing-business/). The binary has been renamed from `vmware-view` to `horizon-client`.

View File

@@ -59,7 +59,7 @@ in
serviceConfig = { serviceConfig = {
Type = "simple"; Type = "simple";
ExecStart = '' ExecStart = ''
${lib.getBin cfg.package}/bin/inspircd start --config ${configFile} --nofork --nopid ${lib.getBin cfg.package}/bin/inspircd --config ${configFile} --nofork --nopid
''; '';
DynamicUser = true; DynamicUser = true;
}; };

View File

@@ -31,6 +31,7 @@ let
# compatible if libc is compatible # compatible if libc is compatible
libcModules = [ libcModules = [
"log_syslog"
"regex_posix" "regex_posix"
"sslrehashsignal" "sslrehashsignal"
]; ];
@@ -50,12 +51,11 @@ let
# GPLv2 compatible dependencies # GPLv2 compatible dependencies
"argon2" "argon2"
"ldap" "ldap"
"log_json"
"mysql" "mysql"
"pgsql" "pgsql"
"regex_pcre"
"regex_pcre2" "regex_pcre2"
"regex_re2" "regex_re2"
"regex_tre"
"sqlite3" "sqlite3"
"ssl_gnutls" "ssl_gnutls"
] ]
@@ -74,15 +74,13 @@ in
openldap, openldap,
libpq, libpq,
libmysqlclient, libmysqlclient,
pcre,
pcre2, pcre2,
tre,
re2, re2,
sqlite, sqlite,
gnutls, gnutls,
libmaxminddb, libmaxminddb,
openssl, openssl,
mbedtls, yyjson,
# For a full list of module names, see https://docs.inspircd.org/packaging/ # For a full list of module names, see https://docs.inspircd.org/packaging/
extraModules ? compatibleModules lib stdenv, extraModules ? compatibleModules lib stdenv,
}: }:
@@ -104,12 +102,12 @@ let
) )
]; ];
ldap = [ openldap ]; ldap = [ openldap ];
log_json = [ yyjson ];
log_syslog = [ ];
mysql = [ libmysqlclient ]; mysql = [ libmysqlclient ];
pgsql = [ libpq ]; pgsql = [ libpq ];
regex_pcre = [ pcre ];
regex_pcre2 = [ pcre2 ]; regex_pcre2 = [ pcre2 ];
regex_re2 = [ re2 ]; regex_re2 = [ re2 ];
regex_tre = [ tre ];
sqlite3 = [ sqlite ]; sqlite3 = [ sqlite ];
ssl_gnutls = [ gnutls ]; ssl_gnutls = [ gnutls ];
# depends on stdenv.cc.libc # depends on stdenv.cc.libc
@@ -119,7 +117,6 @@ let
regex_stdlib = [ ]; regex_stdlib = [ ];
# GPLv2 incompatible # GPLv2 incompatible
geo_maxmind = [ libmaxminddb ]; geo_maxmind = [ libmaxminddb ];
ssl_mbedtls = [ mbedtls ];
ssl_openssl = [ openssl ]; ssl_openssl = [ openssl ];
}; };
@@ -151,13 +148,13 @@ in
stdenv.mkDerivation rec { stdenv.mkDerivation rec {
pname = "inspircd"; pname = "inspircd";
version = "3.18.0"; version = "4.7.0";
src = fetchFromGitHub { src = fetchFromGitHub {
owner = "inspircd"; owner = "inspircd";
repo = "inspircd"; repo = "inspircd";
rev = "v${version}"; rev = "v${version}";
sha256 = "sha256-Aulhg2CbtcpsxkH5kXkp4EoZF5/F9pOXJc1S08S5P08="; sha256 = "sha256-/LiniV5moKGX7K6Hfzq1mxEBZ+sqnScQxT0AApiBPaA=";
}; };
outputs = [ outputs = [