Pimutils: The coreutils of personal information management
pimutils.org
pimutils.org
Contact management (lbdb), numerous task managers, calendars, Emacs org-mode, vimwiki, schedulers, and more.
remind, calendar, and taskwarrior come to mind.
Makes me think a bit of one of the original-ganger XML namespaces, pim/space[2]. Spaces for your personal information management. There are very old threads for this, going way back.
I'd say Atom Publishing Protocol came close. We think of Atom as an RSS competitor, but it was part of a broader general information organization & manipulation effort with Atom Publishing Protocol, which included more about ways to manage & append & write information, into feeds, which existed in collections, across workspaces[3].
Tim Berners-Lee is still hard at work, trying to distill out a useful, general means of wrangling one's & other's information. The team seems to have just released Inrupt, their implementation of the Solid specifications for linked data[4]. Which is helping power some of the latest BBC & NHS & NatWest (a bank) systems[5].
Personally I think Personal Information Management is a wonderful white whale for folks to chase. We can land it, & it will make a huge difference to all if we do. As for where we are now, I rather enjoy the JSON-LD & SOLID & Linked-Data world, think there are great specs there, for building better general systems atop, and hope we can start to rebalance some of the questions of control over computing & data with these more general systems.
[1] https://hunden.linuxkompis.se/2020/11/13/my-desktop-november...
[2] https://www.w3.org/ns/pim/space
[3] https://tools.ietf.org/html/rfc5023#section-8.1
[4] https://news.ycombinator.com/item?id=25211816
[5] https://money.yahoo.com/nhs-data-creator-sir-tim-110816726.h...
Does anyone know of something like that? I haven't found a satisfactory solution so I've been building one, but I keep feeling like I'm wasting my time and that there must be something else available. In any case I am planning on releasing it as a desktop app and mobile (Android, iOS) at some point. Right now I just use Syncthing to sync across devices - you just point the app to a directory of Markdown files.
https://github.com/linuxcaffe/tw-kanban-js https://greggigon.github.io/my-personal-kanban/ -- I use this sometimes
It's a bit fresh and needs to be fully fleshed out, but it's functional!
Easy installation. Can be run locally using a php web server.
Simple, and easy to use. I use the color version to track things easier.
CalDav/CardDAV is widely supported by lots of FOSS tools, and https://packages.debian.org/sid/radicale is very easy to set up as a server. You can host it behind a Tor hidden service if you are worried about hackers. https://github.com/infinity0/droid-hacks/blob/master/pages/s...
I do use khal and sync it with my google calendar. I haven’t figured out multi-calendar sync just yet (work/personal/wife), but, it’s on my list.
Timestamps all input and appends it to a log file. Inputs can be either arguments to the command, or read from stdin if piped to.
Log file should be parseable with grep and other coreutils, but an indexed option might be useful for time range queries.
systemd-cat -t mylogs <<< "Message"
To read: journalctl -t mylogs --since yesterdayStill, nice hack value.
I’ve used this for a few years now and it’s pretty solid.
It basically acts as a translation layer between Microsoft protocols and open protocols. I usually run it as a local systemd user service.
My only issue is with MFA. To set it up you'll need to dig through the stdout/logs to get the initial "add app"/Auth URL. After that the push notifications from the Microsoft Authenticator work as expected.
If you're not using push based MFA I'm not sure if it'll work, you might need to dig through the logs to grab the URL each time. If it was me I'd probably setup another script to sit watching the log, extract the MFA URL and send a notification with lib notify.
So yeah, a little janky to set up (yay for proprietary protocols) but you can then use whatever email client you like and manipulate it as you need.
"IMAPFilter is a mail filtering utility. It connects to remote mail servers using the Internet Message Access Protocol (IMAP), sends searching queries to the server and processes mailboxes based on the results. It can be used to delete, copy, move, flag, etc. messages residing in mailboxes at the same or different mail servers. The 4rev1 and 4 versions of the IMAP protocol are supported."
class GoogleContactsStorage(dav.CardDAVStorage):
on https://github.com/pimutils/vdirsyncer/blob/master/vdirsynce...
I also highly recommend khard, which manages contacts.