On Linux, you want to check D-Bus [1] if you need IPC (but that is primarily used for message exchange between different desktop apps). Everything else you mentioned sounds like a recipe for bloat. Desktop GUI libraries (like Qt or Gtk) ship everything you'll need and you can get a platform-agnostic app without much of a problem. > running multithreaded and writing into a sqlite database. sqlite doesn't support multi…
> SQLite only supports one writer at a time per database file. But in most cases, a write transaction only takes milliseconds and so multiple writers can simply take turns. SQLite will handle more write concurrency than many people suspect. Nevertheless, client/server database systems, because they have a long-running server process at hand to coordinate access, can usually handle far more write concurrency than SQLite ever will.
Source: https://www.sqlite.org/whentouse.html#:~:text=multiple%20wri...