sphalerite changed the topic of #nixos-dev to: NixOS Development (#nixos for questions) | NixOS 19.03 released! https://discourse.nixos.org/t/nixos-19-03-release/2652 | https://hydra.nixos.org/jobset/nixos/trunk-combined https://channels.nix.gsc.io/graph.html https://r13y.com | 19.03 RMs: samueldr,sphalerite | https://logs.nix.samueldr.com/nixos-dev
pie_ has quit [Remote host closed the connection]
pie_ has joined #nixos-dev
justanotheruser has quit [Ping timeout: 258 seconds]
justanotheruser has joined #nixos-dev
orivej has joined #nixos-dev
drakonis has joined #nixos-dev
<{^_^}> #60140 (by ivan, 3 minutes ago, open): chromium: 73.0.3683.103 -> 74.0.3729.108
orivej has quit [Ping timeout: 245 seconds]
domenkozar[m] has joined #nixos-dev
<domenkozar[m]> > domenkozar joined, was kicked, joined, was kicked and joined
<{^_^}> error: syntax error, unexpected ',', expecting ')', at (string):252:18
<domenkozar[m]> life in irc world
<domenkozar[m]> any news this week? https://github.com/NixOS/nixos-weekly/pull/91
<{^_^}> nixos-weekly#91 (by domenkozar, 6 days ago, open): Call for Content: 2019/08
drakonis has quit [Quit: WeeChat 2.4]
orivej has joined #nixos-dev
Jackneill has quit [Ping timeout: 245 seconds]
Jackneill has joined #nixos-dev
phreedom_ has joined #nixos-dev
phreedom has quit [Ping timeout: 256 seconds]
pie_ has quit [Ping timeout: 258 seconds]
Synthetica has joined #nixos-dev
pie_ has joined #nixos-dev
pie___ has joined #nixos-dev
pie_ has quit [Ping timeout: 244 seconds]
psyanticy has joined #nixos-dev
phreedom_ has quit [Ping timeout: 256 seconds]
<domenkozar[m]> is nixcon going to be in Prague or Brno?
<domenkozar[m]> I'm a bit confused :)
<gchristensen> domenkozar[m] it was probably your mask changing from your IP to NixOS/user/domenkozar
* gchristensen needs an extra 32gb of ram
zarel has joined #nixos-dev
<domenkozar[m]> ^^
phreedom has joined #nixos-dev
<arianvp> aszlig:you around?
<das_j> gchristensen: Probably because Nix doesn't really use pipe2()
<gchristensen> oh?
jtojnar has joined #nixos-dev
<gchristensen> oh interesting
<gchristensen> cool, looks like there is a nice performance win to be had
<das_j> gchristensen: Yes, if someone (with better C++) knowledge could come up with a more beautiful solution :c
<das_j> From the commit message: Yes, I know this implementation is bad and I should feel bad
<gchristensen> but no, I need an extra 32gb of ram because flamegraph.pl takes like 32gb of ram chewing on a nixpkgs trace
<das_j> Oh my
<pie___> whats flamegraph
<gchristensen> (if it looks like it failed to load, scroll down)
<ajs124> this kills the firefox
<gchristensen> if you think firefox is bad, don't try chrome
<pie___> my firefox handled this surprisingly well
<gchristensen> http://gsc.io/graph.unstable.post.svg here is a much smaller one after ekleog fixed our list.unique function
<pie___> so what is this
<gchristensen> it shows how much time is executed functions overall
<pie___> lol thats a big difference
<pie___> thx
<arianvp> nice
<gchristensen> I was thinking I'd make this part of every ofborg run, but (1) github won't let you display SVGs inline (2) the ofborg evaluators don't have enough ram
<pie___> hm
<pie___> is it because its perl?
<gchristensen> not sure
<gchristensen> ma27: seems then that 60138 is ready to go?
<das_j> #60138
<{^_^}> https://github.com/NixOS/nixpkgs/pull/60138 (by grahamc, 10 hours ago, open): wireguard: add generatePrivateKeyFile option + test
pie_ has joined #nixos-dev
pie___ has quit [Ping timeout: 276 seconds]
pie_ has quit [Remote host closed the connection]
pie___ has joined #nixos-dev
<ma27> gchristensen: unless my browser is trolling me you didn't push the change where you added yourself as a nixos test maintainer (https://github.com/NixOS/nixpkgs/pull/60138/files#r278059042)
<ma27> (sorry, was just busy with other stuff ^^)
<gchristensen> uhhh
<gchristensen> done :)
<ma27> gchristensen: so from my side it seems fine now, thanks! :)
<gchristensen> thanks!
<gchristensen> I'll merge once ofborg says ok
<ma27> great! :)
pie___ has quit [Remote host closed the connection]
pie___ has joined #nixos-dev
zarel has quit [Ping timeout: 244 seconds]
drakonis has joined #nixos-dev
pie_ has joined #nixos-dev
pie___ has quit [Ping timeout: 250 seconds]
drakonis has quit [Quit: WeeChat 2.4]
samueldr has joined #nixos-dev
<samueldr> looks like my IRC client thought I was still in this channel :/
<samueldr> this explains the general lack of activity and replies to an open ended query yesterday :)
<samueldr> [18:51:30] <samueldr> >> Remove Boehm GC dependency
<samueldr> [18:51:40] -*- samueldr is interested to read more about the precise-gc branch
<clever> samueldr: i have had memory leaks before that where "solved" by just building nix without GC
<clever> the ram usage still sky-rocketed, but the GC no longer compained when i hit some arb number
jtojnar has quit [Read error: Connection reset by peer]
jtojnar_ has joined #nixos-dev
<samueldr> I was thinking about the GC issues with too many heap sections beginning to show up with increasing frequency in hydra; and how if it helps with that we might be able to set aarch64-linux as a supported platform back
jtojnar_ is now known as jtojnar
<gchristensen> samueldr:let's chat in about 15min
Synthetica has quit [Quit: Connection closed for inactivity]
pie___ has joined #nixos-dev
pie_ has quit [Ping timeout: 245 seconds]
<globin> RFC Steering Committee Rotation RFC: https://github.com/NixOS/rfcs/pull/43
<{^_^}> rfcs#43 (by globin, 1 minute ago, open): RFC-0043: RFC Steering Committee Rotation
<matthewbauer> who is normally responsible for merging staging into staging-next? i can take that up if needed
<gchristensen> matthewbauer: maybe send vcunat an email saying you'd be interested in helping?
<gchristensen> part of that is also merging staging-next in to master :)
<matthewbauer> gchristensen: ok nice. it looks like fridh normally is doing it, but i could at least open a pr from staging-next to master
<gchristensen> matthewbauer: having more people doing it could only be a good thing
<gchristensen> I'd love to see a larger group collaborating on it
pie___ has quit [Ping timeout: 258 seconds]
zarel has joined #nixos-dev
<samueldr> gchristensen: I am now available for about an half an hour still if you have the time still
hedning__ has joined #nixos-dev
<gchristensen> oh sure
<gchristensen> moving up to my desk and I'll be back.
<gchristensen> ok so I met with Eelco today about that patch
<gchristensen> the idea is boehm's scanning means random data can look like a pointer, and can keep things alive unnecessarily -- this is part of why the fork is necessary in the hydra evaluator to successfully prune th egc.
<samueldr> ooh
asymmetric has quit [Read error: Connection reset by peer]
<gchristensen> another problem is nixpkgs is huge and everything points to everything, so it is very hard to find anything to GC anyway
<samueldr> and I guess those compounds a bit
<gchristensen> right
<gchristensen> with a non-boehm, precise GC, Nix could keep the thunk and then a weak pointer to the evaluated thunk. when GC runs, it frees the other end of the weak pointer and if it is needed again, just re-evaluates it
<gchristensen> initial testing with the precise-gc branch showed a reduction from about 7gb to 5gb of evaluation time memory, but he's expecting it to be much reduced
<gchristensen> much more reduced* to the point that it could operate in sort of constant memory (not literally, but also not unbounded by the growth of nixpkgs)
<samueldr> even if there was no reduce in memory use, depending on how the allocation and GC is done, I guess it would be an improvement if there is no _whatever caused the amount of heap sections_ to happen
<gchristensen> right, so under ideal scenarios where there is no memory pressure, ideally it would never GC and just go really fast
<gchristensen> but the idea of keeping the unevaluated thunk and a weak ref to the evaluated result is that under memory pressure it can prune old evaluated results as often as needed
<gchristensen> and in a more application-specific, smarter way than Boehm can do based on its simple design
<aminechikhaoui> question: do we allow IFDs in our current hydra.nixos.org ?
<gchristensen> no
<aminechikhaoui> any idea how do we disable that ? I want to do that on our private hydra
* gchristensen takes this to a PM
apaul1729 has joined #nixos-dev
<clever> gchristensen: ahhh, i was wondering how boehm found links
srhb has quit [Quit: ZNC 1.7.3 - https://znc.in]
<clever> gchristensen: ghc has a special thing in the type code to prevent mistakes there
srhb has joined #nixos-dev
<gchristensen> oh cool
<clever> gchristensen: the SRT bitmap is part of it
srhb has quit [Client Quit]
srhb has joined #nixos-dev
srhb has quit [Remote host closed the connection]
srhb has joined #nixos-dev
<gchristensen> oh cool
<gchristensen> that is neat!
drakonis has joined #nixos-dev
avn has joined #nixos-dev
<gchristensen> hey everyone, I'm going to be hosting regular Nix ecosystem office hours starting next week. It'll be a video call where anyone can drop in and chat about the Nix ecosystem: cool PRs, problems, improvements, how to help each other to improve Nix. If you're interested, please tell me when you're available over at https://doodle.com/poll/aq9iytabi3k7z9da#calendar -- thank you!
asymmetric has joined #nixos-dev
drakonis has quit [Ping timeout: 246 seconds]
pie_ has joined #nixos-dev
<worldofpeace> Maybe a discourse post for persistent visability?
<worldofpeace> Wait it's already there.
<infinisil> What do you think of the idea of creating a nixpkgs mirror repo just for /lib
<infinisil> Such that you can use that one instead when all you need is some library functions, and not carry around a whole nixpkgs
<qyliss> What can't you just fetch a tarball for lib?
<qyliss> (Not a retorical question)
<infinisil> The tarballs are 12MB big, and it changes every time somebody commits to nixpkgs
<infinisil> Oh shit sorry spider in my room, brb
<infinisil> NO IT GOT AWAYP
<pie_> lol
<infinisil> qyliss: Um anyways. I think it would work really well, updates to /lib are rare, and it's entirely self-contained
<pie_> its hiding in your code
<simpson> How dare it~ next thing you know, it'll be eating household pests for you~
<pie_> (simpson, "hmm the mouse is gone")
psyanticy has quit [Quit: Connection closed for inactivity]
<infinisil> :P
<infinisil> We don't want to split up /lib into a separate repo (monorepo and such), but we could still mirror it
<gchristensen> in what scenarios do you want lib but not nixpkgs?
<infinisil> This is what made me think of this: https://discourse.nixos.org/t/nixpkgs-standard-library/2753/2
<infinisil> While the author there didn't really mean /lib specifically, I think it would still be useful
<infinisil> I think I've used lib without nixpkgs before
<infinisil> Oh yeah, for running the module system for a custom option set
<gchristensen> if it is a just "I think" I'm not sure it is worth the headache, I feel it is quite complicated to split it out: makes API expectations different, and it may become much more easy to accidentally mix up versions
<infinisil> It shouldn't be that hard. It's really just a mirror of a subdirectory. Not sure what you mean with API expectations, /lib is self-contained
<infinisil> And it can be fully automatic, one-time setup
<samueldr> I wonder about a plain mirror, for the expectation of purity outside nixpkgs
<samueldr> something tested
<infinisil> samueldr: (I have no idea what you mean by what you just said)
<samueldr> if one copies lib outside of nixpkgs, how much of it will break since it relies on nixpkgs?
<samueldr> (if it relies on nixpkgs)
<infinisil> I'm pretty sure it doesn't rely on nixpkgs at all
<infinisil> Like 99.9% sure
<samueldr> right, then is it a property that's important? might a mirror of it be useful to test that? (though I guess there would be other ways to test that)
<infinisil> Ah, there are some parts that rely on stuff outside /lib, like the maintainers list, which is in nixpkgs/maintainers now.. (previously it was in /lib) :/
<infinisil> And nixpkgs/.version and nixpkgs/.version-suffix
<infinisil> And the tests of lib also do..
<infinisil> So much for that 99.9% lol, but this could be fixed
<infinisil> Probably not worth it though
<samueldr> is there value though? that's the other point that might be harder to gauge, the value has to outweigh the concerns even if it's just a mirror
<samueldr> (though, might be a fun experiment for your sake to do and see how useful or not it is?)
<infinisil> Yeah I don't have enough value out of it to justify trying to purify it
<infinisil> This makes me think. lib.maintainers shouldn't really be in lib, it's got nothing to do with a library, it's just a registry for nixpkgs contributors
<samueldr> through lazyness I guess most uses can be done anyway through referrencing "a nixpkgs", even if not ending up used with nixpkgs
<infinisil> But it also doesn't fit in pkgs
<Profpatsch> Since hydra doesn’t support IFD, we have to keep & maintain an exact duplicate. Not worth it imo
<infinisil> Profpatsch: No, I don't mean to split nixpkgs, nixpkgs stays exactly as it is now
<infinisil> Just *mirror* /lib
apaul1729 has quit [Remote host closed the connection]
zarel has quit [Quit: Leaving]
n_db has joined #nixos-dev
<ajs124> What's the policy on dropping unmaintained/useless software from nixpkgs, if there is one? Specifically, I'm talking about evopedia, because I saw it while scolling over the list in #33248
<{^_^}> https://github.com/NixOS/nixpkgs/issues/33248 (by yegortimoshenko, 1 year ago, open): Qt4 deprecation tracking issue
<ajs124> I used to use it back in the day, but it hasn't been developed for quite some time and I doubt there is up to date data that it can be used with.
<gchristensen> when was it last updated?
<ajs124> 2014. The website (http://evopedia.info/) literally tells you to go use kiwix.
<gchristensen> drop it
<gchristensen> but not in 19.03, just unstable
<ajs124> So I open a PR that just removes the package?
<gchristensen> yep
<ajs124> ok, will do. later though. now, sleep.
<gchristensen> and ping the listed maintainer
<gchristensen> in your PR
LnL has quit [Ping timeout: 255 seconds]