After months of research, design, and hands-on coding, Im excited to launch a completely new concept of system automation and dotfile management one that brings profiling, synchronization, automation, and Git integration into a single powerful CLI tool: DotCtl.
π§ The Concept
What if you could capture the full configuration of your system as a portable "profile" , version it in Git, apply it on any machine with one command, and run pre/post install scripts to bootstrap the whole environment?
DotCtl is not just a dotfile manager. Its a config profiling system designed for developers, sysadmins, and IT professionals who manage multiple environments desktops, servers, containers, VMs and want to keep everything consistent, reproducible, and shareable.
What DotCtl Does
π Track your entire system config (dotfiles, services, packages, env vars) as a named profile.
π Sync profiles with Git for reliable versioning and deployment across machines.
π§ Define pre/post hooks to automate package installations, service restarts, and more.
π€ Export profiles to portable
.dtsv
files for backup or sharing.https://articles.linuxastra.in/π§ͺ Apply any profile to configure a fresh system instantly.
π§° Use Case
DevOps Teams / Remote Onboarding
Imagine onboarding a new developer into your company or project. Instead of handing over a doc with 15+ setup steps, you hand them this:
pip install dotctl
dotctl import company_dev_stack.dtsv
dotctl apply
Thats it their environment is up and running with exactly the configs, tools, aliases, themes, and services used by the rest of the team.
π Want to explore or contribute?
Check out the full README, command examples, and source on GitHub:
π https://github.com/pankajackson/dotctl
Id love feedback, collaborations, or use-case discussions especially from fellow infrastructure folks, power users, and open-source enthusiasts.
π¬ Curious how DotCtl could simplify your own environment setup or CI workflows? Lets talk! Drop a comment or message me directly. π
Top comments (0)