2013年7月3日水曜日

Ubuntu に Node.js を入れる

UbuntuにNode.jsを入れる

事前に必要なものをインストール

$ sudo apt-get update
$ sudo apt-get install git-core curl build-essential openssl libssl-dev


nvmをインストール

Node Version Manager
異なるのバージョンのNode.jsをインストールし、管理できる

$ curl https://raw.github.com/creationix/nvm/master/install.sh | sh
$ ls ~/.nvm

~/.bashrc 以下1行追記
. ~/.nvm/nvm.sh

~/.bashrc を反映する
$ source ~/.bashrc


Node.js のインストール


インストール可能バージョンを調べる
$ nvm ls-remote

Node.js のインストール
$ nvm install v0.11.3

インストール済みバージョンを調べる
$ nvm ls
$ nvm use v0.11.3
$ node -v

.bashrc 以下1行追記
nvm use 0.11.3

~/.bashrc を反映する
$ source ~/.bashrc


Node.jsのバージョンを調べる
$ node --version
$ node -v


Node.jsを起動してみる
$ node

Node.jsの終了の仕方

> process.kill()

または

> process.exit()

Node Package Manager


npm バージョン確認
$ npm --version
$ npm -v



npmを使ってcoffee-scriptをインストール


coffee-scriptをインストール
$ npm install -g coffee-script
$ coffee --version
$ cofee -v


coffee-scriptを実行
$ coffee test.coffee

coffee-scriptをjsにコンパイル
$ coffee -c test.coffee

jsにコンパイルされたコードの実行
$ node test.js

coffee-scriptをアンインストールする
$ npm uninstall -g coffee-script




Mint Linux 14 nadia から Mint Linux 15 oliviaへアップグレードする


したこと


Mint Linux 14 nadiaで更新ファイルが無いか確認。
あったらアップグレードする
$ sudo apt-get update
$ sudo apt-get upgrade
$ sudo apt-get dist-upgrade


sources.listを変更
$ sudo sed -i 's/quantal/raring/' /etc/apt/sources.list
$ sudo sed -i 's/nadia/olivia/' /etc/apt/sources.list

Mint Linux 15 oliviaへアップグレードする
$ sudo apt-get update
$ sudo apt-get dist-upgrade

その他

KDE版は
$ sudo sed -i 's/quantal/raring/' /etc/apt/sources.lis.d/ubuntu.list
$ sudo sed -i 's/nadia/olivia/' /etc/apt/sources.list.d/mint.list
となる

2013年7月2日火曜日

Mac用Web Browser リンク 2013年版


無料部門


Amaya
http://www.w3.org/Amaya/
w3c製。オーサリングツールとしても利用できる。


Camino
http://caminobrowser.org/
レンダリングエンジンにGekkoを採用


Chrome
http://www.google.com/intl/us/chrome/browser/
http://www.google.com/intl/ja/chrome/browser/
WebKitを元に、GoogleがChroniumを元に開発。Chroniumを元に開発されたウェブブラウザ。


Firefox
http://www.mozilla.org/en-US/
http://www.mozilla.jp/firefox/
NCSA Mosaicを受け継ぐ形で1994年にリリースされたウェブブラウザNetscapeの後継ウェブブラウザ。レンダリングエンジンにGekkoを採用。


Iron
http://www.srware.net/en/software_srware_iron.php
Chroniumを元に開発されたウェブブラウザ。


Maxton
http://www.maxthon.com/
中国の傲游製。


OmniWeb
http://www.omnigroup.com/products/omniweb/
1995年5月17日に1.0がリリース。Internet Explorerの1995年8月24日よりも前から存在しているブランド。


Opera
http://www.opera.com/
NCSA Mosaicを受け継ぐ形で開発されていないブラウザ。Netscape/Mozilla, Internet Explorerに続く第3のブラウザとも呼ばれたことがあった(過去形)。



QQBrowser
http://browser.qq.com/mac/
中国の検索サービス会社 腾讯网製。


Safari
http://www.apple.com/safari/
KDE環境用のウェブブラウザKonquerorのレンダリングエンジンKHTMLをベースに開発されたWebKitを元に、Appleが開発したウェブブラウザ。


seamonkey
http://www.seamonkey-project.org/
Mozilla製。オーサリングツールとしても利用できる。


Sleipnir
http://www.fenrir-inc.com/jp/sleipnir/
日本製。


