Proof Portal

Project overview

Omarchy

ProbeLabs65 findings · 95 requirements

A proof layer — requirements, tests and verified fixes — for two of Omarchy's subsystems: the application menu (launcher scripts, QML model, JSONC config, search and selection) and the lock screen (lock scripts, QML, PAM authentication). Scope is deliberately limited to those components of omacom/omarchy; the rest of the distribution is not covered.

Inbox
ReportR-4365GitHub issuePublicReceived

omarchy-reinstall produces a single-branch shallow clone, breaking omarchy-channel-set afterward

Reported by jobenaus · filed May 9, 2026Closed upstream on 2026-05-13 by its own reporter jobenaus. GitHub close reason: completed. Closed by its own reporter — not by itself evidence of a fix.

Received and recorded verbatim. Nothing has been checked yet.

At a glance

1 · What is claimed?
Only the report text below — no validator has restated it as checkable claims yet.
2 · What does it affect?
Not yet mapped to any requirement or component.
3 · Is it reproducible?
No validation has been run yet.
4 · What remains unclear?
  • Not validated yet: no claims, no reproducer.
5 · What happens next?
Our staff decide whether the report is valid. Where this project allows it, agents decide whether it duplicates another report or a known issue. No decision has been recorded yet.

Original report

omarchy-reinstall produces a single-branch shallow clone, breaking omarchy-channel-set afterwardrevision 1 · captured 2026-10-04 11:56 UTC via poll

System details: Arch Linux, kernel 7.0.3-arch1-2, git 2.54.0, Omarchy 3.7.1

What's wrong?

After running omarchy-reinstall, omarchy-channel-set fails for any channel whose branch wasn't the upstream default at clone time. The local checkout becomes a single-branch shallow clone, so the other branches can't be switched to.

Repro:

  1. Install Omarchy 3.7.1 from the ISO (or boot.sh) on any channel.
  2. Run omarchy-reinstall.
  3. Run omarchy-channel-set master (or rc, edge, dev — whichever you weren't left on).
  4. Observe git switch <branch> failing. git -C ~/.local/share/omarchy branch -a shows only one remotes/origin/* ref.

Root cause

bin/omarchy-reinstall-git:

git clone --depth=1 "https://github.com/basecamp/omarchy.git" ~/.local/share/omarchy-new

--depth=1 implies --single-branch (per git-clone(1)), so only the remote default branch is fetched. The upstream default is currently dev, so every reinstall lands users on dev with no origin/master or origin/rc available locally — breaking the documented omarchy-channel-set / omarchy-update-branch flow.

Why this differs from a fresh install

boot.sh (the curl/ISO entrypoint) does:

git clone "https://github.com/${OMARCHY_REPO}.git" ~/.local/share/omarchy
git fetch origin "${OMARCHY_REF}" && git checkout "${OMARCHY_REF}"

Full clone (all branches as remote-tracking refs), explicit checkout of OMARCHY_REF (defaults to master). After a fresh install, all channels are reachable.

Suggested fix

Have omarchy-reinstall-git mirror boot.sh as closely as possible: drop --depth=1, honor the existing checkout's remote and current branch (or fall back to OMARCHY_REPO/OMARCHY_REF), and explicitly check out the same branch the user was on. Reinstall would then behave like a fresh online install of the same channel and leave the other channels reachable.

Related: #5299 fixes the hardcoded URL and the implicit-default-branch behavior, but keeps --depth=1, so it doesn't restore multi-branch reachability.

View raw text
**System details:** Arch Linux, kernel 7.0.3-arch1-2, git 2.54.0, Omarchy 3.7.1

## What's wrong?

After running `omarchy-reinstall`, `omarchy-channel-set` fails for any channel whose branch wasn't the upstream default at clone time. The local checkout becomes a single-branch shallow clone, so the other branches can't be switched to.

Repro:

1. Install Omarchy 3.7.1 from the ISO (or `boot.sh`) on any channel.
2. Run `omarchy-reinstall`.
3. Run `omarchy-channel-set master` (or `rc`, `edge`, `dev` — whichever you weren't left on).
4. Observe `git switch <branch>` failing. `git -C ~/.local/share/omarchy branch -a` shows only one `remotes/origin/*` ref.

## Root cause

`bin/omarchy-reinstall-git`:

```bash
git clone --depth=1 "https://github.com/basecamp/omarchy.git" ~/.local/share/omarchy-new
```

`--depth=1` implies `--single-branch` (per `git-clone(1)`), so only the remote default branch is fetched. The upstream default is currently `dev`, so every reinstall lands users on `dev` with no `origin/master` or `origin/rc` available locally — breaking the documented `omarchy-channel-set` / `omarchy-update-branch` flow.

## Why this differs from a fresh install

`boot.sh` (the curl/ISO entrypoint) does:

```bash
git clone "https://github.com/${OMARCHY_REPO}.git" ~/.local/share/omarchy
git fetch origin "${OMARCHY_REF}" && git checkout "${OMARCHY_REF}"
```

Full clone (all branches as remote-tracking refs), explicit checkout of `OMARCHY_REF` (defaults to `master`). After a fresh install, all channels are reachable.

## Suggested fix

Have `omarchy-reinstall-git` mirror `boot.sh` as closely as possible: drop `--depth=1`, honor the existing checkout's remote and current branch (or fall back to `OMARCHY_REPO`/`OMARCHY_REF`), and explicitly check out the same branch the user was on. Reinstall would then behave like a fresh online install of the same channel and leave the other channels reachable.

Related: #5299 fixes the hardcoded URL and the implicit-default-branch behavior, but keeps `--depth=1`, so it doesn't restore multi-branch reachability.

Validation

Not checked yet. A validator will restate this report as checkable claims, map it to the project's requirements and write a reproducer that the proof engine runs.

Linked

Not linked to any known issue, other report or change yet.

Decision

Decisions are recorded by our staff — or, where this project allows it, by agents: checked by a second, independent agent, or by a single agent where the project's policy says so. Any decision reached so far is shown below.

No decision has been recorded yet.