dotfiles
~/🏡 is where the heart is
Dotfiles repo sets up a Lua driven machine configuration
A personal dotfiles and machine setup project that symlinks module directories into the home folder and installs with a single script.
What the dotfiles repo does
This repository is a collection of dotfiles and a machine setup, maintained by hnbnh. The README presents it as a way to configure a development environment by cloning the repo and running an installer. The primary language is listed as Lua in the metadata, which fits a setup centered on Neovim and related tools, though the repo also contains shell and configuration files. The README shows a commit hash pinned at the top, which is a common practice in dotfile repos so a reader can see exactly which snapshot the documentation describes. A screenshot is included to illustrate the resulting desktop or editor environment. The project is personal rather than a general-purpose framework, so the author warns that you should fork the repository before using it, since applying someone else's configuration directly to your machine can overwrite your own settings. The intent is to give the owner a repeatable way to stand up a familiar environment on a new machine, and to let others borrow ideas by forking and trimming what they do not need. With 35 stars recorded in the metadata, the repo has found a modest audience of readers who browse it for configuration ideas rather than rely on it as a daily driver. The pinned commit hash at the top of the README keeps the documentation honest about which version of the setup the included screenshot and notes actually describe, which is a small but useful touch for a personal repo.
Installation and how changes apply
Installation is a short sequence. You clone the repository with submodules using git clone --recurse-submodules, then run ./install.sh from inside the directory. Applying later changes is just a matter of re-running ./install.sh. The README explains the linking model in a note: each directory under modules/home is symlinked into the home folder as a whole. That means the contents of, say, modules/home/.config end up linked at ~/.config, so editing a file in place edits the repo copy. For tools that write state next to their config, the README offers a .split escape hatch: adding a .split file to a directory tells the installer to symlink that directory's entries one by one instead of the folder as a unit, so generated state stays out of the repository. This detail matters because some programs create caches or runtime files alongside their config, and without the split behavior those artifacts would be committed accidentally. The design shows the author thought about the usual friction of symlinked dotfiles, not just the happy path of a first install. The submodule flag in the clone command also signals the repo pulls in external plugins rather than vendoring everything by hand. The install script is re-runnable, so applying later changes is just a matter of invoking it again after the repository has been pulled and updated on the machine.
Inspiration and remaining work
The README closes with an acknowledgments section that credits the projects it learned from. These include folke/dot, tjdevries/config_manager, jdhao/nvim-config, LunarVim, khuedoan's linux-setup and macos-setup, FelixKratz/dotfiles, LazyVim, and dreamsofautonomy/zen-omp. Listing these sources tells a reader where to look if they want to understand a particular piece of the configuration, since dotfile repos often assemble ideas from many others. The README also contains a TODO section with a single open item: adding a cron job that sends a hydration notification on Linux and macOS, shown as a not-yet-done task rather than a shipped feature. The repository metadata records 35 stars and 1 fork, with a last update on 2026-08-24, and it carries no stated license. As a personal setup repo it is best read as a reference and a starting point, useful for seeing how one developer wires Neovim and related tools together through symlinks and a small install script. The pinned commit hash at the top keeps the documentation honest about which version of the setup the screenshot and notes describe. Acknowledgments credit folke/dot, LazyVim, and several other dotfile projects, which tells a reader where to look if they want to understand a particular piece of the configuration. The repository metadata records a single fork alongside its 35 stars, which fits a personal setup that others read and borrow from rather than contribute to directly through pull requests.
Editorial conclusion
The repository is written primarily in Lua, records 35 stars, and the README notes you should fork it before running the installer.
Community notes