expertenaustausch > comp.os.* > comp.os.unix.bsd

Sabine Baer (27.05.2020, 10:09)
Nachdem ich mein FBSD 11.3 voellig kaputtkonfiguriert habe, habe ich ein
frisches 12.1 installiert, und die essentiellen Sachen wie mutt, slrn und
sendmail (!) laufen wieder.
Nun wollte ich das system weiter besiedeln und bin wieder vor
demselben Hoellentor gelandet wie ein paar Wochen zuvor.
Aber jetzt betrete ich Daemelklaas es nicht wieder blind.

$ uname
FreeBSD amd.catfish.ddns.org 12.1-RELEASE FreeBSD 12.1-RELEASE
r354233 GENERIC amd64
# svn checkout /usr/ports
....
# portmaster print/ghostscript9-agpl-base (eigentlich
# texlive-base, aber das blieb hier haengen)
....
Dann stand ich wieder davor:
"
===>>> Starting check for runtime dependencies
===>>> Gathering dependency list for devel/py-setuptools@py37 from ports
===>>> Dependency check complete for devel/py-setuptools@py37

===>>> print/ghostscript9-agpl-base >> jpeg-turbo-2.0.3 >> cmake-3.15.3
>> jsoncpp-1.8.1_7 >> meson-0.51.2 >> devel/py-setuptools@py37 (5/62)


===> Installing for py37-setuptools-44.0.0
===> Checking if py37-setuptools is already installed
===> Registering installation for py37-setuptools-44.0.0 as automatic
Installing py37-setuptools-44.0.0...
pkg-static: py37-setuptools-44.0.0 conflicts with py36-setuptools-41.2.0
(installs files into the same place). Problematic file:
/usr/local/bin/easy_install
*** Error code 70

Stop.
make: stopped in /usr/ports/devel/py-setuptools

===>>> Installation of py37-setuptools-44.0.0 (devel/py-setuptools@py37)
failed
===>>> Aborting update

===>>> Update for devel/py-setuptools@py37 failed
===>>> Aborting update
"

$ less /usr/ports/UPDATING
....
AFFECTS: users of python setuptools
AUTHOR: antoine
The python setuptools ports have been renamed to better match
other python ports. Ports users need to rename them so that
portupgrade and portmaster do not get confused.
For example:
pkg set -n py27-setuptools27:py27-setuptools pkg
set -o devel/py-setuptools27:devel/py27-setuptools
or pkg set -n py35-setuptools35:py35-setuptools pkg
set -o devel/py-setuptools35:devel/py35-setuptools
$

So, Da verstehe ich nichts mehr. Passen der ports-tree und das
System nicht zueinander? Und was soll ich ueber haupt machen,
zumal die Fehlermeldung von "37" und gleichzeitig "44" spricht
(und ich gar nicht weiss, was die py setuptools eigentlich
sind).

Vor ein paar Wochen habe ich dann gemacht, was ich zu machen
glaubte, aber ich bin nach immer neuen "hilfen" aus google dann
da gelandet, wo gar nichts mehr ging, nicht einmal ein login.

Das moechte ich nun gerne vermeiden und waere fuer Hilfe sehr
dankbar.

Sabine
Christian Barthel (27.05.2020, 20:25)
Sabine Baer <baerks> writes:

[..]
> ===>>> Gathering dependency list for devel/py-setuptools@py37 from ports
> ===>>> Dependency check complete for devel/py-setuptools@py37
> ===>>> print/ghostscript9-agpl-base >> jpeg-turbo-2.0.3 >> cmake-3.15.3


Wäre die Installation mit pkg(1) nicht einfacher und schneller
oder ist ein selbstgebautes Paket notwendig?
Felix Palmen (27.05.2020, 20:30)
* Sabine Baer <baerks>:
> Installing py37-setuptools-44.0.0...
> pkg-static: py37-setuptools-44.0.0 conflicts with py36-setuptools-41.2.0


Die Preisfrage *hier* ist, woher eigentlich die python 3.6 Variante
kommt. 3.7 ist seit geraumer Zeit der default, wenn man es nicht selbst
in seiner make.conf ändert, z.B. mit

DEFAULT_VERSIONS+= python=3.6

In bsd.default-versions.mk steht aktuell nämlich:

# Possible values: 2.7, 3.5, 3.6, 3.7, 3.8
PYTHON_DEFAULT?= 3.7

> $ less /usr/ports/UPDATING
> The python setuptools ports have been renamed to better match
> other python ports. [...]


Das erscheint mir für dein Problem irrelevant. Dein Problem ist, dass du
den setuptools port bereits in einer Variante für Python 3.6
(interessanterweise auch in einer älteren Version) installiert hast. Aus
den "Flavors" für die verschiedenen Versionen von Python ergeben sich
verschiedene Pakete, aber die stehen natürlich zueinander in Konflikt.

