Skip to content

install: drop install.sh and the Nix flake, install with mise - #52

Merged
rubas-agent[bot] merged 1 commit into
mainfrom
install-with-mise
Sep 30, 2026
Merged

rubas-agent[bot] merged 1 commit into
mainfrom
install-with-mise

Conversation

@rubas-agent

@rubas-agent rubas-agent Bot commented Sep 30, 2026

Copy link
Copy Markdown
Contributor

Before

The README offers three install paths: install.sh, cargo install, and the Nix flake with a Home Manager module.

curl -fsSL https://github.com/rubas/kagi/releases/latest/download/install.sh | sh
nix profile install github:rubas/kagi

Each release ships the installer next to the archives (gh release view v0.6.1 --json assets):

install.sh
kagi-linux-x86_64.tar.gz
kagi-macos-aarch64.tar.gz

Problem

Our machines now install the CLIs with mise, "github:rubas/kagi" = "latest". mise downloads the release archive and checks its GitHub attestation. Nothing of ours uses install.sh or the flake, but we still maintain them: a release job, a smoke test, a shellcheck step, a Nix build task, and rules in AGENTS.md.

After

The README install section:

mise use -g github:rubas/kagi
cargo install --git https://github.com/rubas/kagi   # without mise

A release ships only the two archives, with the same names, layout, and attestation. mise installs them as before (mise install github:rubas/kagi@v0.6.1 in a scratch data dir):

.../installs/github-rubas-kagi/0.6.1/bin
kagi-search 0.6.1
Before After
Release assets 3 2
Release jobs 5 4

The diff removes 505 lines and adds 22. No version bump: the binaries do not change, so no release runs.

Details
  • Deleted: install.sh, flake.nix, flake.lock.
  • release.yml: removed the installer job, the install.sh smoke test, the install.sh upload, and the attestations: read permission that only the smoke test used. The build job, the archive attestation, and both archive uploads are unchanged.
  • ci.yml: removed shellcheck install.sh. There was no Nix CI job.
  • Taskfile.yml: removed install and test:nix, and test:nix from ci.
  • .github/release-notes.md: the install line is now mise use -g github:rubas/kagi@<tag>. mise accepts the v tag.
  • AGENTS.md: removed the installer and flake rules and the Nix gate. Added one rule: mise picks the archive by the OS and architecture in its name and finds the binaries in bin/, so a rename or a new layout breaks every machine.
  • Checks: task lint (clippy, zizmor: no findings), task test, dprint check, cargo fmt --check pass. actionlint shows only findings that exist on main (the incus runner label, SC2129 in the unchanged prepare step).
  • Order: the dotfiles kagi-install script still downloads install.sh from the latest release. v0.6.1 keeps it, so nothing breaks now, but the mise switch in the dotfiles must reach main before the next kagi release.

Comment thread .github/workflows/release.yml
@rubas-agent
rubas-agent Bot merged commit e90122e into main Sep 30, 2026
3 checks passed
@rubas-agent
rubas-agent Bot deleted the install-with-mise branch September 30, 2026 09:59
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

0 participants