3
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

More than 1 year has passed since last update.

arch linux 常用するための環境構築メモ

Last updated at Posted at 2020-03-09

途中からメモしてるのもあるので、わりとカジュアルに抜けていそうだが、まあ大体情報転がってるだろう :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 って言いたい

キーボード

Xorgでのキー設定
https://wiki.archlinux.jp/index.php/Xorg_%E3%81%A7%E3%81%AE%E3%82%AD%E3%83%BC%E3%83%9C%E3%83%BC%E3%83%89%E8%A8%AD%E5%AE%9A#typematic_delay_.E3.81.A8_rate_.E3.81.AE.E8.AA.BF.E6.95.B4

としていたが、CtrlとCapsのswapが面倒だったので、今はsetxkbmapのオプション指定で切り替えている。

フォント

/etc/fonts/local.conf に設定をぶっこむ
なるべく英語優先でフォントを当てたい構え

  • Sans-serif ゴシック
    • Helvetica Neue
      • 手元にあったので手動でいれた
    • 源ノ角ゴシック Source Han Sans
      • # pacman -S adobe-source-han-sans-jp-fonts
  • Serif 明朝
    • あまり興味ないので初期設定のまま
  • Monospace
    • Cica
      • $ yay -S ttf-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を書いたら動作したのでもうこれわかんねぇな

~/.xprofile
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ぐらい入れてみたい

3
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
1

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?