summary refs log tree commit diff
diff options
context:
space:
mode:
-rw-r--r--pkgs/applications/networking/instant-messengers/deltachat-desktop/default.nix95
-rw-r--r--pkgs/applications/networking/instant-messengers/deltachat-desktop/package.json58
-rwxr-xr-xpkgs/applications/networking/instant-messengers/deltachat-desktop/update.sh42
-rw-r--r--pkgs/applications/networking/instant-messengers/deltachat-electron/default.nix40
-rw-r--r--pkgs/applications/networking/instant-messengers/kdeltachat/default.nix1
-rw-r--r--pkgs/development/libraries/libdeltachat/default.nix24
-rw-r--r--pkgs/development/libraries/libdeltachat/no-static-lib.patch39
-rw-r--r--pkgs/development/node-packages/default.nix4
-rw-r--r--pkgs/development/node-packages/node-packages.json1
-rw-r--r--pkgs/development/node-packages/node-packages.nix1526
-rw-r--r--pkgs/top-level/aliases.nix1
-rw-r--r--pkgs/top-level/all-packages.nix10
12 files changed, 1730 insertions, 111 deletions
diff --git a/pkgs/applications/networking/instant-messengers/deltachat-desktop/default.nix b/pkgs/applications/networking/instant-messengers/deltachat-desktop/default.nix
new file mode 100644
index 00000000000..a4f3a221243
--- /dev/null
+++ b/pkgs/applications/networking/instant-messengers/deltachat-desktop/default.nix
@@ -0,0 +1,95 @@
+{ lib
+, copyDesktopItems
+, electron
+, esbuild
+, fetchFromGitHub
+, libdeltachat
+, makeDesktopItem
+, makeWrapper
+, nodePackages
+, pkg-config
+, stdenv
+, CoreServices
+}:
+
+let
+  electronExec = if stdenv.isDarwin then
+    "${electron}/Applications/Electron.app/Contents/MacOS/Electron"
+  else
+    "${electron}/bin/electron";
+in nodePackages.deltachat-desktop.override rec {
+  pname = "deltachat-desktop";
+  version = "unstable-2021-08-04";
+
+  src = fetchFromGitHub {
+    owner = "deltachat";
+    repo = "deltachat-desktop";
+    rev = "2c47d6b7e46f4f68c7eb45508ab9e145af489ea1";
+    sha256 = "03b6j3cj2yanvsargh6q57bf1llg17yrqgmd14lp0wkam767kkfa";
+  };
+
+  nativeBuildInputs = [
+    esbuild
+    makeWrapper
+    pkg-config
+  ] ++ lib.optionals stdenv.isLinux [
+    copyDesktopItems
+  ];
+
+  buildInputs = [
+    libdeltachat
+  ] ++ lib.optionals stdenv.isDarwin [
+    CoreServices
+  ];
+
+  ELECTRON_SKIP_BINARY_DOWNLOAD = "1";
+  USE_SYSTEM_LIBDELTACHAT = "true";
+  VERSION_INFO_GIT_REF = src.rev;
+
+  postInstall = let
+    keep = lib.concatMapStringsSep " " (file: "! -name ${file}") [
+      "_locales" "build" "html-dist" "images" "index.js"
+      "node_modules" "themes" "tsc-dist"
+    ];
+  in ''
+    rm -r node_modules/deltachat-node/{deltachat-core-rust,prebuilds,src}
+
+    patchShebangs node_modules/sass/sass.js
+
+    npm run build
+
+    npm prune --production
+
+    find . -mindepth 1 -maxdepth 1 ${keep} -print0 | xargs -0 rm -r
+
+    mkdir -p $out/share/icons/hicolor/scalable/apps
+    ln -s $out/lib/node_modules/deltachat-desktop/build/icon.png \
+      $out/share/icons/hicolor/scalable/apps/deltachat.png
+
+    makeWrapper ${electronExec} $out/bin/deltachat \
+      --add-flags $out/lib/node_modules/deltachat-desktop
+  '';
+
+  desktopItems = lib.singleton (makeDesktopItem {
+    name = "deltachat";
+    exec = "deltachat %u";
+    icon = "deltachat";
+    desktopName = "Delta Chat";
+    genericName = "Delta Chat";
+    comment = meta.description;
+    categories = "Network;InstantMessaging;Chat;";
+    extraEntries = ''
+      StartupWMClass=DeltaChat
+      MimeType=x-scheme-handler/openpgp4fpr;x-scheme-handler/mailto;
+    '';
+  });
+
+  passthru.updateScript = ./update.sh;
+
+  meta = with lib; {
+    description = "Email-based instant messaging for Desktop";
+    homepage = "https://github.com/deltachat/deltachat-desktop";
+    license = licenses.gpl3Plus;
+    maintainers = with maintainers; [ dotlambda ];
+  };
+}
diff --git a/pkgs/applications/networking/instant-messengers/deltachat-desktop/package.json b/pkgs/applications/networking/instant-messengers/deltachat-desktop/package.json
new file mode 100644
index 00000000000..f332352e4b6
--- /dev/null
+++ b/pkgs/applications/networking/instant-messengers/deltachat-desktop/package.json
@@ -0,0 +1,58 @@
+{
+  "name": "deltachat-desktop",
+  "version": "1.20.3",
+  "dependencies": {
+    "@blueprintjs/core": "^3.22.3",
+    "@mapbox/geojson-extent": "^1.0.0",
+    "application-config": "^1.0.1",
+    "array-differ": "^3.0.0",
+    "classnames": "^2.3.1",
+    "debounce": "^1.2.0",
+    "deltachat-node": "1.56.2",
+    "emoji-js-clean": "^4.0.0",
+    "emoji-mart": "^3.0.0",
+    "emoji-regex": "^9.2.2",
+    "error-stack-parser": "^2.0.6",
+    "filesize": "^6.1.0",
+    "fs-extra": "^8.1.0",
+    "mapbox-gl": "^1.12.0",
+    "mime-types": "^2.1.31",
+    "moment": "^2.27.0",
+    "node-fetch": "^2.6.1",
+    "path-browserify": "^1.0.1",
+    "punycode": "^2.1.1",
+    "rc": "^1.2.8",
+    "react": "^17.0.2",
+    "react-dom": "^17.0.2",
+    "react-qr-reader": "^2.2.1",
+    "react-qr-svg": "^2.1.0",
+    "react-string-replace": "^0.4.4",
+    "react-virtualized": "^9.21.2",
+    "simple-markdown": "^0.7.1",
+    "source-map-support": "^0.5.19",
+    "tempy": "^0.3.0",
+    "url-parse": "^1.4.7",
+    "use-debounce": "^3.3.0",
+    "@babel/core": "^7.7.7",
+    "@types/debounce": "^1.2.0",
+    "@babel/preset-env": "^7.7.7",
+    "@babel/preset-react": "^7.7.4",
+    "@types/emoji-mart": "^3.0.2",
+    "@types/fs-extra": "^8.0.1",
+    "@types/mapbox-gl": "^0.54.5",
+    "@types/mime-types": "^2.1.0",
+    "@types/node": "^14.14.20",
+    "@types/node-fetch": "^2.5.7",
+    "@types/prop-types": "^15.7.3",
+    "@types/rc": "^1.1.0",
+    "@types/react": "^16.9.17",
+    "@types/react-dom": "^16.9.4",
+    "@types/react-virtualized": "^9.21.10",
+    "@types/url-parse": "^1.4.3",
+    "electron": "^13.1.6",
+    "glob-watcher": "^5.0.5",
+    "sass": "^1.26.5",
+    "typescript": "^3.9.7",
+    "xml-js": "^1.6.8"
+  }
+}
diff --git a/pkgs/applications/networking/instant-messengers/deltachat-desktop/update.sh b/pkgs/applications/networking/instant-messengers/deltachat-desktop/update.sh
new file mode 100755
index 00000000000..162de501e61
--- /dev/null
+++ b/pkgs/applications/networking/instant-messengers/deltachat-desktop/update.sh
@@ -0,0 +1,42 @@
+#! /usr/bin/env nix-shell
+#! nix-shell -i bash -p curl jq nix-prefetch
+
+set -euo pipefail
+cd "$(dirname "$0")"
+
+owner=deltachat
+repo=deltachat-desktop
+nixpkgs=../../../../..
+
+rev=$(
+    curl -s "https://api.github.com/repos/$owner/$repo/releases" |
+    jq 'map(select(.prerelease | not)) | .[0].tag_name' --raw-output
+)
+ver=$(echo "$rev" | sed 's/^v//')
+old_ver=$(sed -n 's/.*\bversion = "\(.*\)".*/\1/p' default.nix)
+if [ "$ver" = "$old_ver" ]; then
+    echo "Up to date: $ver"
+    exit
+fi
+echo "$old_ver -> $ver"
+
+sha256=$(nix-prefetch -f "$nixpkgs" deltachat-desktop --rev "$rev")
+sed -e "s#\\bversion = \".*\"#version = \"$ver\"#" \
+    -e "s#\\bsha256 = \".*\"#sha256 = \"$sha256\"#" \
+    -i default.nix
+src=$(nix-build "$nixpkgs" -A deltachat-desktop.src --no-out-link)
+
+jq '{ name, version, dependencies: (.dependencies + (.devDependencies | del(.["@typescript-eslint/eslint-plugin","@typescript-eslint/parser","esbuild","electron-builder","electron-devtools-installer","electron-notarize","esbuild","eslint","eslint-config-prettier","eslint-plugin-react-hooks","hallmark","prettier","tape","testcafe","testcafe-browser-provider-electron","testcafe-react-selectors","walk"]))) }' \
+    "$src/package.json" > package.json.new
+
+if cmp --quiet package.json{.new,}; then
+    echo "package.json not changed, skip updating nodePackages"
+    rm package.json.new
+else
+    echo "package.json changed, updating nodePackages"
+    mv package.json{.new,}
+
+    pushd ../../../../development/node-packages
+    ./generate.sh
+    popd
+fi
diff --git a/pkgs/applications/networking/instant-messengers/deltachat-electron/default.nix b/pkgs/applications/networking/instant-messengers/deltachat-electron/default.nix
deleted file mode 100644
index ee43e4475d7..00000000000
--- a/pkgs/applications/networking/instant-messengers/deltachat-electron/default.nix
+++ /dev/null
@@ -1,40 +0,0 @@
-{ lib, fetchurl, appimageTools, gsettings-desktop-schemas, gtk3 }:
-
-let
-  pname = "deltachat-electron";
-  version = "1.20.3";
-  name = "${pname}-${version}";
-
-  src = fetchurl {
-    url = "https://download.delta.chat/desktop/v${version}/DeltaChat-${version}.AppImage";
-    sha256 = "sha256-u0YjaXb+6BOBWaZANPcaxp7maqlBWAtecSsCGbr67dk=";
-  };
-
-  appimageContents = appimageTools.extract { inherit name src; };
-
-in
-appimageTools.wrapType2 {
-  inherit name src;
-
-  profile = ''
-    export XDG_DATA_DIRS=${gsettings-desktop-schemas}/share/gsettings-schemas/${gsettings-desktop-schemas.name}:${gtk3}/share/gsettings-schemas/${gtk3.name}:$XDG_DATA_DIRS
-  '';
-
-  extraInstallCommands = ''
-    mv $out/bin/${name} $out/bin/${pname}
-    install -m 444 -D \
-      ${appimageContents}/deltachat-desktop.desktop \
-      $out/share/applications/${pname}.desktop
-    substituteInPlace $out/share/applications/${pname}.desktop \
-      --replace 'Exec=AppRun' 'Exec=${pname}'
-    cp -r ${appimageContents}/usr/share/icons $out/share
-  '';
-
-  meta = with lib; {
-    description = "Electron client for DeltaChat";
-    homepage = "https://delta.chat/";
-    license = licenses.gpl3;
-    maintainers = with maintainers; [ ehmry ];
-    platforms = [ "x86_64-linux" ];
-  };
-}
diff --git a/pkgs/applications/networking/instant-messengers/kdeltachat/default.nix b/pkgs/applications/networking/instant-messengers/kdeltachat/default.nix
index 3266b36194f..dabec65b3cd 100644
--- a/pkgs/applications/networking/instant-messengers/kdeltachat/default.nix
+++ b/pkgs/applications/networking/instant-messengers/kdeltachat/default.nix
@@ -66,5 +66,6 @@ in mkDerivation rec {
     homepage = "https://git.sr.ht/~link2xt/kdeltachat";
     license = licenses.gpl3Plus;
     maintainers = with maintainers; [ dotlambda ];
+    platforms = platforms.linux;
   };
 }
diff --git a/pkgs/development/libraries/libdeltachat/default.nix b/pkgs/development/libraries/libdeltachat/default.nix
index 77315776aca..6a0a6ae5c87 100644
--- a/pkgs/development/libraries/libdeltachat/default.nix
+++ b/pkgs/development/libraries/libdeltachat/default.nix
@@ -1,12 +1,17 @@
 { lib
 , stdenv
 , fetchFromGitHub
+, fetchpatch
 , cmake
 , openssl
 , perl
 , pkg-config
 , rustPlatform
 , sqlite
+, fixDarwinDylibNames
+, CoreFoundation
+, Security
+, libiconv
 }:
 
 stdenv.mkDerivation rec {
@@ -20,6 +25,15 @@ stdenv.mkDerivation rec {
     sha256 = "sha256-ZyVEI6q+GzHLEFH01TxS7NqwT7zqVgg0vduyf/fibB8=";
   };
 
+  patches = [
+    # https://github.com/deltachat/deltachat-core-rust/pull/2589
+    (fetchpatch {
+      url = "https://github.com/deltachat/deltachat-core-rust/commit/408467e85d04fbbfd6bed5908d84d9e995943487.patch";
+      sha256 = "1j2ywaazglgl6370js34acrg0wrh0b7krqg05dfjf65n527lzn59";
+    })
+    ./no-static-lib.patch
+  ];
+
   cargoDeps = rustPlatform.fetchCargoTarball {
     inherit src;
     name = "${pname}-${version}";
@@ -33,11 +47,17 @@ stdenv.mkDerivation rec {
   ] ++ (with rustPlatform; [
     cargoSetupHook
     rust.cargo
-  ]);
+  ]) ++ lib.optionals stdenv.isDarwin [
+    fixDarwinDylibNames
+  ];
 
   buildInputs = [
     openssl
     sqlite
+  ] ++ lib.optionals stdenv.isDarwin [
+    CoreFoundation
+    Security
+    libiconv
   ];
 
   checkInputs = with rustPlatform; [
@@ -49,7 +69,7 @@ stdenv.mkDerivation rec {
     homepage = "https://github.com/deltachat/deltachat-core-rust/";
     changelog = "https://github.com/deltachat/deltachat-core-rust/blob/${version}/CHANGELOG.md";
     license = licenses.mpl20;
-    platforms = platforms.linux;
     maintainers = with maintainers; [ dotlambda ];
+    platforms = platforms.unix;
   };
 }
