私のUbuntu 20.04セットアップ

2021/06/27

top

どうも,Ubuntuの破壊に定評のあるsititou70です.

本日もOSが壊れまして,Ubuntu 20.04をクリーンインストールするハメになりました.

これは,その際の雑な覚書です.他の人の役に立つかもしれませんので公開しておきます.

OSのインストール

  • 動くPCとUSBメモリを用意する
  • Ubuntuの日本語イメージをダウンロード
  • balenaEtcherをインストール
  • EtcherでOSイメージをUSBに書き込む
  • USBをPCに指してBIOSの設定画面に入り,USBのBoot優先度を上げてUbuntuのインストーラーを起動する
  • あとはインストーラーにしたがっていけば(特殊なシステム構成でない限り)Ubuntuが導入できる
    • 最近のUbuntuインストーラーは優秀ですね.私はThinkPadでWindowsとUbuntuをデュアルブートしていますが,自分でパーティションをいじったりする必要すらなく導入できてしまいました.
      • まぁ間違ってWindowsが壊れても,その時はWindowsをクリーンインストールすればいいのです.

初期設定

  • とりあえずパッケージをアップデート
    • sudo apt update && sudo apt upgrade -y && sudo apt autoremove -y && sudo apt clean -y
  • mozcのキーボードレイアウトを日本語配列に
    • /usr/share/ibus/component/mozc.xmllayoutセクションを<layout>jp</layout>とする
  • ターミナル環境をセットアップ
    • ターミナル / コーディング用フォント
      • Cica withEmojiのZipをダウンロードして展開
      • 「フォント」アプリで1つずつフォントファイルを開いて「インストール」ボタンを押す(だるい)
    • ホーム内のディレクトリを英語表記に
      • LANG=C xdg-user-dirs-gtk-update
    • 私のdotfileを配置
      • sudo apt install -y unzip wget curl git zsh tmux
      • git clone https://github.com/sititou70/dotfiles.git
      • cd dotfiles; ./install
    • ターミナルエミュレータを導入
      • sudo apt install -y terminator
      • terminatorを起動して設定を適当に変更する.($HOME/.config/terminator/configを生成するため)
      • cd dotfiles; ./install$HOME/.config/terminator/configが存在すれば私の設定へのシンボリックリンクに置き換える)
    • GPG / SSH鍵をセットアップ
      • sudo apt install -y gnupg2 gpg-agent
      • オフラインで!
        • バックアップから鍵を復元
        • gpg2 --list-secret-keys --with-keygrip
          • もしマスターシークレットキー(sec)が含まれているなら
          • gpg-connect-agent "DELETE_KEY <keygrip>" /bye
      • cd dotfiles; ./install(GPG Agent関連の設定をdotfilesと同期する)
      • dotfilesのリポジトリを使ってSSH鍵が使えることを確認
        • cd; mkdir tmp; cd tmp; git clone git@github.com:sititou70/dotfiles.git; cd; rm -rf ditfiles; mv tmp/dotfiles .; rm -rf tmp
    • デフォルトシェルを設定
      • zshを実行.
        • powerlineやexaが自動的に導入され,正常に動作することを確認.
        • tmuxのキーバインドが正常に使えることを確認
      • sudo chsh $USERし,/bin/zshを指定
  • アプリケーションを導入
    • Vim
      • sudo apt install -y vim
      • vimを起動.初期設定が自動的に実行される
    • VS Code
      • .deb保存 する(Ubutntu Softwareで開くのではない)
      • cd Downloads; sudo apt install ./<deb file name>
      • cd dotfiles; ./install(VS Codeの設定をdotfilesと同期する)
    • Node.js(n
      • sudo apt install -y make
      • .zshrcからn関連の設定を一旦消す.(nのインストーラーが「既にnを導入済みである」としてインストールを中止するのを防ぐ)
      • curl -L https://git.io/n-install | bash.公式ドキュメントより
      • cd dotfiles; git reset --hard
      • n ltsまたはn v15などしてNodeのバーションを指定する
    • Go(goenv
      • git clone https://github.com/syndbg/goenv.git ~/.goenv
      • goenv install --listして,Goのバージョンを選ぶ
      • goenv install <version>; goenv global <version>
    • 顔認証(howdy
      • sudo add-apt-repository ppa:boltgolt/howdy; sudo apt update; sudo apt install howdy.公式ドキュメントより
      • sudo howdy config.エディタが開くので,device_pathにカメラのデバイスファイル(/dev/video0など)を指定
      • sudo howdy add.して顔モデルを登録
  • 細かい調整(個人的に重要)
    • Top Bar(時刻やバッテリー残量がでる上のバー)を隠す
    • Top Barのバッテリー残量をパーセント表示に
      • gsettings set org.gnome.desktop.interface show-battery-percentage true
    • Firefoxをトラックパッドでピクセルスクロール
      • /etc/environmentMOZ_USE_XINPUT2=1を追記
    • CapsLockCtrlとして使う - gsettings set org.gnome.desktop.input-sources xkb-options "['terminate:ctrl_alt_bksp', 'ctrl:nocaps']"
    • PCのふた(Lid)を閉じたとき,外部ディスプレイをつないでいる場合でもサスペンドしたい
    • 設定アプリから
      • ディスプレイ -> 夜間モードを有効化
      • 外観 -> ダークテーマを選択
      • ワイヤレスイヤホンに接続するホットキーを設定
        • Bluetooth -> デバイスをダブルクリックしてMACアドレスを確認
        • キーボードショートカット -> 適当なショートカットを追加.コマンドにbluetoothctl connect <MAC address>を指定
      • Print キーを押したときに,ファイルへ書き出すのではなくクリップボードにコピーする
        • キーボードショートカット - ファイルに書き出す方のショートカットを無効化 -
        クリップボードにコピーする方のショートカットをデフォルトの設定で上書き

これでよし.どれだけUbuntuをぶっ壊しても安心ですね.

それでは!

続けて読む…

シングルユーザーモードのUbuntuにSSHする(SSH to Single User Mode Ubuntu 18.04)

2020/10/25

ざっくりホーア論理

2024/09/28

Credits(Frums)をマジのターミナルで

2021/04/29

【Linux】カーネルビルドでも進捗が見たい!

2020/04/27

TypeScriptの型で全加算器から浮動小数点数,そして√2

2021/06/07

ほぼ関数だけでFizzBuzzしてツイートしたい【JavaScript】

2025/03/24

書いた人

sititou70のアイコン画像
sititou70

都内の社会人エンジニア4年生。Web技術、3DCG、映像制作が好き。