Robert Schütz 2 years ago committed by Robert Schütz
parent 06da9e07c3
commit 12417777b2
  1. 44
      pkgs/applications/networking/instant-messengers/deltachat-desktop/default.nix
  2. 19
      pkgs/applications/networking/instant-messengers/deltachat-desktop/package.json
  3. 2
      pkgs/applications/networking/instant-messengers/deltachat-desktop/update.sh
  4. 5273
      pkgs/development/node-packages/node-packages.nix

@ -1,38 +1,41 @@
{ lib
, copyDesktopItems
, electron
, electron_14
, esbuild
, fetchFromGitHub
, fetchpatch
, libdeltachat
, makeDesktopItem
, makeWrapper
, nodePackages
, nodejs-14_x
, noto-fonts-emoji
, pkg-config
, roboto
, rustPlatform
, sqlcipher
, stdenv
, CoreServices
}:
let
libdeltachat' = libdeltachat.overrideAttrs (old: rec {
version = "1.70.0";
version = "1.76.0";
src = fetchFromGitHub {
owner = "deltachat";
repo = "deltachat-core-rust";
rev = version;
hash = "sha256-702XhFWvFG+g++3X97sy6C5DMNWogv1Xbr8QPR8QyLo=";
hash = "sha256-aeYOszOFyLaC1xKswYZLzqoWSFFWOOeOkc+WrtqU0jo=";
};
cargoDeps = rustPlatform.fetchCargoTarball {
inherit src;
name = "${old.pname}-${version}";
hash = "sha256-MiSGJMXe8vouv4XEHXq274FHEvBMtd7IX6DyNJIWYeU=";
hash = "sha256-sBFXcLXpAkX+HzRKrLKaHhi5ieS8Yc/Uf30WcXyWrok=";
};
});
electronExec = if stdenv.isDarwin then
"${electron}/Applications/Electron.app/Contents/MacOS/Electron"
"${electron_14}/Applications/Electron.app/Contents/MacOS/Electron"
else
"${electron}/bin/electron";
"${electron_14}/bin/electron";
esbuild' = esbuild.overrideAttrs (old: rec {
version = "0.12.29";
src = fetchFromGitHub {
@ -42,19 +45,18 @@ let
hash = "sha256-oU++9E3StUoyrMVRMZz8/1ntgPI62M1NoNz9sH/N5Bg=";
};
});
in nodePackages.deltachat-desktop.override rec {
in nodejs-14_x.pkgs.deltachat-desktop.override rec {
pname = "deltachat-desktop";
version = "1.26.0";
version = "1.28.0";
src = fetchFromGitHub {
owner = "deltachat";
repo = "deltachat-desktop";
rev = "v${version}";
hash = "sha256-IDyGV2+/+wHp5N4G10y5OHvw2yoyVxWx394xszIYoj4=";
hash = "sha256-Ur0UxaKEWp+y7lGz2Khsg4npOf+gjCiOoijkSbnp0hg=";
};
nativeBuildInputs = [
esbuild
makeWrapper
pkg-config
] ++ lib.optionals stdenv.isLinux [
@ -72,27 +74,29 @@ in nodePackages.deltachat-desktop.override rec {
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 ''
postInstall = ''
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
awk '!/^#/ && NF' build/packageignore_list \
| xargs -I {} sh -c "rm -rf {}" || true
ln -sf ${noto-fonts-emoji}/share/fonts/noto/NotoColorEmoji.ttf \
$out/lib/node_modules/deltachat-desktop/html-dist/fonts/noto/emoji
for font in $out/lib/node_modules/deltachat-desktop/html-dist/fonts/Roboto-*.ttf; do
ln -sf ${roboto}/share/fonts/truetype/$(basename $font) \
$out/lib/node_modules/deltachat-desktop/html-dist/fonts
done
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 \
--set LD_PRELOAD ${sqlcipher}/lib/libsqlcipher${stdenv.hostPlatform.extensions.sharedLibrary} \
--add-flags $out/lib/node_modules/deltachat-desktop
'';

@ -1,23 +1,24 @@
{
"name": "deltachat-desktop",
"version": "1.26.0",
"version": "1.28.0",
"dependencies": {
"@blueprintjs/core": "^3.22.3",
"@deltachat/message_parser_wasm": "^0.1.0",
"@deltachat/message_parser_wasm": "^0.3.0",
"@mapbox/geojson-extent": "^1.0.0",
"application-config": "^1.0.1",
"classnames": "^2.3.1",
"debounce": "^1.2.0",
"deltachat-node": "1.70.0",
"deltachat-node": "1.76.0",
"emoji-js-clean": "^4.0.0",
"emoji-mart": "^3.0.0",
"emoji-regex": "^9.2.2",
"error-stack-parser": "2.0.6",
"error-stack-parser": "^2.0.7",
"filesize": "^8.0.6",
"immutable": "^4.0.0",
"mapbox-gl": "^1.12.0",
"mime-types": "^2.1.31",
"moment": "^2.27.0",
"node-fetch": "^2.6.1",
"node-fetch": "^2.6.7",
"path-browserify": "^1.0.1",
"rc": "^1.2.8",
"react": "^17.0.2",
@ -28,9 +29,11 @@
"react-virtualized-auto-sizer": "^1.0.5",
"react-window": "^1.8.6",
"react-window-infinite-loader": "^1.0.7",
"react-zoom-pan-pinch": "^2.1.3",
"source-map-support": "^0.5.19",
"stackframe": "^1.2.1",
"tempy": "^0.3.0",
"url-parse": "^1.5.3",
"url-parse": "^1.5.9",
"use-debounce": "^3.3.0",
"@babel/core": "^7.7.7",
"@babel/preset-env": "^7.7.7",
@ -48,8 +51,8 @@
"@types/react-window": "^1.8.4",
"@types/react-window-infinite-loader": "^1.0.4",
"@types/url-parse": "^1.4.3",
"electron": "^13.1.6",
"esbuild": "^0.12.15",
"electron": "^14.2.6",
"esbuild": "^0.12.29",
"glob-watcher": "^5.0.5",
"sass": "^1.26.5",
"typescript": "^4.4.4",

@ -29,7 +29,7 @@ tac 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","electron-builder","electron-devtools-installer","electron-notarize","eslint","eslint-config-prettier","eslint-plugin-react-hooks","hallmark","prettier","tape","testcafe","testcafe-browser-provider-electron","testcafe-react-selectors","walk"]))) }' \
jq '{ name, version, dependencies: (.dependencies + (.devDependencies | del(.["@types/chai","@types/mocha","@typescript-eslint/eslint-plugin","@typescript-eslint/parser","chai","electron-builder","electron-devtools-installer","electron-notarize","eslint","eslint-config-prettier","eslint-plugin-react-hooks","hallmark","mocha","prettier","testcafe","testcafe-browser-provider-electron","testcafe-react-selectors","ts-node","walk"]))) }' \
"$src/package.json" > package.json.new
if cmp --quiet package.json{.new,}; then

File diff suppressed because it is too large Load Diff
Loading…
Cancel
Save