dotfm

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

CHANGELOG (raw) (5576B)


   1 
   2 <details><summary><h3 style="display: inline;">CHANGELOG</h3></summary>
   3 
   4 **v2.5.1**
   5 
   6 - fix to install location for some of the new "KNOWN" files
   7 
   8 **v2.5.0**
   9 
  10 - The "INSTALLED_FILE" is now kept in different locations on different systems:
  11 	- "~/.local/share/dotfm/" on Linux
  12 	- "~/Library/Application Support/dotfm" on Darwin
  13 - minor change in messaging for clarity: "location" has been changed to "filepath".
  14 - added more files to "KNOWN" dotfiles
  15 - removed Makefile, replaced with install.sh
  16 - added some debug prints
  17 - tidied some logs
  18 
  19 **v2.4.1**
  20 
  21 - bugfix
  22 
  23 **v2.4.0**
  24 
  25 - added shorthand commands names
  26 - added 'link, ln' command
  27 - updated man
  28 - fix to valid command names
  29 
  30 **v2.3.1**
  31 
  32 - Bugfix
  33 
  34 **v2.3.0**
  35 
  36 - Added aliases for all commands:
  37   - install, in
  38   - edit, ed
  39   - list, ls
  40   - remove, rm
  41   - update, up
  42 - Updated README
  43 
  44 **v2.2.2**
  45 
  46 - Bugfix when a blank line is found in the installed.csv file
  47 - Bugfix when the installed.csv directory does not exist on first run
  48 - Bugfix to behaviour when installing a dotfile source path that matches it's destination path
  49 - Bugfix when using `~` in the path of a prompted install location
  50 
  51 **v2.2.1**
  52 
  53 - minor fix to _Makefile#link_
  54 
  55 **v2.2.0**
  56 
  57 - total refactored on most of the code to tidyup some mess that'd been in for a while
  58 	- logging is more consistent
  59 	- no more duplicates in the installed.csv file
  60 	- overall behaviour is more consistent and tidy
  61 - added sfeed to known dotfiles
  62 - added txtnish to known dotfiles
  63 - added '-s', '--skip' option, which will skip any prompts and use pre-defined defaults if available
  64 - user is now prompted for a dotfile location even if dotfm knows it (found myself wanting to use install init.vim as ~/.vimrc), the pre-defined location is used as a default
  65 
  66 ---
  67 
  68 **v2.1.2**
  69 
  70 - added `-p` to mkdir calls in Makefile to avoid failure when path exists
  71 - tidied up logging
  72 - bugfix when returned input prompt value is empty
  73 
  74 ---
  75 
  76 **v2.1.1**
  77 
  78 - updated the CHANGELOG
  79 - `dotfm remove` now calls `rm -iv` (previously `rm -v`), to be safe(r).
  80 
  81 ---
  82 
  83 **v2.1.0**
  84 
  85 - added the `dotfm update` command for updating a dotfile's source location
  86 
  87 ---
  88 
  89 **v2.0.5**
  90 
  91 - added banner.svg
  92 
  93 ---
  94 
  95 **v2.0.4**
  96 
  97 - updated the README & man file
  98 - formatting fixed in the README
  99 
 100 ---
 101 
 102 **v2.0.3**
 103 
 104 - compressed logo.png
 105 
 106 ---
 107 
 108 **v2.0.2**
 109 
 110 - updated LICENSE to ISC
 111 - added awesome logo from [Marta Dias](https://www.instagram.com/marta.dias.z/)
 112 - minor fix in Makefile
 113 
 114 ---
 115 
 116 **v2.0.1**
 117 
 118 - updated the "list" command to use unix system commands: printf, cat, column. Provides a neater, more reliable printout and makes the implementation tidier.
 119 - DOTFM CSV FILE lines are now terminated with '\n' (previously '\r\n')
 120 - Install & Uninstall (with Makefile) will now prompt for overwriting & removing files
 121 
 122 ---
 123 
 124 **v2.0.0**
 125 
 126 - The quiet arg works properly now
 127 - Added code comment header documenting the dotfm functions 
 128 - Now the DOTFILE arg can specify multiple dotfiles
 129 - updated the README
 130 - added a manpage (src/dotfm.1), which is installed with dotfm in the Makefile
 131 
 132 _DOTFM CSV FILE_
 133 
 134 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:
 135 
 136 	<location>,<alias>,<alias>,....
 137 
 138 **location** is the location dotfm installed the dotfile to (the symlink pointing to the source dotfile).
 139 
 140 **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")
 141 
 142 _KNOWN DOTFILES_
 143 
 144 _DOTFILE LOCATIONS_ has been refactored into _KNOWN DOTFILES_, it follows the same structure as the DOTFM CSV FILE (see above).
 145 
 146 The purpose of this array is now to act as a knowledge base for all the location to install dotfiles to and any names that they sohuld be recognised under that dotfm recognises.
 147 
 148 If a dotfile is within this array, dotfm will know where to install the relevant dotfile automatically and allow you to call it with the preset aliases. Don't be scared to modify this array to modify this to your hearts content.
 149 
 150 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.
 151 This won't be added to KNOWN DOTFILES, but _will_ be appended to DOTFM CSV FILE.
 152 
 153 _dotfm init_
 154 
 155 This is a function that runs at the start of every runtime, it checks if the _DOTFM CSV FILE_ is present:
 156 If it is, it's contents are loaded into memory;
 157 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.
 158 
 159 _dotfm install_
 160 
 161 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.
 162 
 163 Multiple dotfiles can be passed to _dotfm install_, e.g.
 164 
 165 	dotfm install ./bashrc ./profile ./tmux.conf
 166 
 167 _dotfm remove_
 168 
 169 dotfm remove will now also remove the file from the _DOTFM CSV FILE_
 170 
 171 _dotfm list_
 172 
 173 Minor changes to dotfm list printout format. Will also print even if running in quiet mode.
 174 
 175 dotfm list now **lists all installed dotfiles by default**, and only lists specifc dotfiles if specified.
 176 
 177 ---
 178 
 179 **v1.0.3**
 180 
 181 - added "-q", "--quiet" argument, using it reduces printed logs
 182   "dotfm list" will still print the file location (one line each), e.g.:
 183 	
 184 	/home/gearsix/.bashrc
 185 	/home/gearsix/.profile
 186 	/home/gearsix/.bash\_profile
 187 	...
 188 
 189 - added CHANGELOG
 190 - updated LICENSE to BSD 4-Clause
 191 - added sfeed to DOTFILE\_LOCATIONS
 192 - added TODO items
 193 
 194 </details>