HGL
like-gold

Error in dev environment in Steam OS

I'm trying to set up a development environment to contribute to Heroic Launcher on a Steam Deck. I followed the instructions on the readme. When running the dev container inside VSCode or on the terminal, I'm getting the following error. error while loading shared libraries: libnss3.so: cannot open shared object file: No such file or directory. If I run yarn start outside the container, Heroic launches without any problem. What should I do to install this missing dependency inside the dev container? Anybody got any tips on setting this up on steam os? Node version: v18.12.1 OS version: Linux steamdeck 5.13.0-valve36-1-neptune
13 Replies
rival-black
rival-black•3y ago
I think the dev container needs the missing libs Or docker can not run on ste deck Is there docker for flatpak? @FlavioF34rn you developed on steam deck right?
adverse-sapphire
adverse-sapphire•3y ago
yes but not using a container I just installed node using nvm, everything locally and was fine
like-gold
like-goldOP•3y ago
@FlavioF34rn That's good to know. I just wanted make sure to isolate the dev version from the stable Heroic installation. (Not to mess up my current heroic installation as suggested in the readme)
rival-black
rival-black•3y ago
If you have heroic as flatpak you can't mess up things. At least on my PC i do it like this and no problems. heroic flatpak stores configs and stuff in different folders via yarn start everything should go to ~/.config/heroic flatpak heroic shouldbe in ~/.var/app/com.heroicgameslauncher.hgl/config/heroic
like-gold
like-goldOP•3y ago
@Nocccer thanks for the suggestion! I'm using podman instead of docker on steamdeck but the commands work almost the same. I can enter the container without any problem. but yarn start inside the container fails with the above error Great! this is good to know. thank you very much for the clarification
rival-black
rival-black•3y ago
I think podman misses some libs then. Because the Dockerfile pulls a arch image Don't know how podman works You probably need a linux image and install nodejs, npm. Via npm you can install yarn
like-gold
like-goldOP•3y ago
Yeah. I'll stick with the regular environment for now then without a container.
rival-black
rival-black•3y ago
I think you need to find out how to install dependencies inside a podman instance if pacman works you can just install the missing libs like nodejs
like-gold
like-goldOP•3y ago
(Just to let you know, replacing docker with podman in the commands in the readme got me some distance e.g. podman run -it -v ./:/tmp/heroic localhost/heroicdevcontainer:latest.I can see node, yarn, npm is all there inside the container.) only missing thing seems to be libnss3 somehow
rival-black
rival-black•3y ago
just install it via pacman i don't know if you use the Dockerfile but you could adapt it or you write a new podman file which describe your container looks like Seems like podman can use Dockerfile. So you could add nss in the Dockerfile RUN pacman -Syyu --noconfirm && pacman -S nodejs npm yarn nss --noconfirm
like-gold
like-goldOP•3y ago
Thanks. I'm trying to just enter the container and install it first to make sure problem goes away, without modifying the dockerfile just yet
rival-black
rival-black•3y ago
If you solved it you could write a podman config file and add steps to run devcontainer for podman in the readme Could be your first contribution 😄
like-gold
like-goldOP•3y ago
Thanks @Nocccer for your help! I ended up installing all these packages at the end as responses to the errors I was getting.. pacman -Sy at-spi2-core libcups libdrm gtk3 alsa-lib nss Even then it ended up diving me this error:
built in 119ms.
[1795:0100/000000.581525:ERROR:zygote_linux.cc(649)] write: Broken pipe (32)
[1796:0100/000000.598227:ERROR:zygote_linux.cc(649)] write: Broken pipe (32)
[1797:1230/140945.444448:ERROR:ozone_platform_x11.cc(240)] Missing X server or $DISPLAY
[1797:1230/140945.444481:ERROR:env.cc(255)] The platform failed to initialize. Exiting.
Done in 19.59s.
built in 119ms.
[1795:0100/000000.581525:ERROR:zygote_linux.cc(649)] write: Broken pipe (32)
[1796:0100/000000.598227:ERROR:zygote_linux.cc(649)] write: Broken pipe (32)
[1797:1230/140945.444448:ERROR:ozone_platform_x11.cc(240)] Missing X server or $DISPLAY
[1797:1230/140945.444481:ERROR:env.cc(255)] The platform failed to initialize. Exiting.
Done in 19.59s.
So I'm going to stop pursuing the podman path for now and stick with the regular environment. Just noting this here for posterity 🥲

Did you find this page helpful?