途中からメモしてるのもあるので、わりとカジュアルに抜けていそうだが、まあ大体情報転がってるだろう :yoshi:
同様の状況になってた方いればコメントくださいくれ
基本姿勢として、ほぼ ArchWiki に書いてあることをやっているだけである。
とくに意識して入れたものとハマったところを記述しているだけなので、真似する場合はこんな記事見ずに ArchWiki 見て、どうぞ
ArchLinux の install
installをメモるのを忘れた :atamanowaruihito:
こんどMacにでも入れるときに書き残したい
pacstrap
インストールの中で、pacstrapコマンドでlinuxカーネルやら開発用のコマンドやらを一気に入れるところがある。
bootするisoはshellも機能豊富、コマンドもある程度入っているのだが、
インストール後に立ち上げたArchにはほぼ何も入っていない状態になる。
なので、先にインストールしておいたほうがいいものもそこそこあるので記載。
# pacstrap /mnt base base-devel linux linux-firmware ...この先好きなものいれる
例えば以下
linux: カーネル。LTSがいい場合は linux-lts
に置き換え。そもそもカーネルにLTS使いたがる人がArchLinuxを使うとは微塵も思えんのだが
neovim: なんかしらのエディタを入れるべき。vimでも可。emacsでも可。
dialog: CUIでwifiつなぐために入れておく。GUIでNetworkManager使うまでor緊急時のコマンド。
AUR
AUR helper YAY
pacman公式リポジトリ以外から入れたいとき、ビルドからやってくれるパッケージマネージャ。
よくYaourtで入れてる記事があるが、YaourtはOUTDATEになったので、更新されている yay
をオススメ。
debtap
debianの.debをarchで使いたいときに。
基本、debしかないときぐらいしか使わないかも
Network
dhcpcd
(dhcpdはDHCPサーバーのdaemon。dhcpcdはclient daemon)
# systemctl enable dhcpcd@ここにインタフェース名.service
で有効化
現在は諸般の都合(このみ)でdhclientを使用
VPN
これまた記事を書いているタイミングで社会情勢からリモート化がすすみ、会社もリモートになった。
L2TP/IPsec の接続が恐ろしく面倒なので、なんとかして楽をしたい。
UbuntuならGNOME版のl2tpプラグインで行けそう
https://blog.komeho.info/2018/06/03/2102/
Archでも設定として入れれば、行けそうな気がする。定かではない。
bluetooth
Archwikiの通りやっていくが、
bluetooth のヘッドセット (イヤホンマイクなやつ) のためにpulseaudio-bluetoothもいれる
# pacman -S bluez bluez-utils pulseaudio-bluetooth
あと、bluetoothctl のペアリングは癖があった。
対話シェルでCUIな感じで操作するが、 pair MACアドレス
を叩いてペアリング中も、他の操作ができてしまったりする。
ココらへん非同期でやってくれているみたいだが、いつプロセスが完了したか、みたいなのが非常に分かりづらい。
だいたいペアリングって思ってるより時間かかるということを忘れていて、ペアリングがSuccessしたか確認せず、すぐ connect して Failed になってしまう...みたいなのが起きがち。
その他環境
ターミナルエミュレータ
- Alacritty
- Konsole
上のが使いたいが、ちょっとArch+i3+lightDMだと不安定かも?i3がよくなさそうか?
解凍
unarchive
WinからのCP932のzipを解凍できる
はやく ShiftJIS is DEAD って言いたい
キーボード
としていたが、CtrlとCapsのswapが面倒だったので、今はsetxkbmapのオプション指定で切り替えている。
フォント
/etc/fonts/local.conf に設定をぶっこむ
なるべく英語優先でフォントを当てたい構え
- Sans-serif ゴシック
- Helvetica Neue
- 手元にあったので手動でいれた
- 源ノ角ゴシック Source Han Sans
# pacman -S adobe-source-han-sans-jp-fonts
- Helvetica Neue
- Serif 明朝
- あまり興味ないので初期設定のまま
- Monospace
- Cica
$ yay -S ttf-cica
- Cica
絵文字を使うために
(noto-color-emoji)
ttf-joypixels
日本語IM
# pacman -S fcitx fcitx-mozc fcitx-configtool fcitx-im
-
Mozcでそこそこ使うための暫定設定
- ステータスバーのキーボードマークを右クリックし、 Configure
- keyboard-Japanese (日本語入力ではなく、JISキーボードということ)
- mozc (こちらで日本語入力をする)
-
英数/かな 設定
macと同じような設定にするには、
fcitx側のadvance設定からimeのactive/inactiveいじる -
WIP:日本語入力できないアプリがある
いじってたら一応動作した?とおもう
ただリアルタイムの反映ではない。確定時に文字が一気に入る感じ。
https://qiita.com/aki-s/items/809db571465bb041cc48
このあたりの記事でも言及されていたが、gtk3のGUIがなかった説は今のとこ有力。
# pacman -S fcitx-frontend-gtk3
# pacman -S fcitx-gtk2 fcitx-gtk3 fcitx-qt5
もうやたらめったらである。
この、gtk3入れて再起動したあたりで動いた感あった。
ただchromeでは使えてたのがよくわからず。
chromeはgtk+だったから動いていたとか?
https://mag.osdn.jp/14/03/13/150000
この時点でgtk+からAuraに変わってる。今もAuraだろうか。だからmozcは使えてたんかな
あと、記述中、ウィンドウ内にリアルタイムで表示がされない(確定しないと出てこない)ものがあったので、
とりあえず、以下の記事見ながら、Fcitx XIM Frontend を有効にし、追加の Configure のチェックいれて(Use On The Spot Style for XIM)、fcitxをrestartしたら動いた
http://fedoranize.seesaa.net/article/448609682.html
一応、今度時間とって fcitx-diagnose の診断みながらいじってみるべきか。
200723追記:
KonsoleとかKDEについては ~/.xprofile
の設定が必要そう。
今の所下記で動作した
KonsoleはQT_IM_MODULEを書いたら動作したのでもうこれわかんねぇな
export GTK_IM_MODULE=fcitx
export QT_IM_MODULE=fcitx
export XMODIFIERS="@im=fcitx"
ショートカット
画面lock
⌘+L (winに揃えた)
- WindowManager系
Application から Window Managerを選択すると、設定がひらく。
Super + ←,→
を ワークスペースの切り替えにあててみる。
winだと、Win+Ctrl+左右
なので、Ctrl間違っておしそう
マルチディスプレイ
linux-headersがカーネルに合ったただしいのが入っていなかったらしい。
https://savoisn.github.io/post/displaylink_on_arch/
参考
USB3.0-DVI でマルチディスプレイをしたいので、DisplayLink で接続する
Debianはこのあたりいれてる dkms libdrm-dev
https://qiita.com/menphim/items/ff0a708a917d2b8256b5
Using Displaylink on Arch Linux.
https://savoisn.github.io/post/displaylink_on_arch/
$ yay -S core/linux-headers
Screen Layout Editor (ARandR)
xrandrのGUI設定できるやつ
ちょっとディスプレイの繋ぎ変えが多く、CUIだと煩雑になったので、
最近はほぼ ArandR を使用
スクリーンショット
gnomeのスクショ機能を流用。
# pacman -S gnome-screenshot
ちょっと使いづらくてgtkのスクショ機能を使用中
Macでいう Skitch のように、スクショして簡単に矢印とか囲いとか文字つけて保存できるようなドローイングツール?キャプションツール?も物色
↑スクショ機能もあったのでこれに集約
$ yay -S shutter
ただ、起動するといろいろないと言われるので、追加で入れる必要がある
WARNING: gnome-web-photo is missing --> screenshots of websites will be disabled!
WARNING: Goo::Canvas/libgoo-canvas-perl is missing --> drawing tool will be disabled!
WARNING: Image::ExifTool is missing --> writing Exif information will be disabled!
WARNING: Gtk2::AppIndicator is missing --> there will be no icon showing up in the status bar when running Unity!
...
左様か。
プルーライトカット
Redshift
# pacman -S redshift
だいたい以下で使える
$ redshift -O 4300K #色温度指定
$ redshift -x #設定のリセット
ランチャ
エラー。うごかせず。
Qtのインストールができてなかった。
pacmanってこういう依存性を解決してくれてると思ったんだが違うのか...
# pacman -S albert
Qtのversionがないとかでエラー。
$ albert
albert: /usr/lib/libQt5Core.so.5: version `Qt_5.14' not found (required by /usr/lib/libQt5Charts.so.5)
albert: /usr/lib/libQt5Core.so.5: version `Qt_5.14' not found (required by /usr/lib/libQt5X11Extras.so.5)
上記の通りqt5-baseを入れて解消
# pacman -S qt5-base
アプリケーション
ランチャーついでに、手動で認識してもらう方法
Linux側に認めてもらう場合、各 applications
と指定されているディレクトリに hoge.desktop
みたいなファイルでリンクを張ることで、アプリとして使えるようになる
Wine
フォント設定がうんこなので
https://htlsne.hatenablog.com/entry/2017/01/17/120802
電源管理
ACPI という単語が出てきた。後で詳細調査。
とりあえずcbatticonをいれてみる
キーボードバックライト
/etcを直でいじろうとしたら、いいのがあった
$ yay -S kbdlight
配信 (OBS)
$ yay -S obs-studio-git
開発
PHP
仕事柄いろいろVersionが動くので、手元もIDEのために合わせておく
phpenvをつかってみている
総合的にはanyenvでいれてる
yay -S anyenv
anyenvの細かい設定などは公式リポジトリ参照。
phpenvから 7.3.8 ビルド中、なんかエラー出た
-----------------
| BUILD ERROR |
-----------------
Here are the last 10 lines from the log:
-----------------------------------------
configure: WARNING: You will need re2c 0.13.4 or later if you want to regenerate PHP parsers.
configure: error: Cannot find libtidy
-----------------------------------------
re2cとlibtidyというものが要るのか。
pacmanでみると、re2cとphp-tidyがあるのでそれぞれ導入。
# pacman -S re2c php-tidy
はい動いた
anyenv以下のphpenv以下にcomposer
通常、composerを入れるとホーム以下に入ってしまうので、
anyenvで管理ができなくなる
GAS
gasを手元で編集する用にclaspをいれた
https://qiita.com/zaki-lknr/items/b4954c222c1c1db92caf
Docker
Linuxではsudo権限なしでdockerを起動することができない。
Arch公式でdockerグループにユーザを追加する解決策が示唆されているが、
dockerグループに一般ユーザを所属させるのは、su権限を与えるのと同義だ、とセキュリティ上の注意喚起がなされている。
https://wiki.archlinux.jp/index.php/Docker
わけのわからないdockerfileを起動しないように気をつけよう。というやつである。
以下参考に追加
https://motomichi-works.hatenablog.com/entry/2019/07/19/200154
Android
開発まではいかないかもしれないが、MTPぐらい入れてみたい