My dotfiles utilizing Chezmoi for management https://www.chezmoi.io/
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
Ryan Reed d767628291 Adding automatic vim plugin update and removals 10 months ago
.chezmoiscripts Adding automatic vim plugin update and removals 10 months ago
dot_config Minor updates to plug 10 months ago
dot_local Adding a default bashrc config 3 years ago
private_dot_mozilla/private_firefox/private_personal-profile.default Removing unnecessary settings as arkenfox now defaults the same way 1 year ago
.chezmoidata.toml Initial commit 3 years ago
.chezmoiexternal.toml Change Arkenfox refresh from weekly to monthly 1 year ago
.chezmoiignore Removing VSCode for now 1 year ago
.gitignore Initial commit 3 years ago
README.md Replacing custom user.js with Arkenfox user.js and user-overrides.js 1 year ago
dot_bashrc Adding a default bashrc config 3 years ago
dot_zshenv Removing duplicate entries 2 years ago

README.md

      _       _    __ _ _           
     | |     | |  / _(_) |          
   __| | ___ | |_| |_ _| | ___  ___ 
  / _` |/ _ \| __|  _| | |/ _ \/ __|
 | (_| | (_) | |_| | | | |  __/\__ \
  \__,_|\___/ \__|_| |_|_|\___||___/

Table of Contents

Overview

These are my dotfiles for various systems which are managed using chezmoi

This includes custom profiles for various machines

Chezmoi TLDR

chezmoi init <repo>
chezmoi apply -n    # Apply changes to ~ (Dry run)
chezmoi archive     # Create an archive of the dotfiles
chezmoi cd          # cd to chosmoi source path
chezmoi merge       # Merge changes made to local copy with chezmoi managed
chezmoi update      # Pull latest version from git and apply changes

chezmoi add ~/.my_file      # Manage new file
chezmoi forget ~/.my_file   # Stop managing a file
chezmoi managed             # View managed files

Configs and Applications

Check out the README's of the various apps for shortcuts, plugin info, etc:

Requirements

Application Min Version
Chezmoi 2.3
Tmux 3.3
Vim 8.2
zsh 5.8

The above are only the versions that each package was last known working with. It's possible earlier versions may work, although not for all applications. For instance, Tmux 3.3 is required for support of $XDG_ variables (e.g. $XDG_CONFIG_HOME)

Optional Requirements

See the configuration file for enabling

Application Min Version Notes
Firefox ??? Configures the user-overrides.js for use within Arkenfox's user.js profile (Does NOT download the arkenfox profile. Must be done manually via the updater/installer

Chezmoi Configuration File (Optional)

Create the chezmoi configuration at ~/.config/chezmoi/chezmoi.toml:

[data]
    hostname_color = "blue"

[data.firefox]
    enabled = true
    bookmarks = "/home/user/bookmarks.html"
    profile_name = "a5bcdefg.default-release"

[data.fonts]
    enabled = true

[data.git]
    email = "git@email.com"
    name = "My User"
    ssl_verify = false

Initial Setup

Chezmoi does not support submodules. However, submodules are how we want to handle this rather than having to use the chezmoi configuration

sh -c "$(curl -fsLS git.io/chezmoi)"
chezmoi init <repo>
chezmoi apply -v -n         # Remove -n to actually apply

Special Notes

Mozilla Firefox

I utilize various user-overrides.js and userChrome.css tweaks.

A script is run on chezmoi apply, .chezmoiscripts/run_after_sync-firefox-profile.sh.tmpl, which rsyncs ~/.mozilla/firefox/personal-profile.default/ to the profile configured within ~/.mozilla/firefox/<profile-name>/ (firefox.profile_name in chezmoi.toml)

This allows for the use of Arkenfox's user.js along with the overrides. This does NOT run the Arkenfox updater.sh script so this still needs to be done. Will look into in the future.

Tmux

  • Default Prefix: ctrl + a or ctrl + b

On first install, it may be necessary to run the following to download the plugins and reload tmux:

<prefix>I