Joplin on pinebook pro

Been using joplin for some time now and very happy with it. This week i received a pinebook pro (linux debian laptop with armhf). So far it seems like a perfect tool for work. But for this i need joplin :wink:

the appimage does not work for armhf so i was wondering if there is something i can do in order to get acces to joplin on a armhf ? if not, is there a option that in the future there also will be an armhf


I don’t expect official support for ARM to ever happen, but you should be able to build it manually. See electron-builder doc:

I have ordered my Pinebook Pro a few days ago and would love to see this work on it.

You indicated it could be built manually; is this a process that could be done with very limited knowledge or will that be difficult?

In also looking into that…dont have any expieriance but will try. I Will let You know if it works

1 Like

I’ve also ordered a Pinebook Pro also and I’d like to use Joplin with it.

It’s not clear to me from the question whether it pertains to both the terminal and desktop versions of Joplin.

Might the terminal version of it work on ARM even if the desktop version does not?

I run joplin on a pinebook pro with Manjaro ARM.

I used this aur package: AUR (en) - joplin .
You need to changethe PKGBUILD file a little.

  1. yay -G joplin
  2. cd joplin
  3. vim PKGBUILD
    3.1 change arch=("x86_64" "i686") to arch=("x86_64" "i686" "aarch64")
    3.2 change line 71. /ElectronClient/app/dist/linux-unpacked/"* to /ElectronClient/app/dist/linux-arm64-unpacked/"*
  4. makepkg -si
  5. wait :smiley:

That’s great!
I will be receiving my Pinebook Pro in the coming weeks.
Now I’m not so familiar with the package building. What if a new version of Joplin comes out; how would to upgrade it on your system?

you sir are amazing! :wink: took me some time as it did not work on the sd version of manjaro. Now ive got manjaro flashed it worked like a so happy!!

Anyone get this working on the stock Debian image? I was running Manjaro but went back to the stock image for awhile. I tried to use the instructions from the Manjaro post but that did not work. Not asking for someone to do this for me just point me in the right direction. Total Noob here.
Thanks in advance!

What version are you running? If it’s the latest, you should be able to pass —no-sandbox to your executable to get it up and running.

just repeat in install proces…updating wont do

1 Like

I was able to successfully install it using the instructions from klei on a Manjaro install, but using the GUI. I’m not that handy with the terminal. I did want to try the new Manjaro KDE 20.2, so I ended up reinstalling. Joplin also moved to 1.0.193. I am getting an error using the same steps. I found this message at the end before it says it says failure occured in the build:

[16:09:44] Finished ‘electronRebuild’ after 3.41 s
npm WARN ajv-keywords@3.4.1 requires a peer of ajv@^6.9.1 but none is installed. You must install peer dependencies yourself.
npm WARN optional SKIPPING OPTIONAL DEPENDENCY: 7zip-bin-win@2.2.0 (node_modules/7zip-bin-win):
npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for 7zip-bin-win@2.2.0: wanted {“os”:“win32”,“arch”:“any”} (current: {“os”:“linux”,“arch”:“arm64”})
npm WARN optional SKIPPING OPTIONAL DEPENDENCY: 7zip-bin-mac@1.0.1 (node_modules/7zip-bin-mac):
npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for 7zip-bin-mac@1.0.1: wanted {“os”:“darwin”,“arch”:“any”} (current: {“os”:“linux”,“arch”:“arm64”})
npm WARN optional SKIPPING OPTIONAL DEPENDENCY: fsevents@1.2.11 (node_modules/glob-watcher/node_modules/fsevents):
npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for fsevents@1.2.11: wanted {“os”:“darwin”,“arch”:“any”} (current: {“os”:“linux”,“arch”:“arm64”})
npm WARN optional SKIPPING OPTIONAL DEPENDENCY: fsevents@1.2.9 (node_modules/babel-cli/node_modules/fsevents):
npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for fsevents@1.2.9: wanted {“os”:“darwin”,“arch”:“any”} (current: {“os”:“linux”,“arch”:“arm64”})
npm WARN optional SKIPPING OPTIONAL DEPENDENCY: fsevents@2.1.0 (node_modules/fsevents):
npm WARN notsup SKIPPING OPTIONAL DEPENDENCY: Unsupported platform for fsevents@2.1.0: wanted {“os”:“darwin”,“arch”:“any”} (current: {“os”:“linux”,“arch”:“arm64”})

Any ideas on what else needs to be installed? I’m not that good at reading, this but from what I can tell there is a missing dependency preventing the install from completing. If anyone can point me to a possible solution, that would be much appreciated. This is a really great app and I miss it when I am on the PBP.

None of these are errors, just warnings, so if the error must be somewhere else.

1 Like

Thanks, laurent. Not just for the reply, but for making this awesome piece of software. I’ll keep digging and I’ll share anything i learn.

I am happy to report I got it to work. I found a discussion the in the AUR and decided to give it a try. I installed yarn before I started the install. I used Pamac (the GUI software tool) and edited the pkgbuild using the changes recommended from klei's post. I hit install, waited, then yarn kicked in and installed some other packages. This time the install completed! I am syncing it right now :smiley: Posting this and hope it helps anybody else looking to install Joplin on the PBP.

