Moshe Yudkowsky wrote:
Ross Gardler wrote:

 > Moshe Yudkowsky wrote:
 >

...

 > check-skin:
> Unable to find dir /usr/local/share/forrest-current/main/webapp/skins/disaggregate > Unable to find file /usr/local/share/forrest-current/main/webapp/skins/disaggregate.zip > Unable to find dir home/moshe/web/disaggregate/site/src/documentation/skins/disaggregate


This is strange. The final line is missing the leading "/" on the pathname, even though I've set

project.skins-dir=${project.content-dir}/skins

I've even un-set it to see what would happen; after all, I'm really just using the default value. Even if I use the entire pathname explicitly in project.skins-dir, I still get this "leading path name" error.

How did you unset it? Making it blank doe not "unset" it, it sets it to null. To "unset" it you need to comment it out.

This error "smells" like it's using default values and doesn't see my skins-dir setting; not only that, but it fails to find my skin even though it's where it should be by default! Please note that, as per the forrest.properties default structure, skins-dir is set *after* the .skin is set, but IIRC the properties file is parsed in one gulp and that shouldn't be a problem.

If it were using the default settings I would expect it to be working since it has worked for every other user ;-)

There is something wrong with yout config, we just need to find it.

* Question: what's this project.skins-dir error?

Can you provide your forrest.properties file, that may help.

 >> I also have other issues:
 >>
>> * I have set forrest.skins.descriptors to file://./src/documentation/skins/skins.xml, but the system still attempts to fetch http://forrest.apache.org/skins/skins.xml.
 >
 >
 >
> That should not happen. It sounds like it is using the default setting provided by forrest in default-forrest.properties. Can you please veryify if this is the case.


Here's the log printout that I get when I use

forrest.skins.descriptors=file://./src/documentation/skins/skins.xml

instead of leaving things blank:

 > fetch-skins-descriptors:
 > fetching descriptor: file://./src/documentation/skins/skins.xml
 > Getting: file://./src/documentation/skins/skins.xml
> Error getting file://./src/documentation/skins/skins.xml to /usr/local/share/forrest-current/main/webapp/skins/skins-1.xml > Unable to find /usr/local/share/forrest-current/main/webapp/skins/skins-1.xml
 > Error in class net.sf.antcontrib.logic.IfTask



If I use the complete path name I get a very explicit error:

forrest.skins.descriptors=file:///home/moshe/web/disaggregate/site/src/documentation/skins/skins.xml

and then:

 > fetch-skins-descriptors:
> fetching descriptor: file:///home/moshe/web/disaggregate/site/src/documentation/skins/skins.xml > Getting: file:/home/moshe/web/disaggregate/site/src/documentation/skins/skins.xml > Error getting file:/home/moshe/web/disaggregate/site/src/documentation/skins/skins.xml to /usr/local/share/forrest-current/main/webapp/skins/skins-1.xml > Unable to find /usr/local/share/forrest-current/main/webapp/skins/skins-1.xml
 > Error in class net.sf.antcontrib.logic.IfTask


This skins.xml file is the off-the-shelf file I d/l from the Internet.

did you do forrest -verbose to see what the actual error is? I am guessing that it is a write error to the disk.

If I use

forrest.skins.descriptors=http://forrest.apache.org/skins/skins.xml

I get this error log:

 > fetch-skins-descriptors:
 > fetching descriptor: http://forrest.apache.org/skins/skins.xml
 > Getting: http://forrest.apache.org/skins/skins.xml
> Error getting http://forrest.apache.org/skins/skins.xml to /usr/local/share/forrest-current/main/webapp/skins/skins-1.xml > Unable to find /usr/local/share/forrest-current/main/webapp/skins/skins-1.xml
 > Error in class net.sf.antcontrib.logic.IfTask

Same error.

There is no skins-1.xml mentioned in any config file in either the distro or in my various files.

Forrest can use multiple skins.xml files (i.e. from multiple vendors). Therefore when it downloads each one it renames them as skins-1.xml, skins-2.xml etc. Since it appears that it cannot write to the directory required then the file does not exist.

I will work with the distro-created, pure "seed" for a while and see if I can get that one working; but in the meantime, if you (or someone else) has ideas, I'd appreciate them.

So does:

mkdir test
cd test
forrest seed
forrest site

work?

Ross