Skip to content

gorzell/dot

This branch is 794 commits ahead of ubnt-intrepid/dot:master.

Folders and files

NameName
Last commit message
Last commit date
Jan 26, 2021
Jun 5, 2022
Aug 13, 2024
Sep 14, 2017
Dec 17, 2016
Apr 27, 2023
Nov 2, 2016
Aug 18, 2020
Jun 5, 2022
Mar 20, 2025
Jan 13, 2025
Jun 5, 2022
Oct 19, 2016
Dec 31, 2021
Aug 18, 2020
Apr 2, 2022

Repository files navigation

dot

GitHub Actions

dot is a command-line tool for managing dotfiles, written in Rust.

Overview

dot provides a way to organize configuration files in your home directory.

Installation

Precompiled binaries are on our GitHub releases page. If you want to use the development version, try cargo install to build from source:

$ cargo install --git https://github.com/ubnt-intrepid/dot.git

Example Usage

Clone your dotfiles repository from github and then create home directory symlinks:

$ dot init ubnt-intrepid/dotfiles

Check if all of the links exist and are correct:

$ dot check

<pattern> determines the remote repository's URL of dotfiles.

Pattern types:

  • (http|https|ssh|git)://[username@]github.com[:port]/path-to-repo.git – URL of dotfiles repository
  • git@github.com:path-to-repo.git – SCP-like path
  • username/dotfiles – GitHub user and repository
  • username – GitHub user only (repository dotfiles, e.g.: https://github.com/myuser/dotfiles)

By default, the repository will be cloned locally to $HOME/.dotfiles. This can be overridden with $DOT_DIR.

For more information, run dot help.

Configuration

$DOT_DIR/.mappings where the symlinks are defined in TOML. For example:

[general]
gitconfig   = "~/.gitconfig"
"vim/vimrc" = ["~/.vimrc", "~/.config/nvim/init.vim"]
#...

[windows]
vscode = "$APPDATA/Code/User"
powershell = "$HOME/Documents/WindowsPowerShell"
#...

[linux]
xinitrc = "~/.xinitrc"

Use [general] for symlinks on all platforms. [windows], [linux], [macos] for symlinks on specific platforms.

See my dotfiles for a real example.

License

dot is distributed under the MIT license. See LICENSE for details.

Similar Projects

About

Yet another management tool for dotfiles

Resources

License

Stars

Watchers

Forks

Packages

No packages published

Languages

  • Rust 81.5%
  • Shell 11.0%
  • Makefile 5.5%
  • PowerShell 2.0%