2021-01-01

Fedora 34 の変更点

Fedora は Red Hat 社が支援するコミュニティ Fedora Project で開発されている Linux ディストリビューションで、最新の技術を積極的に取り込むことで知られています。また、Fedora の開発成果が後にリリースされる Red Hat Enterprise Linux, RHEL に取り込まれています。Fedora は、おおむね春と秋の年二回の頻度で新しい版がリリースされています。

Fedora プロジェクトで定めた Change Policy [1] の元に、半年に一回という頻度のリリースをよく維持していると思います。承認を含む変更プロセスは Fedora Engineering and Steering Committee (FESCo) によって管理されていて、オープンな開発体制が取られています。そのため、毎回、次期リリーススケジュールを立てて進捗を開示し、変更予定の項目を ChangeSet として開示しています。

ChangeSet には他のオープンソースプロジェクトの成果(新しいバージョン)を取り入れることはもちろんのこと、Fedora というディストリビューションをどのように改善していきたいのか、というアプローチも垣間見れます。

2021 年 4 月 20 日にリリース予定 [2] で開発が進められている Fedora 34 の変更点(予定)[3] についてまとめました。

bitWalk's: Fedora 34 の変更点 (2) に変更内容を更新しました。[2021-03-28]

従来、翻訳に時間がかかるので、翻訳せずにそのままコピーして記載していましたが、日本語の質が悪くとも、機械翻訳に頼った方が多くの方に見て頂けると考えて、今回は機械翻訳に助けてもらってます。できるだけ文章の手直しや、必要なコメントの追加をしていますが、自分の知識が追いついていない項目については、文章の直ししかしておらず、項目に応じて説明の濃淡が出てしまっていることをご了承下さい。

Fedora Rawhide(開発版)(Fedora-Workstation-Live-x86_64-Rawhide-20201231.n.0.iso) のデスクトップ画面

1. 承認されたシステム全体に影響する変更

