all messages for Guix-related lists mirrored at yhetil.org
 help / color / mirror / code / Atom feed
* bug#23055: wget within guix fails to resolve FQDNs when used as an input (native or otherwise)
@ 2016-03-18 18:04 Dennis Mungai
  2016-03-18 18:15 ` Thompson, David
  0 siblings, 1 reply; 4+ messages in thread
From: Dennis Mungai @ 2016-03-18 18:04 UTC (permalink / raw)
  To: 23055

[-- Attachment #1: Type: text/plain, Size: 2768 bytes --]

Hello there,

I'm porting Arrayfire to GNU Guix, see
https://github.com/Brainiarc7/guix-bioinformatics/blob/master/gn/packages/arrayfire.scm

One of the inputs declared is wget, needed as a fall-back when fetching
BoostCompute should the Cmake checksums fail.

See the build log below:

-- Boost version: 1.60.0
-- BoostCompute...
--   getting https://github.com/boostorg/compute/archive/v0.5.tar.gz
--   validating
/tmp/nix-build-arrayfire-3.3.1.drv-0/build/third_party/compute-0.5.tar.gz
CMake Warning at CMakeModules/build_boost_compute.cmake:47 (MESSAGE):
  /tmp/nix-build-arrayfire-3.3.1.drv-0/build/third_party/compute-0.5.tar.gz:
  Invalid check sum d41d8cd98f00b204e9800998ecf8427e.  Expected was
  69a52598ac539d3b7f6005a3dd2b6f58
Call Stack (most recent call first):
  src/backend/opencl/CMakeLists.txt:91 (INCLUDE)


-- Trying wget https://github.com/boostorg/compute/archive/v0.5.tar.gz
--2016-03-18 17:38:55--
https://github.com/boostorg/compute/archive/v0.5.tar.gz
Resolving github.com (github.com)... failed: Name or service not known.
wget: unable to resolve host address ‘github.com’
CMake Error at CMakeModules/build_boost_compute.cmake:53 (MESSAGE):
  /tmp/nix-build-arrayfire-3.3.1.drv-0/build/third_party/compute-0.5.tar.gz:
  Invalid check sum d41d8cd98f00b204e9800998ecf8427e.  Expected was
  69a52598ac539d3b7f6005a3dd2b6f58
Call Stack (most recent call first):
  src/backend/opencl/CMakeLists.txt:91 (INCLUDE)


-- Configuring incomplete, errors occurred!
See also
"/tmp/nix-build-arrayfire-3.3.1.drv-0/build/CMakeFiles/CMakeOutput.log".
phase `configure' failed after 2.8 seconds
builder for
`/gnu/store/4ik93fkxrjy6acihzz5mzjcjkwc5va38-arrayfire-3.3.1.drv' failed
with exit code 1
@ build-failed
/gnu/store/4ik93fkxrjy6acihzz5mzjcjkwc5va38-arrayfire-3.3.1.drv - 1 builder
for `/gnu/store/4ik93fkxrjy6acihzz5mzjcjkwc5va38-arrayfire-3.3.1.drv'
failed with exit code 1
guix build: error: build failed: build of
`/gnu/store/4ik93fkxrjy6acihzz5mzjcjkwc5va38-arrayfire-3.3.1.drv' failed

As you can see in the first part, fetching BoostCompute fails because the
specified MD5 hash fails, and as a result, the build system falls back to
fetching the same with wget (see second snippet).

The second part fails because wget fails to resolve the FQDN entry
github.com.

However, when invoking wget directly, both the local instalation and the
Guix installation, the FQDN can be resolved correctly and the associated
file fetched successfully:

/gnu/store/w50mfvfzyjzpcbyw3lll7hm4j457jhb0-wget-1.17.1/bin/wget
https://github.com/boostorg/compute/archive/v0.5.tar.gz

Would this qualify as a bug filed against wget in Guix, or does the problem
lie elsewhere?

Regards,

Dennis.

[-- Attachment #2: Type: text/html, Size: 3602 bytes --]

^ permalink raw reply	[flat|nested] 4+ messages in thread

* bug#23055: wget within guix fails to resolve FQDNs when used as an input (native or otherwise)
  2016-03-18 18:04 bug#23055: wget within guix fails to resolve FQDNs when used as an input (native or otherwise) Dennis Mungai
@ 2016-03-18 18:15 ` Thompson, David
  2016-03-18 18:23   ` Dennis Mungai
  0 siblings, 1 reply; 4+ messages in thread
From: Thompson, David @ 2016-03-18 18:15 UTC (permalink / raw)
  To: Dennis Mungai; +Cc: 23055

On Fri, Mar 18, 2016 at 2:04 PM, Dennis Mungai <dmngaie@gmail.com> wrote:

> As you can see in the first part, fetching BoostCompute fails because the
> specified MD5 hash fails, and as a result, the build system falls back to
> fetching the same with wget (see second snippet).
>
> The second part fails because wget fails to resolve the FQDN entry
> github.com.
>
> However, when invoking wget directly, both the local instalation and the
> Guix installation, the FQDN can be resolved correctly and the associated
> file fetched successfully:
>
> /gnu/store/w50mfvfzyjzpcbyw3lll7hm4j457jhb0-wget-1.17.1/bin/wget
> https://github.com/boostorg/compute/archive/v0.5.tar.gz
>
> Would this qualify as a bug filed against wget in Guix, or does the problem
> lie elsewhere?

In Guix, builds are performed in an isolated container where there is
*no* external network access.  It must be this way because otherwise
builds would be non-deterministic. The only exception is for "fixed
output derivations", whose checksum is known in advance, which
wouldn't be the case here.  So, the problem lies with Arrayfire's
build system.  A build system really shouldn't download from the net.
It should use what the system has provided for it.  In my experience,
build systems that try to download from the net usually try to find
something to use locally first.  Without knowing anything beyond the
log you've shown me, I would guess that you need to package
BoostCompute first and provide that as an input to Arrayfire.
Hopefully then it won't try to download it.

Hope this helps!

- Dave

^ permalink raw reply	[flat|nested] 4+ messages in thread

* bug#23055: wget within guix fails to resolve FQDNs when used as an input (native or otherwise)
  2016-03-18 18:15 ` Thompson, David
@ 2016-03-18 18:23   ` Dennis Mungai
  2016-03-19  7:36     ` Dennis Mungai
  0 siblings, 1 reply; 4+ messages in thread
From: Dennis Mungai @ 2016-03-18 18:23 UTC (permalink / raw)
  To: Thompson, David; +Cc: 23055

[-- Attachment #1: Type: text/plain, Size: 2007 bytes --]

Hello David,

Thanks for the clarification.

Seems Arrayfire will need several modify-phases statements to clean up the
current build system and in addition, port Boost.Compute to GNU Guix as an
input.

Will do, and provide feedback on the same.

Thanks and regards,

Dennis Mungai.

On 18 March 2016 at 21:15, Thompson, David <dthompson2@worcester.edu> wrote:

> On Fri, Mar 18, 2016 at 2:04 PM, Dennis Mungai <dmngaie@gmail.com> wrote:
>
> > As you can see in the first part, fetching BoostCompute fails because the
> > specified MD5 hash fails, and as a result, the build system falls back to
> > fetching the same with wget (see second snippet).
> >
> > The second part fails because wget fails to resolve the FQDN entry
> > github.com.
> >
> > However, when invoking wget directly, both the local instalation and the
> > Guix installation, the FQDN can be resolved correctly and the associated
> > file fetched successfully:
> >
> > /gnu/store/w50mfvfzyjzpcbyw3lll7hm4j457jhb0-wget-1.17.1/bin/wget
> > https://github.com/boostorg/compute/archive/v0.5.tar.gz
> >
> > Would this qualify as a bug filed against wget in Guix, or does the
> problem
> > lie elsewhere?
>
> In Guix, builds are performed in an isolated container where there is
> *no* external network access.  It must be this way because otherwise
> builds would be non-deterministic. The only exception is for "fixed
> output derivations", whose checksum is known in advance, which
> wouldn't be the case here.  So, the problem lies with Arrayfire's
> build system.  A build system really shouldn't download from the net.
> It should use what the system has provided for it.  In my experience,
> build systems that try to download from the net usually try to find
> something to use locally first.  Without knowing anything beyond the
> log you've shown me, I would guess that you need to package
> BoostCompute first and provide that as an input to Arrayfire.
> Hopefully then it won't try to download it.
>
> Hope this helps!
>
> - Dave
>

[-- Attachment #2: Type: text/html, Size: 2797 bytes --]

^ permalink raw reply	[flat|nested] 4+ messages in thread

* bug#23055: wget within guix fails to resolve FQDNs when used as an input (native or otherwise)
  2016-03-18 18:23   ` Dennis Mungai
@ 2016-03-19  7:36     ` Dennis Mungai
  0 siblings, 0 replies; 4+ messages in thread
From: Dennis Mungai @ 2016-03-19  7:36 UTC (permalink / raw)
  To: Thompson, David; +Cc: 23055

[-- Attachment #1: Type: text/plain, Size: 2338 bytes --]

Update:

All worked out.

I was able to port over the dependencies to guix and fed them as inputs to
the package in question.
All builds as expected.

Thanks and regards,

Dennis Mungai.

On 18 March 2016 at 21:23, Dennis Mungai <dmngaie@gmail.com> wrote:

> Hello David,
>
> Thanks for the clarification.
>
> Seems Arrayfire will need several modify-phases statements to clean up the
> current build system and in addition, port Boost.Compute to GNU Guix as an
> input.
>
> Will do, and provide feedback on the same.
>
> Thanks and regards,
>
> Dennis Mungai.
>
> On 18 March 2016 at 21:15, Thompson, David <dthompson2@worcester.edu>
> wrote:
>
>> On Fri, Mar 18, 2016 at 2:04 PM, Dennis Mungai <dmngaie@gmail.com> wrote:
>>
>> > As you can see in the first part, fetching BoostCompute fails because
>> the
>> > specified MD5 hash fails, and as a result, the build system falls back
>> to
>> > fetching the same with wget (see second snippet).
>> >
>> > The second part fails because wget fails to resolve the FQDN entry
>> > github.com.
>> >
>> > However, when invoking wget directly, both the local instalation and the
>> > Guix installation, the FQDN can be resolved correctly and the associated
>> > file fetched successfully:
>> >
>> > /gnu/store/w50mfvfzyjzpcbyw3lll7hm4j457jhb0-wget-1.17.1/bin/wget
>> > https://github.com/boostorg/compute/archive/v0.5.tar.gz
>> >
>> > Would this qualify as a bug filed against wget in Guix, or does the
>> problem
>> > lie elsewhere?
>>
>> In Guix, builds are performed in an isolated container where there is
>> *no* external network access.  It must be this way because otherwise
>> builds would be non-deterministic. The only exception is for "fixed
>> output derivations", whose checksum is known in advance, which
>> wouldn't be the case here.  So, the problem lies with Arrayfire's
>> build system.  A build system really shouldn't download from the net.
>> It should use what the system has provided for it.  In my experience,
>> build systems that try to download from the net usually try to find
>> something to use locally first.  Without knowing anything beyond the
>> log you've shown me, I would guess that you need to package
>> BoostCompute first and provide that as an input to Arrayfire.
>> Hopefully then it won't try to download it.
>>
>> Hope this helps!
>>
>> - Dave
>>
>
>

[-- Attachment #2: Type: text/html, Size: 3496 bytes --]

^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2016-03-19  7:37 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2016-03-18 18:04 bug#23055: wget within guix fails to resolve FQDNs when used as an input (native or otherwise) Dennis Mungai
2016-03-18 18:15 ` Thompson, David
2016-03-18 18:23   ` Dennis Mungai
2016-03-19  7:36     ` Dennis Mungai

Code repositories for project(s) associated with this external index

	https://git.savannah.gnu.org/cgit/guix.git

This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.