Hi guys! I think I’m over Joplin. Don’t get me wrong, it’s simple, it works, but… why is it Postgres db…. I have the server on a small box with like 250 GB of space and backing it up with kopia to Backblaze with free 10 GB, so I’m a bit storage cautious.

With each snapshot, it seems like a good chunk of the database changes, even when I don’t use Joplin that day. That results in kopia backing up those changed files, and backups keep growing. Right now the Joplin database is like 200Mb, BUT when I export the notes from the app… all of them weigh 2Mb… including images. Yes there is versioning of notes, but they shouldn’t be that big after one-two months lol.

I know I know, I’m being a bit weird about it, but I’m getting daily notifications about backups and I see how they grow each day.

Anyway, do you have any alternatives that have an app on iOS and on Linux? Or should I just use Apple Notes in the browser? Thanks

EDIT: The answer was easier than I thought. Just don’t back it up, it’s synced which means each device has a copy of it anyway so there is not really need for it, thanks @vvv@programming.dev !

    • Opisek@lemmy.world
      link
      fedilink
      English
      arrow-up
      8
      arrow-down
      1
      ·
      11 months ago

      I also switched from Joplin to Obsidian after about half a year. There’s an open-source plugin that lets you self-host a syncing server.

      What I found paradoxical is how easy it is to mod and write plugins for Obsidian compared to Joplin. I would’ve thought that modifying the open-source candidate would’ve been easier, but nope.

    • krash@lemmy.ml
      link
      fedilink
      English
      arrow-up
      4
      arrow-down
      1
      ·
      11 months ago

      I second obsidian. I was on the verge to jump onto logseq, but found its way of handling notes to be… different. I also felt a dislike of anytype where I don’t really have control over my notes. Obsidian clicked with me from the start and felt right. So I went with it, even though it’s not FOSS (which is usually a hard requirement from me).

    • ikidd@lemmy.world
      link
      fedilink
      English
      arrow-up
      5
      arrow-down
      4
      ·
      11 months ago

      Literally every note app uses markdown. I’m not sure why people point at that for Obsidian like it’s a unique feature.

      • Father_Redbeard@lemmy.ml
        link
        fedilink
        English
        arrow-up
        10
        arrow-down
        1
        ·
        11 months ago

        Not every one stores the files as plain text files in markdown format like Obsidian. Logseq does I believe, but Joplin stores it all in database files which require an export should you decide to leave that app in favor of a other. With Obsidian you just point the new app at the folders full of .md files and away you go. That was the main selling point for me.

        • ikidd@lemmy.world
          link
          fedilink
          English
          arrow-up
          2
          arrow-down
          2
          ·
          edit-2
          11 months ago

          I don’t know where you’re getting that from. Here is my Joplin folder on my NC server, stuffed with md files from my notes. There are some database driven references in them if you do things like add pictures, and obviously the filename is a UID format, but it’s markdown all the way, baby.

          • Father_Redbeard@lemmy.ml
            link
            fedilink
            English
            arrow-up
            5
            ·
            11 months ago

            Have you looked at the contents of those md files? In addition to creating its own hexadecimal file name, it appends the text with a bunch of metadata info. If you were to then take that folder of notes to any other markdown editor like Obsidian, it would be a mess to organize. That is why I’m a stickler for file format agnosticism. There is no vendor lock in and more importantly, no manipulation of the text filenames or contents.

            Screenshot of my phone copy of the Obsidian vault directory as an example:

            Obsidian md

      • RBG@discuss.tchncs.de
        link
        fedilink
        English
        arrow-up
        1
        ·
        11 months ago

        It is not a unique feature. But as a non-FOSS program its notes are not hidden behind proprietary filesystems, so any time you want you can still switch if they go in a direction thr user does not like.

      • RBG@discuss.tchncs.de
        link
        fedilink
        English
        arrow-up
        1
        ·
        11 months ago

        That’s the near thing about it… you don’t.

        But jokes aside, it is mostly about syncing notes for the selfhosting part. You either go with the official offer, no self-hosting and costs money, or you use a community plug-in, self-hosted, or you use a third program like syncthing, selfhosted.

      • bbuez@lemmy.world
        link
        fedilink
        English
        arrow-up
        1
        ·
        11 months ago

        Syncthing is the way, I had tried setting on nextcloud but never could get it to store how I wanted, but syncthinf was ridiculously easy and should work for anything that uses a folder

          • bbuez@lemmy.world
            link
            fedilink
            English
            arrow-up
            1
            ·
            11 months ago

            There is a plugin for obsidian to work with syncthing, but it seems to still be in development, implementing through the app and selecting the folders also gave me a reason for syncing my camera as well, and was super easy, no portfowarding or anything required

    • Footnote2669@lemmy.zipOP
      link
      fedilink
      English
      arrow-up
      1
      ·
      11 months ago

      Yeah, I’ve been on Obsidian before, but self-hosted syncing on iOS is a bit finicky.

      I’ve heard good things about Logseq, but it’s certainly a waaay different approach to notes. I’ll have to read more about it. Thanks :)

  • TCB13@lemmy.world
    link
    fedilink
    English
    arrow-up
    24
    ·
    11 months ago

    why is it Postgres db…

    Why on earth are you using that? Just use WebDAV, you’ll only be required to have some WebDAV server such as Nginx and it will sync GB of notes without issues. https://joplinapp.org/help/apps/sync/webdav/ https://medium.com/learn-or-die/build-a-webdav-server-with-nginx-8660a7a7311

    I would’ve NEVER ever moved to Joplin if it wasn’t able to sync with WebDAV. I’m not into having a special daemon running on a server for that task, makes zero sense.

  • knF@lemmy.world
    link
    fedilink
    English
    arrow-up
    13
    ·
    11 months ago

    Did you know that you can use Joplin on a standard webdav server? Basically it just takes up the space of the data itself. I have it on a Caddy server and works like q charm synching between Windows and Android client

  • ikidd@lemmy.world
    link
    fedilink
    English
    arrow-up
    8
    arrow-down
    1
    ·
    11 months ago

    Use Nextcloud AIO mastercontainer, set up joplin with Nextcloud sync (which is webdav). Use the builtin backup function in Nextcloud AIO container to backup nextcloud and the files it contains that are your joplin notes (and anything else you use nextcloud for).

    I even use Nextcloud for its Gpoddersync app to keep my podcast subs/progress from Antennapod.

  • Gutless2615@ttrpg.network
    link
    fedilink
    English
    arrow-up
    7
    ·
    11 months ago

    Yeah the lack of actual .md files is what killed Joplin for me. Obviously not FOSS but there are self hosted options for Obsidian.

    • Footnote2669@lemmy.zipOP
      link
      fedilink
      English
      arrow-up
      2
      ·
      11 months ago

      I find their paradigm… different and not entirely sure if I like it yet, need to look into it more :)

      • fossphi@lemm.ee
        link
        fedilink
        English
        arrow-up
        1
        ·
        11 months ago

        Do you mind expanding a bit on how you use joplin? I’m curious about the difference you found compared to logseq

        • Footnote2669@lemmy.zipOP
          link
          fedilink
          English
          arrow-up
          2
          ·
          11 months ago

          I use it just as a simple as possible, instructions on how I setup backups, important thing about container’s config, etc etc. I find it easier to just have a folder “Server” and put each container in a separate note or folder. It’s too much thinking about tags, links, pages and all in logseq, notes seem all over the place.

          • SayCyberOnceMore@feddit.uk
            link
            fedilink
            English
            arrow-up
            2
            ·
            11 months ago

            Yep, now, I initially found the daily journal approach a bit strange, but I use this for work as much as personal stuff, so it actually helps…

            My suggestion to your usecase would be to keep a page per “thing” ie server / container / etc and then when you make a change you can just say (on that day’s journal page):

            ‘’ Setup a backup for [[Server X]] and it’s going to [[NAS2]] (for example) ‘’

            Then, on either of those 2 pages you’ll automatically see the link back to the journal page, so you’ll know when you did it…

            I think you can disable the journal approach if it’s not useful…

            But, the important part is, the files underlying the notes you’re making are in plain text with the page name as the filename, whereas with Joplin you could never find the file…

            Also, if you modify the file (live) outside of Logseq, it copes with that and refreshes the content onscreen.

            And the links are all dynamic… renamed the NAS? Fine, Logseq will reindex all the pages for you…

            • Footnote2669@lemmy.zipOP
              link
              fedilink
              English
              arrow-up
              2
              ·
              11 months ago

              I would be willing to try it, but the workarounds to get sync on iOS are what makes me not do it

  • letsgo@lemm.ee
    link
    fedilink
    English
    arrow-up
    8
    arrow-down
    2
    ·
    11 months ago

    Oops I thought you were going to be ragging on an early jazz genre.

  • indigomirage@lemmy.ca
    link
    fedilink
    English
    arrow-up
    5
    arrow-down
    1
    ·
    edit-2
    11 months ago

    Can you not just backup the pg txn logs (with periodic full backups, purged in accordance with your needs?). That’s a much safer way to approach DBs anyway.

    (exclude the online db files from your file system replication)

  • vvv@programming.dev
    link
    fedilink
    English
    arrow-up
    3
    ·
    11 months ago

    Why do you need to back up that server data? The great thing about joplin, is that the full content of your notes (and history) is distributed, like a git repo. As long as you have one device left with your notes, everything else can be bootstrapped from there. If your sync server burns down, start a new one and sync your notes to it again.

    • Footnote2669@lemmy.zipOP
      link
      fedilink
      English
      arrow-up
      1
      ·
      11 months ago

      True, should’ve thought of that. Well, at least this gives me a chance to explore and learn alternatives :P

    • BearOfaTime@lemm.ee
      link
      fedilink
      English
      arrow-up
      1
      ·
      11 months ago

      Genuine question - doesn’t this leave you open to loss of data from database corruption or an app failure (or human error, accidentally deleting a bunch of pages, for example)?

      I’ve used “sync as backup” a lot, and run into these kinds of issues (it’s my current OneNote “backup” strategy). I’m just not familiar enough with Joplin to know what risks this exposes.

      • Footnote2669@lemmy.zipOP
        link
        fedilink
        English
        arrow-up
        1
        ·
        11 months ago

        There is a fail-safe switch in settings preventing the deletion of local copy if the remote is empty

        • BearOfaTime@lemm.ee
          link
          fedilink
          English
          arrow-up
          1
          ·
          edit-2
          11 months ago

          Well that’s something anyway, though I wouldn’t rely on it - sometimes things happen.

          I’m sure there’s a way to do proper backups of database data (e.g. Incrementals, full, etc), that would get the changes.

          That’s always handled by other teams for systems I’ve deployed, so I’m joy familiar with current approaches.

  • gazby@lemmy.dbzer0.com
    link
    fedilink
    English
    arrow-up
    2
    ·
    11 months ago

    If you’re after some help with the WebDAV part I set it up for myself recently and would be happy to help adapt my stuff to your stack (mine is Apache + compose, but would be about just as easy with anything else). Reply here or DM any time 💯

    And good on you for being turned around on your original premise and being so gracious about it in the comments mate 👍

    • Footnote2669@lemmy.zipOP
      link
      fedilink
      English
      arrow-up
      2
      ·
      11 months ago

      Awesome, thanks! For now I’ll stay on the db without backups. Joplin saves copies to other devices so if something fails, I still have the other devices :)

  • bluespin@lemmy.world
    link
    fedilink
    English
    arrow-up
    5
    arrow-down
    3
    ·
    11 months ago

    I recently switched from Joplin to Obsidian for different reasons. I’d prefer something FOSS, but so far I’ve been happy with the transition. Since it works with plain markdown files, it would fit your use case

    • Footnote2669@lemmy.zipOP
      link
      fedilink
      English
      arrow-up
      5
      ·
      edit-2
      11 months ago

      I’ve switched from Obsidian to Joplin actually, cos syncing was a chore and Joplin is more straightforward imo

  • atzanteol@sh.itjust.works
    link
    fedilink
    English
    arrow-up
    2
    ·
    11 months ago

    I think you need to learn more about how databases work. They don’t typically reclaim deleted space automatically for performance reasons. Databases like to write to a single large file they can then index into. Re-writing those files is expensive so left to the DBA (you) to determine when it should be done.

    And how are you backing up the database? Just backing up /var/lib/postgres? Or are you doing a pg_dump? If the former then it’s possible your backups won’t be coherent if you haven’t stopped your database and it will contain that full history of deleted stuff. pg_dump would give you just the current data in a way that will apply properly to a new database should you need to restore

    You can also consider your backup retention policy. How many backups do you need for how long?

    • seang96@spgrn.com
      link
      fedilink
      English
      arrow-up
      2
      ·
      11 months ago

      Setup backup hooks with velero and kopia on a HA postres cluster this week. Biggest DB is Lemmy and that shrinks by a factor of 10 using pgdunp with custom archive. Dumping is 100% the way to go!

      Similarly I should do this for my sqlite applications, it looks like kopia can’t do incremental backups with them and thinking about it, it makes sebse, likely sane reasons you mentioned.

    • Footnote2669@lemmy.zipOP
      link
      fedilink
      English
      arrow-up
      1
      ·
      11 months ago

      You are right, I should. They are a bit more complicated than I anticipated, and apparently I’m doing everything wrong, haha. I have backups set up to go 2 years back, but I’m checking backblaze occasionally to check, so it shouldn’t be an issue. I have two months so far lol Thanks for the write-up :)