Skip to content

vikdotdev/dotfiles

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 
 
 
 
 
 
 
 
 
 
 
 
 

Repository files navigation

Installation

Debian

To start, first ensure your user in in /etc/sudoers:

su
# then in sudo shell
nano /etc/sudoers

Add your user to sudoers:

%sudo           ALL=(ALL:ALL) ALL # append after this line
yourusername    ALL=(ALL) ALL     # your line

Dependencies that are required to run the script:

sudo apt install curl git

Then run the installation:

bash <(curl -L https://raw.githubusercontent.com/vikdotdev/dotfiles/master/bin/install-debian)

Compatibility

Tested on Debian 13 Trixie.

Post-installation manual steps

Install kmonad-toggle

In extension manager manually install kmonad-toggle extension. In “Custom command” field put:

kmonad /home/<username>/.config/kmonad/config.kbd

Install gnome-shell-go-to-last-workspace

That’s it, it’s already configured by build scripts.

Dotfiles Management

After installation, use the dot command to manage your dotfiles:

Commands

dot

Shows help message with all available commands.

dot install [MODULE]

Install packages and applications. Without arguments, installs all modules.

dot install                  # Install all packages
dot install emacs            # Install specific package
dot install tools/git        # Install nested module
dot install --list           # List available packages

dot build [MODULE]

Build and deploy configuration files. Without arguments, builds all modules.

dot build                    # Build all configurations
dot build shell              # Build specific module
dot build --list             # List available modules

dot upgrade [MODULE]

Upgrade source-built packages. Without arguments, upgrades all modules that have upgrade scripts.

dot upgrade                  # Upgrade all packages
dot upgrade emacs            # Upgrade specific package
dot upgrade --list           # List available upgrades

dot pull

Update the dotfiles repository from git. Checks for uncommitted changes before pulling.

dot pull                     # Pull latest changes

dot sync

Update the repository and rebuild all configurations. Combines pull and build all in one command.

dot sync                     # Pull and rebuild everything

dot pwd

Print the dotfiles directory path.

dot pwd                      # Print dotfiles path
cd $(dot pwd)                # Navigate to dotfiles directory

dot doctor

Check system health and requirements. Verifies installation status, directories, and dependencies.

dot doctor                   # Run system health check

Module Organization

Modules are organized by numbered directories for build order:

  • 00-mise/ - Runs first (dependency for other tools)
  • 01-ghostty/ - Runs second (depends on mise)
  • Regular directories run in alphabetical order

Machine specific config

.profile.local

Create a ~/.profile.local file to store machine specific environment variables.

Emacs package uses DESKTOP & LAPTOP variables to define default font sizes.

About

Minimal dependencies bash config and installer 🏠

Topics

Resources

Stars

Watchers

Forks