Setup work environment in Linux OS.
A collection of software developments from the author's vision for the
workstation.
All the following theses are personal opinions.
- Window manager: Sway
- Flexible settings of windows and key bindings.
- Beautiful and lightweight.
- Terminal emulator: Foot
- Sway native.
- Backup tools: Syncthing
- Decentralised, encrypted, continuous file synchronization.
- Cross-platform.
- IDE: Neovim - LazyVim
- Like Vim, but better.
- Has many plugins and large community.
- Works in the console.
- SIP client: Linphone
- Email client: Betterbird
| Tag | Description |
|---|---|
| wm | Deploy only Window manager. |
| wm:cleanup | Deploy only Window manager with cleanup Sway settings directories. |
| wm:configs | Deploy only Window manager's settings files. |
| wm:configs:cleanup | Deploy only Window manager's settings files with cleanup Sway settings directories. |
| wm:fonts | Deploy only Window manager's Nerd Fonts. |
| wm:gtk | Deploy only Window manager's GTK+ settings. |
| term | Deploy only Terminal emulator. |
| term:configs | Deploy only Terminal emulator's settings files. |
| backup | Deploy only Backup tools. |
| ide | Deploy only IDE. |
| ide:cleanup | Deploy only IDE with cleanup Nvim settings directories. |
| ide:configs | Deploy only IDE settings files. |
| ide:configs:cleanup | Deploy only IDE settings files with cleanup Nvim settings directories. |
| sip | Deploy only SIP client. |
| sip:update | Update SIP client AppImage. |
- Running on Fedora Atomic Sway 42
- Install Ansible.
- Clone repo to default Ansible collections path as
voler88/workstation:
git clone https://github.com/voler88/workstation-ansible.git "$HOME/.ansible/collections/ansible_collections/voler88/workstation"Optional:
- You can provide variables via inventory file, vault file or from command line via --extra-vars.
- You can combine multiple tags, separated by commas, to run only certain tasks.
# (Optional) Suppress localhost warning.
export ANSIBLE_LOCALHOST_WARNING=False
# Deploy all roles.
ansible-playbook voler88.workstation.main
# Or deploy specific roles only.
ansible-playbook voler88.workstation.main --tags wm,termSee the changelog file.
See the license file.