Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

OSS Gateワークショップ2016-01-30: knokmki612: ksh: 作業ログ #9

Closed
knokmki612 opened this issue Jan 30, 2016 · 21 comments
Closed

Comments

@knokmki612
Copy link
Member

作業ログは、参加者が、このワークショップを通して得るものをより増やすために重要になります。なぜなら作業ログがメンターからのフィードバックをより充実させるからです。

作業ログを元にメンターと「ふりかえり」をするタイミングがあります。「ふりかえり」では次のことをします。

  • 参加者は作業ログの内容を順にメンターに説明する。
  • メンターは説明を聞いて参加者にフィードバックをする。

メンターは次のようなフィードバックをします。これは、参加者とは違う視点から参加者の行動を観察することおよびメンターの経験があるからできることです。(「ふりかえり」の前にこんなフィードバックをよろしくお願いします!とお願いすると効果が高まるので実践してみましょう。)

  • 参加者が気づかずにやっていたよい行動に気づくきかっけを与え、今後もその行動を継続するように促します。
  • 参加者が困っていることについて、解決策を一緒に考えてくれます。
  • 適切な質問をして参加者が整理できていない行動や考えを整理してくれます。
  • 参加者が「問題」だと認識していないこと(「問題発見」は難しい!)をメンターの視点から「問題」だと見つけてくれます。「問題」がはっきりしたら直しましょう。
  • 参加者が次にどの方向に進めばよいかを整理してくれます。

このように、参加者の作業をメンター視点で一緒に整理し、参加者の今後の行動に活かす活動がここでいう「ふりかえり」です。そのため、「参加者にとって」ログに残すべきかどうか、という視点ではなく、「とりあえずログに残す」という視点でログを残してください。これは、参加者が重要だと判断しなくてもメンターの視点から見たら大事なこともあるからです。

ログに残すときは次のようなときです。

  • 違う作業を始めたとき(インストールを始めた、動作確認を始めた、テストを始めた、とか)
  • 詰まったとき(インストール時にエラーがでた、ビルドが失敗した、とか)
  • issueを出したとき
  • pull requestを出したとき

ログに残すことは次のことです。「備考」以外は作業の邪魔にならないように一言でよいです。備考は作業に役立つので必要な分だけ書いてください。

  • 作業(やること、やっていること、やったこと。)
  • 思っていること(そのときどう思っているか。)
  • 備考(必要な付加情報。)

ログはコメントとして追記していってください。テンプレートは次の通りです。

* 作業(ここにやること、やっていること、やったことを書く)
* 思っていること:(今どう思っているかを書く)

備考:(必要なら必要なだけ書く。必要ないなら書かなくてもよい。)

例1(備考なし):

* 作業:インストールを始めた
* 思っていること:ドキュメント通りに進めれば大丈夫だろう

例2:

* 作業:インストールが失敗した
* 思っていること:ドキュメントに手順が足りない?

備考:エラーメッセージは次の通り

```text
XXX is not found
```

必要なファイルが足りないのかなぁ。
@knokmki612
Copy link
Member Author

ksh-93.20120229のビルドがコケたので、それを修正するのが今日の目標です。

ログを置いておきます

https://gist.github.com/knokmki612/3daa86e496a31629f734

@knokmki612
Copy link
Member Author

自分の環境(uname -a)

Linux gentoo 4.1.15-gentoo-r1 #1 SMP Sat Jan 23 13:56:48 JST 2016 x86_64 Intel(R) Core(TM) i5-3337U CPU @ 1.80GHz GenuineIntel GNU/Linux

作業: emerge -av ksh をしたら駄目だった
思ったこと: ソースのMakefileとかが駄目なのか?ebuildが駄目なのか?

@knokmki612
Copy link
Member Author

作業: インストールしようとしていたkshのバージョンが93.20120229だったので、ebuildを見てみた

https://gist.github.com/knokmki612/c5e1ef0b093d81c4386f

思ったこと: # Bug 238906 というコメントがあったので、検索したら https://bugs.gentoo.org/show_bug.cgi?id=238906 というページがあった。クロスコンパイルがほにゃららという内容で、自分の件と関係があるのだろうか

