「再現性のあるビルド/ステータス」の版間の差分
(英語版から転載) |
(→[multilib]: 翻訳) |
||
(同じ利用者による、間の9版が非表示) | |||
3行目: | 3行目: | ||
[[en:Reproducible builds/Status]] |
[[en:Reproducible builds/Status]] |
||
[[pt:Reproducible builds (Português)/Status]] |
[[pt:Reproducible builds (Português)/Status]] |
||
− | Arch Linux |
+ | Arch Linux は [[core]] および [[extra]] パッケージを常に再構築しており、[https://reproducible.archlinux.org ステータスページ] があります。このページには、不良パッケージのステータスと修正が必要なものが含まれています。 |
− | == |
+ | == 問題 == |
− | === |
+ | === 全般的 === |
+ | * ファイル順序の問題と btrfs サイズのバグを解決するには、pacman 5.2 未満でビルドされたすべてのパッケージでリビルドが必要です。ファイルの順序の問題については、影響を受ける [[extra]] パッケージがミラーディレクトリで次の 1 つのライナーを実行していることがわかります。 |
||
− | * A rebuild is required for all packages build with pacman < 5.2 to resolve file order issues and a btrfs size bug. For the file order issue the affecting [[extra]] packages can be found running the following one liner on a mirror directory: |
||
for i in /srv/ftp/extra/os/x86_64/*.pkg.tar.??; do |
for i in /srv/ftp/extra/os/x86_64/*.pkg.tar.??; do |
||
20行目: | 20行目: | ||
done |
done |
||
− | ==== |
+ | ==== ファイル順序再構築 FTBFS ==== |
accounts-qml-module-0.7-2-x86_64.pkg.tar.xz |
accounts-qml-module-0.7-2-x86_64.pkg.tar.xz |
||
52行目: | 52行目: | ||
qtav-1.13.0-1-x86_64.pkg.tar.xz |
qtav-1.13.0-1-x86_64.pkg.tar.xz |
||
− | ==== |
+ | ==== JAR ファイルを含むパッケージ ==== |
+ | JAR には各ファイルの変更タイムスタンプが含まれるため、再現できなくなります。ビルドシステムに応じて、これに使用できるさまざまなソリューションがあります。 |
||
− | JARs include a modification timestamp for each file, making them unreproducible. Depending on the build system, there are different solutions available for this. |
||
===== Ant ===== |
===== Ant ===== |
||
− | + | 現在、再現可能なビルドはサポートされていません。[https://bz.apache.org/bugzilla/show_bug.cgi?id=61269 アップストリーム機能リクエスト] を参照してください。 |
|
===== Gradle ===== |
===== Gradle ===== |
||
− | + | 再現性のあるビルドをサポートする必要があります [https://docs.gradle.org/current/userguide/working_with_files.html#sec:reproducible_archives すぐに使用できます] |
|
===== Maven ===== |
===== Maven ===== |
||
− | + | 固定タイムスタンプに設定できる {{ic|project.build.outputTimestamp}} プロパティをサポートします。Maven プラグインの最近のバージョンは、このプロパティを尊重して再現可能なアーティファクトを作成します。 このプロパティはプロジェクトの {{ic|pom.xml}} ファイルに設定する必要があります。アップストリームでこれがまだ行われていない場合は、{{bc|1=mvn -Dproject.build.outputTimestamp="$SOURCE_DATE_EPOCH" clean package}} プラグインを再現可能なビルドをサポートする最新バージョンに更新するには、プロジェクトの {{ic|pom.xml}} にパッチを適用する必要がある場合があります。[https://maven.apache.org/guides/mini/guide-reproducible-builds.html 再現性のあるビルドへの Maven ガイド] で、最低限必要なバージョンや追加の必要な構成オプションなどの詳細情報を確認できます。 |
|
− | + | パッケージの例 (Maven プラグインのバージョン更新用のパッチを含む): [https://gitlab.archlinux.org/archlinux/packaging/packages/junit-system-rules/-/blob/main/PKGBUILD#L36 junit-system-rules] |
|
− | ===== OpenJDK jar |
+ | ===== OpenJDK jar コマンド ===== |
− | + | 組み込みの OpenJDK {{ic|jar}} プログラムは、{{ic|SOURCE_DATE_EPOCH}} [https://bugs.openjdk.java.net/browse/JDK-8244592 OpenJDK バージョン 15 以降] をサポートします。 |
|
===== strip-nondeterminism ===== |
===== strip-nondeterminism ===== |
||
+ | 最後の手段として、Debian の [https://salsa.debian.org/reproducible-builds/strip-nondeterminismstrip-nondeterminism] を使用すると、JAR を含むさまざまなファイルタイプからファイルタイムスタンプなどの再現不可能なメタデータを削除できます。これは万能薬ではなく (たとえば、ビルドシステムには JAR マニフェストに追加の再現不可能なメタデータが含まれる可能性があり、ストリップ非決定性によりこれらの一部が削除されますが、すべてが削除されるわけではありません)、再現可能なビルドのネイティブサポートがない場合の最後の手段としてのみ使用する必要があります。利用可能: {{bc|strip-nondeterminism --timestamp "$SOURCE_DATE_EPOCH"}} |
||
− | As a last resort, [https://salsa.debian.org/reproducible-builds/strip-nondeterminism strip-nondeterminism] from Debian is able to strip unreproducible metadata like file timestamps from a variety of file types, including JARs. It is not a cure-all (e.g. build systems might include additional unreproducible metadata in the JAR manifest, strip-nondeterminism removes some, but not all of these) and should only be used as a last resort if no native support for reproducible builds is available: {{bc|strip-nondeterminism --timestamp "$SOURCE_DATE_EPOCH"}} |
||
− | + | パッケージ例: [https://gitlab.archlinux.org/archlinux/packaging/packages/pdftk/-/blob/main/PKGBUILD#L30 pdftk] |
|
− | ==== KDE Kdeveloper |
+ | ==== KDE Kdeveloper プロジェクトファイル ==== |
− | KDE |
+ | KDE はパッケージアプリテンプレート ''.tar.bz2'' ファイルを作成しますが、再現時に tar ファイルとユーザー ID が異なります。これは再現時のバグである可能性があります。 https://gist.githubusercontent.com/jelly/570313f56ee59be7674ad4cc002232e7/raw/b85536690c48b23ce97650e8db8f0ca18c2dbf1a/gistfile1.txt |
− | [https://invent.kde.org/frameworks/extra-cmake-modules/-/blob/master/kde-modules/KDEPackageAppTemplates.cmake The cmake file which generates the issue] |
+ | [https://invent.kde.org/frameworks/extra-cmake-modules/-/blob/master/kde-modules/KDEPackageAppTemplates.cmake The cmake file which generates the issue] |
− | ==== Doxygen |
+ | ==== Doxygen ドキュメントは、graphviz-2.44.0-2 でビルドされています ==== |
+ | graphviz には libpng への依存関係がなかったため、libpng が利用可能になる前にgraphviz がインストールされていたため、dlopen としてマークされていなかったため、ドットで PNG 生成を利用できませんでした。生成ドキュメントとして doxygen に依存し、次の差分を含むすべてのパッケージは再構築が必要です。 |
||
− | graphviz lacked a dependency on libpng, making PNG generation unavailable in dot as graphviz was installed before libpng was available and therefore not marking it as to be dlopen'd. All packages which depend on doxygen for generation documentation and with the following diff require a rebuild. |
||
│ │ --rw-r--r-- 0 root (0) root (0) 20234 2020-05-16 12:32:36.000000 usr/share/doc/grantlee/classGrantlee_1_1Parser.html |
│ │ --rw-r--r-- 0 root (0) root (0) 20234 2020-05-16 12:32:36.000000 usr/share/doc/grantlee/classGrantlee_1_1Parser.html |
||
100行目: | 100行目: | ||
{| class="wikitable sortable" |
{| class="wikitable sortable" |
||
+ | ! パッケージ |
||
− | ! Package |
||
− | ! |
+ | ! 問題 |
+ | ! 解決策/パッチ |
||
− | ! Solution/Patch |
||
+ | ! 譲受人 |
||
− | ! Assignee |
||
+ | ! 解決済み |
||
− | ! Solved |
||
|- |
|- |
||
| {{Pkg|audit}} || [https://bugs.archlinux.org/task/74882 FTBFS with linux-headers 5.17+] || [https://bugs.archlinux.org/task/74882 proposed] || none || {{No}} |
| {{Pkg|audit}} || [https://bugs.archlinux.org/task/74882 FTBFS with linux-headers 5.17+] || [https://bugs.archlinux.org/task/74882 proposed] || none || {{No}} |
||
|- |
|- |
||
− | | {{Pkg|dmraid}} || FTBFS |
+ | | {{Pkg|dmraid}} || FTBFS による {{ic|1=-Werror=format-security}} || [https://listman.redhat.com/archives/ataraid-list/ proposed upstream] on 2022-10-06 || none || {{No}} |
|- |
|- |
||
− | | {{Pkg|gcc-ada}} || |
+ | | {{Pkg|gcc-ada}} || 一部の ''.ads'' ファイル内のファイル時間 || none || none || {{No}} |
|- |
|- |
||
− | | {{Pkg|ldns}} || |
+ | | {{Pkg|ldns}} || ソースファイル名を含むバイナリはメイクフラグによって異なります || [https://github.com/NLnetLabs/ldns/pull/188 proposed upstream] || none || {{No}} |
|- |
|- |
||
− | | {{Pkg|libverto}} || |
+ | | {{Pkg|libverto}} || /bin/sh = Dash を使用してビルドするときにファイルが見つからない || [https://github.com/latchset/libverto/commit/39f2ef6317254297a8f6efa2fbadf4d913976d27 マージ済み] ですがリリースされていません (2021-03 の最新リリース 0.3.2)|| none || {{No}} |
|- |
|- |
||
− | | {{Pkg|linux}} || |
+ | | {{Pkg|linux}} || 署名付きモジュール || none || none || {{No}} |
|- |
|- |
||
− | | {{Pkg|linux-docs}} || |
+ | | {{Pkg|linux-docs}} || 多くの問題 - 注文、リンク, ... || none || none || {{No}} |
|- |
|- |
||
| {{Pkg|linux-headers}} || {{ic|/usr/lib/modules/*/build/vmlinux}} [https://gist.github.com/allanmcrae/31604043163f6379139c767e7d9efefd diff]{{Dead link|2021|11|15|status=404}} || none || none || {{No}} |
| {{Pkg|linux-headers}} || {{ic|/usr/lib/modules/*/build/vmlinux}} [https://gist.github.com/allanmcrae/31604043163f6379139c767e7d9efefd diff]{{Dead link|2021|11|15|status=404}} || none || none || {{No}} |
||
|- |
|- |
||
− | | {{Pkg|linux-lts}} || |
+ | | {{Pkg|linux-lts}} || {{Pkg|linux}} の場合 || none || none || {{No}} |
|- |
|- |
||
− | | {{Pkg|linux-lts-docs}} || |
+ | | {{Pkg|linux-lts-docs}} || {{Pkg|linux-docs}} について || none || none || {{No}} |
|- |
|- |
||
− | | {{Pkg|linux-lts-headers}} || |
+ | | {{Pkg|linux-lts-headers}} || {{Pkg|linux-headers}} について || none || none || {{No}} |
|- |
|- |
||
− | | {{Pkg|nss}} || |
+ | | {{Pkg|nss}} || [https://bugzilla.opensuse.org/show_bug.cgi?id=1081723 shlibsign] の {{ic|/usr/lib/lib{freebl3,freeblpriv3,softokn3}.chk}} のバイナリの違い || none || none || {{No}} |
|- |
|- |
||
− | | {{Pkg|perl}} || [https://pkgbuild.com/~jelle/perl.txt |
+ | | {{Pkg|perl}} || [https://pkgbuild.com/~jelle/perl.txt タイムスタンプ、ビルド時にエンコードされた uname] || none || none || {{No}} |
|- |
|- |
||
| {{Pkg|syslinux}} || [https://bugs.archlinux.org/task/70765 FTBFS] || proposed in issue || none || {{No}} |
| {{Pkg|syslinux}} || [https://bugs.archlinux.org/task/70765 FTBFS] || proposed in issue || none || {{No}} |
||
138行目: | 138行目: | ||
{| class="wikitable sortable" |
{| class="wikitable sortable" |
||
+ | ! パッケージ |
||
− | ! Package |
||
− | ! |
+ | ! 問題 |
+ | ! 解決策/パッチ |
||
− | ! Solution/Patch |
||
+ | ! 譲受人 |
||
− | ! Assignee |
||
+ | ! 解決済み |
||
− | ! Solved |
||
|- |
|- |
||
− | | {{Pkg|abiword}} || {{ic|usr/lib/python2.7/site-packages/gi/overrides/Abi.pyc}} |
+ | | {{Pkg|abiword}} || {{ic|usr/lib/python2.7/site-packages/gi/overrides/Abi.pyc}} および {{ic|.pyo}} || none || none || {{No}} |
|- |
|- |
||
− | | {{Pkg|accounts-qml-module}} || {{ic|.BUILDINFO}} |
+ | | {{Pkg|accounts-qml-module}} || {{ic|.BUILDINFO}} サイズの問題 - リビルド中の FTBFS || none || none || {{No}} |
|- |
|- |
||
− | | {{Pkg|amdvlk}} || |
+ | | {{Pkg|amdvlk}} || {{ic|usr/lib/amdvlk64.so}} には多くの違いがあります || none || none || {{No}} |
|- |
|- |
||
− | | {{Pkg|ant}} || ''.jar'' |
+ | | {{Pkg|ant}} || ''.jar'' ファイルの違い || none || none || {{No}} |
|- |
|- |
||
− | | {{Pkg|ant-doc}} || |
+ | | {{Pkg|ant-doc}} || 大量のタイムスタンプ (javadoc)、および ''.zip'' ファイルの違い || none || none || {{No}} |
|- |
|- |
||
| {{AUR|antlr2}} || {{ic|usr/share/java/antlr2.jar}} || none || none || {{No}} |
| {{AUR|antlr2}} || {{ic|usr/share/java/antlr2.jar}} || none || none || {{No}} |
||
|- |
|- |
||
− | | {{Pkg|apparmor}} || |
+ | | {{Pkg|apparmor}} || バックアップ配列にファイルを追加するには、並べ替えが必要です。{{ic|usr/lib/python3.8/site-packages/LibAppArmor/__pycache__/LibAppArmor.cpython-38.pyc}} || none || none || {{No}} |
|- |
|- |
||
− | | {{Pkg|asymptote}} || |
+ | | {{Pkg|asymptote}} || HTML と情報の日付。PDF ドキュメントの違い (日付?) || none || none || {{No}} |
|- |
|- |
||
− | | {{Pkg|autogen}} || |
+ | | {{Pkg|autogen}} || マニュアルページのタイムスタンプ、ファイル所有権が異なる {{ic|sr/share/autogen/libopts-42.1.17.tar.gz}}、およびバイナリの小さな変更 {{ic|usr/bin/autogen}} || need export MAN_PAGE_DATE=... and configure --enable-timeout=70 || none || {{No}} |
|- |
|- |
||
− | | {{Pkg|bigloo}} || uname |
+ | | {{Pkg|bigloo}} || あちこちにある uname とタイムスタンプ || none || none || {{No}} |
|- |
|- |
||
− | | {{Pkg|breezy}} || 3.0.2.3-3 |
+ | | {{Pkg|breezy}} || 3.0.2.3-3 は repro と makechrootpkg の両方で再現可能 || tooling issue? || none || {{No}} |
|- |
|- |
||
| {{Pkg|brltty}} || {{ic|usr/share/java/brlapi.jar}} || none || none || {{No}} |
| {{Pkg|brltty}} || {{ic|usr/share/java/brlapi.jar}} || none || none || {{No}} |
||
|- |
|- |
||
− | | {{Pkg|check-docs}} || |
+ | | {{Pkg|check-docs}} || たくさんの texi2html タイムスタンプ || none || none || {{No}} |
|- |
|- |
||
− | | {{Pkg|chromaprint}} || |
+ | | {{Pkg|chromaprint}} || {{ic|usr/bin/fpcalc}} のバイナリ差分 || none || none || {{No}} |
|- |
|- |
||
− | | {{Pkg|clisp}} || |
+ | | {{Pkg|clisp}} || IPアドレス; ps ドキュメントのタイムスタンプ、おそらくもっと多く || none || none || {{No}} |
|- |
|- |
||
− | | {{Pkg|colord}} || |
+ | | {{Pkg|colord}} || プロファイル ID は {{ic|usr/share/color/icc/colord/{Crayons,x11-colors}.icc}} で異なり、バイナリの違いは {{ic|usr/lib/colord}} で異なります || none || none || {{No}} |
|- |
|- |
||
− | | {{Pkg|conky}} || |
+ | | {{Pkg|conky}} || タイムスタンプ (toluapp から) および uname (少なくとも) || none || none || {{No}} |
|- |
|- |
||
− | | {{Pkg|deluge}} || .pyc file, .egg |
+ | | {{Pkg|deluge}} || .pyc file, .egg ファイル || none || none || {{No}} |
|- |
|- |
||
− | | {{Pkg|doxygen-docs}} || |
+ | | {{Pkg|doxygen-docs}} || 違いのある多くの PDF || none || none || {{No}} |
|- |
|- |
||
− | | {{Pkg|ecl}} || uname |
+ | | {{Pkg|ecl}} || uname、タイムスタンプ、gzip、その他多くのバイナリの違い || none || none || {{No}} |
|- |
|- |
||
− | | {{Pkg|eclipse-ecj}} || .jar |
+ | | {{Pkg|eclipse-ecj}} || .jar ファイル || none || none || {{No}} |
|- |
|- |
||
− | | {{Pkg|efitools}} || {{ic|/usr/share/efitools/efi/LockDown.efi}} |
+ | | {{Pkg|efitools}} || {{ic|/usr/share/efitools/efi/LockDown.efi}} バイナリの違いがあります || none || none || {{No}} |
|- |
|- |
||
− | | {{Pkg|efl}} || |
+ | | {{Pkg|efl}} || バイナリの違いがたくさんある || none || none || {{No}} |
|- |
|- |
||
− | | {{Pkg|efl-docs}} || |
+ | | {{Pkg|efl-docs}} || PDF の相違点 (日付を含む) || none || none || {{No}} |
|- |
|- |
||
− | | {{Pkg|emacs}} || |
+ | | {{Pkg|emacs}} || {{ic|usr/bin/emacs}} のバイナリの違い || none || none || {{No}} |
|- |
|- |
||
− | | {{Pkg|extra-cmake-modules}} || |
+ | | {{Pkg|extra-cmake-modules}} || {{ic|/usr/share/doc/ECM/ExtraCMakeModules.qch}} の小さな順序の違い || none || none || {{No}} |
|- |
|- |
||
− | | {{Pkg|firefox}} || |
+ | | {{Pkg|firefox}} || firefox ; [https://github.com/bmwiedemann/theunreproduciblepackage/tree/master/pgo PGO?] || [https://bugzilla.mozilla.org/show_bug.cgi?id=1568145 bug] + [https://github.com/bmwiedemann/openSUSE/blob/master/packages/m/MozillaFirefox/mozilla-bmo1568145.patch patch]{{Dead link|2023|05|20|status=404}} || none || {{No}} |
|- |
|- |
||
− | | {{Pkg|fontconfig}} || FTBFS |
+ | | {{Pkg|fontconfig}} || 再現性のある FTBFS。マニュアルページ内のタイムスタンプ || none || none || {{No}} |
|- |
|- |
||
− | | {{Pkg|fontforge}} || |
+ | | {{Pkg|fontforge}} || FontForge と一部のライブラリのバイナリの違い || none || none || {{No}} |
|- |
|- |
||
− | | {{Pkg|libakonadi}} || |
+ | | {{Pkg|libakonadi}} || {{ic|usr/share/kdevappwizard/templates/akonadi{resource,serializer}.tar.bz2}} 内のファイルのユーザー/グループ名 || none || none || {{No}} |
|- |
|- |
||
− | | {{Pkg|libbluray}} || |
+ | | {{Pkg|libbluray}} || {{ic|usr/share/java/{libbluray{,-awt}-j2se-1.2.0.jar}} のファイル属性 (?) の違い || none || none || {{No}} |
|- |
|- |
||
− | | {{Pkg|libgee}} || |
+ | | {{Pkg|libgee}} || {{ic|usr/lib/libgee-0.8.so.2.6.1}} のバイナリの違い || none || none || {{No}} |
|- |
|- |
||
− | | {{Pkg|libgtop}} || |
+ | | {{Pkg|libgtop}} || {{ic|/usr/bin/libgtop_server2}} の uname || none || none || {{No}} |
|- |
|- |
||
− | | {{Pkg|libibus}} ||{{ic|/usr/lib/python2.7/site-packages/gi/overrides/IBus.pyc}} |
+ | | {{Pkg|libibus}} || {{ic|/usr/lib/python2.7/site-packages/gi/overrides/IBus.pyc}} と {{ic|.pyo}} には違いがあります || none || none || {{No}} |
|- |
|- |
||
− | | {{Pkg|libjpeg-turbo}} || FTBFS |
+ | | {{Pkg|libjpeg-turbo}} || FTBFS は再現中です。makerepropkg - どこでも多くの違いがあります... || none || none || {{No}} |
|- |
|- |
||
| {{Pkg|liblangtag}} || {{ic|/usr/share/gir-1.0/LangTag-0.6.gir}} || none || none || {{No}} |
| {{Pkg|liblangtag}} || {{ic|/usr/share/gir-1.0/LangTag-0.6.gir}} || none || none || {{No}} |
||
|- |
|- |
||
− | | {{Pkg|libmp4v2}} || |
+ | | {{Pkg|libmp4v2}} || {{ic|usr/include/mp4v2/project.h}} および {{ic|usr/lib/libmp4v2.so.2.0.0}} のタイムスタンプ || none || none || {{No}} |
|- |
|- |
||
− | | {{Pkg|libquvi}} || |
+ | | {{Pkg|libquvi}} || {{ic|libquvi-0.9-0.9.4.so}} のタイムスタンプ || none || none || {{No}} |
|- |
|- |
||
− | | {{Pkg|lirc}} || |
+ | | {{Pkg|lirc}} || yaml ファイルのタイムスタンプ、{{ic|usr/share/lirc/lirc-0.10.1.tar.gz}} には多くのタイムスタンプの違いがあり、再現すると、makerepropkg では見つからない poll() 検出の問題が発生します。 || [https://github.com/bmwiedemann/openSUSE/blob/master/packages/l/lirc/reproducible.patch patch] || none || {{No}} |
|- |
|- |
||
− | | {{Pkg|meson}} || ''.pyc'' |
+ | | {{Pkg|meson}} || ''.pyc'' ファイル、またいくつかのテスト ''.pyc'' ファイルが欠落しています || none || none || {{No}} |
|- |
|- |
||
− | | {{Pkg|r}} || |
+ | | {{Pkg|r}} || ファイル内の多数のタイムスタンプ、gzip タイムスタンプ、{{ic|/tmp/}} 内にランダムに (?) 生成されたパス、バイナリの違い... || none || none || {{No}} |
|- |
|- |
||
− | | {{Pkg|transmission-gtk}} || |
+ | | {{Pkg|transmission-gtk}} || {{ic|usr/bin/transmission-gtk}} の uname、ベンダーの依存関係 (以下を {{ic|uname -r}} 含む miniupncpc を使用してビルドします) || none || none || {{No}} |
|- |
|- |
||
− | | {{Pkg|zabbix-agent2}} || |
+ | | {{Pkg|zabbix-agent2}} || {{ic|/usr/bin/zabbix_agent2}} のタイムスタンプ || none || none || {{No}} |
|- |
|- |
||
− | | {{Pkg|zeitgeist}} || [https://gist.github.com/allanmcrae/01cff033e51d593d3bc841d64221f9fe diff]{{Dead link|2021|11|15|status=404}} |
+ | | {{Pkg|zeitgeist}} || [https://gist.github.com/allanmcrae/01cff033e51d593d3bc841d64221f9fe diff]{{Dead link|2021|11|15|status=404}} {{ic|/usr/lib/libzeitgeist-2.0.so.0.0.0}} の奇妙なテキストの違い || none || none || {{No}} |
|} |
|} |
||
236行目: | 236行目: | ||
{| class="wikitable sortable" |
{| class="wikitable sortable" |
||
+ | ! パッケージ |
||
− | ! Package |
||
− | ! |
+ | ! 問題 |
+ | ! 解決策/パッチ |
||
− | ! Solution/Patch |
||
+ | ! 譲受人 |
||
− | ! Assignee |
||
+ | ! 解決済み |
||
− | ! Solved |
||
|- |
|- |
||
− | | {{Pkg|lib32-keyutils}} || |
+ | | {{Pkg|lib32-keyutils}} || バイナリにはビルド日が含まれます || [https://bugs.archlinux.org/task/76138 proposed] || none || {{No}} |
|} |
|} |
2023年6月24日 (土) 22:18時点における最新版
Arch Linux は core および extra パッケージを常に再構築しており、ステータスページ があります。このページには、不良パッケージのステータスと修正が必要なものが含まれています。
目次
問題
全般的
- ファイル順序の問題と btrfs サイズのバグを解決するには、pacman 5.2 未満でビルドされたすべてのパッケージでリビルドが必要です。ファイルの順序の問題については、影響を受ける extra パッケージがミラーディレクトリで次の 1 つのライナーを実行していることがわかります。
for i in /srv/ftp/extra/os/x86_64/*.pkg.tar.??; do bsdtar -tf $i | grep "^\." > pkg-order sort pkg-order > sort-order if ! diff pkg-order sort-order &>/dev/null; then echo $i; fi rm pkg-order sort-order done
ファイル順序再構築 FTBFS
accounts-qml-module-0.7-2-x86_64.pkg.tar.xz archboot-2019.03-1-any.pkg.tar.xz cmark-0.29.0-1-x86_64.pkg.tar.xz gtk-sharp-2-2.12.45-2-x86_64.pkg.tar.xz guile1.8-1.8.8-7-x86_64.pkg.tar.xz java11-openjfx-11.0.3.u1-1-x86_64.pkg.tar.xz java11-openjfx-doc-11.0.3.u1-1-x86_64.pkg.tar.xz java11-openjfx-src-11.0.3.u1-1-x86_64.pkg.tar.xz java8-openjfx-8.u202-3-x86_64.pkg.tar.xz java8-openjfx-doc-8.u202-3-x86_64.pkg.tar.xz java8-openjfx-src-8.u202-3-x86_64.pkg.tar.xz java-openjfx-13.u14-1-x86_64.pkg.tar.xz java-openjfx-doc-13.u14-1-x86_64.pkg.tar.xz java-openjfx-src-13.u14-1-x86_64.pkg.tar.xz jdk10-openjdk-10.0.2.u13-2-x86_64.pkg.tar.xz jre10-openjdk-10.0.2.u13-2-x86_64.pkg.tar.xz jre10-openjdk-headless-10.0.2.u13-2-x86_64.pkg.tar.xz jsonrpc-glib-3.34.0-1-x86_64.pkg.tar.xz libva-vdpau-driver-0.7.4-4-x86_64.pkg.tar.xz liferea-1.12.7-1-x86_64.pkg.tar.xz linux-atm-2.5.2-6-x86_64.pkg.tar.xz mono-tools-4.2-2-x86_64.pkg.tar.xz npapi-sdk-0.27.2-2-any.pkg.tar.xz nss_ldap-265-7-x86_64.pkg.tar.xz openjdk10-doc-10.0.2.u13-2-x86_64.pkg.tar.xz openjdk10-src-10.0.2.u13-2-x86_64.pkg.tar.xz pam_ldap-186-6-x86_64.pkg.tar.xz portaudio-1:19.6.0-6-x86_64.pkg.tar.xz qtav-1.13.0-1-x86_64.pkg.tar.xz
JAR ファイルを含むパッケージ
JAR には各ファイルの変更タイムスタンプが含まれるため、再現できなくなります。ビルドシステムに応じて、これに使用できるさまざまなソリューションがあります。
Ant
現在、再現可能なビルドはサポートされていません。アップストリーム機能リクエスト を参照してください。
Gradle
再現性のあるビルドをサポートする必要があります すぐに使用できます
Maven
固定タイムスタンプに設定できる project.build.outputTimestamp
プロパティをサポートします。Maven プラグインの最近のバージョンは、このプロパティを尊重して再現可能なアーティファクトを作成します。 このプロパティはプロジェクトの pom.xml
ファイルに設定する必要があります。アップストリームでこれがまだ行われていない場合は、
mvn -Dproject.build.outputTimestamp="$SOURCE_DATE_EPOCH" clean package
プラグインを再現可能なビルドをサポートする最新バージョンに更新するには、プロジェクトの pom.xml
にパッチを適用する必要がある場合があります。再現性のあるビルドへの Maven ガイド で、最低限必要なバージョンや追加の必要な構成オプションなどの詳細情報を確認できます。
パッケージの例 (Maven プラグインのバージョン更新用のパッチを含む): junit-system-rules
OpenJDK jar コマンド
組み込みの OpenJDK jar
プログラムは、SOURCE_DATE_EPOCH
OpenJDK バージョン 15 以降 をサポートします。
strip-nondeterminism
最後の手段として、Debian の [1] を使用すると、JAR を含むさまざまなファイルタイプからファイルタイムスタンプなどの再現不可能なメタデータを削除できます。これは万能薬ではなく (たとえば、ビルドシステムには JAR マニフェストに追加の再現不可能なメタデータが含まれる可能性があり、ストリップ非決定性によりこれらの一部が削除されますが、すべてが削除されるわけではありません)、再現可能なビルドのネイティブサポートがない場合の最後の手段としてのみ使用する必要があります。利用可能:
strip-nondeterminism --timestamp "$SOURCE_DATE_EPOCH"
パッケージ例: pdftk
KDE Kdeveloper プロジェクトファイル
KDE はパッケージアプリテンプレート .tar.bz2 ファイルを作成しますが、再現時に tar ファイルとユーザー ID が異なります。これは再現時のバグである可能性があります。 https://gist.githubusercontent.com/jelly/570313f56ee59be7674ad4cc002232e7/raw/b85536690c48b23ce97650e8db8f0ca18c2dbf1a/gistfile1.txt
The cmake file which generates the issue
Doxygen ドキュメントは、graphviz-2.44.0-2 でビルドされています
graphviz には libpng への依存関係がなかったため、libpng が利用可能になる前にgraphviz がインストールされていたため、dlopen としてマークされていなかったため、ドットで PNG 生成を利用できませんでした。生成ドキュメントとして doxygen に依存し、次の差分を含むすべてのパッケージは再構築が必要です。
│ │ --rw-r--r-- 0 root (0) root (0) 20234 2020-05-16 12:32:36.000000 usr/share/doc/grantlee/classGrantlee_1_1Parser.html │ │ --rw-r--r-- 0 root (0) root (0) 265 2020-05-16 12:32:36.000000 usr/share/doc/grantlee/classGrantlee_1_1Parser__inherit__graph.map │ │ --rw-r--r-- 0 root (0) root (0) 32 2020-05-16 12:32:36.000000 usr/share/doc/grantlee/classGrantlee_1_1Parser__inherit__graph.md5 │ │ --rw-r--r-- 0 root (0) root (0) 3136 2020-05-16 12:32:36.000000 usr/share/doc/grantlee/classGrantlee_1_1Parser__inherit__graph.png │ │ +-rw-r--r-- 0 root (0) root (0) 19961 2020-05-16 12:32:36.000000 usr/share/doc/grantlee/classGrantlee_1_1Parser.html │ │ +-rw-r--r-- 0 root (0) root (0) 598 2020-05-16 12:32:36.000000 usr/share/doc/grantlee/classGrantlee_1_1Parser__inherit__graph.dot
[core]
パッケージ | 問題 | 解決策/パッチ | 譲受人 | 解決済み |
---|---|---|---|---|
audit | FTBFS with linux-headers 5.17+ | proposed | none | No |
dmraid | FTBFS による -Werror=format-security |
proposed upstream on 2022-10-06 | none | No |
gcc-ada | 一部の .ads ファイル内のファイル時間 | none | none | No |
ldns | ソースファイル名を含むバイナリはメイクフラグによって異なります | proposed upstream | none | No |
libverto | /bin/sh = Dash を使用してビルドするときにファイルが見つからない | マージ済み ですがリリースされていません (2021-03 の最新リリース 0.3.2) | none | No |
linux | 署名付きモジュール | none | none | No |
linux-docs | 多くの問題 - 注文、リンク, ... | none | none | No |
linux-headers | /usr/lib/modules/*/build/vmlinux diff[リンク切れ 2021-11-15] |
none | none | No |
linux-lts | linux の場合 | none | none | No |
linux-lts-docs | linux-docs について | none | none | No |
linux-lts-headers | linux-headers について | none | none | No |
nss | shlibsign の /usr/lib/lib{freebl3,freeblpriv3,softokn3}.chk のバイナリの違い |
none | none | No |
perl | タイムスタンプ、ビルド時にエンコードされた uname | none | none | No |
syslinux | FTBFS | proposed in issue | none | No |
[extra]
パッケージ | 問題 | 解決策/パッチ | 譲受人 | 解決済み |
---|---|---|---|---|
abiword | usr/lib/python2.7/site-packages/gi/overrides/Abi.pyc および .pyo |
none | none | No |
accounts-qml-module | .BUILDINFO サイズの問題 - リビルド中の FTBFS |
none | none | No |
amdvlk | usr/lib/amdvlk64.so には多くの違いがあります |
none | none | No |
ant | .jar ファイルの違い | none | none | No |
ant-doc | 大量のタイムスタンプ (javadoc)、および .zip ファイルの違い | none | none | No |
antlr2AUR | usr/share/java/antlr2.jar |
none | none | No |
apparmor | バックアップ配列にファイルを追加するには、並べ替えが必要です。usr/lib/python3.8/site-packages/LibAppArmor/__pycache__/LibAppArmor.cpython-38.pyc |
none | none | No |
asymptote | HTML と情報の日付。PDF ドキュメントの違い (日付?) | none | none | No |
autogen | マニュアルページのタイムスタンプ、ファイル所有権が異なる sr/share/autogen/libopts-42.1.17.tar.gz 、およびバイナリの小さな変更 usr/bin/autogen |
need export MAN_PAGE_DATE=... and configure --enable-timeout=70 | none | No |
bigloo | あちこちにある uname とタイムスタンプ | none | none | No |
breezy | 3.0.2.3-3 は repro と makechrootpkg の両方で再現可能 | tooling issue? | none | No |
brltty | usr/share/java/brlapi.jar |
none | none | No |
check-docs | たくさんの texi2html タイムスタンプ | none | none | No |
chromaprint | usr/bin/fpcalc のバイナリ差分 |
none | none | No |
clisp | IPアドレス; ps ドキュメントのタイムスタンプ、おそらくもっと多く | none | none | No |
colord | プロファイル ID は usr/share/color/icc/colord/{Crayons,x11-colors}.icc で異なり、バイナリの違いは usr/lib/colord で異なります |
none | none | No |
conky | タイムスタンプ (toluapp から) および uname (少なくとも) | none | none | No |
deluge | .pyc file, .egg ファイル | none | none | No |
doxygen-docs | 違いのある多くの PDF | none | none | No |
ecl | uname、タイムスタンプ、gzip、その他多くのバイナリの違い | none | none | No |
eclipse-ecj | .jar ファイル | none | none | No |
efitools | /usr/share/efitools/efi/LockDown.efi バイナリの違いがあります |
none | none | No |
efl | バイナリの違いがたくさんある | none | none | No |
efl-docs | PDF の相違点 (日付を含む) | none | none | No |
emacs | usr/bin/emacs のバイナリの違い |
none | none | No |
extra-cmake-modules | /usr/share/doc/ECM/ExtraCMakeModules.qch の小さな順序の違い |
none | none | No |
firefox | firefox ; PGO? | bug + patch[リンク切れ 2023-05-20] | none | No |
fontconfig | 再現性のある FTBFS。マニュアルページ内のタイムスタンプ | none | none | No |
fontforge | FontForge と一部のライブラリのバイナリの違い | none | none | No |
libakonadi | usr/share/kdevappwizard/templates/akonadi{resource,serializer}.tar.bz2 内のファイルのユーザー/グループ名 |
none | none | No |
libbluray | usr/share/java/{libbluray{,-awt}-j2se-1.2.0.jar のファイル属性 (?) の違い |
none | none | No |
libgee | usr/lib/libgee-0.8.so.2.6.1 のバイナリの違い |
none | none | No |
libgtop | /usr/bin/libgtop_server2 の uname |
none | none | No |
libibus | /usr/lib/python2.7/site-packages/gi/overrides/IBus.pyc と .pyo には違いがあります |
none | none | No |
libjpeg-turbo | FTBFS は再現中です。makerepropkg - どこでも多くの違いがあります... | none | none | No |
liblangtag | /usr/share/gir-1.0/LangTag-0.6.gir |
none | none | No |
libmp4v2 | usr/include/mp4v2/project.h および usr/lib/libmp4v2.so.2.0.0 のタイムスタンプ |
none | none | No |
libquvi | libquvi-0.9-0.9.4.so のタイムスタンプ |
none | none | No |
lirc | yaml ファイルのタイムスタンプ、usr/share/lirc/lirc-0.10.1.tar.gz には多くのタイムスタンプの違いがあり、再現すると、makerepropkg では見つからない poll() 検出の問題が発生します。 |
patch | none | No |
meson | .pyc ファイル、またいくつかのテスト .pyc ファイルが欠落しています | none | none | No |
r | ファイル内の多数のタイムスタンプ、gzip タイムスタンプ、/tmp/ 内にランダムに (?) 生成されたパス、バイナリの違い... |
none | none | No |
transmission-gtk | usr/bin/transmission-gtk の uname、ベンダーの依存関係 (以下を uname -r 含む miniupncpc を使用してビルドします) |
none | none | No |
zabbix-agent2 | /usr/bin/zabbix_agent2 のタイムスタンプ |
none | none | No |
zeitgeist | diff[リンク切れ 2021-11-15] /usr/lib/libzeitgeist-2.0.so.0.0.0 の奇妙なテキストの違い |
none | none | No |
[multilib]
パッケージ | 問題 | 解決策/パッチ | 譲受人 | 解決済み |
---|---|---|---|---|
lib32-keyutils | バイナリにはビルド日が含まれます | proposed | none | No |