<    April 2017    >
Su Mo Tu We Th Fr Sa  
                   1  
 2  3  4  5  6  7  8  
 9 10 11 12 13 14 15  
16 17 18 19 20 21 22  
23 24 25 26 27 28 29  
30
00:10 <TemptorSent> fabled: When you see this, check APK Redmine - I just made some work for you I'm afraid, as I'm not up to speed on the guts of apk enough to handle it easily yet.
00:13 <TemptorSent> fabled: Issue #7100 #7101 #7102 #7103
00:13 <algitbot> Feature #7100: apk should support the use of full &#39;$pkgname-$pkgver&#39; atom as returned by &#39;apk search -x $pkgname&#39; everywhere &#39;$pkgname&#39; is used - Alpine Package Keeper - Alpine Linux Development: http://bugs.alpinelinux.org/issues/7100
00:13 <algitbot> Feature #7101: Allow apk to operate on .apk FILE most places PACKAGE is specified - Alpine Package Keeper - Alpine Linux Development: http://bugs.alpinelinux.org/issues/7101
00:13 <algitbot> Feature #7102: Information available via &#39;apk info&#39; on a package is incomplete with respect to contents of .PKGINFO. - Alpine Package Keeper - Alpine Linux Development: http://bugs.alpinelinux.org/issues/7102
00:13 <algitbot> Feature #7103: Add ability for apk to extract files, extended headers, and metadata directly from .apks - Alpine Package Keeper - Alpine Linux Development: http://bugs.alpinelinux.org/issues/7103
00:13 <TemptorSent> Oops :)
00:14 <Shiz> okay, can repro...
00:14 <Shiz> jirutka: so strange that it's dynamic default now
00:15 <Shiz> jirutka: actually, i can't get it to build statically anymore...
00:17 <TemptorSent> Question: Is sha1 going to remain the default checksum for files in .apks for the forseeable future?
00:18 <Shiz> jirutka: okay so
00:18 <Shiz> -static-libgcc doesn't seem to pass libgcc to the linker...
00:18 <Shiz> TemptorSent: no
00:19 <TemptorSent> Shiz: Okay, will we be going to sha512 instead?
00:20 <Shiz> yes
00:20 <Shiz> jirutka: still here?
00:20 <TemptorSent> Thank you, any idea on timing? Will the sha1 sums in the pax headers continue as well?
00:21 <Shiz> jirutka: i got the magic combo
00:21 <Shiz> :p
00:21 <Shiz> no clue, ask kaniini/fabled
00:21 <TemptorSent> Up,Up,Down,Down,Left,Right,Left,Right,B,A,B,A,Select,Start?
00:23 <TemptorSent> Will do.
00:24 <^7heo> TemptorSent: not sure anyone here knows that konami reference
00:30 <TemptorSent> *lol* Yeah ^7heo, I get to feel old again :P
00:56 ostera joined
01:29 s33se joined
01:47 xfix joined
01:50 BitL0G1c joined
01:56 BitL0G1c joined
02:28 Emperor_Earth joined
03:22 TemptorSent joined
03:23 <Shiz> jirutka: it works!
03:23 <Shiz> https://txt.shiz.me/OGViNmYxYW
03:27 chatter29 joined
03:27 <chatter29> hey guys
03:28 <chatter29> allah is doing
03:28 <chatter29> sun is not doing allah is doing
03:28 <chatter29> to accept Islam say that i bear witness that there is no deity worthy of worship except Allah and Muhammad peace be upon him is his slave and messenger
03:29 chatter29 joined
03:38 <Shiz> jirutka: https://txt.shiz.me/MGI3NjEzNz
03:38 <Shiz> working patch on top of the current 1.10.0 apkbuild
03:38 <Shiz> now we clean it up
03:38 <Shiz> (and make our own bootstrap files, hopefully)
03:39 blueness joined
03:44 <kaniini> if i was not using matrix i would have kickbanned that chatter29
03:44 <kaniini> with something like
03:44 <kaniini> 'allah is banning'
03:54 <tmh1999> Shiz : may I ask what is your implementation at : https://txt.shiz.me/ ?
03:54 <tmh1999> TemptorSent : you must have a good relationship with thunder and such lol
04:02 cyteen joined
04:04 <Shiz> tmh1999: https://txt.shiz.me/self
04:05 <tmh1999> Shiz : wow! Thank you.
04:05 <Shiz> https://github.com/Shizmob/upaste
04:05 <Shiz> im not sure how up to date the repo version is, but it has the other files
04:06 <tmh1999> Thank you. I have been looking for simple pastebin implementation show I can put in ggappengine ...
04:13 <TemptorSent> tmh1999: Yeah, I'm just glad we didn't have any direct strikes. It was impressive.
04:33 blueness joined
05:26 <tmh1999> kaniini : with this commit : https://git.alpinelinux.org/cgit/abuild/commit/abuild.in?id=ecc1f509c6d469223cfbf4ef3f7c574de286ba6e, is it safe to remove update_config_sub in APKBUILD where the source package does not provide config.sub ?
05:37 <kaniini> yes
05:39 <tmh1999> kaniini : Thanks
06:13 blahdodo joined
07:02 BitL0G1c joined
07:05 stwa joined
09:03 <jirutka> Shiz: excellent! \o/
09:03 <algitbot> \o/
09:03 <jirutka> Shiz: great catch with libunwind!
09:55 stwa joined
10:38 <jirutka> Shiz: in what timezone do you live…?
10:40 <jirutka> Shiz: now I see that you’ve also fixed static PIE, great job!
10:40 leitao joined
11:06 ostera joined
11:14 <jirutka> kaniini: fabled: is it okay to use /etc/ld.so.conf on Alpine?
11:17 <skarnet> no
11:17 <skarnet> if anything, /etc/ld-musl-$ARCH.conf
11:17 <skarnet> um
11:17 <skarnet> /etc/ld-musl-$ARCH.path
11:19 <leitao> kaniini, hi. Can you help me with https://github.com/alpinelinux/abuild/pull/15 ?
11:26 <jirutka> skarnet: are you sure? there’s no track about ld-musl-*.path in any existing abuild
11:27 <skarnet> then it's not used in Alpine
11:27 <skarnet> but yes, I'm sure that /etc/ld.so.conf is glibc-only, and the musl equivalent is what I wrote
11:28 <jirutka> skarnet: what is better when I have bunch of .so libs that should be treat as private for certain bins only? use rpath, symlink them into /usr/lib or use ld-musl-*.path… or something different?
11:29 <skarnet> private for certain bins -> rpath
11:29 <jirutka> okay
11:29 <skarnet> (statically linking them would be even better, but unfortunately not always possible)
11:30 <skarnet> ld-musl-*.path and /usr/lib are global, so should only be used for public accessible .so's
11:42 blueness joined
11:53 gvb left
11:54 blueness joined
12:01 <^7heo> why was #6217 closed while it was solved already?
12:01 <algitbot> Bug #6217: nlplug-findfs segfaults on bogus extraneous cryptsetup execution - Alpine Linux - Alpine Linux Development: http://bugs.alpinelinux.org/issues/6217
12:03 blueness joined
12:21 <Shiz> jirutka: same as yours, just with weird sleeping patterns
12:21 <Shiz> :P
12:21 <jirutka> Shiz: aha :)
12:22 <jirutka> Shiz: unfortunately static linking doesn’t work, it still produces dynamically linked binary: ELF 64-bit LSB shared object, x86-64, version 1 (SYSV), dynamically linked, not stripped, with debug_info
12:22 <Shiz> jirutka: that is fine
12:22 <Shiz> that is what a static PIE binary *is*
12:22 <jirutka> Shiz: but linked just with ldd: ldd (0x2fc3768f000)
12:22 <jirutka> Shiz: really?
12:22 <Shiz> yes
12:22 <Shiz> try using readelf -d instead of ldd
12:22 <Shiz> :p
12:23 <jirutka> Shiz: and will it work on any Linux system?
12:23 <Shiz> static PIE binaries are dynamic binaries without a loader or any RT_NEEDED entries
12:23 <Shiz> yep
12:23 <jirutka> aha, that’s why I thought that PIE doesn’t work with static, b/c I checked just file and ldd
12:24 <jirutka> really, it works on glibc system!
12:42 <jirutka> Shiz: is that okay (the description)? http://tpaste.us/40v1
12:54 <Shiz> jirutka: i made a typo it's DT_NEEDED not RD_NEEDED
12:54 <Shiz> :p
12:54 <jirutka> okay :)
12:54 <Shiz> i'm unsure about the windows linker arg, i have to verify
12:54 <Shiz> also
12:55 <Shiz> >From: Contributor: Shiz <hi@shiz.me>
12:55 <Shiz> looks slightly broken
12:55 <Shiz> rest LGTM!
12:57 <Shiz> want me to add a comment to the rust PR?
13:02 <jirutka> Shiz: yes plese :)
13:03 <^7heo> hey guys
13:05 <jirutka> Shiz: fixed patch http://tpaste.us/aQvB
13:05 <jirutka> ^7heo: hi!
13:08 <^7heo> So now I have to work this week end, by installing the potential 3.6 release, on a recent laptop
13:09 <^7heo> with zfs over cryptsetup
13:09 <scadu> ^7heo: please keep us updated \o/
13:09 <algitbot> \o/
13:11 <Shiz> https://github.com/rust-lang/rust/pull/40113#issuecomment-292717038
13:11 <Shiz> jirutka: ^
13:12 <jirutka> Shiz: thanks!
13:12 <jirutka> Shiz: but please don’t link my branch, I’ll remove it after merging into aports
13:12 <Shiz> (let's clean it up first)
13:12 <jirutka> Shiz: it’d be better to add the relevant patches as attachment to your comment
13:12 <Shiz> :p
13:12 <Shiz> right
13:12 <jirutka> Shiz: I’m currently working on cleaning
13:12 <Shiz> i don't think you can attach patches...
13:13 <Shiz> i'll host them on up.shiz.me
13:15 <^7heo> scadu: ok ;)
13:16 <jirutka> Shiz: you can, but maybe need to change .patch to .txt or something like that, b/c of stupid file extension checking…
13:16 <Shiz> i just linked to entries on txt.shiz.me
13:16 <Shiz> also works :p
13:17 <jirutka> yeah :)
13:35 <clandmeter> congrats guys
13:35 <clandmeter> good work!
13:46 <Shiz> :)
14:06 <Shiz> jirutka: any thoughts on the /usr/lib vs /usr/lib/rustlib thing?
14:07 <jirutka> Shiz: Fedora keeps *.so only in /usr/lib/rustlib/$arch/lib and adds this path to ld.so.conf.d/rust
14:07 <Shiz> hmm...
14:07 <Shiz> i wonder how they do it
14:07 <Shiz> :p
14:08 <jirutka> Shiz: I’ve discussed this with skarnet and the conclusion is to not put de-facto private so libs into /usr/lib or /etc/ld-musl-$ARCH.path (equivalent of /etc/ld.so.conf on musl) and use rpath
14:08 <Shiz> sounds reasonable
14:09 <Shiz> why do we add --disable-rpath to configure right now?
14:10 <jirutka> Shiz: b/c I thought that it’s a good idea… :)
14:10 <Shiz> :p
14:10 <jirutka> Shiz: I’ve removed it now and gonna fix rpath with chrpath to /usr/lib/rustlib/$ARCH/lib
14:10 <jirutka> Shiz: need to do some chore now, afk
14:10 <Shiz> i'm not sure that's the best approach...
14:10 <Shiz> good luck :)
14:11 <jirutka> Shiz: what would you prefer?
14:11 <Shiz> ideally i'd want the rust toolchain to handle all of it already
14:11 <Shiz> no manual chrpath stuff
14:11 <jirutka> Shiz: yes, but unfortunately rustc and rustdoc have rpath pointing to /usr/lib :/
14:12 <Shiz> hmm
14:12 <Shiz> i'll see what i can do from here :)
14:28 <Shiz> jirutka: think i may have jemalloc work
14:32 <clandmeter> Shiz, jemalloc performs better then system malloc?
14:33 <Shiz> it's not that big of difference i think, but there is some
14:33 <Shiz> more importantly, it's the default they use
14:33 <Shiz> so we don't have to hack around it
14:33 <Shiz> :p
14:33 <^7heo> what's the difference between /dev/shm and /tmp ?
14:34 <^7heo> or rather, why can't the programs using /dev/shm use /tmp instead?
14:34 <skarnet> they could, but you don't want them to
14:34 <Shiz> /tmp is not always a tmpfs
14:34 <Shiz> /dev/shm is guaranteed to be if it's present
14:34 <Shiz> (also Linux-only)
14:35 <^7heo> hmm ok
14:35 <skarnet> the shared memory API creates files in /dev/shm, you don't want them to mix with /tmp files
14:35 <skarnet> but /dev/shm *could* be a link to a place in an already-mounted tmpfs
14:36 <skarnet> (that's what I do on my systems to reduce the number of useless mounts)
14:36 <^7heo> skarnet: I mean, it could be /tmp/shm
14:36 <skarnet> if you have the guarantee that /tmp is a tmpfs, then yes, it could be
14:36 <^7heo> ok
14:41 czart__ joined
14:42 <^7heo> thanks skarnet and Shiz ;)
14:44 <^7heo> another question, why would programs define their own error printing routines when they can use assert.h?
14:46 <Shiz> jirutka: actually, i think this issue will fix itself
14:46 <Shiz> ^7heo: ?
14:47 <Shiz> assert.h is for assertions, not errors
14:47 <Shiz> assertions get compiled out in release builds
14:48 <^7heo> right
14:49 <Shiz> err.h, on the other hand...
14:49 <Shiz> but nonstandard afaik
14:50 <^7heo> stupid me, it's defined to ((void)0) when NDEBUG is defined
14:51 <Shiz> :)
14:53 <Shiz> whoo, segfaulting rustc
15:19 <jirutka> ^7heo: skarnet: /dev/shm is a symlink to /run/shm on some systems and /run is tmpfs
15:20 <jirutka> Shiz: how it can fix itself? :)
15:20 <jirutka> Shiz: you’ve compiled rustc with jemalloc, haven’t you? ;)
15:20 <Shiz> yes :p
15:21 <Shiz> i tried to see if i could get jemalloc working
15:21 <jirutka> Shiz: yes, then it’s segfaulting :P
15:21 <Shiz> re-compiling in debug mode
15:21 <jirutka> Shiz: we don’t hack around it, Rust provides compile option to disable-jemalloc
15:21 BitL0G1c joined
15:21 <jirutka> :)
15:21 <Shiz> well, we hack around it with the tests
15:21 <Shiz> still, it's something i'd like to see work
15:21 <Shiz> :p
15:22 andypost joined
15:23 <jirutka> ah, yes
15:23 <jirutka> tests are kinda broken now, but haven’t investigated it yet
15:38 <jirutka> “Plus isn't it fun to pass a flag to a tool to pass a flag to pass a flag to a tool to change a flag in a binary?” XD
15:38 <Shiz> ;p
16:02 <Shiz> jirutka: might've found a jemalloc fix :)
16:04 <jirutka> Shiz: might’ve found simple fix for rpath :)
16:04 <Shiz> oh?
16:04 <jirutka> teamwork, yeah! \o/
16:04 <algitbot> \o/
16:22 leo-unglaub joined
16:24 <kaniini> leitao: i'd rather not pull lzip in as a dependency right now
16:30 <kaniini> leitao: but fine, i did it
16:54 <Shiz> jirutka: jemalloc works
16:54 s33se joined
16:55 <jirutka> Shiz: great! how you did it?
16:55 <Shiz> tiny patch and using the vendored jemalloc
16:56 <jirutka> why vendored?
16:56 <Shiz> https://txt.shiz.me/Y2Y1N2EwZT
16:56 <Shiz> jirutka: see the patch :p
16:57 <Shiz> jemalloc borks if it uses the same symbol names as libc malloc
16:57 <Shiz> so i added musl to the list of targets to use the je_* prefix for
16:57 <Shiz> but our alpine jemalloc uses the unprefixed symbols
16:58 <jirutka> ahaa
16:58 <jirutka> could you please write a comment to your fix-jemalloc-musl.patch ?
16:58 <Shiz> ofc
16:58 <Shiz> this is just my local diff atm
16:58 <Shiz> :p
17:01 <Shiz> jirutka: whats your rpath solution look like?
17:01 <jirutka> Shiz: not-working :(
17:01 <Shiz> aw
17:02 <jirutka> Shiz: trying different one, more invasive, now
17:03 <Shiz> hmm
17:03 <Shiz> i'm wondering how to make rustc use the rustlib path...
17:03 <jirutka> I thought that I can --disable-rpath and then pass env. var RUSTC_FLAGS="-Wl,-rpath,$ORIGIN/../lib/rustlib/x86_64-unknown-linux-musl/lib", but that doesn’t work
17:04 <jirutka> so now I’m trying to directly patch src/bootstrap/bin/rustc.rb
17:04 <jirutka> Some(format!("-Wl,-rpath,$ORIGIN/../lib/rustlib/{}/lib", target))
17:05 leo-unglaub joined
17:06 <jirutka> afk
17:06 <Shiz> i wonder if ./configure --libdir=lib/rustlib/x86_64-unknown-linux-musl/lib works
17:17 <Shiz> jirutka: making progress in rpath
17:17 <Shiz> :p
17:21 minimalism joined
17:24 <^7heo> the setup-bootable script reports a lot of errors with vfat.
17:24 <^7heo> But it still works I think.
17:24 <^7heo> Maybe it would be worth it to suppress those errors?
17:25 <^7heo> (it's only `cp: can't preserve ownership of '...': Operation not permitted` errors)
17:38 <jirutka> Shiz: my patch for rpath works :)
17:39 <Shiz> my approach doesn't need patching
17:39 <jirutka> Shiz: that would affect even rustlib
17:39 <Shiz> :D
17:39 <Shiz> and does the same
17:39 <Shiz> but i'm still checking if it works
17:39 <jirutka> Shiz: really? doesn’t it also move location of rustlib…?
17:39 <Shiz> i'm checking.. but i think it has some special thing
17:39 <Shiz> it's still compiling
17:39 <Shiz> :p
17:39 <jirutka> okay
17:41 <Shiz> jirutka: do you only patch in bootstrap?
17:41 <Shiz> or what does your patch touch
17:41 <Shiz> if so that is probably okay too
17:41 <jirutka> Shiz: yes, only bootstrap
17:42 <jirutka> Shiz: IIRC I’ve already tried changing --libdir yesterday and it also moved rustlib, but I’m not 100% sure, my bad memory :/
17:45 <Shiz> :p
17:46 <Shiz> yeah, it does...
17:46 <Shiz> bwuh
17:48 <Shiz> jirutka: okay, that bootstrap patch looks fine judging from rustc.rs
17:56 <Shiz> jirutka: i found an interesting option
17:56 <jirutka> Shiz: which one?
17:57 <Shiz> well not option, but function
17:57 <Shiz> https://github.com/rust-lang/rust/blob/1.16.0/src/bootstrap/lib.rs#L780
17:58 <jirutka> hmm
17:58 <Shiz> https://github.com/rust-lang/rust/blob/1.16.0/src/bootstrap/util.rs#L122
17:58 <jirutka> looks like a better place where to patch
17:58 <Shiz> also of relevance
17:59 <Shiz> yeah i think the latter is even better
18:00 <jirutka> but look at this https://github.com/rust-lang/rust/blob/1.16.0/src/bootstrap/bin/rustc.rs#L194
18:01 <jirutka> it directly passes flag for linter and it does not call that function from util.rs
18:03 <Shiz> yeah we need to change that
18:03 <Shiz> but it's easy
18:04 <jirutka> but why? it will just affect more code…?
18:04 <Shiz> it'll make it cleaner
18:04 <Shiz> and possibly remove some duplication
18:04 <jirutka> Shiz: http://tpaste.us/qMYy
18:04 <jirutka> this is all what I needed to change
18:07 <Shiz> yeah but it's less suitable for upstreaming
18:07 <jirutka> aha
18:07 <jirutka> I was thinking about this as only downstream patch
18:12 <Shiz> hmm
18:12 <Shiz> well, it's buidling now
18:12 <Shiz> we'll see...
18:12 <Shiz> your patch works now either way, i'm just seeing if i can make it slightly cleaner/upstreamable
18:12 <Shiz> should we want to
18:12 <Shiz> :)
18:14 <jirutka> I’m afraid that upstream wants it as is, for whatever reason, otherwise why they did more work to install these libs into two locations?
18:15 <jirutka> https://github.com/rust-lang/rust/issues/37971
18:16 <jirutka> https://github.com/rust-lang-nursery/rustup.rs/issues/837
18:18 <Shiz> rustc_llvm, rustc and rustc_driver
18:18 <Shiz> always the same components taking so long
18:18 <Shiz> :p
18:19 <jirutka> yeah
18:19 <Shiz> jirutka: advantage of my patch is that i believe the libs wouldn't get installed to lib/ in the first place
18:19 <jirutka> it takes forever to compile
18:19 <Shiz> so we don't have to do manual removal/tracking of that
18:19 <Shiz> :p
18:19 <jirutka> ehm…
18:20 <jirutka> but your patch affects more code, so it’d be harder to maintain
18:20 <Shiz> true, but it's only relatively simple utility functions it affects
18:20 <Shiz> jirutka: you on the rust irc?
18:21 <jirutka> but still… why? if it will remain as downstream patch, then it’s better to affect less code
18:21 <jirutka> nope, I’m not
18:31 <Shiz> error[E0523]: found two different crates with name `rustc` that are not distinguished by differing `-C metadata`. This will result in symbol conflicts between the two.
18:31 <Shiz> interesting errors
18:31 <Shiz> :p
18:32 <jirutka> how you did that?
18:32 <Shiz> my libdir patch
18:35 <Shiz> i will shelve this patch for now
18:38 <Shiz> jirutka: https://txt.shiz.me/M2NhNjEwZm
18:43 leo-unglaub joined
18:55 <jirutka> Shiz: thanks!
18:55 <jirutka> Shiz: could you please also open a PR on rust-lang/rust?
19:00 <jirutka> Shiz: is this useful for us? https://src.fedoraproject.org/cgit/rpms/rust.git/tree/rust.spec#n192
19:02 <Shiz> jirutka: already part of stock alpien gcc
19:02 <jirutka> Shiz: that’s what I thought :)
19:06 <jirutka> Shiz: any idea why make check produces dozens of failures?
19:10 MH0815 joined
19:11 <Shiz> i'd need to see them :p
19:11 <TemptorSent> Why, oh why, is apk segfaulting on me THIS time?
19:12 <TemptorSent> Ah, bad input again -- filename out of order and CRASH :)
19:15 <Shiz> jirutka: also fixed the LD_LIBRARY_PATH issue btw
19:15 <jirutka> Shiz: patch plz :)
19:16 <Shiz> hold on, not fully yet it seems
19:16 <Shiz> (it broke somewhere middle in the build process)
19:17 <Shiz> jirutka: also why do we --disable-docs right now?
19:18 <jirutka> Shiz: ’cause it produces just HTML pages that you can view online; I don’t really want to bother with that :)
19:18 <Shiz> okay
19:18 <Shiz> jirutka: also
19:18 <Shiz> https://github.com/alpinelinux/aports/pull/1222/files#diff-0d0f9a278fdcdf00a9167fd4861cdfe7R108
19:18 <Shiz> this local stanza seems unneeded?
19:19 <jirutka> Shiz: yeah, good catch! I forgot to remove it
19:20 <Shiz> also that ldpath= seems unused
19:20 <Shiz> :P
19:21 <jirutka> nn, it’s used by abuild for tracking deps
19:21 <Shiz> oh
19:21 <Shiz> i didnt know that
19:25 <jirutka> Shiz: I’m thinking if we should bother with creating rust-bootstrap for cross-compiling rustc on glibc-based system to musl, or rely on binaries from VoidLinux for bootstrapping
19:25 <jirutka> Shiz: it doesn’t look like upstream will provide prebuilt binaries for musl soon :/
19:25 <Shiz> can't we use our own builds to bootstrap?
19:26 <Shiz> jirutka: how about a -bootstrap() subpackage?
19:26 <Shiz> that packages make dist
19:26 <Shiz> that should recreate what void gives
19:26 <Shiz> us
19:27 <jirutka> we can, but IIRC Alpine’s approach is to be able to bootstrap complete distro from nothing, without relaying on previous builds
19:27 <jirutka> kaniini: ? ^
19:41 <Shiz> jirutka: making a PR for jemalloc atm
19:42 <kaniini> jirutka yes indeed that is the goal
19:44 <kaniini> what we did for haskell was basically to use docker iirc
19:47 <jirutka> kaniini: I know
19:48 <kaniini> imo
19:48 <kaniini> what we should do is look at either that as an option
19:49 <kaniini> or there is... the option of using the glibc packaging
19:49 <kaniini> to run rustc
19:49 <kaniini> but that one i don't like
19:49 <kaniini> because
19:49 <kaniini> it may encourage other bad things
19:55 fekepp joined
19:56 <jirutka> kaniini: like installing glibc on Alpine? I’d rather not open this Pandora box
19:57 <kaniini> somebody already opened that box
19:57 <kaniini> https://github.com/sgerrand/alpine-pkg-glibc
20:00 <Shiz> jirutka: my LD_LIBRARY_PATH solution still requires you to pass it to make, but at least you don't have to delete the lines from bootstrap anymore
20:00 <Shiz> since bootstrap actually gets it right
20:00 <Shiz> :p
20:00 <Shiz> jirutka: also, a proper solution for LD_LIBRARY_PATH would be to use -rpath properly on the binaries we use to bootstrap
20:00 <Shiz> so we wouldn't need it anymore
20:02 <jirutka> Shiz: https://src.fedoraproject.org/cgit/rpms/rust.git/tree/rust.spec#n185
20:03 <Shiz> jirutka: so we only want to use strip -g? :)
20:03 <jirutka> Shiz: when I run `strip` on some Rust’s *.so lib and then check objdump -h, I still see the section .rustc; does it mean that our strip does not strip that section?
20:03 <Shiz> i think fedora uses a more agressive strip
20:04 <Shiz> jirutka: what made you add !strip in the first place?
20:04 <jirutka> so we should be safe?
20:04 <Shiz> did it not work before?
20:04 <jirutka> Shiz: I can’t remember :(
20:04 <Shiz> :p
20:04 <Shiz> we're not sure if that's the whole reason, do we
20:04 <jirutka> Shiz: it was probably just temporal
20:05 <Shiz> jirutka: https://txt.shiz.me/N2Q0ODM1MD
20:05 <Shiz> what do you think of this?
20:07 <jirutka> uh, rustc now produces much bigger static binaries
20:07 <jirutka> maybe because of jemalloc?
20:07 <Shiz> how much bigger is much bigger?
20:08 <jirutka> or that I’ve added --enable-debuginfo? but that should affect only rustc itself, right?
20:08 <jirutka> like 4.9 MiB for hello_world instaed of 2.2 MiB (unstripped)
20:08 <Shiz> that's definitely not jemalloc i think
20:08 <Shiz> my jemalloc hello_world was 2.5mb
20:08 <jirutka> stripped 358 kiB instead of ~160 kiB
20:08 <jirutka> or something like that
20:08 <Shiz> jirutka: i think --enable-debuginfo also includes libstd and the like
20:08 <Shiz> which then get statically linked in
20:08 <Shiz> :p
20:12 <jirutka> ad https://txt.shiz.me/N2Q0ODM1MD: not sure, it seems maybe more hackish than my approach, b/c you lie to rustc about the version of stage0
20:12 <jirutka> I’m surprised that it works
20:12 <jirutka> it used to be harder to cheat it
20:12 <Shiz> they removed they key stuff
20:12 <Shiz> but yeah im not sure either
20:13 <Shiz> jirutka: this would not be a problem if our bootstrap binaries had proper rpath
20:13 <Shiz> :p
20:13 <Shiz> yeah let's drop that patch
20:13 <Shiz> it's more unstable
20:14 <Shiz> jirutka: although i still would recommend at least adding the change in cargo revision to your apkbuild
20:14 <Shiz> that's the "official" cargo it's supposed to be abuilt with
20:14 <Shiz> from src/stage0.txt
20:23 <jirutka> Shiz: okay
20:24 <Shiz> also maybe we should call rust-stdlib rust-libs?
20:24 <Shiz> more in line with other alpine package names
20:24 <Shiz> and considering they also provide the compiler-needed libraries
20:33 <jirutka> Shiz: -libs has different semantic
20:33 <jirutka> Shiz: maybe more appropriate would be -libs-static
20:34 <jirutka> Shiz: does not contain compiler-needed libs anymore :)
20:35 <Shiz> ? re: the latter
20:37 <jirutka> Shiz: I’ve already moved *.so to the base pkg
20:40 <jirutka> Shiz: https://github.com/alpinelinux/aports/pull/1222
20:42 <Shiz> what does rust-dbg contain btw?
20:42 <Shiz> same but unstripped?
20:42 <jirutka> .debug objects
20:43 <Shiz> also, why do we depend on musl-dev?
20:43 <Shiz> the crt* files?
20:44 <jirutka> foo.debug is a complement to foo binary; the former contains debug symbols that has been stripped from the latter
20:44 <Shiz> right
20:44 <jirutka> yes, crt files
20:44 <Shiz> gotcha
20:45 tmh1999 joined
20:45 <kaniini> https://github.com/rpm-software-management/rpm/pull/192
20:46 <kaniini> problem first discovered in alpine
20:46 <kaniini> all distros that provide pkg-config metadata appear to have metadata corruption caused by pkg-config stupidity
20:48 <kaniini> in our case it was corrupting modemmanager-dev provides list
20:48 <jirutka> :)
20:48 <Shiz> jirutka: https://github.com/rust-lang/rust/pull/41168
20:56 <Shiz> gonna make a cargo package i think
20:57 <jirutka> Shiz: we already have cargo pkg ;)
20:58 <Shiz> do we?
20:58 <jirutka> Shiz: how can I reliably detect if some binary is correct static PIE binary?
20:58 <Shiz> oh we do
20:58 <jirutka> https://pkgs.alpinelinux.org/package/edge/testing/x86_64/cargo
20:59 <Shiz> jirutka: no DT_INTERP or DT_NEEDED entries
20:59 <Shiz> and PIE in FLAGS_1
21:00 <Shiz> s/DT_INTERP/PT_INTERP/
21:00 <jirutka> Shiz: using readelf -d ?
21:00 <Shiz> for NEEDED, yes
21:00 <Shiz> INTERP is part of the program headers
21:01 <jirutka> i’d like to add test to check() for this
21:01 <Shiz> readelf -l mybinary | grep -q INTERP
21:01 <Shiz> readelf -d mybinary | grep -q NEEDED
21:01 <Shiz> readelf -d mybinary | grep FLAGS_1 | grep -q PIE
21:01 <Shiz> first two need to fail, last one needs to pass
21:01 <jirutka> thanks!
21:06 <Shiz> jirutka: the cargo package probalby needs an update :p
21:06 <* Shiz> gets on it
21:07 <jirutka> I know
21:09 <Shiz> also, do we want to make the rust apkbuild multi-arch compatible?
21:09 <Shiz> it's currently a lonely single arch
21:11 leitao joined
21:16 <jirutka> yes, this is next step
21:17 <Shiz> :)
21:28 <Shiz> i also have an idea for verifying cargo deps...
21:36 <jirutka> Shiz: it seems that downgrading cargo has fixed tests :)
21:36 <Shiz> to the recommended one?
21:36 <jirutka> yeah
21:36 <Shiz> fascinating
21:36 <Shiz> :)
21:36 <Shiz> jirutka: meanwhile my check() for the cargo package is being killed by grsec
21:36 <Shiz> :p
21:36 <jirutka> it seems that the newer one runs linters that the older one does not
21:36 <Shiz> null deref
21:37 <jirutka> I have one failure https://hastebin.com/raw/azizoceson
21:37 <jirutka> that is quite expected :)
21:38 <jirutka> hmm, I run on grsec system, but no problem
21:39 <Shiz> anyway
21:39 <Shiz> implementing my solution to verify cargo deps now
21:39 <Shiz> :)
21:41 <jirutka> how?
21:41 <jirutka> I have a plan how to solve this generally for rust pkgs, but not implemented yet
21:41 <Shiz> fetch() implementation which calls `cargo fetch` and tars up the result
21:46 <jirutka> sounds good :)
21:55 <jirutka> static binary is still huge af
21:56 <jirutka> maybe it’s caused by stripping of rustc and libs? but that would be really weird…
21:56 <Shiz> hmm
21:58 <jirutka> are you sure that it’s not caused by jemalloc?
22:00 <Shiz> i mean, i thought i was
22:01 <Shiz> btw good news, the method works
22:01 <Shiz> :)
22:01 <Shiz> https://txt.shiz.me/MTgyNjc0YT
22:03 <jirutka> that’s quite nasty
22:04 <jirutka> but nice idea
22:04 <Shiz> it's a tiny bit of added nasty because this has to use the bootstrap cargo
22:04 <Shiz> the main issue i see is that it's kinda volatile...
22:04 <jirutka> i don’t like that you have to unpack tarball yourself
22:05 <Shiz> jirutka: we can always include the Cargo.toml separately
22:05 <Shiz> as a separate distfile
22:05 <jirutka> hm, true
22:05 <Shiz> or even the cargo.lock
22:05 <Shiz> thats a lot better in fact
22:05 <jirutka> WDYT? https://github.com/alpinelinux/aports/pull/1222/commits/206fc4252cfe4d39109405d46501723d801a2407
22:05 <Shiz> that way we remove the volatility
22:06 <Shiz> i think we need more infra in abuild for this
22:06 <Shiz> :p
22:12 <leitao> jirutka, Can you review https://github.com/alpinelinux/aports/pull/1223 please?
22:13 <Shiz> jirutka: looks like we can't add Cargo.toml/lock ourselves
22:13 <Shiz> it may rely on files within the source dir...
22:19 <jirutka> leitao: done
22:19 <leitao> jirutka, thanks!
22:20 <leitao> I didn't want to push directly because of the checksum change.
22:23 <Shiz> okay
22:23 <Shiz> confirmed it works properly now
22:23 <Shiz> it is somewhat nasty, sdaly
22:25 tmh1999 joined
22:30 <Shiz> jirutka: i'd put those tests in a separate shell script
22:30 <Shiz> btw
22:30 <Shiz> to make the apkbuild cleaner
22:36 <jirutka> wtf is wrong with the rust tests
22:36 <jirutka> it somehow randomly fails or what
22:37 <jirutka> and also when I run abuild check and then rerun it again, it fails to run my custom tests b/c some .so lib does not exist o.O
22:39 <jirutka> but it does not modify what is then installed, at least
22:40 <jirutka> hm, maybe I should not run these custom tests on files from stage2?
22:44 <jirutka> hm, when I build hello_world with unstripped rustc, it produces smaller binary (2.5 MiB instead of 4 MiB), but stripped size is same (358 kiB)
22:44 <Shiz> o_O
22:44 <jirutka> but IIRC it used to be really smaller
22:44 <jirutka> stripped
22:44 <jirutka> I’ll try without jemalloc
22:59 alacerda joined
23:00 <Shiz> >>> cargo-doc*: Preparing subpackage cargo-doc...
23:00 <Shiz> >>> ERROR: cargo-doc*: Missing /home/builder/alpine-aports/testing/cargo/pkg/cargo-doc
23:00 <Shiz> >>> ERROR: cargo-doc*: prepare_package failed
23:00 <Shiz> que
23:11 <TemptorSent> Okay, staging is working, but extracting the checksums from the apk with awk takes PAINFULLY long for the kernel/firmare/etc.
23:14 <jirutka> Shiz: have I messed something?
23:15 <Shiz> im unsure what would even CAUSE this error
23:15 <Shiz> :P
23:15 <jirutka> that there are no docs
23:15 <Shiz> but there are
23:15 <jirutka> hm
23:15 <jirutka> aha, that’s cargo
23:16 <Shiz> >cp /home/builder/alpine-aports/testing/cargo/src/cargo-0.17.0//src/etc/man/*.1 /home/builder/alpine-aports/testing/cargo/pkg/cargo/share/man/man1
23:16 <Shiz> looks like docs to me
23:16 <Shiz> :p
23:26 <Shiz> jirutka: care to give this a shot? https://txt.shiz.me/MzU4ODFhMm
23:26 <jirutka> Shiz: I care, ofc, but can’t now, I’m in middle of migrating and upgrading GitLab
23:26 <Shiz> haha
23:26 <Shiz> good luck
23:56 tmh1999 joined