Error: nose-1.3.7 not supported for interpreter python3.12

pynose has been removed, so this will no longer work

see gtg: don't use nose by dotlambda · Pull Request #326164 · NixOS/nixpkgs · GitHub

see binwalk, diffoscope: update after Python 3.12 by philiptaron · Pull Request #325623 · NixOS/nixpkgs · GitHub and python312Packages.binwalk: support Python 3.12 by dotlambda · Pull Request #325865 · NixOS/nixpkgs · GitHub

I see that this pr has been created, is it possible to apply this patch locally on my system?

On my system i had to (hopefully temporary) disable hplip and!!! chirp. (HamRadio App…)

looks like pynose removed from pkgs repo

Where do you find clues that led you to guess the source of the problem?
Should I keep randomly disabling Python-related things and checking if it works?

When I encounter problems like this, I want to at least see some stack traces to identify where they might be coming from.

If you nixos-rebuild with --show-trace, the broken package should be shown in the trace.

1 Like

Next problem on one of my systems. But maybe not related to the above python thing…

[user@desktop:/etc/nixos]$ sudo nixos-rebuild --show-trace switch
building the system configuration…
error: hash mismatch in fixed-output derivation ‘/nix/store/zg2zsi4nkgnhn92nj3qqmyd12kvban13-source.drv’:
specified: sha256-z4yxWClbs05ZCT8CPJpPY2BWMSXxfJ09Lq3Oottx7dQ=
got: sha256-hZjmAdh9QQ2bAIYL3K7scl59kz9Wxnv9f6rKMeuKb7U=
error: 1 dependencies of derivation ‘/nix/store/x0fg4xc7zr3gbsbaypqaq4xdc9gwyj33-nextcloud-client-3.13.2.drv’ failed to build
error: 1 dependencies of derivation ‘/nix/store/51qslnrzb1x2rz0hlmf51j6mx3d5amzz-system-path.drv’ failed to build
error: 1 dependencies of derivation ‘/nix/store/ffz9h0f19y50i2x9yc8qhbpvs3ks8kxz-nixos-system-schwoon-desktop-24.11.20240709.feb2849.drv’ failed to build

fixed by nextcloud-client: fix hash after retagging upstream by leona-ya · Pull Request #326093 · NixOS/nixpkgs · GitHub

1 Like

Yeah, I didn’t know what iynaix just mentioned. Or what other good ways of handling this would be. This would’ve been a pretty painful way of doing things, and I only mentioned it because it was the only solution I could think of short of uninstalling NixOS, or taking a gamble learning new Nix features I wasn’t sure would solve the problem in a way I would be happy with, and because it took me some effort to even figure out how to do this. I hope I wasn’t being too confusing for anybody here.

Well, when it is fixed, why my update does not work as described above. That hasn’t changed for me…

It hasn’t reached the nixos-unstable channel yet: https://nixpk.gs/pr-tracker.html?pr=326093

How did this happen? How could a PR to master be merged that broke the building of so many packages? Isn’t that what the ci system is for?

(I’m not complaining, I genuinely am asking because it doesn’t jive with how I thought the nixpkgs dev procedures worked)

1 Like

I think it was very much known that there would be fallout. In a thread for breaking changes on unstable it was also announced as “particularly breaking” (Breaking changes announcement for unstable - #53 by hexa). The given solution was to pin to python311.

It doesn’t break stable, and at some point you gotta take the dive to the next version. I think it’s very normal that breaking changes are merged from time to time, and then the breakage is fixed by the maintainers of the affected packages over the following days/weeks/etc.

4 Likes

If you hold up the progression of the staging branch – which is used for changes high up the dependency tree that cause widespread rebuilds – trying to fix every single package that gets broken, other important fixes wouldn’t make their way in and no large‐scale change would ever get finished; the processes would grind to a halt. Past a certain point you have to declare it good enough and distribute the effort of fixing the remainder. There’s always stuff broken, especially on the unstable branches, although Python 3.12 has proven to be quite the doozy. The whole ecosystem has been feeling that, not just us; users on unstable just get to have front‐row seats.

4 Likes

Thanks for the replies.

I see now that this nose issue is actually because of the jump from python 11 to 12. I thought it was a nose specific issue

Also thanks for that link to the other thread. That’s exactly the kind of info I was looking for.

1 Like

All this issue is affecting darvin-nix as well

Seems problem not solved yet related to the ‘python3.12-powerline-2.8.3’
main issue is with the dependency ‘python3.12-python-hglib-2.6.2’

       … while evaluating attribute 'propagatedBuildInputs' of derivation 'python3.12-powerline-2.8.3'

         at /nix/store/3rfk8gjrsq2hbf7jjrbzg15x1bmpnjls-source/pkgs/stdenv/generic/make-derivation.nix:388:7:

          387|       depsHostHostPropagated      = elemAt (elemAt propagatedDependencies 1) 0;
          388|       propagatedBuildInputs       = elemAt (elemAt propagatedDependencies 1) 1;
             |       ^
          389|       depsTargetTargetPropagated  = elemAt (elemAt propagatedDependencies 2) 0;

       … while evaluating derivation 'python3.12-python-hglib-2.6.2'
         whose name attribute is located at /nix/store/3rfk8gjrsq2hbf7jjrbzg15x1bmpnjls-source/pkgs/stdenv/generic/make-derivation.nix:334:7

       … while evaluating attribute 'nativeBuildInputs' of derivation 'python3.12-python-hglib-2.6.2'

         at /nix/store/3rfk8gjrsq2hbf7jjrbzg15x1bmpnjls-source/pkgs/stdenv/generic/make-derivation.nix:378:7:

          377|       depsBuildBuild              = elemAt (elemAt dependencies 0) 0;
          378|       nativeBuildInputs           = elemAt (elemAt dependencies 0) 1;
             |       ^
          379|       depsBuildTarget             = elemAt (elemAt dependencies 0) 2;

       error: nose-1.3.7 not supported for interpreter python3.12

So I’m hitting this with the certbot-full package – happy to file a github issue, but not exactly sure how to get it associated with this effort?

It’s already fixed, just needs to land in unstable

1 Like

python312Packages.nose: fix build by jchv · Pull Request #325968 · NixOS/nixpkgs · GitHub will land in unstable in the next few weeks and should solve these error messages, but in the meantime and looking forward we’re also working on removing these dependencies in python3Packages: get rid of uses of nose · Issue #326513 · NixOS/nixpkgs · GitHub.

2 Likes