Bundling Lazygit for Zero-Setup Git in Terminal
Now YEN has Lazygit baked right in. So much wow.
Hey folks!
Git's CLI is powerful. It is also hostile. Staging hunks, interactive rebasing, resolving merge conflicts — these are workflows that punish you for not memorizing flags.
Lazygit fixes that. It is a full-screen terminal UI for git that makes staging, committing, branching, rebasing, stashing, and diffing keyboard-driven and visual. It has 73,000+ GitHub stars for a reason. And, I really love it so I decided to bake it into YEN:
It’s pre-bundled, pre-configured, pre-signed, and available for you from the jump.
It’s as Easy as…
Here are the four equivalent commands that you’ll need, all aliased properly: yengit, lazygit, gitlazy, or gityen. All four route to the same binary and config. No difference in behavior. I’ll keep the packages updated so you don’t have to.
It should just work.
When you run yengit, the wrapper:
Detects your existing lazygit config at ~/.config/lazygit/config.yml
Loads YEN's config as a second layer on top
Invokes lazygit with --use-config-file "$user_config,$yen_config"
Shell Integration
Every shell session inside YEN gets lazygit wrappers auto-injected:
bash
# zsh and bash — both get these automatically
lazygit() { _yen_run_app_command lazygit "$@"; }
gitlazy() { _yen_run_app_command gitlazy "$@"; }
yengit() { _yen_run_app_command yengit "$@"; }
gityen() { _yen_run_app_command gityen "$@"; }External shells get the same wrappers via yen init zsh or yen init bash.
The _yen_run_app_command helper ensures YEN's bundled binary takes priority over any system-installed version. This prevents version mismatches and guarantees the branding and config behavior.
Why This Matters for the IDE Thesis
Our terminal-first IDE thesis says serious development work belongs inside one high-performance terminal environment.
Git is the most-used developer tool after the editor itself. Having it available inside the terminal — pre-configured, zero-install, visually integrated — removes one more reason to context-switch away.
Lazygit inside YEN is not just "we ship a binary." It’s much more:
Available immediately with no brew, no PATH, no config ceremony
Version-locked so we can test against it and guarantee behavior
Config-merged so power users keep their customizations
Branded so it feels native to the environment
Signed and notarized so macOS never blocks it
The same vendor-and-compose pattern we used for the file browser, for native previews, for bat and ripgrep. Take the best tool. Bundle it. Integrate it. Ship it ready.
Let’s go.
— 8




