Subscribe to
NSLog(); Header Image

NetPBM + MovableType = Huh?

So, sick of having to fire up Potatoshop for every little image resize, I thought I'd try out MovableType's support for NetPBM. I enabled it in mt.cfg and now I get:

Resource temporarily unavailable: write() at /usr/libdata/perl/5.00503/IPC/Run/ line 582

Inside the parentheses in write() is a bunch of gibberish (I imagine the binary data for the image I am attempting to resize).

Joy. It seems to have trouble writing out the data (a resized image, I imagine), but it doesn't bother to tell me where it's trying to write. Line 582 is:

my $r = eval { IPC::Run::get_more_input() ; } ;

It's a few lines from the end of the file.

MovableType is actually quite frustrating. I sometimes experience massive slowdown, and sometimes rebuilds of an entry take over 1 minute, timing Safari out, yet I have seen no way to "peek inside" to see where it's sp all of its time: rebuilding a category page? The index? Scanning remote blogs for TrackBack URLs? Just recently I set "SafeMode" to 0 (off) to try the "mt-view.cgi" thing and saw absolutely nothing different. I found no documentation on what "mt-view.cgi" or "" do.

At any rate, if anyone can help with the thing above, please email me. I'm running FreeBSD. Thank you.

8 Responses to "NetPBM + MovableType = Huh?"

  1. you might try to modify the code so that it would write the data to a file and then write into the document (html) the source of that document relative to a specific directory. this may allow you to have a bunch of images that have something like 000125_1.jpg and then the links to those in your entries (like say 000125_1.jpg would be the first image in entry 000125) of course, i've not looked at the code and am talking out of my ass about what's possible. then again, you may also want to be able to dynamically resize them depending on if you change your "content area" and want to make the images bigger or smaller based on the width of the content area.. just some thoughts 😉

  2. The error message is the strerror text for EAGAIN, which write(2) can return under certain circumstances. This typically occurs when doing non-blocking I/O when the buffer you're writing to can't take any more data right now. The easiest workaround is to loop and call write(2) again, or perhaps to do so after a brief wait for some space to open up in the buffer.

    Of course, none of that helps you, but it's what's happening. 🙂 You're running an ancient version of Perl, though; you might want to upgrade to 5.6 or 5.8 and see if that helps.

  3. I installed Perl 5.6.1 today and now the resize options don't even appear after uploading an image. I stress again: MovableType is poo in this regard: it provides no documentation on why things fail, where they fail, and so on. Why do the resize options appear when I'm using Perl 5.00005.03 (but give the error) but not when I'm using 5.6.1?

    WTF? I'm willing to pay (a bit) if someone can give me the answer to get this working. IM me at "iacas" on AIM if you want.

  4. Erik, if you upgraded Perl then Perl broke MT as the libraries that you previously installed are in a directory with the version number of the previous verision of Perl and it's looking in a dir with the current version.

    A simple reinstall the libraries should fix it. I'm an old-school Perl guy, so email me if you hit snags. I have all the image stuff working on my site.

  5. Erik,

    DId you solve this problem in the end? I have the exact same problem and upgrading my Perl is out of the question.

  6. No, I didn't find a solution. 🙁

  7. My first ever entry was called I Hate Perl. I don't really hate Perl, but man, sometimes I'm just not a big fan. The CLI...

  8. More F1!

    Netpbm and movabletype woes! (plus a little F1 at the same time).