Gentoo Archives: gentoo-user

From: cal <cal@×××××××××.technology>
To: gentoo-user@l.g.o
Subject: Re: [gentoo-user] update fails, but I don't see why
Date: Sun, 13 Dec 2020 19:57:03
Message-Id: eea61eaa-1574-39f8-a98c-3ba0933abf33@mail.meme.technology
In Reply to: Re: [gentoo-user] update fails, but I don't see why by n952162
1 On 12/13/20 11:31 AM, n952162 wrote:
2 > On 12/13/20 1:09 AM, Dan Egli wrote:
3 >> Have to agree with Neil on this one. You've got a LOT of updates.
4 >> World is great, but start with emerge -UDuv @system, after you find
5 >> the culprit that is still setting python3_6 as a target. Once the
6 >> system emerge is done then you can try world again and hopefully get a
7 >> much smaller list. We can help you much better from there.
8 >
9 >
10 > python3_6 is bad, I've got that now, but lots and lots of packages have
11 > something similar to this:
12 >
13 > PYTHON_TARGETS="python3_6 python3_7 python3_8 (-pypy3) -python3_9"
14 >
15 > but I have no USE flags set to call for python3_6.
16
17 PYTHON_TARGETS is a USE_EXPAND:
18 https://wiki.gentoo.org/wiki/Project:Python/PYTHON_TARGETS
19
20 Some defaults are set by the profile, but this can also be overridden in
21 package.use. You need to find where PYTHON_TARGETS is including python3_6.
22
23 > I presumed that
24 > would come from the ebuilds, like this from dev-python/setuptools:
25 >
26 > PYTHON_COMPAT=( python2_7 python3_{6,7,8,9} pypy3 )
27
28 This is simply specifying which versions of Python setuptools is
29 compatible with. Which one(s) actually get used is determined by
30 PYTHON_TARGETS.
31
32 >
33 > Other than the PYTHON_TARGETS=, and this:
34 >
35 >  dev-python/markupsafe[python_targets_pypy3(-)?,python_targets_python3_6(-)?,python_targets_python3_7(-)?,python_targets_python3_8(-)?,python_targets_python3_9(-)?...
36 >
37 > I don't see where python3_6 is coming into play.
38
39 It is the PYTHON_TARGETS.
40
41 >
42 > Incidently, because I saw python3_9 somewhere, I emerged that, and
43 > selected it:
44 >
45 > $ eselect python list
46 > Available Python interpreters, in order of preference:
47 >   [1]   python3.9
48 >   [2]   python3.6
49 >   [3]   python3.8 (fallback)
50 >   [4]   python3.7 (fallback)
51 >   [5]   python2.7 (fallback)
52 >
53 > but it didn't change anything that I could see.
54
55 This only sets the default interpreter (which version of Python is
56 linked to /usr/bin/python). It does not do anything to the portage
57 tree, as far as I am aware. Portage Python dependencies should be
58 controlled with PYTHON_TARGETS.
59
60 >
61 > I can't find out how to make python3.6 fallback.  depclean doesn't
62 > remove it.
63
64 Depclean doesn't remove it because your PYTHON_TARGETS output above
65 indicates there are packages still depending on it.
66
67 >
68 > What's particularly frustrating is I can't make out from the log that
69 > there's anything wrong.
70
71 Did you try the suggestion from earlier in the thread to try to emerge
72 in smaller pieces, since your @world update is so large? Portage output
73 is daunting when 100s of packages are involved, it is easier to start
74 from a smaller set and work out what's wrong.
75
76 >
77 > I hope my only alternative is not just to reinstall.  A reinstall takes
78 > a couple of days of compiling.
79
80 This thread has been going since a week ago... at a certain point
81 reinstalling and letting portage chug through a day of compiling would
82 be less effort than troubleshooting a broken installation.
83
84 >
85 >
86 >>
87 >> On 12/12/2020 3:35 PM, Neil Bothwick wrote:
88 >>> On Sat, 12 Dec 2020 23:08:15 +0100, n952162 wrote:
89 >>>
90 >>>> I did a --depclean but that didn't help.  I'm not seeing where an error
91 >>>> is indicated.
92 >>>>
93 >>>> This was done with this still installed:
94 >>>>
95 >>>>    */* PYTHON_TARGETS: python3_7
96 >>>>
97 >>>> I commented that out and tried again, and after a few USE flag
98 >>>> iterations, I ended up with what seems like the same situation. Log on
99 >>>> request.
100 >>> There's a lot to trawl through here, it looks like you haven't updated
101 >>> for quite some time. I'd suggest you try to cut down on the noise by
102 >>> updating only @system instead of @world.
103 >>>
104 >>> A quick glance at some of the output suggests that you still have
105 >>> PYTHON_TARGETS="python3_6" set somewhere. What do
106 >>>
107 >>> grep -r python3_6 /etc/portage
108 >>> emerge --info | grep -i python
109 >>>
110 >>> tell you?
111 >>>
112 >>>