Feb 29, 2016
An excellent use for a scrap of ripstop I had lying around (for 4-5 years) after making a bag lining.
Feb 28, 2016
Self-proclaimed typography experts who state – as if it was handed down on stone tablets from G-d – that you can only put one space after the period at the end of a sentence.
On a computer. Most likely in the context of html. Which, unless you insert special space-like objects (like
, and if someone ends their sentences with
. you should probably back slowly away because they know exactly what they’re doing and it’s not writing (hint: 8 letters, starts with t, lives under a bridge and goes fishing)), treats text as a compressible fluid that serves to separate items and which is typically squashed down to an ~1em wide void.
Look, it’s lovely that you’re doing all your composition on a typewriter, then scanning it in with some bespoke OCR software inside a vmware’d Windows 3.1 environment, and that if you accidentally put a second space after a period the OCR software will dump core and bring the entire virtual machine down with it, but that’s not how everybody does it. I use software that lets me feed regular old text into the computer and end up with nicely typeset pages with, shockingly, automatically set spacing between sentences. And it doesn’t matter if I put one space after the period. Or if I put five. Or twenty.
How about, just as a bit of friendly advice, that you upgrade your publishing dataflow so it doesn’t involve a linotype? If you actually use a computer, wonderful things will happen without having to worry about counting how many effing spaces come after the end of the sentence.
Feb 27, 2016
Looking across the old Sellwood Bridge from the new Sellwood Bridge.
Safari (and Firefox) have, for the longest time, rendered monospace fonts in a really teeny size for no particular reason aside from what I can only guess is that there are webkit developers who really don’t like monospace fonts are and trying their damnest to ensure that nobody uses them. I’ve been grouchily living with it for a long time now, but this weekend I published a couple of new releases (postoffice and discount) with lists of feature/bugfixes that were laden with monospace bits and I finally snapped when I saw all the goddamn text in the rendered documents.
So, I took advantage of da google and found a css patch:
Amazing that I have to explicitly tell web software to make fonts regular sized unless otherwise specified.
Sheesh, I can’t wait for the next round of “lets break things” from the open source world.
Postoffice has been updated to version 1.5.9 with a year’s worth of debugging and tweaks to make it work more happily on OSX and versions of Linux that use systemd instead of the traditional Unix init/rc setup.
- Tweak the punctuation on the various “you are tcp wrappered; go away” messages
- Display env->localhost as part of the DEBUG output
- Set a default for env->localhost after doing all the configfile and
command line options.
- Add the option
auto, do as we’ve always done (get machine name from uname, then use
gethostbyname to pick up the canonical dns name)
literal, get machine name from uname)
- otherwise use “name”.
This means I needed to do some changes to the way I process
/etc/postoffice.cf (or whatever config file is set with
; I now make a pass of the command line processing everything
-o arguments, then process
config files were processed when they were encountered on the
command line), and finally make a second pass on the command
line to process
- If PAM is configured, add “PAM: T” to the output from DEBUG
- The flock sanity test was bizarrely & brokenly wrong?
- Add PAM support for AUTH LOGIN (
--with-pam configuration option)
- Check for existance of pw && pass && crypt(pass,pw) before strcmp'ing them.
- If –with-gdbm, don’t even bother to look for ndbm routines (check $WITH_GDBM)
- Handle SIGTSTP (signal 18) on modern Unices (temp kludge; need a wrapper)
postoffice -bD (fake daemonize w/o going to bg for Linux systemd
- have the ns debug program display AAAA records as AAAA records instead of unknown type records
- Fix mf.c & smtp.c to compile if milters are not defined
- Add plists for osx daemonisation (tested on osx 10.5, nothing newer)
- If the message is being dumped to the spam folder because of tcpwrappers,
add a X-Spam header with the reason why.
Some of this support may not be completely baked (I had to migrate my mail server from a FreeBSD 7.x machine to Linux in a hurry when my freebsd service provider went out of business) but it at least works for me™. A large caution is my support for $DENY and $WHY environment variables with tcp wrappers depended on how tcp wrappers handled running twist scripts – I was doing
setenv WHY blah blah blah which put $WHY into my environment on 7.x, but when I switched to Linux the environment was given to the child process that ran setenv, so I couldn’t get that value (I fixed this by rewriting tcp wrappers to explicitly set the environment when the twist script was $NAME=value; I need to further modify my copy of tcp wrappers to use configure.sh instead of the somewhat less than intuitive make arrangement it has right now, and then I'l publish it as a derivative work so I don’t have to keep looking for my modified copy.)
Feb 26, 2016
Dust Mite helps me sew up an experimental green rando bag.
After a period of almost a year, Discount has been nudged up to version 2.2.0 with a whole huge pile of changes, which are (mainly?):
- mathjax support (–with-latex) (
- make the amalloc() paranoia malloc library even more paranoid by
putting markers at the start and the end of each allocated block.
- Redo comment block handling; standard markdown only treats comments as
block html if the start comment marker starts at the beginning of a line
and the end comment marker is at the end of a line.
- clean up broken and insufficiently paranoid parts of
- When attempting to match the closing tag of an html block, don’t
advance the match index unless that character actually matches.
<p></>* was splitting into 2 lines when it should have
- if mkd_compile() is called multiple times, actually recompile the
document if the flags change.
- When processing automatic links, explicitly allow extended utf-8 characters
as part of the url.
- Tweak configure.inc to quote
__d so that a
spaces in the path won’t make configure.sh (or make install) puke
- messed up the fwrite() error check in mkd_generatehtml,
- return EOF instead of -1 on error in mkd_xhtmlpage,
- if the mkd output fails, exit with nonzero status
- Handle error conditions and pass errorcodes out of various
mkd_xxx output functions (inspired by a patch written by
- in mkd_document() don’t pad the generated html with a 0 unless it’s
- If the C compiler generates .dSYM directories, get rid of them during
- Change the configure.sh message for the –with-(foo) variables to
reflect what it’s actually doing with them.
- Theme really wants the old behavior of –with-(foo), so pass those
settings into theme in a #define
- Have configure.sh just state that an option is not supported instead
- Convert many configure-time settings to runtime flags
- Manpage editing by Nathan Phillip Brink
- Update plan9 support.
I’ve been running this weblog withl all of these tweaks, and it has survived without any mysterious datacenter-destroying explosions (though the FreeBSD vhosting service I was running on went belly-up last month and forced a switch to a linux vhost; I did have the option of another freebsd vhost, but freebsd is chasing Linux down into the cavern of tweaking things for the sake of tweaking things, and if I’m going to have to deal with the Unix equivalent of mystery meat I’ll choose one with a package management system that isn’t as horribly stupid as
ports turned out to be) so there’s actually a good chance that you can update your discount libraries and not end up sobbing piteously as everything software related on your server disintegrates.
Feb 25, 2016
In the middle of the day so I won’t get squashed by rush hour traffic.
Feb 24, 2016
I had to ride up to Harbor Freight to pick up a tubing bender (the [cheap] one I was using for 3/8ths tubing snapped, and my attempts to make up a homemade bender ended up with a couple of kinked tubes :-( ) and when I was loading up after buying one this southbound interurban came sailing around the corner towards me.
Feb 19, 2016
Dust Mite & the raw materials for another rando bag
I tried to use the panorama feature on my iphone today, and, as you can see, I don’t quite know how it works yet.
Feb 17, 2016
There’s nothing wrong with the kit bike, but I’ve now put enough miles onto it so that I’m moderately confident that my brazing skills are actually up to building trusses that can carry significant weight & there’s nothing like practice to make my skills better. (Also a local bike shop wants to display one of my frames, so I should probably glue one together where the TT doesn'’t slide sideways while I’m brazing the front triangle together)
Feb 15, 2016
@Laughing Planet tonight
Feb 13, 2016
The kit bike lives up to its nameplate :-)
Feb 12, 2016
Dust Mite & I are collecting a box of old bike parts to be repurposed as bikey art supplies.
“tow the conservative party lion” (Kolohe, in a comment on the left-libertarian weblog “Ordinary Times”) is something I’m going to have to work into my intartubing commentary early and often this year.
Feb 10, 2016
The bokeh is pretty good with this lens (a soviet-era Mir-1B; it would be better except that I bought the lens used and the optics are a bit loose) so why not get as much of it as I can fit into the *istDS?
Feb 09, 2016
The paint on the kit bike isn’t weathered nearly as much as the paint on the working Eng!
Feb 08, 2016
The advantage of running the wiring inside the frame is that it reduces the places where wires can trap dirt against the bicycle tubing (and where it can get snagged by blackberry bushes.) The disadvantage of running the wiring inside the frame is fishing the stupid thing through the frame – it took me about 45 minutes to successfully fish a pilot thread through the fork leg. Compared to this amount of time it’s going to be pretty easy to thread wire through the frame because both the DT and the NDS chainstay open into the BB shell, which is huge enough to be able to fit all sorts of implements of grabbing destruction into (thread a pilot in from the chainstay, thread a pilot in from the DT wiring port, tie them together and pull one of them out so there’s just one pilot, then splice it to the power wire, draw that through, then make an offering at the shrine of Frank Sprague before tying it into the power bus and tail light.)
Feb 06, 2016
A northbound S/N train departs Tacoma Street.
Feb 05, 2016
Fruits & Mite
The traction orange spraypaint/primer I used is not very good in the adhesion department, so the first thing I’m going to do when I win the lottery will be to tear it down to the frame and send it off for powdercoating (the second thing will be hiring a contractor to fix everything that’s broken on our house – I’m not COMPLETELY stupid here.)
Feb 03, 2016
Tiny? This box shouldn’t be this small?
Feb 02, 2016
Oh, yeah, I forgot; Redhat based Linuxes (most of them) use PAM instead of the traditional /etc/password stuff. So vm-pop3d won’t work, nor will postoffice (a /whole/ shitload of other stuff doesn’t work either, like the posting interface to this weblog. So even if I write up a PAM authentication shim layer to configure into vm-pop3d (edit: okay, it turns out vm-pop3d already has a pam layer in it, but it authenticates against the service “vm-pop3d” which make install doesn’t even try to install. Weird. So I modified it to use the “passwd” auth and now it works. It saves me from dovecot, which has the annoying misfeatures of (a) adding new headers to all of the mail in /var/mail/orc and (b) spitting them all up to my mac as Brand! New! messages. Yay open source software, I guess) and postoffice I’d still be left with a nonfunctional system. Ugh, I picked the wrong week to stop sniffing glue.) Argh, just kill me now – I should just find a hosting provider that lets me install homemade system images, then find a way to image the existing gehenna and move it over.
Feb 01, 2016
So the vhosting provider this website is on has decided to go out of business at the end of the month. “No problem”, said I, “it’s a freebsd host so it should be simple to move everything over to a new machine.” So this morning I picked a new vhost provider, paid for a month’s worth of hosting, and started provisioning.
OH GOD THE PAIN!
My first attempt was to use a freebsd (10.something) image; gehenna was running 7.something, so it shouldn’t be too much trouble. It took me about a hour to realize that basically EVERYTHING had been subtly CADT‘ed to the point where I was starting to think about flinging my macbook (OSX is also infected with CADT, but since I’m not using it as a server the full fucking horror of the thing is not as much of a showstopper) across the room.
It didn’t help that freebsd switched to clang, which is, horrifically, even more pointlessly anal than gcc has EVER dreamed of being, and which meant that I had to rebuild pretty much all of my configure.sh'ed programs to compensate for various ridiculous “oh, we know what this function is supposed to do even if you don’t include the header files” failures.
So goodbye to freebsd and back to Linux, which has the dubious advantage of being brain-damaged for much longer than freebsd, so it can’t get /too/ badly fucked up. And then I get to fight with gnu configure (to build lighttpd) and I don’t know what the hell I’m going to need to wedge rc scripts into the all-singing-all-dancing init replacement that infests modern Linuces. But at least here I’ve got a usable package manager (
yum) instead of the mindbogglingly stupid ports system that is spiked into the throat of freebsd.
11 packages that I need to carry: lighttpd (kind of horribly open sourceish, but about 1/20th as bloated as Apache is), spamassassin, postoffice, a dnsbl milter, the milter glue for spamassassin, tcp wrappers (no linux package for tcp wrappers. Slick!), git (I don’t know what sort of nonsensical policy is written into $CURRENT, so I’m sticking with 188.8.131.52-mp), discount, annotations, dropbear (not going to run opensshd, sorry!), and my dns (bind. Yuk. But it’s really the only game in town, and I don’t think I’ve got the patience to write my own dns server.) And only 4 of them use the special snowflake that is GNU configure (which I suspect is the app that made Docker necessary), so once I’ve got lighttpd,spamassassin, the dnsbl milter, the spamassassin milter glue (these last two require special versions to work with postoffice, because the stock ones won’t work with anything except sendmail for no good reason at all) built and starting up it will simply be a slow slide down the hill to insanity.