Ffmpeg_6-full error: undefined variable 'ffmpeg_6-full'

ffmpeg_6-full fails to install with home-manager and nix-shell
with the error undefined variable ‘ffmpeg_6-full’

this is the error when running nix-shell -p ffmpeg_6-full

        at «string»:1:107:

             1| {...}@args: with import <nixpkgs> args; (pkgs.runCommandCC or pkgs.runCommand) "shell" { buildInputs = [ (ffmpeg_6-full) ]; } ""

checking the git revision of Nixpkgs im using by running the following command

nix-instantiate --eval '<nixpkgs>' -A lib.trivial.version

outputs the following version

22.11.3639.115a96e2ac1

im on the unstable branch and made sure everything was up to date by running

doas nixos-rebuild switch --upgrade

wondering if anyone else has the same issue

im running nixos on a Dell Inc. XPS 15 7590 with Intel® Core™ i7-9750H × 12 processor
with Mesa Intel® UHD Graphics 630 (CFL GT2) graphics

this is my home manager config

heres my root config

Assuming you’re not executing this in a root shell, that will evaluate the command as your user, which has a separate set of channels. Most likely your root user is using the stable channel.

What does doas nix-channel --list give you (and nix-channel --list just so we get an idea of your user channels as well)?

115a96e2ac1 is 22.11 which does not and will not have ffmpeg_6. ffmpeg_6 will be available from 23.05 onwards (current nixos-unstable).

1 Like

running

doas nix-instantiate --eval '<nixpkgs>' -A lib.trivial.version

returns 22.11.3667.87edbd74246"

so thats why its not working. doh

its not obvious looking at the search.nixos.org package page for ffmpeg 6 that you need to be running 23.05 i couldnt see any mention of it

maybe search.nixos.org needs to show version requirements in the results to avoid this kind of confusion

search.nixos.org only shows ffmpeg_6 in the unstable channel and no results when searching 22.11.

Erm… This thread is making me doubt my understanding of nix…

Shouldn’t you be pulling packages from unstable, i.e. 23.05, then?

I’m mildly confused, does the running system being 22.11 somehow modify the channel being used? That’s not how channels work at all aiui, but I’ve not touched them in a while…

Or are you just in fact not actually using the unstable channel, @NapoleonWils0n?

For what it’s worth, you can mix and match a stable and unstable packages, you just need to add a second channel and import the package from it instead of <nixpkgs>. So it’s not really a version “requirement”.

Flakes are so much less confusing, damnit.

Im switching back to Ubuntu, Emacs pure gtk overlay is throwing errors and wont build and its just to painfull googling for solution for nix problems