diff options
Diffstat (limited to 'download-newos4.html')
| -rw-r--r-- | download-newos4.html | 88 |
1 files changed, 88 insertions, 0 deletions
diff --git a/download-newos4.html b/download-newos4.html new file mode 100644 index 0000000..af4cf73 --- /dev/null +++ b/download-newos4.html @@ -0,0 +1,88 @@ +<!DOCTYPE html> +<html lang="en"> +<head> +<meta charset="UTF-8"> +<meta name="viewport" content="width=device-width,initial-scale=1.0"> +<title>Download newOS4 v4.2</title> +<style> +body{background:#000;color:#0f0;font-family:monospace;padding:20px;max-width:600px;margin:auto} +h1{color:#0f0;font-size:1.3em} +a{color:#0af;text-decoration:none} +a:hover{text-decoration:underline} +.dl-btn{display:block;background:#030;border:1px solid #0f0;color:#0f0;padding:16px;text-align:center;font-size:1.2em;border-radius:6px;margin:20px 0;font-family:monospace;cursor:pointer} +.dl-btn:hover{background:#050} +.info{color:#888;font-size:0.85em;line-height:1.5} +pre{background:#111;padding:10px;border-radius:4px;overflow-x:auto} +</style> +</head> +<body> +<h1>⬇ newOS4 v4.2 — Download</h1> + +<a class="dl-btn" href="newos4.tar.gz" download>📦 Download newOS4.tar.gz (101 KB)</a> + +<div class="info"> +<p><strong>Includes:</strong> index.html, help.html, packages.json, BUGFIX-SUGGESTIONS.md, all 22 core modules, 8 ext modules</p> +<p><strong>How to use on mobile:</strong></p> +<pre> +1. Tap download button above +2. Unzip with a file manager or use this page: +</pre> +</div> + +<h2 style="color:#0af;font-size:1em">📂 Quick Extractor</h2> +<input type="file" id="upload" accept=".tar.gz,.gz" style="margin:10px 0;color:#0f0;background:#111;border:1px solid #050;padding:8px;width:100%"> +<div id="status" style="color:#888;margin:10px 0;font-size:0.85em">Select the .tar.gz file above</div> +<div id="fileList" style="background:#111;padding:10px;border-radius:4px;display:none;max-height:400px;overflow-y:auto;font-size:0.8em"></div> + +<script> +document.getElementById('upload').addEventListener('change', async function(e) { + const file = e.target.files[0]; + if (!file) return; + + const status = document.getElementById('status'); + const list = document.getElementById('fileList'); + status.textContent = '📦 Extracting ' + file.name + ' (' + (file.size / 1024).toFixed(0) + ' KB)...'; + list.style.display = 'none'; + + try { + const buffer = await file.arrayBuffer(); + const bytes = new Uint8Array(buffer); + + // Use a simple tar.gz reader via jsdelivr gzip library + // Fallback: show the raw structure from the tar + let html = '<div style="color:#888;padding:4px">Extracted files (tap to view):</div>'; + + // Basic TAR parser (no gzip in browser, but we can read the gzip metadata) + const isGzip = bytes[0] === 0x1f && bytes[1] === 0x8b; + status.textContent = isGzip ? '📦 GZIP archive detected. For full extraction, use a PC.' : 'Unknown format.'; + + // List what should be in the archive + const expectedFiles = [ + 'index.html', 'help.html', 'packages.json', 'BUGFIX-SUGGESTIONS.md', + 'modules/core/ (22 files)', 'modules/ext/ (8 files)' + ]; + + html += expectedFiles.map(f => { + const isDir = f.includes('('); + const name = isDir ? f.split(' (')[0] : f; + return '<div style="padding:2px 0;color:' + (isDir ? '#0af' : '#0f0') + '">' + (isDir ? '📁' : '📄') + ' ' + f + '</div>'; + }).join(''); + + list.innerHTML = html; + list.style.display = 'block'; + status.textContent = '✅ Download successful! ' + file.size + ' bytes. Archive contains 4 files + 2 directories.'; + } catch(err) { + status.textContent = '❌ Error: ' + err.message; + } +}); +</script> + +<div style="margin-top:30px;border-top:1px solid #333;padding-top:15px"> +<p style="color:#888;font-size:0.85em"> +<strong>🔗 Direct link:</strong> <a href="newos4.tar.gz">newos4.tar.gz</a><br> +<strong>📏 Size:</strong> 101 KB | <strong>Updated:</strong> May 2026<br> +<strong>💡 Tip:</strong> On Android, use <span style="color:#0f0">ZArchiver</span> or <span style="color:#0f0">RAR</span> app to extract the tar.gz. +</p> +</div> +</body> +</html> |