diff --git a/pkgs/development/libraries/libdeltachat/no-static-lib.patch b/pkgs/development/libraries/libdeltachat/no-static-lib.patch
new file mode 100644
index 00000000000..95238cf8852
--- /dev/null
+++ b/pkgs/development/libraries/libdeltachat/no-static-lib.patch
@@ -0,0 +1,39 @@
+diff --git a/CMakeLists.txt b/CMakeLists.txt
+index fe7abe08..acdbe0d6 100644
+--- a/CMakeLists.txt
++++ b/CMakeLists.txt
+@@ -13,7 +13,6 @@ find_program(CARGO cargo)
+ 
+ add_custom_command(
+ 	OUTPUT
+-	"target/release/libdeltachat.a"
+ 	"target/release/libdeltachat.${DYNAMIC_EXT}"
+ 	"target/release/pkgconfig/deltachat.pc"
+         COMMAND
+@@ -38,13 +37,11 @@ add_custom_target(
+ 	lib_deltachat
+ 	ALL
+ 	DEPENDS
+-	"target/release/libdeltachat.a"
+ 	"target/release/libdeltachat.${DYNAMIC_EXT}"
+ 	"target/release/pkgconfig/deltachat.pc"
+ )
+ 
+ include(GNUInstallDirs)
+ install(FILES "deltachat-ffi/deltachat.h" DESTINATION ${CMAKE_INSTALL_INCLUDEDIR})
+-install(FILES "target/release/libdeltachat.a" DESTINATION ${CMAKE_INSTALL_LIBDIR})
+ install(FILES "target/release/libdeltachat.${DYNAMIC_EXT}" DESTINATION ${CMAKE_INSTALL_LIBDIR})
+ install(FILES "target/release/pkgconfig/deltachat.pc" DESTINATION ${CMAKE_INSTALL_LIBDIR}/pkgconfig)
+diff --git a/deltachat-ffi/Cargo.toml b/deltachat-ffi/Cargo.toml
+index a34a27ba..cf354abb 100644
+--- a/deltachat-ffi/Cargo.toml
++++ b/deltachat-ffi/Cargo.toml
+@@ -12,7 +12,7 @@ categories = ["cryptography", "std", "email"]
+ 
+ [lib]
+ name = "deltachat"
+-crate-type = ["cdylib", "staticlib"]
++crate-type = ["cdylib"]
+ 
+ [dependencies]
+ deltachat = { path = "../", default-features = false }
diff --git a/pkgs/development/node-packages/default.nix b/pkgs/development/node-packages/default.nix
index c632a4cbc1e..fe1bdd6754c 100644
--- a/pkgs/development/node-packages/default.nix
+++ b/pkgs/development/node-packages/default.nix
@@ -46,6 +46,10 @@ let
       '';
     };
 
+    deltachat-desktop = super."deltachat-desktop-../../applications/networking/instant-messengers/deltachat-desktop".override {
+      meta.broken = true; # use the top-level package instead
+    };
+
     fast-cli = super.fast-cli.override ({
       nativeBuildInputs = [ pkgs.makeWrapper ];
       prePatch = ''
diff --git a/pkgs/development/node-packages/node-packages.json b/pkgs/development/node-packages/node-packages.json
index eacd0c89d90..3ce357cecb2 100644
--- a/pkgs/development/node-packages/node-packages.json
+++ b/pkgs/development/node-packages/node-packages.json
@@ -78,6 +78,7 @@
 , "csslint"
 , "dat"
 , "degit"
+, {"deltachat-desktop": "../../applications/networking/instant-messengers/deltachat-desktop"}
 , "dhcp"
 , "diagnostic-languageserver"
 , "dockerfile-language-server-nodejs"
diff --git a/pkgs/development/node-packages/node-packages.nix b/pkgs/development/node-packages/node-packages.nix
index e00b4d1081e..35bb2db3f10 100644
--- a/pkgs/development/node-packages/node-packages.nix
+++ b/pkgs/development/node-packages/node-packages.nix
@@ -652,13 +652,13 @@ let
         sha512 = "OhsyMrqygfk5v8HmWwOzlYjJrtLaFhF34MrfG/Z73DgYCI6ojNUTUp2TYbtnjo8PegeJp12eamsNettCQjKjVw==";
       };
     };
-    "@babel/parser-7.15.0" = {
+    "@babel/parser-7.15.2" = {
       name = "_at_babel_slash_parser";
       packageName = "@babel/parser";
-      version = "7.15.0";
+      version = "7.15.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/parser/-/parser-7.15.0.tgz";
-        sha512 = "0v7oNOjr6YT9Z2RAOTv4T9aP+ubfx4Q/OhVtAet7PFDt0t9Oy6Jn+/rfC6b8HJ5zEqrQCiMxJfgtHpmIminmJQ==";
+        url = "https://registry.npmjs.org/@babel/parser/-/parser-7.15.2.tgz";
+        sha512 = "bMJXql1Ss8lFnvr11TZDH4ArtwlAS5NG9qBmdiFW2UHHm6MVoR+GDc5XE2b9K938cyjc9O6/+vjjcffLDtfuDg==";
       };
     };
     "@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.14.5" = {
@@ -1507,13 +1507,13 @@ let
         sha512 = "64RiH2ON4/y8qYtoa8rUiyam/tUVyGqRyNYhe+vCRGmjnV4bUlZvY+mwd0RrmLoCpJpdq3RsrNqKb7SJdw/4kw==";
       };
     };
-    "@babel/standalone-7.15.1" = {
+    "@babel/standalone-7.15.2" = {
       name = "_at_babel_slash_standalone";
       packageName = "@babel/standalone";
-      version = "7.15.1";
+      version = "7.15.2";
       src = fetchurl {
-        url = "https://registry.npmjs.org/@babel/standalone/-/standalone-7.15.1.tgz";
-        sha512 = "OJvIUtmXWEnTFvm+/TSMFkJK9vmbOF1wNmu/vbU18/Hlj9E6JdrkWxTkwbrsM1UjLtyb4w+pwZ/A1C4XZXorXg==";
+        url = "https://registry.npmjs.org/@babel/standalone/-/standalone-7.15.2.tgz";
+        sha512 = "q/DsJPZ2v0PjH4UL0DaEOCT/pERnXPsfERLbILXuzS8BWF6NuBAxJwf2/h/XiyJZZ4X/7BVrmoW6H7u3H6nDYQ==";
       };
     };
     "@babel/template-7.14.5" = {
@@ -1552,6 +1552,24 @@ let
         sha512 = "OBvfqnllOIdX4ojTHpwZbpvz4j3EWyjkZEdmjH0/cgsd6QOdSgU8rLSk6ard/pcW7rlmjdVSX/AWOaORR1uNOQ==";
       };
     };
+    "@blueprintjs/core-3.47.0" = {
+      name = "_at_blueprintjs_slash_core";
+      packageName = "@blueprintjs/core";
+      version = "3.47.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@blueprintjs/core/-/core-3.47.0.tgz";
+        sha512 = "u+bfmCyPXwKZMnwY4+e/iWjO2vDUvr8hA8ydmV0afyvcEe7Sh85UPEorIgQ/CBuRIbVMNm8FpLsFzDxgkfrCNA==";
+      };
+    };
+    "@blueprintjs/icons-3.27.0" = {
+      name = "_at_blueprintjs_slash_icons";
+      packageName = "@blueprintjs/icons";
+      version = "3.27.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@blueprintjs/icons/-/icons-3.27.0.tgz";
+        sha512 = "ItRioyrr2s70chclj5q38HS9omKOa15b3JZXv9JcMIFz+6w6rAcoAH7DA+5xIs27bFjax/SdAZp/eYXSw0+QpA==";
+      };
+    };
     "@braintree/sanitize-url-3.1.0" = {
       name = "_at_braintree_slash_sanitize-url";
       packageName = "@braintree/sanitize-url";
@@ -2929,6 +2947,15 @@ let
         sha512 = "TvRRRd//a3q+JhpSh5PaHJfnP4oLM/0eZikyDh2Z+eaJpIZP+vZwdlpPd10neTsPq1zfJX8weRjYLFHNpoMZVg==";
       };
     };
+    "@hypnosphi/create-react-context-0.3.1" = {
+      name = "_at_hypnosphi_slash_create-react-context";
+      packageName = "@hypnosphi/create-react-context";
+      version = "0.3.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@hypnosphi/create-react-context/-/create-react-context-0.3.1.tgz";
+        sha512 = "V1klUed202XahrWJLLOT3EXNeCpFHCcJntdFGI15ntCwau+jfT386w7OFTMaCqOgXUH1fa0w/I1oZs+i/Rfr0A==";
+      };
+    };
     "@iarna/toml-2.2.5" = {
       name = "_at_iarna_slash_toml";
       packageName = "@iarna/toml";
@@ -3784,6 +3811,78 @@ let
         sha512 = "1DpKU0Z5ThltBwjNySMC14g0CkbyhCaz9FkhxqNsZI6uAPJXFS8cMXlBKo26FJ8ZuW6S9GCMcR9IO5k2X5/9Fg==";
       };
     };
+    "@mapbox/extent-0.4.0" = {
+      name = "_at_mapbox_slash_extent";
+      packageName = "@mapbox/extent";
+      version = "0.4.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@mapbox/extent/-/extent-0.4.0.tgz";
+        sha1 = "3e591f32e1f0c3981c864239f7b0ac06e610f8a9";
+      };
+    };
+    "@mapbox/geojson-coords-0.0.1" = {
+      name = "_at_mapbox_slash_geojson-coords";
+      packageName = "@mapbox/geojson-coords";
+      version = "0.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@mapbox/geojson-coords/-/geojson-coords-0.0.1.tgz";
+        sha512 = "cdMlqmDl1vzAl2E0XC2zIuqM74vdet0Dq2el49haJEVbGpC8se40j5UcsnBK/gsvZzrume30fon1u/aSYMXG4Q==";
+      };
+    };
+    "@mapbox/geojson-extent-1.0.0" = {
+      name = "_at_mapbox_slash_geojson-extent";
+      packageName = "@mapbox/geojson-extent";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@mapbox/geojson-extent/-/geojson-extent-1.0.0.tgz";
+        sha512 = "OWW/Tw7OkKHoogXjQJNILjLd2d4JZzO/elc5Qr08VNwFSIPpSnJgyaEGO2xRPqNuWDLr4RocuqmC0FcQWPgeOA==";
+      };
+    };
+    "@mapbox/geojson-normalize-0.0.1" = {
+      name = "_at_mapbox_slash_geojson-normalize";
+      packageName = "@mapbox/geojson-normalize";
+      version = "0.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@mapbox/geojson-normalize/-/geojson-normalize-0.0.1.tgz";
+        sha1 = "1da1e6b3a7add3ad29909b30f438f60581b7cd80";
+      };
+    };
+    "@mapbox/geojson-rewind-0.5.1" = {
+      name = "_at_mapbox_slash_geojson-rewind";
+      packageName = "@mapbox/geojson-rewind";
+      version = "0.5.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@mapbox/geojson-rewind/-/geojson-rewind-0.5.1.tgz";
+        sha512 = "eL7fMmfTBKjrb+VFHXCGv9Ot0zc3C0U+CwXo1IrP+EPwDczLoXv34Tgq3y+2mPSFNVUXgU42ILWJTC7145KPTA==";
+      };
+    };
+    "@mapbox/geojson-types-1.0.2" = {
+      name = "_at_mapbox_slash_geojson-types";
+      packageName = "@mapbox/geojson-types";
+      version = "1.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@mapbox/geojson-types/-/geojson-types-1.0.2.tgz";
+        sha512 = "e9EBqHHv3EORHrSfbR9DqecPNn+AmuAoQxV6aL8Xu30bJMJR1o8PZLZzpk1Wq7/NfCbuhmakHTPYRhoqLsXRnw==";
+      };
+    };
+    "@mapbox/jsonlint-lines-primitives-2.0.2" = {
+      name = "_at_mapbox_slash_jsonlint-lines-primitives";
+      packageName = "@mapbox/jsonlint-lines-primitives";
+      version = "2.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@mapbox/jsonlint-lines-primitives/-/jsonlint-lines-primitives-2.0.2.tgz";
+        sha1 = "ce56e539f83552b58d10d672ea4d6fc9adc7b234";
+      };
+    };
+    "@mapbox/mapbox-gl-supported-1.5.0" = {
+      name = "_at_mapbox_slash_mapbox-gl-supported";
+      packageName = "@mapbox/mapbox-gl-supported";
+      version = "1.5.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@mapbox/mapbox-gl-supported/-/mapbox-gl-supported-1.5.0.tgz";
+        sha512 = "/PT1P6DNf7vjEEiPkVIRJkvibbqWtqnyGaBz3nfRdcxclNSnSdaLU5tfAgcD7I8Yt5i+L19s406YLl1koLnLbg==";
+      };
+    };
     "@mapbox/node-pre-gyp-1.0.5" = {
       name = "_at_mapbox_slash_node-pre-gyp";
       packageName = "@mapbox/node-pre-gyp";
@@ -3793,6 +3892,51 @@ let
         sha512 = "4srsKPXWlIxp5Vbqz5uLfBN+du2fJChBoYn/f2h991WLdk7jUvcSk/McVLSv/X+xQIPI8eGD5GjrnygdyHnhPA==";
       };
     };
+    "@mapbox/point-geometry-0.1.0" = {
+      name = "_at_mapbox_slash_point-geometry";
+      packageName = "@mapbox/point-geometry";
+      version = "0.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@mapbox/point-geometry/-/point-geometry-0.1.0.tgz";
+        sha1 = "8a83f9335c7860effa2eeeca254332aa0aeed8f2";
+      };
+    };
+    "@mapbox/tiny-sdf-1.2.5" = {
+      name = "_at_mapbox_slash_tiny-sdf";
+      packageName = "@mapbox/tiny-sdf";
+      version = "1.2.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@mapbox/tiny-sdf/-/tiny-sdf-1.2.5.tgz";
+        sha512 = "cD8A/zJlm6fdJOk6DqPUV8mcpyJkRz2x2R+/fYcWDYG3oWbG7/L7Yl/WqQ1VZCjnL9OTIMAn6c+BC5Eru4sQEw==";
+      };
+    };
+    "@mapbox/unitbezier-0.0.0" = {
+      name = "_at_mapbox_slash_unitbezier";
+      packageName = "@mapbox/unitbezier";
+      version = "0.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@mapbox/unitbezier/-/unitbezier-0.0.0.tgz";
+        sha1 = "15651bd553a67b8581fb398810c98ad86a34524e";
+      };
+    };
+    "@mapbox/vector-tile-1.3.1" = {
+      name = "_at_mapbox_slash_vector-tile";
+      packageName = "@mapbox/vector-tile";
+      version = "1.3.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@mapbox/vector-tile/-/vector-tile-1.3.1.tgz";
+        sha512 = "MCEddb8u44/xfQ3oD+Srl/tNcQoqTw3goGk2oLsrFxOTc3dUp+kAnby3PvAeeBYSMSjSPD1nd1AJA6W49WnoUw==";
+      };
+    };
+    "@mapbox/whoots-js-3.1.0" = {
+      name = "_at_mapbox_slash_whoots-js";
+      packageName = "@mapbox/whoots-js";
+      version = "3.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@mapbox/whoots-js/-/whoots-js-3.1.0.tgz";
+        sha512 = "Es6WcD0nO5l+2BOQS4uLfNPYQaNDfbot3X1XUoloz+x0mPDS3eeORZJl06HXjwBG1fOGwCRnzK88LMdxKRrd6Q==";
+      };
+    };
     "@mark.probst/typescript-json-schema-0.32.0" = {
       name = "_at_mark.probst_slash_typescript-json-schema";
       packageName = "@mark.probst/typescript-json-schema";
@@ -6412,6 +6556,15 @@ let
         sha512 = "vt+kDhq/M2ayberEtJcIN/hxXy1Pk+59g2FV/ZQceeaTyCtCucjL2Q7FXlFjtWn4n15KCr1NE2lNNFhp0lEThw==";
       };
     };
+    "@types/debounce-1.2.0" = {
+      name = "_at_types_slash_debounce";
+      packageName = "@types/debounce";
+      version = "1.2.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@types/debounce/-/debounce-1.2.0.tgz";
+        sha512 = "bWG5wapaWgbss9E238T0R6bfo5Fh3OkeoSt245CM7JJwVwpw6MEBCbIxLq5z8KzsE3uJhzcIuQkyiZmzV3M/Dw==";
+      };
+    };
     "@types/debug-4.1.7" = {
       name = "_at_types_slash_debug";
       packageName = "@types/debug";
@@ -6430,6 +6583,15 @@ let
         sha512 = "/C8kTMRTNiNuWGl5nEyKbPiMv6HA+0RbEXzFhFBEzASM6+oa4tJro9b8nj7eRlOFfuLdzUU+DS/GPDlvvzMOhA==";
       };
     };
