diff --git a/frontend/projects/setup-wizard/src/app/pages/embassy/embassy.page.ts b/frontend/projects/setup-wizard/src/app/pages/embassy/embassy.page.ts
index 855051879..1a5dd042d 100644
--- a/frontend/projects/setup-wizard/src/app/pages/embassy/embassy.page.ts
+++ b/frontend/projects/setup-wizard/src/app/pages/embassy/embassy.page.ts
@@ -155,7 +155,6 @@ export class EmbassyPage {
await this.navCtrl.navigateForward(`/loading`)
} catch (e: any) {
this.errorToastService.present(e)
- console.error(e)
} finally {
loader.dismiss()
}
diff --git a/frontend/projects/ui/src/app/app.component.ts b/frontend/projects/ui/src/app/app.component.ts
index 0b81b506a..5caa9bfab 100644
--- a/frontend/projects/ui/src/app/app.component.ts
+++ b/frontend/projects/ui/src/app/app.component.ts
@@ -39,14 +39,6 @@ export class AppComponent implements OnDestroy {
) {}
async ngOnInit() {
- if (location.hostname !== 'localhost' && location.protocol === 'http:') {
- // see if site is available securely
- const res = await fetch(window.location.href.replace(/^http:/, 'https:'))
- if (res && res.status === 200) {
- // redirect
- window.location.protocol = 'https:'
- }
- }
this.patch
.watch$('ui', 'name')
.subscribe(name => this.titleService.setTitle(name || 'StartOS'))
diff --git a/frontend/projects/ui/src/app/app/preloader/preloader.component.ts b/frontend/projects/ui/src/app/app/preloader/preloader.component.ts
index 27d1750ec..9823ac981 100644
--- a/frontend/projects/ui/src/app/app/preloader/preloader.component.ts
+++ b/frontend/projects/ui/src/app/app/preloader/preloader.component.ts
@@ -40,13 +40,13 @@ const ICONS = [
'file-tray-stacked-outline',
'finger-print-outline',
'flash-outline',
+ 'flask-outline',
'flash-off-outline',
'folder-open-outline',
'globe-outline',
'grid-outline',
'help-circle-outline',
'hammer-outline',
- 'home-outline',
'information-circle-outline',
'key-outline',
'list-outline',
@@ -74,6 +74,7 @@ const ICONS = [
'remove-circle-outline',
'remove-outline',
'repeat-outline',
+ 'ribbon-outline',
'rocket-outline',
'save-outline',
'settings-outline',
diff --git a/frontend/projects/ui/src/app/components/widget-list/widget-list.component.ts b/frontend/projects/ui/src/app/components/widget-list/widget-list.component.ts
index b39e313ee..5303d4876 100644
--- a/frontend/projects/ui/src/app/components/widget-list/widget-list.component.ts
+++ b/frontend/projects/ui/src/app/components/widget-list/widget-list.component.ts
@@ -46,11 +46,11 @@ export class WidgetListComponent {
qp: { back: 'true' },
},
{
- title: 'Secure LAN',
- icon: 'home-outline',
+ title: 'Root CA',
+ icon: 'ribbon-outline',
color: 'var(--alt-orange)',
- description: `Download and trust your server's certificate`,
- link: '/system/lan',
+ description: `Download and trust your server's root certificate authority`,
+ link: '/system/root-ca',
},
{
title: 'Create Backup',
diff --git a/frontend/projects/ui/src/app/modals/os-welcome/os-welcome.page.html b/frontend/projects/ui/src/app/modals/os-welcome/os-welcome.page.html
index e0af5cf2b..cd0c93507 100644
--- a/frontend/projects/ui/src/app/modals/os-welcome/os-welcome.page.html
+++ b/frontend/projects/ui/src/app/modals/os-welcome/os-welcome.page.html
@@ -26,12 +26,12 @@
Highlights
- - Enhanced performance for page load times
- - Improved progress reporting for data transfer to new data drives
- - Enabled use of IP address for local network backups
- - Added change password flow to the UI
- - Disabled LUKS for new Raspberry Pi setups
- - Fixed miscellaneous bugs
+ - Https over Tor for faster UI loading times
+ - Change password through UI
+ - Use IP address for Network Folder backups
+ -
+ Multiple bug fixes, performance enhancements, and other small features
+
Previous Releases
diff --git a/frontend/projects/ui/src/app/pages/apps-routes/app-show/app-show.page.html b/frontend/projects/ui/src/app/pages/apps-routes/app-show/app-show.page.html
index bc57dd27b..11993c913 100644
--- a/frontend/projects/ui/src/app/pages/apps-routes/app-show/app-show.page.html
+++ b/frontend/projects/ui/src/app/pages/apps-routes/app-show/app-show.page.html
@@ -52,21 +52,17 @@
-
- You are using an unencrypted http connection
-
+ Http detected
- Click the button below to switch to https. Your browser may warn
- you that the page is insecure. You can safely bypass this
- warning. It will go away after you
+ Your connection is insecure.
- download and trust your server's certificate
+ Download and trust your server's Root CA
- .
+ , then switch to https.
Open https
diff --git a/frontend/projects/ui/src/app/pages/server-routes/experimental-features/experimental-features.page.ts b/frontend/projects/ui/src/app/pages/server-routes/experimental-features/experimental-features.page.ts
index ae0025204..ed57066ab 100644
--- a/frontend/projects/ui/src/app/pages/server-routes/experimental-features/experimental-features.page.ts
+++ b/frontend/projects/ui/src/app/pages/server-routes/experimental-features/experimental-features.page.ts
@@ -43,9 +43,6 @@ export class ExperimentalFeaturesPage {
label: 'Wipe state',
type: 'checkbox',
value: 'wipe',
- handler: val => {
- console.error(val)
- },
},
],
buttons: [
@@ -56,8 +53,7 @@ export class ExperimentalFeaturesPage {
{
text: 'Reset',
handler: (value: string[]) => {
- console.error(value)
- this.resetTor(value.some(v => 'wipe'))
+ this.resetTor(value.some(v => v === 'wipe'))
},
cssClass: 'enter-click',
},
diff --git a/frontend/projects/ui/src/app/pages/server-routes/lan/lan.page.html b/frontend/projects/ui/src/app/pages/server-routes/lan/lan.page.html
index 5c11fea02..aa995a2af 100644
--- a/frontend/projects/ui/src/app/pages/server-routes/lan/lan.page.html
+++ b/frontend/projects/ui/src/app/pages/server-routes/lan/lan.page.html
@@ -1,6 +1,6 @@
- Secure LAN
+ Trust Root CA
@@ -13,7 +13,7 @@
- For a secure local connection,
+ For a secure local connection and faster Tor experience,
- Download Certificate
+ Download Root CA
diff --git a/frontend/projects/ui/src/app/pages/server-routes/server-routing.module.ts b/frontend/projects/ui/src/app/pages/server-routes/server-routing.module.ts
index bd773ddf7..5c728e668 100644
--- a/frontend/projects/ui/src/app/pages/server-routes/server-routing.module.ts
+++ b/frontend/projects/ui/src/app/pages/server-routes/server-routing.module.ts
@@ -17,7 +17,7 @@ const routes: Routes = [
),
},
{
- path: 'lan',
+ path: 'root-ca',
loadChildren: () => import('./lan/lan.module').then(m => m.LANPageModule),
},
{
diff --git a/frontend/projects/ui/src/app/pages/server-routes/server-show/server-show.page.html b/frontend/projects/ui/src/app/pages/server-routes/server-show/server-show.page.html
index e236895df..da1e49656 100644
--- a/frontend/projects/ui/src/app/pages/server-routes/server-show/server-show.page.html
+++ b/frontend/projects/ui/src/app/pages/server-routes/server-show/server-show.page.html
@@ -15,15 +15,20 @@
-
+
- You are using unencrypted http
+ Http detected
- Click the button on the right to switch to https. Your browser may
- warn you that the page is insecure. You can safely bypass this
- warning. It will go away after you download and trust your server's
- certificate
+ {{ isTorHttp ? 'Tor is faster over https.' : 'Your connection is
+ insecure.' }}
+
+ Download and trust your server's Root CA
+
+ , then switch to https.
diff --git a/frontend/projects/ui/src/app/pages/server-routes/server-show/server-show.page.ts b/frontend/projects/ui/src/app/pages/server-routes/server-show/server-show.page.ts
index 11fc9dfcd..04fe2365f 100644
--- a/frontend/projects/ui/src/app/pages/server-routes/server-show/server-show.page.ts
+++ b/frontend/projects/ui/src/app/pages/server-routes/server-show/server-show.page.ts
@@ -42,6 +42,8 @@ export class ServerShowPage {
readonly showDiskRepair$ = this.ClientStorageService.showDiskRepair$
readonly secure = this.config.isSecure()
+ readonly isTorHttp =
+ this.config.isTor() && this.document.location.protocol === 'http:'
constructor(
private readonly alertCtrl: AlertController,
@@ -499,11 +501,11 @@ export class ServerShowPage {
disabled$: of(false),
},
{
- title: 'LAN',
- description: `Download and trust your server's certificate for a secure local connection`,
- icon: 'home-outline',
+ title: 'Root CA',
+ description: `Download and trust your server's root certificate authority`,
+ icon: 'ribbon-outline',
action: () =>
- this.navCtrl.navigateForward(['lan'], { relativeTo: this.route }),
+ this.navCtrl.navigateForward(['root-ca'], { relativeTo: this.route }),
detail: true,
disabled$: of(false),
},
diff --git a/frontend/projects/ui/src/app/services/marketplace.service.ts b/frontend/projects/ui/src/app/services/marketplace.service.ts
index 3467c52ae..f8449d022 100644
--- a/frontend/projects/ui/src/app/services/marketplace.service.ts
+++ b/frontend/projects/ui/src/app/services/marketplace.service.ts
@@ -280,6 +280,7 @@ export class MarketplaceService implements AbstractMarketplaceService {
> = {},
): Observable {
return this.patch.watch$('server-info', 'eos-version-compat').pipe(
+ take(1),
switchMap(versionCompat => {
const qp: RR.GetMarketplacePackagesReq = {
...params,
diff --git a/frontend/projects/ui/src/environments/environment.ts b/frontend/projects/ui/src/environments/environment.ts
index 6bbb39e80..fb9d65078 100644
--- a/frontend/projects/ui/src/environments/environment.ts
+++ b/frontend/projects/ui/src/environments/environment.ts
@@ -4,7 +4,7 @@
export const environment = {
production: false,
- useServiceWorker: true,
+ useServiceWorker: false,
}
/*