Sorry if this is a newbie question, but how do I go about installing a long-term support version (LTS) of the same software package via configuration.nix? I am particularly interested in running blender-lts and the very latest blender version (which I get from an unstable channel).
This is VERY important for my workflow, because there are breaking changes introduced in the latest versions of blender and some scripts and character rigs might not work properly when launched via non-LTS versions of the very same software.
How do I install and run blender 3.6 LTS and blender 4.02 at the same? I thought there would be a separate package in nixpackages repository, specifically for lts version, but there is none for some reason. Can somebody please help me out, how do you approach running LTS and latest versions of packages in your setups? Any good practices and suggestions?
i made it working using nix shells, create a directory that has all your nix shells for convenience like:
shells/
blender3/
flake.nix
blender4/
flake.nix
now inside flake.nix u can find a version of nixpkgs that had blender 3.6 here Nix Package Versions
inside blender3/flake.nix add
{
description = "blender 3.6";
inputs = {
nixpkgs.url = https://github.com/NixOS/nixpkgs/archive/50a7139fbd1acd4a3d4cfa695e694c529dd26f3a.tar.gz;
};
outputs = { self, nixpkgs}: let
system = "x86_64-linux";
pkgs = import nixpkgs {inherit system;};
in{
devShells."${system}".default = pkgs.mkShell{
packages = with pkgs; [blender];
};
};
}
and for blender4/flake.nix just replace nixpkgs.url
nixpkgs.url = "github:nixos/nixpkgs/nixos-unstable";
now u can create a alias so the shells directory is always in path, inside the home-manager configuration
programs.zsh={
initExtra= ''
dev(){
echo "entering $1"
nix develop /etc/nixos/root/shells/$1
}
'';
};
now in the terminal just do dev blender3 or dev blender4 to swap between versions
This flake has previous blender versions available: GitHub - edolstra/nix-warez: Nix expressions for proprietary software
Not at my NixOS machine to test, but I believe you could install this imperatively using nix profile install github:edolstra/nix-warez?dir=blender#blender_3_6