Torch
http://www.torchbrowser.com/
WebKitを元に開発されたウェブブラウザ。


Yandex
http://browser.yandex.com/
WebKitを元に開発されたウェブブラウザ。ロシアの検索サービス会社Yandex製。

有料部門


iCab
http://www.icab.de/
レンダリングエンジンにWebKitを採用。


2013年5月24日金曜日

notify-send を使ってデスクトップに通知する


したいこと・しりたいこと・目標

プログラムから何かのメッセージを受け付け、受け取ったメッセージをデスクトップに通知する

環境

xubuntu 13.04 64bit

xubuntuの、デフォルトのnotifyd設定ファイル
/usr/share/dbus-1/services/org.xfce.xfce4-notifyd.Notifications.service

xubuntuの、デフォルトになっているnotifyデーモン
/usr/lib/x86_64-linux-gnu/xfce4/notifyd/xfce4-notifyd

command lineから、デスクトップに通知する
$ notify-send "my message"

pythonから、デスクトップに通知する
import os
s = "python message string"
os.system('notify-send "%s"' % s)

rubyから、デスクトップに通知する
s = "ruby message string"
result = system("notify-send \"#{s}\"")

その他

ubuntu 13.04では
notifyd設定ファイル
/usr/share/dbus-1/services/org.freedesktop.Notifications.service
notifyデーモン
/usr/lib/x86_64-linux-gnu/notify-osd

less でソースコードを閲覧するときに、 syntax-highlight させたい


GNU Source-hilightをインストール
$ sudo apt-get install source-highlight

~/.bashrcに以下2行追記
export LESS='-R'
export LESSOPEN='| /usr/share/source-highlight/src-hilite-lesspipe.sh %s'

参考

lessでソースコードに色をつける
http://nippondanji.blogspot.jp/2011/11/less.html

2013年5月23日木曜日

xfce applications menu についてのメモ


xfceアプリケーションメニューについてのメモ

xfceアプリケーションメニュー編集プログラムの実体は
/usr/bin/alacarte


~/.local/share/applications$

設定ファイルは
~/.config/menus/applications.menu
~/.config/menus/xfce-applications.menu

jekyll で syntax heilight

jekyll で syntax heilight


環境

Python 3.3.0
ruby 1.9.3p392 (2013-02-22 revision 39386) [x86_64-linux]
jekyll-1.0.2
jekyll-bootstrap
redcarpet-2.3.0
pygments.rb-0.5.0

2013年5月4日土曜日

Pear Linux 7 を入れてみた






Pear Linux
http://pearlinux.fr/

下のドックのアイコンを開くとアプリケーションの一覧を見れる
Ubuntu13.04より重い感じがする。





2013年5月3日金曜日

Linux Mint 14 "Nadia" - KDE (64-bit) 入れてみた







Main Page - Linux Mint
http://www.linuxmint.com/

Linux Mint 14 "Nadia" - KDE (64-bit) - Linux Mint
http://www.linuxmint.com/edition.php?id=126

Linux Mint 14 "Nadia" - KDE (32-bit) - Linux Mint
http://www.linuxmint.com/edition.php?id=125

Linux
http://linuxmint-jp.net/

Kubuntuより安定している感じでよい。
マウスカーソルが変なとこ、飛んでかないし。

2013年4月25日木曜日

CrunchBang で Display Resolution を変更する


CrunchBang で Display Resolution を変更する

右クリックから、Setings -> Openbox -> Edito autostart を選択

~/.config/openboxの最後に以下追記

#xrandr
xrandr -s 1440x1050 -r 60 &

解像度 1440x1050 リフレッシュレート 60.0Hzに設定した

2013年4月12日金曜日

青空文庫をepubに変換してみる




したいこと

青空文庫をepubに変換してみる

したこと


1. 変換ツールをダンロードする
AozoraEpub3 - 青空文庫ePub3変換
http://www18.atwiki.jp/hmdev/pages/21.html


2. 青空文庫からファイルをダウンロードする

青空文庫
http://www.aozora.gr.jp/


作品名: 夢十夜
著者名: 夏目 漱石 

夢十夜
http://www.aozora.gr.jp/cards/000148/card799.html

zip形式のものをダウンロードする
夢十夜 テキストファイル(ルビあり) zip圧縮
http://www.aozora.gr.jp/cards/000148/files/799_ruby_6024.zip

夢十夜.zipという名前で保存


3. AozoraEpub3で変換する

java -cp AozoraEpub3.jar AozoraEpub3 夢十夜.zip

[夏目 漱石] 夢十夜.zipができる




ImageMagickを使用してjpeg 画像ファイルを PDF にまとめる



したいこと

ImageMagickを使用して複数のjpeg 画像ファイルを PDF に纏める
PDFファイルを、複数のjpeg画像ファイルへと復元する


前提

ImageMagick 6.7.7-10 インストール済

やったこと


複数のjpeg画像を、1つのpdfにまとめる
convert *.jpg foo.pdf
convert *.png bar.pdf

1つのpdfを、複数の画像に分割する
convert hoo.pdf hoge.jpg
hoge-1.jpg
hoge-2.jpg
...
のような画像ファイル群が作られる

2013年4月11日木曜日

HaikuOS で Ruby


HaikuOS で Ruby


HaikuOS用Rubyの配布をしているサイトを発見
http://ports-space.haiku-files.org/

以下のファイルをダウンロード
ruby-1.9.1-x86-gcc2-2010-05-20.zip
http://ports-space.haiku-files.org/dev-lang/ruby-1.9.1-x86-gcc2-2010-05-20.zip

解凍後、HaikuOSの規則に従って、ファイルを配置。
ディレクトリのコピー時の動作が置き換えモードなので注意。
以前からあるディレクトリに、コピーしたディレクトリの内容を追記、結合したりしない。


スクリーンショット

How to download Firefox without MS IE


やりたいこと

Download Firefox without MS IE
Internet Explorerを使わずにFirefoxをダウンロードする

Download Firefox from command line
コマンドラインでFIrefoxをダウンロードする

FIrefoxのアドレス

今回、ターゲットとするFirefoxのアドレス
http://ftp.mozilla.org/pub/mozilla.org/firefox/releases/19.0/linux-x86_64/ja/firefox-19.0.tar.bz2

別のOS用 Mozilla Firefox はこちら
http://ftp.mozilla.org/pub/mozilla.org/firefox/releases/19.0/mac/ja-JP-mac/Firefox%2019.0.dmg
http://ftp.mozilla.org/pub/mozilla.org/firefox/releases/19.0/win32/ja/Firefox%20Setup%2019.0.exe

Google Chrome はこちら
https://dl.google.com/update2/installers/ChromeStandaloneSetup.exe
https://dl.google.com/chrome/mac/stable/GoogleChrome.dmg
https://dl.google.com/linux/direct/google-chrome-stable_current_i386.deb
https://dl.google.com/linux/direct/google-chrome-stable_current_amd64.deb
https://dl.google.com/linux/direct/google-chrome-stable_current_i386.rpm
https://dl.google.com/linux/direct/google-chrome-stable_current_x86_64.rpm


ファイル転送ツールを使う


wget
wget http://ftp.mozilla.org/pub/mozilla.org/firefox/releases/19.0/linux-x86_64/ja/firefox-19.0.tar.bz2

curl
curl http://ftp.mozilla.org/pub/mozilla.org/firefox/releases/19.0/linux-x86_64/ja/firefox-19.0.tar.bz2 -o firefox-19.0.tar.bz2 

テキストブラウザを使う


w3m
w3m a http://ftp.mozilla.org/pub/mozilla.org/firefox/releases/19.0/linux-x86_64/ja/firefox-19.0.tar.bz2

lynx
lynx http://ftp.mozilla.org/pub/mozilla.org/firefox/releases/19.0/linux-x86_64/ja/firefox-19.0.tar.bz2

2013年3月6日水曜日

Python3.3 で py.test を使いユニットテストする


py.testでユニットテスト

環境

$ python -V
Python 3.3.0

pip-3.3がインストールされている

py.testのインストール
pip install pytest

2013年3月5日火曜日

ruby で minitest




ruby で minitest

プログラミングRuby 1.9 -言語編- p165によると、Test::Unitを置き換える軽量テストフレームワークがMiniTest::Unitとのこと。

環境

$ ruby -v
ruby 1.9.3p385 (2013-02-06 revision 39114) [x86_64-linux]

2013年3月4日月曜日

PHPUnitを使ってユニットテスト


PHPUnitを使ってユニットテスト


環境

Xubuntu 12.10
PHP 5.3.10
PHPUnit 3.7.15

やったこと


PHP5をインストール
$ sudo apt-get install php5 php5-common php5-mysql php5-dev php5-cli php5-gd php5-curl php5-mcrypt

PEAR を インストール
$ sudo apt-get install php-pear

PEAR を 最新版にアップグレード
$ sudo pear upgrade pear

PHPUnit を インストール
$ sudo pear channel-discover pear.phpunit.de
$ sudo pear channel-discover components.ez.no
$ sudo pear channel-discover pear.symfony.com
$ sudo pear install --alldeps phpunit/PHPUnit

PHPUnit 3.7 から現行コマンドが廃止されるから、phpunit/PHPUnit_SkeletonGenerator をインストールしろとの事
$ sudo pear install phpunit/PHPUnit_SkeletonGenerator

PHP と PHPUnit の バージョンを確認
$ php -version
PHP 5.3.10-1ubuntu3.5 with Suhosin-Patch (cli) (built: Jan 18 2013 23:40:19) 
Copyright (c) 1997-2012 The PHP Group
Zend Engine v2.3.0, Copyright (c) 1998-2012 Zend Technologies

$ phpunit --version
PHPUnit 3.7.15 by Sebastian Bergmann.


Python3 で unittest する



Python3 で unittestする

unittest は Python の標準テスティングフレームワークです
というこでて、使ってみる

環境

$ python -V
Python 3.3.0

ruby で unit test


ruby で unit test

環境

$ ruby -v
ruby 1.9.3p385 (2013-02-06 revision 39114) [x86_64-linux]

2013年3月3日日曜日

php の pdo 経由で mysql に接続する


php5.4 の pdo 経由で mysql5.5 に接続する

環境


$ php -v
PHP 5.4.6-1ubuntu1.1 (cli) (built: Nov 15 2012 01:18:34)
Copyright (c) 1997-2012 The PHP Group
Zend Engine v2.4.0, Copyright (c) 1998-2012 Zend Technologies

$ mysql --version
mysql Ver 14.14 Distrib 5.5.29, for debian-linux-gnu (x86_64) using readline 6.2

2013年2月13日水曜日

ruby から mysql へアクセスする

ruby から mysql へアクセスする

環境

rubyのバージョン
ruby 1.9.3p362 (2012-12-25 revision 38607) [x86_64-linux]

mysqlのバージョン
Server version: 5.5.29-0ubuntu0.12.10.1 (Ubuntu)

mysql2のバージョン
mysql2-0.3.11

ruby-mysql2 のインストール

ruby-mysql2 の gem をインストール
$ gem install mysql2

mac から古い java を削除


不要になった古いバージョンのjavaを削除する

ファイルを削除
$ sudo rm -rf /System/Library/Java/JavaVirtualMachines/1.6.0.jdk
$ sudo rm -rf /Library/Java/JavaVirtualMachines/1.7.0.jdk
$ sudo rm -rf /Library/Java/JavaVirtualMachines/jdk1.7.0_07.jdk

パッケージをアンリンク
$ sudo pkgutil --unlink com.oracle.jdk7u7

パッケージを削除
$ sudo pkgutil --forget com.oracle.jdk7u7

~/.bash_profileの変更
下記の行をコメントアウト
export JAVA_HOME=/Library/Java/JavaVirtualMachines/jdk1.7.0_07.jdk/Contents/Home

vagrantを使ってみた

vagrantを使ってみた

rubyとvirtualboxは、インストール済み
使用したのはvagrant-1.0.6

VagrantはコマンドラインからVirtualBoxを扱えるようにするrubyで作られたツール。
仮想マシンの起動・再起動をコマンドライン上から行える

www.virtualbox.org

http://www.vagrantup.com

vagrantを使ってみる


Vagrant の導入
$ gem install vagrant

Vagrant boxのダウンロード
$ vagrant box add precise64 http://files.vagrantup.com/precise64.box

Ubuntu で mruby

Ubuntuでmruby


ソースコードの取得とmake
$ git clone git://github.com/mruby/mruby.git mruby
$ cd mruby
$ make

ビルドできたら/opt/mrubyにコピー
$ sudo cp -R build/host /opt/mruby/
$ sudo cp -R include /opt/mruby/include

brew で ffmpeg をインストールしようとしたら 404 エラーが出た


先日、brewでffmpegをインストールしようとしたら、texi2html-1.82.tar.gzが404だと、エラーが出た

$ brew install ffmpeg
==> Installing ffmpeg dependency: texi2html
==> Downloading http://download.savannah.gnu.org/releases/texi2html/texi2html-1.82.tar.gz
                                                                           0.0%
curl: (22) The requested URL returned error: 404
Error: Download failed: http://download.savannah.gnu.org/releases/texi2html/texi2html-1.82.tar.gz
texi2html-1.82.tar.gzファイルがダウンロードできないらしい。

2013年1月30日水曜日

Pythonでモジュールの自作


Pythonでモジュールの自作

自作のモジュールをつくる
つくったモジュールをパッケージ化したい
インストールしたpythonモジュールを削除したい

とりあえず適当なコード


foo.py サンプルコード
### comment                                                                                                                                                                                                                 

def say():
    print("foooo!!!")

if __name__ == '__main__':
    say()

setup.py サンプルコード
from distutils.core import setup

setup(  name = 'foo',
  version = '0.0.1',
  py_modules = ['foo'],
 )

コマンドラインから ssh をつかい GMail で読み書きする


コマンドラインからsshをつかいGmailで読み書きする


コマンドラインでGMailからメールを送る

GMailサーバに接続する

$ openssl s_client -starttls smtp -crlf -connect smtp.gmail.com:587


接続できたら、以下のようなメセージが出る
250 ENHANCEDSTATUSCODES


さくらインターネットのメールをコマンドラインで読み書きする


さくらインターネットのメールをコマンドラインで使う


前提条件
mail_server: mail.contract.sakura.jp
user_name: my_name
passwd: password



さくらインターネットのメールを読む


telnetで mail.contract.sakura.jp の 143ポート に アクセスする
$ telnet mail.contract.sakura.jp 143


接続すると以下のように表示される
Escape character is '^]'.
* OK [CAPABILITY IMAP4rev1 UIDPLUS CHILDREN NAMESPACE THREAD=ORDEREDSUBJECT THREAD=REFERENCES SORT QUOTA IDLE ACL ACL2=UNION STARTTLS] Courier-IMAP ready. Copyright 1998-2010 Double Precision, Inc.  See COPYING for distribution information.


ftpサーバーにCUIで接続してファイルをアップロードしてみる

ftpサーバーにCUIで接続してファイルをアップロードしてみる


前提となるftpサーバの設定


ftp_server: my.server.name.com
usr: my_name
pass: my_pass

コマンドラインからftpサーバにログインしてみる

ftpコマンドを使う


$ ftp
ftp> open my.server.name.com
Connected to my.server.name.com.
220 my.server.name.com FTP Server
Name (my_name.my.server.name.com:user):  my_name
331 Password required for  my_name
Password:
230 User my_name logged in
Remote system type is UNIX.
Using binary mode to transfer files.


Name (my_name.my.server.name.com:user): の後に、ユーザーネームを入力する
Password: の後に、パスワードを入力する

2013年1月29日火曜日

python3.3 から mysql5.5 へアクセスする

mysql-connector-pythonをインストールする


python3.3からmysql5.5のデータにアクセスする
mysql-connector-pythonをインストールする

環境


Ubuntu Quantal Quetzal 12.10 on VirtualBox 4.2.6
pythonは /opt/python3.3.0/bin/python3.3に、自前でビルドしてインストールしてある

$ uname -a
Linux xubuntu-vbox 3.5.0-22-generic #34-Ubuntu SMP Tue Jan 8 21:47:00 UTC 2013 x86_64 x86_64 x86_64 GNU/Linux

$ mysql --version
mysql  Ver 14.14 Distrib 5.5.29, for debian-linux-gnu (x86_64) using readline 6.2

$ python -V
Python 3.3.0

2013年1月1日火曜日

Xfce4-Terminal の 起動時 の サイズ を 変更する


Xfce4-Terminalの標準のサイズが80x24でちょっと狭い。
なので、Xfce4-Terminalの標準のサイズを広くしたい。

設定ファイルは
~/.config/Terminal/terminalrc

以下の行を探す
MiscDefaultGeometry=80x24


好みの広さに変更

MiscDefaultGeometry=80x24+0+0
で、開く場所も指定

オプションの意味
MiscDefaultGeometry=(lines)x(characters)+(from left)+(from top)

Fedora 18 に ifconfig が入って無い


Fedora 18 に ifconfigが標準で入っていなかったので、yumで入れた。

S sudo yum install net-tools

$ /usr/sbin/ifconifg

標準のネットワークアダプターの名前もeth0から変わっていた

$ /usr/sbin/ifconifg p2p1