Skip to content

Latest commit

 

History

92 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

-----------------------------------------------------

Dotfiles

     _       _    __ _ _
  __| | ___ | |_ / _(_) | ___  ___
 / _` |/ _ \| __| |_| | |/ _ \/ __|
| (_| | (_) | |_|  _| | |  __/\__ \
 \__,_|\___/ \__|_| |_|_|\___||___/   Windows 11 / Linux

Platform Shell Editor Terminal License Last commit

Windows 11 / Linux (Debian) 両対応のクロスプラットフォーム dotfiles。 Nushell・WezTerm・Starship を共通レイヤーに据え、OS ごとの設定分岐を最小限に抑えています。

-----------------------------------------------------

✨ Highlights

  • 🌐 クロスプラットフォーム — Nushell / WezTerm / Starship を共通レイヤーにし、Windows と Linux で同じ設定を使い回す
  • 🗂️ XDG 準拠 — 散らかりがちなツール設定をすべて ~/.config に集約
  • 🤖 AI 統合llm (Ollama) / ai (Aider) をシェルコマンド化
  • 🔀 OS 自動分岐btopbtop4winnanonvim を OS ごとに透過切り替え
  • 💾 災害復旧scoop import / winget import でパッケージ一括復元、nvim/lazy-lock.json でプラグイン固定

-----------------------------------------------------

🛠️ Tools

種別 ツール 対象
terminal WezTerm 共通
shell Nushell 共通
editor Neovim (LazyVim) 共通
prompt Starship 共通
multiplexer Zellij 一部Linux

Settings

対象 ツール 場所
共通 WezTerm wezterm/
Nushell nushell/
Neovim nvim/
Starship starship.toml
Git git/
Windows PowerShell 7 powershell/
Scoop scoop/
復元マニフェスト windows/
Linux Zellij / Brewfile 等 linux/
その他 キーマップ keymap/

-----------------------------------------------------

🚀 Setup

🪟 Windows

# 1. dotfiles をクローン
git clone https://github.com/warasugitewara/dotfiles $HOME\.config

# 2. パッケージを一括復元(災害復旧)
#    Scoop 未導入なら先に: irm get.scoop.sh | iex
scoop import $HOME\.config\windows\scoop.json
winget import -i $HOME\.config\windows\winget.json --accept-package-agreements --accept-source-agreements

# 3. PowerShell プロファイルを配置 (任意)
#    $PROFILE が powershell/Microsoft.PowerShell_profile.ps1 を読むよう設定

🐧 Linux (Debian / Ubuntu)

# 1. dotfiles をクローン
git clone https://github.com/warasugitewara/dotfiles ~/.config

# 2. Homebrew + Brewfile からパッケージをインストール
/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
cd ~/.config/linux && brew bundle install

# 3. XDG 統合を bashrc に追記
cat ~/.config/linux/bashrc.xdg-config >> ~/.bashrc && source ~/.bashrc

Note

詳細な Linux 環境構築手順は linux/SETUP.md を参照。

-----------------------------------------------------

📦 パッケージ復元 (Windows)

windows/ に導入済みパッケージのマニフェストを保持。ディスク故障・災害時に一括再導入できる。

ファイル 内容 復元コマンド
scoop.json scoop 12アプリ(gcc / gradle / jdtls / lua-language-server / ollama / python / JDK 等) scoop import windows/scoop.json
winget.json winget 厳選 34件(下記) winget import -i windows/winget.json
nushell alias.md Windows 用 Nushell エイリアスのメモ
winget.json の内訳(34件)
カテゴリ パッケージ
コア Neovim / Nushell / WezTerm / Starship / PowerShell / WindowsTerminal / WSL / Ubuntu
VCS Git / GitHub CLI / GitHub Desktop / Copilot
ランタイム・ビルド Node.js / Rustup / uv / VS BuildTools / InnoSetup
CLI ripgrep / fastfetch / btop4win / FFmpeg / 7zip / gsudo
エディタ VS Code / Zed / sakura / TeraTerm
AI CLI Claude / Codex
インフラ接続 Twingate / Tailscale
ブラウザ・通信 Chrome / Discord / Vivaldi

更新: scoop export > windows/scoop.json / winget export 後に開発ツールを厳選して反映。 ゲーム・メディア・システムランタイム等のノイズは除外している。

Note

Linux 側のパッケージは linux/Brewfilebrew bundle)で管理。 GUI アプリは Homebrew(Linux) が cask 非対応のため対象外。

-----------------------------------------------------

📁 Structure

.config/
├── nushell/        # Nushell      (shell,    共通)  config.nu / env.nu
├── nvim/           # Neovim       (LazyVim,  共通)  lazy-lock.json で固定
├── wezterm/        # WezTerm      (terminal, 共通)  wezterm.lua / keybinds.lua
├── starship.toml   # Starship     (prompt,   共通)
├── git/            # Git          (共通)
├── keymap/         # 自作キーボード (Mint60 / Drunkdeer A75 + チートシート)
├── powershell/     # PowerShell 7 (Windows)  profile.ps1 / config.json
├── scoop/          # Scoop 設定   (Windows)
├── windows/        # Windows 専用
│   ├── scoop.json       # scoop 復元マニフェスト
│   ├── winget.json      # winget 復元マニフェスト
│   └── nushell alias.md # Nushell エイリアスのメモ
├── python/ ruby/ go/ pip/   # 各ツールの XDG 設定 (共通)
├── chrome-addon/   # ブラウザ拡張 (AdGuard ルール等)
├── waras/          # GitHub プロフィール README (warasugitewara/warasugitewara)
└── linux/          # Linux 専用
    ├── Brewfile           # Homebrew パッケージリスト
    ├── bashrc.xdg-config  # XDG 統合 bashrc
    ├── SETUP.md           # 環境構築ガイド
    └── zellij/            # Zellij 設定 (config.kdl)

-----------------------------------------------------

🧩 Nushell Commands

nushell/config.nu / env.nu で定義しているカスタムコマンド。

コマンド 説明
llm [prompt] deepseek-r1:8b を Ollama 経由で起動
ai Aider + llm-router(オンライン: Claude Sonnet / オフライン: deepseek-r1:8b)
btop Windows では btop4win、Linux/macOS では native btop に自動分岐
nano Windows では nvim、Linux/macOS では native nano に自動分岐
-----------------------------------------------------

🗂️ XDG Base Directory

すべての設定は XDG Base Directory Specification に準拠。

XDG_CONFIG_HOME = ~/.config        # 設定ファイル
XDG_DATA_HOME   = ~/.local/share   # データファイル
XDG_CACHE_HOME  = ~/.cache         # キャッシュ
ツール別の XDG 統合設定
ツール 設定ファイル 環境変数
Python python/pythonrc.py, pip/pip.conf PYTHONSTARTUP
Ruby ruby/irbrc, ruby/gemrc IRBRC, GEM_HOME
Go go/env GOPATH, GOMODCACHE
Git git/config GIT_CONFIG_GLOBAL

Linux では linux/bashrc.xdg-config~/.bashrc に追記して有効化します。

-----------------------------------------------------

📝 Notes

Important

Git のメールアドレスはリポジトリに含めていません。クローン後にローカルで設定してください。

git config --global user.email "your@email.com"

-----------------------------------------------------

🙏 Acknowledgements

特に参考にさせていただいた dotfiles リポジトリです。

License

MIT

About

Windows11とDebian13の環境設定

Topics

Resources

Stars

1 star

Watchers

0 watching

Forks

Releases

Packages

Contributors

Languages