Skip to content

Commit 17765a7

Browse files
committed
All about sdk.beta.45
1 parent 2042700 commit 17765a7

File tree

12 files changed

+161
-142
lines changed

12 files changed

+161
-142
lines changed

.github/workflows/buildService.yml

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -25,7 +25,7 @@ jobs:
2525
id: build
2626
shell: bash
2727
run: |
28-
start-cli init
28+
start-cli init-key
2929
chmod 600 ~/.startos/developer.key.pem
3030
RUST_LOG=debug RUST_BACKTRACE=1 make aarch64
3131
@@ -63,7 +63,7 @@ jobs:
6363
id: build
6464
shell: bash
6565
run: |
66-
start-cli init
66+
start-cli init-key
6767
chmod 600 ~/.startos/developer.key.pem
6868
RUST_LOG=debug RUST_BACKTRACE=1 make x86
6969
@@ -102,7 +102,7 @@ jobs:
102102
id: build
103103
shell: bash
104104
run: |
105-
start-cli init
105+
start-cli init-key
106106
chmod 600 ~/.startos/developer.key.pem
107107
RUST_LOG=debug RUST_BACKTRACE=1 make
108108

.github/workflows/releaseService.yml

Lines changed: 26 additions & 17 deletions
Original file line numberDiff line numberDiff line change
@@ -15,17 +15,27 @@ jobs:
1515
uses: start9labs/sdk@v2
1616

1717
- name: Checkout services repository
18-
uses: actions/checkout@v4
18+
uses: actions/checkout@v5
1919
with:
2020
submodules: recursive
2121

2222
- name: Build the service package
2323
id: build
24+
env:
25+
S9DEVKEY: ${{ secrets.S9DEVKEY }}
2426
run: |
25-
start-cli init
27+
start-cli init-key
28+
if [[ -n "$S9DEVKEY" ]]; then
29+
echo "Using developer key from secrets to sign the package."
30+
printf '%s' "$S9DEVKEY" > ~/.startos/developer.key.pem
31+
else
32+
echo "Using newly generated developer key to sign the package."
33+
fi
2634
RUST_LOG=debug RUST_BACKTRACE=1 make
27-
PACKAGE_ID=$(start-cli s9pk inspect *.s9pk manifest | jq -r '.id')
28-
PACKAGE_TITLE=$(start-cli s9pk inspect *.s9pk manifest | jq -r '.title')
35+
sleep 2
36+
MANIFEST_JSON=$(start-cli s9pk inspect *.s9pk manifest)
37+
PACKAGE_ID=$(echo "$MANIFEST_JSON" | jq -r '.id')
38+
PACKAGE_TITLE=$(echo "$MANIFEST_JSON" | jq -r '.title')
2939
echo "package_id=${PACKAGE_ID}" >> $GITHUB_ENV
3040
echo "package_title=${PACKAGE_TITLE}" >> $GITHUB_ENV
3141
printf "\n SHA256SUM: $(sha256sum ${PACKAGE_ID}.s9pk) \n"
@@ -59,16 +69,15 @@ jobs:
5969
./${{ env.package_id }}.s9pk
6070
./${{ env.package_id }}.s9pk.sha256
6171
62-
# - name: Publish to Registry
63-
# env:
64-
# S9DEVKEY: ${{ secrets.S9DEVKEY }}
65-
# S9REGISTRY: ${{ secrets.S9REGISTRY }}
66-
# run: |
67-
# if [[ -z "$S9DEVKEY" || -z "$S9REGISTRY" ]]; then
68-
# echo "Publish skipped: missing registry credentials."
69-
# else
70-
# mkdir -p ~/.startos
71-
# echo "$S9DEVKEY" > ~/.startos/developer.key.pem
72-
# start-cli --registry https://$S9REGISTRY registry package add ${{ env.package_id }}.s9pk ${{ github.server_url }}/${{ github.repository }}/releases/download/${{ github.ref_name }}/${{ env.package_id }}.s9pk
73-
# fi
74-
# shell: bash
72+
- name: Publish to Registry
73+
env:
74+
S9DEVKEY: ${{ secrets.S9DEVKEY }}
75+
S9REGISTRY: ${{ secrets.S9REGISTRY }}
76+
run: |
77+
if [[ -z "$S9DEVKEY" || -z "$S9REGISTRY" ]]; then
78+
echo "Publish skipped: One or both of S9DEVKEY and S9REGISTRY secrets are not set."
79+
else
80+
echo "Publishing package to registry..."
81+
start-cli --registry https://$S9REGISTRY registry package add ${{ env.package_id }}.s9pk ${{ github.server_url }}/${{ github.repository }}/releases/download/${{ github.ref_name }}/${{ env.package_id }}.s9pk
82+
fi
83+
shell: bash

