diary/Kojima/2013-09-13
をテンプレートにして作成
[
トップ
] [
新規
|
一覧
|
検索
|
最終更新
|
ヘルプ
|
ログイン
]
開始行:
[[diary/Kojima]]
・Unix/Linuxの魅力(魔力)
Unix/Linux環境の魅力(魔力)はいろいろあるけれど,
個人的に一番便利だと思っているのは、
同じような作業をシェルスクリプトを使ってごく簡単に自動化...
例えば、今、KDE-4.11.1のパッケージをビルドしているのだけ...
Plamo-5.1用に作ったKDE-4.9.5用のビルドスクリプトは揃って...
それらを微調整して4.11.1用にしたい。
Plamoのビルドスクリプトの場合、
バージョン番号等の情報はビルドスクリプトの先頭部分に集め...
ビルド処理を変える必要が無い場合、
そこの数字を書き変えるだけで新しいバージョンにも対応でき...
例えば、kdetoys-4.9.5のビルドスクリプトの先頭部分は、
#!/bin/sh
########################################################...
url='ftp://ftp.kddlabs.co.jp/X/kde/stable/4.9.5/src/kdet...
pkgbase=kdetoys
vers=4.9.5
arch=x86_64
# arch=i586
build=P1
src=kdetoys-4.9.5
OPT_CONFIG=''
DOCS='AUTHORS COPYING COPYING.DOC COPYING.LIB README'
patchfiles=''
compress=txz
########################################################...
こういう風になっているけど、これらの"4.9.5"を"4.11.1"にす...
kdetoys-4.11.1もビルドできるはず。
最初は、/usr/share/doc/ 以下にあるビルドスクリプトを作業...
それぞれのバージョン番号を手作業で修正していたけど、
同じ作業の繰り返しに飽き飽きしてきたので、シェルスクリプ...
#!/bin/sh
ov=4.9.5
nv=4.11.1
txz=$1
pkg=${txz%%.tar.xz}
base=${pkg%%-${nv}}
o_bs="PlamoBuild."$base"-"$ov
n_bs="PlamoBuild."$base"-"$nv
build_script="/usr/share/doc/"$base"-"$ov"/"$o_bs".gz"
echo $txz, $pkg, $base, $o_bs, $build_script
if [ -f $build_script ]; then
cp $build_script ./$n_bs".gz"
gunzip $n_bs".gz"
sed -i -e "s/$ov/$nv/g" $n_bs
fi
こんなスクリプトを kde_conv.sh みたいな名前で保存しておい...
$ ./kde_conv.sh kdetoys-4.11.1.tar.xz
としてやると、/usr/share/doc/PlamoBuild.kdetoys-4.9.5.gz を
PlamoBuild.kdetoys-4.11.1.gzとしてコピーして展開し、
内部の"4.9.5"というバージョン番号を"4.11.1"に書き変えてし...
という仕組み。
こうすれば、古いビルドスクリプトをコピーして、手作業で修...
という手順がスクリプト一つ実行するだけで済むので、
同じ作業を延々と繰り返すパッケージ作り作業がずいぶん楽に...
GUI環境だと、同じ作業が100回必要だと100回同じ作業をしなけ...
CUI環境だと、同じ作業を10回もやると飽きてきて、
本来の作業よりもこういうチート技の開発に走るのだけど往々...
同じ作業を100回やるよりも余計に時間がかかったりすることも...
- このあたり、GUI vs CUI というわけではなく、ソフトウェア...
- ごもっともです。 -- [[Plamo大好]] &new{2013-09-18 (水) ...
終了行:
[[diary/Kojima]]
・Unix/Linuxの魅力(魔力)
Unix/Linux環境の魅力(魔力)はいろいろあるけれど,
個人的に一番便利だと思っているのは、
同じような作業をシェルスクリプトを使ってごく簡単に自動化...
例えば、今、KDE-4.11.1のパッケージをビルドしているのだけ...
Plamo-5.1用に作ったKDE-4.9.5用のビルドスクリプトは揃って...
それらを微調整して4.11.1用にしたい。
Plamoのビルドスクリプトの場合、
バージョン番号等の情報はビルドスクリプトの先頭部分に集め...
ビルド処理を変える必要が無い場合、
そこの数字を書き変えるだけで新しいバージョンにも対応でき...
例えば、kdetoys-4.9.5のビルドスクリプトの先頭部分は、
#!/bin/sh
########################################################...
url='ftp://ftp.kddlabs.co.jp/X/kde/stable/4.9.5/src/kdet...
pkgbase=kdetoys
vers=4.9.5
arch=x86_64
# arch=i586
build=P1
src=kdetoys-4.9.5
OPT_CONFIG=''
DOCS='AUTHORS COPYING COPYING.DOC COPYING.LIB README'
patchfiles=''
compress=txz
########################################################...
こういう風になっているけど、これらの"4.9.5"を"4.11.1"にす...
kdetoys-4.11.1もビルドできるはず。
最初は、/usr/share/doc/ 以下にあるビルドスクリプトを作業...
それぞれのバージョン番号を手作業で修正していたけど、
同じ作業の繰り返しに飽き飽きしてきたので、シェルスクリプ...
#!/bin/sh
ov=4.9.5
nv=4.11.1
txz=$1
pkg=${txz%%.tar.xz}
base=${pkg%%-${nv}}
o_bs="PlamoBuild."$base"-"$ov
n_bs="PlamoBuild."$base"-"$nv
build_script="/usr/share/doc/"$base"-"$ov"/"$o_bs".gz"
echo $txz, $pkg, $base, $o_bs, $build_script
if [ -f $build_script ]; then
cp $build_script ./$n_bs".gz"
gunzip $n_bs".gz"
sed -i -e "s/$ov/$nv/g" $n_bs
fi
こんなスクリプトを kde_conv.sh みたいな名前で保存しておい...
$ ./kde_conv.sh kdetoys-4.11.1.tar.xz
としてやると、/usr/share/doc/PlamoBuild.kdetoys-4.9.5.gz を
PlamoBuild.kdetoys-4.11.1.gzとしてコピーして展開し、
内部の"4.9.5"というバージョン番号を"4.11.1"に書き変えてし...
という仕組み。
こうすれば、古いビルドスクリプトをコピーして、手作業で修...
という手順がスクリプト一つ実行するだけで済むので、
同じ作業を延々と繰り返すパッケージ作り作業がずいぶん楽に...
GUI環境だと、同じ作業が100回必要だと100回同じ作業をしなけ...
CUI環境だと、同じ作業を10回もやると飽きてきて、
本来の作業よりもこういうチート技の開発に走るのだけど往々...
同じ作業を100回やるよりも余計に時間がかかったりすることも...
- このあたり、GUI vs CUI というわけではなく、ソフトウェア...
- ごもっともです。 -- [[Plamo大好]] &new{2013-09-18 (水) ...
ページ名: