Compiling Delta Chat for CentOS/RHEL

The most recent Android one from the Play Store, ie 1.14.5. But, the app also crashes when I try to create a new account so it is not just when I try to import a backup.

I suggest you do a git checkout to version/tag 1.14.1 and then do the process from the start. 1.15.2-master is still unstable it seems.

OK, just did. Just to note that I previously compiled 1.15.1, not 1.15.2.

Checking out and compiling 1.14.1 results in an error message that libXss is not available which I was able to correct by “yum install libXScrnSaver”, When I then try to launch the application with “npm run start – --no-sandbox” I get a new error message:

Error: Cannot find module ‘./tsc-dist/main’

I have not been able to resolve this issue yet. Might you have a suggestion?

Googling told me that I needed to install

npm install --global typescript

After doing so and going through the build process again the app crashes - both when setting up an account anew or importing an Android backup - with the following last lines in the log file in .config:

2021-02-24T22:29:13.151Z main/deltachat DEBUG “sendToRenderer: DD_EVENT_CHAT_MODIFIED” {“chatId”:11,“chat”:{“id”:11,“name”:“Device messages”,“isProtected”:false,“profileImage”:"/root/.config/DeltaChat/accounts/ac0/db.sqlite-blobs/icon-device.png",“archived”:false,“subtitle”:“Locally generated messages”,“type”:100,“isUnpromoted”:false,“isSelfTalk”:false,“contacts”:[{“address”:“device@localhost”,“color”:"#f23030",“displayName”:“Device messages”,“firstName”:“Device”,“id”:5,“name”:“Device messages”,“profileImage”:"/root/.config/DeltaChat/accounts/ac0/db.sqlite-blobs/icon-device.png",“nameAndAddr”:“Device messages (device@localhost)”,“isBlocked”:false,“isVerified”:false}],“contactIds”:[5],“color”:"#f23030",“freshMessageCounter”:3,“isGroup”:false,“isDeaddrop”:false,“isDeviceChat”:true,“selfInGroup”:false,“muted”:false,“ephemeralTimer”:0}}
2021-02-24T22:29:13.152Z renderer/ipc DEBUG null “backend” “DD_EVENT_CHAT_MODIFIED” {“chat”:{“archived”:false,“color”:"#f23030",“contactIds”:[5],“contacts”:[{“address”:“device@localhost”,“color”:"#f23030",“displayName”:“Device messages”,“firstName”:“Device”,“id”:5,“isBlocked”:false,“isVerified”:false,“name”:“Device messages”,“nameAndAddr”:“Device messages (device@localhost)”,“profileImage”:"/root/.config/DeltaChat/accounts/ac0/db.sqlite-blobs/icon-device.png"}],“ephemeralTimer”:0,“freshMessageCounter”:2,“id”:11,“isDeaddrop”:false,“isDeviceChat”:true,“isGroup”:false,“isProtected”:false,“isSelfTalk”:false,“isUnpromoted”:false,“muted”:false,“name”:“Device messages”,“profileImage”:"/root/.config/DeltaChat/accounts/ac0/db.sqlite-blobs/icon-device.png",“selfInGroup”:false,“subtitle”:“Locally generated messages”,“type”:100},“chatId”:11}
2021-02-24T22:29:13.152Z renderer/ipc DEBUG null “backend” “DC_EVENT_MSGS_CHANGED” [11,12]
2021-02-24T22:29:13.152Z renderer/stores/ChatStore DEBUG null “DC_EVENT_MSGS_CHANGED” 11 12
2021-02-24T22:29:13.152Z renderer/ipc DEBUG null “backend” “DD_EVENT_CHATLIST_CHANGED” {}
2021-02-24T22:29:13.152Z renderer/ipc DEBUG null “backend” “DD_EVENT_CHAT_MODIFIED” {“chat”:{“archived”:false,“color”:"#f23030",“contactIds”:[5],“contacts”:[{“address”:“device@localhost”,“color”:"#f23030",“displayName”:“Device messages”,“firstName”:“Device”,“id”:5,“isBlocked”:false,“isVerified”:false,“name”:“Device messages”,“nameAndAddr”:“Device messages (device@localhost)”,“profileImage”:"/root/.config/DeltaChat/accounts/ac0/db.sqlite-blobs/icon-device.png"}],“ephemeralTimer”:0,“freshMessageCounter”:3,“id”:11,“isDeaddrop”:false,“isDeviceChat”:true,“isGroup”:false,“isProtected”:false,“isSelfTalk”:false,“isUnpromoted”:false,“muted”:false,“name”:“Device messages”,“profileImage”:"/root/.config/DeltaChat/accounts/ac0/db.sqlite-blobs/icon-device.png",“selfInGroup”:false,“subtitle”:“Locally generated messages”,“type”:100},“chatId”:11}
[root@gcc deltachat-desktop]#

Does this tell you what the reason might be?

can you do the testing outside of docker, not as root and without the --no-sandbox?

also when checking out an other version with git you need to start the building process from the beginning:

  1. delete node_modules, html_dist and tsc-dist
  2. npm install
  3. npm run build
  4. npm run start to test
  5. follow the steps to package the app.

I can not see the reason for your crash currently, does it also appear when you use the appimage?
Which email provider do you use?

I will do it again outside docker. Note that I stop and kill the container and then create it again and restart the build process to avoid any potential residual issues. I did not package the app inside or outside the docker environment.

My e-mail provider is 1and1.com and it seems to work on my multiple phones and tablet.

Is it possible that DC needs some library module that I have not available in my docker container or on my computer? Usually I would run ‘ldd nameofsoftware’ but since DC is started. It is not possible to do ‘ldd npm start – --no-sandbox’. Is there any way to answer the question on other libraries?

By the way, I just noticed that the version I checked out most recently from the git archive, 1.14.1 uses deltachat core version 1.50.0 and sqlite version 3.33.0 when I open the About Delta Chat window. Does it sound correct that the desktop version 1.14.1 should be using a later version of the core?

If not, I am not sure how to correct this since I started with a new container when building 1.14.1.