@Technetium1: Every release since 287.250616.0 fails to build for me in a clean chroot. See my upstream issue.
By the way, they reverted the filename changes with 299.250725.1.
Git Clone URL: | https://aur.archlinux.org/tutanota-desktop.git (read-only, click to copy) |
---|---|
Package Base: | tutanota-desktop |
Description: | The desktop client for Tutanota, the secure e-mail service. |
Upstream URL: | https://tuta.com/secure-email |
Licenses: | GPL-3.0-or-later |
Submitter: | yochananmarqos |
Maintainer: | yochananmarqos (ajgraves) |
Last Packager: | yochananmarqos |
Votes: | 31 |
Popularity: | 0.090747 |
First Submitted: | 2020-03-03 17:27 (UTC) |
Last Updated: | 2025-06-02 19:09 (UTC) |
@Technetium1: Every release since 287.250616.0 fails to build for me in a clean chroot. See my upstream issue.
By the way, they reverted the filename changes with 299.250725.1.
Confirming that 299.250722.0
builds and launches. Please test and push an update. Reminder that tutanota-desktop.desktop
must now target /opt/tutanota-desktop/Tuta Mail
. It started out of bounds on my display but could be moved easily, someone should report that upstream.
PSA: This currently fails to build. Use tutanota-desktop-bin
for now.
I get this error:
<--- JS stacktrace --->
FATAL ERROR: Reached heap limit Allocation failed - JavaScript heap out of memory ----- Native stack trace -----
1: 0xb8ced1 node::OOMErrorHandler(char const, v8::OOMDetails const&) [node] 2: 0xf06460 v8::Utils::ReportOOMFailure(v8::internal::Isolate, char const, v8::OOMDetails const&) [node] 3: 0xf06747 v8::internal::V8::FatalProcessOutOfMemory(v8::internal::Isolate, char const, v8::OOMDetails const&) [node] 4: 0x11182e5 [node] 5: 0x1130168 v8::internal::Heap::CollectGarbage(v8::internal::AllocationSpace, v8::internal::GarbageCollectionReason, v8::GCCallbackFlags) [node] 6: 0x1106281 v8::internal::HeapAllocator::AllocateRawWithLightRetrySlowPath(int, v8::internal::AllocationType, v8::internal::AllocationOrigin, v8::internal::AllocationAlignment) [node] 7: 0x1107415 v8::internal::HeapAllocator::AllocateRawWithRetryOrFailSlowPath(int, v8::internal::AllocationType, v8::internal::AllocationOrigin, v8::internal::AllocationAlignment) [node] 8: 0x10e4a66 v8::internal::Factory::NewFillerObject(int, v8::internal::AllocationAlignment, v8::internal::AllocationType, v8::internal::AllocationOrigin) [node] 9: 0x1540896 v8::internal::Runtime_AllocateInYoungGeneration(int, unsigned long, v8::internal::Isolate*) [node] 10: 0x7d89232d9ef6 /home/jaschlupp/.cache/yay/tutanota-desktop/PKGBUILD: Zeile 53: 18020 Abgebrochen (Speicherabzug geschrieben) node desktop --custom-desktop-release --unpacked ==> FEHLER: Ein Fehler geschah in build(). Breche ab... -> Fehler beim Erstellen: tutanota-desktop-exit status 4 -> Die folgenden Pakete konnten nicht installiert werden. Ein manueller Eingriff ist erforderlich: tutanota-desktop - exit status 4
I tried updating from 250.241025.0 to 251.241108.0 and got this error:
wasm build: mkdir -p include/oqs
cp "liboqs/src/oqs.h" include/oqs
cp "liboqs/src/common/common.h" include/oqs
cp "liboqs/src/common/rand/rand.h" include/oqs
cp "liboqs/src/common/aes/aes.h" include/oqs
cp "liboqs/src/common/sha2/sha2.h" include/oqs
cp "liboqs/src/common/sha3/sha3.h" include/oqs
cp "liboqs/src/common/sha3/sha3x4.h" include/oqs
cp "liboqs/src/kem/kyber/kem_kyber.h" include/oqs
cp "liboqs/src/kem/kem.h" include/oqs
cp "liboqs/src/sig/sig.h" include/oqs
touch include/oqs/oqsconfig.h
emcc \
"liboqs/src/kem/kem.c" "liboqs/src/kem/kyber/pqcrystals-kyber_kyber1024_ref/kem.c" "liboqs/src/kem/kyber/pqcrystals-kyber_kyber1024_ref/verify.c" "liboqs/src/kem/kyber/pqcrystals-kyber_kyber1024_ref/indcpa.c" "liboqs/src/kem/kyber/pqcrystals-kyber_kyber1024_ref/symmetric-shake.c" "liboqs/src/kem/kyber/pqcrystals-kyber_kyber1024_ref/poly.c" "liboqs/src/kem/kyber/pqcrystals-kyber_kyber1024_ref/polyvec.c" "liboqs/src/kem/kyber/pqcrystals-kyber_kyber1024_ref/cbd.c" "liboqs/src/kem/kyber/pqcrystals-kyber_kyber1024_ref/ntt.c" "liboqs/src/kem/kyber/pqcrystals-kyber_kyber1024_ref/reduce.c" "liboqs/src/kem/kyber/kem_kyber_1024.c" "liboqs/src/common/pqclean_shims/fips202.c" "liboqs/src/common/sha3/xkcp_sha3.c" "liboqs/src/common/sha3/xkcp_low/KeccakP-1600/plain-64bits/KeccakP-1600-opt64.c" "liboqs/src/common/common.c" "../../packages/tutanota-crypto/lib/encryption/Liboqs/rand.c" "../../packages/tutanota-crypto/lib/encryption/Liboqs/exit.c" \
-I "include" \
-I "liboqs/src/kem/kyber/pqcrystals-kyber_kyber1024_ref" \
-I "liboqs/src/common/pqclean_shims" \
-DOQS_VERSION_TEXT=\"tutakyber\" \
-DOQS_ENABLE_KEM_kyber_1024=1 \
-DOQS_ENABLE_KEM_KYBER=1 \
-DOQS_DIST_BUILD=1 \
-DKYBER_K=4 \
-flto \
-O3 \
-s STANDALONE_WASM \
--no-entry \
-s TOTAL_MEMORY=48MB \
-s EXPORTED_FUNCTIONS="['_OQS_KEM_new', '_OQS_KEM_free', '_OQS_KEM_keypair', '_OQS_KEM_encaps', '_OQS_KEM_decaps', '_TUTA_inject_entropy', '_malloc', '_free']" \
-o ../../build/wasm/liboqs.wasm
wasm build: emcc: error: error in evaluating config file (/usr/lib/emscripten/.emscripten): name 'os' is not defined, text: NODE_JS = '/usr/bin/node'
LLVM_ROOT = '/opt/emscripten-llvm/bin'
BINARYEN_ROOT = '/usr'
EMSCRIPTEN_ROOT = '/usr/lib/emscripten'
CACHE = os.path.expanduser('~/.cache/emscripten')
make: *** [Makefile_liboqs:54: ../../build/wasm/liboqs.wasm] Error 1
Build error: Error: Could not load wasm-loader:liboqs.wasm (imported by src/common/api/worker/facades/KyberFacade.ts): Command failed: make -f Makefile_liboqs build
emcc: error: error in evaluating config file (/usr/lib/emscripten/.emscripten): name 'os' is not defined, text: NODE_JS = '/usr/bin/node'
I'm running EndeavourOS
When I tried updating from 246.241008.0-1
to 250.241025.0
, I received a JS heap out of memory error. The error from stdout is below. Does anyone have any suggestions?
worker-search-DcoQ-8AD.js 54.29296875K
/src/common/api/worker/search/DbFacade.ts
/src/common/api/worker/search/SearchIndexEncoding.ts
/src/common/api/worker/search/IndexUtils.ts
/src/common/api/worker/search/IndexTables.ts
/src/mail-app/workerUtils/index/ContactIndexer.ts
/src/mail-app/workerUtils/index/MailIndexer.ts
/src/mail-app/workerUtils/index/IndexerCore.ts
/src/mail-app/workerUtils/index/SuggestionFacade.ts
/src/mail-app/workerUtils/index/Indexer.ts
/src/mail-app/workerUtils/index/SearchFacade.ts
<--- Last few GCs --->
[28203:0xa23d470] 75829 ms: Scavenge 2036.4 (2083.7) -> 2035.1 (2093.0) MB, 11.49 / 0.00 ms (average mu = 0.712, current mu = 0.339) allocation failure;
[28203:0xa23d470] 77331 ms: Mark-Compact (reduce) 2042.4 (2093.7) -> 2040.6 (2085.0) MB, 909.45 / 0.00 ms (+ 414.3 ms in 103 steps since start of marking, biggest step 6.5 ms, walltime since start of marking 1397 ms) (average mu = 0.486, current mu =
<--- JS stacktrace --->
FATAL ERROR: Reached heap limit Allocation failed - JavaScript heap out of memory
----- Native stack trace -----
1: 0xb8ced1 node::OOMErrorHandler(char const*, v8::OOMDetails const&) [node]
2: 0xf06460 v8::Utils::ReportOOMFailure(v8::internal::Isolate*, char const*, v8::OOMDetails const&) [node]
3: 0xf06747 v8::internal::V8::FatalProcessOutOfMemory(v8::internal::Isolate*, char const*, v8::OOMDetails const&) [node]
4: 0x11182e5 [node]
5: 0x1130168 v8::internal::Heap::CollectGarbage(v8::internal::AllocationSpace, v8::internal::GarbageCollectionReason, v8::GCCallbackFlags) [node]
6: 0x1106281 v8::internal::HeapAllocator::AllocateRawWithLightRetrySlowPath(int, v8::internal::AllocationType, v8::internal::AllocationOrigin, v8::internal::AllocationAlignment) [node]
7: 0x1107415 v8::internal::HeapAllocator::AllocateRawWithRetryOrFailSlowPath(int, v8::internal::AllocationType, v8::internal::AllocationOrigin, v8::internal::AllocationAlignment) [node]
8: 0x10e4a66 v8::internal::Factory::NewFillerObject(int, v8::internal::AllocationAlignment, v8::internal::AllocationType, v8::internal::AllocationOrigin) [node]
9: 0x1540896 v8::internal::Runtime_AllocateInYoungGeneration(int, unsigned long*, v8::internal::Isolate*) [node]
10: 0x7b6dc3cd9ef6
/home/user/AUR/tutanota-desktop/PKGBUILD: line 53: 28203 Aborted (core dumped) node desktop --custom-desktop-release --unpacked
==> ERROR: A failure occurred in build().
Aborting...
@gilbs: I have no idea how you're reproducing the supposed issue in a clean chroot. I just tested today on two machines and both 240.240816.0-1 and 244.240903.0-1 built just fine. Neither machine has ever had emscripten
installed as it's not a runtime dependency for anything in the repos.
Either way, whether or not emscripten
is installed on the host is of no consequence in a clean chroot.
I can reproduce in a clean chroot and in a VM. IIUC, the issue will only reproduce when emscripten is not pre-installed on the machine. emscripten exectuables are only added to PATH after a new login because they reside in a non-standard location.
IMHO this is a bug, but it's not really hurting because you can source /etc/profile.d/emscripten.sh
manually or re-login (as suggested in the install logs of emscripten) and the issue is gone.
I don't think I did anything suspicious with npm, but if you've tested in a clean chroot and it worked, then my setup has to be the issue somehow. Thanks.
@gilbs: I can't reproduce building in a clean chroot. Local Node modules may be interfering if you've installed packages with NPM.
Pinned Comments
yochananmarqos commented on 2025-02-21 16:35 (UTC) (edited on 2025-07-24 15:59 (UTC) by yochananmarqos)
PSA: This currently fails to build. Use
tutanota-desktop-bin
for now.