You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: docs/sourceos/PACKAGING.md
+17-36Lines changed: 17 additions & 36 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -4,7 +4,7 @@
4
4
5
5
Make TurtleTerm installable with Homebrew on macOS and Linux first.
6
6
7
-
TurtleTerm is the SourceOS policy-aware, agent-addressable terminal workbench product built on the WezTerm engine. We preserve upstream WezTerm attribution and licensing while exposing the SourceOS product as TurtleTerm.
7
+
TurtleTerm is the SourceOS policy-aware, agent-addressable terminal workbench product. Public package, command, profile, icon, and documentation surfaces should say TurtleTerm. Required third-party notices are preserved in license and notice files.
8
8
9
9
Windows packaging is intentionally postponed until the macOS and Linux Homebrew path is stable.
10
10
@@ -63,32 +63,25 @@ After tagged releases exist:
63
63
brew install turtle-term
64
64
```
65
65
66
-
### v2: Bottles
67
-
68
-
Once CI is stable, publish bottles for macOS Apple Silicon, macOS Intel if needed, Linux x86_64, and Linux ARM64 if supported by CI and build dependencies.
69
-
70
66
## What the formula should install
71
67
72
-
The Homebrew package should install:
73
-
74
-
-`wezterm`
75
-
-`wezterm-gui`
76
-
-`wezterm-mux-server`
77
-
-`turtle-term`
78
-
-`sourceos-term` compatibility command
79
-
- TurtleTerm / SourceOS WezTerm profile pack
80
-
- TurtleTerm / SourceOS terminal docs
68
+
The Homebrew package should install TurtleTerm launchers, TurtleTerm command tools, the TurtleTerm profile, TurtleTerm skill manifests, TurtleTerm brand assets, SourceOS terminal docs, and private terminal runtime files under `libexec/turtle-term`.
81
69
82
70
Expected installed paths:
83
71
84
72
```text
85
-
$(brew --prefix)/bin/wezterm
86
-
$(brew --prefix)/bin/wezterm-gui
87
-
$(brew --prefix)/bin/wezterm-mux-server
73
+
$(brew --prefix)/bin/turtleterm
74
+
$(brew --prefix)/bin/turtleterm-mux-server
88
75
$(brew --prefix)/bin/turtle-term
76
+
$(brew --prefix)/bin/turtle-agentd
77
+
$(brew --prefix)/bin/turtle-agentctl
78
+
$(brew --prefix)/bin/turtle-tmux
89
79
$(brew --prefix)/bin/sourceos-term
90
-
$(brew --prefix)/etc/turtle-term/wezterm.lua
80
+
$(brew --prefix)/etc/turtle-term/turtleterm.lua
81
+
$(brew --prefix)/share/turtle-term/brand/
82
+
$(brew --prefix)/share/turtle-term/skills/
91
83
$(brew --prefix)/share/turtle-term/sourceos/
84
+
$(brew --prefix)/libexec/turtle-term/
92
85
```
93
86
94
87
## Build posture
@@ -99,30 +92,18 @@ The current formula is experimental and source-build oriented. It should remain
99
92
100
93
Homebrew works across macOS and Linux with one install vocabulary. It gives TurtleTerm one near-term package lane for developer workstations before we split into distro-native packages, Flatpak, AppImage, Windows packaging, or OS image integration.
101
94
102
-
## Linux notes
103
-
104
-
Linux Homebrew is not the final SourceOS OS packaging strategy. It is the developer bootstrap strategy. The eventual SourceOS Linux image/package lane should still support native packaging overlays and immutable OS integration.
105
-
106
-
## macOS notes
107
-
108
-
macOS support is important because current development workstations may be macOS while the target OS remains Linux-first. The Homebrew formula should not require users to replace their existing terminal. It should install TurtleTerm as an additional toolchain surface.
109
-
110
-
## Windows postponed lane
111
-
112
-
Windows package candidates are postponed until the macOS/Linux Homebrew path is stable.
113
-
114
95
## Acceptance criteria
115
96
116
97
v0 is complete when:
117
98
118
99
1. A local developer can run `brew install --HEAD ./packaging/homebrew/Formula/turtle-term.rb`.
119
-
2.`turtle-term paths` works after installation.
120
-
3.`turtle-term run -- echo hello` emits events and receipts.
121
-
4.`sourceos-term paths` still works as a compatibility command.
122
-
5.`wezterm --version` works after installation.
123
-
6.`wezterm-gui --version`works after installation where GUI dependencies are available.
100
+
2.`turtleterm` launches TurtleTerm.
101
+
3.`turtle-term paths` works after installation.
102
+
4.`turtle-term run -- echo hello` emits events and receipts.
103
+
5.`turtle-agentctl --stdio ping` works.
104
+
6.`sourceos-term paths` still works as a compatibility command.
124
105
7. Formula has clear caveats for profile installation.
125
-
8.The packaging lane does not modify WezTerm Rust internals.
106
+
8.Private runtime binaries are not exposed as public product commands.
126
107
127
108
v1 is complete when `SourceOS-Linux/homebrew-tap` exists, the formula is copied into `Formula/turtle-term.rb`, macOS and Linux CI test `brew install --HEAD turtle-term`, and README documents install, upgrade, uninstall, and profile activation.
0 commit comments