+    "@types/dom4-2.0.2" = {
+      name = "_at_types_slash_dom4";
+      packageName = "@types/dom4";
+      version = "2.0.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@types/dom4/-/dom4-2.0.2.tgz";
+        sha512 = "Rt4IC1T7xkCWa0OG1oSsPa0iqnxlDeQqKXZAHrQGLb7wFGncWm85MaxKUjAGejOrUynOgWlFi4c6S6IyJwoK4g==";
+      };
+    };
     "@types/download-8.0.1" = {
       name = "_at_types_slash_download";
       packageName = "@types/download";
@@ -6457,6 +6619,15 @@ let
         sha512 = "kM2g9Fdk/du24fKuuQhA/LBleFR4Z4JP2MVKpLxQQSzofF1uJ06D+c05zfLDAkkDO55aEeNwJih0gHrE/Ci20A==";
       };
     };
+    "@types/emoji-mart-3.0.5" = {
+      name = "_at_types_slash_emoji-mart";
+      packageName = "@types/emoji-mart";
+      version = "3.0.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@types/emoji-mart/-/emoji-mart-3.0.5.tgz";
+        sha512 = "bsMEXVPrasIJ03u61msIKMMiL7Hh6dGQ3Gcz3CjytTxTQKQRdf/g0owWTSSL5mvKNgu9UfgornrF6qqClPk1Jw==";
+      };
+    };
     "@types/emscripten-1.39.5" = {
       name = "_at_types_slash_emscripten";
       packageName = "@types/emscripten";
@@ -6601,6 +6772,15 @@ let
         sha512 = "FKVPOCFbhCvZxpVAMhdBdTfVfXUpsh15wFHgqOKxh9N9vzWZVuWCSijZ5T4U34XYNnuj2oduh6xcs1i+LPI+BQ==";
       };
     };
+    "@types/fs-extra-8.1.2" = {
+      name = "_at_types_slash_fs-extra";
+      packageName = "@types/fs-extra";
+      version = "8.1.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@types/fs-extra/-/fs-extra-8.1.2.tgz";
+        sha512 = "SvSrYXfWSc7R4eqnOzbQF4TZmfpNSM9FrSWLU3EUnWBuyZqNBOrv1B1JA3byUDPUl9z4Ab3jeZG2eDdySlgNMg==";
+      };
+    };
     "@types/fs-extra-9.0.12" = {
       name = "_at_types_slash_fs-extra";
       packageName = "@types/fs-extra";
@@ -6610,6 +6790,15 @@ let
         sha512 = "I+bsBr67CurCGnSenZZ7v94gd3tc3+Aj2taxMT4yu4ABLuOgOjeFxX3dokG24ztSRg5tnT00sL8BszO7gSMoIw==";
       };
     };
+    "@types/geojson-7946.0.8" = {
+      name = "_at_types_slash_geojson";
+      packageName = "@types/geojson";
+      version = "7946.0.8";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@types/geojson/-/geojson-7946.0.8.tgz";
+        sha512 = "1rkryxURpr6aWP7R786/UQOkJ3PcpQiWkAXBmdWc7ryFWqN6a4xfK7BtjXvFBKO9LjQ+MWQSWxYeZX1OApnArA==";
+      };
+    };
     "@types/glob-7.1.4" = {
       name = "_at_types_slash_glob";
       packageName = "@types/glob";
@@ -6907,6 +7096,15 @@ let
         sha512 = "5tXH6Bx/kNGd3MgffdmP4dy2Z+G4eaXw0SE81Tq3BNadtnMR5/ySMzX4SLEzHJzSmPNn4HIdpQsBvXMUykr58w==";
       };
     };
+    "@types/mapbox-gl-0.54.5" = {
+      name = "_at_types_slash_mapbox-gl";
+      packageName = "@types/mapbox-gl";
+      version = "0.54.5";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@types/mapbox-gl/-/mapbox-gl-0.54.5.tgz";
+        sha512 = "h0MqA7rtP88vuMepODf1oomJLeuRAZfOiYdeGS3NYO4TMQs237TkA+bNehy7V5nfyCjPRuKrb0fnWMjncHak0g==";
+      };
+    };
     "@types/material-design-lite-1.1.16" = {
       name = "_at_types_slash_material-design-lite";
       packageName = "@types/material-design-lite";
@@ -6934,6 +7132,15 @@ let
         sha512 = "YATxVxgRqNH6nHEIsvg6k2Boc1JHI9ZbH5iWFFv/MTkchz3b1ieGDa5T0a9RznNdI0KhVbdbWSN+KWWrQZRxTw==";
       };
     };
+    "@types/mime-types-2.1.0" = {
+      name = "_at_types_slash_mime-types";
+      packageName = "@types/mime-types";
+      version = "2.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@types/mime-types/-/mime-types-2.1.0.tgz";
+        sha1 = "9ca52cda363f699c69466c2a6ccdaad913ea7a73";
+      };
+    };
     "@types/minimatch-3.0.5" = {
       name = "_at_types_slash_minimatch";
       packageName = "@types/minimatch";
@@ -7213,6 +7420,15 @@ let
         sha512 = "a+fLdul8OczRvPWPf8eTb6wPhxzyWQwRGhNN0ugtOtk6yFOG53i2LwXaA0d2D6bsJlWxi6eCuGZLGoCcdOlWZA==";
       };
     };
+    "@types/prop-types-15.7.4" = {
+      name = "_at_types_slash_prop-types";
+      packageName = "@types/prop-types";
+      version = "15.7.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@types/prop-types/-/prop-types-15.7.4.tgz";
+        sha512 = "rZ5drC/jWjrArrS8BR6SIr4cWpW09RNTYt9AMZo3Jwwif+iacXAqgVjm0B0Bv/S1jhDXKHqRVNCbACkJ89RAnQ==";
+      };
+    };
     "@types/pug-2.0.5" = {
       name = "_at_types_slash_pug";
       packageName = "@types/pug";
@@ -7258,6 +7474,42 @@ let
         sha512 = "EEhsLsD6UsDM1yFhAvy0Cjr6VwmpMWqFBCb9w07wVugF7w9nfajxLuVmngTIpgS6svCnm6Vaw+MZhoDCKnOfsw==";
       };
     };
+    "@types/rc-1.1.0" = {
+      name = "_at_types_slash_rc";
+      packageName = "@types/rc";
+      version = "1.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@types/rc/-/rc-1.1.0.tgz";
+        sha512 = "qw1q31xPnaeExbOA1daA3nfeKW2uZQN4Xg8QqZDM3vsXPHK/lyDpjWXJQIcrByRDcBzZJ3ccchSMMTDtCWgFpA==";
+      };
+    };
+    "@types/react-16.14.12" = {
+      name = "_at_types_slash_react";
+      packageName = "@types/react";
+      version = "16.14.12";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@types/react/-/react-16.14.12.tgz";
+        sha512 = "7nOJgNsRbARhZhvwPm7cnzahtzEi5VJ9OvcQk8ExEEb1t+zaFklwLVkJz7G1kfxX4X/mDa/icTmzE0vTmqsqBg==";
+      };
+    };
+    "@types/react-dom-16.9.14" = {
+      name = "_at_types_slash_react-dom";
+      packageName = "@types/react-dom";
+      version = "16.9.14";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@types/react-dom/-/react-dom-16.9.14.tgz";
+        sha512 = "FIX2AVmPTGP30OUJ+0vadeIFJJ07Mh1m+U0rxfgyW34p3rTlXI+nlenvAxNn4BP36YyI9IJ/+UJ7Wu22N1pI7A==";
+      };
+    };
+    "@types/react-virtualized-9.21.13" = {
+      name = "_at_types_slash_react-virtualized";
+      packageName = "@types/react-virtualized";
+      version = "9.21.13";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@types/react-virtualized/-/react-virtualized-9.21.13.tgz";
+        sha512 = "tCIQ5wDKj+QJ3sMzjPKSLY0AXsznt+ovAUcq+JCLjPBOcAHbPt4FraGT9HKYEFfmp9E6+ELuN49i5bWtuBmi3w==";
+      };
+    };
     "@types/request-2.48.5" = {
       name = "_at_types_slash_request";
       packageName = "@types/request";
@@ -7348,6 +7600,15 @@ let
         sha512 = "iZUcRrGuz/Tbg3loODpW7vrQJkUtpY2fFSf4ELqqkApcS2TkZ1msk7ie8iZPB86lDOP8QOTTmuvWjc5S0R9OjQ==";
       };
     };
+    "@types/scheduler-0.16.2" = {
+      name = "_at_types_slash_scheduler";
+      packageName = "@types/scheduler";
+      version = "0.16.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@types/scheduler/-/scheduler-0.16.2.tgz";
+        sha512 = "hppQEBDmlwhFAXKJX2KnWLYu5yMfi91yazPb2l+lbJiwW+wdo1gNeRA+3RgNSO39WYX2euey41KEwnqesU2Jew==";
+      };
+    };
     "@types/semver-7.3.8" = {
       name = "_at_types_slash_semver";
       packageName = "@types/semver";
@@ -7492,6 +7753,15 @@ let
         sha512 = "awrJu8yML4E/xTwr2EMatC+HBnHGoDxc2+ImA9QyeUELI1S7dOCIZcyjki1rkwoA8P2D2NVgLAJLjnclkdLtAw==";
       };
     };
+    "@types/url-parse-1.4.3" = {
+      name = "_at_types_slash_url-parse";
+      packageName = "@types/url-parse";
+      version = "1.4.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/@types/url-parse/-/url-parse-1.4.3.tgz";
+        sha512 = "4kHAkbV/OfW2kb5BLVUuUMoumB3CP8rHqlw48aHvFy5tf9ER0AfOonBlX29l/DD68G70DmyhRlSYfQPSYpC5Vw==";
+      };
+    };
     "@types/uuid-8.3.1" = {
       name = "_at_types_slash_uuid";
       packageName = "@types/uuid";
@@ -10102,6 +10372,15 @@ let
         sha1 = "dcfca9e509300e4c3b2d467965fe50c56fc75e66";
       };
     };
+    "application-config-1.0.1" = {
+      name = "application-config";
+      packageName = "application-config";
+      version = "1.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/application-config/-/application-config-1.0.1.tgz";
+        sha1 = "5aa2e2a5ed6abd2e5d1d473d3596f574044fe9e7";
+      };
+    };
     "application-config-path-0.1.0" = {
       name = "application-config-path";
       packageName = "application-config-path";
@@ -18014,31 +18293,31 @@ let
         sha512 = "SaMnchL//WwU2Ot1hhkPflE8gzo7uq1FGvUJ8GKmi3TOU7rGTHIU+eir1WGf6qOtTyxdfdcp10yPdGZ59sQ3hw==";
       };
     };
-    "core-js-3.16.0" = {
+    "core-js-3.16.1" = {
       name = "core-js";
       packageName = "core-js";
-      version = "3.16.0";
+      version = "3.16.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/core-js/-/core-js-3.16.0.tgz";
-        sha512 = "5+5VxRFmSf97nM8Jr2wzOwLqRo6zphH2aX+7KsAUONObyzakDNq2G/bgbhinxB4PoV9L3aXQYhiDKyIKWd2c8g==";
+        url = "https://registry.npmjs.org/core-js/-/core-js-3.16.1.tgz";
+        sha512 = "AAkP8i35EbefU+JddyWi12AWE9f2N/qr/pwnDtWz4nyUIBGMJPX99ANFFRSw6FefM374lDujdtLDyhN2A/btHw==";
       };
     };
-    "core-js-compat-3.16.0" = {
+    "core-js-compat-3.16.1" = {
       name = "core-js-compat";
       packageName = "core-js-compat";
-      version = "3.16.0";
+      version = "3.16.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.16.0.tgz";
-        sha512 = "5D9sPHCdewoUK7pSUPfTF7ZhLh8k9/CoJXWUEo+F1dZT5Z1DVgcuRqUKhjeKW+YLb8f21rTFgWwQJiNw1hoZ5Q==";
+        url = "https://registry.npmjs.org/core-js-compat/-/core-js-compat-3.16.1.tgz";
+        sha512 = "NHXQXvRbd4nxp9TEmooTJLUf94ySUG6+DSsscBpTftN1lQLQ4LjnWvc7AoIo4UjDsFF3hB8Uh5LLCRRdaiT5MQ==";
       };
     };
-    "core-js-pure-3.16.0" = {
+    "core-js-pure-3.16.1" = {
       name = "core-js-pure";
       packageName = "core-js-pure";
-      version = "3.16.0";
+      version = "3.16.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/core-js-pure/-/core-js-pure-3.16.0.tgz";
-        sha512 = "wzlhZNepF/QA9yvx3ePDgNGudU5KDB8lu/TRPKelYA/QtSnkS/cLl2W+TIdEX1FAFcBr0YpY7tPDlcmXJ7AyiQ==";
+        url = "https://registry.npmjs.org/core-js-pure/-/core-js-pure-3.16.1.tgz";
+        sha512 = "TyofCdMzx0KMhi84mVRS8rL1XsRk2SPUNz2azmth53iRN0/08Uim9fdhQTaZTG1LqaXHYVci4RDHka6WrXfnvg==";
       };
     };
     "core-util-is-1.0.2" = {
@@ -18752,6 +19031,15 @@ let
         sha1 = "a6602dff7e04a8306dc0db9a551e92e8b5662ad8";
       };
     };
+    "csscolorparser-1.0.3" = {
+      name = "csscolorparser";
+      packageName = "csscolorparser";
+      version = "1.0.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/csscolorparser/-/csscolorparser-1.0.3.tgz";
+        sha1 = "b34f391eea4da8f3e98231e2ccd8df9c041f171b";
+      };
+    };
     "cssesc-3.0.0" = {
       name = "cssesc";
       packageName = "cssesc";
@@ -18887,6 +19175,15 @@ let
         sha512 = "AZL67abkUzIuvcHqk7c09cezpGNcxUxU4Ioi/05xHk4DQeTkWmGYftIE6ctU6AEt+Gn4n1lDStOtj7FKycP71A==";
       };
     };
+    "csstype-3.0.8" = {
+      name = "csstype";
+      packageName = "csstype";
+      version = "3.0.8";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/csstype/-/csstype-3.0.8.tgz";
+        sha512 = "jXKhWqXPmlUeoQnF/EhTtTl4C9SnrxSH/jZUih3jmO6lBKr99rP3/+FmrMj4EFpOXzMtXHAZkd3x0E6h6Fgflw==";
+      };
+    };
     "csurf-1.11.0" = {
       name = "csurf";
       packageName = "csurf";
@@ -20633,6 +20930,15 @@ let
         sha1 = "84c6e159b81904fdca59a0ef44cd870d31250f9a";
       };
     };
+    "deltachat-node-1.56.2" = {
+      name = "deltachat-node";
+      packageName = "deltachat-node";
+      version = "1.56.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/deltachat-node/-/deltachat-node-1.56.2.tgz";
+        sha512 = "bM/fVTM1GVgXpvGZFiMB1qKxhnJvFx4ssqZVddsTjGTlzQ+9dRIZmkWIFvUzIGCyLWMcfNJZcUZgLgKdbz+liw==";
+      };
+    };
     "denodeify-1.2.1" = {
       name = "denodeify";
       packageName = "denodeify";
@@ -21515,6 +21821,24 @@ let
         sha512 = "gd3ypIPfOMr9h5jIKq8E3sHOTCjeirnl0WK5ZdS1AW0Odt0b1PaWaHdJ4Qk4klv+YB9aJBS7mESXjFoDQPu6DA==";
       };
     };
+    "dom-helpers-3.4.0" = {
+      name = "dom-helpers";
+      packageName = "dom-helpers";
+      version = "3.4.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/dom-helpers/-/dom-helpers-3.4.0.tgz";
+        sha512 = "LnuPJ+dwqKDIyotW1VzmOZ5TONUN7CwkCR5hrgawTUbkBGYdeoNLZo6nNfGkCrjtE1nXXaj7iMMpDa8/d9WoIA==";
+      };
+    };
+    "dom-helpers-5.2.1" = {
+      name = "dom-helpers";
+      packageName = "dom-helpers";
+      version = "5.2.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/dom-helpers/-/dom-helpers-5.2.1.tgz";
+        sha512 = "nRCa7CK3VTrM2NmGkIy4cbK7IZlgBE/PYMn55rrXefr5xXDP0LdtfPnblFDoVdcAfslJ7or6iqAUnx0CCGIWQA==";
+      };
+    };
     "dom-serialize-2.2.1" = {
       name = "dom-serialize";
       packageName = "dom-serialize";
@@ -21578,6 +21902,15 @@ let
         sha512 = "6QvTW9mrGeIegrFXdtQi9pk7O/nSK6lSdXW2eqUspN5LWD7UTji2Fqw5V2YLjBpHEoU9Xl/eUWNpDeZvoyOv2w==";
       };
     };
+    "dom4-2.1.6" = {
+      name = "dom4";
+      packageName = "dom4";
+      version = "2.1.6";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/dom4/-/dom4-2.1.6.tgz";
+        sha512 = "JkCVGnN4ofKGbjf5Uvc8mmxaATIErKQKSgACdBXpsQ3fY6DlIpAyWfiBSrGkttATssbDCp3psiAKWXk5gmjycA==";
+      };
+    };
     "domain-browser-1.2.0" = {
       name = "domain-browser";
       packageName = "domain-browser";
@@ -22064,6 +22397,15 @@ let
         sha512 = "vV0Hem3zAGkJAyU7JSjixeU66rwdynTAa1vofCrSA5fEln+m67Az9CcnkVD776/fsN/UjIWmBDoNRS6t6G9RfA==";
       };
     };
+    "earcut-2.2.3" = {
+      name = "earcut";
+      packageName = "earcut";
+      version = "2.2.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/earcut/-/earcut-2.2.3.tgz";
+        sha512 = "iRDI1QeCQIhMCZk48DRDMVgQSSBDmbzzNhnxIo+pwx3swkfjMh6vh0nWLq1NdvGHLKH6wIrAM3vQWeTj6qeoug==";
+      };
+    };
     "easy-stack-1.0.1" = {
       name = "easy-stack";
       packageName = "easy-stack";
@@ -22172,6 +22514,15 @@ let
         sha512 = "9lt9Zse4hPucPkoP7FHDF0LQAlGyF9JVpnClFLFH3aSSbxmyoqINRpp/9wePWJTUl4KOQwRL72Iw3InHPDkoGw==";
       };
     };
+    "electron-13.1.8" = {
+      name = "electron";
+      packageName = "electron";
+      version = "13.1.8";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/electron/-/electron-13.1.8.tgz";
+        sha512 = "ei2ZyyG81zUOlvm5Zxri668TdH5GNLY0wF+XrC2FRCqa8AABAPjJIWTRkhFEr/H6PDVPNZjMPvSs3XhHyVVk2g==";
+      };
+    };
     "electron-notarize-1.1.0" = {
       name = "electron-notarize";
       packageName = "electron-notarize";
@@ -22318,6 +22669,24 @@ let
         sha512 = "3IqSwmO+N2ZGeuhDyhV/TIOJFUbkChi53bcasSNRE7Yd+4eorbbYz4e53TpMECt38NtYkZNupQCZRlwdAYA42A==";
       };
     };
+    "emoji-js-clean-4.0.0" = {
+      name = "emoji-js-clean";
+      packageName = "emoji-js-clean";
+      version = "4.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/emoji-js-clean/-/emoji-js-clean-4.0.0.tgz";
+        sha512 = "6WZ/WH61ABR/s3TZpRW+nXBSRu6xMTdZSGjNTHo1ptv1vRjwOfbzEPQp9mtgbCi1vkFsFi1SZYz/UIliVxvLwg==";
+      };
+    };
+    "emoji-mart-3.0.1" = {
+      name = "emoji-mart";
+      packageName = "emoji-mart";
+      version = "3.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/emoji-mart/-/emoji-mart-3.0.1.tgz";
+        sha512 = "sxpmMKxqLvcscu6mFn9ITHeZNkGzIvD0BSNFE/LJESPbCA8s1jM6bCDPjWbV31xHq7JXaxgpHxLB54RCbBZSlg==";
+      };
+    };
     "emoji-named-characters-1.0.2" = {
       name = "emoji-named-characters";
       packageName = "emoji-named-characters";
@@ -22372,6 +22741,15 @@ let
         sha512 = "MSjYzcWNOA0ewAHpz0MxpYFvwg6yjy1NG3xteoqz644VCo/RPgnr1/GGt+ic3iJTzQ8Eu3TdM14SawnVUmGE6A==";
       };
     };
+    "emoji-regex-9.2.2" = {
+      name = "emoji-regex";
+      packageName = "emoji-regex";
+      version = "9.2.2";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/emoji-regex/-/emoji-regex-9.2.2.tgz";
+        sha512 = "L18DaJsXSUk2+42pv8mLs5jJT2hqFkFE4j21wOmgbUqsZ2hL72NsUU785g9RXgo3s0ZNgVl42TiHp3ZtOv/Vyg==";
+      };
+    };
     "emoji-server-1.0.0" = {
       name = "emoji-server";
       packageName = "emoji-server";
@@ -24487,6 +24865,15 @@ let
         sha512 = "AEo4zm+TenK7zQorGK1f9mJ8L14hnTDi2ZQPR+Mub1NX8zimka1mXpV5LpH8x9HoUmFSHZCfLHqWvp0Y4FxxzQ==";
       };
     };
+    "extract-zip-1.7.0" = {
+      name = "extract-zip";
+      packageName = "extract-zip";
+      version = "1.7.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/extract-zip/-/extract-zip-1.7.0.tgz";
+        sha512 = "xoh5G1W/PB0/27lXgMQyIhP5DSY/LhoCsOyZgb+6iMmRtCwVBo55uKaMoEYrDCKQhWvqEip5ZPKAc6eFNyf/MA==";
+      };
+    };
     "extract-zip-2.0.1" = {
       name = "extract-zip";
       packageName = "extract-zip";
@@ -26881,6 +27268,24 @@ let
         sha512 = "3hN7NaskYvMDLQY55gnW3NQ+mesEAepTqlg+VEbj7zzqEMBVNhzcGYYeqFo/TlYz6eQiFcp1HcsCZO+nGgS8zg==";
       };
     };
+    "geojson-flatten-1.0.4" = {
+      name = "geojson-flatten";
+      packageName = "geojson-flatten";
+      version = "1.0.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/geojson-flatten/-/geojson-flatten-1.0.4.tgz";
+        sha512 = "PpscUXxO6dvvhZxtwuqiI5v+1C/IQYPJRMWoQeaF2oohJgfGYSHKVAe8L+yUqF34PH/hmq9JlwmO+juPw+95/Q==";
+      };
+    };
+    "geojson-vt-3.2.1" = {
+      name = "geojson-vt";
+      packageName = "geojson-vt";
+      version = "3.2.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/geojson-vt/-/geojson-vt-3.2.1.tgz";
+        sha512 = "EvGQQi/zPrDA6zr6BnJD/YhwAkBP8nnJ9emh3EnHQKVMfg/MRVtPbMYdgVy/IaEmn4UfagD2a6fafPDL5hbtwg==";
+      };
+    };
     "get-amd-module-type-3.0.0" = {
       name = "get-amd-module-type";
       packageName = "get-amd-module-type";
@@ -27043,6 +27448,15 @@ let
         sha512 = "jp4tHawyV7+fkkSKyvjuLZswblUtz+SQKzSWnBbii16BuZksJlU1wuBYXY75r+duh/llF1ur6oNwi+2ZzjKZ7g==";
       };
     };
+    "get-stdin-7.0.0" = {
+      name = "get-stdin";
+      packageName = "get-stdin";
+      version = "7.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/get-stdin/-/get-stdin-7.0.0.tgz";
+        sha512 = "zRKcywvrXlXsA0v0i9Io4KDRaAw7+a1ZpjRwl9Wox8PFlVCCHra7E9c4kqXCoCM9nR5tBkaTTZRBoCm60bFqTQ==";
+      };
+    };
     "get-stdin-8.0.0" = {
       name = "get-stdin";
       packageName = "get-stdin";
@@ -27367,6 +27781,15 @@ let
         sha512 = "0YCjVpE3pS5XWlN3J4X7AiAx65+nqAI54LndtVFnQZB6G/FVLkZH8y8V6R3cIoOQR4pUdfwQGd1iwyoXHJ4Qfw==";
       };
     };
+    "gl-matrix-3.3.0" = {
+      name = "gl-matrix";
+      packageName = "gl-matrix";
+      version = "3.3.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/gl-matrix/-/gl-matrix-3.3.0.tgz";
+        sha512 = "COb7LDz+SXaHtl/h4LeaFcNdJdAQSDeVqjiIihSXNrkWObZLhDI4hIkZC11Aeqp7bcE72clzB0BnDXr2SmslRA==";
+      };
+    };
     "glob-3.2.11" = {
       name = "glob";
       packageName = "glob";
@@ -28241,6 +28664,15 @@ let
         sha1 = "3042d9adec2a1ded6a7707a9ed2380f8a17a430e";
       };
     };
+    "grid-index-1.1.0" = {
+      name = "grid-index";
+      packageName = "grid-index";
+      version = "1.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/grid-index/-/grid-index-1.1.0.tgz";
+        sha512 = "HZRwumpOGUrHyxO5bqKZL0B0GlUpwtCAzZ42sgxUPniu33R1LSFH5yrIcBCHjkctCAh3mtWKcKd9J4vDDdeVHA==";
+      };
+    };
     "gridsome-helper-json-1.0.3" = {
       name = "gridsome-helper-json";
       packageName = "gridsome-helper-json";
@@ -34218,6 +34650,15 @@ let
         sha1 = "313e66bc1e5cc06e438bc1b7499c2e5c56acb6a2";
       };
     };
+    "jsqr-1.4.0" = {
+      name = "jsqr";
+      packageName = "jsqr";
+      version = "1.4.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/jsqr/-/jsqr-1.4.0.tgz";
+        sha512 = "dxLob7q65Xg2DvstYkRpkYtmKm2sPJ9oFhrhmudT1dZvNFFTlroai3AWSpLey/w5vMcLBXRgOJsbXpdN9HzU/A==";
+      };
+    };
     "jstat-1.9.4" = {
       name = "jstat";
       packageName = "jstat";
@@ -34516,6 +34957,15 @@ let
         sha512 = "cCMcil4jwMm7behpXGiQfXJA29sko/Gd/26iCsr53Dv5Jn2iHbHyEb14dm9uVrIijUXx6Zz1WhlFhHE6DckvkQ==";
       };
     };
+    "kdbush-3.0.0" = {
+      name = "kdbush";
+      packageName = "kdbush";
+      version = "3.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/kdbush/-/kdbush-3.0.0.tgz";
+        sha512 = "hRkd6/XW4HTsA9vjVpY9tuXJYLSlelnkTmVFu4M9/7MIYQtFcHpbugAU7UbOfjOiVSVYl2fqgBuJ32JUmRo5Ew==";
+      };
+    };
     "keep-alive-agent-0.0.1" = {
       name = "keep-alive-agent";
       packageName = "keep-alive-agent";
@@ -37918,6 +38368,15 @@ let
         sha1 = "ecdca8f13144e660f1b5bd41f12f3479d98dfb8f";
       };
     };
+    "mapbox-gl-1.13.1" = {
+      name = "mapbox-gl";
+      packageName = "mapbox-gl";
+      version = "1.13.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/mapbox-gl/-/mapbox-gl-1.13.1.tgz";
+        sha512 = "GSyubcoSF5MyaP8z+DasLu5v7KmDK2pp4S5+VQ5WdVQUOaAqQY4jwl4JpcdNho3uWm2bIKs7x1l7q3ynGmW60g==";
+      };
+    };
     "mark.js-8.11.1" = {
       name = "mark.js";
       packageName = "mark.js";
@@ -40609,6 +41068,15 @@ let
         sha1 = "ca17e1eafb3b9155b5e4c21062210e348a9dbe91";
       };
     };
+    "murmurhash-js-1.0.0" = {
+      name = "murmurhash-js";
+      packageName = "murmurhash-js";
+      version = "1.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/murmurhash-js/-/murmurhash-js-1.0.0.tgz";
+        sha1 = "b06278e21fc6c37fa5313732b0412bcb6ae15f51";
+      };
+    };
     "mustache-2.3.2" = {
       name = "mustache";
       packageName = "mustache";
@@ -42339,6 +42807,15 @@ let
         sha512 = "DlL+XwOy3NxAQ8xuC0okPgK46iuVNAK01YN7RueYBqqFeGsBjV9XmCAzAdgt+667bCl5kPh9EqKKDwnaPG1I7A==";
       };
     };
+    "normalize.css-8.0.1" = {
+      name = "normalize.css";
+      packageName = "normalize.css";
+      version = "8.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/normalize.css/-/normalize.css-8.0.1.tgz";
+        sha512 = "qizSNPO93t1YUuUhP22btGOo3chcvDFqFaj2TRybP0DMxkHOCTYwp3n34fel4a31ORXy4m1Xq0Gyqpb5m33qIg==";
+      };
+    };
     "now-and-later-2.0.1" = {
       name = "now-and-later";
       packageName = "now-and-later";
@@ -45634,6 +46111,15 @@ let
         sha1 = "fe5a34b0cbce12b5aa6a2b403ee2e73b602f1445";
       };
     };
+    "pbf-3.2.1" = {
+      name = "pbf";
+      packageName = "pbf";
+      version = "3.2.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/pbf/-/pbf-3.2.1.tgz";
+        sha512 = "ClrV7pNOn7rtmoQVF4TS1vyU0WhYRnP92fzbfF75jAIwpnzdJXf8iTd4CMEqO4yUenH6NDqLiwjqlh6QgZzgLQ==";
+      };
+    };
     "pbkdf2-3.1.2" = {
       name = "pbkdf2";
       packageName = "pbkdf2";
@@ -46354,6 +46840,15 @@ let
         sha1 = "a93683ba41dc82fffccccb1c859ae40921f98229";
       };
     };
+    "popper.js-1.16.1" = {
+      name = "popper.js";
+      packageName = "popper.js";
+      version = "1.16.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/popper.js/-/popper.js-1.16.1.tgz";
+        sha512 = "Wb4p1J4zyFTbM+u6WuO4XstYx4Ky9Cewe4DWrel7B0w6VVICvPwdOpotjzcf6eD8TsckVnIMNONQyPIUFOUbCQ==";
+      };
+    };
     "portfinder-1.0.28" = {
       name = "portfinder";
       packageName = "portfinder";
@@ -47084,6 +47579,15 @@ let
         sha512 = "W1779iVHGfq0Fvh2PROhCe2QhB8mEErgqzo1wpIt36tCgChafP+hbXIhLDOM8ePJrZcFs0vkNEtdibEWVqChqw==";
       };
     };
+    "potpack-1.0.1" = {
+      name = "potpack";
+      packageName = "potpack";
+      version = "1.0.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/potpack/-/potpack-1.0.1.tgz";
+        sha512 = "15vItUAbViaYrmaB/Pbw7z6qX2xENbFSTA7Ii4tgbPtasxm5v6ryKhKtL91tpWovDJzTiZqdwzhcFBCwiMVdVw==";
+      };
+    };
     "prebuild-install-5.3.0" = {
       name = "prebuild-install";
       packageName = "prebuild-install";
@@ -49109,6 +49613,15 @@ let
         sha512 = "8YOJEHtxpySA3fFDyCRxA+UUV+fA+rTWnuWvylOK/NCjhY+b4ocCtmu8TtsWb+mYeU+GCHf/S66KZF/AsteKHg==";
       };
     };
+    "qr.js-0.0.0" = {
+      name = "qr.js";
+      packageName = "qr.js";
+      version = "0.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/qr.js/-/qr.js-0.0.0.tgz";
+        sha1 = "cace86386f59a0db8050fa90d9b6b0e88a1e364f";
+      };
+    };
     "qrcode-1.4.4" = {
       name = "qrcode";
       packageName = "qrcode";
@@ -49379,6 +49892,15 @@ let
         sha512 = "WuyALRjWPDGtt/wzJiadO5AXY+8hZ80hVpe6MyivgraREW751X3SbhRvG3eLKOYN+8VEvqLcf3wdnt44Z4S4SA==";
       };
     };
