Beefy Boxes and Bandwidth Generously Provided by pair Networks
good chemistry is complicated,
and a little bit messy -LW
 
PerlMonks  

Re^2: Where to put the bits and pieces - Installing a complex CPAN dist

by Hercynium (Hermit)
on Sep 19, 2008 at 16:11 UTC ( #712544=note: print w/ replies, xml ) Need Help??


in reply to Re: Where to put the bits and pieces - Installing a complex CPAN dist
in thread Where to put the bits and pieces - Installing a complex CPAN dist

Thank you for your input - Debian tends to be my "gold standard" for correct packaging, and it seems that most of the Perl community agrees.

To try to clarify, the demo scripts are just that - scripts, and they use config files that the modules will look for on the system (the search path is *fully* configurable). Each script has it's own config file.

In the case of this distro, applications written using the modules will need to load config files and so I think the appropriate location is in /etc/$distname or /usr/local/etc/$distname. System defaults (like the search-path and various default behaviors) are stored in a module generated by Module::Build, but those can be overridden by any application's config.

I'm wondering if I should put the demo configs under an etc directory as well, or should they be sequestered under a /usr/share sort of place. Perhaps I should put them under /usr/share and install into /usr/bin a script that the user could run later that copies the demo configs and scripts from there to /etc?

After packaging it correctly, my goal for this distro is to make it as *easy* as possible for people to use and try out. It's been used in production for years now, but the author always custom-installed it, usually placing things wherever seemed good for that particular instance. Now we both want to see this software with a broader user-base, and my opinion is that a distro *must* install properly, right from CPAN, or 99.9% of users will give up and never look back. "Properly" includes putting things in places that are accessible and expected by the users and won't annoy sysadmins who run a tight ship (ARRRRRR!)


Comment on Re^2: Where to put the bits and pieces - Installing a complex CPAN dist
Replies are listed 'Best First'.
Re^3: Where to put the bits and pieces - Installing a complex CPAN dist
by LesleyB (Friar) on Sep 20, 2008 at 23:57 UTC

    It's always difficult to really be sure but I think the standard form is to put demo scripts and their config files in /usr/share/doc/<package-name>/demo and /usr/share/doc/<package-name>/demo/conf directories. I think tucked away with the default config in /etc would be the wrong place - not even exim4, spamassassin or clamav do that.

    I think that /etc or /usr/local/etc is the right place for an active config or set of configs for an installed system. (My /usr/local/etc happens to be empty on two systems.)

    Pod could always point out the existence of the /usr/share/doc/<package-name>/demo directories and even discuss their contents as well as that of the default install

    I think that is fairly general Linux behaviour - at least what I have seen of Debian, SuSE, Mandriva and Ubuntu - and so not entirely limited to Debian. The FHS says /usr/local/etc is for host specific configuration files for local binaries. I don't know if your application falls into that category.

    Nightmare with all the different possibilities, though -- I can't imagine where things go in Windows... or a Mac .

    Good luck

Log In?
Username:
Password:

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://712544]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others drinking their drinks and smoking their pipes about the Monastery: (4)
As of 2015-07-28 06:51 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    The top three priorities of my open tasks are (in descending order of likelihood to be worked on) ...









    Results (252 votes), past polls