Is it normal for home-manager to provide outdated packages?

I have upgraded my system to NixOS to 23.11 version since its release and on system level everything just works with latest updates

but in a home-manager the Firefox version is 120.0.1 for example and what so ever package that I pull I got the version that were release in the beginning of 23.11 version and when I checked Firefox has reached version 123.0.1

I did tried updating my nix channels
$ nix-channel --list home-manager https://github.com/nix-community/home-manager/archive/release-23.11.tar.gz nixos https://channels.nixos.org/nixos-23.11

also tried nix-channel --update and sudo -i nix-channel --update to update the channel as root but nothings works

is it the home-manager channel problem that they did not update the source or there an issue that I have made ?

The versions of the packages come from nixpkgs channel, home-manager just uses whatever comes from there. Guessing from the way you’ve desicribed things, your home manager setup might be built independently from NixOS. Perhaps only the NixOS portion has been rebuilt since you updated the channels.

If so, since your nixpkgs channel is already updated, you would probably just have to rebuild your home-manager setup with home-manager switch. After restarting firefox, I would guess it would be on the new version.

Thank you for your reply,
Sadly I did rebuild home-manager portion multiple times and It is giving me the behavior that I have described any downloaded package just gets the old package that was released with 23.11 I have modified the home.nix as much as possible but without any luck.

Did you by any chance install home manager as a flake or have some other pinning mechanism (beyond channels) in place?

Another thought came to mind, it’s possible to have a nix channel as the user you log in with, and one for the root user with the same name, same URL, but not the same state. Depending on how you use sudo when channel updating and rebuilding that could affect things.

In any case, I agree with @wamserma that there seems to be another source of nixpkgs that hasn’t been updated, just a matter of figuring out where it’s coming from.

Another thought came to mind, it’s possible to have a nix channel as the user you log in with, and one for the root user with the same name, same URL, but not the same state. Depending on how you use sudo when channel updating and rebuilding that could affect things.

At the end the issue is not about the channels they were updated root level and user level

That might be related
I did remove home-manager directory and backed up my home.nix then reinstall home-manager entirely
with home-manager --uninstalland followed the instruction of installing again and use command
nix-shell '<home-manager>' -A install and it worked :slight_smile:

Honestly I do not know what that command does because as far as I know nix-shell is an isolated shell that should not interrupt with original system

Any justification or linking to an explanation of that matter would be highly appreciated
Thanks you all.

This is a bit of a tangent but you can also install home-manager as a NixOS module and set home-manager.useGlobalPkgs = true. If you do that, home-manager uses the same channel as NixOS (and not nixpkgs anymore) and there should be no disparity.