did i mention how great esbuild is because esbuild is great
(it has some cool options that lets making plugins be really simple)
one cool thing that it lets me do is have libraries that are shared across all internal scripts and plugins, so if most plugins use a library (for example, dom-chef), it'll only be included in scripts once
(it's also native and fast as heck so i can do these cool things at runtime)
ok that's enough esbuild appreciation for now
If anyone wants to try Crankshaft with the ProtonDB plugin, I put up instructions here [0]
keep in mind these are very rough steps, none of this has been well tested, and parts are janky or might be broken. I've tested on multiple Linux desktop computers though, so hopefully it works ok!
(running in steam's deck ui should work, but the ui is very janky right now, I have a lot of stuff to refactor in there)
[0] https://paste.sr.ht/~avery/ad839af6cb000352a22d7686279e10744590a68a#crankshaft-instructions.md
oops i got busy and didn't do much but here's an update
- flatpak works well, and makes it super easy to install on the deck (I'll probably submit it to Flathub soon?)
- added a systemd unit that starts crankshaft on boot, also works great on the deck
- added a built-in plugin browser, so you can install new plugins directly from within Steam with one click!
(and this is still all fully compatible with normal linux desktop)
here's the plugin browser working on the deck (as usual, sorry about bad video quality):
(i also made a website cause i need one for flathub, not much there yet)
https://crankshaft.space/
yaaaaay crankshaft is on flathub now https://flathub.org/apps/details/space.crankshaft.Crankshaft
main things i need to do for a Good experience on the deck:
- install an autostart systemd service (I just did this, but I probably need some ui to disable it)
- fix a bug where if you have lock screen enabled an injected script times out after a while jhfglashjfhsdjf
- when crankshaft/steam stops, replace patched steam scripts with the original scripts, otherwise steam always goes through a like 30 second update process when it starts