Skip to content

raflihadiana/dotfiles

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

4 Commits
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Dotfiles

My personal dotfiles configuration, managed with GNU Stow.

Prerequisites

Before setting up, ensure the following tools are installed on your system:

  • Git: For cloning the repository.
  • GNU Stow: For symlinking the configuration files.
  • Zsh: The default shell used in this configuration.
  • Antidote: A Zsh plugin manager.
  • Starship: The cross-shell prompt.
  • Tmux: Terminal multiplexer.
  • Neovim (optional but recommended): The text editor configured in these dotfiles.
  • Zoxide, FZF, Fd, Bat: Additional tools used in the Zsh configuration.

Installation Examples

Debian/Ubuntu:

sudo apt update
sudo apt install git stow zsh tmux neovim fzf fd-find bat
# Install Starship
curl -sS https://starship.rs/install.sh | sh
# Install Zoxide
curl -sS https://raw.githubusercontent.com/ajeetdsouza/zoxide/main/install.sh | bash

Fedora:

sudo dnf install git stow zsh tmux neovim fzf fd-find bat
# Install Starship & Zoxide (same as above)

Setup Instructions

  1. Clone the Repository Clone this repository to your home directory:

    git clone https://github.com/yourusername/dotfiles.git ~/dotfiles
    cd ~/dotfiles
  2. Install Antidote Install the Antidote plugin manager:

    git clone --depth=1 https://github.com/mattmc3/antidote.git ${ZDOTDIR:-~}/.antidote
  3. Run Setup Script The setup script will use stow to symlink the configuration files to your home directory:

    ./scripts/setup.sh

    Note: The script stows zsh, starship, tmux, and git.

  4. Set Zsh as Default Shell

    chsh -s $(which zsh)
  5. Restart Shell Log out and log back in, or restart your terminal to apply the changes.

Directory Structure

  • scripts/: Setup scripts.
  • zsh/: Zsh configuration (.zshrc, plugins).
  • starship/: Starship prompt configuration.
  • tmux/: Tmux configuration (.tmux.conf).
  • git/: Git configuration.

Notes

  • Git Config: The git directory might be empty or contain minimal config. Ensure you set your git user and email manually if not provided:
    git config --global user.name "Your Name"
    git config --global user.email "you@example.com"

About

My Personal Terminal Setup

Topics

Resources

Stars

Watchers

Forks

Languages