Package: dotbot-windows
Configure Windows usingdotbot.Table of contentsWhat you can do with itInstallationConfigurationDevelopmentWhat you can do with itThe dotbot-windows plugin is able to configure Windows in the following ways:Configure the desktop background colorImport registry files (*.reg) from a specified directorySample configuration:windows:personalization:background-color:"#0099ff"registry:import:"my-registry-tweaks/"InstallationThere are two ways to install and use the plugin:Install it as a Python package.Add it as a git submodule in your dotfiles repository.Copydotbot_windows.pyinto your dotfiles directory.Python packageIf you want to install dotbot-windows as a Python package
(for example, if you’re using a virtual environment),
then you can install the plugin usingpip:pip install dotbot-windowsThen, when running dotbot, use the-por--pluginoption
to tell dotbot to load the plugin:dotbot [...] --plugin dotbot_windows [...]If you’re using one of dotbot’sinstallscripts,
you’ll need to edit that file to add the--pluginoption.Git submoduleIf you want to track dotbot-windows as a git submodule
(for example, if you manage your dotfiles using git)
then you can add the plugin repository as a submodule usinggit:git submodule add https://github.com/kurtmckee/dotbot-windows.gitThis will clone the repository to a directory nameddotbot-windows.
Then, when running dotbot, use the-por--pluginoption
to tell dotbot to load the plugin:dotbot [...] --plugin dotbot-windows/dotbot_windows.py [...]Note that you may need to initialize the plugin’s git submodule
when you clone your dotfiles repository or pull new changes
to another computer.
The command for this will look something like:git submodule update --init dotbot-windowsCopydotbot_windows.pyIf desired, you can copydotbot_windows.pyto your dotfiles directory.
You might choose to do this if you already use other plugins
and have configured dotbot to load all plugins from a plugin directory.If you copydotbot_windows.pyto the root of your dotfiles directory
then, when running dotbot, use the-por--pluginoption
to tell dotbot to load the plugin:dotbot [...] --plugin dotbot_windows.py [...]If you copydotbot_windows.pyto a directory containing other plugins,
you can use dotbot’s--plugin-diroption to load all plugins in the directory.
In the example below, the plugin directory is nameddotbot-plugins:dotbot [...] --plugin-dir dotbot-plugins [...]ConfigurationPersonalizationYou can configure the desktop background color using a hexadecimal color (like"#0099ff")
or a triplet of decimal RGB values (like"0 153 255").Here are examples demonstrating the two formats:windows:personalization:background-color:"#0099ff"windows:personalization:background-color:"0153255"RegistryYou can import registry files by specifying a directory containing*.regfiles.
The directory will be recursively searched for*.regfiles,
and each of them will be imported.Note that registry imports may fail if the changes require administrator privileges.Here’s a dotbot configuration file example:windows:registry:import:"registry-export-files"DevelopmentTo set up a development environment, clone the dotbot-windows plugin’s git repository.
Then, follow these steps to create a virtual environment and run the unit tests locally:# Create the virtual environment$python-mvenv.venv# Activate the virtual environment (Windows-only)$&.venv/Scripts/Activate.ps1# Update pip and setuptools, and install wheel(.venv)$pipinstall-Upipsetuptoolswheel# Install poetry and tox(.venv)$pipinstallpoetrytox# Install all dependencies(.venv)$poetryinstall# Run the unit tests locally(.venv)$tox