Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
46 changes: 5 additions & 41 deletions .github/workflows/build.yml
Original file line number Diff line number Diff line change
Expand Up @@ -13,44 +13,8 @@ concurrency:
jobs:
build:
if: github.event.pull_request.draft == false
runs-on: ubuntu-latest
steps:
- uses: actions/checkout@v4
with:
submodules: recursive

- name: Setup build environment
uses: start9labs/shared-workflows/.github/actions/setup-build-env@master

# This package is SDK 1.5.3; the setup action installs the latest
# start-cli (now the SDK 2.x line, which requires a packaging workspace
# and can't pack 1.5.3 packages). Pin the matching CLI.
- name: Pin start-cli v0.4.0-beta.9
run: |
DOWNLOAD_URL=$(curl -fsS \
-H "Authorization: token ${{ github.token }}" \
https://api.github.com/repos/Start9Labs/start-technologies/releases/tags/v0.4.0-beta.9 \
| jq -r '.assets[] | select(.name=="start-cli_'"$(uname -m)"'-linux") | .browser_download_url')
curl -fsSL \
-H "Authorization: token ${{ github.token }}" \
-H "Accept: application/octet-stream" \
"$DOWNLOAD_URL" -o /tmp/start-cli
sudo install -m 755 /tmp/start-cli /usr/local/bin/start-cli
echo "start-cli: $(start-cli --version)"

- name: Find or create developer signing key
run: |
if [ -n "${{ secrets.DEV_KEY }}" ]; then
mkdir -p ~/.startos
printf '%s' "${{ secrets.DEV_KEY }}" > ~/.startos/developer.key.pem
chmod 600 ~/.startos/developer.key.pem
else
start-cli init-key
fi

- name: Build .s9pk packages
run: |
RUST_LOG=debug RUST_BACKTRACE=1 make
echo
echo "SHA256SUMs:"
sha256sum *.s9pk
uses: start9labs/shared-workflows/.github/workflows/build.yml@master
# with:
# FREE_DISK_SPACE: true
secrets:
DEV_KEY: ${{ secrets.DEV_KEY }}
16 changes: 0 additions & 16 deletions .github/workflows/release.yml
Original file line number Diff line number Diff line change
Expand Up @@ -19,22 +19,6 @@ jobs:
- name: Setup build environment
uses: start9labs/shared-workflows/.github/actions/setup-build-env@master

# This package is SDK 1.5.3; the setup action installs the latest
# start-cli (now the SDK 2.x line, which requires a packaging workspace
# and can't pack 1.5.3 packages). Pin the matching CLI.
- name: Pin start-cli v0.4.0-beta.9
run: |
DOWNLOAD_URL=$(curl -fsS \
-H "Authorization: token ${{ github.token }}" \
https://api.github.com/repos/Start9Labs/start-technologies/releases/tags/v0.4.0-beta.9 \
| jq -r '.assets[] | select(.name=="start-cli_'"$(uname -m)"'-linux") | .browser_download_url')
curl -fsSL \
-H "Authorization: token ${{ github.token }}" \
-H "Accept: application/octet-stream" \
"$DOWNLOAD_URL" -o /tmp/start-cli
sudo install -m 755 /tmp/start-cli /usr/local/bin/start-cli
echo "start-cli: $(start-cli --version)"

- name: Install developer signing key
run: |
mkdir -p ~/.startos
Expand Down
2 changes: 1 addition & 1 deletion README.md
Original file line number Diff line number Diff line change
Expand Up @@ -142,7 +142,7 @@ None.
## Limitations and Differences

1. **Session tokens are mandatory for content** — teapot has no anonymous/guest mode. Without a stored session, every profile/tweet request fails.
2. **Accounts used for scraping risk suspension** — the install alert and the Add Session action both recommend a throwaway account.
2. **Accounts used for scraping risk suspension** — `instructions.md` and the Add Session action's warning both recommend a throwaway account. (The manifest's `alerts.install` block does _not_ reach users, and never has: the pack step drops `alerts` from the built manifest on **both** SDK lines — verified on the released `v0.1.0_0` s9pk, packed on 1.5.3, as well as on the 2.0.6 build. It is long-standing dead weight, not a 2.0 regression.)
3. **GIF transcoding is disabled** (`gifTranscoding.mode = "off"`); the optional ffmpeg-based pipeline is not shipped in the image.
4. **`cache`, `preferences`, and advanced `config` options are not yet exposed** in the StartOS UI; they are pinned to upstream defaults in `/data/teapot.toml`.
5. **Kagi summarizer integration is not configured** (`kagiToken` empty).
Expand Down
6 changes: 5 additions & 1 deletion TODO.md
Original file line number Diff line number Diff line change
@@ -1,6 +1,10 @@
# TODO

- [ ] Device-test the package end-to-end (install, add session, browse, RSS, Set Primary URL).
Migrated to StartOS SDK 2.0.6 (`0.1.0:1`). Builds green (`tsc` + `ncc` + `s9pk pack`, both x86_64 and aarch64) and device-tested end-to-end — the first time this package has had a real run, covering install, upgrade in place over `0.1.0:0`, sessions, browsing, RSS, Set Primary URL and Basic Auth. That exercises both APIs the migration touched, neither of which fails at compile time: `sdk.host.getOwn('ui-multi')` behind the Set Primary URL dropdown, and lazy `SubContainer` / awaited `rootfs` behind the Caddyfile write.

- [ ] Consider removing the manifest's `alerts` block: `alerts` is absent from `SDKManifest` and is dropped at pack time, so the install alert never renders. **This predates the SDK 2.0 migration** — verified by inspecting both the released `v0.1.0_0` s9pk (packed on 1.5.3, `has("alerts")` → `false`) and the 2.0.6 build, so it is not something the migration broke. The warning it carried is already in `instructions.md` and the Add Session action, so nothing is lost by deleting it — it is dead weight either way.
- [ ] Consider exposing `preferences` (theme, infinite scroll, link replacements) via a Preferences action.
- [ ] Consider GIF transcoding support (needs ffmpeg in the image and `gifTranscoding` config exposure).
- [ ] Watch upstream for tags/releases and a stable versioning scheme.

CI moved back to the shared Start9 workflows in the same change. The `Pin start-cli v0.4.0-beta.9` step in `build.yml`/`release.yml` existed only because the package was SDK 1.5.3 — that CLI cannot pack a 2.0.x package, so it had to go with the migration.
Loading