Skip to content

StephenGemin/dotfiles

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

My computer setup and dotfiles, managed with chezmoi

Project goals

  • Cross-platform == Windows, Mac, Debian-based
  • Unified set of apps, tools, commands and aliases
  • Personal and work

TOC

Project State

  • Debian-based
    • tested on Pop!_OS 22.04 LTS, Ubuntu 22.04 LTS
  • MacOS
    • support TBD; when need arises
  • Windows
    • tested on Windows10
    • decided to support Windows vs WSL. There are times where Windows cannot be avoided.

Install

Debian

cd ~
curl -sfL https://git.io/chezmoi | sh
export PATH="$PATH:$HOME/bin"
export GITHUB_USERNAME="StephenGemin"
chezmoi init --apply https://github.com/$GITHUB_USERNAME/dotfiles.git

Windows (semi-automated)

  • Recommend running in PowerShell (not pwsh)
  • install prereq dependencies
    get-Command winget  # check winget installed
    # if missing:
    # 1. download winget from MS store
    # 2. If MS store is blocked (typically work env) then install from .msixbundle
    #    - https://github.com/microsoft/winget-cli/releases/latest
    #    - double click downloaded file to install
    #    - if this is also blocked, can install from powershell command `Add-AppxPackage -Path "PATH_TO_FILE"`
    
    winget install -e --id Git.Git
    winget install twpayne.chezmoi
    $env:GITHUB_USERNAME = "StephenGemin"
    chezmoi init --apply https://github.com/$GITHUB_USERNAME/dotfiles.git
  • May need to install MSYS2 manually
  • NeoVim with NVChad
    • Do not start Neovim until NVChad reqs are installed!
    • Install dependencies for NVChad (use MSYS2)
      • pacman -S --needed base-devel mingw-w64-ucrt-x86_64-toolchain
      • pacman -S make gcc
  • To install fonts go to ~\.local\share\fonts; find tff files, right-click desired files, and selectinstall
  • Install Whatsapp from MS store (unavailable from winget)
    • Ref microsoft/winget-pkgs issue 156231
  • Add to PATH (if not there):
    • %USERPROFILE%.pyenv\pyenv-win\shims
    • C:\Program Files\Git\cmd
    • C:\Program Files\Neovim\bin

Tool specific

Manual setup steps for individual tools / apps

  • PyCharm
    • Import settings from ~\.config
  • neovim
    • Run :MasonInstallAll on first run

Tooling

✅==Supported   ❓==May support, unused or not tested   🚫 ==Never support

Terminals

Deb Win Mac
WezTerm
Alacritty*
Windows Terminal 🚫 🚫

*No tmux yet for Alacritty

Shells

Deb Win Mac Notes
Zsh 🚫 Slow on Windows, see Other Notes
Bash Slow on Windows
PowerShell

Package Managers

Apps / Tools

Deb Win Mac Notes
Chezmoi
Git
Double Commander
KeePassXC No Chezmoi integration yet
Neovim NVChad and nvimconf
Vim
Nano
Oh-My-Posh
Zinit
Oh-My-Zsh Via Zinit
Ripgrep
zoxide
fzf
pyenv Windows uses pyenv-win
VLC
Firefox
Opera
Notion
JetBrains IDEs
Visual Studio Code
F.lux Linux uses Redshift
Notepad++ 🚫 🚫
MSYS2 🚫 🚫

Other Notes

Windows

  • To get zsh working on Windows:
    • Install MSYS2; pacman -S zsh
    • Modified C:\msys64\etc\nsswitch.conf (see below)
  • Initial attempt to use zsh did not go well
    • terminal was very sluggish
    • tried in Alacritty, MSYS2, MSYS (Git Bash) and Windows Terminal
    • issues accessing Windows tooling
    • difficult working with Windows paths
    • Decided to use PowerShell on Windows
# Begin /etc/nsswitch.conf

passwd: files db
group: files db

db_enum: cache builtin

db_shell: /usr/bin/zsh
db_home: /c/Users/USERNAME
db_env: windows
#db_home: cygwin desc
#db_shell: cygwin desc
#db_gecos: cygwin desc

# End /etc/nsswitch.conf

💡 Inspirations

About

my dotfiles

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published