Snap packages for DMD and DUB

Joseph Rushton Wakeling via Digitalmars-d-announce digitalmars-d-announce at puremagic.com
Mon May 8 13:05:01 PDT 2017


Hello all,

As announced at DConf 2017, snap packages are now available for 
DMD 2.074.0 and DUB 1.3.0 in the official snap store.  These 
should allow for installation on multiple different Linux distros 
(see below) on i386 and amd64 systems.

Installing them is simple: first follow the `snapd` installation 
instructions here:
https://snapcraft.io/docs/core/install

... and then:

     sudo snap install --classic --channel=edge dmd
     sudo snap install --classic --channel=edge dub

where the `--classic` flag grants permission for the confinement 
options required by the packages.

The `dmd` package also contains `rdmd`, `dustmite` and 
`ddemangle`.  Note that by default the snap package exposes these 
namespaced on the name of the package (i.e. `dmd.rdmd`, etc.).  
To avoid this, use the `snap alias` command:

     sudo snap alias dmd rdmd
     sudo snap alias dmd dustmite
     sudo snap alias dmd ddemangle

... and then it should be possible to use the regular commands.

Currently these packages are only released in the `edge` channel 
(out of `edge`, `beta`, `candidate` and `stable`).  It would be 
good to have as many people (on as many different supported 
distros) try them out in order to get confirmation that they are 
working properly.  Currently they are expected to work on at 
least:

   * Ubuntu 14.04, and 16.04 or later

   * Debian Testing and Unstable

   * OpenSUSE Leap

In principle they ought to work on any system with a recent 
enough `snapd` (2.21 or later), but the above are the ones I have 
tried them on.

On systems with snapd 2.24 (the latest release) it looks like 
there is an issue with rdmd: the sandboxing interferes with rdmd 
writing to the `/tmp` directory.  It's not clear at this point if 
this is an issue with snapd or with rdmd itself, but I'm looking 
into it.

Special thanks to Martin Nowak who took time with me at DConf to 
help in setting up the snap store account for these packages.

Enjoy, and let me know how you all get on with these packages!

For more info on snap packages and how to use (and create) them, 
see:
https://snapcraft.io

Thanks & best wishes,

     -- Joe


More information about the Digitalmars-d-announce mailing list