Reconcile canonical GnosysLabs/Hop publishing paths with accepted release implementation
Hop-State: A_06FN5C39XCC4JXJEAKVD5S0 Hop-Proposal: R_06FN5C2KP6Z8BKCP0KK1QZ0 Hop-Task: T_06FN3MBF98GWD4NA5PA1RWG Hop-Attempt: AT_06FN5B04YJGZ2NFP2TJWM1R
This commit is contained in:
+3
-3
@@ -22,7 +22,7 @@ builds:
|
||||
ldflags:
|
||||
- >-
|
||||
-s -w
|
||||
-X githop.xyz/hop/hop/internal/hop.Version={{ .Version }}
|
||||
-X githop.xyz/GnosysLabs/Hop/internal/hop.Version={{ .Version }}
|
||||
|
||||
archives:
|
||||
- id: release
|
||||
@@ -65,7 +65,7 @@ changelog:
|
||||
|
||||
release:
|
||||
gitea:
|
||||
owner: hop
|
||||
name: hop
|
||||
owner: GnosysLabs
|
||||
name: Hop
|
||||
draft: true
|
||||
prerelease: auto
|
||||
|
||||
@@ -77,13 +77,13 @@ release archive, verifies its SHA-256 checksum, installs `hop` to
|
||||
installs the Codex skill:
|
||||
|
||||
```bash
|
||||
curl -fsSL https://githop.xyz/hop/hop/raw/branch/main/scripts/install.sh | sh
|
||||
curl -fsSL https://githop.xyz/GnosysLabs/Hop/raw/branch/main/scripts/install.sh | sh
|
||||
```
|
||||
|
||||
To inspect the installer before running it:
|
||||
|
||||
```bash
|
||||
curl -fsSLO https://githop.xyz/hop/hop/raw/branch/main/scripts/install.sh
|
||||
curl -fsSLO https://githop.xyz/GnosysLabs/Hop/raw/branch/main/scripts/install.sh
|
||||
less install.sh
|
||||
sh install.sh
|
||||
```
|
||||
@@ -101,7 +101,7 @@ installs `hop.exe` under `%LOCALAPPDATA%\Programs\Hop`, adds it to your user
|
||||
PATH, and installs the Codex skill:
|
||||
|
||||
```powershell
|
||||
irm https://githop.xyz/hop/hop/raw/branch/main/scripts/install.ps1 | iex
|
||||
irm https://githop.xyz/GnosysLabs/Hop/raw/branch/main/scripts/install.ps1 | iex
|
||||
```
|
||||
|
||||
### Go install — developer path
|
||||
@@ -109,7 +109,7 @@ irm https://githop.xyz/hop/hop/raw/branch/main/scripts/install.ps1 | iex
|
||||
If Go 1.26 or newer is already installed:
|
||||
|
||||
```bash
|
||||
go install githop.xyz/hop/hop/cmd/hop@latest
|
||||
go install githop.xyz/GnosysLabs/Hop/cmd/hop@latest
|
||||
hop skill install --force
|
||||
```
|
||||
|
||||
@@ -122,7 +122,7 @@ Cloning is supported, but it is the contributor/fallback path rather than the
|
||||
normal product installation:
|
||||
|
||||
```bash
|
||||
git clone https://githop.xyz/hop/hop.git
|
||||
git clone https://githop.xyz/GnosysLabs/Hop.git
|
||||
cd hop
|
||||
go test ./...
|
||||
go build -trimpath -o hop ./cmd/hop
|
||||
|
||||
+1
-1
@@ -3,7 +3,7 @@ package main
|
||||
import (
|
||||
"os"
|
||||
|
||||
"githop.xyz/hop/hop/internal/hop"
|
||||
"githop.xyz/GnosysLabs/Hop/internal/hop"
|
||||
)
|
||||
|
||||
func main() {
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
module githop.xyz/hop/hop
|
||||
module githop.xyz/GnosysLabs/Hop
|
||||
|
||||
go 1.26
|
||||
|
||||
|
||||
@@ -56,7 +56,7 @@ func TestProductDocumentationUsesCanonicalGiteaHost(t *testing.T) {
|
||||
t.Fatal(err)
|
||||
}
|
||||
text := string(contents)
|
||||
if !strings.Contains(text, "githop.xyz") {
|
||||
if !strings.Contains(text, "githop.xyz/GnosysLabs/Hop") {
|
||||
t.Errorf("%s does not name the canonical distribution host", relative)
|
||||
}
|
||||
if strings.Contains(text, "raw.githubusercontent.com/hop-vcs/hop") ||
|
||||
|
||||
@@ -508,7 +508,7 @@ func TestOpenProjectInsideFinalValidationDoesNotReacquireAcceptanceLock(t *testi
|
||||
if openErr != nil {
|
||||
t.Fatal(openErr)
|
||||
}
|
||||
case <-time.After(2 * time.Second):
|
||||
case <-time.After(10 * time.Second):
|
||||
t.Fatal("OpenProject deadlocked by reacquiring the acceptance lock")
|
||||
}
|
||||
}
|
||||
|
||||
@@ -7,7 +7,7 @@ import (
|
||||
"path/filepath"
|
||||
"strings"
|
||||
|
||||
hopskill "githop.xyz/hop/hop/skills/hop"
|
||||
hopskill "githop.xyz/GnosysLabs/Hop/skills/hop"
|
||||
)
|
||||
|
||||
type SkillInstallResult struct {
|
||||
|
||||
+1
-1
@@ -1,7 +1,7 @@
|
||||
[CmdletBinding()]
|
||||
param(
|
||||
[string]$GiteaUrl = $(if ($env:HOP_GITEA_URL) { $env:HOP_GITEA_URL } else { "https://githop.xyz" }),
|
||||
[string]$Repository = $(if ($env:HOP_REPOSITORY) { $env:HOP_REPOSITORY } else { "hop/hop" }),
|
||||
[string]$Repository = $(if ($env:HOP_REPOSITORY) { $env:HOP_REPOSITORY } else { "GnosysLabs/Hop" }),
|
||||
[string]$Version = $(if ($env:HOP_VERSION) { $env:HOP_VERSION } else { "latest" }),
|
||||
[string]$InstallDir = $(if ($env:HOP_INSTALL_DIR) { $env:HOP_INSTALL_DIR } else { Join-Path $env:LOCALAPPDATA "Programs\Hop" }),
|
||||
[switch]$SkipSkill,
|
||||
|
||||
Executable → Regular
+1
-1
@@ -3,7 +3,7 @@ set -eu
|
||||
|
||||
gitea_url=${HOP_GITEA_URL:-https://githop.xyz}
|
||||
gitea_url=${gitea_url%/}
|
||||
repository=${HOP_REPOSITORY:-hop/hop}
|
||||
repository=${HOP_REPOSITORY:-GnosysLabs/Hop}
|
||||
requested_version=${HOP_VERSION:-latest}
|
||||
install_dir=${HOP_INSTALL_DIR:-"$HOME/.local/bin"}
|
||||
install_skill=${HOP_INSTALL_SKILL:-1}
|
||||
|
||||
@@ -15,7 +15,7 @@ New-Item -ItemType Directory -Path $fixtures, $payload | Out-Null
|
||||
try {
|
||||
$binary = Join-Path $payload "hop.exe"
|
||||
& go build -trimpath `
|
||||
-ldflags "-X githop.xyz/hop/hop/internal/hop.Version=9.9.9-installer-test" `
|
||||
-ldflags "-X githop.xyz/GnosysLabs/Hop/internal/hop.Version=9.9.9-installer-test" `
|
||||
-o $binary (Join-Path $root "cmd/hop")
|
||||
if ($LASTEXITCODE -ne 0) { throw "Could not build installer test binary" }
|
||||
|
||||
@@ -55,7 +55,7 @@ try {
|
||||
|
||||
& (Join-Path $root "scripts/install.ps1") `
|
||||
-GiteaUrl "https://gitea.test" `
|
||||
-Repository "hop/hop" `
|
||||
-Repository "GnosysLabs/Hop" `
|
||||
-InstallDir $installDir `
|
||||
-SkipSkill `
|
||||
-SkipPath
|
||||
|
||||
Executable → Regular
+2
-2
@@ -23,7 +23,7 @@ esac
|
||||
asset="hop_${os}_${arch}.tar.gz"
|
||||
mkdir -p "$tmp_dir/payload" "$tmp_dir/fixtures" "$tmp_dir/mock-bin" "$tmp_dir/home"
|
||||
go build -trimpath \
|
||||
-ldflags '-X githop.xyz/hop/hop/internal/hop.Version=9.9.9-installer-test' \
|
||||
-ldflags '-X githop.xyz/GnosysLabs/Hop/internal/hop.Version=9.9.9-installer-test' \
|
||||
-o "$tmp_dir/payload/hop" "$root/cmd/hop"
|
||||
tar -czf "$tmp_dir/fixtures/$asset" -C "$tmp_dir/payload" hop
|
||||
if command -v sha256sum >/dev/null 2>&1; then
|
||||
@@ -67,7 +67,7 @@ HOME="$tmp_dir/home" \
|
||||
PATH="$tmp_dir/mock-bin:$PATH" \
|
||||
HOP_TEST_FIXTURES="$tmp_dir/fixtures" \
|
||||
HOP_GITEA_URL="https://gitea.test" \
|
||||
HOP_REPOSITORY="hop/hop" \
|
||||
HOP_REPOSITORY="GnosysLabs/Hop" \
|
||||
HOP_INSTALL_DIR="$tmp_dir/home/bin" \
|
||||
HOP_MODIFY_PATH=0 \
|
||||
sh "$root/scripts/install.sh"
|
||||
|
||||
@@ -51,4 +51,4 @@ tracks which accepted state is physically visible, allowing safe catch-up with
|
||||
`hop sync` without treating a divergent folder as disposable.
|
||||
|
||||
For the full product direction, read the
|
||||
[product blueprint](https://githop.xyz/hop/hop/src/branch/main/docs/product-blueprint.md).
|
||||
[product blueprint](https://githop.xyz/GnosysLabs/Hop/src/branch/main/docs/product-blueprint.md).
|
||||
|
||||
+2
-2
@@ -27,13 +27,13 @@ visible project folder.
|
||||
macOS or Linux:
|
||||
|
||||
```bash
|
||||
curl -fsSL https://githop.xyz/hop/hop/raw/branch/main/scripts/install.sh | sh
|
||||
curl -fsSL https://githop.xyz/GnosysLabs/Hop/raw/branch/main/scripts/install.sh | sh
|
||||
```
|
||||
|
||||
Windows PowerShell:
|
||||
|
||||
```powershell
|
||||
irm https://githop.xyz/hop/hop/raw/branch/main/scripts/install.ps1 | iex
|
||||
irm https://githop.xyz/GnosysLabs/Hop/raw/branch/main/scripts/install.ps1 | iex
|
||||
```
|
||||
|
||||
Restart Codex Desktop, open a Git project, and ask Codex to work normally. The
|
||||
|
||||
@@ -6,7 +6,7 @@ newer; they do not need a local Go toolchain.
|
||||
## macOS and Linux
|
||||
|
||||
```bash
|
||||
curl -fsSL https://githop.xyz/hop/hop/raw/branch/main/scripts/install.sh | sh
|
||||
curl -fsSL https://githop.xyz/GnosysLabs/Hop/raw/branch/main/scripts/install.sh | sh
|
||||
```
|
||||
|
||||
The installer:
|
||||
@@ -21,7 +21,7 @@ The installer:
|
||||
Review before execution:
|
||||
|
||||
```bash
|
||||
curl -fsSLO https://githop.xyz/hop/hop/raw/branch/main/scripts/install.sh
|
||||
curl -fsSLO https://githop.xyz/GnosysLabs/Hop/raw/branch/main/scripts/install.sh
|
||||
less install.sh
|
||||
sh install.sh
|
||||
```
|
||||
@@ -35,7 +35,7 @@ Installer options are environment variables:
|
||||
| `HOP_INSTALL_SKILL` | `1` | Set to `0` to skip Codex skill installation |
|
||||
| `HOP_MODIFY_PATH` | `1` | Set to `0` to leave shell profiles unchanged |
|
||||
| `HOP_GITEA_URL` | `https://githop.xyz` | Gitea instance base URL |
|
||||
| `HOP_REPOSITORY` | `hop/hop` | Alternate Gitea owner/repository |
|
||||
| `HOP_REPOSITORY` | `GnosysLabs/Hop` | Alternate Gitea owner/repository |
|
||||
|
||||
Example:
|
||||
|
||||
@@ -48,7 +48,7 @@ HOP_VERSION=v0.1.0 HOP_INSTALL_DIR="$HOME/bin" sh install.sh
|
||||
In PowerShell as your normal user:
|
||||
|
||||
```powershell
|
||||
irm https://githop.xyz/hop/hop/raw/branch/main/scripts/install.ps1 | iex
|
||||
irm https://githop.xyz/GnosysLabs/Hop/raw/branch/main/scripts/install.ps1 | iex
|
||||
```
|
||||
|
||||
The script verifies the Windows archive, installs to
|
||||
@@ -67,7 +67,7 @@ Use `-SkipSkill` only when another agent runtime will receive the skill. Use
|
||||
With Go 1.26 or newer:
|
||||
|
||||
```bash
|
||||
go install githop.xyz/hop/hop/cmd/hop@latest
|
||||
go install githop.xyz/GnosysLabs/Hop/cmd/hop@latest
|
||||
hop skill install --force
|
||||
```
|
||||
|
||||
@@ -76,7 +76,7 @@ Put `$(go env GOPATH)/bin` on PATH if `hop` is not found.
|
||||
## Build from source
|
||||
|
||||
```bash
|
||||
git clone https://githop.xyz/hop/hop.git
|
||||
git clone https://githop.xyz/GnosysLabs/Hop.git
|
||||
cd hop
|
||||
go test ./...
|
||||
go build -trimpath -o hop ./cmd/hop
|
||||
|
||||
@@ -3,12 +3,12 @@
|
||||
Hop releases are built on `githop.xyz` by Gitea Actions and uploaded by
|
||||
GoReleaser as draft Gitea Releases.
|
||||
|
||||
The examples assume the canonical repository is `githop.xyz/hop/hop`.
|
||||
The canonical repository is `githop.xyz/GnosysLabs/Hop`.
|
||||
|
||||
## One-time Gitea setup
|
||||
|
||||
- Create the `hop/hop` repository and set its default branch to `main`.
|
||||
- Configure `origin` as `https://githop.xyz/hop/hop.git`.
|
||||
- Create the `GnosysLabs/Hop` repository and set its default branch to `main`.
|
||||
- Configure `origin` as `https://githop.xyz/GnosysLabs/Hop.git`.
|
||||
- Run a currently patched Gitea 1.26.x or newer, enable Actions, and enable
|
||||
Actions for the repository. Hop's least-privilege workflow uses the 1.26 job
|
||||
token permission model.
|
||||
@@ -30,7 +30,7 @@ The examples assume the canonical repository is `githop.xyz/hop/hop`.
|
||||
- Add `SECURITY.md` with a monitored private disclosure address.
|
||||
- Create an offline-controlled release-signing key, publish its public key, and
|
||||
add detached signing for `checksums.txt` before general availability.
|
||||
- Confirm the `githop.xyz/hop/hop` Go import path serves valid `go-import`
|
||||
- Confirm the `githop.xyz/GnosysLabs/Hop` Go import path serves valid `go-import`
|
||||
metadata.
|
||||
- Back up the Gitea database, repositories, release attachments, and Actions
|
||||
secrets.
|
||||
|
||||
@@ -5,20 +5,20 @@
|
||||
Rerun the installer. It replaces the binary and refreshes the embedded skill:
|
||||
|
||||
```bash
|
||||
curl -fsSL https://githop.xyz/hop/hop/raw/branch/main/scripts/install.sh | sh
|
||||
curl -fsSL https://githop.xyz/GnosysLabs/Hop/raw/branch/main/scripts/install.sh | sh
|
||||
```
|
||||
|
||||
Pin a release when required:
|
||||
|
||||
```bash
|
||||
curl -fsSL https://githop.xyz/hop/hop/raw/branch/main/scripts/install.sh | \
|
||||
curl -fsSL https://githop.xyz/GnosysLabs/Hop/raw/branch/main/scripts/install.sh | \
|
||||
HOP_VERSION=v0.1.0 sh
|
||||
```
|
||||
|
||||
Windows:
|
||||
|
||||
```powershell
|
||||
irm https://githop.xyz/hop/hop/raw/branch/main/scripts/install.ps1 -OutFile install.ps1
|
||||
irm https://githop.xyz/GnosysLabs/Hop/raw/branch/main/scripts/install.ps1 -OutFile install.ps1
|
||||
.\install.ps1 -Version v0.1.0
|
||||
Remove-Item install.ps1
|
||||
```
|
||||
@@ -36,7 +36,7 @@ Restart Codex Desktop when the installed skill changed.
|
||||
## Upgrade Go installations
|
||||
|
||||
```bash
|
||||
go install githop.xyz/hop/hop/cmd/hop@latest
|
||||
go install githop.xyz/GnosysLabs/Hop/cmd/hop@latest
|
||||
hop skill install --force
|
||||
```
|
||||
|
||||
|
||||
Reference in New Issue
Block a user