1.1Binutils 2.35binutils パッケージをバージョン 2.34 から 2.35 へリベース。
1.2Route all Audio to PipeWireこの変更案は、PulseAudioJACK からのすべてのオーディオを、デフォルトで PipeWire Audio デーモンにルーティングするというものです。
1.3DNS Over TLSFedora は、設定された DNS サーバーでサポートされている場合、DNS over TLS (DoT) を使用します。
1.4GNU Toolchain update
(gcc 11, glibc 2.33)
Fedora 34 GNU Toolchain を gcc 11, binutils 2.35, glibc 2.33 に切り替えます。
1.5ibus-anthy
for default Japanese IME
現在の日本語 IME(入力メソッドエンジン)のデフォルトは ibus-kkc ですが、より効率的に日本語 IME を開発するために ibus-anthy に変更する予定です。
1.6Introduce module
Obsoletes and EOL
モジュールストリームを有効にしてシステムをアップグレードする際の Fedora のアップグレード性の問題を修正しました。
1.7NSS CK_GCM_PARAMS changePKCS #11 v3.0 で PKCS #11 の仕様が変更されたため、NSS は CK_GCM_PARAMS 構造体の定義をソース互換性のない方法で変更する必要があります。Upstream は NSS 3.52 でこの変更を行いました。この変更は ABI には影響しません。古いバージョンの NSS でコンパイルされた古いプログラムはまだ動作します。NSS を使用して AES GCM を直接呼び出すパッケージのみが影響を受けます。
1.8OpenLDAP without
Non-threaded Libraries
OpenLDAP はスレッド化されていないバージョンの libldap を試用しません。代わりに、ランタイムライブラリが動作し続けるためのシンボリックリンクが提供され、libldap で構築されたソフトウェアはすべて実質的に libldap_r で構築されます。
1.9OpenSSL3.0OpenSSL パッケージをバージョン 3.0 にリベースし、依存パッケージを再構築します。
1.10Patches in Forge macros
- Auto macros
- Detached rpm changelogs
redhat-rpm-config が更新され、Forge マクロのパッチサポート、特定のセクションで実行するマクロを登録するためのプラグイン可能なフレームワーク、デタッチドファイル内の rpm changelogs が追加されます。
1.11Remove make from BuildRootこの変更により、Kojimock のデフォルトのビルドルートから make が削除されます。
1.12Remove support for
SELinux runtime disable
SELinux ランタイムのサポートを無効にして、初期化後の読み込みのみの保護で LSM フックを強化できるようにしました。
1.13Restart services
at end of rpm transaction
各 rpm パッケージで再起動すべき各サービスを再起動するためのスクリプトレットは、ユニットファイル内の宣言と、最後に発生する rpm トランザクショントリガーで置き換えられ、すべてのサービスが再起動されます。
1.14Ruby 3.0Ruby 3.0 は Ruby の最新安定版です。ますます多様化・拡大する Ruby の需要に対応するために、多くの新機能や改善が含まれています。Fedora 33 の Ruby 2.7 から Fedora 34 の Ruby 3.0 へのメジャーアップデートにより、Fedora は優れた Ruby 開発プラットフォームとなりました。
1.15Rust Crate Packages
For Release Branches
Rust の Crate パッケージは、現在 Fedora Rawhide(Fedora の開発ツリーで、ローリングリリースモデルを採用)でしか利用できないので、Fedora リリースブランチ用に Rust アプリケーションをパッケージ化するのが難しく、通常よりも多くのステップを必要とします。この変更提案は、Rust のパッケージングを Fedora の通常のパッケージングワークフローと一致させることを目的としています。
1.16Use update-alternatives
for /usr/bin/cc and /usr/bin/c++
多くのビルドシステムでは、/usr/bin/cc/usr/bin/c++ をデフォルトの C/C++ コンパイラとして使用しています。これらの実装を簡単に入れ替えることができるようになると、Fedora では以下のようなことができるようになります。
テストのために別のビルドルートを設定
/usr/bin/cc に gcc ラッパースクリプトをインストールして、パッケージを新しいコンパイラーフラグに移行したり、コンパイラーの使用状況についての統計情報を取得したりします。 これによって、ユーザが代替コンパイラを使って簡単に実験できるようになります。例えば、システムの gcc と開発版の gcc を簡単に切り替えることができます。
1.17Wayland by Default
for KDE Plasma Desktop
X11 ベースのセッションよりも Wayland ベースの KDE Plasma Desktop セッションを優先するように、SDDM のデフォルトのセッション選択を変更します。
1.18Xwayland
as a standalone package
Xwayland を安定版ブランチではなく、現在のコードから構築されたスタンドアロンパッケージに移動。

2. 承認された自己完結型の変更

