ローカルネットワーク向けgit公開サーバ(HTTP)
HTTPを使ったローカルネットワーク環境でのgitリポジトリの公開方法についてまとめる。ローカルネットワーク向けなのでセキュリティやリポジトリへのアクセス速度は気にしないことにする。なお、以下の作業はDebian 7.1 (Wheezy)のインストールオプションに "Web server" を指定した場合を前提としている。
/etc/apache2/sites-enabled/000-defaultを見ると
DocumentRoot /var/www
となっているので、この下に公開用gitリポジトリを置くことにする。
まずはApacheでWebDAVとBASIC認証の設定を行う。/etc/apache2/conf.d/git.confを作成し、以下のように編集する。
<Location /git> Options -Indexes DAV on AuthType Basic AuthName "Git repository" AuthUserFile "/var/www/git/.gitusers" Require valid-user </Location>
BASIC認証用のパスワードファイルを用意する。
# mkdir /var/www/git # cd /var/www/git # htpasswd -c .gitusers username(ユーザ名)
WebDAVを使えるようにするため、以下のコマンドを実行。
# a2enmod dav_fs # a2enmod dav # dav_fsだけでよいかも
Apacheを再起動する。
# service apache2 restart
webブラウザでhttp://localdomain/gitにアクセスして正しく認証できることを確認する。
公開用のgitリポジトリを設置する。
# cd /var/www/git # git clone --bare ~/hoge hoge.git # cd hoge.git # touch git-daemon-export-ok # git update-server-info # mv hooks/post-update.sample hooks/post-update # chown -R www-data:www-data /var/www/git
以上で設置完了。クライアントからcloneできることを確認する。
$ git clone http://username@localdomain/git/hoge.git # ユーザ名を指定する場合 $ git clone http://username:password@localdomain/git/hoge.git # ユーザ名:パスワードを指定する場合 $ 何か編集 $ git commit -m "comment on modification" $ git push
Common Lisp
Emacsでカーソルポイントの前にあるS式をSLIME上のREPLに送るための設定
;;; Common lisp (setq inferior-lisp-program "d:/bin/ccl/wx86cl64.exe") (push (expand-file-name "~/script/elisp/site-lisp/slime-2012-09-26") load-path) (require 'slime) ;(slime-setup '(slime-repl)) ; contribのREPLのみ設定 (slime-setup '(slime-fancy)) ; 大抵はslime-fancyを設定すれば十分 ;(slime-setup '(slime-fancy slime-banner)) ; バナーもつける ;;; ポイントの前にあるS式をREPLに送る (defun slime-send-sexp-to-repl (arg) (interactive "P") (let ((sexp (replace-regexp-in-string "^[\t\n ]+\\|[\t\n ]+$" "" (slime-last-expression)))) (set-buffer (slime-output-buffer)) (unless (eq (current-buffer) (window-buffer)) (pop-to-buffer (current-buffer) t)) (goto-char (point-max)) (insert sexp) (if arg (progn (slime-repl-return) (other-window 1))))) (define-key lisp-mode-map "\C-ce" '(lambda () (interactive) (slime-send-sexp-to-repl t)))
Android開発環境
OSはMicrosoft Windows 7とします。
必要なもの
JDKのインストール
http://www.oracle.com/technetwork/java/javase/downloads/index.html
からjdk-7u7-windows-x64.exeをダウンロードしてインストールします。
Android SDKのインストール時にJAVA_HOMEにJDKのインストールディレクトリが設定されている必要があるので、下記のように設定します。
JAVA_HOME=C:\Program Files\Java\jdk1.7.0_07
Android SDK(SDK Tools, Revision 20.0.3)
http://developer.android.com/sdk/index.html
の"Download the SDK for Windows"からinstaller_r20.0.3-windows.exeをダウンロードして実行します。
Android SDK ManagerでインストールするPackagesを選択します。ここではとりあえず最新版のAndroid 4.1 (API 16)に加えて実機での動作確認用にAndroid 2.3.3 (API 10)を選択しました。
また、Android 2.3.3のエミュレータを高速化するために、Intel Atom x86 System ImageとIntel Hardware Accelerated Execution Managerもインストールしておきます。これはC:\Program Files (x86)\Android\android-sdk\extras\intel\Hardware_Accelerated_Execution_ManagerにインストールされるのでIntelHaxm.exeを実行します。コマンドプロンプトから
sc query intelhaxm
を実行し、STATEがRUNNINGであればOKです。
Apatch Ant(1.8 or later)
コマンドラインでビルドできるようにするため、
http://ant.apache.org/
からapache-ant-1.8.4-bin.zipをダウンロードして適当なディレクトリに展開します。
環境変数PATHの設定
PATH=C:\Program Files (x86)\Android\android-sdk\platform-tools;C:\Program Files (x86)\Android\android-sdk\tools;D:\bin\apache-ant-1.8.4\bin
プロジェクトの作成
適当なディレクトリにて下記を実行します。
> android create project --target android-10 --name HelloWorld --activity HelloWorldActivity --path HelloWorld --package org.sample.HelloWorld
プログラムの作成
まずはとりあえずHello, worldを表示させることにします。src\org\sample\HelloWorld\HelloWorldActivity.javaを以下のように編集します。
package org.sample.HelloWorld; import android.app.Activity; import android.os.Bundle; import android.widget.TextView; public class HelloWorldActivity extends Activity { /** Called when the activity is first created. */ @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); TextView tv = new TextView(this); tv.setText("Hello, world!"); setContentView(tv); // setContentView(R.layout.main); } }
ビルド
下記を実行してBUILD SUCCESSFULが表示されればビルド成功です。
ant debug
ビルドした結果はbin\HelloWorld-debug.apkに作成されるので、これをエミュレータにインストールして実行します。
仮想デバイスの作成
ADV(Android Virtual Device) Managerでエミュレータ上で動作させる仮想デバイスを作成します。Intel VT-xを利用してエミュレーションを高速化させるため、TargetはIntel Atom x86 System Imageを選択します。
Startで指定した仮想デバイスのエミュレータが実行されます。
プログラムの実行
ADB(Android Debug Bridge)を使って仮想デバイスにプログラムをインストールします。
adb install .\bin\HelloWorld-debug.apk
エミュレータのLauncherにHelloWorldMainActivityが追加されます。Launcher上から実行してもいいですが、下記のようにadbコマンドから実行したほうが効率がいいです。
adb shell am start -n org.sample.HelloWorld/org.sample.HelloWorld.HelloWorldMainActivity
実行結果は次のようになります。
インストールしたプログラムはadbコマンドでアンインストールすることも可能です。
adb uninstall org.sample.HelloWorld
零の軌跡
ようやくクリアした。空の軌跡に続く本作は発売日が2010年9月30日。購入してから1年以上経過してしまったことになる。今ではその続編である碧の軌跡も出ており、新たな軌跡シリーズである那由多の軌跡も発表されている。簡単に言ってしまえばクロスベル警察の新米捜査官奮闘物語であるが、幾多の謎を残したままエンディングを迎えてしまい、ぶっちゃけクリア後の消化不良感満載である。多くの伏線は続編で回収されるとのことなので実質的には碧の軌跡とセットということになる。このあたり、さすがFalcomである。前作同様、サブクエストや実績集め、登場人物の細やかな会話の変化など、やりこみ要素も多く何度でも楽しめる作品になっている。
まあ、何が言いたいのかというと、要するにエリィのドレス姿が見れるだけでもこの作品をプレイする価値があるということである。
21:52。宮越屋珈琲。
知って驚く意外な事実
テンプレートはチューリング完全。