On Thu, May 26, 2011 at 8:29 AM, sawyer x <xsawyerx@gmail.com> wrote:
The definition of a share directory when writing a web application is a place to put stuff that you really do need to edit on the server, and sometimes frequently. Also it's files you sometimes need to set up a back up for (such as SQLite DBs, etc.) and that's when sharedir is useless. For example, how often do you edit apache config files? I'll be damned if they're all lines up in a repository that you deploy automatically now and then to /etc/. Same goes for your static files, they aren't sitting in /usr/share/yourapp/static/.
I understand that this might get tricky for a regular web app. My current use case is for a modular system, where one of the plugins adds a HTTP-based API + Admin web site. The configuration is mostly done by the modular system (I'm still figuring out how to override Dancer::Config or at least convince him to use my own tailor mode .yml config file, but that is for another post), so I don't even want end users messing with the configuration sent with the CPAN module. I basically need a way to make sure that the views/ and public/ directories are packaged properly and when installed with a regular CPAN client are placed correctly where Dancer expects them. Maybe the solution to my problem is not the solution to yours, given that the scope is smaller, but I would appreciate any thoughts on this. I'll keep playing with this to see if I can get something I can use. I'm testing this with a CPAN::Mini mirror and CPAN::Mini::Inject. Thanks in advance, -- Pedro Melo http://www.simplicidade.org/ xmpp:melo@simplicidade.org mailto:melo@simplicidade.org