mirror of
https://github.com/NixOS/nixpkgs.git
synced 2024-11-25 00:12:56 +00:00
Merge pull request #63786 from aanderse/mysql
mysql: drop support for deprecated package & module option
This commit is contained in:
commit
ae02678a9d
@ -213,6 +213,7 @@ with lib;
|
||||
(mkRemovedOptionModule [ "boot" "zfs" "enableLegacyCrypto" ] "The corresponding package was removed from nixpkgs.")
|
||||
(mkRemovedOptionModule [ "services" "winstone" ] "The corresponding package was removed from nixpkgs.")
|
||||
(mkRemovedOptionModule [ "services" "mysql" "pidDir" ] "Don't wait for pidfiles, describe dependencies through systemd")
|
||||
(mkRemovedOptionModule [ "services" "mysql" "rootPassword" ] "Use socket authentication or set the password outside of the nix store.")
|
||||
|
||||
# ZSH
|
||||
(mkRenamedOptionModule [ "programs" "zsh" "enableSyntaxHighlighting" ] [ "programs" "zsh" "syntaxHighlighting" "enable" ])
|
||||
|
@ -204,12 +204,6 @@ in
|
||||
'';
|
||||
};
|
||||
|
||||
# FIXME: remove this option; it's a really bad idea.
|
||||
rootPassword = mkOption {
|
||||
default = null;
|
||||
description = "Path to a file containing the root password, modified on the first startup. Not specifying a root password will leave the root password empty.";
|
||||
};
|
||||
|
||||
replication = {
|
||||
role = mkOption {
|
||||
type = types.enum [ "master" "slave" "none" ];
|
||||
@ -400,16 +394,6 @@ in
|
||||
cat ${toString cfg.initialScript} | ${mysql}/bin/mysql -u root -N
|
||||
''}
|
||||
|
||||
${optionalString (cfg.rootPassword != null)
|
||||
''
|
||||
# Change root password
|
||||
|
||||
( echo "use mysql;"
|
||||
echo "update user set Password=password('$(cat ${cfg.rootPassword})') where User='root';"
|
||||
echo "flush privileges;"
|
||||
) | ${mysql}/bin/mysql -u root -N
|
||||
''}
|
||||
|
||||
rm /tmp/mysql_init
|
||||
fi
|
||||
|
||||
|
@ -1,4 +1,4 @@
|
||||
{ fetchurl, stdenv, unixODBC, cmake, postgresql, mysql55, mariadb, sqlite, zlib, libxml2, dpkg, lib, openssl, kerberos, curl, libuuid, autoPatchelfHook }:
|
||||
{ fetchurl, stdenv, unixODBC, cmake, postgresql, mysql, mariadb, sqlite, zlib, libxml2, dpkg, lib, openssl, kerberos, curl, libuuid, autoPatchelfHook }:
|
||||
|
||||
# I haven't done any parameter tweaking.. So the defaults provided here might be bad
|
||||
|
||||
@ -67,7 +67,7 @@
|
||||
};
|
||||
|
||||
nativeBuildInputs = [ cmake ];
|
||||
buildInputs = [ unixODBC mysql55 ];
|
||||
buildInputs = [ unixODBC mysql ];
|
||||
|
||||
cmakeFlags = [ "-DWITH_UNIXODBC=1" ];
|
||||
|
||||
|
@ -1,44 +0,0 @@
|
||||
--- mysql-5.5.17/cmake/install_macros.cmake 2011-10-12 07:10:24.000000000 -0500
|
||||
+++ mysql-5.5.17/cmake/install_macros.cmake 2011-11-07 23:19:35.772837800 -0600
|
||||
@@ -230,7 +230,13 @@ FUNCTION(MYSQL_INSTALL_TARGETS)
|
||||
IF(ARG_COMPONENT)
|
||||
SET(COMP COMPONENT ${ARG_COMPONENT})
|
||||
ENDIF()
|
||||
- INSTALL(TARGETS ${TARGETS} DESTINATION ${ARG_DESTINATION} ${COMP})
|
||||
+ IF(${ARG_DESTINATION} STREQUAL "${INSTALL_LIBDIR}")
|
||||
+ INSTALL(TARGETS ${TARGETS} LIBRARY DESTINATION ${ARG_DESTINATION}
|
||||
+ RUNTIME DESTINATION bin
|
||||
+ ARCHIVE DESTINATION ${ARG_DESTINATION} ${COMP})
|
||||
+ ELSE()
|
||||
+ INSTALL(TARGETS ${TARGETS} DESTINATION ${ARG_DESTINATION} ${COMP})
|
||||
+ ENDIF()
|
||||
SET(INSTALL_LOCATION ${ARG_DESTINATION} )
|
||||
INSTALL_DEBUG_SYMBOLS("${TARGETS}")
|
||||
SET(INSTALL_LOCATION)
|
||||
--- mysql-5.5.17/libmysql/CMakeLists.txt 2011-10-12 07:10:24.000000000 -0500
|
||||
+++ mysql-5.5.17/libmysql/CMakeLists.txt 2011-11-08 03:19:31.379219300 -0600
|
||||
@@ -214,6 +214,7 @@ IF(NOT DISABLE_SHARED)
|
||||
SET_TARGET_PROPERTIES(mysqlclient PROPERTIES CLEAN_DIRECT_OUTPUT 1)
|
||||
SET_TARGET_PROPERTIES(libmysql PROPERTIES CLEAN_DIRECT_OUTPUT 1)
|
||||
|
||||
+ IF(NOT CYGWIN)
|
||||
# Install links to libmysqlclient.so (client_r)
|
||||
GET_VERSIONED_LIBNAME(
|
||||
"${CMAKE_SHARED_LIBRARY_PREFIX}mysqlclient_r"
|
||||
@@ -231,5 +232,6 @@ IF(NOT DISABLE_SHARED)
|
||||
linkname)
|
||||
INSTALL_SYMLINK(${linkname} libmysql ${INSTALL_LIBDIR} SharedLibraries)
|
||||
ENDFOREACH()
|
||||
+ ENDIF(NOT CYGWIN)
|
||||
ENDIF()
|
||||
ENDIF()
|
||||
--- mysql-5.5.17/strings/dtoa.c 2011-10-12 07:10:25.000000000 -0500
|
||||
+++ mysql-5.5.17/strings/dtoa.c 2011-11-07 20:38:05.064690100 -0600
|
||||
@@ -36,6 +36,7 @@
|
||||
|
||||
***************************************************************/
|
||||
|
||||
+#define __STRICT_ANSI__
|
||||
#include <my_base.h> /* for EOVERFLOW on Windows */
|
||||
#include <my_global.h>
|
||||
#include <m_string.h> /* for memcpy and NOT_FIXED_DEC */
|
@ -1,22 +0,0 @@
|
||||
--- mysql-5.5.17/libmysql/CMakeLists.txt 2011-10-12 07:10:24.000000000 -0500
|
||||
+++ mysql-5.5.17/libmysql/CMakeLists.txt 2011-11-08 03:19:31.379219300 -0600
|
||||
@@ -25,6 +25,11 @@ INCLUDE_DIRECTORIES(
|
||||
ADD_DEFINITIONS(${SSL_DEFINES})
|
||||
|
||||
SET(CLIENT_API_FUNCTIONS
|
||||
+dynstr_free
|
||||
+dynstr_append_mem
|
||||
+dynstr_append_os_quoted
|
||||
+dynstr_realloc
|
||||
+init_dynamic_string
|
||||
get_tty_password
|
||||
handle_options
|
||||
load_defaults
|
||||
@@ -131,6 +136,7 @@ mysql_server_end
|
||||
mysql_set_character_set
|
||||
mysql_get_character_set_info
|
||||
mysql_stmt_next_result
|
||||
+strfill
|
||||
|
||||
CACHE INTERNAL "Functions exported by client API"
|
||||
|
@ -1,93 +0,0 @@
|
||||
{ stdenv, fetchpatch, fetchurl, cmake, bison, ncurses, openssl
|
||||
, readline, zlib, perl, cctools, CoreServices }:
|
||||
|
||||
# Note: zlib is not required; MySQL can use an internal zlib.
|
||||
|
||||
let
|
||||
self = stdenv.mkDerivation rec {
|
||||
name = "mysql-${version}";
|
||||
version = "5.5.62";
|
||||
|
||||
src = fetchurl {
|
||||
url = "mirror://mysql/MySQL-5.5/${name}.tar.gz";
|
||||
sha256 = "1mwrzwk9ap09s430fpdkyhvx5j2syd3xj2hyfzvanjphq4xqbrxi";
|
||||
};
|
||||
|
||||
patches =
|
||||
# Minor type error that is a build failure as of clang 6.
|
||||
stdenv.lib.optional stdenv.cc.isClang (fetchpatch {
|
||||
url = "https://svn.freebsd.org/ports/head/databases/mysql55-server/files/patch-sql_sql_partition.cc?rev=469888";
|
||||
extraPrefix = "";
|
||||
sha256 = "09sya27z3ir3xy5mrv3x68hm274594y381n0i6r5s627x71jyszf";
|
||||
}) ++
|
||||
stdenv.lib.optionals stdenv.isCygwin [
|
||||
./5.5.17-cygwin.patch
|
||||
./5.5.17-export-symbols.patch
|
||||
];
|
||||
|
||||
preConfigure = stdenv.lib.optional stdenv.isDarwin ''
|
||||
ln -s /bin/ps $TMPDIR/ps
|
||||
export PATH=$PATH:$TMPDIR
|
||||
'';
|
||||
|
||||
buildInputs = [ cmake bison ncurses openssl readline zlib ]
|
||||
++ stdenv.lib.optionals stdenv.isDarwin [ perl cctools CoreServices ];
|
||||
|
||||
enableParallelBuilding = true;
|
||||
|
||||
cmakeFlags = [
|
||||
"-DWITH_SSL=yes"
|
||||
"-DWITH_READLINE=yes"
|
||||
"-DWITH_EMBEDDED_SERVER=yes"
|
||||
"-DWITH_ZLIB=yes"
|
||||
"-DHAVE_IPV6=yes"
|
||||
"-DMYSQL_UNIX_ADDR=/run/mysqld/mysqld.sock"
|
||||
"-DMYSQL_DATADIR=/var/lib/mysql"
|
||||
"-DINSTALL_SYSCONFDIR=etc/mysql"
|
||||
"-DINSTALL_INFODIR=share/mysql/docs"
|
||||
"-DINSTALL_MANDIR=share/man"
|
||||
"-DINSTALL_PLUGINDIR=lib/mysql/plugin"
|
||||
"-DINSTALL_SCRIPTDIR=bin"
|
||||
"-DINSTALL_INCLUDEDIR=include/mysql"
|
||||
"-DINSTALL_DOCREADMEDIR=share/mysql"
|
||||
"-DINSTALL_SUPPORTFILESDIR=share/mysql"
|
||||
"-DINSTALL_MYSQLSHAREDIR=share/mysql"
|
||||
"-DINSTALL_DOCDIR=share/mysql/docs"
|
||||
"-DINSTALL_SHAREDIR=share/mysql"
|
||||
"-DINSTALL_MYSQLTESTDIR="
|
||||
"-DINSTALL_SQLBENCHDIR="
|
||||
];
|
||||
|
||||
NIX_CFLAGS_COMPILE =
|
||||
stdenv.lib.optionals stdenv.cc.isGNU [ "-fpermissive" ] # since gcc-7
|
||||
++ stdenv.lib.optionals stdenv.cc.isClang [ "-Wno-c++11-narrowing" ]; # since clang 6
|
||||
|
||||
NIX_LDFLAGS = stdenv.lib.optionalString stdenv.isLinux "-lgcc_s";
|
||||
|
||||
prePatch = ''
|
||||
sed -i -e "s|/usr/bin/libtool|libtool|" cmake/libutils.cmake
|
||||
'';
|
||||
postInstall = ''
|
||||
sed -i -e "s|basedir=\"\"|basedir=\"$out\"|" $out/bin/mysql_install_db
|
||||
rm -r $out/data "$out"/lib/*.a
|
||||
'';
|
||||
|
||||
passthru = {
|
||||
client = self;
|
||||
connector-c = self;
|
||||
server = self;
|
||||
mysqlVersion = "5.5";
|
||||
};
|
||||
|
||||
meta = with stdenv.lib; {
|
||||
homepage = https://www.mysql.com/;
|
||||
description = "The world's most popular open source database";
|
||||
platforms = platforms.unix;
|
||||
# See https://downloads.mysql.com/docs/licenses/mysqld-5.5-gpl-en.pdf
|
||||
license = with licenses; [
|
||||
artistic1 bsd0 bsd2 bsd3 bsdOriginal
|
||||
gpl2 lgpl2 lgpl21 mit publicDomain licenses.zlib
|
||||
];
|
||||
broken = stdenv.isAarch64;
|
||||
};
|
||||
}; in self
|
@ -14555,11 +14555,6 @@ in
|
||||
|
||||
influxdb = callPackage ../servers/nosql/influxdb { };
|
||||
|
||||
mysql55 = callPackage ../servers/sql/mysql/5.5.x.nix {
|
||||
inherit (darwin) cctools;
|
||||
inherit (darwin.apple_sdk.frameworks) CoreServices;
|
||||
};
|
||||
|
||||
mysql57 = callPackage ../servers/sql/mysql/5.7.x.nix {
|
||||
inherit (darwin) cctools developer_cmds;
|
||||
inherit (darwin.apple_sdk.frameworks) CoreServices;
|
||||
|
Loading…
Reference in New Issue
Block a user