Skip to content

Personal dotfiles for configuring Linux dev environment

Notifications You must be signed in to change notification settings

leetmeister/dotfiles

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

13 Commits
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

dotfiles

Personal dotfiles for configuring Windows & Linux dev environments:

Usage

Prerequisites

To run the installation scripts:

Manual install on Windows

From a PowerShell prompt that is run as administrator:

git clone https://github.com/leetmeister/dotfiles.git $HOME\dotfiles
& "$HOME\dotfiles\install.ps1" # [ -Force | -WhatIf | -Confirm ]

To get help:

Get-Help $HOME\dotfiles\install.ps1

Manual install on Linux

git clone https://github.com/leetmeister/dotfiles.git $HOME/dotfiles
$HOME/dotfiles/install.sh # [ --no-deps | --no-zsh | --no-starship | --no-gcm ]

Automatically apply to VS Code dev containers

Update the settings.json dotfiles properties:

{
  "dotfiles.repository": "leetmeister/dotfiles",
  "dotfiles.targetPath": "~/dotfiles",
  "dotfiles.installCommand": "~/dotfiles/install.sh"
}

These should then be automatically synced via GitHub/Microsoft account settings sync.

Additional configuration notes

MacOS

No install script for MacOS but most things can be installed manually through Homebrew, bootstrapping through Terminal:

/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
brew tap homebrew/cask-fonts
brew install font-caskaydia-cove-nerd-font
brew install cask iterm2
brew install git zsh starship

That leaves configuration tasks that can be inferred from install.sh:

There are also customizations to be made to iTerm:

  • iTerm → Preferences → Profiles → Colors → Color Presets
  • iTerm → Preferences → Profiles → Text → Font
    • Select the installed CaskaydiaCove Nerd Font font.

PowerShell profiles

These are not included in dotfiles as they are already being synced via OneDrive under:

  • %USERPROFILE%\OneDrive\Documents
    • WindowsPowerShell\Profile.ps1
    • PowerShell\Profile.ps1 (if PowerShell 7 is additionally installed)

Windows Terminal settings

The .windows_terminal/settings.json file will need to be customized to be appropriate for which shells are installed on the target device, and is not automatically installed as part of the install.ps1 script.

The Windows Terminal settings.json file is usually under %LOCALAPPDATA%\Packages\Microsoft.WindowsTerminal_8wekyb3d8bbwe\LocalState\settings.json and can be replaced there.

To distinguish between the various shells, custom themes can be generated via https://windowsterminalthemes.dev/ per shell.

References

Topic Link
Bash Scripting Cheatsheet https://devhints.io/bash
Dev Container Templates https://containers.dev/templates
Git Configuration https://www.git-scm.com/book/en/v2/Customizing-Git-Git-Configuration
Git Credential Manager https://github.com/git-ecosystem/git-credential-manager/blob/release/docs/configuration.md
Oh My Zsh Wiki https://github.com/ohmyzsh/ohmyzsh/wiki
PowerShell 7 https://learn.microsoft.com/en-us/powershell/scripting/install/installing-powershell?view=powershell-7.3
PowerShell Profiles https://learn.microsoft.com/en-us/powershell/module/microsoft.powershell.core/about/about_profiles
Starship Configurations https://starship.rs/config
Terminal Color Schemes https://github.com/mbadolato/iTerm2-Color-Schemes
VS Code Profiles https://code.visualstudio.com/docs/editor/profiles
Windows Terminal Settings https://learn.microsoft.com/en-us/windows/terminal/customize-settings/profile-general
Windows Terminal Splash https://terminalsplash.com/
Zsh Manual https://zsh.sourceforge.io/Doc/Release/zsh_toc.html

About

Personal dotfiles for configuring Linux dev environment

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published