Request Software
If you use any software that has to do with the RADIANCE or ESP-r building
simulation packages, and would like us to include it on LEARNIX, please read
this page before putting in your request.
Our requirements might seem a lot, but they are really just good practice
that are met by most well-written software anyway. If this is all a bit
technical for you then don't panic. The developer will know what to make of
it all.
General Requirements
The software must:
- Run under GNU/LINUX;
- Be available under an Open Source license. If it is not, and the author
wishes it to be included in LEARNIX, he must give us express permission to do so;
- Be of general interest to RADIANCE or ESP-r users;
- Be available in English;
- Be relatively small to install, including all extra dependencies required.
Space is very limited on a CD-ROM.
- Come with documentation;
- Provide an example case or demo;
- Must not require Internet access to run;
- Must have a web site we can link to. A post on some obscure Greek mailing list
is not good enough;
- Must give the impression that it is actively maintained and has some sort of user
base. Indicators would be changelogs, forums, news posts etc. on the
package's web site and/or post on the radiance or esp-r mailing lists.
Installation
These are our preferences for add-on software, from 'highly desirable' to 'you got a lot
of convincing to do':
- The software is available as deb packages from the main Debian repos
- The software is available from a third-party repo, but all dependencies are
available on the main Debian repo
- The software is available from third-party repos, with all dependencies being
available on the same or another third-party repo
- The software is available as source tar ball, and all build dependencies can be
satisfied from the main Debian repo
Additional Requirements
Depending on how the software is available, additional requirements are made.
Extra Requirements for DEB Packages
- Package dependencies must cleanly resolve with packages from the same third-party
repo, or with packages from Debian stable or testing (not unstable).
Extra Requirements for Packages in Source Code
- The compilation must only require Open Source compilers and libraries that
are available in the standard Debian repos;
- The software must be happy to reside under /usr/local/;
- The installation paths must be configurable. We use GNU
stow
to keep the system tidy and consistent between releases. For example, the installation
of software mysoft is into /usr/local/stow/mysoft/.
This allows us to implant the entire /usr/local/stow/
directory into the next LEARNIX, keeping the location of all documentation etc.
identical. A fresh installation of the software will then overwrite any out-of-date
files;
- The software must be fit for a multi-user system. That means that user-specific
configuration files must be stored in the user's home directory, not anywhere else
on the system. The softare must not attempt to write to any files outside of $HOME.
- The /usr/local/bin/ directory is reserved for executable files. Any configuration, images
etc. should be in /usr/local/lib/;
- There must be a test that we can run to verify the software is correctly installed.
This test may be a shell script, makefile, or just a list of (few) instructions, making
use of the example case.
Example
This would be the ideal scenario for software not availble as deb packages.
Installation of mysoft with GNU automake and stow:
# mkdir /usr/local/stow/mysoft
# ./configure --prefix=/usr/local/stow/mysoft
# make
# make install
# cd /usr/local/stow
# stow mysoft
Directory structure for mysoft:
- binaries
- /usr/local/bin/mysoft -> /usr/local/stow/mysoft/bin/mysoft
- libraries
- /usr/local/lib/mysoft/ -> /usr/local/stow/mysoft/lib/mysoft/
or
/usr/local/lib/ -> /usr/local/stow/mysoft/lib/
- documentation
- /usr/local/share/doc/mysoft/README -> /usr/local/stow/mysoft/share/doc/mysoft/README
- man pages
- /usr/local/man/man1/mysoft.1 -> /usr/local/stow/mysoft/man/man1/mysoft.1
But...
Having said all this, please don't take this as an Amen. The most important point
is that you must give us the impression of the software being supported and having some
longevity. Your best starting point would be to grab a copy of LEARNIX or KNOPPIX and try to
install your software on it. This is exceptionally simple due to the UNIONFS, which
allows you to make alterations to the system you booted from the CD-ROM, although
those changes will, of course, be lost when you re-boot. But do read up on making
persistent changes and home directories on KNOPPIX. You know where...
Last modified 26 October 2008, 14:48 GMT