-
Notifications
You must be signed in to change notification settings - Fork 205
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Lock files / configuration for global environments #1280
Comments
Currently the global environments are simple "non project" installs of a conda environment. So we don't save any information apart form the environment itself. I unfortunately can't find the discussion but we've been talking about a configuration file for the global environments. E.g.: envs:
- name: bat
channels:
- conda-forge
dependencies:
- bat
- name: ripgrep
channels:
- conda-forge
dependencies:
- ripgrep
- name: some_pytorch_package
channels:
- conda-forge
- pytorch
dependencies:
- some_pytorch_package
- pytorch==2.3.1 This way you could easily track your global environments and even better recreate them on a new machine. These might then be extended with lock files per env to accommodate your request. p.s. Not sure if we want to do this in YAML but my brain wrote it like that. Just take this as an example. |
Your example configuration file is an equivalent of |
@kxmh42 I think there are a few knobs users might want to turn in the "global" environemnts. For example, they might want to expose additional binaries or install additional (plugin) packages. Therefore we would likely come up with an additional config file that also does locking :) |
Ah, I see! In any case, if you do this, please don't save these config/lock files in Edit: After reading the XDG spec, I believe the lockfile should be placed under |
An update for this Issue, We've now implemented a manifest in #1833 This will be the first step towards fixing this Issue. Would that already be enough for you? |
Problem description
Pixi environments inside projects can be deleted at any time and regenerated using
pixi.lock
. However, it looks like it's not the case for environments created withpixi global install
. If I delete$PIXI_HOME/envs
, I have no way of recreating exact versions of the installed tools and their dependencies, is that right?The particular scenario I'm looking at is saving space in my home folder by moving
$PIXI_HOME/envs
to a partition that has larger quota, but doesn't get backed up (see #997). And if$PIXI_HOME/envs
is lost, I would like to recreate it in its exact state.My suggestion would be to save lock files for global environments somewhere in
$XDG_DATA_HOME/pixi
/~/.local/share/pixi
.The text was updated successfully, but these errors were encountered: