From: Arthur Pereira da Fonseca (arthurpfonseca3k_at_hotmail.com)
Date: Fri Dec 17 2021 - 17:32:10 CST

Hello everyone,
Thanks for your answer.

Indeed, after the analysis output with VMD, I run a bunch of statistical analysis and generate plots and movies for data visualization. These are not easy to install or configure, that's why I need docker, and can't distribute it as a plugin.

I guess the best option to not transgress the VMD's License indeed is to pass the VMD from host to docker. It was kind tricky but I managed to get it working. So now I try to auto detect a VMD installed in the machine, and if the user doesn't have any, I can redirect they to obtain it according to the License instructions.

That way everyone stays happy.
Thanks again

Arthur

De: Giacomo Fiorin<mailto:giacomo.fiorin_at_gmail.com>
Enviado:quinta-feira, 16 de dezembro de 2021 16:19
Para: John Stone<mailto:johns_at_ks.uiuc.edu>; Arthur Pereira da Fonseca<mailto:arthurpfonseca3k_at_hotmail.com>; vmd-l_at_ks.uiuc.edu<mailto:vmd-l_at_ks.uiuc.edu>
Assunto: Re: vmd-l: VMD license

Hi Arthur, I'm assuming that your software has sufficiently complex dependencies to warrant using a container. Otherwise if it is mostly scripts that run alongside an unmodified VMD I would really suggest (A) trying to contribute it to the VMD distribution or (B) distribute it outside of it, which can be done in a variety of ways including the "store" plugin suggested by Nuno.

To bypass the license issue, I would suggest instructing users to pass the path to their own installation of VMD on the host computer, and bind-mount the corresponding folder so that the container can see it and use it. Both Docker and Singularity allow both features.

Optionally, if you're able to allow users to modify the container image, you could provide them with a script that embeds VMD in the image itself. Clearly, the container image would qualify as a "derivative work" and subject to license restrictions for redistribution.

The VMD pre-compiled builds, although functionally limited compared to one's own custom VMD builds, have the advantage of being very portable across modern Linux environments (i.e. both inside and outside containers).

Giacomo

On Thu, Dec 16, 2021 at 1:54 PM John Stone <johns_at_ks.uiuc.edu<mailto:johns_at_ks.uiuc.edu>> wrote:
Hi,
  The standard VMD license, as written, doesn't allow redistribution of
binaries to third parties. Out of curiosity, why are you distributing
your "program" in a docker container? If you made the program independently
available, then it would seem that any existing VMD user could download
and use it, and the license would not be a restriction. It's hard to guess
whether there may be various other practical solutions without knowing
a lot more than what you've stated below, but the suggestion I give above
is a straightforward solution, absent more details about what you're doing.

Best regards,
  John Stone
  vmd_at_ks.uiuc.edu<mailto:vmd_at_ks.uiuc.edu>

On Thu, Dec 16, 2021 at 02:37:57PM +0000, Arthur Pereira da Fonseca wrote:
> Hello everyone,
>
>
>
> I developed a program to help me run some analysis on a dcd MD. This
> program uses mostly VMD to perform such analysis. Now I want to distribute
> this program to my research group and other people interested. Looking at
> the VMD's license file I saw:
>
>
>
> 2. Licensee may, at its own expense, create and freely distribute
> complimentary works that interoperate with the Software, directing
> others to
> the TCBG server to license and obtain the Software itself.
>
>
>
> The problem is I'm deploying my program as a Docker container, and I need
> a binary VMD included. Is it possible? Can I verify that the user got a
> license for VMD? Is there any framework that I can use to validate an
> user?
>
>

--
NIH Center for Macromolecular Modeling and Bioinformatics
Beckman Institute for Advanced Science and Technology
University of Illinois, 405 N. Mathews Ave, Urbana, IL 61801
http://www.ks.uiuc.edu/~johns/           Phone: 217-244-3349
http://www.ks.uiuc.edu/Research/vmd/