This project contains my personal dotfiles, which are configurations and customizations for my terminal and development environment. By using these dotfiles, I can easily replicate my preferred environment on any machine I work on.
⚠ ⚠ ⚠
I use nix-env as my package manager, To get nix-env to work on ansible without a declarative module to abstract the process. I had to improvise with eliminating some idempotency nature of ansible.
If you so choose to use a different package manager then apply changes to the code.
I've added a limited batch of my tools... I'll be working on the rest when it makes sense
nix-envzshbatgitnvimbashpnpmnodenvmtspython- fonts
To utilize this project you need to install:
- sudo
- git
- ansible
- ansible-vault
- curl
- xz-utils (it's okay 🙂)
I used ansible-vault to encrypt and store sensitive data. You need to create:
-
ANSIBLE_VAULT_PASSWORD_FILEand point to the password fileexport ANSIBLE_VAULT_PASSWORD_FILE='path/to/password' -
Create file with sensitive data using the following
ansible-vault create file_with_sensitive_data- Copy and paste it on
all.ymlonzsh_privatewith the suited key name
To use these dotfiles, follow these steps:
- Clone the repository:
git clone https://github.com/Younis-Ahmed/dotfiles.gitcdinto the repository:
cd dotfiles- Run project
ansible-playbook main.yml - source bashrc
. $HOME/.bashrc - source zshrc
source $HOME/.zshrc This project is licensed under the MIT License. See the LICENSE file for more information.