[python] Python 2 v utilitách...
Vladimír Macek
macek na sandbox.cz
Čtvrtek Srpen 25 11:24:55 CEST 2022
Otázka do pléna :-)
Dnes mi Ubuntu nabídlo odinstalování obsolete balíku python-is-python2,
jehož součástí je symlink
/usr/bin/python -> python2
Přestanou tím fungovat všechny skripty, které mají shebangy
#!/usr/bin/python
#!/usr/bin/env python
plus cokoli, co prostě volá "python" a není ve virtualenvu.
Zároveň je možné nainstalovat balík python-is-python3, což vyrobí symlink
/usr/bin/python -> python3
Tedy... grand switch. :-D
Pokud se vymění systémový symlink, skončí pro danou mašinu tak trochu jedna
éra. Asi nejsem sám, kdo má doma nebo na serverech mnoho svých utilit pro
python2, které mají buď jeden z výše uvedených shebangů, některé nemají
shebang vůbec a některé ani nemají příponu .py, protože jsou myšlené jako
příkazy.
Říkal jsem si "budeš mít prázdnou sekci Obsolete and locally created
packages v aptitude", tak jsem balík python-is-python2 odstranil. Tím se
mimochodem odstranil i celý python2.7! :-D Ten jsem rychle vrátil zpět. Na
to připraven úplně nejsem.
Pak jsem začal dumat, jak z hodiny na hodinu změnit vše na python3. Chvilku
jsem procházel ten svůj swamp skriptů... dumal.
Zkusil jsem hromadně 2to3, ale ten občas spadne, když nemůže nějaký soubor
přečíst, shebangy zdá se neopravuje.. trochu mě to naprdlo... :-)
Nakonec jsem si řekl, že na akci kulový blesk teď čas nemám. A protože
python-is-python2 po odstranění v nabídce již není, vyrobil jsem systémový
symlink python na python2 ručně.
Moc pyšný na to nejsem, ale asi to budu řešit postupně.
Jak jste to vyřešili vy?
--
Děkuji. S pozdravem
Vladimír Macek | +420 608 978 164
Další informace o konferenci Python