Problems with Joplin Portable

I’ve installed Joplin in Windows 10 with setup, but later I’ve deinstalled the program. Now I want to use the portable version of Joplin. When I start Joplin Portable it creates the folder tmp and ressources in the folder where Joplin Portable is stored. But the notes are created in C:\Users<Username>\AppData\Roaming\Joplin. I’ve searched the registry for all Joplin Entries and deleted them, but it was no solution. Any idea, why Joplin Portable uses the userfolder instead of the portable folder?

I’m new to Joplin and am evaluating the Windows Desktop Portable Version and was about to post a new topic “Is JoplinPortable really portable?” when the sidebar found this topic which has had no reply in 14 months

When first run it creates it’s JoplinProfile folder tree next to itself on the USB drive BUT it also creates a Joplin folder tree in AppData\Roaming which means it isn’t strictly portable.

See https://en.wikipedia.org/wiki/Portable_application extract “storing its program files and any configuration information and data on the storage medium alone

Please may msel and I have your thoughts?

It seems those files are created by Electron and not by Joplin itself.
And removing these field did not seem to break anything for me so I’d say it’s still portable.

So when I run Joplin from my USB device on someone’s PC I have to remember to clean up so that I don’t leave any data there. Perhaps JoplinPortable could do that to be considered fully portable?

Well, your data that is the notes is still stored in the portable folder.
I don’t think you are at any more risk by having some application specific config left over than you are at by running your program on an unknown computer in the first place

Agreed, but you are missing my point. For an app to be considered truly portable it mustn’t leave stuff on the PC it runs on.

1 Like

Well if you take the Wikipedia definition word for word then it is not possible to make a portable app. No matter how you design an app, there will be some traces of its running on the OS. The degree varies from OS to OS but you cannot programmatically get rid of all of them. Because there are after all something called application permissions.

Again agreed, but the spirit of the definition is not to leave any data created by the app on the host PC that can be removed.

I wonder if the files you are referring to can be removed by Joplin itself, without creating a circular delete cycle…or whether this thread is slowly becoming a metaphysical discussion from a technical one.

2 Likes

I wonder that too - that’s why I started this thread.
And to your second point I have read many many discussions on PotableApps.com over many years. If you’re interested their definition of a portable app is here https://portableapps.com/about/what_is_a_portable_app

1 Like

@RogerL, the files Joplin creates in the folder you refer to are not files related to the actual content of the application but temporary files created to aid in rendering and whatnot. As @RedDocMD put it, those are Electron created files. As such, as long as the user runs semi-regular maintenance tasks such as cleaning their temp files, it shouldn’t be an issue.

I do see your point, though. If there’s a way to change that behavior without affecting Linux, Mac, or mobile, a bug report and PR might be acceptable. I’d have to research a tiny bit more.

1 Like

Well the standard that has been set by PortableApps will be admirable to have but I am not sure if we can do that for Joplin without breaking or writing a lot of code. Maybe you can suggest something as @bedwardly-down advised.
Although one thing, unless we are looking for standards as a sort of status symbol or we are writing apps for the cyber forensic/security field, the level of “portability” demanded is unnecessary in my humble opinion. Maybe there are other reasons for achieving the same

2 Likes

@bedwardly-down, I am currently writing a launcher to automate updating JoplinPortable when a new version is released. I am now considering modifying it to hang around until JoplinPortable exited and then delete the AppData\RoamingJoplin folder unless you think this is ill-advised as it definately wouldn’t be consided semi-regular maintenance.

2 Likes

I don’t see any issue with that. Get it finished and working, link it in #apps. That’d get you feedback and help keep it from being lost in a thread here

That at least would break the circular delete cycle, which I guess was the main issue why those files weren’t being removed

1 Like

It would also prevent introducing platform breaking changes into code.

1 Like

It’s being written in AutoIt, will that be OK?

@bedwardly-down, I’ve decided to defer releasing my little app until I see whether Laurent is willing to resurrect the PortableApps version.

@RogerL, if you’re interested the code to build the PortableApps package is there: https://github.com/laurent22/joplin/tree/master/Tools/PortableAppsLauncher

To be honest I don’t expect PortableApps to ever accept the app (or most other apps) as their project is not very active anymore. The only person who can accept an app is John but he doesn’t seem to accept any, probably because it’s an additional maintenance burden for him.

If we knew they would accept the app, or if they had clear rules on what can be accepted or not, then we could work towards that, but as it is we don’t know anything (and I’ve never managed to get any clear answer from them) so it’s not a very good use of our time. But again, you’re free to give it a try.

@Laurant, Whether Joplin gets released as a PortableApp is irrelevant to me at the moment.

All I want, as a user, is whenever there is a new JoplinPortable.exe there is a new JoplinPortable_1.0.XXX.0.paf.exe created, hosted somewhere and it’s address placed on the Joplin PortableApps Development Test page as a new version.

This causes everybody to see it in the tracker thus getting more exposure.

As you have already packaged it and hosted it could you not continue to do so?

If I could be told where the new version is each time I would be happy to do the editing on the PortableApps Dev Test page.