A collection of configuration files and profiles for various development tools and environments.
# One-liner to install PowerShell profile from GitHub
irm https://raw.githubusercontent.com/Greg-T8/Profiles/main/PowerShell/bootstrap.ps1 | iex# One-liner to setup Linux/Docker environment from GitHub
curl -fsSL https://raw.githubusercontent.com/Greg-T8/Profiles/main/Linux/bootstrap-docker.sh | bashFor minimal Docker images without curl or wget pre-installed:
apt-get update && apt-get install -y curl && curl -fsSL https://raw.githubusercontent.com/Greg-T8/Profiles/main/Linux/init-docker.sh | bashFor manual configuration or customization, use the following setup instructions.
The init-docker.sh script provides automated setup for Docker containers:
# Clone repository first
git clone https://github.com/Greg-T8/Profiles.git ~/profiles
cd ~/profiles/Linux
# Make executable and run
chmod +x init-docker.sh
./init-docker.shWhat it does:
- Automatically installs vim, git, curl, wget
- Creates symlinks for .bashrc, .vimrc, .inputrc
- Configures vi mode and custom prompt
- Works with apt-get, yum, and apk package managers
# Create symlink to .vimrc
ln -s ~/path/to/Profiles/Linux/.vimrc ~/.vimrcFeatures:
- Vi mode with cursor shape changes
- Line numbers (absolute + relative)
- Color column at 80 characters
- Desert color scheme
- Custom leader key mappings (Space)
- No line wrapping with line break indicators
# Create symlink to .zshrc
ln -s ~/path/to/Profiles/Linux/.zshrc ~/.zshrc
source ~/.zshrcFeatures:
- Vi mode keybindings with visual cursor feedback
- History substring search (PowerShell-like
#+ Tab) - Git branch integration in prompt
- Custom two-line prompt with box-drawing characters
- Enhanced tab completion
- Command history search with Up/Down arrows
Optional Plugin:
# Install history substring search for enhanced functionality
git clone https://github.com/zsh-users/zsh-history-substring-search ~/.zsh/zsh-history-substring-search# Create symlink to Neovim config
ln -s ~/path/to/Profiles/Neovim ~/.config/nvimFeatures:
- Lazy.nvim plugin manager
- Separate configurations for Neovim and VSCode Neovim
- Lualine status bar
- Neo-tree file explorer
- Vim-move for moving lines/blocks
The Install-RemoteProfile.ps1 script provides automated setup:
# Clone repository first
git clone https://github.com/Greg-T8/Profiles.git "$env:OneDrive\Apps\Profiles"
cd "$env:OneDrive\Apps\Profiles\PowerShell"
# Run installer
.\Install-RemoteProfile.ps1Or use the bootstrap one-liner (see Quick Bootstrap section above).
What it does:
- Creates symlinks to PowerShell profile files
- Sets up profile directory structure
- Configures PSReadLine with Vi mode
- Installs custom prompt with Git integration
# Create symlink to PowerShell profile
New-Item -ItemType SymbolicLink -Path $PROFILE.CurrentUserAllHosts -Target "C:\path\to\Profiles\PowerShell\profile.ps1"Features:
- Custom two-line prompt with Git integration (Posh-Git)
- Vi mode with cursor shape changes
- Helper functions and aliases for Docker, Terraform, etc.
- PSScriptAnalyzer settings included
- Work configuration support
# Windows
mklink /D "%APPDATA%\Code\User\snippets" "C:\path\to\Profiles\VSCode\snippets"
mklink "%APPDATA%\Code\User\settings.json" "C:\path\to\Profiles\VSCode\settings.json"
mklink "%APPDATA%\Code\User\keybindings.json" "C:\path\to\Profiles\VSCode\keybindings.json"
# Linux/Mac
ln -s ~/path/to/Profiles/VSCode/snippets ~/.config/Code/User/snippets
ln -s ~/path/to/Profiles/VSCode/settings.json ~/.config/Code/User/settings.json
ln -s ~/path/to/Profiles/VSCode/keybindings.json ~/.config/Code/User/keybindings.jsonFeatures:
- Custom keybindings
- Code snippets for PowerShell and Markdown
- GitHub Copilot chat modes and instructions
- Coding guidelines and style guides
# Windows Terminal settings location
# Copy or symlink to: %LOCALAPPDATA%\Packages\Microsoft.WindowsTerminal_8wekyb3d8bbwe\LocalState\settings.json