Jump to page: 1 2
Thread overview
D Shared Software System version 0.1 Released!
Nov 10, 2006
Gregor Richards
Nov 10, 2006
Daniel Keep
Nov 10, 2006
Gregor Richards
Nov 10, 2006
Sean Kelly
Nov 10, 2006
Bill Baxter
Nov 10, 2006
Andrey Khropov
Nov 11, 2006
pragma
Nov 12, 2006
Gregor Richards
Nov 12, 2006
Anders Bergh
Nov 12, 2006
Gregor Richards
Nov 13, 2006
clayasaurus
Nov 13, 2006
Gregor Richards
November 10, 2006
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
November 10, 2006
This is exactly what D needed.

For reference, I've always found that Python's way of doing it is also cool.  distutils (shipped with Python) can generate a wide number of distribution packages: UNIX tar balls, DEBs, RPMs, ZIPs and even Windows Installer MSIs.

Then we have things like CPAN and Ruby Gems.  If you need a library, you just work out which one you want, and tell the system to install it.

A few suggestions:

* Have a way to take a package, and generate distribution files.  This would allow maintainers to use DSSS to generate distro media for other formats.

* Corollary to the above, make it possible to generate a distribution both with and without dependencies.  This could allow application developers to leverage DSSS to build complete installers for their programs without having to worry about finding and building all of the libraries, and the libraries they depend on, etc.

  Again, for comparison, Python's py2exe can be used to do this, and is
VERY cool.

Thank you so much for writing this.  Downloading now :)

	-- Daniel

-- 
Unlike Knuth, I have neither proven or tried the above; it may not even make sense.

v2sw5+8Yhw5ln4+5pr6OFPma8u6+7Lw4Tm6+7l6+7D i28a2Xs3MSr2e4/6+7t4TNSMb6HTOp5en5g6RAHCP  http://hackerkey.com/
November 10, 2006
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 :)

*raises hand*

Nice work!


Sean
November 10, 2006
Daniel Keep wrote:
> This is exactly what D needed.
> 
> For reference, I've always found that Python's way of doing it is also
> cool.  distutils (shipped with Python) can generate a wide number of
> distribution packages: UNIX tar balls, DEBs, RPMs, ZIPs and even Windows
> Installer MSIs.
> 
> Then we have things like CPAN and Ruby Gems.  If you need a library, you
> just work out which one you want, and tell the system to install it.
> 
> A few suggestions:
> 
> * Have a way to take a package, and generate distribution files.  This
> would allow maintainers to use DSSS to generate distro media for other
> formats.
> 
> * Corollary to the above, make it possible to generate a distribution
> both with and without dependencies.  This could allow application
> developers to leverage DSSS to build complete installers for their
> programs without having to worry about finding and building all of the
> libraries, and the libraries they depend on, etc.
> 
>   Again, for comparison, Python's py2exe can be used to do this, and is
> VERY cool.
> 
> Thank you so much for writing this.  Downloading now :)
> 
> 	-- Daniel
> 

An excellent idea.  I'll put it on "The List."

 - Gregor Richards
November 10, 2006
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

Very nice indeed!  I do some work with Ruby and do love the Gems system.  I do some work with PHP, and there we have PEAR, also quite nice.  And of course there's always Gentoo... sure, yes, its an operating system, but its 'emerge' is a godsend sometimes.  Its heartening to think I can now have the option of similar functionality in D.  Good going.

-- Chris Nicholson-Sauls
November 10, 2006
"Gregor Richards" <Richards@codu.org> wrote in message news:ej0vcu$2cm7$1@digitaldaemon.com...

> 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.

Fantastic!  I'll be sure to check it out and try to get MiniD / nonagon on it (eventually!).


November 10, 2006
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 :)

Excellent!  Good work!  Looking forward to trying it out.

--bb
November 10, 2006
Gregor Richards wrote:

> 

Totally cool!

Really shows the maturing process of the language.
Want to see it in D's standard package.

-- 
AKhropov
November 11, 2006
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 :)

This is definitely what D needs! I will try it, but if it works like you described - that be it.

Keep up this fantastic idea.

November 11, 2006
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

I would be happy to plug my libraries into this once I have a release version ready for the public.

This is fantastic.
« First   ‹ Prev
1 2