今夜もLab.に独り

蛙飛び込むVimの音

はじめてのハードいじり

今日はじめてグラボ装填作業をした

DeleteキーでBIOSのセットアップに入るシステムを初めて見たので覚書。

ハード全然わからないけれど、いじるの結構楽しい

ドライバ

Ubuntu 14.04にNVIDIA FX1700を移植

最新ドライバをapt-getで引っ張ってこられるようなので設定

add-apt-repository ppa:xorg-edgers/ppa
apt-get update
apt-get upgrade
apt-get install nvidia-current nvidia-settings

デスクトップ環境の停止/再開

肝心な時に思い出せないので覚書

sudo service lightdm stop      "停止
sudo service lightdm start     "再開

インストールが終わったら一度再起動する必要あり

cinnamonがクラッシュしてびびった

再起動後は特に問題なさそう

Ubuntu14.04でVimのビルド

luaとかperlとかの拡張を入れておきたいので覚書。

下準備

apt-get build-dep vim

ビルドに必要なものを取ってくる便利なコマンド

忘れずに拡張用の言語も取ってくる

apt-get install git lua5.2 luajit python3 ruby perl

追記

apt-get install libluajit-5.1 libpython3-dev libperl-dev
をインストールしたらそれぞれ動的にリンクできた
rubyは特に追加しなくてもよかった(と思う)

Vimのソースは本家から

wget ftp://ftp.vim.org/pub/vim/unix/vim-7.4.tar.bz2

作業開始

サクッと解凍してcd

bzip2 -dc vim-7.4.tar.bz2 | tar xvf -
cd ./vim74/src/

Makefileを直接編集して以下の行をコメントアウト

388行目: luaをluajitありで静的にリンク
412行目: perlを静的にリンク
429行目: python3を静的にリンク
436行目: rubyを静的にリンク
465行目: マルチバイト文字を使用
477行目: X Input Methodを使用
506行目: 拡張機能をできるだけ使う

編集後は以下のコマンドを打つ

make installの前にお好みでmake testしてもよい

sudo make
sudo make install

以上でビルド終了。

vim --version

で、機能の確認をする。(+でオン、-でオフ) オフになっている機能は、コメントアウトする行を変えて再コンパイルするとオンになるかも。

luaが入らないとneocomplete使えなくて不便なので、最悪luajit無しでもいいからオンにすべし。

gvim

GVimが起動するかどうかも確認しておくとよい。

Ubuntu14.04へcinnamon導入、日本語ディレクトリを英語に

研究室のサーバ設定で使ったので覚書。

cinnamon

レポジトリの追加が必要

add-apt-repository ppa:tsvetko.tsvetkov/cinnamon
apt-get update
apt-get install cinnamon

日本語ディレクトリ >> 英語

端末で日本語使うのだるいもん

LANG=C xdg-user-dirs-gtk-update

Synergyのビルド

本日、Win7とUbuntu14.04のマルチディスプレイ環境をつくるためにSynergyを導入したら

途中でどうにも接続できなくなって詰まった。

つまづいた点

Synergyのバージョンを揃えないとダメっぽいことを知らなかった。

パッケージ管理に任せてインストールしたらバージョンがまるで違った。

解決

手動インストールしてバージョンを揃えた。

Windows

Chocolateyでサクッと導入。

chocolatey install synergy

この時点で、Win7にはsynergy-1.5.0が入った。

Ubuntu(失敗編)

特にリポジトリの追加をしていないapt-getでサクッと導入。

sudo apt-get update
sudo apt-get install synergy

この時点で、Win7にはsynergy-1.4.12が入った。

この1.5.0と1.4.12の組み合わせは動作しないという情報がWebのあちこちに転がっているようだけれど、それを知らなかった俺はそのまま20分くらい必死に作業していた。

バージョンを揃えればとりあえず動くらしいので、おとなしく

sudo apt-get remove synergy

でさようなら。

Ubuntu(解決編)

githubから1.5.0のソースを取ってきて、手動で導入。

https://github.com/synergy/synergy

masterの最新は1.5.1だけれど、ブランチ選択の上にある xx releases をクリックすれば各リリースを辿れる。

wget https://github.com/synergy/synergy/archive/1.5.0.tar.gz
tar zxvf 1.5.0.tar.gz

