This repository contains various configuration files and utility scripts dd relies on daily for various things (mostly work, leisure and pet projects).
The main focus is Arch Linux support, as that's what dd prefers for development 9 times out of 10. MacOS and Windows are treated as a second class citizen, hence things will most probably be broken, outdated or far from being ideal.
The main focus is now shifted to MacOS, as Apple Silicon Macs are too good to ignore. Arch Linux support is still in place and will be maintained long-term, albeit without much in terms of planned changes / improvements.
Platform | Chassis Types | Desktop Environments | Support Tier |
---|---|---|---|
MacOS | Laptop / Desktop | Aqua | Tier 1 - Actively Maintained |
Arch Linux | Laptop / Desktop / VMWare | i3wm / KDE Plasma | Tier 2 - Best Effort |
Windows 10 | Desktop | Windows Shell | Tier 3 - Low Effort / Barebones |
The following sofware must be installed on a target platform before the integration should be performed:
Platform | Software |
---|---|
Linux | Chezmoi, Git |
MacOS | Chezmoi, Git, Homebrew |
Windows 11 | Chezmoi, Git, Chocolatey, Rust Up |
MacOS development workflow is based around Alacritty and Windows 11 development workflow is based around VS Code, thus on these platforms it is a good idea to install them as well.
For local development on Linux or MacOS, Cargo Make will come in handy too, as the repository contains Makefile.toml
with several somewhat useful targets which save time when iterating on new changes.
For Windows 10, see setup guide. Linux and MacOS setup guides are not provided as of right now, mostly due to the fact it should be fairly trivial to figure out as is.
WARNING: On MacOS,
Command+H
hide shortcut should be disabled for Alacritty by setting it to a different (preferably, hard to accidentally trigger) key combination. This can be done fromSystem Preferences -> Keyboard -> Shortcuts -> App Shortcuts
(menu title value should be set exactly toHide alacritty
).
WARNING: On MacOS,
Shell Command: Install 'code' command in PATH command
must be executed from within VS Code to make the CLIcode
command available from in$PATH
before running initialcargo make apply
orchezmoi apply
.
WARNING: On Windows,
run_once_*.ps1
will execute in PowerShell bypassing a default security policy (i.e.powershell.exe -NoLogo -ExecutionPolicy ByPass -File setup.ps1
).
WARNING: On Windows, reboot is required after initial integration, as VS Build Tools are installed and won't be working untill after the reboot.
Run the following to pull down the dotfiles:
chezmoi init ddnomad --ssh
Preview what files will be copied (no changes will be made):
chezmoi cd && cargo make dry
Apply all changes:
chezmoi cd && cargo make apply
When using nvim
for the first time, it is necessary to install Dein plugins first. Once nvim
is opened, execute :call dein#install()
and wait for the process to finish.
When using Alacritty + Tmux, it is necessary to install Tmux Powerline plugins first. For that, using Ctrl+a, Shift+i
key chord and wait for the process to finish.
Please note, that files in "$(chezmoi cd)"/unmanaged/
directory won't be applied automatically. These should be copied manually as needed, as they fall outside of "${HOME}"
directory of a current user or just tricky to apply automatically.