diff --git a/flake.lock b/flake.lock index 79e8ee6..5dfdea4 100644 --- a/flake.lock +++ b/flake.lock @@ -123,11 +123,11 @@ ] }, "locked": { - "lastModified": 1706435589, - "narHash": "sha256-yhEYJxMv5BkfmUuNe4QELKo+V5eq1pwhtVs6kEziHfE=", + "lastModified": 1706221476, + "narHash": "sha256-T4b8YafVjHXvtDY8ARec1WrXO8uyyNZOpNgv9yoQy2M=", "owner": "nix-community", "repo": "home-manager", - "rev": "4d54c29bce71f8c261513e0662cc573d30f3e33e", + "rev": "c7ce343d9bf1a329056a4dd5b32ea8cc43b55e15", "type": "github" }, "original": { @@ -165,11 +165,11 @@ ] }, "locked": { - "lastModified": 1706509827, - "narHash": "sha256-fnZ8BXDgfvXGwStQvmpUXe+I+Fjd2JCLm8xo0kVwVKc=", + "lastModified": 1705667791, + "narHash": "sha256-J0JYfA6eFdHluLnROVDkrqbYacWcJXYKXeJAFayDiAE=", "owner": "Jovian-Experiments", "repo": "Jovian-NixOS", - "rev": "e2c026d8efea340d2a2dcc56775212979dd51ef2", + "rev": "330b7a78fcba967f2273ae71fb3c4bfb03b5dd21", "type": "github" }, "original": { @@ -202,11 +202,11 @@ ] }, "locked": { - "lastModified": 1706482802, - "narHash": "sha256-KXwKTfqFkoPpV8QqaVlpmO8w8rD/jHZL2315RL5QQ8w=", + "lastModified": 1706145483, + "narHash": "sha256-omDJXQPBNCFGjSSP4X3mlITdmgfkJ3wrlLN1RhR6ld0=", "owner": "fufexan", "repo": "nix-gaming", - "rev": "8f354ef64cd18898b8980ecf7fe90118808b514b", + "rev": "b9f77409aad6976efdae3b05523a07b328920c97", "type": "github" }, "original": { @@ -259,11 +259,11 @@ ] }, "locked": { - "lastModified": 1706411424, - "narHash": "sha256-BzziJYucEZvdCE985vjPoo3ztWcmUiSQ1wJ2CoT6jCc=", + "lastModified": 1705806513, + "narHash": "sha256-FcOmNjhHFfPz2udZbRpZ1sfyhVMr+C2O8kOxPj+HDDk=", "owner": "Mic92", "repo": "nix-index-database", - "rev": "c782f2a4f6fc94311ab5ef31df2f1149a1856181", + "rev": "f8e04fbcebcc24cebc91989981bd45f69b963ed7", "type": "github" }, "original": { @@ -279,11 +279,11 @@ ] }, "locked": { - "lastModified": 1706411424, - "narHash": "sha256-BzziJYucEZvdCE985vjPoo3ztWcmUiSQ1wJ2CoT6jCc=", + "lastModified": 1705806513, + "narHash": "sha256-FcOmNjhHFfPz2udZbRpZ1sfyhVMr+C2O8kOxPj+HDDk=", "owner": "Mic92", "repo": "nix-index-database", - "rev": "c782f2a4f6fc94311ab5ef31df2f1149a1856181", + "rev": "f8e04fbcebcc24cebc91989981bd45f69b963ed7", "type": "github" }, "original": { @@ -328,11 +328,11 @@ }, "nixpkgs-raw": { "locked": { - "lastModified": 1706373441, - "narHash": "sha256-S1hbgNbVYhuY2L05OANWqmRzj4cElcbLuIkXTb69xkk=", + "lastModified": 1706098335, + "narHash": "sha256-r3dWjT8P9/Ah5m5ul4WqIWD8muj5F+/gbCdjiNVBKmU=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "56911ef3403a9318b7621ce745f5452fb9ef6867", + "rev": "a77ab169a83a4175169d78684ddd2e54486ac651", "type": "github" }, "original": { @@ -343,11 +343,11 @@ }, "nixpkgs-unstable-raw": { "locked": { - "lastModified": 1706191920, - "narHash": "sha256-eLihrZAPZX0R6RyM5fYAWeKVNuQPYjAkCUBr+JNvtdE=", + "lastModified": 1705856552, + "narHash": "sha256-JXfnuEf5Yd6bhMs/uvM67/joxYKoysyE3M2k6T3eWbg=", "owner": "NixOS", "repo": "nixpkgs", - "rev": "ae5c332cbb5827f6b1f02572496b141021de335f", + "rev": "612f97239e2cc474c13c9dafa0df378058c5ad8d", "type": "github" }, "original": { @@ -358,11 +358,11 @@ }, "nur": { "locked": { - "lastModified": 1706515086, - "narHash": "sha256-tjWRh6hv2kNGFRV8ESjg3TZDuA6B4Ls1fnru5z89SNA=", + "lastModified": 1706251467, + "narHash": "sha256-uR6TEvf0PNFgIKLTImc4mt00qS7H5op9r7B++vdj2Io=", "owner": "nix-community", "repo": "NUR", - "rev": "0416c8902949ad6fcfe91af8d9f9efa66bce8bef", + "rev": "1e00872abadba03e57c74975b05527e418620986", "type": "github" }, "original": { @@ -381,11 +381,11 @@ ] }, "locked": { - "lastModified": 1706365059, - "narHash": "sha256-2+M4vliRmSHQwGb1q1krg5lWKYiX7rF/B9GF4AlzXW4=", + "lastModified": 1705946102, + "narHash": "sha256-0hy28d7qC7Hv6/KV7xefa03b2xFJIGHPYAPcsVwzTeM=", "owner": "pjones", "repo": "plasma-manager", - "rev": "64f31bc95c22b04896111e4c9921d3e1122c0a92", + "rev": "4d209a083aeefa7d4f8060de14896399bbc8f30b", "type": "github" }, "original": { @@ -453,11 +453,11 @@ ] }, "locked": { - "lastModified": 1706491024, - "narHash": "sha256-oRjvADEBpKayeA/UVYGtdt1Idv5sMP9EBcqoQg4cOYo=", + "lastModified": 1706232054, + "narHash": "sha256-AjwmVarytm50C6CNvybuabXhu0zewLOXuxcmuiGyz8U=", "owner": "nix-community", "repo": "nix-vscode-extensions", - "rev": "0d4c78fbb27b522aa50b2783c20fcec7f88f48d0", + "rev": "e7db4235e6fcdff0d55925b4309bf8fe900501f0", "type": "github" }, "original": { diff --git a/flake.nix b/flake.nix index 6f78a57..57d78bc 100644 --- a/flake.nix +++ b/flake.nix @@ -62,7 +62,7 @@ inputs.nixpkgs.follows = "nixpkgs-unstable-raw"; }; - nix-flatpak.url = "github:gmodena/nix-flatpak/main"; + nix-flatpak.url = github:gmodena/nix-flatpak/main; nur.url = "github:nix-community/NUR"; @@ -80,6 +80,7 @@ name = "patched-nixpkgs-unstable"; src = nixpkgs-unstable-raw; patches = [ + ./nixpkgs-patches/pr281207.patch ./nixpkgs-patches/pr277661.patch ]; }; diff --git a/nixpkgs-patches/pr281207.patch b/nixpkgs-patches/pr281207.patch new file mode 100644 index 0000000..c9bea43 --- /dev/null +++ b/nixpkgs-patches/pr281207.patch @@ -0,0 +1,117 @@ +From 1f3bcdf27686e9d2c43a53cf3ba7cd0ee7978ff5 Mon Sep 17 00:00:00 2001 +From: TomaSajt <62384384+TomaSajt@users.noreply.github.com> +Date: Tue, 16 Jan 2024 00:58:48 +0100 +Subject: [PATCH] mysql-workbench: fix build, small refactor + +--- + .../misc/mysql-workbench/default.nix | 28 ++++++++++++------- + .../misc/mysql-workbench/fix-xml2.patch | 25 +++++++++++++++++ + 2 files changed, 43 insertions(+), 10 deletions(-) + create mode 100644 pkgs/applications/misc/mysql-workbench/fix-xml2.patch + +diff --git a/pkgs/applications/misc/mysql-workbench/default.nix b/pkgs/applications/misc/mysql-workbench/default.nix +index ff9fb7c6b2cbe2..6b5933b3ebd0fd 100644 +--- a/pkgs/applications/misc/mysql-workbench/default.nix ++++ b/pkgs/applications/misc/mysql-workbench/default.nix +@@ -1,4 +1,5 @@ +-{ lib, stdenv ++{ lib ++, stdenv + , fetchurl + , substituteAll + , cmake +@@ -44,13 +45,14 @@ + + let + inherit (python3.pkgs) paramiko pycairo pyodbc; +-in stdenv.mkDerivation rec { ++in ++stdenv.mkDerivation (finalAttrs: { + pname = "mysql-workbench"; + version = "8.0.34"; + + src = fetchurl { +- url = "https://cdn.mysql.com//Downloads/MySQLGUITools/mysql-workbench-community-${version}-src.tar.gz"; +- sha256 = "sha256-ub/D6HRtXOvX+lai71t1UjMmMzBsz5ljCrJCuf9aq7U="; ++ url = "https://cdn.mysql.com/Downloads/MySQLGUITools/mysql-workbench-community-${finalAttrs.version}-src.tar.gz"; ++ hash = "sha256-ub/D6HRtXOvX+lai71t1UjMmMzBsz5ljCrJCuf9aq7U="; + }; + + patches = [ +@@ -75,6 +77,9 @@ in stdenv.mkDerivation rec { + src = ./fix-swig-build.patch; + cairoDev = "${cairo.dev}"; + }) ++ ++ # a newer libxml2 version has changed some interfaces ++ ./fix-xml2.patch + ]; + + # 1. have it look for 4.12.0 instead of 4.11.1 +@@ -138,6 +143,10 @@ in stdenv.mkDerivation rec { + patchShebangs tools/get_wb_version.sh + ''; + ++ # GCC 13: error: 'int64_t' in namespace 'std' does not name a type ++ # when updating the version make sure this is still needed ++ env.CXXFLAGS = "-include cstdint"; ++ + env.NIX_CFLAGS_COMPILE = toString ([ + # error: 'OGRErr OGRSpatialReference::importFromWkt(char**)' is deprecated + "-Wno-error=deprecated-declarations" +@@ -183,7 +192,7 @@ in stdenv.mkDerivation rec { + done + ''; + +- meta = with lib; { ++ meta = { + description = "Visual MySQL database modeling, administration and querying tool"; + longDescription = '' + MySQL Workbench is a modeling tool that allows you to design +@@ -191,11 +200,10 @@ in stdenv.mkDerivation rec { + and query development modules where you can manage MySQL server instances + and execute SQL queries. + ''; +- + homepage = "http://wb.mysql.com/"; +- license = licenses.gpl2; +- maintainers = [ ]; +- platforms = platforms.linux; ++ license = lib.licenses.gpl2Only; + mainProgram = "mysql-workbench"; ++ maintainers = with lib.maintainers; [ tomasajt ]; ++ platforms = lib.platforms.linux; + }; +-} ++}) +diff --git a/pkgs/applications/misc/mysql-workbench/fix-xml2.patch b/pkgs/applications/misc/mysql-workbench/fix-xml2.patch +new file mode 100644 +index 00000000000000..857c3f9add4cae +--- /dev/null ++++ b/pkgs/applications/misc/mysql-workbench/fix-xml2.patch +@@ -0,0 +1,25 @@ ++diff --git a/library/grt/src/grt.h b/library/grt/src/grt.h ++index 47bfd63..59e664b 100644 ++--- a/library/grt/src/grt.h +++++ b/library/grt/src/grt.h ++@@ -35,6 +35,7 @@ ++ #include ++ #include ++ #include +++#include ++ #include "base/threading.h" ++ #include ++ #include ++diff --git a/library/grt/src/unserializer.cpp b/library/grt/src/unserializer.cpp ++index 6dda76d..a6f6a3c 100644 ++--- a/library/grt/src/unserializer.cpp +++++ b/library/grt/src/unserializer.cpp ++@@ -401,7 +401,7 @@ ValueRef internal::Unserializer::unserialize_xmldata(const char *data, size_t si ++ xmlDocPtr doc = xmlReadMemory(data, (int)size, NULL, NULL, XML_PARSE_NOENT); ++ ++ if (!doc) { ++- xmlErrorPtr error = xmlGetLastError(); +++ const xmlError* error = xmlGetLastError(); ++ ++ if (error) ++ throw std::runtime_error(base::strfmt("Could not parse XML data. Line %d, %s", error->line, error->message));