There doesn’t seem to be an equivalent option for Opencloud, so I assume that one must manually install them from a zip file, as documented here.
However, I am having trouble understanding the instructions. Specifically, the $OC_DATA_DIR environment variable isn’t defined, and I can’t seem to find an existing web/assets/apps path on my system.
Then I did a nix-rebuild switch, which said starting the following units: opencloud.service, so according to my understanding, I should have seen an “open with arcade” item when right-clicking a rom. Obviously, my understanding is wrong…
The default for that variable appears to be based on the stateDir. I wouldn’t mess with setting it, that could break the service.
The WEB_ASSET_CORE_PATH might also affect things. I think you’ll have to dig a bit into the opencloud docs to see what all the variables the default NixOS service sets do, and reconstruct the intended paths from there (and/or read opencloud source code). Or wait for someone more experienced to figure this out.
Usually*_DIR is the canonical location with read and write access, while *_PATH is a colon separated list of read-only locations, auxiliary to the corresponding *_DIR.
As far as I understood OC_BASE_DATA_PATH is the actual environment variable used by the service itself. OC_DATA_DIR refers to the environment variable used by the docker-compose file for mapping any local dir into the container. So if you are not using the compose setup the first should be the correct one. I agree that the docs are quite confusing.
You are absolutely right. Sorry for sending you on the wrong track. As it is still on my todo I did not look into it in detail.
Another data point: According to cat /proc/$(pgrep opencloud)/environ, WEB_ASSET_CORE_PATH=/nix/store/7q0rj8rx2hh3a4x0s44znwyrzk3knrmr-opencloud-web-4.2.0and OC_BASE_DATA_PATH=/var/lib/opencloud.
This is very embarrassing, but it turns out that the problem was using a version of the arcade app that was too new for my version of Opencloud. Once I switched from version 2 (for Opencloud 6.0) to version 1 (for Opencloud 3.5, Nixos 25.11 is on 3.7.0), it worked, even without setting any env vars.