kledgeb UbuntuやLinuxの最新情報を紹介

Ubuntu 20.04 その11 - Ubuntu 20.04 LTSにおけるPython2の削除方針と対応方針

Python2の削除方針と対応方針

「Ubuntu 20.04 LTS」における「Python2」の削除方針と対応方針が以下で紹介されています。


  • Python2 removal for focal ...

一部のアプリケーションを救うため、「Ubuntu 20.04 LTS」でも「Python2」が提供される予定です。
ただし既存の「Python2」環境とは内容や状況が異なります。
既存の「Ubuntu」と同様の「Python2」環境を期待するなら、「Ubuntu 18.04 LTS」を利用するのが良いでしょう。

1.python-defaultsパッケージがreleaseポケットへ

「python-defaults」パッケージが「release」ポケットへ移されました。
これにより以下のバイナリーパッケージが削除されます。

  1. libpython-dbg
  2. libpython-dev
  3. libpython-stdlib
  4. python 
  5. python-dbg
  6. python-dev
  7. python-doc
  8. python-minimal

また「release」及び「proposed」ポケットでは、上記パッケージへの依存がすべて削除されます。

2.パッケージの修正

ビルドされないパッケージへの参照を削除します。
これにより「build dependency」に「1.」のパッケージを指定しているすべてのパッケージの修正が必要になります。

3.Python2シバンのチェック

「release」ポケットにあるバイナリーパッケージをスキャンし、Python2シバン(python)を使用しているパッケージを検出します。
検出されたパッケージは、「python」シバンの代わりに「python2」シバンを使用するように修正されます。

ただし「/usr/share/doc」以下にあるサンプルコードは対象外です。
(面倒を見ないということです。)

4.ビルドチェック

次回アーカイブテストを再構築した後、「python」シバンの削除によるビルドエラーが発生していないかチェックします。

5.python-is-python2-but-deprecatedパッケージの追加

リリース前に「python-is-python2-but-deprecated」バイナリーパッケージを追加します。
このパッケージは「/usr/bin/python」シンボリックリンクを提供します。

このパッケージにより、以前の「Ubuntu」からアップグレードした環境でも同じ「python」シンボリックリンクを利用できます。
また従来と同じ「python」シンボリックリンクが必要なら、明示的にこのパッケージをインストールすることもできます。
加えて従来の「python」シンボリックリンクを期待するPPAやサードパーティー製パッケージのインストールも可能になります。

これは「Python3」へ移行できていない古いソフトウェアを救済するものであり、パッケージを提供する開発者は、パッケージのビルド依存や依存及び推奨に「python-is-python2-but-deprecated」パッケージを指定することはできません。

6.python-is-python3パッケージの追加

将来を見越して「python-is-python3」パッケージを追加します。
このパッケージは「/usr/bin/python」シンボリックリンクを提供します。
このシンボリックリンクは「Python3」を指します。
ただし「Ubuntu 20.04 LTS」でこのパッケージは、デフォルトでインストールされません。

また今後のリリースや「Ubuntu 22.04 LTS」で「Python3」を指す「python」シンボリックリンクがデフォルトでインストールされる予定です。

パッケージを提供する開発者は、パッケージのビルド依存や依存及び推奨に「python-is-python3」パッケージを指定することはできません。

7.リリースノートに情報を記載

「Python」に関する情報はリリースノートに記載されます。

8.python2の提供

「Ubuntu 20.04 LTS」で「python2」が提供される予定です。

もはや「Python2」から「Python3」への移行は必須なのですが、「Python2」を使用するアプリケーションを「Python3」へ移行できない派生を救うため、「python2」が提供される予定です。
つまりやむを得ない事情によるものです。

9.フィードバックを

今回の作業を通じアーカイブ(リポジトリー)から削除されるパッケージがあります。
削除されては困るパッケージがある場合は、その旨をフィードバックしてください。
フィードバックは「Launchpad」や上記メーリングリストで受け付けています。
「Feature Freeze」後でもフィードバックを受け付けていますが、早いほうが好ましいでしょう。

Ubuntu
スポンサー
コメント
コメントポリシー
コメントをする前に UbuntuのCode of Conduct(CoC/行動規範) を確認し、CoCに沿ったコメントをお願いします。
コメントの使い方は、コメントの使い方を参照してください。
同一カテゴリーの記事
SNS
人気の記事
  • Ubuntu 22.04 その98 - 入力ソースとキーボートレイアウトと日本語入力のカスタマイズ
    入力ソースとキーボートレイアウトと日本語入力 「Ubuntu」ではユーザーが利用しているキーボードレイアウトや日本語入力のカスタマイズが可能です。
  • Ubuntu 20.04 その74 - UbuntuとUEFIセキュアブート
    UbuntuとUEFIセキュアブート 「Ubuntu」と「UEFIセキュアブート」に関するお話です。
  • Ubuntu 22.04 その64 - Windows/Linux/macOSでUbuntu 22.04 LTSのライブUSBメモリーを作るには
    Ubuntu 22.04 LTSのライブUSBメモリーを作る方法 Windows/Linux/macOSでPC向け「Ubuntu 22.04 LTS」のライブUSBメモリーを作る方法を紹介します。
  • Ubuntu 22.04 その99 - 日本語入力(Mozc)の設定をカスタマイズして作業効率を上げよう
    日本語入力(Mozc)の設定をカスタマイズするには 「Ubuntu」では日本語入力に「Mozc」を採用しています。
  • WSL その219 - WSL 2のLinux kernelをアップデートするには・Linux kernelのバージョンを調べるには
    WSL 2のLinux kernelをアップデートするには 「WSL 2」の「Linux kernel」をアップデートする方法です。
  • Ubuntu gedit その66 - ファイルタイプの識別子について(モードラインプラグイン)
    ファイルタイプの識別子について   「モードライン」プラグインでは、ハイライトモードの モード を指定することができます。   モードオプションに指定する識別子は、モードの種類により異なります。
  • Ubuntu 22.04 その107 - ローカルネットワーク上でフォルダーやファイルを共有するには
    ローカルネットワーク上でフォルダーやファイルを共有するには 「ファイル(Nautilus)」アプリはファイルマネージャーです。 「ファイル」はローカルネットワーク上でフォルダーやファイルを共有する仕組みを提供しており、簡単に他のPCとフォルダーやファイルをやりとりできます。
  • Ubuntuのバージョンと開発コードの対応表
    バージョンと開発コード 「Ubuntu」には各バージョンごとに開発コードが設定されます。
  • Ubuntu 22.04 その120 - UbuntuのブートローダーをBoot Repairで修復するには・Ubuntuが起動しないトラブルを解決
    UbuntuのブートローダーをBoot Repairで修復するには 「Boot Repair」はOSのブートローダーに起因するOSが起動しない問題を簡単に解決してくれるアプリです。
  • Ubuntu 22.04 その354 - 動画や音楽の対応フォーマットを増やすには・動画や音楽が再生できない時は
    動画や音楽の対応フォーマットを増やすには 一部の動画や音楽フォーマットを再生する場合、追加ソフトウェアのインストールが必要になります。
記事のピックアップ
オプション