addHealthCheck instead of additionalHealthChecks for Daemons (#2962)
* addHealthCheck on Daemons * fix bug that prevents domains without protocols from being deleted * fixes from testing * version bump * add sdk version to UI * fix useEntrypoint * fix dependency health check error display * minor fixes * beta.29 * fixes from testing * beta.30 * set /etc/os-release (#2918) * remove check-monitor from kiosk (#2059) * add units for progress (#2693) * use new progress type * alpha.7 * fix up pwa stuff * fix wormhole-squashfs and prune boot (#2964) * don't exit on expected errors * use bash --------- Co-authored-by: Matt Hill <mattnine@protonmail.com>
@@ -1,4 +1,4 @@
|
||||
<!DOCTYPE html>
|
||||
<!doctype html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta charset="utf-8" />
|
||||
@@ -14,7 +14,14 @@
|
||||
<meta name="format-detection" content="telephone=no" />
|
||||
<meta name="msapplication-tap-highlight" content="no" />
|
||||
|
||||
<link rel="icon" type="image/png" href="assets/icon/favicon.ico" />
|
||||
<link
|
||||
rel="icon"
|
||||
type="image/png"
|
||||
href="/assets/icons/favicon-96x96.png"
|
||||
sizes="96x96"
|
||||
/>
|
||||
<link rel="icon" type="image/svg+xml" href="/assets/icons/favicon.svg" />
|
||||
<link rel="shortcut icon" href="/assets/icons/favicon.ico" />
|
||||
</head>
|
||||
|
||||
<body>
|
||||
|
||||
@@ -1,4 +1,4 @@
|
||||
<!DOCTYPE html>
|
||||
<!doctype html>
|
||||
<html lang="en">
|
||||
<head>
|
||||
<meta charset="utf-8" />
|
||||
@@ -15,7 +15,14 @@
|
||||
<script>
|
||||
var global = window
|
||||
</script>
|
||||
<link rel="icon" type="image/x-icon" href="assets/icon/favicon.ico" />
|
||||
<link
|
||||
rel="icon"
|
||||
type="image/png"
|
||||
href="/assets/icons/favicon-96x96.png"
|
||||
sizes="96x96"
|
||||
/>
|
||||
<link rel="icon" type="image/svg+xml" href="/assets/icons/favicon.svg" />
|
||||
<link rel="shortcut icon" href="/assets/icons/favicon.ico" />
|
||||
</head>
|
||||
|
||||
<body>
|
||||
|
||||
@@ -1,21 +0,0 @@
|
||||
{
|
||||
"name": "StartOS",
|
||||
"short_name": "StartOS",
|
||||
"icons": [
|
||||
{
|
||||
"src": "/assets/icons/web-app-manifest-192x192.png",
|
||||
"sizes": "192x192",
|
||||
"type": "image/png",
|
||||
"purpose": "maskable"
|
||||
},
|
||||
{
|
||||
"src": "/assets/icons/web-app-manifest-512x512.png",
|
||||
"sizes": "512x512",
|
||||
"type": "image/png",
|
||||
"purpose": "maskable"
|
||||
}
|
||||
],
|
||||
"theme_color": "#ffffff",
|
||||
"background_color": "#ffffff",
|
||||
"display": "standalone"
|
||||
}
|
||||
BIN
web/projects/shared/assets/icons/startos-192x192.png
Normal file
|
After Width: | Height: | Size: 9.2 KiB |
BIN
web/projects/shared/assets/icons/startos-512x512.png
Normal file
|
After Width: | Height: | Size: 29 KiB |
|
Before Width: | Height: | Size: 3.5 KiB |
|
Before Width: | Height: | Size: 22 KiB |
|
Before Width: | Height: | Size: 2.6 MiB |
|
Before Width: | Height: | Size: 24 KiB |
@@ -1,5 +0,0 @@
|
||||
<svg width="1369" height="1369" viewBox="0 0 1369 1369" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<path d="M245.229 1154.11C218.012 1203.36 279.4 1235.04 304.523 1188.79C315.173 1169.19 641.573 388.267 681.128 296.285L1061.75 1185.9C1087.02 1239.85 1150.2 1200.35 1126.87 1149.29L719.161 220.202C699.384 177.981 658.308 177.981 640.052 221.71C638.53 224.726 260.899 1125.74 245.229 1154.11Z" fill="#F0F0F0"/>
|
||||
<path d="M173.678 1079.24C99.1497 984.791 52.8134 871.532 39.9236 752.308C27.0337 633.084 48.106 512.665 100.751 404.708C153.396 296.75 235.507 205.573 337.773 141.516C440.038 77.4585 558.367 43.0845 679.34 42.2916C800.313 41.4988 919.089 74.3187 1022.2 137.03C1125.31 199.741 1208.63 289.834 1262.71 397.092C1316.79 504.35 1339.47 624.482 1328.17 743.864C1316.88 863.247 1272.05 977.103 1198.79 1072.52L1197.54 1071.58C1270.62 976.389 1315.33 862.81 1326.6 743.718C1337.87 624.627 1315.25 504.788 1261.3 397.791C1207.35 290.794 1124.24 200.921 1021.38 138.362C918.516 75.804 800.028 43.064 679.35 43.8549C558.672 44.6459 440.632 78.9361 338.615 142.837C236.599 206.738 154.688 297.693 102.171 405.388C49.6544 513.082 28.6335 633.208 41.4919 752.141C54.3504 871.075 100.574 984.058 174.92 1078.28L173.678 1079.24Z" stroke="#F0F0F0" stroke-width="65.4186" stroke-linejoin="round"/>
|
||||
<path d="M393.951 1258.16C484.768 1302.62 583.891 1326.42 685.181 1325.58C786.471 1324.73 886.158 1302.21 976.206 1256.23L976.206 1254.3C886.377 1300.17 786.211 1323.17 685.167 1324.01C584.124 1324.86 484.546 1300.59 393.951 1256.23L393.951 1258.16Z" stroke="#F0F0F0" stroke-width="65.4186" stroke-linejoin="round"/>
|
||||
</svg>
|
||||
|
Before Width: | Height: | Size: 1.6 KiB |
@@ -1,7 +0,0 @@
|
||||
<svg width="32" height="32" viewBox="0 0 34 35" fill="none" xmlns="http://www.w3.org/2000/svg">
|
||||
<rect x="4" y="4.78958" width="26.4999" height="26.4999" rx="3.53333" stroke="black" stroke-width="1.76666" stroke-linejoin="round"/>
|
||||
<rect x="8.47266" y="9.2063" width="7" height="7" rx="0.883332" fill="black"/>
|
||||
<rect x="8.47266" y="18.9231" width="7" height="7.94998" rx="0.883332" fill="black"/>
|
||||
<rect x="19.0723" y="22.4563" width="7" height="4.41666" rx="0.883332" fill="black"/>
|
||||
<rect x="19.0723" y="9.2063" width="7" height="10.6" rx="0.883332" fill="black"/>
|
||||
</svg>
|
||||
|
Before Width: | Height: | Size: 580 B |
@@ -1 +0,0 @@
|
||||
<svg xmlns="http://www.w3.org/2000/svg" class="ionicon" viewBox="0 0 512 512"><path d="M410.47 279.2c-5-11.5-12.7-21.6-28.1-30.1a98.15 98.15 0 00-25.4-10 62.22 62.22 0 0016.3-11 56.37 56.37 0 0015.6-23.3 77.11 77.11 0 003.5-28.2c-1.1-16.8-4.4-33.1-13.2-44.8s-21.2-20.7-37.6-27c-12.6-4.8-25.5-7.8-45.5-8.9V32h-40v64h-32V32h-41v64H96v48h27.87c8.7 0 14.6.8 17.6 2.3a13.22 13.22 0 016.5 6c1.3 2.5 1.9 8.4 1.9 17.5V343c0 9-.6 14.8-1.9 17.4s-2 4.9-5.1 6.3-3.2 1.3-11.8 1.3h-26.4L96 416h87v64h41v-64h32v64h40v-64.4c26-1.3 44.5-4.7 59.4-10.3 19.3-7.2 34.1-17.7 44.7-31.5s14-34.9 14.93-51.2c.67-14.5-.03-33.2-4.56-43.4zM224 150h32v74h-32zm0 212v-90h32v90zm72-208.1c6 2.5 9.9 7.5 13.8 12.7 4.3 5.7 6.5 13.3 6.5 21.4 0 7.8-2.9 14.5-7.5 20.5-3.8 4.9-6.8 8.3-12.8 11.1zm28.8 186.7c-7.8 6.9-12.3 10.1-22.1 13.8a56.06 56.06 0 01-6.7 1.9v-82.8a40.74 40.74 0 0111.3 3.4c7.8 3.3 15.2 6.9 19.8 13.2a43.82 43.82 0 018 24.7c-.03 10.9-2.83 19.2-10.33 25.8z"/></svg>
|
||||
|
Before Width: | Height: | Size: 943 B |
|
Before Width: | Height: | Size: 282 KiB |
|
Before Width: | Height: | Size: 329 KiB |
|
Before Width: | Height: | Size: 1.7 MiB |
@@ -521,4 +521,5 @@ export default {
|
||||
519: 'Um Clearnet-Domains zu veröffentlichen, musst du oben auf „Öffentlich machen“ klicken.',
|
||||
520: 'Update verfügbar',
|
||||
521: 'Um das Problem zu beheben, siehe',
|
||||
522: 'SDK Version',
|
||||
} satisfies i18n
|
||||
|
||||
@@ -520,4 +520,5 @@ export const ENGLISH = {
|
||||
'To publish clearnet domains, you must click "Make Public", above.': 519,
|
||||
'Update available': 520,
|
||||
'To resolve the issue, refer to': 521,
|
||||
'SDK Version': 522,
|
||||
} as const
|
||||
|
||||
@@ -521,4 +521,5 @@ export default {
|
||||
519: 'Para publicar dominios en clearnet, debes hacer clic en "Hacer público" arriba.',
|
||||
520: 'Actualización disponible',
|
||||
521: 'Para resolver el problema, consulta',
|
||||
522: 'Versión de SDK',
|
||||
} satisfies i18n
|
||||
|
||||
@@ -521,4 +521,5 @@ export default {
|
||||
519: 'Pour publier des domaines clearnet, vous devez cliquer sur « Rendre public » ci-dessus.',
|
||||
520: 'Mise à jour disponible',
|
||||
521: 'Pour résoudre le problème, consultez',
|
||||
522: 'Version de SDK',
|
||||
} satisfies i18n
|
||||
|
||||
@@ -521,4 +521,5 @@ export default {
|
||||
519: 'Aby opublikować domeny w clearnet, kliknij „Upublicznij” powyżej.',
|
||||
520: 'Aktualizacja dostępna',
|
||||
521: 'Aby rozwiązać problem, zapoznaj się z',
|
||||
522: 'Wersja SDK',
|
||||
} satisfies i18n
|
||||
|
||||
@@ -12,15 +12,10 @@ export function formatProgress({ phases, overall }: T.FullProgress): {
|
||||
p,
|
||||
): p is {
|
||||
name: string
|
||||
progress:
|
||||
| false
|
||||
| {
|
||||
done: number
|
||||
total: number | null
|
||||
}
|
||||
progress: false | ProgressDetails
|
||||
} => p.progress !== true && p.progress !== null,
|
||||
)
|
||||
.map(p => `<b>${p.name}</b>${getPhaseBytes(p.progress)}`)
|
||||
.map(p => `<b>${p.name}</b>${getDetails(p.progress)}`)
|
||||
.join(', '),
|
||||
}
|
||||
}
|
||||
@@ -35,13 +30,14 @@ function getDecimal(progress: T.Progress): number {
|
||||
}
|
||||
}
|
||||
|
||||
function getPhaseBytes(
|
||||
progress:
|
||||
| false
|
||||
| {
|
||||
done: number
|
||||
total: number | null
|
||||
},
|
||||
) {
|
||||
return progress ? `: ${progress.done}/${progress.total}` : ''
|
||||
function getDetails(progress: false | ProgressDetails) {
|
||||
return progress
|
||||
? `: ${progress.done}/${progress.total} ${progress.units || ''}`
|
||||
: ''
|
||||
}
|
||||
|
||||
type ProgressDetails = {
|
||||
done: number
|
||||
total: number | null
|
||||
units: T.ProgressUnits | null
|
||||
}
|
||||
|
||||
@@ -202,6 +202,11 @@ export class InterfaceClearnetComponent {
|
||||
}
|
||||
|
||||
const loader = this.loader.open('Removing').subscribe()
|
||||
|
||||
if (!/^[a-zA-Z][a-zA-Z\d+\-.]*:\/\//.test(url)) {
|
||||
url = 'http://' + url
|
||||
}
|
||||
|
||||
const params = { domain: new URL(url).hostname }
|
||||
|
||||
try {
|
||||
|
||||
@@ -32,7 +32,7 @@ import { PackageDataEntry } from 'src/app/services/patch-db/data-model'
|
||||
<span tuiSubtitle class="g-warning">
|
||||
{{ error | i18n }}
|
||||
@if (getHealthCheckName(d.key); as healthCheckName) {
|
||||
: {{ getHealthCheckName }}
|
||||
: {{ healthCheckName }}
|
||||
}
|
||||
</span>
|
||||
} @else {
|
||||
|
||||
@@ -81,9 +81,17 @@ export default class ServiceAboutRoute {
|
||||
icon: '@tui.copy',
|
||||
action: () => this.copyService.copy(manifest.version),
|
||||
},
|
||||
{
|
||||
name: 'SDK Version',
|
||||
value: manifest.sdkVersion || '-',
|
||||
icon: manifest.sdkVersion ? '@tui.copy' : '',
|
||||
action: () =>
|
||||
manifest.sdkVersion &&
|
||||
this.copyService.copy(manifest.sdkVersion),
|
||||
},
|
||||
{
|
||||
name: 'Git Hash',
|
||||
value: manifest.gitHash || 'Unknown',
|
||||
value: manifest.gitHash || '-',
|
||||
icon: manifest.gitHash ? '@tui.copy' : '',
|
||||
action: () =>
|
||||
manifest.gitHash && this.copyService.copy(manifest.gitHash),
|
||||
|
||||
@@ -110,7 +110,7 @@ export namespace Mock {
|
||||
squashfs: {
|
||||
aarch64: {
|
||||
publishedAt: '2025-04-21T20:58:48.140749883Z',
|
||||
url: 'https://alpha-registry-x.start9.com/startos/v0.4.0-alpha.6/startos-0.4.0-alpha.6-33ae46f~dev_aarch64.squashfs',
|
||||
url: 'https://alpha-registry-x.start9.com/startos/v0.4.0-alpha.7/startos-0.4.0-alpha.7-33ae46f~dev_aarch64.squashfs',
|
||||
commitment: {
|
||||
hash: '4elBFVkd/r8hNadKmKtLIs42CoPltMvKe2z3LRqkphk=',
|
||||
size: 1343500288,
|
||||
@@ -122,7 +122,7 @@ export namespace Mock {
|
||||
},
|
||||
'aarch64-nonfree': {
|
||||
publishedAt: '2025-04-21T21:07:00.249285116Z',
|
||||
url: 'https://alpha-registry-x.start9.com/startos/v0.4.0-alpha.6/startos-0.4.0-alpha.6-33ae46f~dev_aarch64-nonfree.squashfs',
|
||||
url: 'https://alpha-registry-x.start9.com/startos/v0.4.0-alpha.7/startos-0.4.0-alpha.7-33ae46f~dev_aarch64-nonfree.squashfs',
|
||||
commitment: {
|
||||
hash: 'MrCEi4jxbmPS7zAiGk/JSKlMsiuKqQy6RbYOxlGHOIQ=',
|
||||
size: 1653075968,
|
||||
@@ -134,7 +134,7 @@ export namespace Mock {
|
||||
},
|
||||
raspberrypi: {
|
||||
publishedAt: '2025-04-21T21:16:12.933319237Z',
|
||||
url: 'https://alpha-registry-x.start9.com/startos/v0.4.0-alpha.6/startos-0.4.0-alpha.6-33ae46f~dev_raspberrypi.squashfs',
|
||||
url: 'https://alpha-registry-x.start9.com/startos/v0.4.0-alpha.7/startos-0.4.0-alpha.7-33ae46f~dev_raspberrypi.squashfs',
|
||||
commitment: {
|
||||
hash: '/XTVQRCqY3RK544PgitlKu7UplXjkmzWoXUh2E4HCw0=',
|
||||
size: 1490731008,
|
||||
@@ -146,7 +146,7 @@ export namespace Mock {
|
||||
},
|
||||
x86_64: {
|
||||
publishedAt: '2025-04-21T21:14:20.246908903Z',
|
||||
url: 'https://alpha-registry-x.start9.com/startos/v0.4.0-alpha.6/startos-0.4.0-alpha.6-33ae46f~dev_x86_64.squashfs',
|
||||
url: 'https://alpha-registry-x.start9.com/startos/v0.4.0-alpha.7/startos-0.4.0-alpha.7-33ae46f~dev_x86_64.squashfs',
|
||||
commitment: {
|
||||
hash: '/6romKTVQGSaOU7FqSZdw0kFyd7P+NBSYNwM3q7Fe44=',
|
||||
size: 1411657728,
|
||||
@@ -158,7 +158,7 @@ export namespace Mock {
|
||||
},
|
||||
'x86_64-nonfree': {
|
||||
publishedAt: '2025-04-21T21:15:17.955265284Z',
|
||||
url: 'https://alpha-registry-x.start9.com/startos/v0.4.0-alpha.6/startos-0.4.0-alpha.6-33ae46f~dev_x86_64-nonfree.squashfs',
|
||||
url: 'https://alpha-registry-x.start9.com/startos/v0.4.0-alpha.7/startos-0.4.0-alpha.7-33ae46f~dev_x86_64-nonfree.squashfs',
|
||||
commitment: {
|
||||
hash: 'HCRq9sr/0t85pMdrEgNBeM4x11zVKHszGnD1GDyZbSE=',
|
||||
size: 1731035136,
|
||||
@@ -226,6 +226,7 @@ export namespace Mock {
|
||||
stop: null,
|
||||
},
|
||||
osVersion: '0.2.12',
|
||||
sdkVersion: '0.4.0',
|
||||
dependencies: {},
|
||||
images: {
|
||||
main: {
|
||||
@@ -270,6 +271,7 @@ export namespace Mock {
|
||||
stop: null,
|
||||
},
|
||||
osVersion: '0.2.12',
|
||||
sdkVersion: '0.4.0',
|
||||
dependencies: {
|
||||
bitcoind: {
|
||||
description: 'LND needs bitcoin to live.',
|
||||
@@ -325,6 +327,7 @@ export namespace Mock {
|
||||
stop: null,
|
||||
},
|
||||
osVersion: '0.2.12',
|
||||
sdkVersion: '0.4.0',
|
||||
dependencies: {
|
||||
bitcoind: {
|
||||
description: 'Bitcoin Proxy requires a Bitcoin node.',
|
||||
|
||||
@@ -32,6 +32,7 @@ const PROGRESS: T.FullProgress = {
|
||||
overall: {
|
||||
done: 0,
|
||||
total: 120,
|
||||
units: 'bytes',
|
||||
},
|
||||
phases: [
|
||||
{
|
||||
@@ -39,6 +40,7 @@ const PROGRESS: T.FullProgress = {
|
||||
progress: {
|
||||
done: 0,
|
||||
total: 40,
|
||||
units: 'bytes',
|
||||
},
|
||||
},
|
||||
{
|
||||
|
||||
@@ -1,11 +1,8 @@
|
||||
import { enableProdMode } from '@angular/core'
|
||||
import { platformBrowserDynamic } from '@angular/platform-browser-dynamic'
|
||||
|
||||
import { AppModule } from './app/app.module'
|
||||
import { environment } from './environments/environment'
|
||||
|
||||
; (window as any).global = window
|
||||
|
||||
if (environment.production) {
|
||||
enableProdMode()
|
||||
}
|
||||
|
||||
@@ -1,24 +1,16 @@
|
||||
{
|
||||
"name": "StartOS",
|
||||
"short_name": "StartOS",
|
||||
"theme_color": "#ff5b71",
|
||||
"background_color": "#1e1e1e",
|
||||
"background_color": "#f0f0f0",
|
||||
"display": "standalone",
|
||||
"scope": ".",
|
||||
"start_url": "/?version=036",
|
||||
"id": "/?version=036",
|
||||
"start_url": "./",
|
||||
"icons": [
|
||||
{
|
||||
"src": "/assets/icons/web-app-manifest-192x192.png",
|
||||
"sizes": "192x192",
|
||||
"type": "image/png",
|
||||
"purpose": "any"
|
||||
"src": "/assets/icons/startos-192x192.png",
|
||||
"sizes": "192x192"
|
||||
},
|
||||
{
|
||||
"src": "/assets/icons/web-app-manifest-512x512.png",
|
||||
"sizes": "512x512",
|
||||
"type": "image/png",
|
||||
"purpose": "any"
|
||||
"src": "/assets/icons/startos-512x512.png",
|
||||
"sizes": "512x512"
|
||||
}
|
||||
]
|
||||
}
|
||||
|
||||