はじめに
自分用のメモですが、こんなツールあったら便利だよ等どしどし教えてください!
前提
Windowsでは開発は行なわない。
どちらでもできることは基本的にManjaroで行う。
普段使いはManjaro。
Manjaroは日本語入力には対応させるが、環境は英語環境を使用。
ハード
- thinkpad x1 carbon 2018 (US配列)
また家では、
- FHD × 2 外付けディスプレイ
- thinkpad USB type-C ドック (純正)
という環境で使い、thinkpad本体はクラムシェルモードとする。
手順
Windows側の設定
-
Chrome, Dropbox, kewswap, Google日本語入力, Strokers Plus, tpmiddle, rufus, iTunes
をインストール - Storkers Plus, Google日本語入力は設定ファイルをDropboxから持ってきて上書きする
- ManjaroのisoをrufusでUSBに焼く(ddモードで成功)
Biosの設定
-
Secure boot
をoffにする -
CMS
をonにする - 再起動
Windowsの復旧
- 再起動するとBitlockerのキーを要求されるので、MSアカウントにログインして取得し入力して回復
- 無事起動できることを確認
Manjaroのインストール
-
Arch Wiki
を参考にthinkpad固有の問題を解決(英語版をみること)
Manjaro側の設定
-
imwheel
をインストール -
.config/autostart
以下にshellscript.desktop
を作り、imwheel
等自動起動したいコマンドを記述 -
fcitx-mozc
をインストール。skinにはmaterial
をAURから落としてきて適用(現在なぜかskinの選択ができない) なおIMEの切り替えは右Alt
とInsert
に割当(あとでCtrlと入れ替える) -
chsh -s /bin/zsh
でzshに変更 - 壁紙を設定。4k用の画像を拾ってきて、
tweak
のappearance
でspan
モードとすれば2画面全体に表示されて綺麗。 -
.zshrc
をカスタマイズ
.zshrc
# fcitx
# Created by newuser for 5.6.2
export GTK_IM_MODULE=fcitx
export XMODIFIERS=@im=fcitx
export QT_IM_MODULE=fcitx
# zgen
# load zgen
source "${HOME}/.zgen/zgen.zsh"
# if the init scipt doesn't exist
if ! zgen saved; then
echo "Creating a zgen save"
# prezto options
zgen prezto prompt theme 'paradox'
zgen prezto '*:*' color 'yes'
# prezto and modules
zgen prezto
zgen prezto archive
zgen prezto git
zgen prezto history-substring-search
zgen prezto syntax-highlighting
zgen prezto environment
zgen prezto fasd
zgen prezto autosuggestions
zgen prezto completion
zgen prezto pacman
zgen prezto docker
zgen prezto directory
zgen prezto editor
zgen prezto ssh
zgen prezto python
zgen prezto terminal
zgen load mollifier/cd-gitroot
# generate the init script from plugins above
zgen save
fi
# env
export EDITOR=code
export BROWSER=chromium
unsetopt promptcr
# alias
alias py='docker run --rm --name pyglobal -it -v /etc/group:/etc/group:ro -v /etc/passwd:/etc/passwd:ro -u $(id -u $USER):$(id -g $USER) -v "$PWD":/work -p 8888:8888 pyglobal'
alias cdu='cd-gitroot'
alias ks="$HOME/Codes/Scripts/xkbswap.sh"
alias udk='sudo systemctl start docker'
# anyenv
if [ -d $HOME/.anyenv ]
then
export PATH="$HOME/.anyenv/bin:$PATH"
eval "$(anyenv init -)"
fi
export PIPENV_VENV_IN_PROJECT=1
-
guake
をインストールする。showショートカットはCtrl + '
にした。 -
xsel
コマンドをインストール -
xkb
でキーボードリマップ。自動起動用のスクリプトを書くときはsleep 1
を入れることでだいたいうまく行った。X
の起動を待つスクリプトを書けば、よりうまく行くかも。 頻繁に設定がリセットされるので1分ごとにリマップを再実行するようにgnome
のscheduled-task
を使用する。
こちらとこちらの2つのブログを参考にする。これらのブログには本当に感謝。Ctrl
キーを押すとポインターロケーションを表示するオプションはGnome tweak
にてオフにしておく -
Gnome Shell Extension
の設定。Dash to Panel・Clipboard Indicator・Pomodoro
をインストールした。 -
Dropbox
をpamac build dropbox
でインストール。pamacはGUIのパッケージマネージャだがこのようにCLIでも使える。pacmanレポジトリからダウンロードする際はpamac install hoge
とすればよい。 -
libinput-gesture
を導入して、マルチジェスチャーに対応させる。 -
libinput
の感度を変更する。(~~デフォルトだと、スクロールがぶれて使いにくい。~~本当の問題はタッチパッド使用時にimwheel
が動いてることが原因と発覚) - Ricty Diminished with Icon ・Noto Sans CJK JPをインストール
-
Settings.Privacy.ScreenLock.LockScreenAfterBlankFor
を適切な時間に設定。 - 縦置きモニタのティアリングを治す。InterHDのArchWikiを参考に、パフォーマンスの低下を招く可能性があるのであまり気が進まないが、試行錯誤しても他の方法では無理だったので、Wikiのとおりにした。
開発環境の設定
全てManjaro上に構築する。
-
git
の設定をする。globalのconfigは~/.gitignore_global
に定義 - 適宜AURを使いながら
Docker・JetBrainsToolBox・VSCode
をインストール -
anyenv→pyenv→pipenv
の順にインストール。 -
JetBrains IDE
と競合するgnomeキーバインディングを適宜Disableする
JetBrains IDEの設定
-
Material UI
というthemeを採用。color schemeはidea-one-dark-theme
をgithubからダウンロードしてきた。
再びWindows側の設定
Manjaro側でBluetoothマウスをペアリングしたことによりマウスが効かなくなっているはずなので、最ペアリングしPstool
を用いてレジストリからキーを見つけだし、Manjaro側の値を変更する。
# 問題
-
iTunes
がWindowsじゃないと使えない 外付けディスプレイを使う際にtearingがひどい1分ごとにキーボードリマップしても、リセットされることがある。-
クラムシェルモード時にスリープにすると、たまに勝手に復帰する(スリープ直後に多い)この記事を参考に解決 - thinkpad固有の問題がしっかり解決できているのか不明