壊れたシステムの修復のためのManjaro 0.8.13インストール
xfce4
- TOP
- Old Archives
- 壊れたシステムの修復のためのManjaro 0.8.13インストール
update-grub
できない問題は根が深く、様々なところで訊いてはみたものの、結局答えが出ない。
Manjaro 0.8.13について
Manjaro Linuxは0.9.0リリースを控えていたが、新インストーラのCalamaresのバグがなかなか解消できず、結局0.8.12でCalamaresを採用したものの、インストーラをThusに戻した0.8.13をリリースするに至った。
Manjaro Linuxの日本語を一手に引き受け、Manjaro JPも開発するrago1975さんによれば、0.9.0のThusインストーラバージョン的なものだとという。
実際にそのように感じる。というのは、XFceはGTK3を採用する4.12、KDEはPlasma5なので、デスクトップが別物になっている。 XFce版だとDMも完全に別物となっており(もしかしたらMDMから差し替えられたのかもしれないが)、雰囲気はがらっと変わった。
XFceは0.8.12でも4.12の開発版である4.11を採用しており、現行のManjaroテーマも既に採用されていたため、0.8.12からの目新しさは特にない。 とはいえ、それまでの0.8.11からすれば劇的に変わり、垢抜けないデザインが特徴だったXFceもぐっとスタイリッシュになった。0.8.12と比べてもやはり部分的に見た目も変更されている。
アップデートでは見た目に関する部分は変わらないため、「見た目が変わった」というのは、入れ替える動機にもなるかとは思うが(Plasma4がPlasma5に置き換えられるのは当面先だろうから、入れ替えはかなり大変だと思う)、今回はThusの改良に非常に力が入れられていた。
まず、Thusインストーラの起動はすごく速くなった。これまでは、忘れた頃に起動する勢いだったが、すぐに起動するようになった。
Thusは手動パーティショニングをしてもLUKSの利用ができるようになったはずだが、それについては今回試していない。
LUKSパスフレーズについては、「特殊な文字を使うな」という注意書きが増えた。「LUKSパスフレーズに記号を含めると復号化できなくなる」という問題に対応したのか。
またブートローダーはGRUB2とGummibootを選択できるようになった。しかし、Gummibootを選択するとブートローダーはインストールされない。 また、Gummibootを選択した場合、ブートできない可能性があるのでウェブサイトを見るかと聞かれる。
Thusはかなり改善されたことを感じられる。
また、0.8.11まではUEFIでインストールしても第1パーティションにGRUB_BOOT
を切っていたが、これをやめて3パーティション構成になった(ESP,
BOOT, LVM)。Gummibootにすると、2パーティションになる。
Gummibootにきちんと対応してくれると嬉しかったのだが…
なお、Manjaro 0.8.11をそのままにしてインストールすると、GRUB2でも起動しなかった。 事前にGPTを作成しておくことで無事に起動できた。
ただし、UEFIブートメニューに謎の無効な空欄エントリがあるということは変わらない。
導入しようにも…
しかし、Alternative HDD (500GB)に入れても、そこで構築してSSDに移す、というのはかなり大変な作業になる。SSDのほうが小さいからだ。
かといって、環境をイチから作るのに、現行の環境を潰してしまうと、だいぶ長く仕事ができなくなってしまう可能性がある。
散々悩んだ挙句、結局はSSDをもう1台追加することにした。 ケーブルも併せてだいたい12000円の出費。なかなか痛い。 だが、仕事を見通しが立たないまま止めるわけにもいかないし、かといって更新できない状態でも放置できないので、やむなしか。
ケーブルはAmazonで、SSDはNTT-Xで購入。NTT-Xは仕事でも使えるようなので、これからかなりお世話になることになるだろう。
ケーブルは当日、SSDは翌日に到着した。
インストール作業
インストール
まずは単純に、SSDを組み込んで元のSSDとAlternative HDDを外し、予めGPTを作成した上でThusインストーラでインストールする。
UEFIでLVM, LUKS, /home分割はon,
GRUB2を選択、なお起動時にはnomodeset
とnokmsboot
オプションが必要。
ただし、インストール後はnomodeset
及びnokmsboot
は必要なかった。
基本セッティング
まずはworldencmountの必要なファイルをtarで展開する。これでbtrfsボリュームのマウントが可能になる。
そしてzshのインストール。
なお、zsh-config
についてはかなり癖がある設定の上に、手元の.zshrcで設定できなくなるので私は好まない。
これでマウントできるようになったら、btrfsをroでマウントし、最低限のファイルをコピーする。主要な設定ファイルは
cp ~/share/manjaro-home-transition/*(#q@) .
で以降できる。データ本体は~/share
にあるため、データの以降は必要ない。
日本語フォントはあるが、日本語入力ができない状態でスタートするため、とりあえず
yaourt -S fcitx-mozc-ut
インストール前にPKGBUILDをいじってニコと英語dicを有効にしてインストール。 ただし、googlecode.comのIPv6問題があるため、その前に
yaourt -S dnsutils
してdig
を使えるようにし、
dig japanese-usage-dictionary.googlecode.com
して/etc/hostsにIPv4で決め打ちする。
私のプログラムは多くがRubyを使うため、Rubyも設定しておく必要がある。 これは次の方法で行う。元々
pacman -Q > pacman-q
としてあり、ここから
grep -F ruby pacman-q | cut -d " " -f 1 > rubypkg
として抽出。このうちインストール済みのものは必要ないので、
pacman -Q | cut -d " " -f 1 > pacman-qq
と現状のものを取得し
cat pacman-qq pacman-qq rubypkg | sort | uniq -u > target-ruby
とする。あとは
yaourt -S $(cat target-ruby)
でOKだ。
同様の方法でTTFファイルもインストール。
また、EncFSをコアに入れているので、EncFSをインストール。
yaourt -S encfs
また、nemoはテンプレートディレクトリにシンボリックリンクを許容するが、Thunarはしないので、シンボリックリンクをやめて、コピーに
rm template
cp -R share/template .
さらに、エスケープしたfstabをベースにfstabを修正する。 その前にVIもVimもなくて混乱するため(例えばvipwはあるのに、vipwはできない)、インストールしておく。
yaourt -S gvim vi
とりあえずエディタはmousepadが使える。とりあえずはmousepadで修正しリブート。
日本語周り
fcitx-mozc-utだけ入れたが、それさえ入っていなかった。 そして、日本語周りはManjaro JPベースではないため、それなりに複雑だ。
まず、fcitx-mozc-utがベースになるので、それをインストール。
yaourt -S fcitx-mozc-ut
各ツールキットに対して入力するためのパッケージと、設定のためのパッケージも導入
yaourt -S fcitx-gtk2 fcitx-gtk3 fcitx-qt4 fcitx-qt5 fcitxconftool
これだけでは入力できないため、~/.xprofile
に追記
export GTK_IM_MODULE=fcitx
export GTK2_IM_MODULE=fcitx
export GTK3_IM_MODULE=fcitx
export QT_IM_MODULE=fcitx
export XMODIFIERS="@im=fcitx"
export DefaultIMModule=fcitx
export PATH=/home/aki/bin:$PATH
$PATH
は別件だが、ついでに書いておいた。XMODIFIERS
をXMODIFERS
と書いており、LINEやSkypeに対して日本語入力できないという問題が発生して若干ハマった。
なお、さらに後ほど突如としてGTKアプリケーションに対してfcitxが有効にならず、
gtk-query-immodules-2.0 --update-cache
gtk-query-immodules-3.0 --update-cache
しても直らず、結局両パッケージをアンインストールした上で再インストールしたら直った、などということもあった。
そして再起動。
パッケージインストール part1
先にいくつか使われるのがわかっている~/.config
以下のファイルをコピーしておく。
.config以下はそのままシンボリックリンクに変換できないからだ。
cp ~/share/manjaro-home-transition/.config/usr-dir* .config/
cp -R ~/share/manjaro-home-transition/.config/opera-developer .config/
cp -R ~/share/manjaro-home-transition/.config/tasque .config/
cp -R ~/share/manjaro-home-transition/.config/fontconfig .config/
そして次のパッケージをインストールしていく。
- ctags
- leafpad
- medit
- geany, geany-plugins
- smplayer, smplayer-themes, smplayer-skins
- opera-developer
- linux405
- infinality*
- wine
- plasma
- kde-applications
- kopete
Wine * LINEで文字が非常に汚い、という問題があったが、いつの間にか直った。
KDE5関連はplasmaパッケージで、kde-applicationと合わせるとかなりの部分がインストールされる。
kopeteのファイルは~/.kde4
以下にあるので、これをコピーする。
cp -R ~/share/manjaro-home-transition/.kde4/share/apps/koepte ~/.kde4/share/apps/
cp ~/share/manjaro-home-transition/.kde4/share/config/kopeterc ~/.kde4/share/config
KDE5
KDE5は、KDE4よりもさらにスタイリッシュにはなったが、スマホっぽいふらっとUIになり、洗練されたがいかにも重量級な「すごい演出」は損なわれた。
また、非常に多くの機能が未実装だ。
マルチディスプレイの対応についてはkscreenパッケージで対応できるが、細かく設定ができない。 Catalystで設定することはできるが、永続しない。
また、systrayが未実装(!)。libappindicatorとsni-qtを使えばいけるような話なのだが、実際はいくつかのアプリケーションがこれでもsystrayに入らない。
相変わらずKDEで設定が効かない部分があるので、
- kde-gtk-config
- kcm-gtk
を導入、さらにqtconfig-qt4を使って設定する。
悪くはないけれど、KDE4から乗り換えるには早いか。 アニメーションはKDE5のほうがパワーアップしているが、KDE4よりも良いかと言われると悩むところ。 少なくとも、設定の問題でKDE4のほうが現状は良いと思う。
KDEとXFce
そして、KDEで設定するとXFceのUIが壊れたりするのでたちが悪い。 この設定はかなり難しいが、基本的には「設定マネージャー→外観」でテーマ設定してからgtk-theme-configで調整すれば良い。
ちょっとややこしいが、gtk-theme-configはextraに"gtk-theme-preferences"という名前でパッケージがあり、さらにAURに"gtk-theme-config"というパッケージもある。 恐らくは公式入りしたが、AURのパッケージ作者がメンテナになっているわけではないのだろう。
より細かく設定するならばxfce-theme-managerがあれば良いが、場合によってはより迷宮入りする。KDEといったり来たりすることになるだろう。
なお、一度XFceが起動不能になり、~/.config/xfce4を吹き飛ばして作りなおすはめになった。この場合、skelからコピーするのが近道。
パッケージインストールpart2
- cinnamon
- xsane
- xfce4-theme-manager
- fetchmail
- spamassassin
- razor
- virtualbox*
- tasque
- skype, skype-call-recorder
- openssh, sshfs
- lv
- w3m
- nss-mdns
- amarok
- audacious, audacious-plugins
- libcue
- audacity
- inkscape-gtk3-bzr
Inkscapeは猛烈に長い。
Zeroconfの設定は、これに加え/etc/nsswitch.conf
にmdns-minimalを書くこと。avahi-daemonは標準で起動。
Pandoc
相変わらずhaskell-pandocパッケージが入らないので
yaourt -S ghc cabal happy alex
してから
export PATH=$HOME/.cabal/bin
cabal update
cabal install pandoc
PDF出力用に…
yaourt -S texlive-core texlive-langcjk
うまくいった。
TODO
今わかっているのは、Spamassassinのsa_learnで学習したデータを持ち込んでいないこと。
あと、SOXもまだインストールしていない。 それ以外は恐らくは必要になったら足す形で、ゴミパッケージをなるべく増やさないようにするだろう。結局使えなかったものをためこんでしまったからだ。
また、英数キーを押すと問答無用でCapsLockになる、というトラブルも出ている。