Describe the bug
If a package, for example firefox, has the same version in old (20.03) and new (20.09) channels it is not updated. This may result in errors if old package is not compatible with new environment.
I run into this problem when updating to 20.09 when the firefox fontconfig was not compatible with new files.
Steps To Reproduce
nixos-rebuild boot --upgradenix-env -uExpected behavior
System works
nix-env --version output
nix-env (Nix) 2.3.7
Additional context
$ firefox
Fontconfig warning: "/etc/fonts/2.11/fonts.conf", line 5: unknown element "description"
Fontconfig error: "/etc/fonts/2.11/fonts.conf", line 5: invalid attribute 'domain'
Fontconfig warning: "/etc/fonts/conf.d/10-hinting-slight.conf", line 4: unknown element "description"
Fontconfig warning: "/etc/fonts/conf.d/10-scale-bitmap-fonts.conf", line 4: unknown element "description"
Fontconfig warning: "/etc/fonts/conf.d/20-unhint-small-vera.conf", line 4: unknown element "description"
Fontconfig warning: "/etc/fonts/conf.d/30-metric-aliases.conf", line 4: unknown element "description"
Fontconfig warning: "/etc/fonts/conf.d/40-nonlatin.conf", line 4: unknown element "description"
Fontconfig warning: "/etc/fonts/conf.d/45-generic.conf", line 4: unknown element "description"
Fontconfig warning: "/etc/fonts/conf.d/45-latin.conf", line 4: unknown element "description"
Fontconfig warning: "/etc/fonts/conf.d/49-sansserif.conf", line 4: unknown element "description"
Fontconfig warning: "/etc/fonts/conf.d/50-user.conf", line 4: unknown element "description"
Fontconfig warning: "/etc/fonts/conf.d/51-local.conf", line 4: unknown element "description"
Fontconfig warning: "/etc/fonts/conf.d/60-generic.conf", line 4: unknown element "description"
Fontconfig warning: "/etc/fonts/conf.d/60-latin.conf", line 4: unknown element "description"
Fontconfig warning: "/etc/fonts/conf.d/65-nonlatin.conf", line 4: unknown element "description"
Fontconfig error: Cannot load config file from /etc/fonts/2.11/fonts.conf
Fontconfig warning: "/etc/fonts/2.11/fonts.conf", line 5: unknown element "description"
Fontconfig error: "/etc/fonts/2.11/fonts.conf", line 5: invalid attribute 'domain'
Fontconfig warning: "/etc/fonts/conf.d/10-hinting-slight.conf", line 4: unknown element "description"
Fontconfig warning: "/etc/fonts/conf.d/10-scale-bitmap-fonts.conf", line 4: unknown element "description"
Fontconfig warning: "/etc/fonts/conf.d/20-unhint-small-vera.conf", line 4: unknown element "description"
Fontconfig warning: "/etc/fonts/conf.d/30-metric-aliases.conf", line 4: unknown element "description"
Fontconfig warning: "/etc/fonts/conf.d/40-nonlatin.conf", line 4: unknown element "description"
Fontconfig warning: "/etc/fonts/conf.d/45-generic.conf", line 4: unknown element "description"
Fontconfig warning: "/etc/fonts/conf.d/45-latin.conf", line 4: unknown element "description"
Fontconfig warning: "/etc/fonts/conf.d/49-sansserif.conf", line 4: unknown element "description"
Fontconfig warning: "/etc/fonts/conf.d/50-user.conf", line 4: unknown element "description"
Fontconfig warning: "/etc/fonts/conf.d/51-local.conf", line 4: unknown element "description"
Fontconfig warning: "/etc/fonts/conf.d/60-generic.conf", line 4: unknown element "description"
Fontconfig warning: "/etc/fonts/conf.d/60-latin.conf", line 4: unknown element "description"
Fontconfig warning: "/etc/fonts/conf.d/65-nonlatin.conf", line 4: unknown element "description"
Fontconfig error: Cannot load config file from /etc/fonts/2.11/fonts.conf
###!!! [Parent][MessageChannel] Error: (msgtype=0x21007B,name=PBrowser::Msg_SynthMouseMoveEvent) Channel error: cannot send/recv
fish: “firefox” terminated by signal SIGSEGV (Address boundary error)
Reinstalling firefox to be picked from 20.09 channel works.
nix-env should probably always upgrade every package, since a critical fix in an underlying library is still a required upgrade, but right now nix-env will ignore it.
I think this feature is provided by the --always flag.
@bjornfor I think you're right. It might be good to add it to nix/nixos documentation.
Though I think @grahamc might be onto something that it should be by default...
Yes, --always or --leq does this.
nix profile upgrade doesn't look at version numbers by the way.
Most helpful comment
@bjornfor I think you're right. It might be good to add it to nix/nixos documentation.
Though I think @grahamc might be onto something that it should be by default...