However, I can’t figure out where the gem is actually installed to modify it or use a custom ood_core gem. Any suggestions? I’m not super familiar with Ruby.
Found it! /opt/ood/ondemand/root/usr/share/gems/2.7/ondemand/2.0.28/gems/ood_core-0.21.0 for anyone else who might look in the future. Figured it out by examining the spec file.
Now I’m not sure if I can just modify the rb files in here or not!
Thanks Jeff! No bug, I added a class vnccontainer that launches the vnc instance and websockify from within a container. I’m trying to fix a problem we’re having with a piece of software (ANSYS) that may be due to incompatibility with the desktop host OS (rocky, in our case). So, not really an OOD problem, just an extension.
The bonus is that we can now launch fully containerized desktops based on different operating systems, so that’s fun.
Sure, I’ll polish it up and submit a pull request for y’all to look at. It seems to work pretty well and I tried to do it the “OOD way,” but I’m sure it could be improved.
Found your fork from github. I wouldn’t worry too much about polishing, that can come either in the PR or later. At a glance I think it looks fine, and beyond that if it works for you, then that’s a great start anyhow.
In the interim, in case you need to patch your system again -
you’ve found the right location, though it can change (see the version numbers in the path)
you can edit those files directly. In fact you can just drop your vnccontainer.rb directly in the right location and it’ll just start to work
Great! That’s good to know. I tried to edit directly and it didn’t work, but I think I learned later that a portal refresh on the user end was needed for changes to ood_core to take effect.
I’m going to add an option to pick Apptainer or Singularity in batch_connect (right now it just uses Apptainer since that’s what the system I made it for has) and then submit.