Call for testing: proton-mail

Hi, I’m working on a snap for the Proton Mail application. The repository is at pedro-avalos/proton-mail-snap and the listing is under the name proton-mail. Currently, I only have a beta release as per the snapcrafters template, so you should be able to install it using snap install --beta proton-mail. Let me know what you think!

1 Like

Hi ! @pedro-avalos :slightly_smiling_face:

I tested your snap, it works well :white_check_mark:

Why not use the name protonmail instead of proton-mail (the name seems available)?

Hi @baldeuniversel! Thank you for testing the snap :grin:

I thought about using protonmail instead, but the package that Proton itself makes is under proton-mail.

Proton has been moving away from using “ProtonMail” and instead using “Proton Mail” for their branding, since their brand and ecosystem consists of more than just their email offering.

https://proton.me/blog/new-visual-universe

1 Like

Please enable wayland and disable sandboxing for nvidia. I think that’d be awesome. For ref

@soumyaDghosh ! Did you mean ? :face_with_monocle:

#!/bin/bash

if [[ ! -n "$DISABLE_WAYLAND" ]] && [[ -n "$WAYLAND_DISPLAY" ]]; then
  WAYLAND_OPTS="--enable-features=WaylandWindowDecorations,WebRTCPipeWireCapturer --ozone-platform-hint=auto"
fi

exec "$SNAP/opt/Element/element-desktop" --no-sandbox --disable-seccomp-filter-sandbox $WAYLAND_OPTS "$@"

1 Like

Hi @soumyaDghosh , I’ve added the launcher wrapper and updated the beta to 1.0.6, let me know what you think!

1 Like

I looked into the code, looks great!!! Just a question, does the chromium sandboxing work under nvidia? What if we just disable sandboxing in nvidia? Also, to add up, I am not sure if sandboxing works at all in electron based snaps, because the browser-support plug needs to be there, which is not for these electron apps. What do you think about that? Also, thanks a lot for taking your time and maintain it. May be we can upstream this also, if it gets stable?

Hi, sorry for the long delay, I have been with some travel and work the past few weeks. I don’t know what you mean about the browser-support plug not being there, it is in the snapcraft.yaml file, and it should auto-connect.

Sandboxing (ie chrome-sandbox), as far as I know, does not work with snaps; snapcraft will warn me if I try to copy the chrome-sandbox file (hence why it is excluded when priming). Unless I’m misunderstanding what you mean by sandboxing, I think I always need to disable sandboxing (ie use --no-sandbox in the launcher).

Let me know what you think and if I misunderstood what you are talking about (which is very likely honestly).

Heh, of course the snap broke just now when I bumped the version. Any help debugging this would be appreciated. It seems to only crash when on Wayland…

App logs

Gtk-Message: 16:52:26.071: Not loading module "atk-bridge": The functionality is provided by GTK natively. Please try to not load it.
/usr/share/libdrm/amdgpu.ids: No such file or directory
/usr/share/libdrm/amdgpu.ids: No such file or directory
/usr/share/libdrm/amdgpu.ids: No such file or directory
Segmentation fault (core dumped)

journalctl output

