Roxen Application Launcher
Roxen Application Launcher is a program that lets the user use any
program to edit files handled SiteBuilder. For this to work
SiteBuilder must be able to share files with the users'
computers. This might require an external file sharing program, like
Samba.
When the user chooses to edit a file SiteBuilder copies the file to
a special shared directory and sends a response to the user's web
browser. The response has the content type
application/x-roxen-launcher and contains the path to the
file and the content type of the file. If Roxen Application Launcher
has been installed the web browser will recognize the content type
application/x-roxen-launcher and start Roxen Application
Launcher. Roxen Application Launcher will look at the response and
launch the appropriate editor program for the content type in the
response, with the path to the file as argument.
Several steps are necessary for this to work:
Installing Roxen Application Launcher
Roxen Application Launcher must be installed on each user's
computer. Roxen Application Launcher exists in a Windows and a Unix
version. Both versions can be found in the tools/ directory
of the Platform distribution.
The Windows version is distributed as an self-extracting
.EXE file. It should install Roxen Application Launcher as
well as do the necessary configuration for it to be recognized by any
web browser. It is however often necessary to configure it further,
see the Local editors section for how.
The Unix version is a simple pike script,
tools/roxen_launcher.pike. It needs to be installed on the
Unix system and each web browser must also be installed to recognized
it. In Netscape this is done in the Navigator/Applications part of
Edit/Preferences. The MIMEType should be
application/x-roxen-launcher, the application
/usr/local/bin/roxen_launcher.pike %s.
The Unix version is configured through .roxen_launcherrc
files. By default the user's home directory as well as
/etc/ will be searched for a .roxen_launcherrc
file. See the .roxen_launcherrc section for the syntax.
Local editors
The Local editors wizard is used to create registry
configuration files for the Windows version of the Roxen Application
Launcher. The user needs to download such a file and doubleclick on it
to install that configuration.
Local editors
The configuration contains a content type followed by either a file
extension or the full path to a program. Wild cards can be used to
some extent, the content type image/* and */*
are valid but not image/g* nor */gif.
Roxen Application Launcher will match the content type it got from
SiteBuilder against the content types in the configuration, one line
at a time. When it finds a match it will try to start the appropriate
application. If a file extension is given it will try to start the
application that handles that file extension. If a path is given it
will try to start that program.
The Download editor button will download the
.reg file for the current configuration. Doubleclicking on
the .reg file will read the configuration into the
registry.
The reason that the installation needs to be done in the registry,
rather than being part of the editor profile, is to gain security. The
web server should not be able to start any program on the user's
computer, only the programs that has been configured as editors.
.roxen_launcherrc
The .roxen_launcherrc file is used to configure the Unix
version of the Roxen Application Launcher. As with most Unix
applications each user can have their own configuration. A sample
.roxen_launcherrc file can look like this:
text/* emacsclient $nfs
image/* gimp $nfs
Each line contains a content type followed by the program that should
be used to handle that content type. The content type use the same
limited type of wild cards as the Windows version. $nfs will be
replaces with the path to the file that are to be edited.
Editor profiles
The bulk of the configuration are done in the Editor
profiles wizard. Here several different editor profiles can be
configured, each user can then choose one of those profiles. It will
however usually be sufficient with one editor profile.
Editor profiles
The support for local editors comes in two flavors, anonymous
and named. Anonymous is used for users that exist in
SiteBuilder, but not on the operating systems user database. Named is
used for users that are imported into SiteBuilder from the operating
systems user database.
Anonymous support works by writing the shared files to a directory
that is not readable to anyone. SiteBuilder will create a subdirectory
with each file in. That sub directory will be readable to anyone and
the file both readable and writable to anyone. But the name of the sub
directory will be known only to the user. It is very important that it
is not possible to find out the name of the sub directories by listing
the shared directory.
The anonymous support are configured through the following
variables:
- Enabled
-
Whether the anonymous support should be enabled at all.
- Directory
-
The directory where SiteBuilder will create its sub directories. The
directory must be created by the administrator and it should not be
possible for anyone to read it, not even the SiteBuilder user. The
SiteBuilder user must however have write permission to the directory,
so it can create sub directories there.
- SMB path
-
The path to the directory using Windows file sharing. If running on
Unix a file sharing program such as Samba will have to be used
to make it available. The sharing should be configured to be available
without password.
- NFS path
-
The path to the directory using NFS. Only necessary if the Unix
version of Roxen Application Launcher is used.
- AppleShare path
-
The path to the directory using AppleShare. Some sort of AppleShare
sharing software will have to be used. Only necessary if the Macintosh
version of Roxen Application Launcher us used.
Named support works by writing the actual files with as user who owns
them. This will only work for users that has been imported from the
operating system to SiteBuilder. Furthermore SiteBuilder will have to
be run as root, otherwise it will not be able to create files as
another user.
SiteBuilder will create a sub directory for each user who uses the
named support. These sub directories will be created with the correct
file permissions so that only the appropriate user has access to
it. Within each sub directory a directory structure matching the site
will be created.
The named support are configured through the following
variables:
- Enabled
-
Whether the named support should be enabled at all.
- Directory
-
The directory where SiteBuilder will create its files. Unlike the
anonymous support this directory may well be readable by anyone. File
accesses will be protected by the operating systems access control
system.
- SMB path
-
The path to the directory using Windows file sharing. If running on
Unix a file sharing program such as Samba will have to be used
to make it available. The sharing should be configured so that each
user has to log on with user name and password.
- NFS path
-
The path to the directory using NFS. Only necessary if the Unix
version of Roxen Application Launcher is used.
- AppleShare path
-
The path to the directory using AppleShare. Some sort of AppleShare
sharing software will have to be used. Only necessary if the Macintosh
version of Roxen Application Launcher us used.
When the anonymous and/or named directories has been configured it is
time to configure one or more editor profiles. Usually one editor
profile will be suitable. Each editor profile contains one or more
editor definitions. Usually one editor definition is enough. The
reason for more than one editor profile and more than one editor
definition is to enable SiteBuilder to be user together with thin
client solutions like WinFrame or Tarantella.
Each editor profile contains a name and whether it is valid for
anonymous, named or both anonymous and named access.
Each editor definition contains the following variables:
- Valid for content types
-
This is a comma separated list of content types that can be edited by
this editor definition. The now familiar limited type of wild cards can
be used. Each site will probably need to configure this to reflect the
file types used on the site.
- Output file content type
-
The content type of the file sent to the browser when the user chooses
to edit a file. Should be application/x-roxen-launcher
if the Roxen Application Launcher is used.
- Output file contents
-
The contents of the file sent to the browser when the user chooses
to edit a file. If the Roxen Application Launcher is used the file
contents should be:
nfs=#nfs#
smb=#smb#
appleshare=#appleshare#
content-type=#content-type#
|