Files
2026-10-30 13:20:21 +01:00

72 lines
4.7 KiB
HTML

<!doctype html>
<html lang="en" data-theme="dark">
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width,initial-scale=1">
<meta name="color-scheme" content="dark light">
<title>RustBox Package Repository</title>
<link rel="stylesheet" href="/ui/style.css">
</head>
<body>
<div class="shell">
<aside class="sidebar">
<div class="brand"><div><strong>RustBox</strong><span>Package Repository</span></div></div>
<nav>
<button class="nav active" data-view="overview">Overview</button>
<button class="nav" data-view="packages">Packages</button>
<button class="nav" data-view="install">Installation</button>
<button class="nav" data-view="repositories">Repositories</button>
</nav>
<div class="sidebar-foot"><span id="status-text">Loading...</span></div>
</aside>
<main>
<header class="topbar">
<div><h1 id="view-title">Overview</h1><p id="last-sync">-</p></div>
<div class="toolbar">
<button id="theme-toggle" class="icon-button" type="button" aria-label="Switch to light theme" title="Switch to light theme">
<svg class="theme-icon theme-icon-sun" viewBox="0 0 24 24" aria-hidden="true"><circle cx="12" cy="12" r="4"></circle><path d="M12 2v2M12 20v2M4.93 4.93l1.42 1.42M17.66 17.66l1.41 1.41M2 12h2M20 12h2M4.93 19.07l1.42-1.42M17.66 6.34l1.41-1.41"></path></svg>
<svg class="theme-icon theme-icon-moon" viewBox="0 0 24 24" aria-hidden="true"><path d="M20.25 15.12A8.5 8.5 0 0 1 8.88 3.75 8.5 8.5 0 1 0 20.25 15.12Z"></path></svg>
</button>
<button id="refresh" class="icon-button" type="button" aria-label="Refresh repository" title="Refresh repository">
<svg class="refresh-icon" viewBox="0 0 24 24" aria-hidden="true"><path d="M20 6v5h-5"></path><path d="M4 18v-5h5"></path><path d="M18.49 9A7 7 0 0 0 6.2 6.2L4 11"></path><path d="M5.51 15A7 7 0 0 0 17.8 17.8L20 13"></path></svg>
</button>
</div>
</header>
<section id="overview" class="view active">
<div class="hero">
<div><span class="eyebrow">RUSTBOX PACKAGE REPOSITORY</span><h2>Linux packages</h2><p>Signed packages and repository metadata built directly from RustBox source code.</p></div>
<div class="version-box"><span>LATEST VERSION</span><strong id="latest-version">-</strong><small id="latest-build">-</small></div>
</div>
<div class="cards">
<article><span>Debian / Ubuntu</span><strong id="debian-status">-</strong><small>APT / DEB</small></article>
<article><span>RHEL / AlmaLinux / Rocky Linux</span><strong id="rhel-status">-</strong><small>DNF / RPM</small></article>
<article><span>SUSE / openSUSE</span><strong id="suse-status">-</strong><small>Zypper / RPM</small></article>
</div>
<div class="panel"><div class="panel-head"><h3>Recent packages</h3><button data-go="packages" type="button">View all</button></div><div id="recent-packages" class="package-list"></div></div>
</section>
<section id="packages" class="view">
<div class="panel">
<div class="filters"><input id="search" type="search" placeholder="Search package or version"><select id="channel"><option value="all">All distributions</option><option value="debian">Debian / Ubuntu</option><option value="rhel">RHEL / AlmaLinux / Rocky Linux</option><option value="suse">SUSE / openSUSE</option></select><select id="format"><option value="all">All formats</option><option value="DEB">DEB</option><option value="RPM">RPM</option></select></div>
<div id="packages-table" class="table"></div>
</div>
</section>
<section id="install" class="view">
<div class="install-tabs"><button class="active" data-install="apt" type="button">Debian / Ubuntu</button><button data-install="dnf" type="button">RHEL / AlmaLinux / Rocky Linux</button><button data-install="suse" type="button">SUSE / openSUSE</button></div>
<div class="panel command-panel"><div class="panel-head"><div><h3 id="install-title">Debian / Ubuntu</h3><p id="install-desc">Install from the signed APT repository.</p></div><button id="copy-install" type="button">Copy</button></div><pre><code id="install-command"></code></pre></div>
<div class="note">After installation, configuration is stored in <code>/etc/rustbox/rustbox.toml</code>, application data in <code>/var/lib/rustbox</code>, and logs in <code>/var/log/rustbox/rustbox.log</code>.</div>
</section>
<section id="repositories" class="view">
<div id="repo-cards" class="repo-grid"></div>
<div class="panel"><div class="panel-head"><h3>Build metadata</h3></div><div id="metadata" class="metadata"></div></div>
</section>
</main>
</div>
<div id="toast" class="toast"></div>
<script src="/ui/app.js" defer></script>
</body>
</html>