Skip to content

Instantly share code, notes, and snippets.

@kaminchu
Last active May 14, 2025 01:36
Show Gist options
  • Save kaminchu/82e3b89ee48de382a9ed13acb1911406 to your computer and use it in GitHub Desktop.
Save kaminchu/82e3b89ee48de382a9ed13acb1911406 to your computer and use it in GitHub Desktop.
Ubuntuをセットアップする時のめも

Ubuntuをクリーンインストールする時にすること

想定: Ubuntu Desktop 24.04

インストール時は最小インストールが想定

基本

ディレクトリを日本語から英語へ変更

env LANGUAGE=C LC_MESSAGES=C xdg-user-dirs-update --force
# ↑のあと一応再起動してる

ホームを消す

設定->Ubuntu Desktop->デスクトップアイコン->Show Home Folder

よく使うアプリケーション

  • gparted
    • パーティション作ったりするやつ。USBメモリのフォーマットで重宝してる。
  • fonts-noto-color-emoji
    • 絵文字
  • git
  • curl
  • wget
  • htop
  • screen
  • xsel
    • macでいうpbcopy
  • pwgen
    • パスワードにするための乱数を作れる
  • openssh-server
  • usb-creator-gtk
    • ブータブルusb作るやつ
  • build-essential, cmake
    • ビルドで何かと使う
  • mtools,dosfstools
    • fat32の読み込みとかに使うらしい
  • gnome-software-plugin-flatpak,flatpak
sudo apt install -y gparted fonts-noto-color-emoji git curl wget htop screen xsel pwgen openssh-server usb-creator-gtk build-essential cmake mtools dosfstools gnome-software-plugin-flatpak flatpak

開発

bash周り

touch ~/.bash_aliases
echo 'export PROMPT_DIRTRIM=2' >> ~/.bashrc

gitの設定

gitignoreの共通設定

mkdir -p ~/.config/git
echo '*~' >> ~/.config/git/ignore
echo './idea' >> ~/.config/git/ignore
echo '.Trash-*' >> ~/.config/git/ignore

クソ便利なalias

git config --global alias.gone "!git branch --merged | grep -v \\* | xargs -I % git branch -d %"

golang

asdf, ghqのために必要

sudo apt install -y golang 
echo 'export PATH="$(go env GOPATH)/bin:$PATH"' >> ~/.bashrc

rust

curl --proto '=https' --tlsv1.2 -sSf https://sh.rustup.rs | sh

asdf

go install github.com/asdf-vm/asdf/cmd/[email protected]
echo 'export PATH="${ASDF_DATA_DIR:-$HOME/.asdf}/shims:$PATH"' >> ~/.bashrc
echo '. <(asdf completion bash)' >> ~/.bashrc
echo "legacy_version_file = yes" ~/.asdfrc
source ~/.bashrc

nodejs

asdf plugin add nodejs https://github.com/asdf-vm/asdf-nodejs.git
asdf install nodejs latest
asdf set  nodejs latest

python

sudo apt-get install gdb lcov pkg-config \
      libbz2-dev libffi-dev libgdbm-dev libgdbm-compat-dev liblzma-dev \
      libncurses5-dev libreadline6-dev libsqlite3-dev libssl-dev \
      lzma lzma-dev tk-dev uuid-dev zlib1g-dev
asdf plugin add python
asdf install python latest
asdf set  python latest
asdf reshim python
pip install --upgrade pip
pip install pipenv
asdf reshim python

node環境を素で入れたいなら

あんまやらない

# curl -sL https://deb.nodesource.com/setup_12.x | sudo -E bash -
# sudo apt-get install -y nodejs yarn

ghq + fzf

gitリポジトリへの移動が快適になるおまじない

go install github.com/x-motemen/ghq
git config --global ghq.root ~/.ghq
echo "alias cr='cd \$(ghq list -p | fzf --reverse)'" >> ~/.bash_aliases

vscode

最強のエディタ 公式サイトからdebをダウンロードがいい

https://code.visualstudio.com/

sudo dpkg -i code_1.71.2-1663191218_amd64.deb
  • VSCodeの同期

Alacritty

軽量なターミナルエミュレータ

https://github.com/alacritty/alacritty/blob/master/INSTALL.md

git clone https://github.com/alacritty/alacritty.git
cd alacritty

sudo apt install cmake g++ pkg-config libfreetype6-dev libfontconfig1-dev libxcb-xfixes0-dev libxkbcommon-dev python3
cargo build --release

infocmp alacritty
sudo tic -xe alacritty,alacritty-direct extra/alacritty.info

sudo cp target/release/alacritty /usr/local/bin # or anywhere else in $PATH
sudo cp extra/logo/alacritty-term.svg /usr/share/pixmaps/Alacritty.svg
sudo desktop-file-install extra/linux/Alacritty.desktop
sudo update-desktop-database

sudo mkdir -p /usr/local/share/man/man1
sudo mkdir -p /usr/local/share/man/man5
scdoc < extra/man/alacritty.1.scd | gzip -c | sudo tee /usr/local/share/man/man1/alacritty.1.gz > /dev/null
scdoc < extra/man/alacritty-msg.1.scd | gzip -c | sudo tee /usr/local/share/man/man1/alacritty-msg.1.gz > /dev/null
scdoc < extra/man/alacritty.5.scd | gzip -c | sudo tee /usr/local/share/man/man5/alacritty.5.gz > /dev/null
scdoc < extra/man/alacritty-bindings.5.scd | gzip -c | sudo tee /usr/local/share/man/man5/alacritty-bindings.5.gz > /dev/null

