Skip to content
@dotgibson

dotgibson

One Core, every machine. A layered cross-platform dotfiles ecosystem (offense + defense).
dotgibson logo — the ~/. ring mark

dotgibson

"There is no right and wrong. There's only fun and boring."

One Core. Every machine. Zero drift.

A cross-platform dotfiles system that is authored once and fans out to every OS you touch — Mac, Windows, and five Linux distros — plus a red-team and a blue-team layer that stay in lock-step. Fix a thing in one place; it lands everywhere.


showcase core shell

platforms windows fedora arch opensuse alpine gentoo kali


Why this exists

Most dotfiles repos are a single tangle that works on exactly one machine. Copy it to a second box and you start forking — a tweak here, an OS quirk there — and six months later you have four subtly different setups and no idea which one is right.

dotgibson refuses to let that happen. The shared config lives in exactly one place, dotfiles-core, and is vendored into every machine via git subtree. A defect fixed once fans out N-way. There is no "which copy is canonical" — there is only Core.

   edit once  ──▶  make audit  ──▶  make sync  ──▶  live on every machine

The three-layer model

Everything you configure answers to one question: what does it change with?

Layer Changes with… Owns Repos
🧬 Core nothing — it's identical everywhere zsh modules, tmux, Neovim, git, starship dotfiles-core
💻 OS-native the operating system package manager, clipboard, paths MacBook · Windows · Fedora · Arch · openSUSE · Alpine · Gentoo
🎭 Role the operator offense vs. defense tooling Kali (red) · Defense (blue)

The test: if it changes when the OS changes, it's not Core. If it changes when you as an operator change, it's not Core. Everything left over is Core.

🔴 Red meets 🔵 blue

The two Role repos are deliberate mirrors of each other:

  • dotfiles-Kali — offensive engagement scaffolding, an exploit-dev companion, evasion notes, and the attacker-authored purple-team detections.
  • dotfiles-Defense — detection engineering, hunt/triage tooling, version-controlled detection content, and a Dockerized detection lab.

Binding them together is htpx — a structured, ATT&CK-tagged, red↔blue-paired corpus. Every attack sits beside its detection, so offense and defense never drift apart. It's vendored straight into Kali's offensive companion as its own subtree.

How it fits together

                         ┌─────────────────┐
                         │  dotfiles-core  │   ← authored ONCE, source of truth
                         └────────┬────────┘
                    git subtree   │   make sync
        ┌──────────────┬──────────┼──────────┬──────────────┐
        ▼              ▼          ▼          ▼              ▼
     MacBook       Fedora       Arch      openSUSE   Alpine · Gentoo
                                  │
                                  │  + Role layer
                        ┌─────────┴─────────┐
                        ▼                   ▼
                  dotfiles-Kali      dotfiles-Defense
                   (offense) ◀──── htpx ────▶ (defense)

Windows is a host too — but it replicates Core natively in PowerShell rather than vendoring the git subtree (it mirrors only nvim and starship), so by design it sits outside this Core fan-out.

Core is authored once and synced out. OS repos add only what changes with the platform. Role repos add only what changes with the operator. Edit upstream, make audit, make syncnever hand-edit a vendored core/.

The whole fleet

Repo Role
🧬 dotfiles-core The Core layer — single source of truth, vendored everywhere
🍎 dotfiles-MacBook macOS host — Homebrew, aerospace, sketchybar, ghostty
🪟 dotfiles-Windows Windows host — PowerShell, Windows Terminal, scoop/winget, WSL2 bridge
🎩 dotfiles-Fedora Fedora — dnf + RPM Fusion (the Linux template)
🏛️ dotfiles-Arch Arch — pacman + AUR
🦎 dotfiles-openSUSE openSUSE — zypper, Tumbleweed + Leap
🏔️ dotfiles-Alpine Alpine — apk, musl libc, doas
🐄 dotfiles-Gentoo Gentoo — emerge, USE flags, source-based
🐉 dotfiles-Kali Offensive Role — engagement tooling on Kali under WSL2
🛡️ dotfiles-Defense Defensive Role — detection engineering + lab
🌐 dotfiles-web The public showcase + docs site (Astro · Tokyo Night)
🧩 htpx ATT&CK-tagged red↔blue corpus, vendored into Kali

Start here

New to the system?the getting-started site »

Want the rules?dotfiles-core README + CONTRIBUTING »


Built on a three-layer model · themed in Tokyo Night · green-audit gated end to end