Makefile

Lines changed: 30 additions & 29 deletions
Original file line numberDiff line numberDiff line change
@@ -1,28 +1,18 @@
11
PACKAGE_ID := $(shell awk -F"'" '/id:/ {print $$2}' startos/manifest.ts)
22
INGREDIENTS := $(shell start-cli s9pk list-ingredients 2>/dev/null)
3-
SYNAPSE_ADMIN_VERSION = v0.11.1-etke47
4-
SYNAPSE_ADMIN_CHECKSUM = 9323ec6921f8170dc9fb65efdcd23e35fd2dea12c588cba34753b0492b7871c2
5-
6-
CMD_ARCH_GOAL := $(filter aarch64 x86_64 arm x86, $(MAKECMDGOALS))
7-
ifeq ($(CMD_ARCH_GOAL),)
8-
BUILD := universal
9-
S9PK := $(PACKAGE_ID).s9pk
10-
else
11-
RAW_ARCH := $(firstword $(CMD_ARCH_GOAL))
12-
ACTUAL_ARCH := $(patsubst x86,x86_64,$(patsubst arm,aarch64,$(RAW_ARCH)))
13-
BUILD := $(ACTUAL_ARCH)
14-
S9PK := $(PACKAGE_ID)_$(BUILD).s9pk
15-
endif
16-
17-
.PHONY: all aarch64 x86_64 arm x86 clean install check-deps check-init package ingredients
3+
SYNAPSE_ADMIN_VERSION = v0.11.1-etke50
4+
SYNAPSE_ADMIN_CHECKSUM = c2a6888db6e4ac2766f17be2bc703d284a7e5f6e8af1c1a7fda0af9ae44e06aa
5+
6+
.PHONY: all aarch64 x86_64 riscv64 arm arm64 x86 riscv arch/* clean install check-deps check-init package ingredients
187
.DELETE_ON_ERROR:
8+
.SECONDARY:
199

2010
define SUMMARY
2111
@manifest=$$(start-cli s9pk inspect $(1) manifest); \
2212
size=$$(du -h $(1) | awk '{print $$1}'); \
2313
title=$$(printf '%s' "$$manifest" | jq -r .title); \
2414
version=$$(printf '%s' "$$manifest" | jq -r .version); \
25-
arches=$$(printf '%s' "$$manifest" | jq -r '.hardwareRequirements.arch | join(", ")'); \
15+
arches=$$(printf '%s' "$$manifest" | jq -r '[.images[].arch // []] | flatten | unique | join(", ")'); \
2616
sdkv=$$(printf '%s' "$$manifest" | jq -r .sdkVersion); \
2717
gitHash=$$(printf '%s' "$$manifest" | jq -r .gitHash | sed -E 's/(.*-modified)$$/\x1b[0;31m\1\x1b[0m/'); \
2818
printf "\n"; \
@@ -39,30 +29,41 @@ define SUMMARY
3929
endef
4030

4131
all: $(PACKAGE_ID).s9pk
42-
$(call SUMMARY,$(S9PK))
32+
$(call SUMMARY,$<)
33+
34+
arch/%: $(PACKAGE_ID)_%.s9pk
35+
$(call SUMMARY,$<)
4336

44-
$(BUILD): $(PACKAGE_ID)_$(BUILD).s9pk
45-
$(call SUMMARY,$(S9PK))
37+
x86 x86_64: arch/x86_64
38+
arm arm64 aarch64: arch/aarch64
39+
riscv riscv64: arch/riscv64
4640

47-
x86: x86_64
48-
arm: aarch64
41+
$(PACKAGE_ID).s9pk: $(INGREDIENTS) .git/HEAD .git/index assets/synapse-admin
42+
@$(MAKE) --no-print-directory ingredients
43+
@echo " Packing '$@'..."
44+
start-cli s9pk pack -o $@
4945

50-
$(S9PK): $(INGREDIENTS) .git/HEAD .git/index assets/synapse-admin
46+
$(PACKAGE_ID)_%.s9pk: $(INGREDIENTS) .git/HEAD .git/index assets/synapse-admin
5147
@$(MAKE) --no-print-directory ingredients
52-
@echo " Packing '$(S9PK)'..."
53-
BUILD=$(BUILD) start-cli s9pk pack -o $(S9PK)
48+
@echo " Packing '$@'..."
49+
start-cli s9pk pack --arch=$* -o $@
5450

5551
ingredients: $(INGREDIENTS)
5652
@echo " Re-evaluating ingredients..."
5753

58-
install: package | check-deps check-init
54+
install: | check-deps check-init
5955
@HOST=$$(awk -F'/' '/^host:/ {print $$3}' ~/.startos/config.yaml); \
6056
if [ -z "$$HOST" ]; then \
6157
echo "Error: You must define \"host: http://server-name.local\" in ~/.startos/config.yaml"; \
6258
exit 1; \
6359
fi; \
64-
echo "\n🚀 Installing to $$HOST ..."; \
65-
start-cli package install -s $(S9PK)
60+
S9PK=$$(ls -t *.s9pk 2>/dev/null | head -1); \
61+
if [ -z "$$S9PK" ]; then \
62+
echo "Error: No .s9pk file found. Run 'make' first."; \
63+
exit 1; \
64+
fi; \
65+
printf "\n🚀 Installing %s to %s ...\n" "$$S9PK" "$$HOST"; \
66+
start-cli package install -s "$$S9PK"
6667

6768
check-deps:
6869
@command -v start-cli >/dev/null || \
@@ -73,7 +74,7 @@ check-deps:
7374
check-init:
7475
@if [ ! -f ~/.startos/developer.key.pem ]; then \
7576
echo "Initializing StartOS developer environment..."; \
76-
start-cli init; \
77+
start-cli init-key; \
7778
fi
7879

7980
assets/synapse-admin: tmp/synapse-admin.tar.gz
@@ -96,4 +97,4 @@ package-lock.json: package.json
9697

9798
clean:
9899
@echo "Cleaning up build artifacts..."
99-
@rm -rf $(PACKAGE_ID).s9pk $(PACKAGE_ID)_x86_64.s9pk $(PACKAGE_ID)_aarch64.s9pk javascript assets/synapse-admin tmp node_modules
100+
@rm -rf $(PACKAGE_ID).s9pk $(PACKAGE_ID)_x86_64.s9pk $(PACKAGE_ID)_aarch64.s9pk $(PACKAGE_ID)_riscv64.s9pk javascript assets/synapse-admin tmp node_modules

package-lock.json

Lines changed: 26 additions & 23 deletions
Some generated files are not rendered by default. Learn more about customizing how changed files appear on GitHub.

package.json

Lines changed: 5 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -6,15 +6,15 @@
66
"check": "tsc --noEmit"
77
},
88
"dependencies": {
9-
"@start9labs/start-sdk": "^0.4.0-beta.41",
10-
"js-yaml": "^4.1.0"
9+
"@start9labs/start-sdk": "^0.4.0-beta.45",
10+
"js-yaml": "^4.1.1"
1111
},
1212
"devDependencies": {
13-
"@types/node": "^22.18.6",
13+
"@types/node": "^22.19.3",
1414
"@types/js-yaml": "^4.0.9",
1515
"@vercel/ncc": "^0.38.4",
16-
"prettier": "^3.6.2",
17-
"typescript": "^5.9.2"
16+
"prettier": "^3.7.4",
17+
"typescript": "^5.9.3"
1818
},
1919
"prettier": {
2020
"trailingComma": "all",

startos/actions/setServerName.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -89,7 +89,7 @@ export async function getSynapseInterfaceUrls(
8989
const iface = await sdk.serviceInterface.getOwn(effects, 'homeserver').once()
9090

9191
const hostnames =
92-
iface?.addressInfo?.publicHostnames
92+
iface?.addressInfo?.hostnames
9393
.filter((h) =>
9494
type === 'tor'
9595
? h.kind === 'onion'
@@ -102,7 +102,7 @@ export async function getSynapseInterfaceUrls(
102102
description,
103103
warning: type === 'tor' ? warning : null,
104104
values: hostnames.reduce(
105-
(obj, hostname) => ({
105+
(obj: Record<string, string>, hostname: string) => ({
106106
...obj,
107107
[hostname]: hostname,
108108
}),

startos/install/versions/index.ts

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,2 @@
1-
export { v_1_128_0_1 as current } from './v1.128.0.1'
1+
export { v_1_144_0_1 as current } from './v1.144.0.1'
22
export const other = []

0 commit comments

Comments
 (0)