All notable changes to this project will be documented in this file.
The format is based on Keep a Changelog, and this project adheres to Semantic Versioning.
1.2.1 - 2025-04-14
- Update dependencies
- Update selector error messages
1.2.0 - 2025-03-07
1.1.0 - 2025-02-27
- Added feature to allow advanced selection for the os keys (#331).
This allows for e.g. selecting by the distro name:
linux[whoami.distro^="Ubuntu"]: installs: sudo apt install -y {{ name }} linux[whoami.distro^="Arch"]: installs: sudo pacman -S --noconfirm {{ name }}
- Updated terminal colors to be more readable
- Fixed resolution of
~to the users home directory in configuration and cli (#358)
- Removed support for the previously deprecated name
dots.(yaml|toml|json)for the defaults filedefaults.(yaml|toml|json)
1.0.0 - 2024-12-17
- Removed the
synccommand from rotz (#334)
0.10.0 - 2023-12-10
- Default files
default.(yaml|toml|json)can now be located in any folder of the dotfiles repo. The defaults will be applied to alldot.(yaml|toml|json)files in the same folder and all subfolders.
- Repo level config file now don't need to specify
global,windows,linuxordarwinkeys. If none is provided theglobalkey will be used.
0.9.5 - 2023-07-14
- Added build target for aarch64-pc-windows-msvc (without "handlebars_misc_helpers/http_attohttpc" feature)
- Added .sha256 checksum files to releases
0.9.4 - 2023-07-05
- Added build targets for aarch64 architectures @kecrily
0.9.3 - 2023-02-12
- Issue where rotz would create empty symlinks if the source file does not exist
0.9.2 - 2023-01-18
- Issue where rotz would incorrectly flag files as orphans
0.9.1 - 2022-11-06
- Added binaries to relases
0.9.0 - 2022-10-07
- Linked files are tracked and stored
- When a previously linked file is not a link target anymore it will be removed (#8)
- When previously linked file is linked again it will be automatically overwritten without the need for the
--forcecli flag
0.8.1 - 2022-09-29
- Issue where rotz could not parse dots with mixed links section types (#40)
- Updated cli parser to clap v4 which slightly changes help output
0.8.0 - 2022-09-16
- Template helpers
#windows,#linxand#darwinwhich work likeifs for the respective os evaltemplate helper which evaluates the given string on the shell
0.7.1 - 2022-09-12
- Filtering of dots in commands was not working correctly
0.7.0 - 2022-09-11
- The repo level config file now has support for a
forcekey for forced values which cannot be changed by the config file - Rotz can now automatically detect the filetype and parse the format if the feature (
yaml,tomlorjson) is enabled - The features
yaml,tomlandjsoncan now be enabled simultaneously
- Added
whoamivariable to templating - Added
directoriesvariable to templating - Add ability to recurse into subdirectories
- Bug where the repo level config would not merge correctly
0.6.1 - 2022-08-18
- The repo level config file now uses the key
globalinstead ofdefault - The default
shell_commandon windows now correctly uses PowerShell instead of PowerShell Core
- The repo level config file can now override config default values
0.6.0 - 2022-07-29
- Implemented init command which initializes the config
- Added templating to
dot.(yaml|toml|json)files
- Removed the
repokey from the config as its not needed
- The
repoargument is now required for the clone command
0.5.0 - 2022-07-15
- Implemented install command functionality
0.4.1 - 2022-06-30
- Wildcard "*" in install command not working
- Defaults and global values in
dot.(yaml|toml|json)files not working correctly
0.4.0 - 2022-06-29
- Global
--dry-runcli parameter - Implemented install command functionality
- Option to skip installing dependencies in install command
- Option to continue on installation error in install command
- Support for a repo level config file. You can now add a
config.(yaml|toml|json)file containing os specific defaults to the root of your dotfiles repo. shell_commandconfiguration parameter
- Improved Error messages
- Parsing of
dot.(yaml|toml|json)files in theinstallssection
- Removed the
updatecommand. Updates to the applications should be performed by your packagemanager.
0.3.2 - 2022-06-28
- Linking now also creates the parent directory if it's not present on windows
0.3.1 - 2022-05-27
- Added error codes and help messages
- Refactored the command code
- Linking now also creates the parent directory if it's not present
0.3.0 - 2022-05-09
clonecommand creates a config file with the repo configured if it does not exist- Started adding unit tests
0.2.0 - 2022-02-21
- Added
clonecommand
- Fixed
linkcommand default value for Dots not working
0.1.1 - 2022-02-18
- Updated Readme
0.1.0 - 2022-02-18
- Cli parsing
- Config parsing
yamlsupporttomlsupportjsonsupport- Dotfile linking
- Error handling