+    "quickselect-2.0.0" = {
+      name = "quickselect";
+      packageName = "quickselect";
+      version = "2.0.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/quickselect/-/quickselect-2.0.0.tgz";
+        sha512 = "RKJ22hX8mHe3Y6wH/N3wCM6BWtjaxIyyUIkpHOvfFnxdI4yD4tBXEBKSbriGujF6jnSVkJrffuo6vxACiSSxIw==";
+      };
+    };
     "quicktask-1.0.1" = {
       name = "quicktask";
       packageName = "quicktask";
@@ -49919,6 +50441,33 @@ let
         sha512 = "fBASbA6LnOU9dOU2eW7aQ8xmYBSXUIWr+UmF9b1efZBazGNO+rcXT/icdKnYm2pTwcRylVUYwW7H1PHfLekVzA==";
       };
     };
+    "react-popper-1.3.11" = {
+      name = "react-popper";
+      packageName = "react-popper";
+      version = "1.3.11";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/react-popper/-/react-popper-1.3.11.tgz";
+        sha512 = "VSA/bS+pSndSF2fiasHK/PTEEAyOpX60+H5EPAjoArr8JGm+oihu4UbrqcEBpQibJxBVCpYyjAX7abJ+7DoYVg==";
+      };
+    };
+    "react-qr-reader-2.2.1" = {
+      name = "react-qr-reader";
+      packageName = "react-qr-reader";
+      version = "2.2.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/react-qr-reader/-/react-qr-reader-2.2.1.tgz";
+        sha512 = "EL5JEj53u2yAOgtpAKAVBzD/SiKWn0Bl7AZy6ZrSf1lub7xHwtaXe6XSx36Wbhl1VMGmvmrwYMRwO1aSCT2fwA==";
+      };
+    };
+    "react-qr-svg-2.4.0" = {
+      name = "react-qr-svg";
+      packageName = "react-qr-svg";
+      version = "2.4.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/react-qr-svg/-/react-qr-svg-2.4.0.tgz";
+        sha512 = "3Q/LyjBi+eWjJ0WyZvBzyY3rCMlUBZyRnbTcKbXQ39J1bd0/vgqYhXoYai7XlDTS42Ro50BBY4TmeUVyIZh+nA==";
+      };
+    };
     "react-reconciler-0.24.0" = {
       name = "react-reconciler";
       packageName = "react-reconciler";
@@ -49946,6 +50495,15 @@ let
         sha512 = "2FoTQzRNTncBVtnzxFOk2mCpcfxQpenBMbk5kSVBg5UcPqV9fRbgY2zhb7GTWWOlpFmAxhClBDlIq8Rsubz1yQ==";
       };
     };
+    "react-string-replace-0.4.4" = {
+      name = "react-string-replace";
+      packageName = "react-string-replace";
+      version = "0.4.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/react-string-replace/-/react-string-replace-0.4.4.tgz";
+        sha512 = "FAMkhxmDpCsGTwTZg7p/2v+/GTmxAp73so3fbSvlAcBBX36ujiGRNEaM/1u+jiYQrArhns+7eE92g2pi5E5FUA==";
+      };
+    };
     "react-tabs-3.2.2" = {
       name = "react-tabs";
       packageName = "react-tabs";
@@ -49955,6 +50513,15 @@ let
         sha512 = "/o52eGKxFHRa+ssuTEgSM8qORnV4+k7ibW+aNQzKe+5gifeVz8nLxCrsI9xdRhfb0wCLdgIambIpb1qCxaMN+A==";
       };
     };
+    "react-transition-group-2.9.0" = {
+      name = "react-transition-group";
+      packageName = "react-transition-group";
+      version = "2.9.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/react-transition-group/-/react-transition-group-2.9.0.tgz";
+        sha512 = "+HzNTCHpeQyl4MJ/bdE0u6XRMe9+XG/+aL4mCxVN4DnPBQ0/5bfHWPDuOZUzYdMj94daZaZdCCc1Dzt9R/xSSg==";
+      };
+    };
     "react-universal-component-4.5.0" = {
       name = "react-universal-component";
       packageName = "react-universal-component";
@@ -49964,6 +50531,15 @@ let
         sha512 = "dBUC6afvSAQhDcE4oh1eTmfU29W0O2eZhcGXnfGUTulXkU8ejuWqlJWXXrSMx5iV1H6LNgj2NJMj3BtBMfBNhA==";
       };
     };
+    "react-virtualized-9.22.3" = {
+      name = "react-virtualized";
+      packageName = "react-virtualized";
+      version = "9.22.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/react-virtualized/-/react-virtualized-9.22.3.tgz";
+        sha512 = "MKovKMxWTcwPSxE1kK1HcheQTWfuCxAuBoSTf2gwyMM21NdX/PXUhnoP8Uc5dRKd+nKm8v41R36OellhdCpkrw==";
+      };
+    };
     "read-1.0.7" = {
       name = "read";
       packageName = "read";
@@ -51881,6 +52457,15 @@ let
         sha1 = "00a0940f98cd501aeaaac316411d9adc52b31ab1";
       };
     };
+    "resize-observer-polyfill-1.5.1" = {
+      name = "resize-observer-polyfill";
+      packageName = "resize-observer-polyfill";
+      version = "1.5.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/resize-observer-polyfill/-/resize-observer-polyfill-1.5.1.tgz";
+        sha512 = "LwZrotdHOo12nQuZlHEmtuXdqGoOD0OhaxopaNFxWzInpEgaLWoVuAMbTzixuosCx2nEG58ngzW3vxdWoxIgdg==";
+      };
+    };
     "resolve-1.20.0" = {
       name = "resolve";
       packageName = "resolve";
@@ -52007,6 +52592,15 @@ let
         sha1 = "686f70b188bd7d675f5bbc4282ccda060abb9d27";
       };
     };
+    "resolve-protobuf-schema-2.1.0" = {
+      name = "resolve-protobuf-schema";
+      packageName = "resolve-protobuf-schema";
+      version = "2.1.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/resolve-protobuf-schema/-/resolve-protobuf-schema-2.1.0.tgz";
+        sha512 = "kI5ffTiZWmJaS/huM8wZfEMer1eRd7oJQhDuxeCLe3t7N7mX3z94CN0xPxBQxFYQTSNz9T0i+v6inKqSdK8xrQ==";
+      };
+    };
     "resolve-url-0.2.1" = {
       name = "resolve-url";
       packageName = "resolve-url";
@@ -52457,13 +53051,13 @@ let
         sha512 = "8xfDbAtBleXotb6qKEHWuo/jkn94a9dVqGc7Rwl3sqspCVlnCfbRek7ldhCARSi7h32H0xR4QThm1t9zHN+3uw==";
       };
     };
-    "rollup-2.56.0" = {
+    "rollup-2.56.1" = {
       name = "rollup";
       packageName = "rollup";
-      version = "2.56.0";
+      version = "2.56.1";
       src = fetchurl {
-        url = "https://registry.npmjs.org/rollup/-/rollup-2.56.0.tgz";
-        sha512 = "weEafgbjbHCnrtJPNyCrhYnjP62AkF04P0BcV/1mofy1+gytWln4VVB1OK462cq2EAyWzRDpTMheSP/o+quoiA==";
+        url = "https://registry.npmjs.org/rollup/-/rollup-2.56.1.tgz";
+        sha512 = "KkrsNjeiTfGJMUFBi/PNfj3fnt70akqdoNXOjlzwo98uA1qrlkmgt6SGaK5OwhyDYCVnJb6jb2Xa2wbI47P4Nw==";
       };
     };
     "rollup-plugin-babel-4.4.0" = {
@@ -52628,6 +53222,15 @@ let
         sha512 = "nfMOlASu9OnRJo1mbEk2cz0D56a1MBNrJ7orjRZQG10XDyuvwksKbuXNp6qa+kbn839HwjwhBzhFmdsaEAfauA==";
       };
     };
+    "rtcpeerconnection-shim-1.2.15" = {
+      name = "rtcpeerconnection-shim";
+      packageName = "rtcpeerconnection-shim";
+      version = "1.2.15";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/rtcpeerconnection-shim/-/rtcpeerconnection-shim-1.2.15.tgz";
+        sha512 = "C6DxhXt7bssQ1nHb154lqeL0SXz5Dx4RczXZu2Aa/L1NJFnEVDxFwCBo3fqtuljhHIGceg5JKBV4XJ0gW5JKyw==";
+      };
+    };
     "rttc-4.5.2" = {
       name = "rttc";
       packageName = "rttc";
@@ -52718,6 +53321,15 @@ let
         sha512 = "cLgakCUf6PedEu15t8kbsjnwIFFR2D4RfL+W3iWFJ4iac7z4B0ZI8fxy4R3J956kAI68HclCFGL8MPoUVC3qVA==";
       };
     };
+    "rw-0.1.4" = {
+      name = "rw";
+      packageName = "rw";
+      version = "0.1.4";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/rw/-/rw-0.1.4.tgz";
+        sha1 = "4903cbd80248ae0ede685bf58fd236a7a9b29a3e";
+      };
+    };
     "rw-1.3.3" = {
       name = "rw";
       packageName = "rw";
@@ -53096,6 +53708,15 @@ let
         sha512 = "g3WxHrqSWCZHGHlSrF51VXFdjImhwvH8ZO/pryFH56Qi0cDsZfylQa/t0jCzVQFNbNvM00HfHjkDPEuarKDSWQ==";
       };
     };
+    "sdp-2.12.0" = {
+      name = "sdp";
+      packageName = "sdp";
+      version = "2.12.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/sdp/-/sdp-2.12.0.tgz";
+        sha512 = "jhXqQAQVM+8Xj5EjJGVweuEzgtGWb3tmEEpl3CLP3cStInSbVHSg0QWOGQzNq8pSID4JkpeV2mPqlMDLrm0/Vw==";
+      };
+    };
     "sec-1.0.0" = {
       name = "sec";
       packageName = "sec";
@@ -54149,6 +54770,15 @@ let
         sha512 = "ZmlNUGR1KI12sPHeQ7dQY1qM5KfOgFqClNNVO8zQ9Pg6u7gHLCPFGD+VC7MCwpGDMd1uw3Bb2TfFfR8d6bB34A==";
       };
     };
+    "simple-markdown-0.7.3" = {
+      name = "simple-markdown";
+      packageName = "simple-markdown";
+      version = "0.7.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/simple-markdown/-/simple-markdown-0.7.3.tgz";
+        sha512 = "uGXIc13NGpqfPeFJIt/7SHHxd6HekEJYtsdoCM06mEBPL9fQH/pSD7LRM6PZ7CKchpSvxKL4tvwMamqAaNDAyg==";
+      };
+    };
     "simple-message-channels-1.2.1" = {
       name = "simple-message-channels";
       packageName = "simple-message-channels";
@@ -57605,6 +58235,15 @@ let
         sha512 = "DnarpKN6Xn8e3pYlFV4Yvsj9yxLY4q5FIsUe5JvN7vjzP+YCfzXv03dTkZSD2yzrSadsNYHf0IgOUJwKjX457A==";
       };
     };
+    "supercluster-7.1.3" = {
+      name = "supercluster";
+      packageName = "supercluster";
+      version = "7.1.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/supercluster/-/supercluster-7.1.3.tgz";
+        sha512 = "7+bR4FbF5SYsmkHfDp61QiwCKtwNDyPsddk9TzfsDA5DQr5Goii5CVD2SXjglweFCxjrzVZf945ahqYfUIk8UA==";
+      };
+    };
     "superstatic-7.1.0" = {
       name = "superstatic";
       packageName = "superstatic";
@@ -59127,6 +59766,15 @@ let
         sha1 = "320b5a52d83abb5978d81a3e887d4aefb15a6164";
       };
     };
+    "tinyqueue-2.0.3" = {
+      name = "tinyqueue";
+      packageName = "tinyqueue";
+      version = "2.0.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/tinyqueue/-/tinyqueue-2.0.3.tgz";
+        sha512 = "ppJZNDuKGgxzkHihX8v9v9G5f+18gzaTfrukGrq6ueg0lmH4nqVnA2IPG0AEH3jKEk2GRJCUhDoqpoiw3PHLBA==";
+      };
+    };
     "titleize-1.0.1" = {
       name = "titleize";
       packageName = "titleize";
@@ -60009,6 +60657,15 @@ let
         sha512 = "aZW88SY8kQbU7gpV19lN24LtXh/yD4ZZg6qieAJDDg+YBsJcSmLGK9QpnUjAKVG/xefmvJGd1WUmfpT/g6AJGA==";
       };
     };
+    "tslib-1.13.0" = {
+      name = "tslib";
+      packageName = "tslib";
+      version = "1.13.0";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/tslib/-/tslib-1.13.0.tgz";
+        sha512 = "i/6DQjL8Xf3be4K/E6Wgpekn5Qasl1usyw++dAA35Ue5orEn65VIxOA+YvNNl9HV3qv70T7CNwjODHZrLwvd1Q==";
+      };
+    };
     "tslib-1.14.1" = {
       name = "tslib";
       packageName = "tslib";
@@ -60477,6 +61134,15 @@ let
         sha512 = "MyfKKYzk3I6/QQp6e1T50py4qg+c+9BzOEl2rBmQIpStwNUoqQ73An+Tkfy9YuV7O+o2mpVVJpe+fH//POZkbg==";
       };
     };
+    "typed-styles-0.0.7" = {
+      name = "typed-styles";
+      packageName = "typed-styles";
+      version = "0.0.7";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/typed-styles/-/typed-styles-0.0.7.tgz";
+        sha512 = "pzP0PWoZUhsECYjABgCGQlRGL1n7tOHsgwYv3oIiEpJwGhFTuty/YNeduxQYzXXa3Ge5BdT6sHYIQYpl4uJ+5Q==";
+      };
+    };
     "typedarray-0.0.6" = {
       name = "typedarray";
       packageName = "typedarray";
@@ -62079,6 +62745,15 @@ let
         sha512 = "cwESVXlO3url9YWlFW/TA9cshCEhtu7IKJ/p5soJ/gGpj7vbvFrAY/eIioQ6Dw23KjZhYgiIo8HOs1nQ2vr/oQ==";
       };
     };
+    "use-debounce-3.4.3" = {
+      name = "use-debounce";
+      packageName = "use-debounce";
+      version = "3.4.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/use-debounce/-/use-debounce-3.4.3.tgz";
+        sha512 = "nxy+opOxDccWfhMl36J5BSCTpvcj89iaQk2OZWLAtBJQj7ISCtx1gh+rFbdjGfMl6vtCZf6gke/kYvrkVfHMoA==";
+      };
+    };
     "user-home-2.0.0" = {
       name = "user-home";
       packageName = "user-home";
@@ -63880,6 +64555,15 @@ let
         sha1 = "13587190f34e72ba7a07ebbaa7e70ac147b1fb7d";
       };
     };
+    "vt-pbf-3.1.3" = {
+      name = "vt-pbf";
+      packageName = "vt-pbf";
+      version = "3.1.3";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/vt-pbf/-/vt-pbf-3.1.3.tgz";
+        sha512 = "2LzDFzt0mZKZ9IpVF2r69G9bXaP2Q2sArJCmcCgvfTdCCZzSyz4aCLoQyUilu37Ll56tCblIZrXFIjNUpGIlmA==";
+      };
+    };
     "vue-2.6.14" = {
       name = "vue";
       packageName = "vue";
@@ -64438,6 +65122,15 @@ let
         sha512 = "k1qRoSL/3BVuINzngj09nIwreD8wxV4grcuhHTD8VJgUbGcy8lQSPqv+bM00B7F+PffwIsQ8ISd4mIwRbr23eQ==";
       };
     };
