Flame has asked for the wisdom of the Perl Monks concerning the following question:

I have a bit of a problem, for reference, see Installer Program.

The problem is, most of the people running my 'installer', won't have acess to telnet etc, and many hosting companies make webmasters go through week long processes to get any single module installed. (Then there's the fact that the vast majority of probable users are too dumb to proprly install it manually.)

So here's the core of the question: What do I do if CPAN wasn't set up on the host? (Of course it should be there, but what if it's not installed?)

I've consiered several alternatives, each one more rediculous than the one before it, but I can't seem to come up with anything.


One idea I considered was taking my own server and turning it into a nexus or routing station where the installer would retrieve a dynamicaly created archive of the required modules and then run the normal make procedure on each of them... but then there was the problem of what compression modules would be available on every server...

Thanks for any ideas, suggestions, or pointings out of anything I obviously forgot.

"/me wishes that the average user had a clue..."



"Weird things happen, get used to it."

Flame ~ Lead Programmer: GMS

  • Comment on Installing Modules through Web Interface?

Replies are listed 'Best First'.
Re: Installing Modules through Web Interface?
by dwiz (Pilgrim) on Jun 01, 2002 at 02:33 UTC
    Have you tried the CPANPLUS module at all?
    Perl.com article here. Main site here.
    An idea might be to try and write a web based interface for the module.

    -dwiz
      I know of CPANPLUS, however I also know it isn't part of the standard distrobution, so chances are, it's not installed...

      Please, expand on the 'web based interface for the module.'



      "Weird things happen, get used to it."

      Flame ~ Lead Programmer: GMS

        Ok my proposed solution isn't going to completely solve your problem, but I don't know that there is something that can. My solution also involves jumping through a few hoops.
        There is an interface to cpanplus called CPANPLUS::Backend.
        You would have to read the docs to find out how it all works. You could then write a cgi that would supply the necessary values to the backend module and then displays the info to the user for them to do the next step. There is also a interface to the config of the module although I think it needs to be set via the command line for the first time. You may be able to get around this though once again check the docs. If you then are one way to install the module would be using a non traditional method, (i.e. not using make) by just uploading it to a directory and then doing a use lib in your cgi (Probably not the best idea though). Your script would then use the module; do the config and prompt the user through the cgi as necessary. Alternately go through the process of having it installed properly first and the write your cgi without having to worry about the base config.It would take some setting up but I think it could be done.

        I know this solution has some holes and a few ifs but no telnet or ssh can restrict the options.
        My apologies for not having something better.


        -dwiz
Re: Installing Modules through Web Interface?
by alien_life_form (Pilgrim) on Jun 01, 2002 at 11:13 UTC
    Greetings,

    Seems to me your schema is amenable to suffer heavy (if not fatal) blows from being unable to access the client per installation. (Unless, that is, your only targes are only, say, win32 machines with asperl 5.6.1 630, or a similarly tightly focused group)

    I would expect it to be blocking for Xs stuff, but I think I remember many more libraries that refused to "make" if some crucial dependencies were missing...
    So it looks to me that you'd be better off doing binary distributions - à la PPM - of the packages you need AND install those. Then whatever assumption you are making on the target client will be explicited in the architecture of the package.


    Cheers,
    alf


    You can't have everything: where would you put it?
      I'm not sure I understood what you meant there, but currently I'm combining PPM and CPAN in an attempt to get it to install (Anything but windows, or if PPM fails to load, assume CPAN), it's what to do when CPAN isn't an option thats the problem...



      "Weird things happen, get used to it."

      Flame ~ Lead Programmer: GMS