diff --git a/doc/languages-frameworks/lua.section.md b/doc/languages-frameworks/lua.section.md
index 17b80f07d3e1..c070aa59d287 100644
--- a/doc/languages-frameworks/lua.section.md
+++ b/doc/languages-frameworks/lua.section.md
@@ -200,7 +200,7 @@ luaposix = buildLuarocksPackage {
The `buildLuarocksPackage` delegates most tasks to luarocks:
* it adds `luarocks` as an unpacker for `src.rock` files (zip files really).
-* configurePhase` writes a temporary luarocks configuration file which location
+* `configurePhase` writes a temporary luarocks configuration file which location
is exported via the environment variable `LUAROCKS_CONFIG`.
* the `buildPhase` does nothing.
* `installPhase` calls `luarocks make --deps-mode=none --tree $out` to build and
diff --git a/nixos/doc/manual/from_md/release-notes/rl-2211.section.xml b/nixos/doc/manual/from_md/release-notes/rl-2211.section.xml
index 98fb0e9b8b9f..6298007c42cd 100644
--- a/nixos/doc/manual/from_md/release-notes/rl-2211.section.xml
+++ b/nixos/doc/manual/from_md/release-notes/rl-2211.section.xml
@@ -773,6 +773,24 @@
due to upstream dropping support.
+
+
+ mysql57 has been removed. Please update to
+ mysql80 or mariadb. See
+ the
+ upgrade
+ guide for more information.
+
+
+
+
+ Consequently, cqrlog and
+ amorok now use mariadb
+ instead of mysql57 for their embedded
+ databases. Running mysql_upgrade may be
+ neccesary.
+
+
k3s supports clusterInit
diff --git a/nixos/doc/manual/release-notes/rl-2211.section.md b/nixos/doc/manual/release-notes/rl-2211.section.md
index 688ef6c13ce7..3e24c3da9480 100644
--- a/nixos/doc/manual/release-notes/rl-2211.section.md
+++ b/nixos/doc/manual/release-notes/rl-2211.section.md
@@ -246,6 +246,9 @@ Available as [services.patroni](options.html#opt-services.patroni.enable).
- `k3s` no longer supports docker as runtime due to upstream dropping support.
+- `mysql57` has been removed. Please update to `mysql80` or `mariadb`. See the [upgrade guide](https://mariadb.com/kb/en/upgrading-from-mysql-to-mariadb/) for more information.
+
+- Consequently, `cqrlog` and `amorok` now use `mariadb` instead of `mysql57` for their embedded databases. Running `mysql_upgrade` may be neccesary.
- `k3s` supports `clusterInit` option, and it is enabled by default, for servers.
- `stylua` no longer accepts `lua52Support` and `luauSupport` overrides, use `features` instead, which defaults to `[ "lua54" "luau" ]`.
diff --git a/nixos/modules/services/networking/smokeping.nix b/nixos/modules/services/networking/smokeping.nix
index df4f8905ec6f..3a5fb7dfb9e2 100644
--- a/nixos/modules/services/networking/smokeping.nix
+++ b/nixos/modules/services/networking/smokeping.nix
@@ -318,6 +318,17 @@ in
description = "smokeping daemon user";
home = smokepingHome;
createHome = true;
+ # When `cfg.webService` is enabled, `thttpd` makes SmokePing available
+ # under `${cfg.host}:${cfg.port}/smokeping.fcgi` as per the `ln -s` below.
+ # We also want that going to `${cfg.host}:${cfg.port}` without `smokeping.fcgi`
+ # makes it easy for the user to find SmokePing.
+ # However `thttpd` does not seem to support easy redirections from `/` to `smokeping.fcgi`
+ # and only allows directory listings or `/` -> `index.html` resolution if the directory
+ # has `chmod 755` (see https://acme.com/software/thttpd/thttpd_man.html#PERMISSIONS,
+ # " directories should be 755 if you want to allow indexing").
+ # Otherwise it shows `403 Forbidden` on `/`.
+ # Thus, we need to make `smokepingHome` (which is given to `thttpd -d` below) `755`.
+ homeMode = "755";
};
users.groups.${cfg.user} = {};
systemd.services.smokeping = {
diff --git a/nixos/tests/mysql/common.nix b/nixos/tests/mysql/common.nix
index 040d360b6d99..c0e8f7e3b5d2 100644
--- a/nixos/tests/mysql/common.nix
+++ b/nixos/tests/mysql/common.nix
@@ -4,7 +4,7 @@
inherit (pkgs.darwin.apple_sdk.frameworks) CoreServices;
});
mysqlPackages = {
- inherit (pkgs) mysql57 mysql80;
+ inherit (pkgs) mysql80;
};
mkTestName = pkg: "mariadb_${builtins.replaceStrings ["."] [""] (lib.versions.majorMinor pkg.version)}";
}
diff --git a/nixos/tests/smokeping.nix b/nixos/tests/smokeping.nix
index ccacf60cfe4b..04f813964291 100644
--- a/nixos/tests/smokeping.nix
+++ b/nixos/tests/smokeping.nix
@@ -28,6 +28,8 @@ import ./make-test-python.nix ({ pkgs, ...} : {
sm.wait_for_unit("thttpd")
sm.wait_for_file("/var/lib/smokeping/data/Local/LocalMachine.rrd")
sm.succeed("curl -s -f localhost:8081/smokeping.fcgi?target=Local")
+ # Check that there's a helpful page without explicit path as well.
+ sm.succeed("curl -s -f localhost:8081")
sm.succeed("ls /var/lib/smokeping/cache/Local/LocalMachine_mini.png")
sm.succeed("ls /var/lib/smokeping/cache/index.html")
'';
diff --git a/pkgs/applications/audio/amarok/default.nix b/pkgs/applications/audio/amarok/default.nix
index 4e5706495902..276b3d6c7bc2 100644
--- a/pkgs/applications/audio/amarok/default.nix
+++ b/pkgs/applications/audio/amarok/default.nix
@@ -3,7 +3,8 @@
, qca-qt5, qjson, qtquickcontrols2, qtscript, qtwebengine
, karchive, kcmutils, kconfig, kdnssd, kguiaddons, kinit, kirigami2, knewstuff, knotifyconfig, ktexteditor, kwindowsystem
, fftw, phonon, plasma-framework, threadweaver, breeze-icons
-, curl, ffmpeg, gdk-pixbuf, libaio, liblastfm, libmtp, loudmouth, lzo, lz4, mysql57, pcre, snappy, taglib, taglib_extras
+, curl, ffmpeg, gdk-pixbuf, libaio, liblastfm, libmtp, loudmouth, lzo, lz4, mariadb-embedded, pcre, snappy, taglib, taglib_extras
+, pmdk, numactl
}:
mkDerivation rec {
@@ -23,7 +24,7 @@ mkDerivation rec {
qca-qt5 qjson qtquickcontrols2 qtscript qtwebengine
karchive kcmutils kconfig kdnssd kguiaddons kinit kirigami2 knewstuff knotifyconfig ktexteditor kwindowsystem
phonon plasma-framework threadweaver
- curl fftw ffmpeg gdk-pixbuf libaio liblastfm libmtp loudmouth lz4 lzo mysql57.server mysql57.server.static
+ curl fftw ffmpeg gdk-pixbuf libaio liblastfm libmtp loudmouth lz4 lzo mariadb-embedded
pcre snappy taglib taglib_extras breeze-icons
];
diff --git a/pkgs/applications/audio/shortwave/default.nix b/pkgs/applications/audio/shortwave/default.nix
index 4642565e678e..9fce777906bb 100644
--- a/pkgs/applications/audio/shortwave/default.nix
+++ b/pkgs/applications/audio/shortwave/default.nix
@@ -23,20 +23,20 @@
stdenv.mkDerivation rec {
pname = "shortwave";
- version = "3.0.0";
+ version = "3.1.0";
src = fetchFromGitLab {
domain = "gitlab.gnome.org";
owner = "World";
repo = "Shortwave";
rev = version;
- sha256 = "sha256-qwk63o9pfqpAm6l9ioj3RccacemQU8R6LF6El4yHkjQ";
+ sha256 = "sha256-N0ftIq0+sxkpo56IGHZYAK6MgRNW7T6C2jWEiJsYy/Y=";
};
cargoDeps = rustPlatform.fetchCargoTarball {
inherit src;
name = "${pname}-${version}";
- hash = "sha256-YrB322nv9CgZqt5//VMvVwjWA51ePlX2PI6raRJGBxA=";
+ hash = "sha256-90JBN3cJKqIJX6DRq5FtEpIr5Isxf+jb1SlxGMbBwMQ=";
};
nativeBuildInputs = [
diff --git a/pkgs/applications/audio/tidal-hifi/default.nix b/pkgs/applications/audio/tidal-hifi/default.nix
index f81854aec28f..8905351da533 100644
--- a/pkgs/applications/audio/tidal-hifi/default.nix
+++ b/pkgs/applications/audio/tidal-hifi/default.nix
@@ -37,11 +37,11 @@
stdenv.mkDerivation rec {
pname = "tidal-hifi";
- version = "4.3.0";
+ version = "4.3.1";
src = fetchurl {
url = "https://github.com/Mastermindzh/tidal-hifi/releases/download/${version}/tidal-hifi_${version}_amd64.deb";
- sha256 = "sha256-/ZESysxaDhMpyTKHjjoRMiLM7SMESA5VIfgWCqdyDck=";
+ sha256 = "sha256-Q+K8oF1VEsuhmhPH6K3as1+71vCfaKCdzRzCIxtiXvE=";
};
nativeBuildInputs = [ autoPatchelfHook dpkg makeWrapper ];
diff --git a/pkgs/applications/misc/crow-translate/default.nix b/pkgs/applications/misc/crow-translate/default.nix
index f05c8bdcb2d0..4da0af251d5a 100644
--- a/pkgs/applications/misc/crow-translate/default.nix
+++ b/pkgs/applications/misc/crow-translate/default.nix
@@ -19,11 +19,11 @@
stdenv.mkDerivation rec {
pname = "crow-translate";
- version = "2.10.0";
+ version = "2.10.1";
src = fetchzip {
url = "https://github.com/${pname}/${pname}/releases/download/${version}/${pname}-${version}-source.tar.gz";
- hash = "sha256-ayEt4PI15NjlmFrDEa6Ipbn94nN9Ga7jThnIVBWPgKw=";
+ hash = "sha256-xRXNT/IybcynS5S71XFFsx3PoLXDBcKuz81ybxoVtV4=";
};
patches = [
diff --git a/pkgs/applications/misc/meerk40t/default.nix b/pkgs/applications/misc/meerk40t/default.nix
new file mode 100644
index 000000000000..28a136c9a257
--- /dev/null
+++ b/pkgs/applications/misc/meerk40t/default.nix
@@ -0,0 +1,95 @@
+{ lib
+, fetchFromGitHub
+, python3
+, gtk3
+, wrapGAppsHook
+}:
+
+let
+ inherit (python3.pkgs) buildPythonApplication buildPythonPackage fetchPypi;
+
+ meerk40t-camera = buildPythonPackage rec {
+ pname = "meerk40t-camera";
+ version = "0.1.9";
+ format = "setuptools";
+
+ src = fetchPypi {
+ inherit pname version;
+ hash = "sha256-uGCBHdgWoorVX2XqMCg0YBweb00sQ9ZSbJe8rlGeovs=";
+ };
+
+ postPatch = ''
+ sed -i '/meerk40t/d' setup.py
+ '';
+
+ propagatedBuildInputs = with python3.pkgs; [
+ opencv4
+ ];
+
+ pythonImportsCheck = [
+ "camera"
+ ];
+
+ doCheck = false;
+
+ meta = with lib; {
+ description = "MeerK40t camera plugin";
+ license = licenses.mit;
+ homepage = "https://github.com/meerk40t/meerk40t-camera";
+ maintainers = with maintainers; [ hexa ];
+ };
+ };
+in
+buildPythonApplication rec {
+ pname = "MeerK40t";
+ version = "0.8.0031";
+ format = "setuptools";
+
+ src = fetchFromGitHub {
+ owner = "meerk40t";
+ repo = pname;
+ rev = "refs/tags/${version}";
+ hash = "sha256-7Vc7Z+mxy+xRbUBeivkqVwO86ovZDo42M4G0ZD23vMk=";
+ };
+
+ nativeBuildInputs = [
+ wrapGAppsHook
+ ];
+
+ # prevent double wrapping
+ dontWrapGApps = true;
+
+ propagatedBuildInputs = with python3.pkgs; [
+ ezdxf
+ meerk40t-camera
+ opencv4
+ pillow
+ pyserial
+ pyusb
+ setuptools
+ wxPython_4_2
+ ];
+
+ preFixup = ''
+ gappsWrapperArgs+=(
+ --prefix XDG_DATA_DIRS : "${gtk3}/share/gsettings-schemas/${gtk3.name}"
+ )
+ makeWrapperArgs+=("''${gappsWrapperArgs[@]}")
+ '';
+
+ checkInputs = with python3.pkgs; [
+ unittestCheckHook
+ ];
+
+ preCheck = ''
+ export HOME=$TMPDIR
+ '';
+
+ meta = with lib; {
+ changelog = "https://github.com/meerk40t/meerk40t/releases/tag/${version}";
+ description = "MeerK40t LaserCutter Software";
+ homepage = "https://github.com/meerk40t/meerk40t";
+ license = licenses.mit;
+ maintainers = with maintainers; [ hexa ];
+ };
+}
diff --git a/pkgs/applications/misc/mysql-workbench/default.nix b/pkgs/applications/misc/mysql-workbench/default.nix
index 27f3e53d3e20..ba82f2518c5c 100644
--- a/pkgs/applications/misc/mysql-workbench/default.nix
+++ b/pkgs/applications/misc/mysql-workbench/default.nix
@@ -39,6 +39,7 @@
, dbus
, bash
, coreutils
+, zstd
}:
let
@@ -129,6 +130,7 @@ in stdenv.mkDerivation rec {
libepoxy
at-spi2-core
dbus
+ zstd
];
postPatch = ''
diff --git a/pkgs/applications/misc/pdfstudio/default.nix b/pkgs/applications/misc/pdfstudio/default.nix
index 0cf141428321..b1985eed076a 100644
--- a/pkgs/applications/misc/pdfstudio/default.nix
+++ b/pkgs/applications/misc/pdfstudio/default.nix
@@ -30,7 +30,7 @@ in
{
pdfstudioviewer = callPackage ./common.nix rec {
inherit desktopName pname program year;
- version = "${year}.0.2";
+ version = "${year}.1.0";
longDescription = ''
PDF Studio Viewer is an easy to use, full-featured PDF editing software. This is the free edition. For the standard/pro edition, see the package pdfstudio.
'';
@@ -56,10 +56,10 @@ in
pdfstudio2022 = callPackage ./common.nix rec {
inherit desktopName longDescription pname program year;
- version = "${year}.0.2";
+ version = "${year}.1.1";
src = fetchurl {
- url = "https://download.qoppa.com/pdfstudio/v${year}/PDFStudio_v${dot2dash version}_linux64_adoptium17.deb";
- sha256 = "sha256-fWZXCyizP++pkmC+UpgCzGvb0QrNs4RI6iC4ZBL8hLE=";
+ url = "https://download.qoppa.com/pdfstudio/v${year}/PDFStudio_v${dot2dash version}_linux64.deb";
+ sha256 = "sha256-OPmNhnkeSvHZZbh4SaMU/vDSLrDdTmMmuSGP2HyzVm4=";
};
extraBuildInputs = [
libgccjit #for libstdc++.so.6 and libgomp.so.1
diff --git a/pkgs/applications/misc/remarkable/rmapi/default.nix b/pkgs/applications/misc/remarkable/rmapi/default.nix
index cca6c5b48872..aa2b1af194d3 100644
--- a/pkgs/applications/misc/remarkable/rmapi/default.nix
+++ b/pkgs/applications/misc/remarkable/rmapi/default.nix
@@ -2,13 +2,13 @@
buildGoModule rec {
pname = "rmapi";
- version = "0.0.21";
+ version = "0.0.22.1";
src = fetchFromGitHub {
owner = "juruen";
repo = "rmapi";
rev = "v${version}";
- sha256 = "sha256-PObuO+Aea2MS1DW3/uOS7GajtFUPolDnPgwxYehGPlA=";
+ sha256 = "sha256-tYGlI7p5KAskN+Y6vvBEm4+s9rKtL4TN43N/btN27UI=";
};
vendorSha256 = "sha256-LmKcHV0aq7NDEwaL+u8zXkbKzzdWD8zmnAGw5xShDYo=";
diff --git a/pkgs/applications/networking/browsers/chromium/common.nix b/pkgs/applications/networking/browsers/chromium/common.nix
index afee9cf4f61b..1759d3fba6ae 100644
--- a/pkgs/applications/networking/browsers/chromium/common.nix
+++ b/pkgs/applications/networking/browsers/chromium/common.nix
@@ -293,6 +293,10 @@ let
rtc_use_pipewire = true;
# Disable PGO because the profile data requires a newer compiler version (LLVM 14 isn't sufficient):
chrome_pgo_phase = 0;
+ } // optionalAttrs (chromiumVersionAtLeast "107") {
+ clang_base_path = "${llvmPackages.clang}";
+ use_qt = false;
+ use_system_libwayland_server = true;
} // optionalAttrs proprietaryCodecs {
# enable support for the H.264 codec
proprietary_codecs = true;
diff --git a/pkgs/applications/networking/cluster/argo/default.nix b/pkgs/applications/networking/cluster/argo/default.nix
index 3fd45f3e9c28..cefe6b575be1 100644
--- a/pkgs/applications/networking/cluster/argo/default.nix
+++ b/pkgs/applications/networking/cluster/argo/default.nix
@@ -19,16 +19,16 @@ let
in
buildGoModule rec {
pname = "argo";
- version = "3.4.1";
+ version = "3.4.2";
src = fetchFromGitHub {
owner = "argoproj";
repo = "argo";
rev = "v${version}";
- sha256 = "sha256-bAfND84mbJulv0IO6JF2c+ZbwKeND8AVAJHmdMmhZ/s=";
+ sha256 = "sha256-ST5XVgij1h+4EWLlwdFmIYZ0RPSH5IoTw0YdP0a+Sa4=";
};
- vendorSha256 = "sha256-S4p56/OZpufpi71aueYTvPcM4LoZWyAhcAzUUUrUw4Q=";
+ vendorSha256 = "sha256-h6Ioy1wBOAOCGcqcLlPyqX5pyx22BIiHKx4ct0HmnyA=";
doCheck = false;
diff --git a/pkgs/applications/office/fava/default.nix b/pkgs/applications/office/fava/default.nix
index 10cd1e998504..aea4a16e46b9 100644
--- a/pkgs/applications/office/fava/default.nix
+++ b/pkgs/applications/office/fava/default.nix
@@ -2,12 +2,12 @@
python3.pkgs.buildPythonApplication rec {
pname = "fava";
- version = "1.22.3";
+ version = "1.23";
format = "pyproject";
src = python3.pkgs.fetchPypi {
inherit pname version;
- sha256 = "sha256-e8/VOn0WmrUO69x/4hKGtgKuj11U1Qv7OUhfOL/p5Ds=";
+ sha256 = "sha256-dwJKSQiuggnseEbALSrT051Me/z1jpj/BjuxN0v5dpU=";
};
nativeBuildInputs = with python3.pkgs; [ setuptools-scm ];
diff --git a/pkgs/applications/office/paperless-ngx/default.nix b/pkgs/applications/office/paperless-ngx/default.nix
index 6fa29c1dbbd7..e11b34e52bcf 100644
--- a/pkgs/applications/office/paperless-ngx/default.nix
+++ b/pkgs/applications/office/paperless-ngx/default.nix
@@ -115,7 +115,6 @@ python.pkgs.pythonPackages.buildPythonApplication rec {
inotifyrecursive
joblib
langdetect
- pkgs.libmysqlclient
lxml
msgpack
numpy
diff --git a/pkgs/applications/radio/cqrlog/default.nix b/pkgs/applications/radio/cqrlog/default.nix
index d86a08f3a1b0..a167642dd7e7 100644
--- a/pkgs/applications/radio/cqrlog/default.nix
+++ b/pkgs/applications/radio/cqrlog/default.nix
@@ -11,7 +11,7 @@
, libX11
, pango
, hamlib
-, mysql57
+, mariadb
, tqsl
, xdg-utils
, xplanet
@@ -55,8 +55,8 @@ stdenv.mkDerivation rec {
--replace "/usr/bin/rigctld" "${hamlib}/bin/rigctld"
# Order is important
substituteInPlace src/dData.pas \
- --replace "/usr/bin/mysqld_safe" "${mysql57}/bin/mysqld_safe" \
- --replace "/usr/bin/mysqld" "${mysql57}/bin/mysqld"
+ --replace "/usr/bin/mysqld_safe" "${mariadb}/bin/mysqld_safe" \
+ --replace "/usr/bin/mysqld" "${mariadb}/bin/mysqld"
# To be fail when I need to patch a new hardcoded binary
! grep -C src -RC0 "/usr"
@@ -74,7 +74,7 @@ stdenv.mkDerivation rec {
];
propagatedBuildInputs = [
hamlib
- mysql57
+ mariadb
tqsl
xdg-utils
xplanet
@@ -87,8 +87,10 @@ stdenv.mkDerivation rec {
];
postFixup = ''
- libmysqlclient=$(find "${mysql57}/lib" -name "libmysqlclient.so.*" | tail -n1)
- patchelf --add-needed "$libmysqlclient" "$out/bin/.cqrlog-wrapped"
+ libmysqlclient=$(find "${mariadb.client}/lib" -name "libmysqlclient.so" | tail -n1)
+ patchelf --add-needed "libmysqlclient.so" \
+ --add-rpath "$(dirname "$libmysqlclient")" \
+ "$out/bin/.cqrlog-wrapped"
'';
meta = with lib; {
diff --git a/pkgs/applications/virtualization/qemu/default.nix b/pkgs/applications/virtualization/qemu/default.nix
index 683d94fc2be9..42a556a451fb 100644
--- a/pkgs/applications/virtualization/qemu/default.nix
+++ b/pkgs/applications/virtualization/qemu/default.nix
@@ -112,6 +112,11 @@ stdenv.mkDerivation rec {
revert = true;
})
./9pfs-use-GHashTable-for-fid-table.patch
+ (fetchpatch {
+ name = "CVE-2022-3165.patch";
+ url = "https://gitlab.com/qemu-project/qemu/-/commit/d307040b18bfcb1393b910f1bae753d5c12a4dc7.patch";
+ sha256 = "sha256-YPhm580lBNuAv7G1snYccKZ2V5ycdV8Ri8mTw5jjFBc=";
+ })
]
++ lib.optional nixosTestRunner ./force-uid0-on-9p.patch;
diff --git a/pkgs/applications/window-managers/icewm/default.nix b/pkgs/applications/window-managers/icewm/default.nix
index d9a103035668..4bcdf1643f1b 100644
--- a/pkgs/applications/window-managers/icewm/default.nix
+++ b/pkgs/applications/window-managers/icewm/default.nix
@@ -4,6 +4,7 @@
, fetchpatch
, cmake
, expat
+, flac
, fontconfig
, freetype
, fribidi
@@ -26,25 +27,26 @@
, libXpm
, libXrandr
, libjpeg
+, libogg
, libpng
, libpthreadstubs
, libsndfile
, libtiff
, libxcb
, mkfontdir
-, pcre
+, pcre2
, perl
, pkg-config
}:
-stdenv.mkDerivation rec {
+stdenv.mkDerivation (finalAttrs: {
pname = "icewm";
- version = "3.0.1";
+ version = "3.1.0";
src = fetchFromGitHub {
owner = "ice-wm";
- repo = pname;
- rev = version;
+ repo = "icewm";
+ rev = finalAttrs.version;
hash = "sha256-0mnhH/7Y4VXpNUU++ln2//9/vuTxq9sa2D933Cf7Ifw=";
};
@@ -56,6 +58,7 @@ stdenv.mkDerivation rec {
buildInputs = [
expat
+ flac
fontconfig
freetype
fribidi
@@ -78,13 +81,14 @@ stdenv.mkDerivation rec {
libXpm
libXrandr
libjpeg
+ libogg
libpng
libpthreadstubs
libsndfile
libtiff
libxcb
mkfontdir
- pcre
+ pcre2
];
cmakeFlags = [
@@ -94,7 +98,8 @@ stdenv.mkDerivation rec {
# install legacy themes
postInstall = ''
- cp -r ../lib/themes/{gtk2,Natural,nice,nice2,warp3,warp4,yellowmotif} $out/share/icewm/themes/
+ cp -r ../lib/themes/{gtk2,Natural,nice,nice2,warp3,warp4,yellowmotif} \
+ $out/share/icewm/themes/
'';
meta = with lib; {
@@ -117,4 +122,4 @@ stdenv.mkDerivation rec {
maintainers = [ maintainers.AndersonTorres ];
platforms = platforms.linux;
};
-}
+})
diff --git a/pkgs/applications/window-managers/jwm/default.nix b/pkgs/applications/window-managers/jwm/default.nix
index fb89731a8461..18df9da344d4 100644
--- a/pkgs/applications/window-managers/jwm/default.nix
+++ b/pkgs/applications/window-managers/jwm/default.nix
@@ -28,13 +28,13 @@
stdenv.mkDerivation rec {
pname = "jwm";
- version = "2.4.2";
+ version = "2.4.3";
src = fetchFromGitHub {
owner = "joewing";
repo = "jwm";
rev = "v${version}";
- sha256 = "sha256-rvuz2Pmon3XBqRMgDwZNrQlWDyLNSK30JPmmQTlN+Rs=";
+ sha256 = "sha256-HPcNXf+frYbT8lr5vU5xpUnyjGpQ5rc2G14EjDwpk3c=";
};
nativeBuildInputs = [
diff --git a/pkgs/development/interpreters/joker/default.nix b/pkgs/development/interpreters/joker/default.nix
index 85fba63f1597..6821fdffdb23 100644
--- a/pkgs/development/interpreters/joker/default.nix
+++ b/pkgs/development/interpreters/joker/default.nix
@@ -2,13 +2,13 @@
buildGoModule rec {
pname = "joker";
- version = "1.0.1";
+ version = "1.0.2";
src = fetchFromGitHub {
rev = "v${version}";
owner = "candid82";
repo = "joker";
- sha256 = "sha256-yetHt8zrIEenb1Z5L3oUmgVGxWaYOu4Nk4pbJD6K3zA=";
+ sha256 = "sha256-u8wxyFYlqKL+NsSh+rM634MA9XsR9aJUJ+OtQ61uAFo=";
};
vendorSha256 = "sha256-AYoespfzFLP/jIIxbw5K653wc7sSfLY8K7di8GZ64wA=";
diff --git a/pkgs/development/python-modules/chex/default.nix b/pkgs/development/python-modules/chex/default.nix
index 79eeb9319973..cad84146c483 100644
--- a/pkgs/development/python-modules/chex/default.nix
+++ b/pkgs/development/python-modules/chex/default.nix
@@ -12,14 +12,14 @@
buildPythonPackage rec {
pname = "chex";
- version = "0.1.4";
+ version = "0.1.5";
format = "setuptools";
src = fetchFromGitHub {
owner = "deepmind";
repo = pname;
rev = "refs/tags/v${version}";
- hash = "sha256-FiZElESyOVu1VJxUDNiN6HVADiaubDrGdQHYp2CN8f4=";
+ hash = "sha256-FYB0IhokM74HBY2wOJYE6xJrHxHHWhDSAZpWFs6HFu0=";
};
propagatedBuildInputs = [
@@ -39,6 +39,11 @@ buildPythonPackage rec {
pytestCheckHook
];
+ disabledTests = [
+ # See https://github.com/deepmind/chex/issues/204.
+ "test_uninspected_checks"
+ ];
+
meta = with lib; {
description = "Chex is a library of utilities for helping to write reliable JAX code.";
homepage = "https://github.com/deepmind/chex";
diff --git a/pkgs/development/python-modules/dm-tree/default.nix b/pkgs/development/python-modules/dm-tree/default.nix
index 04feb7de93f3..1b9437096648 100644
--- a/pkgs/development/python-modules/dm-tree/default.nix
+++ b/pkgs/development/python-modules/dm-tree/default.nix
@@ -13,14 +13,13 @@
buildPythonPackage rec {
pname = "dm-tree";
- # As of 2021-12-29, the latest stable version still builds with Bazel.
- version = "unstable-2021-12-20";
+ version = "0.1.7";
src = fetchFromGitHub {
owner = "deepmind";
repo = "tree";
- rev = "b452e5c2743e7489b4ba7f16ecd51c516d7cd8e3";
- sha256 = "1r187xwpvnnj98lyasngcv3lbxz0ziihpl5dbnjbfbjr0kh6z0j9";
+ rev = version;
+ hash = "sha256-rg6dcGcbTGfK3h4WAyhwCjgM3o64Jj2SImxNsZXJHHM=";
};
patches = [
diff --git a/pkgs/development/python-modules/ezdxf/default.nix b/pkgs/development/python-modules/ezdxf/default.nix
index 3fd30062b0d9..6e1349883ada 100644
--- a/pkgs/development/python-modules/ezdxf/default.nix
+++ b/pkgs/development/python-modules/ezdxf/default.nix
@@ -1,22 +1,49 @@
-{ lib, buildPythonPackage, pythonOlder, fetchFromGitHub, pyparsing, pytest }:
+{ lib
+, buildPythonPackage
+, pythonOlder
+, fetchFromGitHub
+, pyparsing
+, typing-extensions
+, pytestCheckHook
+}:
buildPythonPackage rec {
- version = "0.12";
+ version = "0.18.1";
pname = "ezdxf";
+ format = "setuptools";
disabled = pythonOlder "3.5";
src = fetchFromGitHub {
owner = "mozman";
repo = "ezdxf";
- rev = "v${version}";
- sha256 = "1flcq96ljk5wqrmgsb4acflqzkg7rhlaxz0j5jxky9za0mj1x6dq";
+ rev = "refs/tags/v${version}";
+ sha256 = "sha256-x1p9dWrbDtDreXdBuzOA4Za+ZC40y4xdEU7MGb9uUec=";
};
- checkInputs = [ pytest ];
- checkPhase = "pytest tests integration_tests";
+ propagatedBuildInputs = [
+ pyparsing
+ typing-extensions
+ ];
- propagatedBuildInputs = [ pyparsing ];
+ checkInputs = [
+ pytestCheckHook
+ ];
+
+ disabledTests = [
+ # requires geomdl dependency
+ "TestNurbsPythonCorrectness"
+ "test_rational_spline_curve_points_by_nurbs_python"
+ "test_rational_spline_derivatives_by_nurbs_python"
+ "test_from_nurbs_python_curve_to_ezdxf_bspline"
+ "test_from_ezdxf_bspline_to_nurbs_python_curve_non_rational"
+ "test_from_ezdxf_bspline_to_nurbs_python_curve_rational"
+ ];
+
+ pythonImportsCheck = [
+ "ezdxf"
+ "ezdxf.addons"
+ ];
meta = with lib; {
description = "Python package to read and write DXF drawings (interface to the DXF file format)";
diff --git a/pkgs/development/python-modules/flake8-bugbear/default.nix b/pkgs/development/python-modules/flake8-bugbear/default.nix
index 3bd384c413cd..40e611ca8b86 100644
--- a/pkgs/development/python-modules/flake8-bugbear/default.nix
+++ b/pkgs/development/python-modules/flake8-bugbear/default.nix
@@ -11,7 +11,7 @@
buildPythonPackage rec {
pname = "flake8-bugbear";
- version = "22.9.23";
+ version = "22.10.25";
format = "setuptools";
disabled = pythonOlder "3.6";
@@ -20,7 +20,7 @@ buildPythonPackage rec {
owner = "PyCQA";
repo = pname;
rev = "refs/tags/${version}";
- hash = "sha256-LI8NnAB87Iel5aTVb2BIwHUB6KVtHzLvu+pJnFI3nw0=";
+ hash = "sha256-+eE9MY1k9JN0l3g8/wWOfbhkoSZLYG+wPKvl63R1n3o=";
};
propagatedBuildInputs = [
diff --git a/pkgs/development/python-modules/flax/default.nix b/pkgs/development/python-modules/flax/default.nix
index ebdb3ac898ad..d9171d14e41d 100644
--- a/pkgs/development/python-modules/flax/default.nix
+++ b/pkgs/development/python-modules/flax/default.nix
@@ -17,25 +17,15 @@
buildPythonPackage rec {
pname = "flax";
- version = "0.6.0";
+ version = "0.6.1";
src = fetchFromGitHub {
owner = "google";
repo = pname;
rev = "refs/tags/v${version}";
- sha256 = "sha256-egTYYFZxhE/Kk7jXRi1HmjCjyFia2LoRigH042isDu0=";
+ sha256 = "sha256-fZiODo+izOwGjCCTvi11GvUG/VQL1DV9bNXKjvIIw4A=";
};
- patches = [
- # Bump rich dependency, should be fixed in releases after 0.6.0
- # https://github.com/google/flax/pull/2407
- (fetchpatch {
- url = "https://github.com/google/flax/commit/72189153f9779022b97858ae747c23fbaf571e3d.patch";
- sha256 = "sha256-hKOn/M7qpBM6R1RIJpnXpRoZgIHqkwQZApN4L0fBzIE=";
- name = "bump_rich_dependency.patch";
- })
- ];
-
buildInputs = [ jaxlib ];
propagatedBuildInputs = [
@@ -76,6 +66,22 @@ buildPythonPackage rec {
"examples/*"
];
+ disabledTests = [
+ # See https://github.com/google/flax/issues/2554.
+ "test_async_save_checkpoints"
+ "test_jax_array0"
+ "test_jax_array1"
+ "test_keep0"
+ "test_keep1"
+ "test_optimized_lstm_cell_matches_regular"
+ "test_overwrite_checkpoints"
+ "test_save_restore_checkpoints_target_empty"
+ "test_save_restore_checkpoints_target_none"
+ "test_save_restore_checkpoints_target_singular"
+ "test_save_restore_checkpoints_w_float_steps"
+ "test_save_restore_checkpoints"
+ ];
+
meta = with lib; {
description = "Neural network library for JAX";
homepage = "https://github.com/google/flax";
diff --git a/pkgs/development/python-modules/pydal/default.nix b/pkgs/development/python-modules/pydal/default.nix
index 006a6409e493..a3bd6ee91469 100644
--- a/pkgs/development/python-modules/pydal/default.nix
+++ b/pkgs/development/python-modules/pydal/default.nix
@@ -6,12 +6,12 @@
buildPythonPackage rec {
pname = "pydal";
- version = "20220814.1";
+ version = "20220916.1";
format = "setuptools";
src = fetchPypi {
inherit pname version;
- sha256 = "sha256-zl9dDQSTBSKGA4wMqueXF46McldLYE4hUIcM0467CNA=";
+ sha256 = "sha256-GKnJ1aRLuJp+wQVjzL51o/KteGD5k4X221bDzpIiEEQ=";
};
postPatch = ''
diff --git a/pkgs/development/python-modules/wxPython/4.0.nix b/pkgs/development/python-modules/wxPython/4.0.nix
index 9b4dcd5e6b48..509010afb3f1 100644
--- a/pkgs/development/python-modules/wxPython/4.0.nix
+++ b/pkgs/development/python-modules/wxPython/4.0.nix
@@ -21,6 +21,7 @@
, CoreFoundation
, pillow
, numpy
+, six
}:
buildPythonPackage rec {
@@ -46,7 +47,11 @@ buildPythonPackage rec {
[ wxGTK.gtk ]
);
- propagatedBuildInputs = [ pillow numpy ];
+ propagatedBuildInputs = [
+ numpy
+ pillow
+ six
+ ];
DOXYGEN = "${doxygen}/bin/doxygen";
diff --git a/pkgs/development/python-modules/wxPython/4.1.nix b/pkgs/development/python-modules/wxPython/4.1.nix
index 3731ea988f61..dceab0dd26a9 100644
--- a/pkgs/development/python-modules/wxPython/4.1.nix
+++ b/pkgs/development/python-modules/wxPython/4.1.nix
@@ -28,6 +28,7 @@
, WebKit
, pillow
, numpy
+, six
, libXinerama
, libSM
, libXxf86vm
@@ -108,7 +109,11 @@ buildPythonPackage rec {
WebKit
];
- propagatedBuildInputs = [ pillow numpy ];
+ propagatedBuildInputs = [
+ pillow
+ numpy
+ six
+ ];
DOXYGEN = "${doxygen}/bin/doxygen";
diff --git a/pkgs/development/python-modules/wxPython/4.2-ctypes.patch b/pkgs/development/python-modules/wxPython/4.2-ctypes.patch
new file mode 100644
index 000000000000..17fd8a9a8490
--- /dev/null
+++ b/pkgs/development/python-modules/wxPython/4.2-ctypes.patch
@@ -0,0 +1,18 @@
+diff --git a/wx/lib/wxcairo/wx_pycairo.py b/wx/lib/wxcairo/wx_pycairo.py
+index 7cfe3071..24d1120f 100644
+--- a/wx/lib/wxcairo/wx_pycairo.py
++++ b/wx/lib/wxcairo/wx_pycairo.py
+@@ -197,7 +197,12 @@ def _findCairoLib():
+
+ # For other DLLs we'll just use a dictionary to track them, as there
+ # probably isn't any need to use them outside of this module.
+-_dlls = dict()
++_dlls = {
++ "gdk": ctypes.CDLL("@libgdk@"),
++ "pangocairo": ctypes.CDLL("@libpangocairo@"),
++ "cairoLib": ctypes.CDLL("@libcairo@"),
++ "appsvc": ctypes.CDLL(None),
++}
+
+ def _findHelper(names, key, msg):
+ dll = _dlls.get(key, None)
diff --git a/pkgs/development/python-modules/wxPython/4.2.nix b/pkgs/development/python-modules/wxPython/4.2.nix
new file mode 100644
index 000000000000..a68d6cb4590a
--- /dev/null
+++ b/pkgs/development/python-modules/wxPython/4.2.nix
@@ -0,0 +1,133 @@
+{ lib
+, stdenv
+, buildPythonPackage
+, pythonOlder
+, fetchPypi
+, substituteAll
+
+# build
+, autoPatchelfHook
+, attrdict
+, doxygen
+, pkg-config
+, python
+, sip
+, which
+
+# runtime
+, cairo
+, gst_all_1
+, gtk3
+, libGL
+, libGLU
+, libSM
+, libXinerama
+, libXtst
+, libXxf86vm
+, libglvnd
+, mesa
+, pango
+, SDL
+, webkitgtk
+, wxGTK
+, xorgproto
+
+# propagates
+, numpy
+, pillow
+, six
+}:
+
+buildPythonPackage rec {
+ pname = "wxPython";
+ version = "4.2.0";
+ format = "other";
+ disabled = pythonOlder "3.7";
+
+ src = fetchPypi {
+ inherit pname version;
+ hash = "sha256-ZjzrxFCdfl0RNRiGX+J093+VQ0xdV7w4btWNZc7thsc=";
+ };
+
+ patches = [
+ (substituteAll {
+ src = ./4.2-ctypes.patch;
+ libgdk = "${gtk3.out}/lib/libgdk-3.so";
+ libpangocairo = "${pango}/lib/libpangocairo-1.0.so";
+ libcairo = "${cairo}/lib/libcairo.so";
+ })
+ ];
+
+ nativeBuildInputs = [
+ attrdict
+ pkg-config
+ SDL
+ sip
+ which
+ wxGTK
+ ] ++ lib.optionals stdenv.isLinux [
+ autoPatchelfHook
+ ];
+
+ buildInputs = [
+ wxGTK
+ SDL
+ ] ++ lib.optionals stdenv.isLinux [
+ gst_all_1.gst-plugins-base
+ gst_all_1.gstreamer
+ libGL
+ libGLU
+ libSM
+ libXinerama
+ libXtst
+ libXxf86vm
+ libglvnd
+ mesa
+ webkitgtk
+ xorgproto
+ ];
+
+ propagatedBuildInputs = [
+ numpy
+ pillow
+ six
+ ];
+
+ buildPhase = ''
+ runHook preBuild
+
+ export DOXYGEN=${doxygen}/bin/doxygen
+ export PATH="${wxGTK}/bin:$PATH"
+ export SDL_CONFIG="${SDL.dev}/bin/sdl-config"
+
+ ${python.interpreter} build.py -v --use_syswx dox etg sip --nodoc build_py
+
+ runHook postBuild
+ '';
+
+
+ installPhase = ''
+ runHook preInstall
+
+ ${python.interpreter} setup.py install --skip-build --prefix=$out
+ wrapPythonPrograms
+
+ runHook postInstall
+ '';
+
+ checkPhase = ''
+ runHook preCheck
+
+ ${python.interpreter} build.py -v test
+
+ runHook postCheck
+ '';
+
+
+ meta = with lib; {
+ description = "Cross platform GUI toolkit for Python, Phoenix version";
+ homepage = "http://wxpython.org/";
+ license = licenses.wxWindows;
+ maintainers = with maintainers; [ hexa ];
+ };
+}
diff --git a/pkgs/development/tools/rust/cargo-hack/default.nix b/pkgs/development/tools/rust/cargo-hack/default.nix
index fa575759981f..fc34656edcd8 100644
--- a/pkgs/development/tools/rust/cargo-hack/default.nix
+++ b/pkgs/development/tools/rust/cargo-hack/default.nix
@@ -2,14 +2,14 @@
rustPlatform.buildRustPackage rec {
pname = "cargo-hack";
- version = "0.5.21";
+ version = "0.5.22";
src = fetchCrate {
inherit pname version;
- sha256 = "sha256-E0YhpfFT1JQzXWK3cQfieZ8TVg+BRGwHL6cTwOrNVSQ=";
+ sha256 = "sha256-TuHCKitlCCV//VBi514IMdcscsBc4yibfdsCO/nmisU=";
};
- cargoSha256 = "sha256-AfILqelDRJuVVEoOT2FLKHq4QVEZXbwPSM0s4fpP00A=";
+ cargoSha256 = "sha256-2tF6553SGbBrGkTznk3zWMweQjks+Z699HE1l0DVYec=";
# some necessary files are absent in the crate version
doCheck = false;
diff --git a/pkgs/development/web/ihp-new/default.nix b/pkgs/development/web/ihp-new/default.nix
index 69e45f44eb85..792eba3978cc 100644
--- a/pkgs/development/web/ihp-new/default.nix
+++ b/pkgs/development/web/ihp-new/default.nix
@@ -2,13 +2,13 @@
stdenv.mkDerivation rec {
pname = "ihp-new";
- version = "0.20.0";
+ version = "1.0.0";
src = fetchFromGitHub {
owner = "digitallyinduced";
repo = "ihp";
rev = "v${version}";
- sha256 = "sha256-fvFRBnMnFGsPleVv5aPfuoP1UzjnBel0NiNULFP+GkI=";
+ sha256 = "sha256-8RBZn74pMAOHZL1VzO9DeEeDYm5CE1HOobP9e7Ze0Us=";
};
dontConfigure = true;
diff --git a/pkgs/servers/mail/dspam/default.nix b/pkgs/servers/mail/dspam/default.nix
index e2388e6a9491..31f149f1dd42 100644
--- a/pkgs/servers/mail/dspam/default.nix
+++ b/pkgs/servers/mail/dspam/default.nix
@@ -1,7 +1,7 @@
{ stdenv, lib, fetchurl, makeWrapper
, gawk, gnused, gnugrep, coreutils, which
, perlPackages
-, withMySQL ? false, zlib, mysql57
+, withMySQL ? false, zlib, mariadb-connector-c
, withPgSQL ? false, postgresql
, withSQLite ? false, sqlite
, withDB ? false, db
@@ -25,13 +25,21 @@ in stdenv.mkDerivation rec {
url = "mirror://sourceforge/dspam/dspam/${pname}-${version}/${pname}-${version}.tar.gz";
sha256 = "1acklnxn1wvc7abn31l3qdj8q6k13s51k5gv86vka7q20jb5cxmf";
};
+ patches = [
+ # https://gist.github.com/WhiteAnthrax/613136c76882e0ead3cb3bdad6b3d551
+ ./mariadb.patch
+ ];
buildInputs = [ perlPackages.perl ]
- ++ lib.optionals withMySQL [ zlib mysql57.connector-c ]
+ ++ lib.optionals withMySQL [ zlib mariadb-connector-c.out ]
++ lib.optional withPgSQL postgresql
++ lib.optional withSQLite sqlite
++ lib.optional withDB db;
nativeBuildInputs = [ makeWrapper ];
+ # patch out libmysql >= 5 check, since mariadb-connector is at 3.x
+ postPatch = ''
+ sed -i 's/atoi(m) >= 5/1/g' configure m4/mysql_drv.m4
+ '';
configureFlags = [
"--with-storage-driver=${drivers}"
@@ -50,7 +58,10 @@ in stdenv.mkDerivation rec {
"--enable-preferences-extension"
"--enable-long-usernames"
"--enable-external-lookup"
- ] ++ lib.optional withMySQL "--with-mysql-includes=${mysql57.connector-c}/include/mysql"
+ ] ++ lib.optionals withMySQL [
+ "--with-mysql-includes=${mariadb-connector-c.dev}/include/mysql"
+ "--with-mysql-libraries=${mariadb-connector-c.out}/lib/mysql"
+ ]
++ lib.optional withPgSQL "--with-pgsql-libraries=${postgresql.lib}/lib";
# Workaround build failure on -fno-common toolchains like upstream
diff --git a/pkgs/servers/mail/dspam/mariadb.patch b/pkgs/servers/mail/dspam/mariadb.patch
new file mode 100644
index 000000000000..5f3d8277d943
--- /dev/null
+++ b/pkgs/servers/mail/dspam/mariadb.patch
@@ -0,0 +1,42 @@
+diff -ur dspam-3.10.2.orig/configure dspam-3.10.2/configure
+--- dspam-3.10.2.orig/configure 2012-04-24 02:53:49.000000000 +0900
++++ dspam-3.10.2/configure 2019-05-24 01:59:06.557890494 +0900
+@@ -13280,7 +13280,7 @@
+ #include
+ #include
+ #include
+- #if defined(PROTOCOL_VERSION) && defined(ER_LOCK_DEADLOCK) && defined(ER_LOCK_WAIT_TIMEOUT) && defined(ER_LOCK_OR_ACTIVE_TRANSACTION) && defined(CR_ERROR_FIRST)
++ #if defined(PROTOCOL_VERSION) && defined(ER_LOCK_DEADLOCK) && defined(ER_LOCK_WAIT_TIMEOUT) && defined(ER_LOCK_OR_ACTIVE_TRANSACTION) && defined(CR_MIN_ERROR)
+ /* Success */
+ #else
+ #error Unsupported version of MySQL
+@@ -13293,7 +13293,7 @@
+
+ { { $as_echo "$as_me:${as_lineno-$LINENO}: error: in \`$ac_pwd':" >&5
+ $as_echo "$as_me: error: in \`$ac_pwd':" >&2;}
+-as_fn_error $? "Unsupported version of MySQL (no PROTOCOL_VERSION or ER_LOCK_DEADLOCK or ER_LOCK_WAIT_TIMEOUT or ER_LOCK_OR_ACTIVE_TRANSACTION or CR_ERROR_FIRST defined)
++as_fn_error $? "Unsupported version of MySQL (no PROTOCOL_VERSION or ER_LOCK_DEADLOCK or ER_LOCK_WAIT_TIMEOUT or ER_LOCK_OR_ACTIVE_TRANSACTION or CR_MIN_ERROR defined)
+ See \`config.log' for more details" "$LINENO" 5; }
+ mysql_headers_success=no
+
+diff -ur dspam-3.10.2.orig/m4/mysql_drv.m4 dspam-3.10.2/m4/mysql_drv.m4
+--- dspam-3.10.2.orig/m4/mysql_drv.m4 2011-08-17 07:38:30.000000000 +0900
++++ dspam-3.10.2/m4/mysql_drv.m4 2019-05-24 02:00:08.301217506 +0900
+@@ -80,7 +80,7 @@
+ #include
+ #include
+ #include
+- #if defined(PROTOCOL_VERSION) && defined(ER_LOCK_DEADLOCK) && defined(ER_LOCK_WAIT_TIMEOUT) && defined(ER_LOCK_OR_ACTIVE_TRANSACTION) && defined(CR_ERROR_FIRST)
++ #if defined(PROTOCOL_VERSION) && defined(ER_LOCK_DEADLOCK) && defined(ER_LOCK_WAIT_TIMEOUT) && defined(ER_LOCK_OR_ACTIVE_TRANSACTION) && defined(CR_MIN_ERROR)
+ /* Success */
+ #else
+ #error Unsupported version of MySQL
+@@ -88,7 +88,7 @@
+ ]])],
+ [],
+ [
+- AC_MSG_FAILURE([Unsupported version of MySQL (no PROTOCOL_VERSION or ER_LOCK_DEADLOCK or ER_LOCK_WAIT_TIMEOUT or ER_LOCK_OR_ACTIVE_TRANSACTION or CR_ERROR_FIRST defined)])
++ AC_MSG_FAILURE([Unsupported version of MySQL (no PROTOCOL_VERSION or ER_LOCK_DEADLOCK or ER_LOCK_WAIT_TIMEOUT or ER_LOCK_OR_ACTIVE_TRANSACTION or CR_MIN_ERROR defined)])
+ mysql_headers_success=no
+ ])
+ fi
diff --git a/pkgs/servers/sql/mariadb/default.nix b/pkgs/servers/sql/mariadb/default.nix
index f75fada0d8a0..2796906fe03e 100644
--- a/pkgs/servers/sql/mariadb/default.nix
+++ b/pkgs/servers/sql/mariadb/default.nix
@@ -1,273 +1,281 @@
-{ lib, stdenv, fetchurl, nixosTests, buildPackages
-# Native buildInputs components
-, bison, boost, cmake, fixDarwinDylibNames, flex, makeWrapper, pkg-config
-# Common components
-, curl, libiconv, ncurses, openssl, openssl_1_1, pcre, pcre2
-, libkrb5, libaio, liburing, systemd
-, CoreServices, cctools, perl
-, jemalloc, less, libedit
-# Server components
-, bzip2, lz4, lzo, snappy, xz, zlib, zstd
-, cracklib, judy, libevent, libxml2
-, linux-pam, numactl, pmdk
-, fmt_8
-, withStorageMroonga ? true, kytea, libsodium, msgpack, zeromq
-, withStorageRocks ? true
-}:
-
let
+ # shared across all versions
+ generic =
+ { version, hash
+ , lib, stdenv, fetchurl, nixosTests, buildPackages
+ # Native buildInputs components
+ , bison, boost, cmake, fixDarwinDylibNames, flex, makeWrapper, pkg-config
+ # Common components
+ , curl, libiconv, ncurses, openssl, openssl_1_1, pcre, pcre2
+ , libkrb5, libaio, liburing, systemd
+ , CoreServices, cctools, perl
+ , jemalloc, less, libedit
+ # Server components
+ , bzip2, lz4, lzo, snappy, xz, zlib, zstd
+ , cracklib, judy, libevent, libxml2
+ , linux-pam, numactl, pmdk
+ , fmt_8
+ , withStorageMroonga ? true, kytea, libsodium, msgpack, zeromq
+ , withStorageRocks ? true
+ , withEmbedded ? false
+ }:
+ let
+ libExt = stdenv.hostPlatform.extensions.sharedLibrary;
-libExt = stdenv.hostPlatform.extensions.sharedLibrary;
+ mytopEnv = buildPackages.perl.withPackages (p: with p; [ DBDmysql DBI TermReadKey ]);
-mytopEnv = buildPackages.perl.withPackages (p: with p; [ DBDmysql DBI TermReadKey ]);
+ common = rec { # attributes common to both builds
+ inherit version;
-mariadbPackage = packageSettings: (server packageSettings) // {
- client = client packageSettings; # MariaDB Client
- server = server packageSettings; # MariaDB Server
-};
+ src = fetchurl {
+ url = "https://downloads.mariadb.com/MariaDB/mariadb-${version}/source/mariadb-${version}.tar.gz";
+ inherit hash;
+ };
-commonOptions = packageSettings: rec { # attributes common to both builds
- inherit (packageSettings) version;
+ outputs = [ "out" "man" ];
- src = fetchurl {
- url = "https://downloads.mariadb.com/MariaDB/mariadb-${version}/source/mariadb-${version}.tar.gz";
- inherit (packageSettings) hash;
- };
+ nativeBuildInputs = [ cmake pkg-config ]
+ ++ lib.optional stdenv.hostPlatform.isDarwin fixDarwinDylibNames
+ ++ lib.optional (!stdenv.hostPlatform.isDarwin) makeWrapper;
- nativeBuildInputs = [ cmake pkg-config ]
- ++ lib.optional stdenv.hostPlatform.isDarwin fixDarwinDylibNames
- ++ lib.optional (!stdenv.hostPlatform.isDarwin) makeWrapper;
+ buildInputs = [
+ libiconv ncurses zlib
+ ] ++ lib.optionals stdenv.hostPlatform.isLinux ([ libkrb5 systemd ]
+ ++ (if (lib.versionOlder version "10.6") then [ libaio ] else [ liburing ]))
+ ++ lib.optionals stdenv.hostPlatform.isDarwin [ CoreServices cctools perl libedit ]
+ ++ lib.optionals (!stdenv.hostPlatform.isDarwin) [ jemalloc ]
+ ++ (if (lib.versionOlder version "10.5") then [ pcre ] else [ pcre2 ])
+ ++ (if (lib.versionOlder version "10.6")
+ then [ openssl_1_1 (curl.override { openssl = openssl_1_1; }) ]
+ else [ openssl curl ]);
- buildInputs = [
- libiconv ncurses zlib
- ] ++ (packageSettings.extraBuildInputs or [])
- ++ lib.optionals stdenv.hostPlatform.isLinux ([ libkrb5 systemd ]
- ++ (if (lib.versionOlder version "10.6") then [ libaio ] else [ liburing ]))
- ++ lib.optionals stdenv.hostPlatform.isDarwin [ CoreServices cctools perl libedit ]
- ++ lib.optionals (!stdenv.hostPlatform.isDarwin) [ jemalloc ]
- ++ (if (lib.versionOlder version "10.5") then [ pcre ] else [ pcre2 ])
- ++ (if (lib.versionOlder version "10.6")
- then [ openssl_1_1 (curl.override { openssl = openssl_1_1; }) ]
- else [ openssl curl ]);
+ prePatch = ''
+ sed -i 's,[^"]*/var/log,/var/log,g' storage/mroonga/vendor/groonga/CMakeLists.txt
+ '';
- prePatch = ''
- sed -i 's,[^"]*/var/log,/var/log,g' storage/mroonga/vendor/groonga/CMakeLists.txt
- '';
+ patches = [
+ ./patch/cmake-includedir.patch
+ ]
+ # Fixes a build issue as documented on
+ # https://jira.mariadb.org/browse/MDEV-26769?focusedCommentId=206073&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-206073
+ ++ lib.optional (!stdenv.hostPlatform.isLinux && lib.versionAtLeast version "10.6") ./patch/macos-MDEV-26769-regression-fix.patch;
- patches = [
- ./patch/cmake-includedir.patch
- ]
- # Fixes a build issue as documented on
- # https://jira.mariadb.org/browse/MDEV-26769?focusedCommentId=206073&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-206073
- ++ lib.optional (!stdenv.hostPlatform.isLinux && lib.versionAtLeast version "10.6") ./patch/macos-MDEV-26769-regression-fix.patch;
+ cmakeFlags = [
+ "-DBUILD_CONFIG=mysql_release"
+ "-DMANUFACTURER=nixos.org"
+ "-DDEFAULT_CHARSET=utf8mb4"
+ "-DDEFAULT_COLLATION=utf8mb4_unicode_ci"
+ "-DSECURITY_HARDENED=ON"
- cmakeFlags = [
- "-DBUILD_CONFIG=mysql_release"
- "-DMANUFACTURER=nixos.org"
- "-DDEFAULT_CHARSET=utf8mb4"
- "-DDEFAULT_COLLATION=utf8mb4_unicode_ci"
- "-DSECURITY_HARDENED=ON"
+ "-DINSTALL_UNIX_ADDRDIR=/run/mysqld/mysqld.sock"
+ "-DINSTALL_BINDIR=bin"
+ "-DINSTALL_DOCDIR=share/doc/mysql"
+ "-DINSTALL_DOCREADMEDIR=share/doc/mysql"
+ "-DINSTALL_INCLUDEDIR=include/mysql"
+ "-DINSTALL_LIBDIR=lib"
+ "-DINSTALL_PLUGINDIR=lib/mysql/plugin"
+ "-DINSTALL_INFODIR=share/mysql/docs"
+ "-DINSTALL_MANDIR=share/man"
+ "-DINSTALL_MYSQLSHAREDIR=share/mysql"
+ "-DINSTALL_SCRIPTDIR=bin"
+ "-DINSTALL_SUPPORTFILESDIR=share/doc/mysql"
+ "-DINSTALL_MYSQLTESTDIR=OFF"
+ "-DINSTALL_SQLBENCHDIR=OFF"
+ "-DINSTALL_PAMDIR=share/pam/lib/security"
+ "-DINSTALL_PAMDATADIR=share/pam/etc/security"
- "-DINSTALL_UNIX_ADDRDIR=/run/mysqld/mysqld.sock"
- "-DINSTALL_BINDIR=bin"
- "-DINSTALL_DOCDIR=share/doc/mysql"
- "-DINSTALL_DOCREADMEDIR=share/doc/mysql"
- "-DINSTALL_INCLUDEDIR=include/mysql"
- "-DINSTALL_LIBDIR=lib"
- "-DINSTALL_PLUGINDIR=lib/mysql/plugin"
- "-DINSTALL_INFODIR=share/mysql/docs"
- "-DINSTALL_MANDIR=share/man"
- "-DINSTALL_MYSQLSHAREDIR=share/mysql"
- "-DINSTALL_SCRIPTDIR=bin"
- "-DINSTALL_SUPPORTFILESDIR=share/doc/mysql"
- "-DINSTALL_MYSQLTESTDIR=OFF"
- "-DINSTALL_SQLBENCHDIR=OFF"
- "-DINSTALL_PAMDIR=share/pam/lib/security"
- "-DINSTALL_PAMDATADIR=share/pam/etc/security"
+ "-DWITH_ZLIB=system"
+ "-DWITH_SSL=system"
+ "-DWITH_PCRE=system"
+ "-DWITH_SAFEMALLOC=OFF"
+ "-DWITH_UNIT_TESTS=OFF"
+ "-DEMBEDDED_LIBRARY=OFF"
+ ] ++ lib.optionals stdenv.hostPlatform.isDarwin [
+ # On Darwin without sandbox, CMake will find the system java and attempt to build with java support, but
+ # then it will fail during the actual build. Let's just disable the flag explicitly until someone decides
+ # to pass in java explicitly.
+ "-DCONNECT_WITH_JDBC=OFF"
+ "-DCURSES_LIBRARY=${ncurses.out}/lib/libncurses.dylib"
+ ] ++ lib.optionals (stdenv.buildPlatform != stdenv.hostPlatform) [
+ # revisit this if nixpkgs supports any architecture whose stack grows upwards
+ "-DSTACK_DIRECTION=-1"
+ "-DCMAKE_CROSSCOMPILING_EMULATOR=${stdenv.hostPlatform.emulator buildPackages}"
+ ];
- "-DWITH_ZLIB=system"
- "-DWITH_SSL=system"
- "-DWITH_PCRE=system"
- "-DWITH_SAFEMALLOC=OFF"
- "-DWITH_UNIT_TESTS=OFF"
- "-DEMBEDDED_LIBRARY=OFF"
- ] ++ lib.optionals stdenv.hostPlatform.isDarwin [
- # On Darwin without sandbox, CMake will find the system java and attempt to build with java support, but
- # then it will fail during the actual build. Let's just disable the flag explicitly until someone decides
- # to pass in java explicitly.
- "-DCONNECT_WITH_JDBC=OFF"
- "-DCURSES_LIBRARY=${ncurses.out}/lib/libncurses.dylib"
- ] ++ lib.optionals (stdenv.buildPlatform != stdenv.hostPlatform) [
- # revisit this if nixpkgs supports any architecture whose stack grows upwards
- "-DSTACK_DIRECTION=-1"
- "-DCMAKE_CROSSCOMPILING_EMULATOR=${stdenv.hostPlatform.emulator buildPackages}"
- ];
+ postInstall = lib.optionalString (!withEmbedded) ''
+ # Remove Development components. Need to use libmysqlclient.
+ rm "$out"/lib/mysql/plugin/daemon_example.ini
+ rm "$out"/lib/{libmariadb.a,libmariadbclient.a,libmysqlclient.a,libmysqlclient_r.a,libmysqlservices.a}
+ rm -f "$out"/bin/{mariadb-config,mariadb_config,mysql_config}
+ rm -r $out/include
+ rm -r $out/lib/pkgconfig
+ '';
- postInstall = ''
- # Remove Development components. Need to use libmysqlclient.
- rm "$out"/lib/mysql/plugin/daemon_example.ini
- rm "$out"/lib/{libmariadb.a,libmariadbclient.a,libmysqlclient.a,libmysqlclient_r.a,libmysqlservices.a}
- rm -f "$out"/bin/{mariadb-config,mariadb_config,mysql_config}
- rm -r $out/include
- rm -r $out/lib/pkgconfig
- '';
+ # perlPackages.DBDmysql is broken on darwin
+ postFixup = lib.optionalString (!stdenv.hostPlatform.isDarwin) ''
+ wrapProgram $out/bin/mytop --set PATH ${lib.makeBinPath [ less ncurses ]}
+ '';
- # perlPackages.DBDmysql is broken on darwin
- postFixup = lib.optionalString (!stdenv.hostPlatform.isDarwin) ''
- wrapProgram $out/bin/mytop --set PATH ${lib.makeBinPath [ less ncurses ]}
- '';
+ passthru.tests = let
+ testVersion = "mariadb_${builtins.replaceStrings ["."] [""] (lib.versions.majorMinor version)}";
+ in {
+ mariadb-galera-rsync = nixosTests.mariadb-galera.${testVersion};
+ mysql = nixosTests.mysql.${testVersion};
+ mysql-autobackup = nixosTests.mysql-autobackup.${testVersion};
+ mysql-backup = nixosTests.mysql-backup.${testVersion};
+ mysql-replication = nixosTests.mysql-replication.${testVersion};
+ };
- passthru.tests = let
- testVersion = "mariadb_${builtins.replaceStrings ["."] [""] (lib.versions.majorMinor (packageSettings.version))}";
- in {
- mariadb-galera-rsync = nixosTests.mariadb-galera.${testVersion};
- mysql = nixosTests.mysql.${testVersion};
- mysql-autobackup = nixosTests.mysql-autobackup.${testVersion};
- mysql-backup = nixosTests.mysql-backup.${testVersion};
- mysql-replication = nixosTests.mysql-replication.${testVersion};
- };
+ meta = with lib; {
+ description = "An enhanced, drop-in replacement for MySQL";
+ homepage = "https://mariadb.org/";
+ license = licenses.gpl2;
+ maintainers = with maintainers; [ thoughtpolice ajs124 das_j ];
+ platforms = platforms.all;
+ };
+ };
- meta = with lib; {
- description = "An enhanced, drop-in replacement for MySQL";
- homepage = "https://mariadb.org/";
- license = licenses.gpl2;
- maintainers = with maintainers; [ thoughtpolice ajs124 das_j ];
- platforms = platforms.all;
- };
-};
+ client = stdenv.mkDerivation (common // {
+ pname = "mariadb-client";
-client = packageSettings: let
- common = commonOptions packageSettings;
+ patches = common.patches ++ [
+ ./patch/cmake-plugin-includedir.patch
+ ];
-in stdenv.mkDerivation (common // {
- pname = "mariadb-client";
+ cmakeFlags = common.cmakeFlags ++ [
+ "-DPLUGIN_AUTH_PAM=NO"
+ "-DWITHOUT_SERVER=ON"
+ "-DWITH_WSREP=OFF"
+ "-DINSTALL_MYSQLSHAREDIR=share/mysql-client"
+ ];
- outputs = [ "out" "man" ];
+ postInstall = common.postInstall + ''
+ rm "$out"/bin/{mariadb-test,mysqltest}
+ libmysqlclient_path=$(readlink -f $out/lib/libmysqlclient${libExt})
+ rm "$out"/lib/{libmariadb${libExt},libmysqlclient${libExt},libmysqlclient_r${libExt}}
+ mv "$libmysqlclient_path" "$out"/lib/libmysqlclient${libExt}
+ ln -sv libmysqlclient${libExt} "$out"/lib/libmysqlclient_r${libExt}
+ '';
+ });
- patches = common.patches ++ [
- ./patch/cmake-plugin-includedir.patch
- ];
+ server = stdenv.mkDerivation (common // {
+ pname = "mariadb-server";
- cmakeFlags = common.cmakeFlags ++ [
- "-DPLUGIN_AUTH_PAM=NO"
- "-DWITHOUT_SERVER=ON"
- "-DWITH_WSREP=OFF"
- "-DINSTALL_MYSQLSHAREDIR=share/mysql-client"
- ];
+ nativeBuildInputs = common.nativeBuildInputs ++ [ bison boost.dev flex ];
- postInstall = common.postInstall + ''
- rm "$out"/bin/{mariadb-test,mysqltest}
- libmysqlclient_path=$(readlink -f $out/lib/libmysqlclient${libExt})
- rm "$out"/lib/{libmariadb${libExt},libmysqlclient${libExt},libmysqlclient_r${libExt}}
- mv "$libmysqlclient_path" "$out"/lib/libmysqlclient${libExt}
- ln -sv libmysqlclient${libExt} "$out"/lib/libmysqlclient_r${libExt}
- '';
-});
+ buildInputs = common.buildInputs ++ [
+ bzip2 lz4 lzo snappy xz zstd
+ cracklib judy libevent libxml2
+ ] ++ lib.optional (stdenv.hostPlatform.isLinux && !stdenv.hostPlatform.isAarch32) numactl
+ ++ lib.optionals stdenv.hostPlatform.isLinux [ linux-pam ]
+ ++ lib.optional (stdenv.hostPlatform.isLinux && stdenv.hostPlatform.isx86_64) pmdk.dev
+ ++ lib.optional (!stdenv.hostPlatform.isDarwin) mytopEnv
+ ++ lib.optionals withStorageMroonga [ kytea libsodium msgpack zeromq ]
+ ++ lib.optionals (lib.versionAtLeast common.version "10.7") [ fmt_8 ];
-server = packageSettings: let
- common = commonOptions packageSettings;
+ propagatedBuildInputs = lib.optionals withEmbedded
+ (lib.optional (stdenv.hostPlatform.isLinux && stdenv.hostPlatform.isx86_64) pmdk.lib
+ ++ lib.optional (stdenv.hostPlatform.isLinux && !stdenv.hostPlatform.isAarch32) numactl);
-in stdenv.mkDerivation (common // {
- pname = "mariadb-server";
+ postPatch = ''
+ substituteInPlace scripts/galera_new_cluster.sh \
+ --replace ":-mariadb" ":-mysql"
+ '';
- outputs = [ "out" "man" ];
+ cmakeFlags = common.cmakeFlags ++ [
+ "-DMYSQL_DATADIR=/var/lib/mysql"
+ "-DENABLED_LOCAL_INFILE=OFF"
+ "-DWITH_READLINE=ON"
+ "-DWITH_EXTRA_CHARSETS=all"
+ "-DWITH_EMBEDDED_SERVER=${if withEmbedded then "ON" else "OFF"}"
+ "-DWITH_UNIT_TESTS=OFF"
+ "-DWITH_WSREP=ON"
+ "-DWITH_INNODB_DISALLOW_WRITES=ON"
+ "-DWITHOUT_EXAMPLE=1"
+ "-DWITHOUT_FEDERATED=1"
+ "-DWITHOUT_TOKUDB=1"
+ ] ++ lib.optionals (stdenv.hostPlatform.isLinux && !stdenv.hostPlatform.isAarch32) [
+ "-DWITH_NUMA=ON"
+ ] ++ lib.optionals (!withStorageMroonga) [
+ "-DWITHOUT_MROONGA=1"
+ ] ++ lib.optionals (!withStorageRocks) [
+ "-DWITHOUT_ROCKSDB=1"
+ ] ++ lib.optionals (!stdenv.hostPlatform.isDarwin && withStorageRocks) [
+ "-DWITH_ROCKSDB_JEMALLOC=ON"
+ ] ++ lib.optionals (!stdenv.hostPlatform.isDarwin) [
+ "-DWITH_JEMALLOC=yes"
+ ] ++ lib.optionals stdenv.hostPlatform.isDarwin [
+ "-DPLUGIN_AUTH_PAM=NO"
+ "-DPLUGIN_AUTH_PAM_V1=NO"
+ "-DWITHOUT_OQGRAPH=1"
+ "-DWITHOUT_PLUGIN_S3=1"
+ ];
- nativeBuildInputs = common.nativeBuildInputs ++ [ bison boost.dev flex ];
+ preConfigure = lib.optionalString (!stdenv.hostPlatform.isDarwin) ''
+ patchShebangs scripts/mytop.sh
+ '';
- buildInputs = common.buildInputs ++ [
- bzip2 lz4 lzo snappy xz zstd
- cracklib judy libevent libxml2
- ] ++ lib.optional (stdenv.hostPlatform.isLinux && !stdenv.hostPlatform.isAarch32) numactl
- ++ lib.optionals stdenv.hostPlatform.isLinux [ linux-pam ]
- ++ lib.optional (stdenv.hostPlatform.isLinux && stdenv.hostPlatform.isx86_64) pmdk.dev
- ++ lib.optional (!stdenv.hostPlatform.isDarwin) mytopEnv
- ++ lib.optionals withStorageMroonga [ kytea libsodium msgpack zeromq ]
- ++ lib.optionals (lib.versionAtLeast common.version "10.7") [ fmt_8 ];
+ postInstall = common.postInstall + ''
+ rm -r "$out"/share/aclocal
+ chmod +x "$out"/bin/wsrep_sst_common
+ rm -f "$out"/bin/{mariadb-client-test,mariadb-test,mysql_client_test,mysqltest}
+ '' + lib.optionalString withStorageMroonga ''
+ mv "$out"/share/{groonga,groonga-normalizer-mysql} "$out"/share/doc/mysql
+ '' + lib.optionalString (!stdenv.hostPlatform.isDarwin && lib.versionAtLeast common.version "10.4") ''
+ mv "$out"/OFF/suite/plugins/pam/pam_mariadb_mtr.so "$out"/share/pam/lib/security
+ mv "$out"/OFF/suite/plugins/pam/mariadb_mtr "$out"/share/pam/etc/security
+ rm -r "$out"/OFF
+ '';
- patches = common.patches;
-
- postPatch = ''
- substituteInPlace scripts/galera_new_cluster.sh \
- --replace ":-mariadb" ":-mysql"
- '';
-
- cmakeFlags = common.cmakeFlags ++ [
- "-DMYSQL_DATADIR=/var/lib/mysql"
- "-DENABLED_LOCAL_INFILE=OFF"
- "-DWITH_READLINE=ON"
- "-DWITH_EXTRA_CHARSETS=all"
- "-DWITH_EMBEDDED_SERVER=OFF"
- "-DWITH_UNIT_TESTS=OFF"
- "-DWITH_WSREP=ON"
- "-DWITH_INNODB_DISALLOW_WRITES=ON"
- "-DWITHOUT_EXAMPLE=1"
- "-DWITHOUT_FEDERATED=1"
- "-DWITHOUT_TOKUDB=1"
- ] ++ lib.optionals (stdenv.hostPlatform.isLinux && !stdenv.hostPlatform.isAarch32) [
- "-DWITH_NUMA=ON"
- ] ++ lib.optionals (!withStorageMroonga) [
- "-DWITHOUT_MROONGA=1"
- ] ++ lib.optionals (!withStorageRocks) [
- "-DWITHOUT_ROCKSDB=1"
- ] ++ lib.optionals (!stdenv.hostPlatform.isDarwin && withStorageRocks) [
- "-DWITH_ROCKSDB_JEMALLOC=ON"
- ] ++ lib.optionals (!stdenv.hostPlatform.isDarwin) [
- "-DWITH_JEMALLOC=yes"
- ] ++ lib.optionals stdenv.hostPlatform.isDarwin [
- "-DPLUGIN_AUTH_PAM=NO"
- "-DPLUGIN_AUTH_PAM_V1=NO"
- "-DWITHOUT_OQGRAPH=1"
- "-DWITHOUT_PLUGIN_S3=1"
- ];
-
- preConfigure = lib.optionalString (!stdenv.hostPlatform.isDarwin) ''
- patchShebangs scripts/mytop.sh
- '';
-
- postInstall = common.postInstall + ''
- rm -r "$out"/share/aclocal
- chmod +x "$out"/bin/wsrep_sst_common
- rm -f "$out"/bin/{mariadb-client-test,mariadb-test,mysql_client_test,mysqltest}
- '' + lib.optionalString withStorageMroonga ''
- mv "$out"/share/{groonga,groonga-normalizer-mysql} "$out"/share/doc/mysql
- '' + lib.optionalString (!stdenv.hostPlatform.isDarwin && lib.versionAtLeast common.version "10.4") ''
- mv "$out"/OFF/suite/plugins/pam/pam_mariadb_mtr.so "$out"/share/pam/lib/security
- mv "$out"/OFF/suite/plugins/pam/mariadb_mtr "$out"/share/pam/etc/security
- rm -r "$out"/OFF
- '';
-
- CXXFLAGS = lib.optionalString stdenv.hostPlatform.isi686 "-fpermissive";
- NIX_LDFLAGS = lib.optionalString stdenv.hostPlatform.isRiscV "-latomic";
-});
-in {
- mariadb_104 = mariadbPackage {
- # Supported until 2024-06-18
- version = "10.4.26";
- hash = "sha256-cVrH4jr8O4pVnGzJmM2xlz2Q9iGyvddgPixuU4YLLd8=";
- };
- mariadb_105 = mariadbPackage {
- # Supported until 2025-06-24
- version = "10.5.17";
- hash = "sha256-hJyEC3b0hWUDtD7zqEH8lx6LUYjI3zaQkTv1aZaRt2E=";
- };
- mariadb_106 = mariadbPackage {
- # Supported until 2026-07
- version = "10.6.10";
- hash = "sha256-atn6hvDIXI7q+tJkNUnV/13ShyAClk51R1LekYY6o7c=";
- };
- mariadb_107 = mariadbPackage {
- # Supported until 2023-02. TODO: remove ahead of 22.11 release.
- version = "10.7.6";
- hash = "sha256-erX7pDmQV33BdPG5a9NAszN8G9Rv48NmIgsJ0siNLqA=";
- };
- mariadb_108 = mariadbPackage {
- # Supported until 2023-05
- version = "10.8.5";
- hash = "sha256-z37TjDYTTNgYP93WTLPlD1ROgmS6dCAlXbEpcJfgjos=";
- };
- mariadb_109 = mariadbPackage {
- # Supported until 2023-08(?)
- version = "10.9.3";
- hash = "sha256-mh4imXL8zMgnDmM/aNP7gk2hUdz09T2h342UesqHa+4=";
- };
-}
+ CXXFLAGS = lib.optionalString stdenv.hostPlatform.isi686 "-fpermissive";
+ NIX_LDFLAGS = lib.optionalString stdenv.hostPlatform.isRiscV "-latomic";
+ });
+ in
+ server // {
+ inherit client server;
+ };
+in
+ self: {
+ mariadb_104 = self.callPackage generic {
+ # Supported until 2024-06-18
+ version = "10.4.26";
+ hash = "sha256-cVrH4jr8O4pVnGzJmM2xlz2Q9iGyvddgPixuU4YLLd8=";
+ inherit (self.darwin) cctools;
+ inherit (self.darwin.apple_sdk.frameworks) CoreServices;
+ };
+ mariadb_105 = self.callPackage generic {
+ # Supported until 2025-06-24
+ version = "10.5.17";
+ hash = "sha256-hJyEC3b0hWUDtD7zqEH8lx6LUYjI3zaQkTv1aZaRt2E=";
+ inherit (self.darwin) cctools;
+ inherit (self.darwin.apple_sdk.frameworks) CoreServices;
+ };
+ mariadb_106 = self.callPackage generic {
+ # Supported until 2026-07
+ version = "10.6.10";
+ hash = "sha256-atn6hvDIXI7q+tJkNUnV/13ShyAClk51R1LekYY6o7c=";
+ inherit (self.darwin) cctools;
+ inherit (self.darwin.apple_sdk.frameworks) CoreServices;
+ };
+ mariadb_107 = self.callPackage generic {
+ # Supported until 2023-02. TODO: remove ahead of 22.11 release.
+ version = "10.7.6";
+ hash = "sha256-erX7pDmQV33BdPG5a9NAszN8G9Rv48NmIgsJ0siNLqA=";
+ inherit (self.darwin) cctools;
+ inherit (self.darwin.apple_sdk.frameworks) CoreServices;
+ };
+ mariadb_108 = self.callPackage generic {
+ # Supported until 2023-05
+ version = "10.8.5";
+ hash = "sha256-z37TjDYTTNgYP93WTLPlD1ROgmS6dCAlXbEpcJfgjos=";
+ inherit (self.darwin) cctools;
+ inherit (self.darwin.apple_sdk.frameworks) CoreServices;
+ };
+ mariadb_109 = self.callPackage generic {
+ # Supported until 2023-08(?)
+ version = "10.9.3";
+ hash = "sha256-mh4imXL8zMgnDmM/aNP7gk2hUdz09T2h342UesqHa+4=";
+ inherit (self.darwin) cctools;
+ inherit (self.darwin.apple_sdk.frameworks) CoreServices;
+ };
+ }
diff --git a/pkgs/servers/sql/mysql/8.0.x.nix b/pkgs/servers/sql/mysql/8.0.x.nix
index d40d42a41d07..553cf937b0ea 100644
--- a/pkgs/servers/sql/mysql/8.0.x.nix
+++ b/pkgs/servers/sql/mysql/8.0.x.nix
@@ -6,11 +6,11 @@
let
self = stdenv.mkDerivation rec {
pname = "mysql";
- version = "8.0.30";
+ version = "8.0.31";
src = fetchurl {
url = "https://dev.mysql.com/get/Downloads/MySQL-${self.mysqlVersion}/${pname}-${version}.tar.gz";
- sha256 = "sha256-yYjVxrqaVmkqbNbpgTRltfyTaO1LRh35cFmi/BYMi4Q=";
+ sha256 = "sha256-Z7uMunWyjpXH95SFY/AfuEUo/LsaNduoOdTORP4Bm6o=";
};
nativeBuildInputs = [ bison cmake pkg-config ]
diff --git a/pkgs/tools/admin/awscli2/default.nix b/pkgs/tools/admin/awscli2/default.nix
index a8623ced3782..f5d909d25259 100644
--- a/pkgs/tools/admin/awscli2/default.nix
+++ b/pkgs/tools/admin/awscli2/default.nix
@@ -3,7 +3,9 @@
, groff
, less
, fetchFromGitHub
+, nix-update-script
}:
+
let
py = python3.override {
packageOverrides = self: super: {
@@ -12,7 +14,16 @@ let
src = self.fetchPypi {
inherit (oldAttrs) pname;
inherit version;
- sha256 = "sha256-MGLTFcsWVC/gTdgjny6LwyOO6QRc1QcLkVzy677Lqqw=";
+ hash = "sha256-MGLTFcsWVC/gTdgjny6LwyOO6QRc1QcLkVzy677Lqqw=";
+ };
+ });
+
+ prompt-toolkit = super.prompt-toolkit.overridePythonAttrs (oldAttrs: rec {
+ version = "3.0.28";
+ src = self.fetchPypi {
+ pname = "prompt_toolkit";
+ inherit version;
+ hash = "sha256-nxzRax6GwpaPJRnX+zHdnWaZFvUVYSwmnRTp7VK1FlA=";
};
});
};
@@ -21,15 +32,20 @@ let
in
with py.pkgs; buildPythonApplication rec {
pname = "awscli2";
- version = "2.7.33"; # N.B: if you change this, check if overrides are still up-to-date
+ version = "2.8.5"; # N.B: if you change this, check if overrides are still up-to-date
+ format = "pyproject";
src = fetchFromGitHub {
owner = "aws";
repo = "aws-cli";
rev = version;
- sha256 = "sha256-9X056Xc9DPp8BiuAeCvQrswcj7mnZKrkMOad5aP1TI8=";
+ sha256 = "sha256-il5vUTHRTb1Y2ofu5z8W/8S39KRmRgKXVZs1f1T8YAg=";
};
+ nativeBuildInputs = [
+ flit-core
+ ];
+
propagatedBuildInputs = [
awscrt
bcdoc
@@ -53,25 +69,14 @@ with py.pkgs; buildPythonApplication rec {
jsonschema
mock
pytestCheckHook
- pytest-xdist
];
postPatch = ''
- substituteInPlace setup.cfg \
+ substituteInPlace pyproject.toml \
--replace "colorama>=0.2.5,<0.4.4" "colorama" \
- --replace "cryptography>=3.3.2,<37.0.0" "cryptography" \
+ --replace "distro>=1.5.0,<1.6.0" "distro" \
--replace "docutils>=0.10,<0.16" "docutils" \
- --replace "ruamel.yaml>=0.15.0,<=0.17.21" "ruamel.yaml" \
- --replace "wcwidth<0.2.0" "wcwidth" \
- --replace "prompt-toolkit>=3.0.24,<3.0.29" "prompt-toolkit~=3.0" \
- --replace "distro>=1.5.0,<1.6.0" "distro"
- '';
-
- checkPhase = ''
- export PATH=$PATH:$out/bin
-
- # https://github.com/NixOS/nixpkgs/issues/16144#issuecomment-225422439
- export HOME=$TMP
+ --replace "wcwidth<0.2.0" "wcwidth"
'';
postInstall = ''
@@ -87,13 +92,42 @@ with py.pkgs; buildPythonApplication rec {
rm $out/bin/aws.cmd
'';
- passthru.python = py; # for aws_shell
+ doCheck = true;
+
+ preCheck = ''
+ export PATH=$PATH:$out/bin
+ export HOME=$(mktemp -d)
+ '';
+
+ pytestFlagsArray = [
+ "-Wignore::DeprecationWarning"
+ ];
+
+ disabledTestPaths = [
+ # Integration tests require networking
+ "tests/integration"
+
+ # Disable slow tests (only run unit tests)
+ "tests/backends"
+ "tests/functional"
+ ];
+
+ pythonImportsCheck = [
+ "awscli"
+ ];
+
+ passthru = {
+ python = py; # for aws_shell
+ updateScript = nix-update-script {
+ attrPath = pname;
+ };
+ };
meta = with lib; {
homepage = "https://docs.aws.amazon.com/cli/latest/userguide/install-cliv2.html";
changelog = "https://github.com/aws/aws-cli/blob/${version}/CHANGELOG.rst";
description = "Unified tool to manage your AWS services";
license = licenses.asl20;
- maintainers = with maintainers; [ bhipple davegallant bryanasdev000 devusb ];
+ maintainers = with maintainers; [ bhipple davegallant bryanasdev000 devusb anthonyroussel ];
};
}
diff --git a/pkgs/tools/misc/sagoin/default.nix b/pkgs/tools/misc/sagoin/default.nix
new file mode 100644
index 000000000000..7c6fb92b9d38
--- /dev/null
+++ b/pkgs/tools/misc/sagoin/default.nix
@@ -0,0 +1,42 @@
+{ lib
+, rustPlatform
+, fetchFromGitHub
+, installShellFiles
+, stdenv
+, darwin
+}:
+
+rustPlatform.buildRustPackage rec {
+ pname = "sagoin";
+ version = "0.1.0";
+
+ src = fetchFromGitHub {
+ owner = "figsoda";
+ repo = pname;
+ rev = "v${version}";
+ sha256 = "0cp3sdck48kz7ssv9q0glz1m0awxis2n3lw8f8kvqm42zxa50ixm";
+ };
+
+ cargoSha256 = "sha256-hPj1sj64JoIGEoHMIm2bE+G+ivokckvChhrxNoaUTo8=";
+
+ nativeBuildInputs = [ installShellFiles ];
+
+ buildInputs = lib.optionals stdenv.isDarwin [
+ darwin.apple_sdk.frameworks.Security
+ ];
+
+ postInstall = ''
+ installManPage artifacts/sagoin.1
+ installShellCompletion artifacts/sagoin.{bash,fish} --zsh artifacts/_sagoin
+ '';
+
+ GEN_ARTIFACTS = "artifacts";
+
+ meta = with lib; {
+ description = "A command-line submission tool for the UMD CS Submission Server";
+ homepage = "https://github.com/figsoda/sagoin";
+ changelog = "https://github.com/figsoda/sagoin/blob/v${version}/CHANGELOG.md";
+ license = licenses.agpl3Plus;
+ maintainers = with maintainers; [ figsoda ];
+ };
+}
diff --git a/pkgs/tools/misc/svtplay-dl/default.nix b/pkgs/tools/misc/svtplay-dl/default.nix
index 23a7e7ad9564..0e1a3cfebd8b 100644
--- a/pkgs/tools/misc/svtplay-dl/default.nix
+++ b/pkgs/tools/misc/svtplay-dl/default.nix
@@ -1,5 +1,13 @@
-{ lib, stdenv, fetchFromGitHub, makeWrapper, python3Packages, perl, zip
-, gitMinimal, ffmpeg }:
+{ lib
+, stdenv
+, fetchFromGitHub
+, makeWrapper
+, python3Packages
+, perl
+, zip
+, gitMinimal
+, ffmpeg
+}:
let
@@ -7,15 +15,19 @@ let
python pytest nose cryptography pyyaml requests mock requests-mock
python-dateutil setuptools;
-in stdenv.mkDerivation rec {
+ version = "4.14";
+
+in
+
+stdenv.mkDerivation rec {
pname = "svtplay-dl";
- version = "4.13";
+ inherit version;
src = fetchFromGitHub {
owner = "spaam";
repo = "svtplay-dl";
rev = version;
- sha256 = "sha256-0Lqm6zN/H6yPIhkVvULmoQsV9SDG25LDiGWmtyiXHxI=";
+ sha256 = "sha256-jfrzgWlEoct8BJLkteWlYjXR/D4J+ShQhsNPBCN+zeQ=";
};
pythonPaths = [ cryptography pyyaml requests ];
diff --git a/pkgs/tools/networking/smokeping/default.nix b/pkgs/tools/networking/smokeping/default.nix
index 6d0d52271111..2b4a12bc7378 100644
--- a/pkgs/tools/networking/smokeping/default.nix
+++ b/pkgs/tools/networking/smokeping/default.nix
@@ -1,4 +1,4 @@
-{ lib, stdenv, fetchurl, fping, rrdtool, perlPackages }:
+{ lib, stdenv, fetchurl, fping, rrdtool, perlPackages, nixosTests }:
stdenv.mkDerivation rec {
pname = "smokeping";
@@ -14,6 +14,9 @@ stdenv.mkDerivation rec {
postInstall = ''
mv $out/htdocs/smokeping.fcgi.dist $out/htdocs/smokeping.fcgi
'';
+
+ passthru.tests.smokeping = nixosTests.smokeping;
+
meta = {
description = "Network latency collector";
homepage = "http://oss.oetiker.ch/smokeping";
diff --git a/pkgs/tools/nix/nix-output-monitor/generated-package.nix b/pkgs/tools/nix/nix-output-monitor/generated-package.nix
index 7a11e57cb026..f48056a2e4a4 100644
--- a/pkgs/tools/nix/nix-output-monitor/generated-package.nix
+++ b/pkgs/tools/nix/nix-output-monitor/generated-package.nix
@@ -14,7 +14,6 @@
extra,
fetchzip,
filepath,
- generic-optics,
hermes-json,
HUnit,
lib,
@@ -38,10 +37,10 @@
}:
mkDerivation {
pname = "nix-output-monitor";
- version = "2.0.0.2";
+ version = "2.0.0.3";
src = fetchzip {
- url = "https://github.com/maralorn/nix-output-monitor/archive/refs/tags/v2.0.0.2.tar.gz";
- sha256 = "1xfcl7203sgc88a9xdnswwk7rirsaff7jb27yil7mrb7ni10g2f9";
+ url = "https://github.com/maralorn/nix-output-monitor/archive/refs/tags/v2.0.0.3.tar.gz";
+ sha256 = "0mgg309vncjvx80mhqcyb7kk1918nfl02d38jczm9lsrlrmdafd9";
};
isLibrary = true;
isExecutable = true;
@@ -57,7 +56,6 @@ mkDerivation {
directory
extra
filepath
- generic-optics
hermes-json
lock-file
MemoTrie
@@ -86,7 +84,6 @@ mkDerivation {
directory
extra
filepath
- generic-optics
hermes-json
lock-file
MemoTrie
@@ -116,7 +113,6 @@ mkDerivation {
directory
extra
filepath
- generic-optics
hermes-json
HUnit
lock-file
diff --git a/pkgs/top-level/aliases.nix b/pkgs/top-level/aliases.nix
index f237bb8da0ca..f892c5de4af0 100644
--- a/pkgs/top-level/aliases.nix
+++ b/pkgs/top-level/aliases.nix
@@ -940,6 +940,7 @@ mapAliases ({
mutt-with-sidebar = mutt; # Added 2022-09-17
mysql-client = hiPrio mariadb.client;
mysql = mariadb; # moved from top-level 2021-03-14
+ mysql57 = throw "'mysql57' has been removed. Please use 'mysql80' or 'mariadb'";
# floating point textures patents are expired,
# so package reduced to alias
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index ee5c8a7167ba..80a85d69f1d2 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -11084,6 +11084,8 @@ with pkgs;
safeeyes = with python3.pkgs; toPythonApplication safeeyes;
+ sagoin = callPackage ../tools/misc/sagoin { };
+
sahel-fonts = callPackage ../data/fonts/sahel-fonts { };
saldl = callPackage ../tools/networking/saldl { };
@@ -23893,10 +23895,7 @@ with pkgs;
asio = asio_1_10;
};
- inherit (callPackage ../servers/sql/mariadb {
- inherit (darwin) cctools;
- inherit (darwin.apple_sdk.frameworks) CoreServices;
- })
+ inherit (import ../servers/sql/mariadb pkgs)
mariadb_104
mariadb_105
mariadb_106
@@ -23905,6 +23904,7 @@ with pkgs;
mariadb_109
;
mariadb = mariadb_106;
+ mariadb-embedded = mariadb.override { withEmbedded = true; };
mongodb = hiPrio mongodb-3_4;
@@ -23975,13 +23975,6 @@ with pkgs;
# removed in a few releases.
influxdb2 = callPackage ../servers/nosql/influxdb2/combined.nix { };
- mysql57 = callPackage ../servers/sql/mysql/5.7.x.nix {
- inherit (darwin) cctools developer_cmds;
- inherit (darwin.apple_sdk.frameworks) CoreServices;
- boost = boost159;
- openssl = openssl_1_1;
- };
-
mysql80 = callPackage ../servers/sql/mysql/8.0.x.nix {
inherit (darwin) cctools developer_cmds DarwinTools;
inherit (darwin.apple_sdk.frameworks) CoreServices;
@@ -29074,6 +29067,8 @@ with pkgs;
marker = callPackage ../applications/editors/marker { };
+ meerk40t = callPackage ../applications/misc/meerk40t { };
+
musikcube = callPackage ../applications/audio/musikcube {
inherit (darwin.apple_sdk.frameworks) Cocoa SystemConfiguration;
};
@@ -36758,7 +36753,7 @@ with pkgs;
mnemonicode = callPackage ../misc/mnemonicode { };
- mysql-workbench = callPackage ../applications/misc/mysql-workbench (let mysql = mysql57; in {
+ mysql-workbench = callPackage ../applications/misc/mysql-workbench (let mysql = mysql80; in {
gdal = gdal.override {
libmysqlclient = mysql // {
lib = { dev = mysql; }
diff --git a/pkgs/top-level/dotnet-packages.nix b/pkgs/top-level/dotnet-packages.nix
index 7d20bcbde9e5..cd064113599a 100644
--- a/pkgs/top-level/dotnet-packages.nix
+++ b/pkgs/top-level/dotnet-packages.nix
@@ -75,8 +75,8 @@ let self = dotnetPackages // overrides; dotnetPackages = with self; {
RestSharp = fetchNuGet {
pname = "RestSharp";
- version = "105.2.3";
- sha256 = "1br48124ppz80x92m84sfyil1gn23hxg2ml9i9hsd0lp86vlaa1m";
+ version = "106.12.0";
+ sha256 = "sha256-NGzveByJvCRtHlI2C8d/mLs3akyMm77NER8TUG6HiD4=";
outputFiles = [ "lib/*" ];
};
diff --git a/pkgs/top-level/python-packages.nix b/pkgs/top-level/python-packages.nix
index f5085af4ae44..c1b9ec694b44 100644
--- a/pkgs/top-level/python-packages.nix
+++ b/pkgs/top-level/python-packages.nix
@@ -12042,6 +12042,13 @@ in {
};
};
+ wxPython_4_2 = callPackage ../development/python-modules/wxPython/4.2.nix {
+ wxGTK = pkgs.wxGTK32.override {
+ withWebKit = true;
+ };
+ };
+
+
x11_hash = callPackage ../development/python-modules/x11_hash { };
x256 = callPackage ../development/python-modules/x256 { };