Own config files
As described in config role section, there are certain configuration files which are part of this automation. In order to keep your personal configuration in those files, there are two options:
- (not recommended) Disable particular config file(s) management sections in
ansible/vars/overrides.ymlusingconfig_tasks_exclude: []. This will prevent running config for it. For list of sections, see respectiveansible/roles/config/tasks/main.yml. You cannot excludezsh, because it is required. To keep your own.zshrc, use option 2 and changeansible/roles/config/templates/zshrc.j2in your branch. - (recommended) I personally suggest to checkout a local branch in this repository (
git checkout -b my-branch), modify any configuration file(s) inansible/roles/config/filesand/oransible/roles/config/templatesand commit them. When you want to update changes, just merge release tag (ormaster) to your branch when needed. That way, you can have both your own modifications to the file, and possible upcoming improvements/features which will come with those files. In case of confilcts, you can either choose your own piece of config, or the incoming one, or both.
Neovim config (based on AstroNvim) has its own repository. You can fork it and modify it, or use your own config entirely. For details see Neovim usage section.
To use your own repository, set neovim_config_url and neovim_config_version in ansible/vars/overrides.yml. To use a directory on your machine instead, set:
neovim_config_source: local
neovim_config_local_path: /home/you/my-nvim
The directory is copied to ~/.config/<neovim_config_appname> on every run. The copy adds and overwrites files but never deletes any in the target. If you switch from a git config to a local one, the files of the old clone stay there, including its .git directory. Delete the target directory before the run to start clean.