2.1AArch64 KDE Plasma Desktop imageFedora 34 の配布セットに AArch64 KDE Plasma Desktop のスピンイメージを追加しました。
2.2Move deprecated bluetooth utilities
to subpackage
非推奨の bluez bluetooth ユーティリティをサブパッケージに移動します。
2.3Compress Kernel Firmwareカーネルファームウエアを圧縮して使用するディスクサイズを節約します。
2.4Deprecate nscdこの提案は、名前付きサービスのための nscd キャッシュを廃止することを意図しています。Fedora は既にデフォルトで hosts データベースのキャッシュに systemd-resolved を使用していますが、sssd デーモンは他の名前付きサービスのキャッシュを提供しています。
2.5GitRepos-master-to-mainこの変更により、Fedora の git リポジトリが "master" ではなく "main" をデフォルトの git ブランチとして使用するようになります。特定のリポジトリは手動で移動され、新しいプロジェクトのデフォルトの git ブランチは "main" を使用するように設定されます。
2.6glibc 32 Build Adjustmentsglibc32パッケージは、GCC と他のいくつかのパッケージが、 Koji の RPM マルチライブラリリポジトリのサポートがないことを回避するために使用している特別なパッケージです。保守が難しく、現在のアプローチでは GPL/LGPL の遵守に疑問を投げかけています。
背景
-m32 や -m31 などの GCC スイッチを使用して、64 ビットアーキテクチャ上で 64 ビット以外のコードをビルドするパッケージもあります。-nostdlib を同時に使わないものは、64 ビット以外の glibc も必要になります。ただし、現在のところ Koji ではこのようなマルチライブラリの RPM は提供できず、すべての RPM パッケージはビルドアーキテクチャか noarch パッケージになっています。
2.7kasumi-unicodekasumi-unicode は、kasumi プロジェクト内の kasumi.spec で新たに生成されます。
2.8MariaDB 10.5Fedora の MariaDB ('mariadb'パッケージ) を 10.4 から 10.5 にアップデート。
2.9Modular GNOME Keyring servicesGNOME Keyring が提供するモノリシック・デーモンは、専用のサブデーモンに分割され、systemd で一貫して管理できるようになります。
2.10Policy for Modules
in Fedora and Fedora ELN
ユーザーとパッケージャーの最適な体験を保証するために、Fedora の Modular コンテンツのためのルールを確立します。現在のところ、これらのルールは Fedora ELN にのみ適用されますが、将来、別の変更提案を通して Fedora と EPEL で再利用できるように作成されます。
2.11ntp replacementntp パッケージが ntpsec に置き換えられます。
2.12Ship BerkleyDB backend as a moduleBDB と HDB バックエンドを動的にロードできるように openldap-servers パッケージを変更しました。
2.13Reduce installation media size
by eliminating the intermediate
EXT4 filesystem in the SquashFS
インストールイメージの構築プロセスを変更し、ネットインストールや DVD ISO イメージに存在する Squash ファイルシステムイメージに EXT4 ファイルシステムイメージが含まれないようにします。この変更を実装した結果、ファイルは SquashFS に直接格納されるようになります。
2.14Python Upstream Architecture NamesFedora の Python エコシステムでは、以前にパッチが適用された Fedora の名前ではなく、(主にファイル名で)CPython のアップストリームアーキテクチャの名前を使用してください。例えば、/usr/lib64/python3.9/lib-dynload/array.cpython-39-powerpc64le-linux-gnu.so の代わりに /usr/lib64/python3.9/lib-dynload/array.cpython-39-ppc64le-linux-gnu.so とします。これにより、Python 自体のパッケージ化は少し厄介になりますが、Fedora の Python をアップストリームに近づけ、ppc64le manylinux wheels との相互運用性の問題を解決しました。この変更は ppc64le と armv7hl にのみ影響します(koji.feedoraproject.org で構築されたアーキテクチャを考慮しています)。ファイル名に常に %{_arch}-linux%{_gnu} が含まれていると仮定しているパッケージに適応させる必要があります。
2.15Rename libusb packages
and deprecate old API
libusb の名前を libusb-compat-0.1 に、libusbx の名前を libusb1 に変更します。古い libusb ビルド依存関係の自動更新パスの提供がなくなります。
2.16Stratis 2.2.0Stratis 2.2.0 では、Stratis ファイルシステムのシンボリックリンクが /stratis ではなく /dev/stratis に置かれるようになりました。Stratis はシンボリックリンクを、以前のように stratisd を介して直接ではなく、 udev ルールを使って作成し、維持します。stratisd 2.2.0 では /stratis ディレクトリは作成されず、使用されません。
2.17X.org Utility Deaggregationコレクションパッケージ xorg-x11-{apps,font-utils,res-utils,server-utils,utils,xkb-utils} は破棄され、その中の個々のユーティリティは個別にパッケージ化されます。

参考サイト

  1. Changes policy :: Fedora Docs
  2. Fedora 34 Schedule: Key
  3. Releases/34/ChangeSet - Fedora Project Wiki

 

ブログランキング・にほんブログ村へ bitWalk's - にほんブログ村

0 件のコメント: