commit 44595618b5d162e8bb8362e3891dc694342d1869 from: boredpasta date: Mon Jan 13 04:39:10 2025 UTC Add project files commit - 6e6c4aefd07da0aba70d651099a69c928aa7eae7 commit + 44595618b5d162e8bb8362e3891dc694342d1869 blob - /dev/null blob + 516bf3a3c83bfade55339ee8173855236eca3c0b (mode 644) --- /dev/null +++ LICENSE @@ -0,0 +1,25 @@ +Below is an example license to be used for new code in OpenBSD, +modeled after the ISC license. + +It is important to specify the year of the copyright. Additional years +should be separated by a comma, e.g. + Copyright (c) 2003, 2004 + +If you add extra text to the body of the license, be careful not to +add further restrictions. + +/* + * Copyright (c) YYYY YOUR NAME HERE + * + * Permission to use, copy, modify, and distribute this software for any + * purpose with or without fee is hereby granted, provided that the above + * copyright notice and this permission notice appear in all copies. + * + * THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES + * WITH REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF + * MERCHANTABILITY AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR + * ANY SPECIAL, DIRECT, INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES + * WHATSOEVER RESULTING FROM LOSS OF USE, DATA OR PROFITS, WHETHER IN AN + * ACTION OF CONTRACT, NEGLIGENCE OR OTHER TORTIOUS ACTION, ARISING OUT OF + * OR IN CONNECTION WITH THE USE OR PERFORMANCE OF THIS SOFTWARE. + */ blob - /dev/null blob + bb98d07ad5fa2dbe4ac9c7657b73a7080f3b0b21 (mode 644) --- /dev/null +++ Makefile @@ -0,0 +1,32 @@ +PREFIX = /var/www +CGIBINDIR = cgi-bin +HTDOCSDIR = htdocs/pastanoggin.com + +CGIDIR = ${PREFIX}/${CGIBINDIR} +ROOTDIR = ${PREFIX}/${HTDOCSDIR} + +install: + # perl + install -d ${DISTDIR}${PREFIX}/usr/bin + install -g www -m 755 -o www /usr/bin/perl ${DESTDIR}${PREFIX}/usr/bin + install -d ${DISTDIR}${PREFIX}/usr/lib + install -g www -m 755 -o www /usr/lib/libperl.so.* \ + ${DESTDIR}${PREFIX}/usr/lib + install -g www -m 755 -o www /usr/lib/libm.so.* ${DESTDIR}${PREFIX}/usr/lib + install -g www -m 755 -o www /usr/lib/libc.so.* ${DESTDIR}${PREFIX}/usr/lib + install -d ${DISTDIR}${PREFIX}/usr/libexec + install -g www -m 755 -o www /usr/libexec/ld.so \ + ${DESTDIR}${PREFIX}/usr/libexec + install -d ${DISTDIR}${PREFIX}/usr/libdata/perl5 + # cgi + install -d ${DESTDIR}${CGIDIR} + install -g www -m 0555 -o www perl.cgi ${DESTDIR}${CGIDIR} + # documents + install -d ${DESTDIR}${ROOTDIR}/docs + install -g www -m 0555 -o www docs/* ${DESTDIR}${ROOTDIR}/docs + # static files + install -d ${DESTDIR}${ROOTDIR}/static + install -g www -m 0555 -o www static/* ${DESTDIR}${ROOTDIR}/static + +uninstall: + rm -f ${DESTDIR}${PREFIX}/cgi-bin/perl.cgi blob - /dev/null blob + e69de29bb2d1d6434b8b29ae775ad8c2e48c5391 (mode 644) blob - /dev/null blob + 066cbfe90df97549063f2456117dee5ea594b98c (mode 644) --- /dev/null +++ docs/401.html @@ -0,0 +1 @@ +401 blob - /dev/null blob + e1a29c1fe41b80667636878ddbde6531dcb3e6d3 (mode 644) --- /dev/null +++ docs/403.html @@ -0,0 +1 @@ +403 blob - /dev/null blob + f1b1cb3af5394d8d49de87c57fa833c5b24a6315 (mode 644) --- /dev/null +++ docs/404.html @@ -0,0 +1 @@ +404 blob - /dev/null blob + 1b79f38e25b24dcac0318f3371793a6ec204a71b (mode 644) --- /dev/null +++ docs/500.html @@ -0,0 +1 @@ +500 blob - /dev/null blob + 5f981abe6079c9a0b991bbc5caa7286ae28e41d6 (mode 644) --- /dev/null +++ docs/base @@ -0,0 +1,50 @@ + + + + + + + + + [%title%] + + + +
+ + +
+ +
+ [%content%] +
+
+
status
+
+ [%status%] +
+
+ + + blob - /dev/null blob + 5a4a279c0aab648f107dabcec145c1396976eabc (mode 644) --- /dev/null +++ docs/blog @@ -0,0 +1 @@ +No blogs here yet!!! blob - /dev/null blob + 7ac968b899af253be4dbf5ba3d418116d1a143bd (mode 644) --- /dev/null +++ docs/contact @@ -0,0 +1,12 @@ +

how 2 contact?

+ +
+
E-mail
+
[REDACTED] (working on it)
+
IRC
+
anelli (not registered everywhere though)
+
XMPP
+
anelli@pastanoggin.com
+
+ +

yay!

blob - /dev/null blob + 0d7174a438b170272da8fc96e2450c6256abaf3e (mode 644) --- /dev/null +++ docs/links @@ -0,0 +1,33 @@ +

-because search engines suck :b

+ +

my button :3

+
+ button to https://pastanoggin.com +
<a href="https://pastanoggin.com"><img src="https://pastanoggin.com/static/badge.png" alt="button to https://pastanoggin.com"></a>
+
+ +

kin

+ + +

preddy

+ + +

tech

+ + +

other

+ blob - /dev/null blob + 8bd8e37377744709821b218d5b2fe9ee5ac721e4 (mode 644) --- /dev/null +++ docs/root @@ -0,0 +1,24 @@ +
+

"DO YOU HAVE A GRIMOIRE, SHITASS????"

+- My friend +
+
+ +

Hello, this is alex/anelli/noodle/etc,

+

I think personal websites are way cooler than social media so hi. After surfing some neocities-like websites i was like "daym this is fun" (check out my favourites in the links page); so I'm trying to make a funny website too with blackjack and hookers as the cool kids say. I'll also blog and host code here for the lols.

+ +

Likes:

+ + +

Dislikes:

