「DeveloperWiki:再現可能ビルド」の版間の差分
ナビゲーションに移動
検索に移動
(前書きの訳出) |
(→貢献: 訳出) |
||
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 |
+ | Arch のユーザーは、[https://tests.reproducible-builds.org/archlinux/archlinux.html 継続的再現環境] を見ることで再現可能ビルドの問題に対して貢献することができます。以下に整理したような様々な問題があります。 |
− | * FTBS ( |
+ | * 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' |
||
− | + | パッケージが再現可能ではないことにはいくつかの理由がありますが、掘り下げる前にアップストリームのリポジトリか、[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 |
||
− | + | 継続的再現環境で実行されているコードに興味があれば、始めのビルドコードは [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.