A collection of configuration files and scripts to streamline setting up your favorite terminal shell across various systems.
Forked from another repository, with additional customizations and improvements.
- Programmer-focused dotfiles.
- Personal customizations alongside the forked files.
- Includes specific patches and workarounds for various platforms.
- Designed to minimize the risk of system misconfiguration.
Package | Description | Remarks |
---|---|---|
homebrew | Linuxbrew | |
pre-commit | Adds validation/features on git before committing | |
sdkman | Java JDK/JRE manager | |
vim | Duh? | |
pyenv | Python version manager | Untested |
phpenv | PHP version manager | Untested |
rbenv | Ruby version manager | Untested |
- Windows Subsystem for Linux (WSL)
- Ubuntu/Debian-based distributions
- Arch Linux and its derivatives (e.g., Garuda, Manjaro)
- Fedora/RHEL-based distributions
The setup process is now fully automated using the start.sh
script. This script detects your operating system and applies the appropriate configurations and workarounds.
Ensure the following prerequisites are met before running the setup:
- A 64-bit operating system.
- The
stow
package installed on your system. - dotstow installed for managing dotfiles.
Clone this repository to your system by executing the following...
git clone https://github.com/jcchikikomori/.dotfiles.git $HOME/.dotfiles
cd $HOME/.dotfiles
NOTE: Do not install this on somewhere else!
Execute start.sh
to get started.
The script will: Detect your operating system (e.g., Debian-based, Arch-based, RHEL-based). Apply the appropriate configurations and workarounds. Execute platform-specific setup scripts.
Then follow any additional prompts during the setup process.
Execute stowme.sh
to finally symlink the files properly.
Then reboot your machine, and let the magic happen!
After running the setup, the dotfiles-post-setup script will handle additional configurations, including:
Installing essential tools like fzf, fasd, and oh-my-zsh.
Setting up programming environments (e.g., Python, Ruby, Node.js, PHP).
Configuring vim with plugins and tmux with TPM.
Installing the Starship prompt and Antigen for Zsh.
Refer to the dotfiles-post-setup script
for more details.
This repository includes a CI workflow; For example: Ubuntu, located in .github/ci-ubuntu.yml
. The workflow automates the following tasks
Initializes essential dependencies.
Executes the start.sh
script.
Adds a user and simulates stowing dotfiles.
For Arch Linux, please follow the instructions here.
Please refer to this article here.