Autonomous commit stacking and curation workflow for Jujutsu (jj) version control
You can install this plugin from any of these themed marketplaces. Choose one, add it as a marketplace, then install the plugin.
This plugin uses advanced features that require additional trust:
Only install plugins from repositories you trust. Review the source code before installation.
Choose your preferred installation method below
A marketplace is a collection of plugins. Every plugin gets an auto-generated marketplace JSON for individual installation, plus inclusion in category and themed collections. Add a marketplace once (step 1), then install any plugin from it (step 2).
One-time setup for access to all plugins
When to use: If you plan to install multiple plugins now or later
Step 1: Add the marketplace (one-time)
/plugin marketplace add https://claudepluginhub.com/marketplaces/all.json
Run this once to access all plugins
Step 2: Install this plugin
/plugin install jj@all
Use this plugin's auto-generated marketplace JSON for individual installation
When to use: If you only want to try this specific plugin
Step 1: Add this plugin's marketplace
/plugin marketplace add https://claudepluginhub.com/marketplaces/plugins/jj.json
Step 2: Install the plugin
/plugin install jj@jj
Hey, you. You're finally awake. You were trying to configure your OS declaratively, right? Walked right into that NixOS ambush, same as us, and those dotfiles over there.
Good news, traveler! These dotfiles now work on both NixOS and macOS. One config to rule them all, and in the darkness bind them.
# Quick taste of what you're in for:
nix run nix-darwin -- switch --flake ~/.config/dotfiles # macOS
nixos-rebuild switch --flake .#hostname # NixOS
Shell: | zsh + a bunch of Nix magic |
DM: | lightdm + lightdm-mini-greeter |
WM: | bspwm + polybar (Linux) / Aerospace (macOS) |
Editor: | Doom Emacs (and nvim when Emacs is napping) |
Terminal: | st (Linux) / Ghostty (macOS) |
Launcher: | rofi (Linux) / Raycast (macOS) |
Browser: | firefox / Zen Browser / Orion (I collect browsers) |
GTK Theme: | Ant Dracula |
/mnt
(or don't, I'm not your supervisor)git clone https://github.com/emiller88/dotfiles /etc/nixos
nixos-install --root /mnt --flake /etc/nixos#XYZ
, where XYZ
is your
hostname. Use #generic
for a simple, universal config.hosts/
for your device. See host/kuro
as an example.curl --proto '=https' --tlsv1.2 -sSf -L https://install.determinate.systems/nix | sh -s -- install
Why this installer? It handles macOS quirks, enables flakes by default, and won't leave you troubleshooting for hours.git clone https://github.com/emiller88/dotfiles ~/.config/dotfiles
cd ~/.config/dotfiles
./bin/hey re
(or if hey
isn't in your PATH yet: nix run .#darwinConfigurations.HOSTNAME.system.build.darwin-rebuild -- switch --flake .
)
MacTraitor-Pro
or Seqeratop
for HOSTNAME, or check flake.nix
for available configssudo ./result/sw/bin/darwin-rebuild --flake .#HOSTNAME switch
when promptedAnd I say, bin/hey
. What's going on?
Command | Description |
---|---|
hey rebuild | Rebuild this flake (shortcut: hey re ) |
hey upgrade | Update flake lockfile and switch to it (shortcut: hey up ) |
hey rollback | Roll back to previous system generation |
hey gc | Runs nix-collect-garbage -d . Use sudo to clean system profile |
hey push REMOTE | Deploy these dotfiles to REMOTE (over ssh) |
hey check | Run tests and checks for this flake |
hey show | Show flake outputs of this repo |
How do I change the default username?
USER
the first time you run nixos-install
: USER=myusername nixos-install --root /mnt --flake #XYZ
"emiller"
in modules/options.nix (was "hlissner"
in the before times).How do I "set up my partitions"?
My main host has a README you can use as a reference.
I set up an EFI+GPT system and partitions with parted
and zfs
.
macOS users: You can skip this part and feel smug about it.
Why is my build failing with homebrew errors?
That's just homebrew being homebrew. The build succeeded, you just need to run the
activation with sudo. Check the message at the end of hey re
.
How 2 flakes?
It wouldn't be the NixOS experience if I gave you all the answers in one, convenient place. But basically: everything is a flake now, resistance is futile.
Add dotfiles to your flake.nix
:
{
inputs.dotfiles.url = "https://flakehub.com/f/Emiller88/dotfiles/*.tar.gz";
outputs = { self, dotfiles }: {
# Use in your outputs
};
}
0.2.0