dotfm

My dotfile manager
git clone git://src.gearsix.net/dotfm
Log | Files | Refs | Atom | README | LICENSE

commit d4a5f1f06a7325ca43d33abddc0bd5d95098ebf1
parent dd3bf255a6fb297cdcb8345be413b48a3fe97cde
Author: gearsix <gearsix@tuta.io>
Date:   Fri,  8 Oct 2021 12:30:03 +0100

updated CHANGELOG#v2.2.2

Diffstat:
MCHANGELOG | 65+++++++++++++++++++++++++++++++++++++++--------------------------
1 file changed, 39 insertions(+), 26 deletions(-)

diff --git a/CHANGELOG b/CHANGELOG @@ -1,6 +1,18 @@ -# CHANGELOG -## v2.2.0 +<details><summary><h3 style="display: inline;">CHANGELOG</h3></summary> + +**v2.2.2** + +- Bugfix when a blank line is found in the installed.csv file +- Bugfix when the installed.csv directory does not exist on first run +- Bugfix to behaviour when installing a dotfile source path that matches it's destination path +- Bugfix when using `~` in the path of a prompted install location + +**v2.2.1** + +- minor fix to _Makefile#link_ + +**v2.2.0** - total refactored on most of the code to tidyup some mess that'd been in for a while - logging is more consistent @@ -13,7 +25,7 @@ --- -## v2.1.2 +**v2.1.2** - added `-p` to mkdir calls in Makefile to avoid failure when path exists - tidied up logging @@ -21,39 +33,39 @@ --- -## v2.1.1 +**v2.1.1** - updated the CHANGELOG - `dotfm remove` now calls `rm -iv` (previously `rm -v`), to be safe(r). --- -## v2.1.0 +**v2.1.0** - added the `dotfm update` command for updating a dotfile's source location --- -## v2.0.5 +**v2.0.5** - added banner.svg --- -## v2.0.4 +**v2.0.4** - updated the README & man file - formatting fixed in the README --- -## v2.0.3 +**v2.0.3** - compressed logo.png --- -## v2.0.2 +**v2.0.2** - updated LICENSE to ISC - added awesome logo from [Marta Dias](https://www.instagram.com/marta.dias.z/) @@ -61,23 +73,23 @@ --- -## v2.0.1 +**v2.0.1** - updated the "list" command to use unix system commands: printf, cat, column. Provides a neater, more reliable printout and makes the implementation tidier. -- DOTFM_CSV_FILE lines are now terminated with '\n' (previously '\r\n') +- DOTFM CSV FILE lines are now terminated with '\n' (previously '\r\n') - Install & Uninstall (with Makefile) will now prompt for overwriting & removing files --- -## v2.0.0 +**v2.0.0** - The quiet arg works properly now -- Added code comment header documenting the dotfm_* functions +- Added code comment header documenting the dotfm functions - Now the DOTFILE arg can specify multiple dotfiles - updated the README - added a manpage (src/dotfm.1), which is installed with dotfm in the Makefile -### DOTFM CSV FILE +_DOTFM CSV FILE_ dotfm now tracks dotfiles that it installs symlinks for in a file. This file is currently stored at _~/.local/dotfm/installed.csv_. The file has the following structure: @@ -87,7 +99,7 @@ dotfm now tracks dotfiles that it installs symlinks for in a file. This file is **alias** these are strings that dotfm uses to recognise the related dotfile (e.g. you could use "brc" as an alias for your bashrc and call "dotfm edit brc") -### KNOWN DOTFILES +_KNOWN DOTFILES_ _DOTFILE LOCATIONS_ has been refactored into _KNOWN DOTFILES_, it follows the same structure as the DOTFM CSV FILE (see above). @@ -98,44 +110,45 @@ If a dotfile is within this array, dotfm will know where to install the relevant If a dotfile is not present within this array then you'll be prompted for the install location of the dotfile and any aliases you want to allow dotfm to recognise it under. This won't be added to KNOWN DOTFILES, but _will_ be appended to DOTFM CSV FILE. -### dotfm init +_dotfm init_ This is a function that runs at the start of every runtime, it checks if the _DOTFM CSV FILE_ is present: If it is, it's contents are loaded into memory; If it isn't, then the user is prompted where they would like to create it and the file is created with itself as the first entry. -### dotfm install +_dotfm install_ -Now if a dotfile is not recognsied in the KNOWN_DOTFILES array, the user will be prompted asking where to install it to and what aliases to recognise it under. +Now if a dotfile is not recognsied in the KNOWN\_DOTFILES array, the user will be prompted asking where to install it to and what aliases to recognise it under. Multiple dotfiles can be passed to _dotfm install_, e.g. dotfm install ./bashrc ./profile ./tmux.conf -### dotfm remvoe +_dotfm remove_ -dotfm_remove will now also remove the file from the _DOTFM CSV FILE_ +dotfm remove will now also remove the file from the _DOTFM CSV FILE_ -### dotfm list +_dotfm list_ -Minor changes to dotfm_list printout format. Will also print even if running in quiet mode. +Minor changes to dotfm list printout format. Will also print even if running in quiet mode. -dotfm_list now **lists all installed dotfiles by default**, and only lists specifc dotfiles if specified. +dotfm list now **lists all installed dotfiles by default**, and only lists specifc dotfiles if specified. --- -## v1.0.3 +**v1.0.3** - added "-q", "--quiet" argument, using it reduces printed logs "dotfm list" will still print the file location (one line each), e.g.: /home/gearsix/.bashrc /home/gearsix/.profile - /home/gearsix/.bash_profile + /home/gearsix/.bash\_profile ... - added CHANGELOG - updated LICENSE to BSD 4-Clause -- added sfeed to DOTFILE_LOCATIONS +- added sfeed to DOTFILE\_LOCATIONS - added TODO items +</details>