Updates to use the cthulhu name with out the go suffix.

This commit is contained in:
Storm Dragon committed 2026-10-14 00:39:50 -04:00
1 parent 2ffc987806
commit 7629f838f8
15 files changed
+38 -38

No files matched your search

+1 -1
View File
@@ -9,7 +9,7 @@ directly from a Tentacle.
Before publishing catalog entries, validate metadata and source, review grants, Before publishing catalog entries, validate metadata and source, review grants,
and test the actual command through the host. Run `make check` for this repository. and test the actual command through the host. Run `make check` for this repository.
For reader changes, also run relevant existing Cthulhu-Go tests. Xorg regressions For reader changes, also run relevant existing Cthulhu tests. Xorg regressions
block a contribution. Verify keyboard bindings, learn mode, remapping, ordinary block a contribution. Verify keyboard bindings, learn mode, remapping, ordinary
reading, speech interruption, speech modes, lock/handoff and connected Braille reading, speech interruption, speech modes, lock/handoff and connected Braille
where affected. Automated results alone cannot prove accessibility acceptance. where affected. Automated results alone cannot prove accessibility acceptance.
+1 -1
View File
@@ -1,4 +1,4 @@
GOCACHE ?= /tmp/cthulhu-go-cache GOCACHE ?= /tmp/cthulhu-cache
export GOCACHE export GOCACHE
.PHONY: build check package .PHONY: build check package
+16 -16
View File
@@ -1,6 +1,6 @@
# Cthulhu Tentacles # Cthulhu Tentacles
A repository of experimental Tentacles for Cthulhu-Go, maintained by Storm A repository of experimental Tentacles for Cthulhu, maintained by Storm
Dragon. It contains [Hello World](hello-world/README.md) and the development Dragon. It contains [Hello World](hello-world/README.md) and the development
[Wormhole tentacle](wormhole/README.md). [Wormhole tentacle](wormhole/README.md).
Repository material and both Tentacles are licensed under GPL-3.0-or-later; see Repository material and both Tentacles are licensed under GPL-3.0-or-later; see
@@ -28,7 +28,7 @@ To write your own, follow the [creation and release tutorial](#create-and-releas
## Build and check ## Build and check
Keep the matching experimental `cthulhu-go` checkout beside this directory. Keep the matching experimental `cthulhu` checkout beside this directory.
The `go.mod` local replacement uses its Go SDK, including the new The `go.mod` local replacement uses its Go SDK, including the new
uninterruptible presentation option. Building requires Go 1.24 or newer; uninterruptible presentation option. Building requires Go 1.24 or newer;
checks also require Python 3.11 or newer and Make. checks also require Python 3.11 or newer and Make.
@@ -41,7 +41,7 @@ make check
The executables are `hello-world/bin/hello-world` and The executables are `hello-world/bin/hello-world` and
`wormhole/bin/wormhole-tentacle`; both are ignored by Git. `wormhole/bin/wormhole-tentacle`; both are ignored by Git.
Checks validate the TOML metadata, registration and suggested bindings, and Checks validate the TOML metadata, registration and suggested bindings, and
invoke both Tentacles through the actual Cthulhu-Go host. They produce no speech invoke both Tentacles through the actual Cthulhu host. They produce no speech
or Braille and leave the running reader alone. or Braille and leave the running reader alone.
## Repository installation ## Repository installation
@@ -81,12 +81,12 @@ module metadata, trim paths and omit VCS stamping. To build one architecture:
python3 -B tools/package.py --architecture amd64 python3 -B tools/package.py --architecture amd64
``` ```
Validate the actual host-architecture package through Cthulhu-Go's installer Validate the actual host-architecture package through Cthulhu's installer
and command host, without changing the running reader: and command host, without changing the running reader:
```sh ```sh
cd ../cthulhu-go cd ../cthulhu
CTHULHU_TENTACLE_RELEASE_ROOT=../cthulhu-tentacles GOCACHE=/tmp/cthulhu-go-cache go test ./internal/tentacle -run '^TestBuiltHelloWorldPackageThroughHost$' -count=1 -v CTHULHU_TENTACLE_RELEASE_ROOT=../cthulhu-tentacles GOCACHE=/tmp/cthulhu-cache go test ./internal/tentacle -run '^TestBuiltHelloWorldPackageThroughHost$' -count=1 -v
``` ```
Before publication, review both repositories' changes and contributing guides. Before publication, review both repositories' changes and contributing guides.
@@ -111,7 +111,7 @@ testing, the development launch procedure remains in
This tutorial creates a native Go Tentacle named **Greeting**, then makes it This tutorial creates a native Go Tentacle named **Greeting**, then makes it
installable from a repository. The SDK and package format are experimental; installable from a repository. The SDK and package format are experimental;
use a matching Cthulhu-Go checkout. Currently the installer supports native Linux use a matching Cthulhu checkout. Currently the installer supports native Linux
executables, protocol 1.0, command registration and optional presentation access. executables, protocol 1.0, command registration and optional presentation access.
Python SDK development is separate from this native package workflow. Broader Python SDK development is separate from this native package workflow. Broader
APIs and automatic package updates are still pending. APIs and automatic package updates are still pending.
@@ -119,7 +119,7 @@ APIs and automatic package updates are still pending.
### 1. Set up the source repository ### 1. Set up the source repository
You need Go 1.24 or newer, Git, Python 3.11 or newer for this repository's checks, You need Go 1.24 or newer, Git, Python 3.11 or newer for this repository's checks,
GNU tar and gzip. Keep your new repository beside `cthulhu-go`. From their parent GNU tar and gzip. Keep your new repository beside `cthulhu`. From their parent
directory: directory:
```sh ```sh
@@ -150,9 +150,9 @@ module example.org/greeting-tentacles
go 1.24.0 go 1.24.0
require git.stormux.org/storm/cthulhu-go v0.0.0 require git.stormux.org/storm/cthulhu v0.0.0
replace git.stormux.org/storm/cthulhu-go => ../cthulhu-go replace git.stormux.org/storm/cthulhu => ../cthulhu
``` ```
The SDK import path names its source project; it does not constrain where you The SDK import path names its source project; it does not constrain where you
@@ -236,7 +236,7 @@ import (
"encoding/json" "encoding/json"
"os" "os"
"git.stormux.org/storm/cthulhu-go/sdk/go/tentacle" "git.stormux.org/storm/cthulhu/sdk/go/tentacle"
) )
func say_greeting(ctx context.Context, _ json.RawMessage) (any, error) { func say_greeting(ctx context.Context, _ json.RawMessage) (any, error) {
@@ -284,14 +284,14 @@ From `greeting-tentacles`:
```sh ```sh
gofmt -w greeting/src/main.go gofmt -w greeting/src/main.go
mkdir -p greeting/bin mkdir -p greeting/bin
CGO_ENABLED=0 GOCACHE=/tmp/cthulhu-go-cache go build -buildvcs=false -mod=readonly -trimpath -o greeting/bin/greeting ./greeting/src CGO_ENABLED=0 GOCACHE=/tmp/cthulhu-cache go build -buildvcs=false -mod=readonly -trimpath -o greeting/bin/greeting ./greeting/src
GOCACHE=/tmp/cthulhu-go-cache go test ./... GOCACHE=/tmp/cthulhu-cache go test ./...
``` ```
Invoke the compiled command through the development host. From `cthulhu-go`: Invoke the compiled command through the development host. From `cthulhu`:
```sh ```sh
GOCACHE=/tmp/cthulhu-go-cache go run ./cmd/tentacle-host -presentation -command greet "$PWD/../greeting-tentacles/greeting/bin/greeting" GOCACHE=/tmp/cthulhu-cache go run ./cmd/tentacle-host -presentation -command greet "$PWD/../greeting-tentacles/greeting/bin/greeting"
``` ```
Expect JSON containing `speech` and `braille`, both `Hello from Greeting!`. Expect JSON containing `speech` and `braille`, both `Hello from Greeting!`.
@@ -336,7 +336,7 @@ the manifest on later releases. `set -euo pipefail` stops on build/archive failu
set -euo pipefail set -euo pipefail
version=0.1.0 version=0.1.0
for architecture in amd64 arm64; do for architecture in amd64 arm64; do
CGO_ENABLED=0 GOOS=linux GOARCH="$architecture" GOCACHE=/tmp/cthulhu-go-cache \ CGO_ENABLED=0 GOOS=linux GOARCH="$architecture" GOCACHE=/tmp/cthulhu-cache \
go build -buildvcs=false -mod=readonly -trimpath -ldflags='-s -w' \ go build -buildvcs=false -mod=readonly -trimpath -ldflags='-s -w' \
-o dist/greeting-package/bin/greeting ./greeting/src -o dist/greeting-package/bin/greeting ./greeting/src
tar --sort=name --mtime=@0 --owner=0 --group=0 --numeric-owner \ tar --sort=name --mtime=@0 --owner=0 --group=0 --numeric-owner \
+2 -2
View File
@@ -2,8 +2,8 @@ module git.stormux.org/storm/cthulhu-tentacles
go 1.24.0 go 1.24.0
require git.stormux.org/storm/cthulhu-go v0.0.0 require git.stormux.org/storm/cthulhu v0.0.0
// The experimental SDK is developed alongside this repository. // The experimental SDK is developed alongside this repository.
replace git.stormux.org/storm/cthulhu-go => ../cthulhu-go replace git.stormux.org/storm/cthulhu => ../cthulhu
+3 -3
View File
@@ -30,12 +30,12 @@ status until Active before trying the shortcut.
## Local launch ## Local launch
Run `make build` from the repository root. Rebuild Cthulhu-Go with the matching Run `make build` from the repository root. Rebuild Cthulhu with the matching
SDK/output implementation before a live test: SDK/output implementation before a live test:
```sh ```sh
cd ../cthulhu-go cd ../cthulhu
GOCACHE=/tmp/cthulhu-go-cache go build -o /tmp/cthulhu-with-hello-world ./cmd/cthulhu GOCACHE=/tmp/cthulhu-cache go build -o /tmp/cthulhu-with-hello-world ./cmd/cthulhu
``` ```
Create a development launch list with an absolute executable path. From this Create a development launch list with an absolute executable path. From this
+1 -1
View File
@@ -8,7 +8,7 @@ import (
"encoding/json" "encoding/json"
"os" "os"
"git.stormux.org/storm/cthulhu-go/sdk/go/tentacle" "git.stormux.org/storm/cthulhu/sdk/go/tentacle"
) )
func say_hello(ctx context.Context, _ json.RawMessage) (any, error) { func say_hello(ctx context.Context, _ json.RawMessage) (any, error) {
+2 -2
View File
@@ -18,6 +18,6 @@ major = 1
minor = 0 minor = 0
[requirements] [requirements]
reader = "Cthulhu-Go with uninterruptible presentation support" reader = "Cthulhu with uninterruptible presentation support"
build = "Go 1.24 or newer and the adjacent cthulhu-go source checkout" build = "Go 1.24 or newer and the adjacent cthulhu source checkout"
+2 -2
View File
@@ -98,9 +98,9 @@ def check_registration(programPath, name):
def check_host(repoRoot, programPath, name): def check_host(repoRoot, programPath, name):
readerRoot = repoRoot.parent / "cthulhu-go" readerRoot = repoRoot.parent / "cthulhu"
environment = os.environ.copy() environment = os.environ.copy()
environment.setdefault("GOCACHE", "/tmp/cthulhu-go-cache") environment.setdefault("GOCACHE", "/tmp/cthulhu-cache")
flags = ["-interaction"] if name == "wormhole" else [] flags = ["-interaction"] if name == "wormhole" else []
result = subprocess.run([ result = subprocess.run([
"go", "run", "./cmd/tentacle-host", "-presentation", "go", "run", "./cmd/tentacle-host", "-presentation",
+1 -1
View File
@@ -23,7 +23,7 @@ def build_package(repoRoot, architecture, version, name):
distRoot.mkdir(exist_ok=True) distRoot.mkdir(exist_ok=True)
programPath = distRoot / f"{name}-linux-{architecture}" programPath = distRoot / f"{name}-linux-{architecture}"
environment = dict(os.environ, CGO_ENABLED="0", GOOS="linux", GOARCH=architecture) environment = dict(os.environ, CGO_ENABLED="0", GOOS="linux", GOARCH=architecture)
environment.setdefault("GOCACHE", "/tmp/cthulhu-go-cache") environment.setdefault("GOCACHE", "/tmp/cthulhu-cache")
subprocess.run(["go", "build", "-buildvcs=false", "-mod=readonly", "-trimpath", subprocess.run(["go", "build", "-buildvcs=false", "-mod=readonly", "-trimpath",
"-ldflags=-s -w", "-o", str(programPath), f"./{name}/src"], "-ldflags=-s -w", "-o", str(programPath), f"./{name}/src"],
cwd=repoRoot, env=environment, check=True) cwd=repoRoot, env=environment, check=True)
+3 -3
View File
@@ -1,6 +1,6 @@
# Wormhole # Wormhole
An experimental Magic Wormhole Tentacle for Cthulhu-Go. Suggested shortcut: An experimental Magic Wormhole Tentacle for Cthulhu. Suggested shortcut:
**Cthulhu+Ctrl+Shift+W**, on desktop and laptop layouts. It opens the reader's **Cthulhu+Ctrl+Shift+W**, on desktop and laptop layouts. It opens the reader's
internal **Wormhole menu**, preserving the underlying application's focus. internal **Wormhole menu**, preserving the underlying application's focus.
@@ -72,7 +72,7 @@ received text or launches a shell for transfers. Consult the
## Build and local launch ## Build and local launch
Keep this repository beside the matching `cthulhu-go` checkout: Keep this repository beside the matching `cthulhu` checkout:
```sh ```sh
make build make build
@@ -155,5 +155,5 @@ After configuring the local entry:
Report the exact speech and braille, the focused control, the clipboard contents, Report the exact speech and braille, the focused control, the clipboard contents,
and any key that behaved differently. Unexpected results should be diagnosed and any key that behaved differently. Unexpected results should be diagnosed
from `~/devel/cthulhu-go.log`. Automated and private Xorg checks do not establish from `~/devel/cthulhu.log`. Automated and private Xorg checks do not establish
physical speech, keyboard or braille acceptance. physical speech, keyboard or braille acceptance.
+1 -1
View File
@@ -9,7 +9,7 @@ import (
"path/filepath" "path/filepath"
"sync" "sync"
"git.stormux.org/storm/cthulhu-go/sdk/go/tentacle" "git.stormux.org/storm/cthulhu/sdk/go/tentacle"
) )
type preferences struct { type preferences struct {
+1 -1
View File
@@ -21,7 +21,7 @@ import (
"unicode" "unicode"
"unicode/utf8" "unicode/utf8"
"git.stormux.org/storm/cthulhu-go/sdk/go/tentacle" "git.stormux.org/storm/cthulhu/sdk/go/tentacle"
) )
var lookPath = exec.LookPath var lookPath = exec.LookPath
+1 -1
View File
@@ -2,7 +2,7 @@ package main
import ( import (
"context" "context"
sdk "git.stormux.org/storm/cthulhu-go/sdk/go/tentacle" sdk "git.stormux.org/storm/cthulhu/sdk/go/tentacle"
"os" "os"
"os/exec" "os/exec"
"path/filepath" "path/filepath"
+1 -1
View File
@@ -3,7 +3,7 @@ package main
import ( import (
"context" "context"
"encoding/json" "encoding/json"
"git.stormux.org/storm/cthulhu-go/sdk/go/tentacle" "git.stormux.org/storm/cthulhu/sdk/go/tentacle"
"os" "os"
"path/filepath" "path/filepath"
"strings" "strings"
+2 -2
View File
@@ -18,6 +18,6 @@ major = 1
minor = 0 minor = 0
[requirements] [requirements]
reader = "Cthulhu-Go with interactive Tentacle settings support" reader = "Cthulhu with interactive Tentacle settings support"
runtime = "Magic Wormhole CLI (wormhole); xclip for clipboard operations" runtime = "Magic Wormhole CLI (wormhole); xclip for clipboard operations"
build = "Go 1.24 or newer and the adjacent cthulhu-go source checkout" build = "Go 1.24 or newer and the adjacent cthulhu source checkout"