Skip to content

Latest commit

 

History

423 Commits

Folders and files

NameName
Last commit message
Last commit date
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Dotfiles

Personal system configuration files.

Philosophy

Keep it simple, even if it means duplicating code. Modular where it makes sense, pragmatic everywhere else. Designed for easy maintenance and clear understanding over clever abstractions.

Quick Start

git clone --recurse-submodules https://github.com/slavafyi/dotfiles.git ~/.dotfiles
cd ~/.dotfiles
make install

If you cloned the repository without --recurse-submodules, initialize the submodules separately:

git submodule update --init --recursive

Available Commands

make install                         # Full system setup
make install PROFILE=minimal-server  # Run a named profile
make update                          # Update system and packages
make fmt                             # Format code files

Profiles

Profiles let you reuse the underlying install modules for different targets:

  • full – complete workstation setup (default)
  • minimal-server – base system and user essentials (system_base, user_core)

Usage examples:

make install PROFILE=minimal-server
./install.sh profile minimal-server
./install.sh list-profiles

You can still run individual modules and sub-modules when needed:

./install.sh dev_tools
./install.sh setup_bins
./install.sh update_system

Helper steps use setup_* names across OSes when they represent the same task. update_system remains the manual update entrypoint.

Structure

configs/     Configuration files (managed by stow)
scripts/     Installation scripts
misc/        Additional files (packages, dconf dumps, etc)

Supported Systems

  • Arch Linux
  • macOS
  • Fedora
  • Debian/Ubuntu

License

MIT License - see LICENSE for details.

About

My secret sauce for coding 🍝

Topics

Resources

Stars

0 stars

Watchers

0 watching

Forks

Contributors

Languages