linuxdeploy-plugin-conda icon indicating copy to clipboard operation
linuxdeploy-plugin-conda copied to clipboard

Make plugin idempotent

Open probonopd opened this issue 6 years ago • 6 comments

Repeated runs fail with [conda/stderr] mkdir: cannot create directory ‘_temp_home’: File exists . How do you develop this interactively (trial and error during development of an AppImage)?

Similar,

Running process: /home/me/linuxdeploy-plugin-conda.sh --appdir AppDir
[conda/stdout] Error: directory exists: AppDir/usr/conda
ERROR: Failed to run plugin: conda (exit code: 1) 

probonopd avatar Jun 09 '19 11:06 probonopd

Duplicate of #10.

TheAssassin avatar Jun 09 '19 11:06 TheAssassin

No, #10 is about not downloading repeatedly. This is about not erroring when running repeatedly.

probonopd avatar Jun 09 '19 11:06 probonopd

#10 explains why it's necessary to error out to prevent running more than once.

TheAssassin avatar Jun 09 '19 11:06 TheAssassin

Then this is my feature request to make it so that one can run multiple times, like linuxdeployqt. It is necessary for efficient trial-and-error development.

probonopd avatar Jun 09 '19 11:06 probonopd

Same as https://github.com/linuxdeploy/linuxdeploy-plugin-conda/issues/10#issuecomment-494590494. Sure, would be nice to have, but implies a lot of work to make this reliable. Conda's installer doesn't support it properly. Also: linuxdeploy can run multiple times, only this plugin can't/won't. As stated in #10, you can just omit --plugin conda on subsequent runs.

TheAssassin avatar Jun 09 '19 11:06 TheAssassin

This plugin should be idempotent with some exceptions.

  • subsequent runs should recognize existing conda environment and not recreate the environment from scratch
  • installation of dependencies should be called normally, and should not (but that's not a hard requirement) update anything already installed

TheAssassin avatar Jun 23 '19 00:06 TheAssassin