@knokmki612
Copy link
Member Author

作業: 弄ったebuildをローカルで動かす方法を検索する

@knokmki612
Copy link
Member Author

作業: 本家のドキュメントで調べている https://wiki.gentoo.org/wiki/Ebuild

@knokmki612
Copy link
Member Author

調べたいこと: 自分で改変したebuildを動かしたい
方法

  • 自分のOverlayを作ってその中にebuildを置く?

@knokmki612
Copy link
Member Author

作業: https://wiki.gentoo.org/wiki/Basic_guide_to_write_Gentoo_Ebuilds ebuildを書くガイドのページを発見したら、ebuildコマンドを使っているので、それでkshのebuildが試せるかテスト

@knokmki612
Copy link
Member Author

作業: ebuildコマンドで、setupなどのサブコマンドを使って順番にテストできることが分かった

@knokmki612
Copy link
Member Author

作業: ebuildコマンドはサブコマンドを複数書けば、順番にテストしてくれることが分かった

@knokmki612
Copy link
Member Author

作業: 予想通りebuildで試したら、 ksh-93.20120229.ebuild がコケた

@knokmki612
Copy link
Member Author

気づいたこと: 最初のemerge -av と ebuild、どちらも '/bin/sh: line 3: nmake: command not found
' というメッセージがでてコケている

@knokmki612
Copy link
Member Author

作業: ホームディレクトリに置いたebuildを試そうとしたら、なんか怒られた

$ sudo ebuild ksh-93.20140625.ebuild setup clean fetch digest digest unpack compile test preinst
Appending / to PORTDIR_OVERLAY...
!!! Repository 'x-' is missing masters attribute in '/metadata/layout.conf'
!!! Set 'masters = gentoo' in this file for future compatibility
ebuild: /home/kimiaki/ksh-93.20140625.ebuild: does not seem to have a valid PORTDIR structure

@knokmki612
Copy link
Member Author

作業: ebuildを改変していたので、元に戻して再度試したが、同じように怒られた
思ったこと: ホームディレクトリでebuildを実行のが駄目っぽい

@knokmki612
Copy link
Member Author

作業: 本来のパスである/usr/portage/app-shells/ksh/ でebuildを改変してみたら、ファイルサイズをチェックしてはねられた
思ったこと: Manifestファイルも弄ればよさそう

@knokmki612
Copy link
Member Author

作業: ebuild [ebuildファイル] manifest を実行すれば変更された

@knokmki612
Copy link
Member Author

気づいたこと: 最初のemerge -av と ebuild、どちらも '/bin/sh: line 3: nmake: command not found
' というメッセージがでてコケている

作業: 新しいバージョンのebuildで古いソースを持ってきてビルドするように試したら、同じようにコケた
気づいたこと: どうやらebuildの問題ではなく、ソースの問題っぽい

@knokmki612
Copy link
Member Author

まとめた文章:

kshのビルドに失敗しました。kshのバージョンは93.2012-02-29で、環境はGentooのamd64です。

emerge -av ksh

このようなコマンドを実行したところ、

+ nmake --base --compile --file=/var/tmp/portage/app-shells/ksh-93.20120229/work/src/cmd/nmake/Makerules.mk
/bin/sh: line 3: nmake: command not found
mamake [cmd/nmake]: *** exit code 127 making Makerules.mo
mamake: *** exit code 1 making cmd/nmake

というメッセージが出て、ビルドが止まります(*1)。何度やってもおなじ結果で再現します。

kshのソースとebuildの組み合わせを試してみました。

組み合わせでの成否としては、以下のとおりになります。

  • kshのバージョン: 93.2012-02-29 と ksh-93.20120229.ebuild → 失敗
  • kshのバージョン: 93.2014-06-25 と ksh-93.20140625.ebuild → 成功
  • kshのバージョン: 93.2012-02-29 と ksh-93.20140625.ebuild を編集したもの → 失敗

編集というのは、具体的にはksh-93.20140625.ebuildに対して、ソースだけ93.2012-02-29のものを取得するようにしてみました。

