Putting Tailscale on the Steam Deck
tailscale.com
tailscale.com
[0] https://wiki.archlinux.org/title/systemd/User
[1] https://crankshaft.space/docs/usage/autostart
[2] https://flathub.org/apps/details/space.crankshaft.Crankshaft
https://git.sr.ht/~whynothugo/dotfiles/tree/c0bf9296c6ca8661...
Note that the ordering is important so that `SSH_AUTH_SOCK` is passed down to other services.
Ie, create a ssh-agent.target and have the default target depend on it.
Now your ssh-agent is guaranteed to be online when the default target comes up.
But, since the unit is already setting a fixed path for the agent, I would just put that path in my .profile and call it a day. Having systems do environment variable injection seems too fragile to me, especially for static variables.
But yeah, `environment.d` or `.profile` would be simpler. I mostly opted to keep everything in one place.
Anybody rig up anything weird on their deck yet?
It's been fun and I feel like I'm just scratching the surface of it
> When I add something to my daily notes, if it's most directly related to another thing then I will try to describe it as a "spicy" or "diet" version of that other thing. "Spicy" means that there were things added and "diet" means things were removed. A systemd timer is a spicy cronjob because you can do a lot more with it than cron can on its own. An OpenRC service is a diet systemd service because you can do a lot more with systemd than with OpenRC. Think about how to describe things you don't really understand like this in your notes. It will help you a lot.
Its pretty crazy how frequently her personal blogs and company articles come up when I'm looking for answers the past several months. Sure, most of what I'm looking for is Nix related, but shes written (and recorded) a ton of useful material. Its saved me so much time / frustration. Thanks Xe!
Every system update (which again, is rare, Steam Client updates are much more common and don't change the OS), I SSH in and run `sudo ./reinstall-software.sh`.
Example script:
https://gist.github.com/anaisbetts/194def8511823c2290dbb9ecf...
Also as an aside, please use they or she to refer to me. I try to not be intrusive about it, but you are making a factual error by referring to me as "he".
Thank you for correcting me, this is not a problem you should have to deal with.
Far too often tech people (myself included) make the false assumption that most everyone in this space identifies as He/Him.
The only reason I noticed every update is because it kept wiping the screen keyboard I installed, because I couldn't get the built in one working at first. It wasn't until later that I found out the actual steam client has to be running in the desktop environment for the built in keyboard to work.
I'd really like a handheld programming device. I wonder how easy it is to write software with it.
There is already a compatibility layer software-wise (Proton to run Windows games on Linux), adding one more compatibility layer for hardware this time will add more problems to run games.
So unfortunately until PC game developers massively start to support ARM architectures, we're stuck with x86.
No. All it needs is someone other than Apple to do what Apple did with the M1 - people have shown that you can run games perfectly fine in Rosetta [1].
[1] https://www.macwelt.de/ratgeber/Das-M1-Macbook-Pro-als-Gamin...
Massive power consumption.. ? I've never seen it report more than 20W being discharged from the battery (this is easily found in the menu) even during gaming
>I wonder how easy it is to write software with it.
I'd call it borderline unusable for that unless you use a physical keyboard with it
For comparison, this is the same peek power consumption of the M1 base SoC. A debate could be had if the M1 would be faster overall (I don't think it would be in games if Rosetta is involved), but it's not going to lower power consumption.
Yes. All reviews I looked up complained about battery life. Some cited figures of 1-2 hours when playing demanding games. Is that wrong?
I assumed it had higher power consumption than the Apple M1 computers since they have a reputation for insane battety life. Not sure exactly how many watts they draw.
> I'd call it borderline unusable for that unless you use a physical keyboard with it
Well, I've written code using my phone... Can't be worse than that, can it?
You can also easily use a physical keyboard and mouse with the Steam Deck either through Bluetooth or any old USB C hub. Video out works too and it supports MST so it's possible to do multiple external monitors even though it has a single USB C port (can't be done with M1!). It has a full fledged desktop mode that's basically just a normal distro with KDE. By default you can't use pacman to install Arch packages but you can easily enable it if you want. Flatpaks are easily installable by default though.
I'm not sure M1 would be much more efficient playing AAA games either. Some of the battery life advantage is just the fact that they have more room for more battery.
Most early reviews wouldn't have taken that into account.
But also you have to consider that m1 macs don't offer you 8 zen3 cores and 8 rdna 2 gpu units. Apple device are notorious for being less powerful than the competition, but making it up in software, which you can't really do when the task is gaming, since that is basicaly as close as a full synthetic benchmark you can get.
Disregarding the arm/x86 compat layer that would be needed to play most games and its overhead, getting anywhere as close to steam deck framerate would probably take about 25 W worth of m1 chips. For 20 W, this thing is actually a beast. Like seriously, it runs Elden Ring (almost) well.
Yea. Not being able to play 99.9% of PC games due to only supporting 1 proprietary graphics API would be great.
My day 1 goal is to get the system working with tailscale and games over NFS. Second is getting that managed by home-manager as a OK workaround for the A/B update system.
The long term project is to get the stock OS recreated in NixOS. Testing the system using a newer kernel for better Btrfs and Zen performance and faster gamescope (Wayland micron compositor) updates seems like a really interesting project.
Between Jovian and HoloISO a lot the the SteamOS internal workings are fairly well documented. It's always amazing how fast the OSS community moves.
Here is a comparison between ZeroTier and Tailscale from a year ago: https://news.ycombinator.com/item?id=27491133
(they both have pros and cons)
But I wonder: if the best solution is to use a systemd-sysext image, why Tailscale doesn't just provide that kind of image as a download package?
The whole systemd-sysext seems like a good way to make that happen.
Moonlight is a client for Nvidia GameStream, a local streaming server solution. A computer running GeForce Experience hosts the GameStream server - a client device running Moonlight receives the stream.
Typically GameStream is only hosted from a computer running GeForce Experience, which I believe is Windows-only and only compatible with Nvidia graphics cards. This Sunshine project is an alternative GameStream server, so that it can be hosted on macOS and Linux as well.