https://github.com/robertpeteuil/dotfiles
Cross platform shell configuration "dotfiles" - settings, aliases and utilities
https://github.com/robertpeteuil/dotfiles
aliases bash-configuration bash-prompt bashrc dotfiles environment-configuration
Last synced: 5 months ago
JSON representation
Cross platform shell configuration "dotfiles" - settings, aliases and utilities
- Host: GitHub
- URL: https://github.com/robertpeteuil/dotfiles
- Owner: robertpeteuil
- Created: 2025-04-04T17:01:08.000Z (6 months ago)
- Default Branch: main
- Last Pushed: 2025-04-29T18:43:49.000Z (6 months ago)
- Last Synced: 2025-04-29T19:32:54.656Z (6 months ago)
- Language: Shell
- Homepage:
- Size: 188 KB
- Stars: 0
- Watchers: 1
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# dotfiles
## Shell configuration "dotfiles" - cross platform settings, aliases and script
----
Quickly and simply install settings, aliases and functions for Bash and Zsh on Linux, macOS, and WSL Shells.
## Settings
The following configs are installed:
- zsh - configures zsh znap plugin manager, prompt, plugins, aliases
- bash - configured bash settings, bash git prompt
- git - general configuration, aliases, colorization, user settings## Installation
Verify and run downloader script to download/install
``` bash
$ curl -LO https://raw.githubusercontent.com/robertpeteuil/dotfiles/main/downloader# review script - e.g. cat downloader
$ chmod +x downloader
$ ./downloader
```The downloader script performs the following tasks:
- Install `git` if not installed (required to clone the `dotfiles` repo)
- Clones `dotfiles` repo into the `~/.dotfiles` directory (configurable)
- Clones `dotfiles-private` repo into the `~/.dotfiles/private` directory (configurable)
- executes included `install` scriptInstall script performs actions from `install.conf.yaml`
- ZSH
- symlinks `zshenv` to $HOME
- Bash
- symlinks `bashrc` and `bash_profile` to $HOME
- symlinks `bash-git-prompt` and `grc` for bash prompt/colorization
- Git config
- symlinks `gitconfig`, `gitignore_global`
- symlinks `gitconfig_ssh` (url specific overrides)## Load details
### ZSH dotfiles load process
- `.zshenv` read from $HOME, sets $ZDOTDIR
- `.zshrc` read from $ZDOTDIR directory
- `.zshrc` sources the following
- `$HOME/.cache/p10k-insta-prompt` if present
- files in `$ZDOTDIR/rc.d`
- 01 - history
- 02 - znap install
- 04 - Env and Path
- 06 - prompt setup
- 08 - plugins
- `marlonrichert/zcolors` # colors for completions and git
- `zsh-users/zsh-autosuggestions` # Inline suggestions
- `zdharma-continuum/fast-syntax-highlighting`
- `zsh-users/zsh-completions`
- `marlonrichert/zsh-autocomplete` # type-ahead completion
- 10 - options
- 12 - keys
- 20 - zsh specific aliases
- configure zsh dirstack, reload, zshrc edits, showcolors, zmv
- sources `DOTFILES/shell/includes` which includes
- `DOTFILES/shell/aliases` - cross-shell (used by both bash & zsh)
- `DOTFILES/shell/functions` - cross-shell (used by both bash & zsh)
- optional files### Bash dotfiles load process
- `.bash_profile` - loaded by bash login shell
- sources `.bashrc`
- `.bashrc` - loaded by non-login shells (unless sourced explicitly)
- exits if non-interactive or not bash
- sets paths
- sets prompt, colors
- configured brew PATH
- configures GRC
- display linux reboot message, if appropriate
- sources `DOTFILES/shell/includes` which includes
- `DOTFILES/shell/aliases` - cross-shell (used by both bash & zsh)
- `DOTFILES/shell/functions` - cross-shell (used by both bash & zsh)
- optional files## Customization
Customize this repo by forking it and customizing to your needs.
- This repo uses [dotbot](https://github.com/anishathalye/dotbot) bootstrap
- [Configuration Info](https://github.com/anishathalye/dotbot#configuration)
- [Dotbot Wiki](https://github.com/anishathalye/dotbot/wiki)