+ blob - /dev/null blob + 500b2c2924ac42035c507b8054c682e9b81c682d (mode 644) --- /dev/null +++ docs/status @@ -0,0 +1 @@ +openbsd vs freebsd rap battle blob - /dev/null blob + d7a1476445affa22e4bbda559a63da5dbff9af1d (mode 755) --- /dev/null +++ perl.cgi @@ -0,0 +1,70 @@ +#!/usr/bin/perl +use strict; +use warnings; +use open qw< :encoding(UTF-8) >; + +my $BASEDIR = "/htdocs/pastanoggin.com"; +my $base_filename = "$BASEDIR/docs/base"; +my $status_filename = "$BASEDIR/docs/status"; + +sub print_file { + my $filename = shift; + my $file = undef; + open($file, "<", $filename) + or die "$0: can't open $filename for reading: $!"; + print while (<$file>); + die "unexpected error while reading from $filename: $!" if $! +} + +sub print_header { + my $code = shift; + print <<~END; + Status: $code + Content-Type: text/html + + END +} + +sub render_page { + my ($docname, $doctitle) = @_; + my $doc_filename = "$BASEDIR/docs/$docname"; + + my $base_file = undef; + open($base_file, "<", $base_filename) + or die "$0: can't open $base_filename for reading: $!"; + + # print header and contents + print_header 200; + while (<$base_file>) { + if (/\[%title%\]/) { + print "$doctitle"; + } elsif (/\[%content%\]/) { + print_file $doc_filename; + } elsif (/\[%status%\]/) { + print_file "$status_filename"; + } else { + print; + } + } + die "unexpected error while reading from $base_filename: $!" if $! +} + +sub render_error { + my $errcode = shift; + print_header $errcode; + print_file "$BASEDIR/docs/${errcode}.html"; +} + +my $path = $ENV{'PATH_INFO'} || '/'; + +if ($path =~ /^\/?$/) { + render_page 'root', 'pastanoggin!!'; +} elsif ($path =~ /^\/contact\/?$/) { + render_page 'contact', 'hello, is it me you\'re looking for?'; +} elsif ($path =~ /^\/blog\/?$/) { + render_page 'blog', 'yapyapyapyap :D'; +} elsif ($path =~ /^\/links\/?$/) { + render_page 'links', 'the interwebs'; +} else { + render_error '404'; +} blob - /dev/null blob + 08375c54b23cab4e41167eb8b728ea3b9f25d80d (mode 644) Binary files /dev/null and static/badge.png differ blob - /dev/null blob + 1f8960dd28d6b237c43754e372b7273d2106ddab (mode 644) Binary files /dev/null and static/banner.png differ blob - /dev/null blob + b0cff362e5071bfc8d2fa15ad1401a5ed560c56d (mode 644) Binary files /dev/null and static/blunt.png differ blob - /dev/null blob + 4dca2c0c600d68015e9ae094ee86b3811236e046 (mode 644) Binary files /dev/null and static/created_by_a_human.png differ blob - /dev/null blob + bf18a139d0052a14cb306d360a7479e87a55fd2a (mode 644) Binary files /dev/null and static/cursor.png differ blob - /dev/null blob + 7bfa0682ee7aef00dda1b336521cf8daedec999a (mode 644) Binary files /dev/null and static/gay.gif differ blob - /dev/null blob + 5f4d9b7b6eb2796f43a025d1f9e839924ff5bd6b (mode 644) Binary files /dev/null and static/header.png differ blob - /dev/null blob + f54c149ffd468e773d1841575e9bfd1253550fb2 (mode 644) --- /dev/null +++ static/main.css @@ -0,0 +1,168 @@ +:root { + --color-grey: #222222; + --text-color: #f9f9f9; + --color-purple: #8f60af; + --background-img: url(/static/tile.png); + --banner-img: url(/static/banner.png); +} + +* { + cursor: url("/static/cursor.png"), auto; +} + +body { + min-width: 20rem; + max-width: 60rem; + margin: auto; + padding: 1em; + color: var(--text-color); + background-image: var(--background-img); + display: flex; + gap: 1em; + flex-wrap: wrap; + flex-direction: row-reverse; +} + +header { + flex-basis: 100%; + display: flex; + position: relative; + justify-content: center; +} + +nav { + flex-basis: 10%; + flex-grow: 1; + display: flex; + align-items: start; +} + +main { + flex-basis: 70%; + flex-grow: 1; +} + +footer { + flex-basis: 100%; + display: flex; + flex-wrap: wrap; + gap: 0.5em; +} + +a { + color: lightblue; +} + +.nav-list { + width: 100%; + margin: 0; + padding: 0; + list-style: none; + display: flex; + gap: 1em; + flex-wrap: wrap; +} + +.nav-item { + flex-grow: 1; + flex-shrink: 1; + flex-basis: 0; + display: flex; +} + +.box { + padding: 1em; + border-style: groove; + border-width: 0.5em; + background-color: var(--color-grey); + border-color: var(--color-purple); +} + +.lighten:hover { + filter: brightness(110%); +} + +.nav-link { + width: 100%; + text-align: center; + align-content: center; + color: var(--color-grey); + text-decoration: none; + background: var(--color-purple); + border-style: outset; + border-color: var(--color-purple); + padding: 0.5em; + font-family: monospace; + font-weight: bold; + font-size: 1.5em; +} + +.nav-link:hover { + filter: brightness(130%); +} + +.buttonbadge { + width: 88px; + height: 31px; + vertical-align: middle; +} + +.codeblock { + white-space: pre-wrap; + word-break: break-all; + background: black; + color: lightgreen; +} + +#banner { + max-width: 100%; + object-fit: contain; + image-rendering: pixelated; +} + +#construction { + position: absolute; + bottom: 0; + right: 0; + height: auto; + width: 30%; + max-width: 125px; + max-height: 100%; +} + +#status { + margin: 0; + background-color: #8f60af; + color: var(--color-grey); + border-radius: 1.5em; + padding: 0.5em; + display: flex; + align-items: center; + gap: 1em; + flex-basis: 100%; + border-color: var(--color-grey); + border-width: 0.1em; + border-style: solid; +} + +#status-header { + padding: 0.1em 1em; + background: white; + height: 100%; + border-radius: 1em; + text-align: center; + align-content: center; +} + +#status-body { + margin: 0; + font-size: 1.2em; + color: white; + word-break: break-word; +} + +@media only screen and (min-width: 800px) { + ul { + flex-direction: column; + } +} blob - /dev/null blob + 3ec3731ab550b44289ff65397b14a72797f8f4af (mode 644) Binary files /dev/null and static/mothracompat.gif differ blob - /dev/null blob + c7edfefa5b3328d23082a6f58c4096ff609d751f (mode 644) Binary files /dev/null and static/obsd.jpg differ blob - /dev/null blob + a5ddb12a2972159a43f002af3034396995356c88 (mode 644) Binary files /dev/null and static/tile.png differ blob - /dev/null blob + 27189c000edfffe30316dedf6dd9cc6c36336360 (mode 644) Binary files /dev/null and static/under_construction.png differ