¿Cómo puedo garantizar un entorno R consistente entre diferentes usuarios en el mismo servidor?

Estoy escribiendo un protocolo para un análisis reproducible usando un paquete interno "MyPKG". Cada usuario suministrará sus propios archivos de entrada; Aparte de las entradas, los análisis deben ejecutarse en las mismas condiciones. (por ejemplo, para que podamos inferir que diferentes resultados se deben a diferentes archivos de entrada).

MyPKG está en desarrollo, por lo quelibrary(MyPKG) cargará la última versión que el usuario compiló en su biblioteca local. También cargará las dependencias encontradas en sus bibliotecas locales.

Pero quiero que todos usen una versión específica (MyPKG_3.14) para este análisis y al mismo tiempo permitan el desarrollo de versiones más recientes. Si entiendo correctamente, "R --vanilla" cargará las mismas dependencias para todos.

Una vez que hayamos terminado, guardaremos el entorno de trabajo como una máquina virtual para mantener un entorno reproducible estable. Así que una solución temporal (6 meses) será suficiente.

He encontrado dos posibles soluciones, pero no estoy seguro de que alguna sea suficiente.

solicite al administrador del servidor que instale MyPKG_3.14 en la ruta R predeterminada y luego proporcione el siguiente código en el protocolo:

R --vanilla
library(MyPKG)
....

o

compile MyPKG_3.14 en una biblioteca específica, por ejemplo, lib.loc = "/home/share/lib/R/MyPKG_3.14", y luego proporcione

R --vanilla
library(MyPKG)
¿Son estos dos enfoques suficientes para asegurar que todos estén ejecutando la misma versión?¿Es uno preferible al otro?¿Hay otros problemas imprevistos que puedan surgir?¿Hay alguna opción preferida para estandarizar los análisis múltiples?¿Debo incluir una prueba de la salida deSessionInfo()?¿Sería mejor crear una sola cuenta en el servidor para que todos la usen?

Respuestas a la pregunta(1)

Su respuesta a la pregunta