1 |
On 29/01/2017 22:56, thelma@×××××××××××.com wrote: |
2 |
> I haven't updated my system for over a year (1year and 3-months). |
3 |
> I was trying to upgrade my firefox-bin and I'm already running into problems. |
4 |
> |
5 |
> What is my best option, re-install from scratch, upgrade in stages etc. |
6 |
> With firefox-bin I'm getting: |
7 |
|
8 |
|
9 |
|
10 |
1 year 3 months isn't usually that bad and it can be done - I've done it |
11 |
many times myself. However there are gotchas: |
12 |
|
13 |
- there is no stock method and no stock answers. So asking |
14 |
"I can't upgrade procps! What must I do?" |
15 |
isn't going to get you much in the way of usable replies. Most will be |
16 |
something like "I have no idea. Please be /way/ more specific" |
17 |
|
18 |
- you need to understand what portage is telling you when it dumps a |
19 |
crapload of output on the screen. If you can read through blockers and |
20 |
figure out what to do, it's usually not that hard. It however tedious. |
21 |
|
22 |
- you need to have a good grasp of what most packages do. So if you |
23 |
think perhaps you need to unmerge binutils or python, your brain must |
24 |
scream at you that it's a very very bad idea, and you need to know why |
25 |
(reason: portage don't work for shit with those packages gone and needs |
26 |
them present to put them back. Hello chicken, greet egg) |
27 |
|
28 |
- go slowly and deal with one block at a time. A regular emerge world |
29 |
probably won't succeed so you gotta bite of small chunks |
30 |
|
31 |
With those basics out the way, it's a great learning experience. I |
32 |
recommend you do it at least once. |
33 |
|
34 |
> |
35 |
> emerge -p firefox-bin |
36 |
> |
37 |
> These are the packages that would be merged, in order: |
38 |
> |
39 |
> Calculating dependencies... done! |
40 |
> [ebuild N ] dev-libs/libuv-1.10.2 USE="-static-libs" |
41 |
> [ebuild N ] dev-util/ninja-1.6.0 USE="-doc -emacs {-test} -vim-syntax -zsh-completion" |
42 |
> [ebuild U ] www-client/firefox-bin-45.6.0 [38.6.1] L10N="-ach% -af% -an% -ar% -as% -ast% -az% -be% -bg% -bn-BD% -bn-IN% -br% -bs% -ca% -cs% -cy% -da% -de% -el% -en-GB% -en-ZA% -eo% -es-AR% -es-CL% -es-ES% -es-MX% -et% -eu% -fa% -fi% -fr% -fy% -ga% -gd% -gl% -gu% -he% -hi% -hr% -hsb% -hu% -hy% -id% -is% -it% -ja% -kk% -km% -kn% -ko% -lt% -lv% -mai% -mk% -ml% -mr% -ms% -nb% -nl% -nn% -or% -pa% -pl% -pt-BR% -pt-PT% -rm% -ro% -ru% -si% -sk% -sl% -son% -sq% -sr% -sv% -ta% -te% -th% -tr% -uk% -uz% -vi% -xh% -zh-CN% -zh-TW%" |
43 |
> [ebuild U ] dev-java/java-config-2.2.0-r3 [2.2.0] USE="{-test%}" PYTHON_TARGETS="(-python3_5)" |
44 |
> [uninstall ] dev-java/java-config-wrapper-0.16 |
45 |
> [blocks b ] dev-java/java-config-wrapper ("dev-java/java-config-wrapper" is blocking dev-java/java-config-2.2.0-r3) |
46 |
> [ebuild NS ] sys-libs/db-5.3.28-r2 [4.8.30-r2] USE="cxx java -doc -examples -tcl {-test}" |
47 |
> [ebuild U ] sys-libs/ncurses-6.0-r1 [5.9-r5] USE="{-test%} -threads%" |
48 |
> [ebuild r U ] sys-process/procps-3.3.12 [3.3.10-r1] USE="kill%*" |
49 |
> [ebuild U ] dev-util/cmake-3.7.2 [3.3.1-r1] |
50 |
> [ebuild r U ] sys-devel/llvm-3.7.1-r3 [3.5.0] USE="-lldb%" |
51 |
> [ebuild rR ] app-editors/xemacs-21.4.24 |
52 |
|
53 |
|
54 |
java-config-wrapper is long gone. Remove it and java-config will |
55 |
probably succeed |
56 |
|
57 |
> |
58 |
> !!! Multiple package instances within a single package slot have been pulled |
59 |
> !!! into the dependency graph, resulting in a slot conflict: |
60 |
> |
61 |
> sys-process/procps:0 |
62 |
> |
63 |
> (sys-process/procps-3.3.12:0/5::gentoo, ebuild scheduled for merge) pulled in by |
64 |
> (no parents that aren't satisfied by other packages in this slot) |
65 |
> |
66 |
> (sys-process/procps-3.3.10-r1:0/0::gentoo, installed) pulled in by |
67 |
> sys-process/procps:0/0= required by (dev-db/mariadb-10.0.22:0/18::gentoo, installed) |
68 |
> ^^^^^ |
69 |
|
70 |
Update mariadb by itself to fix this. The version you have wants a |
71 |
subslot of procps that no longer exists |
72 |
|
73 |
> |
74 |
> sys-libs/ncurses:0 |
75 |
> |
76 |
> (sys-libs/ncurses-6.0-r1:0/6::gentoo, ebuild scheduled for merge) pulled in by |
77 |
> (no parents that aren't satisfied by other packages in this slot) |
78 |
> |
79 |
> (sys-libs/ncurses-5.9-r5:0/5::gentoo, installed) pulled in by |
80 |
> sys-libs/ncurses:0/5= required by (dev-lang/ruby-2.0.0_p647-r1:2.0/2.0::gentoo, installed) |
81 |
> ^^^^^ |
82 |
> sys-libs/ncurses:0/5[ada?,cxx?,gpm?,static-libs?,tinfo?,unicode?,abi_x86_32(-)?,abi_x86_64(-)?,abi_x86_x32(-)?,abi_mips_n32(-)?,abi_mips_n64(-)?,abi_mips_o32(-)?,abi_ppc_32(-)?,abi_ppc_64(-)?,abi_s390_32(-)?,abi_s390_64(-)?] required by (sys-libs/ncurses-5.9-r99:5/5::gentoo, installed) |
83 |
> ^^^^ |
84 |
> (and 15 more with the same problems) |
85 |
|
86 |
see below about ruby-2.0 |
87 |
|
88 |
> |
89 |
> sys-devel/llvm:0 |
90 |
> |
91 |
> (sys-devel/llvm-3.7.1-r3:0/3.7.1::gentoo, ebuild scheduled for merge) pulled in by |
92 |
> (no parents that aren't satisfied by other packages in this slot) |
93 |
> |
94 |
> (sys-devel/llvm-3.5.0:0/3.5::gentoo, installed) pulled in by |
95 |
> >=sys-devel/llvm-3.4.2:0/3.5=[abi_x86_32(-)] required by (media-libs/mesa-11.0.6:0/0::gentoo, installed) |
96 |
> ^^^^^^^ |
97 |
|
98 |
Don't worry about this one. It's a slot conflict - portage can't upgrade |
99 |
llvm to the latest version because your existing mesa blocks it, so |
100 |
portage "helpfully" dumps a crapload to ominous messages on the screen |
101 |
to tell you this, and scare you out of your wits as well. |
102 |
|
103 |
This will likely fix itself when mesa is upgraded |
104 |
|
105 |
> |
106 |
> NOTE: Use the '--verbose-conflicts' option to display parents omitted above |
107 |
> |
108 |
> It may be possible to solve this problem by using package.mask to |
109 |
> prevent one of those packages from being selected. However, it is also |
110 |
> possible that conflicting dependencies exist such that they are |
111 |
> impossible to satisfy simultaneously. If such a conflict exists in |
112 |
> the dependencies of two different packages, then those packages can |
113 |
> not be installed simultaneously. You may want to try a larger value of |
114 |
> the --backtrack option, such as --backtrack=30, in order to see if |
115 |
> that will solve this conflict automatically. |
116 |
> |
117 |
> For more information, see MASKED PACKAGES section in the emerge man |
118 |
> page or refer to the Gentoo Handbook. |
119 |
> |
120 |
> |
121 |
> !!! The following installed packages are masked: |
122 |
> - dev-lang/ruby-2.0.0_p647-r1::gentoo (masked by: package.mask) |
123 |
> /usr/portage/profiles/package.mask: |
124 |
> # Hans de Graaff <graaff@g.o> (07 Dec 2016) |
125 |
> # Mask ruby 2.0 for removal, bug 576034 |
126 |
|
127 |
Here's your real problem. ruby-2.0 is since ages past masked, and it |
128 |
will block loads of stuff. Portage won't remove it (2.0 is SLOTted) but |
129 |
a depclean might; howevr, world needs to be fully up to date before |
130 |
depclean is prepared to take action. |
131 |
|
132 |
There was a news item about this, so read it. eselect news list. |
133 |
|
134 |
You need to pick a new default ruby - probably 2.1 - and let portage |
135 |
deal with the result |
136 |
|
137 |
> |
138 |
> - app-forensics/chkrootkit-0.49::gentoo (masked by: package.mask) |
139 |
> /usr/portage/profiles/package.mask: |
140 |
> # Aaron Bauman <bman@g.o> (19 Mar 2016) |
141 |
> # Unpatched security vulnerability per bug #512356. |
142 |
> |
143 |
> For more information, see the MASKED PACKAGES section in the emerge |
144 |
> man page or refer to the Gentoo Handbook. |
145 |
> |
146 |
> |
147 |
|
148 |
Ignore this one initially. chkrootkit-0.49 is hardmasked. It will be |
149 |
updated in due course. |
150 |
|
151 |
|
152 |
When you've dealt with java-config-wrapper, mariadb and ruby, try emerge |
153 |
world again. You will be presented with a whole new bunch of interesting |
154 |
and fascinating problems to solve, all of which are unique and needs |
155 |
their own approach. The approach depends of course on the nature of the |
156 |
problem and you have to run emerge world to see what that is. Rinse, |
157 |
repeat and keep doing it till portage is happy, your tree is synced and |
158 |
no problems remain. |
159 |
|
160 |
[You will probably need to deal with perl-cleaner, python-updater and |
161 |
the ruby equivalent towards th end, this gets all your modules sync'ed |
162 |
back up with your version of the interpreter.] |
163 |
|
164 |
"Gentoo is not for the faint-hearted" is the quote I think most applies |
165 |
here. |
166 |
|
167 |
-- |
168 |
Alan McKinnon |
169 |
alan.mckinnon@×××××.com |