Sep 07 17:02:36 hephaestus systemd[5678]: Started snap.proton-mail.proton-mail-c1925606-9972-4254-adc6-96211cfeef95.scope.
Sep 07 17:02:36 hephaestus kernel: kauditd_printk_skb: 244 callbacks suppressed
Sep 07 17:02:36 hephaestus kernel: audit: type=1400 audit(1725746556.805:397306): apparmor="DENIED" operation="capable" class="cap" profile="/usr/lib/snapd/snap-confine" pid=67854 comm="snap-confine" capability=12  capname="net_admin"
Sep 07 17:02:36 hephaestus kernel: audit: type=1400 audit(1725746556.813:397307): apparmor="DENIED" operation="open" class="file" profile="snap-update-ns.proton-mail" name="/proc/67872/maps" pid=67872 comm="5" requested_mask="r" denied_mask="r" fsuid=1000 ouid=0
Sep 07 17:02:36 hephaestus kernel: audit: type=1326 audit(1725746556.902:397308): auid=1000 uid=1000 gid=1000 ses=5 subj=snap.proton-mail.proton-mail pid=67908 comm=50726F746F6E204D61696C20426574 exe=2F736E61702F70726F746F6E2D6D61696C2F342F7573722F6C69622F70726F746F6E2D6D61696C2F50726F746F6E204D61696C2042657461 sig=0 arch=c000003e syscall=330 compat=0 ip=0x7601b7c3d2fb code=0x50000
Sep 07 17:02:36 hephaestus kernel: audit: type=1326 audit(1725746556.903:397309): auid=1000 uid=1000 gid=1000 ses=5 subj=snap.proton-mail.proton-mail pid=67907 comm=50726F746F6E204D61696C20426574 exe=2F736E61702F70726F746F6E2D6D61696C2F342F7573722F6C69622F70726F746F6E2D6D61696C2F50726F746F6E204D61696C2042657461 sig=0 arch=c000003e syscall=330 compat=0 ip=0x7a132dab52fb code=0x50000
Sep 07 17:02:36 hephaestus kernel: audit: type=1400 audit(1725746556.909:397310): apparmor="DENIED" operation="open" class="file" profile="snap.proton-mail.proton-mail" name="/snap/alacritty/135/usr/share/fonts/" pid=67854 comm=50726F746F6E204D61696C20426574 requested_mask="r" denied_mask="r" fsuid=1000 ouid=0
Sep 07 17:02:36 hephaestus kernel: audit: type=1400 audit(1725746556.909:397311): apparmor="DENIED" operation="open" class="file" profile="snap.proton-mail.proton-mail" name="/snap/alacritty/135/usr/share/fonts/" pid=67854 comm=50726F746F6E204D61696C20426574 requested_mask="r" denied_mask="r" fsuid=1000 ouid=0
Sep 07 17:02:36 hephaestus kernel: audit: type=1400 audit(1725746556.909:397312): apparmor="DENIED" operation="open" class="file" profile="snap.proton-mail.proton-mail" name="/snap/alacritty/135/usr/share/fonts/" pid=67854 comm=50726F746F6E204D61696C20426574 requested_mask="r" denied_mask="r" fsuid=1000 ouid=0
Sep 07 17:02:36 hephaestus kernel: audit: type=1326 audit(1725746556.910:397313): auid=1000 uid=1000 gid=1000 ses=5 subj=snap.proton-mail.proton-mail pid=67854 comm=50726F746F6E204D61696C20426574 exe=2F736E61702F70726F746F6E2D6D61696C2F342F7573722F6C69622F70726F746F6E2D6D61696C2F50726F746F6E204D61696C2042657461 sig=0 arch=c000003e syscall=425 compat=0 ip=0x7b88de0f525d code=0x50000
Sep 07 17:02:36 hephaestus kernel: audit: type=1326 audit(1725746556.910:397314): auid=1000 uid=1000 gid=1000 ses=5 subj=snap.proton-mail.proton-mail pid=67854 comm=50726F746F6E204D61696C20426574 exe=2F736E61702F70726F746F6E2D6D61696C2F342F7573722F6C69622F70726F746F6E2D6D61696C2F50726F746F6E204D61696C2042657461 sig=0 arch=c000003e syscall=425 compat=0 ip=0x7b88de0f525d code=0x50000
Sep 07 17:02:36 hephaestus kernel: audit: type=1326 audit(1725746556.933:397315): auid=1000 uid=1000 gid=1000 ses=5 subj=snap.proton-mail.proton-mail pid=67854 comm=50726F746F6E204D61696C20426574 exe=2F736E61702F70726F746F6E2D6D61696C2F342F7573722F6C69622F70726F746F6E2D6D61696C2F50726F746F6E204D61696C2042657461 sig=0 arch=c000003e syscall=203 compat=0 ip=0x7b88de0716e1 code=0x50000
Sep 07 17:02:37 hephaestus dbus-daemon[5714]: apparmor="DENIED" operation="dbus_method_call"  bus="session" path="/org/freedesktop/secrets" interface="org.freedesktop.DBus.Properties" member="GetAll" mask="send" name=":1.8" pid=67854 label="snap.proton-mail.proton-mail" peer_pid=5703 peer_label="unconfined"
Sep 07 17:02:37 hephaestus dbus-daemon[5714]: apparmor="DENIED" operation="dbus_method_call"  bus="session" path="/org/freedesktop/secrets" interface="org.freedesktop.Secret.Service" member="SearchItems" mask="send" name=":1.8" pid=67854 label="snap.proton-mail.proton-mail" peer_pid=5703 peer_label="unconfined"
Sep 07 17:02:37 hephaestus systemd[1]: Started systemd-coredump@24-67978-0.service - Process Core Dump (PID 67978/UID 0).
Sep 07 17:02:37 hephaestus systemd-coredump[67979]: [🡕] Process 67854 (Proton Mail Bet) of user 1000 dumped core.

                                                    Module /snap/proton-mail/4/gnome-platform/usr/lib/x86_64-linux-gnu/libudev.so.1.7.8 from deb systemd-255.4-1ubuntu8.2.amd64
                                                    Module /snap/proton-mail/4/gnome-platform/usr/lib/x86_64-linux-gnu/libzstd.so.1.5.5 from deb libzstd-1.5.5+dfsg2-2build1.amd64
                                                    Module /snap/proton-mail/4/gnome-platform/usr/lib/x86_64-linux-gnu/libsystemd.so.0.38.0 from deb systemd-255.4-1ubuntu8.2.amd64
                                                    Stack trace of thread 67854:
                                                    #0  0x0000568ff11b56e4 n/a (Proton Mail Beta + 0x2f496e4)
                                                    #1  0x0000568ff11a8a52 n/a (Proton Mail Beta + 0x2f3ca52)
                                                    #2  0x0000568ff068b8cd n/a (Proton Mail Beta + 0x241f8cd)
                                                    #3  0x0000568ff068b758 n/a (Proton Mail Beta + 0x241f758)
                                                    #4  0x0000568ff0262207 n/a (Proton Mail Beta + 0x1ff6207)
                                                    #5  0x0000568ff025feaa n/a (Proton Mail Beta + 0x1ff3eaa)
                                                    #6  0x0000568ff025feaa n/a (Proton Mail Beta + 0x1ff3eaa)
                                                    #7  0x0000568ff025feaa n/a (Proton Mail Beta + 0x1ff3eaa)
                                                    #8  0x0000568ff025feaa n/a (Proton Mail Beta + 0x1ff3eaa)
                                                    #9  0x0000568ff025feaa n/a (Proton Mail Beta + 0x1ff3eaa)
                                                    #10 0x0000568ff0377c2e n/a (Proton Mail Beta + 0x210bc2e)
                                                    #11 0x0000568ff028ec13 n/a (Proton Mail Beta + 0x2022c13)
                                                    #12 0x0000568ff025d847 n/a (Proton Mail Beta + 0x1ff1847)
                                                    #13 0x0000568ff1b55f5b n/a (Proton Mail Beta + 0x38e9f5b)
                                                    #14 0x0000568ff1b56e1a n/a (Proton Mail Beta + 0x38eae1a)
                                                    #15 0x0000568ff1b56f95 n/a (Proton Mail Beta + 0x38eaf95)
                                                    #16 0x0000568ff1b82997 n/a (Proton Mail Beta + 0x3916997)
                                                    #17 0x0000568ff7f6e9fe n/a (Proton Mail Beta + 0x9d029fe)
                                                    #18 0x0000568ff7f6e6d1 _ZN4node13CallbackScopeD1Ev (Proton Mail Beta + 0x9d026d1)
                                                    #19 0x0000568ff07a043a n/a (Proton Mail Beta + 0x253443a)
                                                    #20 0x0000568ff063b49b n/a (Proton Mail Beta + 0x23cf49b)
                                                    #21 0x0000568ff0630ae1 n/a (Proton Mail Beta + 0x23c4ae1)
                                                    #22 0x0000568ff0630a30 n/a (Proton Mail Beta + 0x23c4a30)
                                                    #23 0x0000568ff06ee59a n/a (Proton Mail Beta + 0x248259a)
                                                    #24 0x0000568ff07021ca n/a (Proton Mail Beta + 0x24961ca)
                                                    #25 0x0000568ff2eb21bc n/a (Proton Mail Beta + 0x4c461bc)
                                                    #26 0x0000568ff349e13d n/a (Proton Mail Beta + 0x523213d)
                                                    #27 0x0000568ff2eb1de8 n/a (Proton Mail Beta + 0x4c45de8)
                                                    #28 0x0000568ff2eb4a85 n/a (Proton Mail Beta + 0x4c48a85)
                                                    #29 0x0000568ff2eb0432 n/a (Proton Mail Beta + 0x4c44432)
                                                    #30 0x0000568ff091eed4 n/a (Proton Mail Beta + 0x26b2ed4)
                                                    #31 0x0000568ff092069e n/a (Proton Mail Beta + 0x26b469e)
                                                    #32 0x0000568ff09204b6 n/a (Proton Mail Beta + 0x26b44b6)
                                                    #33 0x0000568ff091deab n/a (Proton Mail Beta + 0x26b1eab)
                                                    #34 0x0000568ff091dfb0 n/a (Proton Mail Beta + 0x26b1fb0)
                                                    #35 0x0000568ff0629468 n/a (Proton Mail Beta + 0x23bd468)
                                                    #36 0x00007b88ddff81ca n/a (/usr/lib/x86_64-linux-gnu/libc.so.6 + 0x2a1ca)
                                                    #37 0x00007b88ddff828b n/a (/usr/lib/x86_64-linux-gnu/libc.so.6 + 0x2a28b)
                                                    #38 0x0000568ff022c02a _start (Proton Mail Beta + 0x1fc002a)

                                                    Stack trace of thread 67909:
                                                    #0  0x00007b88de0f8042 n/a (/usr/lib/x86_64-linux-gnu/libc.so.6 + 0x12a042)
                                                    #1  0x0000568ff3f12320 n/a (Proton Mail Beta + 0x5ca6320)
                                                    #2  0x0000568ff3f1224a n/a (Proton Mail Beta + 0x5ca624a)
                                                    #3  0x0000568ff3eb856d n/a (Proton Mail Beta + 0x5c4c56d)
                                                    #4  0x0000568ff3e7e59d n/a (Proton Mail Beta + 0x5c1259d)
                                                    #5  0x0000568ff3edc5b8 n/a (Proton Mail Beta + 0x5c705b8)
                                                    #6  0x0000568ff3ec61cd n/a (Proton Mail Beta + 0x5c5a1cd)
                                                    #7  0x0000568ff3edc75c n/a (Proton Mail Beta + 0x5c7075c)
                                                    #8  0x0000568ff3eef3d5 n/a (Proton Mail Beta + 0x5c833d5)
                                                    #9  0x00007b88de06aa94 n/a (/usr/lib/x86_64-linux-gnu/libc.so.6 + 0x9ca94)
                                                    #10 0x00007b88de0f7c3c n/a (/usr/lib/x86_64-linux-gnu/libc.so.6 + 0x129c3c)
                                                    ELF object binary architecture: AMD x86-64
