deploy: add Linux install script download
This commit is contained in:
parent
098b3c83d8
commit
13b3de661b
@ -75,6 +75,10 @@ app.get('/downloads/fieldlens-print-linux-x64.deb', (_req, res) => {
|
||||
redirectDesktopDownload(res, 'fieldlens-print-linux-x64.deb')
|
||||
})
|
||||
|
||||
app.get('/downloads/install.sh', (_req, res) => {
|
||||
redirectDesktopDownload(res, 'install.sh')
|
||||
})
|
||||
|
||||
// Backward-compatible aliases used by the first downloads page.
|
||||
app.get('/downloads/fieldlens-print/windows-x64', (_req, res) => {
|
||||
redirectDesktopDownload(res, 'fieldlens-print-windows-x64-setup.exe')
|
||||
|
||||
@ -13,6 +13,12 @@ const downloads = [
|
||||
detail: 'x64 · Debian / Ubuntu .deb package',
|
||||
icon: Terminal,
|
||||
},
|
||||
{
|
||||
href: '/downloads/install.sh',
|
||||
label: 'Linux install script',
|
||||
detail: 'x64 · verifies SHA-256 · installs the .deb',
|
||||
icon: Terminal,
|
||||
},
|
||||
]
|
||||
|
||||
export function DesktopDownloadsLink({ onOpen }: { onOpen: () => void }) {
|
||||
@ -70,8 +76,14 @@ export function DesktopDownloadsPage({ onBack }: { onBack: () => void }) {
|
||||
))}
|
||||
</div>
|
||||
|
||||
<div className="downloads-command">
|
||||
<span>Linux quick install</span>
|
||||
<code>curl -fsSL https://fieldlens.arrowstack.dev/downloads/install.sh | sh</code>
|
||||
</div>
|
||||
|
||||
<div className="downloads-notes">
|
||||
<p><strong>Windows:</strong> installs for the current user, so the app itself does not require administrator elevation.</p>
|
||||
<p><strong>Linux script:</strong> supports x86_64/amd64 Debian/Ubuntu-style systems and verifies the package checksum before installation.</p>
|
||||
<p><strong>Printer setup:</strong> changing a managed Windows printer queue or port can still require IT/admin permission.</p>
|
||||
</div>
|
||||
</section>
|
||||
|
||||
@ -167,7 +167,7 @@
|
||||
}
|
||||
.desktop-download-grid {
|
||||
display: grid;
|
||||
grid-template-columns: repeat(2, minmax(0, 1fr));
|
||||
grid-template-columns: repeat(3, minmax(0, 1fr));
|
||||
gap: 12px;
|
||||
padding: 18px 20px;
|
||||
}
|
||||
@ -255,3 +255,31 @@
|
||||
cursor: pointer;
|
||||
font: inherit;
|
||||
}
|
||||
|
||||
|
||||
.downloads-command {
|
||||
display: grid;
|
||||
gap: 7px;
|
||||
padding: 0 20px 18px;
|
||||
}
|
||||
.downloads-command span {
|
||||
color: #75807b;
|
||||
font-size: 9px;
|
||||
font-weight: 800;
|
||||
text-transform: uppercase;
|
||||
letter-spacing: .08em;
|
||||
}
|
||||
.downloads-command code {
|
||||
display: block;
|
||||
overflow-x: auto;
|
||||
padding: 11px 12px;
|
||||
border: 1px solid #dfe3dc;
|
||||
border-radius: 10px;
|
||||
background: #17211f;
|
||||
color: #f6f5ed;
|
||||
font-size: 10px;
|
||||
white-space: nowrap;
|
||||
}
|
||||
@media (max-width: 980px) and (min-width: 761px) {
|
||||
.desktop-download-grid { grid-template-columns: 1fr; }
|
||||
}
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user