Skip to content

Thysrael/dotfiles

Repository files navigation

Thysrael's Dotfiles

Build Status Top Language License Last Commit

overview

Manage dotfiles using only make, soft link and git.
Transparent and Easy to deploy.

Overview

This project leverages GNU Make and Unix symbolic links for configuration management. This approach is designed to be minimalist, transparent, and auditable, avoiding the complexity of dedicated dotfile managers.

Getting Started

1. Clone the repository

Clone the repository to your desired location:

git clone --recursive https://github.com/Thysrael/dotfiles.git
cd dotfiles

2. Dependencies

The core system depends only on:

Optional Enhancements: The following modern CLI tools are recommended for the full experience. You can install them using the provided helper script:

./toolkit.sh
  • Maple Nerd Font: Or any preferred Nerd Font.
  • lsd: A modern replacement for ls.
  • bat: A cat clone with syntax highlighting.
  • zoxide: A smarter cd command.
  • fzf: A general-purpose command-line fuzzy finder.

Usage

Configuration is managed via make targets. Each program's configuration corresponds to a specific target in the Makefile.

Individual Configuration

To configure a specific tool (e.g., tmux):

make tmux

To roll back changes (remove symlinks):

make clean-tmux

Batch Deployment

Deploy configurations for specific environments:

make server # core tools for headless servers
make linux  # full suite for Linux desktops
make mac    # full suite for MacOS desktops

Warning

Backup your data: Deployment replaces existing configuration files with symbolic links. While make is generally safe, it is highly recommended to backup your original config files before running these commands.

Note

The gitconfig includes personal references. Please update git/config with your own details after installation.