storebound/tools/vds/apache-storebound-desktop.conf
CRT 710c3a53d0 README, docs and site: one story (the whole job, no avoidable rejections, the desktop app, your AI, install)
README is a short front page (about 120 lines) with one real visual per section; every former section moved
unchanged into docs/*.md with a docs/README.md index (journey, rejections, getting-started, commands, growth,
studios, store-art, listing-languages, api, skills, mcp, safety, faq, project). The site tells the same story on one
page: the teaser in the hero, real CLI output as text, the desktop app as a section with light/dark captures of eight
screens and the per-system downloads (desktop/latest.json); /desktop/ redirects to /#download. New capture tools:
tools/site-desktop-shots.ts (fixture-mode desktop frames) and tools/site-term-shots.ts (real CLI output as text and
WebP). tests/docs-links.test.ts checks README, docs and site links resolve.
2026-10-13 03:29:59 +08:00

26 lines
1.4 KiB
Text

# storebound desktop downloads on storebound.dev (included in the :443 vhost of /etc/apache2/sites-available/storebound.dev.conf
# as Include /etc/apache2/storebound-desktop.conf ; see docs/desktop-release.md).
# The downloads are a section of the home page (storebound.dev/#download, it reads latest.json); site/desktop/index.html
# only redirects there and comes with the site. The binaries and latest.json live outside the site's
# document root, because the site's publish rsync deletes everything that is not in the repository.
Alias /desktop/latest.json /var/www/storebound-desktop/latest.json
Alias /desktop/beta/latest.json /var/www/storebound-desktop/beta/latest.json
Alias /desktop/dl/ /var/www/storebound-desktop/dl/
<Directory /var/www/storebound-desktop>
Options -Indexes -FollowSymLinks
AllowOverride None
Require all granted
<FilesMatch "\.(dmg|AppImage|deb|exe|gz|sig)$">
ForceType application/octet-stream
Header set Content-Disposition "attachment"
</FilesMatch>
</Directory>
<LocationMatch "^/desktop/(beta/)?latest\.json$">
Header set Cache-Control "no-cache"
Header set Access-Control-Allow-Origin "*"
</LocationMatch>
<LocationMatch "^/desktop/dl/">
# a published file never changes (a new version gets a new folder)
Header set Cache-Control "public, max-age=31536000, immutable"
Header set X-Content-Type-Options "nosniff"
</LocationMatch>