+    "webrtc-adapter-7.7.1" = {
+      name = "webrtc-adapter";
+      packageName = "webrtc-adapter";
+      version = "7.7.1";
+      src = fetchurl {
+        url = "https://registry.npmjs.org/webrtc-adapter/-/webrtc-adapter-7.7.1.tgz";
+        sha512 = "TbrbBmiQBL9n0/5bvDdORc6ZfRY/Z7JnEj+EYOD1ghseZdpJ+nF2yx14k3LgQKc7JZnG7HAcL+zHnY25So9d7A==";
+      };
+    };
     "websocket-driver-0.6.5" = {
       name = "websocket-driver";
       packageName = "websocket-driver";
@@ -68163,7 +68856,7 @@ in
       sources."@babel/helper-wrap-function-7.14.5"
       sources."@babel/helpers-7.14.8"
       sources."@babel/highlight-7.14.5"
-      sources."@babel/parser-7.15.0"
+      sources."@babel/parser-7.15.2"
       sources."@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.14.5"
       sources."@babel/plugin-proposal-async-generator-functions-7.14.9"
       sources."@babel/plugin-proposal-class-properties-7.14.5"
@@ -68497,12 +69190,12 @@ in
       sources."cookie-0.4.0"
       sources."cookie-signature-1.0.6"
       sources."copy-descriptor-0.1.1"
-      (sources."core-js-compat-3.16.0" // {
+      (sources."core-js-compat-3.16.1" // {
         dependencies = [
           sources."semver-7.0.0"
         ];
       })
-      sources."core-js-pure-3.16.0"
+      sources."core-js-pure-3.16.1"
       sources."core-util-is-1.0.2"
       sources."cors-2.8.5"
       (sources."cross-spawn-6.0.5" // {
@@ -69467,7 +70160,7 @@ in
       sources."@babel/generator-7.15.0"
       sources."@babel/helper-validator-identifier-7.14.9"
       sources."@babel/highlight-7.14.5"
-      sources."@babel/parser-7.15.0"
+      sources."@babel/parser-7.15.2"
       sources."@babel/template-7.14.5"
       sources."@babel/types-7.15.0"
       sources."@webassemblyjs/ast-1.11.1"
@@ -69570,7 +70263,7 @@ in
       sources."@babel/helper-validator-option-7.14.5"
       sources."@babel/helpers-7.14.8"
       sources."@babel/highlight-7.14.5"
-      sources."@babel/parser-7.15.0"
+      sources."@babel/parser-7.15.2"
       sources."@babel/template-7.14.5"
       sources."@babel/traverse-7.15.0"
       sources."@babel/types-7.15.0"
@@ -71416,7 +72109,7 @@ in
       sources."@babel/code-frame-7.14.5"
       sources."@babel/helper-validator-identifier-7.14.9"
       sources."@babel/highlight-7.14.5"
-      sources."@babel/parser-7.15.0"
+      sources."@babel/parser-7.15.2"
       sources."@babel/types-7.15.0"
       sources."@kwsites/file-exists-1.1.1"
       sources."@kwsites/promise-deferred-1.1.1"
@@ -72500,7 +73193,7 @@ in
           sources."chalk-2.4.2"
         ];
       })
-      sources."@babel/parser-7.15.0"
+      sources."@babel/parser-7.15.2"
       sources."@babel/template-7.14.5"
       sources."@babel/types-7.15.0"
       sources."@cdktf/hcl2cdk-0.5.0"
@@ -72697,7 +73390,7 @@ in
       sources."convert-to-spaces-1.0.2"
       sources."cookie-0.4.0"
       sources."cookie-signature-1.0.6"
-      sources."core-js-pure-3.16.0"
+      sources."core-js-pure-3.16.1"
       sources."core-util-is-1.0.2"
       sources."cors-2.8.5"
       sources."crc-32-1.2.0"
@@ -74041,7 +74734,7 @@ in
         ];
       })
       sources."copy-descriptor-0.1.1"
-      sources."core-js-3.16.0"
+      sources."core-js-3.16.1"
       sources."cosmiconfig-3.1.0"
       sources."create-error-class-3.0.2"
       sources."cross-spawn-7.0.3"
@@ -75055,7 +75748,7 @@ in
           sources."chalk-2.4.2"
         ];
       })
-      sources."@babel/parser-7.15.0"
+      sources."@babel/parser-7.15.2"
       sources."@babel/template-7.14.5"
       sources."@babel/traverse-7.15.0"
       sources."@babel/types-7.15.0"
@@ -77936,6 +78629,707 @@ in
     bypassCache = true;
     reconstructLock = true;
   };
