Running two different nixpkgs/NixOS releases on one machine, possible with specialisations?

I have a flake based NixOS setup where my main system tracks a newer nixpkgs revision (currently on unstable). I also want to run an NVIDIA vGPU stack that only works correctly on an older nixpkgs release, specifically NixOS 25.05.

What I initially wanted was to use a specialisation for this, something like:

specialisation.vGPU.configuration = {
  ...
};

The idea being I could boot into a “vGPU” variant of my system that uses the older nixpkgs release just for the vGPU stack, while my normal boot entry keeps using the newer one.

From what I understand, a specialisation is evaluated as part of the same NixOS configuration, meaning it shares the same nixpkgs revision as the base config it is attached to. So I do not think it is actually possible to have a specialisation use a completely different nixpkgs version than the parent configuration. I wanted to confirm if that understanding is correct, or if there is actually some way to make a specialisation pull in a different nixpkgs revision that I am missing.

If this genuinely cannot be done with specialisations, I would like to know what the right way to approach this is. My goal is fairly simple, I want to be able to switch between my normal setup and the vGPU setup, and have the vGPU setup use the older nixpkgs release it actually needs, without that older release affecting the rest of my normal configuration.

For context on why I need this, here is what I have tried so far and what happens with each approach:

  1. When I keep my main system on unstable nixpkgs and only try to bring in the specific packages needed for the vGPU driver from 25.05, the vGPU stack fails to build, giving errors that point to a driver mismatch or something along those lines.

  2. When I switch my entire system to 25.05 nixpkgs so everything, including the vGPU stack, is on the same release, my full configuration breaks. There is a lot going on in my config unrelated to the vGPU part, and clearly some of it is not happy being pinned back to 25.05.

  3. When I strip everything down and disable basically all modules and settings that are not directly related to the vGPU setup, keeping only what is needed for it, and build the system fully on 25.05, the vGPU configuration builds and works exactly as intended with no errors at all.

So the vGPU stack itself is clearly fine on 25.05, and the problem is entirely about how to make that coexist with the rest of my normal, newer setup, either through specialisations if that is even possible, or through some other mechanism I have not considered yet.

If specialisations are a dead end for this, I would appreciate pointers on what people usually do in this kind of situation, keeping one machine able to run two logically separate configurations pinned to different nixpkgs releases, without the older one dragging down or interfering with the newer one.