Perl 6 - the future is here, just unevenly distributed

IRC log for #darcs, 2015-04-21

| Channels | #darcs index | Today | | Search | Google Search | Plain-Text | summary

All times shown according to UTC.

Time Nick Message
00:42 mizu_no_oto joined #darcs
01:17 mizu_no_oto joined #darcs
01:29 mizu_no_oto joined #darcs
01:55 Riastradh joined #darcs
01:56 c74d joined #darcs
03:07 Riastradh joined #darcs
05:54 Wu joined #darcs
10:05 c74d3 joined #darcs
13:57 Mathiasdm joined #darcs
15:19 dino- I am maintaining one of the Arch Linux builds for darcs and am trying to update it for 2.10.0. I am trying to use a sandbox build for this and am being warned by one of the Arch build analysis tools that there is an insecure RPATH
15:20 dino- like this: darcs E: Insecure RPATH '/var/build/darcs/src/darcs-2.10.0/.cabal-sandbox/lib/x86_64-linux-ghc-7.8.4/HTTP-4000.2.19' in file ('usr/bin/darcs')
15:21 dino- I ran this tool on the prior darcs I had built (2.8.4) and it's not in that one.
15:21 dino- I'm wondering what's different about this one and what to do.
16:24 sm peculiar
16:24 sm which GHC version are you building with
16:58 dino- sm: 7.8.4, not actually up to date for my distro, as it happens I think
16:59 dino- mmhmm, arch is up to 7.10.1. Perhaps I should update my distro and then see what happens with this
17:02 sm dino-: oh, 7.8.4 was right there in the path
17:03 sm perhaps you previously built with GHC 7.6, if so that might be a workaround
17:03 sm I'm just poking it with a stick, I don't know the cause
17:04 sm Heffalump: thanks for the ssh release. FYI the changelog on hackage isn't quite current
17:12 gh_ joined #darcs
18:48 Riastradh joined #darcs
20:18 dolio dino-: Was the old build sandboxed?
20:19 dolio I don't really see how you can build the executable in a sandbox without having that issue.
20:19 dolio Since all the libraries it will use will be installed in the sandbox.
20:20 dolio Actually, maybe that indicates that you don't have HTTP installed globally, so it has to install it in the sandbox.
20:21 dolio However, you might still have some weirdness due to darcs being divided into a library and an executable, and I wouldn't be surprised if the RPATH for the darcs library is in the sandbox as well.
20:21 dolio And there's not much you can do about that.
20:22 dolio (Except statically link.)
21:32 Heffalump sm: yes, thanks, saw the reddit link. I'll upload a new version with that fixed, I'd forgotten about it completely.
22:19 dolio Also on at least some GHC 7.8.x, dynamic linking is kind of extra broken anyway (not sure about 7.10.x).
22:19 dolio Where if you have a library and an executable in the same .cabal, and you dynamic link, then the RPATH for the library portion will be the dist/ directory.
22:20 dolio Instead of wherever the library gets installed.
22:20 dolio So if you subsequently delete the dist/ directory, the executable will no longer work.
22:21 dolio I guess it's up to cabal to handle that correctly. But I'm unsure if they got it fixed, and if so, when.
22:55 dino- dolio: Yes, the prior build was sandboxed.
22:56 dolio Was it statically linked, then?
22:57 dino- I'm not sure. I didn't do anything special with the build commands, just what's in the stock cabal file and then `cabal configure -O --prefix=/usr` and then `cabal build`
22:58 dino- But I see what you're saying about the library parts of darcs.
22:58 dolio Maybe the default has changed from static to dynamic linking.
22:59 dino- Do you think it will be a problem for the binary to not have this HTTP present? I tried to darcs get something with it via http and it seemed ok
22:59 dolio I would think so, yes.
23:00 dolio But I think you would probably see the executable die regardless of whether you actually used http.
23:00 dolio If you deleted the RPATH directory, for instance.
23:00 dolio If that's not the case, I'm not sure what is happening.
23:00 dino- That's not the case
23:01 dino- It's weird
23:02 dino- I installed this build of 2.10.0 and then got rid of the entire dir where that sandbox was, as in deleted.
23:03 dolio The only other thing that comes to mind is that it includes things in the RPATH even though it's statically linked, or available elsewhere.
23:06 dino- I think that's it, I happen to have HTTP installed --user on this system for some reason
23:07 dino- And wow, readelf shows a ton of paths for the RPATH. I think that utility is bailing out after showing me the first one.
23:07 dino- all of them in that sandbox. bleh
23:08 dolio Well, if you have the libraries installed --user, it won't use them in the sandbox.
23:08 dolio I think.
23:08 dino- Well, I need to understand how linking works better than this. I think if I update the build for this as-is it will A) be broken/dangerous and B) piss people off even it runs
23:08 dolio They need to be installed globally to be used in the sandbox.
23:09 dino- Ok. This is kind of jamming the whole reason I was trying to build it this way to begin with.
23:09 dino- How do we deploy binaries of darcs for other Linuxes? Or do we?
23:11 dino- btw, I tried to install its deps in the sandbox with --disable-shared and it failed on vector, I think because of TH stuff
23:11 dino- This would be earlier today
23:12 dolio I don't see an rpath entry for HTTP
23:12 dolio in darcs compiled for fedora.
23:12 dolio But fedora's ghc is still on 7.6.
23:13 dino- Ok, sm mentioned perhaps I had previously built with 7.6 (I don't remember)
23:16 dolio The darcs I have built myself doesn't even have an rpath.
23:19 dino- I can try to pass -staticlib and/or -static, see if it changes anything
23:20 dino- But this is the sequence of commands I have building it now: https://aur.archlinux.org/packages/da/darcs/PKGBUILD
23:20 dino- In the build() function
23:20 dino- I don't expect anything to look that weird, it's pretty standard stuff except for the --prefix
23:22 dino- Hm, I'm wondering about that `rm -r ${pkgdir}/usr/lib` I have in there now
23:25 dolio Well, if it's statically linked, it shouldn't be a problem.

| Channels | #darcs index | Today | | Search | Google Search | Plain-Text | summary