worldofpeace_ changed the topic of #nixos-dev to: #nixos-dev NixOS Development (#nixos for questions) | NixOS 20.03 BETA Announced https://discourse.nixos.org/t/nixos-20-03-beta/5935 | https://hydra.nixos.org/jobset/nixos/trunk-combined https://channels.nix.gsc.io/graph.html | https://r13y.com | 19.09 RMs: disasm, sphalerite; 20.03: worldofpeace, disasm | https://logs.nix.samueldr.com/nixos-dev
<worldofpeace> gchristensen: does ofborg request review for modules with meta.maintainers?
<gchristensen> not yet, not sure how to get at the maintainers
<gchristensen> would be good, maybe not tricky
<worldofpeace> cool, I'm adding myself to more of the modules https://github.com/NixOS/nixpkgs/pull/84059
<nix-build> #84059 (by worldofpeace, 6 minutes ago, open): nixos: add freedesktop/gnome/myself maintainers
<worldofpeace> also the teams stuff, which will be cool
<infinisil> Hmm..
<infinisil> How to get at modules maintainers is a good question..
<infinisil> Ah
<infinisil> > :p nixos.config.meta.maintainers
<nix-build> undefined variable 'b42' at /var/lib/nixbot/nixpkgs/master/repo/nixos/modules/services/web-apps/moinmoin.nix:302:46
<infinisil> > nixos.config.meta.maintainers
<nix-build> { "/var/lib/nixbot/nixpkgs/master/repo/nixos/modules/config/malloc.nix" = <CODE>; "/var/lib/nixbot/nixpkgs/master/repo/nixos/modules/hardware/ckb-next.nix" = <CODE>; "/var/lib/nixbot/nixpkgs/master/re...
<gchristensen> oh wow that is 1000000x easier than I expected
<infinisil> > :p nixos.config.meta.maintainers."/var/lib/nixbot/nixpkgs/master/repo/nixos/modules/config/malloc.nix"
<infinisil> Yeah same :P
<nix-build> [ { email = "joachifm@fastmail.fm"; github = "joachifm"; githubId = 41977; name = "Joachim Fasting"; } ]
<worldofpeace> gchristensen: where in ofborg should I be looking?
<gchristensen> to implement it?
<gchristensen> ehhhh nowhere good
<gchristensen> its a jumble
<gchristensen> nice
<worldofpeace> yeah, sounds pretty nice to do. adding to my todo list if it ever happens.
<worldofpeace> I should probably open an issue
<worldofpeace> gchristensen: we've also been poking you soo much on https://github.com/NixOS/ofborg/pull/410
<nix-build> ofborg#410 (by Ekleog, 22 weeks ago, open): nixpkgs-rs: build .passthru.tests too
<infinisil> I could probably change https://github.com/NixOS/nixpkgs/pull/82461 to harmonize with that meta.nix
<nix-build> #82461 (by Infinisil, 2 weeks ago, open): Checked maintainers
<worldofpeace> infinisil: oooh, that PR is nice 🎊
<infinisil> Oh, I should update the description though, because it's not entirely accurate anymore
<infinisil> This PR now depends on ofborg#438 to do the checking, it's not done whenever a maintainer is accessed anymore
<nix-build> https://github.com/NixOS/ofborg/pull/438 (by Infinisil, 2 weeks ago, open): Add check for lib tests
<infinisil> (updated now)
<infinisil> (though it's almost the same)
<infinisil> Ah gchristensen just merged that :D
<cole-h> infinisil: Well, I don't think it's blocked by PR anymore :P (438 just merged)
<Profpatsch> infinisil: lol, this reminds me of my PR that is never going to be merged https://github.com/NixOS/nixpkgs/pull/37252
<nix-build> #37252 (by Profpatsch, 2 years ago, open): Rewrite meta-check.nix type checking logic.
<jtojnar> worldofpeace we might want to use lib.teams everywhere in order to prepare for the removal of with
<gchristensen> I wouldn't worry too much about rmoving with
<infinisil> Profpatsch: Hehe yeah
<infinisil> But interesting, haven't seen that one before
<infinisil> gchristensen: Is the ofborg PR deployed immediately or how long does it take?
<worldofpeace> Jan Tojnar: I forgot to mention this to you, I drafted a section for gnome in the nixos manual around the same time I made one for pantheon. (I think last month). I have it in a gist here https://gist.github.com/worldofpeace/a908d45f3c504499fd8aa46a9ce09559. I mainly want it to explain https://github.com/NixOS/nixpkgs/issues/67310. also to explain our kinda weird way to configure it.
<nix-build> #67310 (by worldofpeace, 31 weeks ago, closed): Cleanup GNOME3 default applications
<gchristensen> infinisil: not immediately, as long as 12h, but I just finished a deploy
<worldofpeace> (very likely rough around the edges)
<infinisil> gchristensen: Cool, I'll update the checked maintainers PR in a day or so then :)
<worldofpeace> gchristensen: yay you merged ofborg PRs 💓
<gchristensen> speaking of which, if anyone wants to help manage ofborg: merge, issue deploys, debug prod, lmk :P
<cole-h> worldofpeace: Do I smell something I can nitpick? 👀
<cole-h> gchristensen: Maybe once I get more experienced with the codebase I'll hit you up ;^)
<worldofpeace> cole-h: if you know anything about gnome in nixos. but it's a draft (the first), so nitpicking isn't that helpful that early
<infinisil> jtojnar: I'm not sure removal of `with` is realistic
<gchristensen> cool :)
<cole-h> worldofpeace: Then I withdraw that statement. But let me know when it's ready for me to be a pedant and I'll do so >:)
<rnhmjoj> wait, wait wat? the removal of `with`?
<rnhmjoj> is the `with` syntax going to be removed from nix?
<gchristensen> it isn't happening
<worldofpeace> cole-h: pedants are most helpful to me. I will when it's ready
<cole-h> You know where to find me
<infinisil> rnhmjoj: This is the first time I've heard anything of the sorts too. `with` does cause weird issues with scoping, so I can see why some people would want to remove it, it's a bit of an anti-feature
<rnhmjoj> gchristensen: is there a discussion somewhere? it's something so fundamental i can't even think why it would be removed and what could be used instead
<jtojnar> infinisil well, it seemed like the public is mostly in favour of voluntary deprecation in the vein of rfcs#45
<nix-build> https://github.com/NixOS/rfcs/pull/45 (by 7c6f434c, 48 weeks ago, merged): [RFC 0045] Deprecating unquoted URL syntax
<gchristensen> rnhmjoj: I think the idea is to avoid doing hugely scoped `with`s. like `with pkgs;` in the beginning of your expression
<clever> infinisil: i prefer using with on as small of a scope as possible, like `with pkgs; [ foo bar baz ]`
<jtojnar> infinisil I tend to remove it/narrow its scope in expressions I maintain any way
<gchristensen> but like, buildInputs = `with pkgs; [ foo bar baz ]` (lol I typed thise xact same example) probably fine
<infinisil> jtojnar: Where have you heard that people support deprecation?
<Profpatsch> I wonder if `with pkgs;` increases eval space/time usage?
<gchristensen> here a few hours ago w/ adisblad\is
<jtojnar> infinisil it was discussed in here or in chat today, let me check
<clever> Profpatsch: it will need to search a map that is indexed by int
<Profpatsch> clever: is that map a list of all keys in the attrset?
<infinisil> Profpatsch: It's certainly not free, but I'd be surprised if it's expensive
<Profpatsch> Does that play into attrset keys being strict?
<clever> Profpatsch: yeah, but the keys are invisibly turned into ints
<clever> Profpatsch: yeah
<Profpatsch> ah, ic. So another reason why with is blasphemy :)
<gchristensen> ryantm++
<nix-build> ryantm's karma got increased to 11
<infinisil> Btw: `with pkgs; [ foo bar baz ] == attrValues { inherit (pkgs) foo bar baz; }`
<rnhmjoj> gchristensen: yeah i guess why the performance of that it's not great. but as you said, it's very useful. it's something i sometimes want in other languages too
<Profpatsch> GHC Haskell gets slower, too, if you don’t qualify your inputs btw
<Profpatsch> (compilation that is)
<gchristensen> rnhmjoj: I don't know/care so much about performance ,more about reasoning about what is happening :)
<Profpatsch> Can be quite impressive with bigger project compile times from what I hear
<worldofpeace> gchristensen: that was a quick deploy
<gchristensen> worldofpeace: just gotta push 2 buttons :)
<Profpatsch> rnhmjoj: I stopped using `with` everywhere when my Spacemacs got underlining of missing imports
<worldofpeace> oh right, you showed that on office hours before
<Profpatsch> `with` completely wastes static analyses like that, so you don’t get any feedback if you are missing an import
<Profpatsch> And that’s just something I don’t want to miss after I’ve experienced how useful it is.
<infinisil> Profpatsch: rnhmjoj: gchristensen: Let's go to #nix-lang for the `with` discussion
<infinisil> jtojnar: ^
<Profpatsch> I don’t think that discussion is going to go anywhere.
<Profpatsch> But for a future nix language version, it’s something to keep in mind :)
<Profpatsch> dhall recently introcuded `with`, and I was shocket at first, until I realized it’s a semantically completely different thing :)
<infinisil> Profpatsch: -> #nix-lang ?
<Profpatsch> infinisil: not joining yet another channel, sorry :)
<Profpatsch> IRC channels are like *insert bad analogy here*, best to keep the list short
<gchristensen> you can always leave them later :P
<Profpatsch> Also, you miss half of the interesting stuff if people split discussions into 200 different channels. And since there are no logs, you can’t stitch them together after the fact if you are not in all of them by happenstance.
<gchristensen> all the nix channels have pretty good log coverage
<gchristensen> fwiw
<infinisil> Profpatsch: It's just really distracting if there's hot discussions about completely different topics in the same channel (like just now). With separate channels you don't have that, and you can only "subscribe" to the ones that interest you
<infinisil> Though actually, this discussion about IRC channels is for #nixos-chat :P
<drakonis> did y'all actually have any meetings in this trying time?
orivej has quit [Quit: No Ping reply in 180 seconds.]
orivej has joined #nixos-dev
orivej has quit [Quit: No Ping reply in 180 seconds.]
orivej has joined #nixos-dev
drakonis has quit [Quit: WeeChat 2.7.1]
orivej has quit [Quit: No Ping reply in 180 seconds.]
orivej has joined #nixos-dev
drakonis has joined #nixos-dev
orivej has quit [Quit: No Ping reply in 180 seconds.]
orivej has joined #nixos-dev
teto has quit [Ping timeout: 246 seconds]
orivej has quit [Quit: No Ping reply in 180 seconds.]
<Profpatsch> infinisil: see, you’re already breaking under the load of all those different channels :)
<Profpatsch> A great property of IRC is that it’s not problem to have multiple discussions at the same time.
<Profpatsch> 2 or 3 are usually no problem.
orivej has joined #nixos-dev
<Profpatsch> drakonis: you are assuming people here are leaving their homes *less* than they usually would :)
<infinisil> Profpatsch: It is a problem though? There's no threading at all, it's just a big mess of people talking into each other
<Profpatsch> like in a normal room, it’s great
<Profpatsch> modern agora and shit
<samueldr> no it's not
<samueldr> it's something that people can get over
<samueldr> but it's not great
<samueldr> and it's not a feature of IRC
<samueldr> it's people getting over it
<Irenes[m]> hey, so I like the `services.nginx.virtualHosts.<name>.useACMEhost` feature, which tells nginx that there is an ACME service running that it should integrate with, but without actually taking on the work of hosting the challenge tokens.
<Irenes[m]> I implemented an equivalent with HAProxy (it's basically just a couple systemd rules about when the unit restarts)
<Irenes[m]> if I were to polish that up to upstream it, would there be any interest?
<Irenes[m]> HAProxy is a load balancer, not a web server, but in some configurations it terminates TLS and uses certs in the same way a web server would
<Profpatsch> samueldr: if you want structured, non ephemeral discussion, chat is not the right medium. If you want to have a space for open discussion, it’s perfect.
<samueldr> that's orthogonal to what was said
<infinisil> First Nix PR :D https://github.com/NixOS/nix/pull/3468
<nix-build> nix#3468 (by Infinisil, 38 seconds ago, open): Make function arguments retain position info
<Irenes[m]> I apologize, I'm interrupting
<samueldr> Irenes[m]: sorry no, you're not
<samueldr> **you** are more on topic
<Profpatsch> heh
<samueldr> I would continue over to #nixos-chat, but since not all the participants are there, I'm just stopping
<Irenes[m]> I mean, IRC isn't my ideal but I like it anyway I guess? the problem it's solving is hard. but yeah.
<samueldr> (and for the record, I like IRC)
<Profpatsch> Irenes[m]: I’d ask on Discourse. Maybe ping some people that worked on the nginx stuff
<Irenes[m]> yeah I actually know some of those people I guess. I didn't realize there was a Discourse -
<Irenes[m]> (that emoticon connotes surprise and mixed emotions; it denotes an upside-down face intended to suggest the visual idiom of face-faulting in 1990s anime)
<Irenes[m]> oh a Discourse not a Discord
<Irenes[m]> sure, I can ask there
<Irenes[m]> thanks
<drakonis> Profpatsch: i mean, we have digital meetings these days
<Profpatsch> Irenes[m]: yeah, I stumble on the similarity of those regularly.
<drakonis> Irenes[m]: irene from lobsters?
<Irenes[m]> yep!
<Irenes[m]> it's kind of mind-boggling to think of that site as being a place that people know me from. I know it's very well-known now but I still think of it as small :)
<drakonis> and you're running nix now
<drakonis> to be fair, i've been there a bit before it started to really grow up
<Irenes[m]> I've been running Nix for years, I think it's amazing tooling. I just was also taking a multi-year vacation from IRC.
orivej has quit [Quit: No Ping reply in 180 seconds.]
<drakonis> migrate lobsters to nix some day yeah?
<Irenes[m]> I'm not the sole stakeholder in that, but I'll keep it in mind for sure
<drakonis> pushcx wanted to do it
<drakonis> ish
<Irenes[m]> haha
<Irenes[m]> you can start this conversation over in #lobsters if you want haha
<drakonis> investigating nix for usage but turns out the docs arent so good
<drakonis> ha, we've already had it before
<Irenes[m]> I'm currently in the process of trying to teach NixOS administration to a colleague who only knows traditional mutable-state distros. Depending on how that goes, I may be more interested in teaching it to other people, such as the other lobste.rs admins, in a few quarters. :)
<Irenes[m]> thanks for asking
<drakonis> perfect.
<drakonis> thank you.
orivej has joined #nixos-dev
<Profpatsch> Good to have lobste.rs people in the boat, I’ve only heard good things of that community
<Profpatsch> s/of/about/
orivej_ has joined #nixos-dev
orivej has quit [Read error: Connection reset by peer]
<Irenes[m]> thank you. that's quite flattering.
orivej_ has quit [Quit: No Ping reply in 180 seconds.]
orivej has joined #nixos-dev
bhipple has quit [Remote host closed the connection]
drakonis has quit [Quit: WeeChat 2.7.1]
evanjs has quit [Ping timeout: 240 seconds]
emery[m] has joined #nixos-dev
evanjs has joined #nixos-dev
lovesegfault has quit [Ping timeout: 272 seconds]
lovesegfault has joined #nixos-dev
lovesegfault has quit [Quit: WeeChat 2.7.1]
lovesegfault has joined #nixos-dev
cole-h has quit [Ping timeout: 256 seconds]
FRidh has joined #nixos-dev
FRidh2 has joined #nixos-dev
FRidh has quit [Ping timeout: 260 seconds]
worldofpeace has quit [Quit: killed]
Dandellion has quit [Quit: killed]
Ericson2314 has quit [Quit: killed]
dtz has quit [Quit: killed]
bennofs[m] has quit [Quit: killed]
colemickens has quit [Quit: killed]
jonge[m] has quit [Quit: killed]
alienpirate5 has quit [Quit: killed]
Irenes[m] has quit [Quit: killed]
ma27[m] has quit [Quit: killed]
Nyanloutre[m] has quit [Quit: killed]
rycee has quit [Quit: killed]
abbradar[m] has quit [Quit: killed]
aanderse has quit [Quit: killed]
emily has quit [Quit: killed]
domenkozar[m] has quit [Quit: killed]
roberth has quit [Quit: killed]
emery[m] has quit [Quit: killed]
rnhmjoj has quit [Quit: killed]
matthewbauer has quit [Quit: killed]
tokudan[m] has quit [Quit: killed]
pkolloch[m] has quit [Quit: killed]
layus[m] has quit [Quit: killed]
jtojnar has quit [Quit: killed]
mkg20001 has quit [Quit: killed]
arcnmx has quit [Quit: killed]
timokau[m] has quit [Quit: killed]
thefloweringash has quit [Quit: killed]
codyopel has quit [Quit: killed]
vaibhavsagar has quit [Quit: killed]
Ox4A6F has quit [Quit: killed]
bachp has quit [Quit: killed]
masaeedu[m] has quit [Quit: killed]
FRidh has joined #nixos-dev
FRidh2 has quit [Ping timeout: 264 seconds]
lovesegfault has quit [Ping timeout: 272 seconds]
dtz has joined #nixos-dev
logand has joined #nixos-dev
Irenes[m] has joined #nixos-dev
worldofpeace has joined #nixos-dev
rnhmjoj has joined #nixos-dev
enick_900 has joined #nixos-dev
bennofs[m] has joined #nixos-dev
tokudan[m] has joined #nixos-dev
alienpirate5 has joined #nixos-dev
arcnmx has joined #nixos-dev
jtojnar has joined #nixos-dev
timokau[m] has joined #nixos-dev
roberth has joined #nixos-dev
vaibhavsagar has joined #nixos-dev
ma27[m] has joined #nixos-dev
abbradar[m] has joined #nixos-dev
aanderse has joined #nixos-dev
Ericson2314 has joined #nixos-dev
rycee has joined #nixos-dev
codyopel has joined #nixos-dev
layus[m] has joined #nixos-dev
thefloweringash has joined #nixos-dev
pkolloch[m] has joined #nixos-dev
mkg20001 has joined #nixos-dev
Dandellion has joined #nixos-dev
bachp has joined #nixos-dev
emery[m] has joined #nixos-dev
domenkozar[m] has joined #nixos-dev
colemickens has joined #nixos-dev
Nyanloutre[m] has joined #nixos-dev
Ox4A6F has joined #nixos-dev
matthewbauer has joined #nixos-dev
jonge[m] has joined #nixos-dev
masaeedu[m] has joined #nixos-dev
__monty__ has joined #nixos-dev
CRTified has quit [Ping timeout: 240 seconds]
CRTified has joined #nixos-dev
<jtojnar> worldofpeace the GNOME docs look awesome. Should I convert them to docbook?
__monty__ has quit [Quit: leaving]
CRTified has quit [Quit: Gateway shutdown]
<adisbladis> FRidh: It's almost eery how many times I search for strange python issues and your name pops up (even outside of nix) :)
<worldofpeace> Jan Tojnar: ooh, that's nice for a first draft. Sure. I haven't done this yet
__monty__ has joined #nixos-dev
<FRidh> adisbladis: yes, we tend to find them with nix :)
<FRidh> on the brought side...given time they often get resolved
<FRidh> I think this is also why it is so valuable that we often run the test suites of packages
<FRidh> the feedback can really help improve the overall quality of the python ecosystem which I think we all agree can use it
<FRidh> maybe also says its time for me to find another hobby :p
FRidh2 has joined #nixos-dev
FRidh has quit [Ping timeout: 252 seconds]
v0|d has joined #nixos-dev
<b42> infinisil: facepalm.jpg --> https://github.com/NixOS/nixpkgs/pull/84103
<nix-build> #84103 (by mmilata, 55 seconds ago, open): nixos/moinmoin: fix maintainer reference
teto has joined #nixos-dev
<gchristensen> NixOS 20.03 Markhor meeting is tomorrow 3pm america/new_york: https://discourse.nixos.org/t/go-no-go-meeting-nixos-20-03-markhor/6495/15?u=grahamc
<gchristensen> ma27[m]: ^
<ma27[m]> awesome, thanks!
teto has quit [Ping timeout: 240 seconds]
<worldofpeace> Mic92: it's at 14:00 utc right?
teto has joined #nixos-dev
<Mic92> worldofpeace yes
<Mic92> worldofpeace: oh, no its BST
<Mic92> so in 3 minutes
<Mic92> sphalerite: niksnut ^
<sphalerite> yep
<Emantor> FYI: Jitsi scales best with chromium.
<sphalerite> was just looking to see if there's an obvious location where we're holding this meeting :^)
<Emantor> https://github.com/jitsi/jitsi-meet/issues/4758 for details on chromium vs firefox.
<nix-build> jitsi/jitsi-meet#4758 (by jans23, 24 weeks ago, open): 100% support for Firefox (and other non-Chrome browsers)
<Mic92> sphalerite: could you please create a pad?
<gchristensen> this is about something other than the go/no-go meeting right? :P
<sphalerite> gchristensen: yes :) RFCSC
<gchristensen> cool
<sphalerite> Mic92: where are we meeting?
<Mic92> sphalerite: I think we decided last time to still stick to jitsi
b42 has quit [Ping timeout: 256 seconds]
b42 has joined #nixos-dev
ekleog has quit [Remote host closed the connection]
ekleog_ has joined #nixos-dev
<worldofpeace> Thanks again everyone. that was quick, probably thanks to Mic92 being soo prepaired. we all should aspire to be this ready 😃
<Mic92> worldofpeace: thanks!
<niksnut> Mic92++
<nix-build> Mic92's karma got increased to 16
drakonis has joined #nixos-dev
<worldofpeace> Mic92++
<nix-build> Mic92's karma got increased to 17
<domenkozar[m]> Mic92++
<nix-build> Mic92's karma got increased to 18
<ekleog_> gchristensen++ Thank you for the merge! :D
<nix-build> gchristensen's karma got increased to 250
raboof has joined #nixos-dev
orivej has quit [Ping timeout: 256 seconds]
<infinisil> b42: :D
<infinisil> > :p nixos.config.meta.maintainers
<nix-build> { "/var/lib/nixbot/nixpkgs/master/repo/nixos/modules/config/malloc.nix" = [ { email = "joachifm@fastmail.fm"; github = "joachifm"; githubId = 41977; name = "Joachim Fasting"; } ]; "/var/lib/nixbot/nix...
<infinisil> Nice, that works now
<adisbladis> Nice =)
worldofpeace_ has joined #nixos-dev
<b42> https://github.com/NixOS/nixpkgs/pull/84114 backports this to 20.03 if someone wanted to do this on 20.03 ...
<nix-build> #84114 (by mmilata, 31 seconds ago, open): nixos/moinmoin: fix maintainer reference
<infinisil> Merged, seems reasonable
<b42> \o/
<b42> infinisil++
<nix-build> infinisil's karma got increased to 243
worldofpeace_ has quit [Quit: worldofpeace_]
<b42> infinisil: while on the topic of embarrassing mistakes, can i maybe ask you to take a quick look at https://github.com/NixOS/nixpkgs/pull/83258 ?
<nix-build> #83258 (by mmilata, 1 week ago, open): nixos/sympa: fix outgoing emails, update package version
ixxie has joined #nixos-dev
orivej has joined #nixos-dev
<andi-> I am having a weird issue when I run `nix build -L -f something.nix A B -o output` in a tight loop. Sometimes Nix thinks that A or B isn't of the correct type (attrset) and trips on itself: https://gist.github.com/andir/6e9bb947839c54e8cbba7d91a3b6d17c Any immediate ideas? Still trying to collect more details before opening an issue.
<puck> andi-: does this happen with the GC turned off?
<andi-> puck: I haven't tried yet but that is on my list of candidates.. I can apparently make it go away by adding an intermediate nix file that just does `import other.nix`..
<puck> another fun try is GC_ENABLE_INCREMENTAL, which might make it even worse, and is how another GC issue was found?
<andi-> That being said the v->type was a unusually large int when I inspected it earlier.. so maybe the GC did reclaim and reallocate it?
<puck> yes
<puck> that is exactly what happened. rr is very fun with this btw
<andi-> Yeah, a coworker suggested that.. I am reluctant to do that just yet but it might be the best time investment. :)
cole-h has joined #nixos-dev
<arianvp> how does automatic modprobing work in NixOS? I see in stage-1 we set /proc/sys/kernel/modprobe to a nix-store path; and modprobe by default looks in /lib/modules
<arianvp> and that is existent in stage-1 but not stage-2
<arianvp> does that mean we cant dynamically modprobe modules after we're outside of stage-1? e.g. when udev tries to modprobe modules for new devices etc
<andi-> IIRC modprobe was patched to check /run/booted-system
<andi-> arianvp: yeah, look at pkgs/os-specific/linux/kmod/default.nix in nixpkgs
<andi-> line 7
<arianvp> danke
<andi-> puck: disabling the GC does indeed seem like it fixed it. Next up: RR
<yorick> I wanted to debug some of these gc issues but they stopped happening when I tried
orivej_ has joined #nixos-dev
orivej has quit [Read error: Connection reset by peer]
CRTified has joined #nixos-dev
justanotheruser has quit [Ping timeout: 252 seconds]
<gchristensen> one of ofborg's macs just died
<gchristensen> I'll have to look in to it
<gchristensen> maybe I can open up the case and fix it somehow
edef has quit [Read error: Connection reset by peer]
edef has joined #nixos-dev
justanotheruser has joined #nixos-dev
_e has quit [Quit: WeeChat 2.7.1]
justanotheruser has quit [Ping timeout: 256 seconds]
justanotheruser has joined #nixos-dev
lovesegfault has joined #nixos-dev
justanotheruser has quit [Ping timeout: 258 seconds]
justanotheruser has joined #nixos-dev
teto has quit [Ping timeout: 246 seconds]
FRidh has joined #nixos-dev
FRidh2 has quit [Ping timeout: 260 seconds]
<enick_900> hm, shouldn't packagekit default to the nix backend by default? https://github.com/NixOS/nixpkgs/commit/9737f249195db232178c3f7034e1c23220f4fcda removed the TODO for that, but supporting the native package manager is the behaviour I'd expect of a packagekit package on any distro
<enick_900> I actually disabled gnome-software etc. after going "hm, guess there's no Nix backend" (maybe it doesn't work properly?)
teto has joined #nixos-dev
<matthewbauer> emily: it used to work pre-Nix 2.0, but I haven't had time to update it
<infinisil> Is there some convenience function for creating a new derivation that removes all files from another one that references a certain dependency?
<infinisil> E.g. there's package A that depends on B, I want to create a C that looks like A, but removing all files that reference B
<infinisil> (If this doesn't exist it probably should be created)
<domenkozar[m]> remove all files that reference it_
<domenkozar[m]> ?
<gchristensen> nukeReferences?
<infinisil> # The program `nuke-refs' created by this derivation replaces all# references to the Nix store in the specified files by a non-existant# path (/nix/store/eeee...). This is useful for getting rid of# dependencies that you know are not actually needed at runtime.
<infinisil> This just replaces the references with invalid ones, it doesn't remove the files themselves
<infinisil> I'm thinking about `nfs-utils` here, which depends on python for 2 scripts (out of like 20)
<infinisil> A minimal version without python support could be created by removing those script
<infinisil> And ultimately, zfs depends on python partially because it uses nfs-utils
<infinisil> But it only needs the ${zfs-utils}/bin/exportfs binary
<infinisil> (which doesn't need python)
<infinisil> Maybe we need to standardize having a separate output for each binary :P
<Profpatsch> infinisil: cp -r && grep -l "#!*python" | xargs -i {} rm {} ?
<Profpatsch> might be slightly off in the presence of symlinks though
<infinisil> Something that like ought to work yeah
<Profpatsch> I don’t think we can make a general tool that handles all edge-cases
<infinisil> I think it should be possible
<infinisil> Because Nix does exactly that
<Profpatsch> btw: cp does not do copy-on-write by default m(
<Profpatsch> you need --reflink=auto
<Profpatsch> I wonder how much our build times would improve if we replaced stdenv cp with one that always does CoW by default
<Profpatsch> one-line patch
<infinisil> Doesn't normal cp do that already?
<infinisil> If it's on the same filesystem
<infinisil> Ah wait no
<Profpatsch> install might do it. At least it has no specific flag for enabling it
<Profpatsch> nope, it doesn’t
yegortimoshenko has joined #nixos-dev
<gchristensen> we'd have to run on filesystems which support reflink
<Profpatsch> gchristensen: Surprised you haven’t migrated everything to zfs yet :)
<gchristensen> zfs doesn't support reflink
<Profpatsch> whaaa
<Profpatsch> No copy-on-write?
<gchristensen> it is copy-on-write
<tilpner> CoW on a different level
<nix-build> openzfs/zfs#405 (by torn5, 8 years ago, open): COW cp (--reflink) support
<Profpatsch> whoa, TIL
orivej_ has quit [Quit: No Ping reply in 180 seconds.]
orivej has joined #nixos-dev
<Profpatsch> So in a nutshell, ZFS does copy-on-write, but requires boatloads of RAM to do it online, but there’s no way to just do a hardlink when copying.
<Profpatsch> well, I guess nix hardlinks anyway after the fact.
<Profpatsch> But the time for copying is still spent
<tilpner> Profpatsch: Where'd you get that from?
<Profpatsch> tilpner: the linked issue
<gchristensen> ZFS doesn't require a lot of ram to do copy on write
<tilpner> Profpatsch: It can do CoW without lots of memory
<gchristensen> you're thinking of dedup, which is different
<Profpatsch> It still needs to hash if I read the issue correctly.
<gchristensen> ZFS *is* a copy-on-write filesystem, there is no doubt or debate on that
<gchristensen> being CoW does not imply reflink
<gchristensen> and it does hashing on every write, yeah
<gchristensen> that is how it works on a fundamental level -- everything is hashed
<tilpner> There's no good reason to, but you *can* disable it
<gchristensen> how?? how does it work at all if you disable hashing? its fundamental structure is a merkle tree
<tilpner> I'm not familiar with the internals, so I might be entirely wrong. I was referring to checksum=off
<enick_900> matthewbauer: thanks for the info -- it looks like it works enough for basic packagekit tasks (searching, installs) but fails on fancier stuff and doesn't work with Software, so maybe not worth enabling by default
<enick_900> (though I still think it's kinda pointless to have a packagekit that can't do anything)
<gchristensen> tilpner: ah, that is a read-time checksumming to see if you got the data you wrote :)
<enick_900> gchristensen: yeesh, the github comments like "just make a new dataset and CoW that"
<tilpner> gchristensen: Why does a read-time checksumming setting only apply to new data?
<gchristensen> tilpner: well I guess it is also not writing a checksum bit too
<gchristensen> but pretttty sure you can't disable hashing
<tilpner> But still calculating internalls?
<tilpner> *internally?
<yegortimoshenko> gchristensen: zfs checksums can be disabled with `zfs set checksum=off`, see: https://github.com/openzfs/zfs/wiki/Checksums
<gchristensen> yeah but how does the checksum interact with the hash-tree structure of how it stores data
<yegortimoshenko> zfs is block-based, only metadata/file hierarchy is stored in merkle trees
<gchristensen> oh I see
<gchristensen> cool, thanks yegortimoshenko
<enick_900> gchristensen: even the metadata pointers aren't just hashes, they're an underlying pointer + checksum, so it can just zero out the checksum part i think
<gchristensen> cool
<enick_900> the difference between "merkle tree" and "content-addressed store" basically
<infinisil> Aw yeah, reduced the closure size of a system from 950M to 633M
<infinisil> Let's see if it still works though..
<infinisil> I did disable polkit and udisks2
<gchristensen> anyone know why kresd changed to a template service, and why they're named kresd@1.service etc?
<gchristensen> I'm not sure how I should know it is named @1 when I author a dependency on it
teto has quit [Ping timeout: 246 seconds]
teto has joined #nixos-dev
lovesegfault has quit [Quit: WeeChat 2.7.1]
FRidh has quit [Quit: Konversation terminated!]
nix-build has quit [Remote host closed the connection]
{^_^} has joined #nixos-dev
<tilpner> gchristensen: That's how it does parallelism
<tilpner> gchristensen: You start multiple if you want kresd to use multiple cores
<tilpner> See services.kresd.instances
<gchristensen> I suppose then I should depend on kresd.target?
<andi-> They did ditch the systemd socket activation IIRC. It wasn't really working out for some of them.
<tilpner> Probably
* tilpner liked the socket activation
<andi-> Me too.. I am just now searching for the mail that I had that explained the move
<andi-> ahh was on gitter: pspacek | Yeah, the systemd socket magic was too complicated for normal use so we got rid of that in version 5.0.0.
ixxie has quit [Ping timeout: 256 seconds]
<infinisil> Idea: Have a repository like nix-community/system-configs that contains versions of people's system configs. Every nixpkgs PR then gets checked against all configs, and if any of them fail with the changes, a comment is posted
<infinisil> Or maybe rather a check
__monty__ has quit [Quit: leaving]
<samueldr> the amount of users patching software, thus needing a build to work makes this an expensive operation
<infinisil> Hmm yeah..
<infinisil> Maybe just a nix-instantiate then
<infinisil> And some way for people to nix-build their systems with their own CI, submitting the results back
<gchristensen> Rust does that with every crate published
<cole-h> crater!
<samueldr> note that I never said "impossible"! :) expensive!
<cole-h> I don't suppose Packet wants to loan 100 more x2.larges...? ;) (or whatever the "big" one that was brought up last time)
<adisbladis> Hm, I have a scary regression on my laptop
<adisbladis> All home directories in /etc/passwd were set to /var/empty
<gchristensen> frightful
<samueldr> that'll get rid of state (sorry)
<adisbladis> I didn't change any config, so I believe this is a nixpkgs regression
<gchristensen> I believe you
<gchristensen> yikes
<adisbladis> Ok, it's my own stupidity
<adisbladis> Nothing to be woried about
<adisbladis> Phew
<gchristensen> whathappened? :D
<adisbladis> Note to self: Make sure your NIX_PATH is correct _before_ issuing nixos-rebuild
<adisbladis> I was rebuilding for the wrong system :D
<adisbladis> I thought I was going crazy
<gchristensen> hah
lovesegfault has joined #nixos-dev
Jackneill has quit [Ping timeout: 240 seconds]
<samueldr> are all builders on Hydra running the same nix revision?
<samueldr> and are they running the same as the hydra evaluator, the one listed on the footer?
<gchristensen> quite likely not running the same nix version
<samueldr> hmmm
<samueldr> the stack overflow issue stops me from testing with nixpkgs, but at the very least there seems to be a build time regression
<samueldr> *in mobile-nixos
<samueldr> I wouldn't discount mobile-nixos being in the wrong, it's possible, but that would be a breaking change then
ixxie has joined #nixos-dev
<samueldr> hm, trying to build nixos with it to verify if it'll be an issue, getting "error: experimental Nix feature 'ca-references' is disabled"
<samueldr> (nix.extraOptions = ''experimental-features = ca-references'';)
<samueldr> looks like there's something nixos must be doing, that mobile-nixos doesn't, as nixos builds... continuing the investigation
<gchristensen> just in case -- if anyone has a spare macbook pro from any time after like 2012 that they could install nixos on to for me, it would help me with some, erm, availability issues, with ofborg's mac builder
<lovesegfault> Is hydra able to eval master again?
<samueldr> you tell us
<samueldr> (yes it was)
<lovesegfault> I wish you spoke portuguese, samueldr, I have the perfect thing to say
<lovesegfault> We have a saying in Brazil that is like "If you who knows doesn't know, how am I who don't know going to know?!"
<lovesegfault> ("Se voce que sabe nao sabe como e que eu que nao sei vou saber?)
<samueldr> hydra knows :)
<samueldr> if you follow the links in the "hydra job for tests" column https://status.nixos.org/
<samueldr> those link to the lists of evals: https://hydra.nixos.org/job/nixos/trunk-combined/tested
<samueldr> list of builds for the tested job*
<lovesegfault> Oh, sweet
<lovesegfault> thanks :)
<samueldr> for the list of evals for the jobset, the top bar, "Jobset -> overview"
<samueldr> I assumed you knew where to look
enick_900 is now known as emily
justanotheruser has quit [Ping timeout: 258 seconds]