+  "deltachat-desktop-../../applications/networking/instant-messengers/deltachat-desktop" = nodeEnv.buildNodePackage {
+    name = "deltachat-desktop";
+    packageName = "deltachat-desktop";
+    version = "1.20.3";
+    src = ../../applications/networking/instant-messengers/deltachat-desktop;
+    dependencies = [
+      sources."@babel/code-frame-7.14.5"
+      sources."@babel/compat-data-7.15.0"
+      (sources."@babel/core-7.15.0" // {
+        dependencies = [
+          sources."source-map-0.5.7"
+        ];
+      })
+      (sources."@babel/generator-7.15.0" // {
+        dependencies = [
+          sources."source-map-0.5.7"
+        ];
+      })
+      sources."@babel/helper-annotate-as-pure-7.14.5"
+      sources."@babel/helper-builder-binary-assignment-operator-visitor-7.14.5"
+      sources."@babel/helper-compilation-targets-7.15.0"
+      sources."@babel/helper-create-class-features-plugin-7.15.0"
+      sources."@babel/helper-create-regexp-features-plugin-7.14.5"
+      sources."@babel/helper-define-polyfill-provider-0.2.3"
+      sources."@babel/helper-explode-assignable-expression-7.14.5"
+      sources."@babel/helper-function-name-7.14.5"
+      sources."@babel/helper-get-function-arity-7.14.5"
+      sources."@babel/helper-hoist-variables-7.14.5"
+      sources."@babel/helper-member-expression-to-functions-7.15.0"
+      sources."@babel/helper-module-imports-7.14.5"
+      sources."@babel/helper-module-transforms-7.15.0"
+      sources."@babel/helper-optimise-call-expression-7.14.5"
+      sources."@babel/helper-plugin-utils-7.14.5"
+      sources."@babel/helper-remap-async-to-generator-7.14.5"
+      sources."@babel/helper-replace-supers-7.15.0"
+      sources."@babel/helper-simple-access-7.14.8"
+      sources."@babel/helper-skip-transparent-expression-wrappers-7.14.5"
+      sources."@babel/helper-split-export-declaration-7.14.5"
+      sources."@babel/helper-validator-identifier-7.14.9"
+      sources."@babel/helper-validator-option-7.14.5"
+      sources."@babel/helper-wrap-function-7.14.5"
+      sources."@babel/helpers-7.14.8"
+      sources."@babel/highlight-7.14.5"
+      sources."@babel/parser-7.15.2"
+      sources."@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.14.5"
+      sources."@babel/plugin-proposal-async-generator-functions-7.14.9"
+      sources."@babel/plugin-proposal-class-properties-7.14.5"
+      sources."@babel/plugin-proposal-class-static-block-7.14.5"
+      sources."@babel/plugin-proposal-dynamic-import-7.14.5"
+      sources."@babel/plugin-proposal-export-namespace-from-7.14.5"
+      sources."@babel/plugin-proposal-json-strings-7.14.5"
+      sources."@babel/plugin-proposal-logical-assignment-operators-7.14.5"
+      sources."@babel/plugin-proposal-nullish-coalescing-operator-7.14.5"
+      sources."@babel/plugin-proposal-numeric-separator-7.14.5"
+      sources."@babel/plugin-proposal-object-rest-spread-7.14.7"
+      sources."@babel/plugin-proposal-optional-catch-binding-7.14.5"
+      sources."@babel/plugin-proposal-optional-chaining-7.14.5"
+      sources."@babel/plugin-proposal-private-methods-7.14.5"
+      sources."@babel/plugin-proposal-private-property-in-object-7.14.5"
+      sources."@babel/plugin-proposal-unicode-property-regex-7.14.5"
+      sources."@babel/plugin-syntax-async-generators-7.8.4"
+      sources."@babel/plugin-syntax-class-properties-7.12.13"
+      sources."@babel/plugin-syntax-class-static-block-7.14.5"
+      sources."@babel/plugin-syntax-dynamic-import-7.8.3"
+      sources."@babel/plugin-syntax-export-namespace-from-7.8.3"
+      sources."@babel/plugin-syntax-json-strings-7.8.3"
+      sources."@babel/plugin-syntax-jsx-7.14.5"
+      sources."@babel/plugin-syntax-logical-assignment-operators-7.10.4"
+      sources."@babel/plugin-syntax-nullish-coalescing-operator-7.8.3"
+      sources."@babel/plugin-syntax-numeric-separator-7.10.4"
+      sources."@babel/plugin-syntax-object-rest-spread-7.8.3"
+      sources."@babel/plugin-syntax-optional-catch-binding-7.8.3"
+      sources."@babel/plugin-syntax-optional-chaining-7.8.3"
+      sources."@babel/plugin-syntax-private-property-in-object-7.14.5"
+      sources."@babel/plugin-syntax-top-level-await-7.14.5"
+      sources."@babel/plugin-transform-arrow-functions-7.14.5"
+      sources."@babel/plugin-transform-async-to-generator-7.14.5"
+      sources."@babel/plugin-transform-block-scoped-functions-7.14.5"
+      sources."@babel/plugin-transform-block-scoping-7.14.5"
+      sources."@babel/plugin-transform-classes-7.14.9"
+      sources."@babel/plugin-transform-computed-properties-7.14.5"
+      sources."@babel/plugin-transform-destructuring-7.14.7"
+      sources."@babel/plugin-transform-dotall-regex-7.14.5"
+      sources."@babel/plugin-transform-duplicate-keys-7.14.5"
+      sources."@babel/plugin-transform-exponentiation-operator-7.14.5"
+      sources."@babel/plugin-transform-for-of-7.14.5"
+      sources."@babel/plugin-transform-function-name-7.14.5"
+      sources."@babel/plugin-transform-literals-7.14.5"
+      sources."@babel/plugin-transform-member-expression-literals-7.14.5"
+      sources."@babel/plugin-transform-modules-amd-7.14.5"
+      sources."@babel/plugin-transform-modules-commonjs-7.15.0"
+      sources."@babel/plugin-transform-modules-systemjs-7.14.5"
+      sources."@babel/plugin-transform-modules-umd-7.14.5"
+      sources."@babel/plugin-transform-named-capturing-groups-regex-7.14.9"
+      sources."@babel/plugin-transform-new-target-7.14.5"
+      sources."@babel/plugin-transform-object-super-7.14.5"
+      sources."@babel/plugin-transform-parameters-7.14.5"
+      sources."@babel/plugin-transform-property-literals-7.14.5"
+      sources."@babel/plugin-transform-react-display-name-7.15.1"
+      sources."@babel/plugin-transform-react-jsx-7.14.9"
+      sources."@babel/plugin-transform-react-jsx-development-7.14.5"
+      sources."@babel/plugin-transform-react-pure-annotations-7.14.5"
+      sources."@babel/plugin-transform-regenerator-7.14.5"
+      sources."@babel/plugin-transform-reserved-words-7.14.5"
+      sources."@babel/plugin-transform-shorthand-properties-7.14.5"
+      sources."@babel/plugin-transform-spread-7.14.6"
+      sources."@babel/plugin-transform-sticky-regex-7.14.5"
+      sources."@babel/plugin-transform-template-literals-7.14.5"
+      sources."@babel/plugin-transform-typeof-symbol-7.14.5"
+      sources."@babel/plugin-transform-unicode-escapes-7.14.5"
+      sources."@babel/plugin-transform-unicode-regex-7.14.5"
+      sources."@babel/preset-env-7.15.0"
+      sources."@babel/preset-modules-0.1.4"
+      sources."@babel/preset-react-7.14.5"
+      sources."@babel/runtime-7.14.8"
+      sources."@babel/template-7.14.5"
+      sources."@babel/traverse-7.15.0"
+      sources."@babel/types-7.15.0"
+      sources."@blueprintjs/core-3.47.0"
+      sources."@blueprintjs/icons-3.27.0"
+      sources."@electron/get-1.12.4"
+      sources."@hypnosphi/create-react-context-0.3.1"
+      sources."@mapbox/extent-0.4.0"
+      sources."@mapbox/geojson-coords-0.0.1"
+      sources."@mapbox/geojson-extent-1.0.0"
+      sources."@mapbox/geojson-normalize-0.0.1"
+      sources."@mapbox/geojson-rewind-0.5.1"
+      sources."@mapbox/geojson-types-1.0.2"
+      sources."@mapbox/jsonlint-lines-primitives-2.0.2"
+      sources."@mapbox/mapbox-gl-supported-1.5.0"
+      sources."@mapbox/point-geometry-0.1.0"
+      sources."@mapbox/tiny-sdf-1.2.5"
+      sources."@mapbox/unitbezier-0.0.0"
+      sources."@mapbox/vector-tile-1.3.1"
+      sources."@mapbox/whoots-js-3.1.0"
+      sources."@sindresorhus/is-0.14.0"
+      sources."@szmarczak/http-timer-1.1.2"
+      sources."@types/debounce-1.2.0"
+      sources."@types/dom4-2.0.2"
+      sources."@types/emoji-mart-3.0.5"
+      sources."@types/fs-extra-8.1.2"
+      sources."@types/geojson-7946.0.8"
+      sources."@types/mapbox-gl-0.54.5"
+      sources."@types/mime-types-2.1.0"
+      sources."@types/node-14.17.9"
+      sources."@types/node-fetch-2.5.12"
+      sources."@types/prop-types-15.7.4"
+      sources."@types/rc-1.1.0"
+      sources."@types/react-16.14.12"
+      sources."@types/react-dom-16.9.14"
+      sources."@types/react-virtualized-9.21.13"
+      sources."@types/scheduler-0.16.2"
+      sources."@types/url-parse-1.4.3"
+      sources."ansi-styles-3.2.1"
+      (sources."anymatch-2.0.0" // {
+        dependencies = [
+          sources."normalize-path-2.1.1"
+        ];
+      })
+      sources."application-config-1.0.1"
+      sources."application-config-path-0.1.0"
+      sources."arr-diff-4.0.0"
+      sources."arr-flatten-1.1.0"
+      sources."arr-union-3.1.0"
+      sources."array-differ-3.0.0"
+      sources."array-each-1.0.1"
+      sources."array-slice-1.1.0"
+      sources."array-unique-0.3.2"
+      sources."assign-symbols-1.0.0"
+      sources."async-done-1.3.2"
+      sources."async-each-1.0.3"
+      sources."asynckit-0.4.0"
+      sources."atob-2.1.2"
+      sources."babel-plugin-dynamic-import-node-2.3.3"
+      sources."babel-plugin-polyfill-corejs2-0.2.2"
+      sources."babel-plugin-polyfill-corejs3-0.2.4"
+      sources."babel-plugin-polyfill-regenerator-0.2.2"
+      (sources."base-0.11.2" // {
+        dependencies = [
+          sources."define-property-1.0.0"
+        ];
+      })
+      sources."binary-extensions-1.13.1"
+      sources."bindings-1.5.0"
+      sources."boolean-3.1.2"
+      (sources."braces-2.3.2" // {
+        dependencies = [
+          sources."extend-shallow-2.0.1"
+        ];
+      })
+      sources."browserslist-4.16.7"
+      sources."buffer-crc32-0.2.13"
+      sources."buffer-from-1.1.2"
+      sources."cache-base-1.0.1"
+      (sources."cacheable-request-6.1.0" // {
+        dependencies = [
+          sources."get-stream-5.2.0"
+          sources."lowercase-keys-2.0.0"
+        ];
+      })
+      sources."call-bind-1.0.2"
+      sources."caniuse-lite-1.0.30001249"
+      sources."chalk-2.4.2"
+      sources."chokidar-2.1.8"
+      (sources."class-utils-0.3.6" // {
+        dependencies = [
+          sources."define-property-0.2.5"
+          (sources."is-accessor-descriptor-0.1.6" // {
+            dependencies = [
+              sources."kind-of-3.2.2"
+            ];
+          })
+          (sources."is-data-descriptor-0.1.4" // {
+            dependencies = [
+              sources."kind-of-3.2.2"
+            ];
+          })
+          sources."is-descriptor-0.1.6"
+          sources."kind-of-5.1.0"
+        ];
+      })
+      sources."classnames-2.3.1"
+      sources."clone-response-1.0.2"
+      sources."clsx-1.1.1"
+      sources."collection-visit-1.0.0"
+      sources."color-convert-1.9.3"
+      sources."color-name-1.1.3"
+      sources."colorette-1.2.2"
+      sources."combined-stream-1.0.8"
+      sources."component-emitter-1.3.0"
+      (sources."concat-stream-1.6.2" // {
+        dependencies = [
+          sources."readable-stream-2.3.7"
+          sources."safe-buffer-5.1.2"
+          sources."string_decoder-1.1.1"
+        ];
+      })
+      sources."config-chain-1.1.13"
+      (sources."convert-source-map-1.8.0" // {
+        dependencies = [
+          sources."safe-buffer-5.1.2"
+        ];
+      })
+      sources."copy-descriptor-0.1.1"
+      sources."core-js-3.16.1"
+      (sources."core-js-compat-3.16.1" // {
+        dependencies = [
+          sources."semver-7.0.0"
+        ];
+      })
+      sources."core-util-is-1.0.2"
+      sources."crypto-random-string-1.0.0"
+      sources."csscolorparser-1.0.3"
+      sources."csstype-3.0.8"
+      sources."debounce-1.2.1"
+      sources."debug-4.3.2"
+      sources."decode-uri-component-0.2.0"
+      sources."decompress-response-3.3.0"
+      sources."deep-equal-1.1.1"
+      sources."deep-extend-0.6.0"
+      sources."defer-to-connect-1.1.3"
+      sources."define-properties-1.1.3"
+      sources."define-property-2.0.2"
+      sources."delayed-stream-1.0.0"
+      sources."deltachat-node-1.56.2"
+      sources."detect-node-2.1.0"
+      sources."dom-helpers-3.4.0"
+      sources."dom4-2.1.6"
+      sources."duplexer3-0.1.4"
+      sources."earcut-2.2.3"
+      sources."electron-13.1.8"
+      sources."electron-to-chromium-1.3.799"
+      sources."emoji-js-clean-4.0.0"
+      sources."emoji-mart-3.0.1"
+      sources."emoji-regex-9.2.2"
+      sources."encodeurl-1.0.2"
+      sources."end-of-stream-1.4.4"
+      sources."env-paths-2.2.1"
+      sources."error-stack-parser-2.0.6"
+      sources."es6-error-4.1.1"
+      sources."escalade-3.1.1"
+      sources."escape-string-regexp-1.0.5"
+      sources."esutils-2.0.3"
+      (sources."expand-brackets-2.1.4" // {
+        dependencies = [
+          sources."debug-2.6.9"
+          sources."define-property-0.2.5"
+          sources."extend-shallow-2.0.1"
+          (sources."is-accessor-descriptor-0.1.6" // {
+            dependencies = [
+              sources."kind-of-3.2.2"
+            ];
+          })
+          (sources."is-data-descriptor-0.1.4" // {
+            dependencies = [
+              sources."kind-of-3.2.2"
+            ];
+          })
+          sources."is-descriptor-0.1.6"
+          sources."kind-of-5.1.0"
+          sources."ms-2.0.0"
+        ];
+      })
+      (sources."extend-shallow-3.0.2" // {
+        dependencies = [
+          sources."is-extendable-1.0.1"
+        ];
+      })
+      (sources."extglob-2.0.4" // {
+        dependencies = [
+          sources."define-property-1.0.0"
+          sources."extend-shallow-2.0.1"
+        ];
+      })
+      (sources."extract-zip-1.7.0" // {
+        dependencies = [
+          sources."debug-2.6.9"
+          sources."ms-2.0.0"
+        ];
+      })
+      sources."fd-slicer-1.1.0"
+      sources."file-uri-to-path-1.0.0"
+      sources."filesize-6.4.0"
+      (sources."fill-range-4.0.0" // {
+        dependencies = [
+          sources."extend-shallow-2.0.1"
+        ];
+      })
+      sources."for-in-1.0.2"
+      sources."for-own-1.0.0"
+      sources."form-data-3.0.1"
+      sources."fragment-cache-0.2.1"
+      sources."fs-extra-8.1.0"
+      sources."fsevents-1.2.13"
+      sources."function-bind-1.1.1"
+      sources."gensync-1.0.0-beta.2"
+      sources."geojson-flatten-1.0.4"
+      sources."geojson-vt-3.2.1"
+      sources."get-intrinsic-1.1.1"
+      sources."get-stdin-7.0.0"
+      sources."get-stream-6.0.1"
+      sources."get-value-2.0.6"
+      sources."gl-matrix-3.3.0"
+      (sources."glob-parent-3.1.0" // {
+        dependencies = [
+          sources."is-glob-3.1.0"
+        ];
+      })
+      sources."glob-watcher-5.0.5"
+      (sources."global-agent-2.2.0" // {
+        dependencies = [
+          sources."semver-7.3.5"
+        ];
+      })
+      sources."global-tunnel-ng-2.7.1"
+      sources."globals-11.12.0"
+      sources."globalthis-1.0.2"
+      (sources."got-9.6.0" // {
+        dependencies = [
+          sources."get-stream-4.1.0"
+        ];
+      })
+      sources."graceful-fs-4.2.8"
+      sources."grid-index-1.1.0"
+      sources."gud-1.0.0"
+      sources."has-1.0.3"
+      sources."has-flag-3.0.0"
+      sources."has-symbols-1.0.2"
+      sources."has-tostringtag-1.0.0"
+      sources."has-value-1.0.0"
+      (sources."has-values-1.0.0" // {
+        dependencies = [
+          sources."kind-of-4.0.0"
+        ];
+      })
+      sources."http-cache-semantics-4.1.0"
+      sources."ieee754-1.2.1"
+      sources."inherits-2.0.4"
+      sources."ini-1.3.8"
+      sources."is-accessor-descriptor-1.0.0"
+      sources."is-arguments-1.1.1"
+      sources."is-binary-path-1.0.1"
+      sources."is-buffer-1.1.6"
+      sources."is-core-module-2.5.0"
+      sources."is-data-descriptor-1.0.0"
+      sources."is-date-object-1.0.5"
+      sources."is-descriptor-1.0.2"
+      sources."is-extendable-0.1.1"
+      sources."is-extglob-2.1.1"
+      sources."is-glob-4.0.1"
+      sources."is-negated-glob-1.0.0"
+      (sources."is-number-3.0.0" // {
+        dependencies = [
+          sources."kind-of-3.2.2"
+        ];
+      })
+      sources."is-plain-object-2.0.4"
+      sources."is-regex-1.1.4"
+      sources."is-windows-1.0.2"
+      sources."isarray-1.0.0"
+      sources."isobject-3.0.1"
+      sources."js-tokens-4.0.0"
+      sources."jsesc-2.5.2"
+      sources."json-buffer-3.0.0"
+      sources."json-stringify-safe-5.0.1"
+      sources."json5-2.2.0"
+      sources."jsonfile-4.0.0"
+      sources."jsqr-1.4.0"
+      sources."just-debounce-1.1.0"
+      sources."kdbush-3.0.0"
+      sources."keyv-3.1.0"
+      sources."kind-of-6.0.3"
+      sources."lodash-4.17.21"
+      sources."lodash.debounce-4.0.8"
+      sources."lodash.pick-4.4.0"
+      sources."loose-envify-1.4.0"
+      sources."lowercase-keys-1.0.1"
+      sources."lru-cache-6.0.0"
+      sources."map-cache-0.2.2"
+      sources."map-visit-1.0.0"
+      (sources."mapbox-gl-1.13.1" // {
+        dependencies = [
+          sources."rw-1.3.3"
+        ];
+      })
+      (sources."matcher-3.0.0" // {
+        dependencies = [
+          sources."escape-string-regexp-4.0.0"
+        ];
+      })
+      sources."micromatch-3.1.10"
+      sources."mime-db-1.49.0"
+      sources."mime-types-2.1.32"
+      sources."mimic-response-1.0.1"
+      sources."minimist-1.2.5"
+      (sources."mixin-deep-1.3.2" // {
+        dependencies = [
+          sources."is-extendable-1.0.1"
+        ];
+      })
+      sources."mkdirp-0.5.5"
+      sources."moment-2.29.1"
+      sources."ms-2.1.2"
+      sources."murmurhash-js-1.0.0"
+      sources."nan-2.15.0"
+      sources."nanomatch-1.2.13"
+      sources."napi-macros-2.0.0"
+      sources."node-fetch-2.6.1"
+      sources."node-gyp-build-4.2.3"
+      sources."node-releases-1.1.73"
+      sources."normalize-path-3.0.0"
+      sources."normalize-url-4.5.1"
+      sources."normalize.css-8.0.1"
+      sources."npm-conf-1.1.3"
+      sources."object-assign-4.1.1"
+      (sources."object-copy-0.1.0" // {
+        dependencies = [
+          sources."define-property-0.2.5"
+          sources."is-accessor-descriptor-0.1.6"
+          sources."is-data-descriptor-0.1.4"
+          (sources."is-descriptor-0.1.6" // {
+            dependencies = [
+              sources."kind-of-5.1.0"
+            ];
+          })
+          sources."kind-of-3.2.2"
+        ];
+      })
+      sources."object-is-1.1.5"
+      sources."object-keys-1.1.1"
+      sources."object-visit-1.0.1"
+      sources."object.assign-4.1.2"
+      sources."object.defaults-1.1.0"
+      sources."object.pick-1.3.0"
+      sources."once-1.4.0"
+      sources."p-cancelable-1.1.0"
+      sources."pascalcase-0.1.1"
+      sources."path-browserify-1.0.1"
+      sources."path-dirname-1.0.2"
+      sources."path-is-absolute-1.0.1"
+      sources."path-parse-1.0.7"
+      sources."pbf-3.2.1"
+      sources."pend-1.2.0"
+      sources."picomatch-2.3.0"
+      sources."pify-3.0.0"
+      sources."popper.js-1.16.1"
+      sources."posix-character-classes-0.1.1"
+      sources."potpack-1.0.1"
+      sources."prepend-http-2.0.0"
+      sources."process-nextick-args-2.0.1"
+      sources."progress-2.0.3"
+      sources."prop-types-15.7.2"
+      sources."proto-list-1.2.4"
+      sources."protocol-buffers-schema-3.5.1"
+      sources."pump-3.0.0"
+      sources."punycode-2.1.1"
+      sources."qr.js-0.0.0"
+      sources."querystringify-2.2.0"
+      sources."quickselect-2.0.0"
+      sources."rc-1.2.8"
+      sources."react-17.0.2"
+      sources."react-dom-17.0.2"
+      sources."react-is-16.13.1"
+      sources."react-lifecycles-compat-3.0.4"
+      sources."react-popper-1.3.11"
+      sources."react-qr-reader-2.2.1"
+      sources."react-qr-svg-2.4.0"
+      sources."react-string-replace-0.4.4"
+      sources."react-transition-group-2.9.0"
+      (sources."react-virtualized-9.22.3" // {
+        dependencies = [
+          sources."dom-helpers-5.2.1"
+        ];
+      })
+      sources."readable-stream-3.6.0"
+      (sources."readdirp-2.2.1" // {
+        dependencies = [
+          sources."readable-stream-2.3.7"
+          sources."safe-buffer-5.1.2"
+          sources."string_decoder-1.1.1"
+        ];
+      })
+      sources."regenerate-1.4.2"
+      sources."regenerate-unicode-properties-8.2.0"
+      sources."regenerator-runtime-0.13.9"
+      sources."regenerator-transform-0.14.5"
+      sources."regex-not-1.0.2"
+      sources."regexp.prototype.flags-1.3.1"
+      sources."regexpu-core-4.7.1"
+      sources."regjsgen-0.5.2"
+      (sources."regjsparser-0.6.9" // {
+        dependencies = [
+          sources."jsesc-0.5.0"
+        ];
+      })
+      sources."remove-trailing-separator-1.1.0"
+      sources."repeat-element-1.1.4"
+      sources."repeat-string-1.6.1"
+      sources."requires-port-1.0.0"
+      sources."resize-observer-polyfill-1.5.1"
+      sources."resolve-1.20.0"
+      sources."resolve-protobuf-schema-2.1.0"
+      sources."resolve-url-0.2.1"
+      sources."responselike-1.0.2"
+      sources."ret-0.1.15"
+      sources."roarr-2.15.4"
+      sources."rtcpeerconnection-shim-1.2.15"
+      sources."rw-0.1.4"
+      sources."safe-buffer-5.2.1"
+      sources."safe-regex-1.1.0"
+      (sources."sass-1.37.5" // {
+        dependencies = [
+          sources."anymatch-3.1.2"
+          sources."binary-extensions-2.2.0"
+          sources."braces-3.0.2"
+          sources."chokidar-3.5.2"
+          sources."fill-range-7.0.1"
+          sources."fsevents-2.3.2"
+          sources."glob-parent-5.1.2"
+          sources."is-binary-path-2.1.0"
+          sources."is-number-7.0.0"
+          sources."readdirp-3.6.0"
+          sources."to-regex-range-5.0.1"
+        ];
+      })
+      sources."sax-1.2.4"
+      sources."scheduler-0.20.2"
+      sources."sdp-2.12.0"
+      sources."semver-6.3.0"
+      sources."semver-compare-1.0.0"
+      (sources."serialize-error-7.0.1" // {
+        dependencies = [
+          sources."type-fest-0.13.1"
+        ];
+      })
+      (sources."set-value-2.0.1" // {
+        dependencies = [
+          sources."extend-shallow-2.0.1"
+        ];
+      })
+      sources."simple-markdown-0.7.3"
+      (sources."snapdragon-0.8.2" // {
+        dependencies = [
+          sources."debug-2.6.9"
+          sources."define-property-0.2.5"
+          sources."extend-shallow-2.0.1"
+          (sources."is-accessor-descriptor-0.1.6" // {
+            dependencies = [
+              sources."kind-of-3.2.2"
+            ];
+          })
+          (sources."is-data-descriptor-0.1.4" // {
+            dependencies = [
+              sources."kind-of-3.2.2"
+            ];
+          })
+          sources."is-descriptor-0.1.6"
+          sources."kind-of-5.1.0"
+          sources."ms-2.0.0"
+          sources."source-map-0.5.7"
+        ];
+      })
+      (sources."snapdragon-node-2.1.1" // {
+        dependencies = [
+          sources."define-property-1.0.0"
+        ];
+      })
+      (sources."snapdragon-util-3.0.1" // {
+        dependencies = [
+          sources."kind-of-3.2.2"
+        ];
+      })
+      sources."source-map-0.6.1"
+      sources."source-map-resolve-0.5.3"
+      sources."source-map-support-0.5.19"
+      sources."source-map-url-0.4.1"
+      sources."split-string-3.1.0"
+      sources."split2-3.2.2"
+      sources."sprintf-js-1.1.2"
+      sources."stackframe-1.2.0"
+      (sources."static-extend-0.1.2" // {
+        dependencies = [
+          sources."define-property-0.2.5"
+          (sources."is-accessor-descriptor-0.1.6" // {
+            dependencies = [
+              sources."kind-of-3.2.2"
+            ];
+          })
+          (sources."is-data-descriptor-0.1.4" // {
+            dependencies = [
+              sources."kind-of-3.2.2"
+            ];
+          })
+          sources."is-descriptor-0.1.6"
+          sources."kind-of-5.1.0"
+        ];
+      })
+      sources."stream-exhaust-1.0.2"
+      sources."string_decoder-1.3.0"
+      sources."strip-json-comments-2.0.1"
+      sources."sumchecker-3.0.1"
+      sources."supercluster-7.1.3"
+      sources."supports-color-5.5.0"
+      sources."temp-dir-1.0.0"
+      sources."tempy-0.3.0"
+      sources."tinyqueue-2.0.3"
+      sources."to-fast-properties-2.0.0"
+      (sources."to-object-path-0.3.0" // {
+        dependencies = [
+          sources."kind-of-3.2.2"
+        ];
+      })
+      sources."to-readable-stream-1.0.0"
+      sources."to-regex-3.0.2"
+      sources."to-regex-range-2.1.1"
+      sources."traverse-0.6.6"
+      sources."tslib-1.13.0"
+      sources."tunnel-0.0.6"
+      sources."type-fest-0.3.1"
+      sources."typed-styles-0.0.7"
+      sources."typedarray-0.0.6"
+      sources."typescript-3.9.10"
+      sources."unicode-canonical-property-names-ecmascript-1.0.4"
+      sources."unicode-match-property-ecmascript-1.0.4"
+      sources."unicode-match-property-value-ecmascript-1.2.0"
+      sources."unicode-property-aliases-ecmascript-1.1.0"
+      sources."union-value-1.0.1"
+      sources."unique-string-1.0.0"
+      sources."universalify-0.1.2"
+      (sources."unset-value-1.0.0" // {
+        dependencies = [
+          (sources."has-value-0.3.1" // {
+            dependencies = [
+              sources."isobject-2.1.0"
+            ];
+          })
+          sources."has-values-0.1.4"
+        ];
+      })
+      sources."upath-1.2.0"
+      sources."urix-0.1.0"
+      sources."url-parse-1.5.3"
+      sources."url-parse-lax-3.0.0"
+      sources."use-3.1.1"
+      sources."use-debounce-3.4.3"
+      sources."util-deprecate-1.0.2"
+      sources."vt-pbf-3.1.3"
+      sources."warning-4.0.3"
+      sources."webrtc-adapter-7.7.1"
+      sources."wrappy-1.0.2"
+      sources."xml-js-1.6.11"
+      sources."yallist-4.0.0"
+      sources."yauzl-2.10.0"
+    ];
+    buildInputs = globalBuildInputs;
+    meta = {
+    };
+    production = true;
+    bypassCache = true;
+    reconstructLock = true;
+  };
   dhcp = nodeEnv.buildNodePackage {
     name = "dhcp";
     packageName = "dhcp";
@@ -78379,7 +79773,7 @@ in
       sources."concat-map-0.0.1"
       sources."config-chain-1.1.13"
       sources."console-control-strings-1.1.0"
-      sources."core-js-3.16.0"
+      sources."core-js-3.16.1"
       sources."core-util-is-1.0.2"
       sources."cross-spawn-7.0.3"
       (sources."cross-spawn-windows-exe-1.2.0" // {
@@ -78939,7 +80333,7 @@ in
       sources."@babel/helper-validator-option-7.14.5"
       sources."@babel/helpers-7.14.8"
       sources."@babel/highlight-7.14.5"
-      sources."@babel/parser-7.15.0"
+      sources."@babel/parser-7.15.2"
       sources."@babel/plugin-proposal-object-rest-spread-7.14.7"
       sources."@babel/plugin-syntax-jsx-7.14.5"
       sources."@babel/plugin-syntax-object-rest-spread-7.8.3"
@@ -81360,7 +82754,7 @@ in
           sources."chalk-2.4.2"
         ];
       })
