joplin-arm64 icon indicating copy to clipboard operation
joplin-arm64 copied to clipboard

This script does not work anymore 😿

Open harshcurious opened this issue 4 years ago • 4 comments

I get the following error:

pi@raspberrypi:~/joplin-arm64 $ sh build.sh 
Cloning laurent22/joplin v1.8.5 into /tmp/github_joplin...
Note: checking out 'b28f087bbef2125ddbf3883ceb9bb0554ff92c21'.

You are in 'detached HEAD' state. You can look around, make experimental
changes and commit them, and you can discard any commits you make in this
state without impacting any branches by performing another checkout.

If you want to create a new branch to retain commits you create, you may
do so (now or later) by using -b with the checkout command again. Example:

  git checkout -b <new-branch-name>

sed: can't read CliClient/package.json: No such file or directory

The install method has changed I guess. Any ideas on where I should look to get it working again?

harshcurious avatar Jun 03 '21 20:06 harshcurious

Ah, that's unfortunate! the script will need to be kept up to date with the file structure in the joplin project, which has likely changed since then.

I'll try to get some time to port it to the latest configuration when I get some time, but if you want to give it a go, the failure will come from the following two lines:

# Modify build to remove usages of the keytar module from code, which is	
# not available for arm64 architecture	
sed -i '/"keytar": ".*"/d' CliClient/package.json
sed -i '/"keytar": ".*"/d' ElectronClient/package.json

What this is doing is trying to locate the references to an unsupported keytar module in the package.json files. The sed command will simply delete the import lines.

joesfer avatar Jun 04 '21 08:06 joesfer

Thanks for taking the time to reply.

To be honest I realised that I have to do exactly what you told. But I am relatively new to building apps in Linux, so I couldn't figure out where to look for the keytar module. In reality I couldn't even find package.json.🙆🏾‍♀️

harshcurious avatar Jun 04 '21 09:06 harshcurious

I changed the build.sh script

        # Modify build to remove usages of the keytar module from code, which is
        # not available for arm64 architecture
#       sed -i '/"keytar": ".*"/d' CliClient/package.json
#       sed -i '/"keytar": ".*"/d' ElectronClient/package.json
        sed -i '/"keytar": ".*"/d' packages/app-cli/package.json
        sed -i '/"keytar": ".*"/d' packages/app-desktop/package.json

Which now results in...

error: ReactNativeClient/lib/services/keychain/KeychainServiceDriver.node.ts: No such file or directory

The file now lives here /tmp/github_joplin/packages/lib/services/keychain/KeychainServiceDriver.node.ts.

I think it's just going to be an iterative process to make all the changes. Once I do I'll provide the fix.

jcm4atx avatar Jul 29 '21 12:07 jcm4atx

@jcm4atx @joesfer hey guys were you able to update script, was trying to fix it myself with no luck, been getting same error as jcm4atx unable to locate keychainservicedriver from tmp folders

techchetn avatar Nov 15 '22 18:11 techchetn