--- ksh-93.20140625.ebuild.bak  2016-01-30 12:18:36.000310685 +0900
+++ ksh-93.20140625.ebuild  2016-01-30 12:19:24.753312678 +0900
@@ -9,7 +9,7 @@
 DESCRIPTION="The Original Korn Shell, 1993 revision (ksh93)"
 HOMEPAGE="http://www.kornshell.com/"

-KSH_PV=${PV:3:4}-${PV:7:2}-${PV:9:2}
+KSH_PV=2012-02-29

 SRC_URI="https://dev.gentoo.org/~floppym/distfiles/INIT.${KSH_PV}.tgz
    https://dev.gentoo.org/~floppym/distfiles/ast-base.${KSH_PV}.tgz"

portageのバージョンは以下です。

 $ emerge -pv portage

These are the packages that would be merged, in order:

Calculating dependencies... done!
[ebuild   R    ] sys-apps/portage-2.2.26::gentoo  USE="(ipc) xattr -build -doc -epydoc (-selinux)" LINGUAS="-ru" PYTHON_TARGETS="python2_7 python3_4 (-pypy) -python3_3 (-python3_5)" 0 KiB

Total: 1 package (1 reinstall), Size of downloads: 0 KiB
 $

この件について、安定バージョンの変更か、=app-shells/ksh-93.20120229に対する修正をお願いいたします。

*1 ビルドした際のログのリンクを置いておきます。 https://gist.github.com/knokmki612/3daa86e496a31629f734

@knokmki612
Copy link
Member Author

I failed to build stable version of ksh package (93.20120229). I run Gentoo amd64.
I executed this command and get message as bellow :
$ emerge -av ksh

(snip)

  • nmake --base --compile --file=/var/tmp/portage/app-shells/ksh-93.20120229/work/src/cmd/nmake/Makerules.mk
    /bin/sh: line 3: nmake: command not found
    mamake [cmd/nmake]: *** exit code 127 making Makerules.mo
    mamake: *** exit code 1 making cmd/nmake

After build stop(*1). I repeat this work, but it reproduced.

I tried combination of ksh's source and ebuilds.

・source version of ksh: 93.2012-02-29, ksh-93.20120229.ebuild → fail
・source version of ksh: 93.2014-06-25, ksh-93.20140625.ebuild → success
・source version of ksh: 93.2012-02-29, ksh-93.20140625.ebuild(edited) → fail

"edited" means that I changed an ebuild file to fetch source version as follows:

--- ksh-93.20140625.ebuild.bak 2016-01-30 12:18:36.000310685 +0900
+++ ksh-93.20140625.ebuild 2016-01-30 12:19:24.753312678 +0900
@@ -9,7 +9,7 @@
DESCRIPTION="The Original Korn Shell, 1993 revision (ksh93)"
HOMEPAGE="http://www.kornshell.com/"

-KSH_PV=${PV:3:4}-${PV:7:2}-${PV:9:2}
+KSH_PV=2012-02-29

 SRC_URI="https://dev.gentoo.org/~floppym/distfiles/INIT.${KSH_PV}.tgz
     https://dev.gentoo.org/~floppym/distfiles/ast-base.${KSH_PV}.tgz"

the version of portage:

$ emerge -pv portage

These are the packages that would be merged, in order:

Calculating dependencies... done!
[ebuild R ] sys-apps/portage-2.2.26::gentoo USE="(ipc) xattr -build -doc -epydoc (-selinux)" LINGUAS="-ru" PYTHON_TARGETS="python2_7 python3_4 (-pypy) -python3_3 (-python3_5)" 0 KiB

Total: 1 package (1 reinstall), Size of downloads: 0 KiB
$

Could you fix this cause or change stable version to working one?

*1 Here is the link of the build log:
https://gist.github.com/knokmki612/3daa86e496a31629f734

@knokmki612
Copy link
Member Author

作業:報告した

https://bugs.gentoo.org/show_bug.cgi?id=573354

@knokmki612
Copy link
Member Author

作業:kshに関する別の報告を発見した https://bugs.gentoo.org/show_bug.cgi?id=568294

@kou
Copy link
Member

kou commented Jan 30, 2016

おつかれさまでした!

@kou kou closed this as completed Jan 30, 2016
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants