More medical trauma

Yesterday I got my melanoma excised. Just like last time, the same PA proved unable to bandage me in a way that sticks. I tried to shave around the area so I could bandage it, but the shitty no-name bandaids I bought at CVS still didn’t stick. I think I’ll need to shave with a blade instead of an electric and buy some better bandaids. I took a picture without the bandaid on, and it’s quite spectacular. A Heidelberg fencer would be proud.

Grossness behind the “Read More”

Continue reading “More medical trauma”

Two steps forward, three steps back

Since writing Progress in the new server, I’ve been working on the Mailman3 stuff. First I tried installing it from Debian packages. One of the dependencies was for a proxy server, and since it couldn’t resolve the one using Apache (even though mod_proxy is in the default Apache conf-available) it installed nginx, a whole different web server. Seems like overkill to me. Also, I couldn’t find installation instructions that seemed to correspond with what the package installed. I could find them for Debian 10, but things have changed since then.

So for the last 3 days I’ve been trying to install it the manual way, using pip install in a virtual environment. It’s been going very slowly. I finally got to the point where I could create a mailing list, but when I try to import the Mailman the configuration for that list from the old server using the `import21` command, I get a python error. As near as I can tell, the error message indicates that somebody is using the `with` command with a Path object, but the stack trace is coming from deep within a package that used by another package that used by another package that’s used by Django, so that doesn’t make a lot of sense to me. Surely I’m not the first person to try to import an old configuration?

I’m also seeing weird occasional errors from it trying to access an invalid url, like /api on the proxied server, and I have no idea why that’s happening.

I’m almost at the point where I want to kill this entire “manual” install and try the Debian packages again. Maybe the experience I’ve gained from these days of frustration will help me understand what was going wrong when I tried it that way.

Maybe this time I should document the things I found about how the documentation is wrong, and send them to somebody on the Mailman team?

I knew this wasn’t going to be easy, but I didn’t think it would be this hard.

Progress in the new server

As I wrote about in And for my sins…, I’m moving a bunch of stuff from the linode I set up back when Debian 5.0 was the current over onto a new server which I set up with Debian 13. And so far, it’s gone pretty well.

Moving the “alink” site took a bit of trouble, mostly because I made a mistake as where I put the git repository and so I had to change any URLs from $HOME/alink to $HOME/alink/alink. Unfortunately “alink” involves scraping flight data from another website, and currently the users of that site don’t have any flights on the other website so I can’t make sure the site is working right.

Moving the “navaid.com” site was easier, because it’s mostly written in Perl and nothing changes in Perl these days. The biggest change was that the new version of Debian uses a newer version of PostgreSQL, and a new version of PostGIS.

The next task was setting up email. That was mostly no big deal, except I decided to use rspamd instead of openDKIM to do mail signing. It took a few attempts to get it right, mostly because I wanted to use different signatures for the different domains and subdomains I send email from. I had a bit of a setup glitch because rspamd allows you to sign messages with a ED25519 key, but the tool I use for verifying DKIM signatures doesn’t understand them, so Ihad to switch back to RSA keys. rspamd will provide spam filtering on incoming mail as a bonus but I doubt that will be an issue. I left off all the filtering I used to do in postfix for now, figuring that rspamd will handle it instead.

The latest thing I did was move the news spool over to the new server. I’d anticipated that I’d have to rebuild the history and/or overview databases, because I’m pretty sure I had to last time I moved them. But in actual fact, I just made sure I used the rsync option that respected sparse files, and I didn’t have to rebuild. I did get a few errors about inode discrepancies which I fixed with tdx-util -F. I didn’t bring over my cleanfeed implementation because I hadn’t updated it since 2002 so there’s probably a better version out there.

The last thing I need to do is migrate the Mailman mailing lists over. This is the one I’ve been dreading, so I’ve put it off until last. I’m going to have to do more research on how to do it. But the biggest problem is I don’t want to shut down my mailing lists for too long.

And for my sins…

I have a bunch of stuff running on a Virtual Private Server at a company called Linode. This instance first spooled up with Debian 5 was “stable”, and it’s currently running Debian 10. The only problem is that Debian 10 isn’t supported any more, and Debian 13 is now “stable”. At this point, I have two options:

  • I could upgrade incrementally from 10 to 11, 11 to 12, and 12 to 13, fixing all the problems that occur along the way or
  • I could do what the Linode tech support people have been begging me to do for a number of years, and spool up a new instance of Debian 13, and just transfer things one at a time to it.

I’m currently leaning towards the second option, but for two problems:

  • I would need to migrate my news spool. Last time I did that (I’m guessing sometime around 2010 or so?) I had to rebuild my overview database, which wasn’t a big deal, just that everything was kind of broken until I figured out how to do that. Also this time I’m using a new type of news spool, called a “timeCAF”. Don’t ask me what it means, I don’t recall. Only that the old way was one file for each article in each newsgroup, and this way makes files that contain multiple articles, and may or may not be “sparse” in the Linux definition of that. Which might complicate the move. I can’t seem to find any information on that yet, but I’m still looking.
  • The new Debian stable only has Mailman 3. I am currently running Mailman 2. I found a document about migrating from 2 to 3, but I think you need a computer with both installed, so I’m probably going to have to install the other one from source on one server or the other. My thought is that it’s probably better to upgrade on the old one so I don’t have to bring over any Mailman 2 cruft to the new server.

Other than that, I don’t anticipate any major trauma, just a lot of futzing around. I’ve done these upgrades in the past, and it’s usually been mostly a half a day of finding all the .dpkg-dist, .dpkg-old, and .dpkg-new files and diffing them with the corresponding config file and making whatever changes seem appropriate.

Drone My Roof

So we signed a contract last week to get a new roof done on our house. It’s going to be ridiculously expensive, and both Vicki and I have had moments of self-doubt about committing to this. But one thing I wanted to get out of this, as well as “not having water leaking inside the walls that we don’t discover until the plaster starts failing”, is a great drone video.

One thing I’ve seen before, and what I want to emulate, is a video where the drone flies circles around the house being worked on, but with it doing it as a sort of time lapse, maybe taking a flight every hour or so while the work goes on. In my mind, I see it as doing about a turn and a quarter to a turn and a half, and then fading into the next flight, and so on.

My first problem is getting it to do consistent circles. The problem is that the DJI Air 3 can do waypoint flights, but there isn’t a “do a circle at this distance from this POI” waypoint option. I found a site that would generate a bunch of points to define a flight around a point, but it ends the flight at the 16th point, rather than completing the flight back to the start. When you edit the waypoint flight on the controller, you have options for what to do at the end of the flight, and one of the options is to fly to the start point. Jackpot, you might think. But no, when it does, the drone points toward the final point, and flies towards it, instead of sidestepping to it. I got a smoother and more complete circle using the QuickShots circle, but since you have to highlight an object to circle around with your finger on the screen, I have worries about how repeatable it will be.

My second problem is that originally I was thinking in terms of doing a hyperlapse. The waypoint editor in the Hyperlapse is simpler than the main waypoint editor for some stupid reason – you can’t define a POI to point the camera at, for instance. The instructions for the site that generates the waypoint file involve you connecting the controller to your computer and copying the KML file on top of another waypoint file. But I haven’t seen any instructions on how to do that with the waypoint editor in Hyperlapse. So I’ve been experimenting with the timed exposure mode where it just takes a photo every two seconds and then I combine them into a video in Final Cut Pro X. For my first several tests, I was trying to use manual exposure so I could use a really slow shutter speed to get a tiny bit of motion blur. But yesterday when I was doing these experiments it was partially cloudy, and every time the sun peaked out from behind a cloud the exposure blew out. I even tried pre-processing all the frames through Adobe Photoshop Elements and that helped, but that didn’t fix the blow out. In retrospect I probably should have set the exposure when the sun was out.

Today I tried again, but this time I used automatic exposure. I think the results were better. But again, today was sunny with a few clouds, so it was probably a simpler exposure problem. When clouds came over, it did get a bit darker.

The third problem was that when you create a hyperlapse in Final Cut Pro, the video isn’t stabilized. Weirdly, in Final Cut Pro X you can’t stabilize a compound clip, you have to export it as a video, re-import it, and then stabilize the newly imported video. And it’s been pretty windy while I’ve been doing these tests, so even with the stabilization, the resulting video was not very stable. I was starting to get less in love with the idea of a hyperlapse. I’m starting to think that what I want to do is shoot a video, and then speed it up. I tried that out (with a QuickShots circle) and I really like the result – the video is very smooth, and it had much more consistent exposure.

So all I have to do is solve the problem of making a waypoint file with a double circle, and make it repeatable. I’m hoping I might be able to edit the XML of the KML file manually. I guess that’s tomorrow’s testing.