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.


Image description

🧠 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. 🙌