fix: repair nix search (index version + stale credentials) - #14
Merged
Conversation
- 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
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
mapping-schema version); the backend re-indexed and the old name 404/401s.
read-only credentials, sent via reqwest's basic_auth.
the next drift is a config change, not a recompile.
Verified live:
zl search jq --from nixreturns 30 hits.Co-Authored-By: Claude Opus 4.8 noreply@anthropic.com
Claude-Session: https://claude.ai/code/session_01LAjDSA1954JLqUZnxoJ5sy