2X Linux Terminal Server and Perl

Posted by Stuart Herbert @ 8:50 AM, Tue 28 Nov 06

Filed under: NX / FreeNX

2 Comments

When you port a package to Gentoo, the “normal” course of action - and the one that I teach when I’m mentoring - is to do what upstream does as closely as possible. But for the 2X Linux Terminal Server, I’m thinking of breaking that advice, just this once.

I have the bundled copy of Perl building, but I’m not sure it’s practical to use it. We’ll basically end up duplicating dev-lang/perl, and that’s more maintenance than I can take on.

The only reason I can think of for using the bundled Perl is that the perlcc installed as part of our “system” Perl 5.8.8 is currently broken. It can’t compile nxnode (I haven’t managed to try nxserver yet); when you try, it reports that it can’t resolve POSIX::SIGHUP et al. I knocked up a tiny test script to print POSIX:SIGHUP, and that works fine when run via the Perl interpreter. Try to compile it, however, and perlcc segfaults.

My knowledge of Perl is not what it used to be, but for the moment, my take on it is that we can’t rely on perlcc. But, do we need to?

Now that the code is GPL’d, I’m wondering if there is any practical reason to compile these scripts any more? (Raphael or any Perl wizards - can you think of a reason why we still need to compile these scripts?)

Unless there’s a compelling reason otherwise, I think the way forward is to patch server/nxnode to create and install normal Perl scripts to be interpreted by the “system” copy of Perl. That’s what I’m going to work on this week, unless someone can point out why it’s a bad idea.

2 Comments

  1. Raphael Borg Ellul Vincenti says:
    November 28th, 2006 at 10:22 am

    I totally agree with you on not packaging a local copy of perl as well as not compiling against perlcc.

    To my knowledge, the only reason for compiling everything and for packaging a private copy is to make the life of a company supporting multiple distributions easier. That _WAS_ the heritage of the NX server however we would like to change that faith.

    The 2X NX server should be bundled by distributions using the distribution’s own components. This makes the life of the distribution easier as well as tests the components of the server against different library versions thus (hopefully) tracking down some regressions. This didn’t make sense at all when it was a closed source project.

    The mandate from 2X is to make the TerminalServer integrate as much as possible with the components of the distribution. I am aware that the packagers of both Kanotix and Ubuntu are going down the same road of trying to build against the distro libs rather than private copies.

  2. John Thompson says:
    November 28th, 2006 at 6:38 pm

    Good Luck guys. I’ll grab it and try it out from the overlay as soon as your postings say go! Its cool that the 2X folks are trying to be distro specific. Thats one of the reasons I’ve stuck with Gentoo, I’m too lazy to learn another distro, and they always seem to be just different enough to be annoying…

Calendar

November 2006
S M T W T F S
« Oct   Dec »
 1234
567891011
12131415161718
19202122232425
2627282930