ssh_config allows several ways to execute arbitrary shell commands, such as "Match exec" and "ProxyCommand". Specify a program that can detect networks and choose different connections. Then the config file itself wouldn't change.
I use a Yubikey for some of my keys, and I've never used an "agent", don't know how, and don't want to start, unless someone can give me a good reason to
I'm literally using btop on Windows because I want task manager to only be in the corner, with the terminal taking up the rest of the screen space. the only other way to do this would be to pin the window so the terminal is always under it, but then I'd have stuff go behind task manager and be hidden
instead I use zellij (tmux would suffice as well) and have a corner for btop, and shells in the rest of the space.
I mean yes, if I can work in my sweatpants (or no pants), not have to pack myself a lunch, and more easily goof off when I feel it is acceptable to do so, I too would report a higher 'well-being'. You wouldn't have to ask me twice to work remote again - unfortunately I work in manufacturing which can't really be done from one's home, usually.
This is a funny thing to study though, I'm really curious what they hope to gain from this 'knowledge'.
My setup is a self hosted GitLab. From there, in most of my repos I setup repo mirroring (basically it just does its own SSH-based git push whenever I push commits to it) to GitHub, GitLab, and Codeberg.
All of these are free (if you ignore electricity cost of hosting your own git server), and each one is a backup of sorts.
I don't necessarily recommend starting with GitLab though unless you want advanced CI capabilities, but you're already used to GitHub so you should consider self hosted gitea, which uses the same Actions syntax and even has some interoperability with its action modules I think.
But yeah, my recommendation is just to push to as many (free) git hosts as you can. Why not take advantage of free code storage if it's available. Plus if any one host goes down you can still retrieve your code from the others.
reply