> So, Da verstehe ich nichts mehr. Passen der ports-tree und das
> System nicht zueinander?


Das wäre jedenfalls *eine* Möglichkeit, falls du Ports und Pakete
vermischst. Das ist immer eine etwas haarige Geschichte, kann aber zu
handlen sein, wenn man weiß, was man tut. Grundvoraussetzung ist, dass
beide auf dem gleichen Branch der Ports basieren. Default für pkg ist
allerdings das quarterly-Repository, das aus dem entsprechenden Branch
gebaut wird, während portsnap immer den aktuellsten Ports-Tree ("head"
im subversion, dazu würde das "latest" pkg repository passen) holt.

Eine andere Theorie wäre: Du hast immer alles aus den Ports gebaut, hast
damit begonnen als Python 3.6 noch aktuelles default war, und hast es
versäumt, beim Wechsel zu 3.7 alles passend zu aktualisieren.

> zumal die Fehlermeldung von "37" und gleichzeitig "44" spricht


Das ist eine Verwechslung, py37- ist ein Prefix, der aus einem "Flavor"
eines Ports entsteht. Der Port lässt sich in verschiedenen Varianten
bauen, in dem Fall entpsprechend der Python-Version, für die er gedacht
ist. 44 dagegen war oben tatsächlich eine Versionsnummer des Ports
selbst.
Sabine Baer (30.05.2020, 12:20)
On 2020-05-27, Felix Palmen wrote:
> * Sabine Baer <baerks>:
> Die Preisfrage *hier* ist, woher eigentlich die python 3.6 Variante
> kommt. 3.7 ist seit geraumer Zeit der default, wenn man es nicht selbst
> in seiner make.conf ändert, z.B. mit
> DEFAULT_VERSIONS+= python=3.6
> In bsd.default-versions.mk steht aktuell nämlich:
> # Possible values: 2.7, 3.5, 3.6, 3.7, 3.8
> PYTHON_DEFAULT?= 3.7


Danke, dass Du Dir mein Posting durchgelesen hast. Das ist alles bei mir
auch so.

[...]

> Eine andere Theorie wäre: Du hast immer alles aus den Ports gebaut, hast
> damit begonnen als Python 3.6 noch aktuelles default war, und hast es
> versäumt, beim Wechsel zu 3.7 alles passend zu aktualisieren.


Ich habe ja FBSD ganz neu installiert, von einem *.img, das ich auf
SD-Karte gezogen habe. Es war vielleicht nicht 12.1, aber sicher 12.n

Ich baue eigentlich immer mit portmaster oder make install.

pkg info liefert massenhaft py36-irgenwas, also was mache ich jetzt am
besten. 'make install $irgenwas' fuehrt jedenfalls zur dem gleichen
Fehlermeldung. 'pkg delete -a' und von vorne Anwendungen installieren?
Vorher sicherheitshalber noch mal einen frischen portstree? Oder mit
'make buildworld' nochmal alles neu bauen?

Sabine
Christian Barthel (30.05.2020, 13:28)
Sabine Baer <baerks> writes:

> pkg info liefert massenhaft py36-irgenwas, also was mache ich jetzt am
> besten. 'make install $irgenwas' fuehrt jedenfalls zur dem gleichen
> Fehlermeldung. 'pkg delete -a' und von vorne Anwendungen installieren?
> Vorher sicherheitshalber noch mal einen frischen portstree? Oder mit
> 'make buildworld' nochmal alles neu bauen?


Interessanterweise habe ich per pkg(1) wohl mehrere setuptools
auf mein System bekommen:

$ pkg info | grep setuptools
py27-setuptools-44.0.0 Python packages installer
py36-setuptools-40.8.0 Python packages installer
py37-setuptools-44.0.0 Python packages installer

Ich denke ich werde auf meinem System mit 'pkg delete -a'
demnaechst alle Pakete entfernen und die Software von neu mit
pkg(1) installieren. Wenn man portmaster/make ( /usr/ports )
nutzt, dann muss dieser entsprechend aktualisiert werden.
Detlef Sax (30.05.2020, 18:17)
On Sat, 30 May 2020 12:20:02 +0200, Sabine Baer wrote:
[...]
> Ich habe ja FBSD ganz neu installiert, von einem *.img, das ich auf
> SD-Karte gezogen habe. Es war vielleicht nicht 12.1, aber sicher 12.n


uname -a
gibt darüber Auskunft.

> Ich baue eigentlich immer mit portmaster oder make install.


Warum eigentlich, wenn die Frage erlaubt ist?
portmaster oder make install kann man machen, keine Frage.

