mirror of
https://github.com/NixOS/nixpkgs.git
synced 2024-11-30 09:31:01 +00:00
commit
91db1c8aec
|
@ -156,6 +156,40 @@ GRANT ALL PRIVILEGES ON *.* TO 'mysql'@'localhost' WITH GRANT OPTION;
|
|||
Support for built-in LCDs in various pieces of Logitech hardware (keyboards and USB speakers). <varname>hardware.logitech.lcd.enable</varname> enables support for all hardware supported by the g15daemon project.
|
||||
</para>
|
||||
</listitem>
|
||||
<listitem>
|
||||
<para>
|
||||
Zabbix now defaults to 5.0, updated from 4.4. Please carefully read through
|
||||
<link xlink:href="https://www.zabbix.com/documentation/current/manual/installation/upgrade/sources">the upgrade guide</link>
|
||||
and apply any changes required. Be sure to take special note of the section on
|
||||
<link xlink:href="https://www.zabbix.com/documentation/current/manual/installation/upgrade_notes_500#enabling_extended_range_of_numeric_float_values">enabling extended range of numeric (float) values</link>
|
||||
as you will need to apply this database migration manually.
|
||||
</para>
|
||||
<para>
|
||||
If you are using Zabbix Server with a MySQL or MariaDB database you should note that using a character set of <literal>utf8</literal> and a collate of <literal>utf8_bin</literal> has become mandatory with
|
||||
this release. See the upstream <link xlink:href="https://support.zabbix.com/browse/ZBX-17357">issue</link> for further discussion. Before upgrading you should check the character set and collation used by
|
||||
your database and ensure they are correct:
|
||||
<programlisting>
|
||||
SELECT
|
||||
default_character_set_name,
|
||||
default_collation_name
|
||||
FROM
|
||||
information_schema.schemata
|
||||
WHERE
|
||||
schema_name = 'zabbix';
|
||||
</programlisting>
|
||||
If these values are not correct you should take a backup of your database and convert the character set and collation as required. Here is an
|
||||
<link xlink:href="https://www.zabbix.com/forum/zabbix-help/396573-reinstall-after-upgrade?p=396891#post396891">example</link> of how to do so, taken from
|
||||
the Zabbix forums:
|
||||
<programlisting>
|
||||
ALTER DATABASE `zabbix` DEFAULT CHARACTER SET utf8 COLLATE utf8_bin;
|
||||
|
||||
-- the following will produce a list of SQL commands you should subsequently execute
|
||||
SELECT CONCAT("ALTER TABLE ", TABLE_NAME," CONVERT TO CHARACTER SET utf8 COLLATE utf8_bin;") AS ExecuteTheString
|
||||
FROM information_schema.`COLUMNS`
|
||||
WHERE table_schema = "zabbix" AND COLLATION_NAME = "utf8_general_ci";
|
||||
</programlisting>
|
||||
</para>
|
||||
</listitem>
|
||||
</itemizedlist>
|
||||
</section>
|
||||
|
||||
|
|
|
@ -5,8 +5,8 @@ let
|
|||
pgsql = config.services.postgresql;
|
||||
mysql = config.services.mysql;
|
||||
|
||||
inherit (lib) mkDefault mkEnableOption mkIf mkMerge mkOption;
|
||||
inherit (lib) attrValues concatMapStringsSep literalExample optional optionalAttrs optionalString types;
|
||||
inherit (lib) mkAfter mkDefault mkEnableOption mkIf mkMerge mkOption;
|
||||
inherit (lib) attrValues concatMapStringsSep getName literalExample optional optionalAttrs optionalString types;
|
||||
inherit (lib.generators) toKeyValue;
|
||||
|
||||
user = "zabbix";
|
||||
|
@ -232,14 +232,15 @@ in
|
|||
services.mysql = optionalAttrs mysqlLocal {
|
||||
enable = true;
|
||||
package = mkDefault pkgs.mariadb;
|
||||
ensureDatabases = [ cfg.database.name ];
|
||||
ensureUsers = [
|
||||
{ name = cfg.database.user;
|
||||
ensurePermissions = { "${cfg.database.name}.*" = "ALL PRIVILEGES"; };
|
||||
}
|
||||
];
|
||||
};
|
||||
|
||||
systemd.services.mysql.postStart = mkAfter (optionalString mysqlLocal ''
|
||||
( echo "CREATE DATABASE IF NOT EXISTS \`${cfg.database.name}\` CHARACTER SET utf8 COLLATE utf8_bin;"
|
||||
echo "CREATE USER IF NOT EXISTS '${cfg.database.user}'@'localhost' IDENTIFIED WITH ${if (getName config.services.mysql.package == getName pkgs.mariadb) then "unix_socket" else "auth_socket"};"
|
||||
echo "GRANT ALL PRIVILEGES ON \`${cfg.database.name}\`.* TO '${cfg.database.user}'@'localhost';"
|
||||
) | ${config.services.mysql.package}/bin/mysql -N
|
||||
'');
|
||||
|
||||
services.postgresql = optionalAttrs pgsqlLocal {
|
||||
enable = true;
|
||||
ensureDatabases = [ cfg.database.name ];
|
||||
|
|
|
@ -5,8 +5,8 @@ let
|
|||
pgsql = config.services.postgresql;
|
||||
mysql = config.services.mysql;
|
||||
|
||||
inherit (lib) mkDefault mkEnableOption mkIf mkMerge mkOption;
|
||||
inherit (lib) attrValues concatMapStringsSep literalExample optional optionalAttrs optionalString types;
|
||||
inherit (lib) mkAfter mkDefault mkEnableOption mkIf mkMerge mkOption;
|
||||
inherit (lib) attrValues concatMapStringsSep getName literalExample optional optionalAttrs optionalString types;
|
||||
inherit (lib.generators) toKeyValue;
|
||||
|
||||
user = "zabbix";
|
||||
|
@ -220,14 +220,15 @@ in
|
|||
services.mysql = optionalAttrs mysqlLocal {
|
||||
enable = true;
|
||||
package = mkDefault pkgs.mariadb;
|
||||
ensureDatabases = [ cfg.database.name ];
|
||||
ensureUsers = [
|
||||
{ name = cfg.database.user;
|
||||
ensurePermissions = { "${cfg.database.name}.*" = "ALL PRIVILEGES"; };
|
||||
}
|
||||
];
|
||||
};
|
||||
|
||||
systemd.services.mysql.postStart = mkAfter (optionalString mysqlLocal ''
|
||||
( echo "CREATE DATABASE IF NOT EXISTS \`${cfg.database.name}\` CHARACTER SET utf8 COLLATE utf8_bin;"
|
||||
echo "CREATE USER IF NOT EXISTS '${cfg.database.user}'@'localhost' IDENTIFIED WITH ${if (getName config.services.mysql.package == getName pkgs.mariadb) then "unix_socket" else "auth_socket"};"
|
||||
echo "GRANT ALL PRIVILEGES ON \`${cfg.database.name}\`.* TO '${cfg.database.user}'@'localhost';"
|
||||
) | ${config.services.mysql.package}/bin/mysql -N
|
||||
'');
|
||||
|
||||
services.postgresql = optionalAttrs pgsqlLocal {
|
||||
enable = true;
|
||||
ensureDatabases = [ cfg.database.name ];
|
||||
|
|
|
@ -1,4 +1,4 @@
|
|||
{ stdenv, fetchurl, pkgconfig, curl, libevent, libiconv, libxml2, openssl, pcre, zlib
|
||||
{ stdenv, fetchurl, autoreconfHook, pkgconfig, curl, libevent, libiconv, libxml2, openssl, pcre, zlib
|
||||
, jabberSupport ? true, iksemel
|
||||
, ldapSupport ? true, openldap
|
||||
, odbcSupport ? true, unixODBC
|
||||
|
@ -25,7 +25,7 @@ in
|
|||
inherit sha256;
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ pkgconfig ];
|
||||
nativeBuildInputs = [ autoreconfHook pkgconfig ];
|
||||
buildInputs = [
|
||||
curl
|
||||
libevent
|
||||
|
@ -65,6 +65,13 @@ in
|
|||
find database -name data.sql -exec sed -i 's|/usr/bin/||g' {} +
|
||||
'';
|
||||
|
||||
preAutoreconf = ''
|
||||
for i in $(find . -type f -name "*.m4"); do
|
||||
substituteInPlace $i \
|
||||
--replace 'test -x "$PKG_CONFIG"' 'type -P "$PKG_CONFIG" >/dev/null'
|
||||
done
|
||||
'';
|
||||
|
||||
postInstall = ''
|
||||
mkdir -p $out/share/zabbix/database/
|
||||
cp -r include $out/
|
||||
|
|
|
@ -1,7 +1,7 @@
|
|||
generic: {
|
||||
v44 = generic {
|
||||
version = "4.4.8";
|
||||
sha256 = "0l9n4l5179lf90krv1kb0lraipj7q4hyba6r48n6rj2zqx2j4mn0";
|
||||
v50 = generic {
|
||||
version = "5.0.2";
|
||||
sha256 = "1cnns7ixqi7ank3cbvcs7d8rb5zh9qiqbmgivazr83jnz81qg46w";
|
||||
};
|
||||
|
||||
v40 = generic {
|
||||
|
|
|
@ -18,7 +18,7 @@ import ./versions.nix ({ version, sha256 }:
|
|||
|
||||
installPhase = ''
|
||||
mkdir -p $out/share/zabbix/
|
||||
cp -a frontends/php/. $out/share/zabbix/
|
||||
cp -a ${if stdenv.lib.versionAtLeast version "5.0.0" then "ui/." else "frontends/php/."} $out/share/zabbix/
|
||||
cp ${phpConfig} $out/share/zabbix/conf/zabbix.conf.php
|
||||
'';
|
||||
|
||||
|
|
|
@ -687,6 +687,9 @@ mapAliases ({
|
|||
mumble_git = pkgs.mumble;
|
||||
murmur_git = pkgs.murmur;
|
||||
|
||||
# added 2020-08-17
|
||||
zabbix44 = throw "Zabbix 4.4 is end of life, see https://www.zabbix.com/documentation/current/manual/installation/upgrade_notes_500 for details on upgrading to Zabbix 5.0.";
|
||||
|
||||
# added 2019-09-06
|
||||
zeroc_ice = pkgs.zeroc-ice;
|
||||
|
||||
|
|
|
@ -16958,11 +16958,11 @@ in
|
|||
server = server-pgsql;
|
||||
};
|
||||
|
||||
zabbix44 = recurseIntoAttrs (zabbixFor "v44");
|
||||
zabbix50 = recurseIntoAttrs (zabbixFor "v50");
|
||||
zabbix40 = dontRecurseIntoAttrs (zabbixFor "v40");
|
||||
zabbix30 = dontRecurseIntoAttrs (zabbixFor "v30");
|
||||
|
||||
zabbix = zabbix44;
|
||||
zabbix = zabbix50;
|
||||
|
||||
zipkin = callPackage ../servers/monitoring/zipkin { };
|
||||
|
||||
|
|
Loading…
Reference in a new issue