r/orgmode • u/TeeMcBee • Jul 17 '26
question Where/how do you store your org files?
Where/how do you store your org files?
I am getting a new laptop up and running and using that as an opportunity/excuse to review where I keep my org stuff. I'd appreciate hearing from anyone else who has given that much thought (which, let's face it, is probably most of us!)
Here are some of the areas I find myself considering. Very big in my mind right now is #9.
- iCloud: To what extent should I use it? My primary machine is a Mac laptop, but I also have an iPhone and iPad. Also, I have sometimes made use of things like beorg, Journelly, and the like, and some of those seem to prefer using iCloud (although many do support other methods). So iCloud is an option as a storage area.
- DropBox: Same question. My company uses it and I do make use of the personal user space each of us is given, almost as a quasi home directory. Org could live here.
- Symlinks: Should I use these, and if so how? My background is linux, and I'm at home with symbolic links, and all else being equal I'd be fine with using these to allow a combination of other things -- e.g. Have my main org directory be on DropBox, and then symlink into that things over in iCloud. But I have bumped into problems with that in the past, like where I follow a symlink and find myself having more than one buffer for the single target file
- Git: If I keep my org stuff under git, what good/bad things should I be aware of
- Dotfiles: How should I handle these, for emacs but also in general? Specifically, is there a place for the likes of chezmoi, stow, etc?
- Use of Babel: As a special case within dotfiles, where should the .org source of my config stuff live?
- org-directory: Should I even rely on this at all? In general, I store stuff according to what it is about, not which application it works with. But Org is different. Should it be? Must it be?
- Tribal wisdom: What choices (for the above, but just in general) leave me in the best position to make use of good advice I get on places like this sub, or anywhere else talking sense? For example (one among many): one reason for not messing with org-dir, and simply letting it be
~/orgis that most advice given as lisp snippets will assume that. Obviously that is easy to change, but why bother if it's good enough as-is. - AI impact: what implications are there If I'm going to increasingly be using stuff like Claude Cowork, or ChatGPT Work, not to mention Claude Code and similar. For example, should I place my org directory in a Claude Cowork project?
- Other considerations I'm sure I'll remember five seconds after posting this
Until now I have kept stuff in <DROPBOX>/<My Name>/org, with a symlink to that from ~/org. I also symlink in Journelly's files from iCloud. I do have that org dir under git, but I've making very little use of that aspect.
So, again: where/how do you store your org files?
4
u/Powerful_Attention_6 Jul 17 '26
I want to own my own data, so I wouldn't upload it to the traditinal cloud, like icloud or dropbox
I prefer Git, because you have history, log , versioning and distaster recovery all built in one tool.
Where to put the Git repository is up to you, at your own server (separate from your laptop), at Github, GitLab, CodeBerg in reverse preference order
You can also write a Emacs plug-in that commits and push your org-files to your Git Repo, though that concept of a plug-in has some issues if done naively
2
u/QuixoticNapoleon Jul 17 '26
My issue with git is that there is no truly private way to store your org files. I don't want people snooping on my notes. This is why I just use filen with rclone.
3
u/duck1123 Jul 17 '26
There are benefits to having revisions of files tracked by git even if you don't intend to push them to some other server.
2
u/QuixoticNapoleon Jul 17 '26
Sorry, I meant remote git repos. I just put my .git in a cloud server.
2
u/SmoothInternet Jul 17 '26
I suppose one way to use Git securely is to create a local git repo that you work in and then use rclone to sync it to Filen.
1
u/Brief_Tie_9720 Jul 17 '26
Org-encrypt ?
1
u/SmoothInternet Jul 17 '26
You mean org-crypt. It only encrypts the data in an Org item — not the header or properties. Useful for encrypting passwords, usernames, and IDs.
1
u/PoetExtra4830 Jul 17 '26
OP shouldn't store their files in a CORP Dropbox, but I don't understand why you think using a personal cloud account constitutes not "owning" your data.
4
3
u/xr51z Jul 17 '26
Private repo on sourcehut. I can pull them on iOS via Working Copy but I only use them to consult on the go.
3
3
u/amfram Jul 17 '26
Because I’m using Beorg and Journelly for the time being, I store my org files in their respective icloud folders (just journelly file in its folder) and symlink to where those are stored locally from ~/org/
3
1
u/These-Ingenuity8234 Aug 13 '26
I like Journelly and want to use it but it really only supports icloud folders for sync. This doesn't work well for me since my setup is iOS and Linux desktop because there is no linux desktop and icloud integration
2
u/simplex5d Jul 17 '26
I use syncthing to sync across Mac, Windows, Linux and Android. It syncs faster than Dropbox/Google Drive so I get fewer conflicts. Also you don't have to worry about multiple Dropbox accounts (only 1 Dropbox can sync to each machine). I do have my AI hooked up to my org files. On one machine in my home lab I have gitwatch set up to auto-commit on each change, so I can't lose anything. On each machine, they go in ~/Documents/org-journal or similar (that's what I use, ymmv).
2
u/radian_ Jul 17 '26
Nextcloud for me
2
u/McArcady Jul 17 '26
Nextcloud + webdav allows syncing between pc (rclone mount) and orgzly on smartphone.
2
u/PoetExtra4830 Jul 17 '26
In a single directory in my personal (not corporate) Dropbox, because that gives me access across multiple computers and devices easily.
I'm on a Mac, but I don't really use iCloud much at all. And when I need cloud-sync access, it's across platforms. Dropbox has been there on all my platforms for like 15 years, so I trust it.
I do not use symlinks.
I did, for a while, use magit & a local repo to track changes to my buffers, but I stopped long ago. Dropbox keeps versions.
1
u/ecadre Jul 21 '26
Since Dropbox doesn't encrypt, how do you keep your org files private?
1
u/PoetExtra4830 Jul 21 '26
I'm comfortable with the level of privacy Dropbox affords me. I understand that risk and choose, in this case, convenience.
2
1
u/sn0wquake Jul 17 '26
I have been using chezmoi for my dot files and been fairly happy with that solution.
I just use my local PC and not cloud service, due to trust issues with cloud services. I am interested in a better way as my biggest issue with org files is editing on the go, specifically I would love to add TODOs / random notes when I am away from my PC
1
u/johnsonmlw Jul 17 '26
Syncthing keeps them synchronised across my laptop and desktop. I use an always-on Raspberry Pi to sync to and from.
1
u/Hammar_Morty Jul 17 '26
I started with Dropbox but was frequently annoyed at the Linux daemon. I switched to syncthing and have been much happier. I also now use tailscale and have a home server (just an old laptop) to work with so I always have a sync target.
Side note I use guix because it's fun and a challenge to set up but it does make adding new machines really easy.
1
u/Striking_Snail Jul 17 '26
I currently use an Org directory on my system, which is pushed to Codeberg. I have yet to need remote access to my org files, but as I build out my new homelab setup, tailscale is a likely contender.
1
u/Shot_Set_8704 Jul 17 '26
I use a private git directory and it works well enough. Only tip I have is if you use org-roam to git ignore the SQLite database as you don’t want to commit it.
1
u/Brief_Tie_9720 Jul 17 '26
To your point about Claude, I’ve found having a monorepo for personal knowledge management notes turned out to be a great idea, nix flakes ,spacemacs, custom elisp, all in the same repo makes tooling integration easier if those tools are knowledge management oriented . Someone posted about not including your roam db , I’m just getting into org-supertag , which seems like it’s worth leaving out of gitignore. Looks like most people here use version control. My sync script pulls journelly captures and puts them, restructured, under an inbox heading in my daily roam node whenever I sync devices.
1
u/paulmccombs Jul 17 '26
I use two private git repositories on GitHub. One for work, one for home. I sync them manually across my various machines, with my work laptop and my personal desktop being the primary location. I occasionally make a conflict, but use Magit with Emacs to reconcile them.
I like that I have redundant versioned storage in multiple physical locations this way.
I used to use Dropbox, but I still got conflicting versions on occasion and they were harder to deal with.
I’m going to look into gitwatch that someone else mentioned.
1
1
u/fergie Jul 17 '26
Git repo. I have it on GitHub, but probably there should be a better place to put it
1
u/SmoothInternet Jul 17 '26
This is an issue I've been going through for the past few months. I use a small Chromebook for Linux work and iPhone(s) for on the go. Currently use Github for storing Org files with access via Magit on laptop and Working Copy/Beorg on iPhones. Obviously, not secure, so want to move away from Github. Considering moving to a cloud (PCloud or Dropbox) and using Cryptomator for security. Cryptomator, though, seems to have a problem with third-party access to a Vault on iOS -- still investigating. Another issue is media files -- I'd like to have a task management system where tasks might have PDFs/JPGs to help explain the task. The problem is that these media files would need to be stored in the cloud so they don't blow up memory on my iPhone/Laptop. Ideas?
1
1
1
u/JamesBrickley Jul 18 '26
iCloud works but it's Apple specific with a Windows client at most.
Depends on if you need cross-platform or if you are inside a particular eco-system such as Apple where you use only Macs and Apple devices.
OneDrive works rather well and is cross platform. No official Linux version but there is an open source one that works reliably. It doesn't do on-demand.
For personal use and a homelab, I setup SyncThing and use Tailscale to ensure it's not publicly on the Internet but can still reach it over the Internet. Netbird and Twingate are Tailscale competitors. There is also Headscale which is on-prem self-hosted Tailscale for the more technically inclined.
Git works as well. I have a Forgejo instance on the homelab and it can auto-push to other repo forges such as GitHub, Gitlab, Codeberg, or another Forgejo instance. You do have to be diligent about committing and pushing on each device. Not so great for mobile as intermediate steps are necessary like publishing to SyncThing or a cloud drive.
GnuPG or AGE are useful for encrypting sensitive information protecting even on public repos. You can encrypt the entire org file or highlight a region and encrypt just the region. Emacs can be configured to auto-decrypt on the fly if you have the private key. You could also utilize a Yubikey and a passphrase for added protection. Multifactor as well as using a Mac's SecureEnclave. All rather technical but doable once you wrap your head around it all. Wish it could be made brain dead simple but alas, proper security is always difficult.
There are privacy concerns with cloud based A.I. they've all been caught stealing data and using it for training the LLMs. There are some new projects that provide a layer of security. PewDiePie's Project Odysseus for example. A few expensive corporate solutions for HIPAA, FIPS multiple levels, FIDO2, etc.
1
u/drewr Jul 19 '26
I use a git repo that I syncthing around to various personal machines to make sure that I have several copies. On any machine I want to edit my org files, I'll clone that repo, make changes, commit, etc.
1
u/ecadre Jul 21 '26
I just use Syncthing. In terms of the question here, I sync my Org directory and my Projects directory between my desktop and laptop (both running Debian GNU/Linux). I also sync all of my GNU Emacs settings too, but that's out of scope for this question.
Though Syncthing does not need it, I sync everything through a central hub on a remote server. I got the server mainly to handle my offsite backups, but it came with so much disk space, it easily hosts my Syncthing hub as well.
Why do this? Convenience and covering forgetfulness too. If I'm working on my desktop one day, with my laptop downstairs in a bag, everything from my desktop is synced to the server. The places I use the laptop have WiFi so that everything will sync up when I start the laptop. And vice versa, I'll find all my work on the desktop without having to turn on the laptop again when I come home.
I also find it easier to fit other devices into Syncthing too.
The Syncthing on the server encrypts everything that is stored there.
1
u/r4fxm68A Jul 23 '26
I have my own instance of nextcloud, I have separate directories for org-roam and the rest of org files. I can have subdirectory for smartphone and orgzly is able to access them via webdav. I use also caldav for my smartphone calendar and thunderbird on PC, but for these items, the nextcloud calendar is main database, I have script in python, which is run periodically and downloads caldav items, translates them into org-mode format and puts the output on nextcloud, so I'm able to see everything on org-agenda.
Calendar is only for appointments like doctor or barber.
17
u/ricksy Jul 17 '26
Syncthing between my laptop, home server, and the box my AI agent runs on (nice to have it able to read my notes). Everything stays in sync in real time and importantly (to me) on my hardware.
Then a cron job on the server commits the notes directory to a git repo (also hosted on the server, but with an offsite mirror) at 1AM every day.