Hello, I would like to see a feature something along the lines of having multiple profiles for a user. The idea would be to have one per project workspace in a development area. It would still be OK to have a default profile per user much like what is currently implemented.
The application is software development and multiple maintenance where you release one version of a product and then have to support a maintenance stream alongside of continued development. In SVN/CVS scheme of things, this is having one project workspace be based on the trunk, and the other be based on a branch. 1. I would like to be able to have each workspace be connected to its own profile. 2. I would like the context to switch automatically as I switch back and forth between the two. 3. I would like the choice to be part of what is checked into version control. In the development scheme of things, I would normally want to update the trunk's set of toolchain version as new features, etc becom available, but I would want to lock the branch used for maintenance of the released version on the set of toolchain versions that were current at the time of the release. If I upgrade a tool, I want it to be something under my control (and the decision version controlled). I think that the ability of nix to support multiple sets of toolchain packages is powerful and would be helpful for production software development applications like I described above. I think at present this could sort of be done using multiple user IDs but I would like to see something like having a profile symlink at the top directory of each branch. We would need the ability to mark a point in a directory structure as being the top of where a profile is being used. We would need the ability to change the profile per such point. Perhaps the usual commands to install/remove/update the toolchain packages could be used as before. We would need the ability, at a given point, to be able to generate a set of applicable packages / versions so that if the project is checked out on another machine and then used, the nix system would create the profile (including building any toolchain packages needed of the correct versions). I think it should then theoretically be easy to add a rule to the project's makefile to invoke a couple of nix commands to prepare and validate the workspace toolchain environment before proceeding with the actual build of the project code. Any suggestions where such a feature should be hooked in? Regards, Darcy _______________________________________________ nix-dev mailing list [email protected] https://mail.cs.uu.nl/mailman/listinfo/nix-dev