Das benutze ich aber nur noch in Kombination mit --force-config bzw.
make config. Und das nur wenn mir die ausgewählten Optionen für die
vorgefertigten packages nicht so passen wie ich das möchte.
Das sind sehr wenige Anwendungen.

pkg install geht einfach schneller und bewahrt auch schon mal, nicht
immer, vor Abhängigkeitsfallen.

> pkg info liefert massenhaft py36-irgenwas, also was mache ich jetzt am
> besten. 'make install $irgenwas' fuehrt jedenfalls zur dem gleichen
> Fehlermeldung. 'pkg delete -a' und von vorne Anwendungen installieren?
> Vorher sicherheitshalber noch mal einen frischen portstree? Oder mit
> 'make buildworld' nochmal alles neu bauen?


make buildworld installworld habe ich auch Jahre gemacht.
Hinterher mergemaster. Stundenlanges Elend.
Kann man immer noch machen, muss man aber nicht. Lohnt nur wenn
spezielle Hardware vorhanden ist die spezielles Vorgehen/Treiber
erfordert/n.

freebsd-update fetch und anschließend das ganze nochmal mit install ist
ein Segen dagegen. Das geht relativ zackig und ist sicher.

Und Vorsicht, einmal mit make buildword installworld installiert
kann es sein das freebsd-update sich weigert.
Falls man es dann doch mal ausprobieren möchte.

Hatte ich hier damals. Aus welchem Topf (Stable, Release, Releng Nr.)
ich mich damals bedient hatte weiß ich allerdings nicht mehr.

Detlef
Felix Palmen (30.05.2020, 21:56)
* Sabine Baer <baerks>:
>> Eine andere Theorie wäre: Du hast immer alles aus den Ports gebaut, hast
>> damit begonnen als Python 3.6 noch aktuelles default war, und hast es
>> versäumt, beim Wechsel zu 3.7 alles passend zu aktualisieren.

> Ich habe ja FBSD ganz neu installiert, von einem *.img, das ich auf
> SD-Karte gezogen habe. Es war vielleicht nicht 12.1, aber sicher 12.n


Die Ports (und damit auch die Pakete) sind völlig unabhängig von der
FreeBSD-Version.

> Ich baue eigentlich immer mit portmaster oder make install.


Mischst du Pakete und Ports? Das ist immer problematisch ? *zumindest*
muss man dabei sicherstellen, dass man nicht Pakete aus dem "quarterly"
Repository mit Ports aus dem "head" Branch mischt, denn das passt nicht.
Entweder den entsprechenden quarterly-Branch der Ports mit svn/svnlite
besorgen, oder das FreeBSD pkg Repository auf "latest" umstellen, z.B.
mit folgender /usr/local/etc/pkg/repos/FreeBSD.conf:

| FreeBSD: {
| url: "pkg+http://pkg.FreeBSD.org/${ABI}/latest"
| }

Danach 'pkg upgrade -f' ausführen.

Falls du *alles* aus ports baust würde ich dringend zu poudriere raten.

> pkg info liefert massenhaft py36-irgenwas, also was mache ich jetzt am
> besten. 'make install $irgenwas' fuehrt jedenfalls zur dem gleichen
> Fehlermeldung. 'pkg delete -a' und von vorne Anwendungen installieren?


Wenn sonst nichts hilft ist das definitiv eine Möglichkeit.

> Vorher sicherheitshalber noch mal einen frischen portstree? Oder mit
> 'make buildworld' nochmal alles neu bauen?


'make buildworld' ist für das Basis-System, das baut FreeBSD selbst. Mit
Ports/Pakete hat das nichts zu tun.
Sabine Baer (31.05.2020, 10:27)
On 2020-05-30, Detlef Sax wrote:
> On Sat, 30 May 2020 12:20:02 +0200, Sabine Baer wrote:


[...]

>> Ich baue eigentlich immer mit portmaster oder make install.

> Warum eigentlich, wenn die Frage erlaubt ist?
> portmaster oder make install kann man machen, keine Frage.


Ich bins halt so gewohnt.

> Das benutze ich aber nur noch in Kombination mit --force-config bzw.
> make config. Und das nur wenn mir die ausgewählten Optionen für die
> vorgefertigten packages nicht so passen wie ich das möchte.
> Das sind sehr wenige Anwendungen.


Und woher kennst Du die, wenn Du nicht make config gemacht hast?

[...]

> make buildworld installworld habe ich auch Jahre gemacht.
> Hinterher mergemaster. Stundenlanges Elend.


:-))) Ja. Und weil ich bei mergemaster nicht so richtig durchblicke,
schiebe ich ein Update immer Jahre vor mir her. Und jelaenger ich warte,
umso schwieriger wird es.

[...]

