Le jeudi 06 mai 2010, Andreas Gohr a écrit : > > Well, then this will be up to the users, and explained on the > > documentation of the Debian package, with something like: « some plugins > > will break, to fix them do that and that ». > > Sounds like a bug in the Debian Package to me ;-) Yes, but it is the choice between a bug and another one, see below. > Everything below data/lib/ is possibly to be accessed from the web. > That's the distinction between inc/ and lib/. See > http://www.dokuwiki.org/devel:dirlayout Okay, thank you. However, there is a difference between being called externally (which only a direct path from the web docroot), being used by a DokuWiki component (which requires a direct path from the DokuWiki installation directory or a configuration variable), and, on my problematic case, the following mix: being called externally and using a DokuWiki component (which require a reverse path to the DokuWiki installation directory). > IMHO, the Debian package should not separate the data/lib directory. Yes, but… This is what used to be done: /usr/share/dokuwiki/lib/. And, as plugins are an interesting feature of DW, most users were then installing plugins to /usr/share/dokuwiki/lib/plugins, which is a location that is not to be touched by a user but controlled by the package manager. That was a violation of the Filesystem Hierarchy Standard, which was not perceived as safe by the users, as it was possible for the package manager to overwrite user modifications… > BTW, regarding symlink compatibility I opened an issue for the captcha > plugin: http://github.com/splitbrain/dokuwiki-plugin-captcha/issues/issue/1 Thank you. I think realpath() here is just useless, as what it does (path resolution) would be done the same way by the open() syscall from require() anyway. But fullpath(), that behaves like a shell's internal path resolver, would be perfect. Now, in my installation layout, the problem for the plugin would be to find inc/init.php, where fullpath() is defined. This looks like an endless problem, unless all scripts that depend on DokuWiki functions are called through a wrapper... -- Tanguy Ortolo