Sep 07 17:02:37 hephaestus systemd[1]: systemd-coredump@24-67978-0.service: Deactivated successfully.
Sep 07 17:02:37 hephaestus systemd[1]: systemd-coredump@24-67978-0.service: Triggering OnSuccess= dependencies.
Sep 07 17:02:37 hephaestus systemd[1]: Starting apport-coredump-hook@24-67978-0.service...
Sep 07 17:02:38 hephaestus systemd[1]: apport-coredump-hook@24-67978-0.service: Deactivated successfully.
Sep 07 17:02:38 hephaestus systemd[1]: Finished apport-coredump-hook@24-67978-0.service.

Hi @pedro-avalos.

Check to see if you have these “requirements” :face_with_monocle: :


parts:
  test-snap:
    source: .
    plugin: dump
    stage-packages:
      - libdrm-amdgpu1
      - libgtk-3-0
      - libatk-adaptor


apps:
  test-snap:
    command: bin/test-snap
    plugs:
      - network
      - opengl

    environment:
      LD_LIBRARY_PATH: "$SNAP/usr/lib/$SNAPCRAFT_ARCH_TRIPLET:${LD_LIBRARY_PATH:-}"

Hm, I tried adding these to no avail. snapcraft seems to warn me that almost all of these are unused if I add them (except libatk-adaptor, but even that didn’t fix it). As a temporary workaround, I’ve decided to disable wayland using the environment variable DISABLE_WAYLAND (it seems this was done in the Discord snap recently too…)

1 Like

@pedro-avalos ! Doesn’t it work even with wayland plugged in ?

@baldeuniversel , yeah, it had the wayland interface plugged in and it did not work. I am truly confused on what could have changed. I’ll try to investigate further after work.

1 Like