DEXCS2013 for OpenFOAM(R) リリースノート

DEXCS for OpenFOAM(R) は、OpenFOAMと、これをより簡単・高度に活用できるようにする為の様々なツールをすべてインストール済のオール・イン・ワンパッケージで、誰でも簡単・即使えるようにしたマシンイメージ(isoファイル)です。

範囲を選択_999(280)

DEXCS2013では、

  • OpenFOAMやその他の組み込みツールのヴァージョンアップに対応
  • 初心者向けのランチャーは、ほぼ機能開発が完了したとして、国際化対応に向けての英語版(翻訳は未熟ですが・・・)での動作も可能にした
  • DEXCS2011から搭載するようになった中級者向けツールの機能強化を図りました。

なお、DEXCS2012までは、32/64bit版がありましたが、DEXCS2013からは、64bit版のみです。

インストールと利用法

範囲を選択_161

詳しくはこちら資料はDEXCS2012のものですが、DEXCS2013でも画面イメージが異なるのみで同じです)2013/10/22更新

  • マシンイメージなので、DVDにイメージ書き込みすれば、DVDから起動してそのまま利用することができます。 (DEXCS初体験の人はこのライブDVDとして「まずは使ってみる」方法をお薦めします。)
  • 起動後にインストール機能により、HDD等に直接インストールできる上、使用するユーザー名等を選択することができます。
  • VMWare Playerや、VirtualBox等の仮想環境で起動して、仮想環境を作成することも簡単です。
    • VirtualBoxにインストールする方法は、こちらに詳しく記されています
  • 基本的に、DEXCS2011でやった方法と同じですが、同じやり方が通用しない部分が一部あるので、DEXCS2011の利用経験者はご注意のほど。

同梱プログラム

範囲を選択_999(281)

OSはLinux Mint13

といっても、ベースはUbuntu-12.04なので、アプリケーションのインストール方法などは、ubuntuのそれと全く同じです。違うのはデスクトップのGUI環境だけです。
標準のターミナル、ファイルマネージャ、テキストエディタがubuntuとは異なりますが、DEXCSランチャーやTreeFoamは、ubuntuの標準ツールを使用することを前提に作られているので、ubuntu互換ツールとして起動できるようにしてあります。

その他のドキュメントについて

    • DEXCSランチャーのヘルプメニューを参照下さい。
    • 本当に初めて使う人は、「ランチャーの使い方」-「まずは使ってみる」をご覧下さい。
    • 「ランチャーの使い方」-「形状作成」にて、Swiftツールの使い方を概略説明しています。
    • 「ランチャーの使い方」-「メッシュ」「計算実行」「結果処理」を理解できるようになると、OpenFOAMの基本的なファイル構造を理解できたことにもなります。
    • 以上は動画チュートリアルになっていますが、「フラッシュプレーヤー」を変更して参照することを強くお勧めします。変更方法は、最下段の「フラッシュプレーヤーの変更方法」をご覧ください。
    • TreeFoamの実践的な使用方法

 

Remastersys から Relinux

DEXCSで、OSを含めたisoイメージを作成するのに、これまでRemastersys を使用してきましたが、とうとう開発を止めるとアナウンスされてしまいました。1年半ほど前に同じような事態になって、その時は自分を含めて多くのユーザーからの要望(少ないながらもDonationさせていただきました)もあって再開してくれたのですが。しかし、今回はどうにもならないみたいです。

さて、困った・・・ということなんですが、調べてみると代替の仕組みもあるもので、ズバリ

What are the Alternatives For RemasterSys?!

なる記事を見つけることができました。

これによれば、表題のRelinuxもしくは、 Ubuntu Builderが使えそうだ、となって早速試してみた結果、Remastersys の後継として、Relinuxを選択したという次第。

ただ、上の参照先記事は情報が古く、インストール方法や使用方法がよくわからないなどあったので、ここに自分がやった方法を記しておきます。

入手とインストール方法

入手先は、https://launchpad.net/relinux

