(Minimum) build question

Full disclosure: I’m not a SNAP user myself and I’m a newbie to EO in general. But I am sysadmin for an expert user.

I’d like to know about a minimum build. My colleague is a python developer using SNAP to process Sentinel-1 data (and possibly Sentinel-2 in the future). He also uses pyroSAR. He runs SNAP locally and his build includes snap-engine, snap-desktop and s1tbx. We’d like to run his code on a headless Linux cluster.

Can I install snap-engine and s1tbx and miss out snap-desktop? Or does snap-desktop contain functionality that a command-line only install would require?

Thanks

The SNAP desktop has some useful command-line capabilities. Much of the graphics support is in the JRE. It could be useful to know if the SNAP “desktop” command-line mode runs with a “headless” JRE. Years ago NASA SeaDAS (versions less than 7, based on IDL) needed access to an X.org server to render fonts when creating PNG images. For “headless” operation we had to run Xvfb.

1 Like

Thanks for the input! We’ll find out soon if our use case needs those command-line tools.
We’ll certainly test our code with and without X forwarding when we do manual tests. Xvfb is a good idea for full headless mode.

Have a look at

How to create a bundle of SNAP jars for the usage on the classpath - SNAP - SNAP Wiki (atlassian.net)

Specially the bottom part…

1 Like

Thanks - this will be really interesting to try. Perhaps my question should have gone to the pyroSAR people, as it seems they use the command-line tools from the standard install as mentioned by @gnwiii.