The new AppImage (Joplin-1.0.177.AppImage) installation issues

The new AppImage (Joplin-1.0.177.AppImage), unlike the previous versions, does not suggest for “installation” upon running it for the first time and hence when I try to open Joplin from the launcher, it loads the old version which gives me the following error:

20200103-1506

Note that all previous versions that I can think of had this installation phase.

Which OS are you on? And how did you install?
If I were to guess I would think that you are on linux and simply downloaded the appimage instead of using the download link? Is that correct?

This is indeed a weird bug, but should be pretty easy to fix with more details!

I’m guessing that as 1.0.177 is a pre-release version for beta/bug testing it would not have been pulled down by the install script.

@s4rc1na

I have run the pre-release in a VM (Mint 19.2) and it did not ask if I wanted it to create a launcher config (.desktop file). This could be because it is a bug or this feature is not included in the beta build. Don’t know as I am not a developer. Maybe someone can advise you as to whether a bug report is required or not.

The prompt can be enabled/disabled in the electron builder, I’m willing to guess something must have changed with the default settings when moving to a new version. @laurent do you know anything about this?

1 Like

As far as I know, AppImage is only for Linux distros. Regardless, I downloaded the AppImage myself manually via the link I provided in the initial post and ran it on my machine which has Ubuntu 18.04.3. I don't think my distro or version has anything to do with this since AppImage should be distro agnostic, plus it was working fine since the day AppImage of Joplin was introduced.

I can provide you any details you need for this to be fixed, just name it.

The error you have indicates that your profile has a more recent version than the application. So most likely, this profile has been created with v1.0.177 but now you are running v1.0.176 or less. Maybe try to re-download the v177 AppImage and make sure you run it directly (not via a shortcut as they shortcut might be misconfigured).

Distro is necessary because while appimages are more or less platform agnostic, joplins handling of .desktop files is not. Of course that is a bit moot since you didn’t use the download script.

Could you try using the download script? The command is given in the readme. I suspect if you download that way it should work.

That's exactly what I did in the first place and I also repeated the steps as the following:

wget https://github.com/laurent22/joplin/releases/download/v1.0.177/Joplin-1.0.177.AppImage
chmod +x Joplin-1.0.177.AppImage
./Joplin-1.0.177.AppImage

The problem still exists...

I prefer not to run scripts on my machine, but I read/traced the script and the part that creates/updates the file ~/.local/share/applications/appimagekit-joplin.desktop should technically fixed the issue (considering that most launchers search in that path for apps), but the fact that the AppImage itself does not offer the installation anymore is the sole reason of putting this thread in this discourse. Somewhere down the line, in the previous stable versions, Joplin used to give notice and the option for installation if it was the first time the user was running that version, whereas now it skips that step and does not make that offer.

It might also worth mentioning that I'm using Ubuntu Budgie, meaning that echo $XDG_CURRENT_DESKTOP will return Budgie:GNOME which should still should satisfy the if condition in the line 97 of the installation script.

Maybe some other issue then. Could you open database.sqlite in your Joplin profile folder and see what version number you have in the version table?

select * from version

@laurent This is what I did and what I get, hopefully it is also what you wanted me to do:

$sqlite3

SQLite version 3.22.0 2018-01-22 18:45:57
Enter ".help" for usage hints.
Connected to a transient in-memory database.
Use ".open FILENAME" to reopen on a persistent database.
sqlite> .open ./.config/joplin-desktop/database.sqlite
sqlite> select * from version
...> ;
27
sqlite>

Hmm, ok I don’t understand then. Profile version 27 should definitely work with desktop v177.

Could you try to remove your profile (rename it maybe) and start the AppImage you have? Then what version does it give in the About box?

1 Like

Looks like there has been a change in the way appimage produces .desktop files. Take a look at this side by side comparison of the v1.0.177 AppImage and the one currently installed on my desktop (v1.0.174)

In older versions of AppImage it would check the X-AppImage-BuildId on startup to determine if a new .desktop file needed to be placed. It looks like the current version uses X-AppImage-Version instead, this will probably break the update script (since it looks for X-AppImage-BuildId) but should not matter here.

@s4rc1na you probably just need to delete your current appimagekit-joplin.desktop file, which should be located in ~/.local/share/applications/. When you run the new version of Joplin in should prompt you to create a new one. Please let us know if that works.

@laurent did you also mean to do the same as @CalebJohn suggested? and is so, by "About box" do you mean from the menu Help > About Joplin ?

I did the following:

## following the advice
cd ~/.local/share/applications
mv appimagekit-joplin.desktop appimagekit-joplin.desktop.old

## running Joplin
cd ~/Applications/Joplin  # this is where I store my joplin appimage
./Joplin-1.0.177.AppImage

and got the following:

[29484:0109/114509.182280:ERROR:buffer_manager.cc(488)] [.DisplayCompositor]GL ERROR :GL_INVALID_OPERATION : glBufferData: <- error from previous GL command
(node:29496) Electron: Loading non context-aware native modules in the renderer process is deprecated and will stop working at some point in the future, please see [Discussion] Requiring Native Modules in the Renderer Process to be NAPI or Context Aware · Issue #18397 · electron/electron · GitHub for more information
(node:29496) Electron: Loading non context-aware native modules in the renderer process is deprecated and will stop working at some point in the future, please see [Discussion] Requiring Native Modules in the Renderer Process to be NAPI or Context Aware · Issue #18397 · electron/electron · GitHub for more information
(electron) 'getName function' is deprecated and will be removed. Please use 'name property' instead.
[29484:0109/115051.778927:ERROR:buffer_manager.cc(488)] [.DisplayCompositor]GL ERROR :GL_INVALID_OPERATION : glBufferData: <- error from previous GL command
Gtk-Message: 11:50:52.955: GtkDialog mapped without a transient parent. This is discouraged.

image

Well this is JavaScript, so half a dozen warnings only means all's working :slight_smile:

From the look of it, you now have the right version running. What if you move back your profile to .config/joplin-desktop. Does it now open?

Can you elaborate more?

I have 2 joplin folders in ~/.config:

tree -L 1 ~/.config/*oplin

/home/mehrad/.config/joplin
├── database.sqlite
├── log-database.txt
├── log.txt
├── resources/
└── tmp/
/home/mehrad/.config/Joplin
├── blob_storage/
├── Cache/
├── Code Cache/
├── Cookies
├── Cookies-journal
├── GPUCache/
├── Local Storage/
├── Network Persistent State
├── Preferences
├── Session Storage/
├── SingletonCookie -> 6370351807194747872
├── SingletonLock -> mehrad-Latitude-29451
├── SS -> /tmp/.org.chromium.Chromium.TQViiK/SS=
└── window-state-prod.json

Perhaps one is for the CLI app and the other is for the AppImage?

@s4rc1na were you prompted to create integrate the appimage to desktop?

That is the OP’s original point, ie there was no prompt. A later post regarding the same issue for v1.0.178 resulted in @laurent requesting a Github issue be raised.

@s4rc1na I submitted a fix here that should solve the installation issue you were running into. It’s not a perfect fix and may not solve all problems, but it does add back the ability to at least integrate the app back into the OS.

You will need to have patch installed (should be available as a default app on Ubuntu). If it’s not installed, you can either install it directly or install build-essential so you have access to other tools you may need in the future. You should already have zenity installed (since it’s a system app on Ubuntu for its default desktop).

If you read the github comment above it, apparently, the main script for installing everything had some major changes made that removed quite a bit of functionality.

No I was not and still not in this version:
image

1 Like