<gchristensen>
FYI: today's NixOS office hours (starting in about 3h15min) will be about how some of Nix has been written in Rust already. niksnut is coming :) more info: https://github.com/worldofpeace/events/tree/master/office-hours come chat and ask questions!
betawaffle has joined #nixos-officehours
erictapen has quit [Ping timeout: 240 seconds]
pie_ has joined #nixos-officehours
juxiemaotu has joined #nixos-officehours
puck has joined #nixos-officehours
juxiemaotu has quit [Quit: WeeChat 2.4]
tilpner has quit [Quit: tilpner]
RosaCtrl has joined #nixos-officehours
<betawaffle>
questions asked here will be included in the discussion, right?
<worldofpeace>
betawaffle: Yes
psyanticy has quit [Quit: Connection closed for inactivity]
<adisbladis>
I see where the confusion is coming from
<betawaffle>
hah
<aanderse>
oh... yeah thats on me -_-
<worldofpeace>
flokli: is that a question for eelco?
<worldofpeace>
currently talking about interop though
<flokli>
worldofpeace: yes
<flokli>
feel free to proxy
<flokli>
we should be really careful when passing things around… maybe serialize and deserialize into some stable format…
<aanderse>
flokli++
<{^_^}>
flokli's karma got increased to 5
<flokli>
and slice nix into various components with some stable, well-defined interface
<samueldr>
I share a similar concern as peti, I haven't been able to get rust cross-compiled for now
<infinisil>
Bootstrapping though, can't get the dependencies for nix via nix if you don't have nix already
<pbb>
If there were parts of Nix written in rust it would definitely be much more likely for me to participate in Nix development.
<betawaffle>
same
<pbb>
I've had no issues cross-compiling rust code, as long as it's pure rust. When it includes C(++) dependencies it becomes more challenging.
<samueldr>
in my case it's more about the nixpkgs cross-compiling infra
<samueldr>
pkgsCross.aarch64-multiplatform.rustPackages.clippy, or carnix-based stuff
<samueldr>
likely not rust itself, but our stuff around it
<gchristensen>
flokli: I haven't forgotten your Q :)
<pbb>
yeah
<samueldr>
part of it is llvm_9 not cross-compiling right now
<samueldr>
so I'm thinking that someone that has a better big picture view of it all can fix it
<samueldr>
I was talking about it since I looked at rust for my own use case recently with cross-compilation and couldn't get something going
<flokli>
it's not just about slicing server/client
<worldofpeace>
flokli: then what it should be is?
<flokli>
like, each store impl could adhere to some well-defined protocol
<flokli>
and then you rewrite the s3 store impl for example
<flokli>
of course, you then can't just call methods from a class anymore, but through that interface
<betawaffle>
make nix extensible!
<andi->
make nix (The parser) useable as a library ;-)
<aanderse>
an immediate segfault is best case scenario... if something minor changes you might run the program a while and have unexpected bugs
<betawaffle>
we're just talking about defining proper interfaces here...
<betawaffle>
is nix really that performance-critical?
<flokli>
betawaffle: I doubt it, and assume once most is rustified, there will be a shortpath, not allowing to serialize back and forth from protobuf or similar
<flokli>
and in fact using protobufs would make extending nix much easier
<betawaffle>
yeah, i'd like nix to be more extensible
<aanderse>
is there a problem finding developers to work on the nix code base? i keep hearing "lower bar to entry" to comments. is that a current concern, or just a general concern for thefuture?
<betawaffle>
it seems like trying to bring in rust should make that easier to justify...
<betawaffle>
aanderse: i have zero interest in working with C++ code
<betawaffle>
the same way i have zero interest working with Perl code
<worldofpeace>
aaron: I've noticed nix PRs and dev is much harder to reach than nixpkgs
<worldofpeace>
but they're completely different
<worldofpeace>
But I do think eelco is thinking about the future
<aanderse>
betawaffle: call me envious for someone who never has to work with either c++ or perl ;-)
<eyJhb>
betawaffle: sorry :( Two in a row as far as I know :(
<betawaffle>
this was the first one i'd seen
<eyJhb>
How would you rate it betawaffle ? I have only seen two!
<betawaffle>
on a scale of 0 to 1, it was a 1
<betawaffle>
it happened
<betawaffle>
on a more reasonable scale...
<betawaffle>
of say, 0 to 10
<eyJhb>
What was the topics for today?
<betawaffle>
the rust parts of nix
<eyJhb>
Oh
<eyJhb>
I have no experience with Rust
<betawaffle>
and how eelco's views may differ from some people in the community
<eyJhb>
Only that there is kinda a big hatred between Golang and Rust
<worldofpeace>
Specifically, we had Eelco on parts of Rust he's used inside Nix already.
<worldofpeace>
An idea.
<betawaffle>
i use both go and rust at work, fwiw
<worldofpeace>
eyJhb: you keep missing :D
<worldofpeace>
Guess the time isn't great for you over there
<eyJhb>
worldofpeace: ahh makes sense! :D
<eyJhb>
betawaffle: I have only ever used Golang, and love it to death!
<betawaffle>
yeah, go is great
<eyJhb>
Yeah worldofpeace , it is at 21.00, which always seems to be bad timing, even if it shouldn't be... :/
<betawaffle>
though there are times i wish it had more features
<betawaffle>
and then i think better of it
<betawaffle>
or do i...
<worldofpeace>
Yeah, it's late eyJhb though I guess even later works better afterwords :P
<eyJhb>
If it was around 13/15 it would be better, but I just need to schedule it better :D
<eyJhb>
betawaffle: I love the features it has. I have never really wished for anything more, because I can create a 4 line helper function to do most things anyways :D
<betawaffle>
have you written a big system of 50 microservices with it?
<eyJhb>
I think I should just be better at noting down when Office Hours are :p I was making "pebernødder", so baking. No clue what it is called in English
<gchristensen>
it is a shame that the earth isn't flat so we could all be on the same timezone and then it'd be easy to schedule.