forked from Thunix/www
minor fixes/updates
This commit is contained in:
@@ -1,3 +1,11 @@
|
||||
# Season’s Greetings - December 2025
|
||||
|
||||
As the year winds down, a sincere thank-you to everyone who’s made Thunix feel like a real community and not just “a server with accounts.” Whether you’re here for SSH, web hosting, email, or the other UNIX-y odds and ends, we’re glad you’re part of this little corner of the internet.
|
||||
|
||||
If you’re taking some quiet time over the holidays, consider doing something wonderfully low-pressure: update your `~/public_html`, publish something on Gopher, poke at the Gemini capsule (`gemini://thunix.net`), or just hang out with us on IRC (`irc.newnet.net:6697` in `#thunix`). No algorithms, no shouting, just people making things.
|
||||
|
||||
However you spend the season: take care of yourself, be decent to each other, and we’ll keep doing our best to keep Thunix stable, secure, and fun.
|
||||
|
||||
# Changes to Terms of Service and Service Updates - April 2025
|
||||
|
||||
We've updated our Terms of Service to clarify rules around running servers—now explicitly prohibited without prior approval. Please take a moment to review these important changes.
|
||||
@@ -23,20 +31,3 @@ own infrastructure. Sign ups that come in will be kept in queue until the syst
|
||||
for more users.
|
||||
|
||||
More to come very soon.
|
||||
|
||||
# Gemini is Live on Thunix! - Nov 2024
|
||||
|
||||
Hey everyone, exciting news—Thunix now supports Gemini! 🎉
|
||||
|
||||
You can check out our Gemini capsule at gemini://thunix.net. It's simple, fast, and perfect for sharing cool stuff without all the web bloat.
|
||||
|
||||
Got ideas for Gemini content? Let us know! And if you’re new to Gemini, dive in—it’s like the web, but chill. 😎
|
||||
|
||||
Catch you in the capsule! 🚀
|
||||
|
||||
# State of the Thunix - July 2023
|
||||
|
||||
We are on the mend. deepend from tilde.club has taken on running Thunix and has started to build it up on his own infrastructure. Sign-ups that come in will be kept in queue until the system is ready for more users.
|
||||
|
||||
More to come very soon.
|
||||
|
||||
|
||||
@@ -3,7 +3,7 @@
|
||||
$site_name="🌻 thunix 🌻";
|
||||
|
||||
//Root for the site, in a browser
|
||||
$site_root="https://".$_SERVER['HTTP_HOST'];
|
||||
$site_root="//".$_SERVER['HTTP_HOST'];
|
||||
//Local base root for app files
|
||||
$doc_root="/var/www/thunix.cf";
|
||||
|
||||
|
||||
@@ -64,3 +64,84 @@ a:visited {
|
||||
clear: both;
|
||||
font-size: smaller;
|
||||
}
|
||||
|
||||
#new
|
||||
|
||||
/* 1) Keep terminal feel, but make reading humane */
|
||||
body {
|
||||
background: #050505; /* not pure black */
|
||||
color: #f1a67a; /* slightly softer than #F79862 */
|
||||
font-size: 16px; /* consistent baseline */
|
||||
line-height: 1.65; /* biggest readability win */
|
||||
text-rendering: optimizeLegibility;
|
||||
}
|
||||
|
||||
/* 2) Use the dot font for headings/branding, but not for paragraphs */
|
||||
#header,
|
||||
#body h1, #body h2, #body h3 {
|
||||
font-family: "dot", Courier, monospace;
|
||||
letter-spacing: 0.5px;
|
||||
}
|
||||
|
||||
#content,
|
||||
#sidebar,
|
||||
#footer {
|
||||
font-family: ui-monospace, SFMono-Regular, Menlo, Monaco, Consolas, "Liberation Mono", "Courier New", monospace;
|
||||
/* still terminal, but readable */
|
||||
}
|
||||
|
||||
/* 3) Limit line length so the eyes don't have to travel across Alberta */
|
||||
#content {
|
||||
max-width: 980px;
|
||||
font-size: 1rem;
|
||||
}
|
||||
|
||||
/* 4) Make links look like links, not “random orange words” */
|
||||
a {
|
||||
color: #f1a67a;
|
||||
text-decoration: underline;
|
||||
text-decoration-thickness: 1px;
|
||||
text-underline-offset: 3px;
|
||||
}
|
||||
|
||||
a:hover {
|
||||
color: #ffb58f;
|
||||
}
|
||||
|
||||
a:visited {
|
||||
color: #e6a042; /* still orange, but distinct */
|
||||
}
|
||||
|
||||
/* 5) Softer headings and better spacing */
|
||||
#body h1, #body h2, #body h3,
|
||||
#sidebar h1, #sidebar h2 {
|
||||
color: #ffb347; /* softer orange */
|
||||
margin-top: 1.2em;
|
||||
margin-bottom: 0.6em;
|
||||
}
|
||||
|
||||
/* 6) Sidebar: keep the panel look, make it calmer */
|
||||
#sidebar {
|
||||
background-color: #0c0c0c; /* slightly lighter */
|
||||
border: 1px solid #222;
|
||||
border-radius: 6px; /* tiny, still “retro UI” */
|
||||
}
|
||||
|
||||
/* 7) Fix your lineitem border (currently border:1px does nothing) */
|
||||
.lineitem {
|
||||
border: 1px solid #222;
|
||||
}
|
||||
|
||||
/* 8) Optional: code blocks that actually read nicely */
|
||||
pre, code {
|
||||
background: #0b0b0b;
|
||||
border: 1px solid #1f1f1f;
|
||||
border-radius: 6px;
|
||||
padding: 0.15em 0.35em;
|
||||
}
|
||||
|
||||
pre {
|
||||
padding: 12px;
|
||||
overflow-x: auto;
|
||||
}
|
||||
|
||||
|
||||
@@ -6,19 +6,19 @@
|
||||
- [Terms of Service](/tos)
|
||||
- [Privacy Policy](/privacy)
|
||||
- [Contact Us](/contact)
|
||||
- [Donations](/donate)
|
||||
- [Donations](https://donate.tilde.club)
|
||||
|
||||
- Resources and User Content
|
||||
---------------------------
|
||||
- [Wiki](https://wiki.thunix.net/)
|
||||
- [User Web Directories](/users)
|
||||
- [User Gopher Directories](https://gopher.tildeverse.org/thunix.net)
|
||||
- [User Gemini Directories](https://gemini.tildeverse.org/?gemini://thunix.net/)
|
||||
|
||||
- Services and Status
|
||||
--------------------
|
||||
- [Status and Information](/server)
|
||||
- [Service News](/news)
|
||||
- [thunix Mirror Services](https://ftp.thunix.net/)
|
||||
- [Web Server Stats](https://stats.thunix.net/)
|
||||
- [Web Mail](/webmail/)
|
||||
- [ZNC Service](https://thunix.net:1356/)
|
||||
|
||||
@@ -1,5 +1,4 @@
|
||||
<?php
|
||||
// This code is licensed under the AGPL 3 or later by ubergeek (https://tildegit.org/ubergeek)
|
||||
include "../config.php";
|
||||
|
||||
$name = $_GET['contact_name'];
|
||||
@@ -9,15 +8,12 @@ $interest = $_GET['interest'];
|
||||
$pubkey = $_GET['pubkey'];
|
||||
$tv = $_GET['tv'];
|
||||
|
||||
// username passed lowercased
|
||||
$username = strtolower($username);
|
||||
|
||||
// strip new line characters from the end
|
||||
$pubkey = trim($pubkey);
|
||||
|
||||
$from = 'From: www-data <www-data@thunix.net>';
|
||||
$destination_addr = "newuser@thunix.net";
|
||||
$subject = "New User Registration";
|
||||
$destination_addr = 'newuser@thunix.net';
|
||||
$subject = 'New User Registration';
|
||||
$mailbody = "A new user has tried to register.
|
||||
Username: $username
|
||||
Real Name: $name
|
||||
@@ -25,39 +21,29 @@ Email Address: $email
|
||||
Interest: $interest
|
||||
Pubkey: $pubkey";
|
||||
|
||||
// In the future, here, we *should* be able to build a process that
|
||||
// somehow auto-verifies the user, and instead of email, it'll kick off the new user process here
|
||||
|
||||
$user_queue = '/dev/shm/userqueue';
|
||||
|
||||
// Spam attempt
|
||||
$success = 'success1';
|
||||
if ( $tv == "tildeverse" )
|
||||
{
|
||||
// Success!
|
||||
if ($tv == 'tildeverse') {
|
||||
$success = 'success2';
|
||||
|
||||
// Check if username already taken
|
||||
if (posix_getpwnam($username)) {
|
||||
if (posix_getpwnam($username)) {
|
||||
$success = 'success3';
|
||||
}
|
||||
|
||||
// Simple SSH public key format check
|
||||
$valid_key_starts = ['ssh-rsa', 'ssh-dss', 'ecdsa-sha2', 'ssh-ed25519'];
|
||||
$key_parts = explode(' ', $pubkey, 3);
|
||||
if (!in_array($key_parts[0], $valid_key_starts) || count($key_parts) < 2) {
|
||||
}
|
||||
$valid_key_starts = ['ssh-rsa', 'ssh-dss', 'ecdsa-sha2', 'ssh-ed25519'];
|
||||
$key_parts = explode(' ', $pubkey, 3);
|
||||
if (!in_array($key_parts[0], $valid_key_starts) || count($key_parts) < 2) {
|
||||
$success = 'success4';
|
||||
}
|
||||
|
||||
if ($success == "success2") {
|
||||
}
|
||||
if ($success === 'success2') {
|
||||
mail($destination_addr, $subject, $mailbody, $from);
|
||||
$fp = fopen($user_queue, 'a');
|
||||
fwrite($fp, "'$username','$email','$pubkey'\n");
|
||||
fclose($fp);
|
||||
}
|
||||
$fp2 = fopen('/var/signups', 'a');
|
||||
fwrite($fp2, 'makeuser ' . $username . ' ' . $email . ' "' . addslashes($pubkey) . "\"\n");
|
||||
fclose($fp2);
|
||||
}
|
||||
}
|
||||
|
||||
header("Location: $site_root/?page=$success");
|
||||
die();
|
||||
|
||||
?>
|
||||
Reference in New Issue
Block a user