← Back to context

Comment by williamsss

1 day ago

Yep fair point. I'm doing the project in chucks and writing about it. his written part notably unlocks the ability to use my phone. Currently vetting a way to sync my database files with my markdown files on my laptop as I enjoy using Vim.

Funny enough I had downloaded a-shell and experimented with it and going git based. But ultimately didn't want my notes stored through Github. If that way works for you, cool!

I do agree with the author and others that I also wouldn't feel comfortable storing personal notes on Github. As I mentioned in a previous comment - you can use "git" without Github by hosting an instance of the open-source Gitea service.

https://github.com/go-gitea/gitea

  • Thanks for sharing. I'll have a play with Gitea

    My concern with this approach would be I've read through Directus' codebase and can understand it. With a self-hosted Git server like this I'd be worried if shit hit the fan and corrupted my Git files or stopped being maintained I'd be a duck out of water

    • It's also worth noting that Gitea forked a while back. The community fork is Forgejo.

      https://forgejo.org/

      And if you really just want a simple hosting system, https://tangled.sh is really easy to set up. It uses atproto (network underlying bluesky) as their identity provider and for tracking issues, PRs, comments, etc. Their "knot server" is basically just a little self-hosted go node that manages git repos. The project is fairly small atm and it's pretty much all in go so it's not too hard to skim through if you want to see how it works under the hood (or if you are afraid of needing to be able to keep it maintained long term).

      1 reply →

    • You don't need Gitea (nor Forgejo, nor GitLab, ...). You just need `git` installed on whatever server you already have. And just use that as one of the git remotes.

    • > if shit hit the fan and corrupted my Git files or stopped being maintained I'd be a duck out of water

      You should have the same concern with anything you're hosting yourself, and you should have 3-2-1 backups to mitigate that concern. Gitea just uses regular Git repositories under the hood last i checked, and Git is an extremely mature system; I'd expect 20+ year old repositories to work fine as long as the data are kept physically intact.

Doesn’t HAVE to be GitHub, git is git is git. You could host your own git server like a self hosted Gitlab if privacy is a concern (which is a totally valid concern! I share the same concern, I don’t necessarily want all of my inner brain workings available to GitHub). You could probably also figure out some clever way to encrypt the files too, I bet there’s a plugin for that. Then you could use anything you want without that worry

  • You have a good point. I don't have experience hosting Git servers personally. Is it easy to run and maintain? I'll have a try on my VPS if it is.

    • Heck, you don't even need to run something like GitLab. Owing to Git's design as a distributed version control system, a "Git server" isn't even really a separate piece of software—it's the same software being used in a different way. Details @ https://git-scm.com/book/en/v2/Git-on-the-Server-Setting-Up-... , but you basically just need to `git init` somewhere on your VPS that you can later ssh to and add as a remote a la `git remote add origin username@yourvpsserver:/srv/git/project.git`

      1 reply →

    • In a single user scenario where you don't care about a web interface (and its associated additional features) for your repository you can literally use any server that is accessible to you via ssh and has git installed as a git remote for your repository.

    • If you're not too wedded to git, have a look at fossil, perhaps. Its a dvcs just like git, but is itself distributed as a single static binary. This binary, in addition to allowing you to init & interact with fossil repo's, also comes with an integrated bug tracker, gui (for logs, etc), wiki, even a web forum with threaded discussions (so kind of a replacement for a mailing list).

      And a builtin admin interface to govern permissions on the above. Plus, its its own server. All of this ... is builtin to that single binary.

      It has a few of its own quirks as a vcs, but its pretty much equivalent to git, both functionally & conceptually (if you know git, you'll know fossil in 5 minutes)

      So, if you want a dvcs for syncing, and don't want to setup git for external access, try fossil?

I appreciate that you are taking the time not only to do the work but to document your experience and share it.

  • Thanks. More devs should write about what they're building. Its the hardest part for me

> The thought of cyclically migrating notes from one PKMS to another every 5 years, as I had done from Evernote to Notion to Obsidian, made me feel tired.

git or syncthing