Hi everybody.

i really like joplin and i just begin to work with arm64 machines. Of course i want to use the great joplinapp on these machines too:)

I know, that there is no official arm-team for joplin yet. But with more and more people using raspi’s and pinebooks, chromebooks and so on, i thought, maybe there is a change, that some developers start to work an official “joplin-arm”.
How is the chance for that happening?

There is the x86 version and there are android and ios version (arm machines). So is there a realistic chance of making joplin arm for desktop?
So that people can install and update joplin as easy as with the install-script.
That would be awesome.

Best greetings
I look forward, to hear from you:)

Wow! Working on the Raspberry Pi 4 4GB. Thanks @klei

  1. Found the package in Pamac (need to enable AUR)
  2. Clicked ‘Build files’ on the left menu bar.
  3. Followed @klei step 3.1 and 3.2 instructions above. note: Step 3.2 was on line 51 rather than 71.
    “3.1 change arch=(“x86_64” “i686”) to arch=(“x86_64” “i686” “aarch64”)
    3.2 change line 71. /ElectronClient/app/dist/linux-unpacked/”* to /ElectronClient/app/dist/linux-arm64-unpacked/"*"
  4. Click “Build”
    That’s it.

So happy. I’ve had an extra Pi 4 sitting on the shelf for months because not being able to run Joplin was a deal breaker for me from a desktop perspective.


Ok, so I got it to compile with no errors on my Pinebook Pro. The problem is that it is not syncing with my Nextcloud sever. WebDAV URL is the same as on my Windows (work) laptop, iPhone App, and Linux desktop, but it won’t sync. The sync check in the gui says everything is OK but it will not pull down anything. Any ideas???

I don't really understand why but I have also encountered similar problems in that the WebDAV URL seems to vary with platform.

Makes no sense but all I can suggest is to experiment.

For what it's worth I can't get Joplin to build using Manjaro latest on my Pinebook Pro.

I change the arch= line in PKGBUILD / AUR build file but nothing like ElectronClient is there.

It seems to build most or even all the way there but then fails tests:

[feoh@voyager joplin]$ cat  /home/feoh/.npm/_logs/2020-12-13T20_55_40_235Z-debug.log
0 info it worked if it ends with ok
1 verbose cli [ '/usr/bin/node', '/bin/npm', 'run', 'test' ]
2 info using npm@6.14.8
3 info using node@v12.20.0
4 verbose run-script [ 'pretest', 'test', 'posttest' ]
5 info lifecycle root@~pretest: root@
6 info lifecycle root@~test: root@
7 verbose lifecycle root@~test: unsafe-perm in lifecycle true
8 verbose lifecycle root@~test: PATH: /usr/lib/node_modules/npm/node_modules/npm-lifecycle/node-gyp-bin:/home/feoh/joplin/src/joplin-1.4.19/node_modules/.bin:/bin:/usr/bin:/usr/local/bin:/usr/local/sbin:/usr/lib/jvm/default/bin:/usr/bin/site_perl:/usr/bin/vendor_perl:/usr/bin/core_perl
9 verbose lifecycle root@~test: CWD: /home/feoh/joplin/src/joplin-1.4.19
10 silly lifecycle root@~test: Args: [ '-c', 'lerna run test --stream' ]
11 silly lifecycle root@~test: Returned: code: 1  signal: null
12 info lifecycle root@~test: Failed to exec test script
13 verbose stack Error: root@ test: `lerna run test --stream`
13 verbose stack Exit status 1
13 verbose stack     at EventEmitter.<anonymous> (/usr/lib/node_modules/npm/node_modules/npm-lifecycle/index.js:332:16)
13 verbose stack     at EventEmitter.emit (events.js:314:20)
13 verbose stack     at ChildProcess.<anonymous> (/usr/lib/node_modules/npm/node_modules/npm-lifecycle/lib/spawn.js:55:14)
13 verbose stack     at ChildProcess.emit (events.js:314:20)
13 verbose stack     at maybeClose (internal/child_process.js:1022:16)
13 verbose stack     at Process.ChildProcess._handle.onexit (internal/child_process.js:287:5)
14 verbose pkgid root@
15 verbose cwd /home/feoh/joplin/src/joplin-1.4.19
16 verbose Linux 5.9.14-1-MANJARO-ARM
17 verbose argv "/usr/bin/node" "/bin/npm" "run" "test"
18 verbose node v12.20.0
19 verbose npm  v6.14.8
20 error code ELIFECYCLE
21 error errno 1
22 error root@ test: `lerna run test --stream`
22 error Exit status 1
23 error Failed at the root@ test script.
23 error This is probably not a problem with npm. There is likely additional logging output above.
24 verbose exit [ 1, true ]
[feoh@voyager joplin]$ 

Does anyone have any suggestions as to how to proceed?

Thanks in advance!

1 Like