On Monday, 27 October 2014 at 13:44:23 UTC, John Colvin wrote:
On Monday, 27 October 2014 at 13:24:26 UTC, Marc Schütz wrote:
On Monday, 27 October 2014 at 09:19:26 UTC, John Colvin wrote:
dub functions fine without internet connection. Packages already in ~/.dub (or wherever else you might choose) are used.

And how is it going to get there? It is common for build service (openSUSE's OBS for instance) to disable all internet connectivity. All things that are necessary for building get installed by the build service from prebuilt packages _before_ the system is booted. It cannot download additional files during the build process.

I'm not sure I fully understand, but `dub upgrade` will download all the dependencies for the current package.

The --cache=VALUE option can be used to specify where you want them put.

I'm speaking about this:
https://build.opensuse.org/

This is for openSUSE, but Redhat/Fedore, Debian and others have similar services. They are used to build software packages (RPM, DEB) for all of a Linux distributions programs and libraries from the source. Each build starts off with a completely freshly installed environment (VM), and during it there is not internet connection. It can only access files from other packages that the build service has preinstalled into this system (as specified in the package's dependencies), or the package's source files.

This means that in order to build a DUB based project in such a system, there must not be external dependencies that DUB itself downloads. Instead, these dependencies need to be built separately as *-devel packages and then pulled as build requirements. Thus DUB needs to be told _not_ to download libraries, but use those that are already present in the system.

Reply via email to