Files
forge/templates/package/content/cargo.tmpl
zeekayandHanzo Dev 8aedea8e41 fix(packages): point install snippets at the route we actually serve
Every package registry page told users to fetch from /api/packages, but
routers/init.go mounts the registry at /v1/packages and nothing else
answers /api/packages. Verified against git.hanzo.ai:

  /v1/packages/hanzo/generic/x/1/f.bin  -> 401 reqPackageAccess
  /api/packages/hanzo/generic/x/1/f.bin -> 404 Not found.

So every copy-paste snippet on every package page was a dead URL. 34
occurrences across 22 templates, all of the same shape.

The maven snippet also labelled our repository <id>gitea</id>; that id is
a local alias the user pastes into their own settings.xml, so it should
name us.

Co-authored-by: Hanzo Dev <[email protected]>
2026-07-26 11:29:06 -07:00

64 lines
2.4 KiB
Handlebars

{{if eq .PackageDescriptor.Package.Type "cargo"}}
<h4 class="ui top attached header">{{ctx.Locale.Tr "packages.installation"}}</h4>
<div class="ui attached segment">
<div class="ui form">
<div class="field">
<label>{{svg "octicon-code"}} {{ctx.Locale.Tr "packages.cargo.registry"}}</label>
<div class="markup"><pre class="code-block"><code>[registry]
default = "hanzo"
[registries.hanzo]
index = "sparse+{{ctx.AppFullLink}}/v1/packages/{{.PackageDescriptor.Owner.Name}}/cargo/" # Sparse index
# index = "{{ctx.AppFullLink}}/{{.PackageDescriptor.Owner.Name}}/_cargo-index.git" # Git
[net]
git-fetch-with-cli = true</code></pre></div>
</div>
<div class="field">
<label>{{svg "octicon-terminal"}} {{ctx.Locale.Tr "packages.cargo.install"}}</label>
<div class="markup"><pre class="code-block"><code>cargo add {{.PackageDescriptor.Package.Name}}@{{.PackageDescriptor.Version.Version}}</code></pre></div>
</div>
<div class="field">
<label>{{ctx.Locale.Tr "packages.registry.documentation" "Cargo" "https://docs.hanzo.ai/usage/packages/cargo/"}}</label>
</div>
</div>
</div>
{{if or .PackageDescriptor.Metadata.Description .PackageDescriptor.Metadata.Readme}}
<h4 class="ui top attached header">{{ctx.Locale.Tr "packages.about"}}</h4>
{{if .PackageDescriptor.Metadata.Description}}<div class="ui attached segment">{{.PackageDescriptor.Metadata.Description}}</div>{{end}}
{{if .PackageDescriptor.Metadata.Readme}}<div class="ui attached segment">{{ctx.RenderUtils.RenderPackageMarkdown .PackageDescriptor.Metadata.Readme .PackageDescriptor.Repository}}</div>{{end}}
{{end}}
{{if .PackageDescriptor.Metadata.Dependencies}}
<h4 class="ui top attached header">{{ctx.Locale.Tr "packages.dependencies"}}</h4>
<div class="ui attached segment">
<table class="ui single line very basic table">
<thead>
<tr>
<th class="ten wide">{{ctx.Locale.Tr "packages.dependency.id"}}</th>
<th class="six wide">{{ctx.Locale.Tr "packages.dependency.version"}}</th>
</tr>
</thead>
<tbody>
{{range .PackageDescriptor.Metadata.Dependencies}}
<tr>
<td>{{.Name}}</td>
<td>{{.Req}}</td>
</tr>
{{end}}
</tbody>
</table>
</div>
{{end}}
{{if .PackageDescriptor.Metadata.Keywords}}
<h4 class="ui top attached header">{{ctx.Locale.Tr "packages.keywords"}}</h4>
<div class="ui attached segment">
{{range .PackageDescriptor.Metadata.Keywords}}
{{.}}
{{end}}
</div>
{{end}}
{{end}}