git clone https://github.com/pgagnidze/dotfiles.git ~/dotfiles
sudo luarocks install lnko
cd ~/dotfiles/config
lnko link bin bash git ghostty nvim| Config | Description |
|---|---|
config/bin |
Scripts symlinked to ~/.local/bin |
config/bash |
Shell configuration with prompt, aliases, and completions |
config/git |
Git configuration with aliases and GPG signing |
config/ghostty |
Terminal emulator settings |
config/nvim |
Neovim configuration with LazyVim |
| Script | Description |
|---|---|
install-nerd-fonts |
Download and install CascadiaMono, JetBrainsMono, UbuntuMono |
setup-ssh |
Generate ed25519 SSH key and configure for GitHub |
All scripts support --help and respect NO_COLOR / FORCE_COLOR environment variables.
1. Packages
Install using your package manager:
sudo dnf install zoxide fzf fd-find neovim lua luarocks diff-so-fancy gh gtk-murrine-engine gnome-themes-extraInstall Ghostty terminal.
Install Nerd Fonts:
install-nerd-fonts2. Node
curl -o- https://raw.githubusercontent.com/nvm-sh/nvm/v0.40.1/install.sh | bash
source ~/.bashrc
nvm install 22
npm install -g typescript ts-node prettier eslint @anthropic-ai/claude-code markdownlint-cli4. GPG Key
gpg --full-generate-key
gpg --list-secret-keys --keyid-format=longCopy your key ID (hex string after rsa4096/), update config/git/.gitconfig:
[user]
signingkey = YOUR_KEY_IDExport and add to GitHub GPG keys:
gpg --armor --export YOUR_KEY_IDAdditional Packages
| Package | Description |
|---|---|
| AWS CDK | Infrastructure as code framework |
| AWS CLI v2 | AWS command line interface |
| AWS VPN Client | VPN client |
| Lite-XL | Lightweight code editor |
| Steam | Gaming platform |
| VS Code | Code editor |
| Setting | Value |
|---|---|
| Theme | Gruvbox Dark |
| Icons | Reversal Brown |
| Extensions | Clipboard Indicator, Blur my Shell |
| Keyboard | US, KA |
| Display | 2880x1800@120, scale 2 |
| Touchpad | Natural scroll, disable-while-typing off |
| Clock | 12-hour, metric system |
| Security | Fingerprint enabled |
Reusable style guides for different languages. Link them to your projects using lnko.
Assumes dotfiles is cloned to ~/dotfiles as shown in Quick Start:
# Link Lua style guide to a project
lnko link -d $HOME/dotfiles/docs -t $HOME/project/docs lua
# Link multiple guides
lnko link -d $HOME/dotfiles/docs -t $HOME/project/docs bash pythonAdd symlinked files to .gitignore in each project:
docs/LUA.style.md| Guide | Description |
|---|---|
| lua | Lua coding conventions |
| python | Python coding conventions |
| bash | Shell scripting conventions |
make install # Install shellcheck and shfmt
make lint # Run shellcheck on bin scripts
make format # Format bin scripts with shfmtSee docs/bash/BASH.style.md for shell scripting conventions.