-      sources."@babel/parser-7.15.0"
+      sources."@babel/parser-7.15.2"
       sources."@babel/plugin-proposal-class-properties-7.14.5"
       sources."@babel/plugin-proposal-export-default-from-7.14.5"
       sources."@babel/plugin-proposal-nullish-coalescing-operator-7.14.5"
@@ -81912,7 +83306,7 @@ in
           sources."semver-6.3.0"
         ];
       })
-      (sources."core-js-compat-3.16.0" // {
+      (sources."core-js-compat-3.16.1" // {
         dependencies = [
           sources."browserslist-4.16.7"
           sources."semver-7.0.0"
@@ -83698,7 +85092,7 @@ in
       sources."@babel/helper-validator-option-7.14.5"
       sources."@babel/helpers-7.14.8"
       sources."@babel/highlight-7.14.5"
-      sources."@babel/parser-7.15.0"
+      sources."@babel/parser-7.15.2"
       sources."@babel/plugin-proposal-object-rest-spread-7.14.7"
       sources."@babel/plugin-syntax-jsx-7.14.5"
       sources."@babel/plugin-syntax-object-rest-spread-7.8.3"
@@ -83960,7 +85354,7 @@ in
       sources."@babel/helper-split-export-declaration-7.14.5"
       sources."@babel/helper-validator-identifier-7.14.9"
       sources."@babel/highlight-7.14.5"
-      sources."@babel/parser-7.15.0"
+      sources."@babel/parser-7.15.2"
       sources."@babel/template-7.14.5"
       sources."@babel/traverse-7.15.0"
       sources."@babel/types-7.15.0"
@@ -86487,7 +87881,7 @@ in
           sources."chalk-2.4.2"
         ];
       })
-      sources."@babel/parser-7.15.0"
+      sources."@babel/parser-7.15.2"
       sources."@babel/plugin-proposal-object-rest-spread-7.10.4"
       sources."@babel/plugin-proposal-optional-chaining-7.14.5"
       sources."@babel/plugin-syntax-jsx-7.14.5"
@@ -86496,7 +87890,7 @@ in
       sources."@babel/plugin-transform-parameters-7.14.5"
       sources."@babel/plugin-transform-react-jsx-7.14.9"
       sources."@babel/runtime-7.14.8"
-      sources."@babel/standalone-7.15.1"
+      sources."@babel/standalone-7.15.2"
       sources."@babel/template-7.14.5"
       sources."@babel/traverse-7.15.0"
       sources."@babel/types-7.15.0"
@@ -90986,7 +92380,7 @@ in
           sources."escape-string-regexp-1.0.5"
         ];
       })
-      sources."@babel/parser-7.15.0"
+      sources."@babel/parser-7.15.2"
       sources."@babel/plugin-proposal-class-properties-7.14.5"
       sources."@babel/plugin-proposal-nullish-coalescing-operator-7.14.5"
       sources."@babel/plugin-proposal-optional-chaining-7.14.5"
@@ -92270,7 +93664,7 @@ in
       sha512 = "sxKt7h0vzCd+3Y81Ey2qinupL6DpRSZJclS04ugHDNmRUXGzqicMJ6iwayhSA0S0DwwX30c5ozyUthr1QKF6uw==";
     };
     dependencies = [
-      sources."@babel/parser-7.15.0"
+      sources."@babel/parser-7.15.2"
       sources."argparse-1.0.10"
       sources."bluebird-3.7.2"
       sources."catharsis-0.9.0"
@@ -96302,7 +97696,7 @@ in
           sources."chalk-2.4.2"
         ];
       })
-      sources."@babel/parser-7.15.0"
+      sources."@babel/parser-7.15.2"
       sources."@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.14.5"
       sources."@babel/plugin-external-helpers-7.8.3"
       sources."@babel/plugin-proposal-async-generator-functions-7.14.9"
@@ -96641,7 +98035,7 @@ in
       })
       sources."copy-descriptor-0.1.1"
       sources."core-js-2.6.12"
-      (sources."core-js-compat-3.16.0" // {
+      (sources."core-js-compat-3.16.1" // {
         dependencies = [
           sources."semver-7.0.0"
         ];
@@ -97981,7 +99375,7 @@ in
           sources."supports-color-5.5.0"
         ];
       })
-      sources."@babel/parser-7.15.0"
+      sources."@babel/parser-7.15.2"
       sources."@babel/plugin-proposal-class-properties-7.14.5"
       sources."@babel/plugin-proposal-nullish-coalescing-operator-7.14.5"
       sources."@babel/plugin-proposal-optional-chaining-7.14.5"
@@ -99283,7 +100677,7 @@ in
           sources."supports-color-5.5.0"
         ];
       })
-      sources."@babel/parser-7.15.0"
+      sources."@babel/parser-7.15.2"
       sources."@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.14.5"
       sources."@babel/plugin-proposal-async-generator-functions-7.14.9"
       sources."@babel/plugin-proposal-class-properties-7.14.5"
@@ -99911,7 +101305,7 @@ in
           sources."safe-buffer-5.1.2"
         ];
       })
-      (sources."core-js-compat-3.16.0" // {
+      (sources."core-js-compat-3.16.1" // {
         dependencies = [
           sources."semver-7.0.0"
         ];
@@ -100876,7 +102270,7 @@ in
       sources."reusify-1.0.4"
       sources."rfdc-1.3.0"
       sources."rimraf-3.0.2"
-      sources."rollup-2.56.0"
+      sources."rollup-2.56.1"
       (sources."rollup-plugin-inject-3.0.2" // {
         dependencies = [
           sources."estree-walker-0.6.1"
@@ -103714,7 +105108,7 @@ in
       sources."@babel/helper-wrap-function-7.14.5"
       sources."@babel/helpers-7.14.8"
       sources."@babel/highlight-7.14.5"
-      sources."@babel/parser-7.15.0"
+      sources."@babel/parser-7.15.2"
       sources."@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.14.5"
       sources."@babel/plugin-proposal-async-generator-functions-7.14.9"
       sources."@babel/plugin-proposal-class-properties-7.14.5"
@@ -103939,7 +105333,7 @@ in
       sources."convert-source-map-1.8.0"
       sources."copy-descriptor-0.1.1"
       sources."core-js-2.6.12"
-      (sources."core-js-compat-3.16.0" // {
+      (sources."core-js-compat-3.16.1" // {
         dependencies = [
           sources."semver-7.0.0"
         ];
@@ -106136,10 +107530,10 @@ in
   pnpm = nodeEnv.buildNodePackage {
     name = "pnpm";
     packageName = "pnpm";
-    version = "6.12.0";
+    version = "6.12.1";
     src = fetchurl {
-      url = "https://registry.npmjs.org/pnpm/-/pnpm-6.12.0.tgz";
-      sha512 = "3kBjfvJo6eFu6tKpXFhit/Mihd364cjaG4bblu4px8kVbSX+oGKmPBGver4zLG2dP0txtglNU+AS0e1OGEJQMw==";
+      url = "https://registry.npmjs.org/pnpm/-/pnpm-6.12.1.tgz";
+      sha512 = "p2fowre11u8/f6rw6n1zadtpNLQd2XNux40sUUdcVQqwryUG0YO7xveP96iRTBSWi+RdyCRlXnDgppyvb31d8g==";
     };
     buildInputs = globalBuildInputs;
     meta = {
@@ -107203,7 +108597,7 @@ in
       sources."@babel/helper-wrap-function-7.14.5"
       sources."@babel/helpers-7.14.8"
       sources."@babel/highlight-7.14.5"
-      sources."@babel/parser-7.15.0"
+      sources."@babel/parser-7.15.2"
       sources."@babel/plugin-bugfix-v8-spread-parameters-in-optional-chaining-7.14.5"
       sources."@babel/plugin-proposal-async-generator-functions-7.14.9"
       sources."@babel/plugin-proposal-class-properties-7.14.5"
@@ -107569,7 +108963,7 @@ in
       sources."copy-concurrently-1.0.5"
       sources."copy-descriptor-0.1.1"
       sources."core-js-2.6.12"
-      (sources."core-js-compat-3.16.0" // {
+      (sources."core-js-compat-3.16.1" // {
         dependencies = [
           sources."semver-7.0.0"
         ];
@@ -109092,7 +110486,7 @@ in
       sources."@babel/helper-split-export-declaration-7.14.5"
       sources."@babel/helper-validator-identifier-7.14.9"
       sources."@babel/highlight-7.14.5"
-      sources."@babel/parser-7.15.0"
+      sources."@babel/parser-7.15.2"
       sources."@babel/runtime-7.14.8"
       sources."@babel/template-7.14.5"
       sources."@babel/traverse-7.15.0"
@@ -109586,10 +110980,10 @@ in
   rollup = nodeEnv.buildNodePackage {
     name = "rollup";
     packageName = "rollup";
-    version = "2.56.0";
+    version = "2.56.1";
     src = fetchurl {
-      url = "https://registry.npmjs.org/rollup/-/rollup-2.56.0.tgz";
-      sha512 = "weEafgbjbHCnrtJPNyCrhYnjP62AkF04P0BcV/1mofy1+gytWln4VVB1OK462cq2EAyWzRDpTMheSP/o+quoiA==";
+      url = "https://registry.npmjs.org/rollup/-/rollup-2.56.1.tgz";
+      sha512 = "KkrsNjeiTfGJMUFBi/PNfj3fnt70akqdoNXOjlzwo98uA1qrlkmgt6SGaK5OwhyDYCVnJb6jb2Xa2wbI47P4Nw==";
     };
     dependencies = [
       sources."fsevents-2.3.2"
@@ -112022,7 +113416,7 @@ in
       sources."color-name-1.1.4"
       sources."concat-map-0.0.1"
       sources."configstore-5.0.1"
-      sources."core-js-3.16.0"
+      sources."core-js-3.16.1"
       sources."core-util-is-1.0.2"
       (sources."cross-spawn-6.0.5" // {
         dependencies = [
@@ -114576,7 +115970,7 @@ in
           sources."chalk-2.4.2"
         ];
       })
-      sources."@babel/parser-7.15.0"
+      sources."@babel/parser-7.15.2"
       sources."@babel/template-7.14.5"
       sources."@babel/traverse-7.15.0"
       sources."@babel/types-7.15.0"
@@ -117198,7 +118592,7 @@ in
       sources."content-type-1.0.4"
       sources."cookie-0.4.0"
       sources."cookie-signature-1.0.6"
-      sources."core-js-3.16.0"
+      sources."core-js-3.16.1"
       sources."core-util-is-1.0.2"
       sources."css-select-1.2.0"
       sources."css-what-2.1.3"
@@ -120924,7 +122318,7 @@ in
       sources."combined-stream-1.0.8"
       sources."concat-map-0.0.1"
       sources."console-control-strings-1.1.0"
-      sources."core-js-pure-3.16.0"
+      sources."core-js-pure-3.16.1"
       sources."core-util-is-1.0.2"
       sources."cssom-0.4.4"
       (sources."cssstyle-2.3.0" // {
@@ -123095,7 +124489,7 @@ in
       sources."config-chain-1.1.13"
       sources."configstore-3.1.5"
       sources."console-control-strings-1.1.0"
-      sources."core-js-3.16.0"
+      sources."core-js-3.16.1"
       sources."core-util-is-1.0.2"
       sources."create-error-class-3.0.2"
       sources."cross-spawn-6.0.5"
diff --git a/pkgs/top-level/aliases.nix b/pkgs/top-level/aliases.nix
index ae019485066..ec92bfeb583 100644
--- a/pkgs/top-level/aliases.nix
+++ b/pkgs/top-level/aliases.nix
@@ -182,6 +182,7 @@ mapAliases ({
   debian_devscripts = debian-devscripts; # added 2016-03-23
   deepin = throw "deepin was a work in progress and it has been canceled and removed https://github.com/NixOS/nixpkgs/issues/94870"; # added 2020-08-31
   deepspeech = throw "deepspeech was removed in favor of stt. https://github.com/NixOS/nixpkgs/issues/119496"; # added 2021-05-05
+  deltachat-electron = deltachat-desktop; # added 2021-07-18
   desktop_file_utils = desktop-file-utils; # added 2018-02-25
   devicemapper = lvm2; # added 2018-04-25
   digikam5 = digikam; # added 2017-02-18
diff --git a/pkgs/top-level/all-packages.nix b/pkgs/top-level/all-packages.nix
index b6ca82f1f2b..65fd40e5088 100644
--- a/pkgs/top-level/all-packages.nix
+++ b/pkgs/top-level/all-packages.nix
@@ -1463,8 +1463,9 @@ with pkgs;
 
   deltachat-cursed = callPackage ../applications/networking/instant-messengers/deltachat-cursed { };
 
-  deltachat-electron = callPackage
-    ../applications/networking/instant-messengers/deltachat-electron { };
+  deltachat-desktop = callPackage ../applications/networking/instant-messengers/deltachat-desktop {
+    inherit (darwin.apple_sdk.frameworks) CoreServices;
+  };
 
   deskew = callPackage ../applications/graphics/deskew { };
 
@@ -16524,7 +16525,10 @@ with pkgs;
 
   libdeflate = callPackage ../development/libraries/libdeflate { };
 
-  libdeltachat = callPackage ../development/libraries/libdeltachat { };
+  libdeltachat = callPackage ../development/libraries/libdeltachat {
+    inherit (darwin.apple_sdk.frameworks) CoreFoundation Security;
+    inherit (darwin) libiconv;
+  };
 
   libdevil = callPackage ../development/libraries/libdevil {
     inherit (darwin.apple_sdk.frameworks) OpenGL;