「DeveloperWiki:再現可能ビルド」の版間の差分

提供: ArchWiki
ナビゲーションに移動 検索に移動
(前書きの訳出)
(→‎貢献: 訳出)
9行目: 9行目:
 
==貢献==
 
==貢献==
   
  +
Arch Linux は現在 100% 再現可能になるように作業しています。厳密な再現可能ビルドの定義とその利益は [https://reproducible-builds.org/ プロジェクトのウェブサイト] を参照してください。
Arch Linux is currently in the process of having it 100% reproducible, for the exact definition of reproducible builds and it's benefits take a look at the [https://reproducible-builds.org/ project website].
 
   
Arch users can help contribute to Reproducible Build issues by looking at the [https://tests.reproducible-builds.org/archlinux/archlinux.html continuous reproducing environment]. There are various issues which can be sorted out:
+
Arch のユーザーは、[https://tests.reproducible-builds.org/archlinux/archlinux.html 継続的再現環境] を見ることで再現可能ビルドの問題に対して貢献することができます。以下に整理したような様々な問題があります。
   
* FTBS (failed to build from source): reproduce the build failure locally and create a bug report if the package cannot be [[DeveloperWiki:クリーンな chroot 内でビルドする|built from a clean chroot]] (extra-x86_64-build or multilib-build).
+
* FTBS (ソースからのビルドに失敗): ビルドの失敗を手元で再現して、[[DeveloperWiki:クリーンな chroot 内でビルドする|クリーンな chroot 内でビルド]] (extra-x86_64-build multilib-build) できない場合はバグレポートを作成する。
  +
* ソースのダウンロードの失敗、問題 (makepkg -o -d) を再現して Arch バグトラッカーにバグレポートを作成する。
* Failed to download sources, reproduce the issue (makepkg -o -d) and create a bug report on the Arch bugtracker.
 
  +
* 再現に失敗する。手元で {{pkg|reprotest}} を使ってパッケージを再現できます。全てのバリエーションが使用可能ではないことに注意してください。シンプルな時間に関連するテストには:
* Failed to reproduce. Locally you can reproduce packages using {{pkg|reprotest}}. Note that not all variations can be used. For simple time related testing:
 
 
reprotest --variations '+time' 'sudo extra-x86_64-build' '*.pkg.tar.xz'
 
reprotest --variations '+time' 'sudo extra-x86_64-build' '*.pkg.tar.xz'
There might be various reasons for a package to not be reproducible, but before digging in take a look at the upstream repository or the reproducible status in [https://tests.reproducible-builds.org/debian/reproducible.html Debian]
+
パッケージが再現可能ではないことにはいくつかの理由がありますが、掘り下げる前にアップストリームのリポジトリか、[https://tests.reproducible-builds.org/debian/reproducible.html Debian] の再現ステータスを確認してください。
  +
* テストの実行に失敗、それらの失敗はテスト環境に大きく依存しています。ほとんどの場合 LANG=C にすることで、Arch は LANG=C.UTF-8 をサポートしていません
* Failed to run tests, these failures are heavily on the testing env. Most likely due to to LANG=C being set and Arch not supporting LANG=C.UTF-8
 
   
If you are interested in the code which runs the continuous reproducing environment, the first build code starts here on [https://salsa.debian.org/qa/jenkins.debian.net/blob/master/bin/reproducible_build_archlinux_pkg.sh#L115 salsa]
+
継続的再現環境で実行されているコードに興味があれば、始めのビルドコードは [https://salsa.debian.org/qa/jenkins.debian.net/blob/master/bin/reproducible_build_archlinux_pkg.sh#L115 salsa] から始まります。
   
 
==やることリスト==
 
==やることリスト==

2020年8月6日 (木) 13:37時点における版

再現可能ビルドのミーティングと作業中のドキュメントのリストです。

再現可能ビルドの結果

再現可能なパッケージ

貢献

Arch Linux は現在 100% 再現可能になるように作業しています。厳密な再現可能ビルドの定義とその利益は プロジェクトのウェブサイト を参照してください。

Arch のユーザーは、継続的再現環境 を見ることで再現可能ビルドの問題に対して貢献することができます。以下に整理したような様々な問題があります。

  • FTBS (ソースからのビルドに失敗): ビルドの失敗を手元で再現して、クリーンな chroot 内でビルド (extra-x86_64-build や multilib-build) できない場合はバグレポートを作成する。
  • ソースのダウンロードの失敗、問題 (makepkg -o -d) を再現して Arch バグトラッカーにバグレポートを作成する。
  • 再現に失敗する。手元で reprotest を使ってパッケージを再現できます。全てのバリエーションが使用可能ではないことに注意してください。シンプルな時間に関連するテストには:
 reprotest --variations '+time' 'sudo extra-x86_64-build' '*.pkg.tar.xz' 

パッケージが再現可能ではないことにはいくつかの理由がありますが、掘り下げる前にアップストリームのリポジトリか、Debian の再現ステータスを確認してください。

  • テストの実行に失敗、それらの失敗はテスト環境に大きく依存しています。ほとんどの場合 LANG=C にすることで、Arch は LANG=C.UTF-8 をサポートしていません

継続的再現環境で実行されているコードに興味があれば、始めのビルドコードは salsa から始まります。

やることリスト

  • Arch Linux Archive cleanup script
  • Arch Linux Reproducible script
  • A script to locally reproduce an installed package
  • Resolve reproducible build issues
  • Documentation about reproducing a build

Arch の再現可能ビルドのアップデート 09-12-2018

Posted to the rb-general mailing list.

10-01-2018 のミーティングのアジェンダ

  • UTF-8 failures with Python.
    There are a lot of reproducible build issues due to the lack of LANG=$lang-UTF-8. Do we need to explicitly set the LANG in the PKGBUILD
    See for example https://tests.reproducible-builds.org/archlinux/community/python-cssselect2/build1.log
  • Package disorderfs
    Not high important right now, I have added it on my todolist. This could be used later in combination with the reproducible build script
  • Pacman release
    How do we convince the Pacman team to create a new release, are there any known blockers they waiting on?
  • Reproducible build script progress
    Discuss what the script exactly should do, create an RFC? To describe it's functionality.
    FIXME: add issues I encountered.
  • Arch Linux Archive: Do not remove packages mentioned in BUILDINFO file
    There is currently no script to remove old packages from the archive, it is not sure how long we want to keep old packges
    Sangy was working on this if I recall correctly, what is the status? poc script
  • Write documentation what this script should do. (Specification)
  • Killed builds
    Someone should investigate this, how do we reproduce this locally? Hints?
  • SSL verification issues
    How do we circumvent SSL issues from reproducing a package locally which was build earlier, when the SSL certificate was valid. HG and SVN are still left to be fixed.
  • Create a public to-do list
    We should get more people in to work on reproducible builds, how can we guide them and where do we keep track of the progress made and issues which require attention.

The meeting minute can be seen here[リンク切れ 2018-11-04].