rpm 作成中 [Vine Linux]
しばらく前から gambas2 と zenity (とシェルスクリプト)の
組み合わせで作り始めていた、外部アプリケーションの
インストール用ツール。
やっとこさ rpm パッケージを作成するところまでに、
なんとかこぎ着けることが出来た。
もうちょっと細かい調整とかをして、最低限 TestPkg に
放り込める程度になったら put する予定。
ということで、現状の最終形の画面はこんな感じ。
# にしても、zenity のプログレスバー画面で、キャンセルボタン
# が押されたときの制御が予想外にしんどかった……。
組み合わせで作り始めていた、外部アプリケーションの
インストール用ツール。
やっとこさ rpm パッケージを作成するところまでに、
なんとかこぎ着けることが出来た。
もうちょっと細かい調整とかをして、最低限 TestPkg に
放り込める程度になったら put する予定。
ということで、現状の最終形の画面はこんな感じ。
# にしても、zenity のプログレスバー画面で、キャンセルボタン
# が押されたときの制御が予想外にしんどかった……。
TestPkg に put されるのを楽しみにしています!
> # にしても、zenity のプログレスバー画面で、キャンセルボタン
> # が押されたときの制御が予想外にしんどかった……。
私も使い始めたころ悩みました.
某社内でも zenity --progress を使っていますが,パイプで渡して,こんな感じでやっています.
(
sleep 0.5
echo "10" ; sleep 0.5
echo "# スキャン中...(しばらくかかります)" ; sleep 0.5
hogehogescan
echo "50" ; sleep 0.5
echo "# データベースを更新中..."; sleep 0.5
hogehogeupdatedb
echo "60" ; sleep 0.5
foofoo
echo "70" ; sleep 0.5
echo "# ログチェック中..."; sleep 0.5
hogelog
echo "80" ; sleep 0.5
echo "# $0をロック解除中..."; sleep 0.5
echo "90" ; sleep 0.5
echo "# データベースを更新しました"; sleep 0.5
echo "95" ; sleep 0.5
echo "100"; sleep 1
) | zenity --progress \
--title "${NAME}" \
--text "$0をロック中..." \
--auto-close
RETVAL=$?
[ "$RETVAL" = "1" ] && \
zenity --error --title "${NAME}" \
--text "データベースの更新に失敗しました"
by munepi (2009-03-05 14:34)
今回は wget | sed | zenity と3段階をパイプでつないでいて、しかもキャンセルボタンが押されたときには wget を kill しなくてはならなかったので、相当悩みました。
ただイマイチ無駄な処理をしている気もするので、一度実物を見てもらえると助かります。
とりあえず TestPkg には今さっき put しておきましたので;;
by kazu (2009-03-06 00:36)