現在はdebパッケージでダウンロードできるので、ダウンロードしたら、ダブルクリックするだけで、インストールが完了し、システムメニューから起動できるようになる。

範囲を選択_414

 

 

範囲を選択_415範囲を選択_408

 

起動失敗

上記メニューから、すんなり起動できるかと思いきや、

splash_light

一瞬画面が出て、すぐ終わってしまう。こういう時は、コンソールで起動してみる。

範囲を選択_416すると、何やらエラーメッセージがたくさん出てきた。

範囲を選択_417

 

UnicodeDecodeError: ‘ascii’ codec can’t decode byte 0xe3

あたりでググってみると・・・たとえば、こんなページが引っ掛かった。

http://tatsushim.blogspot.jp/2011/09/python-unicodedecodeerror-ascii-codec.html

要するに、デフォルトのエンコーディングがasciiなってるらしいのでそれをutf-8に変えれば良いということらしい。

DEXCS(LinuxMint13)の場合、デフォルトのsite.py は、

/usr/lib/python2.7/site.py

になるので、これを変更する。

範囲を選択_418

 

使用方法

起動に成功すれば、後はボタンを順番に押していくだけ。色々とオプションがあるようですが、よくわかりません。

範囲を選択_409

範囲を選択_410

 

 

範囲を選択_411

範囲を選択_413

作成が完了すると、/home/relinux/ の下にisoイメージファイルと、md5チェックサムファイルが出来ているはずです。

範囲を選択_419

 

作成所要時間は数10分といったところでしょうか。Remastersysの場合とほとんど変わりません。

ライブDVDの起動

作成したisoイメージを使ってライブDVDを起動した際の起動画面は以下のようになります。

範囲を選択_420DEXCS2013 for OpenFOAM(R) にて、まもなく公開です。

 

 

 

DEXCSを外付けHDD(USBドライブ)で利用上の注意点

DEXCSはベースOSがLinuxなので、

  1. 専用マシンにインストールして使用
  2. 通常利用のWindowsマシンとは別ドライブにインストールして、起動時に切り替えて使用
  3. 仮想マシンプレーヤー(VMWarePlayerや、VirtualBOXなど)上で使用

といった使用方法があり、これまで2の方法、しかもインストール先を表題のUSBで接続する外付けHDDにインストールすることが一番シンプルだろうと、推奨してきておりました。

ただ、大きな会社だと、セキュリティの問題でUSBドライブを使えないだとかあって、現実にはそういう利用方法に関する実績も多くはなかったようで、これまでその利用方法に関するトラブルは、ブートセレクタに関する問題以外は聞いたことはありませんでした。

しかし、筆者が最近購入したUSBドライブ(アイ・オー・データ機器製、HDPX-UT500)では、うまく起動出来なかったこともあり、必ずしもこの方法を推奨できないとなったので、ここにその注意点を記しておくこととしました。

結論的に、現時点で、上記の機器はLinuxの起動ドライブとしては使用できません。使用するマシンやインストールするLinuxも色々変えて実施してみましたが駄目でした。メーカーサポートにも問い合わせてみましたが、「Linuxに関するサポートはしない」ということでバッサリでした。

これまで、少なくとも筆者の環境ではUSBドライブにインストール出来て、それで起動できなかったということはありませんでした。これが上記の機器に固有の現象なのか、類似の機器で起こりうる現象なのかまでは判っておりませんが。これまではUSBといってもUSB2であったのが、上記機器はUSB3なので、そちらの問題であった可能性も捨て切れません。

以下、あれこれ丸二日間くらいかけての苦心譚ですが、興味のある方、もしくは類似のトラブルでお困りの方に向けてのお話です。

Boot-Repair

インストールしたUSBドライブで起動すると、、、

範囲を選択_054BusyBox v1.18.5 でググると、割と簡単にBoot-Repairというツールにたどり着く。これを使えば良さそうだ、ということで、

ここで、Recommended repair をやったのが大失敗。修復されるのは、USBドライブのブートローダーでなく、起動したパソコン本体のブートローダーであったということです。その事に気づかないまま、これをやってうまく行かなかったので、あれこれやっているうちに、おかげで1台のパソコンは起動不能になり、全再インストールを余儀なくさせられました。

ようやく、この注意点に気づいて、Advanced options を使うなり、あげくの果てに、HDDをすべて取り外したパソコンを用意して、そのパソコンを使って作業するなりやってみたが、結局駄目。状況は少し進展して、ブートセレクタは起動するようになったものの、インストールしたLinuxを起動しようとすると。。。

範囲を選択_055

となって、エラーの原因が特定された(/dev/disk/…以下の、ドライブ情報が存在しない)ということで、進展はあったものの、これ以上先へ進めませんでした。一応、それでも駄目な場合には、ご連絡。。。とあったので、メールは出しておきましたが、どうなることやら。

その他、マシンによっては、

範囲を選択_057

 

というメッセージで起動できない場合があって、このメッセージでググると、これは日本語情報も多く、大抵は

>set prefix=(h0,***)/boot/grub
>insmod (h0,***)/boot/grub/normal.mod

という方法で直せるというものでしたが、

範囲を選択_058というように、/boot/の下に何も存在しないとなって、この方法も使えませんでした。

 

DEXCSのインストールサービス

かようなトラブルにもめげずに、OCSE^2のコンサル事業の1アイテムとして、DEXCS for OpenFOAM(R) の他、お客様ご要望のオープン系ツール(Dakota、Salome-Mecaなど)をインストール済の外付けUSBドライブの販売もやっております。

価格は搭載ツールの内容に応じて要相談ですが、USBドライブの実売価格に数万円〜10万円程度の上乗せでやらせていただきます。ご希望のお客様は申し付け下さい。

 

 

DEXCS2012 for OpenFOAM(R) リリースノート

DEXCS for OpenFOAM(R) は、OpenFOAMと、これをより簡単・高度に活用できるようにする為の様々なツールをすべてインストール済のオール・イン・ワンパッケージで、誰でも簡単・即使えるようにしたマシンイメージ(isoファイル)です。

DEXCS2012では、OSやOpenFOAMのヴァージョンアップに対応、初心者向けのランチャーをより簡単にするとともに、DEXCS2011から搭載するようになった中級者向けツールの機能強化を図りました。

インストールと利用法

詳しくはこちら

  • マシンイメージなので、DVDにイメージ書き込みすれば、DVDから起動してそのまま利用することができます。 (DEXCS初体験の人はこのライブDVDとして「まずは使ってみる」方法をお薦めします。)
  • 起動後にインストール機能により、HDD等に直接インストールできる上、使用するユーザー名等を選択することができます。
  • VMWare Player等の仮想環境で起動して、仮想環境を作成することも簡単です。
  • 基本的に、DEXCS2011でやった方法と同じですが、同じやり方が通用しない部分が一部あるので、DEXCS2011の利用経験者はご注意のほど。

同梱プログラム

OSはLinux Mint13

といっても、ベースはUbuntu-12.04なので、アプリケーションのインストール方法などは、ubuntuのそれと全く同じです。違うのはデスクトップのGUI環境だけです。

標準のターミナル、ファイルマネージャ、テキストエディタがubuntuとは異なりますが、DEXCSランチャーやTreeFoamは、ubuntuの標準ツールを使用することを前提に作られているので、ubuntu互換ツールとして起動できるようにしてあります。

その他のドキュメントについて

  • DEXCSランチャーのヘルプメニューを参照下さい。
  • 本当に初めて使う人は、「ランチャーの使い方」-「まずは使ってみる」をご覧下さい。
  • 「ランチャーの使い方」-「形状作成」にて、Swiftツールの使い方を概略説明しています。
  • 「ランチャーの使い方」-「メッシュ」「計算実行」「結果処理」を理解できるようになると、OpenFOAMの基本的なファイル構造を理解できたことにもなります。
  • 以上は動画チュートリアルになっていますが、「フラッシュプレーヤー」を変更して参照することを強くお勧めします。変更方法は、最下段の「フラッシュプレーヤーの変更方法」をご覧ください。
  • Swiftツールのより実践的な使用方法は、以下の講習会資料をご覧ください。
  • JAVA gnuplot GUI の使用方法

 

DEXCS2012 for OpenFOAM(R) 製作メモ

DEXCS2010以来、isoイメージの基本的な製作方法は変わっていませんが、製作方法メモが散逸してしまっているので、ここにとりまとめておくことにしました。

DEXCS2012ではベースOSをこれまでのUbuntuからLinux Mintに変更した事で、一部の人からはUbuntuへの復帰を希望する声もあがっているようです。そういう人には独自にUbuntu版をリリースしてもらっていいんじゃないかと、その際の参考資料にしてもらえればと思います。Linux Mint といってもベースはUbuntuなので、アプリケーションのインストール方法などは全く同じです。違うのはデスクトップのGUI環境だけで、その設定箇所も明記しておきました。

但し、内容の説明に不十分な点が多々ある点は自覚しており、追って修正・追記していく予定ではありますが、ご指摘頂ければ、その作業も捗ることになりましょう。

また、こうしてまとめ直してみると、もうちょっとスマートにやる方法もあったんでないかと・・・何かと考えさせられます。

ベースOS(Linux Mint)の日本語化

参考サイト⇒http://linuxmint-jp.net/download.html

$ wget -q http://linuxmint-jp.net/linuxmint-ja-archive-keyring.gpg -O- | sudo apt-key add –
$ sudo wget http://linuxmint-jp.net/sources.list.d/linuxmint-ja.list -O /etc/apt/sources.list.d/linuxmint-ja.list
$ sudo apt-get update
$ sudo apt-get dist-upgrade

$ sudo apt-get install mint-gnome-ja

日本語フォルダ環境変更

  • せっかくOSを日本語化したのですが、CAEアプリの場合、フォルダー名に日本語を使うと、何かと不都合が生じる場合が多いので、フォルダ名だけは日本語表示させないようにしておきます。

$ export LANG=C
$ xdg-user-dirs-gtk-update
$ echo C > .config/user-dirs.locale

  • システム⇒コントロールセンター⇒自動起動するアプリ を起動し、「ユーザー・フォルダーの更新」のチェックマークを外しておく
  • ホームフォルダ中、Desktop以外のフォルダーを全て削除

 

remastersys

  • 再配布用isoイメージを作成するツールです。

参考サイト⇒http://www.geekconnection.org/remastersys/

  • http://www.remastersys.com/ubuntu/remastersys.gpg.key を入手し、適当な場所へ保存しておく。
  • Synapticパッケージマネージャの、「設定」⇒「リポジトリ」を選択すると新たにメニューが現れる。「認証」タブを選択し、「鍵ファイルのインポート」ボタンを押して、上記ダウンロードした鍵ファイルを読み込む。
  • 引き続き、「他のソフトウェア」タブを選択したメニューにて、「追加」ボタンを押すと、APTラインの入力を促されるので、以下入力。

deb http://www.remastersys.com/ubuntu precise main

  • 「ソースを追加」ボタンを押せばソフトウェアソースのリストに追加される。但しその際、上記ラインともう一つ、以下も追加されるが、こちらの方はチェックマークを外しておく。

deb http://www.remastersys.com/ubuntu precise main(ソースコード)

  • 設定画面を閉じて、パッケージマネージャの「再読込」ボタンを押す。
  • remastersysy, remastersys-gui がパッケージリストに出てくるようになるので、これをインストールする。

 

アプリケーションのインストール

再配布用のDEXCSイメージを作成する際に、上記導入したremastersysを使いますが、remastersysを含めてパッケージマネージャを使ってインストールしたアプリケーションはそのまま使えるようになります。しかしそうでないものを再配布用のDEXCSイメージでも使えるようにするには、それなりの手当が必要です。

パッケージマネージャにて新たにインストールするアプリケーション

emacs

    • 一口にemacsと言って、色々なGUIインタフェースがあるのですが、DEXCS for OpenFOAMでは、Synapticパッケージマネージャで、emacs23-lucidをインストール指定している。理由は全くの個人的な好みによるもの。

FreeCAD

    • Extensible Open Source CAx program (alpha)
    • 普通にインストールしただけでは、初期画面がまっさらで、ツールメニューなど何もないので、これをカスタマイズして、ホームディレクトリ下にできた.FreeCADを、/etc/skelの下へコピーしておきます。

python-wxGlade

    • wxPython を使って Python により書かれた GUI デザイナ
    • wxGlade は有名な GUI ツールキットである wxPython を使って Python により 書かれた GUIデザイナであり、wxWidgets/wxPython ユーザインターフェイスの作成 を補助します。現時点では、Python、C++ および XRC
      (wxWidgets の XML リソース) コードを生成できます。

SPE

    • Stani の Python エディタ
    • Spe は Python 用 IDE であり、自動インデント、自動補完、関数 tips、 構文配色、構文強調、UMLビューア、クラスエクスプローラ、ソースインデックス、 自動 todo リスト、メモ帳、pycrust シェルの統合、Python ファイルブラウザ、最近編集したファイルのブラウザ、ドラッグアンドドロップ、 コンテキストヘルプなどの機能があります。Special は Blender 三次元
      オブジェクトブラウザと Blender 内で対話的に起動する機能により Blender をサポートします。Spe は wxGlade と XRCed(gui デザイナ)、 PyChecker (ソースコード診断ツール)、そして Kiki (正規表現端末) が同梱されます。 Spe は
      wxGlade により拡張可能です。

kdiff3

    • KDiff3 は 2 個または 3 個の入力ファイルを比較して、一行単位、一文字単位で差分を表示します。自動マージ機能や、マージ時の衝突を解消するための利用しやす い統合されたエディタを提供します。
    • KDiff3は再帰的なディレクトリ比較やマージ も可能です。
    • なので、ケースファイルを比較して、相違点を見つけるといった用途に使えます。

browser-plugin-gnash

    • GNU Shockwave Flash (SWF) player – Plugin for Mozilla and derivatives

gnome-terminal

    • Ubuntuで標準のコマンド・ライン端末です。
    • Linux Mint Mate版ではmate-terminalが標準ですが、DEXCSやTreeFoamはこれまでUbuntu上で開発してきた経緯があり、この端末を使用しているのでこれも追加インストールしてあります。

nautilus

    • Ubuntuで標準のファイル・マネージャです。
    • Linux Mint Mate版の標準は、Cajaですが上に述べたのと同じ理由で追加インストールしてあります。

gedit

    • Ubuntuで標準のテキスト・エディタです。
    • Linux Mint Mate版の標準は、plumaですが上に述べたのと同じ理由で追加インストールしてあります。

xterm

    • 昔ながら(?)の端末です。
    • helyxOSで必要になります。

eog

    •  画像ビューアプログラム Eye of GNOME
    • DEXCSランチャーのポスト処理で、gnuplotで作成したグラフ表示に使用します。

手動でインストールするアプリケーション

  • 入手に必要なヴァージョン管理システムやら、コンパイルに必要なライブラリは以下の通り。

$ sudo apt-get install git-core

$ sudo apt-get install subversion

$ sudo apt-get install python-numpy

$ sudo apt-get install python-dev

  • 以下、OpenFOAM〜helyxOSのインストールまでは、一旦ホームディレクトリ直下にOpenFOAMというフォルダを作成し、その中でインストールしますが、再配布用には、OpenFOAMのフォルダ以下、/opt/の下に移動し、ホームディレクトリ下にシンボリックリンクをはっておきます。

$ cd
$ ln -s /opt/OpenFOAM OpenFOAM

OpenFOAM

参考サイト⇒http://www.openfoam.org/download/git.php

$ cd

$ mkdir OpenFOAM

$ cd OpenFOAM

$ git clone git://github.com/OpenFOAM/OpenFOAM-2.1.x.git

$ sudo apt-get install build-essential flex bison cmake zlib1g-dev qt4-dev-tools libqt4-dev gnuplot libreadline-dev libncurses-dev libxt-dev

$ sudo apt-get install libscotch-dev libopenmpi-dev

$ cd OpenFOAM-2.1.x

$ . etc/bashrc

$ ./Allwmake

ParaView

    • 基本的に、OpenFOAMの参考サイトに記してある通り、OpenFOAMのコンパイルに引き続いて、

$ cd $WM_THIRD_PARTY_DIR
$ ./makeParaView

    • で良いのですが、このままだとpythonスクリプトが使えないので、makeParaViewスクリプトを一部変更する。

# MPI support:

withMPI=true
MPI_MAX_PROCS=32

# Python support:
# note: script will try to determine the appropriate python library.
# If it fails, specify the path using the PYTHON_LIBRARY variable
withPYTHON=true
# PYTHON_LIBRARY=””
PYTHON_LIBRARY=”/usr/lib/libpython2.7.so.1.0″

    • ParaViewのコンパイルが終わったら、

$ cd $FOAM_UTILITIES/postProcessing/graphics/PV3Readers
$ wmSET
$ ./Allwclean
$ ./Allwmake

pyFOAM

 

参考サイト⇒http://openfoamwiki.net/index.php/Contrib_PyFoam

cd $HOME/OpenFOAM

$ svn co https://openfoam-extend.svn.sourceforge.net/svnroot/openfoam-extend/trunk/Breeder/other/scripting/PyFoam/

$ cd PyFoam

$sudo python setup.py install

    • 再配布用イメージでの動作に不具合を生じないように、一部chownすべきファイルがありましたが、その名前は失念しました。

swak4Foam

参考サイト⇒http://openfoamwiki.net/index.php/Contrib/swak4Foam

 

$ cd $HOME/OpenFOAM

$ svn checkout https://openfoam-extend.svn.sourceforge.net/svnroot/openfoam-extend/trunk/Breeder_2.0/libraries/swak4Foam/

$ cd swak4Foam

$ ./Alwmake

$ cd $FOAM_USER_LIBBIN

$ mv * ../../../../OpenFOAM-2.1.x/platforms/linuxGccDPOpt/lib/

$ cd ../bin

$ mv * ../../../../OpenFOAM-2.1.x/platforms/linuxGccDPOpt/bin/

  • コンパイルしたライブラリなど通常、$FOAM_USER_LIBBINに生成されますが、この場所は再配布用イメージに引き継ぐことが出来ないので、共通場所である$FOAM_LIBBINに移動しています。

helyxOS

    • 64bit版のみ

入手先⇒http://sourceforge.net/projects/helyx-os/

    • $HOME/OpenFOAM にて解凍
    • chmod 755 helyxOS.sh
    • 起動用スクリプト(helixOS)を以下作成し、/usr/binへ収納

#!/bin/bash
. $HOME/OpenFOAM/OpenFOAM-2.1.x/etc/bashrc
export PATH=$HOME/OpenFOAM/Engys/HelyxOS/v100/:$PATH
export LANG=en
helyxOS.sh

  • ランチャーコマンドは、以下設定

/usr/bin/helixOS

Blender

入手先⇒http://www.blender.org/download/get-blender/

    • /opt/にて展開

$ sudo ln -s /opt/blender-2.64a-linux-glibc27-i686/blender /usr/bin/blender

SwiftBlock

入手先⇒https://github.com/nogenmyr/swiftBlock

    • /opt/blender-2.64a-linux-glibc27-i686/2.64/scripts/addons/ に展開し、chmod 755
    • 但し、現時点における最新版(2012/10/21のタイムスタンプ)はバグがあるようなので、その前のヴァージョンを利用している。

 

SwiftSnap

入手先⇒https://github.com/nogenmyr/swiftSnap

    • /opt/blender-2.64a-linux-glibc27-i686/2.64/scripts/addons/ に展開し、chmod 755

JAVA gnuplot GUI

入手先⇒http://sourceforge.net/projects/jgp/

    • /opt/にて展開
    • ランチャーコマンドは、以下設定

java -cp /opt/jgp/classes jgp.gui.JGP

TreeFoam

    • /opt/にて展開
    • ホームディレクトリ下にシンボリックリンクをはっておきます。

$ cd
$ ln -s /opt/OpenFOAM OpenFOAM

    • ランチャーコマンドは、以下設定

/opt/TreeFoam/treefoam

デスクトップ周り

壁紙とアイコン

入手先⇒http://dexcs.gifu-nct.ac.jp/pukiwiki/index.php?DEXCS%A4%CE%A5%ED%A5%B4

  • 壁紙は、/usr/share/backgrounds/ に収納

$ cd /usr/share/backgrounds/linuxmint

$ sudo rm default_background.jpg

$ sudo ln -s ../DEXCS2012-desktop\ .png default_background.jpg

  • アイコンは、/usr/share/icons に収納

再配布用の仕組み

remastersys で再配布イメージを作成する際に、/home ディレクトリ下にあって再配布イメージに継承したいものは、/etc/skel下に収納しておけば、継承してくれるのですが、ユーザーの名前までは継承してくれません。そこでDEXCSでは、ユーザー名を継承できるように、セットアップスクリプトを同梱して配布するようにしています。

一方、/home ディレクトリ下でない箇所(/optや/usr/binなど)に追加したファイルは自動的に再配布用イメージに継承されますが、ただ問題は全てファイルのオーナーがrootになってしまう点です。単にアプリケーションを実行するだけで済ませられるようなアプリはそれで構いませんが、そうでない(OpenFOAMなどOpenFOAMの下に各ユーザー固有のワークディレクトリを作成するなどの)アプリの場合は、前もって書き込み権限を付与していくことで対処しています。

再配布用/etc/skelのセッティング

    • /etc/skel下に収納するファイルの管理が煩雑になってきたので、DEXCS2012からは、これらをスクリプトで管理するようにしました。

#!/bin/sh

rm -rf /etc/skel/.FreeCAD/
cp -r .FreeCAD/ /etc/skel/

#rm -rf /etc/skel/.blender/
#cp -r .blender/ /etc/skel/

rm -rf /etc/skel/.gconf/
cp -r .gconf/ /etc/skel/

rm -rf /etc/skel/.config/
cp -r .config/ /etc/skel/

rm -rf /etc/skel/.mateconf/
cp -r .mateconf /etc/skel/

rm -rf /etc/skel/.local/
cp -r .local /etc/skel/

rm -rf /etc/skel/Desktop/DEXCS
cp -r Desktop/DEXCS /etc/skel/Desktop/

rm -f /opt/TreeFoam/Ver*
rm -rf /opt/OpenFOAM/dexcs*

  • remastersysを実行する前に、ホームディレクトリ下で上記スクリプトをスーパーユーザ権限で実行しておきます。
  • 赤字部分が、Linux Mint 版での固有セッティングです。この中に追加したランチャーの設定ファイルなどが収納されています(ここだけではありませんが)。Ubuntu版ではここを相応なもので置き換えてやることになると思いますが、特に12.04以降は、あまり触っていないので定かではありません。

再配布イメージに同梱するセットアップスクリプト(setupDEXCS.sh)

    • DEXCSをインストールする際、最初に実行するセットアップスクリプトです。

#!/bin/sh
WHO=`whoami`
echo “#!/bin/sh” > ~/Desktop/DEXCS/startup1.sh
LIST=~/Desktop/DEXCS/setup.list
while read i
do
echo “sed ‘s/dexcs\/Desktop/$WHO\/Desktop/g’ $i > ~/Desktop/DEXCS/temp” >> ~/Desktop/DEXCS/startup1.sh
echo “sed ‘s/dexcs\/デスクトップ/$WHO\/Desktop/g’ ~/Desktop/DEXCS/temp > $i” >> ~/Desktop/DEXCS/startup1.sh
echo “sed ‘s/home\/dexcs/home\/$WHO/g’ $i > ~/Desktop/DEXCS/temp” >> ~/Desktop/DEXCS/startup1.sh
echo “cp ./DEXCS/temp $i” >> ~/Desktop/DEXCS/startup1.sh
done < ${LIST}

chmod +x ~/Desktop/DEXCS/startup1.sh
~/Desktop/DEXCS/startup1.sh
mv ~/Desktop/DEXCS/DEXCS2012.desktop ~/Desktop/
. /opt/OpenFOAM/OpenFOAM-2.1.x/etc/bashrc
mkdir -p $FOAM_RUN
mkdir -p $FOAM_USER_APPBIN
cp ~/Desktop/DEXCS/launcherOpen/snappyDictExporter.py $FOAM_USER_APPBIN
cp ~/Desktop/DEXCS/launcherOpen/bcFilesConverter.py $FOAM_USER_APPBIN
rm ~/Desktop/ubiquity-gtkui.desktop -f
rm ~/Desktop/setupDEXCS.sh
killall -u $WHO

    •  再配布イメージにて、新たにユーザー名を変更する場合に、ユーザー名に応じてパスが直打ちになっている部分を書き直しています。マスターディスクでは、ユーザー名をdexcsとしているので、/home/dexcs の部分を、/home/($WHO)に変更
    • 変更が必要なファイルの名前リストは、~/Desktop/DEXCS/setup.listに記してあります。

~/Desktop/DEXCS/DEXCS2012.desktop
~/Desktop/DEXCS/dexcs.wxg
~/Desktop/DEXCS/launcherOpen/dexcs.py
~/Desktop/DEXCS/SWAK/dexcsSWAK.wxg
~/Desktop/DEXCS/SWAK/myDialog1.wxg
~/Desktop/DEXCS/SWAK/myDialog2.wxg
~/Desktop/DEXCS/SWAK/testFrameListBox.wxg
~/Desktop/DEXCS/SWAK/dexcsTextSsercher.wxg
~/Desktop/DEXCS/SWAK/timeLinePlotter.wxg
~/.config/mate/panel2.d/default/launchers/gnome-terminal.desktop
/opt/TreeFoam/treefoam.py
/opt/TreeFoam/treefoam.1.25
/opt/TreeFoam/configTreeFoam
/opt/TreeFoam/wxg/runParallelDialog.wxg
/opt/TreeFoam/wxg/separateCellZoneGroupDialog.wxg
/opt/TreeFoam/wxg/changeZoneNameDialog.wxg
/opt/TreeFoam/wxg/changeConfigTreeFoamDDialog.wxg
/opt/TreeFoam/wxg/changeConfigTreeFoamDialog.wxg
/opt/TreeFoam/wxg/selectConjugateCouplingFieldsDialog.wxg
/opt/TreeFoam/wxg/meshOperationDialog.wxg
/opt/TreeFoam/wxg/mergeZonesDialog.wxg
/opt/TreeFoam/wxg/selectFieldsForEditDialog.wxg
/opt/TreeFoam/wxg/selectFluidRegionDialog.wxg
/opt/TreeFoam/wxg/inputTextDDialog.wxg
/opt/TreeFoam/wxg/setCouplingConjugateDialog.wxg
/opt/TreeFoam/wxg/plotWatcherDialog.wxg
/opt/TreeFoam/wxg/openGridEditorDialog.wxg
/opt/TreeFoam/wxg/setDataInFieldsDialog-bak.wxg
/opt/TreeFoam/wxg/setDataInFieldsDialog.wxg
/opt/TreeFoam/wxg/saveCSV_Dialog.wxg
/opt/TreeFoam/wxg/gaugeDDialog.wxg
/opt/TreeFoam/wxg/editBoundaryConditionsDialog.wxg
/opt/TreeFoam/wxg/openFieldForGridEditorDDialog.wxg