Skip to content

fix: repair nix search (index version + stale credentials) - #14

Merged
supercosti21 merged 5 commits into
mainfrom
claude/missing-changes-file-nh8wji
Jul 28, 2026
Merged

fix: repair nix search (index version + stale credentials)#14
supercosti21 merged 5 commits into
mainfrom
claude/missing-changes-file-nh8wji

Conversation

@supercosti21

Copy link
Copy Markdown
Owner
  • Bump the ElasticSearch index from latest-43 to latest-50 (current
    mapping-schema version); the backend re-indexed and the old name 404/401s.
  • Replace the stale hard-coded Basic auth header with the current public
    read-only credentials, sent via reqwest's basic_auth.
  • Make the index version overridable through [plugins.nix] index_version so
    the next drift is a config change, not a recompile.

Verified live: zl search jq --from nix returns 30 hits.

Co-Authored-By: Claude Opus 4.8 noreply@anthropic.com
Claude-Session: https://claude.ai/code/session_01LAjDSA1954JLqUZnxoJ5sy

claude added 5 commits July 28, 2026 06:53
- Bump the ElasticSearch index from latest-43 to latest-50 (current
  mapping-schema version); the backend re-indexed and the old name 404/401s.
- Replace the stale hard-coded Basic auth header with the current public
  read-only credentials, sent via reqwest's basic_auth.
- Make the index version overridable through [plugins.nix] index_version so
  the next drift is a config change, not a recompile.

Verified live: `zl search jq --from nix` returns 30 hits.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01LAjDSA1954JLqUZnxoJ5sy
The old sync path fetched repodata/primary.xml.gz directly, a path that does
not exist in any RPM repository — hence the 404s. The primary file is named
after its own checksum and must be found through repomd.xml.

- Add shared src/plugin/rpm/repomd.rs: parse_repomd + primary_href resolve the
  primary file's href from repodata/repomd.xml, and parse_primary_by_href
  decompresses it by extension (.zst / .gz / .xz / plain) before parsing.
- Rewire dnf and zypper sync() to fetch repomd.xml -> primary href -> primary.
- Bump dnf DEFAULT_RELEASE off the EOL 40 to 43.
- Drop the now-unused parse_primary_xml_gz helper.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01LAjDSA1954JLqUZnxoJ5sy
Gentoo retired the 17.1 profiles; the binpackages/17.1/x86-64 path 404s.
Bump DEFAULT_BINHOST to binpackages/23.0/x86-64 (same index format,
overridable via [plugins.portage] binhost).

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01LAjDSA1954JLqUZnxoJ5sy
The Flathub API v2 search endpoint answers 405 to GET. It expects
POST /api/v2/search with a JSON body {"query": "..."}; the response shape
already matched the structs. Switch the request to POST.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01LAjDSA1954JLqUZnxoJ5sy
- plugin-status.md: nix now working (verified live); dnf/zypper/portage/
  flatpak fixed in code but pending live verification (upstream hosts are
  blocked by the sandbox egress policy); appimage still broken. Note the
  proxy constraint up front.
- CLAUDE.md: test count 335 -> 349, describe the rpm/repomd.rs module.

Co-Authored-By: Claude Opus 4.8 <noreply@anthropic.com>
Claude-Session: https://claude.ai/code/session_01LAjDSA1954JLqUZnxoJ5sy
@supercosti21
supercosti21 merged commit ec0fad6 into main Jul 28, 2026
6 checks passed
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.

2 participants