> freebsd-update fetch und anschließend das ganze nochmal mit install ist
> ein Segen dagegen. Das geht relativ zackig und ist sicher.


Die neuen Moden kommen immer oefter. Wenn ich mich an eine gewoehnt
habe, ist schon lange etwas anderes up to date. :-\

> Und Vorsicht, einmal mit make buildword installworld installiert


Dafuer habe ich halt ein Kochrezept, das ich immer abgearbeitet habe.

> kann es sein das freebsd-update sich weigert.
> Falls man es dann doch mal ausprobieren möchte.


Danke fuer die Info.

Sabine
Detlef Sax (31.05.2020, 11:33)
On Sun, 31 May 2020 10:27:18 +0200, Sabine Baer wrote:
> On 2020-05-30, Detlef Sax wrote:
>> On Sat, 30 May 2020 12:20:02 +0200, Sabine Baer wrote: [...]


>> Das benutze ich aber nur noch in Kombination mit --force-config bzw.
>> make config. Und das nur wenn mir die ausgewählten Optionen für die
>> vorgefertigten packages nicht so passen wie ich das möchte.
>> Das sind sehr wenige Anwendungen.

> Und woher kennst Du die, wenn Du nicht make config gemacht hast?
> [...]


Wenn irgendein Programmm das ich mit pkg installiert habe nicht so
rund läuft oder ich irgendwas vermisse gehe ich da mit portmaster
--force-config ran. Manchmal tuen sich neue Welten auf, manchmal leider
nicht.

ImageMagick z.B. hat dutzende Optionen, scribus-devel leider nur eine.
scribus brauche ich auch nicht regelmäßig, vielleicht wird da in
Monaten etwas stabiles nachgeschoben.

>> make buildworld installworld habe ich auch Jahre gemacht.
>> Hinterher mergemaster. Stundenlanges Elend.

>:-))) Ja. Und weil ich bei mergemaster nicht so richtig durchblicke,
> schiebe ich ein Update immer Jahre vor mir her. Und jelaenger ich warte,
> umso schwieriger wird es.


Wenn du dir die manpage ansiehst, schau mal die Optionen -i -F -U an,
ob die bei dir so passen könnten.
Allein damit reduziert man den nachzubearbeitenden Kram wesentlich.

> [...]
>> freebsd-update fetch und anschließend das ganze nochmal mit install ist
>> ein Segen dagegen. Das geht relativ zackig und ist sicher.

> Die neuen Moden kommen immer oefter. Wenn ich mich an eine gewoehnt
> habe, ist schon lange etwas anderes up to date. :-\


Ich hatte mir vor ein paar Monaten die schmutziggrauen Haare blond gemacht.
Rein aus Langeweile und Provokationslust. Mit über 60.
Blau ung grün habe ich auch noch hier.

[...]

Detlef
Sabine Baer (31.05.2020, 13:59)
On 2020-05-30, Felix Palmen wrote:
> * Sabine Baer <baerks>:


[...]

Sei wie dem sei, ich habe jetzt nach der Anleitung in der
portmaster-manpage alles neu gemacht, und jetzt ist py37-setuptools
installiert und alle pynn-irgendwas heissen py37-irgenwas.

[...]

>> Ich baue eigentlich immer mit portmaster oder make install.

> Mischst du Pakete und Ports? Das ist immer problematisch ? *zumindest*
> muss man dabei sicherstellen, dass man nicht Pakete aus dem


[...]

> /usr/local/etc/pkg/repos/FreeBSD.conf:
>| FreeBSD: { | url: "pkg+http://pkg.FreeBSD.org/${ABI}/latest" | }


Das kommt mir irgendwie bekannt vor. Ich glaube, ich habe bei meinem
Hoellenritt auf 11.3, das dann voellig im Eimer war, gestreift.
Ich glaube, ich habe da mal firefox als Paket installiert, weil der 3
Tage beim Installieren aus den Ports gebraucht hat und dann doch nicht
funktioniert hat. Aber jetzt, bei der Installation des 12.1 habe ich nur
aus den Ports installiert. Oder - vielleicht habe ich pkg als Paket
installiert.
Aber ist auch egal, jetzt ist ja alles wieder in Ordnung.
Bis ich anfange, den X11-Server und Anwendungen fuer die graphische
Oberflaeche zu installieren...

> Falls du *alles* aus ports baust würde ich dringend zu poudriere
> raten.


Ich muss zugeben, dass ich weder /usr/ports/*/poudriere/p*r noch
verstehe, auch eine deutsche
Webseite hat mir nicht weitergeholfen.

[pkg delete -a}

> Wenn sonst nichts hilft ist das definitiv eine Möglichkeit.


Habe ich gemacht (gemaess der portmaster manpage)
Jetzt ist es wieder sauber.

Sabine
Ähnliche Themen