ってするとカレントディレクトリにsynergy-1.5.0が解凍される。

コンパイルに必要なものはdevelopper用wikiを参照。

http://synergy-project.org/wiki/Compiling

とりあえずUbuntu 10.04のdependencyと同じだと思って用意。

ちょっと心配だったので一応--reinstallで上書き強制。

sudo apt-get update
sudo apt-get install cmake make g++ xorg-dev libqt4-dev libcurl4-openssl-dev libavahi-compat-libdnssd-dev --reinstall

満を持してコンパイル

cd synergy-1.5.0

./hm.sh conf -g1

./hm.sh build

で終了。

実行ファイルは全てsynergy1.5.0/bin/に収まっているので、後は適宜PATH通すなりなんなりと。

一応、GUIで設定に使うのはsynergyで、クライアント起動用の実行ファイルがsynergycだったはず。

クライアントの自動起動

今回はWin7につないでいるマウス・キーボードをUbuntuで認識させたかったので、

Win7側をサーバ、Ubuntu側をクライアントでそれぞれ起動。

Ubuntuのクライアント自動起動は、

sudo vim /etc/lightdm/users.conf

してファイル末尾に2行追加。

#synergy
synergycの絶対パス -n サーバのスクリーン名

余分なマウスとキーボードが無くなって、机の上がすげー快適。

再起動したら動かなかった。

https://help.ubuntu.com/community/SynergyHowto#Autostart_Synergy_before_logging_in_.28LightDM.29

を見たら一番下に書いてあったので、改めて

sudo vim /usr/share/lightdm/lightdm.conf.d/50-ubuntu.conf

してファイル末尾に追加。

greeter-setup-script=/wgetしたディレクトリ/synergy-1.5.0/bin/synergyc --crypto-pass <暗号化passphraseのハッシュ> <サーバのIP>

ですっきり解決。

Win7のIPは研究室の制約でDHCPなので、avahiに働いてもらってホスト名.localでIP解決している。

ちょっと驚いたのは、<暗号化passphraseのハッシュ>は、サーバ側の暗号化設定で入力した<暗号化passphrase>と同じではない。

https://wiki.archlinux.org/index.php/synergy#Use_Encryption

を参考に、

echo -n <暗号化passphrase>|md5sum

の返り値を設定したら動いた。ちょっと面倒くさい。

サーバの設定ファイルとWindows

Windows様のシステムが良く使う半角スペース入りの名前のディレクトリを親に持つと、設定ファイルの絶対パスが正しく入力できなくなる。

エスケープ文字とかも無いらしいので、不作法を承知でC:/に直接おいている。

現在の環境

2014/10/21現在の個人環境

研究室

自宅

なんかこう、節操のない感じがする。

何書けばいいかわかんないけど、こういう記録も後で見返すと面白いのかなー。

ブログを始めてみた

友人におだてられてカエルが木に登りました。

プログラミングのこととか作業環境のことをブログにして備忘録を付けることになった。

まず一つ投稿してみた感じだと、結構まめに書き溜めなきゃヤバそうだねこれは。

PC環境(Windows)まとめ

色々試してよかったものまとめ。

思い出したら追加する感じで。

Last Update: 2014/10/21

管理系

Chocolatey

Windows用パッケージ管理システム

Git

バージョン管理システム

gem (rubygems)

パッケージ管理システム(のwindows版)

エディタ系

GVim

メインエディタ

SublimeText 3

サブエディタ

Migu 1M

日本語・英語ともにすごく見やすい等幅フォント

通信系

RLogin

WindowsSSHクライアント

Xming

WindowsX11サーバアプリケーション

WinSCP

Windows用SCPクライアント( GUI )

Synergy

ローカルとリモートでマウス・キーボード共有

仮想マシン

VirtualBox

仮想マシン用環境

Windowsデフォルト系

Snipping Tool

スクリーンキャプチャ用ツール

リモートデスクトップ接続

Windowsマシンへのリモート接続

雰囲気系

Fences

デスクトップ整理ツール

f.lux

モニタの色温度変更ツール(目に優しい)

テキスト整形系

bluefeather

Markdown(拡張書式) -> html変換

plantuml

テキストからumlグラフ出力

pandoc

Markdown -> tex変換ほか多数のファイル形式に対応