mimikakimemo

自分用メモ。

iiyama のディスプレイを修理に出した

昨年1月に iiyama のディスプレイを購入した。

可もなく不可もなくといった感じで使っていたが、今年の夏ごろから調子が悪くなることがあった。症状としては、電源を入れた際に画面が乱れたままになる、青成分が抜けた表示になる、など。調子が悪い場合でも何度か電源を ON/OFF すれば直っていたため、しばらく様子を見ていたが、そのうち電源自体が入らなくなってしまった。

3年間のメーカー保証がついていたので、iiyama に電話で問い合わせてみることに。担当者に症状とシリアルナンバーを伝えたところ、修理で対応してもらうことになった。保証があるので費用は無料だが、その前に、故障したディスプレイをこちらから発払いで送る必要がある。

ディスプレイ購入時の箱を捨ててしまったと告げたところ、では梱包用の箱を送りますとのことで、数日して大きな段ボール箱が届いた。中には梱包材(クッション)が詰め込まれており、これにそのままディスプレイを入れて修理工場へ送り返せば良い。箱や梱包材を用意してくれる点は非常に楽でよかった。送料は東京→長野で1,580円。

故障したディスプレイを送った後、1週間弱で修理されて戻ってきた。同封の修理完了報告書によればメイン基板が故障していたらしく、これの交換を行なったとのこと。修理後は不具合もなく、めでたしめでたし。

Grunt を使う

Node.js のインストール

$ sudo add-apt-repository ppa:chris-lea/node.js
$ sudo apt-get update
$ sudo apt-get install nodejs
$ node -v
v0.10.15

Grunt のインストール

$ sudo npm install -g grunt-cli
…
/usr/bin/grunt -> /usr/lib/node_modules/grunt-cli/bin/grunt
grunt-cli@0.1.9 /usr/lib/node_modules/grunt-cli
├── resolve@0.3.1
├── nopt@1.0.10 (abbrev@1.0.4)
└── findup-sync@0.1.2 (lodash@1.0.1, glob@3.1.21)

作業ディレクトリに package.json を作る。

$ cd 作業ディレクトリ
$ npm init
(てきとうに入力)

ここに Grunt と、使いたい Grunt プラグインをインストール。

$ npm install grunt --save-dev
…
grunt@0.4.1 node_modules/grunt
├── which@1.0.5
├── dateformat@1.0.2-1.2.3
├── colors@0.6.1
├── hooker@0.2.3
├── async@0.1.22
├── eventemitter2@0.4.12
├── coffee-script@1.3.3
├── underscore.string@2.2.1
├── iconv-lite@0.2.11
├── lodash@0.9.2
├── findup-sync@0.1.2 (lodash@1.0.1)
├── nopt@1.0.10 (abbrev@1.0.4)
├── glob@3.1.21 (inherits@1.0.0, graceful-fs@1.2.3)
├── minimatch@0.2.12 (sigmund@1.0.0, lru-cache@2.3.0)
├── rimraf@2.0.3 (graceful-fs@1.1.14)
└── js-yaml@2.0.5 (esprima@1.0.3, argparse@0.1.15)
$ npm install --save-dev grunt-contrib-concat grunt-contrib-uglify
…
grunt-contrib-concat@0.3.0 node_modules/grunt-contrib-concat

grunt-contrib-uglify@0.2.2 node_modules/grunt-contrib-uglify
├── grunt-lib-contrib@0.6.1 (zlib-browserify@0.0.1)
└── uglify-js@2.3.6 (async@0.2.9, source-map@0.1.27, optimist@0.3.7)

package.json の devDependencies に情報が追加されているのがわかる。

  "devDependencies": {
    "grunt": "~0.4.1",
    "grunt-contrib-concat": "~0.3.0",
    "grunt-contrib-uglify": "~0.2.2"
  }

Grunt を使う

やりたいことは Gruntfile.js というファイルを作ってそこに書く。

$ grunt タスク名

とするとそのタスクが実行される。

Thunderbird の設定

一定文字数で折り返さない

mailnews.wraplength を 0 に変更(デフォルト:72)。

デフォルトの並びを降順(新しいものが上)にする

mailnews.default_sort_order を 2 に変更(デフォルト:1)。

署名

アカウント設定 の 署名編集 欄に入力する。先頭の "-- " は自動で付加されるので、含めない。

アカウント設定 > 編集とアドレス入力 > 返信時には元のメッセージを自動的に引用する > キャレットの初期状態 を「引用部の上」にする。

SSHサーバを立てて公開鍵認証で接続する

サーバ側の準備

インストール

$ sudo apt-get install openssh-server

sshd の設定

/etc/ssh/sshd_config を以下のように書き換える。

Port てきとうに選んだポート番号    # デフォルトの22からポートを変更
PermitRootLogin no   # ルートでのログインを拒否

ファイヤウォールの設定

$ sudo ufw allow 選んだポート番号/tcp

sshd の再起動

$ sudo service ssh restart

ここで指定する名前はなぜか sshd ではなく ssh なので注意。

接続して確認

クライアント(LAN内の他のPC)から

$ ssh -p ポート ユーザ名@サーバのIP

として、サーバにログインできるか確かめた。

公開鍵認証の設定

公開鍵の登録

クライアントから

$ ssh-copy-id ユーザ名@サーバのIP

とするだけで一発で登録できる(初めて知った)。

パスワード認証の禁止

/etc/ssh/sshd_config で以下のように設定してパスワード認証を行わないようにする。

PasswordAuthentication no

その他

LAN外からもアクセスしたいので、ルータの設定を変更して選んだポートを開放した。

Emacs 24 をビルドしてホームディレクトリ内にインストール

Emacs 23 しか入っていない+管理者権限のない環境で Emacs 24 を使いたくなったので、ビルドして ~/local 以下に入れてみた。手順はほぼこの記事通り。

$ wget http://core.ring.gr.jp/pub/GNU/emacs/emacs-24.2.tar.gz
$ tar xvf emacs-24.2.tar.gz
$ cd emacs-24.2
$ ./configure --prefix=/home/mimikakimemo/local

とやったら gif や tiff を扱うライブラリがどうのこうの言われた。今回は別にいらないので、指示通り --with-gif=no --with-tiff=no をつけて再実行。

$ ./configure --with-gif=no --with-tiff=no --prefix=/home/mimikakimemo/local
$ make
$ src/emacs -Q  # ちゃんと動くか確認
$ make install

で ~/local 以下にインストールされる(本体は ~/local/bin/emacs)。あとは適宜、環境変数$PATHの設定をして完了。