Hopefully someone can shed some light on this idea. Or explain something that kind of fits/fills the use case and need. I am looking for a basic operating system that can be updated across multiple devices like a living OS.
For instance I have a desktop PC high end specs with the same Operating System as a laptop or tablet but it’s live sync. Meaning apps, files, changes made on one system are the same on all devices. I’ve looked at cloning drives and have done it. Far too slow and cumbersome.
This would be essentially changing devices based on hardware power requirements but having the same living operating system synced across all devices so all data and abilities remain the same anytime something is needed.
Maybe I’m being far fetched or what have you and this might possibly be in the wrong Sub. But I assumed it would fall under self hosted almost. Ive considered a NAS and I’m open to other ways to structure the concept ALL IDEAS WELCOME feel free to expand on it in any way. But dealing with different operating systems and architectures of various devices is wildly difficult sometimes for software, mobility, power requirements not watts but processing power, cross compatibility. I’ve seen apps that sync across devices but some desktop apps and mobile apps aren’t cross compatible and with self hosting so many services that function well across networks and devices after years of uptime you sort of forget the configs of everything it’s a nightmare when a single app update or container causes a domino affect. Thanks everyone hopefully this is helpful to others as well with similar needs.
If I understand well you want to have the same OS, software, configuration and files on different devices.
You could have a look at nixos.
I’m doing something similar, I have a computer in my office for work and a laptop at home for personal use and a bit of work.
I have a config shared between the two computers, they share similar modules but also have their own specificities.
This way when I configure VSCode for example I get the configuration synced on both.
For synching my files I’m using a synology NAS.
Well that’s a interesting approach.
First, you would need either a shared storage, like NAS, for all your devices or for them all to have equal amount of storage for your files so you can just copy everything to everywhere locally. Personally I would go with NAS, but storage problem in general has quite a few considerations, so depending on size of your data, bandwidth, hardware and everything else something other might suit your needs better.
For the operating system, you would of course need to have the same OS installed on each device, and they all would need to run the same architecture (x86 most likely). With linux you can just copy your home directory over via shared storage and it’ll take care of most of the things, like app settings and preferences. But keeping the installed software in sync and updated is a bit more tricky. You could just enable automatic updates and potentially create a script to match installed packages between systems (Debian-based distros can use dpkg --get-selections and --set-selections, others have similar tools), so you would have pretty closely matching environments everywhere.
Or if you really want to keep everything exactly the same you could use Puppet or similar to force your machines into the same mold and manage software installations, configuration, updates and everything via that. It has a pretty steep learning curve, but it’s possible.
But if you want to match x86 workstations with handheld ARM devices it’s not going to work very well. Usage patterns are wildly different, software availability is hit or miss and the hardware in general differs enough that you can’t use the same configs for everything.
Maybe the closest thing would be to host web-based applications with everything and use only those, but that limits heavily on what you can actually do and doesn’t give you that much flexibility with hardware requirements, meaning either that your slower devices crawl to halt or that your powerful workstation is just sitting idle on whatever you do.
Maybe better approach would be to set up remote desktop environment on your desktop and just hop on to that whenever needed remotely. That way you could have the power on demand but you could still get benefits from portable devices.
With this concept in mind, I recently put together a VDI setup for a person who’s in one location for half of the year and another the other half. The idea is he’ll have a thin client at each location and connect to the same session wherever he is.
I’m doing this via a VM on Proxmox and SPICE. Maybe there’s some idea in there you could use.
Was this functioning at a good performance level? Remote setups are sometimes finnicky and unresponsive or very delayed. I really like this idea and setup a NAS to go along with it for the other devices. 1 or 2 devices is all I want to connect. I’m very interested if this is of good performance.
deleted by creator
This might be overkill but I run an xrdp and just remote into it from any device. Tablet phone laptop etc with an rdp app. If you need it on the go you would also want something like tailscale or WireGuard as a vpn to access the computer while away from home
I’m running such a setup!
This is my nixos config, though feel free to ignore it, since it’s optmized for me and not others.
How did I achieve your described setup?
- nixos + flakes & colmena: Sync system config & updates
- impermanence through btrfs snapshots: destroy all non-declarative state between reboots to avoid drift between systems
- syncthing: synchronise ALL user files between systems (at least my server is always online to reduce sync inconsistencies from only having a single device active at the time)
- rustic: hourly backups from all devices to the same repos, since this is deduplicated and my systems are mostly synchronised, I have a very clear record of my file histories
Could you just RDP into your desktop?
Do you know of a way to make it less laggy and more responsive? Working remotely sucks atleast with my past experiences. Otherwise I love the idea. I think it my best easier to setup a NAS and just deal with a little hassle transferring files back and forth. I’m super aggravated dealing with 10 devices everyday I’m trying to simplify everything possible.
Could you move to web based editing?
The good thing is someone has thought of this before. That’s basically the concept of InfernoOS. The bad news is it is defunct and, even if it wasn’t, it was only really used to for network appliances, such as routers, print servers, etc.
Remote access seems to tick most of the boxes for you and it’s quite easy to install and maintain.
The most effective solution is to set up one powerful desktop and remote into it from the other devices.
Windows and Linux have vague support for roaming profiles, but it takes a lot of work to get it working, and you’ll still only get 90% of the way there. Some programs just won’t play well with it. And you’ll be continually maintaining it.