Skip to content

kisslim/envlock

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

7 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

envlock

Layered env tool atop Miniconda/conda-pack: No conda Python packages; only pip + provided wheels; PySMT resolves conflicts. Binaries via popular manager per toolchain. Env packs fully offline. Spec .tar.gz locks everything for exact reproduction.

Initial prompt

let's design a layered env manage tool on top of miniconda and conda-pack with restrictions:

  • user MUST NOT use ANY conda command, especially use that command to install ANY python packages. only pip is allowed to use. user MAY install provided wheels.
  • user use PySMT to resolve dependency confilcts by default. user MAY NOT know about PySMT.
  • user gets a requirements.freeze.txt from output of pip freeze by default.
  • user MAY use a proxy to conda command to install binaries they need, including java, javac, rustc, nodejs, npm, ollama, ..... the tool MUST choose the MOST POPULAR package manager for each language/toolchain. the user CAN NOT change the tool's choice.
  • user MAY pack the full env and ship to another machine. the packed env MUST NOT depended on internet.
  • user MAY pack the env spec into a single .tar.gz file. it contains everything locked and user provided wheels/other binaries. the tool CAN use that spec to reproduce the env EXACTLY the same with the help of internet.

About

Layered env tool atop Miniconda/conda-pack: No conda Python packages; only pip + provided wheels; PySMT resolves conflicts. Binaries via popular manager per toolchain. Env packs fully offline. Spec .tar.gz locks everything for exact reproduction.

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors