クラなんとか or くらなんとか or cla なんとかの日記

2011-07-10

ゆるPerl #13 にいってきた - 開発環境の話

だいたいPerl の話をしないで,Ports の話とか Android の話とかをしています.

あ,Perl6 の話とか dotcloud の話はした.か?

今回は,開発環境の開発環境として,

  • Jenkins
  • AsakusaSatellite
  • Redmine

な環境をローカル(MacOSX) に作ろうとしてみた.

Jenkins

パッケージがあるので入れる.

restart も画面からやればいいので便利.

stop/start は,launchctl で,

$ sudo launchctl unload -w /Library/LaunchDaemon/org.jenkins-ci.plist
$ sudo launchctl load -w /Library/LaunchDaemon/org.jenkins-ci.plist

とかすればいい.

Plugins
$ git clone https://github.com/suer/asakusa-satellite-plugin
$ cd asakusa-satellite-plugin
$ mvn package
$ sudo cp target/asakusa-satellite-plugin.hpi /Users/Shared/Jenkins/Home/plugins
$ sudo chown daemon /Users/Shared/Jenkins/Home/plugins/asakusa-satellite-plugin.hpi

後で増やすつもり.

AsakusaSatellite

clone してきて,指示どおりやれば動くような気がする.

そのままだとport がRedmine とぶつかるので,適当に

$ bundle exec rails server -p 3001

とかしてport を変える必要があるかも.

gem で落としてきたhaml とかの version が新しかった所為か以下のを当てないと動かなかった.

あと Gemfiles に

gem 'sass'

を書くとwarning が消えるような気がする.

*1

なんか,websocket を起動するとCPU を食うので,

調べるまでは動かさないようにしている.

Redmine

よくわからんけど,

をclone して適当に入れた.

plugins

後で増やすつもり.

*1:最初 gem install sass とかしてたのは秘密だ

2010-12-26

gitosis を試す

メモ的に

まず git ユーザを作り終わっているとします.

$ sudo su - git
git$ git clone git://eagain.net/gitosis.git
git$ easy_install-2.6 --user gitosis
git$ cd ~/local/bin
git$ ln -s ~/.local/bin/* .
git$ rehash
git$ cd
git$ ssh clairvy@localhost cat .ssh/id_rsa.pub | gitosis-init

試す.

$ git clone git@localhost:gitosis-admin.git

*1

とりあえず,できたみたいだけど,リモートから触ってないので,

まだわかんない感じ.

別の場所に設置して試します.

ご参考

運用としては,gitosis-admin リポジトリを編集+手 or スクリプトなんかなー.

新リポジトリ作るのとか.その辺はおいおい試します.

github みたいに楽にするにはまだ補助が要るんかなー?

*1:パスが通ってなかったっぽいので,gitosis-serve を/usr/bin にシンボリックリンクしました

2010-12-25

MacOSX でのユーザの作り方(dscl)

メモ的に

全然知らなかったんだけど,MacOSX では,DirectoryService でユーザとかのリソースを管理してるみたい.

ということでユーザを作ってみた.

$ sudo dscl . -create /Groups/git gid 601
$ sudo dscl . -create /Users/git
$ sudo dscl . -create /Users/git RealName 'git version control'
$ sudo dscl . -create /Users/git UniqueID 601
$ sudo dscl . -create /Users/git PrimaryGroupID 601
$ sudo dscl . -create /Users/git NFSHomeDirectory /Users/git
$ sudo dscl . -create /Users/git UserShell /opt/local/bin/zsh
$ sudo dscl . -create /Users/git uid 601
$ sudo dscl . -create /Users/git gid 601
$ sudo passwd git ← パスワード設定
$ sudo createhomedir -b -u git

確認

$ sudo dscl . -read /Groups/git
$ sudo dscl . -read /Users/git
$ id git
uid=601(git) gid=601(git) ....

第一引数の"."(ドット) は,ローカルのdatasource らしい.

最初 /etc/{passwd,group} を直編集して,何でできないか不思議だったよ.

追記(2010/12/26 16:29)

uid/gid を,指定していなかったらそもそも createhomedir できなかったよ.

ご参考

2010-01-17

EGGX/ProCALL をインストールしてみた

色々と事情があって,EGGX/ProCALL を試してみることにした.

Makefile を 64bit 版にする必要があると思ったけどそうでもないかも.*1

$ ls -ln Makefile
lrwxr-xr-x  1 501  20  14  1 17 07:46 Makefile@ -> Makefile.linux
$ make LOCALINC="-I${HOME}/local/include" LOCALLIB="-L${HOME}/local/lib"
$ cp egg ~/modules/eggx-0.84/bin
$ cp eggx*.h ~/modules/eggx-0.84/include
$ cp libeggx.a ~/modules/eggx-0.84/lib
$ cd ~/local
$ vi .setup/eggx-0.84.sh
$ cat .setup/eggx-0.84.sh
#!/bin/sh

src=../modules/eggx-0.84
dirs='bin include lib'

for d in $dirs; do
  ( cd $d && /bin/ls ../$src/$d/* | xargs -I {} echo 'rm `basename {}`; ln -s {} `basename {}`' | sh )
done
$ sh .setup/eggx-0.84.sh
$ rehash
$ egg
$ cd ~/work/eggx-0.84/sample
$ egg clock.c -o clock
$

参考

*1:lib64 を見に行くだけっぽい?

2009-11-08

MacOSX に GHC をインストールした

今んとこ MacPorts だと入らないみたい.

  • パッケージでインストール
  • alias ghc='command ghc -opta -m32 -optl -m32'

参考

追記 : 2009/11/14 18:48

alias では,Cabal 関連でうまくいかなかったので,

スクリプトを書き換える方針にした.

当然,$HOME/local/bin の方が /usr/bin よりPATH で前になっている.

$ cd ~/modules/ghc-6.10.4/bin
$ cp /Library/Frameworks/GHC.framework/Versions/Current/usr/bin/{ghc,runhaskell} .
$ ln -s runghc runhaskell
$ vi ghc runghc
$ diff /Library/Frameworks/GHC.framework/Versions/Current/usr/bin/ghc ~/modules/ghc-6.10.4/bin/ghc
3c3
< exec /Library/Frameworks/GHC.framework/Versions/610/usr/lib/ghc-6.10.4/ghc -B/Library/Frameworks/GHC.framework/Versions/610/usr/lib/ghc-6.10.4/. -dynload wrapped ${1+"$@"}
---
> exec /Library/Frameworks/GHC.framework/Versions/610/usr/lib/ghc-6.10.4/ghc -optc-m32 -opta-m32 -optl-m32 -B/Library/Frameworks/GHC.framework/Versions/610/usr/lib/ghc-6.10.4/. -dynload wrapped ${1+"$@"}
$ cd ~/local/bin
$ ln -s ~/modules/ghc-6.10.4/bin/{ghc,runghc,runhaskell} .

参考