D Shared Software System version 0.2 released!
Gregor Richards
Richards at codu.org
Tue Nov 14 23:47:31 PST 2006
I have just released version 0.2 of DSSS, the D Shared Software System.
I've added support for mirrors since 0.1, though the actual mirror
infrastructure isn't in place yet.
Since DSSS 0.1 distribution had some issues, I'll mention again that
part of DSSS' purpose is to be an analogue to Perl's CPAN or Ruby's Gems.
DSSS is available from http://www.dsource.org/projects/dsss .
NOTE: Due to some changes in DSSS conf files (and specifically DSSS'
dsss.conf), you can't use dsss net to update from DSSS version 0.1 to
version 0.2
Here's everything you need to know:
The D Shared Software System
----------------------------
DSSS, the D Shared Software System, is a tool to ease the building,
installation, configuration and acquisition of D software.
Building
--------
There are plenty of tools for building D software. There's bud (previously
build), upon which DSSS is based, the antiquated make, and a plethora of
other
tools capable of building D software. DSSS intends to be more generally
useful
than any of them.
* DSSS eliminates the need to keep lists of source files, figuring
them all
out by imports in source. It will even link in the proper libraries
automatically.
* DSSS can transparently build libraries from any D package.
* DSSS automatically generates .di (D import) files for libraries
which cause
code using the library to link it in automatically.
* Since DSSS uses bud, DSSS has all of bud's features as well.
* DSSS can automatically choose names for libraries generated from D
packages
which will not conflict with libraries from other sources, or
incompatible
compilers. So you do not need to concern yourself with library names.
Installation
------------
As compared to building software, there are few tools capable of
installing D
software well.
* DSSS maintains a centralized repository of installed software, such
that you
can use it in your software trivially. .di files and library files
are all
managed by DSSS, as part of its effort to make imports map to
library files
automatically.
* DSSS keeps track of all of the software that has been installed through
DSSS, so any of it can be uninstalled easily.
Configuration
-------------
DSSS' build configuration file (dsss.conf) allows full use of version
statements from D. So, you can fine-tune your software to build
precisely what
is necessary for the host system.
Acquisition
-----------
In the spirit of Perl's CPAN or Ruby's Gems, DSSS has a central
repository of
sources for D software. It maintains a list of software packages available,
where they can be acquired, and what packages/modules they provide.
Because it
maintains a list of packages and modules, dependencies for a tool can be
installed as easily as:
$ dsss net deps
DSSS will then trace all of the software's D dependencies and install them.
This feature can of course also be used to install arbitrary software,
such as:
$ dsss net install mango
Upon either of these commands, DSSS will download the software from its
upstream source, compile it, and install it.
More Information
----------------
DSSS is available from http://www.dsource.org/projects/dsss . It is FOSS
(Free/Open Source Software) under a very permissive license. Its development
code base is maintained in subversion and can be checked out from the
following
URL:
http://svn.dsource.org/projects/dsss/trunk
DSSS has been tested and is known to work with GDC on Posix systems, and
with DMD on Windows. It has not been tested with GDC on Windows or DMD
on GNU/Linux.
At present, the following software is installable via DSSS:
bcd.gen
bintod
ddbi
derelict
dirclib
dool
dsss
dstring
duit
gdc-gcc-3.4
gdc-gcc-4.0
mango
wxd
To add your own software, configure it to use DSSS (technically you
don't have to, but it'd help ... ) then submit the information to me,
and I'll add it.
- Gregor Richards
More information about the Digitalmars-d-announce
mailing list