Pinned Loading

  1. dotfiles-core dotfiles-core Public

    🧬 The shared Core of a cross-platform dotfiles system — zsh · nvim · tmux · starship, authored once and vendored into every OS. Zero drift.

    Shell

  2. htpx htpx Public

    ⚔️ An ATT&CK-tagged, red↔blue paired corpus — browse an attack beside its detection with fzf, fill {{slots}}, clip. Purple-team reference.

    Shell

  3. dotfiles-Kali dotfiles-Kali Public

    🔴 The offensive role layer — recon→exploit→evasion field refs (hacktheplanet/exploitdev) on a Kali/WSL2 base. Engagement-ready.

    Shell

  4. dotfiles-Defense dotfiles-Defense Public

    🔵 The defensive role layer — detection engineering, hunt/triage tooling & a Dockerized detection lab. The blue mirror of Kali.

    Shell 1

  5. dotfiles-MacBook dotfiles-MacBook Public

    🍎 The macOS layer — Homebrew, AeroSpace tiling, sketchybar & karabiner, over a shared zsh/nvim/tmux core. Keyboard-driven, drift-free.

    Shell

  6. dotfiles-web dotfiles-web Public

    🌐 The public showcase & docs for a cross-platform dotfiles system. Built with Astro, themed Tokyo Night, shipped on GitHub Pages.

    Astro

Repositories

Showing 10 of 13 repositories
  • dotfiles-Defense Public

    🔵 The defensive role layer — detection engineering, hunt/triage tooling & a Dockerized detection lab. The blue mirror of Kali.

    dotgibson/dotfiles-Defense’s past year of commit activity
    Shell 1 MIT 0 0 1 Updated Jul 2, 2026
  • dotfiles-Kali Public

    🔴 The offensive role layer — recon→exploit→evasion field refs (hacktheplanet/exploitdev) on a Kali/WSL2 base. Engagement-ready.

    dotgibson/dotfiles-Kali’s past year of commit activity
    Shell 0 MIT 0 0 1 Updated Jul 2, 2026
  • htpx Public

    ⚔️ An ATT&CK-tagged, red↔blue paired corpus — browse an attack beside its detection with fzf, fill {{slots}}, clip. Purple-team reference.

    dotgibson/htpx’s past year of commit activity
    Shell 0 MIT 0 0 1 Updated Jul 2, 2026
  • dotfiles-Windows Public

    🪟 The Windows host layer — PowerShell, Windows Terminal, scoop/winget, psmux (native tmux) & the WSL2 bridge. A first-class CLI on Windows.

    dotgibson/dotfiles-Windows’s past year of commit activity
    PowerShell 0 MIT 0 0 0 Updated Jul 1, 2026
  • .github Public
    dotgibson/.github’s past year of commit activity
    0 0 0 0 Updated Jul 1, 2026
  • dotfiles-web Public

    🌐 The public showcase & docs for a cross-platform dotfiles system. Built with Astro, themed Tokyo Night, shipped on GitHub Pages.

    dotgibson/dotfiles-web’s past year of commit activity
    Astro 0 MIT 0 0 0 Updated Jul 1, 2026
  • dotfiles-openSUSE Public

    🦎 The openSUSE layer (zypper — Tumbleweed + Leap) of a cross-platform dotfiles system. Shared zsh/nvim/tmux core, native glue.

    dotgibson/dotfiles-openSUSE’s past year of commit activity
    Shell 0 MIT 0 0 0 Updated Jul 1, 2026
  • dotfiles-Fedora Public

    🎩 The Fedora layer (dnf + RPM Fusion) of a cross-platform dotfiles system — the template the other Linux repos are stamped from.

    dotgibson/dotfiles-Fedora’s past year of commit activity
    Shell 0 MIT 0 0 0 Updated Jul 1, 2026
  • dotfiles-Alpine Public

    🏔️ The Alpine layer (apk · musl · doas · ash) — lean dotfiles for containers & minimal boxes, with the same nvim/tmux core.

    dotgibson/dotfiles-Alpine’s past year of commit activity
    Shell 0 MIT 0 0 0 Updated Jul 1, 2026
  • dotfiles-Gentoo Public

    🐧 The Gentoo layer (Portage + USE flags) — source-based dotfiles over a shared zsh/nvim/tmux core. Compiled to taste, drift-free.

    dotgibson/dotfiles-Gentoo’s past year of commit activity
    Shell 0 MIT 0 0 0 Updated Jul 1, 2026

People

This organization has no public members. You must be a member to see who’s a part of this organization.

Top languages

Loading…

Most used topics

Loading…