背景
Lenovo Flex5がサブラップトップになったのでWindows11から入れ替え
今のところ戻らなくても良さそう
OSインストール
OachyOSのisoをダウンロードしてrufusで書き込み
UEFI向けじゃないといけないのね
USBブートしてインストーラーを進める
その際にwifi接続しないと進めなかった
keyboard layoutをjp106にしたけどusのままで嫌な予感
KDE plasmaとNiriで迷ったけど今回の用途(AI Coding)だとNiriを選択(使ったことはない)
touchpadのスクロール方向を逆へ(超重要)
下にスクロールしたら下に動いてほしい民なのでコントロールパネルから歯車からスクロール方向逆を選択
ショートカット集
- ランチャー起動: win+ctrl+enter
- ターミナルを追加: win+enter
- ウインドウを閉じる: win+q
- フォーカスを移動: win+arrow(タッチパッドの3本指ジェスチャでもOK)
- ウインドウを移動: win+ctrl+arrow
- ウインドウオーバービュー: win+o
- フルスクリーン: win+f
- ショートカットを表示: win+shift+esc
パッケージマネージャparuの導入
普段はyayを使ってるんだけどChatGPTからparu使えと言われたので言われたままにインストール
pacmanでインストールできるのは便利
sudo pacman -S --needed base-devel git paru
日本語環境
keyboard layoutをJIS配列へ
keyboardが使いにくいのにkeyboard操作を最低限に下記を実行
sudo localectl set-x11-keymap jp
localectl
ここから先は快適にkeyboardが使えるはずなので打ち込む量が増える
日本語入力のためにFcitx5+Mozcの導入
sudo pacman -Syu
sudo pacman -S fcitx5-im fcitx5-mozc
インストールが完了したら
fcitx5-configtool
で設定ツールを開く
日本語切り替えに半角全角のみが使われるようにすると誤爆を防げる
うまく日本語動かない場合
しょうがないので設定を書く
~/.config/niri/config.kdl
input {
keyboard {
xkb {
layout "jp"
}
}
}
設定ファイルを書いたあとは
niri validate
しないと設定が反映されない
ターミナルでコピペ
wl-clipboard使うといいみたい
sudo pacman -S wl-clipboard
echo test | wl-copy
wl-paste
マウス操作の場合はctrl+shift+c, ctrl+shift+v
日本語フォント
sudo pacman -S --needed noto-fonts noto-fonts-cjk noto-fonts-emoji \
adobe-source-han-sans-jp-fonts adobe-source-han-serif-jp-fonts \
ttf-jetbrains-mono
UDEVはAURなのでparuでインストール
paru -S ttf-udev-gothic
コントロールセンターから歯車の一般からフォント設定
(システム全体はUDEVが設定できなかった)
ログオフしてログインして反映
VSCodeの導入
paru -S visual-studio-code-bin
自分の環境だと特に日本語入力も問題なかった
kittyの導入
インストール
標準のalacrittyも良いんだけど、せっかくlinuxネイティブ環境ならkittyやghosttyだよね
sudo pacman -S --needed kitty
お好みでテーマを使う
kitten themes
自分は読みやすいと評判のCatppuccin-Mochaを選択している
Win+Enterで起動
~/.config/niri/config.kdl
binds {
Mod+Return { spawn "kitty"; }
}
反映は下記
niri validate
Bluetoothを使う
自分の環境だとデフォルトでBluetoothが使えなくて悲しかったので有効化
インストール
sudo pacman -Syu
sudo pacman -S --needed bluez bluez-utils blueman
サービス有効化
sudo systemctl enable --now bluetooth.service
systemctl status bluetooth.service
rfkillの確認
rfkill list
ここでblocked: yesが出るなら
sudo rfkill unblock bluetooth
sudo rfkill unblock all
で使えるようになる
コントロールセンターからBluetoothを選ぶと使えることが確認できた
ショートカットのカスタマイズ
win+fでフルスクリーンはできるんだけど、win+ctrl+fは"可能な限り大きくする"なのでフルサイズにはならない
例えばfirefoxを起動してブラウジングしたいときに半分サイズだと見づらい
なので追加でwin+alt+fに下記を設定する
binds {
Mod+Alt+F { maximize-column; }
}
これも反映するには下記が必要
niri validate
slackの導入
niriなのでwayland版を使う
paru -S slack-desktop-wayland
壁紙を変える
壁紙をcloneしてくる
git clone https://github.com/mylinuxforwork/wallpaper
コントロールセンターから歯車で壁紙を選択
壁紙フォルダを上記をcloneしたディレクトリに指定
コントロールセンターから壁紙選択パネルを起動して選択
waydroidでkindleを読む(検証中)
※おそらく最新状況は変わるのでchatgpt/codexにおまかせしたほうが成功率は高い気がする
インストール
sudo pacman -Syu
sudo pacman -S waydroid
GAPPS初期化
sudo waydroid init -s GAPPS -f
ufwでwaydroidが使うポートを解除
sudo ufw allow 53
sudo ufw allow 67
sudo ufw default allow FORWARD
ARM互換対応(kindleがx86向けにアプリを出していないため)
必要なパッケージのインストール
paru -S git lzip python python-pip
libndkのインストール
git clone https://github.com/casualsnek/waydroid_script
cd waydroid_script
python3 -m venv venv
venv/bin/pip install -r requirements.txt
sudo venv/bin/python3 main.py install libndk
もしうまくいかないときはストアキャッシュを削除(下記のshow full ui起動後)
sudo waydroid shell pm clear com.android.vending
sudo waydroid shell pm clear com.google.android.gms
waydroid起動
sudo systemctl enable --now waydroid-container.service
waydroid session start
別のターミナルで下記からウインドウを開く
waydroid show-full-ui
またはランチャーからwaydroidを起動(この場合はwaydroid session startとshow-full-uiが同時起動するらしい)
touchpadのダブルタップでクリックを有効化する
なんかおかしいと思っていたら有効化されていなかったっぽい
~/.config/niri/config.kdl
input {
touchpad {
tap
}
}
いつもの有効化
niri validate
braveブラウザの導入
chrome拡張を使う必要が出てきたのでbraveを導入
paru -S brave-bin
curaの導入
3Dプリンタを使うためにインストール
sudo pacman -Syu
sudo pacman -S xwayland-satellite xorg-xwayland
paru -S cura-bin
※設定自体はwindowsのAppDataから持ってきたものをcodexにインポートしてと指示
steamの導入
ゲームしたいよね
paru -Syu
paru -S cachyos-gaming-applications xwayland-satellite noto-fonts-cjk vulkan-radeon lib32-vulkan-radeon
再ログインが必要
firefoxのフォントがイケてない
chatgptと相談した
sudo pacman -S noto-fonts-cjk adobe-source-han-sans-jp-fonts
paru -S ttf-hackgen ttf-plemoljp-bin ttf-udev-gothic
fc-cache -fv
| setting | font |
|---|---|
| Proportional | Sans Serif |
| Serif | HackGen |
| Sans-serif | HackGen |
| Monospace | HackGen Console NF |
| Proportional size | 17 |
| Monospace size | 17 |
| Minimum font size | 13 |
漢字が中国語っぽく見えるんだけど
fc-match sans-serif
fc-match sans-serif:lang=ja
fc-match "Noto Sans CJK JP"
fc-match "Noto Sans CJK SC"
ふむ、SCが出てくるな
mkdir -p ~/.config/fontconfig/conf.d
nano ~/.config/fontconfig/conf.d/65-japanese-fonts.conf
<?xml version="1.0"?>
<!DOCTYPE fontconfig SYSTEM "urn:fontconfig:fonts.dtd">
<fontconfig>
<!-- 日本語のsans-serifは日本語字形を優先 -->
<alias>
<family>sans-serif</family>
<prefer>
<family>UDEV Gothic</family>
<family>HackGen</family>
<family>Noto Sans CJK JP</family>
<family>Source Han Sans JP</family>
<family>BIZ UDPGothic</family>
</prefer>
</alias>
<!-- 日本語のserifは日本語字形を優先 -->
<alias>
<family>serif</family>
<prefer>
<family>Noto Serif CJK JP</family>
<family>Source Han Serif JP</family>
</prefer>
</alias>
<!-- 等幅はプログラミング向け日本語フォントを優先 -->
<alias>
<family>monospace</family>
<prefer>
<family>HackGen Console NF</family>
<family>HackGen Console</family>
<family>UDEV Gothic NF</family>
<family>Noto Sans Mono CJK JP</family>
</prefer>
</alias>
</fontconfig>
設定を反映
fc-cache -fv
kittyでもhackgenを使いたい
~/.config/kitty/kitty.confを下記にする
font_family HackGen35 Console NF
bold_font auto
italic_font auto
bold_italic_font auto
font_size 13.0
background_opacity 0.80
dynamic_background_opacity yes
# BEGIN_KITTY_THEME
# Catppuccin-Mocha
include current-theme.conf
# END_KITTY_THEME
kittyを上下に分割したい
~/.config/niri/config.kdlを下記に変更した
※もともとwin+hとwin+lはフォーカスの左右だったんだけど、win+arrowでやっているので上書き
binds {
Mod+Return { spawn "kitty"; }
Mod+Alt+F { maximize-column; }
Mod+H hotkey-overlay-title="Consume or expel window left" {
consume-or-expel-window-left;
}
Mod+L hotkey-overlay-title="Consume or expel window right" {
consume-or-expel-window-right;
}
}
braveでpwaする
※めんどいのでcodexにやらせた
X.com
x.com 公式 manifest の 512px アイコンを保存する:
- URL: https://abs.twimg.com/responsive-web/client-web/icon-default-large.9ab12c3a.png
- 保存先: ~/.local/share/icons/hicolor/512x512/apps/x-com.png
必要なら 192px 版も保存する:
- URL: https://abs.twimg.com/responsive-web/client-web/icon-default.522d363a.png
- 保存先: ~/.local/share/icons/hicolor/192x192/apps/x-com.png
desktop entry は Icon=brave-desktop から Icon=x-com に変更する。
desktop entry の本体は ~/.local/share/applications/x-brave.desktop に置く。
[Desktop Entry]
Version=1.0
Type=Application
Name=X
Comment=Open x.com in Brave app mode
TryExec=brave
Exec=brave --app=https://x.com
Icon=x-com
Terminal=false
Categories=Network;WebBrowser;
StartupNotify=true
StartupWMClass=brave-browser
youtube music
公式 manifest は https://music.youtube.com/manifest.webmanifest を使う。
YouTube Music 公式アイコンを保存する:
- https://www.gstatic.com/youtube/media/ytm/images/applauncher/music_icon_512x512.png
- 保存先: ~/.local/share/icons/hicolor/512x512/apps/youtube-music.png
- 必要なら 192px 版も ~/.local/share/icons/hicolor/192x192/apps/youtube-music.png に保存する。
desktop entry は ~/.local/share/applications/youtube-music-brave.desktop に作成する。
[Desktop Entry]
Version=1.0
Type=Application
Name=YouTube Music
Comment=Open YouTube Music in Brave app mode
TryExec=brave
Exec=brave --app=https://music.youtube.com
Icon=youtube-music
Terminal=false
Categories=AudioVideo;Audio;Player;
StartupNotify=true
StartupWMClass=brave-browser
gmail
- Gmail アイコンを https://ssl.gstatic.com/ui/v1/icons/mail/rfr/gmail.ico から取得し、magick で PNG 化して以下へ配置する。
- ~/.local/share/icons/hicolor/192x192/apps/gmail.png
- ~/.local/share/icons/hicolor/512x512/apps/gmail.png
[Desktop Entry]
Version=1.0
Type=Application
Name=Gmail
Comment=Open Gmail in Brave app mode
TryExec=brave
Exec=brave --app=https://mail.google.com/
Icon=gmail
Terminal=false
Categories=Network;Email;
StartupNotify=true
StartupWMClass=brave-browser
trello
[Desktop Entry]
Version=1.0
Type=Application
Name=Trello
Comment=Open Trello in Brave app mode
TryExec=brave
Exec=brave --app=https://trello.com/
Icon=trello
Terminal=false
Categories=Office;ProjectManagement;
StartupNotify=true
StartupWMClass=brave-browser