chore(apps): remove six fake bookmark apps
484.kitchen, Arch Presentation, Call the Operator, Next Web News Network, Syntropy Institute, and T-0 were hardcoded web-only bookmark apps (no manifests/containers). Removed across the frontend app grid / curated / marketplace / session / launcher data, the backend AppMetadata table, their icons, and the nginx /ext/ proxy blocks (external-app-proxies.conf deleted — nothing installed it anymore). botfights/nostrudel/gitea keep the shared external-app code paths. Frontend: vue-tsc clean, 672 tests pass, production build verified clean of the removed slugs. Backend: cargo check clean. Co-Authored-By: Claude Fable 5 <noreply@anthropic.com>
This commit is contained in:
co-authored by
Claude Fable 5
parent
85c29cd928
commit
b48ea85961
@@ -1,63 +0,0 @@
|
||||
# External web-only apps — reverse proxy to strip X-Frame-Options for iframe embedding
|
||||
# Used by appLauncher.ts EXTERNAL_PROXY_PORT mapping
|
||||
# Deployed to /etc/nginx/conf.d/external-app-proxies.conf
|
||||
|
||||
# 484 Kitchen (484.kitchen) → port 8902
|
||||
server {
|
||||
listen 8902;
|
||||
server_name _;
|
||||
resolver 1.1.1.1 8.8.8.8 valid=300s;
|
||||
resolver_timeout 5s;
|
||||
|
||||
location / {
|
||||
set $upstream_484 https://484.kitchen;
|
||||
proxy_pass $upstream_484;
|
||||
proxy_http_version 1.1;
|
||||
proxy_set_header Host 484.kitchen;
|
||||
proxy_set_header X-Real-IP $remote_addr;
|
||||
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
||||
proxy_set_header X-Forwarded-Proto $scheme;
|
||||
proxy_set_header Accept-Encoding "";
|
||||
proxy_ssl_server_name on;
|
||||
proxy_ssl_name 484.kitchen;
|
||||
proxy_hide_header X-Frame-Options;
|
||||
add_header X-Frame-Options "SAMEORIGIN" always;
|
||||
proxy_hide_header Content-Security-Policy;
|
||||
proxy_connect_timeout 60s;
|
||||
proxy_read_timeout 60s;
|
||||
|
||||
proxy_redirect https://484.kitchen/ /;
|
||||
sub_filter_once off;
|
||||
sub_filter_types text/html text/css application/javascript;
|
||||
}
|
||||
}
|
||||
|
||||
# Arch Presentation (present.l484.com) → port 8903
|
||||
server {
|
||||
listen 8903;
|
||||
server_name _;
|
||||
resolver 1.1.1.1 8.8.8.8 valid=300s;
|
||||
resolver_timeout 5s;
|
||||
|
||||
location / {
|
||||
set $upstream_present https://present.l484.com;
|
||||
proxy_pass $upstream_present;
|
||||
proxy_http_version 1.1;
|
||||
proxy_set_header Host present.l484.com;
|
||||
proxy_set_header X-Real-IP $remote_addr;
|
||||
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
|
||||
proxy_set_header X-Forwarded-Proto $scheme;
|
||||
proxy_set_header Accept-Encoding "";
|
||||
proxy_ssl_server_name on;
|
||||
proxy_ssl_name present.l484.com;
|
||||
proxy_hide_header X-Frame-Options;
|
||||
add_header X-Frame-Options "SAMEORIGIN" always;
|
||||
proxy_hide_header Content-Security-Policy;
|
||||
proxy_connect_timeout 60s;
|
||||
proxy_read_timeout 60s;
|
||||
|
||||
proxy_redirect https://present.l484.com/ /;
|
||||
sub_filter_once off;
|
||||
sub_filter_types text/html text/css application/javascript;
|
||||
}
|
||||
}
|
||||
@@ -844,48 +844,6 @@ server {
|
||||
|
||||
# External site proxies — strip X-Frame-Options so iframe embedding works.
|
||||
# add_header here prevents inheritance of server-level X-Frame-Options.
|
||||
location /ext/484-kitchen/ {
|
||||
set $upstream_3 "https://484.kitchen/";
|
||||
|
||||
proxy_pass $upstream_3;
|
||||
proxy_http_version 1.1;
|
||||
proxy_set_header Host 484.kitchen;
|
||||
proxy_set_header Accept-Encoding "";
|
||||
proxy_ssl_server_name on;
|
||||
proxy_hide_header X-Frame-Options;
|
||||
add_header X-Frame-Options "SAMEORIGIN" always;
|
||||
proxy_hide_header Content-Security-Policy;
|
||||
add_header X-Content-Type-Options "nosniff" always;
|
||||
sub_filter_once off;
|
||||
sub_filter_types text/css application/javascript;
|
||||
sub_filter 'href="/' 'href="/ext/484-kitchen/';
|
||||
sub_filter 'src="/' 'src="/ext/484-kitchen/';
|
||||
sub_filter 'action="/' 'action="/ext/484-kitchen/';
|
||||
sub_filter "href='/" "href='/ext/484-kitchen/";
|
||||
sub_filter "src='/" "src='/ext/484-kitchen/";
|
||||
sub_filter '</head>' '<script src="/nostr-provider.js"></script></head>';
|
||||
}
|
||||
location /ext/arch-presentation/ {
|
||||
set $upstream_4 "https://present.l484.com/";
|
||||
|
||||
proxy_pass $upstream_4;
|
||||
proxy_http_version 1.1;
|
||||
proxy_set_header Host present.l484.com;
|
||||
proxy_set_header Accept-Encoding "";
|
||||
proxy_ssl_server_name on;
|
||||
proxy_hide_header X-Frame-Options;
|
||||
add_header X-Frame-Options "SAMEORIGIN" always;
|
||||
proxy_hide_header Content-Security-Policy;
|
||||
add_header X-Content-Type-Options "nosniff" always;
|
||||
sub_filter_once off;
|
||||
sub_filter_types text/css application/javascript;
|
||||
sub_filter 'href="/' 'href="/ext/arch-presentation/';
|
||||
sub_filter 'src="/' 'src="/ext/arch-presentation/';
|
||||
sub_filter 'action="/' 'action="/ext/arch-presentation/';
|
||||
sub_filter "href='/" "href='/ext/arch-presentation/";
|
||||
sub_filter "src='/" "src='/ext/arch-presentation/";
|
||||
sub_filter '</head>' '<script src="/nostr-provider.js"></script></head>';
|
||||
}
|
||||
location /ext/nostrudel/ {
|
||||
set $upstream_5 "https://nostrudel.ninja/";
|
||||
|
||||
@@ -1294,48 +1252,6 @@ server {
|
||||
|
||||
# External site proxies — strip X-Frame-Options so iframe embedding works.
|
||||
# add_header here prevents inheritance of server-level X-Frame-Options.
|
||||
location /ext/484-kitchen/ {
|
||||
set $upstream_8 "https://484.kitchen/";
|
||||
|
||||
proxy_pass $upstream_8;
|
||||
proxy_http_version 1.1;
|
||||
proxy_set_header Host 484.kitchen;
|
||||
proxy_set_header Accept-Encoding "";
|
||||
proxy_ssl_server_name on;
|
||||
proxy_hide_header X-Frame-Options;
|
||||
add_header X-Frame-Options "SAMEORIGIN" always;
|
||||
proxy_hide_header Content-Security-Policy;
|
||||
add_header X-Content-Type-Options "nosniff" always;
|
||||
sub_filter_once off;
|
||||
sub_filter_types text/css application/javascript;
|
||||
sub_filter 'href="/' 'href="/ext/484-kitchen/';
|
||||
sub_filter 'src="/' 'src="/ext/484-kitchen/';
|
||||
sub_filter 'action="/' 'action="/ext/484-kitchen/';
|
||||
sub_filter "href='/" "href='/ext/484-kitchen/";
|
||||
sub_filter "src='/" "src='/ext/484-kitchen/";
|
||||
sub_filter '</head>' '<script src="/nostr-provider.js"></script></head>';
|
||||
}
|
||||
location /ext/arch-presentation/ {
|
||||
set $upstream_9 "https://present.l484.com/";
|
||||
|
||||
proxy_pass $upstream_9;
|
||||
proxy_http_version 1.1;
|
||||
proxy_set_header Host present.l484.com;
|
||||
proxy_set_header Accept-Encoding "";
|
||||
proxy_ssl_server_name on;
|
||||
proxy_hide_header X-Frame-Options;
|
||||
add_header X-Frame-Options "SAMEORIGIN" always;
|
||||
proxy_hide_header Content-Security-Policy;
|
||||
add_header X-Content-Type-Options "nosniff" always;
|
||||
sub_filter_once off;
|
||||
sub_filter_types text/css application/javascript;
|
||||
sub_filter 'href="/' 'href="/ext/arch-presentation/';
|
||||
sub_filter 'src="/' 'src="/ext/arch-presentation/';
|
||||
sub_filter 'action="/' 'action="/ext/arch-presentation/';
|
||||
sub_filter "href='/" "href='/ext/arch-presentation/";
|
||||
sub_filter "src='/" "src='/ext/arch-presentation/";
|
||||
sub_filter '</head>' '<script src="/nostr-provider.js"></script></head>';
|
||||
}
|
||||
location /ext/nostrudel/ {
|
||||
set $upstream_10 "https://nostrudel.ninja/";
|
||||
|
||||
@@ -1373,51 +1289,3 @@ server {
|
||||
}
|
||||
}
|
||||
|
||||
# External site reverse proxies — each on its own port so SPAs work at root.
|
||||
# Strips X-Frame-Options to allow iframe embedding from Archipelago UI.
|
||||
# Injects NIP-07 nostr-provider.js for Nostr login integration.
|
||||
server {
|
||||
listen 8902;
|
||||
server_name _;
|
||||
location / {
|
||||
set $upstream_12 "https://484.kitchen";
|
||||
|
||||
proxy_pass $upstream_12;
|
||||
proxy_http_version 1.1;
|
||||
proxy_set_header Host 484.kitchen;
|
||||
proxy_set_header Accept-Encoding "";
|
||||
proxy_ssl_server_name on;
|
||||
proxy_hide_header X-Frame-Options;
|
||||
add_header X-Frame-Options "SAMEORIGIN" always;
|
||||
proxy_hide_header Content-Security-Policy;
|
||||
add_header X-Content-Type-Options "nosniff" always;
|
||||
sub_filter '</head>' '<script src="/nostr-provider.js"></script></head>';
|
||||
sub_filter_once on;
|
||||
}
|
||||
location = /nostr-provider.js {
|
||||
alias /opt/archipelago/web-ui/nostr-provider.js;
|
||||
}
|
||||
}
|
||||
|
||||
server {
|
||||
listen 8903;
|
||||
server_name _;
|
||||
location / {
|
||||
set $upstream_13 "https://present.l484.com";
|
||||
|
||||
proxy_pass $upstream_13;
|
||||
proxy_http_version 1.1;
|
||||
proxy_set_header Host present.l484.com;
|
||||
proxy_set_header Accept-Encoding "";
|
||||
proxy_ssl_server_name on;
|
||||
proxy_hide_header X-Frame-Options;
|
||||
add_header X-Frame-Options "SAMEORIGIN" always;
|
||||
proxy_hide_header Content-Security-Policy;
|
||||
add_header X-Content-Type-Options "nosniff" always;
|
||||
sub_filter '</head>' '<script src="/nostr-provider.js"></script></head>';
|
||||
sub_filter_once on;
|
||||
}
|
||||
location = /nostr-provider.js {
|
||||
alias /opt/archipelago/web-ui/nostr-provider.js;
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user