D Shared Software System version 0.1 Released!

Gregor Richards Richards at codu.org
Mon Nov 13 08:10:08 PST 2006


clayasaurus wrote:
> Gregor Richards wrote:
> 
>> I have just released the first (alpha-ish) version of DSSS, the D 
>> Shared Software System. It definitely still has some bugs, but it's at 
>> a point where I need to see if anybody actually will use it :)
>>
>> Most notable bug is that its installation scheme is a bit rigid right 
>> now. It's on "the list."
>>
>> DSSS is described fully below, but up-front I will mention that part 
>> of DSSS' purpose is to provide an analogue to Perl's CPAN or Ruby's Gems.
>>
>> DSSS is available from http://www.dsource.org/projects/dsss .
>>
>> 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
> 
> 
> Is there some sort of manual available for this? I'm not quite sure how 
> I am supposed to use it. Thanks.
> 
> ~ Clay

There's a docs directory with READMEs, but not for the basic use yet - 
dsss help should tell you most of what you need to know to just build 
stuff.  If you actually want to configure your software to use DSSS, 
read docs/README.software_engineer

  - Gregor Richards



More information about the Digitalmars-d-announce mailing list