投稿

Haskell のプログラミング環境を整える

イメージ
Haskell のプログラミング環境を Arch Linux 上に整備します. Haskell のプログラムを実行するには,開発環境が必要となります.Haskell 用の開発環境にはいろいろありますが,今回は ghc をインストールします. Haskell のプログラムは Emacs で書くことにします.Eemacs のインストール方法は パソコンの Arch Linux に Emacs をインストール が参考になるかもしれません. haskell-mode という Emacs の補助ツールが非常に便利ですので,これもインストールします. ghc のインストール ghc の現在の最新版は 7.8.4 です.pacman で簡単にインストールできます. $ sudo pacman -S ghc インストールがうまくいっていれば,以下のコマンドでバージョンが分かります. $ ghc --version The Glorious Glasgow Haskell Compilation System, version 7.8.4 haskell-mode のインストール haskell-mode の現在の最新版は 13.10 です.haskell-mode も pacman で簡単にインストールできます. $ sudo pacman -S emacs-haskell-mode ただ,Emacs で haskell-mode を利用するためには若干の設定が必要です. .emacs.d/init.el に以下の6行を追加します. (add-to-list 'load-path "/usr/share/emacs/site-lisp/haskell-mode/") (load "haskell-mode-autoloads.el") (add-hook 'haskell-mode-hook 'turn-on-haskell-simple-indent) (add-hook 'haskell-mode-hook 'turn-on-haskell-indent) (add-hook 'haskell-mode-hook 'tur...

broadcom-wl の不具合

イメージ
どうやら arch linux でカーネル 3.18.2 と broadcom-wl の組み合わせで無線 LAN がつながらない障害があるようだ. うちのパソコンで arch linux が立ち上がらなくなったので,OS を再インストールしたら,見事にカーネル 3.18.2 と broadcom-wl の組み合わせになってしまった. うちのパソコンは無線 LAN 内蔵の Dell inspiron 1525. $ lspci | grep Network 0b:00.0 Network controller: Broadcom Corporation BCM4321 802.11a/b/g/n (rev 03) 症状は, OS は無線 LAN 子機を認識している. 親機とも正常に接続している. dhcpcd で IP アドレスも取得できる. ping 8.8.8.8 で unreachable となる. これでも症状は軽くなった方らしく,その前はカーネルパニック続出だったらしい. カーネルをアップグレードしてこの組み合わせになった人たちは軒並みカーネルをダウングレード(3.17.6)して対処しているようだ. しかし,新規インストールの場合,この手が使えない. 結論から言うと,broadcom-wl をアンインストール後,b43-firmware をインストールしてカーネルモジュール b43 と ssb を読み込むように設定したら使えるようになった. 本当に b43-firmware が必要かどうか検証していないので,無駄なことしてるかもしれない. broadcom-wl や broadcom-wl-dkms ではいろいろ試したが,結局つながらなかった. 今日はこの辺で. 応援よろしくにゃ〜. にほんブログ村

blogspot.jp へのアクセスが復活

週末,ブログを見ようとしたら,アクセスできなかった. blogspot.com.au などではアクセスできたけど,blogspot.jp はダメだった. 11月8日未明から障害が起きていたらしい. 原因は今のところ不明だけど,復帰してよかった. ではでは.

Google Drive に ChangeLog メモを置く

イメージ
デスクトップ環境,ウェブブラウザ,日本語入力環境,Emacs をインストールしたので,だいぶ様々な作業ができる環境が整ってきた.そうなると,作業の記録を取りたくなってくる.適当なファイルに作業メモを記録しておいてもいいが,OS の再インストールの際に誤って消してしまうと悲しい.クラウドに保存しとけば,いきなり HDD などが壊れてもデータが消失することはない(セキュリティー的にリスクは増えるが). そこで,ChangeLog メモを Google Drive 上に置くことにした.ChangeLog メモとは, 横着プログラミング 第1回: Unixのメモ技術 や 私の ChangeLog メモ活用法 で紹介されている ChangeLog 形式でメモを取る方法である.利点や欠点はそれぞれの紹介ページを参照してほしい.ChangeLog メモをクラウドで保存するためには,テキストファイルをクラウド上に保存でき,ネットにつながっていればいつでもそのテキストファイルを(できれば Emacs で)編集できるのが望ましい.一つの解決策として,Google Drive を google-drive-ocamlfuse でマウントして,Emacs からテキストファイルを編集する方法を紹介する. google-drive-ocamlfuse のインストール yaourt で一発 ... ならよかったが,そうは問屋が降ろさない.しかし,誰かが修正して yaourt 一発になる日が来るかもしれない.とりあえず,一度,yaourt でインストールしてみる. $ yaourt -S google-drive-ocamlfuse いろいろインストールしないといけないが,最終的に以下のようなエラーメッセージが表示されて異常終了する. gcc: エラー: /usr/lib/ocaml/curl/curl.a: そのようなファイルやディレクトリはありません gcc: エラー: /usr/lib/ocaml/extlib/extLib.a: そのようなファイルやディレクトリはありません File "caml_startup", line 1: Error: Error during linking Command exited with code 2. C...

パソコンの Arch Linux に Emacs をインストール

イメージ
UNIX 系の定番エディタは Emacs.Vi は軽量で,設定変更などのちょっとした修正の時には重宝するが,ガッツリ文章を書いたり,プログラムを書く時などは Emacs の方が便利だ.mozc もインストールしたし,Emacs で日本語の文章が書けるようにする. Emacs のインストール 何も難しくはない.pacman で emacs をインストールするだけ. $ sudo pacman -S emacs $ emacs --version GNU Emacs 24.3.1 Copyright (C) 2013 Free Software Foundation, Inc. GNU Emacs comes with ABSOLUTELY NO WARRANTY. You may redistribute copies of Emacs under the terms of the GNU General Public License. For more information about these matters, see the file named COPYING. emacs 24.3.1 がインストールされた. emacs-mozc のインストール Emacs で Mozc を使うには emacs-mozc をインストールする必要がある. $ sudo pacman -S emacs-mozc Emacs の設定 Emacs の設定は自由度が高く,また Emacs Lisp と呼ばれるプログラミング言語で記述しなければならないので,非常に難解.さらに,バージョンごとに微妙に記述方法が変わったりするので厄介.とりあえず,次の画像が Emacs を起動した直後のウィンドウ.ちなみに,この画像は shutter というツールを使って撮った.pacman で容易にインストール可能. Emacs の設定は ~/.emacs.d/init.el に記述する.Emacs で Mozc を使えるようにするのも ~/.emacs.d/init.el に設定を書く.上の画像をよく見ると,File や Edit などのメニュー,保存ボタンなどのツールバー,GUI 上で画面をスクロールするためのスクロ...

パソコンの Arch Linux に Chrome をインストール

イメージ
今回は Arch Linux にウェブブラウザをインストール.せっかく GUI が使えるようになったんだから,Arch Linux 上でブログを更新したい. まだ GUI を導入していない場合, LXDE のインストール方法 が参考になるかも. Chrome のインストール ウェブブラウザとして,Chrome をインストールすることにした.Chromium は Chrome をベースとしたオープンソース版.pacman でインストールできるところが強み.ただ,Adobe Flash Player に対応していない.Chromium で Flash Player を使おうとすると,結局,Chrome をインストールすることになる.別に Flash Player が使いたいわけではないが,Windows 上の Chrome との互換性なども考慮して Chrome をインストールする. $ yaourt -S google-chrome 特に難しいことは何もない. 日本語入力 Chrome をインストールしただけでは日本語を入力できない.日本語を入力する方法にはいくつかあり,どれを選べばいいのか悩むところ.というか,Fcitx だの Ibus だの Mozc だの Anthy だの何なんだこれ. いろいろ調べて分かったことは,日本語入力を実現するためには,アプリごとの日本語入力を共通化してくれる「インプットメソッドフレームワーク」と実際に漢字変換を行う「インプットメソッド」を何にするかを決めなければならないということ. Fcitx,Ibus,Uim がインプットメソッドフレームワークと呼ばれ,Mozc,Anthy,ATOK がインプットメソッドと呼ばれる.漢字変換の賢さはインプットメソッドの性能に依存し,漢字変換の使い勝手はインプットメソッドフレームワークに依存する. 今回はインプットメソッドフレームワークとして Uim,インプットメソッドとして Mozc を採用する. Mozc のインストールでは Mozc を配布している非公式リポジトリを使うので, /etc/pacman.conf に以下の3行を追加して,パッケージデーターベースを更新する. $ sudo vi /etc/pacman.conf [pnsf...

パソコンの Arch Linux に LXDE をインストール

イメージ
今回は GUI の導入編. Arch Linux のインストール方法 や 無線 LAN の設定方法 の続き. GUI を導入すると,root でログインできなくなるので,まずはユーザーの作成から. ユーザーの作成 ユーザーの作成は useradd コマンド.グループを wheel にして,/home 以下にホームディレクトリを作成する.また,sudo で root 権限が使えるように visudo で設定する. # useradd -m -G wheel cota # visudo %wheel ALL=(ALL) ALL ← コメントを外す # passwd cota LXDE のインストール ようやく GUI をインストールする準備が整った.GUI として LXDE をインストールする.LXDE は軽量の GUI.まず,ビデオチップを調べる. # lspci | grep VGA 00:02.0 VGA compatible controller: Intel Corporation Mobile GM965/GL960 Integrated Graphics Controller (primary) (rev 0c) Intel のチップを使っていることが分かったので,xf86-video-intel を使うことにする.そして,必要なものをまとめてインストールする.インストール後,OS 起動時に GUI が起動するように設定する. # pacman -S xf86-video-intel xorg-server lxde # systemctl enable lxdm.service キーボードを日本語配列にする デフォルトでは US 配列になっているので不便.日本語配列にするには,以下の通り.ついでに caps lock を ctrl キーに変更している.入力する際," は *,: は + で入力可. # vi /etc/X11/xorg.conf.d/01-keyboard-layout.conf Section "InputClass" Identifier "keyboard-layout" ...