From 8ad12b5feeddacfcfd7c6631eb71bb13ea2e746e Mon Sep 17 00:00:00 2001 From: kxtzownsu <kxtzownsu@gmail.com> Date: Mon, 11 Mar 2024 08:24:12 -0400 Subject: [PATCH] ui touches (I think) and site creation --- app.js | 113 +++++++++++++++++++++++ builder/root/usr/sbin/factory_install.sh | 2 +- index.html | 52 +++++++++++ particles.json | 110 ++++++++++++++++++++++ style.css | 64 +++++++++++++ 5 files changed, 340 insertions(+), 1 deletion(-) create mode 100644 app.js create mode 100644 index.html create mode 100644 particles.json create mode 100644 style.css diff --git a/app.js b/app.js new file mode 100644 index 0000000..f02ba9f --- /dev/null +++ b/app.js @@ -0,0 +1,113 @@ +document.addEventListener("DOMContentLoaded", function() { + particlesJS('particles-js', { + "particles": { + "number": { + "value": 80, + "density": { + "enable": true, + "value_area": 800 + } + }, + "color": { + "value": "#cba6f7" + }, + "shape": { + "type": "circle", + "stroke": { + "width": 0, + "color": "#000000" + }, + "polygon": { + "nb_sides": 5 + }, + "image": { + "src": "img/github.svg", + "width": 100, + "height": 100 + } + }, + "opacity": { + "value": 1, + "random": false, + "anim": { + "enable": false, + "speed": 1, + "opacity_min": 0.1, + "sync": false + } + }, + "size": { + "value": 6, + "random": true, + "anim": { + "enable": false, + "speed": 0, + "size_min": 0.1, + "sync": false + } + }, + "line_linked": { + "enable": false, + "distance": 150, + "color": "#ffffff", + "opacity": 0.4, + "width": 1 + }, + "move": { + "enable": true, + "speed": 2, + "direction": "left", + "random": false, + "straight": false, + "out_mode": "out", + "bounce": false, + "attract": { + "enable": false, + "rotateX": 600, + "rotateY": 1200 + } + } + }, + "interactivity": { + "detect_on": "canvas", + "events": { + "onhover": { + "enable": false, + "mode": "grab" + }, + "onclick": { + "enable": false, + "mode": "remove" + }, + "resize": true + }, + "modes": { + "grab": { + "distance": 150, + "line_linked": { + "opacity": 1 + } + }, + "bubble": { + "distance": 400, + "size": 40, + "duration": 2, + "opacity": 8, + "speed": 3 + }, + "repulse": { + "distance": 200, + "duration": 0.4 + }, + "push": { + "particles_nb": 4 + }, + "remove": { + "particles_nb": 2 + } + } + }, + "selector": ".header", + "retina_detect": true + }); +}); diff --git a/builder/root/usr/sbin/factory_install.sh b/builder/root/usr/sbin/factory_install.sh index 8082dc6..1cbf177 100755 --- a/builder/root/usr/sbin/factory_install.sh +++ b/builder/root/usr/sbin/factory_install.sh @@ -69,7 +69,7 @@ credits(){ echo "TPMD: $tpmdaemon" echo "-=-=-=-=-=-=-=-=-=-=-" echo "kxtzownsu - Writing KVS, Providing kernver 0 & kernver 1 files." - echo "crossystem - Providing kernver 2 files." + echo "planetearth1363 - Providing kernver 2 files." echo "miimaker - Providing kernver 3 files." echo "OlyB - Helping me figure out the shim builder, seriously, thanks." echo "Google - Writing the 'tpmc' command :3" diff --git a/index.html b/index.html new file mode 100644 index 0000000..e45c86c --- /dev/null +++ b/index.html @@ -0,0 +1,52 @@ +<!DOCTYPE HTML> +<html> + <head> + <title>KVS - Kernel Version Switcher</title> + <link href="style.css" rel="stylesheet" type="text/css"> + </head> + <body style="padding-bottom: 3%;"> + <script src="https://cdn.jsdelivr.net/particles.js/2.0.0/particles.min.js"></script> + <script src="app.js"></script> + <div class="header" style="z-index:0;padding:0;margin:0;"> + <div id="particles-js" style="z-index:-1;"></div> + <h1>KVS</h1> + <p>Kernel Version Switcher</p> + </div> + <div class="main" style="padding-bottom: 3%;"> + <div class="about"> + <h3>What is KVS?</h3> + <p>KVS is a side project of mine that will change your current tpm_kernver to ANY version between 0 and 3.</p> + <p>This works using the hexdumps of 0x1008 (kernver TPM index) and <code>tpmc</code> to write the hexdumps of your selected kernver to the 0x1008 TPM index.</p> + </div> + <div class="installation"> + <h3>How do I use this?</h3> + <p>To use KVS, you must download your shim from <a href="https://dl.kxtz.dev/shims/KVS/">kxtz' shim mirror</a></p> + <p>After downloading, flash your USB/SD with the file, I recommend Chrome Recovery Utility.</p> + </div> + <div class="faq"> + <h3>FAQ</h3> + <h4><p><b>Q: </b>Will this brick my device?</p></h4> + <p><b>A: </b>No, KVS has no way to permanantly brick / hard brick a device. At most, it will make ChromeOS stop booting, but you will still be able to boot shims to recover the kernver index.</p> + <h4><b>Q: </b>What kernvers are there?</h4> + <p><b>A: </b>There are 4 valid kernvers, 0, 1, 2, and 3. </p> + <h4><b>Q: </b>What versions can I downgrade to with kernver _</h4> + <p><b>A: </b>Heres what versions you can downgrade to with each kernver</p> + <p>kernver 0: any</p> + <p>kernver 1: any</p> + <p>kernver 2: 112 - 119</p> + <p>kernver 3: 120 - latest</p> + <h4><b>Q: </b>What is the difference between kernver 0 and kernver 1?</h4> + <p><b>A: </b>Both kernver 0 and kernver 1 can downgrade to any version, but kernver 0 doesn't get overriden if you recover to a newer version.</p> + </div> + <div class="credits"> + <h3>Credits</h3> + <p><b>kxtzownsu</b> - Writing KVS, Providing kernver 0 & kernver 1 files.</p> + <p><b>planetearth1363</b> - Providing kernver 2 files</p> + <p><b>miimaker</b> - Providing kernver 3 files</p> + <p><b>OlyB</b> - Helping me with the shim builder, most of the shim builder wouldn't exist without him.</p> + <p><b>Google</b> - Writing the <code>tpmc</code> command :3</p> + </div> + <div style="padding-bottom: 3%;"></div> + </div> + </body> +</html> \ No newline at end of file diff --git a/particles.json b/particles.json new file mode 100644 index 0000000..c24e693 --- /dev/null +++ b/particles.json @@ -0,0 +1,110 @@ +{ + "particles": { + "number": { + "value": 80, + "density": { + "enable": true, + "value_area": 800 + } + }, + "color": { + "value": "#cba6f7" + }, + "shape": { + "type": "circle", + "stroke": { + "width": 0, + "color": "#000000" + }, + "polygon": { + "nb_sides": 5 + }, + "image": { + "src": "img/github.svg", + "width": 100, + "height": 100 + } + }, + "opacity": { + "value": 1, + "random": false, + "anim": { + "enable": false, + "speed": 1, + "opacity_min": 0.1, + "sync": false + } + }, + "size": { + "value": 6, + "random": true, + "anim": { + "enable": false, + "speed": 0, + "size_min": 0.1, + "sync": false + } + }, + "line_linked": { + "enable": false, + "distance": 150, + "color": "#ffffff", + "opacity": 0.4, + "width": 1 + }, + "move": { + "enable": true, + "speed": 2, + "direction": "left", + "random": false, + "straight": false, + "out_mode": "out", + "bounce": false, + "attract": { + "enable": false, + "rotateX": 600, + "rotateY": 1200 + } + } + }, + "interactivity": { + "detect_on": "canvas", + "events": { + "onhover": { + "enable": false, + "mode": "grab" + }, + "onclick": { + "enable": false, + "mode": "remove" + }, + "resize": true + }, + "modes": { + "grab": { + "distance": 150, + "line_linked": { + "opacity": 1 + } + }, + "bubble": { + "distance": 400, + "size": 40, + "duration": 2, + "opacity": 8, + "speed": 3 + }, + "repulse": { + "distance": 200, + "duration": 0.4 + }, + "push": { + "particles_nb": 4 + }, + "remove": { + "particles_nb": 2 + } + } + }, + "retina_detect": true +} \ No newline at end of file diff --git a/style.css b/style.css new file mode 100644 index 0000000..4f90782 --- /dev/null +++ b/style.css @@ -0,0 +1,64 @@ +@import url("https://fonts.googleapis.com/css2?family=Space+Grotesk&family=Sofia+Sans&family=Exo:wght@500&display=swap"); + +body { + position: relative; + background-color: #1b1b29; + color: #cba6f7; + margin: 0; + padding: 0; + font-family: "Exo", sans-serif; + text-align: center; + justify-content: center; + align-items: center; + min-height: 100vh; +} + +code { + background-color: #11111b; + color: #a6e3a1; + padding: 0.2%; +} + +.header { + position: relative; + margin: 0; + width: 100%; + text-align: center; + color: #cba6f7; + background-color: #1e1e2e; +} + +.header h1 { + font-size: 10vw; + padding-top: 3%; + margin: 0; + font-family: "Sofia Sans", sans-serif; +} + +.header p{ + padding-bottom: 3%; +} + +h3 { + font-family: "Space Grotesk", monospace; + font-size: 50px; +} + +.main { + background-color: #1b1b29; + height: 100vh; + margin-left: 3%; + margin-right: 3%; + margin-bottom: 3%; +} + +#particles-js { + position: absolute; + top: 0; + left: 0; + width: 100%; /* Match width of .header */ + height: 100%; /* Match height of .header */ + padding: 0; + z-index: -1; + background-color: transparent; +}