Merge remote-tracking branch 'origin/master'

This commit is contained in:
Neale Pickett 2012-07-31 21:27:53 -06:00
commit 1e0ab8cdfd
29 changed files with 267 additions and 26 deletions

View File

@ -24,3 +24,4 @@ BURD(sneakums.png, It looks kind and gentle but sneakums' bird would just as soo
BURD(rasher.png, HI GUYS HOW'S IT GOING DO YOU LIKE SEEDS by rasher) BURD(rasher.png, HI GUYS HOW'S IT GOING DO YOU LIKE SEEDS by rasher)
BURD(teferi.jpg, Someone just told teferi's bird a really terrible joke.) BURD(teferi.jpg, Someone just told teferi's bird a really terrible joke.)
BURD(bz2.jpg, I never thought I'd see a bird with a pompadour`,' but bz2 has made that happen.) BURD(bz2.jpg, I never thought I'd see a bird with a pompadour`,' but bz2 has made that happen.)
BURD(pedro.jpg, Pedro has been watching too many Michael Bay movies.)

BIN
birds/pedro.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 77 KiB

22
derby.mdwn Normal file
View File

@ -0,0 +1,22 @@
Title: Roller Derby Stuff
We provide Roller Derby software and advice, aimed at small- to medium-sized
leagues. We strive to make our software:
* Free: no ads, no fees, forever
* Open: download and modify the provided source code
* Clean: fans and NSOs should focus on the game, not our software
* Easy: quickly-learned and intuitive interfaces
Software
--------
* [Scoreboard](http://woozle.org/scoreboard/), works in any web browser
* [Penalty Timer (Android)](https://play.google.com/store/apps/details?id=org.woozle.penaltytimer)
* [Track](http://woozle.org/track/) with movable players
* Penalty Timer (iPhone/iPad) *coming soon*
Articles
--------
* [Running A/V for a Bout](http://woozle.org/~neale/papers/derby-av.html)

View File

@ -0,0 +1 @@
google-site-verification: google7f698b9893809122.html

View File

@ -1,18 +1,32 @@
Title: Home Title: Home
<form class="login" <form class="login"
action="https://woozle.org/mail/index.php" action="https://woozle.org/mail.cgi/"
method="post"> method="post">
Username Username
<input type="text" name="user" size="15" /> <input type="text" name="user" size="15">
Password Password
<input type="password" name="password" size="15" /> <input type="password" name="password" size="15">
<input type="submit" value="Read Email" /> <input type="submit" value="Read Email">
</form> </form>
Nov 9: Web site changes Woozle.org provides shells, email, and web hosting for no cost,
======================= without advertisements, and with a focus on security. Accounts are
held by folks who know the right person to ask.
I'm twiddling with the web site. Webmail should be fine but other things may <!--
be up and down throughout the day. ssh fingerprint for woozle.org: 63:ac:b0:e9:ee:9f:a9:4f:55:0a:4a:42:5d:45:47:06
-->
8 Mar: More web server suckage
------------------------------
I'm trying to get woozle.org ready for IPv6, using the same software
we run in [Dirtbags CTF](http://dirtbags.net/ctf/). I *thought* I had
the web server up and working, but apparently I broke webmail logins.
Thanks to the vigilant woozle user who phoned me to let me know it was
busted.
Uptime for the web server is pretty horrible lately. My apologies.

View File

@ -23,7 +23,7 @@ def getdesc(d):
return '(none)' return '(none)'
ret = desc_re.search(hdrs) ret = desc_re.search(hdrs)
if ret: if ret:
return ret.group(1) return cgi.escape(ret.group(1)).replace('#', '')
else: else:
return '(none)' return '(none)'
@ -47,10 +47,8 @@ if l and os.path.isdir(os.path.join(listdir, 'control')):
content = "<p>Uh oh. That didn't work.</p>" content = "<p>Uh oh. That didn't work.</p>"
content += "<pre>%s</pre>" % cgi.escape(str(err)) content += "<pre>%s</pre>" % cgi.escape(str(err))
else: else:
desc = getdesc(listdir)
content = '<h2>%s@woozle.org' % l content = '<h2>%s@woozle.org' % l
if desc: content += ": %s" % getdesc(listdir)
content += ": %s" % cgi.escape(desc)
content += '</h2>' content += '</h2>'
content += '<p>To subscribe to or unsubscribe from the %s list,' % l content += '<p>To subscribe to or unsubscribe from the %s list,' % l
content += ' just enter your email address in this handy dandy form!</p>' content += ' just enter your email address in this handy dandy form!</p>'
@ -83,9 +81,9 @@ else:
continue continue
l = os.path.basename(d) l = os.path.basename(d)
content += '<tr><td><a href="/lists/%s">%s</a></td>' % (l, l) content += '<tr><td><a href="/lists.cgi/%s">%s</a></td>' % (l, l)
content += '<td>%s</td>' % getdesc(d) content += '<td>%s</td>' % getdesc(d)
content += '<td><form action="lists">' content += '<td><form action="/lists.cgi">'
content += ' <input name="addr" />' content += ' <input name="addr" />'
content += ' <input type="hidden" name="l" value="%s" /><br />' % l content += ' <input type="hidden" name="l" value="%s" /><br />' % l
content += ' <input type="submit" name="a" value="subscribe" />' content += ' <input type="submit" name="a" value="subscribe" />'

24
mail.cgi.c Normal file
View File

@ -0,0 +1,24 @@
#include <stdio.h>
#include <stdlib.h>
#include <unistd.h>
#include <string.h>
const char *basepath = "/usr/share/IlohaMail/source";
int
main(int argc, char *argv[])
{
char *pathinfo = getenv("PATH_INFO");
char filename[512];
if ((! pathinfo) ||
(! strcmp(pathinfo, "/")) ||
(0 == strcmp(pathinfo, "/index.html"))) {
pathinfo = "/index.php";
}
snprintf(filename, sizeof filename, "%s%s", basepath, pathinfo);
setenv("SCRIPT_FILENAME", filename, 1);
execl("/usr/bin/php-cgi", filename, NULL);
return 0;
}

View File

@ -2,10 +2,14 @@
echo 'Title: People' echo 'Title: People'
echo echo
echo 'The following people have made public homepages:'
echo
ls /home/*/public_html/index.html | while read fn; do ls /home/*/public_html/index.html | while read fn; do
a=${fn#/home/} a=${fn#/home/}
u=${a%/public_html/index.html} u=${a%/public_html/index.html}
l=/srv/www/woozle.org/~$u
echo "* [$u](/~$u)" echo "* [$u](/~$u/)"
[ -h $l ] || ln -s /home/$u/public_html $l
done done

8
scoreboard/scoreboard.mk Normal file
View File

@ -0,0 +1,8 @@
TARGETS += $(DESTDIR)/scoreboard/index.html
$(DESTDIR)/scoreboard/.git:
cd $(DESTDIR); git clone /home/neale/projects/scoreboard
$(DESTDIR)/scoreboard/index.html: $(DESTDIR)/scoreboard/.git
$(DESTDIR)/scoreboard/index.html: /home/neale/projects/scoreboard
cd $(DESTDIR)/scoreboard; git pull

82
style-black.css Normal file
View File

@ -0,0 +1,82 @@
html {
font-family: sans-serif;
background: black;
}
body {
margin: auto;
color: #636;
background: black;
padding: 1em;
}
body h1:first-child {
font-size: 1.5em;
font-weight: bold;
color: #ccc;
margin: 0;
}
body h1:first-child:before {
font-size: 300%;
font-weight: normal;
content: "Woozle";
padding-right: 1em;
}
nav {
font-size: 80%;
margin: 0;
padding: 0;
}
nav ul {
background-color: #222;
margin: 0;
padding: 0 1em;
}
nav li {
font-weight: bold;
display: inline;
padding: 0 1em;
}
a {
text-decoration: none;
color: #e8b;
}
a:hover {
text-decoration: underline;
}
h1 {
font-size: 150%;
border-bottom: 1px solid #ddd;
}
.login {
margin: 0 1em;
color: #e8b;
background: #333;
border: 1px solid #eee;
text-align: center;
}
.login input {
border: 1px solid #ddd;
color: #bbb;
background: #111;
font-weight: bold;
}
a img
{
border: 1px #e8b solid;
}
img.left {
float: left;
margin-right: 10px;
}
pre {
background-color: #444;
}

View File

@ -11,13 +11,13 @@ body {
padding: 1em; padding: 1em;
} }
body h1:first-child { h1#title {
font-size: 1.5em; font-size: 1.5em;
font-weight: bold; font-weight: bold;
color: #ccc; color: #ccc;
margin: 0; margin: 0;
} }
body h1:first-child:before { h1#title:before {
font-size: 300%; font-size: 300%;
font-weight: normal; font-weight: normal;
content: "Woozle"; content: "Woozle";
@ -53,6 +53,10 @@ h1 {
border-bottom: 1px solid #ddd; border-bottom: 1px solid #ddd;
} }
h2 {
font-size: 115%;
}
.login { .login {
margin: 0 1em; margin: 0 1em;

View File

@ -2,18 +2,19 @@
<html lang="en"> <html lang="en">
<head> <head>
<title>TITLE</title> <title>TITLE</title>
<meta name="viewport" content="width=device-width" /> <meta name="viewport" content="width=device-width">
<link rel="stylesheet" href="/style.css" type="text/css" /> <link rel="stylesheet" href="/style.css" type="text/css">
<link rel="icon" type="image/png" href="/icon.png" /> <link rel="icon" type="image/png" href="/icon.png">
</head> </head>
<body> <body>
<h1>TITLE</h1> <h1 id="title">TITLE</h1>
<nav> <nav>
<ul> <ul>
<li><a href="/">Home</a></li> <li><a href="/">Home</a></li>
<li><a href="/lists">Email lists</a></li> <li><a href="/derby.html">Derby Stuff</a></li>
<li><a href="/wishlists">Wish lists</a></li> <li><a href="/lists.cgi">Email lists</a></li>
<li><a href="/people">People</a><li> <li><a href="/wishlist.cgi">Wish lists</a></li>
<li><a href="/people.html">People</a><li>
</ul> </ul>
</nav> </nav>
divert(1) divert(1)

7
track/track.mk Normal file
View File

@ -0,0 +1,7 @@
TARGETS += $(DESTDIR)/track/index.html
$(DESTDIR)/track/.git:
cd $(DESTDIR); git clone /home/neale/projects/track
$(DESTDIR)/track/index.html: $(DESTDIR)/track/.git
cd $(DESTDIR)/track; git pull

View File

@ -1,6 +1,11 @@
PLAIN += . PLAIN += .
COPY += icon.png style.css lists.cgi wishlist.cgi set.cgi $(TEMPLATE) COPY += icon.png style.css style-black.css lists.cgi wishlist.cgi set.cgi $(TEMPLATE)
COPY += mail.cgi
COPY += google7f698b9893809122.html
HTML += people.html HTML += people.html
$(DESTDIR)/people.html: people.sh $(DESTDIR)/people.html: people.sh template.html.m4
sh $< | $(MDWNTOHTML) > $@ sh $< | $(MDWNTOHTML) > $@
$(DESTDIR)/mail.cgi: mail.cgi.c
$(CC) -Wall -Werror -o $@ $<

BIN
xmas/2011/DSC03851.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 136 KiB

BIN
xmas/2011/IMG_1329.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.3 MiB

BIN
xmas/2011/IMG_1368.jpg Executable file

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.8 MiB

BIN
xmas/2011/IMG_1469.jpg Executable file

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.0 MiB

BIN
xmas/2011/IMG_1493.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 2.5 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.3 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.2 MiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 759 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 708 KiB

Binary file not shown.

After

Width:  |  Height:  |  Size: 792 KiB

BIN
xmas/2011/IMG_4888.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.1 MiB

BIN
xmas/2011/IMG_4958.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 1.0 MiB

BIN
xmas/2011/arrr.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 64 KiB

70
xmas/2011/index.mdwn Normal file
View File

@ -0,0 +1,70 @@
Title: 2011 Christmas Letter
This was a year of firsts. Ginnie had her first sleep-over, performed at her first Irish dance recital,
IMAGE(IMG_1329)
IMAGE(IMG_4888)
She got her first Ghillies,
IMAGE(IMG_1493)
competed in her first Irish Dance Competition,
IMAGE(DSC03851)
did her first ballet recital without an older girl leading,
IMAGE(IMG_1368)
and went on her first self-supported hike.
IMAGE(IMG_20110328_110408)
She sold her first (and last) Girl Scout Cookies: the top seller for her troupe!
IMAGE(IMG_20110312_095807)
She went to Disneyland for the first time
IMAGE(arrr)
IMAGE(tamarrr)
She went to her first Roller Derby bout
IMAGE(IMG_20110717_122045)
Evacuated town for the first time
IMAGE(IMG_20110626_201950)
Rode her bike by herself for the first time
Read her first book by herself
Had her first motorcycle ride
IMAGE(IMG_1469)
And ate her first Tofurky (she liked it!)
IMAGE(IMG_4958)
Amy and Neale had a lot of fun coffee dates this year
IMAGE(IMG_20110425_124754)
Love,
The Picketts (Neale, Amy, Ginnie, and the dogs, Dingo & Jada)

BIN
xmas/2011/tamarrr.jpg Normal file

Binary file not shown.

After

Width:  |  Height:  |  Size: 48 KiB