One of the things I do with my smartphone today is to write a diary on the days that i do particular things that I don’t want to forget.
I could not find a suitable app available for that and since I’m a developer I decided the days between christmas and newyears when I’m on vacation to in true free software spirit create one myself.
I am still eagerly waiting for my Evergreen (ordered late September 2017), so I have not tested it on an actual device yet.
I just wanted to share my progress with the community and if someone likes journaling like I do and has a Librem 5, don’t hesitate to build it yourself if you know how and try it out.
NOTE: The app does not have a “dark” mode or anything like that, it’s just my default GTK theme. It will look like an ordinary GTK app on other devices.
I still do not have my L5 (order date October 7, 2017). I compiled your app on a very recent FreeBSD laptop and after installing the mentioned infrastructure ports, it went fine and starts fine. It uses ~128 share libs and I don’t know if this is not to heavy on a L5.
I discussed this in the UBports forum. And someone said:
@guru it should be possible, but you would probably need to build and ship a build of GTK+3 with the app. Porting a Qt or HTML based app would be much easier.
gedit for me used 104 shared libraries on my computer (arch linux) while my app uses 139 (I think it’s because mine also has webkitgtk as a dependency, which I’m considering getting rid of in the future). I’m sure it would be no issue, pretty much all GTK apps uses at least 100 shared libraries. A similar amount should go for any Qt app too. It’s also worth noting that most dependencies are things like graphics drivers, X11/wayland and a lot of other sub-dependencies of GTK, so they can be shared between multiple processes.
it should be possible, but you would probably need to build and ship a build of GTK+3 with the app. Porting a Qt or HTML based app would be much easier.
That’s regarding UBPorts which recommends installing apps via click packages and has no support for flatpak or snap (due to old non-upstream linux kernels) and does not recommend using custom APT repositories. For PureOS which supports snaps and flatpaks I don’t think this is an issue. It would also not be too hard to upstream it to debian because all dependencies are there and then once Ubuntu or PureOS takes in new packages from debian it would pull this app too. But I want to avoid upstreaming to debian unless I see a significant amount of users using it.
Installed flatpak on Pinephone/Mobian. Very easy install. Seems sort of slow, but everything seems to work. I did have to toggle portrait/landscape back and forth to see some controls.
Classic traits of flatpaks, easy to install but can be slow to start. Was anything else than starting the app slow?
What didn’t work? I just tried to find that out myself and the only part of the app that I couldn’t use while simply scaling down the window to be really small (my way of “faking” a smartphone) was the image picker dialog for inserting images. Was there anything else?
Right now, neither.
I will probably add tags support later, regarding folders I will probably not add that but I have already started working on selecting a folder to open/save the diary entries (so you for example could easily save it in your dropbox/gdrive/owncloud synced folder).
But I do try to keep it as a single use-case app (diary) rather than a general notebook.
There are a few good GTK notetaking apps for Linux already that have a lot of useful features (Notes Up, Lifeograph) , so if that’s what you are looking for I’d rather ask them to add support for smaller screens (both because that would likely take less time than for my app to have feature parity and because I’d rather try to make something unique than trying to compete with something that already exists).
It was just the portrait/landscape toggled to see some controls and the random crash that did not save my last entry – a save button would help the last.
First everything is slow. First open after phone startup, first opening of an existing record - Whether plain text or contains images. All of my text records contain only a few sentences, so far.
Slowness may be influenced by the fact that Mobian is running from the SD card, not the MMC. It seems to run fine this way – perfectly usable for even big, complicated applications like Firefox with 20 tabs open.
The only other app that seems exhibit an abnormal slowness on my Pinephone is Calibre eBook Viewer.
Just completely random? No way to reproduce it so I could get some hint at what makes it crash?
Because at the start I just wanted something working for mobile and there was nothing in libhandy that seemed necessary.
Yesterday however I wanted the app to become properly adaptive and have a better interface on desktop, so I added libhandy to improve the UI on desktop. Not finished yet though.
Strange.
Since it’s slow even if there’s no image I’d also blame it on when reading the actual entries, but I can’t find a reason why it should be very slow. I just use standard GLib functions for reading/writing files (g_file_set_contents/g_file_get_contents).
What filesystem do you use on the SD card by the way?
I now recall that g_file_set_contents tries to be very secure when writing files to avoid corruption and while doing that it has to do a fsync which can be slow on some filesystems.
I have now loaned a PinePhone from a friend and I found the following issues:
App icon not being displayed in phosh (visible in app menu, but not as a running application)
delete and rename buttons do not work, locks up the application
Will fix this in the coming days.
Regarding being slow as @Photon reported, I can’t reproduce that. Takes about 2 seconds to open the app, about 2 seconds to show an entry etc… And that’s when running the whole OS from SD card, so should be faster on eMMC.