External CSS files on Iliad. A problem with symlinks.

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
2 messages Options
Reply | Threaded
Open this post in threaded view
|

External CSS files on Iliad. A problem with symlinks.

Bèrto ëd Sèra
Hi!
I'm trying to use an external CSS stylesheet on Iliad. This would make
things much easier with the designers that help the project, as they
could simply edit their stuff as they usually do.

I'm trying to adapt a basic code snippet published by Joachim Jaeckel
at http://smalltalk.gnu.org/blog/joe/first-steps-iliad-web-development-gnu-smalltalk-and-iliad
(very useful guide! Thanks :)

I soon found out that the message had changed, because the css wasn't
showing up in the page source code, so I modified it like this, and I
had the stylesheet in the page.

    updatePage: aPage [
      <category: 'building'>
      super updatePage: aPage.
      aPage head title: 'Ambaradan - Hello World application!'.
      aPage head stylesheet href: '/stylesheets/ambaradan.css'.
    ]

Anyway, the sheet was empty, and trying to open it with firebug I got
a "Failed to load source for:
http://localhost:3000/stylesheets/ambaradan.css" message.

After a bit of hunting I realized that my Public directory was NOT
containing the actual .css, but just a symlink to it, as I had reused
part of the make_packages.sh script in the Iliad distro, which does a
symlink.

Symlinked .ccs do not appear to work, so now I modified my
make_packages.sh script to do a

if [ -d More/UI ]; then
        for i in `find More/UI/stylesheets -type f | grep -v '\.svn'`
                do
    echo "copying $i to Public..."
                        cp $i Public/stylesheets/
        done
        for i in `find More/UI/images -type f | grep -v '\.svn'`
                do
    echo "copying $i to Public..."
                        cp $i Public/images/
        done
        for i in `find More/UI/javascripts -type f | grep -v '\.svn'`
                do
    echo "copying $i to Public..."
                        cp $i Public/javascripts/
        done
fi

And at this point I do have working ccs. I suppose people trying to
use the iliad-ui.css will run into the same problem, so I published
what I found.

Berto


_______________________________________________
help-smalltalk mailing list
[hidden email]
http://lists.gnu.org/mailman/listinfo/help-smalltalk
Reply | Threaded
Open this post in threaded view
|

Re: External CSS files on Iliad. A problem with symlinks.

Stefan Schmiedl
On Wed, 29 Jul 2009 01:32:40 +0300
Bèrto ëd Sèra <[hidden email]> wrote:

> I'm trying to adapt a basic code snippet published by Joachim Jaeckel
> at http://smalltalk.gnu.org/blog/joe/first-steps-iliad-web-development-gnu-smalltalk-and-iliad
> (very useful guide! Thanks :)

extremely useful, I agree. It got me over several hurdles when I started
working with Iliad a while ago.

> I soon found out that the message had changed, because the css wasn't
> showing up in the page source code, so I modified it like this, and I
> had the stylesheet in the page.
>
>     updatePage: aPage [
>       <category: 'building'>
>       super updatePage: aPage.
>       aPage head title: 'Ambaradan - Hello World application!'.
>       aPage head stylesheet href: '/stylesheets/ambaradan.css'.
>     ]

Joachim wrote his code and blog before "head" existed.

>
> Anyway, the sheet was empty, and trying to open it with firebug I got
> a "Failed to load source for:
> http://localhost:3000/stylesheets/ambaradan.css" message.
>
> After a bit of hunting I realized that my Public directory was NOT
> containing the actual .css, but just a symlink to it, as I had reused
> part of the make_packages.sh script in the Iliad distro, which does a
> symlink.

I rationalized that creating symlinks and zipping the directory is easier
on the disk than copying, zipping and removing actual files.

>
> Symlinked .ccs do not appear to work, so now I modified my
> make_packages.sh script to do a

Are you sure that the symlink was pointing to an existing file?
Having a symbolic link in the static files part works for me.

Wild guess: You _might_ run into trouble with symlinks, if you're
using an apache proxy handling existing files by itself, when the
file is a symlink and you have not allowed apache to follow it. I
would be surprised, if Iliad/Swazoo contained code to that effect.

s.


_______________________________________________
help-smalltalk mailing list
[hidden email]
http://lists.gnu.org/mailman/listinfo/help-smalltalk