3 ms·
Persisting your OS state as a "context" - saving and loading your open applications, their windows, tabs, open files/documents and so on. Started because of fr
by eivarv 7y ago
Persisting your OS state as a "context" - saving and loading your open applications, their windows, tabs, open files/documents and so on.
Started because of frequent multitasking heavy work with limited resources.
Open Beta (macOS) as soon as I finish license verification and delta updates.
https://cleave.app https://cleave.app
- abrichr 7y agoThis looks great! I've often wished that something like this existed. How long have you been working on it?
- eivarv 7y agoThanks! The basic idea, on and off for close to five years. Started out experimenting with shell session persistence (solved[0], but not quite), then prototyping a browser-concept and playing with browser-extensions, then settling on the OS-level... [0]: https://github.com/EivindArvesen/prm https://github.com/EivindArvesen/prm
- raihansaputra 7y agoThis is cool! I wish I have something like this across multiple machines, although then there’s a lot of sync problems that needs to be solved
- choward 7y agoI haven't really thought this out and I don't have aMac to test on but why not just use separate user accounts? Doesn't OSX already reopen every thing?
- eivarv 7y agoSeparate user accounts is kind of the naive (and not quite complete) solution to the same problem. Not really a smooth experience in my opinion, doesn't map quite as well to the concept of "working context" as I think of it. Also, you'd have to maintain your list of users, and manually sync any settings, etc. - whereas with Cleave, I'm planning on implementing white- or blacklisting of applications on a context-basis (and system settings etc. are implicitly shared).
- jborichevskiy 7y agoI love the idea of what you're building - signed up to be notified for the beta! > Separate user accounts is kind of the naive (and not quite complete) solution to the same problem. I too have attempted to solve this problem with user accounts; and yeah it doesn't work well. Files are a pain to share, the log-out-log-back-in process takes forever, and a bunch of preferences don't sync across user accounts. I particularly like the idea of having a super-low-energy mode where it's just for writing or reading, and saved states for my countless research sessions. Also, being able to freeze my dev workspace and resume it any point sounds amazing. Excited to try it out!
- baroomba 7y agoNice. I’ve thought for a few years now that this is the next big thing I want out of an OS and software ecosystem—suspend work session, resume book research session and personal communication session, suspend research session leaving comm session active, open Christmas shopping session, suspend, suspend all open sessions and load gaming session, and so on. Huge bonus if the sessions can be moved from one device to another.
- jlevers 7y agoI didn't know I wanted this until now, and now I really want it. I often open a ton of related applications, and then avoid restarting my computer because it's incovenient to reopen everything. I'm on Linux, so I won't be able to use your app, but great idea and good luck!
- gonzo41 7y agoI think taking this sort of context snapshot may be very difficult. If you assume no direct application integration. It would almost be like you would need a mechanism to operate in a partition of RAM where it could not interact with the current running context but stream all of the RAM in use to disk. Also it'd would be a data integrity nightmare because if one context shared the apps from another. How would you manage memory corruption, and allocation and saving in this sort of scenario. Anyway, sounds awesome. Good luck
- segmondy 7y agoYou can explore running everything in a Linux Container, LXD. Then freeze the LXD if you wish to shutdown, and unfreeze when you're ready to restart, it's how container workloads can be moved from one system to another.
- jlevers 7y agoInteresting, I'll look into LXDs. Thanks for the pointer!