mysql-shell_8: 8.4.8 -> 8.4.9, mysql-shell-innovation: 9.6.0 -> 9.7.0, mysql-shell_9: init at 9.7.0 (#512246)
This commit is contained in:
@@ -38,8 +38,8 @@ let
|
||||
pyyaml
|
||||
];
|
||||
|
||||
mysqlShellVersion = "8.4.8";
|
||||
mysqlServerVersion = "8.4.8";
|
||||
mysqlShellVersion = "8.4.9";
|
||||
mysqlServerVersion = "8.4.9";
|
||||
in
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "mysql-shell";
|
||||
@@ -48,11 +48,11 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
srcs = [
|
||||
(fetchurl {
|
||||
url = "https://dev.mysql.com/get/Downloads/MySQL-${lib.versions.majorMinor mysqlServerVersion}/mysql-${mysqlServerVersion}.tar.gz";
|
||||
hash = "sha256-vp2Wzfh/J2lSos3ZYPEGuWCohg5GwRXtOcG18uA4eiA=";
|
||||
hash = "sha256-5KqLOeQtH+B48zu9c2lfrCtU28e7E38L2+Y/e+GgLWs=";
|
||||
})
|
||||
(fetchurl {
|
||||
url = "https://dev.mysql.com/get/Downloads/MySQL-Shell/mysql-shell-${finalAttrs.version}-src.tar.gz";
|
||||
hash = "sha256-0mNO/uJVvVHRSDalOIuvQOOsDR6OukfJuov8Uasr0tE=";
|
||||
hash = "sha256-btYUh/akFRCSOXDL1C5xuXLysHS1lm4H74kqY+4zyiQ=";
|
||||
})
|
||||
];
|
||||
|
||||
|
||||
@@ -0,0 +1,157 @@
|
||||
{
|
||||
lib,
|
||||
stdenv,
|
||||
pkg-config,
|
||||
cmake,
|
||||
fetchurl,
|
||||
git,
|
||||
cctools,
|
||||
darwin,
|
||||
makeWrapper,
|
||||
bison,
|
||||
openssl,
|
||||
protobuf,
|
||||
curl,
|
||||
zlib,
|
||||
libssh,
|
||||
zstd,
|
||||
lz4,
|
||||
readline,
|
||||
libtirpc,
|
||||
rpcsvc-proto,
|
||||
libedit,
|
||||
libevent,
|
||||
icu,
|
||||
re2,
|
||||
ncurses,
|
||||
libfido2,
|
||||
python3,
|
||||
cyrus_sasl,
|
||||
openldap,
|
||||
antlr,
|
||||
}:
|
||||
|
||||
let
|
||||
pythonDeps = with python3.pkgs; [
|
||||
certifi
|
||||
paramiko
|
||||
pyyaml
|
||||
];
|
||||
|
||||
mysqlShellVersion = "9.7.0";
|
||||
mysqlServerVersion = "9.7.0";
|
||||
in
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "mysql-shell";
|
||||
version = mysqlShellVersion;
|
||||
|
||||
srcs = [
|
||||
(fetchurl {
|
||||
url = "https://dev.mysql.com/get/Downloads/MySQL-${lib.versions.majorMinor mysqlServerVersion}/mysql-${mysqlServerVersion}.tar.gz";
|
||||
hash = "sha256-dLV0urxWsOy2MqvTWdITxnlOz0Qq5Ekov8WB+z1iMG0=";
|
||||
})
|
||||
(fetchurl {
|
||||
url = "https://dev.mysql.com/get/Downloads/MySQL-Shell/mysql-shell-${finalAttrs.version}-src.tar.gz";
|
||||
hash = "sha256-s/omxSFTC/n3B8OtYddDqXzCd4GE4b5O8NUKbLdvwRI=";
|
||||
})
|
||||
];
|
||||
|
||||
sourceRoot = "mysql-shell-${finalAttrs.version}-src";
|
||||
|
||||
postUnpack = ''
|
||||
mv mysql-${mysqlServerVersion} mysql
|
||||
'';
|
||||
|
||||
patches = [
|
||||
# No openssl bundling on macOS. It's not working.
|
||||
# See https://github.com/mysql/mysql-shell/blob/5b84e0be59fc0e027ef3f4920df15f7be97624c1/cmake/ssl.cmake#L53
|
||||
./no-openssl-bundling.patch
|
||||
];
|
||||
|
||||
postPatch = ''
|
||||
substituteInPlace ../mysql/cmake/libutils.cmake --replace-fail /usr/bin/libtool libtool
|
||||
substituteInPlace ../mysql/cmake/os/Darwin.cmake --replace-fail /usr/bin/libtool libtool
|
||||
|
||||
substituteInPlace cmake/libutils.cmake --replace-fail /usr/bin/libtool libtool
|
||||
'';
|
||||
|
||||
strictDeps = true;
|
||||
__structuredAttrs = true;
|
||||
|
||||
nativeBuildInputs = [
|
||||
pkg-config
|
||||
cmake
|
||||
git
|
||||
bison
|
||||
protobuf
|
||||
makeWrapper
|
||||
]
|
||||
++ lib.optionals (!stdenv.hostPlatform.isDarwin) [ rpcsvc-proto ]
|
||||
++ lib.optionals stdenv.hostPlatform.isDarwin [
|
||||
cctools
|
||||
darwin.DarwinTools
|
||||
];
|
||||
|
||||
buildInputs = [
|
||||
curl
|
||||
libedit
|
||||
libssh
|
||||
lz4
|
||||
openssl
|
||||
protobuf
|
||||
readline
|
||||
zlib
|
||||
zstd
|
||||
libevent
|
||||
icu
|
||||
re2
|
||||
ncurses
|
||||
libfido2
|
||||
cyrus_sasl
|
||||
openldap
|
||||
python3
|
||||
antlr.runtime.cpp
|
||||
]
|
||||
++ pythonDeps
|
||||
++ lib.optionals stdenv.hostPlatform.isLinux [ libtirpc ]
|
||||
++ lib.optionals stdenv.hostPlatform.isDarwin [ darwin.libutil ];
|
||||
|
||||
env = {
|
||||
${if stdenv.cc.isGNU then "NIX_CFLAGS_COMPILE" else null} = "-Wno-error=maybe-uninitialized";
|
||||
};
|
||||
|
||||
preConfigure = ''
|
||||
# Build MySQL
|
||||
echo "Building mysqlclient mysqlxclient"
|
||||
|
||||
cmake -DWITH_SYSTEM_LIBS=ON -DWITH_FIDO=system -DWITH_ROUTER=ON -DWITH_UNIT_TESTS=OFF \
|
||||
-DFORCE_UNSUPPORTED_COMPILER=1 -S ../mysql -B ../mysql/build
|
||||
|
||||
cmake --build ../mysql/build --parallel ''${NIX_BUILD_CORES:-1} \
|
||||
--target mysqlclient mysqlxclient mysqlbinlog mysql_binlog_event_standalone mysqlrouter_all
|
||||
|
||||
cmakeFlagsArray+=(
|
||||
"-DMYSQL_SOURCE_DIR=''${NIX_BUILD_TOP}/mysql"
|
||||
"-DMYSQL_BUILD_DIR=''${NIX_BUILD_TOP}/mysql/build"
|
||||
"-DMYSQL_CONFIG_EXECUTABLE=''${NIX_BUILD_TOP}/mysql/build/scripts/mysql_config"
|
||||
"-DWITH_ZSTD=system"
|
||||
"-DWITH_LZ4=system"
|
||||
"-DWITH_ZLIB=system"
|
||||
"-DWITH_PROTOBUF=system"
|
||||
"-DHAVE_PYTHON=1"
|
||||
)
|
||||
'';
|
||||
|
||||
postFixup = ''
|
||||
wrapProgram $out/bin/mysqlsh --set PYTHONPATH "${lib.makeSearchPath python3.sitePackages pythonDeps}"
|
||||
'';
|
||||
|
||||
meta = {
|
||||
homepage = "https://dev.mysql.com/doc/mysql-shell/${lib.versions.majorMinor finalAttrs.version}/en/";
|
||||
description = "New command line scriptable shell for MySQL";
|
||||
license = lib.licenses.gpl2;
|
||||
maintainers = with lib.maintainers; [ aaronjheng ];
|
||||
platforms = lib.platforms.linux ++ lib.platforms.darwin;
|
||||
mainProgram = "mysqlsh";
|
||||
};
|
||||
})
|
||||
@@ -38,8 +38,8 @@ let
|
||||
pyyaml
|
||||
];
|
||||
|
||||
mysqlShellVersion = "9.6.0";
|
||||
mysqlServerVersion = "9.6.0";
|
||||
mysqlShellVersion = "9.7.0";
|
||||
mysqlServerVersion = "9.7.0";
|
||||
in
|
||||
stdenv.mkDerivation (finalAttrs: {
|
||||
pname = "mysql-shell-innovation";
|
||||
@@ -48,11 +48,11 @@ stdenv.mkDerivation (finalAttrs: {
|
||||
srcs = [
|
||||
(fetchurl {
|
||||
url = "https://dev.mysql.com/get/Downloads/MySQL-${lib.versions.majorMinor mysqlServerVersion}/mysql-${mysqlServerVersion}.tar.gz";
|
||||
hash = "sha256-JABh2GnVrhiMmjM4RZKImenZY8y9Z4Zaii5Lb8tnF4w=";
|
||||
hash = "sha256-dLV0urxWsOy2MqvTWdITxnlOz0Qq5Ekov8WB+z1iMG0=";
|
||||
})
|
||||
(fetchurl {
|
||||
url = "https://dev.mysql.com/get/Downloads/MySQL-Shell/mysql-shell-${finalAttrs.version}-src.tar.gz";
|
||||
hash = "sha256-WnCr/poMsxtaS9k7/6QZDkFPOZlf7WAELsqFGpnUwf4=";
|
||||
hash = "sha256-s/omxSFTC/n3B8OtYddDqXzCd4GE4b5O8NUKbLdvwRI=";
|
||||
})
|
||||
];
|
||||
|
||||
|
||||
@@ -560,8 +560,18 @@ with pkgs;
|
||||
else
|
||||
stdenv;
|
||||
};
|
||||
|
||||
mysql-shell_9 = callPackage ../development/tools/mysql-shell/9.nix {
|
||||
antlr = antlr4_10;
|
||||
icu = icu77;
|
||||
protobuf = protobuf_25.override {
|
||||
abseil-cpp = abseil-cpp_202407;
|
||||
};
|
||||
stdenv = if stdenv.cc.isGNU then gcc14Stdenv else stdenv;
|
||||
};
|
||||
})
|
||||
mysql-shell_8
|
||||
mysql-shell_9
|
||||
;
|
||||
|
||||
mysql-shell-innovation = callPackage ../development/tools/mysql-shell/innovation.nix {
|
||||
@@ -570,13 +580,7 @@ with pkgs;
|
||||
protobuf = protobuf_25.override {
|
||||
abseil-cpp = abseil-cpp_202407;
|
||||
};
|
||||
stdenv =
|
||||
if stdenv.cc.isClang then
|
||||
llvmPackages_19.stdenv
|
||||
else if stdenv.cc.isGNU then
|
||||
gcc14Stdenv
|
||||
else
|
||||
stdenv;
|
||||
stdenv = if stdenv.cc.isGNU then gcc14Stdenv else stdenv;
|
||||
};
|
||||
|
||||
# this is used by most `fetch*` functions
|
||||
|
||||
Reference in New Issue
Block a user