mkdir -p ~/.bash_completion
cp extra/completions/alacritty.bash ~/.bash_completion/alacritty
echo "source ~/.bash_completion/alacritty" >> ~/.bashrc

コピペできないの流石に不便なので設定

cat > ~/.config/alacritty/alacritty.toml << "EOF"
[keyboard]
[[keyboard.bindings]]
action = "Paste"
key = "V"
mods = "Control|Shift"

[[keyboard.bindings]]
action = "Copy"
key = "C"
mods = "Control|Shift"
EOF

zed

軽量なエディタ

https://zed.dev/

curl -f https://zed.dev/install.sh | sh

LMStudio

llmの実行環境

https://lmstudio.ai/

# download
# https://lmstudio.ai/download

sudo apt install libfuse2
sudo mkdir -p /opt/LMStudio
sudo install -m 755 LM-Studio-0.3.10-6-x64.AppImage /opt/LMStudio/LM_Studio.AppImage
sudo wget https://avatars.githubusercontent.com/u/133744619 -O /usr/share/icons/lmstudio.png

cat > ~/.local/share/applications/lmstudio.desktop << "EOF"
[Desktop Entry]
Name=LM Studio
Comment=LM Studio Launcher
Exec=/opt/LMStudio/LM_Studio.AppImage --no-sandbox
Icon=/usr/share/icons/lmstudio.png
Terminal=false
Type=Application
Categories=Development;
EOF

idea(あとでアクティベートするように)

ToolBoxのほうがいいかもしれない https://www.jetbrains.com/help/idea/installation-guide.html

git clone https://github.com/nagygergo/jetbrains-toolbox-install.git
cd jetbrains-toolbox-install
sudo ./jetbrains-toolbox.sh
cd ../
rm -rf jetbrains-toolbox-install

IDE

sudo snap install intellij-idea-ultimate --classic
echo "alias idea='intellij-idea-ultimate $1'" >> ~/.bash_aliases
source ~/.bashrc

sublime merge (あとでアクティベートするように)

git使いやすくするやつ

参考: https://www.sublimemerge.com/docs/linux_repositories

curl -fsSL https://download.sublimetext.com/sublimehq-pub.gpg | sudo gpg --dearmor -o /etc/apt/keyrings/sublime.gpg
sudo apt-get install apt-transport-https
echo "deb [arch=amd64 signed-by=/etc/apt/keyrings/sublime.gpg] https://download.sublimetext.com/ apt/stable/" | sudo tee /etc/apt/sources.list.d/sublime-text.list
sudo apt-get update
sudo apt-get install sublime-merge

docker

コンテナのあれ https://docs.docker.com/engine/install/ubuntu/

curl -fsSL https://download.docker.com/linux/ubuntu/gpg | sudo gpg --dearmor -o /etc/apt/keyrings/docker.gpg
echo \
  "deb [arch=$(dpkg --print-architecture) signed-by=/etc/apt/keyrings/docker.gpg] https://download.docker.com/linux/ubuntu \
  $(lsb_release -cs) stable" | sudo tee /etc/apt/sources.list.d/docker.list > /dev/null
sudo apt-get update
sudo apt-get install docker-ce docker-ce-cli containerd.io docker-compose-plugin
sudo gpasswd -a $USER docker
sudo chmod 666 /var/run/docker.sock

shutter

スクショツール

参考: http://ubuntuhandbook.org/index.php/2019/04/install-shutter-ubuntu-19-04/

sudo add-apt-repository ppa:linuxuprising/shutter
sudo apt install shutter

wine

参考: https://wiki.winehq.org/Ubuntu

sudo dpkg --add-architecture i386

sudo mkdir -pm755 /etc/apt/keyrings
sudo wget -O /etc/apt/keyrings/winehq-archive.key https://dl.winehq.org/wine-builds/winehq.key

sudo wget -NP /etc/apt/sources.list.d/ https://dl.winehq.org/wine-builds/ubuntu/dists/jammy/winehq-jammy.sources


sudo apt update
sudo apt install --install-recommends winehq-devel

sudo apt install winetricks
winetricks allfonts

tailscale

外出先から自宅PCへつなぎたいときとかに重宝するVPN https://tailscale.com/download/linux/ubuntu-2204

curl -fsSL https://tailscale.com/install.sh | sh

l2tp

sudo apt install network-manager-l2tp network-manager-l2tp-gnome

remmina

RDP client

https://remmina.org/how-to-install-remmina/

sudo apt-add-repository ppa:remmina-ppa-team/remmina-next
sudo apt update
sudo apt install remmina remmina-plugin-rdp remmina-plugin-secret

Ubuntu Pro周りのやつ対応

sudo apt upgradeするときにGet more security updates through Ubuntu Pro with 'esm-apps' enabled:が出てきて鬱陶しいのでそれが出ないようにする

sudo mkdir /etc/apt/apt.conf.d/off
sudo mv /etc/apt/apt.conf.d/20apt-esm-hook.conf /etc/apt/apt.conf.d/off

その他

  • 秘密鍵の作成ssh-keygen -t ed25519と公開鍵cat ~/.ssh/id_ed25519.pubの各種サービスへの登録
  • 日本語入力できるようにするために、右上のアイコンでmozcを選択
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment