Dotfiles
~/. Cross-platform, cross-shell configuration files. ⚙️💻
Install / Use
/learn @renemarc/DotfilesREADME
[![Codacy rating][badge-codacy]][link-codacy] [![CodeFactor rating][badge-codefactor]][link-codefactor] [![License][badge-license]][link-license] [![Repo analytics][badge-analytics]][link-analytics] [![Tweet][badge-twitter]][link-twitter]
Universal command set and colourful shell configurations for Bash, Zsh and Powershell, compatible with macOS, Windows and (partially) Linux, all managed easily using chezmoi.
<div align="center"> <p><strong>Be sure to <a href="#" title="star">⭐️</a> or <a href="#" title="fork">🔱</a> this repo if you find it useful! 😃</strong></p> </div>Project goals ⚽
- Unified set of aliases and commands.
- Familiar feel and creature comforts across environments.
- Cross-platform file management toolset.
- Easy access to common paths.
- Shortcuts to popular cross-platform apps.
- System-agnostic
updateanddotfilesinstall commands. - A pretty interface! 💃
Supported toolset 🛠️
Use either one or many of these, the config files will be in place and ready to provide a familiar interface.
🐚 Shells
- Bash <sub><sup><b title="Linux">🐧</b></sup></sub><b title="macOS"></b>:
~/.bashrc<sup>enhanced with Bash-It!</sup> - PowerShell 5.1+ <sub><sup><b title="Linux">🐧</b></sup></sub><b title="macOS"></b><b title="Windows">⊞</b>:
~/.config/powershell/<sup>enhanced with Oh-My-Posh, Terminal Icons, and others!</sup> - Z shell <sub><sup><b title="Linux">🐧</b></sup></sub><b title="macOS"></b>:
~/.zshrc<sup>enhanced with Oh-My-Zsh, Powerlevel10K, and others!</sup>
💻 Terminals
- Hyper <sub><sup><b title="Linux">🐧</b></sup></sub><b title="macOS"></b><b title="Windows">⊞</b>:
~/.hyper.js - iTerm2 <b title="macOS"></b>:
~/.config/iterm/ - macOS Terminal <b title="macOS"></b>
- Windows Terminal <b title="Windows">⊞</b>:
~/.config/windows_terminal/
📦 Package managers
- Homebrew <b title="macOS"></b>:
~/.Brewfile - Scoop <b title="Windows">⊞</b>
💾 Universal apps <sup><sub><b title="Linux">🐧</b></sub></sup><b title="macOS"></b><b title="Windows">⊞</b>
- chezmoi dotfiles manager:
~/.chezmoi.toml - cURL data transfer tool:
~/.curlrc - Git :octocat: version-control system:
~/.gitconfig - GNU Nano 4.x+ text editor:
~/.nanorc<sup>enhanced with Improved Nano Syntax Highlighting Files!</sup> - GNU Wget HTTP/FTP file downloader:
~/.wgetrc - Micro text editor:
~/.config/micro/ - OpenSSH secure networking utilities:
~/.ssh/config - Ripgrep fast-search tool:
~/.ripgreprc - SQLite3 database client:
~/.sqliterc - Starship 🚀 cross-shell prompt:
~/.config/starship.toml - tmux terminal multiplexer:
~/.tmux.conf.local<sup>enhanced with Oh-My-Tmux!</sup> - Vim text editor:
~/.vimrc<sup>enhanced with Ultimate vimrc!</sup>
Cross-shell compatibility matrix 🏁
These are unified CLI commands available amongst different shells on all platforms. While some of their outputs may differ in style between different environments, their usage and behaviours remain universal.
Additional aliases are provided by Bash-It, Oh-My-Zsh and Powershell, and are listed by using the command alias.
System-specific aliases are marked with <b title="macOS"></b>, <b title="Windows">⊞</b>, or <sub><sup><b title="Linux">🐧</b></sup></sub>.
🧭 Easier navigation
| Bash | PowerShell | Zsh | Command | Description |
|:----:|:----------:|:---:|---------|-------------|
| ✅ | ✅ | ✅ | ~ | Navigates to user home directory. |
| ✅ | ✅ | ✅ | cd- | Navigates to last used directory. |
| ✅ | ✅ | ✅ | ..<br>cd.. | Navigates up a directory. |
| ✅ | ✅ | ✅ | ... | Navigates up two directories. |
| ✅ | ✅ | ✅ | .... | Navigates up three directories. |
| ✅ | ✅ | ✅ | ..... | Navigates up four directories. |
🗂️ Directory browsing
| Bash | PowerShell | Zsh | Command | Description |
|:----:|:----------:|:---:|---------|-------------|
| ✅ | ✅ | ✅ | l | Lists visible files in long format. |
| ✅ | ✅ | ✅ | ll | Lists all files in long format, excluding . and ... |
| ✅ | ✅ | ✅ | lsd | Lists only directories in long format. |
| ✅ | ✅ | ✅ | lsh | Lists only hidden files in long format. |
🗄️ File management
| Bash | PowerShell | Zsh | Command | Description |
|:----:|:----------:|:---:|---------|-------------|
| ✅ | ✅ | ✅ | cpv | Copies a file securely. |
| ✅ | ✅ | ✅ | fd | Finds directories. |
| ✅ | ✅ | ✅ | ff | Finds files. |
| ❌ | ✅ | ❌ | mirror | Mirrors directories. |
| ✅ | ✅ | ✅ | rg | Searches recursively with ripgrep. |
💡 General aliases
| Bash | PowerShell | Zsh | Command | Description |
|:----:|:----------:|:---:|---------|-------------|
| ✅ | ✅ | ✅ | alias | Lists aliases. |
| ✅ | ✅ | ✅ | c | Clears the console screen. |
| ✅ | ❌ | ✅ | extract<br>x | Extracts common file formats.<br>Usage: extract solarized.zip |
| ✅ | ✅ | ✅ | h | Displays/Searches global history.<br>Usage: h<br>Usage: h cd |
| ✅ | ✅ | ⚠️ | hs | Displays/Searches session history.<br>Usage: hs<br>Usage: hs cd |
| ✅ | ✅ | ✅ | mkcd<br>take | Creates directory and change to it.<br>Usage: mkcd foldername |
| ✅ | ❌ | ✅ | reload | Reloads the shell. |
| ✅ | ✅ | ✅ | repeat<br>r | Repeats a command x times.<br>Usage: repeat 5 echo hello. |
| ✅ | ❌ | ✅ | resource | Reloads configuration. |
🕙 Time
| Bash | PowerShell | Zsh | Command | Description |
|:----:|:----------:|:---:|---------|-------------|
| ✅ | ✅ | ✅ | now<br>unow | Gets local/UTC date and time in ISO 8601 format YYYY-MM-DDThh:mm:ss. |
| ✅ | ✅ | ✅ | nowdate<br>unowdate | Gets local/UTC date in YYYY-MM-DD format. |
| ✅ | ✅ | ✅ | nowtime<br>unowtime | Gets local/UTC time in hh:mm:ss format. |
| ✅ | ✅ | ✅ | timestamp | Gets Unix time stamp. |
| ✅ | ✅ | ✅ | week | Gets week number in ISO 8601 format YYYY-Www. |
| ✅ | ✅ | ✅ | weekday | Gets weekday number. |
🌐 Networking
| Bash | PowerShell | Zsh | Command | Description |
|:----:|:----------:|:---:|---------|-------------|
| ✅ | ✅ | ✅ | fastping | Pings hostname(s) 30 times in quick succession. |
| ✅ | ✅ | ✅ | flushdns | Flushes the DNS cache. |
| ✅ | ✅ | ✅ | ips | Gets all IP addresses. |
| ✅ | ✅ | ✅ | localip | Gets local IP address. |
| ✅ | ✅ | ✅ | publicip | Gets external IP address. |
| ✅ | ✅ | ✅ | GET<br>HEAD<br>POST<br>PUT<br>DELETE<br>TRACE<br>OPTIONS | Sends HTTP requests.<br>Usage: GET https://example.com |
⚡ Power management
| Bash | PowerShell | Zsh | Command | Description |
|:----:|:----------:|:---:|---------|-------------|
| ✅ | ✅ | ✅ | hibernate | Hibernates the system. |
| ✅ | ✅ | ✅ | lock | Locks the session. |
| ✅ | ✅ | ✅ | poweroff | Shuts down the system. |
| ✅ | ✅ | ✅ | reboot | Restarts the system. |
🤓 Sysadmin
| Bash | PowerShell | Zsh | Command | Description | |:----:|:----------:|:--
